fullseye

moire_differential_shift — OPTICS moire_align op

使い方

逆向きのピッチ差の 2 対(A = (p_m, p_w)、B = (p_w, p_m))から、共通の誤差を消したずれを読む。

ずれ δ では 2 つの縞が逆向きに動き(dφ_A/dδ と dφ_B/dδ の符号が逆)、マーク全体がカメラに対して s 動くと 同じ向きに同じ量(−2π|f|s)動く。だから δ = wrap(Δφ_A − Δφ_B) / (g_A − g_B)、 共通 = Δφ_A − g_A δ で、像の流れ・ステージの振動・カメラの倍率(どちらの縞にも同じに効く分)は δ から消える。 捕捉範囲は 2π/|g_A − g_B| = p_m p_w / (p_m + p_w)(単一の対のおよそ半分)。

返り値: dict(shift_nm, common_phase_rad, drift_nm(共通の位相を像の流れに換算)、ambiguity_nm, single_a_nm / single_b_nm(各対だけで読んだ場合 —— 共通の誤差がそのまま乗る))。 Raises ValueError: 位相が有限でない、同じピッチ、綴り違い。

ファミリ共通の入力契約(fail-closed)

optics の全 op は入力を検証してから計算する(黙って通さない):

詳しい使い方ガイド

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(table を入力に取れる)

abcd_matrix · wavefront_stats · sfr_from_edge · paraxial_trace · seidel_coefficients · spot_stats · tolerance_analysis · wavefront_from_opd

同カテゴリ(moire_align)

moire_magnification · moire_talbot_gap · moire_overlay_image · moire_phase · moire_phase_to_shift · moire_mark_read · moire_phase_crlb


Provenance: moirealign.py — OPTICS operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

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