Introduction
To define the Bruker MRI parameters -
To define the Dicom MRI parameters
To define the Philips MRI parameters -
To define the Nifti MRI parameters
To define the Bids MRI parameters
- This page explains how to extract the MRI parameters with the DictionaryMRI_System.yml and DictionaryMRI_User.yml files which are located in MRI File Manager directory.
- This allows the user to display his MRI parameters in the viewer and export the values in the Json file when converting to Nifti.
- The files are written in Yaml. The file's header explains the structure of document.
- The DictionaryMRI_System.yml file allows the extraction of the most important MRI parameters (resolution, number of slice, size ...).
This file is very important for the regular functionning of the software. It is better not to change it ! It is only available to verify parameters and for advanced users.
The extracted values are displayed in the 'Info param.' tab of the 'MRI parameters' table.
- The DictionaryMRI_User.yml file allows the extraction of the MRI parameters in a personalized way. This file can be modified by the user.
The extracted values are displayed in the 'User param.' tab of the 'MRI parameters' table. When you modify this file, do a backup.
- Important : each MRI label must have a unique name, ensure that it isn't repeated several times in the 2 yaml files.
- For each format, the setting of a MRI parameter must take the following form :
MRI label of your choice:
description: {info: "your comment"}
whereBruker: {file: xxx, keyName: xxx, type: xxx, format: xxx, units: xxx}
wherePhilips: {file: xxx, keyName: xxx, type: xxx, format: xxx, units: xxx}
whereDicom: {file: xxx, keyName: xxx, type: xxx, format: xxx, units: xxx}
whereNifti: {file: xxx, keyName: xxx, type: xxx, format: xxx, units: xxx}
viewer: {category: xxx}
json: {tagJson: xxx, type: xxx, format: xxx, units: xxx}
* 'file' specifies the file where the parameter and its value are located (mandatory field).
* 'keyName' indicate the parameter name of the constructor (mandatory field).
* 'type' indicate the value type (float, int, string) (mandatory field).
* 'format' is reserved for time parameters (ex 'Acquisition Date') and allows to specify the date format (ex "yyyy-MM-dd HH:mm:ss").
* 'units' indicate the time, dimension (or other) unit of the value (s, ms, mm, cm, hz ...).
* 'category' indicate where the value is to appear in the 'MRI Parameters' area of MRI File Manager.
* 'tagJason' indicate the tag name that the parameter should have in the json file on the conversion into Nifti.
* for an empty field, use '~'
- Edit the DictionaryMRI_User.yml
- Example of the setting of a Bruker MRI parameter in DictionaryMRI_System.yml:
Echo Time:
description: {info: "Time in ms between the middle of the excitation pulse and the peak of the echo produced "}
whereBruker: {file: acqp, keyName: $ACQ_echo_time=, type: float, format: ~, units: ms}
viewer: {category: MRI parameters}
json: {tagJson: EchoTime, type: float, format: ~, units: ms}
- 'file' can take the following values : acqp, method, reco, subject or visu_pars
- In this example, 'keyName' seeks the value of the parameter 'Echo Time' in the 'acqp' file.
(preview)
(the characters '$' and '=' are important because 'ACQ_echo_time' appears also elsewhere)
- Edit the DictionaryMRI_User.yml
- Example of the setting of a Dicom MRI parameter in DictionaryMRI_System.yml:
Echo Time:
description: {info: "Time in ms between the middle of the excitation pulse and the peak of the echo produced "}
whereDicom: {file: dirfile, keyName: Echo Time, type: float, format: ~, units: ms}
viewer: {category: MRI parameters}
json: {tagJson: EchoTime, type: float, format: ~, units: ms}
- 'file' can take the following values : Dirfile, DicomDir or ~
- In this example, 'keyName' seeks the value of the parameter 'Echo Time' in the 'Dicom' file.
(preview)
- Edit the DictionaryMRI_User.yml
- Example of the setting of a Philips MRI parameter in DictionaryMRI_System.yml:
Echo Time:
description: {info: "Time in ms between the middle of the excitation pulse and the peak of the echo produced "}
wherePhilips: {file: PAR ; Xml, keyName: echo_time ; Echo Time, type: float ; float, format: ~, units: ms ; ms}
viewer: {category: MRI parameters}
json: {tagJson: EchoTime, type: float, format: ~, units: ms}
- 'file' always take the values par ; xml
- In this example, 'keyName' seeks the value of the parameter 'Echo Time' in the '.PAR' file
(preview) and '.xml'
(preview)
- Edit the DictionaryMRI_User.yml
- Example of the setting of a Nifti MRI parameter in DictionaryMRI_System.yml:
Echo Time:
description: {info: "Time in ms between the middle of the excitation pulse and the peak of the echo produced "}
whereNifti: {file: json, keyName: EchoTime, type: float, format: ~, units: ms}
viewer: {category: MRI parameters}
json: {tagJson: EchoTime, type: float, format: ~, units: ms}
- 'file' can take the following values : niftiheader or json
- In this example, 'keyName' seeks the value of the parameter 'Echo Time' in the 'json' file.
(preview)
The Bids MRI parameters take the same as those of Nifti (see 'To define the Nifti MRI parameters' section)