ITK  5.0.0
Insight Segmentation and Registration Toolkit
itkFFTNormalizedCorrelationImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright Insight Software Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef itkFFTNormalizedCorrelationImageFilter_h
19 #define itkFFTNormalizedCorrelationImageFilter_h
20 
22 
23 namespace itk
24 {
97 
98 template <typename TInputImage, typename TOutputImage >
99 class ITK_TEMPLATE_EXPORT FFTNormalizedCorrelationImageFilter :
100  public MaskedFFTNormalizedCorrelationImageFilter< TInputImage, TOutputImage >
101 {
102 public:
103  ITK_DISALLOW_COPY_AND_ASSIGN(FFTNormalizedCorrelationImageFilter);
104 
110 
112  itkNewMacro(Self);
113 
116 
119  static constexpr unsigned int ImageDimension = TOutputImage::ImageDimension;
120 
122  using InputImageType = TInputImage;
123  using OutputImageType = TOutputImage;
125  using InputImagePointer = typename InputImageType::Pointer;
126  using InputImageConstPointer = typename InputImageType::ConstPointer;
128  using OutputImagePointer = typename OutputImageType::Pointer;
129  using OutputPixelType = typename OutputImageType::PixelType;
130 
131 protected:
133  {
134  Self::RemoveInput("MovingImageMask");
135  Self::RemoveInput("FixedImageMask");
136  }
137  ~FFTNormalizedCorrelationImageFilter() override = default;
138  void PrintSelf(std::ostream& os, Indent indent) const override;
139 
141  void GenerateData() override;
142 
143 private:
144  // Member variables.
145 };
146 } // end namespace itk
147 
148 #ifndef ITK_MANUAL_INSTANTIATION
149 #include "itkFFTNormalizedCorrelationImageFilter.hxx"
150 #endif
151 
152 #endif
typename OutputImageType::Pointer OutputImagePointer
The base class for all process objects (source, filters, mappers) in the Insight data processing pipe...
Calculate normalized cross correlation using FFTs.
Base class for all process objects that output image data.
typename InputImageType::Pointer InputImagePointer
TOutputImage OutputImageType
Control indentation during Print() invocation.
Definition: itkIndent.h:49
Calculate masked normalized cross correlation using FFTs.
typename InputImageType::ConstPointer InputImageConstPointer