[Insight-developers] disabling boundary checks for shapedneighborhood iterators

Miller, James V (GE, Research) millerjv at crd.ge.com
Fri May 19 09:16:07 EDT 2006


The neighborhood iterators automatically determine whether the
boundary conditions need to be applied or not based on the neighborhood
size and the particular region of the image being iterated. So this method
is not exposed to the user.

The optimizations that employ NeedToUseBoundaryCondition could 
be suboptimal for the shaped neighborhood iterators.  The decisions
are based on whether any part of the (rectangular) neighborhood is outside the 
bounds of the image.  For a shaped neighborhood iterator, it is possible
to an (rectangular) neighborhood that extends outside the image and yet the shape
depicted by that shaped neighborhood is still within the image and 
would not need boundary conditions. 

If you want to place a feature request on the bug tracker, we can look into
whether there are additional optimizations for shaped neighborhood
iterators that can be employed.

Jim


-----Original Message-----
From: insight-developers-bounces+millerjv=crd.ge.com at itk.org
[mailto:insight-developers-bounces+millerjv=crd.ge.com at itk.org]On Behalf
Of Richard Beare
Sent: Friday, May 19, 2006 1:26 AM
To: insight-developers at itk.org
Subject: [Insight-developers] disabling boundary checks for
shapedneighborhood iterators


Hi,

I'm attempting to disable boundary checks for shaped neighborhood
iterators (both constant and non constant iterators). I was attempting
to switch off the checking using NeedToUseBoundaryConditionOff) but
got errors of the sort shown below. Is there another method that
should be used? Is there any reason why we shouldn't be able to
disable the boundary check in this instance?

Thanks

/usr/local/include/InsightToolkit/Common/itkConstNeighborhoodIterator.h:397:
error: `void itk::ConstNeighborhoodIterator<TImage,
TBoundaryCondition>::NeedToUseBoundaryConditionOff() [with TImage =
itk::Image<bool, 3u>, TBoundaryCondition =
itk::ZeroFluxNeumannBoundaryCondition<itk::Image<bool, 3u> >]' is
inaccessible

error: `itk::ConstNeighborhoodIterator<itk::Image<bool, 3u>,
itk::ZeroFluxNeumannBoundaryCondition<itk::Image<bool, 3u> > >' is not
an accessible base of
`itk::ShapedNeighborhoodIterator<itk::Image<bool, 3u>,
itk::ZeroFluxNeumannBoundaryCondition<itk::Image<bool, 3u> > >
_______________________________________________
Insight-developers mailing list
Insight-developers at itk.org
http://www.itk.org/mailman/listinfo/insight-developers


More information about the Insight-developers mailing list