今回は、RealityCaptureのHelp画面から展開できる「Quick Start」のチュートリアルに沿って、画像からモデルへの変換方法を紹介します。

本記事では、Capturing Reality社の公式サイトからダウンロード可能なサンプルデータを使用し、モデルの作成を行います。今回は、Capturing Realityのサイトからサンプルデータをダウンロードする方法ではなく、RealityCaptureのアプリケーションからサンプルデータを読み込み、使用する方法をご紹介します

 

■画像の読み込みとビューの設定方法

最初に、RealityCaptureを起動すると、デフォルトではHelpの画面が表示されます。ここでは、RealityCaptureの機能の確認やチュートリアル動画を参照することができます。

今回は、Help画面から「Quick Start」を選択して、画像ファイルを基に3Dモデルを生成する方法を紹介します。

Help画面の左上にある「Quick Start」を選択します。

すると、画面が切り替わり、画像を読み込む方法を確認することができます。

また、こちらでは、外部からファイルを読み込む手順も記載されていますが、今回は、Capturing Realityで提供されているファイルを読み込みます。

デフォルトでは、以下のサンプルデータが提供されています。

  • 枚数の少ない画像のサンプルデータセット
  • レーザースキャナーと写真
  • ドローンから撮影された航空写真
  • 全身をスキャンした人物写真

今回は、データの容量が一番軽い左側の「枚数の少ない画像のサンプルデータ」を使用します。

左側のゲームのコントローラーのアイコンをクリックします。

アイコンを選択すると、クラウド上からサンプルデータの読み込みが開始されます。

読み込み完了後、「Continue」を選択します。

「Continue」を選択すると、次に、画面のレイアウトを変更することができます。

レイアウトを変更することで、先ほど読み込んだデータを確認することができます。レイアウトの変更は、「WORKFLOW」ビュー内にある「Application」の中の「Layout」から行うことができます。

アイコンを選択すると、プルダウンが表示され、変更したいレイアウトを選択することで画面のレイアウトを切り替えることができます。

今回は「1+1+1 Layout」を選択します。

すると、選択したレイアウトに切り替わります。

こちらの画面は、左側のビューが読み込んだ画像を表示するビューとなります。このビューでは、読み込んだ画像の枚数や各画像の情報を確認することができます。

中央のビューでは、左側のビューで選択している画像をプレビュー表示します。

そして、右側にはHelp画面の続きが表示されます。

各ビューの右上にあるアイコンを長押しすることで、プルダウンが表示されます。

プルダウンから各ビューを「1D」(画像の情報を表示)、「2D」、「3D」等の表示に切り替えることが可能です。

今回は、この中から例として「1D」を選択します。

すると、画面が1Dに切り替わり、左側のビューで選択されている画像情報の詳細が表示されます。

このように、必要に応じてビューを切り替えることができます。

今回は、紹介の為にビューを切り替えたので、同じ手順でもとの「2D」に戻します。

レイアウトの変更方法については以上です。

 

■Point Cloudの作成方法

次に、実際にこの画像を使用してPoint Cloudのデータとモデルを作成していきます。

右側に表示されているHelp画面を下にスクロールし、「Continue」を選択し、チュートリアルを進めます。

すると、画像データをPoint Cloudに変換する方法を確認することができます。

Point Cloudへの変換はとても簡単に行うことができます。キーボード「F6」をクリックするか、下画像のオレンジ枠「WORKFLOW」内の「2. Process」にある「Align Images」を選択することで変換できます。

今回は「Align Images」をクリックします。すると、Point Cloudへの変換が開始され、中心にあるビューが「2D」から「3D」に切り替わり、変換されたPoint Cloudのデータが表示されます。

このように、読み込んだ画像データからPoint Cloudを簡単に作成することができます。

Point Cloudの生成後、再度、Help内の「Continue」を選択してチュートリアルを進めます。

 

■カメラの操作

次に、読み込んだ画像とカメラ操作について紹介します。

下画像の3Dビュー上にある青色と緑の四角は、左側の読み込んだ画像一覧で選択されている画像を示しています。さらに、その周りにある白い点は読み込んだ各画像を示しています。

ここから、どの画像をどの角度から使用してPoint Cloudを作成したかを確認することができます。

Help画面を確認することで、カメラの操作方法を参照することができます。

■補足:カメラの操作方法について

  • 左クリック(ホールド)で画面の移動
  • 右クリック(ホールド)で画面の回転
  • 中ボタンスクロールで画面のズーム

カメラの操作方法については以上です。
再度、「Continue」を選択して、チュートリアルを進めます。

 

■Ground Planeの設定

次に、Ground Planeの設定について紹介します。

RealityCaptureでは、自動でGround Planeを検出することができ、Ground Planeを設定して、そこを起点にPoint Cloudのデータの移動、回転等の編集を行うことができます。

「RECONSTRUCTION」内の「Model Alignment」にある「Set Ground Plane」を選択することによってGround Planeを作成できます。

選択すると、表示されているPoint Cloudの形状にあったGournd Planeが作成され、新しくハンドルが表示されます。

このハンドルを操作することによって、モデルの回転や移動を行うことが可能となります。

Ground Planeの作成については以上です。
再度、Helpのビューより、「Continue」を選択してチュートリアルを進めます。

 

■Point Cloudの再構築

次に、Point Cloudの再構築について紹介します。

RealityCaptureは、指定した範囲のPoint Cloudの再構築を行うことができます。Point Cloudの再構築は、必要に応じて実行するため手順をスキップすることもできます。

