Structure from Motion(通称 SfM)は、同じ場所を違う角度から撮った写真の束から、3Dの形(Structure)とカメラがどこから撮ったか(Motion)を同時に逆算する手法です。NeRFがニューラルネットで新規視点を「描く」のに対し、SfMは幾何学と特徴マッチングで点群とカメラ軌跡を復元する——本記事はバンドル調整の数式より、「なぜ動きの情報から形が分かるか」に焦点を当てます。
試験で問われる見方
SfM単独の過去問は少ない一方、辞典の定義は「複数画像から3D構造とカメラ姿勢を復元する」です。試験では3D再構成・新規視点合成(G-379のNeRF)や画像認識タスクの区別(G-315)を土台に整理します。
誤答では、SfM=画像生成、SfM=SLAM(リアルタイム位置推定)、SfM=物体検出(G-021)など、別タスクとのすり替えに注意します。
演習で確認する
MotionとStructure
名前の Motion は「カメラがどう動いたか」、Structure は「被写体の3Dの形」——この二つは同時に推定されます。
同じ建物の角を、左から・右から・上から撮った写真があるとします。各写真では角の見え方は違いますが、同じ物理的な点であることは対応づけできます。対応が十分あれば、「カメラはここにいて、こう向いていた」——と三角測量の思想で3D座標が定まります。
- 入力 — 同じシーンの複数視点画像(順序は不定でも可)
- 出力 — 3D点群 + 各画像のカメラ姿勢
- 試験向け — 「複数画像→3D+カメラ」が定義の核
復元の流れ
試験向けのパイプラインは、次の段階に分けて覚えると整理しやすいです。
- 特徴抽出 — 各画像から安定したキーポイントを検出
- マッチング — 画像間で同じ点の対応を見つける
- 幾何推定 — 基本行列・本質行列などでカメラの相対姿勢を推定
- 三角測量 — 対応点から3D座標を計算
- バンドル調整 — 3D点とカメラ姿勢を全体最適化(誤差を最小化)
深層学習が主流の試験範囲でも、SfMは幾何と最適化——「ニューラルネットで端到端」ではない——点が他手法との区別になります。
特徴点マッチングの役割
SfMの土台は、画像間の対応点です。CNN以前はSIFTやORBなどの局所特徴が広く使われました——スケールや回転が変わっても同じ場所を見つけやすい記述子が、SfMの入力になります。
| 部品 | 役割 | 試験向け |
|---|---|---|
| SIFT / ORB | キーポイントと記述子 | マッチングの前処理 |
| 対応付け | 別画像の同一点を結ぶ | 3D復元の前提 |
| CNN | 深層特徴でのマッチングも | 現代パイプラインの選択肢 |
PointNetが点群そのものを分類するのに対し、SfMは2D画像から点群を作る——入力が画像か点群かで整理を分けます。
NeRF・SLAMとの違い
| 観点 | SfM | NeRF | SLAM |
|---|---|---|---|
| 主な入力 | 複数の静止画 | 多視点画像(カメラ姿勢も利用) | センサー系列(カメラ・LiDAR等) |
| 主な出力 | 3D点群+カメラ軌跡 | 新規視点の画像合成 | 地図+自己位置 |
| 処理の型 | オフライン復元 | ニューラル場の学習 | オンライン推定 |
| 試験 | 3D復元パイプライン | G-379 | ロボティクス・センサー |
実務では、SfMでカメラ姿勢と粗い点群を得てからNeRF学習に渡す——といったパイプライン連携もあります。試験では個別定義のすり替えが先です。
実務での使われ方
- 3Dモデリング 建物・遺跡・製品の写真から点群メッシュを作成
- AR・VFX 実写とCGを合成するためのカメラ軌跡の取得
- 地図・測量 ドローン写真からの地形復元(フォトグラメトリ)
- 下流への入力 復元点群をPointNetやメッシュ処理へ渡す
SfMは画像を新しく生成する技術ではありません。Stable DiffusionやGANとの混同は避け、「観測から3Dを復元する」——認識・再構成の系譜——として押さえます。
すり替えに注意
| 誤った説明 | 正しい理解 |
|---|---|
| SfM=NeRF | 幾何復元 vs ニューラル新規視点合成(G-379) |
| SfM=SLAM | オフライン3D復元 vs オンライン位置推定 |
| SfM=物体検出 | 3D・カメラ復元 vs 2Dの箱とクラス(G-021) |
| SfM=LiDAR | 画像から復元 vs 距離センサの直接点群 |
| SfM=画像生成AI | 観測の復元 vs 新規コンテンツの生成 |
| 1枚の写真だけで十分 | 複数視点が前提 |
よくある質問
Structure from Motionは何をする手法ですか?
同じシーンを異なる視点から撮影した複数の画像から、3Dの点群構造とカメラの軌跡(位置・向き)を復元する手法です。フォトグラメトリ(写真測量)の中核技術の一つで、AR・3Dモデリング・新規視点合成の前処理として使われます。
Structure from MotionとNeRFは同じですか?
同じではありません。SfMは幾何学的にカメラ姿勢と3D点群を推定する古典的〜現代的な復元パイプラインです。NeRFはニューラルネットで3D場を表現し新規視点画像を合成する手法です。多視点画像という入力は共通し得ますが、表現と目的が異なります(G-379)。
Structure from MotionとSLAMは同じですか?
同じではありません。SfMはオフラインで複数画像から3Dとカメラを復元する手法として整理されます。SLAMはロボットが移動しながらリアルタイムに自己位置と地図を同時に推定する技術です。3D復元という点では近いですが、オンライン性と用途が異なります。