写真の物理学 ④ 焦点距離と画角を幾何学で導く

Share
📐
写真の物理学シリーズ ④
このシリーズでは、写真にまつわる現象を物理学の言葉で記述する。「なんとなくそうなる」を「なぜそうなるか」に変換することが目的である。

薄肉レンズの結像から光と物質の相互作用まで、レンズが像を結ぶ仕組みは前三回で揃った。次の問いは「どこまで写るか」だ。本稿では焦点距離とセンサーサイズから画角がどう決まるかを三角関数で厳密に導出し、「広角」「望遠」という分類が物理的にどこまで意味を持つかを検討する。

画角の幾何学的導出

カメラのセンサーは有限の大きさを持つ。レンズの後方焦点面に置かれたセンサーが「切り取る」光の範囲を角度で表したものが画角(angle of view, field of view)だ。

無限遠に合焦した状態を考える。このとき像はレンズの後方焦点面に結ばれ、センサーはこの焦点面に一致する。センサーの一辺の長さを $h$ とすると、センサーの端に届く光線は光軸に対して角度 $\theta$ をなす。ここで

$$ \tan\theta = \frac{h/2}{f} $$

が成り立つ。 $f$ は焦点距離、 $h/2$ はセンサー中心から端までの距離だ。これは直角三角形の定義そのものであり、近似は一切含まれていない。

したがって、片側の画角 $\theta$ は

$$ \theta = \arctan\!\left(\frac{h}{2f}\right) $$

であり、全画角 $\alpha$ はその2倍になる。

$$ \alpha = 2\arctan\!\left(\frac{h}{2f}\right) $$

これが画角の基本公式である。変数は焦点距離 $f$ とセンサーの寸法 $h$ の二つだけだ。レンズの枚数も、絞りの大きさも、画角には関与しない。

ただしこの公式は、レンズが直線射影(rectilinear projection)に従う場合にのみ正確だ。直線射影とは、像面上の点の位置 $r$ と入射角 $\theta$ の関係が $r = f\tan\theta$ で表される射影方式であり、一般的な写真用レンズはすべてこの方式を採用している。超広角域の魚眼レンズでは異なる射影方式が使われるが、これについては後述する。

水平画角、垂直画角、対角画角

カメラのセンサーは正方形ではなく長方形だ。したがって画角も方向によって異なる。35mmフルサイズセンサーの寸法は 36mm $\times$ 24mm であり、アスペクト比は 3:2 である。それぞれの画角は次のように計算される。

水平画角 $\alpha_H$ :

$$ \alpha_H = 2\arctan\!\left(\frac{36}{2f}\right) = 2\arctan\!\left(\frac{18}{f}\right) $$

垂直画角 $\alpha_V$ :

$$ \alpha_V = 2\arctan\!\left(\frac{24}{2f}\right) = 2\arctan\!\left(\frac{12}{f}\right) $$

対角画角 $\alpha_D$ :

対角線長 $d$ は

$$ d = \sqrt{36^2 + 24^2} = \sqrt{1872} \approx 43.27 \, \text{mm} $$

であるから

$$ \alpha_D = 2\arctan\!\left(\frac{43.27}{2f}\right) $$

となる。

たとえば $f = 50 \, \text{mm}$ の場合、 $\alpha_H \approx 39.6°$ 、 $\alpha_V \approx 27.0°$ 、 $\alpha_D \approx 46.8°$ だ。レンズのスペックシートに記載される画角は、通常この対角画角である。

ここで注意すべきことがある。同じ焦点距離でも、アスペクト比が変われば水平画角と垂直画角の比率が変わる。4:3センサー(マイクロフォーサーズなど)と3:2センサー(フルサイズなど)では、対角画角が同じでも水平方向と垂直方向の画角配分が異なる。4:3の方が正方形に近いため、水平画角がやや狭く、垂直画角がやや広くなる。対角画角だけを比較しても、実際の「見え方」は一対一に対応しない。

画角の非線形性

画角の公式 $\alpha = 2\arctan(h/2f)$ には、直感を裏切る性質がある。焦点距離を半分にしても、画角は2倍にならない。

$\arctan$ は単調増加関数だが、線形ではない。引数が大きくなるにつれて増加が鈍化し、 $\pi/2$ に漸近する。したがって、焦点距離と画角の関係は非線形だ。

具体例で確認する。35mmフルサイズの対角画角を計算すると次のようになる。

  • $f = 200 \, \text{mm}$ : $\alpha_D = 2\arctan(21.6/200) \approx 12.4°$
  • $f = 100 \, \text{mm}$ : $\alpha_D = 2\arctan(21.6/100) \approx 24.4°$
  • $f = 50 \, \text{mm}$ : $\alpha_D = 2\arctan(21.6/50) \approx 46.8°$
  • $f = 25 \, \text{mm}$ : $\alpha_D = 2\arctan(21.6/25) \approx 81.8°$

$f$ を200mmから100mmに半減させると、画角は12.4°から24.4°へとほぼ2倍になる。しかし $f$ を50mmから25mmに半減させると、画角は46.8°から81.8°で、約1.75倍にしかならない。

この非対称性には数学的な理由がある。 $\arctan x$ のテイラー展開は

$$ \arctan x = x - \frac{x^3}{3} + \frac{x^5}{5} - \cdots $$

だ。 $x = h/(2f)$ が小さい、すなわち焦点距離が長い望遠域では $\arctan x \approx x$ と線形近似でき、画角は焦点距離にほぼ反比例する。しかし $x$ が大きくなる広角域では高次項の影響が無視できなくなり、線形関係が崩れる。

このことは実用上の意味を持つ。望遠域では10mmの焦点距離の違いが画角に大きく響くが、広角域では同じ10mmの違いが相対的に小さな画角変化しかもたらさない。初めてのレンズに迷ったらで触れた35mm、50mm、85mmの画角の違いも、この非線形性を反映している。35mmと50mmの画角差(約17°)と、50mmと85mmの画角差(約18°)はほぼ同じだが、焦点距離の差はそれぞれ15mmと35mmで大きく異なる。

人間の視覚との比較

50mmレンズが「人間の目に近い」という言い方は広く流通しているが、これは物理的にはかなり雑な対応関係だ。

人間の視覚系は、カメラとは根本的に構造が異なる。眼球全体の視野は片目で約170°に及び、両眼を合わせた水平視野は約200°に達する。しかし人間の眼の光学で詳述するように、高い解像力を持つ中心窩(fovea)の視野角はわずか2°から5°程度にすぎない。日常的に「見えている」と感じる有効視野(functional field of view)は、注意の配分に依存するが、おおむね40°から60°とされることが多い。

50mmレンズの水平画角は約40°であり、この「有効視野」の下限にほぼ一致する。これが「50mmは人間の目に近い」という言説の物理的な根拠だ。

しかしこの対応はあくまで偶然の一致に近い。50mmが「標準レンズ」として定着した歴史的経緯には、別の要因がある。35mmフィルムの対角線長は約43mmであり、焦点距離がセンサー対角線長に近いレンズが「標準」と呼ばれる慣習がライカの時代から続いている。対角線長43mmに最も近い量産焦点距離が50mmだったにすぎない。ダブルガウス型の光学設計がこの焦点距離で高い性能を安価に実現できたことも、50mmの普及を後押しした。

「人間の目に近い」という言い方は、写真を見るときの心理的な自然さを表現するものとしては有効だが、物理的な等価性を意味するものではない。

広角、標準、望遠の境界

焦点距離による分類は便利だが、その境界に物理的な根拠はあるのか。

一般的には、35mmフルサイズ換算で次のように分類される。

  • 広角: 35mm以下
  • 標準: 40mmから60mm
  • 中望遠: 70mmから135mm
  • 望遠: 135mm以上

この分類に物理法則が介在する余地はない。 $\alpha = 2\arctan(h/2f)$ は滑らかな連続関数であり、特定の焦点距離で不連続が生じたり、性質が急変したりすることはない。

