ふくだぶろーぐ

福田知弘の公式ブログです。

都市とITとが出合うところ 第38回 水木しげるロード(3)

SfM

水木しげるロードの将来像を描いたVR仮想空間に配置する、ブロンズ像の3次元モデルを制作するために、SfM(Structure from Motion)技術を用いたことを前号で述べた。SfMは、デジタルカメラスマートフォンなどの低コストで身近な機材を使い、無料または低コストのソフトウェアを用いて、点群やメッシュの生成を可能とするため、急速に人気が高まっている。今回は、SfMに焦点を当ててみよう。

現存する3次元の物体や空間を3次元モデル化する方法(3次元復元技術)には、大きくレーザースキャナを用いる方法と画像を用いる方法がある。SfMは後者であり、レーザースキャナのような特殊な機材を使う必要がなく、異なる位置から撮影された複数枚の写真から、3次元構造を推定する技術である。処理の過程として、カメラのパラメータの推定、各画像の特徴量の抽出、ある画像と他の画像との共通の基準点の推定を経て、3次元モデルの点群(点の集まり)を生成する。この段階で生成された点群は密度が低く、この点群データを基に密度の高い点群を生成する。さらに、この密な点群から、多角形の生成(メッシュ化)、テクスチャの生成を行うことで、質の髙い3次元モデルを生成できる。

筆者が最初にSfMを使用した1990年代、写真上の共通の基準点は手作業で指定する必要があった。当時のPC性能では大量の画像を用いて処理することも困難であった。生成された3次元モデルも寸法誤差が大きく、結局、CAD/CGソフトでモデリングしていた。技術は長足の進歩を遂げ、現在は、一連の処理がほぼ自動化された。

SfM用の撮影ノウハウについて、ブロンズ像を例に紹介する。ブロンズ像を上空から見た時にブロンズ像に対して8方向の角度から撮り、さらに8地点それぞれにおけるカメラ位置の高さを、高、中、低の3地点、計24地点を基本とした。各画像を補完するための写真として、連続写真を撮影した。撮影する天候や時間帯は、曇りの日に、観光客が少ない時間帯とした。曇りの日とした理由は、VR仮想空間とSfMで作成した3次元モデルとの光学的整合性を確保するためである。つまり、VR仮想空間全体の陰影は、VRソフト上で日時や天候を設定した上で付けるため、SfMで3次元モデルを作成する時点では、陰影を付けないようにする必要がある。そのため、曇天時に撮影した。また、観光客が少ない時間帯とした理由は、可能な限りブロンズ像の全身を一枚の写真に収めること、そして、ブロンズ像以外の要素(観光客など)を写真に含めてしまうとそれらがノイズとなりうまく復元されないためである。この条件下で、153体のブロンズ像を撮影する必要があり、現地の境港市役所職員が撮影を担当した。撮影期間は約1か月を要したが、手持ちのデジカメで簡単なノウハウで撮影することができるため、日頃大阪で仕事をしている筆者らが時間とコストをかけて現地に行かなくとも、分担で作業を進めることができた。1体当たりの撮影時間は10~20分、SfMでの処理は1時間程度であった。ソフトウェアは、Agisoft PhotoScan、Autodesk Remake、UC-win/Road SfMプラグインを用いた(図1~5)。

f:id:fukuda040416:20170412123009j:plain f:id:fukuda040416:20170501171131p:plain
図1 ブロンズ像写真群|図2 推定されたカメラの撮影位置と姿勢

f:id:fukuda040416:20170501171154p:plain f:id:fukuda040416:20170501171159p:plain f:id:fukuda040416:20170501171203p:plain
図3 復元点群(低密度)|図4 復元点群(高密度)|図5 復元メッシュ
©水木プロ

ブロンズ像以外の対象として、VR仮想空間には、水木しげるロード沿道の建物を3次元モデリングする必要があり、SfMで3次元モデリングを試してみた。結果、生成した建物モデルは、内容の不足、不備、余剰が見られた(図6~8)。

  • 内容不足とは、本来モデリングされるべき個所がモデリングされていないことである。今回は、屋根部分が該当した。この課題は、ドローンを飛ばして上空から写真撮影すればクリアできそうである。
  • 内容不備とは、モデリングされてはいるものの、形状が正確に定義されていないことである。今回は、建物看板、アーケード、電柱などが該当した。
  • 内容余剰とは、不要なオブジェクトがモデリングされてしまったことである。今回は、電線に空の要素が多く含まれた。

SfMにより3次元モデルを生成した後、内容不備となるオブジェクトを修正したり、内容余剰のオブジェクトを削除するといった編集作業はSfMソフト上で可能であるものの、今回は、この編集作業に要する時間が多大となり、また作業内容が複雑となったため、最終的には従来手法(3次元CGソフトで、地図より得られる建物の平面輪郭線と立面写真より得られる建物の概算高さやファサード写真より3次元モデルを作成)により周辺建物を作成した。内容不備や余剰が発生した理由としては、商店街の建物は連坦しているため撮影できる建物立面が限られており、全ての面を撮影できなかったことがある。また、建物の前面にはアーケードや電線など建物をモデリングする際の阻害要素が多く含まれていたことがある。

3次元形状の復元精度は、現状では、レーザースキャナを用いる方法がSfMよりも信頼性は高いとされる。しかしながら、SfMは身近な機材を用いて3次元モデルを生成することができるため、今後、ますます普及が進むであろう。生成した3次元モデルは、3Dプリンターと組み合わせることにより、我々が住む現実世界に出力することも可能である。

f:id:fukuda040416:20160910120642j:plain f:id:fukuda040416:20170501171228p:plain f:id:fukuda040416:20170501171221p:plain
図6 周辺建物:現況写真|図7 従来手法|図8 SfMによる復元点群

PDF:  http://y-f-lab.jp/fukudablog/files/1705machinami_FukudaFinal.pdf

大阪府建築士事務所協会「まちなみ」2017年5月号