22 #ifndef otbHooverInstanceFilter_h
23 #define otbHooverInstanceFilter_h
26 #include "itkInPlaceLabelMapFilter.h"
27 #include "itkVariableSizeMatrix.h"
28 #include "itkVariableLengthVector.h"
73 template <
class TLabelMap>
79 typedef itk::InPlaceLabelMapFilter<TLabelMap>
Superclass;
112 void SetMachineSegmentationLabelMap(
const LabelMapType* ms);
123 itkSetMacro(Threshold,
double);
124 itkGetMacro(Threshold,
double);
126 itkSetMacro(UseExtendedAttributes,
bool);
127 itkGetMacro(UseExtendedAttributes,
bool);
157 name =
"HooverInstance_Ext_CD";
160 name =
"HooverInstance_Ext_OS";
163 name =
"HooverInstance_Ext_US";
166 name =
"HooverInstance_Ext_M";
169 name =
"HooverInstance_Ext_N";
172 name =
"HooverInstance_RC";
175 name =
"HooverInstance_RF";
178 name =
"HooverInstance_RA";
181 name =
"HooverInstance_RM";
184 name =
"HooverInstance_RN";
192 if (name ==
"HooverInstance_Ext_CD")
196 else if (name ==
"HooverInstance_Ext_OS")
200 else if (name ==
"HooverInstance_Ext_US")
204 else if (name ==
"HooverInstance_Ext_M")
208 else if (name ==
"HooverInstance_Ext_N")
212 else if (name ==
"HooverInstance_RC")
216 else if (name ==
"HooverInstance_RF")
220 else if (name ==
"HooverInstance_RA")
224 else if (name ==
"HooverInstance_RM")
228 else if (name ==
"HooverInstance_RN")
239 void AllocateOutputs()
override;
242 void ReleaseInputs()
override;
247 void ThreadedProcessLabelObject(LabelObjectType* labelObject)
override;
254 void BeforeThreadedGenerateData()
override;
259 void AfterThreadedGenerateData()
override;
303 #ifndef OTB_MANUAL_INSTANTIATION