Orfeo Toolbox  4.0
otbSVMImageClassificationWithRuleFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ORFEO Toolbox
4  Language: C++
5  Date: $Date$
6  Version: $Revision$
7 
8 
9  Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
10  See OTBCopyright.txt for details.
11 
12  Copyright (c) Institut Telecom; Telecom bretagne. All rights reserved.
13  See ITCopyright.txt for details.
14 
15  This software is distributed WITHOUT ANY WARRANTY; without even
16  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
17  PURPOSE. See the above copyright notices for more information.
18 
19 =========================================================================*/
20 
21 #ifndef __otbSVMImageClassificationWithRuleFilter_h
22 #define __otbSVMImageClassificationWithRuleFilter_h
23 
25 #include "otbVectorImage.h"
26 
27 namespace otb {
28 
41 template <class TInputImage, class TOutputImage, class TMaskImage = TOutputImage>
43  : public SVMImageClassificationFilter<TInputImage, TOutputImage, TMaskImage>
44 {
45 public:
48  typedef SVMImageClassificationFilter<TInputImage,
49  TOutputImage, TMaskImage> Superclass;
52 
54  itkNewMacro(Self);
55 
58 
60  typedef typename Superclass::InputImageConstPointerType InputImageConstPointerType;
61  typedef typename Superclass::ValueType ValueType;
62 
63  typedef typename Superclass::MaskImageType MaskImageType;
64  typedef typename Superclass::MaskImageConstPointerType MaskImageConstPointerType;
65  typedef typename Superclass::MaskImagePointerType MaskImagePointerType;
66 
68  typedef typename Superclass::OutputImagePointerType OutputImagePointerType;
70  typedef typename Superclass::LabelType LabelType;
71 
72  typedef typename Superclass::ModelType ModelType;
73  typedef typename Superclass::ModelPointerType ModelPointerType;
78 
84 
86  itkGetObjectMacro(OutputRule, OutputRuleImageType);
87 
88 protected:
93 
98  virtual void GenerateOutputInformation();
99 
103  virtual void AllocateOutputs();
104 
106  virtual void ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread, itk::ThreadIdType threadId);
107 
108 private:
109  SVMImageClassificationWithRuleFilter(const Self &); //purposely not implemented
110  void operator =(const Self&); //purposely not implemented
111 
113 
114 }; // end of class
115 
116 } // end of namespace otb
117 
118 #ifndef OTB_MANUAL_INSTANTIATION
120 #endif
121 
122 #endif

Generated at Sat Mar 8 2014 16:22:05 for Orfeo Toolbox with doxygen 1.8.3.1