PSIQINTERP

Convert complex data to other interpretations


EnvironmentsPYTHON :: EASI :: MODELER
Quick linksDescription :: Parameters :: Parameter descriptions :: Details :: Examples :: Related

Back to top

Description


PSIQINTERP converts back and forth between complex-valued layers and real-valued interpretations. For example, you can use the algorithm to do the following:
Back to top

Parameters


Name Type Caption Length Value range
FILI * String Input-file name 1 - 192  
DBIC Integer Database input-channel list 0 -    
CINTERP * String Complex SAR interpretation 1 - 192 Intensity|Amplitude|Phase R|Phase D|Decibel|Real|Imaginary|RI|IQ|Complex|Polar
DBOC Integer Database output-channel list 0 -    
FILO * String Database output-file name 1 - 192  
FTYPE String Output-file type 0 - 192 Default: PIX
FOPTIONS String Output-file options 0 - 192  
MONITOR String Monitor mode 0 - 3 ON, OFF
Default: ON

* Required parameter
Back to top

Parameter descriptions

FILI

The name of the input file that contains the complex or real-valued channel or channels to modify or interpret.

DBIC

The list of input image channels to convert.

To convert to intensity, amplitude, phase in radians, phase in degrees, decibels, real or imaginary part, or to convert between complex representations, the input layer must be of type [C16S] or [C32R].

To create complex-valued or polar-valued layers, the input must be real values [32R] or signed integer [16S] layers.

CINTERP

The interpretation type. You can enter either the short or long form of the following values:

DBOC

If the output file (FILO) corresponds to a new file, do not specify a value for DBOC. If the output file exists already, the number of channels must equal that specified for the combined value of DBIC and CINTERP.

Note: If the value of CINTERP is IQ or RI, the number of channels must be twice that specified for DBIC.

If CINTERP is Complex or Polar, the number of real-valued input channels must be twice the number specified for DBIC. If the input and output are complex valued, the number of channels for DBIC and DBOC must be identical.

If the output file exists already, the channels specified for DBOC must be in either 32-bit real format [32R] for real-valued output or one of [C16R] (for signed complex integer) or [C32R] for (floating-point complex) valued output. If the file does not exist already, the default will be [32R] for real-valued output and [C32R] for complex-valued output.

FILO

The name of the output file to create.

The name can be that of either a new or an existing file, but must differ from that of the input file. If the file exists already, the size—that is, the number of image rows and columns—of the output file must match the size of the input file.

FTYPE

The format of the output file.

The format must be a GDB-recognized type.

The following formats are supported:

The default value is PIX.

For a complete list of GDB-recognized file types, see GDB-supported file formats.

FOPTIONS

The options to apply when creating the output file specific to the file format, such as compression schemes, file-format subtypes, and so forth.

Typically, the available options for a format include a compression scheme, format subtype, or other information. In most applications, the default (no options) is suitable for most applications.

For a complete list of GDB-recognized file types and their available options, see GDB-supported file formats.

MONITOR

The program progress can be monitored by printing the percentage of processing completed. A system parameter, MONITOR, controls this activity.

Available options are:

Back to top

Details

Many SAR images are delivered in single-look (SLC) or multilook (MLC) complex format. PSIQINTERP provides the ability to manipulate complex-valued layers.

The algorithm can do the following:

When converting from a complex-valued layer written in Cartesian format (a + bi) to real-valued layers, where a corresponds to the real part (I) and b to the imaginary part (Q), CINTERP supports the following transformations:

With the Cartesian complex number, (a + bi) = 0.206871 − 0.0338254i, CINTERP supports the following transformations:

When converting from a complex-valued layer in polar format (rho, theta) to real-valued layers, where r corresponds to the magnitude and theta to the (unwrapped) phase, in degrees, CINTERP supports the following transformations:

With the polar-complex number (rho, theta) = (5.71684, 47.98211), CINTERP supports the following transformations:

To convert from real values to complex layers, the input layers specified in the input-channel list must be real valued with two channels of input required for each complex-valued output channel. The real-valued input can be converted to complex layers in either Cartesian or polar format. The two real values a and b are interpreted as (a + bi) when CINTERP is Complex, and as rho, theta when CINTERP is Polar.

