API概要
このセクションでは、MipMapEngine SDKのAPI完全リファレンス文書を提供します。利用可能なすべてのインターフェース、パラメータの説明、使用例が含まれています。
MipMapEngine SDKは、さまざまな使用シナリオに対応するための各種インターフェースを提供します:
🏗️ SDK アーキテクチャ
MipMapEngine SDK アーキテクチャレイヤー
アプリケーションレイヤー
- あなたのアプリケーション | Python/C++/CLI | Webサービス
APIインターフェースレイヤー
- ReconstructFull(完全プロセス)| ReconstructAT(空中三角測量)| Reconstruct3D(3D復元)
コアエンジン
- 写真測量アルゴリズム | GPU加速 | 並列処理
システムレイヤー
- NVIDIA CUDA | ファイルシステム | ライセンス管理
📚 インターフェースカテゴリ
1. バッチ処理インターフェース
大量データのオフライン処理に適しています:
| インターフェース | 機能 | 使用ケース |
|---|---|---|
| ReconstructFull | 完全プロセス復元 | クイックスタート、自動処理 |
| ReconstructAT | 空中三角測量 | 細かい制御、プロフェッショナルユーザー |
| Reconstruct3D | 3D復元 | AT結果からモデル生成 |
| OptimizeAT | AT最適化 | コントロールポイントを使用して精度向上 |
| DivideTiles | タイル処理 | 大規模データブロック復元 |
2. 補助ツール
| ツール | 機能 |
|---|---|
| License Engine | ライセンス管理 |
| Progress Monitor | 進捗監視 |
🔄 典型的なワークフロー
オプション1:高速完全プロセス(初心者推奨)
高速完全プロセス
ReconstructFull → 出力結果
ワンステップソリューション、すべてのプロセスを自動処理
オプション2:ステップバイステップ処理(プロフェッショナルユーザー)
ステップバイステップ処理フロー
ReconstructAT → OptimizeAT(オプション) → Reconstruct3D → 出力結果
各ステップの細かい制御、中間結果のチェックと最適化をサポート
📝 インターフェース呼び出し方法
1. コマンドライン呼び出し
SDKは各エンジンへの直接コマンドライン呼び出しをサポートします:
# 一般的な形式
<engine_name> [options] -task_json <config_file>
# 例:ReconstructFull呼び出し
reconstruct_full_engine -reconstruct_type 0 -task_json config.json
インストール確認
初期インストール後、検証テストについてはインストールガイドを参照してください。
2. プログラム統合
プロセス呼び出しを通じてアプリケーションに統合:
import subprocess
import json
# 設定準備
config = {
"license_id": 9200,
"working_dir": "./output",
"gdal_folder": "./data",
# ... その他のパラメータ
}
# 設定ファイル保存
with open("task.json", "w") as f:
json.dump(config, f)
# SDK呼び出し
result = subprocess.run([
"reconstruct_full_engine.exe",
"-reconstruct_type", "0",
"-task_json", "task.json"
], capture_output=True, text=True)
print(result.stdout)
🎯 適切なインターフェースの選択
インターフェース選択推奨
| あなたが... | 推奨 | 理由 |
|---|---|---|
| 初回SDK使用 | ReconstructFull | すべての詳細を自動処理、最もシンプル |
| コントロールポイント使用が必要 | ReconstructAT + OptimizeAT | コントロールポイント最適化をサポート |
| 超大容量データ処理 | DivideTiles + Reconstruct3D | ブロック並列処理をサポート |
| 中間結果が必要 | ステップバイステップ処理 | 中間結果のチェックと調整が可能 |
📖 共通概念
JSON設定ファイル
すべてのインターフェースはJSON形式の設定ファイルを使用、基本構造:
{
"license_id": 9200, // 必須:ライセンスID
"working_dir": "string", // 必須:作業ディレクトリ
"gdal_folder": "string", // 必須:GDALデータディレクトリ
// ... その他のパラメータはインターフェースに依存
}
座標系定義
{
"coordinate_system": {
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF
"epsg_code": 4326, // EPSGコード(オプション)
"wkt": "string", // WKT文字列(オプション)
"origin_point": [lon, lat, alt] // LocalENU原点(type=0の場合のみ必要)
}
}
エラー処理
すべてのインターフェースは整数エラーコードを返します:
0:成功負の数:各種エラー条件
詳細はエラーコードリファレンスを参照してください。
🚀 次のステップ
- 📚 ReconstructFullインターフェースについて詳しく学ぶ(初心者推奨)
- 🔧 ReconstructATインターフェースを研究(高度な機能)
- 💡 実用的な使用のための完全な例をチェック
ヒント:ほとんどのユーザーのニーズはReconstructFullで満たすことができます。細かい制御が必要な時のみ他のインターフェースを使用してください。