API Reference
Plugin Interface
Aresys Product Folder SCT plugin interface.
Attributes
Classes
AresysInputProductPlugin
Plugin for Aresys product format
Attributes
Methods:
Protocol Implementation
Aresys product format PERSEO-Quality protocol-compliant wrapper.
Classes
DopplerPolynomialWrapper
Generic Polynomial wrapper used to interpolate Doppler data (Doppler Centroid or Rate)
Methods:
evaluate
Evaluate the Doppler Polynomial at given azimuth and range times.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_time
|
PreciseDateTime
|
azimuth time at which evaluate the polynomial |
required |
range_time
|
float
|
range time at which evaluate the polynomial |
required |
Returns:
| Type | Description |
|---|---|
float
|
doppler at that time |
ProductFolderManager
Product Manager class satisfying the QualityInputProduct protocol
Attributes
channels_list
property
Get list of available channels for this product
Methods:
get_channel_data
Get data and info referring to the selected channel.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
channel_id
|
int
|
selected channel number |
required |
Returns:
| Type | Description |
|---|---|
ChannelManager
|
ChannelManager containing data corresponding to the selected channel |
ProductFolderManagerExtended
Bases: ProductFolderManager
Attributes
channels_list
property
Get list of available channels for this product
Methods:
get_channel_data
Get data and info referring to the selected channel.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
channel_id
|
int
|
selected channel number |
required |
Returns:
| Type | Description |
|---|---|
ChannelManager
|
ChannelManager containing data corresponding to the selected channel |
ChannelManager
Channel Manager class satisfying the ChannelData protocol
Attributes
sampling_constants
property
Channel data signal sampling frequencies
doppler_centroid
property
Channel doppler centroid polynomial wrapper
doppler_rate
property
Channel doppler rate polynomial wrapper
lines_per_burst
property
Lines per burst, for each burst in the swath
Methods:
__init__
Creating a ChannelManager object compliant with the ChannelData protocol.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
channel_metadata_path
|
Path
|
Path to the channel metadata xml file |
required |
channel_raster_path
|
int
|
Path to the channel raster file |
required |
channel_num
|
int
|
number of current channel |
required |
get_mid_burst_times
get_steering_rate
get_location_data
Generating a LocationData object containing data and info derived from the current ChannelManager and declined to the specific azimuth and range times selected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_time
|
PreciseDateTime
|
selected azimuth time |
required |
range_time
|
float
|
selected range time |
required |
Returns:
| Type | Description |
|---|---|
LocationData
|
LocationData instance related to the selected location |
pixel_to_times_conversion
pixel_to_times_conversion(azimuth_index: float, range_index: float, burst: int = None) -> tuple[PreciseDateTime, float]
Converting input raster pixel coordinates (azimuth_index and range index) to corresponding absolute times, azimuth and range.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_index
|
float
|
azimuth pixel index, subpixel precision |
required |
range_index
|
float
|
range pixel index, subpixel precision |
required |
burst
|
int
|
burst index, by default None |
None
|
Returns:
| Type | Description |
|---|---|
PreciseDateTime
|
azimuth time |
float
|
range time |
times_to_pixel_conversion
times_to_pixel_conversion(azimuth_time: PreciseDateTime, range_time: float, burst: int = None) -> tuple[float, float]
Converting azimuth and range times to raster image pixels indexes with subpixel precision.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_time
|
PreciseDateTime
|
azimuth time |
required |
range_time
|
float
|
range time |
required |
burst
|
int
|
burst number corresponding to these times |
None
|
Returns:
| Type | Description |
|---|---|
float
|
pixel corresponding to azimuth time |
float
|
pixel corresponding to range time |
ground_points_to_burst_association
Determining the burst (or bursts) where the input coordinates lie. If no association can be found (i.e. the point is not visible in the scene), None is returned.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
coordinates
|
ArrayLike
|
array of coordinates, in the form (N, 3) |
required |
Returns:
| Type | Description |
|---|---|
list[[list[int] | None]]
|
list containing the burst association for each input point, None if no association was found |
times_to_burst_association
Associate the right burst to a given input time point. This function returns 1 association for each input time. Associating time only to the first burst containing it.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_times
|
ArrayLike
|
azimuth time array in PreciseDateTime format |
required |
Returns:
| Type | Description |
|---|---|
list[int]
|
burst associated with a given time |
Raises:
| Type | Description |
|---|---|
CoordinatesOutOfBounds
|
if input time exceeds tme boundaries of the swath |
pixel_to_burst_association
Associate the azimuth pixel value to the right burst. This function returns 1 association for each input time.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_px_indexes
|
ArrayLike
|
azimuth pixel indexes array |
required |
Returns:
| Type | Description |
|---|---|
list[int]
|
burst associated with a given pixel index |
Raises:
| Type | Description |
|---|---|
CoordinatesOutOfBounds
|
if input time exceeds tme boundaries of the swath |
read_data
read_data(azimuth_index: int, range_index: int, cropping_size: tuple[int, int] = (150, 150), output_radiometric_quantity: SARRadiometricQuantity = SARRadiometricQuantity.BETA_NOUGHT, burst: int | None = None) -> np.ndarray
Extracting the swath portion centered to the provided target position and of size cropping_size by cropping_size. Target position is provided via its azimuth and range indexes in the swath array.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
azimuth_index
|
int
|
index of azimuth time in swath array |
required |
range_index
|
int
|
index of range time in swath array |
required |
cropping_size
|
tuple[int, int]
|
size in pixel of the swath portion to be read (number of samples, number of lines), by default (150, 150) |
(150, 150)
|
output_radiometric_quantity
|
SARRadiometricQuantity
|
selected output radiometric quantity to convert the read data to, if needed, by default SARRadiometricQuantity.BETA_NOUGHT |
BETA_NOUGHT
|
burst
|
int
|
if burst is provided, the roi extraction gives error if the boundaries exceed the burst boundaries, by default None |
None
|
Returns:
| Type | Description |
|---|---|
ndarray
|
cropped swath array centered to the input target coordinates, data is provided with shape (samples, lines) by default the output radiometric quantity is BETA_NOUGHT, unless specified otherwise |
Raises:
| Type | Description |
|---|---|
AzimuthExceedsBoundariesError
|
azimuth index exceeds swath or burst boundaries |
RangeExceedsBoundariesError
|
range index exceeds swath or burst boundaries |
Functions:
raster_layout_from_metadata
raster_layout_from_metadata(burst_info: BurstInfo | None, raster_info: RasterInfo) -> L1RasterLayout
Generating a L1RasterLayout from Product Folder BurstInfo and RasterInfo metadata for the current channel.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
burst_info
|
BurstInfo | None
|
channel BurstInfo, None if not present |
required |
raster_info
|
RasterInfo
|
channel RasterInfo |
required |
Returns:
| Type | Description |
|---|---|
L1RasterLayout
|
raster layout of current Product Folder channel |