【3DF Zephyr】スマホ動画で建築模型をフォトグラメトリしてみよう
変な企画です。お遊びですね。
フォトグラメトリをやってみました。せっかくなので建築を絡めたくて、建築模型を撮影して、フォトグラメトリの処理ができるアプリの中でも有名な3DF Zephyr(スリーディーエフ・ゼファー)を使ってみます。
無料版がありますので、フォトグラメトリとはなんぞや、どんくらいの精度で出るんだ、と気になっている方はすぐ使えます。無料版は写真が50枚しか喰えないなどの制限があります。
How to use 3DF Zephyr Free. Better ways to get good photos for photogrammetry.
最適な画像データを探す
なんかですね、色々試したんですがスマホの動画が一番うまく行きました。
実験機材はこんな感じのラインナップです。
動画版
フォトグラメトリの品質比較
私自身が初心者でコツとかも掴めていないレベルということで、参考程度にしてください。一般的には一眼レフ+三脚で撮影するのが一番キレイに撮れるみたいです。
機材 評価 コメント
一眼レフ50mm+DoF浅め × 全然ダメ。前面の画像しか認識されない。 一眼レフ50mm+DoF深め × 全然ダメ。地面に近い部分だけ立体になった 一眼レフ35mm+DoF深め ▲ 上2つよりはマシ スマホのカメラ △ イマイチ スマホの動画FHD ○ メッシュ精度は良好。テクスチャが粗い。 スマホの動画4K ◎ メッシュ精度は良好。テクスチャ品質も良い。
スマホの動画FHD スマホの動画4K
■現時点での総評
・意外な結果だったのですが最後の「スマホの動画4K」が最も簡単かつ高品質なので、これで進めます。
・今回は写真は×と評価していますが、私の撮り方が良くないからだと考えています。今、詳しい方に聞いたりしています。
【追加情報】
知人でOLYMPUSのTG-6という深度合成ができるコンデジを買った方がいてるのですが、その方のフォトグラメトリはかなり精細にデータ化できていました。
動画撮影
Zephyr無料版は50枚が上限、かつキャプチャ頻度はFPSで指定できますので1.0FPSを前提とします。
ということで4K動画で50秒撮影します。これで50枚分ですね。
自分が被写体の周囲をぐるぐるとまわりながら撮影。被写体に近いほうがいい結果が得られます。
3DF Zephyrのダウンロード
ここでダウンロードします。まずは無料版でいいと思います。
3DF ZEPHYR – 3DFLOW
https://www.3dflow.net/3df-zephyr-photogrammetry-software/
3DF Zephyrで取り込む
3DF Zephyrを起動します。
ツールバーのところが作業手順通りにボタンが並んでいます。なんという親切設計。
左の新規プロジェクトを選択すると左下に[ビデオから写真を入力]があるので選択。
[ビデオファイルからフレームを抽出]ダイアログが出てきます。
・[入力ファイル]に動画ファイルを指定。
・[出力ファイル]はフォルダを指定します。どこでもOK。ここに抽出されたフレームの画像ファイル(JPG/PNG形式)が出力されます。
・[フレーム出力フォーマット]は[PNG]の方が良いと思います。
・[フレームを抽出]は[サンプルレート]で、右側のfpsを指示してあげます。[1.0fps]でいいと思います。
ちないに2.0fpsにすると25秒ぶんの映像から抽出されることになります。
・[ぼかし自動フィルター]はデフォルトでいいと思います。なんとなく[法線]の方がいい精度の気がしていますが確信はありません。
・一番下に[フレームの事前選択]で、動画の開始・終了位置を指示できます。動画を余分に録画したりしても安心ですよ。なんという親切設計。
[フレームの抽出とワークスペースの入力]ボタンを押せば処理が始まります。
画像処理の結果が表示されます。YESがちゃんと処理できた画像。NOが半分とかそれ以上であれば撮影をやり直しした方がいいのではないでしょうか。
画像処理結果とテクスチャの作成
よくある3Dモデラーみたいな画面になります。点々が認識できた特徴点。青い物体は認識されたカメラ位置です。
今回はこのソフトでは特に補正とかしません。サクサクと次に行きましょう。
ツールバーから[3Dモデル作成]を選択。
[ステレオウィザード]というダイアログが出ます。次へ進むような選択をします。
さらに次に進みましょう。
ツールバーで[テクスチャ付メッシュ作成]を選択。
[テクスチャ付メッシュウィザード]ダイアログが出ます。デフォルト設定でOKかと。
[デュアルシングルテクスチャ]って2つなの1つなのどっち!? というツッコミはなしです。
この処理が終わると、やっと形状としてうまく行ったのかがはっきりと視認できるようになります。動画でここまでうまくいくとちょっとびっくり。
OBJ形式でエクスポートする
最後に、テクスチャと3D図形データを出力してみましょう。
ツールバーの[テクスチャ付きメッシュを出力]を選択。
ダイアログが出ます。
・[フォーマットを出力]をOBJ/Mtlにします。
・[テクスチャをリスケール]を好きな値にします。解像度です。
他、必要な設定があれば操作して、[出力]ボタンを押します。
こんな感じで必要最低限のファイル3つが出てきました。これをBlenderとかUE4にインポートすればよいでしょう。
本題
フォトグラメトリのやり方紹介の回になってしまったのですが、こっから本題へ。
建築模型とは言えど、LEGO ARCHITECTURESシリーズの『落水荘』をフォトグラメトリしてみました。LEGOって結構ボコボコしているのでどうなんでしょうね。
こんな感じになりました。思っていたよりは微妙? 溶解気味ですね、なんかチョコレートで作って1時間位放置してしまった感じです。
BlenderのCyclesレンダーで開いてみたところ。割とちゃんとできているようです。ご丁寧に上部の凸もちゃんと形状家できているとか!