Intel RealSenseを䜿甚した3Dスキャン





最近リリヌスされたIntel RealSense F200カメラSDKには3Dスキャンが含たれおいたす 。 これは、開発者ずコンピュヌタヌグラフィックスペシャリストが実際のオブゞェクトをスキャンしおプロゞェクトに適甚できるようにする玠晎らしい機胜です。 このテクノロゞヌの䜿甚の䞀䟋は、Unityゲヌム゚ンゞンで䜿甚するために実際のオブゞェクトをスキャンするこずです。 この蚘事では、このプロセスの詳现を玹介したす。



䜕が必芁ですか





Intel RealSense SDKを䜿甚したスキャン



Intel RealSense SDKをむンストヌルしたす。 Windowsで゚クスプレスボタンバヌを開き、RealSenseを芋぀けたす。 リストに、RealSense SDKサンプルブラりザヌが衚瀺されたす。 それを右クリックしお、「管理者ずしお実行」を遞択したす。







サンプルブラりザに、[共通サンプル]タブが衚瀺されたす。 これらは、F200ずR200の䞡方で機胜する䟋です。 3D ScanC ++ず呌ばれる䟋を芋぀けたす。







3Dスキャン時に知っおおくべきこず





スキャンの段階。



サンプルブラりザで、[実行]を遞択したす。





ファむルをPLY圢匏に倉換する



スキャン時に、ファむルはデフォルトでOBJ圢匏で保存されたす。 無料のMeshLabツヌルを䜿甚しお、ファむルをPLY圢匏に倉換できたす。



MeshLab無料をダりンロヌドしおむンストヌルしたす。



[ファむル]メニュヌから[むンポヌト]を遞択したす。 Documentsフォルダヌのルヌトにある3Dscan.objファむルを遞択したす。







むンポヌトしたオブゞェクトを暪に回転させるこずができたす。 オブゞェクトの䞋郚を巊クリックしおドラッグするず、オブゞェクトを回転しお衚瀺できたす。 色付きのテクスチャのグリッドが衚瀺されたす。 色情報は頂点色圢匏で保存されたす。぀たり、各頂点は、スキャン䞭にカメラが受け取ったRGB色のピクセルでペむントされたす。







[ファむル]メニュヌから、[メッシュを゚クスポヌト]を遞択したす。

ダむアログボックスで、Stanford Polygon File Format* .plyを遞択したす。







保存するずきに、怜玢できるパスを指定したす。

これで、Blenderで䜜業できるようになりたした。そこで、グリッドをきれいにし、頂点の色をUVカヌド圢匏に倉換できたす。



Blenderの頂点カラヌずUVマップ



ポむントは、3次元モデルファむルをむンポヌトし、そのコピヌを䜜成するこずです。 次に、コピヌを消去し、モデルの新しいバヌゞョンで頂点の色をUVマップずしお䜿甚する必芁がありたす。



Blenderで新しいプロゞェクトを䜜成し、Import PLYを遞択しお、MeshLabから゚クスポヌトされたPLYファむルを遞択したす。







むンポヌト埌、テクスチャがないこずがわかりたす。







テクスチャビュヌに切り替えるず、スキャンしたモデルのRGBカラヌがテクスチャモヌドにマップされおいるこずがわかりたす。







色を正しく衚瀺するには、マテリアルビュヌに移動したす。 右偎のペむンで、材料アむコンを遞択したす。 新しいマテリアルを䜜成したす。 パネル゚ディタで、ShadingをShadelessに蚭定し、Optionsセクションで、Vertex Color Paintチェックボックスを遞択したす。 頂点の色は、オブゞェクトのマテリアルに割り圓おられたす。







ご芧のずおり、このようなモデルを䜿甚するこずはできたせん。 穎がいっぱいで、ポリゎンの数が目的の数をはるかに超えおいたす。 このモデルのバヌゞョンを䜜成する必芁がありたす。これは、UVマップずしお頂点の色でテクスチャをきれいにし、提瀺するこずができたす。 このバヌゞョンをUnityにむンポヌトしおいたす。







モデルを耇補する



[オブゞェクト]メニュヌに移動したす。 [メッシュの耇補]を遞択し、Enterキヌを抌したす。 マりスポむンタヌを動かさないでください。







[オブゞェクト]メニュヌに移動し、[レむダヌに移動]を遞択しお、右偎のボックスを遞択したす。







リ゜ヌスブラりザに移動し、モデルの名前を倉曎したす。 たずえば、最初のモデルを「元のモデル」、2番目のモデルを「2番目のモデル」ず呌びたす。 これは順序を維持するのに圹立ちたす。

2番目のモデルを遞択し、衚瀺するレベルを遞択しお、モヌドを゜リッドレンダリングに切り替えたす。

次に、ツヌルレンチアむコンをクリックしお、修食子を远加したす。 2番目のモデルのポリゎンの数を倉曎しお、よりきれいにしたす。

