Build 321 is released.
1. Speed optimization of Dot Vector Product function (since it was 50% of total FLEXR time).
It is used widely throughout FVX including BiCal.
2. FLEXR :Guassian RBF matrix construction (fully dominates time): separate the bottleneck into
a single MatrixLineConvolution and minor optimization of it
3. GRBF deformable field: optimization matrix calculation (at least 10000x10000 - 30000x30000). Noticed the sparsity of the underlying calculation and devised a variant based on skipping negligible values (1e-16) with x15 memory and speed improvement.
4. GRBF final field calculation: separable exponential term exp(-hypot3(x,y,z)) it was possible to pre-calculate the tables once for each axis for x4 speedup.
5. FLEXR-3D: When the Source Mask is supplied, in final Reslicing clip Source using Source Mask with VOIDVOX. This helped to uncover some deficiencies in COPD Lund Registration.
6. FLEXR: re-implemented new logic to handle cases with\without the Source Mask. New approach to ROI padding = {Displacement Padding+MeasurePadding}.
7. FLEXR: Removed "Inflate ROI" parameter from the dialog and internal processing.
8. FLEXR GRBF: Substantially decreased memory requirements for optimization matrices.
9. FLEXR GRBF: fixed the defect when the lower part of the symmetric matrix was not constructed.
10. FLEXR: Edge Keypoint generation: added Nlimit parameter (~10,000 for neck) to select strongest keypoints. This allows specify grid of any density. There was no substantail improvement in the Neck MI, perhaps sparse field regularity is critical.
11. FLEXR dialog box: implemented Combo (dropdown) box for selecting Transform Type.
12.FLEXR: Implemented NW Sparse-to-Dense interpolation scheme (from EpicFlow) paper. It is very fast and with good (not the top) accuracy.
13. FLEXR dialog: removed option for the Gradient Norm. Now it is done automatically.
14. FLEXR-MC: Output volume is now displayed with the same Window Center\Width as the original
15. FLEXR: Implemented option to display Keypoints after the completion. This is a new checkbox option in FLEXR dialog box.
16. FLEXR: MST (minimal span tree) is calculated once for both Forward and Backward (symmetry) run.
17. FLEXR:MST: calculation now take next to 0 memory.
18. FLEXR: Dialog: added option for the Regular Keypoint Grid.
19. FLEXR (incl Dialog): Added new Similarity Measure = Signal Difference.
20: FLEXR: Implemented Mutual Info\MI-NORM local similarity measures and corresponding Dialog items.
21. File>Open Image (multiple files): corrected various small defects, including saving the file name instead of path to FVX config file.
22. FLEXR: further optimized speed of NW transform and Local Mutual Info.
Search This Blog
Wednesday, February 26, 2020
Sunday, February 16, 2020
Build 320 is released.
1. FLEXR-MC: dialog\Test defect fix.
2. FLEXR-MC: GRBF transform progress message defect fix.
3. MainMenu>Measurements>Two Volume RMSD : corrected so in case of 4D volume the Current Timepoints are compared.
4. TPS transofrm: fixed a small defect in optimization matrix construction.
5. GRBF tranfrorm: fixed defect in the final field interpolation.
6. Main Menu>Segmentation>Feature Points : fixed crash defect when called on a selected timepoint of the 4D volume
7. Main Menu>Measurement>RMSD : fixed crash defect when a single layer and present, outputs warning "2 non-roi operands are required".
8. FLEXR-MC (motion correction) dialog box: Added a "Serial" algorithm option
9. FLEXR-MC dialog box: added option to Correct Gross Motion only, when user specifies only Gross Motion timepoints and deformation field is re-used for in-between timepoints.
10. FLEXR-MC dialog: Added the the Ensemble 4D dynamic algorithm option (Averages all registered frames to make new target at each step).
11. FLeXR-MC dialog : Added Use SVD option.
12. Corrected *.TIME\MIDAS load to accept the {PT,PET} as modality (only PT earlier)
13. NIFTI\TIME file load: removed reliance on the Byte Per Voxel tag in the TIME header. This was leading to the confusion, such as float-32. Additional feature the NIFTI files of different byte type can be loaded as 4D.
14. Main Menu>4D Processing: added functions to measure Cross Frame Mutual Info over the ROI for 4D volume (both MI and MINORM). This is a helper function for evaluating the quality of Motion Correction
15. Volume>Crop specified dynamic points : corrected so the final cropped redraw is done for all layers.
1. FLEXR-MC: dialog\Test defect fix.
2. FLEXR-MC: GRBF transform progress message defect fix.
3. MainMenu>Measurements>Two Volume RMSD : corrected so in case of 4D volume the Current Timepoints are compared.
4. TPS transofrm: fixed a small defect in optimization matrix construction.
5. GRBF tranfrorm: fixed defect in the final field interpolation.
6. Main Menu>Segmentation>Feature Points : fixed crash defect when called on a selected timepoint of the 4D volume
7. Main Menu>Measurement>RMSD : fixed crash defect when a single layer and present, outputs warning "2 non-roi operands are required".
8. FLEXR-MC (motion correction) dialog box: Added a "Serial" algorithm option
9. FLEXR-MC dialog box: added option to Correct Gross Motion only, when user specifies only Gross Motion timepoints and deformation field is re-used for in-between timepoints.
10. FLEXR-MC dialog: Added the the Ensemble 4D dynamic algorithm option (Averages all registered frames to make new target at each step).
11. FLeXR-MC dialog : Added Use SVD option.
12. Corrected *.TIME\MIDAS load to accept the {PT,PET} as modality (only PT earlier)
13. NIFTI\TIME file load: removed reliance on the Byte Per Voxel tag in the TIME header. This was leading to the confusion, such as float-32. Additional feature the NIFTI files of different byte type can be loaded as 4D.
14. Main Menu>4D Processing: added functions to measure Cross Frame Mutual Info over the ROI for 4D volume (both MI and MINORM). This is a helper function for evaluating the quality of Motion Correction
15. Volume>Crop specified dynamic points : corrected so the final cropped redraw is done for all layers.
Monday, February 3, 2020
Build 319 is released.
1. Re-ran the Neck registration example using new Tomasi feature detector.
Comparison of the largest displacement between t1 and t38 shows good registration (red over green).
2. Performance optimization in "Voxel Context" similarity measure.
3. Change the Parallel design within the "Voxel Context" similarity measure to reduce the memory bandwidth.
4. Implemented ABT subtest for FLEXR Neck Motion correction.
5. Optimized the VolumeConvolute3D( PDOUBLE ) function for speed. Checked presence of VOID voxels and simplified calculation without them.
6. FLEXRMC dialog box: removed irrelevant Similarity Measure options, leaving only {VoxelContext, Xcorr, URAL}
7. NIFTI Save: implemented cal_min\cal_max fields save (Window Center\Width), so it can be
properly opened by other software (f.e. Mango).
8. Fixed the defect so the 3D Crosshair Cursor only getting synchronized when the UI is in the "Select Mode". Otherwise it was repositioning when LMB click during {Zoom,WindowLevel,etc}
9. Fixed precision problems with 3D Crosshair cursor.
10. UI Interface: introduced new items under Main Menu>Registration :
a) FLEXR-MC (motion correction)
b) FLEXR-3D (general deformable registration).
11. NainMenu>Workflows: introduced the CT lung workflow item. This only include the FLEXR3D item with the default parameters suitable for COPD registration project.
12. Layer Control dialog is fully resizable now by pulling any of the 4 corners.
13. MainMenu>File>Open RAW Image: any number of files can be selected for simultaneous load.
14. MainMenu>File>Open FireVoxel document : any number of files can be selected for simultaneous load.
15. When the last window of the current document is about to close, the Save option is offered.
16. Implemented ROI Multi-Layer averaging operation : under Main Menu>Roi>Average ROI Layers
1. Re-ran the Neck registration example using new Tomasi feature detector.
Comparison of the largest displacement between t1 and t38 shows good registration (red over green).
2. Performance optimization in "Voxel Context" similarity measure.
3. Change the Parallel design within the "Voxel Context" similarity measure to reduce the memory bandwidth.
4. Implemented ABT subtest for FLEXR Neck Motion correction.
5. Optimized the VolumeConvolute3D( PDOUBLE ) function for speed. Checked presence of VOID voxels and simplified calculation without them.
6. FLEXRMC dialog box: removed irrelevant Similarity Measure options, leaving only {VoxelContext, Xcorr, URAL}
7. NIFTI Save: implemented cal_min\cal_max fields save (Window Center\Width), so it can be
properly opened by other software (f.e. Mango).
8. Fixed the defect so the 3D Crosshair Cursor only getting synchronized when the UI is in the "Select Mode". Otherwise it was repositioning when LMB click during {Zoom,WindowLevel,etc}
9. Fixed precision problems with 3D Crosshair cursor.
10. UI Interface: introduced new items under Main Menu>Registration :
a) FLEXR-MC (motion correction)
b) FLEXR-3D (general deformable registration).
11. NainMenu>Workflows: introduced the CT lung workflow item. This only include the FLEXR3D item with the default parameters suitable for COPD registration project.
12. Layer Control dialog is fully resizable now by pulling any of the 4 corners.
13. MainMenu>File>Open RAW Image: any number of files can be selected for simultaneous load.
14. MainMenu>File>Open FireVoxel document : any number of files can be selected for simultaneous load.
15. When the last window of the current document is about to close, the Save option is offered.
16. Implemented ROI Multi-Layer averaging operation : under Main Menu>Roi>Average ROI Layers
Wednesday, January 29, 2020
Build 318 is released.
1. Consolidated all the variants of the Foerstner feature detector and removed related redundancies.
2. Changed BiCal UI so the corrected volume is always displayed, additionally\optionally overlaid by the bias field.
3. BiCal dialog : Background Preserve\Morph feature is activated if AirMorphRad<1000. Otherwise it is skipped. Reset the default dialog parameter to 1000.
4. Full re-engineering of the Feature Point detection functionality. UI menu changed to include Tomasi Feature detector.
5. Developed a novel Basic Feature Detector method similar to structure tensor logic but without taking the gradient - working directly with the signal values. One advantage over the Structure Tensor method is that the Detector Threshold values can be expressed in Signal values.
5a. Exposed both Tomasi and Basic feature detectors through UI.
6. Implemented generic dialog box Specify Three Double values. This allows some common task to reduce burden on the User to go through several dialogs.
7. Exposed a Threshold parameter for Feature Point detectors and used the Specify Three Doubles dialog for the Feature point detectors.
8. Tensor Structure feature response: Replaced Separable (non-isotropic) Gaussian smooth filter with the Isotropic spherical filter.
9. Using the isotropic Tomasi feature detector resulted in Lund registration substantial improvement to: Average\Median\Max error of 1.01\0.90\3.25 mm.
10. When loading NIFTI integer volume, check if there are only 2 signal values are present [0,Sig]. In that case offer User an option to load as Binary ROI.
11. Implemented VROI rasterization from Vector Menu and toolbar button
12. Provided a combined menu for ROI>{Clear Inside [Z0,Z1] interval,Clear Outside [Z0,Z1]}.
1. Consolidated all the variants of the Foerstner feature detector and removed related redundancies.
2. Changed BiCal UI so the corrected volume is always displayed, additionally\optionally overlaid by the bias field.
3. BiCal dialog : Background Preserve\Morph feature is activated if AirMorphRad<1000. Otherwise it is skipped. Reset the default dialog parameter to 1000.
4. Full re-engineering of the Feature Point detection functionality. UI menu changed to include Tomasi Feature detector.
5. Developed a novel Basic Feature Detector method similar to structure tensor logic but without taking the gradient - working directly with the signal values. One advantage over the Structure Tensor method is that the Detector Threshold values can be expressed in Signal values.
5a. Exposed both Tomasi and Basic feature detectors through UI.
6. Implemented generic dialog box Specify Three Double values. This allows some common task to reduce burden on the User to go through several dialogs.
7. Exposed a Threshold parameter for Feature Point detectors and used the Specify Three Doubles dialog for the Feature point detectors.
8. Tensor Structure feature response: Replaced Separable (non-isotropic) Gaussian smooth filter with the Isotropic spherical filter.
9. Using the isotropic Tomasi feature detector resulted in Lund registration substantial improvement to: Average\Median\Max error of 1.01\0.90\3.25 mm.
10. When loading NIFTI integer volume, check if there are only 2 signal values are present [0,Sig]. In that case offer User an option to load as Binary ROI.
11. Implemented VROI rasterization from Vector Menu and toolbar button
12. Provided a combined menu for ROI>{Clear Inside [Z0,Z1] interval,Clear Outside [Z0,Z1]}.
Tuesday, January 28, 2020
Sunday, December 15, 2019
Build 317 is released.
1. Fixed defect and provide x8 speed up for Voxel Context similarity measure.
2. Fixed defect while cloning the dynamic volumes. For some reason the DICOM header of the 0th timepoint was cloned over the rest. So now it uses all timepoint headers appropriately. This defect occurred while doing motion correction on the DTI 5-slice kidney mosaic.
3. Fixed the defect in KSFAPv2 procedure. This was due to an earlier upgrade of the Ridge detection function to REAL output.
4. DICOM Open dialog box: corrected selection behavior of the "Copy" and "Delete" buttons. Now the checked items are considered for the whole tree, not just the subtree of the selected item.
5. Removing redundant records during the DICOM tree construction: was slow on the large collectrons (32,000 files). Optimized and sped up from 16 sec to 2 sec and added the Progress indicator.
6. Modified the PR_SendMessageInterval so when (DoProgress==false) there is no action and unwanted hourglass would not appear
7. Remove the "Double Pass" option from the BiCal Research dialog.
8. FVX ParSVD : with Epsilon precision: change the Eps to be a relative to the norm of the Right Hand Vector.
9. Conjugate Gradients for Linear Equations: made corrections when NAND happens within the main iteration loop
10. Restored the AVX2-base Vector Dot Product function for about 20% speed-up in BiCal. It appears however that the AVX2 slightly looses precision
11. Argazi (Texture) Edge detector : fixed defects in determining the direction of the gradient vector. (defects were in the ORANGE structure initialization).
12. ARGAZI Image gradient: updated normalization based on the radius and vicinity weights so that the value of the gradient closely matches the derivative taken from the voxel values.
13. Introduce advanced BiCal variant BiCal# base on the Gradient detection only. This skips the Edge detection and Constrained Smoothing stage. Number of the UI parameters will be removed
14. Removed basic BiCal dialog. Old BiCal+ menu item and dialog where optimized and rename a new basic BiCal. New BiCal# menu item and dialog were introduced.
15. Complete new ABT: BiCal subtest including {Brain,Breast,Abdomen} and synthetic chessboard images overlaid with exp(k*X),exp(k*Y),exp(k*Z) fields for precise reconstruction.
1. Fixed defect and provide x8 speed up for Voxel Context similarity measure.
2. Fixed defect while cloning the dynamic volumes. For some reason the DICOM header of the 0th timepoint was cloned over the rest. So now it uses all timepoint headers appropriately. This defect occurred while doing motion correction on the DTI 5-slice kidney mosaic.
3. Fixed the defect in KSFAPv2 procedure. This was due to an earlier upgrade of the Ridge detection function to REAL output.
4. DICOM Open dialog box: corrected selection behavior of the "Copy" and "Delete" buttons. Now the checked items are considered for the whole tree, not just the subtree of the selected item.
5. Removing redundant records during the DICOM tree construction: was slow on the large collectrons (32,000 files). Optimized and sped up from 16 sec to 2 sec and added the Progress indicator.
6. Modified the PR_SendMessageInterval so when (DoProgress==false) there is no action and unwanted hourglass would not appear
7. Remove the "Double Pass" option from the BiCal Research dialog.
8. FVX ParSVD : with Epsilon precision: change the Eps to be a relative to the norm of the Right Hand Vector.
9. Conjugate Gradients for Linear Equations: made corrections when NAND happens within the main iteration loop
10. Restored the AVX2-base Vector Dot Product function for about 20% speed-up in BiCal. It appears however that the AVX2 slightly looses precision
11. Argazi (Texture) Edge detector : fixed defects in determining the direction of the gradient vector. (defects were in the ORANGE structure initialization).
12. ARGAZI Image gradient: updated normalization based on the radius and vicinity weights so that the value of the gradient closely matches the derivative taken from the voxel values.
13. Introduce advanced BiCal variant BiCal# base on the Gradient detection only. This skips the Edge detection and Constrained Smoothing stage. Number of the UI parameters will be removed
14. Removed basic BiCal dialog. Old BiCal+ menu item and dialog where optimized and rename a new basic BiCal. New BiCal# menu item and dialog were introduced.
15. Complete new ABT: BiCal subtest including {Brain,Breast,Abdomen} and synthetic chessboard images overlaid with exp(k*X),exp(k*Y),exp(k*Z) fields for precise reconstruction.
Thursday, November 28, 2019
Build 315 is released
1. Implemented the initial variant of the FLEXR - Motion Correction dialog box.
2. Implemented an initial variant of the FLEXR- Motion Correction wrapper code. Tested in on 10-timepoints Neck DCE-MRI.
3. Fixed one of the memory leak defect in FLEXR-MC.
4. Parallelized the TPS parameter calculation in FLEXR-SYMM variant
5. Added a "Output : Real Voxels" option in the FLEXR-MC dialog.
6. Fixed the Dynamic Dimension defect when loading DWI images and selecting the "Selected and Checked" DICOM load.
7. Replaced DICOM load choice with "Selected only" and "Checked only".
Monday, November 18, 2019
Build 314 is released.
1. Implemented a module for synthetic testing off some Dynamic Models. Tested the M49 DCE Reference Region model and fixed the calculation defect. Residual cut by half.
2. Enable the 3D Raster Paintbrush. Added the correspoding option to Paintbrush Dialog.
3. When the "Synchronized 3D Cursor" UI option is enabled, it now works when the Paintbrush is applied.
4. Implemented far more precise (when K->0) formula Func[i] = Integ<G(u)*exp(-K(X[i]-u))du>
This affects many models using this convolution, resulting in higher precision for cases when K->0
5. Fixed 32-bit buffer size overflow in VA_VolGetAll() function.
6. Added Progress bar to Layer Arithmetic operations.
1. Implemented a module for synthetic testing off some Dynamic Models. Tested the M49 DCE Reference Region model and fixed the calculation defect. Residual cut by half.
2. Enable the 3D Raster Paintbrush. Added the correspoding option to Paintbrush Dialog.3. When the "Synchronized 3D Cursor" UI option is enabled, it now works when the Paintbrush is applied.
4. Implemented far more precise (when K->0) formula Func[i] = Integ<G(u)*exp(-K(X[i]-u))du>
This affects many models using this convolution, resulting in higher precision for cases when K->0
5. Fixed 32-bit buffer size overflow in VA_VolGetAll() function.
6. Added Progress bar to Layer Arithmetic operations.
Saturday, November 16, 2019
Saturday, November 9, 2019
FireVoxel Build 313 is released.
1. Imlemented Model #49: MR 2 compartment Reference Region model (Yankeelov 2005)
2. RoiStats4D dialog: displaying the curve without offset now to avoid visual confusion.
3. UI: Re-enabled BiCal option to output the Bias field
4. Verified that Model #49 with the Identity test, i.e. running on Reference Region returns RR {Ktrans,Ve} with high precision.
5. Open DICOM dialog: corrected the defect when Copy operation and there are several source files
in different source folders but with the same file title resulting in overwritten files.
6. Fixed a typo error in the determining DICOM frame exact acquisition time.
7. Implemented Volume>Voxel Value Conversion> Change Transparent Signal.
8. Model #31 (MRTM2) fixed defect when the output Parametric Map color scheme was not initialized.
9. Fixed defect in 2-Volume Max Difference function
10. Removed redundant HCT correction from some models
11. Added ability to add\modify the DICOM tags {TE,TR,FA}
12. Fixed the defect in Dynamic Experiment dialog: when the IF and Tissue Concentration dialogs appear then {TE,TR,FA} fields are filled properly from the Volume DICOM tags
13. Enabled the FWTE calculation of the Concentration->Signal so it can be used in Modelling.
14. Extended the "Edit DiCOM tags" functionality to optionally Edit all the timepoints at once.

