diff --git a/MRIFileManager/DictionaryMRI_System.yml b/MRIFileManager/DictionaryMRI_System.yml old mode 100644 new mode 100755 index 9823980..62aa122 --- a/MRIFileManager/DictionaryMRI_System.yml +++ b/MRIFileManager/DictionaryMRI_System.yml @@ -45,34 +45,16 @@ dictionaryMRI: Acquisition Date: description: {info: "The date the acquisition of data that resulted in this image started"} - + whereBruker: {file: visu_pars, keyName: $VisuAcqDate=, type: string, format: "yyyy-MM-dd'T'HH:mm:ss','SSSZZZZ or HH:mm:ss dd MMM yyyy", units: ~} wherePhilips: {file: PAR ; Xml, keyName: Examination date/time ; Examination Date, type: string ; string, format: "yyyy.MM.dd / HH:mm:ss ; yyyy.MM.dd", units: ~} whereDicom: {file: ~, keyName: Series Date, type: string, format: "yyyyMMdd", units: ~} whereNifti: {file: json, keyName: AcquisitionDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} whereBids: {file: json, keyName: AcquisitionDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} - + viewer: {category: Equipment} json: {tagJson: AcquisitionDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} - Acquisition Duration: - description: {info: ""} - - whereBids: {file: json, keyName: AcquisitionDuration, type: float, format: ~, units: s} - wherePhilips: {file: PAR ; Xml, keyName: Scan Duration ; Scan Duration, type: float ; float, format: ~, units: "s ; ~"} - - viewer: {category: ~} - json: {tagJson: AcquisitionDuration, type: float, format: ~, units: s} - - Acquisition Number: - description: {info: "Acquisition number"} - - whereBids: {file: json, keyName: SeriesNumber, type: int, format: ~, units: ~} - wherePhilips: {file: PAR ; Xml, keyName: Acquisition nr, type: int, format: ~, units: ~} - - viewer: {category: ~} - json: {tagJson: AcquisitionNumber, type: int, format: ~, units: ~} - Acquisition Time: description: {info: "The time the acquisition of data that resulted in this image started"} @@ -84,10 +66,10 @@ dictionaryMRI: viewer: {category: Equipment} json: {tagJson: AcquisitionTime, type: string, format: "HH:mm:ss.SSS", units: ~} - + Angulation Image: description: {info: "Angulation Image (Philips only)"} - + wherePhilips: {file: PAR ; Xml, keyName: image angulation ; Angulation AP (Image_Info), type: float ; float, format: ~, units: ~} # && Angulation FH && Angulation RL for Xml viewer: {category: Angulation-Position} @@ -102,89 +84,81 @@ dictionaryMRI: json: {tagJson: ~, type: ~, format: ~, units: ~} B-values effective: - description: {info: "Bval for MRtrix and FSL"} + description: {info: "Bval for MRtrix and FSL"} - whereBruker: {file: method, keyName: $PVM_DwEffBval=, type: int, format: ~, units: ~} - wherePhilips: {file: PAR ; Xml, keyName: diffusion_b_factor ; Diffusion B Factor, type: float ; float, format: ~, units: ~} - whereDicom: {file: ~, keyName: "2001,1003", type: float, format: ~, units: ~} - whereBids: {file: json, keyName: DiffusionBFactor, type: string, format: ~, units: ~} + whereBruker: {file: method, keyName: $PVM_DwEffBval=, type: int, format: ~, units: ~} + wherePhilips: {file: PAR ; Xml, keyName: diffusion_b_factor ; Diffusion B Factor, type: float ; float, format: ~, units: ~} + whereDicom: {file: ~, keyName: "2001,1003", type: float, format: ~, units: ~} + whereBids: {file: json, keyName: DiffusionBFactor, type: string, format: ~, units: ~} - viewer: {category: Diffusion} - json: {tagJson: ~, type: ~, format: ~, units: ~} + viewer: {category: Diffusion} + json: {tagJson: ~, type: ~, format: ~, units: ~} BandWidth: description: {info: ""} whereBruker: {file: acqp, keyName: $SW_h=, type: float, format: ~, units: MHz} whereNifti: {file: json, keyName: BandWidth, type: float, format: ~, units: MHz} - whereBids: {file: json, keyName: BandWidth, type: float, format: ~, units: MHz} + whereBids: {file: json, keyName: BandWidth, type: float, format: ~, units: MHz} viewer: {category: MRI parameters} json: {tagJson: BandWidth, type: float, format: ~, units: MHz} Byte Order: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCoreByteOrder=, type: string, format: ~, units: ~} - whereNifti: {file: niftiheader, keyName: Endianness, type: string, format: ~, units: ~} - whereBids: {file: niftiheader, keyName: Endianness, type: string, format: ~, units: ~} - + whereNifti: {file: niftiheader, keyName: Endianness, type: string, format: ~, units: ~} + whereBids: {file: niftiheader, keyName: Endianness, type: string, format: ~, units: ~} + viewer: {category: Dimensions} json: {tagJson: ByteOrder, type: string, format: ~, units: ~} Coil: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_operation_mode=, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: Coil, type: string, format: ~, units: ~} whereBids: {file: json, keyName: Coil, type: string, format: ~, units: ~} - + viewer: {category: Equipment} json: {tagJson: ~, type: ~, format: ~, units: ~} Columns: description: {info: ""} - + whereDicom: {file: dirfile,dicomdir, keyName: Columns, type: int, format: ~, units: ~} - - viewer: {category: ~} - json: {tagJson: ~, type: ~, format: ~, units: ~} - - Conversion Software: - description: {info: ""} - - whereNifti: {file: json, keyName: ConversionSoftware, type: string, format: ~, units: ~} - + viewer: {category: ~} json: {tagJson: ~, type: ~, format: ~, units: ~} Creation Date: description: {info: ""} - + whereBruker: {file: subject, keyName: $SUBJECT_date=, type: string, format: "yyyy-MM-dd'T'HH:mm:ss','SSSZZZZ or HH:mm:ss dd MMM yyyy", units: ~} wherePhilips: {file: PAR ; Xml, keyName: Examination date/time ; Examination Date, type: string ; string, format: "yyyy.MM.dd / hHH:mm:ss ; yyyy.MM.dd", units: ~} whereDicom: {file: ~, keyName: Study Date, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: CreationDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} - whereBids: {file: json, keyName: CreationDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} + whereBids: {file: json, keyName: CreationDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} viewer: {category: Equipment} json: {tagJson: CreationDate, type: string, format: "yyyy-MM-dd HH:mm:ss", units: ~} Data Type: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCoreWordType=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: image pixel size ; Pixel Size, type: string ; int, format: ~, units: ~} whereDicom: {file: dirfile,dicomdir, keyName: Bits Allocated, type: string, format: ~, units: ~} whereNifti: {file: niftiheader, keyName: Datatype, type: string, format: ~, units: ~} - whereBids: {file: niftiheader, keyName: Datatype, type: string, format: ~, units: ~} + whereBids: {file: niftiheader, keyName: Datatype, type: string, format: ~, units: ~} viewer: {category: Dimensions} json: {tagJson: ~, type: ~, format: ~, units: ~} Diffusion Ao Images number: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_DwAoImages=, type: int, format: ~, units: ~} viewer: {category: Diffusion} @@ -192,15 +166,15 @@ dictionaryMRI: Diffusion ExpEach number: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_DwNDiffExpEach=, type: int, format: ~, units: ~} viewer: {category: Diffusion} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Direction Diffusion: description: {info: "Bvec for MRtrix and FSL"} - + whereBruker: {file: method, keyName: $PVM_DwDir=, type: int, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: diffusion ; Diffusion AP, type: float ; float, format: ~, units: ~} # && Diffusion FH && Diffusion RL for Xml whereDicom: {file: ~, keyName: "2005,10B0", type: float, format: ~, units: ~} @@ -210,120 +184,120 @@ dictionaryMRI: Diffusion Gradient Orientation: description: {info: "Bvec for MRtrix and FSL"} - + whereBruker: {file: visu_pars, keyName: $VisuAcqDiffusionGradOrient=, type: float, format: ~, units: ~} viewer: {category: Diffusion} json: {tagJson: DirectionGradientOrientation, type: float, format: ~, units: ~} 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} wherePhilips: {file: PAR ; Xml, keyName: echo_time ; Echo Time, type: float ; float, format: ~, units: ms ; ms} whereDicom: {file: dirfile, keyName: Echo Time, type: float, format: ~, units: ms} - whereNifti: {file: json, keyName: EchoTime, type: float, format: ~, units: ms} # units = s for Dcm2niix - whereBids: {file: json, keyName: EchoTime, type: float, format: ~, units: ms} + whereNifti: {file: json, keyName: EchoTime, type: float, format: ~, units: ms} + whereBids: {file: json, keyName: EchoTime, type: float, format: ~, units: ms} viewer: {category: MRI parameters} json: {tagJson: EchoTime, type: float, format: ~, units: ms} Flip Angle: description: {info: "Steady state angle in degrees to which the magnetic vector is flipped from the magnetic vector of the primary field"} - + whereBruker: {file: acqp, keyName: $ACQ_flip_angle=, type: float, format: ~, units: degree} wherePhilips: {file: PAR ; Xml, keyName: image_flip_angle ; Image Flip Angle, type: float ; float, format: ~, units: ~ ; degree} whereDicom: {file: dirfile, keyName: Flip Angle, type: float, format: ~, units: degree} whereNifti: {file: json, keyName: FlipAngle, type: float, format: ~, units: degree} - whereBids: {file: json, keyName: FlipAngle, type: float, format: ~, units: degree} + whereBids: {file: json, keyName: FlipAngle, type: float, format: ~, units: degree} viewer: {category: MRI parameters} json: {tagJson: FlipAngle, type: float, format: ~, units: degree} FOV: description: {info: ""} - + whereBruker: {file: reco, keyName: $RECO_fov=, type: float, format: ~, units: mm} wherePhilips: {file: PAR ; Xml, keyName: FOV ; FOV AP , type: float ; float, format: ~, units: ~ ; degree} # && FOV FH && FOV RL whereNifti: {file: json, keyName: FOV, type: float, format: ~, units: mm} - whereBids: {file: json, keyName: FOV, type: float, format: ~, units: mm} + whereBids: {file: json, keyName: FOV, type: float, format: ~, units: mm} viewer: {category: MRI parameters} json: {tagJson: FOV, type: float, format: ~, units: mm} - + Gradient Orientation: description: {info: "Gradient Orientation for the calculation MRTrix3 bvecs "} - + whereBruker: {file: method, keyName: "$PVM_SPackArrGradOrient", type: float, format: ~, units: ~} - + viewer: {category: Diffusion} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Gradient Orientation Number: description: {info: ""} - + whereDicom: {file: ~, keyName: "2005,1413", type: int, format: ~, units: ~} - + viewer: {category: Diffusion} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Gradient Vectors: description: {info: "Gradient Vectors for the calculation MRTrix3 bvecs "} - + whereBruker: {file: method, keyName: "$PVM_DwGradVec", type: float, format: ~, units: ~} - + viewer: {category: Diffusion} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Images In Acquisition: description: {info: "Number of images that resulted from this acquisition of data"} - + whereBruker: {file: visu_pars, keyName: $VisuCoreFrameCount=, type: int, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: index in REC file ; Index, type: int ; int, format: ~, units: ~} whereDicom: {file: ~, keyName: Number of Frames, type: int, format: ~, units: ~} whereNifti: {file: json, keyName: ImageInAcquisition, type: int, format: ~, units: ~} - whereBids: {file: json, keyName: ImageInAcquisition, type: int, format: ~, units: ~} + whereBids: {file: json, keyName: ImageInAcquisition, type: int, format: ~, units: ~} viewer: {category: Dimensions} json: {tagJson: ImageInAcquisition, type: int, format: ~, units: ~} Imaged Nucleus: description: {info: "Nucleus that is resonant at the imaging frequency. Examples: 31P, 1H"} - + whereBruker: {file: acqp, keyName: $NUCLEUS=, type: string, format: ~, units: ~} whereDicom: {file: ~, keyName: Imaged Nucleus, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: ImagedNucleus, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: ImagedNucleus, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: ImagedNucleus, type: string, format: ~, units: ~} viewer: {category: MRI parameters} json: {tagJson: ImagedNucleus, type: string, format: ~, units: ~} - + Image Orientation Patient: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCoreOrientation=, type: float, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: image angulation ; Angulation AP , type: float ; float, format: ~, units: degree ; degree} # && Angulation FH && Angulation RL whereDicom: {file: dirfile, keyName: Image Orientation (Patient), type: float, format: ~, units: ~} whereNifti: {file: json, keyName: ImageOrientationPatient, type: float, format: ~, units: ~} - whereBids: {file: json, keyName: ImageOrientationPatient, type: float, format: ~, units: ~} + whereBids: {file: json, keyName: ImageOrientationPatient, type: float, format: ~, units: ~} viewer: {category: PositionOrientation} json: {tagJson: ImageOrientationPatient, type: float, format: ~, units: ~} - + Image Position Patient: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCorePosition=, type: float, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: image offcentre ; Offcenter AP, type: float ; float, format: ~, units: mm ; ~} # && Offcenter FH && Offcenter RL whereDicom: {file: dirfile, keyName: Image Position (Patient), type: float, format: ~, units: ~} whereNifti: {file: json, keyName: ImagePositionPatient, type: float, format: ~, units: ~} - whereBids: {file: json, keyName: ImagePositionPatient, type: float, format: ~, units: ~} + whereBids: {file: json, keyName: ImagePositionPatient, type: float, format: ~, units: ~} viewer: {category: PositionOrientation} json: {tagJson: ImagePositionPatient, type: float, format: ~, units: ~} - + Image Type: description: {info: "Image identification characteristics (Magnitude Image, .... )"} - + whereBruker: {file: visu_pars, keyName: $VisuCoreFrameType=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: image_type_mr ; Type, type: string ; string, format: ~, units: ~} whereDicom: {file: dirfile, dicomdir, keyName: Image Type, type: string, format: ~, units: ~} @@ -332,40 +306,24 @@ dictionaryMRI: viewer: {category: MRI parameters} json: {tagJson: ImageType, type: string, format: ~, units: ~} - + Imaging Frequency: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuAcqImagingFrequency=, type: float, format: ~, units: MHz} whereDicom: {file: ~, keyName: Imaging Frequency, type: float, format: ~, units: MHz} whereNifti: {file: json, keyName: ImagingFrequency, type: float, format: ~, units: MHz} - whereBids: {file: json, keyName: ImagingFrequency, type: float, format: ~, units: MHz} - - viewer: {category: MRI parameters} - json: {tagJson: ImagingFrequency, type: float, format: ~, units: MHz} - - Institution: - description: {info: ""} - - whereBids: {file: json, keyName: InstitutionName, type: string, format: ~, units: ~} # concatenated with InstitutionalDepartmentName - - viewer: {category: MRI parameters} - json: {tagJson: Institution, type: string, format: ~, units: ~} - - Institution Department: - description: {info: ""} - - whereBids: {file: json, keyName: InstitutionalDepartmentName, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: ImagingFrequency, type: float, format: ~, units: MHz} viewer: {category: ~} - json: {tagJson: ~, type: ~, format: ~, units: ~} + json: {tagJson: ImagingFrequency, type: float, format: ~, units: MHz} Inversion Time: description: {info: "Time in msec after the middle of inverting RF pulse to middle of excitation pulse to detect the amount of longitudinal magnetization"} - + whereBruker: {file: visu_pars, keyName: $ACQ_inversion_time=, type: float, format: ~, units: ms} whereDicom: {file: dirfile, keyName: Inversion Time, type: float, format: ~, units: ms} - whereNifti: {file: json, keyName: InversionTime, type: float, format: ~, units: ms} # units = s for Dcm2niix + whereNifti: {file: json, keyName: InversionTime, type: float, format: ~, units: ms} whereBids: {file: json, keyName: InversionTime, type: float, format: ~, units: ms} viewer: {category: MRI parameters} @@ -373,7 +331,7 @@ dictionaryMRI: Label Type (ASL): description: {info: "position of Arterial Spin Labeling "} - + wherePhilips: {file: PAR ; Xml, keyName: label type ; Label Type, type: int ; string, format: ~, units: ~} whereDicom: {file: ~, keyName: "2005,1429", type: string, format: ~, units: ~} @@ -382,98 +340,97 @@ dictionaryMRI: Manufacturer: description: {info: "Manufacturer of the equipment that produced the composite instances"} - - whereBruker: {file: method, keyName: ORIGIN=, type: string, format: ~, units: ~} + + whereBruker: {file: method, keyName: ORIGIN=, type: string, format: ~, units: ms} whereDicom: {file: ~, keyName: Manufacturer, type: string, format: ~, units: ~} - whereNifti: {file: json, keyName: Manufacturer, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: Manufacturer, type: string, format: ~, units: ~} + whereNifti: {file: json, keyName: Manufacturer, type: string, format: ~, units: ms} + whereBids: {file: json, keyName: Manufacturer, type: string, format: ~, units: ms} viewer: {category: Equipment} json: {tagJson: Manufacturer, type: string, format: ~, units: ms} Manufacturer's Model: description: {info: "Manufacturer's model name of the equipment that produced the composite instances"} - + whereDicom: {file: ~, keyName: Manufacturer's Model Name, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: ManufacturersModelName, type: string, format: ~, units: ~} - + viewer: {category: Equipment} - json: {tagJson: Manufacturer's Model, type: string, format: ~, units: ~} + json: {tagJson: Manufacturer's Model, type: string, format: ~, units: ~} Modality: description: {info: ""} - + whereDicom: {file: ~, keyName: Modality, type: string, format: ~, units: ~} whereBids: {file: json, keyName: Modality, type: string, format: ~, units: ~} - + viewer: {category: Test} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Number Of Averages: description: {info: "Number of times a given pulse sequence is repeated before any parameter is changed"} - + whereBruker: {file: visu_pars, keyName: $VisuAcqNumberOfAverages=, type: int, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: number of averages ; No Averages, type: int ; int, format: ~, units: ~} whereDicom: {file: ~, keyName: Number of Averages, type: int, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} Number Of Diffusion: description: {info: ""} - + wherePhilips: {file: PAR ; Xml, keyName: diffusion b value number ; BValue, type: int ; int, format: ~, units: ~} whereDicom: {file: ~, keyName: "0018,9087", type: float, format: ~, units: ~} - + viewer: {category: Dimensions} json: {tagJson: ~, type: ~, format: ~, units: ~} Number Of Echo: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_NEchoImages=, type: ~, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: echo number ; Echo, type: int ; int, format: ~, units: ~} whereDicom: {file: dirfile, keyName: Echo Time, type: ~, format: ~, units: ~} - + viewer: {category: Dimensions} - + json: {tagJson: ~, type: ~, format: ~, units: ~} Number Of Repetition: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_NRepetitions=, type: int, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Max. number of dynamics ; Max No Dynamics, type: int ; int, format: ~, units: ~} whereDicom: {file: ~, keyName: Temporal Position, type: int, format: ~, units: ~} - + viewer: {category: Dimensions} json: {tagJson: ~, type: ~, format: ~, units: ~} Number Of Slice: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCorePosition=, type: int, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Max. number of slices/locations ; Max No Slices, type: int ; int, format: ~, units: ~} whereDicom: {file: ~, keyName: Image Position Patient, type: int, format: ~, units: ~} #Slice Location - + viewer: {category: Dimensions} - json: {tagJson: NumberOfSlice, type: int, format: ~, units: ~} + json: {tagJson: ~, type: ~, format: ~, units: ~} Patient BirthDate: description: {info: "Birth date of the patient"} - + whereBruker: {file: subject, keyName: $SUBJECT_dbirth=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: ~ ; ~ , type: ~ ; ~, format: ~, units: ~} whereDicom: {file: ~, keyName: Patient's Birth Date, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: PatientBirthDate, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: PatientBirthDate, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: PatientBirthDate, type: string, format: ~, units: ~} viewer: {category: ~} json: {tagJson: PatientBirthDate, type: string, format: ~, units: ~} Patient ID: description: {info: ""} - + whereBruker: {file: subject, keyName: $SUBJECT_id=, type: string, format: ~, units: ~} whereDicom: {file: ~, keyName: Patient ID, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: PatientID, type: string, format: ~, units: ~} @@ -484,19 +441,19 @@ dictionaryMRI: Patient Name: description: {info: ""} - + whereBruker: {file: subject, keyName: $SUBJECT_name_string=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Patient name ; Patient Name, type: string ; string, format: ~, units: ~} whereDicom: {file: ~, keyName: Patient's Name, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: PatientName, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: PatientName, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: PatientName, type: string, format: ~, units: ~} viewer: {category: ~} json: {tagJson: PatientName, type: string, format: ~, units: ~} Patient Position: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuSubjectPosition=, type: string, format: ~, units: ~} whereDicom: {file: dirfile, keyName: Patient Position, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: PatientPosition, type: string, format: ~, units: ~} @@ -507,233 +464,233 @@ dictionaryMRI: Patient Sex: description: {info: "Sex of the named patient"} - + whereBruker: {file: subject, keyName: $SUBJECT_sex=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: ~ ; ~ , type: ~ ; ~, format: ~, units: ~} whereDicom: {file: ~, keyName: Patient's Sex, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: PatientSex, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: PatientSex, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: PatientSex, type: string, format: ~, units: ~} viewer: {category: ~} json: {tagJson: PatientSex, type: string, format: ~, units: ~} Patient Weight: description: {info: ""} - + whereBruker: {file: subject, keyName: $SUBJECT_weight=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: ~ ; ~ , type: ~ ; ~, format: ~, units: ~} whereDicom: {file: ~, keyName: Patient's Weight, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: PatientWeight, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: PatientWeight, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: PatientWeight, type: string, format: ~, units: ~} viewer: {category: ~} json: {tagJson: PatientWeight, type: string, format: ~, units: ~} Pixel Bandwidth: description: {info: "Reciprocal of the total sampling period, in hertz per pixel"} - + whereBruker: {file: visu_pars, keyName: $VisuAcqPixelBandwidth=, type: float, format: ~, units: ms} whereDicom: {file: ~, keyName: Pixel Bandwidth, type: float, format: ~, units: ms} whereNifti: {file: json, keyName: PixelBandwidth, type: float, format: ~, units: ms} - whereBids: {file: json, keyName: PixelBandwidth, type: float, format: ~, units: ms} + whereBids: {file: json, keyName: PixelBandwidth, type: float, format: ~, units: ms} viewer: {category: MRI parameters} json: {tagJson: PixelBandwidth, type: float, format: ~, units: Hz/pixel} Pixel Representation: description: {info: ""} - + whereDicom: {file: ~, keyName: Pixel Representation, type: int, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: Pixel Representation, type: int, format: ~, units: ~} Pixel Spacing: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_SpatResol=, type: int, format: ~, units: ~} whereDicom: {file: ~, keyName: Pixel Spacing, type: int, format: ~, units: ~} - + viewer: {category: ~} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Position Image: description: {info: ""} - + wherePhilips: {file: PAR ; Xml, keyName: image offcentre ; Offcenter AP, type: float ; float, format: ~, units: ~} # && Off Center FH && Off Center RL, type: float ; float, format: ~, units: ~} - + viewer: {category: Angulation-Position} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Position Midslice: description: {info: ""} - + wherePhilips: {file: PAR ; Xml, keyName: Off Centre midslice ; Off Center AP , type: float ; float, format: ~, units: ~} # && Off Center FH && Off Center RL - + viewer: {category: Angulation-Position} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Protocol: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_protocol_name=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Protocol name ; Protocol Name, type: string ; string, format: ~, units: ~} whereDicom: {file: ~, keyName: Protocol Name, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: ProtocolName, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: ProtocolName, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: ProtocolName, type: string, format: ~, units: ~} viewer: {category: MRI parameters} json: {tagJson: ProtocolName, type: string, format: ~, units: ~} - + Read Direction: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_SPackArrReadOrient=, type: string, format: ~, units: ~} whereDicom: {file: ~, keyName: Acquisition Matrix, type: string, format: ~, units: ~} #Multi-valued: frequency rows\frequency columns\phase rows\phase columns. whereNifti: {file: json, keyName: ReadDirection, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: ReadDirection, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: ReadDirection, type: string, format: ~, units: ~} viewer: {category: MRI parameters} json: {tagJson: ReadDirection, type: string, format: ~, units: ~} - + Real Value Slope: description: {info: ""} - + whereDicom: {file: ~, keyName: Real World Value Slope, type: string, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Real Value Intercept: description: {info: ""} - + whereDicom: {file: ~, keyName: Real World Value Intercept, type: string, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} Repetition Time: description: {info: "The period of time in msec between the beginning of a pulse sequence and the beginning of the succeeding pulse sequence"} - + whereBruker: {file: acqp, keyName: $ACQ_repetition_time=, type: float, format: ~, units: ms} wherePhilips: {file: PAR ; Xml, keyName: Repetition time ; Repetition Times, type: float ; float, format: ~, units: ~} whereDicom: {file: ~, keyName: Repetition Time, type: float, format: ~, units: ms} - whereNifti: {file: json, keyName: RepetitionTime, type: float, format: ~, units: ms} # units = s for Dcm2niix - whereBids: {file: json, keyName: RepetitionTime, type: float, format: ~, units: ms} + whereNifti: {file: json, keyName: RepetitionTime, type: float, format: ~, units: ms} + whereBids: {file: json, keyName: RepetitionTime, type: float, format: ~, units: ms} viewer: {category: MRI parameters} json: {tagJson: RepetitionTime, type: float, format: ~, units: ms} Rows: description: {info: ""} - + whereDicom: {file: dirfile,dicomdir, keyName: Rows, type: int, format: ~, units: ~} - + viewer: {category: ~} json: {tagJson: ~, type: ~, format: ~, units: ~} - + + Rescale Intercept: description: {info: ""} - + whereDicom: {file: ~, keyName: Rescale Intercept, type: string, format: ~, units: ~} #wherePhilips: {file: PAR ; Xml, keyName: rescale intercept ; Rescale Intercept, type: float ; double, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Rescale Slope: description: {info: ""} - + whereDicom: {file: ~, keyName: Rescale Slope, type: string, format: ~, units: ~} #wherePhilips: {file: PAR ; Xml, keyName: rescale slope ; Rescale Slope, type: float ; double, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Scale Slope: description: {info: ""} - + whereDicom: {file: ~, keyName: "2005,100E", type: string, format: ~, units: ~} #wherePhilips: {file: PAR ; Xml, keyName: scale slope ; Scale Slope, type: float ; float, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Scaling slope and intercept: description: {info: ""} - + whereNifti: {file: niftiheader, keyName: Scaling slope and intercept, type: string, format: ~, units: ~} - whereBids: {file: niftiheader, keyName: Scaling slope and intercept, type: string, format: ~, units: ~} - + whereBids: {file: niftiheader, keyName: Scaling slope and intercept, type: string, format: ~, units: ~} + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} Scan Mode: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCoreDim=, type: float, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Scan mode ; Scan Mode, type: string ; string, format: ~, units: ms} whereDicom: {file: ~, keyName: MR Acquisition Type, type: float, format: ~, units: ~} whereNifti: {file: json, keyName: ScanMode, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: ScanMode, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: ScanMode, type: string, format: ~, units: ~} viewer: {category: Dimensions} json: {tagJson: ScanMode, type: string, format: ~, units: ~} Scan Resolution: description: {info: ""} - + whereBruker: {file: reco, keyName: $RECO_size=, type: int, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: recon resolution ; Resolution X , type: int ; int, format: ~, units: ~} # && Resolution Y whereDicom: {file: ~, keyName: Rows & Columns, type: int, format: ~, units: ~} whereNifti: {file: niftiheader, keyName: Dataset dimensions, type: int, format: ~, units: ~} - whereBids: {file: niftiheader, keyName: Dataset dimensions, type: int, format: ~, units: ~} + whereBids: {file: niftiheader, keyName: Dataset dimensions, type: int, format: ~, units: ~} viewer: {category: Dimensions} - json: {tagJson: ScanResolution, type: int, format: ~, units: ~} + json: {tagJson: ~, type: ~, format: ~, units: ~} Scanning Sequence: description: {info: "Description of the type of data taken(Spin Echo, Inversion Recovery,..."} - + wherePhilips: {file: PAR ; Xml, keyName: scanning sequence ; Sequence, type: string ; string, format: ~, units: ~} whereDicom: {file: ~, keyName: Scanning Sequence, type: string, format: ~, units: ~} - + viewer: {category: MRI parameters} json: {tagJson: ~, type: ~, format: ~, units: ~} Sequence Name: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuAcqSequenceName=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Technique ; Technique, type: string ; string, format: ~, units: ~} whereDicom: {file: dirfile, keyName: Series Description, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: SequenceName, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: PulseSequenceName, type: string, format: ~, units: ~} + whereBids: {file: json, keyName: SequenceName, type: string, format: ~, units: ~} viewer: {category: ~} json: {tagJson: SequenceName, type: string, format: ~, units: ~} Session: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_operator=, type: string, format: ~, units: ~} - + viewer: {category: Equipment} json: {tagJson: Session, type: string, format: ~, units: ~} - + Slice Gap: description: {info: ""} - + wherePhilips: {file: PAR ; Xml, keyName: slice gap ; Slice Gap, type: float ; float, format: ~, units: mm} whereNifti: {file: json, keyName: SliceGap, type: string, format: ~, units: ~} - whereBids: {file: json, keyName: SpacingBetweenSlices, type: string, format: ~, units: ~} # here the Slice Gap is calculated SpacingBetweenSlices - SliceThicness (in the code) - + viewer: {category: MRI parameters} json: {tagJson: SliceGap, type: float, format: ~, units: mm} Slice Orientation: description: {info: ""} - + whereBruker: {file: method, keyName: $PVM_SPackArrSliceOrient=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: slice orientation ; Slice Orientation, type: string ; string, format: ~, units: ~} whereDicom: {file: dirfile, keyName: Image Orientation (Patient), type: string, format: ~, units: ~} @@ -745,16 +702,16 @@ dictionaryMRI: Slice Position: description: {info: ""} - + whereBruker: {file: visu_pars, keyName: $VisuCorePosition=, type: string, format: ~, units: ~} whereDicom: {file: dirfile, keyName: Slice Location, type: string, format: ~, units: ~} - + viewer: {category: ~} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Slice Separation: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_slice_sepn=, type: float, format: ~, units: mm} whereDicom: {file: ~, keyName: Spacing Between Slices, type: float, format: ~, units: mm} whereNifti: {file: json, keyName: SpacingBetweenSlices, type: float, format: ~, units: mm} @@ -765,7 +722,7 @@ dictionaryMRI: Slice Thickness: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_slice_thick=, type: float, format: ~, units: mm} wherePhilips: {file: PAR ; Xml, keyName: slice thickness ; Slice Thickness, type: float ; float, format: ~, units: mm} whereDicom: {file: ~, keyName: Slice Thickness, type: float, format: ~, units: mm} @@ -777,7 +734,7 @@ dictionaryMRI: Slice Thickness In Acq: description: {info: ""} - + wherePhilips: {file: PAR ; Xml, keyName: slice thickness ; Slice Thickness, type: float ; float, format: ~, units: mm} whereNifti: {file: json, keyName: SliceThicknessInAcquisition, type: float, format: ~, units: mm} @@ -786,7 +743,7 @@ dictionaryMRI: Software Version: description: {info: "Manufacturer's designation of software version of the equipment that produced the composite instances"} - + whereBruker: {file: visu_pars, keyName: $VisuCreatorVersion=, type: string, format: ~, units: ~} whereDicom: {file: ~, keyName: Software Versions(s), type: string, format: ~, units: ~} whereNifti: {file: json, keyName: SoftwareVersions, type: string, format: ~, units: ~} @@ -797,7 +754,7 @@ dictionaryMRI: Spatial Resolution: description: {info: "The inherent limiting resolution in mm of the acquisition equipment for high contrast objects for the data gathering and reconstruction technique chosen. If variable across the images of the series, the value at the image center"} - + whereBruker: {file: method, keyName: $PVM_SpatResol=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: pixel spacing ; Pixel Spacing, type: float ; float, format: ~, units: ~} whereDicom: {file: ~, keyName: Pixel Spacing, type: float, format: ~, units: ~} @@ -809,15 +766,15 @@ dictionaryMRI: Spin Echo Time: description: {info: ""} - + whereBruker: {file: method, keyName: $SpinEchoTime= (or) $PVM_EchoTime=, type: float, format: ~, units: ms} - + viewer: {category: MRI parameters} json: {tagJson: SpinEchoTime, type: float, format: ~, units: ms} Station Name: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_station=, type: string, format: ~, units: ~} whereDicom: {file: ~, keyName: Station Name, type: string, format: ~, units: ~} whereNifti: {file: json, keyName: StationName, type: string, format: ~, units: ~} @@ -828,7 +785,7 @@ dictionaryMRI: Study Name: description: {info: ""} - + whereBruker: {file: subject, keyName: $SUBJECT_study_name=, type: string, format: ~, units: ~} wherePhilips: {file: PAR ; Xml, keyName: Examination name ; Examination Name, type: string ; string, format: ~, units: ~} whereDicom: {file: ~, keyName: Study ID, type: string, format: ~, units: ~} @@ -837,18 +794,19 @@ dictionaryMRI: viewer: {category: ~} json: {tagJson: StudyName, type: string, format: ~, units: ~} - + + Study Date: description: {info: ""} - + whereDicom: {file: ~, keyName: Study Date, type: string, format: ~, units: ~} viewer: {category: ~} json: {tagJson: ~, type: ~, format: ~, units: ~} - + Study Time: description: {info: ""} - + whereDicom: {file: ~, keyName: Study Time, type: string, format: ~, units: ~} viewer: {category: ~} diff --git a/MRIFileManager/DictionaryMRI_User.yml b/MRIFileManager/DictionaryMRI_User.yml index efaec35..fd15dbc 100755 --- a/MRIFileManager/DictionaryMRI_User.yml +++ b/MRIFileManager/DictionaryMRI_User.yml @@ -45,23 +45,23 @@ dictionaryMRI: description: {info: ""} whereBruker: {file: acqp, keyName: $ACQ_grad_matrix=, type: int, format: ~, units: ~} - + viewer: {category: cineASL} json: {tagJson: ACQ_grad_matrix, type: string, format: ~, units: ~} ACQ_fov: description: {info: ""} - + whereBruker: {file: acqp, keyName: $ACQ_fov=, type: int, format: ~, units: ~} - + viewer: {category: cineASL} json: {tagJson: ACQ_fov, type: string, format: ~, units: ~} - + ACQ_slice_sepn: description: {info: ""} whereBruker: {file: acqp, keyName: $ACQ_slice_sepn=, type: int, format: ~, units: ~} - + viewer: {category: cineASL} json: {tagJson: ACQ_slice_sepn, type: string, format: ~, units: ~} @@ -69,7 +69,7 @@ dictionaryMRI: description: {info: ""} whereBruker: {file: acqp, keyName: $NSLICES=, type: int, format: ~, units: ~} - + viewer: {category: cineASL} json: {tagJson: ACQ_NSLICES, type: string, format: ~, units: ~} @@ -77,7 +77,7 @@ dictionaryMRI: description: {info: ""} whereBruker: {file: acqp, keyName: $ACQ_slice_thick=, type: int, format: ~, units: ~} - + viewer: {category: cineASL} json: {tagJson: ACQ_slice_thick, type: string, format: ~, units: ~} @@ -153,22 +153,6 @@ dictionaryMRI: viewer: {category: cineASL} json: {tagJson: PVM_SPackArrSliceOrient, type: string, format: ~, units: ~} - Reception_Gain: - description: {info: ""} - - whereBruker: {file: acqp, keyName: $RG=, type: int, format: ~, units: ~} - - viewer: {category: MRI parameters} - json: {tagJson: ~, type: ~, format: ~, units: ~} - - Reception_Gain_Calibrated: - description: {info: ""} - - whereBruker: {file: acqp, keyName: $ACQ_CalibratedRG=, type: int, format: ~, units: ~} - - viewer: {category: MRI parameters} - json: {tagJson: ~, type: ~, format: ~, units: ~} - RECO_offset: description: {info: ""} @@ -645,13 +629,6 @@ dictionaryMRI: viewer: {category: MRI parameters} json: {tagJson: MinEchoTime, type: float, format: ~, units: ~} - RefPower: - description: {info: ""} - whereBruker: {file: method, keyName: $PVM_RefPowCh1=, type: string, format: ~, units: ms} - - viewer: {category: MRI parameters} - json: {tagJson: RefPower, type: string, format: ~, units: ms} - RefPulse1: description: {info: ""} whereBruker: {file: method, keyName: $RefPulse1=(, type: string, format: ~, units: ms} diff --git a/MRIFileManager/MRIManager.jar b/MRIFileManager/MRIManager.jar index 8258b13..36099a8 100644 Binary files a/MRIFileManager/MRIManager.jar and b/MRIFileManager/MRIManager.jar differ diff --git a/MRIFileManager/MRIManager.sh b/MRIFileManager/MRIManager.sh index f655f0a..df92cb1 100755 --- a/MRIFileManager/MRIManager.sh +++ b/MRIFileManager/MRIManager.sh @@ -1 +1 @@ -java -Xms512m -Xmx4096m -jar MRIManager.jar +java -Xms512m -Xmx8192m -jar MRIManager.jar diff --git a/MRIFileManager/MRIManager_lib/JavaEWAH-0.7.9.jar b/MRIFileManager/MRIManager_lib/JavaEWAH-0.7.9.jar new file mode 100644 index 0000000..ccdb371 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/JavaEWAH-0.7.9.jar differ diff --git a/MRIFileManager/MRIManager_lib/commons-codec-1.4.jar b/MRIFileManager/MRIManager_lib/commons-codec-1.4.jar new file mode 100644 index 0000000..458d432 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/commons-codec-1.4.jar differ diff --git a/MRIFileManager/MRIManager_lib/commons-logging-1.1.1.jar b/MRIFileManager/MRIManager_lib/commons-logging-1.1.1.jar new file mode 100644 index 0000000..1deef14 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/commons-logging-1.1.1.jar differ diff --git a/MRIFileManager/MRIManager_lib/flatlaf-3.7.jar b/MRIFileManager/MRIManager_lib/flatlaf-3.7.jar new file mode 100644 index 0000000..6706d56 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/flatlaf-3.7.jar differ diff --git a/MRIFileManager/MRIManager_lib/httpclient-4.1.3.jar b/MRIFileManager/MRIManager_lib/httpclient-4.1.3.jar new file mode 100644 index 0000000..85c6ce4 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/httpclient-4.1.3.jar differ diff --git a/MRIFileManager/MRIManager_lib/httpcore-4.1.4.jar b/MRIFileManager/MRIManager_lib/httpcore-4.1.4.jar new file mode 100644 index 0000000..a4dc3e8 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/httpcore-4.1.4.jar differ diff --git a/MRIFileManager/MRIManager_lib/jsch-0.1.50.jar b/MRIFileManager/MRIManager_lib/jsch-0.1.50.jar new file mode 100644 index 0000000..33bbd37 Binary files /dev/null and b/MRIFileManager/MRIManager_lib/jsch-0.1.50.jar differ diff --git a/MRIFileManager/MRIManager_lib/org.eclipse.jgit-3.5.0.201409260305-r.jar b/MRIFileManager/MRIManager_lib/org.eclipse.jgit-3.5.0.201409260305-r.jar new file mode 100644 index 0000000..117c77c Binary files /dev/null and b/MRIFileManager/MRIManager_lib/org.eclipse.jgit-3.5.0.201409260305-r.jar differ diff --git a/MRIFileManager/Updater.jar b/MRIFileManager/Updater.jar new file mode 100644 index 0000000..5a1f8f6 Binary files /dev/null and b/MRIFileManager/Updater.jar differ diff --git a/MRIFileManager/dist/IJ_Prefs.txt b/MRIFileManager/dist/IJ_Prefs.txt index 5027ed2..f80dca4 100644 --- a/MRIFileManager/dist/IJ_Prefs.txt +++ b/MRIFileManager/dist/IJ_Prefs.txt @@ -1,102 +1,101 @@ #ImageJ 1.54f Preferences -#Fri Apr 11 08:29:39 CEST 2025 -.VolumeViewer.alphaMode=0 -.VolumeViewer.ambientValue=0.5 +#Tue Mar 19 16:13:03 CET 2024 +.VolumeViewer.renderMode=0 .VolumeViewer.backgroundColor=-16763803 -.VolumeViewer.degreeX=90.0 -.VolumeViewer.degreeY=-0.0 -.VolumeViewer.degreeZ=0.0 -.VolumeViewer.diffuseValue=0.5 -.VolumeViewer.dist=-98.0 -.VolumeViewer.interpolationMode=1 -.VolumeViewer.lightBlue=0 +fps=7.0 +new.slices=1 +.editor.dir=/home/omontigon/Bureau/ +.VolumeViewer.showTF=true +roicolor=\#FFFF00 +.threshold.raw=false +.threshold.loc=789,441 +.VolumeViewer.zAspect=10.239999771118164 +div-by-zero=Infinity +new.height=400 +raw.options=2 +fcolor=\#FFFF00 .VolumeViewer.lightGreen=128 -.VolumeViewer.lightRed=255 -.VolumeViewer.lutNr=0 -.VolumeViewer.objectLightValue=0.5 -.VolumeViewer.renderMode=4 -.VolumeViewer.sampling=0.10000000149011612 -.VolumeViewer.scale=3.482198476791382 -.VolumeViewer.shineValue=17.149999618530273 -.VolumeViewer.showAxes=true -.VolumeViewer.showClipLines=false +raw.offset=0 .VolumeViewer.showSlices=false -.VolumeViewer.showTF=true -.VolumeViewer.specularValue=0.5 +.VolumeViewer.sampling=1.0 +.VolumeViewer.lutNr=0 +.VolumeViewer.scale=1.0 +.VolumeViewer.interpolationMode=1 +noise.sd=25.0 +raw.n=10 +.VolumeViewer.dist=0.0 +raw.type=2 +ij.y=256 +ij.x=590 +jpeg=75 +pp.width=600 +.log.width=1866 +raw.height=128 .VolumeViewer.useLight=false -.VolumeViewer.windowHeight=978 -.VolumeViewer.windowWidthImageRegion=1258 -.VolumeViewer.windowWidthSlices=327 +.results.loc=190,636 +.log.height=1053 +.VolumeViewer.objectLightValue=0.5 +.manager.loc=1108,338 +.log.loc=2076,27 +showcolor=\#00FFFF +prefs.options=4210692 +measurements=19 +new.width=400 +precision=3 .VolumeViewer.xloc=1920 -.VolumeViewer.yloc=0 -.VolumeViewer.zAspect=5.0 -.b&c.loc=699,455 -.command-finder.close=false -.editor.case-sensitive=true -.editor.dir=/home/omontigon/Bureau/ -.fonts.loc=826,211 +.VolumeViewer.lightRed=255 +.VolumeViewer.lightBlue=0 .gui.scale=1.0 -.log.height=400 -.log.loc=852,277 -.log.width=500 -.manager.loc=1381,290 +.VolumeViewer.yloc=0 +.VolumeViewer.ambientValue=0.5 +pp.fontsize=14 +raw.width=128 +new.fill=0 +.VolumeViewer.diffuseValue=0.5 +bcolor=\#FFFFFF +menu.size=15 +dir.image=/home/olivier/Documents/dataIRM/Bruker/VC_stimul/ +.b&c.loc=1112,341 .point.size=1 -.point.type=0 -.results.height=353 -.results.loc=447,602 -.results.width=592 .threshold.dark=false -.threshold.loc=789,441 -.threshold.mode=1 .threshold.no-reset=true -.threshold.raw=false -.toolbar.tool04=Window Level Tool -.toolbar.tool05=Command Finder Action Tool -ap.options=64 -bcolor=\#FFFFFF -dir.image=/home/olivier/Documents/dataIRM/Nifti/CEST_Rachel_2025/tube_a_b_c_d_e_2/ -div-by-zero=Infinity -fcolor=\#FFFF00 -fps=7.0 -ij.x=969 -ij.y=48 -jpeg=75 -measurements=23 -menu.size=15 -new.fill=0 -new.height=400 -new.slices=1 -new.type=0 -new.width=400 -noise.sd=25.0 -pp.fontsize=14 +recent14=/home/omontigon/Documents/dataIRM/Bruker/Mous/Traitements_fevrier2023/20220328-ArgR9-J4/20220328-ArgR9-J4-08-1-T2map_MSME-2022-04-01144636_T2map.nii.gz +.VolumeViewer.windowWidthImageRegion=1261 +recent13=/home/omontigon/Documents/dataIRM/Bruker/Mous/Traitements_fevrier2023/20220328-ArgR2-J4/20220328-ArgR2-J4-16-1-T2map_MSME-2022-04-01115109_T2map.nii.gz +recent12=/home/omontigon/Documents/mri_works_atlas/mouse/badhwar/badhwar_hippocampal_atlas_masked.nii +recent11=/home/omontigon/Documents/MP3_projects/Raw_data/MRFUSE_20230301-D00-WIP_MRF_Brain_3T_20230309-120519095.nii +recent10=/tmp/test_irm/test_irm-05-12_DCE_test_benj_orientation-2016-05-11140044.nii +.results.width=598 +.VolumeViewer.alphaMode=0 +.point.type=0 +.threshold.mode=1 pp.height=340 +.VolumeViewer.showAxes=true +new.type=0 +recent09=/home/omontigon/Documents/mri_works_atlas/mouse/badhwar/bha_labels_sba.nii +recent08=/home/omontigon/dataIRM/CEA-preeclampsie/Registration/souris_F92_PC1/RoiSet_manual.zip pp.options=0 -pp.width=600 -precision=3 -prefs.options=4341760 +recent07=/home/olivier/Documents/dataIRM/Nifti/MicroFlam/Mif-S19-SD6H/Tractography/ADC_map.nii prefs.options2=2048 +recent06=/home/olivier/Documents/dataIRM/Nifti/MicroFlam/Mif-S19-SD6H/Tractography/FA_map.nii +recent05=/home/olivier/Documents/dataIRM/Nifti/GluCEST/mapgluCESTj2/APPPS10_99g-04-gluCEST_RARE-2024-01-22113400.nii +recent04=/home/olivier/Documents/dataIRM/Nifti/GluCEST/mapgluCESTj2/APPPS10_99g-07-gluCEST_RARE-2024-01-22113400.nii +recent03=/home/olivier/Documents/dataIRM/Bruker/Project_Nantes/Nantes_Nude_14_231220_Nantes_Nude_14_231220-09-1-08_T1_RARE_GADOLINIUM_IRMmulti-(E9).nii.gz +recent02=/home/olivier/Documents/dataIRM/Bruker/MicroFlam/240126_Mif-S19-SD6H_1_Mif-S19-SD6H-240126_11_1_5_T2map_1SliceME_150um_2av-(E11)-01.nii.gz +recent01=/home/olivier/Documents/dataIRM/Bruker/MicroFlam/Mif-S18-SD3H_Mif-S18-SD3H-240126-13-1-7_DTPI_4seg_16dir_sat_150x0.8_b200-600-1200_av2_phLR-(E13).nii.gz +.command-finder.close=false +recent00=/home/olivier/Documents/dataIRM/Bruker/VC_stimul/Rois_concombre.zip +.VolumeViewer.degreeZ=17.0 +.VolumeViewer.degreeY=41.0 +.VolumeViewer.degreeX=115.0 +.VolumeViewer.windowWidthSlices=324 +ap.options=64 +.VolumeViewer.specularValue=0.5 +.VolumeViewer.shineValue=17.149999618530273 +.VolumeViewer.showClipLines=false +.fonts.loc=826,211 +.VolumeViewer.windowHeight=1017 +.toolbar.tool05=Command Finder Action Tool +.toolbar.tool04=Window Level Tool raw.gap=0 -raw.height=64 -raw.n=60 -raw.offset=0 -raw.options=2 -raw.type=2 -raw.width=64 -recent00=/home/olivier/Documents/dataIRM/Nifti/CEST_Rachel_2025/Tube_a4_b4_c4_d1_d3_2/ROIs_IJ.zip -recent01=/home/olivier/Documents/dataIRM/Nifti/CEST/20221004-GdMR9-J17/20221004-GdMR9-J17-05-T1map_RARE.nii -recent02=/home/olivier/Documents/dataIRM/Nifti/CEST/Modif_Rachel/Rat8_modif.jpg -recent03=/home/olivier/Documents/dataIRM/Nifti/CEST/Modif_Rachel/Rat8_modif.tif -recent04=/home/olivier/Documents/dataIRM/Nifti/CEST/Modif_Rachel/Macro_Rat8.ijm -recent05=/home/olivier/Documents/dataIRM/Nifti/CEST/Modif_Rachel/Macro_Rat9.ijm -recent06=/home/olivier/Documents/dataIRM/Nifti/CEST/20221004-GdMR8-J24/20221004-GdMR8-J24-07-T1map_RARE-T1map.nii -recent07=/home/olivier/Documents/dataIRM/Nifti/CEST/20221004-GdMR8-J17/20221004-GdMR8-J17-05-T1map_RARE-T1map.nii -recent08=/home/olivier/Documents/dataIRM/Nifti/CEST/20221004-ArgMR8-J10/20221004-ArgMR8-J10-06-T1map_RARE.nii -recent09=/tmp/-04-1-1_T2_RARE_80x80x200_85sl-(E4).nii -recent10=/tmp/-06-1-MGE-(E6)-02.nii.gz -recent11=/tmp/-06-1-MGE-(E6)-01.nii.gz -recent12=/home/olivier/Documents/dataIRM/tmp/CEST_new_method/TB55_24/Rois_Ga_Gb1_Gb2.zip -recent13=/home/olivier/Documents/dataIRM/Bruker/VC_stimul/Rois_concombre.zip -recent14=/home/olivier/Documents/dataIRM/Bruker/MicroFlam/Mif-S18-SD3H_Mif-S18-SD3H-240126-13-1-7_DTPI_4seg_16dir_sat_150x0.8_b200-600-1200_av2_phLR-(E13).nii.gz -roicolor=\#FFFF00 -showcolor=\#00FFFF +.results.height=384 diff --git a/MRIFileManager/mri_conv.png b/MRIFileManager/mri_conv.png new file mode 100644 index 0000000..57e645b Binary files /dev/null and b/MRIFileManager/mri_conv.png differ diff --git a/README.md b/README.md index 581ff4f..a0dfffb 100644 --- a/README.md +++ b/README.md @@ -1,579 +1,22 @@ + [![](https://img.shields.io/badge/java-8-yellow.svg)](https://www.java.com/fr/download/) [![](https://img.shields.io/badge/platform-Linux%2C%20OSX%2C%20Windows-orange.svg)](#) -# MRI File Manager - MRI File Manager allows the reading of some raw and processed data files from MRI Spectrometers : - - - Bruker Paravision PV5, PV6 & PV7 (raw data of magnitude type). - - Dicom from Bruker, Philips, Siemens. - - Philips Achieva (Par/Rec v4, v4.1 & v4.2, Xml/Rec v5). - - Nifti-1 (with or without Json). - - BIDS - Brain Imaging Data Structure. - - It also allows for converting MRI images to Nifti-1 or BIDS: - - - Export MRI data in Nifti-1 or BIDS format until 5 dimensions of the image (x, y, slice, frame, temporal). - - Json files are created and associated with Nifti files in order to contain MRI parameters. - - an option of anonymization allows to hide sensitive informations about the patient (name, age, sex, weight). - - adaptation of orientation information in Nifti headers (tested on SPM, FSL and MRtrix). - - option of customizing the Nifti file names. - - possibility to create text files containing bvecs & bvals for MRtrix and FSL (Bruker, Dicom and Philips). - - -# Documentation - -The documentation is available on mri_conv's website here: [https://populse.github.io/mri_conv](https://populse.github.io/mri_conv). -To download the latest 'development' version, click [here](https://github.com/populse/mri_conv/archive/devpt.zip) or 'Download ZIP' in 'Clone or download'. +This branch contains a draft version of mri_conv to allow other developers (MP3 ...) to test the compatibility of mri_conv with their software. # Release history

