Search This Blog
Thursday, October 31, 2013
Wednesday, October 30, 2013
Automatic Build substest for "Registration with Initial transform" is crashing.
Fixed an intermittent error in the core Registration procedure, when registration image padding was calculated based on the URAL radius, while that radius was undefined due to the different registration measure used (i.e. non-URAL, f.e. MI etc)
Fixed an intermittent error in the core Registration procedure, when registration image padding was calculated based on the URAL radius, while that radius was undefined due to the different registration measure used (i.e. non-URAL, f.e. MI etc)
Tuesday, October 29, 2013
Monday, October 28, 2013
Sunday, October 27, 2013
Saturday, October 26, 2013
Friday, October 25, 2013
Wednesday, October 23, 2013
Tuesday, October 22, 2013
Monday, October 21, 2013
Sunday, October 20, 2013
Saturday, October 19, 2013
Fully finished the PET->Anatomy registration workflow with full integrated User Interface. In this experiment a 344x344x128 volume with 203 timepoints (original DICOM is 5.83 GB).
It was registered to the MPRAGE with 256x256x160.
Two registration modes were used:
Quick (Nearest neighbor final result), total time 79 sec, combined registered (PET+MRI) file = 496 MB.
Regular (Linear interpolation), total time 217 seconds, combined registered (PET+MRI) file = 653 MB.
It was registered to the MPRAGE with 256x256x160.
Two registration modes were used:
Quick (Nearest neighbor final result), total time 79 sec, combined registered (PET+MRI) file = 496 MB.
Regular (Linear interpolation), total time 217 seconds, combined registered (PET+MRI) file = 653 MB.
Friday, October 18, 2013
Thursday, October 17, 2013
This was investigated and postponed due to a very large changes required:
Major design improvement : Multiresolution Multilayer volmetric entities.
Since the beginning of FireVoxel, only volumes of the same voxel count and size are allowed to be combined in the Multilayerr volumetric entities.
New design relaxes this requirement, by demanding ONLY the physical dimensions of the layers to match so they can be combined into Multilayer volumetric entities.
Motivation: one of the important issues is the presentation of the Registration results. In 4D PET to MPRAGE registration, we desire to keep the dimensions of the MPRAGE intact. But reformatting 220-timepoint PET volume to MPRAGE dimensions leads to multi-GByte volumes. Solution is to keep registration results at the resolution close to original, while able to overlay it over the higher resolution target.
There are other applications of this. If I am not mistaken, we were considering registering the prostate DCE exam to biopsy that have a much higher resolution. It is a similar problem with the size of the registered source.
In short, we want to be able overlay registration result without the explosive and redundant data increase.
It is approached pragmatically, i.e. only currently used workflows would be modified and verified. We will adjust other multilayer functionality as we go. The biggest task and modification of the UI that I foresee is the Vector ROI issues, its dialog etc.
Wednesday, October 16, 2013
Fixed very important defect: it manifested as a "randomly jumping" vector ROI, when user pulls one the vector ROI handles, quite often the ROI corner would jump to position entirely different from the mouse cursor position.
Fix: modified the VoxelInfo function, that is updating the status line when the mouse cursor moves. Specifically call to DoEvents() (Windows function for updating the application window events) was eliminated.
Fix: modified the VoxelInfo function, that is updating the status line when the mouse cursor moves. Specifically call to DoEvents() (Windows function for updating the application window events) was eliminated.
Tuesday, October 15, 2013
Sunday, October 13, 2013
Fast loading of the native *.FVX file: 98% of time is spent in DCMTK::FindTagName function.
After call parallelization, interestingly, execution time has doubled. Looking into resolving this to achieve "more instant" load. Presently it is about 10 sec for 300,000 slice volume.
Result: "Native" loading of the original DICOM 5.6GB dataset is now 0.7 sec.
After call parallelization, interestingly, execution time has doubled. Looking into resolving this to achieve "more instant" load. Presently it is about 10 sec for 300,000 slice volume.
Result: "Native" loading of the original DICOM 5.6GB dataset is now 0.7 sec.
Friday, October 11, 2013
Had a meeting today with Yu-Shin:
1. Demonstrated new and improved registration of 4D PET->MPRAGE but only for a low timepoint count.
2. For some reason the 202-timepoint PET registration failed, so I am troubleshooting that now.
3. More FireVoxel general fuctionality was demonstrated and explained.
4. Details of integrated Registration workflow were discussed, so the cropping, orientation change and registration are combined into a single operation.
1. Demonstrated new and improved registration of 4D PET->MPRAGE but only for a low timepoint count.
2. For some reason the 202-timepoint PET registration failed, so I am troubleshooting that now.
3. More FireVoxel general fuctionality was demonstrated and explained.
4. Details of integrated Registration workflow were discussed, so the cropping, orientation change and registration are combined into a single operation.
Correcting the logic of automatically finding an optimal window\center for displaying the image for all kinds of volumes (i.e. Real and Integer). Problem is in 4D cases, only the 1st timepoint is evaluated to reduce the processing time. But first or any other timepoint might contain almost no signals thus leading to a non-sense settings and strangely displayed volume.
Thursday, October 10, 2013
Fixed defect: when any type volume is displayed, if user presses ViewFilter for this volume, there is a fairly long wait and the "Compute Histogram" message is displayed.
This was fixed by removing Histogram recalculation and instead using compressed block header access without decompressing the blocks themselvves to find maximal voxel value of the volume.
This was fixed by removing Histogram recalculation and instead using compressed block header access without decompressing the blocks themselvves to find maximal voxel value of the volume.
Subscribe to:
Posts (Atom)







