Composites¶
The composites module handles satellite imagery acquisition and annual composite generation from various sources via Google Earth Engine or local files.
composites ¶
Composite builders for satellite imagery acquisition.
Handles creating annual composites from various satellite sources via Google Earth Engine or loading local GeoTIFF files.
CompositeBuilder ¶
Bases: ABC
Abstract base class for satellite composite builders.
Subclasses must implement :meth:build and :meth:get_band_mapping.
Source code in agribound/composites/base.py
build
abstractmethod
¶
Build an annual composite and download it as a local GeoTIFF.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
config
|
AgriboundConfig
|
Pipeline configuration. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Path to the downloaded composite GeoTIFF. |
Source code in agribound/composites/base.py
get_band_mapping
abstractmethod
¶
Return the band name mapping for a satellite source.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
source
|
str
|
Satellite source name. |
required |
Returns:
| Type | Description |
|---|---|
dict[str, str]
|
Mapping of canonical names (R, G, B, NIR) to source band names. |
Source code in agribound/composites/base.py
get_resolution ¶
Return the native resolution in meters for a source.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
source
|
str
|
Satellite source name. |
required |
Returns:
| Type | Description |
|---|---|
float or None
|
Resolution in meters, or None for local sources. |
Source code in agribound/composites/base.py
get_composite_builder ¶
Factory function to get the appropriate composite builder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
source
|
str
|
Satellite source name. |
required |
Returns:
| Type | Description |
|---|---|
CompositeBuilder
|
Builder instance for the given source. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If the source is not recognized. |
Source code in agribound/composites/base.py
list_sources ¶
List all available satellite sources and their metadata.
Returns:
| Type | Description |
|---|---|
dict[str, dict]
|
Dictionary mapping source names to their metadata. |
Examples:
>>> from agribound import list_sources
>>> sources = list_sources()
>>> for name, info in sources.items():
... print(f"{name}: {info['resolution_m']}m")