This site uses cookies to assist with navigation and your ability to provide feedback. Cookie Policy

The latest version is version 7.1.0



**************** LIFEx public version 7.1.0 *****************
What has been added, changed or updated in this new release?
Here is a list of the most significant additions, changes or updates in LIFEx v7.1.0:

- added: GML and GML1 units on TEP series
- added: arguments (script, image, directory) on command line
- added: display header of all loaded dicom files (and not only the first file)
- added: protocol box size reduced after five minutes
- improved: display of images and ROIs
- improved: the dialog boxes for protocols not used for 5 minutes are automatically minimized as an icon
- changed: save MIP 360° is mp4 format with rotation of 2°
- fixed issue: no freeze when mouse move out of MIP frame while recording MIP in MPEG4 format
- fixed issue: rtstruct.dcm save

Main (ROI):
- fixed issue: reading of some RTStruct DICOM that could not be read properly before
- fixed issue: nifti multi-ROI file with IOP and large number of ROIs (>100)
- fixed issue: contrast-based segmentation method
- fixed issue: RTStruct with image orientation in patient coordinate (IOP)
- fixed issue: clickDraw and clickDraw40% sometimes frozen
- fixed issue: colour mixing of overlaid ROIs
- fixed issue: on pencil2D, Nesle, Threshold tools

Texture protocol:
- removed: button of ROI check for texture
- added: correlation map on local map texture
- removed: comment of peakSphere1mL and 0.5mL Columns in texture result file
- fixed issue: suppression of the +1 in the discretization values only for values > maxBound

Quality Control protocol:
- add CT transverse
- add PT PSF

