SARPolarMatrixConvert - SARPolarMatrixConvert

This applications allows converting classical polarimetric matrices to each other.

Detailed description

This application allows converting classical polarimetric matrices to each other. For instance, it is possible to get the coherency matrix from the Sinclar one, or the Mueller matrix from the coherency one. The filters used in this application never handle matrices, but images where each band is related to their elements. As most of the time SAR polarimetry handles symmetric/hermitian matrices, only the relevant elements are stored, so that the images representing them have a minimal number of bands. For instance, the coherency matrix size is 3x3 in the monostatic case, and 4x4 in the bistatic case : it will thus be stored in a 6-band or a 10-band complex image (the diagonal and the upper elements of the matrix).

The Sinclair matrix is a special case : it is always represented as 3 or 4 one-band complex images (for mono- or bistatic case). The available conversions are listed below:

— Monostatic case — 1 msinclairtocoherency –> Sinclair matrix to coherency matrix (input : 3 x 1 complex channel (HH, HV or VH, VV) | output : 6 complex channels) 2 msinclairtocovariance –> Sinclair matrix to covariance matrix (input : 3 x 1 complex channel (HH, HV or VH, VV) | output : 6 complex channels) 3 msinclairtocircovariance –> Sinclair matrix to circular covariance matrix (input : 3 x 1 complex channel (HH, HV or VH, VV) | output : 6 complex channels) 4 mcoherencytomueller –> Coherency matrix to Mueller matrix (input : 6 complex channels | 16 real channels) 5 mcovariancetocoherencydegree –> Covariance matrix to coherency degree (input : 6 complex channels | 3 complex channels) 6 mcovariancetocoherency –> Covariance matrix to coherency matrix (input : 6 complex channels | 6 complex channels) 7 mlinearcovariancetocircularcovariance –> Covariance matrix to circular covariance matrix (input : 6 complex channels | output : 6 complex channels)

— Bistatic case — 8 bsinclairtocoherency –> Sinclair matrix to coherency matrix (input : 4 x 1 complex channel (HH, HV, VH, VV) | 10 complex channels) 9 bsinclairtocovariance –> Sinclair matrix to covariance matrix (input : 4 x 1 complex channel (HH, HV, VH, VV) | output : 10 complex channels) 10 bsinclairtocircovariance –> Sinclair matrix to circular covariance matrix (input : 4 x 1 complex channel (HH, HV, VH, VV) | output : 10 complex channels)

— Both cases — 11 sinclairtomueller –> Sinclair matrix to Mueller matrix (input : 4 x 1 complex channel (HH, HV, VH, VV) | output : 16 real channels) 12 muellertomcovariance –> Mueller matrix to covariance matrix (input : 16 real channels | output : 6 complex channels) 13 muellertopoldegandpower –> Mueller matrix to polarization degree and power (input : 16 real channels | output : 4 real channels)

Parameters

This section describes in details the parameters available for this application. Table [1] presents a summary of these parameters and the parameters keys to be used in command-line and programming languages. Application key is SARPolarMatrixConvert .