15. Volume Value Conversion dialog (after DICOM load): change layout to make functionality more clear so Add\Mul are applied ONLY when loading as INTEGER.
16. Corrected the imperfect shape of the Raster Paintbrush at small radii.
1. Imlemented Model #49: MR 2 compartment Reference Region model (Yankeelov 2005)
2. RoiStats4D dialog: displaying the curve without offset now to avoid visual confusion.
3. UI: Re-enabled BiCal option to output the Bias field
4. Verified that Model #49 with the Identity test, i.e. running on Reference Region returns RR {Ktrans,Ve} with high precision.
5. Open DICOM dialog: corrected the defect when Copy operation and there are several source files
in different source folders but with the same file title resulting in overwritten files.
6. Fixed a typo error in the determining DICOM frame exact acquisition time.
7. Implemented Volume>Voxel Value Conversion> Change Transparent Signal.
8. Model #31 (MRTM2) fixed defect when the output Parametric Map color scheme was not initialized.
9. Fixed defect in 2-Volume Max Difference function
10. Removed redundant HCT correction from some models
11. Added ability to add\modify the DICOM tags {TE,TR,FA}12. Fixed the defect in Dynamic Experiment dialog: when the IF and Tissue Concentration dialogs appear then {TE,TR,FA} fields are filled properly from the Volume DICOM tags
13. Enabled the FWTE calculation of the Concentration->Signal so it can be used in Modelling.

