|
OTB
9.0.0
Orfeo Toolbox
|
Go to the documentation of this file.
23 #ifndef otbBandMathXImageFilter_h
24 #define otbBandMathXImageFilter_h
26 #include "itkConstNeighborhoodIterator.h"
27 #include "itkImageToImageFilter.h"
64 template <
class TImage>
70 typedef itk::ImageToImageFilter<TImage, TImage>
Superclass;
85 typedef typename itk::ConstNeighborhoodIterator<TImage>::RadiusType
RadiusType;
101 using Superclass::SetNthInput;
110 void SetManyExpressions(
bool flag);
113 void SetExpression(
const std::string& expression);
116 std::string GetExpression(
unsigned int IDExpression)
const;
119 void SetMatrix(
const std::string& name,
const std::string& definition);
122 void SetConstant(
const std::string& name,
double value);
125 void ExportContext(
const std::string& filename);
128 void ImportContext(
const std::string& filename);
131 void ClearExpression();
134 std::vector<std::string> GetVarNames()
const;
138 return !m_StatsVarDetected.empty();
144 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
146 void GenerateOutputInformation()
override;
147 void GenerateInputRequestedRegion()
override;
149 void BeforeThreadedGenerateData()
override;
150 void ThreadedGenerateData(
const ImageRegionType& outputRegionForThread, itk::ThreadIdType threadId)
override;
151 void AfterThreadedGenerateData()
override;
164 void operator=(
const Self&) =
delete;
167 void CheckImageDimensions();
168 void PrepareParsers();
169 void PrepareParsersGlobStats();
170 void OutputsDimensions();
173 std::vector<std::vector<ParserType::Pointer>>
m_VParser;
199 #ifndef OTB_MANUAL_INSTANTIATION
ImageType::PixelType PixelType
itk::SmartPointer< const Self > ConstPointer
itk::ConstNeighborhoodIterator< TImage >::RadiusType RadiusType
itk::Array< long > m_ThreadOverflow
std::vector< adhocStruct > m_VVarName
std::vector< adhocStruct > m_VNotAllowedVarName
std::vector< std::vector< ParserType::Pointer > > m_VParser
ParserType::ValueType ValueType
std::vector< int > m_StatsVarDetected
std::vector< unsigned int > m_NeighDetected
itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
std::vector< std::vector< adhocStruct > > m_AImage
ImageType::Pointer ImagePointer
itk::SmartPointer< Self > Pointer
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.
ImageType::IndexType IndexType
itk::ImageToImageFilter< TImage, TImage > Superclass
std::vector< unsigned int > m_outputsDimensions
ImageType::PointType OrigineType
StatFilterType::MatrixType MatrixType
ImageType::ConstPointer ConstImagePointer
BandMathXImageFilter< TImage > Self
ImageType::RegionType ImageRegionType
ImageType::PixelType::ValueType PixelValueType
StreamingStatisticsVectorImageFilterType::Pointer StreamingStatisticsVectorImageFilterPointerType
bool GlobalStatsDetected() const
std::vector< adhocStruct > m_VFinalAllowedVarName
This class streams the whole input image through the PersistentStatisticsImageFilter.
std::vector< adhocStruct > m_VAllowedVarNameAddedByUser
ImageType::SpacingType SpacingType
itk::Array< long > m_ThreadUnderflow
unsigned int m_SizeNeighbourhood
std::vector< std::string > m_Expression
StreamingStatisticsVectorImageFilterType::MatrixType MatrixType
std::vector< adhocStruct > m_VAllowedVarNameAuto
Definition of the standard floating point parser. Standard implementation of the mathematical express...
StreamingStatisticsVectorImageFilter< ImageType > StreamingStatisticsVectorImageFilterType
Performs mathematical operations on the input images according to the formula specified by the user.
itk::SmartPointer< Self > Pointer
std::vector< RadiusType > m_NeighExtremaSizes