Search This Blog

Wednesday, October 9, 2013

Wrapping up new Mutual Info binning interface and underlying logic.

Presently, code is ready, debugging...

Monday, October 7, 2013

Enabling registration of REAL volumes using Mutual Information measure.  Presently the code is only working for 16-bit volumes (that was used to show PET->MPRAGE prototype).  Solution is to convert to 16-bit correctly while binning the voxel values for the MI.

This is also strongly related to a proper binning for REAL volumes, so it is addressed at the same time along with the corresponding binning interface (Sturges formula) in the registration dialogs.

Finished the parallel variant of Amoeba optimization with x4.5 speed improvement for Rigid transform (bigger gains for higher degree transforms).  See below before and after timing for a single timepoint PET to MPRAGE registration. 
Implemented the Mead-Nedler (simplex\Amoeba) optimization algorithm MDS (multi-direction search) variant.  This is inherently parallel algorithm, presently verified working in the serial workflow.
Presently: inserting parallel instructions to fully utilize MDS parallelism.

Friday, October 4, 2013

Optimizing  full workflow of Mutual Information registration while ensuring the ABT works correctly.

Thursday, October 3, 2013

Implementing a Parallel variant of   Neadler-Mead simplex method. Found here:

Lewis (2004)



This would universally speed up all the Registrations and any other functions using this iterative optimization.  Also, it will make it much easier to program as there would be less pressure to parallelize each Cost Function calculation, as it would be universally handled by the caller, i.e. Simplex Method.

Wednesday, October 2, 2013

Implemented averaging function for Signal Intensity and Real-valued volumes.
User specifies the Time Index interval for averaging. Resulting REAL valued
volume is overlaid on top of the original 4D.