15. Volume Value Conversion dialog (after DICOM load): change layout to make functionality more clear so Add\Mul are applied ONLY when loading as INTEGER.
16. Corrected the imperfect shape of the Raster Paintbrush at small radii.
Wednesday, October 16, 2019
Build 312 is released.
1. N4explorer: corrected default parameter ranges. Report now display the elapsed time for the entire optimization.
2. OverlapError calculation in N4explorer: changed the ThresholdDelta=>1e-3 to make it much faster.
3. Speed optimization from Xcorrelation measure calculation in the context of the discrete registration (x3 speed up achieved).
4. FLEXR deformable registration: integrated the new XCORR measure and achieved a very good result on COPD Lung registration with : 1.32\1.24\4 mm.
5. Speed optimization of the XCORR measure on the very large volumes.
6. Incorporated XCORR measure into the FLEXR deformable registration for 1.2 mm accuracy on Lung COPD data
7. FLEXR: insured the "Identity Test" with high precision, i.e. registering the volume to itself and checking high precision with Average Err < 1e-5.
9.a higher precision in Lung registration, now at Average \Median = 0.98\0.80 mm.
Also, even better visual quality on the Neck registration:
10. Doublechecked the legacy interpolation modules and finally cleared it to be perfectly fine.
11. Extended the *.time functionality to support VFA dynamic dimension.
12. Various TPS transform optimizations.
13. In "TAC: Curve View" dialog fixed defect so the Tissue Properties are transferred properly for the Input Functions.
1. N4explorer: corrected default parameter ranges. Report now display the elapsed time for the entire optimization.
2. OverlapError calculation in N4explorer: changed the ThresholdDelta=>1e-3 to make it much faster.
3. Speed optimization from Xcorrelation measure calculation in the context of the discrete registration (x3 speed up achieved).
4. FLEXR deformable registration: integrated the new XCORR measure and achieved a very good result on COPD Lung registration with : 1.32\1.24\4 mm.
5. Speed optimization of the XCORR measure on the very large volumes.
6. Incorporated XCORR measure into the FLEXR deformable registration for 1.2 mm accuracy on Lung COPD data
7. FLEXR: insured the "Identity Test" with high precision, i.e. registering the volume to itself and checking high precision with Average Err < 1e-5.
9.a higher precision in Lung registration, now at Average \Median = 0.98\0.80 mm.
Also, even better visual quality on the Neck registration:
10. Doublechecked the legacy interpolation modules and finally cleared it to be perfectly fine.
11. Extended the *.time functionality to support VFA dynamic dimension.
12. Various TPS transform optimizations.
13. In "TAC: Curve View" dialog fixed defect so the Tissue Properties are transferred properly for the Input Functions.
Tuesday, September 24, 2019
Build 311 is released.
1. Fixed memory defect in (freeing PDICOMREC)
CVol::CreateDynCrdFromFF , FV_LoadDicomFileSet
2. Implemented 99% automatic MRI Neck segmentation algorithm for the Neck registration project.
3. Implemented 1st variant of Neck MR registration.
4. Added the Volume>Signal Value Conversion>Scale To Interval function
5. Fixed defect in retrieving the VROI coordinates in Seed functions (was adding extra slice).
6. Implemented ZNCC (Zero Normalized Cross Correlation) measure in the ReMIND deformable registration code. This is for Neck Motion Correction project. Result seems to be visually as good as the original SSC metric.
7. Performed comparison of ABS(ZNCC) vs. Max(0,ZNCC) similarity measure
7. Finetuned the ReMIND:XCORR variant of the deformable registration on the COPD lung images. It reaches good 2/0.9 mm average/median error.
8. Implemented the OE (Overlap Error) measure with the specified precision of threshold so it could work on REAL volumes.
9. Nonuniformity measurement functions: added the automatic CopyToClipboard feature.
10. Fixed DICOM load defect when 8-bit volume with Rescale\Intercept was present (GE-CT)
11. Fixed crash in Landmark Registration (Cloning of the DICOM header when number of target slices exceeds source).
1. Fixed memory defect in (freeing PDICOMREC)
CVol::CreateDynCrdFromFF , FV_LoadDicomFileSet
2. Implemented 99% automatic MRI Neck segmentation algorithm for the Neck registration project.3. Implemented 1st variant of Neck MR registration.
4. Added the Volume>Signal Value Conversion>Scale To Interval function
5. Fixed defect in retrieving the VROI coordinates in Seed functions (was adding extra slice).
6. Implemented ZNCC (Zero Normalized Cross Correlation) measure in the ReMIND deformable registration code. This is for Neck Motion Correction project. Result seems to be visually as good as the original SSC metric.
7. Performed comparison of ABS(ZNCC) vs. Max(0,ZNCC) similarity measure
7. Finetuned the ReMIND:XCORR variant of the deformable registration on the COPD lung images. It reaches good 2/0.9 mm average/median error.
8. Implemented the OE (Overlap Error) measure with the specified precision of threshold so it could work on REAL volumes.
9. Nonuniformity measurement functions: added the automatic CopyToClipboard feature.
10. Fixed DICOM load defect when 8-bit volume with Rescale\Intercept was present (GE-CT)
11. Fixed crash in Landmark Registration (Cloning of the DICOM header when number of target slices exceeds source).
Monday, September 9, 2019
Build 310 is released.
1. OpenDicom dialog box: fixed defect in "Show Compatible Volumes" functionality.
2. OpenDICOM dialog box: added a function (button) "Uncheck All" - removes all checks from All
items
3. Developed a 3-choice customizable dialog for a more transparent UI.
4. Eliminated the performance inefficiency in Zooming\Affine functionality. All zooming functions are impacted and the most visibly the FilmView.
5. Major rework of the OpenDICOM dialog box. Separating the Selection and Loading functionality. New ability to load arbitrary combinations of compatible Series.
6. Implemented "Average Nonuniformity Measurement" for all opened documents.
1. OpenDicom dialog box: fixed defect in "Show Compatible Volumes" functionality.
2. OpenDICOM dialog box: added a function (button) "Uncheck All" - removes all checks from All
items
3. Developed a 3-choice customizable dialog for a more transparent UI.
4. Eliminated the performance inefficiency in Zooming\Affine functionality. All zooming functions are impacted and the most visibly the FilmView.
5. Major rework of the OpenDICOM dialog box. Separating the Selection and Loading functionality. New ability to load arbitrary combinations of compatible Series.
6. Implemented "Average Nonuniformity Measurement" for all opened documents. Saturday, September 7, 2019
FireVoxel Build 309A is released.
1. OpenDICOM dialog box: Impemented he "Dicom Tag Difference" tool that detects all different DICOM tags for 2 selected files and copies the aggregate result to the clipboard.
2. DICOMREC structure modification to include additional BOLUS attributes.
3. Incorporated the Bolus attributes into DICOM 4D Volume construction logic so the CIR31 series 98 are properly separated now.
4. OpenDicom dialog new feature: all composite SERIES corresponding to dynamic
Volumes With Contrast are now marked with the red frame around the SL or VL icon.
5. BACKSPACE button is now working as a DELETE button when not the single Polyline is selected.
6. N4explorer: Fixed typo errors in displaying the result.
1. OpenDICOM dialog box: Impemented he "Dicom Tag Difference" tool that detects all different DICOM tags for 2 selected files and copies the aggregate result to the clipboard.
2. DICOMREC structure modification to include additional BOLUS attributes.
3. Incorporated the Bolus attributes into DICOM 4D Volume construction logic so the CIR31 series 98 are properly separated now.
4. OpenDicom dialog new feature: all composite SERIES corresponding to dynamicVolumes With Contrast are now marked with the red frame around the SL or VL icon.
6. N4explorer: Fixed typo errors in displaying the result.
Thursday, September 5, 2019
Friday, August 30, 2019
Build 309 is released.
1. Corrected crash defect in Nonuniformity Measurement.
2. DICOM load: fixed defect in logic combining separate SERIES into a 4D Volume. Some Volumes
were incorrectly assembled
3. BiCal: Corrected defect in core BiCal procedure (edgemap reuse in iteration).
4. BiCal: fixed the defect with isotropic volumes DoublePass
5. Fixed the crash in Noise calculation function on REAL images
6. BiCal: enabled REAL input images.
7. Fixed N4explorer parameter setting for Noise.
8. NIFTI load: fixed defect loading single NIFTI 4D file.
9. Further correction in DICOM logic of parsing the 4D files.
10. Fixed a defect in loading of b-values from SIEMENS DICOM file.
1. Corrected crash defect in Nonuniformity Measurement.
2. DICOM load: fixed defect in logic combining separate SERIES into a 4D Volume. Some Volumes
were incorrectly assembled
3. BiCal: Corrected defect in core BiCal procedure (edgemap reuse in iteration).
4. BiCal: fixed the defect with isotropic volumes DoublePass
5. Fixed the crash in Noise calculation function on REAL images
6. BiCal: enabled REAL input images.
7. Fixed N4explorer parameter setting for Noise.
8. NIFTI load: fixed defect loading single NIFTI 4D file.
9. Further correction in DICOM logic of parsing the 4D files.
10. Fixed a defect in loading of b-values from SIEMENS DICOM file.
Tuesday, August 27, 2019
Build 308 is released.
1. DICOM Tags for Diffusion: fixed the B-factor (B-value) loading for the following Philips models:
{ Ingenia, Achieva, Multiva, Intera }
2.Bical now outputs REAL type image as the result of the processing.
3. BicalResearch dialog: Implemented an additional option "DoublePass" which further improves the results.
4. BiCalResearch dialog: redesign of several fields - now includes the AirThreshold in Noise units, a separate Baackground panel.
5. Streamlined the BicalResearch dialog box. Change the AirLevel and EdgeLevel parameters to
be in Noise units to make it more robust across the images.
6. Combine two Non-uniformity measurement items into one under the MainMenu>Nonuniformity
7. MainMenu>Transform>Rotate
Corrected several defects with the global parameter in the dialog.
1. DICOM Tags for Diffusion: fixed the B-factor (B-value) loading for the following Philips models:
{ Ingenia, Achieva, Multiva, Intera }
2.Bical now outputs REAL type image as the result of the processing.
3. BicalResearch dialog: Implemented an additional option "DoublePass" which further improves the results.
4. BiCalResearch dialog: redesign of several fields - now includes the AirThreshold in Noise units, a separate Baackground panel.5. Streamlined the BicalResearch dialog box. Change the AirLevel and EdgeLevel parameters to
be in Noise units to make it more robust across the images.
6. Combine two Non-uniformity measurement items into one under the MainMenu>Nonuniformity
7. MainMenu>Transform>Rotate
Corrected several defects with the global parameter in the dialog.
Tuesday, August 20, 2019
Build 307 is released.
1. BiCal: Fixed the Edge detector threshold defect
2. BiCal Research dialog: Exposed the Edge Radius, Edge Threshold parameters.
3. BiCal Research dialog: Noise calculation is done automatically and that level is
displayed so the User can set Edge threshold based on noise units.
4. Bical Research dialog: introduced new Basis functions:
{Legendre,Chebyshev1,Chebyshev2, Regular Polynomial,Cosine}
5. BiCal research dialog: removed the "SVD tau" parameter. "Background morph" parameter is now in (mm).
6. Fixed defect (crash) when during the Polyline drawing the User presses delete without pressing ESC first.
7. Enable the load of TIME\NIFTI 4D files.
1. BiCal: Fixed the Edge detector threshold defect
2. BiCal Research dialog: Exposed the Edge Radius, Edge Threshold parameters.
3. BiCal Research dialog: Noise calculation is done automatically and that level is
displayed so the User can set Edge threshold based on noise units.
4. Bical Research dialog: introduced new Basis functions:
{Legendre,Chebyshev1,Chebyshev2, Regular Polynomial,Cosine}
5. BiCal research dialog: removed the "SVD tau" parameter. "Background morph" parameter is now in (mm).
6. Fixed defect (crash) when during the Polyline drawing the User presses delete without pressing ESC first.
7. Enable the load of TIME\NIFTI 4D files.
Thursday, August 15, 2019
FireVoxel Build 306 is released.
1. Implemented function to load all the FVX documents from the specified folder.
This is under the MainFrame>File> menu.
2. Removed a failing check for the presence of the VC++ 2019 Redistributable.
3. Added a voxelwise CJV calculation under the Nonuniformity>Measure menu.
4. Corrected the calculation of CJV measure according to B. paper.
5. Re-implemented N4-explorer tool with 5 optimization measures
{ roiaNU,robNU,CSM,blobCJV,voxCJV }
a) Start application and File>Open FireVoxel Folder.
b) Specify location of the folder, press OK. All fvx files in that folder will be opened.
c) Application will check if all documents have the same number of Active ROIs.
d) Press MainMenu>Nonuniformity>N4 Explorer. Corresponding dialog will show up.
Define the ranges for the optimization parameters. Set the constant parameters using the
N4 parameter dialog box in the left lower corner.
e) Optimization will run. Final dialog will show up. Each of 5 optimization results will be displayed in the Info dialog and the same result will be copied to the clipboard.
6. BiCal Dialog: introduced the bool variable : "Output Foreground" that outputs the ROI mask for the foreground voxels used in BiCal calculation.
1. Implemented function to load all the FVX documents from the specified folder.
This is under the MainFrame>File> menu.
2. Removed a failing check for the presence of the VC++ 2019 Redistributable.
3. Added a voxelwise CJV calculation under the Nonuniformity>Measure menu.
4. Corrected the calculation of CJV measure according to B. paper.
5. Re-implemented N4-explorer tool with 5 optimization measures
{ roiaNU,robNU,CSM,blobCJV,voxCJV }
a) Start application and File>Open FireVoxel Folder.
b) Specify location of the folder, press OK. All fvx files in that folder will be opened.
c) Application will check if all documents have the same number of Active ROIs.
d) Press MainMenu>Nonuniformity>N4 Explorer. Corresponding dialog will show up.
Define the ranges for the optimization parameters. Set the constant parameters using the
N4 parameter dialog box in the left lower corner.
e) Optimization will run. Final dialog will show up. Each of 5 optimization results will be displayed in the Info dialog and the same result will be copied to the clipboard.
6. BiCal Dialog: introduced the bool variable : "Output Foreground" that outputs the ROI mask for the foreground voxels used in BiCal calculation.
Monday, August 12, 2019
FireVoxel Build 305 is released.
1. BiCal optimization matrix construction: Further acceleration which becomes dominant at the higher degree of the field.
2. BiCal: Removed a non-existent option for field in AIR from use interface, since there is only VOIDFIELD option is allowed in the Air. BiCal research dialog box is simplified .
3. FireVoxel start-up: added checks that VC++ Redistributable 2013 and 2019 are present.
4. Fixed the incorrect initial volume zooming position when loading a document (expressed in Debug version only)
5. MRTM2 (model #31): added an Output parameter : RMSE/Average Signal.
6. MainMenu>Nonuniformity>Measure NU of two layers added the CJV measure.
7. Added ABT subtest for MRTM2.
8. Fixed the issue with the negative field in the RoiStat3D dialog box. Implemented a custom
dialog field function for double precision floats with the user-specified precision (from 15 to 30 decimal positions).
1. BiCal optimization matrix construction: Further acceleration which becomes dominant at the higher degree of the field.
2. BiCal: Removed a non-existent option for field in AIR from use interface, since there is only VOIDFIELD option is allowed in the Air. BiCal research dialog box is simplified .
3. FireVoxel start-up: added checks that VC++ Redistributable 2013 and 2019 are present.
4. Fixed the incorrect initial volume zooming position when loading a document (expressed in Debug version only)
5. MRTM2 (model #31): added an Output parameter : RMSE/Average Signal.
6. MainMenu>Nonuniformity>Measure NU of two layers added the CJV measure.
7. Added ABT subtest for MRTM2.
8. Fixed the issue with the negative field in the RoiStat3D dialog box. Implemented a custom
dialog field function for double precision floats with the user-specified precision (from 15 to 30 decimal positions).
Wednesday, August 7, 2019
Build 304D is released.
1. Added additional diagnostics for the Input\Output files presence during the N4 execution.
2. BiCal dialog: Changed the Subsample parameter to Processing Scale parameter [0.1,10]. Fixed the defects and tested. Note: now the larger number will slow down processing, smaller will speed up.
3. Substantial BiCal speedup when using Processing Scale = 0.5. On 7T brain a minor reduction in quality with NU raising from 0.051 -> 0.057
4. BiCal: Speedup in matrix construction
1. Added additional diagnostics for the Input\Output files presence during the N4 execution.
2. BiCal dialog: Changed the Subsample parameter to Processing Scale parameter [0.1,10]. Fixed the defects and tested. Note: now the larger number will slow down processing, smaller will speed up.
3. Substantial BiCal speedup when using Processing Scale = 0.5. On 7T brain a minor reduction in quality with NU raising from 0.051 -> 0.057
4. BiCal: Speedup in matrix construction
Tuesday, August 6, 2019
Tuesday, July 30, 2019
FireVoxel Build 304A is released.
1. Fixed defect in reporting the diagnostics message for the Windows system GetLastError() function.
2. Enable N4-ANTS to run on the Real volume (this also allows a direct N4 second pass on the same image).
3. Added an execution notification while N4 command line is running.
4. Performed optimizations so the BiCal single run reaches very close result to BiCal double run but without extra time or blurring of the double run.
5. MRTM2 model (#31) added the Relative Error output parameter
1. Fixed defect in reporting the diagnostics message for the Windows system GetLastError() function.
2. Enable N4-ANTS to run on the Real volume (this also allows a direct N4 second pass on the same image).
3. Added an execution notification while N4 command line is running.
4. Performed optimizations so the BiCal single run reaches very close result to BiCal double run but without extra time or blurring of the double run.
5. MRTM2 model (#31) added the Relative Error output parameter
Monday, July 29, 2019
FireVoxel Build 304 is released.
1. Dynamic Experiment dialog: implemented a model-specific Input Function panel naming. When model is changed a proper panel name {Input function, Reference Curve,...} are displayed.
2. Restored the "Process Single curve" from the main menu without the need to create a document.
3. Restored the MRTM2 model:
4. Rotate Volume UI parameters are now remembered between the calls.
1. Dynamic Experiment dialog: implemented a model-specific Input Function panel naming. When model is changed a proper panel name {Input function, Reference Curve,...} are displayed.
2. Restored the "Process Single curve" from the main menu without the need to create a document.
3. Restored the MRTM2 model:
4. Rotate Volume UI parameters are now remembered between the calls.
Tuesday, July 23, 2019
Monday, July 22, 2019
Build 303 is released.
1. Provided 5 research branches for FLEXR deformable registration algorithm. They all achieve
fairly good registration of about 1.5 mm, but further development is needed to match the state of
the art 0.9 mm on the COPD datasets.
2. Provided BiCal Research dialog with most internal parameters exposed.
1. Provided 5 research branches for FLEXR deformable registration algorithm. They all achieve
fairly good registration of about 1.5 mm, but further development is needed to match the state of
the art 0.9 mm on the COPD datasets.
2. Provided BiCal Research dialog with most internal parameters exposed.
Tuesday, April 16, 2019
Build 302 is released.
1. Model 17: IVIM-segmented: removed the check for non-pysiological fitting parameters, so no VOID voxels are generated.
2. Implemented a variant of LES-SVD solution that find solution of specified precision.
This greatly accelerates the Jacobi-based parallel solution.
3. Big acceleration in Flow field computation for RGBF.
4. Corrected the Flow field transform to produce an identical interpolated volume for the Identity transform.
5. Improved diagnostic messages for Layers with the different Resolution\Orientation from the Base Layer.
6. Implemented ABT-subtest: Lung landmark-based registration using GRBF
7. Corrected algorithm for the specified precision LES-SVD solution.
8. Expanded Transfrom>MakeIsotropic function to include option for Target resolution with the dialog.
9. Transform>Rotate Volume: now rotates the centers of the existing VROIs and approximates the resulting size of the VROIs.
10. Integration of the existing code for large deformation registration : project ReMIND
11. Optimization of the memory and speed for ReMIND.
12. GRBF Dense Field optimization: replace SVD with HouseholderQR for speed. Removed the initial Affine transform alignment,
13. Implemented Key (PET) model 48.
14. Implemented Input Function dispersion in Model 48 which can be used in other models.
15. Enabled MagTrace to work on Real Volumes.
1. Model 17: IVIM-segmented: removed the check for non-pysiological fitting parameters, so no VOID voxels are generated.
2. Implemented a variant of LES-SVD solution that find solution of specified precision.
This greatly accelerates the Jacobi-based parallel solution.
3. Big acceleration in Flow field computation for RGBF.
4. Corrected the Flow field transform to produce an identical interpolated volume for the Identity transform.
5. Improved diagnostic messages for Layers with the different Resolution\Orientation from the Base Layer.
6. Implemented ABT-subtest: Lung landmark-based registration using GRBF
7. Corrected algorithm for the specified precision LES-SVD solution.
8. Expanded Transfrom>MakeIsotropic function to include option for Target resolution with the dialog.
9. Transform>Rotate Volume: now rotates the centers of the existing VROIs and approximates the resulting size of the VROIs.
10. Integration of the existing code for large deformation registration : project ReMIND
11. Optimization of the memory and speed for ReMIND.
12. GRBF Dense Field optimization: replace SVD with HouseholderQR for speed. Removed the initial Affine transform alignment,
13. Implemented Key (PET) model 48.
14. Implemented Input Function dispersion in Model 48 which can be used in other models.
15. Enabled MagTrace to work on Real Volumes.
Tuesday, March 26, 2019
FireVoxel Build 301 is released.
1. Fully parallelized the Foerstner Map calculation (for keypoints detection)
2. Corrected Jacobian map calculation for vector fields.
3. Corrected crash when calculating the EDT (Euclidian Distance Transform) in Parallel mode.
4. Corrected the MST optimization so the resulting displacement only resides in the areas
permitted by the Source ROI mask.
5. Processed a problematic case for Monkey->Reference registration. Use Average (not PCA) to accumulate. Use 3vox Rad in URAL gradients. Then following:
6. Expanded Tissue attribute structure to accommodate up 16 values.
7. Introduced FVX document v9. Provided backward compatibility
for FVXv8.
8. Tissue Properties (such as T1 for ROI) are now save as part of the FVX file.
9. Eliminated legacy FDX_Text() dialog support, Microsoft corrected the DDX_Text bug
for "double" fields.
1. Fully parallelized the Foerstner Map calculation (for keypoints detection)
2. Corrected Jacobian map calculation for vector fields.
3. Corrected crash when calculating the EDT (Euclidian Distance Transform) in Parallel mode.
4. Corrected the MST optimization so the resulting displacement only resides in the areas
permitted by the Source ROI mask.
5. Processed a problematic case for Monkey->Reference registration. Use Average (not PCA) to accumulate. Use 3vox Rad in URAL gradients. Then following:
![]() |
| Pre-1 |
![]() |
| Post-1 |
7. Introduced FVX document v9. Provided backward compatibility
for FVXv8.
8. Tissue Properties (such as T1 for ROI) are now save as part of the FVX file.
9. Eliminated legacy FDX_Text() dialog support, Microsoft corrected the DDX_Text bug
for "double" fields.
Sunday, March 17, 2019
FireVoxel Build 300 is released.
1. Implemented corrected Optimum Location calculation in the 3-D Euclidian Distance Transform.
2. Implemented capability for each Dynamic Model to restrict allowed Concentration Conversions to the specified subset.
3. Dialog Parametric Maps calculation: presently selected Tissue and Input Function concentration conversions are displayed.
4. Dialog Layer Control: "Save ALL" functionality is implemented to Save ALL marked layers to the specified folder in specified RAW format.
1. Implemented corrected Optimum Location calculation in the 3-D Euclidian Distance Transform.
2. Implemented capability for each Dynamic Model to restrict allowed Concentration Conversions to the specified subset.
3. Dialog Parametric Maps calculation: presently selected Tissue and Input Function concentration conversions are displayed.
4. Dialog Layer Control: "Save ALL" functionality is implemented to Save ALL marked layers to the specified folder in specified RAW format.
Tuesday, March 5, 2019
FireVoxel Build 299 is released.
1. Corrected FileExists function to work with files >2GB.
2. When loading the *.time file with TE info, the TE info should be in (sec) in *.time file.
At the same time the DICOM header stores that info in (ms), so the proper synchronization
was implemented.
3. Implemented fully parallel algorithm for "Equlidian Distance Transform over Sampled Function" with the complexity O(n) where n is the number of voxels. This is an important functional block inside larger Viterbi algorithm inside the Deformable Registration project.
4. Implemented new Model "3. Interleaved 2-state profile".
1. Corrected FileExists function to work with files >2GB.
2. When loading the *.time file with TE info, the TE info should be in (sec) in *.time file.
At the same time the DICOM header stores that info in (ms), so the proper synchronization
was implemented.
3. Implemented fully parallel algorithm for "Equlidian Distance Transform over Sampled Function" with the complexity O(n) where n is the number of voxels. This is an important functional block inside larger Viterbi algorithm inside the Deformable Registration project.
4. Implemented new Model "3. Interleaved 2-state profile".
Sunday, March 3, 2019
FireVoxel Build 298 is released.
1. Fixed defect in MouseHolder segmentation: segmented subvolumes retain the 4D attributes of the original 4D Volume.
2. Fixed general defect: when 4D volume with dynamic dimension other than time is transformed, the dynamic coordinates of the transformed volume are now correctly preserved.
1. Fixed defect in MouseHolder segmentation: segmented subvolumes retain the 4D attributes of the original 4D Volume.
2. Fixed general defect: when 4D volume with dynamic dimension other than time is transformed, the dynamic coordinates of the transformed volume are now correctly preserved.
Tuesday, February 19, 2019
FireVoxel Build 297 is released.
1. Coded an initial variant of the FLEXR-AutoWarp function.
2. New easy and effective scenario for lung CT segmentation. EdgeWave with the seed, followed up by the F7 (contour fill function). Later on: make a standalone one-step function, with the simple dialog box, option to separate the L\R lungs, and possibly fully auto without specifying the seed.
5. Fixed the defect inside the recently optimized RoiGetNumberOfVoxels function.
6. Fixed defects inside the SegmentMouseHolder function.
7. SegmentMouseHolder function: all output segmented subvolumes are identical size now.
8. Added ABT facility to verify several (all) opened documents.
9. Added ABT subtest for Mouse Holder Segmentation
1. Coded an initial variant of the FLEXR-AutoWarp function.
2. New easy and effective scenario for lung CT segmentation. EdgeWave with the seed, followed up by the F7 (contour fill function). Later on: make a standalone one-step function, with the simple dialog box, option to separate the L\R lungs, and possibly fully auto without specifying the seed.
3. Extended the document comparison function to include the Vrois comparison, with diagnostics.
4. Cleared up ABT subtest for the Foerstner landmarks. Extended Foerstner landmark detection to volumes including ROIs. Included lung+ROI Foerstner landmark detection into ABT.
6. Fixed defects inside the SegmentMouseHolder function.
7. SegmentMouseHolder function: all output segmented subvolumes are identical size now.
8. Added ABT facility to verify several (all) opened documents.
9. Added ABT subtest for Mouse Holder Segmentation
Tuesday, February 5, 2019
FireVoxel Build 296 is released.
1. Re-engineered the structure of all Dynamic Framework subtests of the ABT. Now unlimited number of subtests is allowed for all models. Any source format is allowed :
{ FVX,MIDAS,DICOM }. Added a new subtest for Tofts (Model8) from DICOM.
2. Continue work on the ParSVD (1-sided Jacobi SVD/parallel). Replace the NR-SVD in the VolumeTransform function, fixed uncovered defects in ParSVD.
3. Added an ABT subtest for the Volume4D->PCA function.
4. Use ParSVD engine inside the Vol4D_PCA function.
5. Replace and Unified all the instances of the SVD usage to a ParSVD (1SJA) function.
This excludes the underdetermined systems.
6. String consolidation to the module-specific string tables.
1. Re-engineered the structure of all Dynamic Framework subtests of the ABT. Now unlimited number of subtests is allowed for all models. Any source format is allowed :
{ FVX,MIDAS,DICOM }. Added a new subtest for Tofts (Model8) from DICOM.
2. Continue work on the ParSVD (1-sided Jacobi SVD/parallel). Replace the NR-SVD in the VolumeTransform function, fixed uncovered defects in ParSVD.
3. Added an ABT subtest for the Volume4D->PCA function.
4. Use ParSVD engine inside the Vol4D_PCA function.
5. Replace and Unified all the instances of the SVD usage to a ParSVD (1SJA) function.
This excludes the underdetermined systems.
6. String consolidation to the module-specific string tables.
Tuesday, January 15, 2019
FireVoxel Build 295 is released.
1. FLEXR project : Implemented the Minimum Spanning Tree for the part-based model derived from the set of Foerstner landmarks.
2. FLEXR project : implemented label optimization algorithm on the MST.
3. Added an interna "Current Working Directory" to UserInterfaceOptions, independent from TempDir.
4. Corrected loading defect of COPD files (ANALYZE) from dir-lab
5. Implemented loading of the landmarks from COPD datasets.
6. Implemented the Gaussian Radial Basis Function landmark matching (without regularization)
7. Integrated Eigen bsdSvd() procedure for substantial precision improvement.
8. Integrater GRBF into the general landmark workflow. Implemented FlowField reslice.
Tested GRBF on COPD1 dataset with 300 landmarks (Gauss RBF Sigma = 30 mm)
Implemented Regularized variant of the GRBF deformation (large sigma = 100mm, lambda=1e-3)
9. Corrected DICOM loading defect due to a different internal encoding of the date and daytime inside the DCMTK data structure.
10. Implemented Gradient Descent and Conjugate Gradient algorithms as a postprocessing for solving the system of Linear equations. Presently used after SVD so that it reduces the RMSE by x10.
11. Corrected defect of CT_BASIC concentration conversion not working in Dynamic Modelling.
12. Introduced an ABT subtest for TOFTS (Model8) on CT.
1. FLEXR project : Implemented the Minimum Spanning Tree for the part-based model derived from the set of Foerstner landmarks.
2. FLEXR project : implemented label optimization algorithm on the MST.
3. Added an interna "Current Working Directory" to UserInterfaceOptions, independent from TempDir.
4. Corrected loading defect of COPD files (ANALYZE) from dir-lab
5. Implemented loading of the landmarks from COPD datasets.
6. Implemented the Gaussian Radial Basis Function landmark matching (without regularization)
7. Integrated Eigen bsdSvd() procedure for substantial precision improvement.
8. Integrater GRBF into the general landmark workflow. Implemented FlowField reslice.
Tested GRBF on COPD1 dataset with 300 landmarks (Gauss RBF Sigma = 30 mm)
![]() |
| Exhale (Blue) over Inhale (Red) BEFORE registration |
![]() |
| Exhale (green) over Inhale (Red) AFTER Registration. |
Implemented Regularized variant of the GRBF deformation (large sigma = 100mm, lambda=1e-3)
![]() |
| AFTER (left) vs BEFORE (right) same slice Z |
10. Implemented Gradient Descent and Conjugate Gradient algorithms as a postprocessing for solving the system of Linear equations. Presently used after SVD so that it reduces the RMSE by x10.
11. Corrected defect of CT_BASIC concentration conversion not working in Dynamic Modelling.
12. Introduced an ABT subtest for TOFTS (Model8) on CT.
Friday, January 4, 2019
Build 294B is released.
1. Save Alignment Transform (to *.vtf) - corrected situation when FVX Temporary directory was changed.
2. Added a separate attribute "VTF_Folder" to User Options structure.
3. Raster Paintbrush dialog: rename "Parametric Maps" field into "Real Volumes"
2. Updated workflow for registering the Primate Atlas to the selected Monkey reference brain. Changes included:
a) Using 0-component of the PCA (principal component) conversion of 4D volume.
b) Using T2-layer as Anatomy for the label map.
c) Label registration output is generated using Nearest Neighbor interpolation.
d) Label map is clipped by the provided Atlas Brain Mask.
1. Save Alignment Transform (to *.vtf) - corrected situation when FVX Temporary directory was changed.
2. Added a separate attribute "VTF_Folder" to User Options structure.
3. Raster Paintbrush dialog: rename "Parametric Maps" field into "Real Volumes"
2. Updated workflow for registering the Primate Atlas to the selected Monkey reference brain. Changes included:
a) Using 0-component of the PCA (principal component) conversion of 4D volume.
b) Using T2-layer as Anatomy for the label map.
c) Label registration output is generated using Nearest Neighbor interpolation.
d) Label map is clipped by the provided Atlas Brain Mask.
Thursday, January 3, 2019
Monday, December 17, 2018
FireVoxel 294 is released.
1. Implemented loading of the superPK files (*.idwc) into the FireVoxel dynamic component module.
2. Implemented an initial version of the MRTM0 model (with the reference function supplied by the superPK).
1. Implemented loading of the superPK files (*.idwc) into the FireVoxel dynamic component module.
2. Implemented an initial version of the MRTM0 model (with the reference function supplied by the superPK).
![]() |
| Reference function loaded from superPK |
![]() |
| MRTM0 model fitting starting from time t* (equilibration time). |
3. Implemented the MRTM model (using the loaded superPK reference function)
4. "Extract Atlas ROIs": corrected so that the original Atlas layer is not removed after the operation.
5. Defect correction: In many operations when the layer configuration is modified, so if the floating Layer Control dialog is opened it was not updated leading to the confusion.
6. Extended "Integer Range Parser" support function used in many UI scenarios (f.e. Extract Atlas Layers).
7. Implemented workflow for Affine registration of Primate Atlas to the selected Squirrel Monkey Reference image.
8. Layer control dialog : added information about the number of marked layers. This is helpful when a very large number of layers is present.
9. When layers are removed and a single layer is left, we set its Alpha to 100%
10. Added the "Discard Alignment" item to the Transform menu.
11. Added "Save Alignment" function to the Transform menu.
12. UserOptions dialog: added a general option for all the operations\transform which so far had only the default Interpolation. Now user specifies such "Default Interpolation". Works including the Transform>Alignment tools.
13. Implemented a general high performance function for converting 4D Volume into array of Principal Component using PCA (resulting in new 4D Volume of components).
Sunday, December 9, 2018
FireVoxel Build 293 is released.
1. NIFTI-4D: Corrected the each frame timing calculation using nim->toffset\nim->dt information.
2. Implemented a custom processing option for DICOM Open Folder dialog box. Rarely DICOM datasets have SeriesUID unique for each slice, so the option was introduced to parse them correctly.
3. Defect fixed: In NIFTI file obtained from SPM (type FLOAT64) there were many entries with the value NotANumber, so this was making Firevoxel crash. Fixed by changing these values to 0, during the load.
1. NIFTI-4D: Corrected the each frame timing calculation using nim->toffset\nim->dt information.
2. Implemented a custom processing option for DICOM Open Folder dialog box. Rarely DICOM datasets have SeriesUID unique for each slice, so the option was introduced to parse them correctly.3. Defect fixed: In NIFTI file obtained from SPM (type FLOAT64) there were many entries with the value NotANumber, so this was making Firevoxel crash. Fixed by changing these values to 0, during the load.
Thursday, November 29, 2018
FireVoxel Build 292 is released.
1. Several correction and improvements in the Dialog "View TAC"
2. Major (x10+) acceleration of the saving FVX files with many slices, by improving the saving embedded dicom header structure. This is done by using new DCMTK functions DcmOutputBufferStream::.
3. Provided more robust IsMatchingVolume function (used mainly in ABT). Problem was that for many 4D volumes, there are one or more dimensions (f.e. time and b-values) with repeating values in the dynamic coordinates. This introduces randomness in the sorting order of different timepoints, so matching function was often failing without reason. Addressed randomness by checking against all suitable dynamic coordinates.
4. Restored the ABT subtest and full functionality for the ChestWall\FullBreast segmentation. This was disabled during the upgrade of MagTrace contour tool while constructing the ground truth for the lung segmentation (ISMRM).
5. Implemented the "Display unmarked layers" checkbox inside Layer Control dialog, functionality to display the unmarked entries thus expanding possibilities of working with the Layers.
6. Modified Transform>Translate and Transform>Rotate function to work on several Marked volumes, while unmarked volumes are stationary.
7. Layer Control dialog: added "Mark\Unmark All layer" button.
1. Several correction and improvements in the Dialog "View TAC"
2. Major (x10+) acceleration of the saving FVX files with many slices, by improving the saving embedded dicom header structure. This is done by using new DCMTK functions DcmOutputBufferStream::.
3. Provided more robust IsMatchingVolume function (used mainly in ABT). Problem was that for many 4D volumes, there are one or more dimensions (f.e. time and b-values) with repeating values in the dynamic coordinates. This introduces randomness in the sorting order of different timepoints, so matching function was often failing without reason. Addressed randomness by checking against all suitable dynamic coordinates.
4. Restored the ABT subtest and full functionality for the ChestWall\FullBreast segmentation. This was disabled during the upgrade of MagTrace contour tool while constructing the ground truth for the lung segmentation (ISMRM).
5. Implemented the "Display unmarked layers" checkbox inside Layer Control dialog, functionality to display the unmarked entries thus expanding possibilities of working with the Layers.
6. Modified Transform>Translate and Transform>Rotate function to work on several Marked volumes, while unmarked volumes are stationary.
7. Layer Control dialog: added "Mark\Unmark All layer" button.
Wednesday, November 28, 2018
Sunday, November 25, 2018
FireVoxel Build 291 is released.
1. AutoFocus 3D: implemented a variant with "af Uniform Scale" option.
2. Implemented 1st version of the Mouse brain (automatically extracted from Multiholder) registration to the standard Atlas.
3. Corrected binning inside the AutoFocus\MutualInformation registration.
4. Corrected run-away defect with MI_NORM\Affine.
1. AutoFocus 3D: implemented a variant with "af Uniform Scale" option.
2. Implemented 1st version of the Mouse brain (automatically extracted from Multiholder) registration to the standard Atlas.
3. Corrected binning inside the AutoFocus\MutualInformation registration.
4. Corrected run-away defect with MI_NORM\Affine.
Saturday, October 27, 2018

