pystac.extensions.sar#
Implements the Synthetic-Aperture Radar (SAR) Extension.
- class pystac.extensions.sar.AssetSarExtension(asset: Asset)[source]#
A concrete implementation of
SARExtension
on anAsset
that extends the Asset fields to include properties defined in the SAR Extension.This class should generally not be instantiated directly. Instead, call
SARExtension.ext()
on anAsset
to extend it.
- class pystac.extensions.sar.FrequencyBand(value)[source]#
An enumeration.
- C = 'C'#
- K = 'K'#
- KA = 'Ka'#
- KU = 'Ku'#
- L = 'L'#
- P = 'P'#
- S = 'S'#
- X = 'X'#
- class pystac.extensions.sar.ItemAssetsSarExtension(item_asset: AssetDefinition)[source]#
- asset_defn: AssetDefinition#
- class pystac.extensions.sar.ItemSarExtension(item: Item)[source]#
A concrete implementation of
SARExtension
on anItem
that extends the properties of the Item to include properties defined in the SAR Extension.This class should generally not be instantiated directly. Instead, call
SARExtension.ext()
on anItem
to extend it.
- class pystac.extensions.sar.ObservationDirection(value)[source]#
An enumeration.
- LEFT = 'left'#
- RIGHT = 'right'#
- class pystac.extensions.sar.Polarization(value)[source]#
An enumeration.
- HH = 'HH'#
- HV = 'HV'#
- VH = 'VH'#
- VV = 'VV'#
- class pystac.extensions.sar.SarExtension[source]#
An abstract class that can be used to extend the properties of an
Item
orAsset
with properties from the SAR Extension. This class is generic over the type of STAC Object to be extended (e.g.Item
,Asset
).To create a concrete instance of
SARExtension
, use theSARExtension.ext()
method. For example:>>> item: pystac.Item = ... >>> sar_ext = SARExtension.ext(item)
- apply(instrument_mode: str, frequency_band: FrequencyBand, polarizations: list[Polarization], product_type: str, center_frequency: float | None = None, resolution_range: float | None = None, resolution_azimuth: float | None = None, pixel_spacing_range: float | None = None, pixel_spacing_azimuth: float | None = None, looks_range: int | None = None, looks_azimuth: int | None = None, looks_equivalent_number: float | None = None, observation_direction: ObservationDirection | None = None) None [source]#
Applies sar extension properties to the extended Item.
- Parameters:
instrument_mode – The name of the sensor acquisition mode that is commonly used. This should be the short name, if available. For example, WV for “Wave mode.”
frequency_band – The common name for the frequency band to make it easier to search for bands across instruments. See section “Common Frequency Band Names” for a list of accepted names.
polarizations – Any combination of polarizations.
product_type – The product type, for example SSC, MGD, or SGC.
center_frequency – Optional center frequency of the instrument in gigahertz (GHz).
resolution_range – Optional range resolution, which is the maximum ability to distinguish two adjacent targets perpendicular to the flight path, in meters (m).
resolution_azimuth – Optional azimuth resolution, which is the maximum ability to distinguish two adjacent targets parallel to the flight path, in meters (m).
pixel_spacing_range – Optional range pixel spacing, which is the distance between adjacent pixels perpendicular to the flight path, in meters (m). Strongly RECOMMENDED to be specified for products of type GRD.
pixel_spacing_azimuth – Optional azimuth pixel spacing, which is the distance between adjacent pixels parallel to the flight path, in meters (m). Strongly RECOMMENDED to be specified for products of type GRD.
looks_range – Optional number of groups of signal samples (looks) perpendicular to the flight path.
looks_azimuth – Optional number of groups of signal samples (looks) parallel to the flight path.
looks_equivalent_number – Optional equivalent number of looks (ENL).
observation_direction – Optional Antenna pointing direction relative to the flight trajectory of the satellite.
- classmethod ext(obj: T, add_if_missing: bool = False) SarExtension[T] [source]#
Extends the given STAC Object with properties from the SAR Extension.
This extension can be applied to instances of
Item
orAsset
.- Raises:
pystac.ExtensionTypeError – If an invalid object type is passed.
- property frequency_band: FrequencyBand#
Gets or sets a FrequencyBand for the item.
- property looks_equivalent_number: float | None#
Gets or sets a looks equivalent number for the item.
- property observation_direction: ObservationDirection | None#
Gets or sets an observation direction for the item.
- property polarizations: list[Polarization]#
Gets or sets a list of polarizations for the item.
- classmethod summaries(obj: Collection, add_if_missing: bool = False) SummariesSarExtension [source]#
Returns the extended summaries object for the given collection.
- class pystac.extensions.sar.SarExtensionHooks[source]#
- migrate(obj: dict[str, Any], version: STACVersionID, info: STACJSONDescription) None [source]#
Migrate a STAC Object in dict format from a previous version. The base implementation will update the stac_extensions to the latest schema ID. This method will only be called for STAC objects that have been identified as a previous version of STAC. Implementations should directly manipulate the obj dict. Remember to call super() in order to change out the old ‘stac_extension’ entry with the latest schema URI.
- prev_extension_ids = {'sar'}#
- schema_uri = 'https://stac-extensions.github.io/sar/v1.0.0/schema.json'#
- stac_object_types = {'Feature'}#
- class pystac.extensions.sar.SummariesSarExtension(collection: Collection)[source]#
A concrete implementation of
SummariesExtension
that extends thesummaries
field of aCollection
to include properties defined in the SAR Extension.- property center_frequency: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.center_frequency
values for this Collection.
- property frequency_band: list[FrequencyBand] | None#
Get or sets the summary of
SarExtension.frequency_band
values for this Collection.
- property instrument_mode: list[str] | None#
Get or sets the summary of
SarExtension.instrument_mode
values for this Collection.
- property looks_azimuth: RangeSummary[int] | None#
Get or sets the summary of
SarExtension.looks_azimuth
values for this Collection.
- property looks_equivalent_number: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.looks_equivalent_number
values for this Collection.
- property looks_range: RangeSummary[int] | None#
Get or sets the summary of
SarExtension.looks_range
values for this Collection.
- property observation_direction: list[ObservationDirection] | None#
Get or sets the summary of
SarExtension.observation_direction
values for this Collection.
- property pixel_spacing_azimuth: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.pixel_spacing_azimuth
values for this Collection.
- property pixel_spacing_range: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.pixel_spacing_range
values for this Collection.
- property polarizations: list[Polarization] | None#
Get or sets the summary of
SarExtension.polarizations
values for this Collection.
- property product_type: list[str] | None#
Get or sets the summary of
SarExtension.product_type
values for this Collection.
- property resolution_azimuth: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.resolution_azimuth
values for this Collection.
- property resolution_range: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.resolution_range
values for this Collection.