RealityCaptureクイックスタートで始めるフォトグラメトリ

# はじめに
この記事は、これからRealityCaptureを始める方向けにRealityCapture Helpに記載されているQuickStartを日本語にしたものです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/151589/917df7a8-e1ea-4435-d41a-68393cef1e5e.png)
QuickStart以外にRealityCapture Helpには多くの知見やテクニックが記載されています。

capturingreality：https://www.capturingreality.com/

# クイックスタート

一連の入力画像から段階的に3Dモデルを作成しましょう。

各ページの上部にある[GO BACK]をクリックして前の手順に戻ることも、各ページの下部にある[Start]ボタンを選択してチュートリアルを閉じることもできます。

![image](https://user-images.githubusercontent.com/27714188/61684395-55cf0700-ad54-11e9-9289-1980ad57a230.png)

![image](https://user-images.githubusercontent.com/27714188/61684446-78f9b680-ad54-11e9-9485-0c6430e175cc.png)

## ステップ1  - 画像を追加する

画像やレーザースキャンを追加するには、いくつかの方法があります。

 - アプリケーションリボンの[WORKFLOW]タブを選択します。次に、[Inputs]ボタンをクリックして1つ以上の画像を追加します。
 Ctrl + Enterショートカットで同じことをします。
 - 同じタブの[Folder]ボタンをクリックして、フォルダ内のすべての画像を追加します。
 Ctrl + Shift + Enterショートカットでも同じことができます。

![image](https://user-images.githubusercontent.com/27714188/61684107-28358e00-ad53-11e9-8cb7-8fe338076c0b.png)
 
 

 - Windowsのエクスプローラから画像をドラッグしてRealityCaptureにドロップすると簡単です。ドラッグしたものが受け入れる場合は、マウスポインタの横にプラスのマークが表示されます。

![image](https://user-images.githubusercontent.com/27714188/61684137-4d2a0100-ad53-11e9-9994-33a86eda103c.png)

続行するには、プロジェクトに1つ以上の画像を追加してください。
あなたは私たちのウェブページから画像のテストセットをダウンロードして解凍することができます - [クリックしてダウンロード](http://rcdata.capturingreality.com/testset1.zip)


初回は[Continue]ボタンがグレーダウン状態となっていますが、テストセットをドラッグアンドドロップすると、ボタンを押して次に進むことができます。

![image](https://user-images.githubusercontent.com/27714188/61684734-5b791c80-ad55-11e9-8934-645c422a5836.png)
![image](https://user-images.githubusercontent.com/27714188/61684762-6fbd1980-ad55-11e9-86ce-064a1ab49369.png)
![image](https://user-images.githubusercontent.com/27714188/61684701-400e1180-ad55-11e9-8835-93ec7da088da.png)


---

## My Images

では、私が追加した画像とレーザースキャンはどこにあるのでしょうか。
まず複数のビューを同時に開くことが望ましいです。 RealityCaptureはこれらのビューをレイアウトに配置します。

レイアウトを変更する前に覚えておいてください。F1キーを押すことでいつでもこのヘルプに戻ることができます。

現在のプロジェクトに追加された画像、画像の1つ、およびこのヘルプを表示するようにレイアウトを切り替えましょう。 あなたが好きな他のマルチビューレイアウトも選択することができます。

![image](https://user-images.githubusercontent.com/27714188/61691713-1cec5d80-ad67-11e9-888c-e0f050494548.png)

- WORKFLOWタブを選択します。
- アプリケーションパネルの右側にあるLayoutボタンをクリックします。
- そして最後に、開いたポップアップメニューで1 + 1 + 1 Layoutを選択します。

**続行する前にレイアウトを変更してください。**


### 次回 inputの追加に対するカメラポーズの計算 >>

---

## ステップ2  - 画像の位置合わせ

画像の位置合わせまたは画像の登録は、RealityCaptureがすべての入力画像に対して、カメラの位置、方向、およびカメラのズーミングなどの内部カメラの状態を計算するプロセスです。 画像を登録すると、入力画像を撮影していたときにカメラと一緒に移動した方法を認識することができます。

![image](https://user-images.githubusercontent.com/27714188/61701434-2088e000-ad79-11e9-93a7-73e3ee67b917.png)

画像をRealityCaptureに合わせるのは簡単です。
- [WORKFLOW]タブにある[Align Images]ボタンをクリックするだけです。
- F6キーを押しても画像の整列を開始できます。

画像の数にもよりますが、数秒から数分かかります。 20メガピクセルのカメラで撮った100枚の画像を合わせるのに2分ほどかかります。

続行するには、最初に画像を整列させます。



### 次回 カメラのポーズを分析してメッシュを作成する >>

---

## 画像とカメラ

すべての画像が正しく配置されました。これは、RealityCaptureがすべての入力画像についてカメラの向きとキャリブレーションを計算できたことを意味します。

## シーンコンポーネント

シーンには1つ以上のコンポーネントが含まれることがあります。各シーンコンポーネントには、まばらな3Dモデルとカメラポーズが含まれています。

- 右上隅のビューアスペクトボタンを使用して、ビューの1つを3D（シーンビュー3D）に切り替えます。必要に応じてアプリケーションのレイアウトを変更してください。
- 3Dシーンビューを選択します (ビューが選択されると、青色のフォーカスで囲まれます)。次に、アプリケーションリボンの[SCENE]コンテキストタブを選択します。左側のシーンパネルにある[Source]コンボボックスを使用して、さまざまなコンポーネントを切り替えることができます。


整列シーンは、3Dシーンビューでは次のようになります。

![image](https://user-images.githubusercontent.com/27714188/61702698-3b5c5400-ad7b-11e9-91fb-c64485c38569.png)

- マウスの左ボタンをクリックしたままマウスを動かすと、ビューがシーングリッドに沿って移動します。
- マウスの右ボタンをクリックしたままマウスを動かして、シーンピボットまたはシーン原点を中心にビューを回転させます。
- マウスの左ボタンをダブルクリックしてシーンピボットをカーソル位置に設定します。
- 左右のマウスボタンをクリックしたままマウスを動かしてビューをパンします。
- マウスホイールを使って前後に動かします。

## 次に進む前に

- Ctrl + Sを押してプロジェクトを保存します。
- アプリケーションウィンドウの左上隅にあるロゴボタンをクリックすると、最近のプロジェクトとファイルのオプションにアクセスできます。


### 次回 必要に応じてGround Plane(グランドプレーン)を定義 >>

---

## グランドプレーン

RealityCaptureは自動的に地面を検出します。 コンポーネントが歪んでいるように見える場合は、シーンの位置と方向を手動で調整できます。

アプリケーションリボンの[RECONSTRUCTION(再構成)]タブを選択します。
グラウンドプレーンを定義ボタンをクリックします。 グラウンドプレーンツールが3Dビューに表示されます。

![image](https://user-images.githubusercontent.com/27714188/61703632-f6d1b800-ad7c-11e9-94d3-97e056472d91.png)

グラウンドプレーンウィジェットを使用してシーンを移動または回転させます。

![image](https://user-images.githubusercontent.com/27714188/61703666-094bf180-ad7d-11e9-822f-aa849e70d2a8.png)

### 次回 必要に応じて再構成領域を設定する >>

---

## 再構成領域

シーンの特定の部分だけを再構成したい場合は、再構成領域を配置または変更することができます。シーン全体を再構築したい場合は、この手順を飛ばしてください。実用的な観点からは、再構成を妥当な範囲に制限することが合理的です。シーンの重要でない部分はまったく考慮されないので、これを行うことによって、モデル計算をスピードアップします。

- アプリケーションリボンの[RECONSTRUCTION(再構成)]タブを選択します。
- [Set Reconstruction Region(再構成領域の設定)]ボタンをクリックします。これで、3Dビューで3回のクリックで再構成領域を定義できます。
- [Set Reconstruction Region(再構成領域の設定)]サブメニューを開いた場合は、[Set Region Automatically(領域を自動で設定)]ボタンをクリックして自動的に再構成領域を検出することができます。その後、ボックスウィジェットを使用してボックスサイズを調整できます。下記参照。

![image](https://user-images.githubusercontent.com/27714188/61704382-89268b80-ad7e-11e9-8eeb-841d677e9f7f.png)


手動で再構成領域を作成することを選択した場合は、3Dビュー上にマウスを移動します。
- 1.マウスの左ボタンをクリックして、領域の下側の左上隅を定義します。
- 2.マウスを動かして再構成ボックスの底辺を定義します。
- 3.マウスの左ボタンをクリックして、領域の下側を確定します。
- 4.マウスを動かして領域の高さを調整します。
- 5.マウスの左ボタンをクリックして地域を確定します。

ボックスを定義し、ボックスウィジェットを使用して、領域のサイズを移動、回転、および/または調整します。

![image](https://user-images.githubusercontent.com/27714188/61704412-9ba0c500-ad7e-11e9-91a4-a872db51b792.png)

### 次回 モデルを計算する >>

---

## モデルを計算する

カメラのポーズが分かったら、RealityCaptureは好みの品質で完全な密集した3Dメッシュを計算できます。 より高い品質のモードはより多くの計算努力を必要とするため、より多くの時間がかかります。出力される結果は非常に密な三角メッシュです。

- アプリケーションリボンの[WORKFLOW]タブを選択します。
- モデル計算サブメニューボタンをクリックします。
- 好みの品質を選択してをクリックします。

![image](https://user-images.githubusercontent.com/27714188/61704685-3d281680-ad7f-11e9-8f1f-2728ce946f34.png)

あるいは、[RECONSTRUCTION(再構成)]タブを選択して、[Normal Detail]（F7）、[Preview]（Ctrl + F7）または[ High Detail]をクリックします。


続行するには、まずモデルを計算します。

### 次回 モデルを選択 >>

---

## あなたの再構築

写真、レーザースキャン、その他の入力データから3Dモデルの計算に成功しました。 3Dビューで見ることができます。今すぐこのビューを選択してください。

3Dビュー内を移動するには

- ビュー内を移動するには、目的の方向に移動しながらマウスの左ボタンをクリックしたままにします。
- ビューを回転するには、マウスの右ボタンをクリックしたまま目的の方向に動かします。
- ズームインおよびズームアウトするには、マウスホイールを使用します。
- ダブルクリックしてピボット位置を定義または変更します。

## モデル統計

これまでに学んだように、モデルのプロパティを表示するには、まずモデルを選択する必要があります。
左側面図を1Dに切り替えます。ツリービューとして編成された1D構造のプロジェクトが表示されます。あなたはそこで、input画像を見つけることができます、scene constraints(シーンコンストレイント)とscene components(シーンコンポーネント)を見てください。


**コンポーネントは、システムが単一の堅実な実世界の構造として認識している写真の論理的な単位です。**

![image](https://user-images.githubusercontent.com/27714188/61706390-f5a38980-ad82-11e9-912b-5dd211094a14.png)

[+]をクリックして最も大きなコンポーネントノードを展開します。ツリービューの右側を見ると、最も大きなコンポーネントを簡単に認識できます。そこには、含まれている画像とモデルの数がわかります。モデルをクリックしてください。
シーンツリービューの下に、さまざまなモデル情報を含むパネルが表示されます。モデルの計算に使用された設定、およびモデルの計算にかかるテクスチャと時間に関する情報があります。ここでもモデルに名前を付けることができます。

![image](https://user-images.githubusercontent.com/27714188/61706417-03590f00-ad83-11e9-9bff-5e041e8c1768.png)


## コンポーネント統計

同様に、1DsシーンビューでComponentルートをクリックして、配置設定と配置レポートを含むパネルを開きます。シーンを整理しやすいように、ここでコンポーネントの名前を変更することもできます。

### 次回 モデルを色付けする >>

---

## モデルを色付けする

前のステップでは、色のないモデルを手に入れました。シーンはメッシュの亀裂と問題を強調する方法で照らされます。カラー/テクスチャモデルを作成するには、アプリケーションリボンの[WORKFLOW]タブまたは[Reconstruction(再構成)]タブを選択し、[Colorize(カラー化)]（F8）または[Texture(テクスチャ)]（F9）ボタンをクリックします。

![image](https://user-images.githubusercontent.com/27714188/61706937-52ec0a80-ad84-11e9-97d0-e4aeefe75ddc.png)

## カラーモデル

このオプションは、各シーンの頂点カラーを計算します。このオプションは、テクスチャを追加してもモデルの視覚的品質が向上しない、非常に密度の高いモデルに推奨されます。この方法は計算量が少なくてすみます。

## テクスチャモデル

モデルの三角形が大きすぎる場合は、テクスチャリングが最適な方法です。モデル内のすべての三角形を埋める小さな画像を計算します。あなたはあなた自身のUVマップを使用するのと同様に、テクスチャを作成するためのテクスチャ品質と方法を選択することができます。詳細については、カラーリングとテクスチャリングを参照してください。


比較画像からモデルによる違いを確認してみてください。

![image](https://user-images.githubusercontent.com/27714188/61706962-626b5380-ad84-11e9-9b92-6503b9e831a9.png)

 
### 次回 モデルをエクスポートする >>

---

## モデルをエクスポートする

選択したモデルをエクスポートする方法はいくつかあります。 レンダーを作成したり、フライスルービデオを計算したり、三角メッシュをPolygon File Format（ply）やWavefront Format（obj）にエクスポートしたり、高密度のポイントクラウドをXYZフォーマットでエクスポートしたりできます。



**アプリケーションは常に、モデルに含まれるすべてのデータをエクスポートします。 無制限のモデルサイズのレンダリングおよび/またはフライスルービデオを計算することができます。**

- アプリケーションリボンの[WORKFLOW]タブを選択します。
- 好みのエクスポートタイプを選択してください。

これでチュートリアルは終了です。

---
※権利上問題がある場合は削除いたします。