FireVoxel Build 290 is released.
1. Fixed error when rasterizing Vector polylines and splines: now the NULL pen is used so the rasterized boundary is much closer to the vector one.
2. Provided complete re-work of the MagTrace Toolkit:
Added several new image snapping modes, manual modes Alt1,Alt2,Alt3. Rasterization tools.
3. Added DCMTK functions for loading DICOM headers directly from memory buffer (avoiding the intermediate file creation). Resulted in x10 loading speedup.
4. Provided an initial version of VIBE4D + GRASP4D hybrid merge function.
Friday, October 26, 2018
Tuesday, October 23, 2018
FireVoxel Build 289 is released.
1. Kidney segmentation FAP: reduced number of UI parameters.
Adjusted default parameters for good processing of all 6 sets (L+R).
2. Open RAW dialog box: implemented filter option to open ALL RAW formats (*.im;*.img;*nii;*.nia;*.nii.gz;*.mgh;*.mgz;*.time)
3. New version of Kidney FAP segmentation.
4. Batch processing of FLAIR WM lesions.
5. Corrected defect when the resolution of NIFTI saved file turns into (1,1,1)mm
6. RoiStats3D dialog: added the value of the bin to the info displayed on the MouseMove over the histogram.
1. Kidney segmentation FAP: reduced number of UI parameters.
Adjusted default parameters for good processing of all 6 sets (L+R).
2. Open RAW dialog box: implemented filter option to open ALL RAW formats (*.im;*.img;*nii;*.nia;*.nii.gz;*.mgh;*.mgz;*.time)
3. New version of Kidney FAP segmentation.
4. Batch processing of FLAIR WM lesions.
5. Corrected defect when the resolution of NIFTI saved file turns into (1,1,1)mm
6. RoiStats3D dialog: added the value of the bin to the info displayed on the MouseMove over the histogram.
Monday, October 22, 2018
1. Kidney segmentation: FAP
Added User constant to extend the height of the kidney bounding box, not exposed on UI.
Effective Bounding box is displayed to the User at the end of procedure to provide feedback.
2. Completely parallelize multi-slice projections such as MIP. Added a progress bar since
it takes longer time to display.
3. Extended Kidney FAP segmentation to include the notion of Collecting System.
Added User constant to extend the height of the kidney bounding box, not exposed on UI.
Effective Bounding box is displayed to the User at the end of procedure to provide feedback.
2. Completely parallelize multi-slice projections such as MIP. Added a progress bar since
it takes longer time to display.
3. Extended Kidney FAP segmentation to include the notion of Collecting System.
Wednesday, October 17, 2018
FireVoxel 288C is released.
1. Kidney segmentation: algorithm modification to remove 99%+ of medulla voxels which accidentally appear on the surface of the kidney.
2. ROI>Morphology>Inflate\Deflate functionality: made corrections so the Inflate-Deflate combinations are reversible with the same parameter. Fixed side-effects in BrainAtrophy and FLAIR Lesions functions.
1. Kidney segmentation: algorithm modification to remove 99%+ of medulla voxels which accidentally appear on the surface of the kidney.
2. ROI>Morphology>Inflate\Deflate functionality: made corrections so the Inflate-Deflate combinations are reversible with the same parameter. Fixed side-effects in BrainAtrophy and FLAIR Lesions functions.
Tuesday, October 16, 2018
Wednesday, October 10, 2018
FireVoxel Build 288 is released.
1. EdgeWave-2D : implemented a pure 2D function which is very fast, works on a single slice. It reuses the EdgeWave-3D code.