For example, if the input data specified in the input-channel list contains the value 2.4 in the first channel and -1.9 in the second, with CINTERP as Complex, the Cartesian pair is written as (2.4 -1.9i). The intensity is (2.4)2 + (-1.9)2 = 9.37 and phase of arctan (-1.9/2.4) = -38.367 degrees. If CINTERP is Polar, the intensity is (2.4)2 = 5.76, and the phase is interpreted as -1.9 degrees.

The exception to this rule is when the real valued input layer has the Scale or SARPixelContent metadata tag. These metadata tags indicate the values are to be always interpreted as intensity, amplitude or decibel. If these metadata tags are present, the input is converted prior to being written as a complex pair.

For example, if the first layer of input data contains the Scale = decibel metadata tag with a value of 2.4, and the second channel has a value of -1.9, with CINTERP as Complex, the first channel is converted from 2.4 dB = 100.24 = 1.7378 prior to writing the output as the complex number (1.7378, -1.9).

PSIQINTERP accepts calibrated or noncalibrated 16-bit signed channels [C16S] in raw vendor format as input. With SAR data sets distributed in multiple files, use the key-file name. For more information, see GDB-supported file formats.

Back to top

Examples

In the following example, the four channels of a SLC RADARSAT-2 Fine QuadPol image are ingested with the sigma nought calibration applied. The four resulting complex channels [C32R] are then converted to intensities using PSIQINTERP. The resulting file will have four channels [32R].

EASI>FILI = "product.xml"
EASI>FILO = "RS2_FQ17_slc.pix"
EASI>CALIBTYP = "sigma"
run saringest

EASI>FILI = "RS2_FQ17_slc.pix"
EASI>DBIC = 1,2,3,4
EASI>CINTERP = "Int" 
EASI>DBOC =
EASI>FILO = "RS2_FQ17_int.pix" 
EASI>FTYPE = "PIX" 
EASI>FOPTIONS = "" 
run psiqinterp
      

In the following example, the four complex channels [C32R] are converted to real and imaginary (I & Q) values. The resulting file will have eight channels of [32R] data written as interleaved I and Q channels. Channels 1 and 2 will contain the real and imaginary part of HH, channels 3 and 4 will contain the real and imaginary part of HV, and so on.

EASI>FILI = "RS2_FQ17_slc.pix"
EASI>DBIC = 1,2,3,4
EASI>CINTERP = "ri" 
EASI>DBOC =
EASI>FILO = "RS2_FQ17_IQ.pix" 
EASI>FTYPE = "PIX" 
EASI>FOPTIONS = "" 
run psiqinterp
		
In the following example, the complex (HH and VV) channels are converted to intensity, decibels, and phase, in degrees.
The output will contain six channels in the following order:
  1. HH in amplitude
  2. HH in decibels
  3. HH phase, in degrees
  4. VV in amplitude
  5. VV in decibels
  6. VV phase, in degrees
EASI>FILI = "RS2_FQ17_slc.pix"
EASI>DBIC = 1,4
EASI>CINTERP = "amp, decibel, phased" 
EASI>DBOC = 
EASI>FILO = "RS2_FQ17_HH_VV_amp_decibel_phase_degrees.pix" 
EASI>FTYPE = "PIX" 
EASI>FOPTIONS = "" 
run psiqinterp
		

In the following example, the input file contains channels of real values and you want to write them as complex pairs. The result is that I,Q pairs from input channels 4 and 5 are written to output complex-valued channel 1 and input channels 8 and 9 to output complex-valued channel 2.

EASI>FILI = "Real_valued_data.pix"
EASI>DBIC = 4,5,8,9
EASI>CINTERP = "complex" 
EASI>DBOC = 
EASI>FILO = "Two_channels_of_complex_data.pix" 
EASI>FTYPE = "PIX" 
EASI>FOPTIONS = "" 
run psiqinterp
		

In the following example, the input is complex-valued Cartesian, and the required output is polar format.

EASI>FILI = "Cartesian_Complex.pix"
EASI>DBIC = 1
EASI>CINTERP = "Polar" 
EASI>DBOC = 
EASI>FILO = "Polar_Complex.pix" 
EASI>FTYPE = "PIX" 
EASI>FOPTIONS = "" 
run psiqinterp
		

© PCI Geomatics Enterprises, Inc.®, 2026. All rights reserved.