ブログ
スマホ望遠カメラをテレセントリック光学系の代替にしてテーパー測定した話
テレセントリックレンズが買えない。手元にあるスマホの望遠カメラで、距離を取ることで透視誤差を抑え、疑似平行投影に近づけてテーパー角を測った記録。
課題
テーパー角のような角度寸法を光学的に測ろうとすると、本来は平行投影(テレセントリック光学系)が欲しい。中心射影のレンズだと、対象の奥行き方向の位置によって見かけの角度がずれるからだ。しかし業務用のテレセントリックレンズはそれなりの値段で、検証のたびに揃えられるものではない。手元にあるのは、普段使っているスマートフォンだけだった。
結論だけ読む場合はまとめへ。
なお、ここに至るまでに3Dスキャンでの計測を試して失敗した前段があるが、それは別記事に書いた。
着眼
望遠レンズで撮影距離を稼ぐと、レンズの中心からの見込み角が小さくなり、中心射影でも平行投影に近い見え方になる。撮影距離 が対象の奥行き方向のずれ より十分大きいとき、透視によるずれ角は
の一次近似で小さくなっていく。 を稼げれば は縮む。iPhone の望遠カメラ(3倍光学 + クロップ)を使えば、手持ちの機材のままこの を稼ぐ方向に振れる。テレセントリックレンズを買わずに、同じ効果の一部を「距離」で代替する発想である。
方法
実際のセットアップは、iPhone の望遠カメラ(3倍光学 + クロップ、EXIF では換算 405 mm 相当)で対象を複数回撮影し、自作の手動補助ツール(Taper Manual Assist)で、テーパー面の両エッジ上に2点ずつ(A1/A2, B1/B2)を手動指定し、そこから開き角を算出した。撮影は同一条件で複数枚(4枚)を撮り、再現性を確認する構成にした。

