MRSviewer est un logiciel pour visualiser les signaux MR, appliquer des pre-traitements et le logiciel QUEST sur ceux-ci, et visualiser les résultats.
Installation
Le code source de l'application est disponible comme archive à télécharger ou sur le serveur git de CREATIS, sur le remote ssh://gitolite@git.creatis.insa-lyon.fr/mrsViewer. Attention QUEST n'est pas fourni avec. Pour l'obtenir, faire une demande auprès de Hélène Ratiney (helene.ratiney@creatis.insa-lyon.fr).
Pour l'instant, l'application n'est pas sous forme d'exécutable. Pour pouvoir l'utiliser, il faut avoir accès à Python3.x (testé sur 3.5 et supérieur) Les dépendances sont dans le fichiers requirements.txt. Pour les installer manuellement, cela correspond aux paquets :
- scipy
- matplotlib
- wxPython (4.x)
- requests
- h5py
- pydicom
Une fois les dépendances installées, faire :
$ cd src
$ python mrsviewer.py
Cette commande accepte des arguments. Pour plus de détails, faire :
$ python mrsviewer.py -h
Windows / OSX
Pour installer toutes les dépendances, faire :
$ pip install -r requirements.txt
Si cela ne marche pas, regarder pour chaque paquets les procédures à suivre pour les installer.
Linux (Debian family, Red Hat, ...)
wxPython ne possède pas de wheel universelle pour toutes les distributions Linux. Le plus simple pour installer la bonne version est d'utiliser le gestionnaire de paquet de sa distribution (apt pour la Debian Family, dnf pour Fedora, ...). Par exemple :
# dnf install wxPython
Si il n'est pas présent sur les dépots ou si c'est une version antérieur à wxPython Phoenix, voir les instructions sur cette page : https://wxpython.org/pages/downloads/index.html
Installer les autres dépendances avec :
$ pip install X
où X est un des paquet listés ci-dessus. Faire attention à vérifier si les version téléchargés sont bien compatibles avec les versions précisés dans le fichier requirements.txt.
OSX
TODO
Type de signaux gérés
- MRUI
- Bruker
- HDF5
- DICOM (Siemens)
La détection des formats de fichiers se fait grâce à l'extension , excepté pour Bruker où le nom du fichier est pris en compte. Voici comment la détection se fait :
Format | Bruker | MRUI | DICOM (Siemens) | HDF5
Rules | [fid, ser] | *.mrui | *.dcm | *.h5
Pour Bruker, on suppose que 'ser' ou 'fid' appartiennent à un dossier suivant les règles de construction habituellement utilisé du format.
Prétraitements implémentés
- Scaling
- Damping
- Shifting
- Phasing
Pour pouvoir effectuer des prétraitements, aller dans Menu > Edit > Preprocessing > X, avec X le nom du prétraitements. Cela ouvrira une petite fenêtre contenant tout les paramètres avec lesquelles on peut jouer pour ajuster son prétraitements. Pour l'appliquer directement sur le fichier, appuyer sur le bouton 'Save'. Si vous voulez l'enregistrer dans un autre fichier, faire 'Save as'.
Bon à savoir
La gestion des erreurs est pour l'instant très rudimentaire. En testant un peu les limites du logiciels, on tombe rapidement sur des erreurs non gérées, et ces dernières arrêtent complètement l'application. Le détail des erreurs est stocké dans src/errors.log. Ne pas supprimer le contenu du fichier, il est utile pour l'amélioration de l'application.
L'application n'a pour l'instant été testée que sous Fedora 27, environnement Gnome.
Un QUEST output est un dossier dans lequelle est présent les 4 fichiers de l'output du programme QUEST basique, plus un fichier prefix_quest_orig.mrui, qui correspond au signal original sur lequelle le traitement a été effectué. Le prefix correspond au nom du dossier. Tout dossier ouvert qui ne respectera pas cela renverra dans le meilleur des cas un message d'erreur sympathique qui ne fermera pas l'app, dans le pire des cas une exception non gérée qui fermera l'app.