2017年08月24日 20時00分 ソフトウェア

2次元の絵を3次元の立体に自動変換する研究が進行中

by Matt Neale



「二次元的な画像から立体を予測する」という能力をAIにつけさせるにはどうすればいいのか？ということで、カリフォルニア大学バークレー校の博士研究員であるChristian Häne氏が独自の手法を用いた研究を行っています。



High Quality 3D Object Reconstruction from a Single Color Image – The Berkeley Artificial Intelligence Research Blog

http://bair.berkeley.edu/blog/2017/08/23/high-quality-3d-obj-reconstruction/



[1704.00710] Hierarchical Surface Prediction for 3D Object Reconstruction

https://arxiv.org/abs/1704.00710



人間が1枚の絵や写真から立体としてのオブジェクトの形を推察できるのは、2つの目を使って「深度」を知覚できるため。また、人間は写真上のオブジェクトを見た時に実際には写真に写っていない部分を推理することもできます。上記のような能力はオブジェクトの形状を把握する上で非常に重要ですが、AIに同じことを行わせるのは簡単ではありません。





画像や写真という限られた情報インプットから立体を再構成する上で用いられる基本的な原則は「物の形状は任意ではない」ということです。飛行機であれば胴体があり、胴体の側部に2枚の羽があり、後方にはスタビライザーが必ずついています。人間は世界にあふれる物を2つの目で観察し、自分の手で触るなど、インタラクティブな方法でこの事実を知ることができます。一方で、 コンピューターがこのような原則を学習するには大量のデータが必要となります。



それゆえに、3D再構成を行うという研究で近年とられているのは「畳み込みニューラルネットワーク(CNN)」と呼ばれるニューラルネットワークの1種に、ボクセルにおける占有量からオブジェクトの形を予測させるという方法。この方法では、3Dオブジェクトを細分化し、ボクセルという立方体のうち、どこが空白でどこが立体によって占められているのか、物体の内側と外側はそれぞれどこかが判断されます。



データのインプットにはオブジェクトのカラー画像が用いられ、CNNがボクセルの占有量を予測できるようにするとともに、CADモデルのデータセットを使ってネットワークを管理・トレーニングしました。その結果、CNNはさまざまなオブジェクトクラスのモデルを学習したとのこと。





ただし、この方法を使うと、解像度を上げた時に本来であればなめらかで2面的であるべき表面部分が、デコボコになってしまうという問題がありました。そこで、研究者らは、低解像度の立体を高解像度にする際に、物体の表面が二次元の性質が持つかどうかを階層的に予測させるという方法を取ったとのこと。





具体的な仕組みは以下の通り。まずインプットされたカラー画像を畳み込みのエンコーダーを使って低い容積の3D表現にエンコードします。そしてこれを3D占有量としてデコード。Häne氏らの研究で特徴的なhierarchical surface prediction(階層的な表面予測／HSP)も、このデコード作業の時の行われます。通常であればボクセル内が空白であるか占有されているかを予測するという方法が取られますが、Häne氏らは「空白」「占有スペース」に加えて「境界線」という3つの分類を使用するために、低解像度の立体から二次元的な表面を持つ高解像度の立体を予測することが可能になります。





なお、立体予測を行う時にベースラインとしてlow resolution hard(LR hard)とlow resolution soft(LR soft)という2つの手法をとり、HSPを行った結果と比較したところ、同じ画像を立体化させても、立体予測にかなり違いがあることが発表されています。以下の画像が比較図で、左からインプット画像、HSP、LR Soft、LR Hardとなっています。





イスや車の画像で立体予測を行うとこんな感じ。HSPは特に「表面の滑らかな立体」の表現を得意としていることがわかります。