この手動補助ツールは単一 HTML ファイルのオープンソース(MIT)として公開している。
bakemocho/taper-manual-assist 単一ファイル・ブラウザ完結のテーパー角手動測定ツール。エッジ検出アシスト付き。撮影場所は自宅のワンルームで、対象は窓際の机の手前に垂直に立てて置き、部屋の中央付近から手持ちでスマートフォンを構えて撮影した。撮影距離はおよそ2メートル。撮影距離そのものは EXIF に残らないため記憶に基づく概算のままだが、レンズと露出は元写真の EXIF で確認できた。iPhone 15 Pro の望遠カメラ(77 mm 相当・f/2.8)で、換算 405 mm 相当までクロップ、ISO 25、シャッター 1/235 秒である。三脚等の固定治具は使わず両手持ち。換算 405 mm は主カメラ 24 mm 基準で約 17 倍に相当し、記憶していた「15倍相当」より少し深くクロップしていたことになる。
なお、この測定に絶対スケールの較正(既知寸法との対応づけ)は不要である。開き角はピクセル座標上の2直線のなす角として計算され、テーパー比も と角度だけから導かれる無次元量なので、画像上の1ピクセルが何ミリに当たるかは結果に影響しない。前提になるのは、正方画素であることと、テーパーの両エッジが光軸に対しておおむね垂直な同一平面にあることで、この前提条件は測定時のエクスポートデータに測定条件として明記してある。
結果
同一条件での4回撮影の集計は次の通り。
- 4回の開き角の平均: 11.543895 deg(最小 11.454754 deg、最大 11.745134 deg、標本標準偏差 0.135080 deg)
- 4回のテーパー比()平均: 0.202164(1:N換算で平均 1:4.947)
- median近傍3回に絞ったクラスタ: 開き角平均 11.476816 deg、標準偏差 0.019280 deg、1:N換算で 1:4.976
- 4回のうち1回は開き角 11.745134 deg とクラスタから外れており、再現性の警告として扱う(平均に無条件で混ぜない)
別途、手動アシストのJSONエクスポート4回分を使った再測定パスでは、安定コア2点の平均が 開き角 11.421380 deg、比 0.200003、1:N換算 1:4.999915(1:5 に極めて近い)という結果も出ている。ただしこちらも4点中2点を「安定コア」として抽出したもので、残る2点は高側・低側の再現性警告として個別に記録している。
いずれの実測パスも、公称 1:5 テーパー(開き角 11.421186 deg、比 0.2)に近い値を示している。単一の決定的な数値ではなく、複数回撮影のばらつきとして提示するのが誠実な書き方だと考えている。
検算
公開されているレンズ仕様と撮影条件から、この測定が成立していた理由を事後的に検算できる。
透視誤差の見積り。着眼で述べた に を入れると、エッジ面のずれが で 0.057 deg、 でも 0.143 deg にとどまる。対象を垂直に立てて数ミリ以内で面を揃えられていれば、透視誤差は実測ばらつき(0.135 deg)と同等以下のオーダーに収まる。
距離の効果。同じ でも、広角レンズの近接撮影()では 0.382 deg になる。2 m まで離れることで透視誤差はおよそ 7 分の 1 に縮む。「望遠で距離を稼ぐ」の利得はこの比がそのまま効く。
ばらつきの発生源。開き角は約 377 px の線分 2 本の向きの差から算出しているので、手動の点指定が ずれると開き角は rad ぶれる。 で 0.15 deg、 で 0.30 deg。実測した 4 回の標準偏差 0.135 deg は 0.5 px 程度の指定ゆらぎでちょうど説明できる。つまりこの測定のばらつきの支配要因は光学系ではなく手動点指定の画素精度であり、エッジフィットによる補助が効くのはこのためである。
被写界深度と回折。撮影に使った iPhone 15 Pro の望遠カメラは公称 77 mm 相当・f/2.8(実焦点距離約 9 mm、画素ピッチ約 1.1 µm)。許容錯乱円を画素 2 個分に取る厳しめの条件でも、2 m 先の被写界深度は約 1.7〜2.4 m の幅があり、対象の奥行き数ミリは余裕で収まる。回折の Airy 径は ()で画素 3〜4 個分に相当し、エッジは数画素なだらかになるが、エッジ位置の読み取りはサブピクセルで可能なので上の 0.5 px 精度と矛盾しない。なお EXIF の換算 405 mm のうち光学は 77 mm 相当で、残る約 5.3 倍はクロップである。クロップは画角を切り出すだけで角度分解能は変わらない。分解能を決めるのは画素ピッチと上記のボケである。
露出条件。EXIF は ISO 25・1/235 秒・f/2.8 で、輝度換算では EV 約 12.9 と明るい屋外相当。窓越しの逆光シルエットという撮り方が、最低感度でノイズの少ないエッジを与えている。一方シャッター 1/235 秒は、換算 405 mm の手持ち目安(1/焦点距離 ≈ 1/400 秒)より 1.7 倍ほど遅く、両手持ちでも光学式手ぶれ補正に助けられている条件である。それでもばらつきが 0.5 px 相当で収まったのは、複数枚撮影で外れ値を検出する構成にしていたためで、手持ち撮影ではブレた1枚を捨てられる冗長性が精度の一部を担う。
限界
これは真のテレセントリック測定ではない。あくまで中心射影のレンズで、距離を稼ぐことで透視誤差を実用上無視できるレベルまで下げようとした疑似平行投影に過ぎない。手動補助ツールでのエッジ点指定も、CADデータや金属加工用の校正治具による測定ではなく、投影された2D画像上の角度読み取りにとどまる。したがって、この方法は「テレセントリックレンズを買う予算がない場面でのスクリーニング」には向くが、公差の最終判定や出荷検査のような、メトロロジー等級の精度が必要な場面には向かない。
まとめ
「測定器がない」ことは、測定を諦める理由にはならない。テレセントリックレンズという専用機材がなくても、望遠で距離を稼ぐという光学の基本に立ち返り、手元のスマホと自作の補助ツールで疑似平行投影に近づける工夫をすれば、実用に足る精度でテーパー角をスクリーニングできる。これは誠明堂が普段からやっている「専用機材の代わりに原理を理解して手元のもので代替する」設計アプローチの、測定分野での一例である。
スマートフォンをこう使うのは、思いつきの飛び道具ではない。Apple 自身が Apple TV の Color Balance 機能で、iPhone の True Depth センサーと環境光センサーを「TV 画面の実発光を測る計測器」として使っている。製造ラインで個別校正されたセンサーの塊であるスマホを、メーカー自身が光学計測器に転用している実例である。
さらに遡れば、学生時代に出た CanSat(空き缶サイズの模擬人工衛星を作って競う大会)で、他校が制御コンピュータとして Android スマホをそのまま機体に載せていたのを覚えている。センサー一式と高性能なプロセッサがコンパクトに、しかも安価にまとまった道具は他にない。今回のテーパー測定はその応用の一つに過ぎず、この流れで試したいことはまだいくつもある。