- 09/09/2025: version 25.1.0a - Features modified: - - for MP3 and MIA softwares : exporting Bruker data to nifti format doesn't refer to RAS orientation. - -

- - 11/04/2025: version 24.5.1a - Bug fixed: - - Bruker: bugs with Paravision360 fixed - Features modified: - - DictionnaryMRI_system.yml: some improved tags - - ImageJ: update to 1.54p - -

- - 19/12/2024: version 24.4.1a - Features added: - - Bids: for export to Nifti/Json: - - tag SliceGap added in mri_conv json (= SpacingBetweenSlices - SliceThickness) - - AcquisitionDuration added in mri_conv json - - ProtocoleName and SequenceName corrected - - tag Institution added in mri_conv json (concatenated with InstitutionDepartmentName) - - tag ManufacturerModel added in mri_conv json - -

- - 17/10/2024: version 24.4.0b - Features added: - - Nifti: Nifti/Json from Dcm2niix or 'handmade' can now be exported to Irmage Nifti/Json. - -

- - 25/07/2024: version 24.3.1b - Bug fixed: - - Bruker: Nifti conversion bug for Paravision 360 resolved - Features modified: - - BIDS: for export to Nifti/Json, RepetitionTime, EchoTime and InversionTime are converted to ms - Features added: - - All: for 4D and 5D images, Repetition Time value is added in the Nifti header (4th value of Grid spacings) - -

