deflectometry_rig — SPECULAR deflectometry op

• Data kinds: none → table (an op determined by its arguments alone — it takes no image or data input)

• Call: import fullseye as fs; fs.ledger.deflectometry_rig(incidence_deg=20.0, camera_distance_mm=400.0, screen_distance_mm=300.0, field_mm=40.0, aperture_mm=4.0, screen_size_mm=(520.0, 320.0), screen_pixel_mm=0.27) (to call the implementation directly, import deflectometry; deflectometry.deflectometry_rig(incidence_deg=20.0, camera_distance_mm=400.0, screen_distance_mm=300.0, field_mm=40.0, aperture_mm=4.0, screen_size_mm=(520.0, 320.0), screen_pixel_mm=0.27); from the registry, opsspecular.get("deflectometry_rig"))

Usage

Put the geometry of a deflectometry rig (camera, screen, field of view) into one table (dict).

> The detailed description below is the original text — the summary and the headings are translated.

入射面は x-z 面。カメラ(ピンホール)は面の中心から camera_distance_mm = L 離れ、法線から incidence_deg = θ 傾いた位置 C = L(−sin θ, 0, cos θ) から原点を見る。画面は公称の正反射方向 r0 = (sin θ, 0, cos θ) 上の距離 screen_distance_mm = d に、r0 と直交して置く。field_mm は測る面の正方形の一辺(高さ場の格子はこの視野に張る。縦横比は高さ場の形に従う)。aperture_mm はレンズの開口の直径(ピントのぼけの錯乱円に効く。0 = ピンホール)。screen_size_mm は画面の (幅 u, 高さ v)、screen_pixel_mm は画面の画素ピッチ(24 型 WUXGA でおよそ 0.27 mm)。

返り値: dict。スカラーの入力 7 つに加え、ベクトル camera(C)、screen_center、screen_normal(面へ向く)、e_u / e_v(画面の座標軸)、forward / right / down(カメラの光軸と、画像の列・行の方向)。他の op はこの dict を rig= で受け、手で書き換えたベクトルはスカラーと食い違うとして拒否する(fail-closed)。

Raises: ValueError —— 入射角が [0, 80] 度の外、距離・視野・画面の大きさ・画素ピッチが正でない、開口が負、値が数でない・有限でない、画面の大きさが 2 つの数でない。

Detailed usage guide

• specular_photometric 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_phase_measuring_deflectometry — py -3.11 examples/poc_phase_measuring_deflectometry.py

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

—

Same category (deflectometry)

deflectometry_screen_pattern · deflectometry_render · deflectometry_phase_to_slope · slope_to_curvature · deflectometry_sensitivity


*Provenance: deflectometry.py — SPECULAR 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.