バーチャルアートミュージアムを作る(6)フォトグラメトリ - 3DF Zephyrの基本的な使い方をFree版で解説

Craneです。前回から大分時間が空いてしまいました。
それでは、今回からフォトグラメトリソフトを使ってみましょう。
精度という意味ではRealityCaptureがおすすめなのですが、これは以前も書いた通り月4000円くらいかかりますので
まずは3DF Zephyr Freeを使ってみます。

0.3DF Zephyrのインストール
1.低密度点群の作成
2.高密度点群の作成
3.メッシュ抽出
4.テクスチャ付メッシュの作成
5.境界ボックスについて

0.3DF Zephyrのインストール

以下サイトからフリー版がダウンロードできます。インストールしてください。日本語対応しているのが嬉しいですね。
3DF Zephyr Free – a complete and free photogrammetry software (3dflow.net)

3DF Zephyrのワークフローは以下のようになります。
写真取り込み→ 低密度点群の作成→ 高密度点群の作成 →メッシュ生成 →テクスチャ付きメッシュの作成
3Dモデルは、メッシュ(要はポリゴン)にテクスチャ(要は画像)を張り付けたものになりますが
そこに向け、徐々に組み立てていくイメージです

早速使ってみましょう

1. 低密度点群の作成

新規プロジェクトを選択
ワークフロー → 新規プロジェクトを選択

新規プロジェクトを選択します。

+ボタンを押して、写真をフォルダから選んで選択します。

→ 選んだ写真が一覧で表示されます。
フリー版の場合は選べる写真は50枚までとなります。それを超えると-のボタンで写真を減らす必要があります。
次へ進んでください。「カメラ較正ページ」は、一旦はそのまま「次へ」で進みましょう。
(先に進んでいってモデル化するときに、写真を撮影したカメラの位置がうまくつかめない場合に、この設定をいじるシーンが出てくるようなのですが、私は使ったことありません。設定も複雑そうですし、そういう場合は写真自体を取り直すほうが早いのでは・・・と考えています。素人考えですが・・・)

カテゴリーは、とりあえず「一般」でやってみましょう。慣れてきたらほかの項目も試してみるとよいかも
私は「一般」のほかは「近接範囲」しか使ったことがありません。(ただその場合でも正直違いがよくわからない・・・)
プリセットは「デフォルト」で。
デフォルトでうまくいかない場合は「深い」を試してみる、という形になります。
「次へ」→「実行」で進みましょう。

計算が始まります。各写真を一個ずつ見比べて、3D化したときの位置関係を把握している模様。
今後、「高密度点群作成」「メッシュ作成」で同じようなプロセスを経ることになります。
高校数学の順列組合せ・・・的な処理ですね。
つまり、写真が増えると、計算回数が増えます。
PCスペックによっては、数分とか数十分かかるケースもあります・・・
なので、最初から精度を上げて(ここでいうとプリセットを「深い」にして)計算をするのはあまり得策ではありません。
気長に待ちましょう。

「モデル化に成功?」 という、謎な日本語が表示されます。?は何のためにあるのか・・・(苦笑)
この画面になれば、低密度点群が作成できたということになります
ちなみに、「モデル化」欄が「No」の赤字になった写真は、位置が判定できなかった写真になります。
これが多いと、精度がいまいちになります。また、「Yes」でも取り込んだ結果、位置がおかしい場合があります。
その場合は写真を取り直すか、先程のプリセットを「深い」にするなどして試行錯誤しましょう。

さて、できた低密度点群は上記のように、立体の元となる点が集まったものになります。
上のモデルでは、写真を50枚と、多く使っており、カメラ位置(見づらいですが、青い四角がカメラの位置を表しています)も正しく計算できているようで、それっぽい形になっています。写真が少ないと、この段階ではもっと密度が薄くなります。
なお、上のスクショを見ると、カメラ位置はモデルの中心から等距離で2つ円を描いているようになっていますね
私の経験上、モデルからの距離と高さは固定して、モデルを中心に360℃回転して写真を撮る(つまり上のスクショの青い点(カメラの位置)を繋げた円1つ)と、位置関係が推定しやすいようです。
そして、それだけでは見えない場所があったりする場合は、モデルからの距離と高さを変えて、そこからまた距離・高さを固定してモデルを中心に360℃回転して撮る、といったやりかたにするとよいです。

2.高密度点群の作成

 

 

 

 

 

 

 

「全てのカメラ」のまま「次へ」を選択で基本的にOK。
次の「カテゴリ」は最初と同じものを選択。「プリセット」は精度を上げるなら「高精細」を選択してもいいですが、まずは「デフォルト」のまま行きましょう

そして再び始まるWaiting Time… ここは、結構長いです。写真が多く、かつ高精細だとPCスペックによっては数十分かかることも・・・。

高密度点群ができました。先程よりも確かに、密度が濃くなってますね。

3.メッシュ抽出

 

 

 

次はメッシュ抽出です。ここもそのまま「次へ」で進みましょう

ここも「カテゴリ」は先程と同じものにします。「プリセット」の考え方も同様です。「次へ」→「実行」で計算がスタートします

はい。また長い計算の時間です。

メッシュができました。ちょっといろいろと怪しい雰囲気ですが、テクスチャを付ければそれっぽくなります。
ちなみに、「シーン」→「表示」→「ワイヤフレーム表示を有効化/無効化」で、メッシュの形が見れます。

三角形の集まりになってますね。

4.テクスチャ付メッシュ作成

最後にテクスチャを付けましょう。
これまで同様に、カメラはそのままで「次へ」

「テクスチャ中」って、こりゃまた適当な日本語ですね(苦笑)

「次へ」→そのまま「実行」で、また処理が走ります

今回は、これまでよりは時間がかからない、はずです。

5.境界ボックスについて

それらしくなりました。が、手前の左下部分、これは、境界ボックスの設定がまずくて消えてしまってます
気づくのが遅かったですね・・・低密度点群の作成時に、自動で境界ボックスを設定されるのですが、
それを確認しておく必要がありました。

「境界ボックスを編集」で編集できます。手前の面をもうちょっと手前に持ってきます。

どこの工程から、手前の部分が削れたのか確認します。
今回の場合、高密度点群まではうまくいっており、メッシュ作成の時点で削れてしまっているようです。
メッシュ作成→ テクスチャ付メッシュ作成 をやり直します。
もし、高密度点群の時点で境界線が適切な範囲になっていないと思われる場合は、そこからやり直します。
写真枚数が多いとPCスペックによっては、悲劇ですね・・・。
(私は結局、高性能グラフィックボード搭載のPCを買いました。この程度の枚数であれば各工程1分くらいで終わり、快適です
 その前は普通のノートPCを使ってましたが、それだと数十分かかりました・・・)

今度はうまくいったようです。地面がおかしいのは一旦置いておいて、保存しましょう。
そこそこ出来が良いモデルになりました。
さて次回は、モデルの修正などについて取り扱います。

今回の記事が、少しでも参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です