Skip to content
Snippets Groups Projects
Commit edb5dd65 authored by Cédric Traizet's avatar Cédric Traizet
Browse files

ENH: use only one template parameter in VectorPrediction

parent a62d5172
No related branches found
No related tags found
No related merge requests found
......@@ -25,7 +25,7 @@ namespace otb
namespace Wrapper
{
using VectorClassifier = VectorPrediction<false, float, unsigned int>;
using VectorClassifier = VectorPrediction<false>;
template<>
void
......
......@@ -25,7 +25,7 @@ namespace otb
namespace Wrapper
{
using VectorRegression = VectorPrediction<true, float, float>;
using VectorRegression = VectorPrediction<true>;
template<>
void
......
......@@ -44,7 +44,7 @@ namespace otb
namespace Wrapper
{
template <bool RegressionMode, class ValueType, class LabelType>
template <bool RegressionMode>
class VectorPrediction : public Application
{
public:
......@@ -60,8 +60,10 @@ public:
itkTypeMacro(Self, Application)
/** Filters typedef */
//typedef float ValueType;
//typedef unsigned int LabelType;
typedef float ValueType;
// Label type is float for regression and unsigned int for classification
typedef typename std::conditional<RegressionMode, float, unsigned int>::type LabelType;
typedef itk::FixedArray<LabelType,1> LabelSampleType;
typedef itk::Statistics::ListSample<LabelSampleType> LabelListSampleType;
......
......@@ -26,18 +26,18 @@ namespace otb
namespace Wrapper
{
template <bool RegressionMode, class ValueType, class LabelType>
template <bool RegressionMode>
void
VectorPrediction <RegressionMode, ValueType, LabelType>
VectorPrediction <RegressionMode>
::DoInit()
{
DoInitSpecialization();
//TODO add assert to check that parameters has been correctly defined
}
template <bool RegressionMode, class ValueType, class LabelType>
template <bool RegressionMode>
void
VectorPrediction <RegressionMode, ValueType, LabelType>
VectorPrediction <RegressionMode>
::DoUpdateParameters()
{
if ( HasValue("in") )
......@@ -72,9 +72,9 @@ VectorPrediction <RegressionMode, ValueType, LabelType>
}
}
template <bool RegressionMode, class ValueType, class LabelType>
template <bool RegressionMode>
void
VectorPrediction <RegressionMode, ValueType, LabelType>
VectorPrediction <RegressionMode>
::DoExecute()
{
clock_t tic = clock();
......@@ -161,7 +161,7 @@ VectorPrediction <RegressionMode, ValueType, LabelType>
m_Model->Load(GetParameterString("model"));
otbAppLogINFO("Model loaded");
typename ListSampleType::Pointer listSample = trainingShiftScaleFilter->GetOutput();
ListSampleType::Pointer listSample = trainingShiftScaleFilter->GetOutput();
typename ConfidenceListSampleType::Pointer quality;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment