OTB
9.0.0
Orfeo Toolbox
|
#include <otbSentinel1ThermalNoiseLookupData.h>
Public Types | |
using | ConstPointer = itk::SmartPointer< const Self > |
using | IndexValueType = itk::IndexValueType |
using | Pointer = itk::SmartPointer< Self > |
using | Self = Sentinel1ThermalNoiseLookupData |
using | Superclass = itk::LightObject |
Public Types inherited from otb::SarCalibrationLookupData | |
enum | { SIGMA = 0, BETA, GAMMA, DN, NOISE } |
typedef itk::SmartPointer< const Self > | ConstPointer |
typedef itk::IndexValueType | IndexValueType |
typedef itk::SmartPointer< Self > | Pointer |
typedef SarCalibrationLookupData | Self |
typedef itk::LightObject | Superclass |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const char * | GetNameOfClass () const |
double | GetValue (const IndexValueType x, const IndexValueType y) const override |
void | InitParameters (double firstLineTime, double lastLineTime, int numOfLines, std::vector< Sentinel1CalibrationStruct > const &rangeNoiseVectorList, std::vector< Sentinel1AzimuthNoiseStruct > const &azimuthNoiseVectorList) |
Public Member Functions inherited from otb::SarCalibrationLookupData | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual short | GetType () |
void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
SarCalibrationLookupData () | |
void | SetType (short t) |
~SarCalibrationLookupData () override=default | |
virtual void | ToKeywordlist (MetaData::Keywordlist &kwl, const std::string &prefix) const |
virtual void | FromKeywordlist (const MetaData::Keywordlist &kwl, const std::string &prefix) |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from otb::SarCalibrationLookupData | |
static Pointer | New () |
Protected Member Functions | |
Sentinel1ThermalNoiseLookupData () | |
~Sentinel1ThermalNoiseLookupData ()=default | |
Private Member Functions | |
double | GetAzimuthNoise (const IndexValueType x, const IndexValueType y) const |
int | GetAzimuthVectorIndex (int x, int y) const |
int | GetPixelIndex (int x, const std::vector< int > &vec) const |
double | GetRangeNoise (const IndexValueType x, const IndexValueType y) const |
int | GetRangeVectorIndex (int y) const |
Private Attributes | |
int | m_AzimuthCount = 0 |
std::vector< Sentinel1AzimuthNoiseStruct > | m_AzimuthNoiseVectorList |
double | m_FirstLineTime = 0. |
double | m_LastLineTime = 0. |
double | m_LineTimeInterval = 0. |
int | m_NumOfLines = 0 |
int | m_RangeCount = 0 |
std::vector< Sentinel1CalibrationStruct > | m_RangeNoiseVectorList |
Calculate the Sentinel 1 thermal noise contribution for the given pixel.
This class computes the thermal noise using the noise LUTs contained in the product metadata. Range noise and azimuth noise are considered. The noise contribution is the product of the interpolated LUTs at the pixel index. Only range noise is used if the azimuth noise LUT is not available (it is the case for older products).
Reference: MPC-0392 DI-MPC-TN Thermal Denoising of Products Generated by the S-1 IPF
This class is templated over the input image type and the coordinate representation type (e.g. float or double ).
Definition at line 61 of file otbSentinel1ThermalNoiseLookupData.h.
using otb::Sentinel1ThermalNoiseLookupData::ConstPointer = itk::SmartPointer<const Self> |
Definition at line 69 of file otbSentinel1ThermalNoiseLookupData.h.
using otb::Sentinel1ThermalNoiseLookupData::IndexValueType = itk::IndexValueType |
Definition at line 71 of file otbSentinel1ThermalNoiseLookupData.h.
using otb::Sentinel1ThermalNoiseLookupData::Pointer = itk::SmartPointer<Self> |
Definition at line 68 of file otbSentinel1ThermalNoiseLookupData.h.
Standard typedefs
Definition at line 66 of file otbSentinel1ThermalNoiseLookupData.h.
using otb::Sentinel1ThermalNoiseLookupData::Superclass = itk::LightObject |
Definition at line 67 of file otbSentinel1ThermalNoiseLookupData.h.
|
inlineprotected |
Definition at line 90 of file otbSentinel1ThermalNoiseLookupData.h.
References m_FirstLineTime.
|
protecteddefault |
virtual::itk::LightObject::Pointer otb::Sentinel1ThermalNoiseLookupData::CreateAnother | ( | void | ) | const |
|
private |
Compute azimuth thermal noise contribution
|
private |
|
virtual |
RTTI
Reimplemented from otb::SarCalibrationLookupData.
|
private |
|
private |
Compute range thermal noise contribution
|
private |
|
overridevirtual |
Compute noise contribution for a given pixel
Reimplemented from otb::SarCalibrationLookupData.
void otb::Sentinel1ThermalNoiseLookupData::InitParameters | ( | double | firstLineTime, |
double | lastLineTime, | ||
int | numOfLines, | ||
std::vector< Sentinel1CalibrationStruct > const & | rangeNoiseVectorList, | ||
std::vector< Sentinel1AzimuthNoiseStruct > const & | azimuthNoiseVectorList | ||
) |
Init the LUT using metadatas
|
static |
Creation through the object factory
|
private |
Definition at line 117 of file otbSentinel1ThermalNoiseLookupData.h.
|
private |
Azimuth noise LUT container
Definition at line 123 of file otbSentinel1ThermalNoiseLookupData.h.
|
private |
First line of the S1 product
Definition at line 107 of file otbSentinel1ThermalNoiseLookupData.h.
Referenced by Sentinel1ThermalNoiseLookupData().
|
private |
Last line of the product
Definition at line 110 of file otbSentinel1ThermalNoiseLookupData.h.
|
private |
Duration between two lines
Definition at line 113 of file otbSentinel1ThermalNoiseLookupData.h.
|
private |
Definition at line 115 of file otbSentinel1ThermalNoiseLookupData.h.
|
private |
Definition at line 116 of file otbSentinel1ThermalNoiseLookupData.h.
|
private |
Range noise LUT container
Definition at line 120 of file otbSentinel1ThermalNoiseLookupData.h.