https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&feed=atom&action=history
ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter - Revision history
2024-03-29T14:48:20Z
Revision history for this page on the wiki
MediaWiki 1.38.6
https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=63425&oldid=prev
Mathew-seng: Deprecated content that is moved to sphinx
2019-06-04T21:54:01Z
<p>Deprecated content that is moved to sphinx</p>
<a href="https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=63425&oldid=58065">Show changes</a>
Mathew-seng
https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=58065&oldid=prev
Lorensen: Main signature
2015-07-14T16:54:26Z
<p>Main signature</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 16:54, 14 July 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l13">Line 13:</td>
<td colspan="2" class="diff-lineno">Line 13:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>#include <string></div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>#include <string></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">namespace</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">{</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<unsigned char, 2> ImageType;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<unsigned char, 2> ImageType;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<float, 2> FloatImageType;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<float, 2> FloatImageType;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<unsigned char, 2> MaskType;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<unsigned char, 2> MaskType;</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">}</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>static void CreateMask(MaskType* const mask);</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>static void CreateMask(MaskType* const mask);</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del style="font-weight: bold; text-decoration: none;"></del></div></td><td colspan="2" class="diff-side-added"></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>static void CreateImage(ImageType::Pointer image, const itk::Index<2>& cornerOfSquare);</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>static void CreateImage(ImageType::Pointer image, const itk::Index<2>& cornerOfSquare);</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l24">Line 24:</td>
<td colspan="2" class="diff-lineno">Line 26:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>void WriteImage(TImage* const image, const std::string& filename);</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>void WriteImage(TImage* const image, const std::string& filename);</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>int main(int <del style="font-weight: bold; text-decoration: none;">argc</del>, char *<del style="font-weight: bold; text-decoration: none;">argv</del>[])</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>int main(int, char *[])</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> itk::Index<2> offset;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> itk::Index<2> offset;</div></td></tr>
</table>
Lorensen
https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=50777&oldid=prev
Lorensen at 15:20, 24 December 2012
2012-12-24T15:20:55Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 15:20, 24 December 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l166">Line 166:</td>
<td colspan="2" class="diff-lineno">Line 166:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div></source></div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div></source></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>{{<del style="font-weight: bold; text-decoration: none;">ITKVTKCMakeLists|MaskedFFTNormalizedCorrelationImageFilter</del>|}}</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>{{<ins style="font-weight: bold; text-decoration: none;">ITKCMakeLists</ins>|<ins style="font-weight: bold; text-decoration: none;">{{SUBPAGENAME}}</ins>}}</div></td></tr>
</table>
Lorensen
https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=49029&oldid=prev
Daviddoria: Fix type of constants.
2012-10-19T13:14:12Z
<p>Fix type of constants.</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 13:14, 19 October 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l103">Line 103:</td>
<td colspan="2" class="diff-lineno">Line 103:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> itk::ImageRegionIterator<ImageType> imageIterator(image,region);</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> itk::ImageRegionIterator<ImageType> imageIterator(image,region);</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> <del style="font-weight: bold; text-decoration: none;">unsigned int </del>squareSize = 8;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> <ins style="font-weight: bold; text-decoration: none;">ImageType::IndexValueType </ins>squareSize = 8;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> while(!imageIterator.IsAtEnd())</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> while(!imageIterator.IsAtEnd())</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l143">Line 143:</td>
<td colspan="2" class="diff-lineno">Line 143:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> //unsigned int squareSize = 8;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> //unsigned int squareSize = 8;</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> <del style="font-weight: bold; text-decoration: none;">unsigned int </del>squareSize = 3;</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> <ins style="font-weight: bold; text-decoration: none;">ImageType::IndexValueType </ins>squareSize = 3;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> itk::Index<2> cornerOfSquare = {{3,8}};</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> itk::Index<2> cornerOfSquare = {{3,8}};</div></td></tr>
</table>
Daviddoria
https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=48243&oldid=prev
Lorensen: Procedures should be static to avoid multiple defs in tests.
2012-06-28T12:14:33Z
<p>Procedures should be static to avoid multiple defs in tests.</p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:14, 28 June 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l17">Line 17:</td>
<td colspan="2" class="diff-lineno">Line 17:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<unsigned char, 2> MaskType;</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>typedef itk::Image<unsigned char, 2> MaskType;</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>void CreateMask(MaskType* const mask);</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">static </ins>void CreateMask(MaskType* const mask);</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>void CreateImage(ImageType::Pointer image, const itk::Index<2>& cornerOfSquare);</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">static </ins>void CreateImage(ImageType::Pointer image, const itk::Index<2>& cornerOfSquare);</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>template <typename TImage></div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>template <typename TImage></div></td></tr>
</table>
Lorensen
https://public.kitware.com/Wiki/index.php?title=ITK/Examples/Images/MaskedFFTNormalizedCorrelationImageFilter&diff=48226&oldid=prev
Daviddoria: Created page with "==MaskedFFTNormalizedCorrelationImageFilter.cxx== <source lang="cpp"> #include "itkImage.h" #include "itkImageFileReader.h" #include "itkFFTNormalizedCorrelationImageFilter.h" #i..."
2012-06-26T18:05:28Z
<p>Created page with "==MaskedFFTNormalizedCorrelationImageFilter.cxx== <source lang="cpp"> #include "itkImage.h" #include "itkImageFileReader.h" #include "itkFFTNormalizedCorrelationImageFilter.h" #i..."</p>
<p><b>New page</b></p><div>==MaskedFFTNormalizedCorrelationImageFilter.cxx==<br />
<source lang="cpp"><br />
#include "itkImage.h"<br />
#include "itkImageFileReader.h"<br />
#include "itkFFTNormalizedCorrelationImageFilter.h"<br />
#include "itkRegionOfInterestImageFilter.h"<br />
#include "itkImageKernelOperator.h"<br />
#include "itkRescaleIntensityImageFilter.h"<br />
#include "itkImageFileWriter.h"<br />
#include "itkMinimumMaximumImageCalculator.h"<br />
<br />
#include <iostream><br />
#include <string><br />
<br />
typedef itk::Image<unsigned char, 2> ImageType;<br />
typedef itk::Image<float, 2> FloatImageType;<br />
typedef itk::Image<unsigned char, 2> MaskType;<br />
<br />
void CreateMask(MaskType* const mask);<br />
<br />
void CreateImage(ImageType::Pointer image, const itk::Index<2>& cornerOfSquare);<br />
<br />
template <typename TImage><br />
void WriteImage(TImage* const image, const std::string& filename);<br />
<br />
int main(int argc, char *argv[])<br />
{<br />
itk::Index<2> offset;<br />
offset[0] = 5;<br />
offset[1] = 6;<br />
<br />
// Setup mask<br />
MaskType::Pointer mask = MaskType::New();<br />
CreateMask(mask);<br />
<br />
ImageType::Pointer fixedImage = ImageType::New();<br />
itk::Index<2> cornerOfFixedSquare;<br />
cornerOfFixedSquare[0] = 3;<br />
cornerOfFixedSquare[1] = 8;<br />
CreateImage(fixedImage, cornerOfFixedSquare);<br />
WriteImage(fixedImage.GetPointer(), "fixedImage.png");<br />
<br />
ImageType::Pointer movingImage = ImageType::New();<br />
itk::Index<2> cornerOfMovingSquare;<br />
cornerOfMovingSquare[0] = cornerOfFixedSquare[0] + offset[0];<br />
cornerOfMovingSquare[1] = cornerOfFixedSquare[1] + offset[1];<br />
CreateImage(movingImage, cornerOfMovingSquare);<br />
WriteImage(movingImage.GetPointer(), "movingImage.png");<br />
<br />
// Perform normalized correlation<br />
typedef itk::FFTNormalizedCorrelationImageFilter<ImageType, FloatImageType> CorrelationFilterType;<br />
CorrelationFilterType::Pointer correlationFilter = CorrelationFilterType::New();<br />
correlationFilter->SetFixedImage(fixedImage);<br />
correlationFilter->SetMovingImage(movingImage);<br />
correlationFilter->SetMovingImageMask(mask);<br />
//correlationFilter->SetFixedImageMask(mask);<br />
correlationFilter->Update();<br />
<br />
WriteImage(correlationFilter->GetOutput(), "correlation.mha");<br />
<br />
typedef itk::RescaleIntensityImageFilter<FloatImageType, ImageType> RescaleFilterType;<br />
RescaleFilterType::Pointer rescaleFilter = RescaleFilterType::New();<br />
rescaleFilter->SetInput(correlationFilter->GetOutput());<br />
rescaleFilter->SetOutputMinimum(0);<br />
rescaleFilter->SetOutputMaximum(255);<br />
rescaleFilter->Update();<br />
WriteImage(rescaleFilter->GetOutput(), "correlation.png");<br />
<br />
typedef itk::MinimumMaximumImageCalculator<FloatImageType> MinimumMaximumImageCalculatorType;<br />
MinimumMaximumImageCalculatorType::Pointer minimumMaximumImageCalculatorFilter = MinimumMaximumImageCalculatorType::New ();<br />
minimumMaximumImageCalculatorFilter->SetImage(correlationFilter->GetOutput());<br />
minimumMaximumImageCalculatorFilter->Compute();<br />
<br />
itk::Index<2> maximumCorrelationPatchCenter = minimumMaximumImageCalculatorFilter->GetIndexOfMaximum();<br />
<br />
itk::Size<2> outputSize = correlationFilter->GetOutput()->GetLargestPossibleRegion().GetSize();<br />
<br />
itk::Index<2> maximumCorrelationPatchCenterFixed;<br />
maximumCorrelationPatchCenterFixed[0] = outputSize[0]/2 - maximumCorrelationPatchCenter[0];<br />
maximumCorrelationPatchCenterFixed[1] = outputSize[1]/2 - maximumCorrelationPatchCenter[1];<br />
<br />
std::cout << "Maximum location: " << maximumCorrelationPatchCenter << std::endl;<br />
std::cout << "Maximum location fixed: " << maximumCorrelationPatchCenterFixed << std::endl; // This is the value we expect!<br />
std::cout << "Maximum value: " << minimumMaximumImageCalculatorFilter->GetMaximum() << std::endl; // If the images can be perfectly aligned, the value is 1<br />
<br />
return EXIT_SUCCESS;<br />
}<br />
<br />
void CreateImage(ImageType::Pointer image, const itk::Index<2>& cornerOfSquare)<br />
{<br />
ImageType::IndexType start;<br />
start.Fill(0);<br />
<br />
ImageType::SizeType size;<br />
size.Fill(51);<br />
<br />
ImageType::RegionType region(start,size);<br />
<br />
image->SetRegions(region);<br />
image->Allocate();<br />
image->FillBuffer(0);<br />
<br />
itk::ImageRegionIterator<ImageType> imageIterator(image,region);<br />
<br />
unsigned int squareSize = 8;<br />
<br />
while(!imageIterator.IsAtEnd())<br />
{<br />
if(imageIterator.GetIndex()[0] > cornerOfSquare[0] && imageIterator.GetIndex()[0] < cornerOfSquare[0] + squareSize &&<br />
imageIterator.GetIndex()[1] > cornerOfSquare[1] && imageIterator.GetIndex()[1] < cornerOfSquare[1] + squareSize)<br />
{<br />
imageIterator.Set(255);<br />
}<br />
<br />
++imageIterator;<br />
}<br />
}<br />
<br />
template <typename TImage><br />
void WriteImage(TImage* const image, const std::string& filename)<br />
{<br />
typedef itk::ImageFileWriter<TImage> WriterType;<br />
typename WriterType::Pointer writer = WriterType::New();<br />
writer->SetFileName(filename);<br />
writer->SetInput(image);<br />
writer->Update();<br />
}<br />
<br />
<br />
void CreateMask(MaskType* const mask)<br />
{<br />
ImageType::IndexType start;<br />
start.Fill(0);<br />
<br />
ImageType::SizeType size;<br />
size.Fill(51);<br />
<br />
ImageType::RegionType region(start,size);<br />
<br />
mask->SetRegions(region);<br />
mask->Allocate();<br />
mask->FillBuffer(255); // Make the whole mask "valid"<br />
<br />
//unsigned int squareSize = 8;<br />
unsigned int squareSize = 3;<br />
<br />
itk::Index<2> cornerOfSquare = {{3,8}};<br />
<br />
// Remove pixels from the mask in a small square. The correlationw will not be computed at these pixels.<br />
itk::ImageRegionIterator<MaskType> maskIterator(mask, region);<br />
<br />
while(!maskIterator.IsAtEnd())<br />
{<br />
if(maskIterator.GetIndex()[0] > cornerOfSquare[0] &&<br />
maskIterator.GetIndex()[0] < cornerOfSquare[0] + squareSize &&<br />
maskIterator.GetIndex()[1] > cornerOfSquare[1] &&<br />
maskIterator.GetIndex()[1] < cornerOfSquare[1] + squareSize)<br />
{<br />
maskIterator.Set(0);<br />
}<br />
<br />
++maskIterator;<br />
}<br />
}<br />
<br />
</source><br />
<br />
{{ITKVTKCMakeLists|MaskedFFTNormalizedCorrelationImageFilter|}}</div>
Daviddoria