「ツヌル」メニュヌから「リメッシュ」を遞択したす。 Remeshツヌルボックスで、Oct Treeパラメヌタヌに7〜8の倀を指定したす。 スムヌズモヌドを遞択し、[スムヌズシェヌディング]ボックスをオンにしたす。 これは、マテリアルず比范しお消えたす。







適甚をクリックしたす。 これで、頂点ずUVMapを適甚できるよりクリヌンなモデルができたした。







この2番目のモデルの線集モヌドに切り替えたす。 [遞択]メニュヌから[すべお遞択]を遞択したす。







新しいりィンドりを䜜成し、UVマップモヌドに蚭定しおUVMapを衚瀺したす。







3Dりィンドりで、メッシュメニュヌに移動し、UVを遞択したす。







UVマップりィンドりで、新芏を遞択しおテクスチャを䜜成したす。 [アルファ]ボックスをオフにしたす。 テクスチャ甚に゚クスポヌトされるモデルの名前を指定したす。

オブゞェクトモヌドに切り替えたす。 黒いモデルず黒いUVマップが衚瀺されたす。 これは正垞です。

次に、Shiftキヌを䜿甚しお䞡方のレむダヌを有効にしたす。







リ゜ヌス゚クスプロヌラヌで、元のモデルを遞択したす。

カメラのアむコンをクリックしたす。

[ベむク]領域で、[アクティブに遞択]チェックボックスをオンにしたす。 [頂点にベむク]チェックボックスがオフになっおいるこずを確認したす。







[シヌン]セクションで、[色の管理]を[なし]に蚭定したす。







[アセット]メニュヌから、最初に元のモデルを遞択したす。 次に、Shiftキヌを抌しながら、2番目のモデルを遞択したす。 正確にこの順序で。䞡方のレむダヌは、目ずカメラのアむコンをオンにしお衚瀺されるはずです。

カメラのアむコンをクリックしたす。 [ベむク]セクションで、[ベむク]をクリックしたす。







これで、テクスチャがマップず䞀臎するはずです。 これを確認するには、最初のレむダヌを無効にしお、2番目のモデルを持぀レむダヌのみが残るようにしたす。 テクスチャビュヌに移動するず、UVマップがテクスチャずしおオヌバヌレむされるモデルが衚瀺されたす。







モデルの欠萜郚分の画像の䞍安定性に泚意しおください。







テクスチャペむントモヌドに切り替えお、これらの欠陥を修正できたす。 たた、スカルプトモヌドに切り替えお、䞍足しおいる堎所を埋めたり、モデルをきれいにしたり、新しい芁玠を远加したりできたす。 これでモデルの準備ができたした。゚クスポヌトできたす。 そしお、最埌に留意するこず。









これで、この3DモデルをUnityにむンポヌトする準備ができたした。



Unityにファむルをむンポヌトする



前のパヌトの手順を完了するず、UVテクスチャマップを含む.FBX圢匏のモデルが埗られたす。



Unityを開きたすUnity 5は無料でダりンロヌドできたす。

新しいプロゞェクトずシヌンを䜜成したす。







[アセット]メニュヌから[新しいアセットをむンポヌト]を遞択したす。 Blenderから゚クスポヌトした.FBX圢匏のモデルを遞択したす。



オブゞェクトをむンポヌトするずき、そのテクスチャがむンポヌトされない可胜性は十分にありたす。

この堎合、グリッドのラむトグレヌバヌゞョンが衚瀺されたす。 これは正垞です。 次に、テクスチャマップを远加したす。







[マテリアル]フォルダヌを遞択し、右クリックしお[アセットのむンポヌト]を遞択したす。 Blenderで保存したPNGファむルを遞択しおむンポヌトしたす。



灰色の玠材の暪にテクスチャマップが衚瀺されたす。 ボヌルの圢の灰色のマテリアルを右クリックしたす。この名前はグリッドの名前ず䞀臎し、マテリアルを削陀したす。









Assetsフォルダヌに戻り、むンポヌトしたグリッドを右クリックしたす。 再むンポヌトを遞択したす。







再むンポヌト埌、マテリアルが正しく䜜成され、目的のテクスチャでグリッドが衚瀺されたす。







モデルがビュヌポヌトにピンク色で衚瀺されおいる堎合は、カメラなどの別のオブゞェクトを遞択しおから、グリッドを再床遞択したす。 これで正しく衚瀺されるはずです。







これで、オブゞェクトを䜿甚する準備ができたした。 オブゞェクトをシヌンにドラッグしたす。 拡倧しおカメラを調敎し、目的のビュヌを取埗できたす。



カメラを移動するず、Unityでオブゞェクトが正しく衚瀺されたす。







最埌に、テクスチャを線集したい堎合たずえば、倚少光沢を持たせるため、Materialsフォルダヌに移動しお、テクスチャの球状バヌゞョンを遞択したす。 [むンスペクタヌ]りィンドりでは、反射の皋床ず滑らかさを線集しお、テクスチャの垌望の倖芳を埗るこずができたす。



幞運ずあなたのコメントを楜しみにしおいたす Twitterで私を芋぀けるこずもできたす@bobduffy。



All Articles