物理的に意味のある区切りがあるとすれば、それは射影方式の限界だ。直線射影 $r = f\tan\theta$ では、半画角が90°に近づくと $\tan\theta \to \infty$ となり、像面上の周辺部が極端に引き伸ばされる。実用上、直線射影のレンズが設計可能な画角の上限は対角で約120°から130°程度であり、これ以上の超広角域では魚眼レンズのような非直線射影が必要になる。この「直線射影の限界」は、広角レンズの設計に物理的な壁を与えている。

もう一つ、実用的な区切りとして機能するのが、パースペクティブの知覚だ。パースペクティブは撮影距離だけで決まると物撮りは遠くからで論じたように、パースペクティブを決めるのは焦点距離ではなく撮影距離だ。しかし焦点距離が短いレンズは近距離から撮ることを誘導し、焦点距離が長いレンズは遠距離からの撮影を要求する。結果として「広角で撮った写真は遠近感が強い」「望遠で撮った写真は圧縮されている」という経験的な対応が生まれる。この対応は光学的な必然ではなく、撮影行動の傾向にすぎないが、分類の実用的な根拠にはなっている。

広角、標準、望遠の境界は、物理的には恣意的だ。しかし慣習として安定しているのは、人間の知覚や撮影行動と緩やかに対応しているからだろう。

射影方式の違い

一般的な写真用レンズは直線射影(rectilinear projection)に従う。像面上の点の位置 $r$ と入射角 $\theta$ の関係は

$$ r = f\tan\theta $$

だ。この射影方式は直線を直線として写す唯一の射影であり、建築写真や測量で重要な性質を持つ。しかし $\theta \to 90°$ で $r \to \infty$ となるため、半画角が約60°〜65°(対角画角で約120°〜130°)を超える領域では、像面の周辺部が極端に拡大され、実用的なレンズ設計が困難になる。

超広角域では、異なる射影方式が使われる。代表的なものを挙げる。

等距離射影(equidistant projection)

$$ r = f\theta $$

像面上の距離が角度に正比例する。角度の計測が直接的に行えるため、天体観測や全天カメラで広く使われる。多くの魚眼レンズがこの方式を採用している。

等立体角射影(equisolid angle projection)

$$ r = 2f\sin\!\left(\frac{\theta}{2}\right) $$

像面上の面積が、対応する立体角に比例する。白い壁に近づいても露出が変わらない物理学的理由で導入した立体角の概念がここで再び現れる。空の雲量測定や照明設計など、面積比が重要な用途で使われる。

正射影(orthographic projection)

$$ r = f\sin\theta $$

半画角 $\theta = 90°$ で $r = f$ となり、これ以上は像が重なるため画角は最大で180°に制限される。実用上はさらに狭い画角で使われることが多い。

これらの射影方式が画角の小さい領域で一致することは、テイラー展開から確認できる。 $\theta$ が十分に小さいとき

$$ \tan\theta \approx \theta, \quad \sin\theta \approx \theta, \quad \sin(\theta/2) \approx \theta/2 $$

であるから、すべての射影方式が $r \approx f\theta$ に収束する。射影方式の違いが顕在化するのは、半画角がおよそ30°(対角画角で60°)を超える広角域からだ。通常の写真撮影で使われる焦点距離の範囲では、射影方式の違いは実質的に無視できる。

画角変化率の解析

焦点距離を変えたときに画角がどれだけ変化するかを定量的に把握するため、画角の焦点距離に対する微分を求める。

対角画角 $\alpha = 2\arctan(d/2f)$ の $f$ による微分は

$$ \frac{d\alpha}{df} = 2 \cdot \frac{1}{1 + \left(\frac{d}{2f}\right)^2} \cdot \left(-\frac{d}{2f^2}\right) = \frac{-4d}{4f^2 + d^2} $$

ここで $d$ はセンサー対角線長(35mmフルサイズでは約43.27mm)だ。負号は、焦点距離が増えると画角が減ることを反映している。

画角変化率の絶対値

$$ \left|\frac{d\alpha}{df}\right| = \frac{4d}{4f^2 + d^2} $$

の振る舞いを二つの極限で見る。

望遠域( $f \gg d$ )では $4f^2 \gg d^2$ であるから

$$ \left|\frac{d\alpha}{df}\right| \approx \frac{4d}{4f^2} = \frac{d}{f^2} $$

