SimpleITK  
sitkLabelOverlapMeasuresImageFilter.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 sitkLabelOverlapMeasuresImageFilter_h
19#define sitkLabelOverlapMeasuresImageFilter_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.jinja to make changes.
25 */
26
27#include <memory>
28
29#include "sitkBasicFilters.h"
30#include "sitkImageFilter.h"
32
33namespace itk::simple {
34
49public:
51
54
58
61
62
63
64
71 double GetFalseNegativeError() const { return this->m_FalseNegativeError; }
72
80 double GetFalseNegativeError(int64_t label)const { return this->m_pfGetFalseNegativeError(label); }
81
88 double GetFalsePositiveError() const { return this->m_FalsePositiveError; }
89
97 double GetFalsePositiveError(int64_t label)const { return this->m_pfGetFalsePositiveError(label); }
98
105 double GetMeanOverlap() const { return this->m_MeanOverlap; }
106
114 double GetMeanOverlap(int64_t label)const { return this->m_pfGetMeanOverlap(label); }
115
122 double GetUnionOverlap() const { return this->m_UnionOverlap; }
123
131 double GetUnionOverlap(int64_t label)const { return this->m_pfGetUnionOverlap(label); }
132
139 double GetVolumeSimilarity() const { return this->m_VolumeSimilarity; }
140
148 double GetVolumeSimilarity(int64_t label)const { return this->m_pfGetVolumeSimilarity(label); }
149
156 double GetJaccardCoefficient() const { return this->m_JaccardCoefficient; }
157
165 double GetJaccardCoefficient(int64_t label)const { return this->m_pfGetJaccardCoefficient(label); }
166
173 double GetDiceCoefficient() const { return this->m_DiceCoefficient; }
174
182 double GetDiceCoefficient(int64_t label)const { return this->m_pfGetDiceCoefficient(label); }
183
190 double GetFalseDiscoveryRate() const { return this->m_FalseDiscoveryRate; }
191
199 double GetFalseDiscoveryRate(int64_t label)const { return this->m_pfGetFalseDiscoveryRate(label); }
200
202 std::string GetName() const { return std::string("LabelOverlapMeasuresImageFilter"); }
203
205 std::string ToString() const;
206
207
209 void Execute(const Image &sourceImage, const Image &targetImage);
210
211
212private:
214 using MemberFunctionType = void (Self::*)(const Image *
215 sourceImage, const Image *
216 targetImage);
217 template <class TImageType> void ExecuteInternal(const Image *
218 sourceImage, const Image *
219 targetImage);
222
223
224
225
226 double m_FalseNegativeError{ 0.0 };
227 std::function<double(int64_t)> m_pfGetFalseNegativeError;
228 double m_FalsePositiveError{ 0.0 };
229 std::function<double(int64_t)> m_pfGetFalsePositiveError;
230 double m_MeanOverlap{ 0.0 };
231 std::function<double(int64_t)> m_pfGetMeanOverlap;
232 double m_UnionOverlap{ 0.0 };
233 std::function<double(int64_t)> m_pfGetUnionOverlap;
234 double m_VolumeSimilarity{ 0.0 };
235 std::function<double(int64_t)> m_pfGetVolumeSimilarity;
236 double m_JaccardCoefficient{ 0.0 };
237 std::function<double(int64_t)> m_pfGetJaccardCoefficient;
238 double m_DiceCoefficient{ 0.0 };
239 std::function<double(int64_t)> m_pfGetDiceCoefficient;
240 double m_FalseDiscoveryRate{ 0.0 };
241 std::function<double(int64_t)> m_pfGetFalseDiscoveryRate;
242
243
244 // Holder of process object for active measurements
245 std::unique_ptr<itk::ProcessObject, ProcessObjectDeleter> m_Filter{nullptr};
246
247
248
249};
250
251
252}
253#endif
The Image class for SimpleITK.
Definition sitkImage.h:77
std::unique_ptr< itk::ProcessObject, ProcessObjectDeleter > m_Filter
void Execute(const Image &sourceImage, const Image &targetImage)
void ExecuteInternal(const Image *sourceImage, const Image *targetImage)
void(Self::*)(const Image * sourceImage, const Image * targetImage) MemberFunctionType
static const detail::MemberFunctionFactory< MemberFunctionType > & GetMemberFunctionFactory()
A class used to instantiate and generate function object to templated member functions.
typelist2::typelist< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t > > IntegerPixelIDTypeList
#define SITKBasicFilters_EXPORT