Hi everyone,<div><br></div><div>I'm new to ITK. </div><div><br></div><div>I'm implementing a block matching algorithm by using a template and a floating image; this block matching algorithm makes use of weighted normalized cross-correlation, which works pretty much the same as a conventional normalized cross-correlation with the exception that for each location of the template both template and the corresponding region of the floating image are multiplied by a gaussian kernel (of the same size as the template) thus giving a higher weight to central elements than peripheral ones.</div>
<div><br></div><div>I've already implemented this algorithm in Matlab and I was wondering how can this be done in ITK. Looking at the documentation and the examples I found these approaches:</div><div><br></div><div>- itkNormalizedCorrelationImageFilter (<a href="http://www.itk.org/Wiki/ITK/Examples/Images/NormalizedCorrelationImageFilter">http://www.itk.org/Wiki/ITK/Examples/Images/NormalizedCorrelationImageFilter</a>): this filter allows for the computation of NCC. </div>
<div><br></div><div>- itkMaskedFFTNormalizedCorrelationImageFilter: as stated on the documentation it "Calculates masked normalized cross correlation using FFTs". The filter requires one fixedImage and one movingImage with a corresponding pair of fixedMask and movingMask masks. However,each pair of image-mask must have the same size (contrary to weighted NCC, where the same gaussian mask is used for computation)</div>
<div><br></div><div>So I think I'll try to use itkNormalizedCorrelationImageFilter. My question is: can weighted NCC be computed using this class? Can I use the method SetMaskImage to compute the weighted correlation?</div>
<div><br></div><div>Thanks for any suggestions.</div><div><br></div><div>Miguel Sotaquira</div><div>PhD student</div><div>Biomedical Eng. Department, Politecnico di Milano</div><div>Milan (IT)</div>