Radarsat/RCM reading objects (sarpy.io.complex.radarsat)¶
Functionality for reading Radarsat (RS2 and RCM) data into a SICD model.
- class sarpy.io.complex.radarsat.RadarSatDetails(file_name: str)¶
Bases:
object
Class for interpreting RadarSat-2 and RadarSat Constellation Mission (RCM) metadata files, and creating the corresponding sicd structure(s).
- property file_name: str¶
the file name
- Type:
str
- property directory_name: str¶
the package directory name
- Type:
str
- property satellite: str¶
the satellite name
- Type:
str
- property generation: str¶
RS2 or RCM
- Type:
str
- property pass_direction: str¶
The pass direction
- Type:
str
- get_symmetry() Tuple[Tuple[int, ...] | None, Tuple[int, ...] | None] ¶
Get the symmetry transform information.
- Returns:
reverse_axes (None|Tuple[int, …])
transpose_axes (None|Tuple[int, …])
- class sarpy.io.complex.radarsat.RadarSatReader(radar_sat_details)¶
Bases:
SICDTypeReader
A RadarSat-2 and RadarSat Constellation Mission (RCM) SLC file package reader implementation.
Changed in version 1.3.0 for reading changes.
- property radarsat_details: RadarSatDetails¶
The RadarSat/RCM details object.
- Type:
RadarSarDetails
- property file_name: str¶
Defined as a convenience property.
- Type:
None|str
- close() None ¶
This should perform any necessary clean-up operations, like closing open file handles, deleting any temp files, etc.
- property closed: bool¶
Is the reader closed? Reading will result in a ValueError
- Type:
bool
- property data_segment: DataSegment | Tuple[DataSegment, ...]¶
The data segment collection.
- Type:
DataSegment|Tuple[DataSegment, …]
- property data_size: Tuple[int, ...] | Tuple[Tuple[int, ...]]¶
the output/formatted data size(s) of the data segment(s). If there is a single data segment, then this will be Tuple[int, …], otherwise it will be Tuple[Tuple, int, …], …].
- Type:
Tuple[int, …]|Tuple[Tuple[int, …], …]
- property files_to_delete_on_close: List[str]¶
A collection of files to delete on the close operation.
- Type:
List[str]
- get_data_segment_as_tuple() Tuple[DataSegment, ...] ¶
Get the data segment collection as a tuple, to avoid the need for redundant checking issues.
- Return type:
Tuple[DataSegment, …]
- get_data_size_as_tuple() Tuple[Tuple[int, ...], ...] ¶
Get the data size collection as a tuple of tuples, to avoid the need for redundant checking issues.
- Return type:
Tuple[Tuple[int, …], …]
- get_raw_data_size_as_tuple() Tuple[Tuple[int, ...], ...] ¶
Get the raw data size collection as a tuple of tuples, to avoid the need for redundant checking issues.
- Return type:
Tuple[Tuple[int, …], …]
- get_sicd_bands() Tuple[str, ...] ¶
Gets the list of bands for each sicd.
- Return type:
Tuple[str, …]
- get_sicd_partitions(match_function: ~typing.Callable = <function is_general_match>) Tuple[Tuple[int, ...], ...] ¶
Partition the sicd collection into sub-collections according to match_function, which is assumed to establish an equivalence relation.
- Parameters:
match_function (callable) – This match function must have call signature (SICDType, SICDType) -> bool, and defaults to
sarpy.io.complex.sicd_elements.utils.is_general_match()
. This function is assumed reflexive, symmetric, and transitive.- Return type:
Tuple[Tuple[int, …], …]
- get_sicd_polarizations() Tuple[str, ...] ¶
Gets the list of polarizations for each sicd.
- Return type:
Tuple[str]
- get_sicds_as_tuple() None | Tuple[SICDType, ...] ¶
Get the sicd or sicd collection as a tuple - for simplicity and consistency of use.
- Return type:
None|Tuple[SICDType, …]
- property image_count: int¶
The number of images/data segments from which to read.
- Type:
int
- property raw_data_size: Tuple[int, ...] | Tuple[Tuple[int, ...]]¶
the raw data size(s) of the data segment(s). If there is a single data segment, then this will be Tuple[int, …], otherwise it will be Tuple[Tuple, int, …], …].
- Type:
Tuple[int, …]|Tuple[Tuple[int, …], …]
- read(*ranges: None | int | Tuple[int, ...] | slice, index: int = 0, squeeze: bool = True) ndarray ¶
Read formatted data from the given data segment. Note this is an alias to the
__call__()
called asreader(*ranges, index=index, raw=False, squeeze=squeeze)
.- Parameters:
ranges (Sequence[Union[None, int, Tuple[int, ...], slice]]) – The slice definition appropriate for data_segment[index].read() usage.
index (int) – The data_segment index. This is ignored if image_count== 1.
squeeze (bool) – Squeeze length 1 dimensions out of the shape of the return array?
- Return type:
numpy.ndarray
See also
See
meth:sarpy.io.general.data_segment.DataSegment.read.
- read_chip(*ranges: Sequence[None | int | Tuple[int, ...] | slice], index: int = 0, squeeze: bool = True) ndarray ¶
This is identical to
read()
, and presented for backwards compatibility.- Parameters:
ranges (Sequence[Union[None, int, Tuple[int, ...], slice]]) –
index (int) –
squeeze (bool) –
- Return type:
numpy.ndarray
See also
- read_raw(*ranges: None | int | Tuple[int, ...] | slice, index: int = 0, squeeze: bool = True) ndarray ¶
Read raw data from the given data segment. Note this is an alias to the
__call__()
called asreader(*ranges, index=index, raw=True, squeeze=squeeze)
.- Parameters:
ranges (Sequence[Union[None, int, Tuple[int, ...], slice]]) – The slice definition appropriate for data_segment[index].read() usage.
index (int) – The data_segment index. This is ignored if image_count== 1.
squeeze (bool) – Squeeze length 1 dimensions out of the shape of the return array?
- Return type:
numpy.ndarray
See also
See
meth:sarpy.io.general.data_segment.DataSegment.read_raw.
- property reader_type: str¶
A descriptive string for the type of reader
- Type:
str
- sarpy.io.complex.radarsat.is_a(file_name: str) RadarSatReader | None ¶
Tests whether a given file_name corresponds to a RadarSat file. Returns a reader instance, if so.
- Parameters:
file_name (str) – the file_name to check
- Returns:
RadarSatReader instance if RadarSat file, None otherwise
- Return type:
RadarSatReader|None