第2章:スマートフォンカメラを理解する
Camera2 API のコードを 1 行でも書く前に、あなたのコードが命令を下す物理的なハードウェアについて理解する必要があります。スマートフォンカメラは単なる「センサーに向けられたレンズ」ではありません。それは光学系、アクチュエータ、フィルター、半導体、高速データバスを含む、高度に統合された精密機器です。
この章の目的は、カメラパイプラインを一つの物理システムとして捉えるメンタルモデルを構築することです。後の章で SENSOR_SENSITIVITY などのパラメータを設定する際、それらがどのハードウェアに影響を与え、なぜその値が重要なのかを理解できるようになります。
カメラモジュール:密閉された光学アセンブリ
現代のスマートフォンの背面を見ると、数ミリ突き出した「カメラアイランド」があります。その中にある一つ一つの円形の「バンプ(隆起)」が、独立したカメラモジュールです。
カメラモジュールは、クリーンルームで製造された密閉ユニットです。外側から順に以下のものが重なっています:
- 保護カバーガラス: サファイアガラスなどでレンズを保護します。
- レンズバレル: 4〜6枚のプラスチックまたはガラス製レンズが重なっています。
- ボイスコイルモーター (VCM): レンズを前後に動かしてピントを合わせるアクチュエータ。
- IRカットフィルター: 赤外線をカットして、人の目に近い色を再現します。
- センサーダイ: シリコン製のイメージセンサーチップ。
- FPC (フレキシブル基板): 制御信号や画像データを本体基板へ送るリボンケーブル。
これらのモジュールは工場で個別に校正(キャリブレーション)され、その個体差データはモジュール内のメモリ (OTP) に書き込まれます。Camera2 API はこのデータを読み取るため、アプリ側で製造上のバラツキを気にする必要はありません。
レンズ:焦点距離、絞り、手ぶれ補正
レンズは光が最初に出会うコンポーネントです。
焦点距離とフルサイズ換算
スマートフォンのスペック表には「24mm相当」といったフルサイズ換算の数値が並びます。
- 10–18mm (超広角): 広大な風景やグループ写真に。
- 22–28mm (広角 / メイン): 最も多用される標準的なカメラ。
- 100mm以上 (望遠 / ペリスコープ): 遠くの被写体を大きく捉えます。
絞り (Aperture)
光が通る穴の大きさで、f値で表されます。数値が小さいほど穴が大きく、より多くの光をセンサーに届けます。スマートフォンでは通常、絞りは固定(変更不可)です。
光学式手ぶれ補正 (OIS)
撮影時の微細な手の震えを打ち消すために、レンズやセンサーを物理的に動かす仕組みです。これにより、暗い場所でもブレの少ないシャープな写真を撮ることが可能になります。
イメージセンサー:光が電気に変わる場所
イメージセンサーは、数百万個の「フォトダイオード(光検出器)」が並んだチップです。
- 画素サイズとメガピクセル: 画素数(48MPなど)も重要ですが、一つ一つの画素の物理的な大きさ(μm)が画質、特に暗所でのノイズ耐性に直結します。
- ピクセルビニング: 隣接する画素を結合して一つの大きな画素として扱う技術。48MP を 12MP として読み出すことで、ノイズを劇的に減らすことができます。
- ベイヤー配列: センサー自体は「色」を判別できません。そのため、各画素の上に赤・緑・青のフィルター(RGGB)を規則的に並べることで、カラー情報を取得します。
ISP:画像信号プロセッサ
ISP (Image Signal Processor) は、センサーから送られてくる生の「ノイズだらけで色の付いていないデータ」を、私たちの目に見える「綺麗な写真」に変換する専用の計算ブロックです。
- デモザイク: ベイヤー配列からフルカラー RGB を生成。
- ノイズ低減: ざらつきを抑える。
- 色補正: 人の目に自然な色に調整。
- トーンマッピング: 明るい部分から暗い部分まで適切に収める。
- シャープネス: 輪郭をはっきりさせる。
RAW対JPEG:2つの道
Camera2 API を使うと、ISP の処理を通る前の「生のデータ」を取り出すことができます。
- RAW (DNG): センサーの情報をそのまま保存。データ量は大きいが、後から明るさや色を劣化させずに調整できる。プロの編集用。
- JPEG: ISP で「料理」済みの画像。すぐに共有できるが、加工の余地は少ない。
光子から写真になるまでの全行程
シャッターを切った瞬間に起きていること(昼間の撮影例):
- 0 ms: シャッターをタップ。
- 2-6 ms: モーターが動き、ピントを合わせる。
- 6-21 ms: センサーが光を浴びる(15ms 露光)。
- 28 ms: 高速バスでデータを ISP へ転送。
- 31 ms: ISP が画像を綺麗に整える。
- 33 ms: JPEG に圧縮。
- 40 ms: ファイルとして保存完了。
わずか 40ミリ秒(0.04秒)の間に、これだけの工程がハードウェアで実行されています。
まとめ
あなたは今、スマートフォンカメラの物理的な仕組みを理解しました。密閉されたモジュール、光を集めるレンズ、電気に変えるセンサー、そして画像を仕上げる ISP。これらの知識があれば、次に学ぶ Camera2 API の各パラメータが「何を制御しているのか」を直感的に理解できるはずです。
次のステップ
第 3 章では、これらのハードウェアを駆使して実現される「現代の魔法」 — 計算写真 (Computational Photography) の世界を探求します。HDR、夜景モード、ポートレートのボケがどのように作られるのかを見ていきましょう。