■ご注意
シーンサイズが大きい場合(例えば、Point Cloudを作成した時)は、全てのPoint Cloudを再構築すると、時間を要することがあります。そのため、必要な範囲のPoint Cloudを選択して、再構築することで、シーンの再構築に要する時間を大幅に削減することができます。

再構築するPoint Cloudの範囲を指定する場合は「RECONSTRUCTION」内にある「Model Alignment」の「Set Reconstruction Region」を選択します。

その後に、表示されるバウンディングボックスのサイズを変更します。範囲指定が完了した後、マウス左クリックで範囲の確定を行います。

範囲が確定したら、先ほどと同様に、キーボード「F6」をクリックするか、「WORKFLOW」内の「2. Process」にある「Align Images」を選択することでPoint Cloudの再構築を行えます。

また、ここで範囲を指定することによって、Point Cloudをポリゴンモデルに変換する際に、指定範囲だけをポリゴンモデルに変換することもできます。

※Point Cloudをポリゴンモデルに変換する方法は、下記に記載しています。

次に、Point Cloudをモデルに変換する方法を紹介します。Help画面から「Continue」を選択し、チュートリアルを進めます。

 

■ポリゴンモデルへの変換・編集

Point Cloudをポリゴンモデルに変換する方法は、とても簡単に行うことができます。

「WORKFLOW」内にある「2. Process」の「Calculate Model」を選択することで変換できます。

選択すると、下画像のようにPoint Cloudを基にポリゴンメッシュが生成され、モデルに変換されます。

また、ポリゴンモデルに変換する場合は、変換されるモデルの解像度を選択することが可能となります。

「Calculate Model」の右側にある三角マークをクリックすることで、プルダウンが展開されます。

Calculate Modelには、「Preview quality」、「Normal quality」、「High quality」の3つの設定があります。

「Preview quality」<「Normal quality」<「High quality」の順番で解像度を高くすることができます。

このように、必要に応じて出力されるモデルの解像度を指定することができます。

Point Cloudからポリゴンモデルに変換する方法は以上です。

再度、Help画面から「Continue」を選択してチュートリアルを進めます。

次に、作成された不要なポリゴンモデルの削除方法を紹介します。

今回、使用しているサンプルモデルは、正確にPoint Cloudから変換されていますが、場合によっては不要な箇所もPoint Cloudからモデルに変換されることがあります。

その場合、変換した後でも不要な箇所を削除することができます。

まずは、変換されたポリゴンモデルの情報を確認します。

現在、展開されているビューでは、情報が確認できないので左側のビューの表示内容を変更します。

右上のアイコンを長押しして「1Ds」を選択します。

すると、画面が切り替わり、下の画像のオレンジで囲われている部分に3Dビュー上にあるモデルの一覧とその情報が表示されます。

今回、作成されたモデルは、単一のモデルとして「Model 1」という名前で表示されています。しかし、モデルが複数作成された場合、または必要のないモデルが作成された場合は、ここで削除することが可能です。

今回は、例として、下画像のオレンジ枠「Model 1」の削除を行います。

ポリゴンモデルの削除は以下の手順で行います。

  1. 削除したいモデルの名前の部分にマウスカーソルを置きます。
  2. 赤い×ボタンが表示されるので、ボタンをクリックします。

下画像のように、マウスを削除したいモデルの上に移動することによって、×ボタンが表示されます。

×ボタンを選択すると、選択されたモデルを削除することができます。

モデルの削除方法については以上です。

再度、Helpから「Continue」を選択して、チュートリアルを次に進めます。

 

■テクスチャの作成

次に、作成されたモデルに対して、Point Cloudよりテクスチャを作成し、割り当てる方法を紹介します。

テクスチャの作成と割り当ての方法はとても簡単です。「RECONSTRUCTION」内の「Model Color & Texture」の「Colorize」もしくは「Texture」を選択することでテクスチャを作成し、割り当てることができます。

「Colorize」を選択すると、粗いテクスチャが作成され、「Texture」を選択すると、高精細なテクスチャを作成することができます。

下画像は、各設定でテクスチャを適用した結果です。

このように、テクスチャの割り当てはとても簡単に行うことができます。

テクスチャの割り当てについては以上です。

再度、Helpの「Continue」を選択してチュートリアルを進めます。

 

■作成したデータの出力

最後に、作成されたデータのアウトプット方法を紹介します。

RealityCaptureからのアウトプットは、.objをはじめ.fbx, .xyzといったように非常に多くの種類で可能です。

出力可能なファイル形式の詳細はこちらをご参照ください。

RealityCapture公式サイト:RC’s output / export file formats(英語)
https://support.capturingreality.com/hc/en-us/articles/115001529012-RC-s-output-export-file-formats

アウトプットは「WORKFLOW」内の「3. Export」の「Model」を選択します。

選択すると、保存先とファイルの形式を指定する画面が表示されます。

ここで任意の名前と拡張子を指定します。こちらでは、「.obj」を選択し書き出しを行います。

保存先と拡張子を指定した後、新たにウィンドウが展開されます。ここでは、出力時の詳細設定を行うことができ、出力データの形式を確認することができます。

確認後、下側の「OK」ボタンをクリックします。

「OK」ボタンを押すことで、データを書き出すことができます。

以上がRealityCaptureの「Quick Start」に沿ったチュートリアルの解説となります。

 

補足:出力されたデータの読み込み結果

RealityCaptureで出力したデータは、別のソフトウェアでも読み込むことができます。

こちらでは、Houdiniに出力データを読み込んだ結果を紹介します。

Fire SOPを作成し、モデルを指定することでこのようにモデルを読み込むことが可能となります。

Reariy Captureに読み込んだ十数枚の写真からこのように高精細なテクスチャ付きのモデルを作成することが可能となります。