Orfeo Toolbox  4.2
otbDisparityMapEstimationMethod.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 
13  This software is distributed WITHOUT ANY WARRANTY; without even
14  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  PURPOSE. See the above copyright notices for more information.
16 
17 =========================================================================*/
18 #ifndef __otbDisparityMapEstimationMethod_h
19 #define __otbDisparityMapEstimationMethod_h
20 
21 #include "itkProcessObject.h"
22 #include "itkImageToImageMetric.h"
24 #include "itkDataObjectDecorator.h"
25 #include "itkPointSet.h"
26 #include "otbPointSetSource.h"
27 
28 namespace otb
29 {
51 template <class TFixedImage, class TMovingImage, class TPointSet>
53  : public PointSetSource<TPointSet>
54 {
55 public:
61 
63  itkNewMacro(Self);
64 
66  itkTypeMacro(DisparityMapEstimationMethod, ProcessObject);
67 
69  typedef TFixedImage FixedImageType;
70  typedef typename FixedImageType::Pointer FixedImagePointerType;
71  typedef typename FixedImageType::PixelType FixedPixelType;
72  typedef typename FixedImageType::SizeType SizeType;
73 
75  typedef TMovingImage MovingImageType;
76  typedef typename MovingImageType::Pointer MovingImagePointerType;
77  typedef typename MovingImageType::PixelType MovingPixelType;
78 
80  typedef TPointSet PointSetType;
81  typedef typename PointSetType::Pointer PointSetPointerType;
82 
87 
91 
96 
100 
104 
108 
111 
113  itkSetObjectMacro(Optimizer, OptimizerType);
114  itkGetObjectMacro(Optimizer, OptimizerType);
115 
117  itkSetObjectMacro(Metric, MetricType);
118  itkGetObjectMacro(Metric, MetricType);
119 
121  itkSetObjectMacro(Transform, TransformType);
122  itkGetObjectMacro(Transform, TransformType);
123 
125  itkSetObjectMacro(Interpolator, InterpolatorType);
126  itkGetObjectMacro(Interpolator, InterpolatorType);
127 
129  itkSetMacro(WinSize, SizeType);
130  itkGetMacro(WinSize, SizeType);
131 
133  itkSetMacro(ExploSize, SizeType);
134  itkGetMacro(ExploSize, SizeType);
135 
137  itkSetMacro(InitialTransformParameters, ParametersType);
138  itkGetConstReferenceMacro(InitialTransformParameters, ParametersType);
139 
144  void SetPointSet(const TPointSet * pointset);
149  const TPointSet * GetPointSet(void);
150 
155  void SetFixedImage(const TFixedImage * image);
156 
161  const TFixedImage * GetFixedImage(void);
162 
167  void SetMovingImage(const TMovingImage * image);
168 
173  const TMovingImage * GetMovingImage(void);
174 
175 protected:
183  virtual ~DisparityMapEstimationMethod();
187  void PrintSelf(std::ostream& os, itk::Indent indent) const;
191  void GenerateData();
192 
193 private:
194  DisparityMapEstimationMethod(const Self &); //purposely not implemented
195  void operator =(const Self&); //purposely not implemented
224 };
225 } // end namespace otb
226 #ifndef OTB_MANUAL_INSTANTIATION
228 #endif
229 
230 #endif

Generated at Sat Aug 30 2014 15:59:31 for Orfeo Toolbox with doxygen 1.8.3.1