[Insight-developers] RequestedRegion are modified when calling itk filters

Luis Ibanez luis.ibanez at kitware.com
Tue Mar 14 14:53:49 EST 2006


Hi Arnaud,

The Recursive Gaussian image filter needs the entire image as
input because it is implemented using IIR separable filters.

IIR filters have infinite support and therefore cannot be
computed using pieces of the image.  A better understanding
of this implementation can be gained by looking at how it
is expressed in the Z transform space.


You may want to read the report by Rachid Deriche:

"Recursively Implementing The Gaussian and Its Derivatives",
INRIA, 1993,
ftp://ftp.inria.fr/INRIA/tech-reports/RR/RR-1893.ps.gz


Where these filters were originally proposed.




    Regards,



        Luis


------------------------
Karthik Krishnan wrote:
> 
> 
> Arnaud Garcia wrote:
> 
>> Hi itk developers,
>>
>> It seems that most itk filters change the RequestedRegion when calling 
>> them ...
>> Some filters overide  the GenerateInputRequestedRegion with  something 
>> like:
>>
>> SetRequestedRegion( input->GetLargestPossibleRegion() );
>>
>>
>>
>> => So if you set your requested region and call such filters you have 
>> to set it again after calling theses filters ...
>>
>> is it right ?
>>
> Yes. This is the expected behaviour since if you use such a filter in a 
> pipeline and the filter needs the whole input to process, it must make 
> such a request to those filters on its upstream. That said, such a 
> request will not be propagated downstream. For instance if you use
> 
> A --> B --> C
> and B needs the whole input to process.
> 
> C->SetRequestedRegion( ... )
> C->Update();
> 
> This should set the requested regions of A's input and B's input to the 
> whole image, but C's input's requested region should stay unchanged.
> 
> That said, there are a good number of filters that require the whole 
> input to process, either because they do, or in some cases the filter is 
> not well written to handle them.
> 
> For instance RecursiveSeparableGaussianFilter: I am not sure why the 
> filter must make an assumption that it requires the entire input. It 
> doesn't sound reasonable. Maybe the others have something to say about it.
> 
> -karthik
> 
>> thanks for answer,
>>
>> Arnaud
>>
>> _______________________________________________
>> Insight-developers mailing list
>> Insight-developers at itk.org
>> http://www.itk.org/mailman/listinfo/insight-developers
>>
> _______________________________________________
> 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