isce3  0.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | List of all members
isce3::signal::Covariance< T > Class Template Reference

Covariance estimation from dual-polarization or quad-polarization data. More...

#include <Covariance.h>

Public Member Functions

void covariance (std::map< std::string, isce3::io::Raster > &slc, std::map< std::pair< std::string, std::string >, isce3::io::Raster > &cov, size_t rangeLooks=1, size_t azimuthLooks=1)
 Covariance estimation. More...
 
void faradayRotation (std::map< std::string, isce3::io::Raster > &slc, isce3::io::Raster &faradayAngleRaster, size_t rangeLooks, size_t azimuthLooks)
 Estimate the Faraday rotation angle from quad-pol data. More...
 
void orientationAngle (isce3::io::Raster &azimuthSlopeRaster, isce3::io::Raster &rangeSlopeRaster, isce3::io::Raster &lookAngleRaster, isce3::io::Raster &tauRaster)
 Estimate polarimetric orientation angle. More...
 
void geocodeCovariance (isce3::io::Raster &rdrCov, isce3::io::Raster &geoCov, isce3::io::Raster &demRaster)
 Geocode covariance components. More...
 
void geocodeCovariance (isce3::io::Raster &rdrCov, isce3::io::Raster &geoCov, isce3::io::Raster &demRaster, isce3::io::Raster &rtc)
 Geocode covariance components. More...
 
void geocodeCovariance (isce3::io::Raster &rdrCov, isce3::io::Raster &geoCov, isce3::io::Raster &demRaster, isce3::io::Raster &rtc, isce3::io::Raster &orientationAngle)
 Geocode covariance components. More...
 
void geoGrid (double geoGridStartX, double geoGridStartY, double geoGridSpacingX, double geoGridSpacingY, double geoGridEndX, double geoGridEndY, int epsgcode)
 Set geocoded grid. More...
 
void geoGrid (double geoGridStartX, double geoGridStartY, double geoGridSpacingX, double geoGridSpacingY, int width, int length, int epsgcode)
 Set geocoded grid. More...
 
void radarGrid (isce3::core::LUT2d< double > doppler, isce3::core::DateTime refEpoch, double azimuthStartTime, double azimuthTimeInterval, int radarGridLength, double startingRange, double rangeSpacing, isce3::core::LookSide side, double wavelength, int radarGridWidth)
 Set the input radar grid. More...
 
void prf (double p)
 Set pulse repetition frequency (PRF). More...
 
void doppler (const isce3::core::LUT2d< double > &dop)
 Set Doppler.
 
void rangeSamplingFrequency (double rngSamplingFreq)
 Set range sampling frequency.
 
void rangeBandwidth (double rngBandwidth)
 Set range bandwidth.
 
void rangePixelSpacing (double rngPixelSpacing)
 Set range pixel spacing.
 
void wavelength (double wvl)
 Set radar wavelength.
 
void interpolator (isce3::core::dataInterpMethod method)
 Set interpolator method for geocoding.
 
void orbit (const isce3::core::Orbit &orbit)
 Set platform's orbit.
 
void ellipsoid (const isce3::core::Ellipsoid &ellipsoid)
 Set ellipsoid.
 
void projection (isce3::core::ProjectionBase *proj)
 Set the projection object.
 
void thresholdGeo2rdr (double threshold)
 Set the threshold for Geo2rdr computation.
 
void numiterGeo2rdr (int numiter)
 Set number of iterations Geo2rdr computation.
 
void linesPerBlock (size_t linesPerBlock)
 Set lines per block.
 
void demBlockMargin (double demBlockMargin)
 Set DEM block margin.
 
void radarBlockMargin (int radarBlockMargin)
 Set radar block margin.
 
void interpolator (isce3::core::Interpolator< T > *interp)
 Set interpolator.
 

Detailed Description

template<class T>
class isce3::signal::Covariance< T >

Covariance estimation from dual-polarization or quad-polarization data.

Member Function Documentation

template<class T >
void isce3::signal::Covariance< T >::covariance ( std::map< std::string, isce3::io::Raster > &  slc,
std::map< std::pair< std::string, std::string >, isce3::io::Raster > &  cov,
size_t  rangeLooks = 1,
size_t  azimuthLooks = 1 
)

Covariance estimation.

Parameters
[in]slcpolarimetric channels provided as std::map of Raster object of polarimetric channels. The keys are two or four of hh, hv, vh, and vv channels.
[out]covcovariance components obtained by cross multiplication and multi-looking the polarimetric channels
template<class T >
void isce3::signal::Covariance< T >::faradayRotation ( std::map< std::string, isce3::io::Raster > &  slc,
isce3::io::Raster faradayAngleRaster,
size_t  rangeLooks,
size_t  azimuthLooks 
)

Estimate the Faraday rotation angle from quad-pol data.

Parameters
[in]slcpolarimetric channels
[out]faradayAngleRasterraster object for Faraday rotation angle
[in]rangeLooksnumber of looks in range direction
[in]azimuthLooksnumber of looks in azimuth direction
template<class T >
void isce3::signal::Covariance< T >::geocodeCovariance ( isce3::io::Raster rdrCov,
isce3::io::Raster geoCov,
isce3::io::Raster demRaster 
)

