MantisBT - ITK
View Issue Details
0006156ITKpublic2007-12-13 03:542010-10-21 12:32
lucantiga 
lucantiga 
normalfeaturealways
closedfixed 
 
 
0006156: Level sets filters should be extended to anisotropic spacings. Right now, concept checking should be added.
The level sets framework, and in general any class derived from itk::SparseFieldLevelSetImageFilter, assumes spacing is isotropic.
The difficulty resides:
1) in the way the mutual location of the tracked zero-level set and the active layer in the sparse field is computed
2) in how upwind and centered gradients are computed internally (and in methods of related classes, like itk::SegmentationLevelSetFunction::AdvectionField)
This limitation should be removed, taking particular care at how layers in the sparse field are handled.

For the
No tags attached.
Issue History
2007-12-13 03:54lucantigaNew Issue
2007-12-13 04:00lucantigaNote Added: 0009866
2008-01-18 13:31Luis IbanezNote Added: 0010194
2008-01-21 08:48Luis IbanezNote Added: 0010202
2008-01-21 09:56Luis IbanezStatusnew => assigned
2008-01-21 09:56Luis IbanezAssigned To => lucantiga
2008-03-03 09:03lucantigaNote Added: 0010692
2008-03-03 09:03lucantigaStatusassigned => resolved
2008-03-03 09:03lucantigaResolutionopen => fixed
2010-10-21 12:32Gabe HartStatusresolved => closed

Notes
(0009866)
lucantiga   
2007-12-13 04:00   
Please ignore the second part of the subject (concept checking should be added), as I inadvertently submitted the bug before I was done with it.
I meant "add more control on isotropic spacing", but it clearly can't be done compile-time.
(0010194)
Luis Ibanez   
2008-01-18 13:31   
1) Document this behavior
2) In order to fix it we will have to add a run-time flag so that backward compatibility is ensured.
3) Concept checking can't help here, since spacing is only known at run-time
(0010202)
Luis Ibanez   
2008-01-21 08:48   
Luca volunteered to fix this problem.
(0010692)
lucantiga   
2008-03-03 09:03   
The issue has been fixed.
Support for isotropic and anisotropic image spacings has been added to all level sets functions and filters, including serial and parallel sparse field level sets and CurvatureFlowFunction.
The new functionality can be activated with UseImageSpacingOn.
A fudge factor used for surface interpolation in SparseFieldLevelSetImageFilter has been removed.
The baseline image for VectorThresholdSegmentationLevelSetImageFilterTest has been replaced, as the baseline result was influenced by the fudge factor.