pystac.extensions.sar#
Implements the Synthetic-Aperture Radar (SAR) Extension.
- class pystac.extensions.sar.AssetSarExtension(asset: Asset)[source]#
A concrete implementation of
SarExtensionon anAssetthat 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 anAssetto extend it.
- class pystac.extensions.sar.FrequencyBand(*values)[source]#
- C = 'C'#
- K = 'K'#
- KA = 'Ka'#
- KU = 'Ku'#
- L = 'L'#
- P = 'P'#
- S = 'S'#
- X = 'X'#
- class pystac.extensions.sar.ItemAssetsSarExtension(item_asset: ItemAssetDefinition)[source]#
- asset_defn: ItemAssetDefinition#
- properties: dict[str, Any]#
The properties that this extension wraps.
The extension which implements PropertiesExtension can use
_get_propertyand_set_propertyto get and set values on this instance. Note that _set_properties mutates the properties directly.
- class pystac.extensions.sar.ItemSarExtension(item: Item)[source]#
A concrete implementation of
SarExtensionon anItemthat 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 anItemto extend it.
- class pystac.extensions.sar.Polarization(*values)[source]#
- 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
ItemorAssetwith 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.
- property center_frequency: float | None#
Gets or sets a center frequency for the item.
- 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
ItemorAsset.- Raises:
pystac.ExtensionTypeError – If an invalid object type is passed.
- property frequency_band: FrequencyBand#
Gets or sets a FrequencyBand for the item.
- property instrument_mode: str#
Gets or sets an instrument mode string for the item.
- property looks_azimuth: int | None#
Gets or sets a looks azimuth for the item.
- property looks_equivalent_number: float | None#
Gets or sets a looks equivalent number for the item.
- property looks_range: int | None#
Gets or sets a looks range for the item.
- name: Literal['sar'] = 'sar'#
- property observation_direction: ObservationDirection | None#
Gets or sets an observation direction for the item.
- property pixel_spacing_azimuth: float | None#
Gets or sets a pixel spacing azimuth for the item.
- property pixel_spacing_range: float | None#
Gets or sets a pixel spacing range for the item.
- property polarizations: list[Polarization]#
Gets or sets a list of polarizations for the item.
- property product_type: str#
Gets or sets a product type string for the item.
- property resolution_azimuth: float | None#
Gets or sets a resolution azimuth for the item.
- property resolution_range: float | None#
Gets or sets a resolution range 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
SummariesExtensionthat extends thesummariesfield of aCollectionto include properties defined in the SAR Extension.- property center_frequency: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.center_frequencyvalues for this Collection.
- property frequency_band: list[FrequencyBand] | None#
Get or sets the summary of
SarExtension.frequency_bandvalues for this Collection.
- property instrument_mode: list[str] | None#
Get or sets the summary of
SarExtension.instrument_modevalues for this Collection.
- property looks_azimuth: RangeSummary[int] | None#
Get or sets the summary of
SarExtension.looks_azimuthvalues for this Collection.
- property looks_equivalent_number: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.looks_equivalent_numbervalues for this Collection.
- property looks_range: RangeSummary[int] | None#
Get or sets the summary of
SarExtension.looks_rangevalues for this Collection.
- property observation_direction: list[ObservationDirection] | None#
Get or sets the summary of
SarExtension.observation_directionvalues for this Collection.
- property pixel_spacing_azimuth: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.pixel_spacing_azimuthvalues for this Collection.
- property pixel_spacing_range: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.pixel_spacing_rangevalues for this Collection.
- property polarizations: list[Polarization] | None#
Get or sets the summary of
SarExtension.polarizationsvalues for this Collection.
- property product_type: list[str] | None#
Get or sets the summary of
SarExtension.product_typevalues for this Collection.
- property resolution_azimuth: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.resolution_azimuthvalues for this Collection.
- property resolution_range: RangeSummary[float] | None#
Get or sets the summary of
SarExtension.resolution_rangevalues for this Collection.
- class pystac.extensions.sar.T#
Generalized version of
Item,AssetorItemAssetDefinitionalias of TypeVar(‘T’, ~pystac.item.Item, ~pystac.asset.Asset, ~pystac.item_assets.ItemAssetDefinition)