21 #ifndef otbSarRadiometricCalibrationFunction_h
22 #define otbSarRadiometricCalibrationFunction_h
49 template <
class TInputImage,
class TCoordRep =
float>
51 :
public itk::ImageFunction<TInputImage, typename itk::NumericTraits<typename TInputImage::PixelType>::AbsType, TCoordRep>
56 typedef itk::ImageFunction<TInputImage, typename itk::NumericTraits<typename TInputImage::PixelType>::AbsType, TCoordRep>
Superclass;
74 itkStaticConstMacro(ImageDimension,
unsigned int, InputImageType::ImageDimension);
95 this->ConvertPointToNearestIndex(point, index);
96 return this->EvaluateAtIndex(index);
103 this->ConvertContinuousIndexToNearestIndex(cindex, index);
104 return this->EvaluateAtIndex(index);
111 void SetInputImage(
const InputImageType* ptr)
override;
126 itkSetMacro(EnableNoise,
bool);
127 itkGetMacro(EnableNoise,
bool);
158 itkSetMacro(ApplyAntennaPatternGain,
bool);
159 itkGetMacro(ApplyAntennaPatternGain,
bool);
162 itkSetMacro(ApplyIncidenceAngleCorrection,
bool);
163 itkGetMacro(ApplyIncidenceAngleCorrection,
bool);
165 itkSetMacro(ApplyRangeSpreadLossCorrection,
bool);
166 itkGetMacro(ApplyRangeSpreadLossCorrection,
bool);
168 itkSetMacro(ApplyLookupDataCorrection,
bool);
169 itkGetMacro(ApplyLookupDataCorrection,
bool);
171 itkSetMacro(ApplyRescalingFactor,
bool);
172 itkGetMacro(ApplyRescalingFactor,
bool);
198 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
225 #ifndef OTB_MANUAL_INSTANTIATION
itk::SmartPointer< Self > Pointer
Evaluates a parametric bidimensionnal polynomial model from a PointSet.
itk::SmartPointer< const Self > ConstPointer
itk::SmartPointer< Self > Pointer
Calculate the backscatter for the given pixel.
ParametricFunctionPointer m_AntennaPatternOldGain
itkGetObjectMacro(Noise, ParametricFunctionType)
typename Sentinel1ThermalNoiseLookupType::Pointer Sentinel1ThermalNoiseLookupPointerType
ParametricFunctionType::Pointer ParametricFunctionPointer
otb::SarParametricMapFunction< InputImageType > ParametricFunctionType
ParametricFunctionPointer m_Noise
itkGetObjectMacro(IncidenceAngle, ParametricFunctionType)
void SetCalibrationLookupData(LookupDataPointer lut)
InputImageType::PixelType InputPixelType
SarRadiometricCalibrationFunction Self
bool m_ApplyRangeSpreadLossCorrection
~SarRadiometricCalibrationFunction() override
TInputImage InputImageType
ParametricFunctionType::ConstPointer ParametricFunctionConstPointer
SarRadiometricCalibrationFunction(const Self &)=delete
void operator=(const Self &)=delete
itk::SmartPointer< const Self > ConstPointer
ParametricFunctionPointer m_IncidenceAngle
bool m_ApplyIncidenceAngleCorrection
ParametricFunctionPointer m_RangeSpreadLoss
void SetNoiseLookupData(LookupDataPointer lut)
SarCalibrationLookupData::Pointer LookupDataPointer
itkGetObjectMacro(RangeSpreadLoss, ParametricFunctionType)
LookupDataPointer m_NoiseLut
Superclass::IndexType IndexType
RealType m_RescalingFactor
itkGetObjectMacro(AntennaPatternOldGain, ParametricFunctionType)
Superclass::ContinuousIndexType ContinuousIndexType
Superclass::PointType PointType
OutputType Evaluate(const PointType &point) const override
OutputType EvaluateAtContinuousIndex(const ContinuousIndexType &cindex) const override
itk::ImageFunction< TInputImage, typename itk::NumericTraits< typename TInputImage::PixelType >::AbsType, TCoordRep > Superclass
bool m_ApplyAntennaPatternGain
Superclass::OutputType OutputType
bool m_ApplyLookupDataCorrection
itk::SmartPointer< Self > Pointer
bool m_ApplyRescalingFactor
itkGetObjectMacro(AntennaPatternNewGain, ParametricFunctionType)
ParametricFunctionPointer m_AntennaPatternNewGain
Calculate the Sentinel 1 thermal noise contribution for the given pixel.
itk::SmartPointer< Self > Pointer
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.