21 #ifndef otbDisparityTranslateFilter_h
22 #define otbDisparityTranslateFilter_h
24 #include "itkImageToImageFilter.h"
46 template <
class TDisparityImage,
class TGr
idImage = otb::VectorImage<
float, 2>,
class TSensorImage = otb::Image<
unsigned short, 2>,
47 class TMaskImage = otb::Image<
unsigned char, 2>>
53 typedef itk::ImageToImageFilter<TDisparityImage, TDisparityImage>
Superclass;
71 typedef typename DispMapType::SizeType
SizeType;
85 void SetHorizontalDisparityMapInput(
const TDisparityImage* hmap);
88 void SetVerticalDisparityMapInput(
const TDisparityImage* vmap);
91 void SetInverseEpipolarLeftGrid(
const TGridImage* lgrid);
94 void SetDirectEpipolarRightGrid(
const TGridImage* rgrid);
97 void SetDisparityMaskInput(
const TMaskImage* mask);
102 void SetLeftSensorImageInput(
const TSensorImage* left);
105 const TDisparityImage* GetHorizontalDisparityMapInput()
const;
106 const TDisparityImage* GetVerticalDisparityMapInput()
const;
107 const TGridImage* GetInverseEpipolarLeftGrid()
const;
108 const TGridImage* GetDirectEpipolarRightGrid()
const;
109 const TMaskImage* GetDisparityMaskInput()
const;
110 const TSensorImage* GetLeftSensorImageInput()
const;
114 TDisparityImage* GetHorizontalDisparityMapOutput();
115 TDisparityImage* GetVerticalDisparityMapOutput();
126 void GenerateOutputInformation()
override;
129 void GenerateInputRequestedRegion()
override;
132 void ThreadedGenerateData(
const RegionType& outputRegionForThread, itk::ThreadIdType threadId)
override;
146 void operator=(
const Self&) =
delete;
153 #ifndef OTB_MANUAL_INSTANTIATION