- - 12/04/2024: version 24.3.0a - Bug fixed: - - Dicom : conversion bug for some Dicoms resolved - -

- - 20/03/2024: version 24.2.1a - Features modified: - - Bruker : export to Nifti/Json modified, now the axes refer to RAS orientation - Bug fixed: - - Bruker : 5D image order problem (in the case of multi Repetition and multi Echo) fixed - -

- - 16/02/2024: version 24.1.1a - Features modified: - - bvec, bval : now works for Philips (fsl and MRtrix) - -

- - 01/02/2024: version 24.1.0a - Features modified: - - bvec, bval : for fsl format, bvec is now convert to image reference plane (for Bruker, Dicom and Philips). for MRtrix format, bvec is based on scanner reference system. - - -

- - 05/09/2023: version 23.4.2a - Features modified: - - bvec, bval : now bvec and bval files have .bvec and .bval extensions (FSL format). The Mrtrix format stay as before (.txt) - -

- - 29/08/2023: version 23.4.1a - Features added: - - Bids : when exporting to Nifti, a 'bvec_bval' tag is added to the LogExport. Its value is 'yes' if bvec/bval files have been copied. - -

- - 25/08/2023: version 23.4.0a - Features added: - - Bids : now possibility to read json generated by dcm2niix - - Bids : for diffusion, now bids export copies bvec/bval files in the same folder as the Nifti/json pair - -

