This file is indexed.

/usr/include/OTB-5.8/otbConfusionMatrixToMassOfBelief.txx is in libotb-dev 5.8.0+dfsg-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*=========================================================================

 Program:   ORFEO Toolbox
 Language:  C++
 Date:      $Date$
 Version:   $Revision$


 Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
 See OTBCopyright.txt for details.


 This software is distributed WITHOUT ANY WARRANTY; without even
 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 PURPOSE.  See the above copyright notices for more information.

 =========================================================================*/
#ifndef otbConfusionMatrixToMassOfBelief_txx
#define otbConfusionMatrixToMassOfBelief_txx

#include "otbConfusionMatrixToMassOfBelief.h"

namespace otb
{

template<class TConfusionMatrix, class TLabel>
ConfusionMatrixToMassOfBelief<TConfusionMatrix, TLabel>
::ConfusionMatrixToMassOfBelief()
{
  this->SetNumberOfRequiredInputs(2);
  this->SetNumberOfRequiredOutputs(1);
  this->m_ConfMatMeasurements = ConfusionMatrixMeasurementsType::New();
  this->m_DefinitionMethod = this->PRECISION;
}

template <class TConfusionMatrix, class TLabel>
void
ConfusionMatrixToMassOfBelief<TConfusionMatrix, TLabel>
::Update()
{
  this->GenerateData();
}

template <class TConfusionMatrix, class TLabel>
void
ConfusionMatrixToMassOfBelief<TConfusionMatrix, TLabel>
::GenerateData()
{
  this->m_ConfMatMeasurements->SetConfusionMatrix(m_ConfusionMatrix);
  this->m_ConfMatMeasurements->Compute();

  typename MapOfIndicesType::iterator itMapOfIndices;

  MassType currentMass = 0.;
  this->m_MapMassOfBelief.clear();
  for (itMapOfIndices = m_MapOfIndices.begin(); itMapOfIndices != m_MapOfIndices.end(); ++itMapOfIndices)
    {
    switch (m_DefinitionMethod)
      {
      case PRECISION:
        // Masses of Belief = Precision Rate of each label (TP / [TP + FP])
        currentMass = m_ConfMatMeasurements->GetPrecisions()[itMapOfIndices->first];
        break;
      case RECALL:
        // Masses of Belief = Recall Rate of each label (TP / [TP + FN])
        currentMass = m_ConfMatMeasurements->GetRecalls()[itMapOfIndices->first];
        break;
      case ACCURACY:
        // Masses of Belief = Overall Accuracy of the confusion matrix (SUM[TP] / nbSamples)
        currentMass = m_ConfMatMeasurements->GetOverallAccuracy();
        break;
      case KAPPA:
        // Masses of Belief = Kappa Index of the confusion matrix
        currentMass = m_ConfMatMeasurements->GetKappaIndex();
        break;

      default:
        // Masses of Belief = Precision Rate of each label (TP / [TP + FP]
        currentMass = m_ConfMatMeasurements->GetPrecisions()[itMapOfIndices->first];
        break;
      }// END switch (m_DefinitionMethod)

    this->m_MapMassOfBelief[itMapOfIndices->second] = currentMass;
    }
}
} // end namespace otb

#endif