[Insight-developers] HessianObjectnessMeasureImageFilter Improvements and MultiScale progress

Luca Antiga luca.antiga at gmail.com
Wed Jun 16 03:49:39 EDT 2010


Hi Brad,
  this is great, thanks for sharing the improvements and ironing out  
the code.
I tested the new version on my data and it runs correctly (same  
output), multi-threaded and with a smaller memory footprint.
I'd say just go ahead and commit, green flag here

Luca

PS: You're right, Hessian3DToVesselnessMeasureImageFilter (Sato's  
vesselness) could undergo the same changes.

On Jun 15, 2010, at 4:16 PM, Bradley Lowekamp wrote:

> Hello,
>
> I just added progress support to  
> MultiScaleHessianBasedMeasureImageFilter and committed it. As this  
> filter is in review and this is a minor feature to add I just went  
> ahead with it. Unfortunately, I was unable to create a test to  
> verify that there is in fact progress as the SimpleFilterWatch never  
> raises an exception with no progress:
>
> http://public.kitware.com/cgi-bin/viewcvs.cgi/Code/Review/itkMultiScaleHessianBasedMeasureImageFilter.txx?root=Insight&r1=1.13&r2=1.14&sortby=date
>
>
> I have all so made some more significant improvements to the  
> HessianObjectnessMeasureImageFilter. These include:
>
> 1) Adding progress
> 2) Multi-threading the computation
> 3) Removing SymmetricEigenAnalysisImageFilter in favor of  
> SysmmetricEigenAnalysis in the multithreaded methods
> 4) Safe guarding when Alpha, Beta, or Gamma are zero by taking the  
> limit of the equations segment. Specifically,
>    a) When Alpha or Gamma are zero then that term becomes 1
>   b) When Beta is zero that term become 0 (actually the whole  
> equation does)
>
> The biggest impact of these changes are a 30% reduction in memory by  
> the removal of the output of the Eigen filter's image. And 10-40%  
> performance improvement from the multithreading, and better cpu  
> utilization. I have attached the modified txx file. (hopefully  
> that's not too big )
>
> These changes should not have an impact on the results of the  
> filter, and I believe are fully backwards compatible. This filter is  
> also in review, so I think is should be ok.
>
> Additionally, Hessian3DToVesselnessMeasureImageFilter looks like it  
> was used to write this class as it's very similar. A similar change  
> could easily be made to this filter to yield the same benefits.  
> Again, I don't think there are any compatibility issues. (unless one  
> relied on no progress or not full CPU utilization ).
>
> Brad
>
>
>
> <itkLocalHessianToObjectnessMeasureImageFilter.txx>
>
> ========================================================
> Bradley Lowekamp
> Lockheed Martin Contractor for
> Office of High Performance Computing and Communications
> National Library of Medicine
> blowekamp at mail.nih.gov
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/mailman/private/insight-developers/attachments/20100616/cece4c07/attachment.htm>


More information about the Insight-developers mailing list