Search This Blog

Sunday, January 14, 2018

FireVoxel Build 263 is released

1.  Re-enabled the EdgeWave Single Slice variant function.
2.  Implemented the ABT Subtest for EdgeWave Single Slice.
3.  Implemented generic "ListChoice" dialog box to use in many scenarios.
4.  Implemented  checkbox "User Option" - Verify Modality when loading RAW images.
     Dialog box with the selection of modalities appears during the RAW load.
5.  Fixed defects in DICOM management of the Dicom internal header structure for cleaner DICOM save.

Friday, January 12, 2018

FireVoxel 262C is released.

1.  Fixed the critical defect in Dynamic Experiment dialog box:  when the User was switching to Models with Input Functions, the module was not recognizing the switch and not updating the dialog
items properly.

Wednesday, January 10, 2018

Vocal cord dataset.  Pre-processed the volume with Multiscale texture gradient (Rad=3).
Applied StdDev map to both original and Gradient image.
Used timepoints  [25,406], to exclude the streak frames


StdDev for  a) Original image                                            b) Gradient Map
c) Edges



Tuesday, January 9, 2018

FireVoxel Build 262B

1. Fixed crash when processing texture gradient on the 1-slice volumes.
2. Multiscale Texture Gradient function now produces actual Real map instead of pseudo-Real
3.  Enabled Gradient calculation on 4D volumes applied to all timepoints.

Sunday, January 7, 2018

FireVoxel 262A is released

1.  Re-engineered the MGH (FreeSurfer)  Read support.  Added the MGH\MGZ   ABT Unit test.
2.  Paintbrush drawing at Rad=0:  cursor radius is now minimal but will always remain visible.
3. Defect fix:  When Brush painting, after a certain stroke the Left Mouse (LMB) button is released.  Then if user continued the painting, but press the LMB first and only then  Ctrl button (usually it is Ctrl then LMB), FireVoxel was connecting the previously finished stroke with the newly started one, thus making the unexpected brush segments.

Wednesday, January 3, 2018

FireVoxel 262 is released.


1.  Fixed VolMinMax function to super-fast variant that does not require decompressing the volume and does not take any memory.  (defect fixed:  4GB CT was not loaded due to allocation restrictions).

2. Fixed the AboutDlg to display  "Allocated Memory" correctly when its size exceeds 2GB.

3. VolInfo dialog:  fixed the Frame Memory size information display when exceeds 2GB.

4.  Fixed defect: When older version of the FireVoxel (f.e. 255) tries to load new FVX file format introduced in later version (f.e.  261),  now exists gracefully instead of crashing.

5. Enabled the memory compression for Real images (PET, parametric maps etc).  On the large, 4GB,
mouse electrodes volume it is a x5 improvement comparing to Build 261.

6.  When saving the FVX document, check the appropriate disk space available and display the message if not enough space.

7.  Re-enabled parallel display when showing FilmView.  This makes big difference for very large volumes.

8. Fixed the CreatePaintbrush function so there is no increasing GDI handle leak during the extended drawing.

9.  When User starts to draw an ROI, without the ROI layer present,  a new ROI layer is created. But the Integer\Real layer still remains Active.  So MouseMove generates the access to the DisplayVoxelInfo, causing the decompress.  Now this access is disabled while painting, for much faster painting (x5 ? noticable on very large images)

10.  Re-enabled the Optimal Window Center\Width calculation for Real volumes to match the appearance in Build 255.

Monday, January 1, 2018

Saturday, December 30, 2017

1.  Input Function panel buttons are only enabled when the currently selected model allows the Input Functions.

2.  Each model now displays the number of the required input function in its name

Friday, December 29, 2017

Implemented a "Summary dialog", just before the Dynamic Model calculation is about to start, this dialog is displayed with all relevant processing info.  User can Proceed or Decline:

Thursday, December 28, 2017

Re-implemented the Concentration Conversion dialog so that only Concentration types relevant to the currently selected image are displayed.

Wednesday, December 27, 2017

