[Insight-users] GradientImageFilter and 8 bits 3D images

Yannick Pannier pannier at lms.polytechnique.fr
Wed Sep 26 05:52:04 EDT 2007


Dear Insight-users,

1. I'm trying to compute the 3 gradient components of a 8-bits 3d image, 
with the lower memory consumption as possible.
I've used GradientImageFilter with TInputImagetype = itk::Image<unsigned 
char, 3>,
I'v tried several combination of types for the 2 last parameters of 
GradientImageFilter :
TOperatorValueType = float, + TOutputValueType = signed short
TOperatorValueType = signed short, + TOutputValueType = signed short
TOperatorValueType = float, + TOutputValueType = signed char
TOperatorValueType = signed char, + TOutputValueType = signed char
compilation ok, but all lead to zero value for every components of the 
covariant vectors !
Does anyone kow why ?
ps : TOperatorValueType = float, + TOutputValueType = float, lead to 
good result, but datafile and memory consumption are too large.

2. I've also tried to convert itk::Image<CovariantVector<float,3>,3> to :
itk::Image<CovariantVector<signed short,3>,3>
or itk::Image<CovariantVector<signed char,3>,3>
or itk::Image<CovariantVector<unsigned char,3>,3>
with itk::ShiftScaleImageFilter or itk::RescaleIntensityImageFilter but 
it seems at compilation that these filters are not templated for this 
type of conversion.
Is it true ?

Does Anyone have a solution to compute gradients components with the 
lowest memory consumption.

Thanks a lot,

Yannick



More information about the Insight-users mailing list