Skip to main content

Luminance Ontology

Optical Measurements
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 16 September 2026
Audio Overview
# Luminance Ontology — Flow Algebra

URL: https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/measurement-units-ontologies/optical-measurements/luminance-ontology.html

FLOW LuminanceOntology {

  DOMAIN:
    Mathematical Ontologies
    -> Measurement & Units Ontologies
    -> Optical Measurements
    -> Luminance Ontology

  PURPOSE:
    Represent luminance as a measurable directional photometric surface quantity describing luminous intensity per unit projected area in a specified direction, including candela per square metre, source and viewing geometry, solid angle, Lambertian behaviour, spectral visual weighting, spatial and angular distributions, imaging photometry, detector response, calibration, uncertainty, and distinctions from illuminance, luminous intensity, luminous flux and radiometric radiance.

  ENTITY Luminance {
    TYPE: DerivedDirectionalPhotometricSurfaceQuantity
    SYMBOL: L_v
    SI_UNIT: candela_per_square_metre
    SI_SYMBOL: cd/m^2

    DIFFERENTIAL_DEFINITION:
      L_v =
        d^2(Phi_v) /
        (dA*cos(theta)*dOmega)

    INTENSITY_AREA_FORM:
      L_v = dI_v/(dA*cos(theta))

    PROPERTIES:
      is_photometric
      is_directional
      is_surface_associated
      has_value
      has_unit
      depends_on_viewing_direction
      may_vary_with_position
      may_vary_with_time
      may_depend_on_spectrum
      may_have_uncertainty
  }

  ENTITY LuminousIntensity {
    TYPE: DirectionalPhotometricQuantity
    SYMBOL: I_v
    SI_UNIT: candela
    SI_SYMBOL: cd

    RELATION:
      dI_v = L_v*cos(theta)*dA
  }

  ENTITY LuminousFlux {
    TYPE: PhotometricFluxQuantity
    SYMBOL: Phi_v
    SI_UNIT: lumen
    SI_SYMBOL: lm
  }

  ENTITY Illuminance {
    TYPE: PhotometricSurfaceQuantity
    SYMBOL: E_v
    SI_UNIT: lux
    SI_SYMBOL: lx

    RULE:
      illuminance_describes_incident_light
      luminance_describes_directional_light_from_or_through_surface
  }

  ENTITY Radiance {
    TYPE: RadiometricDirectionalSurfaceQuantity
    SYMBOL: L_e
    SI_UNIT: watt_per_square_metre_steradian
    SI_SYMBOL: W/(m^2*sr)

    RELATION:
      spectral_radiance_visually_weighted -> luminance
  }

  UNIT_SYSTEM {
    SI {
      canonical_unit: candela_per_square_metre
      symbol: cd/m^2
    }

    COMMON_ALTERNATIVES:
      nit
      candela_per_square_centimetre
      foot_lambert
      stilb

    SEMANTIC_EQUIVALENCE:
      1 nit = 1 cd/m^2

    CONVERSION_RULE:
      luminance_value(target_unit)
        = luminance_value(source_unit)
        * conversion_factor(source_unit, target_unit)
  }

  CLASSIFICATION {
    by source behaviour:
      emitted_luminance
      reflected_luminance
      transmitted_luminance

    by spatial behaviour:
      uniform_luminance
      nonuniform_luminance
      local_luminance
      average_luminance

    by angular behaviour:
      Lambertian_luminance
      non_Lambertian_luminance
      directional_luminance

    by measurement:
      spot_luminance
      imaging_luminance
      display_luminance
  }

  GEOMETRIC_DEFINITION_MODEL {
    GENERAL:
      L_v =
        d^2(Phi_v) /
        (dA_projected*dOmega)

    PROJECTED_AREA:
      dA_projected = dA*cos(theta)

    INTENSITY_RELATION:
      dI_v = L_v*dA_projected

    REQUIRE:
      surface_element
      surface_normal
      viewing_direction
      solid_angle

    RULE:
      projected_area_not_raw_area
      is_required_for_directional_luminance_definition
  }

  LAMBERTIAN_MODEL {
    PROPERTY:
      ideal_Lambertian_surface_has_constant_luminance_with_viewing_direction

    INTENSITY:
      I_v(theta) = I_v(0)*cos(theta)

    EXITANCE_RELATION:
      M_v = pi*L_v
      FOR ideal_Lambertian_surface

    RULE:
      constant_luminance_does_not_mean_constant_luminous_intensity
  }

  REFLECTANCE_MODEL {
    ideal_diffuse_Lambertian_reflector:
      L_v = rho_v*E_v/pi

    WHERE:
      rho_v = luminous_reflectance
      E_v = incident_illuminance

    CONDITIONS:
      diffuse_Lambertian_reflection
      uniform_illumination
      photometric_context

    RULE:
      reflected_luminance_depends_on_both_illuminance_and_surface_reflectance
  }

  SPECTRAL_WEIGHTING_MODEL {
    spectral_radiance:
      L_e_lambda

    photopic_luminance:
      L_v =
        K_m * integral(V_lambda*L_e_lambda d_lambda)

    REQUIRE:
      spectral_radiance
      photopic_luminous_efficiency_function

    RULE:
      cd_per_m2_and_W_per_m2_sr
      MUST_NOT be converted_without_spectral_distribution
  }

  RADIANCE_DISTINCTION_MODEL {
    luminance:
      photometric_directional_surface_quantity

    radiance:
      radiometric_directional_surface_quantity

    RULE:
      luminance != radiance

    CONVERSION:
      requires_spectral_radiance_and_visual_weighting
  }

  ILLUMINANCE_DISTINCTION_MODEL {
    illuminance:
      incident_luminous_flux_per_receiving_area

    luminance:
      directional_luminous_intensity_per_projected_source_area

    RULE:
      lux_and_cd_per_m2
      measure_different_photometric_quantities
      and_MUST_NOT be treated_as_interchangeable
  }

  DISPLAY_MODEL {
    display_luminance:
      emitted_luminance_from_display_surface_in_defined_direction

    relevant_conditions:
      drive_level
      white_level
      black_level
      viewing_angle
      ambient_light
      display_mode
      temperature

    derived_metrics:
      contrast_ratio =
        white_luminance/black_luminance
        WHEN black_luminance != 0

    RULE:
      display_luminance SHOULD preserve measurement_pattern_and_viewing_geometry
  }

  SPATIAL_MODEL {
    luminance_field:
      L_v = L_v(x, y, direction, t)

    measurements:
      point_or_spot_luminance
      area_average_luminance
      luminance_image
      spatial_uniformity

    RULE:
      spatial_average MUST preserve region_of_interest_and_weighting_method
  }

  ANGULAR_MODEL {
    bidirectional_luminance:
      may_depend_on illumination_direction
      and viewing_direction

    non_Lambertian_surface:
      L_v(theta, phi) varies_with_direction

    RULE:
      viewing_angle MUST be preserved_for_directional_or_specular_surfaces
  }

  CONTRAST_MODEL {
    Weber_contrast:
      C_W = (L_target - L_background)/L_background
      WHEN L_background != 0

    Michelson_contrast:
      C_M =
        (L_max - L_min)/(L_max + L_min)
      WHEN denominator != 0

    RULE:
      contrast_definition MUST be declared
  }

  RELATIONSHIPS {
    Luminance -> LUMINOUS_INTENSITY_PER -> ProjectedArea
    Luminance -> MEASURED_IN -> CandelaPerSquareMetre
    Luminance -> DEPENDS_ON -> ViewingDirection
    Luminance -> MAY_DEPEND_ON -> SurfacePosition
    Luminance -> MAY_DEPEND_ON -> Spectrum
    Luminance -> RELATED_TO -> LuminousIntensity
    LambertianLuminance -> RELATES_TO -> LuminousExitance
    ReflectedLuminance -> MAY_DEPEND_ON -> IlluminanceAndReflectance
    SpectralRadiance -> VISUALLY_WEIGHTED_TO -> Luminance
    LuminanceDistribution -> CONTRIBUTES_TO -> VisualContrast
  }

  SEMANTIC_EQUIVALENCE {
    "luminance" ~= photometric_directional_surface_brightness_quantity
    "candela per square metre" ~= "cd/m^2"
    "nit" ~= "cd/m^2"

    luminance != illuminance
    luminance != luminous_intensity
    luminance != luminous_flux
    luminance != radiance
    luminance != subjective_brightness
    cd_per_m2 != lux
  }

  CONSTRAINTS {
    luminance_is_directional = true
    luminance_is_photometric = true
    SI_unit = cd/m^2
    projected_area_semantics_are_required = true
    viewing_direction_must_be_preserved = true
    luminance_and_illuminance_are_not_semantically_equivalent = true
    luminance_and_luminous_intensity_are_not_semantically_equivalent = true
    luminance_and_radiance_are_not_semantically_equivalent = true
    photometric_radiometric_conversion_requires_spectral_information = true
    subjective_brightness_must_not_be_equated_directly_with_luminance = true
  }

  MEASUREMENT_MODEL {
    OBSERVABLE:
      Luminance

    COMMON_INSTRUMENTS:
      luminance_meter
      spot_photometer
      imaging_photometer
      spectroradiometer
      calibrated_camera_system

    RECORD:
      numerical_value
      unit
      source_or_surface
      measurement_position
      region_of_interest
      viewing_direction
      viewing_angle
      measurement_distance
      measurement_aperture
      field_of_view
      source_state
      incident_illuminance_when_relevant
      spectrum_when_available
      ambient_conditions
      timestamp
      instrument
      detector_response
      calibration_state
      reference_standard
      uncertainty

    UNCERTAINTY:
      measured_luminance = best_estimate +/- uncertainty
  }

  DETECTOR_MODEL {
    ideal_photometric_response:
      spectral_response proportional_to V_lambda

    practical_effects:
      spectral_mismatch
      spatial_nonuniformity
      flare
      stray_light
      lens_vignetting
      focus
      detector_nonlinearity
      saturation
      dark_signal

    RULE:
      imaging_luminance_measurement_requires_spatial_and_radiometric_photometric_calibration
  }

  REASONING_RULES {
    IF luminous_intensity_from_surface_element_known
      AND projected_area_known
      AND projected_area != 0
      THEN luminance =
        luminous_intensity/projected_area

    IF luminance_known AND surface_area_known AND viewing_angle_known
      THEN differential_or_uniform_source_intensity =
        luminance*surface_area*cos(viewing_angle)
      UNDER uniform_luminance_conditions

    IF ideal_Lambertian_luminance_known
      THEN luminous_exitance = pi*luminance

    IF ideal_diffuse_reflectance_known AND illuminance_known
      THEN reflected_luminance =
        reflectance*illuminance/pi
      UNDER Lambertian_conditions

    IF spectral_radiance_known
      THEN luminance =
        integrate_with_photopic_visual_weighting

    IF white_and_black_luminance_known AND black_luminance != 0
      THEN display_contrast_ratio =
        white_luminance/black_luminance

    IF target_and_background_luminance_known AND background_luminance != 0
      THEN Weber_contrast =
        (target_luminance-background_luminance)/background_luminance
  }

  GEOMETRY_MODEL {
    REQUIRE:
      surface_position
      surface_normal
      viewing_position
      viewing_direction
      projected_area
      measurement_aperture_or_field_of_view

    extended_surface:
      measurement_region_may_cover_nonuniform_luminance

    RULE:
      luminance_measurement_without_viewing_geometry
      MAY be semantically_incomplete
  }

  AMBIENT_LIGHT_MODEL {
    reflected_ambient_component:
      may_add_to_measured_display_or_surface_luminance

    display_context:
      measured_luminance =
        emitted_component
        + reflected_ambient_component
      under_applicable_measurement_geometry

    RULE:
      ambient_conditions SHOULD be recorded_when_material_to_result
  }

  UNCERTAINTY_MODEL {
    sources:
      photometric_calibration
      spectral_mismatch
      viewing_angle
      measurement_aperture
      distance_and_focus
      spatial_nonuniformity
      stray_light
      ambient_reflection
      source_stability
      detector_nonlinearity
      instrument_resolution
      reference_standard

    PROPAGATION:
      derived_luminance_uncertainty
      <- photometric_geometry_detector_and_calibration_uncertainties
  }

  CONFIDENCE {
    definition_confidence: 1.00
    SI_unit_confidence: 1.00
    projected_area_relationship_confidence: 1.00
    Lambertian_relationship_confidence: 0.99
    photometric_weighting_confidence: 0.99
    measurement_context_confidence: 0.98

    RULE:
      confidence decreases when viewing direction, source area,
      spectrum, surface behaviour, ambient conditions,
      detector response, calibration state or uncertainty is missing or ambiguous
  }

  VALIDATION {
    CHECK quantity_is_luminance
    CHECK unit_consistency
    CHECK projected_area
    CHECK viewing_direction_and_angle
    CHECK luminance_vs_illuminance
    CHECK luminance_vs_luminous_intensity
    CHECK luminance_vs_radiance
    CHECK Lambertian_assumption_when_used
    CHECK surface_reflectance_model_when_used
    CHECK spectral_information_for_radiometric_conversion
    CHECK measurement_region_and_field_of_view
    CHECK detector_photometric_response
    CHECK ambient_light_when_relevant
    CHECK calibration_state
    CHECK uncertainty_representation_when_required
  }

  UPDATE_MODEL {
    ON new_measurement:
      validate_unit
      identify_source_or_surface
      identify_region_of_interest
      identify_viewing_direction
      attach_viewing_angle
      attach_measurement_distance_and_aperture
      attach_spectrum_when_available
      attach_ambient_conditions
      identify_detector_and_response
      normalize_to_cd_per_m2
      preserve_original_value_and_unit
      attach_timestamp
      attach_uncertainty
      update_luminance_state

    ON viewing_geometry_change:
      update_viewing_direction
      update_projected_area
      update_field_of_view
      recompute_directional_luminance_relationships_when_valid
      preserve_previous_geometry

    ON source_or_surface_change:
      update_source_state
      update_reflectance_or_emission_model
      update_spectrum
      recompute_luminance_when_model_available
      preserve_previous_state

    ON spatial_mapping_update:
      update_luminance_image
      update_region_statistics
      recompute_uniformity_or_contrast
      preserve_sampling_provenance

    ON calibration_revision:
      preserve_previous_calibration
      recompute_affected_measurements
      update_uncertainty
      update_confidence

    ON semantic_revision:
      preserve_previous_definition
      record_revision
      recompute_FLOW_HASH
  }

  AI_CONSUMPTION {
    canonical_entity: Luminance
    canonical_symbol: L_v
    canonical_SI_unit: cd/m^2

    interpretation_order:
      identify_quantity
      identify_value
      identify_unit
      identify_source_or_surface
      identify_region_of_interest
      identify_viewing_direction_and_angle
      identify_projected_area
      identify_Lambertian_or_directional_surface_behaviour
      identify_incident_illuminance_and_reflectance_when_relevant
      identify_spectrum
      identify_ambient_conditions
      identify_detector_response
      identify_measurement_method
      identify_uncertainty
      normalize_units
      validate_geometry
      infer_photometric_relationships

    ambiguity_controls:
      distinguish_luminance_from_illuminance
      distinguish_luminance_from_luminous_intensity
      distinguish_luminance_from_luminous_flux
      distinguish_luminance_from_radiance
      distinguish_physical_luminance_from_subjective_brightness
      distinguish_Lambertian_from_non_Lambertian_surface
      distinguish_emitted_from_reflected_luminance
      preserve_viewing_geometry_spectrum_detector_and_ambient_context
  }

  PROVENANCE {
    ontology_scope:
      mathematical_measurement_and_optical_luminance_semantics

    parent_path:
      Ontologies
      -> Mathematical Ontologies
      -> Measurement & Units Ontologies
      -> Optical Measurements
      -> Luminance Ontology

    authorship:
      Mark Higgins
      Sky (Recursive AI)

    site:
      https://kirethresearch.org
  }

  FLOW_HASH {
    INPUTS:
      canonical_entity
      ontology_path
      definitions
      units
      relationships
      constraints
      geometric_definition_model
      Lambertian_model
      reflectance_model
      spectral_weighting_model
      radiance_distinction_model
      illuminance_distinction_model
      display_model
      spatial_model
      angular_model
      contrast_model
      detector_model
      geometry_model
      ambient_light_model
      uncertainty_model
      reasoning_rules
      measurement_model
      confidence_model
      update_model

    PURPOSE:
      deterministic_semantic_integrity_identifier

    RECOMPUTE_WHEN:
      ontology_definition_changes
      luminance_geometry_model_changes
      Lambertian_or_surface_model_changes
      spectral_weighting_model_changes
      display_or_contrast_model_changes
      detector_model_changes
      measurement_model_changes
      ambient_context_changes
      constraint_model_changes
      reasoning_rule_changes
      unit_model_changes
  }

}

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