都市景観をスキャンし3Dモデル構築する予想外の方法とは?

建物群から構成される都市景観の3Dモデリングは、様々なアプリケーションにおいて利用されているが、その利用は現時点では限定されており、より積極的な利用を促進するには、3Dモデル構築の省力化、自動化、低コスト化が求められる。最近、ジョージア工科大の研究グループが、都市景観をスキャンし、3Dモデル構築を行うあっと驚く意外な方法を考案している。本エントリでは、論文*1に従って、この手法の概要と、それによって将来可能になるであろうユースシーンについて紹介したい。本エントリで掲載する図表は本論文からの引用である。




【告知】@LunarModule7でつぶやいています。
興味のあるかたはフォローください。

GPSを使って街をスキャンする

GPSは30個程度の衛星のうち受信可能な位置にある衛星からの時刻情報、軌道情報などを受信し、衛星からの距離を測定、3次元位置を測位するものだ。4個のGPS衛星からの電波を受信できれば校正により精度を向上させる事ができる。

さて、仮に現在上空にあって信号が受信できるはずの衛星から信号が受信できないという状況を考えてみよう(実際にはGPS信号のS/N比の低下として現れる)。その際、考えられる原因は現在地とGPS衛星の間に何らかの障害物が存在するということだ。であるならば、現在位置を変えつつ複数のGPS衛星の信号受信状況を調べ、情報を統合してやれば、都市景観をスキャンして、3Dモデルとして再構築する事が可能となる。



図1は実際に高層ビルの遮蔽によりGPS信号のSN比が大きく減少する様子を示している。緑色ラインがSN比が低い部分を表し、ビルによるGPS信号の遮蔽がSN比の低下という形でクリアに検出できることが分かる。


図1:ビルの遮蔽によるGPS信号のSN比の低下

本手法は次の主に2つのステージから構成される。

  1. 対象エリアにおける複数のビル群を検出するために密度マップ(density map)を作成する。
  2. 対象のビルの領域とサイズを推定し3Dモデルを構築する。

次にステップごとに処理過程を説明する。なお長文が嫌な人は下の方にある動画をチェックされたい。

密度マップ(density map)の作成


図2:BOAの上面図
図2は対象エリアであるBank of America(BOA)周辺の上空から撮影した写真を示している。5階建て以上の高さを持つ建築物がオレンジで示されており、中央には55階建て311.8mの高層ビルが存在する。実験では市販のGPSユニットをバックパックに入れ、3日間に渡って赤く示した公道に沿って周囲を歩き回り、4,000点のサンプルを取得している(1周でおよそ1,000サンプル)。 次に複数のサンプルを用いてGPS信号を遮蔽するビルが存在する確率を表す密度マップを生成する。密度マップは3次元ベクトルで表されるGPS信号のSN比データを地上の2次元に射影し、各衛星の信号レベルの強弱を正規化することで生成される。本来得られるであろうSN比に対して低い値しか得られないベクトル方向には建物が存在する可能性が高いという推定を全サンプルに対して行い、推定結果を重ね合わせたものが密度マップとなる。
(a)(b)(c)
図3:(a)BOA対象エリア,(b)生成された密度マップ,(c)ビル中心を検出するクラスタリング
図3(a)において5階より高い建物が緑色のラインで示されている。(b)に示す密度マップにおいて、5階以上の建物は全て50%以上の存在確率として検出されている事が分かる。(c)は密度マップにmean shiftアルゴリズム*2を適用してピークポイントを算出し、クラスタリングした結果である。これらのクラスタはビルが存在するであろう場所を示している。
図4:密度マップと実際の写真比較
図4は得られた密度マップ(左)と実際の写真(右)を比較したものである。右図で青い点として表されているのがGPSの計測位置となるが、実際に移動した道路上として計測されておらず、かなり誤差があることが分かる。その上で、密度マップにおいてビルの存在が推定された領域は、実世界に極めてよく適合している様子が分かるだろう。

3Dモデルの構築


(a)(b)
(c)(d)
図5:推定領域に含まれる複数のベクトルを用いて
BOAビルの領域を推定する
ここでは存在確率が60%を越える青いクラスタを対象にビルの形状や大きさを推定し3Dモデルの構築を行う。図5(a)は単一の衛星からの信号がビルによって遮蔽されたベクトル(緑色)を示している。複数の衛星からの信号を組み合わせると(図5(b))、ビルの2次元領域を決定する事ができる。信頼度の上位10%を採用すると図5(c)(d)において赤く示すようなビル推定領域が得られる。黄色で示す実際の領域に比べて、中心点位置はわずか4mの誤差であり、周囲の形状は23%の誤差に収まっている。
(a)
(b)(c)
図6: ボクセルによる3Dモデル構築
さらにビル推定領域の上空を通るサンプルに対し、直線上にボクセルを配置していくと、ビル全体の3Dモデルが現れてくる。このままでは凹凸の目立つ形状となってしまうが、ビルに突出部分が存在しない事を仮定して、検出されたボクセルの下方を埋める操作を行うと、最終的な3Dモデルが生成される。
500 samples
Half trip
900 samples
One trip
1100 samples
1.5 trips
2300 samples
Two trips
3200 samples
2.5 trips
4000 samples
Three trips
次は上記で示したBOAを対象した例と、動画で最初に紹介されているOne Atlantic Center(OAC)に対して共に4,000サンプルから生成された3Dモデルと実際との誤差を示したものである。領域誤差はほぼ22%であり、GPS情報に基づき自動的に生成される3Dモデルとしては良い結果が得られていると言える。高さが共に低く見積もられているが、これはノイズ除去の副作用であり改善可能な部分だ。また、今回はビル周囲を4周する4,000サンプルを用いているが、考察実験においては、大体2周、2,000サンプルほど取得すればほぼ同様の結果が得られることが示されている。
対象地区重心位置誤差(ft)領域誤差(%)実物高さ(ft)推定高さ(ft)高さ誤差
BOA7.39822.731023862.8015.65
OAC22.5922.20820705.3213.98

まとめ

位置取得以外のGPSの利用方法としては、GPS信号が受信できない事に基づいて現在地は屋内であるということを推定する等の利用がなされているが、3Dモデルの構築に利用した例は本研究がほぼ初めてであり、アイデアがキラリと光る研究となっている。

高価なレーザー計測器ではなく、市販のGPSユニットでも実用的な精度の3Dモデルを自動生成することが可能である事から、将来的には不特定多数のユーザのGPS情報をクラウドで共有化することで、刻々と変化する都市景観をリアルタイムに3Dモデル化する事も可能になるだろう。精度は若干劣る部分があるが、GPSはパッシブに利用する事が可能であり、計測にユーザの能動的な操作を必要しない。完全に自動で位置情報が収集、共有されることで、3Dマップが生成されるのだ。きっと初めて足を踏み入れるような街であっても、しばらくみんなで街中を散策すれば3Dマップが構築できるようになるだろう。カーナビに搭載されているGPS情報を使う事ができれば、日本全国の都市の3Dマップを構築することも可能かも知れない。

写真に基づく3D空間構築手法の到達点』や『Web上の膨大な写真からローマを1日で構築する方法』で紹介した画像ベースの構築手法と組み合わせれば、ビジュアル的にも実世界を忠実に反映した仮想空間を構築することができるはずだ。我々の生活する実空間と高度にリンクした寸分変わらぬ仮想世界が並行に存在する事が当たり前になったとき、社会はどう変わるのだろうか?