[1]Table: Parameters table for SARPolarMatrixConvert.
Parameter Key Parameter Name Parameter Type
inc Input : multi-band complex image Input image
inf Input : multi-band real image Input image
inhh Input : one-band complex image (HH) Input image
inhv Input : one-band complex image (HV) Input image
invh Input : one-band complex image (VH) Input image
invv Input : one-band complex image (VV) Input image
outc Output Complex Image Output image
outf Output Real Image Output image
conv Conversion Choices
conv msinclairtocoherency 1 Monostatic : Sinclair matrix to coherency matrix (complex output) Choice
conv msinclairtocovariance 2 Monostatic : Sinclair matrix to covariance matrix (complex output) Choice
conv msinclairtocircovariance 3 Monostatic : Sinclair matrix to circular covariance matrix (complex output) Choice
conv mcoherencytomueller 4 Monostatic : Coherency matrix to Mueller matrix Choice
conv mcovariancetocoherencydegree 5 Monostatic : Covariance matrix to coherency degree Choice
conv mcovariancetocoherency 6 Monostatic : Covariance matrix to coherency matrix (complex output) Choice
conv mlinearcovariancetocircularcovariance 7 Monostatic : Covariance matrix to circular covariance matrix (complex output) Choice
conv muellertomcovariance 8 Bi/mono : Mueller matrix to monostatic covariance matrix Choice
conv bsinclairtocoherency 9 Bistatic : Sinclair matrix to coherency matrix (complex output) Choice
conv bsinclairtocovariance 10 Bistatic : Sinclair matrix to covariance matrix (complex output) Choice
conv bsinclairtocircovariance 11 Bistatic : Sinclair matrix to circular covariance matrix (complex output) Choice
conv sinclairtomueller 12 Bi/mono : Sinclair matrix to Mueller matrix Choice
conv muellertopoldegandpower 13 Bi/mono : Mueller matrix to polarisation degree and power Choice
ram Available RAM (Mb) Int
inxml Load otb application from xml file XML input parameters file
outxml Save otb application to xml file XML output parameters file
  • Input : multi-band complex image: Input : multi-band complex image.
  • Input : multi-band real image: Input : multi-band real image.
  • Input : one-band complex image (HH): Input : one-band complex image (HH).
  • Input : one-band complex image (HV): Input : one-band complex image (HV).
  • Input : one-band complex image (VH): Input : one-band complex image (VH).
  • Input : one-band complex image (VV): Input : one-band complex image (VV).
  • Output Complex Image: Output Complex image.
  • Output Real Image: Output Real image.
  • Conversion Available choices are:
  • 1 Monostatic : Sinclair matrix to coherency matrix (complex output): 1 Monostatic :Sinclair matrix to coherency matrix (complex output).
  • 2 Monostatic : Sinclair matrix to covariance matrix (complex output): 2 Monostatic : Sinclair matrix to covariance matrix (complex output).
  • 3 Monostatic : Sinclair matrix to circular covariance matrix (complex output): 3 Monostatic : Sinclair matrix to circular covariance matrix (complex output).
  • 4 Monostatic : Coherency matrix to Mueller matrix: 4 Monostatic : Coherency matrix to Mueller matrix.
  • 5 Monostatic : Covariance matrix to coherency degree: 5 Monostatic : Covariance matrix to coherency degree .
  • 6 Monostatic : Covariance matrix to coherency matrix (complex output): 6 Monostatic : Covariance matrix to coherency matrix (complex output).
  • 7 Monostatic : Covariance matrix to circular covariance matrix (complex output): 7 Monostatic : Covariance matrix to circular covariance matrix (complex output).
  • 8 Bi/mono : Mueller matrix to monostatic covariance matrix: 8 Bi/mono : Mueller matrix to monostatic covariance matrix.
  • 9 Bistatic : Sinclair matrix to coherency matrix (complex output): 9 Bistatic : Sinclair matrix to coherency matrix (complex output).
  • 10 Bistatic : Sinclair matrix to covariance matrix (complex output): 10 Bistatic : Sinclair matrix to covariance matrix (complex output).
  • 11 Bistatic : Sinclair matrix to circular covariance matrix (complex output): 11 Bistatic : Sinclair matrix to circular covariance matrix (complex output).
  • 12 Bi/mono : Sinclair matrix to Mueller matrix: 12 Bi/mono : Sinclair matrix to Mueller matrix.
  • 13 Bi/mono : Mueller matrix to polarisation degree and power: 13 Bi/mono : Mueller matrix to polarisation degree and power.
  • Available RAM (Mb): Available memory for processing (in MB).
  • Load otb application from xml file: Load otb application from xml file.
  • Save otb application to xml file: Save otb application to xml file.

Example

To run this example in command-line, use the following:

otbcli_SARPolarMatrixConvert -inhh HH.tif -invh VH.tif -invv VV.tif -conv msinclairtocoherency -outc mcoherency.tif

To run this example from Python, use the following code snippet:

#!/usr/bin/python

# Import the otb applications package
import otbApplication

# The following line creates an instance of the SARPolarMatrixConvert application
SARPolarMatrixConvert = otbApplication.Registry.CreateApplication("SARPolarMatrixConvert")

# The following lines set all the application parameters:
SARPolarMatrixConvert.SetParameterString("inhh", "HH.tif")

SARPolarMatrixConvert.SetParameterString("invh", "VH.tif")

SARPolarMatrixConvert.SetParameterString("invv", "VV.tif")

SARPolarMatrixConvert.SetParameterString("conv","msinclairtocoherency")

SARPolarMatrixConvert.SetParameterString("outc", "mcoherency.tif")

# The following line execute the application
SARPolarMatrixConvert.ExecuteAndWriteOutput()

Limitations

None

Authors

This application has been written by OTB-Team.

See Also

These additional resources can be useful for further information:
SARPolarSynth, SARDecompositions