変化率は $f^2$ に反比例して急速に減少する。焦点距離が長いほど、同じ焦点距離の変化に対する画角変化は小さい。

広角域( $f \ll d$ )では $d^2 \gg 4f^2$ であるから

$$ \left|\frac{d\alpha}{df}\right| \approx \frac{4d}{d^2} = \frac{4}{d} $$

変化率は焦点距離に依存しない定数に近づく。しかしこの領域では画角自体がすでに180°に近く、直線射影の限界にも達しているため、実用上この極限が意味を持つ場面は限られる。

重要なのは、広角域から標準域にかけて変化率が急峻であるという事実だ。焦点距離24mmから35mmへの11mmの変化は対角画角を約84°から63°へと約21°変える。一方、焦点距離100mmから135mmへの35mmの変化は対角画角を約24°から18°へと約6°しか変えない。焦点距離の変化幅は後者のほうが3倍以上大きいにもかかわらず、画角への影響は前者のほうがはるかに大きい。

広角レンズのラインナップが焦点距離の細かい刻み(14mm、16mm、18mm、20mm、24mm、28mm、35mm)で展開されるのに対し、望遠レンズの刻みが粗い(100mm、135mm、200mm、300mm、400mm、600mm)のは、この変化率の非対称性を反映した合理的な製品設計だ。

まとめ

画角は $\alpha = 2\arctan(h/2f)$ という単一の公式で決まる。変数は焦点距離 $f$ とセンサー寸法 $h$ の二つだけだ。

この公式の非線形性が、焦点距離と画角の直感に反する関係を生んでいる。望遠域では焦点距離と画角がほぼ反比例するが、広角域ではこの関係が崩れる。広角、標準、望遠という分類に物理的な境界はなく、50mmが「標準」と呼ばれるのは35mmフィルムの対角線長に近いという歴史的経緯による。

射影方式の違いが現れるのは超広角域であり、通常の撮影範囲では直線射影で十分だ。画角変化率 $|d\alpha/df| = 4d/(4f^2 + d^2)$ は広角域で急峻、望遠域で緩慢であり、この非対称性がレンズの焦点距離ラインナップの刻み幅にまで影響を与えている。

次回のセンサーサイズと換算焦点距離の正体では、センサーサイズの異なるカメラ間で画角を揃える条件、いわゆる「換算焦点距離」の物理的意味を厳密に定式化する。

Read more

Dependabotの対応が面倒なのでRenovateを導入する

Dependabotくんはある程度の依存関係の更新を通知してくれるが、山のようにprojectを抱えているとなんとも痒いところに手が届かない。 ということで、Renovateを使ってみる。 Build software better, togetherGitHub is where people build software. More than 150 million people use GitHub to discover, fork, and contribute to over 420 million projects.GitHub ここからGitHub Appを入れる。 あとは、指示に従ってポチポチするだけで、超かんたんだった。 感想 自動化最高。

By Sakashita Yasunobu

nodejsのバグを見つけたのでPRを投げてみた

概要 要するに、node --testで特定のバイナリを標準出力に書くと、テストランナーが固まったり、異常終了したりするバグです。 バグ自体は既知のものだったようで、修正がされていました。 test_runner: infinite loop in FileTest#drainRawBuffer when child stdout contains FF 0F followed by large size bytes · Issue #62693 · nodejs/nodeVersion v25.9.0 (also reproduced on v24.14.1 LTS, v22.21.0 LTS, v23.4.0) Platform Darwin 25.

By Sakashita Yasunobu
青空文庫のParser

青空文庫のParser

青空文庫のParserを作ってます。 GitHub - P4suta/aozora: Pure-functional Rust parser for 青空文庫記法 (Aozora Bunko notation): ルビ, 傍点, 縦中横, 外字, 返り点, indent containers, page breaks.Pure-functional Rust parser for 青空文庫記法 (Aozora Bunko notation): ルビ, 傍点, 縦中横, 外字, 返り点, indent containers, page breaks. - P4suta/aozoraGitHubP4suta Rustで作ってますが、配布物はcargoのほかにnpm/pypiでも入手できます Documentation * Playground — try it in

By Sakashita Yasunobu