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


Libraries and licenses used

To view the LIFEx license: License

The libraries used by LIFEx and included in the package are as follows (you do NOT have anything to install except the single LIFEx package):

Latest version

The latest version is version 6.00


**************** 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

Read more: Latest version






THE COMMISSARIAT A L’ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES (FRENCH ATOMIC ENERGY AGENCY), a public scientific, technical and industrial establishment, having its registered office at 25 rue Leblanc – bâtiment le Ponant D – 75015 Paris cedex, hereinafter referred to as “CEA”, hereby licenses the right to use the LIFEx software as per the terms and conditions set out below.  

This license is granted to the natural or legal person – hereinafter the “Licensee” – having completed the application form and loaded the Software.

Read more: License



Texture analysis is gaining considerable interest in medical imaging, in particular to identify parameters that might characterize tumor heterogeneity. We developed an easy-to-use freeware enabling calculation of a broad range of conventional, textural and shape indices from PET, MR, US and CT images.  

The software is written in Java and does not rely on any commercial libraries. LIFEx is dedicated to researchers, radiologists, nuclear medicine physicians and oncologists that giving access to 42 histogram, textural and shape indices in addition to conventional indices and where users can change calculation options (e.g. resampling method and number of grey levels for textural analysis).

Read more: Product

LIFEx Screenshots

This page shows a series of screenshots from our desktop program.


Slideshow navigation: click on a thumbnail to see the enlarged image.


Login Form