/usr/include/OTB-5.8/otbMorphologicalPyramidMRToMSConverter.h is in libotb-dev 5.8.0+dfsg-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 | /*=========================================================================
Program: ORFEO Toolbox
Language: C++
Date: $Date$
Version: $Revision$
Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
See OTBCopyright.txt for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
#ifndef otbMorphologicalPyramidMRToMSConverter_h
#define otbMorphologicalPyramidMRToMSConverter_h
#include "otbImageListToImageListFilter.h"
namespace otb
{
namespace MorphologicalPyramid
{
/**
* \class MRToMSConverter
* \brief This class convert a multi resolution decomposition from the morphological pyramid to a multi-scale one.
*
* This class convert a multi resolution decomposition from the morphological pyramid to a multi-scale one.
*
* The operation consists in iterativly upsampling and adding decimation details to a given detail image.
*
* \sa MorphologicalPyramidAnalyseFilter
* \sa MorphologicalPyramidSynthesisFilter
*
* \ingroup OTBMorphologicalPyramid
*/
template <class TInputImage, class TOutputImage>
class ITK_EXPORT MRToMSConverter
: public ImageListToImageListFilter<TInputImage, TOutputImage>
{
public:
/** Standard typedefs */
typedef MRToMSConverter Self;
typedef ImageListToImageListFilter<TInputImage, TOutputImage> Superclass;
typedef itk::SmartPointer<Self> Pointer;
typedef itk::SmartPointer<const Self> ConstPointer;
/** Creation through object factory macro */
itkNewMacro(Self);
/** Type macro */
itkTypeMacro(MRToMSConverter, ImageListToImageListFilter);
/** Input parameters typedefs */
typedef TInputImage InputImageType;
typedef typename Superclass::InputImagePointer InputImagePointer;
typedef typename Superclass::InputImageListType InputImageListType;
typedef typename Superclass::InputImageListPointerType InputImageListPointerType;
typedef typename InputImageListType::Iterator InputImageListIteratorType;
/** Output parameters typedefs */
typedef TOutputImage OutputImageType;
typedef typename Superclass::OutputImagePointer OutputImagePointerType;
typedef typename Superclass::OutputImageListType OutputImageListType;
typedef typename Superclass::OutputImageListPointerType OutputImageListPointerType;
/**
* Set The input list.
* \param imageList The analysed image at each level of the pyramid.
*/
using Superclass::SetInput;
void SetInput(const InputImageListType * imageList) ITK_OVERRIDE;
/**
* Set The SupFilter details
* \param imageList The brighter details extracted from the filtering operation.
*/
void SetSupFilter(InputImageListType * imageList);
/**
* Set The InfFilter details
* \param imageList The darker details extracted from the filtering operation.
*/
void SetInfFilter(InputImageListType * imageList);
/**
* Set The SupDeci details
* \param imageList The brighter details extracted from the filtering operation.
*/
void SetSupDeci(InputImageListType * imageList);
/**
* Set The InfDeci details
* \param imageList The darker details extracted from the filtering operation.
*/
void SetInfDeci(InputImageListType * imageList);
/**
* Get the input list.
* \return The list of the analysed image at each pyramid level.
*/
InputImageListType* GetInput(void) ITK_OVERRIDE;
/**
* Get The SupFilter details
* \return The brighter details extracted from the filtering operation.
*/
InputImageListType* GetSupFilter(void);
/**
* Get The InfFilter details
* \return The darker details extracted from the filtering operation.
*/
InputImageListType* GetInfFilter(void);
/**
* Get The SupDeci details
* \return The brighter details extracted from the resampling operation.
*/
InputImageListType* GetSupDeci(void);
/**
* Get The InfDeci details
* \return The brighter details extracted from the resampling operation.
*/
InputImageListType* GetInfDeci(void);
/**
* Get The inputList at full resolution.
* \return The analysed image at each pyramid level
* resampled at full resolution.
*/
OutputImageListType* GetOutput(void) ITK_OVERRIDE;
/**
* Get The SupFilter details at full resolution.
* \return The brighter details extracted from the filtering operation
* resampled at full resolution.
*/
OutputImageListType * GetSupFilterFullResolution(void);
/**
* Get The InfFilter details at full resolution.
* \return The darker details extracted from the filtering operation
* resampled at full resolution.
*/
OutputImageListType * GetInfFilterFullResolution(void);
/**
* Get The SupDeci details at full resolution.
* \return The brighter details extracted from the resampling operation
* resampled at full resolution.
*/
OutputImageListType * GetSupDeciFullResolution(void);
/**
* Get The InfDeci details at full resolution.
* \return The darker details extracted from the resampling operation
* resampled at full resolution.
*/
OutputImageListType * GetInfDeciFullResolution(void);
protected:
/** Constructor */
MRToMSConverter();
/** Destructor */
~MRToMSConverter() ITK_OVERRIDE {}
/** Main computation method */
void GenerateData() ITK_OVERRIDE;
/** PrintSelf method */
void PrintSelf(std::ostream& os, itk::Indent indent) const ITK_OVERRIDE;
private:
MRToMSConverter(const Self &); // purposely not implemented
void operator =(const Self&); // purposely not implemented
};
} // End namespace MorphologicalPyramid
} // End namespace otb
#ifndef OTB_MANUAL_INSTANTIATION
#include "otbMorphologicalPyramidMRToMSConverter.txx"
#endif
#endif
|