OTB  9.0.0
Orfeo Toolbox
otbStreamingFeatherMosaicFilter.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1999-2011 Insight Software Consortium
3  * Copyright (C) 2005-2022 Centre National d'Etudes Spatiales (CNES)
4  * Copyright (C) 2016-2019 IRSTEA
5  *
6  * This file is part of Orfeo Toolbox
7  *
8  * https://www.orfeo-toolbox.org/
9  *
10  * Licensed under the Apache License, Version 2.0 (the "License");
11  * you may not use this file except in compliance with the License.
12  * You may obtain a copy of the License at
13  *
14  * http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  */
22 #ifndef __StreamingFeatherMosaicFilter_H
23 #define __StreamingFeatherMosaicFilter_H
24 
26 #include "itkLinearInterpolateImageFunction.h"
27 
28 namespace otb
29 {
53 template <class TInputImage, class TOutputImage, class TDistanceImage, class TInternalValueType = double>
54 class ITK_EXPORT StreamingFeatherMosaicFilter : public StreamingMosaicFilterWithBlendingBase<TInputImage, TOutputImage, TDistanceImage, TInternalValueType>
55 {
56 public:
60  typedef itk::SmartPointer<Self> Pointer;
61  typedef itk::SmartPointer<const Self> ConstPointer;
62 
64  itkNewMacro(Self);
65 
68 
79 
90 
92  typedef typename Superclass::InternalValueType InternalValueType;
102 
104  typedef TDistanceImage DistanceImageType;
105  typedef typename DistanceImageType::Pointer DistanceImagePointer;
106  typedef typename DistanceImageType::ConstPointer DistanceImageConstPointer;
107  typedef typename DistanceImageType::PointType DistanceImagePointType;
108  typedef typename DistanceImageType::PixelType DistanceImagePixelType;
109  typedef typename DistanceImageType::InternalPixelType DistanceImageInternalPixelType;
110  typedef typename DistanceImageType::RegionType DistanceImageRegionType;
111  typedef typename itk::InterpolateImageFunction<DistanceImageType> DistanceImageInterpolatorType;
112  typedef typename itk::LinearInterpolateImageFunction<DistanceImageType> DistanceImageDefaultInterpolatorType;
113  typedef typename DistanceImageInterpolatorType::Pointer DistanceImageInterpolatorPointer;
114 
116  itkSetMacro(FeatheringTransitionDistance, InternalValueType);
117  itkGetMacro(FeatheringTransitionDistance, InternalValueType);
119 
121  itkSetMacro(FeatheringSmoothness, InternalValueType);
122  itkGetMacro(FeatheringSmoothness, InternalValueType);
124 
125 protected:
128  {
129  }
130 
132  void ThreadedGenerateData(const OutputImageRegionType& outputRegionForThread, itk::ThreadIdType threadId) override;
133 
134 private:
136  // distance
138 
139 }; // end of class
140 
141 } // end namespace otb
142 
143 #ifndef OTB_MANUAL_INSTANTIATION
145 #endif
146 
147 #endif
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::ContinuousIndexType
itk::ContinuousIndex< double, 2 > ContinuousIndexType
Definition: otbStreamingMosaicFilterBase.h:90
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImageRegionType
InputImageType::RegionType InputImageRegionType
Definition: otbStreamingMosaicFilterBase.h:69
otb::StreamingFeatherMosaicFilter::Superclass
StreamingMosaicFilterWithBlendingBase< TInputImage, TOutputImage, TDistanceImage, TInternalValueType > Superclass
Definition: otbStreamingFeatherMosaicFilter.h:59
otbStreamingMosaicFilterWithBlendingBase.h
otb::StreamingFeatherMosaicFilter::ConstPointer
itk::SmartPointer< const Self > ConstPointer
Definition: otbStreamingFeatherMosaicFilter.h:61
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InternalPixelType
InternalImageType::PixelType InternalPixelType
Definition: otbStreamingMosaicFilterBase.h:95
otb::StreamingFeatherMosaicFilter::InterpolatorPointerType
Superclass::InterpolatorPointerType InterpolatorPointerType
Definition: otbStreamingFeatherMosaicFilter.h:95
otb::StreamingFeatherMosaicFilter::DistanceImagePointType
DistanceImageType::PointType DistanceImagePointType
Definition: otbStreamingFeatherMosaicFilter.h:107
otb::StreamingFeatherMosaicFilter::InputImageType
Superclass::InputImageType InputImageType
Definition: otbStreamingFeatherMosaicFilter.h:67
otb::StreamingFeatherMosaicFilter::OutputImageType
Superclass::OutputImageType OutputImageType
Definition: otbStreamingFeatherMosaicFilter.h:81
otb::StreamingFeatherMosaicFilter::DistanceImageInterpolatorPointer
DistanceImageInterpolatorType::Pointer DistanceImageInterpolatorPointer
Definition: otbStreamingFeatherMosaicFilter.h:113
otb::StreamingFeatherMosaicFilter::OutputImageIndexType
Superclass::OutputImageIndexType OutputImageIndexType
Definition: otbStreamingFeatherMosaicFilter.h:85
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImageSpacingType
InputImageType::SpacingType InputImageSpacingType
Definition: otbStreamingMosaicFilterBase.h:74
otb::StreamingFeatherMosaicFilter::DistanceImageRegionType
DistanceImageType::RegionType DistanceImageRegionType
Definition: otbStreamingFeatherMosaicFilter.h:110
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImageSpacingType
OutputImageType::SpacingType OutputImageSpacingType
Definition: otbStreamingMosaicFilterBase.h:84
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImagePixelType
InputImageType::PixelType InputImagePixelType
Definition: otbStreamingMosaicFilterBase.h:70
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImagePointer
OutputImageType::Pointer OutputImagePointer
Definition: otbStreamingMosaicFilterBase.h:79
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImagePointType
OutputImageType::PointType OutputImagePointType
Definition: otbStreamingMosaicFilterBase.h:82
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImagePointType
InputImageType::PointType InputImagePointType
Definition: otbStreamingMosaicFilterBase.h:71
otb::StreamingMosaicFilterWithBlendingBase
Base class for mosaic filters with blending.
Definition: otbStreamingMosaicFilterWithBlendingBase.h:49
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImageSizeType
InputImageType::SizeType InputImageSizeType
Definition: otbStreamingMosaicFilterBase.h:73
otb::StreamingFeatherMosaicFilter::Self
StreamingFeatherMosaicFilter Self
Definition: otbStreamingFeatherMosaicFilter.h:58
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImageIndexType
InputImageType::IndexType InputImageIndexType
Definition: otbStreamingMosaicFilterBase.h:72
otb
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.
Definition: otbJoinContainer.h:32
otb::StreamingFeatherMosaicFilter::InternalValueType
Superclass::InternalValueType InternalValueType
Definition: otbStreamingFeatherMosaicFilter.h:92
otb::StreamingFeatherMosaicFilter::InputImageRegionType
Superclass::InputImageRegionType InputImageRegionType
Definition: otbStreamingFeatherMosaicFilter.h:78
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImageType
TInputImage InputImageType
Definition: otbStreamingMosaicFilterBase.h:64
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImageInternalPixelType
InputImageType::InternalPixelType InputImageInternalPixelType
Definition: otbStreamingMosaicFilterBase.h:75
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::DefaultInterpolatorType
itk::NearestNeighborInterpolateImageFunction< InputImageType, InternalValueType > DefaultInterpolatorType
Definition: otbStreamingMosaicFilterBase.h:93
otb::StreamingFeatherMosaicFilter::IteratorType
Superclass::IteratorType IteratorType
Definition: otbStreamingFeatherMosaicFilter.h:99
otb::StreamingFeatherMosaicFilter::Pointer
itk::SmartPointer< Self > Pointer
Definition: otbStreamingFeatherMosaicFilter.h:60
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImageInternalPixelType
OutputImageType::InternalPixelType OutputImageInternalPixelType
Definition: otbStreamingMosaicFilterBase.h:86
otb::StreamingFeatherMosaicFilter::OutputImagePixelType
Superclass::OutputImagePixelType OutputImagePixelType
Definition: otbStreamingFeatherMosaicFilter.h:84
otb::StreamingTraits
This class provides internal information for streamable filters.
Definition: otbStreamingTraits.h:55
otb::StreamingFeatherMosaicFilter::OutputImageSizeType
Superclass::OutputImageSizeType OutputImageSizeType
Definition: otbStreamingFeatherMosaicFilter.h:86
otb::StreamingFeatherMosaicFilter::DefaultInterpolatorType
Superclass::DefaultInterpolatorType DefaultInterpolatorType
Definition: otbStreamingFeatherMosaicFilter.h:96
otb::StreamingFeatherMosaicFilter::InputImagePixelType
Superclass::InputImagePixelType InputImagePixelType
Definition: otbStreamingFeatherMosaicFilter.h:73
otb::StreamingFeatherMosaicFilter::DistanceImageConstPointer
DistanceImageType::ConstPointer DistanceImageConstPointer
Definition: otbStreamingFeatherMosaicFilter.h:106
otb::StreamingFeatherMosaicFilter::InputImageSizeType
Superclass::InputImageSizeType InputImageSizeType
Definition: otbStreamingFeatherMosaicFilter.h:75
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImageType
TOutputImage OutputImageType
Definition: otbStreamingMosaicFilterBase.h:78
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImageIndexType
OutputImageType::IndexType OutputImageIndexType
Definition: otbStreamingMosaicFilterBase.h:81
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::ConstIteratorType
itk::ImageRegionConstIterator< OutputImageType > ConstIteratorType
Definition: otbStreamingMosaicFilterBase.h:97
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImageRegionType
OutputImageType::RegionType OutputImageRegionType
Definition: otbStreamingMosaicFilterBase.h:80
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InterpolatorType
itk::InterpolateImageFunction< InputImageType, InternalValueType > InterpolatorType
Definition: otbStreamingMosaicFilterBase.h:91
otb::StreamingFeatherMosaicFilter::StreamingTraitsType
Superclass::StreamingTraitsType StreamingTraitsType
Definition: otbStreamingFeatherMosaicFilter.h:101
otb::StreamingFeatherMosaicFilter::DistanceImageInternalPixelType
DistanceImageType::InternalPixelType DistanceImageInternalPixelType
Definition: otbStreamingFeatherMosaicFilter.h:109
otb::StreamingFeatherMosaicFilter::DistanceImagePixelType
DistanceImageType::PixelType DistanceImagePixelType
Definition: otbStreamingFeatherMosaicFilter.h:108
otb::StreamingFeatherMosaicFilter::m_FeatheringTransitionDistance
InternalValueType m_FeatheringTransitionDistance
Definition: otbStreamingFeatherMosaicFilter.h:135
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImageSizeType
OutputImageType::SizeType OutputImageSizeType
Definition: otbStreamingMosaicFilterBase.h:83
otb::StreamingFeatherMosaicFilter::~StreamingFeatherMosaicFilter
virtual ~StreamingFeatherMosaicFilter()
Definition: otbStreamingFeatherMosaicFilter.h:127
otb::StreamingFeatherMosaicFilter::InternalImageType
Superclass::InternalImageType InternalImageType
Definition: otbStreamingFeatherMosaicFilter.h:97
otb::StreamingFeatherMosaicFilter::OutputImageSpacingType
Superclass::OutputImageSpacingType OutputImageSpacingType
Definition: otbStreamingFeatherMosaicFilter.h:87
otbStreamingFeatherMosaicFilter.hxx
otb::StreamingFeatherMosaicFilter::OutputImageRegionType
Superclass::OutputImageRegionType OutputImageRegionType
Definition: otbStreamingFeatherMosaicFilter.h:89
otb::StreamingFeatherMosaicFilter::DistanceImageInterpolatorType
itk::InterpolateImageFunction< DistanceImageType > DistanceImageInterpolatorType
Definition: otbStreamingFeatherMosaicFilter.h:111
otb::StreamingFeatherMosaicFilter::InternalPixelType
Superclass::InternalPixelType InternalPixelType
Definition: otbStreamingFeatherMosaicFilter.h:98
otb::StreamingFeatherMosaicFilter::OutputImageInternalPixelType
Superclass::OutputImageInternalPixelType OutputImageInternalPixelType
Definition: otbStreamingFeatherMosaicFilter.h:88
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::IteratorType
itk::ImageRegionIterator< OutputImageType > IteratorType
Definition: otbStreamingMosaicFilterBase.h:96
otb::StreamingFeatherMosaicFilter::DistanceImageType
TDistanceImage DistanceImageType
Definition: otbStreamingFeatherMosaicFilter.h:104
otb::StreamingFeatherMosaicFilter::OutputImagePointer
Superclass::OutputImagePointer OutputImagePointer
Definition: otbStreamingFeatherMosaicFilter.h:82
otb::StreamingFeatherMosaicFilter::InputImagePointType
Superclass::InputImagePointType InputImagePointType
Definition: otbStreamingFeatherMosaicFilter.h:72
otb::StreamingFeatherMosaicFilter::ContinuousIndexType
Superclass::ContinuousIndexType ContinuousIndexType
Definition: otbStreamingFeatherMosaicFilter.h:93
otb::StreamingFeatherMosaicFilter::DistanceImagePointer
DistanceImageType::Pointer DistanceImagePointer
Definition: otbStreamingFeatherMosaicFilter.h:105
otb::StreamingFeatherMosaicFilter::InputImageIndexType
Superclass::InputImageIndexType InputImageIndexType
Definition: otbStreamingFeatherMosaicFilter.h:74
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InterpolatorPointerType
InterpolatorType::Pointer InterpolatorPointerType
Definition: otbStreamingMosaicFilterBase.h:92
otb::StreamingFeatherMosaicFilter::DistanceImageDefaultInterpolatorType
itk::LinearInterpolateImageFunction< DistanceImageType > DistanceImageDefaultInterpolatorType
Definition: otbStreamingFeatherMosaicFilter.h:112
otb::StreamingFeatherMosaicFilter::InputImageSpacingType
Superclass::InputImageSpacingType InputImageSpacingType
Definition: otbStreamingFeatherMosaicFilter.h:76
otb::StreamingFeatherMosaicFilter
Computes the mosaic of an input images set using feathering technique. The output is a nice seamless ...
Definition: otbStreamingFeatherMosaicFilter.h:54
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::InputImagePointer
InputImageType::ConstPointer InputImagePointer
Definition: otbStreamingMosaicFilterBase.h:68
otb::StreamingFeatherMosaicFilter::ConstIteratorType
Superclass::ConstIteratorType ConstIteratorType
Definition: otbStreamingFeatherMosaicFilter.h:100
otb::StreamingFeatherMosaicFilter::m_FeatheringSmoothness
InternalValueType m_FeatheringSmoothness
Definition: otbStreamingFeatherMosaicFilter.h:137
otb::StreamingFeatherMosaicFilter::InputImagePointer
Superclass::InputImagePointer InputImagePointer
Definition: otbStreamingFeatherMosaicFilter.h:71
otb::StreamingFeatherMosaicFilter::InputImageInternalPixelType
Superclass::InputImageInternalPixelType InputImageInternalPixelType
Definition: otbStreamingFeatherMosaicFilter.h:77
otb::VectorImage
Creation of an "otb" vector image which contains metadata.
Definition: otbVectorImage.h:45
otb::StreamingFeatherMosaicFilter::InterpolatorType
Superclass::InterpolatorType InterpolatorType
Definition: otbStreamingFeatherMosaicFilter.h:94
otb::StreamingMosaicFilterBase< TInputImage, TOutputImage, double >::OutputImagePixelType
OutputImageType::PixelType OutputImagePixelType
Definition: otbStreamingMosaicFilterBase.h:85
otb::StreamingFeatherMosaicFilter::OutputImagePointType
Superclass::OutputImagePointType OutputImagePointType
Definition: otbStreamingFeatherMosaicFilter.h:83