SimpleITK  
sitkSTAPLEImageFilter.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 sitkSTAPLEImageFilter_h
19 #define sitkSTAPLEImageFilter_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 sitkMultiInputImageFilterTemplate.h.in to make changes.
25  */
26 
27 #include <memory>
28 
29 #include "sitkBasicFilters.h"
30 #include "sitkImageFilter.h"
31 
32 namespace itk::simple {
33 
77  : public ImageFilter
78  {
79  public:
81 
83  virtual ~STAPLEImageFilter();
84 
85 
89 
92 
93 
94 \
95 
99  SITK_RETURN_SELF_TYPE_HEADER SetConfidenceWeight ( double ConfidenceWeight ) { this->m_ConfidenceWeight = ConfidenceWeight; return *this; }
100 
104  double GetConfidenceWeight() const { return this->m_ConfidenceWeight; }\
105 
109  SITK_RETURN_SELF_TYPE_HEADER SetForegroundValue ( double ForegroundValue ) { this->m_ForegroundValue = ForegroundValue; return *this; }
110 
114  double GetForegroundValue() const { return this->m_ForegroundValue; }\
115 
119  SITK_RETURN_SELF_TYPE_HEADER SetMaximumIterations ( unsigned int MaximumIterations ) { this->m_MaximumIterations = MaximumIterations; return *this; }
120 
124  unsigned int GetMaximumIterations() const { return this->m_MaximumIterations; }
131  uint32_t GetElapsedIterations() const { return this->m_ElapsedIterations; };
132 
139  std::vector<double> GetSensitivity() const { return this->m_Sensitivity; };
140 
147  std::vector<double> GetSpecificity () const { return this->m_Specificity ; };
148 
149 
151  std::string GetName() const { return std::string ("STAPLEImageFilter"); }
152 
154  std::string ToString() const;
155 
157  Image Execute ( const std::vector<Image> &images);
158  Image Execute ( const Image& image1 );
159  Image Execute ( const Image& image1, const Image& image2 );
160  Image Execute ( const Image& image1, const Image& image2, const Image& image3 );
161  Image Execute ( const Image& image1, const Image& image2, const Image& image3, const Image& image4 );
162  Image Execute ( const Image& image1, const Image& image2, const Image& image3, const Image& image4, const Image& image5 );
163 
164 
165 
166 
167  private:
168 
171  using MemberFunctionType = Image (Self::*)( const std::vector<Image> & );
172  template <class TImageType> Image ExecuteInternal ( const std::vector<Image> &images );
173 
174 
175 
177 
178  std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
179 
180 
181  double m_ConfidenceWeight{1.0};
182 
183  double m_ForegroundValue{1.0};
184 
185  unsigned int m_MaximumIterations{std::numeric_limits<unsigned int>::max()};
186 
187 
188  uint32_t m_ElapsedIterations{0};
189 
190  std::vector<double> m_Sensitivity{std::vector<double>()};
191 
192  std::vector<double> m_Specificity {std::vector<double>()};
193 
194 
195  };
196 
197 
207  SITKBasicFilters_EXPORT Image STAPLE ( const std::vector<Image> &images , double confidenceWeight = 1.0, double foregroundValue = 1.0, unsigned int maximumIterations = std::numeric_limits<unsigned int>::max() );
208 
209  SITKBasicFilters_EXPORT Image STAPLE ( const Image& image1, double confidenceWeight = 1.0, double foregroundValue = 1.0, unsigned int maximumIterations = std::numeric_limits<unsigned int>::max() );
210  SITKBasicFilters_EXPORT Image STAPLE ( const Image& image1, const Image& image2, double confidenceWeight = 1.0, double foregroundValue = 1.0, unsigned int maximumIterations = std::numeric_limits<unsigned int>::max() );
211  SITKBasicFilters_EXPORT Image STAPLE ( const Image& image1, const Image& image2, const Image& image3, double confidenceWeight = 1.0, double foregroundValue = 1.0, unsigned int maximumIterations = std::numeric_limits<unsigned int>::max() );
212  SITKBasicFilters_EXPORT Image STAPLE ( const Image& image1, const Image& image2, const Image& image3, const Image& image4, double confidenceWeight = 1.0, double foregroundValue = 1.0, unsigned int maximumIterations = std::numeric_limits<unsigned int>::max() );
213  SITKBasicFilters_EXPORT Image STAPLE ( const Image& image1, const Image& image2, const Image& image3, const Image& image4, const Image& image5, double confidenceWeight = 1.0, double foregroundValue = 1.0, unsigned int maximumIterations = std::numeric_limits<unsigned int>::max() );
214 
217 }
218 #endif
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:76
sitkBasicFilters.h
itk::simple::STAPLEImageFilter::m_MemberFactory
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Definition: sitkSTAPLEImageFilter.h:178
itk::simple::detail::MemberFunctionAddressor
Definition: sitkDetail.h:28
itk::simple::STAPLEImageFilter::GetForegroundValue
double GetForegroundValue() const
Definition: sitkSTAPLEImageFilter.h:114
itk::simple::STAPLEImageFilter::MemberFunctionType
Image(Self::*)(const std::vector< Image > &) MemberFunctionType
Definition: sitkSTAPLEImageFilter.h:171
sitkImageFilter.h
itk::simple::STAPLEImageFilter::GetMaximumIterations
unsigned int GetMaximumIterations() const
Definition: sitkSTAPLEImageFilter.h:124
itk::simple::STAPLEImageFilter::GetName
std::string GetName() const
Definition: sitkSTAPLEImageFilter.h:151
itk::simple::STAPLE
Image STAPLE(const std::vector< Image > &images, double confidenceWeight=1.0, double foregroundValue=1.0, unsigned int maximumIterations=std::numeric_limits< unsigned int >::max())
The STAPLE filter implements the Simultaneous Truth and Performance Level Estimation algorithm for ge...
itk::simple::STAPLEImageFilter::PixelIDTypeList
IntegerPixelIDTypeList PixelIDTypeList
Definition: sitkSTAPLEImageFilter.h:91
itk::simple::STAPLEImageFilter::GetConfidenceWeight
double GetConfidenceWeight() const
Definition: sitkSTAPLEImageFilter.h:104
SITKBasicFilters_EXPORT
#define SITKBasicFilters_EXPORT
Definition: sitkBasicFilters.h:52
itk::simple::STAPLEImageFilter::GetSensitivity
std::vector< double > GetSensitivity() const
Definition: sitkSTAPLEImageFilter.h:139
itk::simple::STAPLEImageFilter::SetForegroundValue
Self & SetForegroundValue(double ForegroundValue)
Definition: sitkSTAPLEImageFilter.h:109
itk::simple::ImageFilter
The base interface for SimpleITK filters that take one input image.
Definition: sitkImageFilter.h:34
itk::simple::STAPLEImageFilter::GetSpecificity
std::vector< double > GetSpecificity() const
After the filter is updated, this method returns the Specificity (true negative fraction,...
Definition: sitkSTAPLEImageFilter.h:147
itk::simple::STAPLEImageFilter::SetConfidenceWeight
Self & SetConfidenceWeight(double ConfidenceWeight)
Definition: sitkSTAPLEImageFilter.h:99
itk::Image
Definition: sitkPixelIDTypes.h:26
itk::simple::IntegerPixelIDTypeList
typelist2::typelist< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t > > IntegerPixelIDTypeList
Definition: sitkPixelIDTypeLists.h:75
itk::simple::STAPLEImageFilter::GetElapsedIterations
uint32_t GetElapsedIterations() const
Definition: sitkSTAPLEImageFilter.h:131
itk::simple
Definition: sitkAdditionalProcedures.h:28
itk::simple::STAPLEImageFilter::SetMaximumIterations
Self & SetMaximumIterations(unsigned int MaximumIterations)
Definition: sitkSTAPLEImageFilter.h:119
itk::images
*par Constraints *The filter requires an image with at least two dimensions and a vector *length of at least The theory supports extension to scalar images
itk::simple::STAPLEImageFilter
The STAPLE filter implements the Simultaneous Truth and Performance Level Estimation algorithm for ge...
Definition: sitkSTAPLEImageFilter.h:76