2. New algorithm for fully automatic MouseHolder segmentation (based on MIP and EdgeWave2D)
3. Implemented automatic rotation of the individual chambers to normal orientation. Youtube video posted.
4. Implemented UI functions: Close Current Document (All Views)
and Close All Documents.
5. Open Dicom dialog box: Implemented function to check all Children of the selected item. Then few undesirable items could be easily unchecked and the rest loaded. Youtube video uploaded.
1. EdgeWave-2D : implemented a pure 2D function which is very fast, works on a single slice. It reuses the EdgeWave-3D code.

2. New algorithm for fully automatic MouseHolder segmentation (based on MIP and EdgeWave2D)
3. Implemented automatic rotation of the individual chambers to normal orientation. Youtube video posted.
4. Implemented UI functions: Close Current Document (All Views)
and Close All Documents.
5. Open Dicom dialog box: Implemented function to check all Children of the selected item. Then few undesirable items could be easily unchecked and the rest loaded. Youtube video uploaded.
Thursday, October 4, 2018
Wednesday, October 3, 2018
Tuesday, October 2, 2018
Wednesday, September 26, 2018
Build 285 is released.
1. Implemented function and User interface to change the DICOM Tags Position\Orientation within the headers of loaded Volume. This requires to view images in 3DSlicer.
2. Implemented a new workflow for the Kidney motion correction in Mosaic-based DTI exam.
Enabled saving to DICOMs compatible with the 3D Slicer DTI framework.
3. Optimized the Display Cache internals during the Paint Brush painting.
4. Provided and ABT subtest for the new DTI kidney motion correction workflow.
5. Provided a video manual for the new DTI kidney motion correction workflow.
.
1. Implemented function and User interface to change the DICOM Tags Position\Orientation within the headers of loaded Volume. This requires to view images in 3DSlicer.
2. Implemented a new workflow for the Kidney motion correction in Mosaic-based DTI exam.
Enabled saving to DICOMs compatible with the 3D Slicer DTI framework.
3. Optimized the Display Cache internals during the Paint Brush painting.
4. Provided and ABT subtest for the new DTI kidney motion correction workflow.
5. Provided a video manual for the new DTI kidney motion correction workflow.
.
Thursday, August 23, 2018
Build 284 is released.
1. Provided backward compatibility Load support for FVX file format V7.
2. New UI function: MainMenu>Volume>Crop>Crop Current Slice.
3. Complete re-engineering of internal DICOM representation in Volumtric entities.
4. Number of image in SIEMENS mosaic is automatically determined and initiated
inside the Mosaic-to-volume dialog box.
5. When document is saved, the names of the individual layers are modified so the Path to
the layer file is removed and only the file title is left.
6. After performing Mosaic->to->Volume operation for DTI image, save to DICOM, reload DICOM: the volumes are correctly loaded with full diffusion info preserved.
7. After performing Mosaic->to->Volume operation for DTI image, save to FireVoxel, reload FireVoxel doccument, ave to DICOM, reload DICOM: the volumes are correctly loaded with full diffusion info preserved.
8. Extended Mosaic->Volume function to all layers, including ROIs. So Multilayer entity is converted properly.
9. Implemented the ABT subtest Dti Mosaic registration mini-workflow
10. Fixed the issues with saving\loading a single ROI layer to DICOM.
11. OpenDicom dialog: corrected the preview panel so it works for the ROI images saved in DICOM.
1. Provided backward compatibility Load support for FVX file format V7.
2. New UI function: MainMenu>Volume>Crop>Crop Current Slice.
3. Complete re-engineering of internal DICOM representation in Volumtric entities.
4. Number of image in SIEMENS mosaic is automatically determined and initiated
inside the Mosaic-to-volume dialog box.
5. When document is saved, the names of the individual layers are modified so the Path to
the layer file is removed and only the file title is left.
6. After performing Mosaic->to->Volume operation for DTI image, save to DICOM, reload DICOM: the volumes are correctly loaded with full diffusion info preserved.
7. After performing Mosaic->to->Volume operation for DTI image, save to FireVoxel, reload FireVoxel doccument, ave to DICOM, reload DICOM: the volumes are correctly loaded with full diffusion info preserved.
8. Extended Mosaic->Volume function to all layers, including ROIs. So Multilayer entity is converted properly.
9. Implemented the ABT subtest Dti Mosaic registration mini-workflow
10. Fixed the issues with saving\loading a single ROI layer to DICOM.
11. OpenDicom dialog: corrected the preview panel so it works for the ROI images saved in DICOM.Sunday, August 12, 2018
FireVoxel Build 283E is released.
1. Fixed a glitch when older FVX file contains and ROI layer without the orientation corresponding to Base layer. This originated in older versions of FVX when new ROIs missed the proper orientation. This caused the problem when cropping such multilayer volume using VROI. Now software warns properly, allows you to proceed and the ImageOrientationPatient is automatically repaired in the problematic layer.
2. MainMenu>Vector>Enclose Connected components menu command:
a) If more than 1 component was detected, message is displayed informing about the # of CCs.
b) Displayed Slice is changed to the center of the largest created VROI.
c) Corrected defect: when connected component is withing a single slice, we change the slice so that the resulting VROIs becomes visible immediately.
3. Fixed defect in Layer Control dialog: disallowed removing the layers when it results in no layers left.
1. Fixed a glitch when older FVX file contains and ROI layer without the orientation corresponding to Base layer. This originated in older versions of FVX when new ROIs missed the proper orientation. This caused the problem when cropping such multilayer volume using VROI. Now software warns properly, allows you to proceed and the ImageOrientationPatient is automatically repaired in the problematic layer.
2. MainMenu>Vector>Enclose Connected components menu command:
a) If more than 1 component was detected, message is displayed informing about the # of CCs.
b) Displayed Slice is changed to the center of the largest created VROI.
c) Corrected defect: when connected component is withing a single slice, we change the slice so that the resulting VROIs becomes visible immediately.
3. Fixed defect in Layer Control dialog: disallowed removing the layers when it results in no layers left.
Saturday, August 11, 2018
FireVoxel 283D is released.
1. In Layer Control dialog when doubleclick on the Layer name and edit control shows up:
1. In Layer Control dialog when doubleclick on the Layer name and edit control shows up:
a) Enabled immediate focus - so User can start type immediately.
b) The whole current string is initially selected.
c) Ctrl+A selection is enabled.
2. User Interface Options dialog: introduced new option "Load Dynamic Modelling setting from FVX".
x - loads the setting for all models saved in the FVX file
o - keeps all current settings, disregards the one from FVX file.
(This is save as FireVoxel config file between the sessions).
3. When Vol>Crop>All Layers is activated, the new document is created with the name of Source document + "_crop". Before it was the name of current Active layer in the source document.
4. Vector ROI Properties dialog now remembers if MM\VOX units were used in the previous instance (within the same FireVoxel session).
5. Vector ROI Properties dialog box: added a button and function "Scale Dimensions" by the specified scale. Resulting Rectangle is cropped by the volume dimensions.
6. In generic "Specify double value" dialog corrected so that the focus is immediately located inside the data field.
7. In generic "Specify integer value" dialog corrected so that the focus is immediately located inside the data field.
x - loads the setting for all models saved in the FVX file
o - keeps all current settings, disregards the one from FVX file.
(This is save as FireVoxel config file between the sessions).
3. When Vol>Crop>All Layers is activated, the new document is created with the name of Source document + "_crop". Before it was the name of current Active layer in the source document.
4. Vector ROI Properties dialog now remembers if MM\VOX units were used in the previous instance (within the same FireVoxel session).
5. Vector ROI Properties dialog box: added a button and function "Scale Dimensions" by the specified scale. Resulting Rectangle is cropped by the volume dimensions.
6. In generic "Specify double value" dialog corrected so that the focus is immediately located inside the data field.
7. In generic "Specify integer value" dialog corrected so that the focus is immediately located inside the data field.
Thursday, August 9, 2018
Monday, August 6, 2018
Tuesday, July 24, 2018
FireVoxel 283A is released.
1. Added the DisplayTransform record to the ZOOMCACHE structure. This fixes some defects when switching between Film and Slice view and pulling the Zoom from cache.
2. When new layer is added\created, immediately copy the Display Matrix of the current working layer. This way the drawing can be done correctly on the newly created layer.
1. Added the DisplayTransform record to the ZOOMCACHE structure. This fixes some defects when switching between Film and Slice view and pulling the Zoom from cache.
2. When new layer is added\created, immediately copy the Display Matrix of the current working layer. This way the drawing can be done correctly on the newly created layer.
Monday, July 23, 2018
Friday, July 20, 2018
Monday, July 16, 2018