Geocode covariance components.

Parameters
[in]rdrCovcovariance componenets in radar range-doppler coordinates
[out]geoCovgeocoded covariance componenets
[in]demRasterdigital elevation model (DEM) raster object
template<class T >
void isce3::signal::Covariance< T >::geocodeCovariance ( isce3::io::Raster rdrCov,
isce3::io::Raster geoCov,
isce3::io::Raster demRaster,
isce3::io::Raster rtc 
)

Geocode covariance components.

Radiometric Terrain Correction (RTC) is applied before geocoding.

Parameters
[in]rdrCovcovariance componenets in radar range-doppler coordinates
[out]geoCovgeocoded covariance componenets
[in]demRasterraster object for digital elevation model (DEM)
[in]rtcRasterraster object for radiometric terrain correction (RTC) factor
template<class T >
void isce3::signal::Covariance< T >::geocodeCovariance ( isce3::io::Raster rdrCov,
isce3::io::Raster geoCov,
isce3::io::Raster demRaster,
isce3::io::Raster rtc,
isce3::io::Raster orientationAngle 
)

Geocode covariance components.

RTC and polarimetric orientation angle are applied on Covariance components before geocoding.

Parameters
[in]rdrCovcovariance componenets in radar range-doppler coordinates
[out]geoCovgeocoded covariance componenets
[in]demRasterraster object for digital elevation model (DEM)
[in]rtcRasterraster object for radiometric terrain correction (RTC) factor
[in]orientationAngleRasterraster object for polarimetric orientation angle
template<class T >
void isce3::signal::Covariance< T >::geoGrid ( double  geoGridStartX,
double  geoGridStartY,
double  geoGridSpacingX,
double  geoGridSpacingY,
double  geoGridEndX,
double  geoGridEndY,
int  epsgcode 
)
inline

Set geocoded grid.

Parameters
[in]geoGridStartXcoordinate X of the upper-left corner of the geocoded grid
[in]geoGridStartYcoordinate Y of the upper-left corner of the geocoded grid
[in]geoGridSpacingXspacing of the geocoded grid in X direction
[in]geoGridSpacingYspacing of the geocoded grid in Y direction
[in]geoGridEndXcoordinate X of the lower-right corner of the geocoded grid
[in]geoGridEndYcoordinate Y of the lower-right corner of the geocoded grid
[in]epsgcodeEPSG code for defining the projection system
template<class T >
void isce3::signal::Covariance< T >::geoGrid ( double  geoGridStartX,
double  geoGridStartY,
double  geoGridSpacingX,
double  geoGridSpacingY,
int  width,
int  length,
int  epsgcode 
)
inline

Set geocoded grid.

Parameters
[in]geoGridStartXcoordinate X of the upper-left corner of the geocoded grid
[in]geoGridStartYcoordinate Y of the upper-left corner of the geocoded grid
[in]geoGridSpacingXspacing of the geocoded grid in X direction
[in]geoGridSpacingYspacing of the geocoded grid in Y direction
[in]widthnumber of pixels of the geocoded grid in X direction
[in]lengthnumber of pixels of the geocoded grid in Y direction
[in]epsgcodeEPSG code for defining the projection system
template<class T >
void isce3::signal::Covariance< T >::orientationAngle ( isce3::io::Raster azimuthSlopeRaster,
isce3::io::Raster rangeSlopeRaster,
isce3::io::Raster lookAngleRaster,
isce3::io::Raster tauRaster 
)

Estimate polarimetric orientation angle.

Parameters
[in]azimuthSlopeRasterraster object of the DEM's slope in azimuth direction
[in]rangeSlopeRasterraster object of the DEM's slope in range direction
[in]lookAngleRasterraster object of the look angle
[out]tauRasterraster object of the polarimetric orientation angle
template<class T >
void isce3::signal::Covariance< T >::prf ( double  p)
inline

Set pulse repetition frequency (PRF).

template<class T >
void isce3::signal::Covariance< T >::radarGrid ( isce3::core::LUT2d< double >  doppler,
isce3::core::DateTime  refEpoch,
double  azimuthStartTime,
double  azimuthTimeInterval,
int  radarGridLength,
double  startingRange,
double  rangeSpacing,
isce3::core::LookSide  side,
double  wavelength,
int  radarGridWidth 
)
inline

Set the input radar grid.

Parameters
[in]dopplerdoppler lookup table
[in]refEpochreference epoch
[in]azimuthStartTimestart time of the radar grid in azimuth direction
[in]azimuthTimeIntervalazimuth time interval
[in]radarGridLengthnumber of pixels of the radar grid in azimuth direction
[in]startingRangestarting slant range of the radar grid
[in]rangeSpacingrange spacing
[in]sideLeft or Right
[in]wavelengthRadar wavelength
[in]radarGridWidthnumber of pixels of the radar grid in range direction

The documentation for this class was generated from the following files:

Generated for ISCE3.0 by doxygen 1.8.5.