ITK  5.1.0
Insight Toolkit
itkStatisticsLabelObject.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 itkStatisticsLabelObject_h
19 #define itkStatisticsLabelObject_h
20 
21 #include "itkShapeLabelObject.h"
22 #include "itkHistogram.h"
23 
24 namespace itk
25 {
41 template <typename TLabel, unsigned int VImageDimension>
42 class StatisticsLabelObject : public ShapeLabelObject<TLabel, VImageDimension>
43 {
44 public:
45  ITK_DISALLOW_COPY_AND_ASSIGN(StatisticsLabelObject);
46 
54 
56  itkNewMacro(Self);
57 
59  itkTypeMacro(StatisticsLabelObject, LabelObject);
60 
62 
63  static constexpr unsigned int ImageDimension = VImageDimension;
64 
65  using IndexType = typename Superclass::IndexType;
66 
68 
69  using LabelType = TLabel;
70 
71  using LineType = typename Superclass::LineType;
72 
74 
76 
78 
80 
82  static constexpr AttributeType MINIMUM = 200;
83  static constexpr AttributeType MAXIMUM = 201;
84  static constexpr AttributeType MEAN = 202;
85  static constexpr AttributeType SUM = 203;
86  static constexpr AttributeType STANDARD_DEVIATION = 204;
87  static constexpr AttributeType VARIANCE = 205;
88  static constexpr AttributeType MEDIAN = 206;
89  static constexpr AttributeType MAXIMUM_INDEX = 207;
90  static constexpr AttributeType MINIMUM_INDEX = 208;
91  static constexpr AttributeType CENTER_OF_GRAVITY = 209;
92  // static constexpr AttributeType CENTRAL_MOMENTS = 210;
93  static constexpr AttributeType WEIGHTED_PRINCIPAL_MOMENTS = 211;
94  static constexpr AttributeType WEIGHTED_PRINCIPAL_AXES = 212;
95  static constexpr AttributeType KURTOSIS = 213;
96  static constexpr AttributeType SKEWNESS = 214;
97  static constexpr AttributeType WEIGHTED_ELONGATION = 215;
98  static constexpr AttributeType HISTOGRAM = 216;
99  static constexpr AttributeType WEIGHTED_FLATNESS = 217;
100 
101  static AttributeType
102  GetAttributeFromName(const std::string & s)
103  {
104  if (s == "Minimum")
105  {
106  return MINIMUM;
107  }
108  else if (s == "Maximum")
109  {
110  return MAXIMUM;
111  }
112  else if (s == "Mean")
113  {
114  return MEAN;
115  }
116  else if (s == "Sum")
117  {
118  return SUM;
119  }
120  else if (s == "StandardDeviation")
121  {
122  return STANDARD_DEVIATION;
123  }
124  else if (s == "Variance")
125  {
126  return VARIANCE;
127  }
128  else if (s == "Median")
129  {
130  return MEDIAN;
131  }
132  else if (s == "MaximumIndex")
133  {
134  return MAXIMUM_INDEX;
135  }
136  else if (s == "MinimumIndex")
137  {
138  return MINIMUM_INDEX;
139  }
140  else if (s == "CenterOfGravity")
141  {
142  return CENTER_OF_GRAVITY;
143  }
144  /*
145  else if( s == "CentralMoments" )
146  {
147  return CENTRAL_MOMENTS;
148  }
149  */
150  else if (s == "WeightedPrincipalMoments")
151  {
153  }
154  else if (s == "WeightedPrincipalAxes")
155  {
157  }
158  else if (s == "Kurtosis")
159  {
160  return KURTOSIS;
161  }
162  else if (s == "Skewness")
163  {
164  return SKEWNESS;
165  }
166  else if (s == "WeightedElongation")
167  {
168  return WEIGHTED_ELONGATION;
169  }
170  else if (s == "Histogram")
171  {
172  return HISTOGRAM;
173  }
174  else if (s == "WeightedFlatness")
175  {
176  return WEIGHTED_FLATNESS;
177  }
178  // can't recognize the name
180  }
181 
182  static std::string
184  {
185  switch (a)
186  {
187  case MINIMUM:
188  return "Minimum";
189  break;
190  case MAXIMUM:
191  return "Maximum";
192  break;
193  case MEAN:
194  return "Mean";
195  break;
196  case SUM:
197  return "Sum";
198  break;
199  case STANDARD_DEVIATION:
200  return "StandardDeviation";
201  break;
202  case VARIANCE:
203  return "Variance";
204  break;
205  case MEDIAN:
206  return "Median";
207  break;
208  case MAXIMUM_INDEX:
209  return "MaximumIndex";
210  break;
211  case MINIMUM_INDEX:
212  return "MinimumIndex";
213  break;
214  case CENTER_OF_GRAVITY:
215  return "CenterOfGravity";
216  break;
217  /* case CENTRAL_MOMENTS:
218  return "CentralMoments";
219  break;*/
221  return "WeightedPrincipalMoments";
222  break;
224  return "WeightedPrincipalAxes";
225  break;
226  case KURTOSIS:
227  return "Kurtosis";
228  break;
229  case SKEWNESS:
230  return "Skewness";
231  break;
232  case WEIGHTED_ELONGATION:
233  return "WeightedElongation";
234  break;
235  case HISTOGRAM:
236  return "Histogram";
237  break;
238  case WEIGHTED_FLATNESS:
239  return "WeightedFlatness";
240  break;
241  }
242  // can't recognize the name
244  }
245 
247 
249 
250  template <typename TSourceLabelObject>
251  void
252  CopyAttributesFrom(const TSourceLabelObject * src)
253  {
254  Superclass::template CopyAttributesFrom<TSourceLabelObject>(src);
255 
256  m_Minimum = src->GetMinimum();
257  m_Maximum = src->GetMaximum();
258  m_Mean = src->GetMean();
259  m_Sum = src->GetSum();
260  m_StandardDeviation = src->GetStandardDeviation();
261  m_Variance = src->GetVariance();
262  m_Median = src->GetMedian();
263  m_MaximumIndex = src->GetMaximumIndex();
264  m_MinimumIndex = src->GetMinimumIndex();
265  m_CenterOfGravity = src->GetCenterOfGravity();
266  // m_CentralMoments = src->GetCentralMoments();
267  m_WeightedPrincipalMoments = src->GetWeightedPrincipalMoments();
268  m_WeightedPrincipalAxes = src->GetWeightedPrincipalAxes();
269  m_Kurtosis = src->GetKurtosis();
270  m_Skewness = src->GetSkewness();
271  m_WeightedElongation = src->GetWeightedElongation();
272  m_Histogram = src->GetHistogram();
273  m_WeightedFlatness = src->GetWeightedFlatness();
274  }
275 
276  template <typename TSourceLabelObject>
277  void
278  CopyAllFrom(const TSourceLabelObject * src)
279  {
280  itkAssertOrThrowMacro((src != nullptr), "Null Pointer");
281  this->template CopyLinesFrom<TSourceLabelObject>(src);
282  this->template CopyAttributesFrom<TSourceLabelObject>(src);
283  }
284 
285  const double &
286  GetMinimum() const
287  {
288  return m_Minimum;
289  }
290 
291  void
292  SetMinimum(const double & v)
293  {
294  m_Minimum = v;
295  }
296 
297  const double &
298  GetMaximum() const
299  {
300  return m_Maximum;
301  }
302 
303  void
304  SetMaximum(const double & v)
305  {
306  m_Maximum = v;
307  }
308 
309  const double &
310  GetMean() const
311  {
312  return m_Mean;
313  }
314 
315  void
316  SetMean(const double & v)
317  {
318  m_Mean = v;
319  }
320 
321  const double &
322  GetSum() const
323  {
324  return m_Sum;
325  }
326 
327  void
328  SetSum(const double & v)
329  {
330  m_Sum = v;
331  }
332 
333  const double &
335  {
336  return m_StandardDeviation;
337  }
338 
339  void
340  SetStandardDeviation(const double & v)
341  {
343  }
344 
345  const double &
346  GetVariance() const
347  {
348  return m_Variance;
349  }
350 
351  void
352  SetVariance(const double & v)
353  {
354  m_Variance = v;
355  }
356 
357  const double &
358  GetMedian() const
359  {
360  return m_Median;
361  }
362 
363  void
364  SetMedian(const double & v)
365  {
366  m_Median = v;
367  }
368 
369  const IndexType &
371  {
372  return m_MaximumIndex;
373  }
374 
375  void
377  {
378  m_MaximumIndex = v;
379  }
380 
381  const IndexType &
383  {
384  return m_MinimumIndex;
385  }
386 
387  void
389  {
390  m_MinimumIndex = v;
391  }
392 
393  const PointType &
395  {
396  return m_CenterOfGravity;
397  }
398 
399  void
401  {
402  m_CenterOfGravity = v;
403  }
404 
405  /*
406  const MatrixType & GetCentralMoments() const
407  {
408  return m_CentralMoments;
409  }
410 
411  void SetCentralMoments( const MatrixType & v )
412  {
413  m_CentralMoments = v;
414  }*/
415 
416  const VectorType &
418  {
420  }
421 
422  void
424  {
426  }
427 
428  const MatrixType &
430  {
432  }
433 
434  void
436  {
438  }
439 
440  const double &
441  GetSkewness() const
442  {
443  return m_Skewness;
444  }
445 
446  void
447  SetSkewness(const double & v)
448  {
449  m_Skewness = v;
450  }
451 
452  const double &
453  GetKurtosis() const
454  {
455  return m_Kurtosis;
456  }
457 
458  void
459  SetKurtosis(const double & v)
460  {
461  m_Kurtosis = v;
462  }
463 
464  const double &
466  {
467  return m_WeightedElongation;
468  }
469 
470  void
471  SetWeightedElongation(const double & v)
472  {
474  }
475 
476  const HistogramType *
477  GetHistogram() const
478  {
479  return m_Histogram;
480  }
481 
482  void
484  {
485  m_Histogram = v;
486  }
487 
488  const double &
490  {
491  return m_WeightedFlatness;
492  }
493 
494  void
495  SetWeightedFlatness(const double & v)
496  {
497  m_WeightedFlatness = v;
498  }
499 
500  // some helper methods - not really required, but really useful!
504 
510  {
511  typename AffineTransformType::MatrixType matrix;
512  typename AffineTransformType::OffsetType offset;
513  for (unsigned int i = 0; i < ImageDimension; i++)
514  {
515  offset[i] = m_CenterOfGravity[i];
516  for (unsigned int j = 0; j < ImageDimension; j++)
517  {
518  matrix[j][i] = m_WeightedPrincipalAxes[i][j]; // Note the transposition
519  }
520  }
522 
524 
525  result->SetMatrix(matrix);
526  result->SetOffset(offset);
527 
528  return result;
529  }
530 
537  {
538  typename AffineTransformType::MatrixType matrix;
539  typename AffineTransformType::OffsetType offset;
540  for (unsigned int i = 0; i < ImageDimension; i++)
541  {
542  offset[i] = m_CenterOfGravity[i];
543  for (unsigned int j = 0; j < ImageDimension; j++)
544  {
545  matrix[j][i] = m_WeightedPrincipalAxes[i][j]; // Note the transposition
546  }
547  }
549 
551  result->SetMatrix(matrix);
552  result->SetOffset(offset);
553 
555  result->GetInverse(inverse);
556 
557  return inverse;
558  }
559 
560 protected:
562  {
563  m_Minimum = 0;
564  m_Maximum = 0;
565  m_Mean = 0;
566  m_Sum = 0;
568  m_Variance = 0;
569  m_Median = 0;
570  m_MaximumIndex.Fill(0);
571  m_MinimumIndex.Fill(0);
573  // m_CentralMoments.Fill(0);
576  m_Kurtosis = 0;
577  m_Skewness = 0;
579  m_Histogram = nullptr;
580  m_WeightedFlatness = 0;
581  }
582 
583  void
584  PrintSelf(std::ostream & os, Indent indent) const override
585  {
586  Superclass::PrintSelf(os, indent);
587 
588  os << indent << "Minimum: " << m_Minimum << std::endl;
589  os << indent << "Maximum: " << m_Maximum << std::endl;
590  os << indent << "Mean: " << m_Mean << std::endl;
591  os << indent << "Sum: " << m_Sum << std::endl;
592  os << indent << "StandardDeviation: " << m_StandardDeviation << std::endl;
593  os << indent << "Variance: " << m_Variance << std::endl;
594  os << indent << "Median: " << m_Median << std::endl;
595  os << indent << "Skewness: " << m_Skewness << std::endl;
596  os << indent << "Kurtosis: " << m_Kurtosis << std::endl;
597  os << indent << "WeightedElongation: " << m_WeightedElongation << std::endl;
598  os << indent << "WeightedFlatness: " << m_WeightedFlatness << std::endl;
599  os << indent << "MaximumIndex: " << m_MaximumIndex << std::endl;
600  os << indent << "MinimumIndex: " << m_MinimumIndex << std::endl;
601  os << indent << "CenterOfGravity: " << m_CenterOfGravity << std::endl;
602  // os << indent << "CentralMoments: " << std::endl << m_CentralMoments;
603  os << indent << "WeightedPrincipalMoments: " << m_WeightedPrincipalMoments << std::endl;
604  os << indent << "WeightedPrincipalAxes: " << std::endl << m_WeightedPrincipalAxes;
605  itkPrintSelfObjectMacro(Histogram);
606  }
607 
608 private:
609  double m_Minimum;
610  double m_Maximum;
611  double m_Mean;
612  double m_Sum;
614  double m_Variance;
615  double m_Median;
619  // MatrixType m_CentralMoments;
622  double m_Skewness;
623  double m_Kurtosis;
625 
627 
629 };
630 } // end namespace itk
631 
632 #endif
itk::StatisticsLabelObject::GetKurtosis
const double & GetKurtosis() const
Definition: itkStatisticsLabelObject.h:453
itk::AffineTransform::OffsetType
typename Superclass::OffsetType OffsetType
Definition: itkAffineTransform.h:144
itk::ShapeLabelObject::LengthType
typename Superclass::LengthType LengthType
Definition: itkShapeLabelObject.h:73
itk::LabelObject::LengthType
typename LineType::LengthType LengthType
Definition: itkLabelObject.h:91
itk::StatisticsLabelObject::SetWeightedPrincipalAxes
void SetWeightedPrincipalAxes(const MatrixType &v)
Definition: itkStatisticsLabelObject.h:435
itk::Index< VImageDimension >
itk::StatisticsLabelObject::ImageDimension
static constexpr unsigned int ImageDimension
Definition: itkStatisticsLabelObject.h:63
itk::StatisticsLabelObject::GetWeightedPrincipalAxes
const MatrixType & GetWeightedPrincipalAxes() const
Definition: itkStatisticsLabelObject.h:429
itk::StatisticsLabelObject::SKEWNESS
static constexpr AttributeType SKEWNESS
Definition: itkStatisticsLabelObject.h:96
itk::StatisticsLabelObject::SetHistogram
void SetHistogram(const HistogramType *v)
Definition: itkStatisticsLabelObject.h:483
itk::Matrix::Fill
void Fill(const T &value)
Definition: itkMatrix.h:199
itk::StatisticsLabelObject::m_Mean
double m_Mean
Definition: itkStatisticsLabelObject.h:611
itk::StatisticsLabelObject::SetKurtosis
void SetKurtosis(const double &v)
Definition: itkStatisticsLabelObject.h:459
itk::StatisticsLabelObject::SetSum
void SetSum(const double &v)
Definition: itkStatisticsLabelObject.h:328
itk::StatisticsLabelObject::GetAttributeFromName
static AttributeType GetAttributeFromName(const std::string &s)
Definition: itkStatisticsLabelObject.h:102
itk::StatisticsLabelObject::GetPhysicalAxesToWeightedPrincipalAxesTransform
AffineTransformPointer GetPhysicalAxesToWeightedPrincipalAxesTransform() const
Definition: itkStatisticsLabelObject.h:536
itk::ImageRegion
An image region represents a structured region of data.
Definition: itkImageRegion.h:69
itk::StatisticsLabelObject::MEDIAN
static constexpr AttributeType MEDIAN
Definition: itkStatisticsLabelObject.h:88
itk::ShapeLabelObject::AffineTransformPointer
typename AffineTransformType::Pointer AffineTransformPointer
Definition: itkShapeLabelObject.h:628
itk::Vector< double, VImageDimension >
itk::StatisticsLabelObject::MAXIMUM
static constexpr AttributeType MAXIMUM
Definition: itkStatisticsLabelObject.h:83
itk::StatisticsLabelObject
A Label object to store the common attributes related to the statistics of the object.
Definition: itkStatisticsLabelObject.h:42
itk::StatisticsLabelObject::SetWeightedElongation
void SetWeightedElongation(const double &v)
Definition: itkStatisticsLabelObject.h:471
itk::StatisticsLabelObject::WEIGHTED_PRINCIPAL_MOMENTS
static constexpr AttributeType WEIGHTED_PRINCIPAL_MOMENTS
Definition: itkStatisticsLabelObject.h:93
itk::StatisticsLabelObject::WEIGHTED_FLATNESS
static constexpr AttributeType WEIGHTED_FLATNESS
Definition: itkStatisticsLabelObject.h:99
itk::StatisticsLabelObject::SetMaximum
void SetMaximum(const double &v)
Definition: itkStatisticsLabelObject.h:304
itk::StatisticsLabelObject::CopyAttributesFrom
void CopyAttributesFrom(const TSourceLabelObject *src)
Definition: itkStatisticsLabelObject.h:252
itk::StatisticsLabelObject::m_StandardDeviation
double m_StandardDeviation
Definition: itkStatisticsLabelObject.h:613
itk::StatisticsLabelObject::SetMinimum
void SetMinimum(const double &v)
Definition: itkStatisticsLabelObject.h:292
itk::StatisticsLabelObject::m_Median
double m_Median
Definition: itkStatisticsLabelObject.h:615
itk::StatisticsLabelObject::m_Minimum
double m_Minimum
Definition: itkStatisticsLabelObject.h:609
itk::SmartPointer< Self >
itk::Indent
Control indentation during Print() invocation.
Definition: itkIndent.h:49
itk::StatisticsLabelObject::WEIGHTED_ELONGATION
static constexpr AttributeType WEIGHTED_ELONGATION
Definition: itkStatisticsLabelObject.h:97
itk::StatisticsLabelObject::MEAN
static constexpr AttributeType MEAN
Definition: itkStatisticsLabelObject.h:84
itk::StatisticsLabelObject::m_Kurtosis
double m_Kurtosis
Definition: itkStatisticsLabelObject.h:623
itk::StatisticsLabelObject::MINIMUM
static constexpr AttributeType MINIMUM
Definition: itkStatisticsLabelObject.h:82
itk::AffineTransform
Definition: itkAffineTransform.h:101
itk::AffineTransform::New
static Pointer New()
itk::StatisticsLabelObject::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const override
Definition: itkStatisticsLabelObject.h:584
itk::AffineTransform::MatrixType
typename Superclass::MatrixType MatrixType
Definition: itkAffineTransform.h:141
itk::ShapeLabelObject::LineType
typename Superclass::LineType LineType
Definition: itkShapeLabelObject.h:71
itk::Index::Fill
void Fill(IndexValueType value)
Definition: itkIndex.h:270
itk::StatisticsLabelObject::MatrixType
Matrix< double, Self::ImageDimension, Self::ImageDimension > MatrixType
Definition: itkStatisticsLabelObject.h:75
itk::StatisticsLabelObject::m_WeightedPrincipalAxes
MatrixType m_WeightedPrincipalAxes
Definition: itkStatisticsLabelObject.h:621
itk::StatisticsLabelObject::GetMaximumIndex
const IndexType & GetMaximumIndex() const
Definition: itkStatisticsLabelObject.h:370
itk::LabelMap
Templated n-dimensional image to store labeled objects.
Definition: itkLabelMap.h:71
itk::StatisticsLabelObject::m_CenterOfGravity
PointType m_CenterOfGravity
Definition: itkStatisticsLabelObject.h:618
itk::StatisticsLabelObject::WEIGHTED_PRINCIPAL_AXES
static constexpr AttributeType WEIGHTED_PRINCIPAL_AXES
Definition: itkStatisticsLabelObject.h:94
itk::StatisticsLabelObject::StatisticsLabelObject
StatisticsLabelObject()
Definition: itkStatisticsLabelObject.h:561
itkShapeLabelObject.h
itk::StatisticsLabelObject::GetStandardDeviation
const double & GetStandardDeviation() const
Definition: itkStatisticsLabelObject.h:334
itk::ShapeLabelObject::GetAttributeFromName
static AttributeType GetAttributeFromName(const std::string &s)
Definition: itkShapeLabelObject.h:165
itk::Statistics::Histogram
This class stores measurement vectors in the context of n-dimensional histogram.
Definition: itkHistogram.h:77
itk::StatisticsLabelObject::GetWeightedPrincipalMoments
const VectorType & GetWeightedPrincipalMoments() const
Definition: itkStatisticsLabelObject.h:417
itk::StatisticsLabelObject::SetWeightedFlatness
void SetWeightedFlatness(const double &v)
Definition: itkStatisticsLabelObject.h:495
itk::StatisticsLabelObject::m_WeightedFlatness
double m_WeightedFlatness
Definition: itkStatisticsLabelObject.h:628
itk::LightObject
Light weight base class for most itk classes.
Definition: itkLightObject.h:59
itk::ShapeLabelObject::IndexType
typename Superclass::IndexType IndexType
Definition: itkShapeLabelObject.h:67
itk::StatisticsLabelObject::GetWeightedElongation
const double & GetWeightedElongation() const
Definition: itkStatisticsLabelObject.h:465
itk::StatisticsLabelObject::STANDARD_DEVIATION
static constexpr AttributeType STANDARD_DEVIATION
Definition: itkStatisticsLabelObject.h:86
itk::ShapeLabelObject::GetNameFromAttribute
static std::string GetNameFromAttribute(const AttributeType &a)
Definition: itkShapeLabelObject.h:248
itk::LabelObject
The base class for the representation of an labeled binary object in an image.
Definition: itkLabelObject.h:65
itk::StatisticsLabelObject::HistogramType
Statistics::Histogram< double > HistogramType
Definition: itkStatisticsLabelObject.h:79
itk::StatisticsLabelObject::GetCenterOfGravity
const PointType & GetCenterOfGravity() const
Definition: itkStatisticsLabelObject.h:394
itkHistogram.h
itk::StatisticsLabelObject::GetMaximum
const double & GetMaximum() const
Definition: itkStatisticsLabelObject.h:298
itk::StatisticsLabelObject::SetMedian
void SetMedian(const double &v)
Definition: itkStatisticsLabelObject.h:364
itk::StatisticsLabelObject::SetSkewness
void SetSkewness(const double &v)
Definition: itkStatisticsLabelObject.h:447
itk::StatisticsLabelObject::GetMinimum
const double & GetMinimum() const
Definition: itkStatisticsLabelObject.h:286
itk::StatisticsLabelObject::m_Maximum
double m_Maximum
Definition: itkStatisticsLabelObject.h:610
itk::StatisticsLabelObject::GetMedian
const double & GetMedian() const
Definition: itkStatisticsLabelObject.h:358
itk::StatisticsLabelObject::GetHistogram
const HistogramType * GetHistogram() const
Definition: itkStatisticsLabelObject.h:477
itk::StatisticsLabelObject::SetWeightedPrincipalMoments
void SetWeightedPrincipalMoments(const VectorType &v)
Definition: itkStatisticsLabelObject.h:423
itk::StatisticsLabelObject::m_Sum
double m_Sum
Definition: itkStatisticsLabelObject.h:612
itk::StatisticsLabelObject::KURTOSIS
static constexpr AttributeType KURTOSIS
Definition: itkStatisticsLabelObject.h:95
itk::StatisticsLabelObject::VectorType
Vector< double, Self::ImageDimension > VectorType
Definition: itkStatisticsLabelObject.h:77
itk::StatisticsLabelObject::SetMean
void SetMean(const double &v)
Definition: itkStatisticsLabelObject.h:316
itk::StatisticsLabelObject::AffineTransformPointer
typename AffineTransformType::Pointer AffineTransformPointer
Definition: itkStatisticsLabelObject.h:503
itk::StatisticsLabelObject::GetSum
const double & GetSum() const
Definition: itkStatisticsLabelObject.h:322
itk::StatisticsLabelObject::GetVariance
const double & GetVariance() const
Definition: itkStatisticsLabelObject.h:346
itk::StatisticsLabelObject::SetMinimumIndex
void SetMinimumIndex(const IndexType &v)
Definition: itkStatisticsLabelObject.h:388
itk::ShapeLabelObject::LabelObjectType
typename Superclass::LabelObjectType LabelObjectType
Definition: itkShapeLabelObject.h:52
itk::StatisticsLabelObject::GetWeightedFlatness
const double & GetWeightedFlatness() const
Definition: itkStatisticsLabelObject.h:489
itk::StatisticsLabelObject::IndexType
typename Superclass::IndexType IndexType
Definition: itkStatisticsLabelObject.h:65
itk::StatisticsLabelObject::m_WeightedElongation
double m_WeightedElongation
Definition: itkStatisticsLabelObject.h:624
itk::StatisticsLabelObject::SetStandardDeviation
void SetStandardDeviation(const double &v)
Definition: itkStatisticsLabelObject.h:340
itk::LabelObject::LabelType
TLabel LabelType
Definition: itkLabelObject.h:89
itk::AffineTransform::Pointer
SmartPointer< Self > Pointer
Definition: itkAffineTransform.h:111
itk::Matrix< double, VImageDimension, VImageDimension >
itk::StatisticsLabelObject::MINIMUM_INDEX
static constexpr AttributeType MINIMUM_INDEX
Definition: itkStatisticsLabelObject.h:90
itk::StatisticsLabelObject::HISTOGRAM
static constexpr AttributeType HISTOGRAM
Definition: itkStatisticsLabelObject.h:98
itk::LabelObjectLine
Definition: itkLabelObjectLine.h:43
itk::WeakPointer
Implements a weak reference to an object.
Definition: itkWeakPointer.h:44
itk::StatisticsLabelObject::SUM
static constexpr AttributeType SUM
Definition: itkStatisticsLabelObject.h:85
itk::StatisticsLabelObject::GetWeightedPrincipalAxesToPhysicalAxesTransform
AffineTransformPointer GetWeightedPrincipalAxesToPhysicalAxesTransform() const
Definition: itkStatisticsLabelObject.h:509
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition: itkArray.h:26
itk::StatisticsLabelObject::PointType
Point< double, Self::ImageDimension > PointType
Definition: itkStatisticsLabelObject.h:67
itk::StatisticsLabelObject::m_WeightedPrincipalMoments
VectorType m_WeightedPrincipalMoments
Definition: itkStatisticsLabelObject.h:620
itk::ShapeLabelObject
A Label object to store the common attributes related to the shape of the object.
Definition: itkShapeLabelObject.h:44
itk::StatisticsLabelObject::m_MaximumIndex
IndexType m_MaximumIndex
Definition: itkStatisticsLabelObject.h:616
itk::StatisticsLabelObject::VARIANCE
static constexpr AttributeType VARIANCE
Definition: itkStatisticsLabelObject.h:87
itk::StatisticsLabelObject::GetMean
const double & GetMean() const
Definition: itkStatisticsLabelObject.h:310
itk::StatisticsLabelObject::MAXIMUM_INDEX
static constexpr AttributeType MAXIMUM_INDEX
Definition: itkStatisticsLabelObject.h:89
itk::StatisticsLabelObject::GetNameFromAttribute
static std::string GetNameFromAttribute(const AttributeType &a)
Definition: itkStatisticsLabelObject.h:183
itk::StatisticsLabelObject::AttributeType
typename Superclass::AttributeType AttributeType
Definition: itkStatisticsLabelObject.h:81
itk::StatisticsLabelObject::GetMinimumIndex
const IndexType & GetMinimumIndex() const
Definition: itkStatisticsLabelObject.h:382
itk::StatisticsLabelObject::SetVariance
void SetVariance(const double &v)
Definition: itkStatisticsLabelObject.h:352
itk::Point< double, Self::ImageDimension >
itk::StatisticsLabelObject::SetMaximumIndex
void SetMaximumIndex(const IndexType &v)
Definition: itkStatisticsLabelObject.h:376
itk::ShapeLabelObject::CentroidType
Point< double, VImageDimension > CentroidType
Definition: itkShapeLabelObject.h:320
itk::ShapeLabelObject::AttributeType
typename Superclass::AttributeType AttributeType
Definition: itkShapeLabelObject.h:75
itk::StatisticsLabelObject::m_Skewness
double m_Skewness
Definition: itkStatisticsLabelObject.h:622
itk::StatisticsLabelObject::CopyAllFrom
void CopyAllFrom(const TSourceLabelObject *src)
Definition: itkStatisticsLabelObject.h:278
itk::StatisticsLabelObject::CENTER_OF_GRAVITY
static constexpr AttributeType CENTER_OF_GRAVITY
Definition: itkStatisticsLabelObject.h:91
itk::StatisticsLabelObject::m_Histogram
HistogramType::ConstPointer m_Histogram
Definition: itkStatisticsLabelObject.h:626
itk::ShapeLabelObject::PrintSelf
void PrintSelf(std::ostream &os, Indent indent) const override
Definition: itkShapeLabelObject.h:745
itk::StatisticsLabelObject::m_Variance
double m_Variance
Definition: itkStatisticsLabelObject.h:614
itk::StatisticsLabelObject::m_MinimumIndex
IndexType m_MinimumIndex
Definition: itkStatisticsLabelObject.h:617
itk::StatisticsLabelObject::GetSkewness
const double & GetSkewness() const
Definition: itkStatisticsLabelObject.h:441
itk::StatisticsLabelObject::SetCenterOfGravity
void SetCenterOfGravity(const PointType &v)
Definition: itkStatisticsLabelObject.h:400
itk::FixedArray::Fill
void Fill(const ValueType &)