**************** LIFEx public version 7.0.0 *****************
What has been added, changed or updated in this new release?
Here is a list of the most notable additions, changes or updates in LIFEx v7.0.0:
Main: - added: addition of a shortcut for the settings in the protocol frame
- added: keyboard shortcut "P" to print the current view
- improved: optimized use of the RAM for histogram calculation (series and ROI)
- improved: change from jdk-8 to jdk-16 which integrates the new java modules (jmod)
- improved: support of 4K, 5K, 8K display resolution
- improved: generation of the iconography (SVG->PNG) is done only once at the first start of the application.
- improved: add .deb (debian, ubuntu) .rpm (fedora, redhat) .aarch64 (M1 mac) packaging of LIFEx distribution
- changed: documentation and tutorials are now excluded from the application and become exclusively accessible through Internet
- changed: resources, log, properties, setting files are moved into .LIFExv.v.v directory of root user
- fixed issue: bad filename on some written nifti file Main (Series):
- added: Fat (W500 L-100) window leveling of CT contrast
- added: Laplacian, Mean, Law, Wavelet series filters
- improved: read series from NRRD file format
- improved: Not a Number (NaN) values are no longer visible now (with aplha=0) on images
- improved: DICOM-RealWorldValueSlope file no longer stops the opening of the other series on loading
- fixed issue: empty sub region on US DICOM format are not copied on b-mode base image
- fixed issue: CT DICOM images with bitsAllocated=16, bitsStored=16, highBit=15
- fixed issue: DICOM multi frames with enhanced class storage and without PerFrameFunctionalGroupsSequence) / FrameContentSequence / DimensionIndexValues
- fixed issue: "Radionuclide Total Dose" DICOM attribute is now in MBq for NM modality, and in Bq for PET modality
- fixed issue: acquisition time instead of serieTime is displayed on overlaid images
- fixed issue: patient size are now in "float" value while it was "int" before (impact scale factor SuvLbm)
- fixed issue: no interpolation needed when matrix loaded from nifti are exact inversion (-1) on Z, Y or X axis (only flip is executed)
- fixed issue: add IOP management on registration file (DICOM-REG) Main (ROI):
- added: invert selection tool of ROI
- improved: read ROI from NRRD file format
- improved: new formatting of statistics in ROI box information
- improved: changed default names of ROI "C1...Cn" into new names "R1...Rn"
- downgrade: ROI file format before v4.00 is no longer supported
- fixed issue: KeepOne ROI tool on large matrix
Texture protocol:
- improved: all results of features are set to NaN when they are not selected for calculation
- improved: CONV/DISCRETIZED_peak (0.5mL and 1mL) are accelerated (on 2D slices only)
- fixed issue: DISCRETIZED_HISTO_Skewness is removed (duplicate values with DISCRETIZED_Skewness)
- fixed issue: DISCRETIZED_HISTO_Kurtosis is removed (duplicate values with DISCRETIZED_Kurtosis
- fixed issue: DISCRETIZED_HISTO_Entropy_log2 and__log10 are corrected
- fixed issue: DISCRETIZED_HISTO_Energy is corrected
- fixed issue: unavailable 3d processing on GUI on 2D series MTV protocol:
- added: Dmax (and other MTV features) feature is now available
- added (MTVNotation): add property "LIFEx.mtv.Frame.Annotation" to hide/show annotations ; none as default ; available options: none || fill
- added (MTVnotation): unvalid button on GUI
- changed (MTVnotation): minimal value of initial threshold is set to SUV 1.1
- changed (MTVnotation): empty ROI is now possible
- changed (MTVnotation): on result csv file, coordinate of SUVmax of selected ROI is written in place of mouse coordinate when clicking on ROI
- improved: greatly increased responsiveness when many ROIs are present
- improved: row of total results in csv file is now at the right place (right shift of one column)
- improved: add Center of mass(COM), sumBindCOM, avBindCOM, stdBindCOM, minBindCOM, maxBindCOM, avTotBindCOM on protocol
- fixed issue: no ROI creation if empty size PT Compartmental analysis protocol:
- added: dicom-extension in nifti file from PMOD1 format of extension (Frame Start Times & Frame Duration)
- added: added the width of the "frame duration" on the dynamic chart
- added: added a weighting corresponding to the "duration frame" in the TAC output file in dft format
- improved: "frame acquisition time" is replaced by "frame reference time" on dft file
- improved: x and y units are adjustable before saving on dft file Quality Control protocol:
- changed: rename of column title of field RedExternDiameterRatio by RedExternDiameter(mm) ; idem for GreenDiameterRatio and RedDiameterRatio


**************** LIFEx public version 6.30 *****************
What has been added, changed or updated in this new release? Here is a list of the most notable additions, changes or updates in LIFEx v6.30: -fixed issue: the display bug when translating an ROI - fixed issue: "image position (patient) (IPP)" on nifti ROI file - fixed issue: scale of ROI histogram - fixed issue: time on MR dynamic images with "trigger time" DICOM field - fixed issue (Labeling protocol): properties frame set to "Always On Top" - fixed on display: The exposure expressed in mAs (and not in mA as before) in CT images - fixed on display: The exposure in CT images is slice dependent (and not the same for all slices as before) - added: byte format in tiff image - added on display: peak kilo voltage output of the X-Ray generator used for CT images - improved: faster loading of images - improved: quick access to planar slice orientation directly on images - improved: quick access to Y units (intensity, ...) and X units (time) settings directly on images - improved: color change of text overlay on image (green text corresponds to settings that can be changed, while orange text shows settings that cannot be modified) - improved: series tools are redefined - improved: title "Edit" and "Tool" of ROI tools are now changed into "Create" and "Edit"
**************** LIFEx public version 6.20 *****************
version 6.20 - Fri Jui 9 19pm CEST 2020 What's been added, changed or updated in this new release? Here's a list of the most notable additions, changes or updates in LIFEx v6.20 - added: Series merger tool - added: writing of DICOM-RTStruct is available to save ROI - added: internal frames in application ; by default, all application frames are now gathered in a single frame. The separated frame format can still be set using the parameter settings menu - added: Sag alone layout template - added: Cor alone layout template - added: Laplacian of Gaussian image filter supported - added (Texture protocol): availability of Laplacian of Gaussian filter before calculation - added (Texture protocol): availability of Laplacian of Gaussian filter in texture script - added (MTV protocol): addition of new ZYX spacing of series in xls file result - fixed issue (Texture protocol): "Sorry, but no ROI is defined. Please define an ROI and start again" in texture scripts - improved: properties file is now in xml format to support Russian characters - improved: selected time frame of timing series for MIP display is available (and not fixed only at time 0) - improved: opening multi-modalities dicom (example:CT + RT-STRUCT + RT-DOSE) in the same directory automatically creates their corresponding DICOMDIR - deleted: all vertical layout protocols



**************** LIFEx public version 6.00 *****************
version 6.00 - Fri Mai 14 11am CEST 2020 What's new in (feature release) LIFEx 6.00? - fixed issue: message ['AcquisitionDateTime' is not defined. SUV may be incorrect.] is shown only if modality is PT or MN - fixed issue: minimal selection ROI is one voxel for circle3D or circle2D - fixed issue: multiple acquisitionNumber in one study - fixed issue: additional display frames are now decorated frames (including title bar for moving frame) - fixed issue: erroneous volume of ROI when Image Orientation Patient of ROI file was not identity - fixed issue: application of orientation volume when loading from DICOMDIR - fixed issue (Dsc-MR protocol): increase of the time range in which the peak following injection is looked for (#20 vs #4) - fixed issue (MTV protocol): clear values MTV, SMTV, TLG, STGL (in title menu of MTV protocol) when all ROI are cleared at the same time - fixed issue (Texture protocol): value of SHAPE_sphericity feature and SHAPE_compacity feature included in csv file result - fixed issue (Texture protocol): rename former HISTO_Skewness feature into CONV_Skewness feature - fixed issue (Texture protocol): rename former HISTO_Kurtosis feature into CONV_Kurtosis feature - fixed issue (Texture protocol): add new features: HISTO_Skewness, HISTO_Kurtosis - fixed issue (Texture protocol): add new features: DISCRETIZED_min, DISCRETIZED_mean, DISCRETIZED_std, DISCRETIZED_max, - fixed issue (Texture protocol): add new features: DISCRETIZED_Q1, DISCRETIZED_Q2, DISCRETIZED_Q3 - fixed issue (Texture protocol): add new features: DISCRETIZED_Skewness, DISCRETIZED_Kurtosis, DISCRETIZED_ExcessKurtosis - fixed issue (Texture protocol): add new features: DISCRETIZED_peakSphere0.5mL, DISCRETIZED_peakSphere1mL - fixed issue (Texture protocol): add new features: DISCRETIZED_TLG(mL) [onlyForPETorNM] - fixed issue (Texture protocol): add new features: DISCRETIZED_RIM_min, DISCRETIZED_RIM_mean, DISCRETIZED_RIM_stdev, DISCRETIZED_RIM_max, DISCRETIZED_RIM_sum - fixed issue (Texture protocol): increase of the robustness of feature values calculated from TexGLZLM matrix - fixed issue (Texture protocol): computation of SUVpeak and SUVstdev made more efficient, no changes in values - fixed issue (Texture protocol): quintic Lagrangian method used for spatial resampling does not affect min and max values anymore - fixed issue (Texture protocol): check button accounts for spatial resampling - added: quick orientation (Axial, Coronal, Sagittal) is available in each frame - added: automatic removal of CT patient table - added: display only border of ROI with border/fill button added to ROI tool menu (apply on all tools) - added: CoorMaxROI, COM and weightedCOM (wCOM) are saved in xls and csv export files - added: remove drawing (right button of mouse) when (absolute/relative) filter is activated - added: implementation of DICOM-REG (registration file between 2 series) - added: implementation of DICOM-RT Dose Module - added: implementation of loading/saving (3D and 4D) series in enhanced dicom format (Enhanced ClassStorage) - added: shadow on location crosshair to enhance visibility - added: implementation of spatial resampling series - added: implementation of decoder for Philips DICOM (JP2) images - added (DSC-MR protocol): echo time (TE) in description of nifti file - added (DSC-MR protocol): scripting dsc-mr calculations - added (Texture protocol): SHAPE_surface index in csv result file - added (Texture protocol): new dialog box to select ROI among those stored in an RTStruct file. - added (Texture protocol): 2D or 3D processing setting - added (Texture protocol): 4D or temporal 3D of local texture (Map) is available - added (Texture protocol): 2D processing of GLCM features in coronal and sagittal views - added (Texture protocol): add "calcium quantitation - Agatston score" feature for CT only - added (Labeling protocol): new protocol, labeling data of medical imaging protocol - added (Calcium protocol): new protocol, calcium quantitation - Agatston score for CT images - improved: 3D or 2D selection ROI: selecting a single voxel is possible - improved: add seriesNumber to the name of the directory where the ROI are saved - improved: list of protocols is now on a single frame (and not integrated under series gui) - improved: memory gain on the design of the application - improved: nifti ROI can be floating numbers (cast in integer ROI is implemented) - improved: RStruct volumes are consistent with RTStruct volume of MIM software - improved: diameter of circle3D and circle2D tools is displayed when tool size is changed - improved (DSC-MR protocol): TriggerTime dicom tag is taken into account if it exists - improved (Texture protocol): "sessionXls" is changed into "SessionCsv" (sensitive case) in script files - improved (Texture protocol): result file is changed to *.csv instead of *.xls (too many problems with excel files) - improved (Texture protocol): "check ROI for texture" is moved from ROI tools to Texture GUI - improved (Texture protocol): checking the voxels number compatible with textural feature calculations (64 for 3D ROI, 16 for 2D ROI) has moved after voxel resampling - improved (Texture protocol): processing of GLZLM and SUVpeak is faster - improved (Texture protocol): remove all hash and space characters in column title of csv ouput file - improved (Texture protocol): "NaN" values in result file when cluster is too small for textural feature calculation - improved (Texture protocol): the session result file has its name set automatically and fixed. It is created and appended automatically - improved (Texture protocol): time frame is calculated in texture calculation, time column is added to the result file - improved: if slices in RTStruct are not adjacent then interpolation between slices is performed - improved: color palette is now unique for each frame. Shift key down enables synchronization of all palettes when you modify it - changed tools: "Substract", "Undo" operations have been removed - changed tools: "Erode", "Dilate" operations systematically replace the existing ROI (instead of creating a new one)
**************** LIFEx public version 5.10 *****************
version 5.10 - Fri Jui 14 11am CEST 2019
What's new in (feature release) LIFEx 5.10?
- fixed (texture protocol): add a permanent message when file path of xls result file is wrong in a script file
- fixed (texture protocol): z rezampling (on 2D images) is set to 1 when z spacing value is less than current z spacing
- fixed (texture protocol): declare up to 4000 styles in a .xls workbook
- fixed (texture protocol): null results on all GLCM maps
- fixed cal_min and cal_max values on saved nifti file
- fixed IPP location on 4D nifti file format
- fixed nifti filename includes seriesDescription and title field
- fixed accuracy of values less than 10e-6 on ROI with main interface vs texture accuracy values je ne comprends pas
- fixed: some axial slices skipped on display when using wheel mouse navigation
- fixed: slices navigation using keyboard
- fixed: operation add,sub on series
- fixed: on some Siemens PET Dicom files, "Actual Frame Duration" dicom field empty can produce a wrong SUV conversion
- added: MIP processing with video card (largely increased performance)
- added: save in 4D nifti ormat
- added: multiple series management using scripts (see texture UserGuide for more information)
- added: substract, add,.. between times series is available
- added: LIFEx.Image.ImageOrientationPatient=true/false properties in properties file
- added: LIFEx.Image.ImagePositionPatient=true/false properties in properties file
- added (Dsc-MR protocol): add rCBF value in legend of ROI curve
- added (Dsc-MR protocol): add rCBF, rCBV, MTT, TTAB, and parameters of gamma function in ROI value display (and csv, xls)
- improved (texture protocol): increase in performance of CONV_peak calculation (4 times faster)
- improved (texture protocol): loading of all ROIs in directory when it is set on script line
- improved: loading PMOD format of ROI (voi)
**************** LIFEx public version 4.90 *****************
version 4.90 - Thue Apr 9 15pm CEST 2019
What's new in (feature release) LIFEx 4.90?
- added: header viewer of nifti format image
- added: ROI interpolation between two 2D ROI drawn on axial slices
- added: (texture protocol): quartile Q1, Q2 (median), Q3 in conventional indices
- added: loading 2D ROI in PNG, TIFF, BMP, GIF, JPG formats
- added: saving 3D image in nifti integer 16 bit signed (in addition to have nifti float 32 bit)
- added: unit of voxel size displayed on the image
- added: call of a texture script online directly in file (Linux OS only) (you can copy/paste the last command line with a different script file on each line)
- added: affine transform of series (S) with aS+b model
- changed: clik&draw and click40% tools now in the Tool menu
- changed: "draw" label menu is changed to "edit" label menu
- changed: the "move" tool selects the reference series automatically and avoids the corresponding warning message
- changed: decrease or increase of + -1 value by step wheel and Shift key pressed (and + -10 with Shift + Ctrl keys pressed at the same time) for snake2D and snake3D tools
- fixed (texture protocol): CONV_minvalue is now calculated
- fixed (MTV protocol): disabling of tools that not available on tool box option
- fixed (MTV protocol): ROI display on 360° angles of MIP
- fixed (MTV protocol): save custom values for pruning (initial & threshold steps) in preference session file
- fixed (MTV protocol): eye always open for maximum values in the sorting criterion menu
- fixed (MTV protocol): numerical sorting for sorting criterion with #id values
- fixed (MTV protocol): closing of the dialog box of sorting menu
- fixed (MTV protocol): artifactual ROI split visible on display
- fixed: rounded values of RTStruct contours are more accurate
- fixed: SUV conversion in Philips proprietary dicom format (formatted as a vector in uint8)
- fixed: round/floor of ROI location (on display) when using absolute or relative threshold
- fixed: threshold when SUV unit is selected
- fixed: optimisation of the memory management when running on Linux OS
**************** LIFEx public version 4.70 *****************
version 4.70 - Sat Feb 16 18pm CEST 2019
What's new in (feature release) LIFEx 4.70?
- fixed: slice thickness on Biograph_mMR (Siemens)
- fixed (texture protocol): RIM index: proper units (mL and #vx) assigned in excel file
- fixed (texture protocol): RIM index on some extreme anysotropic voxels
- fixed (texture protocol): RIM index on more than one ROI
- fixed: on mac only, wheel rotation is good direction when 2 finger shift on trackpad (downgrade on jdk1.8.0_144 version)
- thresholding at 40% (and by extension at n%) allowed on the time series. Note that the activated series and the activated time t are defined as reference for the calculation of the maximum value from which the 40% (respectively n% value) is calculated
- added: image number unit (in #) on X axis (in addition to have sec, min, h units)
- fixed: inopportune flash on MIP movie


**************** LIFEx public version 4.64 *****************
version 4.64 - Tue Feb 7 18pm CEST 2019
What's new in (feature release) LIFEx 4.64?
- updated: memory is better used when launching the application (linux all available memory without buff/cache is used)
- fixed: slice thickness on some CT scan


**************** LIFEx public version 4.62 *****************
version 4.62 - Monday Feb 4 10am CEST 2019
What's new in (feature release) LIFEx 4.62?
- fixed: change in the display of the cursor coordinates - fixed: sorting the series when more than one series is loaded (sorting criterion is « acquisition number » dicom field) - fixed (texture protocol): Automatic adjustment of relative/absolute intensity resampling menu as a function of the settings already filled


**************** LIFEx public version 4.60 *****************
version 4.60 - Wednesday Jan 30 07pm CEST 2019 What's new in LIFEx 4.60?
- added: save screenshot of MIP (png1))
- added: save screenshot of 360° of MIP view (png2)
- added: send screenshot of MIP to booklet (print)
- added: Dicom-REG (registration parameters) reading between two series with different StudyInstanceUID
- added: reading of images in tiff 16 bit format
- added: creation of a new parametric image from a dynamic series: mean of all times, time to peak, time to min, sum of all time images
- added: tissue save format file (dft) of Turku PET Center
- added: tissue save format file with recovery coefficient (dft+rc) of Turku PET Center
- added: Subtraction tool in ROI menu: create a new ROI by subtracting 2 visible ROI (ROI with open eye)
- added: Intersection tool in ROI menu: create a new ROI defined as the intersection of all visible ROI (ROI with open eye)
- added: loading of DICOM-SEG (segmentation parameters) as an ROI file
- added: new rainbow colormap
- added: new transparency on colormaps
- added: warning message when saving dcm files with IOP that are not identity matrix (not yet supported)
- added: Pixel Padding Value (0028,0120) DICOM field supported for CT
- added: possibility to remove the volume corresponding to a given time in a times series
- added: Click&Draw 40% tool added to ROI menu
- added: Dilation of the external edges of a ring ROI
- added: simple operation tools between images
- added: flip tools (R<>L, A<>P and I<>S) operating on images
- added: in linux version only: the available memory of the system is taken into account when launching LIFEx
- added: SUL units
- added: management of image orientation and position coordinates of patient when cor, sag, ax slices are displayed
- added: management of image orientation and position coordinates on viewer
- added: SUVpeak in 0.5mL volume in the result xls file.
- added: bounding box to define regions in which GLCM feature maps are calculated.
- added: Biograph mMR Dicom supported (SharedFunctionalGroupsSequence and PerFrameFunctionalGroupsSequence)
- added: reset all application parameters to default values
- added: software name and version in description tag of nifti ROI, images and MIP nifti written files
- added: warning message if ROI files already exist when a "save ROI" action is run
- added: Dicom screenshot (SOPClassUID) supported
- added: PixelPaddingValue (0028,0120) is used to identify pixels to be excluded from the normal grayscale rendering. It is now supported when reading images.
- added (texture protocol): Local texture map calculation for GLCM indices
- added (texture protocol): PARAMS_BinSize in result xls file
- added (texture protocol): possibility to define bin size value only, without the number of grey level values in the graphical user interface
- added (texture protocol): in the live activity report, (quick) display of the position of each roi while texture processing is on-going
- updated: display order of value voxel on top right of images is now in the same order than list of (layer) series
- updated: improved circle3D and circle2D drawing performance
- updated: crosshair coordinates in image space
- updated: checking and modification of default bound values as a function of the imaging modality for automatic tuning of the display.
- updated: improved loading performance of RTStruct coordinates with multithreading calculation of each z slice
- updated: loading (and also loading over network) now keeps images in data/temporary and not in /tmp in linux system
- updated: enabling of ImageOrientationPatient(iop) and ImagePositionPatient(ipp) when loading Dicom(dcm) et Nifti(nii) images
- updated: enabling of ImageOrientationPatient(iop) and ImagePositionPatient(ipp) when writing Nifti(nii) images
- updated: memory is better used when launching the application (linux all available memory is used, windows 95% of available memory is used, mac os is set to 3.5Go of RAM for 4Go version, 7Go of RAM for 8Go version and 15Go of RAM for 16Go version)
- updated: improvement of the selection of dropdown menus
- updated: MIP nifti file fully saved (before this correction: only every other view was saved)
- updated: "Restore" instead of "Undo" for restore last deleted ROI
- updated: discretization updated to agree with the image biomarker standardisation initiative (IBSI) description
- updated: speed improvement when drawing circle2D and circle3D tools
- updated (texture protocol): Z resampling disabled if 2D images are loaded
- updated (texture protocol): different management of the zero values in NGLDM matrices. Only NGLDM_Contrast and NGLDM_Busyness are affected
- updated (texture protocol): HISTO_kurtosis is shifted by a Fisher correction factor of -3 to have kurtosis equal to 0 for normal distributions
- updated (texture protocol): values expressed in scientific format in excel file results
- updated (texture protocol): discretization in agreement with the image biomarker standardisation initiative (IBSI) description
- updated (texture protocol): LIFEx.texture.SpatialResamplingZ has been changed to LIFEx.texture.ZSpatialResampling (same thing for Y and X) in script file
- updated (texture protocol): unit conversion problem (SUV, #, BqmL) of min and max discretization bounds (in some use cases) now fixed.
- fixed: fields radiopharmaceuticalStartTime and radionuclideTotalDose are set to 0 when reading nifti file
- fixed: automatic window/leveling apply to all modalities
- fixed: RT-Struct reading
- fixed: RT-Struct loading continues even if a ROI structure as no contour (empty ROI are not shown)
- fixed: SUV conversion in Philips proprietary dicom format
- fixed: add message in the web page of the user location map for Firefox navigator : "to view this content with Firefox, you must remove the tracking protection"
- fixed: min and max bounds of relative resampling (min, max, sd) are calculated only for the biggest cluster
- fixed: update of MTV volume when using click and click40% tools
- fixed: dilate/erode tools now work on 2D images
- fixed: update MIP view with use of snake2D and snake3D tools
- fixed: default size window of MIP
- fixed: DICOM-SEG from Olea with IOP and IPP
- fixed: IPP and IOP from DICOM image file with numberOfFrame>1
- fixed (texture protocol): the size of bin is now set to the value of bin size minus one (see the image biomarker standardisation initiative (IBSI) description)
- fixed (texture protocol): in advanced setting, GLZLM_SRE label is modified to GLZLM_SZE
- deleted: Empty button in ROI tools (the « dispose » button does the same)


**************** LIFEx public version 4.00 *****************
version 4.00 - Mon Apr 23 12:00:00 CEST 2018
What's new in LIFEx 4.00?
- save dynamic series in DICOM format
- directory in which data are saved can be changed by the user in preference frame
- maps of GLCM features are now available
- "diagnosis protocol" has been renamed "Viewer protocol"
- increase in performance when calculating Texture GLCM matrix
Major bug fixes:
- patient position corrected in dynamic time-series
Minor bug fixes:
- correction of timing value (msec) of the last time point in dynamic series
- correction of min and max value units in graph
- MTV: click & draw tool action now updates the MTV value
- hide circle2D and circle3D when mouse cursor exits frame


*************** LIFEx public version 3.74 *****************
version 3.74 - Mon Mar 19 11:00:00 CEST 2018
What's new in (feature release) LIFEx 3.74?
- renaming TMTV protocol into MTV protocol
- creation of a DICOMDIR when more than 2 directories are loaded simultaneously, if that file does not exist
- adding of seriesDescription, studydescription and PatientBirthDate dicom tag of a DICOMDIR file
- saving dicom (+anonymised) series in local disk
- nifti ROI loading allows loading multi value ROI in the same ROI file
Major bug fixes:
- sometimes, z shift of 1 voxel on ROI when loading RTSTRUCT file
- fixed artifacts when there were more than 1 contour sequence by slice in RTSTRUCT files
Minor bug fixes:
- now, release annoucement frame is not a modal frame
- texture: improved management in script execution when binSize=0 and nbGreyLevel=0
- texture: NGLDM_Busyness formula has now an absolute value at the denominator
- loading of coronal DIXON MR images with more than one contrast in the same series
- loading nifti-1 file when imagePositionPatient is not null
- texture: inversion in output xls file (optional) between rows and columns of the grey-level zone length matrix (GLZLM)
- improved tuning of the size of the menu windows as a function of the screen resolution and size


****************************** LIFEx public version 3.64 ***********************************

What's new in LIFEx 3.64?
- addition of translation of image layers with respect to the locked reference layer
- ending (and unselect tool) of ROI edition (circle2D, circle3D, Pensil2D) when pressing the "e" key on images
- texture: addition of parameter LIFEx.texture.GLCM.DistanceWithNeighbours=n in script file
- texture: text field of BinSize is now enabled when relative intensity resampling is selected
- addition of a message when the DICOM field studyInstanceUID of a new series that is loaded is not equal to the studyInstanceUID of the reference scan already loaded
- ROI move button is now enabled in tool manager on PT modality
- color of first ROI is now magenta (green before) for increased visibility
Major bug fixes:
- inversion Inf<->Sup on ROI when loading RT-Struct file
Minor bug fixes:
- TMTV protocol is now possible with series in NIFTI-1 (nii) format
- ROI creation is possible even after series in NIFTI format is loaded



****************************** LIFEx public version 3.56 *********************************** version 3.56 - Tue Jan 23 17:31:00 CEST 2018
What's new in LIFEx 3.56?
- loading of RT-Struct on reference layers other than LIFEx reference layers (first loaded series) is now available
- TMTV: addition of fast labelling of ROI with selection of names in a predefined list of names
- addition of a new protocol called "Diagnosis" corresponding to a simple viewer protocol without any complex functions
- addition of 6 new display options (template 1 to 6)
- Texture: CheckTex button is enabled only if texture protocol is selected
- Alphabetical sorting has been added to sort ROI layers
- AcquisitionNumber DICOM tag is now taken into account for the CT modality
- Addition of the coordinates (vx) of the voxel including the MaxValue within the ROI into ROI information
- Automatic setting of a default color map and alpha value to 0.5 when a second series is loaded
- Automatic setting of a default window/leveling based on the histogram of the loaded volume
- Creation and opening of a DICOMDIR file when 2 folders are loaded simultaneously, if that file does not exist.
- management of DICOM tag: imageRotation with an y inversion
Minor bug fixes
- Texture: the RT-STRUCT loading is now supported when using scripts
- TMTV: MIP ROI color is changed when ROI color is changed (dialog box of ROI)
- TMTV: existing MIP is fully loaded (while only every other angular views were loaded before)
- TMTV: % threshold is now in SUV "unit"
- Management (hide/show) button in ROI manager window
- Graph units now defined in the histogram image


****************************** LIFEx public version 3.42 *********************************** version 3.42 - Fri Dec 15 17:31:00 CEST 2017
What's in LIFEx 3.42?
- Texture: renaming of textural indices, e.g: Homogeneity of GLCM matrix become GLCM_Homogeneity
- Texture: increased precision of textural indice results (float->double)
- Texture: moving CONV_volume to SHAPE_volume in the xls results file
- Texture: absolute and relative resampling intensity also applies on first order indices (previously, relative resampling was systematically used for first order indices)
- Texture: new HISTO_entropy with log2 formula (HISTO_entropy_log2)
- Texture: new GLCM_entropy with log2 formula (GLCM_entropy_log2)
- Texture: new checkbox in advanced parameters of texture panel for saving values histogram in excel file
- Texture: when a ROI includes several clusters, the histogram is calculated using all cluster voxels while texture indices are calculated for the largest cluster only
- Main: removal of the validated/advanced levels in first windows (advanced is selected by default)
- Main: emoval of modalities choice (all modalities are selected by default)
Bug Fixes
- Texture: Correction of an edge effect in the GLCM
- TMTV: Liver value shown in the dialog box to set a threshold as a function of that value is now expressed in SUV units
- Main: modification of problematic slash into PatientID, PatientName, StudyDescription, SeriesDescription and SeriesUnit DICOM fields when saving image in nifti-1 file
- Main: reordering temporal images with the InstanceNumber field when the ImagesTime field is null on DICOM files


****************************** LIFEx public version 3.40 *********************************** version 3.40 - Thu Nov 09 11:30:00 CEST 2017
What's in LIFEx 3.40?
- improved memory management of the main application (mostly useful for running scripts)
- export of texture results in comma-separated values (csv) format file
- saving indices and texture parameters to be calculated from one work session to another
Bug Fixes
- random stalling of texture scripts
- long ROI name (>31 characters length) are now supported when saving results of texture protocol in an xls file
- default voxel distance for texture protocol is 1 vx (against 2 vx for the 3.38 version)


****************************** LIFEx public version 3.36 *********************************** version 3.36 - Thu Oct 26 18:30:00 CEST 2017
New software features:
- it's now possible to reorder layers of series to display them in any order
- error message is now displayed when texture input fields are not correctly defined
- fixed bug: error "The pixel size (x, y, z) of reference series must be smaller than the pixel size of selected series"
Miscellaneous, fixed and checked issues:
- the "null" value possibly assigned to the studyDescription DICOM field of the images no longer produces an error when saving nifti-1 file series
- restoring the view of "BirdEyeView" on Ax, Sag, Cor frame tools
- fixed bug: saving ROI in nifti-1 file series with proper "n+1" magic number in the header
- fonts and window size modified to adapt to low screen resolutions (<= 1280x1024 pixels)
- fixed bug: setting a ROI onto the 2D image with circle2D and snake2D tool
- new zoom cursor not as sensitive as before for easier handling.
- adding the fonts (bold, plain) on log file to debug


****************************** LIFEx public version 3.30 *********************************** version 3.30 - Wed Sep 20 11:39:00 CEST 2017
New software features:
- possible setting of the voxel size in which textural features are calculated in texture protocol
- management of multi-series with common ROI
File handling:
- PET images displayed in Bq/mL Units when conversion into SUV unit is not possible (missing Dicom fields)
- fixed bug: modification of problematic slash into PatientName DICOM field when saving results of texture protocol in an xls file
- fixed bug: oblique images now properly displayed when "orientation matrix » DICOM field is not null
Algorithms and utilities:
- refinement of the ROI position to calculate SUVpeak in PET: difference ≤ 0.01 between new SUVpeak compared to the one calculated in previous LIFEx regions
VOIs and paint:
- fixed bug: error in displaying ROI statistics when multi-series were loaded simultaneously
- fixed bug: Nestle ROI calculation was refined
- new tool: ROI erosion with defined voxels or spacing
- new tool: ROI dilation with defined voxels or spacing
- pencil2D tool: increased line width and added color at drag handle point. The Press "e" option was introduced to close (end handle point) ROI
Images and paint:
- change in maximum zoom factor of displayed image: images can be zoomed 4 times more
- addition of a low/high switch for quality rendering on images canvas with pressing the "s" key
- display of the position and value of the cursor for each loaded image series
- addition of a saving option (xls format) of the diplayed histogram values
- texture script are no longer stalled when a MIP view has been displayed
- removal of the empty row between title and values in the xls texture files
- addition of the SeriesDate field in the xls texture files
Miscellaneous, fixed and checked issues:
- correct setting of the ROI when displayed on an image series different from the one that was used to create the ROI
- cleaning a some stalled information messages
- UserGuide \ Nestle Segmentation, p.33: V (threshold) is changed into T (threshold) for clarity
- UserGuide \ tools GUI: Addition of the dilate/erode tools help
- AppendixTexture: Addition of the multi-series management



****************************** LIFEx public version 3.12 *********************************** version 3.12 - Fri Mon 26 15:00:00 CEST 2017
Major changes:
- new main features added in this version: no, minor version
VOIs and paint:
- fixed bug: after using the 2DSnake or 3DSnake tools, the displacement across slices using the (up, down) key was no longer exactly 1 voxel.
- fixed bug: drawing or loading ROI was impossible after reading nifti-1 file series



****************************** LIFEx public version 3.10 *********************************** version 3.10 - Jeu Jun 21 15:00:00 CEST 2017
Major changes:
- new main features added in this version: Maximum Intensity Projection (MIP)
Fixed issues:
- automatic calculation of textural features using scripts for multi-patients and multi-ROI / patient data (see documentation)
- new feature added in texture script: setting nbGreyLevels=0 for automatic calculation of the number of grey levels from the binSize parameter when relative discretization is used
- new feature added in texture script: setting binSize=0 for automatic calculation of the bin size from the nbGreyLevels parameter when relative discretization is used
- new feature added in texture script: loading of all script files at the same time (drag and drop) that will then be executed sequentially
- fixed bug in the erosion process
- fixed color coding when inverting the black and white colormap
- fixed ROI split tool to account for all voxels in the initial ROI.
File handling:
- a Philips DICOM bug found into old images that impacted SUV; (0x70531009 & rescaleSlope had identical value and scaling was performed twice in the conversion in SUV)
Algorithms and utilities:
- acceleration of ROI processing when multi layers of series are used
VOIs and paint:
- fixed "show/hide all ROI tool" when the button was used twice in a row.
- fixed update histogram and curve values when using the "show/hide button"
- improvement check tool "CheckTex" for good parameter ROI for texture processing (before script, it can be a step of validation) je ne comprends pas. En français ?
- add KeepOne tool for keep only the largest ROI (=split tool, with one ROI result)
- add Window/Leveling threshold ROI tool
- add fill3D ROI creation tool by filling "holes" in another ROI (example, lung fill) by clicking on a voxel within the hole that should be taken as the seed point.
- 3D and 2D snake tools are now available within all modalities, when multi-series have been loaded and for all protocols
- the reading of a ROI that has not been drawn on the loaded patient is now possible. The ROI shape is preserved but not the location in the image.
- texture documentation now includes explanation regarding the use of script for texture calculations


****************************** LIFEx public version 3.00 *********************************** version 3.00 - Fri Mar 17 15:00:00 CEST 2017
Major changes:
- new main features added in this version: MTV protocol
Fixed and verified issues:
File handling:
- Fixed and warning message concerning null value of SerieDate DICOM Field (0x00080021) need for SUV conversion
- Fixed and warning message concerning null value of SerieTime DICOM Field (0x00080031) need for SUV conversion
- Patient name is get and set from filename when loading a nifti (nii) files
Algorithms and utilities:
- New (total) Metabolic Tumor Volume Protocol as named : "MTV protocol"
- Improvements: MTV protocol - separatly of cluster in new ROIs after all thresholds
- Improvements: MTV protocol - viewing / editing of step1 calculation
- Improvements: Texture protocol - the distance of neighbours in GLCM is now available
- Improvements: Texture protocol - a new intensity range normalisation quantization method is available: resampling is performed in the range defined by mean+/-3sd of intensity values in the ROI
- Improvements: Texture protocol - date of processing (multi patient processing) is displaying in a new column and not in one line as before
VOIs and paint:
- Tool to measure angles is available on coronal and sagittal planes in addition to axial plane
- Tool to measure distances between two points (ruler) is available on coronal and sagittal planes in addition to axial plane
- Tool to pencil2D is available on coronal and sagittal planes in addition to axial plane
- Fixed minor bug in translate/snake2D/snake3D tools
- Fixed minor bug in circle2D/circle3D with multi ROIs overlapped
- Fixed loading nifti ROI files with no compression (.gz was already ok)
- New features: possible selection of several protocols in a single run
- Fixed: Open of advanced paramaters frame (Texture protocol)
- Fixed: Addition of warning message when no protocol selected in the first frame
- Fixed: New version available frame is now always on top of screen
- Improvements: addition of tutorial video of MTV protocol
- Fixed: Texture protocol documentation - formula to be used for the calculation of GLCM matrix corrected
- Add tutorial movies to learn MTV protocol



****************************** LIFEx public version 2.20 *********************************** version 2.20 - Thu Jan 17 10:54:00 CEST 2017
Important warnings:
- Following a modification of orientation in the recording and reading of ROIs stored in Nifti in LIFEX 2.20, all ROI files recorded using a previous version should be flipped in the left-right direction and in the anterior-posterior direction after being read
-- Flipping tools L<>R and A<>P are provided in the ROI toolbox
-- The flipped ROI should be saved so as to avoid having to repeat the flip operations each time the old ROI file is open
Network handling:
- Fixed: "No images found" error message when connecting to the DICOM server
File handling:
- Drag and drop image files from file system to series area of LIFEx
- Improvements: value -32768 on DICOM DataBufferShort detected an as error and set to 0
- Corresponding warning message in GUI: n voxels with value -32768 have been set to 0
- Improvements: reading/saving of images in Nifti-1 format (.nii) implement SUV and UH units (cf. filename)
- Fixed: directories and names of saved images (.img, .nii) are corrected on Windows OS
- Improvements of reading images in Nifti-1 format (.nii): Double and Float types are now supported
- Fixed: new Orientation of CT images in Nifi(nii) format files
- Fixed: ActualFrameDuration DICOM field can now be read with the scientific format (E+00)
- Removal of the preview of the "FileChooser" window which introduced a bug in windows10 and windows8
- Fixed: Orientation of the Patient Image in Dcm format images (Cor, Sag)
- No longer supported feature: the Analyse format file (.img+.hdr) is no longer supported
- Solved: FileChooser window random display using Windows10 and Windows8
Algorithms and utilities:
- Fixed a bug in relative resampling of Texture protocol (without impact on previous results)
- The TI of normalized GLCM calculated in each direction can be saved in a csv file
VOIs and paint:
- New tool for ROI sorting (as a function of SUVmean, SUVmax, Volume)
- New flip tools (existing R<>L, new A<>P and I<>S)
- Fixed Orientation Image in RT-Struct ROI
- Improvements: no load of ROI files on startup
- Improvements: Drag and drop ROI files from file system to ROI area of LIFEx
Image views and visualization:
- Optimization of images display (faster display)
- Fixed: a bug affecting the position of images tools on Mac OS
- Fixed: all temporary images are now deleted when exiting the application


****************************** LIFEx public version 2.00 *********************************** Tue Sep 13 15:42:00 CEST 2016
New Features:
- enhanced Graphical User Interface to facilitante the use of the software
- new positioning of some command buttons to make them compatible with the touchscreen feature of new laptop devices.
- reading of TIFF, JPEG, PNG, BMP image format
- reading/saving of images in Nifti (.nii) format
- new tool to measure angles
- new tool to measure distances between two points (ruler)
- reading of DICOM images in which many of the DICOM fields useful for nuclear medicine scans were removed (such as the DICOM "radiopharmaceuticalInformationSequence" including the radiopharmaceuticalStartTime, radionuclideTotalDose, radionuclideHalfLife fields)
- more flexible DICOM-RTStruct reading, with the possibility of reading files with a ReferencedSOPInstanceUID of the RTStruct files different from that of the loaded images
- the RTSTRUCT modality is active by default, so that regions can be read from external files without changing the default settings
- only two operating modes are now proposed: the "Validated" and "Advanced" modes
- automatic selection of the draw2D toll when creating an ROI from a 2D image
- checkbox for YES/NO output textural matrix files (no output by default)
- array transpose of result (Excel file)
Fixed bugs (or others):
- fonts and window size modified to adapt to HD screens (>= 3200x1800 pixels)
- documentation and tutorials updated to include the new graphic layout
- help messages associated with a tool remaining open when a new tool was selected are now removed
- deactivation of activated ROI-associated tools when an ROI is closed
- non closing of the browser used to read images when a patient folder is closed
- optimized pointer and line sizes as a function of the FOV of reference images
- "info DCM" tool inactivated when OTHER modalities are used (bmp, tif, jpg, png, gif, nii, img)
- 3D tools inactivated when 2D images are used
- create PDF of booklet is now located in patient/screensave/pdf directory (windows version only)
- error message "DICOM Tag location = 0 : ERROR" corrected on CT images
- JPGEG2000 Compression library on Windows operating system


****************************** LIFEx public version 1.83 *********************************** New Features:
- minor release, no new feature
- on request only (under password): calculation of K1, k2 and Ki using a 2 tissue-compartmental model (plasma + tissue)
- enhanced presentation of the conventional ROI metrics (mean, max, min, standard deviation)
- textural matrices now saved in cvs format in the file directory
Fixed bugs:
- closing of all windows when uploading data from a new patients without having to quit the application.


****************************** LIFEx public version 1.82 *********************************** New Features:
- minor release, no new feature
- Image (Lecture) :
- The "null" value possibly assigner to the SOPInstance DICOM field of the images no longer produces an error.
- The ImagePositionPatient DICOM field of the image series is accounted for when reading RT_STRUCT objects.
- Texture :
- The code for calculating the GLCM matrix has been parallelized.
- Textural parametres are saved from one session to another.
- The histogram is displayed for all ROIs in a same plot.
- ROI :
- Management of RTSTRUCT corresponding to images with a specific DICOM ImageOrientationPatient value.
- Management of the RT-STRUCT files when they are in the same directory as the associated images.
- Displacement of the 3D views based on the coordinates of the ROI maximum value when a layer is activated, so that the ROI is automatically visible in the display window.
- Simulatenous opening of several ROI (in nii format) using a single multiselection.
- Layers corresponding to intermediate ROI drawing steps in the Neste method are now deleted.
- The color of new ROI is now based on the color of existing ROI when the new ROI is derived from an existing one (for instance when using a copy or mirror operation).
- Display of the volume value (in cm3) when using the 2D disk and 3D disk segmentation tools.
Fixed bugs:
- correction of a message regarding cluster number > 1 on 2D slices and some 3D slices
- correction of the "Not a Number" error displayed when texture results were added in a "TextureSession.xls" session file
- position of the "curve" or "TAC" window now saved in the session preference.
- debug of the US reading for THOSHIBA TUS-A500 and SuperSonicImagine scanners.


****************************** LIFEx public version 1.8 *********************************** New Features:
- US b-mode modality is now implemented and fully supported for reading static/dynamic images.
- US Elastography of SuperSonicImagine is now implemented and fully supported for reading static images.
- US QualityMap of SuperSonicImagine is now implemented and fully supported for reading static images.
- Texture indices are calculated in a ROI for one or several layers (1 layer = 1 image series).
- no calculation of ROI TLG value when processing CT and MR images.
- no automatic ROI saved (to nifti format) if rename it.
- the use of a session file storing results obtained in several patients is now implemented.
- displaying float images with max values of 1.00 is now implemented (ex. US quality image).
- properties files now located in the user home directory.
- add a display window to choose the colormap of images series.
Corrected bugs:
- some DICOM-MOVE request errors have been fixed.


****************************** LIFEx public version 1.71 *********************************** Corrected bug:
- the 2D painting tool is available


****************************** LIFEx public version 1.7 ********************************** New Features:
- minor release, no new feature
- faster calculation of GLCM, NGLDM, Sphericity, Histogram-based index, and conventional index calculation using parallel threads.
- faster calculation of GLZLM using parallel threads (iLevel).
- faster calculation of GLRLM using parallel threads (iDirection).
- no calculation of ROI peak value when processing for CT and MR images.
- distribution of tar files instead of zip files to handle all execution permissions of files under linux
Corrected bugs:
- the "Radionuclide Total Dose" field is displayed only when its value is greater than 1 (Not in CT, MR images)
- the "Number of grey level" and "size of bins" values are now in integer format


****************************** LIFEx public version 1.65 *********************************** New Features:
- minor release, no new feature
- texture: the minimum number of grey levels is set to 1 (textural processing)
- optimization of the values displayed in the information box of ROI
- the diameter of the sphere used for the close operation is set to 20 mm instead of 10 voxels
- the threshold can be expressed as a range bound by a min and a max values in the ROI
Corrected bugs:
- extraction of multiple patients is implemented in a same DICOMDIR file
- after loading an RTSTRUCT object, calculation of the ROI size even when the ROI name of the RTSTRUCT object is null


******************************** LIFEx public version 1.6 ********************************** New Features:
- DICOM-RTSTRUCT is now implemented and fully supported for reading ROI only (not writing RTSTRUCT)
- DICOMDIR is now implemented and fully supported for reading DICOM images only (not writing DICOMDIR)
- threshold at n% of max value of ROI
- the dialog box now keeps in memory the path to the file that has been previously read.
- PT icon has been changed to a PET icon.
- verification of authorized operating level with RTSTRUCT modality activated or not
- new shortcut: when you click on the "Please select one or several imaging modality(ies)" header of the initial LIFEx menu, all modalities are activated.
- ScrollPane added on the panel serie of the main frame
- button of load RTSTRUCT added in the dialog box of ROI management
- button of load (analyse, nifti) ROI formats added in the dialog box of ROI management
- increase in performance calculations of the maximum values (SUVmax...)
- on windows version, setting of 95% of the free memory as the maximum memory busy from LIFEx.
Corrected bugs:
- offset correction of the 2D & 3D painting tool relative to the mouse cursor on thick slices with a high anisotropy of voxel.
- correction of message "The bin value is not defined or cannot be smaller than 5" for MR images.


******************************** LIFEx public version 1.5 ********************************** February 17th, 2016
- error in the version number on the Windows version.
- on windows version, setting of 80% of the free memory as the maximum memory busy from LIFEx.
- ScrollPane added on the panel series.


******************************** LIFEx public version 1.4 ********************************** February 17th, 2016
- WIN: transformed from 64B with the available memory to 3GB (now bigger CT and saving ROI are allowed).
- GUI: DcmBrowser -> GUI for editing "New Node" is added.
- GUI: DcmBrowser -> selecting one series from the network is added.
- TEX: reviewing textural inputs to add minimum bound for resampling CT scan.
- MAC: new release of version 1.3 is available.
- TEX: CT histogram with negative values is added.


******************************** LIFEx public version 1.3 ********************************** February 15th, 2016
- PRO: close button on window "Choose protocole" added.
- TEX: +abs(minValue) on CT texture matrix added.
- LIC: changes in section 13 of the license.
- MAIN: low memory display on load deleted.