深度推定Depth Estimation

写真一枚から近さと遠さを読み取ること

ポイント
  • 深度推定は平らな写真一枚からどこが近くどこが遠いかを読み取る作業です。
  • 結果は写真と同じ大きさの深度マップです。近い場所は明るく、遠い場所は暗く塗った絵です。
  • レンズはひとつで構いません。隠れ方、大きさ、ぼやけ方、線が集まる方向のような絵の中の手がかりで見当をつけます。
  • ほとんどは何メートルかではなく、どちらがより近いか、その順序と度合いだけを教えてくれます。
  • 背景ぼかし、写真を立体的に動かす加工、隠れの処理のような場面で使われます。
目次

1たとえで理解する

霧のかかった道に立つと、すぐ手前の街灯は柱の継ぎ目まではっきり見え、少し離れた街灯は輪郭だけが残り、道の端のものはぼんやりした塊にしか見えません。物差しを当てたこともなく片目をつぶっても、どれが近くどれが遠いかはすぐに分かります。濃さと大きさ、手前のものが後ろのものを隠す様子が、距離の代わりを教えてくれるからです。

深度推定もこの霧のかかった道と同じです。写真には距離が数字として書かれていませんが、絵の中には霧のように距離を教えてくれる痕跡がたくさん入っています。こうした痕跡を集めて、画面の場所ごとに「ここはこれくらい遠い」と書き込んだ絵が深度マップです。

ただし霧は本当の距離を教えてくれません。あの先が百歩なのか三百歩なのかは分からず、どちらがより遠いという順序だけが残ります。

2くわしく

写真には距離が抜けています

カメラは世界を平らに押しつぶして写し取ります。ひとつの方向に伸びた光の線の上にあるものは、近くても遠くてもすべて同じ場所に写ります。写真一枚だけを見ると、手のひらほどのおもちゃの車が目の前にあるのか、本物の車が遠くにあるのかを見分ける根拠は絵の中にはありません。

だから本来の距離を知るには目が二つ必要です。二か所から撮った写真を見比べると、近いものほど左右に大きくずれて見え、そのずれの度合いがそのまま距離になります。距離を測る機材も、光を発してから戻ってくるまでの時間を数える形で直接測ります。

深度推定はこうした機材なしに、すでに撮られた写真一枚から失われた距離をさかのぼって読み取る作業です。正解を測り直すというより、もっともらしい値を言い当てるほうに近いです。

絵の中の手がかりを集めます

たどる材料は、人が霧のかかった道で使うものと変わりません。手前のものが後ろのものを隠していれば、隠しているほうが近いです。同じ種類の物が小さく写っていれば遠くにあるということです。平行な二本の線が画面の奥で一点に集まれば、そちらが遠い方向です。床の模様が細かくなるほど遠ざかり、影がどこにどう寝ているかも前後を分けてくれます。

学習は距離を一緒に測っておいた写真の山で行います。いろいろな角度から撮った写真と機材で測った距離の値を対にしておき、写真だけを見てその値を言い当てさせます。数多くの場面を通るうちに「こんな見た目ならこれくらい遠い」という感覚が積み重なります。

だから結果は測り取った値ではなく経験から出た見当です。初めて見る場面でも見慣れた手がかりがあればよく当たり、手がかりが食い違っていると人と同じように騙されます。

結果は一枚の深度マップです

出す答えは数字ひとつではなく、写真と同じ大きさの絵です。場所ごとに値がひとつずつ入っていて、普通は近いほど明るく塗って示します。人物が白く浮き上がり奥の壁が暗く沈む白黒の絵が、まさにそれです。

このマップがあれば写真を前後に切り分けられます。人物だけを残して背後をぼかす写真効果、画面を少しずつ動かして立体のように揺らめかせる効果、仮想の物を置いたとき手前の柱に自然に隠れるようにする処理が、すべてこの一枚の上で行われます。

ロボットや自動車の運転支援装置もこのマップを参考にします。ただし安全に関わる場面では写真一枚の見当だけを信じず、距離を直接測る装置と一緒に使います。

順序は分かっても歩数は分かりません

いちばんよく引っかかる限界です。ほとんどの深度推定はどちらがより近いか、その違いがどれくらい大きいかしか教えてくれません。同じ場面でも全体を二倍に伸ばしたり半分に縮めたりすると、前後の関係はそのままなので区別できません。

メートルで表した距離が必要なら基準がひとつ必要です。カメラのレンズ情報を伝えたり、大きさの分かった物をひとつ写しておいたり、機材で測った値をいくつか差し込んで目盛りを合わせます。目盛りを合わせる前の値は、地図の等高線のように高低だけがある絵です。

騙されやすい場面があります

鏡とガラスが代表例です。鏡に映った部屋は写真の中で遠くまで続く本物の部屋のように見え、壁の向こうに空間が続いているかのように描かれることがあります。ガラス窓の向こうの景色とガラスに映った反射が重なると、どちらの距離を書けばよいのか揺らぎます。

模様のない白い壁、深い霧、逆光で真っ黒に沈んだ場所も難しいです。手がかり自体が消えている場所なので周りからつなぎ合わせて埋めるのですが、そのせいで広い面がまるごとずれたり、薄い物の境目がぼやけたりします。柵や髪の毛、木の枝のように細く密なものが背景にくっついてしまうこともよくあります。

3もう少し正確に

写真一枚で行う深度推定は単眼深度推定と呼ばれます。二台のカメラでずれを比べる方式、光を発して戻る時間を測る方式と区別するために付いた名前です。結果として出るマップの値は距離をそのまま使うこともあれば、距離の逆数のように近いほうが大きく開く目盛りを使うこともあります。近い場所をより細かく扱おうとする選択です。

たとえがずれる点もあります。霧は実際に遠くのものをぼやけさせますが、深度推定はぼやけ具合ひとつだけに頼りません。隠れ方、大きさ、模様の細かさ、線が集まる方向まで一度に照らし合わせ、学習しておいた場面の見た目とも突き合わせます。だから霧がまったくない晴れた写真でもうまく働き、逆に本物の霧が濃くかかった写真ではむしろ手がかりが消えてより迷います。学習に使った場面と大きく違う場所、たとえば室内写真ばかりで学んだあと広い野原に出会うと、値が大きく揺らぐこともあります。

4やってみる

5よくある誤解

  • 深度推定が距離を測ってくれると思われがちですが、実際にはほとんどが前後の順序と度合いだけを教えてくれて、メートルの値は別に目盛りを合わせて初めて出てきます。

  • カメラが二台必要だと考えられがちですが、実際にはすでに撮られた写真一枚でも絵の中の手がかりだけで深度マップを作れます。

  • 背景ぼかしはレンズがする仕事だと思われがちですが、実際には前後を切り分けた深度マップを見て奥だけを選んでぼかす場合が多くあります。

7ひとこと要約

つまり深度推定は霧のかかった道で濃さと隠れ方から距離を感じ取るように、写真一枚の手がかりだけで場所ごとに近さと遠さを書き込む作業です。

誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新2026-09-02