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

instrument / verified-with-binding-errata

Motion Blur / Panning Shutter Speed Estimator

The current ledger marks this instrument verified with errata that must be applied at binding time.

Status: VERIFIED_WITH_ERRATALifecycle: verified-with-binding-errata

Inspectable records

Ledger state

The current ledger marks this instrument verified with errata that must be applied at binding time.

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

No ledger note is attached.

Review findings

The disclosed label that this is a simplified motion model is appropriate but incomplete. Verdict remains NEEDS_REVIEW because pixelPitch is missing from the declared inputs and the specification claims a shutter-speed range without defining how that range is derived. The test vectors explicitly exercise the stated simplified formula under documented SI-unit assumptions.

Formula and scope findings

  • The angular-velocity formula subjectSpeed/distance is only an approximation for transverse subject motion and assumes small angles; the relevant quantity should generally be transverse relative speed, not total speed.
  • The blur formula is dimensionally valid only when focalLength and pixelPitch use the same physical length units and the angular displacement is small; a more exact image displacement uses focalLength multiplied by tan(angular displacement).
  • The declared inputs omit pixelPitch, although pixelPitch is required by the blur formula.
  • A single desired blur amount produces a target or maximum shutter time, not a shutter-speed range. The specification does not define the lower and upper bounds of the range or separate freeze and intentional-blur modes.
  • No formula is provided for camera motion, subject rotation, depth change, or motion direction, all of which can materially affect blur.

Unit assumptions

  • subjectSpeed is in m/s unless explicitly converted; distance to subject is in meters.
  • focalLength and pixelPitch must be expressed in the same length units; the vectors convert focal length to meters and pixel pitch from micrometers to meters.
  • angular velocity is treated as radians per second; radians are dimensionless in the blur-pixel calculation.
  • desiredBlur is interpreted as a maximum allowed blur in pixels.
  • The tested output is the maximum shutter time satisfying blurPixels = angularVelocity × shutterTime × focalLength / pixelPitch; it is not a complete shutter-speed range.

Boundary hardening

BREAK_CLAIMED · SELF_FLAGGED

The specification's formula requires pixel pitch, but pixel pitch is absent from the listed inputs. It also promises a shutter-speed range without defining range bounds or any formula branches. Zero distance and zero desired blur additionally produce undefined or non-finite shutter-speed results that require validation handling.

Errata and corrections

Tranche errata

maximum_shutter_time_s / hz · vector 1

0.0025 / 400

0.00025 / 4000

10× slip; her own v2/v4 use the same formula correctly

Inspectable example

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

{
  "inputs": {
    "subject_speed_m_per_s": 10,
    "distance_m": 50,
    "focal_length_m": 0.2,
    "pixel_pitch_m": 0.000005,
    "desired_blur_px": 2
  },
  "expected_outputs": {
    "maximum_shutter_time_s": 0.0025,
    "equivalent_shutter_speed_hz": 400
  },
  "working": "angularVelocity = 10 / 50 = 0.2 rad/s.\\nshutterTime = desiredBlur × pixelPitch / (angularVelocity × focalLength)\\n= 2 × 0.000005 / (0.2 × 0.2)\\n= 0.000010 / 0.04\\n= 0.0025 s.\\nEquivalent shutter rate = 1 / 0.0025 = 400 Hz, conventionally 1/400 s."
}

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_WITH_ERRATA
  • evidence-tranche5/tranche5-results.json
  • BOUNDARY_HAZARD_CATALOG.json