- - 26/06/2023: version 23.3.0a - Bug fixed: - - Dicom : problem with bvec/bval for some Dicom solved - Others: - - some fields added in DictionaryMRI_System.yml : Slice_Gap, Slice Thickness In Acq. - -

- - 05/04/2023: version 23.2.0a - Features added: - - all : 'Directory' field added in the naming choice for exporting files to Nifti - Others: - - ImageJ : update to version 1.54d - -

- - 01/02/2023: version 22.2.2a - Bug fixed: - - Bruker : problem of bvec/bval generation (when the number of diffusion experiments >1) solved - -

- - 13/09/2022: version 22.1.9a - Bug fixed: - - Dicom : normalization problem fixed - -

- - 04/05/2022: version 22.1.8a - Bug fixed: - - Dicom Bruker: normalization problem fixed - -

- - 22/04/2022: version 22.1.7b - Bug fixed: - - Dicom : image order problem with some Dicom files (with dicomdir) fixed - -

- - 20/04/2022: version 22.1.7a - Bug fixed: - - Dicom : image order problem with some Dicom files fixed - - -

- - 23/03/2022 : version 22.1.6a - Bug fixed: - - Dicom : image order problem for some Philips DICOM files (SWIp) fixed - - ImageJ : some plugins added (Input_Output, niftijio.jar) - -

