Aperçu de l'API
Cette section fournit une documentation de référence complète de l'API pour MipMapEngine SDK, incluant toutes les interfaces disponibles, les descriptions des paramètres et des exemples d'utilisation.
Si vous n'avez pas encore installé le SDK, veuillez d'abord consulter le Guide d'Installation. Pour les nouveaux utilisateurs, il est recommandé de commencer par Démarrage Rapide.
MipMapEngine SDK fournit diverses interfaces pour répondre à différents scénarios d'utilisation :
🏗️ Architecture du SDK
Couche Application
- Votre Application | Python/C++/CLI | Services Web
Couche Interface API
- ReconstructFull (Processus Complet) | ReconstructAT (Triangulation Aérienne) | Reconstruct3D (Reconstruction 3D)
Moteur Central
- Algorithmes de Photogrammétrie | Accélération GPU | Traitement Parallèle
Couche Système
- NVIDIA CUDA | Système de Fichiers | Gestion des Licences
📚 Catégories d'Interfaces
1. Interfaces de Traitement par Lots
Adaptées pour le traitement hors ligne de grandes quantités de données :
| Interface | Fonction | Cas d'Usage |
|---|---|---|
| ReconstructFull | Reconstruction du processus complet | Démarrage rapide, traitement automatique |
| ReconstructAT | Triangulation aérienne | Contrôle fin, utilisateurs professionnels |
| Reconstruct3D | Reconstruction 3D | Générer des modèles à partir des résultats AT |
| OptimizeAT | Optimiser AT | Utiliser des points de contrôle pour améliorer la précision |
| DivideTiles | Traitement de tuiles | Reconstruction de blocs de données à grande échelle |
2. Outils Auxiliaires
| Outil | Fonction |
|---|---|
| License Engine | Gestion des licences |
| Progress Monitor | Surveillance du progrès |
🔄 Flux de Travail Typiques
Option 1 : Processus Complet Rapide (Recommandé pour les Débutants)
ReconstructFull → Résultats de Sortie
Solution en une étape, gère automatiquement tous les processus
Option 2 : Traitement Étape par Étape (Utilisateurs Professionnels)
ReconstructAT → OptimizeAT (Optionnel) → Reconstruct3D → Résultats de Sortie
Contrôle fin sur chaque étape, supporte la vérification des résultats intermédiaires et l'optimisation
📝 Méthodes d'Appel d'Interface
1. Appel en Ligne de Commande
Le SDK supporte les appels directs en ligne de commande pour chaque moteur :
# Format général
<engine_name> [options] -task_json <config_file>
# Exemple : Appeler ReconstructFull
reconstruct_full_engine -reconstruct_type 0 -task_json config.json
Après l'installation initiale, veuillez vous référer au Guide d'Installation pour les tests de vérification.
2. Intégration de Programme
Intégrez dans votre application via des appels de processus :
import subprocess
import json
# Préparer la configuration
config = {
"license_id": 9200,
"working_dir": "./output",
"gdal_folder": "./data",
# ... autres paramètres
}
# Sauvegarder le fichier de configuration
with open("task.json", "w") as f:
json.dump(config, f)
# Appeler le SDK
result = subprocess.run([
"reconstruct_full_engine.exe",
"-reconstruct_type", "0",
"-task_json", "task.json"
], capture_output=True, text=True)
print(result.stdout)
🎯 Choisir la Bonne Interface
| Si vous... | Recommandé | Raison |
|---|---|---|
| Utilisez le SDK pour la première fois | ReconstructFull | Gère automatiquement tous les détails, le plus simple |
| Devez utiliser des points de contrôle | ReconstructAT + OptimizeAT | Supporte l'optimisation des points de contrôle |
| Traitez des données ultra-volumineuses | DivideTiles + Reconstruct3D | Supporte le traitement parallèle de blocs |
| Avez besoin de résultats intermédiaires | Traitement étape par étape | Peut vérifier et ajuster les résultats intermédiaires |
📖 Concepts Communs
Fichiers de Configuration JSON
Toutes les interfaces utilisent des fichiers de configuration au format JSON, structure de base :
{
"license_id": 9200, // Requis : ID de Licence
"working_dir": "string", // Requis : Répertoire de travail
"gdal_folder": "string", // Requis : Répertoire de données GDAL
// ... autres paramètres dépendent de l'interface
}
Définition du Système de Coordonnées
{
"coordinate_system": {
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF
"epsg_code": 4326, // Code EPSG (optionnel)
"wkt": "string", // Chaîne WKT (optionnel)
"origin_point": [lon, lat, alt] // Origine LocalENU (nécessaire seulement quand type=0)
}
}
Gestion des Erreurs
Toutes les interfaces retournent des codes d'erreur entiers :
0: SuccèsNombres négatifs: Diverses conditions d'erreur
Voir la référence des codes d'erreur pour les détails.
🚀 Prochaines Étapes
- 📚 En savoir plus sur l'interface ReconstructFull (recommandé pour les débutants)
- 🔧 Étudier l'interface ReconstructAT (fonctionnalités avancées)
- 💡 Vérifier des exemples complets pour l'usage pratique
Conseil : Les besoins de la plupart des utilisateurs peuvent être satisfaits avec ReconstructFull. N'utilisez d'autres interfaces que lorsqu'un contrôle fin est nécessaire.