Build 280 is released.
1. Implemented "Arterial Delay" parameter for Model #43 2CXM. Fitting residuals can be dropped by half on the test images.
2. Changed default processing when loading DICOM images with IPP\IOP tags missing. This allowed to load some volumes as 3D as desired.
3. Implemented new dynamic model "2CFM {vp,ve,Fp,PS} - Gridded Simplex Local Optimization". This implementation contains the Arterial Delay output parameter.
4. Fixed defect : when new ROI layer is created from Layer Control dialog box, the ROI slice dicom image position and orientation were not properly initialized. This resulted in defect when loading the ROI volumes saved as 3D DICOM.
Wednesday, July 11, 2018
Tuesday, June 26, 2018
FireVoxel 278A is released
1. First version of the Multiprojection re-alignment tools: by {vector,sector}
2. Corrected overflow problem in Volume Smoothing\Ridge Segmentation with 15-bit images
in "Separate Mouse exam problem"
3. Corrected a rare defect when VROI specified on a single slice, used for cropping, result in cropping of 2 slices.
1. First version of the Multiprojection re-alignment tools: by {vector,sector}
2. Corrected overflow problem in Volume Smoothing\Ridge Segmentation with 15-bit images
in "Separate Mouse exam problem"
3. Corrected a rare defect when VROI specified on a single slice, used for cropping, result in cropping of 2 slices.
Wednesday, June 20, 2018
Monday, June 18, 2018
FireVoxel Build 277 is released.
1. When adding a new layer, check now for the orientation to be the same as the current base layer.
Otherwise, display a warning but give an option to proceed anyway (f.e. when image originating from MIDAS file and orientation info is not available).
2. Implemented new alignment function under Registration menu. Having 2 volumes loaded we can now align their centers and rotate it to match their orientation.
3. Register>Using DICOM tags only was renamed.
1. When adding a new layer, check now for the orientation to be the same as the current base layer.
Otherwise, display a warning but give an option to proceed anyway (f.e. when image originating from MIDAS file and orientation info is not available).
2. Implemented new alignment function under Registration menu. Having 2 volumes loaded we can now align their centers and rotate it to match their orientation.3. Register>Using DICOM tags only was renamed.
Tuesday, June 12, 2018
Friday, June 8, 2018
Friday, June 1, 2018
Monday, May 28, 2018
Tuesday, May 15, 2018
Build 274 is released.
1. Algorithmic work for Lung GRASP 4D fully automatic segmentation. Working on 5 cases of Deep+Normal breathing trying to achieve a good result so lung spirometry measurements can be performed.
2. Fixed the memory leak in Bical function.
3. Corrected the allocated size of each memory block for Volume slice, so it is no more than required. It also resulted in smaller system memory use and accurate resource usage reporting.
4. BiCal with "Output Field" option now otput "double precision Real" volume.
5. Fixed defect when volume is converted to isotropic for processing and then back to original resolution, so there are no void voxels on the fringe.
6. BiCal\EdgeWave front age calculation: fixed defect occurring in 1-voxel margins of the volume. This was resulting in unpleasant margin artefacts in BiCal.
7. Fixed memory leak in DetectRelativeRidge function.
8. Detected and removed all memory leaks from Lung\Trachea 4D segmentation.
9. Optimized speed of MemVol -> SetBox -> (MemVol) function which is the basis of many other
functions. This reduced the time of Lung segmentation results construction (not segmentation itself) x3 times.
10. Parallelized CreateBasicDicomHeader function which is basis of many functions on UI.
1. Algorithmic work for Lung GRASP 4D fully automatic segmentation. Working on 5 cases of Deep+Normal breathing trying to achieve a good result so lung spirometry measurements can be performed.
2. Fixed the memory leak in Bical function.
3. Corrected the allocated size of each memory block for Volume slice, so it is no more than required. It also resulted in smaller system memory use and accurate resource usage reporting.
4. BiCal with "Output Field" option now otput "double precision Real" volume.
5. Fixed defect when volume is converted to isotropic for processing and then back to original resolution, so there are no void voxels on the fringe.
6. BiCal\EdgeWave front age calculation: fixed defect occurring in 1-voxel margins of the volume. This was resulting in unpleasant margin artefacts in BiCal.
7. Fixed memory leak in DetectRelativeRidge function.
8. Detected and removed all memory leaks from Lung\Trachea 4D segmentation.
9. Optimized speed of MemVol -> SetBox -> (MemVol) function which is the basis of many other
functions. This reduced the time of Lung segmentation results construction (not segmentation itself) x3 times.
10. Parallelized CreateBasicDicomHeader function which is basis of many functions on UI.
Wednesday, May 2, 2018
FireVoxel Build 273 is released.
1. Corrected Multi-modal registration using crosscorrelation measure.
2. Restored the ABT test for Registrations.
3. NIFTI File Load\Save: enabled writing the modality name into the "description" field of the
NIFTI header.
4. ANALYZE file format File Load\Save: enabled writing the modality name into the "description" field of the NIFTI header.
5. Enabled NIFTI Save\Load of 64-bit Real volume data.
6. Implemented corrections to the "Manual\Automatic" Concentration baseline calculations.
7. Implemented ABT subtest for the Lung\Trachea 4D segmentation
8. Implemented new Concentration converison method (S/S0-1)/(CR*T1)
1. Corrected Multi-modal registration using crosscorrelation measure.
2. Restored the ABT test for Registrations.
3. NIFTI File Load\Save: enabled writing the modality name into the "description" field of the
NIFTI header.
4. ANALYZE file format File Load\Save: enabled writing the modality name into the "description" field of the NIFTI header.
5. Enabled NIFTI Save\Load of 64-bit Real volume data.
6. Implemented corrections to the "Manual\Automatic" Concentration baseline calculations.
7. Implemented ABT subtest for the Lung\Trachea 4D segmentation
8. Implemented new Concentration converison method (S/S0-1)/(CR*T1)
Tuesday, May 1, 2018
Wednesday, April 25, 2018
Saturday, March 24, 2018
Build 271 is released.
1. Added the "3D Processing" option to the Segment>Detect Bright ridges dialog box.
2. Implemented "3D Processing" option in the Volume>Smooth dialog box.
3. VolumeSmooth in 2D: implemented a pure, fully parallel 2D function. It is D-times faster,
where D is the diameter of the apperture than the previous version. D can be quite large 20-50 in
some segmentation scenarios.
4. Developed morphological segmentation "Unlump ROI" procedure.
Applied to Lungs ROI. When lungs are segmented, usually both lungs ROI is lumped together and to other small objects. Unlump procedure runs and then we take 2 largest connected components.
5. Implemented an initial prototype of fully automatic Lung segmentation from MRI
GRASP-4D exam.
6. Implemented the Volumetric Time Profile dialog.
7. Implemented the Lung Static split based on ROI Union algorithm. Applied the volumetric time profile dialog to it.

