3Dスキャン技術、Photogrammetryに関するまとめ
Photogrammetryに関するメモ
3Dモデル作成の流れ
- 撮影
- 画像データの前処理
- Photogrammetryソフトで3Dモデルへ変換
1. 撮影
スマートフォンのカメラでも問題ないですが、高画質が撮影できるカメラの方がより精度の高い3Dモデルを作成することができます。
2. 画像データの前処理
Photogrammetryソフトに入力する前工程として、写真の余分な写り込み部分をカットしたり、色を調整する作業が必要です。この処理にはAdbe Photoshopを利用できます。ただし、何百枚もの写真データに前処理を行う必要があるので、Photoshopのスクリプトを組む作業が必要です。
Gabage in gabage outなので、精度の高い3Dモデルを作成するためには、この前処理の精度が重要となります。
3. Photogrammetryソフトで3Dモデルへ変換
Photogrammetryのライブラリはたくさん存在し、オープンソースのもの(meshroom)から有料のものまで様々です。(meshroom: https://github.com/alicevision/meshroom)
もっとも高いクオリティの3Dモデルを作成できるReality Captureというソフトだと、料金は750ユーロ/1monthです。(Reality Capture 料金の詳細: https://www.capturingreality.com/Products)
Photogrammetryで使用するPCは高速なGPUが必須です。Photogrammetry処理に使うマシンは、iPhoneやAndroidなどのモバイルよりも、PCを使うのが一般的です。
入力するデータ量(写真のデータ容量)の増加は、処理時間を指数関数的に増加させます。
3Dモデルの使用目的によって、精度基準を明確にすることが必要になります。
Webに表示するだけの3Dモデルであれば、高精度の3Dモデルは必要ないかもしれませんが、3Dプリンター用のデータならば、より精度の高い3Dモデルが要求されます。
撮影対象の問題
Photogrametryでは写真データの特徴点をコンピュータがマッピングして、3Dモデルを作成します。もし特徴点が取得しにくい真っ白の壁やテーブルなどの場合だと、コンピュータが特徴点を認識できないので注意が必要です。
靴など小物の3Dモデルを作成する場合は、カメラを三脚に固定して、撮影対象物を回転台に乗せて撮影できるので、撮影が簡単です。
一方、建物の外観や遺跡などを撮影する場合は、ドローンを自動で操縦して決まった位置で撮影を行うプログラムを組むことや、撮影場所のGPSデータを保存しておくなどの工夫をすることが必要です。これらの工夫によって3Dモデルの欠損を未然に予防できるので、より精度の高い3Dモデルを作成することができます。