Implemented the "Allowed Modality" and "Allowed Dynamic Dimension" attributes for every Dynamic Model.  Now when the User displays the list of models, only the relevant models (based on the currently loaded volume) are displayed.
MR  with Time 

MR with b-values
PET with Time

MR with TE

MR with TI

Friday, December 22, 2017

FireVoxel Build 260B is released.


1.  Updated a cluster of functions around {VolumeCleanMask,VolumeFillBox} to match new memory scheme for Real images

2. Corrected the crash and improved the performance and memory demands while loading the 450MB  Nifti  4D volume.

Monday, December 18, 2017

FireVoxel 260A is released.

1.  Fixed the defects in
     a)  Dynamic Integral function
     b)  Dynamic Maximum function.

     This was due to the switch to Real engine.

2.  Corrected and optimized the CreateVolumeUniform function.




FireVoxel  Build 260 is released.


1. EdgeWave:  merged the EdgeWaveCG (Competitive growth) into the EdgeWave basic function.  Added the "CG" option to the EdgeWave dialog box.













2. Fixed the defect of the displaying REAL volumes (detected by the diffusion ADC processing).

3.  Fixed very subtle defect in the setting the histogram range inside the RoiStats3D dialog box.
This is due to the Range parameters, when send and retrieved from the MS Dialog Control, change their value for unknown reason (different floating point settings?).   So the range has to be expanded
by relative 1e-10 to compensate for that effect.

Friday, December 15, 2017

FireVoxel 259D is released.

1. Correction:  restored and improved the logic of determining the optimal  Window Center\Width for signal to display mapping.  This was detected during testing the Linear Conversion.

2.  Enabled  Layer Operations >  Arithmetic Operations   on   Real volumes.
Enabled the operation on mixed  real-Integer volumes.

Thursday, December 14, 2017

Build 259C is released.


1.  Added a warning, in all Dynamic Models with Input Functions:  if the IF is a flat zero (after current conversion), it stops. May be indication of incorrectly supplied data.

2.  Defect: fixed so that RoiStats3D are now workingnon REAL images 3D/4D.

3.  RoiStats3D dialog:  Histogram save for the REAl images  is working now

Histogram
Max Count:= 43

Signal        Count
0.000020       3
0.000060       6
0.000099       6
0.000139       7
0.000179       7

Cortex\Medulla segmentation from the Arterial phase.

After obtaining the Whole Kidney ROI from arterial phase, we run a fully automatic function
"Segment>Detect Bright Ridges" with the following parameters:







Result is the separation of Whole Kidney ROI into  Cortex and Medulla

"Good case-1"
"Bad case -1"
"Bad case-2"

Wednesday, December 13, 2017

Disadvantage of "EdgeWave+Blanket" segmentation approach is the need for manually constructed blanket.

Attempt was made to automatically generate a suitable blanket.

a) A seed was placed on the cortex, same seed would be later reused for the final segmentation.

b) EdgeWave CG ran with some general parameters so roughly to capture cortex.

c)  Inflate the resulting ROI by 4mm.
d) Fill the contours 2D (F7).

This result we call AutoBlanket and it is called AutoBlanket


"Good Case-1"   result of AutoBlanket.

  Then we clip the image by the Blanket ROI and run EdgeWaveCG second time, we the new parameters to capture the Whole Kidney.











Final Result:  AutoBlanket (Red) in the background.  Whole Kidney mask is Green (Overlay)





Same approach for "Bad Case-2"

"Bad Case-1"  Whole Kidney

"Bad Case-2"  Whole Kidney

Preliminary result for the Whole Kidney ROI from Arterial Phase.
All 3 example uses  "EdgeWave with Blanket" functionality with the default parameters.
User only presses Accept button.
Blanket ROI was constructed with 5 contours in Axial projection (then morphed).

"Good case 1" - Whole Kidney ROI from Arterial phase.
"Bad Case 1" - whole Kidney ROI from Arterial Phase.
"Bad Case 2" - Whole Kidney ROI