360動画を用いたPhotogrammetryの手順の一例を紹介します。
FlyThrough動画
— aya (@nakano_muramoto) 2019/05/27
データは@NaotakaFujii様から拝借しました。ありがとうございます。
大まかな手順はこちらになります。
- EQ動画を静止画連番に変換する Adobe Premiere Pro
- EQ画像を平面画像に変換する PTGui
- 平面画像を3次元再構成する Reality Capture
####1. EQ動画を静止画連番に変換
これは一般的な作業なので、説明は不要かもしれません。
今回はjpegにしました。
####2. EQ画像を平面画像に変換
Reality Captureは画像のひずみ補正も自動で行ないますが、
後日に紹介する予定の理由から、あらかじめ中心射影に投影変換しました。
今回はできるだけ広い角度として、FOV110degにしました。
水平方向に4種類の向き(20deg, -20deg, 180deg, 200deg)で切り出しました。
こちらの画面のyawの値で、切り出す視野を変更します。
####3. 平面画像を3次元再構成
(大まかな手順は公式のホームページやYouTubeの紹介動画をご覧ください。)
入力した画像について、カメラの条件を入力しました。
"1Ds"のリストにある画像を選択した後、
WorkflowタブのApplicationにある、Settingをクリックして、
"Prior calibration"のFocal lengthを12.5mm(FOV 110deg相当)、
"Prior lens distortion"のModelを"No lens distortion"にしました。
この設定をすることで、三次元再構成するときのレンズの内部パラメータが制限されるようです。
※レンズのパラメータを設定しないと、つじつまが合いやすい結果が導出されるので、
少し無理がある解析結果になることがあるようです。
自動で画像群が分類され、推定されるモデルごとにComponentが分かれますので、
コントロールポイントを設定して、できるだけモデルをまとめます。
今回は、854枚が一つのモデルにまとまりました。
RecsonstuctionタブにあるSimplify Tool, Smoothing tool, Unwrapを行い、
Textureを生成しました。
最後に、コントロールポイントを使って、距離情報を入力します。
今回は地図から推測した値を入力しましたが、
本来であれば、複数の方向の距離を実測した方がよいと思います。
また、"4D"ウィンドウを選択すると、ドリーやドローンのように、
カメラを移動させながらモデルの中を撮影したような動画を生成できます。
####まとめ
360カメラで撮影された動画を用い、Photogrammetryする手順の一例を紹介しました。
著者自身は、まだ3年くらいしかツールを使っていないので、不十分な理解で恐縮です。
よりよい方法がありましたら、ご紹介いただけると幸いです。
また、今回は有償のツールばかりを使いましたが、
UnityやMeshroomで代用することも可能だと思いますので、
後日、記事をまとめる予定です。
####あとがき
過去の事例
— aya (@nakano_muramoto) 2016/11/10
カメラやアプリ、PCが進化したことによって、よい結果を得やすくなった気がします。
通常のカメラを使ってインサイド・アウトでモデリングしようとすると、
Componentがまとまらないことが多いので、
360カメラで大まかに撮影して、
あとで細かいところを通常のカメラの画像で補うなど、
手段の選択肢が増えたと思いました。