- - 11/03/2022 : version 22.1.5a - Bug fixed: - - Dicom : affine transformation correction (for some SPECT files) - -

- - 18/02/2022 : version 22.1.4a - Bug fixed: - - Dicom : problem reading some 2D DICOM files fixed - - Philips : problem reading some scanning sequences fixed - -

- - 03/02/2022 : version 22.1.3a - Bug fixed: - - Dicom : registration problem with some DICOM files fixed (new Slice Thickness calculation method) - Others: - - ImageJ : update to version 1.53o - -

- - 01/02/2022 : version 22.1.2a - Bugs fixed: - - Dicom : problem reading some DICOM files fixed - -

- - 28/01/2022 : version 22.1.1a - Bugs fixed: - - Basket : wrong file size - Others: - - basket : the bottom list is replaced by a table (now possibility to sort) - -

- - 19/01/2022 : version 21.8.2a - Bugs fixed: - - All : wrong value displayed in 'Image in Acquisition' field fixed - - BIDS : export bugs to Nifti/Json fixed - - Dicom : some dicom file reading errors fixed - Features added: - - Dicom & BIDS : icons displayed in the file dialog - - ImageJ : plugIn CEST added - -

- - 14/09/2021 : version 21.7.1a - Bugs fixed: - - Philips : problem with bvec, bval files fixed - Features added: - - Dicom : export to Nifti in windowless mode - Other: - - ImageJ : update to version 1.53j, some plugins removed - -

