SimpleITK  
sitkInvertDisplacementFieldImageFilter.h
Go to the documentation of this file.
1/*=========================================================================
2*
3* Copyright NumFOCUS
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 sitkInvertDisplacementFieldImageFilter_h
19#define sitkInvertDisplacementFieldImageFilter_h
20
21/*
22 * WARNING: DO NOT EDIT THIS FILE!
23 * THIS FILE IS AUTOMATICALLY GENERATED BY THE SIMPLEITK BUILD PROCESS.
24 * Please look at sitkImageFilterTemplate.h.in to make changes.
25 */
26
27#include <memory>
28
29#include "sitkBasicFilters.h"
30#include "sitkImageFilter.h"
31
32namespace itk::simple {
33
45 public:
47
50
54
57\
58
61 SITK_RETURN_SELF_TYPE_HEADER SetMaximumNumberOfIterations ( uint32_t MaximumNumberOfIterations ) { this->m_MaximumNumberOfIterations = MaximumNumberOfIterations; return *this; }
62
66
69 SITK_RETURN_SELF_TYPE_HEADER SetMaxErrorToleranceThreshold ( double MaxErrorToleranceThreshold ) { this->m_MaxErrorToleranceThreshold = MaxErrorToleranceThreshold; return *this; }
70
74
77 SITK_RETURN_SELF_TYPE_HEADER SetMeanErrorToleranceThreshold ( double MeanErrorToleranceThreshold ) { this->m_MeanErrorToleranceThreshold = MeanErrorToleranceThreshold; return *this; }
78
82
85 SITK_RETURN_SELF_TYPE_HEADER SetEnforceBoundaryCondition ( bool EnforceBoundaryCondition ) { this->m_EnforceBoundaryCondition = EnforceBoundaryCondition; return *this; }
86
88 SITK_RETURN_SELF_TYPE_HEADER EnforceBoundaryConditionOn() { return this->SetEnforceBoundaryCondition(true); }
89 SITK_RETURN_SELF_TYPE_HEADER EnforceBoundaryConditionOff() { return this->SetEnforceBoundaryCondition(false); }
90
100 double GetMaxErrorNorm() const { return this->m_MaxErrorNorm; };
101
108 double GetMeanErrorNorm() const { return this->m_MeanErrorNorm; };
109
110
112 std::string GetName() const { return std::string ("InvertDisplacementFieldImageFilter"); }
113
115 std::string ToString() const;
116
117
119
120 Image Execute ( const Image& image1 );
121
122 private:
123
125
126 using MemberFunctionType = Image (Self::*)( const Image& image1 );
127 template <class TImageType> Image ExecuteInternal ( const Image& image1 );
128
129
131
132 std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
133
134
135 /* Number of iterations to run */
137
139
141
143
144
145 double m_MaxErrorNorm{0.0};
146
147 double m_MeanErrorNorm{0.0};
148
149
150 };
151
161
162 SITKBasicFilters_EXPORT Image InvertDisplacementField ( const Image& image1, uint32_t maximumNumberOfIterations = 10u, double maxErrorToleranceThreshold = 0.1, double meanErrorToleranceThreshold = 0.001, bool enforceBoundaryCondition = true );
163
165}
166#endif
The Image class for SimpleITK.
Definition sitkImage.h:77
Self & SetMaxErrorToleranceThreshold(double MaxErrorToleranceThreshold)
Self & SetMaximumNumberOfIterations(uint32_t MaximumNumberOfIterations)
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Self & SetMeanErrorToleranceThreshold(double MeanErrorToleranceThreshold)
Image InvertDisplacementField(const Image &image1, uint32_t maximumNumberOfIterations=10u, double maxErrorToleranceThreshold=0.1, double meanErrorToleranceThreshold=0.001, bool enforceBoundaryCondition=true)
Iteratively estimate the inverse field of a displacement field.
typelist2::typelist< VectorPixelID< float >, VectorPixelID< double > > RealVectorPixelIDTypeList
#define SITKBasicFilters_EXPORT