8. Optimized the VolumeSmooth function in 2D with Appeture weights = constant. Used 256-bit AVX2 instructions for array Multiply\Add
9. Introduce the Roi Compression switch ON\OFF which can be called withing heavy computation procedure to substantially speed up calculation, without involving Users input into User Interface Options.
10. In multiprojection view with the synchronized cursor: allow now to scroll through time synchroniously.
11. VolumeSmooth function: added the processor test for AVX2 capabilities.
12. Change to menu item Volume>Change Volume Type function. Added ROI->to->Integer conversion UI item.
13. Implemented first prototype of fully automatic trachea segmentation from 4D MRI GRASP.
14. Added the spirometry measures {FEV1,FVC} to Volumetric profile curve dialog.
15. Implemented a new scheme to reduce the DICOM header size stored with each slice. Space reduction is x2.
16. Implemented a single dialog to specify 3 integer values. This serves as the dialog for Lung splitting at the moment.
1. Added the "3D Processing" option to the Segment>Detect Bright ridges dialog box.
2. Implemented "3D Processing" option in the Volume>Smooth dialog box.
3. VolumeSmooth in 2D: implemented a pure, fully parallel 2D function. It is D-times faster,
where D is the diameter of the apperture than the previous version. D can be quite large 20-50 in
some segmentation scenarios.
4. Developed morphological segmentation "Unlump ROI" procedure.
Applied to Lungs ROI. When lungs are segmented, usually both lungs ROI is lumped together and to other small objects. Unlump procedure runs and then we take 2 largest connected components.
5. Implemented an initial prototype of fully automatic Lung segmentation from MRI
GRASP-4D exam.
6. Implemented the Volumetric Time Profile dialog.
7. Implemented the Lung Static split based on ROI Union algorithm. Applied the volumetric time profile dialog to it.

8. Optimized the VolumeSmooth function in 2D with Appeture weights = constant. Used 256-bit AVX2 instructions for array Multiply\Add
9. Introduce the Roi Compression switch ON\OFF which can be called withing heavy computation procedure to substantially speed up calculation, without involving Users input into User Interface Options.
10. In multiprojection view with the synchronized cursor: allow now to scroll through time synchroniously.
11. VolumeSmooth function: added the processor test for AVX2 capabilities.
12. Change to menu item Volume>Change Volume Type function. Added ROI->to->Integer conversion UI item.
13. Implemented first prototype of fully automatic trachea segmentation from 4D MRI GRASP.
14. Added the spirometry measures {FEV1,FVC} to Volumetric profile curve dialog.
15. Implemented a new scheme to reduce the DICOM header size stored with each slice. Space reduction is x2.
16. Implemented a single dialog to specify 3 integer values. This serves as the dialog for Lung splitting at the moment.
Subscribe to:
Posts (Atom)






