- - 18/05/2021 : version 21.6.1a - Bugs fixed: - - Bruker : problem of opening 32bits float type images solved (Bruker360) - - All : the naming of files exported to BIDS (when adding all sequences to basket) corrected - -

- - 04/05/2021 : version 21.5.1a - Features added: - - Bruker : now compatibility with Paravision360 - Other: - - All : the export to BIDS by default is now as sub-(PatientName)/ses-(AcquisitionDate)/(BIDSmodality)/sub-(PatientName)_ses-(AcquisitionDate)_(SequenceName).nii - -

- - 14/04/2021 : version 21.4.1a - Bugs fixed: - - Dicom : image order problem with some Dicom JpegLossLess fixed - -

- - 09/04/2021 : version 21.3.1a - Bugs fixed: - - Dicom : bug with some DICOM files fixed - - Philips : image order problem with some 5D file resolved - Features added: - - All : more information in error messages (Class) + 29/01/2026: version 26.1.3a + Lookandfeel changed to test compatibility with MATLAB under macOS

- 12/02/2021 : version 21.2.0a - Bugs fixed: - - Dicom : bvec and bval calculation errors corrected - -

- - 13/01/2021 : version 21.1.0a - Others: - - Dicom : bvec and bval extraction conforms to dcm2nii - -

