Skip to content

Add view:phase_angle to the View Extension #13

@alambare

Description

@alambare

Hello,

I would like to propose adding a new optional field to the View Extension:

  • view:phase_angle (number): The angle between the illumination direction and the viewing direction at the scene center. Measured in degrees.

The phase angle is a fundamental geometric parameter in remote sensing and photometry, widely used in BRDF analysis, reflectance normalization, and directional effect studies.

Motivation

The phase angle is a fundamental geometric parameter in remote sensing and photometry (e.g., BRDF analysis and photometric models such as Hapke). It is frequently provided directly in mission metadata products and widely used downstream (photometric correction, multi-angular analysis, reflectance normalization, cross-sensor comparisons).

Although view:* already contains angles that can be used to derive the phase angle, in practice:

  • not all catalogs provide the full set of required angles (or they vary in conventions),
  • deriving phase angle reliably can be non-trivial for users,
  • phase angle is often the primary parameter used by scientific processing chains and photometric models.

Making it explicit would improve interoperability and reduce ambiguity.

Proposed definition

view:phase_angle (number, degrees)

The angle measured at the target between the direction toward the light source (Sun) and the direction toward the observer (sensor), evaluated at the scene center.

Range & conventions

The phase angle is the angle between two directions (Sun→target and observer→target) measured at the target.

The schema constrains values to [0°, 180°], which is the standard geometric definition (angle between two vectors) and covers the most common use cases (Earth Observation, planetary surface imaging).

  • → opposition geometry (the Sun is behind the observer; the observer sees the fully illuminated side of the target),
  • 180° → the target is between the observer and the Sun; the observer sees the non-illuminated (night) side of the target.

Note: Some communities use extended ranges — [0°, 360°] for integrated bodies or atmospheric observations, or signed conventions [−180°, +180°] with negative values indicating backscattering. These conventions exist but are outside the scope of this field. Providers working with such conventions are encouraged to open a discussion for possible future extensions.

Relationship to existing view:* fields

Phase angle can be derived from incidence, emission, and relative azimuth angles. A common relationship used in photometry is:

cos(ϕ) = cos(i) cos(e) + cos(a) sin(i) sin(e)

where:

  • i: incidence angle
  • e: emergence/emission angle
  • a: relative azimuth angle
  • ϕ: phase angle

However, the phase angle is more commonly used directly and is not always easy to compute consistently across varying conventions and incomplete metadata.

Example

{
  "properties": {
    "view:phase_angle": 42.7
  }
}

If you're open to it, I can prepare a PR updating the JSON Schema and docs accordingly.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions