Back to Research Index
GEOREVELO FORENSIC REPORT

Solar Chronolocation: How to Calculate Exact Capture Time and Latitude from Shadow Vectors

GR
GeoRevelo Research Team
Published 2026-08-15
12 min read

1. Tactical Summary

When analyzing imagery stripped of EXIF metadata, solar chronolocation remains one of the most reliable methods for establishing temporal and spatial ground truth. By isolating upright vertical structures—such as light poles, fence posts, or building corners—and measuring their cast shadow vectors, an investigator can reverse-calculate the sun's elevation angle (tan(β) = h/s) and azimuth angle.

When combined with the sun's declination for a known or estimated date, this geometric relationship restricts the photograph's origin to a distinct geographic arc on Earth. This guide outlines the mathematical foundation, photogrammetric correction steps, Overpass QL spatial querying techniques, and satellite verification workflows used by forensic analysts.

Metric / ParameterValue / FormulaDescription
Solar Elevation (beta)tan(beta) = h / sRatio of vertical height (h) to horizontal shadow length (s)
Solar Zenith (theta_z)theta_z = 90 deg - betaAngle between zenith line and solar beam
Solar Azimuth (alpha)Measured clockwise from True NorthHorizontal direction of sun vector in image frame
Primary ToolsSunCalc, NOAA Solar Calculator, Overpass TurboMathematical algorithms and spatial query engines

2. Visual Feature Extraction & Clue Tree

Before applying trigonometric equations, analysts must audit the image for distortion parameters that warp shadow geometry:

1. Lens Distortion Correction: Wide-angle mobile camera lenses introduce barrel distortion, which curves straight shadow edges near the image periphery. Rectify the image using camera calibration profiles or un-distort algorithms prior to pixel measurement.

2. Terrain Slope Adjustment: Shadows cast on sloping ground deform non-linearly. Analysts must determine whether the ground plane is horizontal by evaluating horizontal architectural reference lines (e.g., building foundations, door thresholds).

3. Plumb Line Identification: Identify a true vertical reference. Do not rely on perspective lines that converge at vanishing points without vertical correction.

Forensic Clue Breakdown Table

Feature CategoryVisual EvidenceGeolocation InferenceConfidence Weight
Vertical ReferenceSteel utility pole (Class 3 rating)Standardized height (10.5m +- 0.2m)High
Shadow EdgeSharp penumbra on flat asphaltHigh precision length measurementHigh
Road MarkingWhite edge line (0.15m width)Scale ratio calibrator for pixel-to-meter translationMedium-High
VegetationQuercus agrifolia (Coast Live Oak)Native to California coastal rangesRegional Filter

3. Solar Chronolocation & Shadow Vector Analysis

The mathematical core of solar chronolocation rests on spherical astronomy. The solar elevation angle beta is derived directly from object height h and shadow length s:

tan(beta) = h / s ==> beta = arctan(h / s)

Alternatively, using the solar zenith angle theta_z:

cos(theta_z) = sin(phi)*sin(delta) + cos(phi)*cos(delta)*cos(h_s)

Where:

  • phi = Observer Latitude
  • delta = Solar Declination Angle (function of day of year)
  • h_s = Solar Hour Angle (function of Local Apparent Time)
  • CODE // SNIPPETUTF-8
           Sun
            /|
           / |
          /  |
         /   | Height (h)
        /    |
       /_____|
      Observer   Shadow (s)
       [Elevation Angle beta = arctan(h/s)]

    Step-by-Step Mathematical Workflow

    1. Measure Pixel Lengths: Measure the vertical pixel length P_h of the object and the shadow pixel length P_s.

    2. Calculate Elevation Angle: If the camera plane is parallel to the shadow line:

    beta = arctan(P_h / P_s)

    For an object of 3.20 meters casting a 4.10 meter shadow:

    beta = arctan(3.20 / 4.10) = arctan(0.7805) = 37.97 deg

    3. Determine Solar Azimuth: Measure the angle between True North and the shadow direction. Because shadows point opposite the sun:

    alpha_sun = (alpha_shadow + 180 deg) mod 360 deg

    4. Cross-Reference Solar Calculators: Input beta and alpha_sun into NOAA Solar Calculator or SunCalc algorithms for the estimated date. This produces a narrow geographic hyperbola of candidate latitudes across the target hemisphere.

    4. OpenStreetMap Querying (Overpass QL)

    Once solar geometry narrows the candidate region and road orientation, execute spatial queries using Overpass QL in Overpass Turbo to locate physical infrastructure matching the scene topology.

    Overpass QL Query Script

    CODE // OVERPASSQLUTF-8
    [out:json][timeout:25];
    // Query for utility poles and asphalt secondary roads matching azimuth alignment
    (
      node["power"="pole"](around:2000, 34.0522, -118.2437);
      way["highway"="secondary"]["surface"="asphalt"](around:2000, 34.0522, -118.2437);
    );
    out body;
    >;
    out skel qt;

    Advanced Spatial Filtering

    To filter for roads oriented along a specific orientation angle theta_road (e.g., 42 deg / 222 deg):

    CODE // OVERPASSQLUTF-8
    [out:json][timeout:30];
    area["ISO3166-1"="US"]["admin_level"="2"]->.searchArea;
    (
      way["highway"="residential"](area.searchArea)
        if(t["orientation"] == "42");
    );
    out body;
    >;
    out skel qt;

    5. Satellite Verification & Final Coordinates

    With potential matches returned by Overpass QL, perform satellite imagery corroboration:

    1. Copernicus Sentinel-2 & PlanetScope Audit: Review recent satellite passes to check for infrastructural changes, road resurfacing, or recent construction that occurred after the target photograph was taken.

    2. Google Earth Pro 3D Mesh Inspection: Load candidate coordinates into Google Earth Pro. Adjust the eye altitude to match the camera height and focal length, validating:

    - Line of sight to background terrain (ridgelines, hills).

    - Alignment of surrounding buildings and rooftop structures.

    - Exact spatial match of roadside infrastructure (light poles, hydrants, curb cuts).

    CODE // SNIPPETUTF-8
    Candidate Coordinates Verified:
    Latitude:  34.052210 N
    Longitude: -118.243700 W
    Ground Elevation: 86.4m ASL
    Uncertainty Radius: +- 12.5 meters

    6. Key Takeaways for Investigators

  • Always correct lens perspective distortion before measuring shadow-to-height ratios.
  • Shadow elevation angles restrict latitude, while shadow azimuth angles pinpoint local solar time.
  • Cross-reference botanical and architectural clues alongside solar math to prune false positive matches across large geographical areas.
  • Automate spatial discovery using Overpass QL queries that filter for specific road orientations and infrastructure tags.