- - 19/11/2020 : version 20.2.8b - Bugs fixed: - - Nifti : bug when adding Nifti without json to basket fixed - - the 'help' menu didn't work - Others: - - the dot character '.' is replaced by underscore '_' in the naming of files to export to Nifti - -

- - - 14/10/2020 : Version 20.2.7a - Bugs fixed: - - Bruker : in windowless mode, export to Nifti with multiple orientation (axia, coronal, sagittal) is now possible. - - Philips : in windowles mode, naming when exporting to Nifti improved. - -

- - - 14/10/2020 : Version 20.2.6a - Bugs fixed: - - Dicom: Image Dicom option forced to 'ignore Rescale Slope' - Others: - - ImageJ update to 1.53e - -

- - 16/09/2020 : Version 20.2.5a - Bugs fixed: - - bug when export to Nifti in windowless mode with 'bvecs, bvals' option enabled fixed - Others: - - bvecs and bvals can be added in json file if 'bvecs, bvals' option enabled (with field name 'bvecs' and 'bvals'). - -

- - 11/09/2020 : Version 20.2.4b - Bugs fixed: - - Bruker : bug with some 3D image when nslice=1 (IRMOD) fixed. - -

- - 10/09/2020 : Version 20.2.4a - Bugs fixed: - - Bruker : bug with 4D image when nslice=1 fixed. - -

