Skip to content

Sensors

Sensor and platform configurations representing satellite, UAV, and ground-based observing systems together with their associated instrument types.

s2gos_simulator.config.sensors.BaseSensor pydantic-model

Bases: BaseModel

Base sensor configuration.

Fields:

Validators:

  • resolve_srf_presetsrf

Attributes

id pydantic-field

id: Optional[str] = None

Unique sensor identifier (auto-generated if not provided)

noise_model pydantic-field

noise_model: Optional[Dict[str, Any]] = None

Noise model configuration

platform_type pydantic-field

platform_type: PlatformType

Platform type identifier

produces pydantic-field

produces: List[
    Literal["radiance", "irradiance", "hdrf", "brf", "bhr"]
] = ["radiance"]

List of radiative quantities to be produced by this sensor configuration

samples_per_pixel pydantic-field

samples_per_pixel: int = 64

Number of Monte Carlo samples per pixel

srf pydantic-field

srf: Optional[SRFType] = None

Spectral response function

viewing pydantic-field

viewing: ViewingType

Viewing geometry configuration

s2gos_simulator.config.sensors.SatelliteSensor pydantic-model

Bases: BaseSensor

Satellite sensor configuration.

Fields:

Validators:

Attributes

band pydantic-field

band: str

Band identifier (validated against instrument-specific enum)

film_resolution pydantic-field

film_resolution: Tuple[int, int]

Pixel grid dimensions (width, height) for 2D imaging

for_reference_only pydantic-field

for_reference_only: bool = False

If True, this sensor is used for geometry specification only (e.g., for PixelHDRF/PixelBRF coordinate mapping) and will NOT be simulated. Use this when you already have satellite data and only need the sensor's geometry (lat/lon, resolution, viewing angles) for pixel index mapping. The sensor remains accessible for coordinate queries but is excluded from Eradiate measure translation.

instrument pydantic-field

instrument: SatelliteInstrument

Satellite instrument identifier

pixel_size_m property

pixel_size_m: Tuple[float, float]

Calculate ground pixel size in meters.

Returns:

Type Description
Tuple[float, float]

Tuple of (pixel_size_x_m, pixel_size_y_m) in meters per pixel

platform pydantic-field

platform: SatellitePlatform

Satellite platform identifier

platform_type pydantic-field

platform_type: Literal[SATELLITE] = SATELLITE

Platform type (always 'satellite')

target_center_lat pydantic-field

target_center_lat: float

Target center latitude in WGS84 decimal degrees

target_center_lon pydantic-field

target_center_lon: float

Target center longitude in WGS84 decimal degrees

target_size_km pydantic-field

target_size_km: Union[float, Tuple[float, float]]

Target area size: float for square (km), tuple for rectangular (width_km, height_km)

viewing pydantic-field

viewing: AngularViewing

Viewing geometry (zenith/azimuth angles)

Functions

validate_and_set_defaults pydantic-validator

validate_and_set_defaults()

Validate platform/instrument/band combination and set defaults.

s2gos_simulator.config.sensors.UAVSensor pydantic-model

Bases: BaseSensor

UAV sensor configuration.

Fields:

Validators:

Attributes

fov pydantic-field

fov: Optional[float] = None

Field of view in degrees (required for perspective_camera)

instrument pydantic-field

instrument: UAVInstrumentType

UAV instrument type

platform_type pydantic-field

platform_type: Literal[UAV] = UAV

Platform type (always 'uav')

post_processing pydantic-field

post_processing: Optional[PostProcessingOptions] = None

Post-processing pipeline options (spatial averaging, SRF, circular mask, etc.)

resolution pydantic-field

resolution: Optional[List[int]] = None

Film resolution [width, height] (required for perspective_camera)

viewing pydantic-field

viewing: Union[LookAtViewing, AngularFromOriginViewing]

Viewing geometry

Functions

generate_default_id pydantic-validator

generate_default_id()

Auto-generates an ID based on instrument and altitude if missing.

s2gos_simulator.config.sensors.GroundSensor pydantic-model

Bases: BaseSensor

Ground sensor configuration.

Fields:

Validators:

  • resolve_srf_presetsrf
  • set_instrument_defaults
  • validate_compatibility_and_id

Attributes

fov pydantic-field

fov: Optional[float] = None

Field of view in degrees (for camera-like instruments: HYPSTAR, perspective_camera, dhp_camera)

instrument pydantic-field

instrument: GroundInstrumentType

Ground instrument type

platform_type pydantic-field

platform_type: Literal[GROUND] = GROUND

Platform type (always 'ground')

post_processing pydantic-field

post_processing: Optional[PostProcessingOptions] = None

Post-processing pipeline options (spatial averaging, SRF, circular mask, etc.)

resolution pydantic-field

resolution: Optional[List[int]] = None

Film resolution [width, height] (for camera-like instruments: HYPSTAR, perspective_camera, dhp_camera)

viewing pydantic-field

viewing: Union[
    LookAtViewing,
    AngularFromOriginViewing,
    HemisphericalViewing,
    DistantViewing,
]

Viewing geometry

s2gos_simulator.config.sensors.SatellitePlatform

Bases: str, Enum

Supported satellite platforms.

s2gos_simulator.config.sensors.SatelliteInstrument

Bases: str, Enum

Supported satellite instruments.

s2gos_simulator.config.sensors.GroundInstrumentType

Bases: str, Enum

Enum for ground instrument types for robustness.

s2gos_simulator.config.sensors.UAVInstrumentType

Bases: str, Enum

Enum for UAV-mounted instrument types.