render_skyline_view — GEOCAM skyline op

• Data kinds: table → image2d

• Call: import fullseye as fs; fs.ledger.render_skyline_view(sky_table, K, shape, yaw_deg, pitch_deg, roll_deg) (to call the implementation directly, import geocam; geocam.render_skyline_view(sky_table, K, shape, yaw_deg, pitch_deg, roll_deg); from the registry, opsgeocam.get("render_skyline_view"))

Usage

From a skyline table and an orientation, draws the sky mask (H, W) seen by a camera pointing that way → image2d (0/1).

The ray of each pixel is rotated into the world; if it is above the skyline elevation of that azimuth it is sky (1), below it terrain (0). Used for making synthetic photos (PoC) and for figures that overlay an estimated pose on a photo to check it by eye. It is the same geometry as the prediction of camera_orientation_from_skyline, so the round trip draw → extract → fit closes (the ground truth for tests).

Args:

sky_table: output of dem_skyline (azimuth_deg / elevation_deg).

K: (fx, fy, cx, cy). shape: (H, W).

yaw_deg, pitch_deg, roll_deg: pose (the convention at the top of the module).

Returns:

image2d (H, W) float {0, 1}: 1 = sky.

Detailed usage guide

• geocam family guide

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_public_camera_heading — py -3.11 examples/poc_public_camera_heading.py

Ops the type connects to (they accept image2d as input)

sun_pixel_position · sun_bloom_fit · skyline_extract

Same category (skyline)

dem_skyline · skyline_extract


*Provenance: geocam.py — GEOCAM operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.