オブジェクトをシンプルな部分的形状の集まりとして捉え、精度の高い3Dモデルを作る

空間領域構成法(constructive solid geometry, CSG)と呼ばれる技法を使用するシステムによりMITの研究者たちが、オブジェクトを分解してそれら個々の構成要素を3Dモデルで表現することに成功した。いわばそれは、複雑な物体に対するリバースエンジニアリングだ。

そのシステムを紹介するペーパー“InverseCSG: Automatic Conversion of 3D Models to CSG Trees”を、Tao Du, Jeevana Priya Inala, Yewen Pu, Andrew Spielberg, Adriana Schulz, Daniela Rus, Armando Solar-Lezama, そしてWojciech Matusikらが共著している。

Tao Duは3DPrintingIndustry誌の記事でこう述べている: “高レベルでは、問題は三角形メッシュをシンプルなツリーにリバースエンジニアリングすることだ。オブジェクトをカスタマイズしたければ、それを構成する元の複数の形の、それらの寸法やお互いの組み合わさり方にアクセスできるのが理想的だ。しかしすべてを一つの三角形メッシュへと組み合わせてしまえば、そこにあるのは三角形のリストだけで、個々の形の情報は失われている。でも、それらのメタデータを回復すれば、ほかの人たちがそのデザインを容易に変えることもできる”。

その処理は、オブジェクトをシンプルな剛体の集まりに切り分けて、それらを合わせれば複雑なオブジェクトが作れるようにする。現在の3Dスキャンは不完全だから、オブジェクト全体のメッシュモデルはオブジェクトの不完全な表現にしかならない。しかしこのように、より単純な形状のメッシュ的集まりとしてオブジェクトを表現できれば、より正確なスキャンに近くなる。オブジェクトの形を変える処理も、やりやすい。全体一括スキャンではなく、小部分分解スキャンとその再合成をするのだ。

“われわれのアルゴリズムは堅牢だから、言葉では言い表せないような奇妙な形のオブジェクトやその変更〜カスタマイズでも正確に表現できる。その例を、実際に示した。また、われわれの方法は変項(パラメータ)の集まりで表現されるCSGプログラム(parameterized CSG programs)を返すから、それによりエンドユーザーが3Dメッシュの構造を理解したり編集したりできるようになる”、とDuは語る。

このシステムは、オブジェクトを構成している要素的な形状を見つけて、それらの形を変える。これによって、ほとんどどんなオブジェクトでも、以前(全体一括スキャン)に比べてずっと高い精度で再現およびカスタマイズできるようになる。それはハードウェアをハッキングしてその形や大きさや安定性を理解するための、とってもクールな方法だ。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa