PIX4Dengine Server を使用した大規模プロジェクトの処理
SDKへの移行を強くお勧めします。最新のドキュメントについては、 PIX4Dengine Server SDKの。
この記事では、Pix4Dengine Server を使用して大判データセットを処理する方法を説明します。実際には、可能な限り効率的で成功するワークフローを確保するために、撮影プロセスの前に大規模プロジェクトを計画することが理想的です。 プロジェクトには主に 2 つのタイプがあり、それぞれ異なる処理が必要です。
現在、GCP(地上基準点)を含むプロジェクトでは、画像のマーキングや精度の確保のために手作業が必要となる。.
大規模プロジェクトの主な焦点は、プロジェクトを管理しやすいチャンクに分割し、最終的にそれらを統合することです。個々のプロジェクトは2000枚以下の画像にするか、利用可能なハードウェアに適した画像数にすることをお勧めします。GCP
またはMTPは、異なる画像セットとフライトの重複ゾーンに配置するように計画する必要があります。 現在、プロジェクトの統合はPIX4Dengine Serverを使用して手動で行う必要があります。これは、GCPとMTPが必要であり、手動でマークする必要があるため、プロジェクトを統合するためのコマンドライン引数がないためです。
PIX4Dengine Serverで大規模なデータセットを処理するには:
1. 画像を扱いやすいブロックに分割する:
- オプション1: 複数の重複するフライトを計画する。
フライトプランニングでプロジェクトを分割するのが、プロジェクト全体を分割する最も簡単な方法です。個々のセクションを小さくすることで、単一の大きなプロジェクトよりも処理速度が速くなります。分割されたサブプロジェクトが最終的に結合される重複領域には、少なくとも2つのGCP(地上基準点)を配置することをお勧めします。 - オプション2: ファイル作成時間で画像を分割する。
このオプションは、飛行前の計画が不可能な場合、または大規模なプロジェクトを一度にすべて飛行させる必要がある場合に使用します。一般的に、ファイル作成時間を使用して、関連する画像のセクションを特定できます。たとえば、最初のサブプロジェクトを画像1~1000、2番目を画像900~1900、3番目を画像1800~2800などと設定できます。後でマージを成功させるには、サブプロジェクト間で一定の重複を維持する必要があります。
2. 各サブプロジェクトの画像ディレクトリをループして、.p4d ファイルを作成します:"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -n --image-dir または"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -n --image-dir
3. 各サブプロジェクトをステップ1に従って処理します。.
"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -i "D:\Project1\subproject1.p4d"
"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -i "D:\Project1\subproject2.p4d"
... 4. GUI で地上基準点または手動タイポイント (GCP/MTP) を手動でロードします。
ファイルから GCP/MTP を追加する手順は、こちら ( 202560039)。GCP/MTP を手動でマークする手順は、こちら ( 202560109)。
5. サブプロジェクトを使用して、統合された.p4dファイルを作成します。 202558529
6. 新しくマージされた.p4dファイルを、残りの2つの手順で処理します。.
"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -d -o "D:\Project1\subproject1.p4d"プロジェクトがGCPとの連携を必要としない場合、特殊なプログラミングによって完全に自動で処理することが可能です。.
正確さよりも時間を優先する
1. 処理前にプロジェクトを分割する: コマンドライン経由で Pix4D を最も効率的に使用する方法は、プロジェクトをハードウェア用に管理しやすいブロックに分割することです。.
- オプション1: 複数の重複するフライトを計画する。
フライトプランニングでプロジェクトを分割するのが、プロジェクト全体を分割する最も簡単な方法です。個々のセクションを小さくすることで、単一の大きなプロジェクトよりも処理速度が速くなります。分割されたサブプロジェクトが最終的に結合される重複領域には、少なくとも2つのGCP(地上基準点)を配置することをお勧めします。 - オプション2: ファイル作成時間で画像を分割する。
このオプションは、飛行前の計画が不可能な場合、または大規模なプロジェクトを一度にすべて飛行させる必要がある場合に使用します。一般的に、ファイル作成時間を使用して、関連する画像のセクションを特定できます。たとえば、最初のサブプロジェクトを画像1~1000、2番目を画像900~1900、3番目を画像1800~2800などと設定できます。後でマージを成功させるには、サブプロジェクト間で一定の重複を維持する必要があります。
2. 画像セットごとにプロジェクトファイルを作成します。
処理前に適用する特定のテンプレートがある場合は、次のコマンドを使用して新しい Pix4D プロジェクトを作成します。「C:\Program Files\Pix4Dmapper\pix4dmapper」 -c -n --image-dir それ以外の場合:"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -n --image-dir
3. すべてのステップのサブプロジェクトを実行します: "C:\Program Files\Pix4Dmapper\pix4dmapper" -c -r
大規模プロジェクトのすべての部分を実行した後、GDALなどの他の後処理ソフトウェアを使用して出力を統合することができます。.
時間よりも正確性を優先する:
1. 新しいPix4Dプロジェクトを作成します。処理前に適用する特定のテンプレートがある場合は、次のコマンドを使用して新しいPix4Dプロジェクトを作成します。「C:\Program Files\Pix4Dmapper\pix4dmapper」 -c -n --image-dir それ以外の場合:"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -n --image-dir
2. 大規模プロジェクトのすべての画像に対して、手順1の処理を行います。.
"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -i "D:\Project\largeproject.p4d"3. ステップ1が完了したら、プロジェクトファイルを複製してプロジェクトを分割する必要があります。
スクリプト方式を使用して、プロジェクトを分割したい回数だけプロジェクトファイルをコピーします。.p4dファイルは実質的にプロジェクト領域を含むXMLドキュメントであり、ほとんどの一般的なプログラミング言語で編集できます。
ファイル内で注目すべき領域は次のセクションです。<processingArea>
<geoCoord2D x="312978.66118643" y="5154376.965688433"/>
<geoCoord2D x="312978.117330892" y="5154341.216678394"/>
<geoCoord2D x="312939.979279067" y="5154341.70726983"/>
<geoCoord2D x="312942.866226013" y="5154379.047594546"/>
<z zMin="130.1203951143" zMax="354.9494048754"/>
</processingArea>
コピーした各.p4dファイルの境界点を編集し、プロジェクト全体の一定割合をカバーするようにします。後処理で出力を結合しやすくするために、各セクション間に十分な重なりがあることを確認する必要があります。
4. 各サブプロジェクトに対して手順2と手順3を実行します。.
"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -d -o "D:\Project1\subproject1.p4d"
"C:\Program Files\Pix4Dmapper\pix4dmapper" -c -d -o "D:\Project1\subproject2.p4d"
...5. GDALなどの後処理ユーティリティで出力をマージします。.