Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument / verified-clean

Panorama Stitching Field-of-View Planner

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: VERIFIED_CLEANLifecycle: verified-clean

Inspectable records

Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Area
Audio, Music, Photography & Color
Tranche
tranche-5
Evidence ID
t5-067
Ledger rows
1

No ledger note is attached.

Review findings

The instrument cannot honestly be labeled as correct in its current form. Replace the frame formula with max(1, ceil((totalFOV - lensFOV) / (lensFOV * (1 - overlapPercentage / 100))) + 1), define the angular-step output, validate lensFOV > 0, enforce 0 <= overlapPercentage < 100, and explicitly specify a common angular unit.

Formula and scope findings

  • The frame-count formula is incorrect for a target total FOV. Coverage with N frames is lensFOV + (N - 1) * angularStep, so the standard formula is max(1, ceil((totalFOV - lensFOV) / angularStep) + 1), where angularStep = lensFOV * (1 - overlapFraction). The supplied formula ceil(totalFOV / angularStep) + 1 overcounts frames.
  • The overlap percentage must be converted to a fraction before use: overlapFraction = overlapPercentage / 100.
  • The output angular step per frame is claimed but no formula is provided; it should be angularStep = lensFOV * (1 - overlapFraction).
  • The formula does not define behavior when the target FOV is less than or equal to one lens FOV; the planner should return one frame, not fewer or extra frames.

Unit assumptions

  • lensFOV and totalFOV must use the same angular unit, such as both degrees or both radians.
  • overlap is interpreted as a percentage from 0 to 100 and converted by dividing by 100.
  • The target total FOV is the covered angular width from the first frame's start to the last frame's end.
  • Angular step is the rotation between adjacent frame centers or equivalent adjacent-frame starts under the simplified FOV model; real panorama stitching may require additional margin for lens distortion and parallax.

Boundary hardening

BREAK_CLAIMED · SELF_FLAGGED

A 100% overlap input makes the effective angular-step denominator zero and produces a non-finite frame count in JavaScript. Treating the percentage value 20 as a raw fraction also produces a negative angular step and an invalid frame count.

Errata and corrections

No applied erratum is attached to this unique-name record.

Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

{
  "inputs": {
    "lensFOV": 60,
    "totalFOV": 180,
    "overlapPercentage": 25,
    "angleUnit": "degrees"
  },
  "expected_outputs": {
    "framesNeeded": 4,
    "angularStep": 45
  },
  "working": "overlapFraction = 25 / 100 = 0.25\nangularStep = 60 * (1 - 0.25) = 60 * 0.75 = 45 degrees\nadditional coverage needed = 180 - 60 = 120 degrees\nadditional frame intervals = 120 / 45 = 2.666666...\nceil(2.666666...) = 3 intervals\nframesNeeded = 3 + 1 = 4"
}

Related workflows

No source-defined multi-instrument workflow membership is recorded.

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json · VERIFIED_CLEAN
  • evidence-tranche5/tranche5-results.json
  • BOUNDARY_HAZARD_CATALOG.json