- - 10/09/2020 : Version 20.2.3c - Modification : - - some graphics improvements - Others: - - ImageJ update to 1.53d - - ImageJ : 3D plug-in added - -

- - 10/08/2020 : Version 20.2.3b - Modification : - - ImageJ : absolute path of ImageJ (instead of relative) - Others: - - JTattoo update to 1.6.13 - - removal of some unnecessary plugins from ImageJ - -

- - 17/07/2020 : Version 20.2.3a - Bugs fixed: - - Bruker : bug with normalization for some parametrics 3d sequence fixed. - -

- - 03/07/2020 : Version 20.2.2a - Bugs fixed: - - Basket manager : bug with the combobox "Nifti-1 , BIDS" fixed. - -

- - 01/07/2020 : Version 20.2.1a - Bugs fixed: - - Philips : bug with the 'history' field under the buttons fixed. - Others: - - ImageJ update to 1.53c - -

- - 24/06/2020 : Version 20.2.0a - Features added: - - Philips : now compatible with ParRec V4 and V4.1. - possibility to select a single directory containing Philips data. - Bugs fixed: - - DICOM : problem reading some Dicom files (16 bits signed) fixed. - Others: - - ImageJ update to 1.53b - -

- - 18/06/2020 : Version 20.1.5d - Bugs fixed: - - Dicom Philips : image order problem in some sequences 4D fixed. - -

- - 12/06/2020 : Version 20.1.5c - Bugs fixed: - - Bruker : bug with 'slice package' fixed - -

- - 14/05/2020 : Version 20.1.5b - Bugs fixed: - - Bruker : bug when exporting to Nifti with number of slice = 1 fixed - - Philips xml/REC : display bug when opening xml file fixed - -

- - 17/04/2020 : Version 20.1.4b - Modification: - - some graphic improvements - Others: - - dependencies update - -

- - 15/04/2020 : Version 20.0.4b - Bug fixed: - - Bruker: slice thickness in Nifti header for Localizer/Tripilot sequence corrected - Modification: - - The combobox of file history is now under the buttons "Bruker","Dicom" etc... - Others: - - ImageJ update to 1.52v - -

- - 09/04/2020 : Version 20.0.3b - Modification: - - Option export window: modification of tab "Nifti naming" - -

- - 08/04/2020 : Version 20.0.2b - Bug fixed: - - Basket manager : bug under Windows when filling the basket fixed - -

- - 08/04/2020 : Version 20.0.2a - Features added: - - Basket manager : preview window added - - Export to BIDS : better compatibility with modalities - -

- - 30/03/2020 : Version 20.0.1a - Features added: - - All : now possibility to export Bruker, Philips and Dicom in BIDS format (still in development) - - Bruker : affine transformation now compatible with MRTrix - Bug fixed: - - Nifti: problem exporting Nifti files without JSON fixed - -

- - 06/09/2019 : Version 19.6.1a - Features added: - - Philips : possibility to launch MRI File Manager by script in windowless mode (see section 'Launching of the software' in 'Installation' page). - Bug fixed: - - Philips: image order problem in some sequences 5D fixed. - -

- - 29/08/2019 : Version 19.6.0a - Features added: - - Bruker : possibility to launch MRI File Manager by script in windowless mode (see section 'Launching of the software' in 'Installation' page). - - Bids : menus "see 'dataset_description.json' file" and "see 'participants.tsv' file" added in popup menu. - Bug fixed: - - Dicom Philips: image order problem in some sequences 5D fixed. -

- - 09/08/2019 : Version 19.5.6a - Bug fixed: - - Bids : some bugs who crashed Populse_mia fixed. - -

- - 09/08/2019 : Version 19.5.5a - Others: - - Bids : following the Bids development, now possibility to export Bids structures to Nifti . - -

- - 09/07/2019 : Version 19.5.4b - Features added: - - Bids : following the Bids development(still in trial version). - -

- - 05/07/2019 : Version 19.5.3b - Features added: - - Bids - Brain Imaging Data Structure: new MRI file format introduced in the software (still in trial version). - -

- - 02/07/2019 : Version 19.4.3b - Bug fixed: - - DICOM: problem reading some Dicom files. - -

- - 02/07/2019 : Version 19.4.3a - Features added : - - DICOM (Philips): possibility to generate bvecs/bvals files for reading of diffusion in MRtrix or FSL. - Others: - - best display of JSON text in log - - best display of no-isotropic images in thumbnail list - -

- - 25/06/2019 : Version 19.3.3a - Bugs fixed: - - Bruker : affine transformation problem of some Bruker sequences fixed. - - NIFTI : problem reading some Nifti files (64 bits float) fixed. - - Philips : problem reading when sequences had same number serial, protocol, acquisition time ... fixed. - -

- - 21/06/2019 : Version 19.3.2a - Bugs fixed: - - NIFTI : problem reading some Nifti files (16 bits unsigned) fixed. - - Philips : problem reading when files had lowercase extensions (*.rec, *.par) fixed. - Features added : - - Philips : possibility to generate bvecs/bvals files for reading of diffusion by MrTrix and FSL. - -

- - 12/06/2019 : Version 19.3.1a - Bugs fixed: - - DICOM : problem reading Dicom files without rescale slope and intercept - -

- - 06/06/2019 : Version 19.3.0a - Bugs fixed: - - DICOM : dimension reversed for some Dicom. - - problem of the dialogue window 'Loading thumbnail ...' that did not always close resolved - Features added : - - Bruker : possibility to generate bvecs/bvals files for reading of diffusion by MrTrix - (see page 'Documentation', section 'Set options') - - add option [ProjectsDir] for the script (see page 'Installation', section 'Launching of the software') - Others: - - Json Irmage : now, all parameters that have floating or integer values (same single) are presented as an array (list of list) - - better management of items in the basket - - exit code = 100 (for populse_mia project only) + 28/01/2026: version 26.1.2a + The LookAndFeel module has been changed for better Matlab compatibility with Java (up to Java 21). + It seems to work well under Linux. Testing on Windows and macOS is needed. + -

- 04/04/2019 : Version 19.2.3a - Bugs fixed: - - DICOM : for some Dicomdir files, anonymization did not work. - - Nifti : anonymization did not work - - Bruker : "Sequence Name" tag more complete for parametric images -

- - 03/04/2019 : Version 19.2.2a - Bugs fixed: - - DICOM : for some Dicom files, anonymization did not work. - - DICOM : after the ImageJ upgrade to 1.52n, some DICOM images were not displayed in the 'thumbnails' area. - Others: - - ImageJ update to 1.52n -

- - 04/03/2019 : Version 19.2.1a - Bugs fixed: - - DICOM : problems opening Dicom files which included the same serial number. - - PHILIPS : problem opening DwiSE images. - Features added : - - DICOM : add in "Preference" menu the option "simplified view for DICOMDIR" for faster reading. - Others: - - a new column 'Note' added in the 'Data browser' table. - - a new column 'Serial Number' added in the 'MRI sequence' table. -

- - 22/01/2019 : Version 19.0.0a - Bugs fixed: - - DICOM : problem opening Dicom files which are located in a root directory of a disk. -

- - 11/12/2018 : Version 18.2.9a - Bugs fixed: - - PHILIPS : under Linux, display problem for Xml/Rec files. - Others: - - 'DataAnonymized' tag modified in json file (add 'Description, 'format', ...). -

- - 11/12/2018 : Version 18.2.8a - Bugs fixed: - - better research of Nifti files. - Features added : - - options to anonymize MRI datas -> 'DataAnonymized' tag added in json file (value = no or yes). - - BRUKER : possibility to export the parametric images separatly (see 'File'-> export -> Option export' menu). -

- - 04/12/2018 : Version 18.1.8a - Bugs fixed: - - problem with export to Nifti (Populse_MIA) - - problem with defaut directory for the exported data. - Others: - - the software version is displayed at the top of the sofwtare window. - - DictionaryMRI_System.yml is modified ('Patient Weight', type = string instead float) - - PHILIPS: 'Patient Sex', 'Patient Weight', 'Patient BirthDate' tags added.