キャプチャ セッションの作成
キャプチャ セッションでは、配置手順と再構築手順の実行に必要となる、1 回の撮影フライトでキャプチャされたすべての関連情報が結合されます。 キャプチャ セッションは、直下視のみのセンサーまたはマルチヘッド センサー システムでキャプチャされた画像と、各画像に対応する測位情報を使用して構築できます。
直下視センサー システムでは、センサーは真下を向き、下方にある地表の画像をキャプチャします。 このように収集された画像は直下視画像と呼ばれます。
次の画像は直下視画像の一例です。
次の画像は、直下視カメラの円錐と画像フットプリントの図を示しています。
マルチヘッド センサー システムでは、センサーは前後左右の角度を付けて複数の方向を向きます。 角度を付けて収集された画像は斜め画像と呼ばれます。 マルチヘッド システムには、直下視画像を収集するセンサーが含まれることもあります。
次の画像は斜め画像の一例です。
次の画像はマルチヘッド センサーの図で、カメラの円錐と画像フットプリントを示しています。
測位情報は、ナビゲーション情報または外部の航空三角測量処理で得られた高精度な位置に基づいている場合があります。
キャプチャ セッションに追加されるデータは、次のもので構成されます。
- マルチヘッド センサー システム (IGI UrbanMapper) でキャプチャされた 873 枚の画像
- 画像ごとの測位情報を含む ASCII ファイル (GNSS_IMU_whole_Area.csv)
- 必要なセンサー仕様を含むファイル (Camera_template_Frankfurt_UM1.json)
- 対象領域と水域のジオメトリを含むファイル ジオデータベース (AOI_and_Waterbody.gdb)
データのダウンロード
このチュートリアルのデータは約 26 GB のディスク領域を使用します。
- Frankfurt_City_Collection.zip ファイルをダウンロードします。
注意:
接続速度によっては、このファイル (26 GB) のダウンロードに時間がかかる場合があります。
- .zip ファイルをローカル コンピューター上のフォルダー (例: D:\Datasets\Frankfurt_City_Collection) に展開します。
キャプチャ セッションの開始
次に、キャプチャ セッションを作成します。
- ArcGIS Reality Studio を起動します。
- [ようこそ] 画面で、[新しいキャプチャ セッション] をクリックします。
- [キャプチャ セッション] ウィンドウで、[キャプチャ セッション名] に「Frankfurt_Flight_RS」と入力します。
- [標定ファイル形式] で、[ASCII テキスト ファイル (.txt、.csv など)] をクリックします。
データがサポートされている標定データ形式規則に従っている必要がある旨の通知が表示されます。
- [標定ファイル パス] で、展開した [Frankfurt_City_Collection] フォルダーを参照します。 [GNSS_IMU_whole_Area.csv] を選択し、[OK] をクリックします。
- [空間参照] で、参照ボタンをクリックします。
- [空間参照] ウィンドウの [現在の XY] で、検索ボックスに「25832」と入力し、Enter キーを押します。
この Well-Known ID (WKID) コードを検索すると、[ETRS 1989 UTM Zone 32N] 座標系が返されます。 この座標系は、位置ファイルで使用される XY 座標系です。
- 結果のリストで、[ETRS 1989 UTM Zone 32N] をクリックします。
これで、XY 座標系を設定しました。 次に、Z 座標系を設定します。
- [現在の Z] をクリックします。
- [現在の Z] で、検索ボックスに「7837」と入力し、Enter キーを押します。
- 結果のリストで [DHHN2016 height] をクリックします。
これで、Z 座標系を設定しました。
- [空間参照] ウィンドウで、[OK] をクリックします。
- [データ解析] セクションの [行から解析] に「22」と入力し、Enter キーを押します。
インポートした [GNSS_IMU_whole_Area.csv] 標定ファイルは、カンマ区切りのテキスト ファイルです。 このファイルには 21 行のヘッダー セクションが含まれ、ArcGIS Reality Studio が画像の処理に使用するデータは 22 行目から始まります。 このボックスに 22 と入力すると、ヘッダー行がスキップされます。
注意:
ヘッダーをスキップするもう 1 つの方法は、コメント行を開始する文字を指定することです。 このファイルでは、# 記号がコメント文字であるため、[行を無視するために使用されるシンボル] ボックスに「#」と入力しても、ヘッダーをスキップできます。
ArcGIS Reality Studio でファイルを正しく読み取れるようになると、検出した標定の数が緑色のハイライト ボックスに表示されます。 今回は、7,775 個の方向が検出されました。 これらの方向はフライト中に収集されました。 チュートリアルで使用した 873 枚の画像よりも大きい理由は、チュートリアル画像がより大きなコレクションのサブセットであるためです。
- [次へ] をクリックします。
標定ファイルのパラメーターを定義します。
複数の画像標定システムがあり、それらは収集したパラメーター データに異なる方法でラベル付けしています。 今回、インポートした GNSS_IMU_whole_Area.csv ファイルには、画像名、X、Y、Z、Omega、Phi、Kappa の値が、[データのラベリング] テーブルに表示されているのと同じ順序で含まれています。 フィールドをファイル内のデータ位置に一致させます。
- [データのラベリング] セクションの [画像名] で、リスト内の最初のアイテムを選択します。
ファイルの場所 1 には、アンダースコア文字で区切られたコード値で構成されたデータが含まれています。
- [X] で、リスト内の 2 つ目のアイテムを選択します。
ファイルの場所 2 には、浮動小数点データで構成されたデータが含まれています。
フィールド名の、データ ファイル内の場所へのマッピングを続けます。
- [Y] で、リスト内の 3 つ目のアイテムを選択します。
- [Z] で、リスト内の 4 つ目のアイテムを選択します。
- [Omega] で、リスト内の 5 つ目のアイテムを選択します。
- [Phi] で、リスト内の 6 つ目のアイテムを選択します。
- [Kappa] で、リスト内の 7 つ目のアイテムを選択します。
[Kappa] 値を設定すると、[カメラ システムの配置] セクションに、ファイルから割り当てられた標定の数が緑色のボックスで表示されます。
- [カメラ名] フィールドをスキップします。
標定データの画像への関連付け
標定データ ファイルには、ArcGIS Reality Studio がシーンの再構築に使用する情報が含まれています。 複数のカメラと標定追跡システムがあります。 位置データとカメラのリレーションシップは、画像の収集に使用されるシステムの規則によって異なる方法で確立されます。 方法は主に次の 2 通りあります。
- ASCII 標定ファイルには、カメラ名の列が含まれている場合があります。
- 画像ファイル名には、カメラを識別する文字列が含まれています。
このチュートリアルでは、画像ファイル名にカメラを識別する文字列が含まれています。
- [カメラ システムの配置] セクションで、オプション ボタンをクリックし、[テンプレートのインポート] を選択します。
- [Frankfurt_City_Collection] フォルダーを参照し、[Camera_template_Frankfurt_UM1.json] を選択して、[OK] をクリックします。
[カメラ システムの配置] セクションが更新され、カメラ名と ID 値のテーブルが含まれます。
次に、画像ファイル名にカメラに対応するコードを入力します。
- [左] の [カメラ ID] 列にコード「_11000」を入力します。
- [前] の [カメラ ID] 列にコード「_11900」を入力します。
- [直下視] の [カメラ ID] 列にコード「_NAD」を入力します。
- [後] の [カメラ ID] 列にコード「_11600」を入力します。
- [右] の [カメラ ID] 列にコード「_11100」を入力します。
[カメラ システムの配置] テーブルは、画像ファイル名に埋め込まれた [カメラ ID] コードとカメラ名を照合します。
[キャプチャ セッションの選択] セクションが、[カメラ システムの配置] テーブルの下に表示されます。
このセクションでは、特定のカメラ セッションを処理するか、すべてのカメラ セッションを処理するかを選択できます。 このチュートリアルでは、すべてのカメラ セッションを処理します。
- [Frankfurt_Flight_RS] のボタンをクリックして、すべて (5 つ) のカメラ セッションを含むキャプチャ セッション一式を選択します。
キャプチャ セッションがオンになりました。
- [次へ] をクリックします。
カメラ セッションの確認
[カメラ セッション] セクションでは、画像のキャプチャに使用したカメラのパラメーターを確認できます。
- [カメラ セッション] セクションで、[Forward_Frankfurt_Flight_RS] をクリックします。
次のセクションには、前向きの画像の収集に使用したカメラに関する情報が含まれています。 この情報は、以前にインポートした Camera_template_Frankfurt_UM1.json ファイルに含まれていました。
- 下にスクロールして、[センサー定義] セクションのデータを確認します。
リストされた各カメラ セッションには、その画像セットのキャプチャに使用したカメラおよびレンズ システムの物理的特性をドキュメント化した、対応するデータ テーブルが含まれています。
注意:
カメラ データが Camera_template_Frankfurt_UM1.json ファイルからインポートされていない場合、画像提供元からデータを手動で入力できます。
- 必要に応じて、他のカメラ セッションをクリックし、パラメーターを確認します。
- [完了] をクリックします。
キャプチャ セッションが構築されます。 この処理には 1 分ほどかかります。 [プロジェクト ツリー] ウィンドウが表示されます。
[処理マネージャー] ウィンドウも表示されます。 ウィンドウには、現在の処理のステータスが表示されます。
グローブ ビューが開き、カメラ キャプチャの位置が表示されます。
キャプチャ セッションの画像ファイルへのリンク
次に、選択したキャプチャ セッションを画像ファイル データの場所に接続します。 各カメラ セッションに対してこのステップを実行します。
- [プロジェクト ツリー] ウィンドウで、[Forward_Frankfurt_Flight_RS] のエントリを展開します。
現在の画像の数は 0 です。
画像データを前向きの画像に接続します。
- [プロジェクト ツリー] ウィンドウで、[Forward_Frankfurt_Flight_RS] セクションを展開し、[画像の追加] をクリックします。
- [Frankfurt_City_Collection] フォルダーを参照し、[jpg] フォルダーを選択して、[OK] をクリックします。
[処理マネージャー] ウィンドウは、画像がコレクション データにリンクされる際の進行状況を表示します。
処理が完了すると、[Forward_Frankfurt_Flight_RS] に 160 枚の画像が表示されます。
ここで、次のカメラ セッションに画像を追加します。
- [プロジェクト ツリー] ウィンドウの [Nadir_Frankfurt_Flight_RS] セクションで、[画像の追加] をクリックします。
- [画像、フォルダー、またはリスト ファイルの選択] ウィンドウで [jpg] フォルダーを選択し、[OK] をクリックします。
カメラ セッションごとにこの処理を繰り返します。
- [プロジェクト ツリー] ウィンドウの [Backward_Frankfurt_Flight_RS] セクションで、[画像の追加] をクリックします。
- [画像、フォルダー、またはリスト ファイルの選択] ウィンドウで [jpg] フォルダーを選択し、[OK] をクリックします。
- [プロジェクト ツリー] ウィンドウの [Right_Frankfurt_Flight_RS] セクションで、[画像の追加] をクリックします。
- [画像、フォルダー、またはリスト ファイルの選択] ウィンドウで [jpg] フォルダーを選択し、[OK] をクリックします。
- [プロジェクト ツリー] ウィンドウの [Left_Frankfurt_Flight_RS] セクションで、[画像の追加] をクリックします。
- [画像、フォルダー、またはリスト ファイルの選択] ウィンドウで [jpg] フォルダーを選択し、[OK] をクリックします。
キャプチャ セッションが画像にリンクされたら、画像のフットプリントを視覚化できます。
- [プロジェクト ツリー] ウィンドウで [ビジュアライゼーション] をクリックします。
- [Forward_Frankfurt_Flight_RS] セクションで、[画像のフットプリント] をオンにします。
画像のフットプリントがグローブ ビューに表示されます。
- [画像のフットプリント] をオフにします。
対象領域の定義と水域の追加
画像を配置する前の最後の 2 ステップとして、プロジェクトの対象領域を定義し、水域の場所を特定します。
- リボンの [ホーム] タブの [インポート] セクションで、[ジオメトリ] をクリックして [対象領域] を選択します。
- [対象領域のジオメトリの選択] ウィンドウの [コンピューター] セクションで、[Frankfurt_City_Collection] フォルダーを参照します。
- [AOI_and_Waterbody.gdb] ジオデータベースをダブルクリックして展開します。 [Frankfurt_AOI] フィーチャクラスをクリックして、[OK] をクリックします。
グローブ ビューに [Frankfurt_AOI] ポリゴン フィーチャクラスが追加されます。
対象領域ジオメトリを指定することで、不要なデータが処理されるのを防ぎ、処理にかかる合計時間とストレージ要件を最小限に抑えます。
- リボンの [ホーム] タブの [インポート] セクションで、[ジオメトリ] をクリックして [水域] をクリックします。
- [水域ジオメトリの選択] ウィンドウの [AOI_and_Waterbody.gdb] で、[Frankfurt_waterbody] をクリックして [OK] をクリックします。
グローブ ビューに [Frankfurt_waterbody] ポリゴン フィーチャクラスが追加されます。
水域ジオメトリを指定すると、水域内のエリアが平坦化および単純化されます。 水の反射により、この処理は複雑で、要件を満たさない出力が生成されることがあります。
キャプチャ セッションが完全に定義されました。 これでプロジェクトを保存できます。
- リボンの [プロジェクトの保存] をクリックします。
- [名前を付けてプロジェクトを保存] ウィンドウで、ディスク領域が十分に確保されている場所を参照し、「2023-Frankfurt_Reality_Studio_Tutorial」と入力して、[保存] をクリックします。
キャプチャ セッションを定義し、座標系とカメラ プロパティを設定して、位置データと標定データをキャプチャ画像にリンクし、プロジェクトを保存しました。 これで、画像を調整してプロダクトの作成を開始する準備ができました。
配置の実行
キャプチャ セッションは、撮影フライト中に記録された GNSS ナビゲーション データから作成されました。 この外部標定情報は通常、トゥルー オルソや高い幾何学的品質の 3D メッシュなどのプロダクトを作成するのに十分な精度ではありません。 ナビゲーション データを最適化するには、配置を実行します。 空中三角測量とも呼ばれる配置では、重なり合う画像間の相同ポイント (タイ ポイント) を決定することで、個々の画像を接続します。 これらの多くの画像計測により、画像ブロックを数学的に調整し、各画像の標定パラメーターを改善することができます。 手動で地上コントロール ポイントを計測して、精度を高めることもできます。
配置の作成
画像を配置するには、プロジェクトに配置を追加する必要があります。
- リボンの [ホーム] タブの [処理] セクションで [新しい配置] をクリックします。
- [配置] ウィンドウの [配置名] に「Frankfurt_AT」と入力します。
- [カメラ セッション] セクションで、[データセット] を選択します。
この配置はすべてのキャプチャ セッションを使用するため、すべてのセッションをオンにする必要があります。
- [コントロール ポイント] セクションで、[コントロール ポイントのインポート] をクリックします。
- [入力ファイルの選択] ウィンドウで、[Frankfurt_City_Collection] フォルダーを参照し、[GroundControlPoints] フォルダーを開きます。 [Ground_Control_Points.txt] を選択して、[OK] をクリックします。
- [コントロール ポイントのインポート] ウィンドウで、[空間参照] 参照ボタンをクリックします。
- [使用可能な XY 座標系] ボックスに「25832」と入力し、Enter キーを押します。
- [ETRS 1989 UTM Zone 32N] をクリックします。
- [現在の Z] ボックスをクリックします。 [使用可能な Z 座標系] ボックスに「7837」と入力し、Enter キーを押します。
- [DHHN2016 height] をクリックして、[OK] をクリックします。
- [区切り文字の選択] で、デフォルトの区切り文字 [カンマ] をそのまま使用します。
- [次へ] をクリックします。
- 列ラベルを確認します。
デフォルト値を使用します。
- [インポート] をクリックします。
コントロール ポイントがグローブ ビューに追加されます。
- [配置] ウィンドウの [コントロール ポイント] セクションで、[データセット] をオンにします。 [データセット] を展開して、新しい [Ground_Control_Points] データを表示します。
[標準偏差] セクションでは、画像の位置 (XYZ 位置と回転角度) およびインポートされた地上コントロール ポイントの所定の正確度 (事前標準偏差) を変更できます。 このチュートリアルでは、デフォルト値を使用します。
[対象領域] パラメーターでは、調整する領域を指定できます。 このチュートリアルでは、データセット全体に対して配置を実行するため、対象領域を設定する必要はありません。
- [作成] をクリックします。
[作成] をクリックすると、リボンに [配置] タブが追加されます。 配置を実行する準備ができました。
配置を実行すると、タイ ポイントの自動照合とバンドル ブロック調整処理が開始されます。 この処理は計算負荷が高く、処理時間はコンピューター ハードウェアによって異なります。
128 GB RAM、AMD Ryzen 24 コア CPU (3.8 GHz)、および NVIDIA GeForce RTX4090 GPU を搭載したコンピューターで、所要時間は約 2 時間です。
- [実行] をクリックします。
[処理マネージャー] ウィンドウに、[配置] 処理のステータスが表示されます。
- [配置] 処理を展開すると、手順が表示されます。
[処理マネージャー] では、[配置] 処理の各段階とそのステータスを追跡できます。
この処理が実行されている間に、休憩を取ったり、他の作業に取り組んだりすることができます。
処理が完了すると、[処理マネージャー] ウィンドウ内に表示されます。
配置が完了すると、[QA] ウィンドウが開きます。 このウィンドウには、バンドル ブロック調整の主な統計情報が表示されます。
地上コントロール ポイントの計測
最初の配置の前後に、地上コントロール ポイントを計測できます。 配置後に計測すると、すでに画像の位置が調整されているため、計測位置がよりわかりやすくなるメリットがあります。
- [QA] ウィンドウの [概要] タブで、下にスクロールして [カウント] を展開します。
[地上コントロール ポイント] 行の [画像の計測] 列は、地上コントロール ポイントの画像計測が行われていないことを示しています。 ここで、画像の計測を追加します。
- 必要に応じて、[QA] ウィンドウを閉じます。
- リボンの [配置] タブの [ツール] セクションで [画像の計測] をクリックします。
計測ウィンドウが表示されます。 左側のウィンドウには、プロジェクト エリアのグローブ ビューと、利用可能な地上コントロール ポイントを含む [コントロール ポイント] テーブルが表示されます。
注意:
[配置] タブが表示されない場合は、[プロジェクト ツリー] ウィンドウで [配置] セクションが現れるまで下にスクロールし、[Frankfurt_AT] をクリックします。
[画像] ウィンドウに画像計測ツールの手順が表示されます。
- 情報を確認します。 終了したら、情報ウィンドウを閉じます。
- [コントロール ポイント] テーブルで、2 行目の行番号 (ポイント [990004]) をクリックします。
2 行目のヘッダーをクリックすると、[画像リスト] セクションが更新され、ポイント [990004] が含まれるすべての画像が示され、最初の画像とともに、投影されたポイントの位置を示すピンクの円が表示されます。
地上コントロール ポイントは、それぞれ異なる位置や角度から取得されているため、所定の画像で見える場合と見えない場合があります。 一部の画像で、樹木、建物、車、歩行者が地上コントロール ポイントを隠している場合があります。 また、まぶしい光または影によって、地上コントロール ポイントが画像の背景に溶け込んでいる場合があります。 計測時に、ポイントが見えない画像はスキップできます。
表示される画像が、チュートリアルで示されている順序とは異なる場合があります。 各画像で、地上コントロール ポイントが見えるかどうかを確認する必要があります。 見えない場合は、F キーを押して画像をスキップできます。 ポイントが見える場合、マウスのスクロール ホイールを使用して拡大し、画像のポイントの中心をクリックして、計算された位置と画像内の位置の差を計測します。
- ポインターを画像の上に移動して、マウスのスクロール ホイールを使用し、画像の投影ポイントの位置を示すピンクの円のポイントを拡大します。
このポイントは交差点であり、画像の撮影時に複数の自動車が交差点内にあります。 この画像では、幸いにも地上コントロール ポイントが、暗い円に囲まれた明るい点として表示されています。
- 画像内の地上コントロール ポイントの中心をクリックします。
クリックした位置が計測されたポイントとしてマークされます。
この画像のテーブルの [ステータス] 列が更新され、緑の [計測されたポイント] シンボルが表示されます。
- F キーを押して、次の画像に移動します。
- 画像内の地上コントロール ポイントの中心をクリックします。
このポイントが追加されると、[候補の検索] ボタンが有効になります。 これは、地上コントロール ポイントの計測を支援するためのツールで、 投影されたポイントを使用し、画像を調査して、現在の画像でマークしたポイントに似た位置を検索します。
- [候補の検索] をクリックします。
ツールがこの地上コントロール ポイントの画像をスキャンします。 これには 1 分ほどかかります。
- テーブルで、最初の候補をクリックします。
画像が、推奨ポイントの位置を示す赤い四角形とともに表示されます。
候補が適切であるため、受け入れます。
- [承諾] をクリックして、候補をそのまま使用します。
計測されたポイントが追加され、次の画像が表示されます。 この画像にも推奨ポイントがあります。
- [承諾] をクリックして、候補をそのまま使用します。
次のポイントには候補がないため、最初の 2 つと同様に画像の地上コントロール ポイントをクリックして手動で追加します。
- 画像内の地上コントロール ポイントの中心をクリックします。
計測されたポイントが追加され、[候補の検索] ツールが再度有効になります。
- [候補の検索] をクリックします。
ツールがこの地上コントロール ポイントの画像をスキャンします。 これには 1 分ほどかかります。
ツールにより、さらに多くの画像の候補が提示されます。 テーブルを使用してこれらの候補内を移動し、[承諾] ボタンをクリックして各候補を手動で受け入れるか、[すべて承諾] ボタンをクリックしてすべての候補を受け入れることができます。
- [すべて承諾] をクリックします。
地上コントロール ポイント 990004 を示す 128 枚の画像中、46 枚に計測値が取得されました。
前方カメラのポイントの収集
テーブルをスクロールして、計測されたポイントの分散を確認できます。 [カメラ] 列は、画像を撮影したカメラを示します。 各カメラで 5 つ前後の計測値を確保する必要があります。 このために、テーブルの列の値を並べ替えます。
- [カメラ] 列のヘッダーをクリックします。
画像のテーブルがカメラ別に並べ替えられます。
- テーブルを下にスクロールして、各カメラが適切に表示されているかどうか確認します。
後方カメラの画像には計測済みポイントが複数あります。 前方カメラには 1 つしかありません。 左カメラにはいくつかありますが、さらに多くのポイントを使用できます。
- [Forward] カメラ画像のいずれかをクリックして、コントロール ポイントの位置を計測します。
- 画像内の地上コントロール ポイントの中心をクリックします。
- [候補の検索] をクリックします。
さらにいくつかの画像に推奨ポイントがあります。
- 推奨ポイントが含まれる各画像をクリックし、推奨ポイントが計測済みポイントに適切な位置かどうか確認し、[承諾] をクリックします。
ポイントを確認して、[すべて承諾] をクリックすることもできます。
左カメラの計測値の収集
次に、左カメラの計測値をいくつか収集します。
- [Left] カメラの画像まで下にスクロールします。
- [Left] カメラの画像のいずれかをクリックして、コントロール ポイントの位置を計測します。
- 画像に地上コントロール ポイントが表示される場合は、クリックして計測されたポイントを追加します。 表示されない場合は、F キーを押して次の画像に移動します。
- [Left] カメラの画像の計測済みポイントを収集したら、[候補の検索] をクリックします。
- 推奨ポイントが含まれる各画像をクリックし、推奨ポイントが計測済みポイントに適切な位置かどうか確認し、[承諾] をクリックします。
ポイントを確認して、[すべて承諾] をクリックすることもできます。
地上コントロール ポイント 990004 を示す 111 枚の画像に計測値が取得されました。 各カメラが適切に表示されています。 これで十分です。
別の地上コントロール ポイントの計測値の収集
前章では、地上コントロール ポイント [990004] の計測値を収集しました。 次のステップは、引き続き、他の地上コントロール ポイントの計測値を収集することです。 各カメラについて、少なくとも 5 つの他の地上コントロール ポイントの代表計測値を収集する必要があります。 1 つ目の地上コントロール ポイントについて学習したのと同じ手法を使用します。
- 地上コントロール ポイントが画像内で見えない場合 (たとえば、車、建物、樹木に隠れている場合)、F キーを押して画像をスキップします。
- 推奨ポイントが適切と思われる場合は、[承諾] をクリックします。
- 推奨ポイントの位置が正しく表示されない場合は、地上コントロール ポイントの位置をクリックします。
- [コントロール ポイント] テーブルで、3 行目の行番号 (ポイント [990007]) をクリックします。
この行のヘッダーをクリックすると、[画像リスト] セクションが更新され、ポイント [990007] が含まれるすべての画像が示され、最初の画像とともに、投影されたポイントの位置を示すピンクの円が表示されます。
注意:
いくつかの地上コントロール ポイント (ポイント 990007 など) は、地面にポイントとして明確にはマークされていませんが、横断歩道の角などの視覚的に区別できる位置で収集されています。
[Frankfurt_City_Collection] フォルダーの [GroundControlPoints] フォルダーには、地上コントロール ポイントの位置に緑色の [計測されたポイント] マーカーを示す一連の画像が含まれています。
このフォルダー内の 990007 画像ファイルを開くと、この地上コントロール ポイントが横断歩道の角で収集されたことがわかります。 各地上コントロール ポイントに対して、このフォルダー内の対応する画像を表示し、計測前に位置を確認します。
既存の目立つ位置が地上コントロール ポイントとして使用される場合、測量者は通常その位置をフィールド メモに記録し、その位置の GPS アンテナを示す写真を撮影します。 このフォルダー内の画像は、そのようなフィールド データをシミュレートしています。
- マウスのスクロール ホイールを使用して、地上コントロール ポイントの近くにズームしてから、横断歩道の角をクリックします。
- ポイントの計測を続行します。
5 つの各カメラの地上コントロール ポイントそれぞれについて、5 つ前後の計測値を収集するまで続けます。
地上コントロール ポイントは、それぞれ異なる位置や角度から取得されているため、所定の画像で表示される場合と表示されない場合があることに留意してください。 一部の画像で、樹木、建物、車、歩行者が地上コントロール ポイントを隠している場合があります。 また、まぶしい光または影によって、地上コントロール ポイントが画像の背景に溶け込んでいる場合があります。 計測時に、ポイントが見えない画像はスキップできます。
表示される画像が、チュートリアルで示されている順序とは異なる場合があります。 各画像で、地上コントロール ポイントが見えるかどうかを確認する必要があります。 見えない場合は、F キーを押して画像をスキップできます。 ポイントが見える場合、マウスのスクロール ホイールを使用して拡大し、画像のポイントの中心をクリックして、計算された位置と画像内の位置の差を計測します。
[コントロール ポイント] テーブルに、各コントロール ポイントの再投影誤差の統計が表示されます。 一部のコントロール ポイントの再投影誤差の統計が他のコントロール ポイントよりも高い場合、[コントロール ポイント] テーブルの行のヘッダーをクリックし、[画像リスト] で再投影誤差の値が高い画像を検索して再計測または削除できます。
計測値の削除
コントロール ポイントの再投影誤差が高い場合、計測値の削除または再計測の必要が生じることがあります。
[コントロール ポイント] テーブルで、統計を調査できます。
この例では、[990002] の [最大再投影誤差] の値が最も高くなっています。
テーブルに表示される値は、取得した計測値に応じて異なり、これらのサンプル画像とは一致しません。
- ポイント [990002] の行ヘッダーをクリックします。
- [画像] テーブルで、[再投影誤差 (xy)] の列ヘッダーをクリックします。
テーブルが、[再投影誤差 (xy)] の値順に並べ替えられます。
- スクロールして、[再投影誤差 (xy)] の値が最も高い画像を見つけます。
- [再投影誤差 (xy)] が高い値をクリックします。
- [削除] をクリックします。
[コントロール ポイント] テーブルで、値が改善されたことを確認します。
地上コントロール ポイントをチェック ポイントに変更
チェック ポイントは、配置の正確度を評価および報告するために使用されます。 チェック ポイントの 3D 位置と画像残差は、品質保証の目的で出力画像方向を使用して推定されます。 地上コントロール ポイントの 1 つをチェック ポイントに変換します。
- [コントロール ポイント] テーブルで、4 行目のヘッダー (地上コントロール ポイント [990006]) をクリックします。
この地上コントロール ポイントの行がハイライト表示されます。
- [コントロール ポイント] テーブルの上部にあるツールバーで、[ロールの設定] をクリックし、[CP] を選択します。
テーブルで、ロールが [CP] に変わり、これが [チェック ポイント] であることを示します。
配置の調整
コントロール ポイントを追加して計測したり、配置の他の設定を変更したりした後は、配置を再度実行して、新しい情報に基づいて位置を調整する必要があります。 これにより、バンドル ブロック調整が再実行されますが、最初の配置処理よりも大幅に速くなります。
- リボンの [配置] タブの [処理] セクションで [実行] をクリックします。
[処理マネージャー] が開き、配置処理の進行状況が表示されます。 1 ~ 2 分後に処理が完了します。
[QA ツール] ウィンドウが表示されます。
配置結果の品質を確認するには、[QA ツール] ウィンドウの統計情報を調べる必要があります。
このデータで最適な結果を得るには、次の点に注意してください。
- 十分にキャリブレーションされた写真測量カメラの場合、全体のシグマ 0 の値は 1 px 未満でなければなりません。
- タイ ポイント再投影誤差の RMS も、1 px 未満である必要があります。
- コントロール ポイントの水平オブジェクト残差と垂直オブジェクト残差の RMS は 1.5 GSD (12 cm) 未満でなければなりません。
画像あたりの自動タイ ポイント数や、タイ ポイントあたりの画像計測値などのカウント データも確認する必要があります。これは、タイ ポイントがプロジェクト エリア内にどの程度分布しているか、および、隣接する画像が共通の計測値によってどの程度接続されているかを示します。 グローブ ビューでタイ ポイントの視覚化を確認することもできます。
注意:
これらの手順は、配置結果を解析する際の基本的なガイダンスを提供することが目的です。 品質を詳細に解析するには、プロジェクトの要件や仕様に関する知識と、入力データの品質に関する知識が必要です。
- [QA] ウィンドウの [一般情報] をクリックし、シグマ 0 の値を表示します。
この例の値は 0.7616 で、このデータセットに適した値です。
- [QA] ウィンドウの右側で、[再投影誤差] セクションが現れるまで下にスクロールし、[自動タイ ポイント再投影誤差] セクションを表示して、[テーブルの表示] ボタンをクリックします。
この例のタイ ポイント再投影誤差の RMS 値は 0.762 で、このデータセットに適した値です。
- [QA] ウィンドウの右側で、[3D 残差] セクションが現れるまで上にスクロールします。 [地上コントロール ポイント残差] セクションを表示します。
この例の地上コントロール ポイント残差の RMS 値は 0.079 メートルで、この演習に適した値です。
- [QA] ウィンドウの左側で、[カウント] セクションが現れるまで下にスクロールして展開します。
この例では、463 の画像計測値を含む 6 つの地上コントロール ポイントと、98 の画像計測値を含む 1 つのチェック ポイントがあります。
- 必要に応じて、その他の QA 統計情報と計測値を確認します。
- [QA] ツールで [コントロール ポイント] タブをクリックします。
[コントロール ポイント] テーブルが表示されます。
このテーブルを使用して、各コントロール ポイントの X、Y、Z 残差を確認できます。 予想外に大きな相対 XYZ 値が存在する場合、ポイントを再計測する必要があることを示している可能性があります。
実際のプロジェクト データ (地上コントロール ポイント、自動タイ ポイント、画像位置) のジオグラフィを確認することもできます。
- リボンの [配置] タブの [表示] セクションで、[自動タイ ポイント] をクリックします。
[表示] ウィンドウに自動タイ ポイントが描画されます。
[カメラ位置] など、他のエレメントが [自動タイ ポイント] の上に描画されている場合、[プロジェクト ツリー] → [ビジュアライゼーション] の順にクリックし、[キャプチャ セッション] → [Frankfurt_Flight_RS] の順に展開して、各カメラの [カメラ位置] をオフにします。
- [自動タイ ポイント] ドロップダウン矢印をクリックし、[再投影誤差の RMS] を選択します。
[表示] ウィンドウが更新され、再投影誤差の RMS でシンボル化された手動タイ ポイントが表示されます。
- [QA] ツールで [自動タイ ポイント] タブをクリックします。
テーブルに自動タイ ポイントが表示されます。
このテーブルのデータを表示したり並べ替えたりすることで、誤差値が最も高い自動タイ ポイントを特定できます。
- [QA] ツールで [概要] タブをクリックします。 右側で、[再投影誤差] セクションが現れるまでスクロールし、[自動タイ ポイント再投影誤差] ヒストグラムを表示します。
ヒストグラムのシンボルは、グローブ ビューのシンボルと一致しています。
- リボンの [配置] タブの [結果] セクションで [レポート] をクリックします。
- [配置レポートの作成] ウィンドウで、レポートを保存する場所に移動します。 [名前] に「Frankfurt_AT_report」と入力します。
- [保存] をクリックします。
PDF がコンピューターに保存されます。 これで、配置の QA 統計情報を共有できます。
- [QA] ツールを閉じ、プロジェクトを保存します。
最初の配置を実行し、コントロール ポイントを追加して、配置を調整し、配置の統計情報を調べました。 また、作業をドキュメント化し、関係者と共有するために、配置の統計情報の PDF コピーをエクスポートしました。
次に、配置されたデータを使用して再構築を作成します。
再構築の実行
配置処理が完了し、結果を調べて高品質であると判断できたため、出力プロダクトを作成する準備が整いました。 このチュートリアルでは、3D 点群と 3D メッシュを作成します。
再構築の作成
プロダクトを生成する最初の手順は、再構築の作成です。
- リボンの [ホーム] タブをクリックします。 [処理] セクションで、[新しい再構築] をクリックします。
- [再構築] ウィンドウの [再構築名] に「Frankfurt_RS_3D」と入力します。
この再構成セッションは、2 つの 3D 出力を作成するために使用されます。
- [キャプチャ シナリオ] で、ドロップダウン リストをクリックし、[航空斜め] を選択します。
シナリオを選択すると、いくつかの出力プロダクトと処理の設定が行われます。
今回は、サンプル データはマルチヘッド キャプチャ セッションで、利用可能なすべての画像が出力 3D プロダクトの作成に使用されるため、[航空斜め] 設定が有効です。 [航空天底] 設定は、2D プロダクトを作成する場合に有効です。 最適な品質を確保するために、2D プロダクトは直下視画像のみを使用して作成する必要があります。
- [カメラ セッション] セクションで、作成した [Frankfurt_AT] 配置セッションをオンにします。
配置が選択されました。
- [プロダクト] セクションで、出力プロダクトを確認します。
[点群] プロダクトと [メッシュ] プロダクトがハイライト表示されています。
デフォルトでは、[SLPK] メッシュ形式がエクスポートされます。 必要に応じて、出力メッシュの他の形式も確認できます。
- [ワークスペース] セクションで、再構築の出力用のローカル フォルダーを指定します。
再構築処理の結果がそのフォルダーに保存されます。 出力用に十分なディスク容量があることを確認します。
- [オプション] セクションの [品質] で、[超高] をクリックします。
[超高] 設定では、実際の画像の解像度で 3D 再構築を実行します。 この場合、[高] 品質オプションよりも処理に時間はかかりますが、優れた結果が得られます。 128 GB RAM、AMD Ryzen 24 コア CPU (3.8 GHz)、および NVIDIA GeForce RTX4090 GPU を搭載した 1 台のコンピューターで、所要時間は約 8 時間です。
出力の詳細レベルを少し下げて、テクスチャ解像度を低くする場合は、[高] 品質オプションを選択できます。
注意:
再構築処理は、処理ノードとして機能する ArcGIS Reality Studio を実行するワークステーションのローカル ネットワークを含む分散環境での処理をサポートするように設計されています。 このような環境で効率的に実行するために、処理は個別のタスクに分割され、プロジェクトは管理しやすいサブプロジェクトに分割されます。複数のノードで再構築を実行するには、以下を指定する必要があります。
- 再構築実行の結果が収集される場所であるワークスペース。 このワークスペースは、各処理ノードからアクセスできる必要があります。
- 自動的に定義されたサブプロジェクトの中間処理結果を保存するために使用される一時処理フォルダー。
- [対象領域] で、[Frankfurt_AOI] を選択します。
[対象領域] では、出力プロタクトの処理をプロジェクトに関連する画像に限定することができます。
- [水域ジオメトリ] で、[Frankfurt_waterbody] を選択します。
[水域ジオメトリ] パラメーターは、水域内のエリアを平坦化および単純化するために使用されます。 水の反射により、この処理は複雑で、要件を満たさない出力が生成されることがあります。
- [修正ジオメトリ] で、デフォルト値 ([なし]) をそのまま使用します。
- [作成] をクリックします。
これにより、[再構築] セットアップが完了します。 再構築が [プロジェクト ツリー] に追加されます。
再構築の実行
これで再構築の設定が完了したので、次は再構築を実行します。 この処理は、コンピューターのリソースによっては時間がかかります。 128 GB RAM、AMD Ryzen 24 コア CPU (3.8 GHz)、および NVIDIA GeForce RTX4090 GPU を搭載した 1 台のコンピューターで、所要時間は約 8 時間です。 ノードを追加することで、処理は高速になります。
- リボンの [再構築] タブの [処理] セクションで [送信] をクリックします。
[送信] をクリックすると、[処理マネージャー] に再構築処理が保留中であることが表示されます。
- リボンの [再構築] タブの [ワークスペース] セクションで、[提供の開始] をクリックします。
[処理マネージャー] に、再構築処理のステータスが表示されるようになります。
[ワークスペース モニター] を使用して、再構築ジョブに提供しているコンピューターの概要を確認できます。 この例では、コンピューターは 1 台のみですが、複数のコンピューターを使用して再構築を処理することができます。
[ジョブ モニター] を使用して、実行されている再構築ジョブのタスクの概要を確認できます。
解析手順が完了すると、グローブ ビューにも処理の進捗が表示されます。 密度の一致で処理される各ステレオ モデルを確認できます。 処理の後半では、点群の各タイルとメッシュがグローブ ビューに追加されます。
処理が完了すると、プロダクトが [プロジェクト ツリー] ウィンドウに追加されます。 [ビジュアライゼーション] タブを使用して、これらのプロダクトを表示または非表示にできます。
- 再構築処理の実行を待ちます。
各処理が完了すると、[処理マネージャー] に完了したことが表示されます。
この例では、1 台のサンプル コンピューターで約 8 時間かかります。
- [プロジェクト ツリー] ウィンドウで [ビジュアライゼーション] をクリックします。
- [プロジェクト ツリー] ウィンドウで、[再構築] セクションまで下にスクロールし、[Frankfurt_RS_3D]→ [プロダクト] の順に展開し、[点群] をオンにします。
- [グローブ] タブをクリックして、出力を表示します。
必要に応じて、[プロジェクト ツリー] ウィンドウの [ビジュアライゼーション] タブで、他のレイヤーをオフにします。
必要に応じて、点群レイヤーをオフにし、メッシュ レイヤーをオンにして結果を確認します。
- リボンの [再構築] タブで、[結果フォルダーを開く] をクリックします。
これにより、Microsoft File Explorer ウィンドウで [Results] フォルダーが開きます。 このフォルダーには、i3s (SLPK) 形式の 3D 点群と、i3s (SLPK) 形式の 3D メッシュが含まれています。 .slpk ファイルを使用して、プロダクトを ArcGIS Online に追加します。
再構築プロダクトを別のタイル スキーマまたは投影法で提供する必要がある場合は、[再構築] タブで [エクスポート] ボタンをクリックし、代替のエクスポート オプションを選択します。
- 処理を実行しない場合は、結果を表示できます。
このチュートリアルでは、ArcGIS Reality Studio プロジェクトを作成し、キャプチャ セッションを追加して、最初の配置を実行し、地上コントロール ポイントを計測して、配置を調整しました。 配置の品質を評価し、許容範囲であると判断しました。 配置を使用して再構築を作成し、その再構築を使用して点群および 3D メッシュ出力を作成しました。 これらの出力は ArcGIS Online に共有したり、コンピューター上のローカル アプリケーションで使用したりできます。 再構築の段階で類似した処理を使用することで、トゥルー オルソ画像や数値表層モデルなどの 2D プロダクトを作成できます。 2D 出力を作成する際の主な違いは、航空直下視シナリオを使用し、カメラ セッションを直下視カメラ キャプチャに限定することです。
他のチュートリアルについては、チュートリアル ギャラリーをご覧ください。