Search This Blog

Wednesday, July 8, 2015

Workflow breast lesion registration:  implemented a 1-click function to register EPI-4D volume to the T1-3D  volume.  Provided both {with ROI clip,no Roi clip} variants.


specialized workflow menu


registered EPI lesion overlaid semi-transparent over the T1

Tuesday, July 7, 2015

Removed the redundant "Correct orientation" checkbox from the Register Autofocus 3D dialog box.
Completely removed the 2D mode option from the Register 3D autofocus dialog box, since this function is a standalone at User-level.

Register 4D Autofocus,  "2D Mode" option is now an attribute of the VA_AF4D structure.

Monday, July 6, 2015

Register by DICOM tags only:  implemented an option when user is asked to present result as the new layer or create an entirely new document.
Implemented standalone User-level function "Register AutoFocus3D slice-by-slice"
AutoFocus4D dialog box:  encapsulated the dialog header into the code file and exposed the global function for calling the dialog.
AutoFocus4D registration:  Reduced SliceMode option to  checkbox Mode2D. Moved this option to the MEASURE panel.

Wednesday, July 1, 2015

3D\4D registration and corresponding dialogs - allow individual axis of Autofocus to have separate MaxScale values.  This would allow to address registratios with the individual axis distortion (f.e. dr. Sigmund`s  PET-MR registration problem)
DICOM Open dialog box:  combined 2 buttons for loading 4D volumes into a single  "Load 4D" button.  This replaces "Load Siblings" and "Load Range 4D" buttons.
DicomOpen dialog box: corrected crash when STUDY item is selected and attempted to load.

Tuesday, June 16, 2015

Developed command line interface and *.exe module to access all the functionality of the Dynamic Modelling module.

Monday, June 15, 2015

Provided additional options for deleting Vector ROIs (landmarks).


Added a small "Landmark\Vroi debugging tool".  Under MainMenu>ROI>List All Vector ROIs command.  Would show the list of all landmarks, with their corresponding time intervals and whether they are visible or invisible.


Saturday, June 13, 2015

Restored the Automatic Build Test for the Model (34) "Sokoloff  using long formula"

Friday, June 12, 2015

Update the ABT test for "Sokoloff - short formula model".
For PET processing, added new logic - if user specifies the concentration conversion other than "Signal Values" - information dialog box pops up informing the user.  Then Signal is used for Concentration of Input function
Verified basic operation of the "T1-mapping using inversion recovery" model on the small phantom data.  "Modulus (1)" sub-method was used.
Upgraded the "AATH" to the new optimization approach:  Model calculation are performed by User-specified method.  Residual function estimates in terms of the original signal.


Restored the ABT subtest for this model.


Upgraded the "Modified Tofts model" {Ktrans,Ve,Va} to the new optimization approach:  Model calculation are performed by User-specified method.  Residual function estimates in terms of the original signal.
Restored the ABT subtest for this model.

Thursday, June 11, 2015

Upgraded Tofts model {Ktrans,Ve} to the new optimization approach:  Model calculation are performed by User-specified method.  Residual function estimates in terms of the original signal.
Restored the ABT subtest for this model.


Wednesday, June 10, 2015

Restored the Automatic Build Test for models  {0,1,3}
Dynamic Modelling module "Process ROI as a single TAC" mode:  fixed interesting defect for all the models.  There was some undesirable "double->integer" conversion performed on the averaged ROI TAC.  So there was precision lost 0.5 units of signal on average.  Now fixed and is precise.
IN PROGRESS:   Verifying each individual Dynamic Model to work properly with the new Concentration Conversion mechanism.  Regenerating the ABT dataset
Upgraded APIs (application programming interface) to the Dynamic Experiment library so that  Callback functions for Signal->Concentration and Concentration->Signal are supplied for each model calculation.  This would allow each individual model perform fitting of the data in signal units instead of the concentration units.

Sunday, June 7, 2015

Updated the design and layout of Dynamic Modelling dialog box
The Input Function view panel is removed.  Instead user can see the Input functions by
pressing the View button.  Then panel displaying all the concentration curves will appear.


Thursday, June 4, 2015

Modified and enabled the ViewTac dialog to use the new mechanism of ConcentrationConversion.
Re-engineered the RoiStats4D dialog box. Ensured correct operation with the new Concentration Conversion design.

Wednesday, June 3, 2015

Finished initial implementation of consistent Concentration Conversion models through the entire FireVoxel.  Concentration conversion is now controlled by 2 dialogs:  "Concentration Method" dialog and the "ROI attributes" dialog.

The following dialogs had their User Interface updated:

1) ViewTac dialog
2) RoiStats4D dialog
3) Dynamic Modelling dialog box
4) Layer Control dialog box

Saturday, May 30, 2015

Added a "Tissue Property" attribute to all ROI entities. At the moment this Properties contain only T1 value and will be used in concentration and other calculations.

In the following versions of FireVoxel these Tissue properties will be recorded in the *.fvx file
Implemented a general "Tissue Properties" dialog to be used during the concentration conversion.
New layout and logic of the Concentration Conversion dialog box:



a) All methods are now grouped under the "Method" Combo box




When the specific method is selected, only the relevant fields will be live while others will be grayed and disabled.




Friday, May 29, 2015

New simple redesign of Dynamic Processing dialog:
Note  changes
a) Concentration checkbox is removed from the "Input Function panel"
b) Concentration methods would be extended by a trivial "Use the Curve values" method.
c) Tissue concentration button is added.
d) When the model is selected that does not allow concentration conversion (f.e. PET models), the
concentration button(s) will be greyed.


Wednesday, May 27, 2015

BPD dataset is fully processed (8 normal + 9 bpd).
Below are full BiCal results (average improvement over N3 is    4.42 times with better WM\GM contrast)


Tuesday, May 26, 2015

Corrected the defect for "Save File" operations of any kind:  checking the overwrite of the existing file and warning the user.
RoiStat3D\RoiStat4D dialog:  when the volume without raster or vector ROIs is chosen, temporarily create a whole volume ROI and perform the measurement on it.

Sunday, May 24, 2015

Implemented Non-uniformity layer measurement (Volume+2 blob layers) function feature:  for each slice number of blobs is measured and difference reported if any.  This helps to quickly find the slices where mistakes are made.

Thursday, May 21, 2015

FireVoxel Build 185 is released.
CERENE GFR processing:  When any of the model calculations are activated, the Concentration Conversion dialog box pops up.   By default concentration Method is FWTE.  The TR and Flip angle are entered from DICOM header.  User needs to enter tissue T1 (sec).  AIF (blood) T1 is fixed at the moment and = 1.664 sec.

Monday, May 18, 2015

FireVoxel Build 184 is released.

1. Dialog RoiStats4D:  expanded and corrected functionality so that Raster and Vector ROI could be mixed together. Crash defect on PET-4D is corrected.
2. User Options dialog box: restored proper functioning of the Temp Directory browse button.
3. Removed the "MIDAS-Save" relater options from the User Options dialog box.
4.Upon FireVoxel start, program checks if the "Temporary File folder" specified in User Options configuration file is present.  If it is not present, Temporary file folder is created at default location: ApplicationDirectory:\Temp.
If the above fails, user is advised to reinstall FireVoxel to a different folder or "Run as Administrator" and program terminates.
5. Provided additional system diagnostics when the parametric map files are written.
6. Dynamic Modelling functionlity: moved all the interfacing functions from the main GUI application down to the DLL. This is in preparation to FirevoxelDynamicModellingCurve.exe command line module.
7. NIFTI  Float32 subtype:  enabled the loading.

8. Dialog RoiStats4D: changed the text of the “automatic retile” checkbox.
Dialog RoiStats4D:  expanded and corrected functionality so that Raster and Vector ROI could be mixed together. Crash defect on PET-4D is corrected.
User Options dialog box: restored proper functioning of the Temp Directory browse button.
Removed the "MIDAS-Save" relater options from the User Options dialog box.
Upon FireVoxel start, program checks if the "Temporary File folder" specified in User Options configuration file is present.  If it is not present, Temporary file folder is created at default location:
ApplicationDirectory:\Temp.
If the above fails, user is advised to reinstall FireVoxel to a different folder or "Run as Administrator" and program terminates.
Provided additional system diagnostics when the parametric map files are written.
Dynamic Modelling functionlity: moved all the interfacing functions from the main GUI application down to the DLL. This is in preparation to FirevoxelDynamicModellingCurve.exe command line module.

Wednesday, May 13, 2015

NIFTI  Float32 subtype:  enabled the loading.
AutoFocus registration with the initial transform: restored to working condition.
Fixed the polynomial transform reslicing problem.
VTF file format read: Added the diagnostic to identify if user tries to load the old VTF format which is no longer supported and displays the suggestion to the user.

Tuesday, May 12, 2015

Disabled Huffman compression of large REAL volumes with MaxVoxVal>1M, so for major
speed up in saving and loading.
Incorporated support for ANALYZE 32-bit float files.

Sunday, May 10, 2015

BiCal non-uniformity correction Dialog is further simplified and optimized:

Numerous improvement to BiCal algorithm:
1. parallelization with about 20% further speed up
2. Another 20% NU improvement on BPD dataset

BiCal Non-uniformity correction:  resolved an issue when simply applying Bias Field correction to the Air voxels would amplify the noise.  New algorithm intelligently corrects transition from Air to tissue so the effective field remains smooth. The non-unifomity correction improvement in the tissue is identical for both variants.

Simple Field application makes the noise amplified.
Intelligent processing of Tissue-to-Air transition

Saturday, May 9, 2015

Restore core functionality inside the ROI Wave distance functions based on voxel morphology.

Friday, May 8, 2015

case RE:  difference between "Image matrix center alignment" and "Dicom-tag based alignment"

DICOM tag-based alignment. Complete mismatch of DICOM tags

Image center based alignment, close enough.

Suitable parameters for PET4D-MR4D registration "WITHOUT DICOM alignment"


case RE:   PET4D-MR4D registration

Thursday, May 7, 2015

Coronal artery AIF at 1.2 sec time resolution

Dialog RoiStat4D:  when concentration method change the Curve panel should immediately redraw now to reflect new settings.

Wednesday, May 6, 2015

Kidney AIF experiment: segmentation and concentration from NUFFT.
AIF ROI was automatically sampled using IDIF (~4000 voxels)

Corresponding signal for the AIF

Basic linear Concentration (S/S0-1)  (Conc max = 9.94)

FTWE concentration with actual T1\TR\Flip Angle values  (Conc max=3.50)

Monday, May 4, 2015

Further optimized and streamlined BiCal dialog User interface.  This is the final form for ISMRM.


BiCal: changed the order of  resolution change and NU field application to reduce the blurring of the resulting volume.
a) New result                                             b) Old result

Saturday, May 2, 2015

Various concentration models were compared for the GRASP and NUFFT carotid artery curves.

Both curves were provided as *.txt file in FireVoxel TAC format.  Upon opening FireVoxel (no document present) user choose  "MainMenu>Applications>Convert TAC to Concentration"

After choosing the file name, the ViewTac dialog appears with the original GRASP curve

General Concentration conversion dialog box will appear.  User selects the FTWE concentration model.
The core model is:  S = M0*sin(alpha)* ((1-exp(-TR/T1(c )) / (1-cos(alpha)*exp(-TR/T1(c ))

Optionally (with T2* checkbox) the T2* effect could be accounted for, with the following formula

S = M0*sin(alpha)* ((1-exp(-TR/T1(c )) / (1-cos(alpha)*exp(-TR/T1( c)))*exp(-TE/T2*(c))


We start with loading the Carotid AIF file obtained from GRASP:

original Curve from GRASP

After applying the basic FTWE model we obtain this curve
GRASP FTWE (Max Concentration 0.2944)

 Next we enable the FTWE with the T2* effect
GRASP  FTWE with T2* effect (Max concentration 17.94)


In the next part of the experiment we load with the NUFFT curve.  This AIF was obtained automatically with FireVoxel-IDIF function and the ROI size was about 2000 voxels.

NUFFT original curve

After applying the basic FTWE model we obtain this concentration curve

FTWE model, max Concentration = 1.71
  Next we enable the FTWE with the T2* effect:
FTWE model with T2* effect, max concentration = 19.9




CONCLUSION:
NUFFT with FTWE model seem to provide best result with more realistic concentration values. But further evaluations are required.


Dialog ViewTac implemented numerous fixes including

a) fixed the proper display of MaxSignal and MaxTime fields.
b) Removed "Blood vessel" checkbox.
c) Repaired connection to the "Concentration Method" dialog box.

Friday, May 1, 2015

Dialog "ROI Stats 4D":  upgraded concentration handling to the unified concentration dialog box.


Added the "Load TAC folder" field to the User Options, so the current folder is remembered within and between the sessions.

Thursday, April 30, 2015

FireVoxel Build 182 is released.
CERENE3D menu:  added new variants for kidney registration
{MI-RAD,MI-ENSEMBLE,URALTAU-RAD} for the further investigation of most suitable algorithm.

Wednesday, April 29, 2015

Integrated new URALTAU option into all relevant menus and UI items.
URALTAU registration measure: provided initial SSE-based vectorization code.
Introduced new registration measure URAL-TAU that performs much better on the registration of 3D kidney in abdominal imaging. On the test dataset JM4 it registered without a single gross misregistration, for all strating ROIs.

Monday, April 27, 2015

Integrated "Dicom Load Folder" variable into User Options, so it is remembered within and between the FVX sessions.
IDIF function:  corrected defect and logic bug when user asks to keep only X% of the brightest voxels.

Concentration curve obtained directly from NUFFT dataset (JD)
a) Cortex peak timepoint                                      b) Last timepoint

Difficult case for registration in FLASH sequence.  At the moment a) to b) is not possible to register well.

Thursday, April 23, 2015

Breast EPI-to-VIBE registration on slice-by-slice using 5 landmark method.

User sets 5 landmarks on each slice, using existing easy tool  (3 sec\breast\slice).

Existing function performs Affine of Polynomial (any power) landmark match and transform.
All tools are existing, just need to interface the "landmark curve" with "landmark registration"


Wednesday, April 22, 2015

Build 181 is released.
BiCalSupport.cpp code re-engineering including the change of task construct to parallel_for
Corrected the memory overwrite error in VA_DicomOrientation_ChangeByRotation that was causing the failure of the Volume Rotation function.
Restored the ABT subtest for BiCal.

Tuesday, April 21, 2015

Extended the context-depending Load\Save operations to FVX document so the Directory\Extension\FilterIndex are remembered within the FireVoxel session and saved to the User Options file too.
Reengineered the DICOM loading with timing information.  This was done to correctly load the EPI-4D dataset.  Improved dynamic timepoint information to contain the full time interval for all timepoints.

Monday, April 20, 2015

Corrected the crash Defect on single slice GE Dicom sample.  This was due to recently introduced code handling the VR_DT tag type.

Sunday, April 19, 2015

Implemented context-memory system for saving and loading RAW files so the previously used Folder, extension and File Filter Index would be used.  Settings are saved and loaded to User Options file so they are preserved between FireVoxel sessions.

Friday, April 17, 2015

Implemented the CT-brain trauma batch workflow processing parameters  "Min-Max Number of slices required.
Fully parallelized the "Threshold to ROI" function. This was done in context of testing EdgeWave which contains the "Threshold to ROI".

Thursday, April 16, 2015

Wednesday, April 15, 2015

T1-mapping crash reported on 04/14/2015 is working in Build 179.  I entered the offset  "-4096" in the modelling dialog.
Initial alignment of breast data, using DICOM tags only
PET over MR

EPI over MR
FireVoxel Build 179 is released.

Tuesday, April 14, 2015

WM FLAIR lesions segmentation algorithm: corrected an uninitialized memory error that was resulting in intermittent crash during the execution.
Completely re-engineered internal design of Input Functions in the Dynamic Experiment module.  Remove redundant representation of IFs in the DEMP and FireVoxel modules.
Fixed the defect when the IF was not properly loaded after the IDIF procedure.

Sunday, April 12, 2015

Moved the TempDir option to under   "User Options".   Exposed TempDir under "User Options" dialog.
Removed "Main Menu>File>Set Working Directory" menu item.
Added "Applications>CERENE3D  menu item
Added   "Applications>CERENE3D>Arterial Input function" menu item and parameters specific to CERENE3D workflow.

Thursday, April 9, 2015

Improved and corrected a rare defect in the automatic function for determining the required precision of variables for Cost function used in Amoeba optimization.  Some cost functions were producing an infinite loop along some "degenerated" variables.

Wednesday, April 8, 2015

Implemented fully automatic Cortex-Medulla segmentation from registered 4D kidney.
Notice how accurately collecting system is excluded

Ensemble 4D registration substantially outperforms the "Radial" and "Serial" methods (on kidney 4D FLASH data)

Kidney Mask on the base (anchor) timepoitn

Pre-contrast timepoint registered using Radial

Pre-contrast timepoint registered using Ensemble

Tuesday, April 7, 2015

Fixed a major FireVoxel-wide DICOM error.  When encountering the DICOM tag of VR_TM type, the .Fractions (=microseconds) field was incorrectly converted to string when the number of digits in .Fractions was <6.  Fix was to pad the Fractions with 0s to contain 6 digits corresponding to microseconds.  This might have affected all the 4D volumes.