L’automatisation de votre flux de travail photogrammétrique peut augmenter considérablement l’efficacité, en particulier pour les tâches répétitives ou d’entreprise. Agisoft Metashape prend en charge les scripts Python et vous pouvez même le configurer pour qu’il s ‘exécute automatiquement au démarrage. Ce guide vous montre comment le configurer sous Windows, macOS et Linux, et inclut les meilleures pratiques pour la structure des scripts et le débogage.
Pourquoi exécuter automatiquement des scripts Python dans Metashape ?
L’exécution automatique des scripts Python vous permet de :
- Automatiser les flux de travail de routine (par exemple, l’importation, l’alignement, la construction de modèles, l’exportation)
- Faire respecter les normes du projet par l’ensemble de l’équipe
- Déclencher des téléchargements dans le nuage ou des synchronisations de bases de données au démarrage
- Traitement par lots des dossiers d’images sans intervention de l’utilisateur
Où placer les scripts d’exécution automatique ?
Metashape vérifie la présence d’un fichier de script appelé startup.py
dans un répertoire utilisateur spécifique. S’il le trouve, il exécutera automatiquement ce script au démarrage.
🟦 Windows
Placez votre script ici :
%APPDATA%\Agisoft\Metashape Pro\scripts\startup.py
Exemple de chemin : C:\Users\YourName\AppData\Roaming\Agisoft\Metashape Pro\scripts\startup.py
🍎 macOS
Utilisez le dossier suivant :
~/Library/Application Support/Agisoft/Metashape Pro/scripts/startup.py
🐧 Linux
Pour les systèmes Linux :
~/.local/share/Agisoft/Metashape Pro/scripts/startup.py
Structure de base de la startup.py
import Metashape
def run_on_startup():
doc = Metashape.app.document
print("Metashape startup script running...")
# Example task
doc.addChunk()
doc.chunk.label = "AutoCreatedChunk"
print("Chunk created automatically.")
run_on_startup()
Cas d’utilisation courants
- Chargement par lots d’images à partir d’un dossier surveillé
- Commencez l’alignement au moment du lancement de Metashape
- Connexion à une base de données externe ou récupération de métadonnées
- Enregistrer l’état d’avancement du projet ou l’activité de l’utilisateur
Exemple : Alignement automatique des photos au démarrage
import Metashape
def run_on_startup():
chunk = Metashape.app.document.addChunk()
chunk.addPhotos(["C:/images/image1.jpg", "C:/images/image2.jpg"])
chunk.matchPhotos(accuracy=Metashape.HighAccuracy)
chunk.alignCameras()
print("Alignment complete.")
run_on_startup()
Avancé : Charger à partir d’un script externe
Vous pouvez conserver votre logique de base dans un autre script et l’importer pour garder startup.py
propre :
import sys
sys.path.append("C:/MyScripts/")
import auto_processing
auto_processing.main()
Comment déboguer startup.py
- Utilisez fréquemment les déclarations
print()
- Vérifiez que la console Metashape ne contient pas d’erreurs
- Exécutez
startup.py
manuellement à partir de la console Python pour tester
Désactiver ou ignorer temporairement l’exécution automatique
Si votre script pose des problèmes, renommez ou supprimez simplement startup.py
. Vous pouvez également ajouter un drapeau dans le script pour désactiver l’exécution lorsque c’est nécessaire :
if __name__ == "__main__":
debug = True
if not debug:
run_on_startup()
Meilleures pratiques
- Gardez
startup.py
léger – évitez les boucles lourdes lors du lancement - Utilisez la journalisation au lieu de l’impression pour les scripts à long terme.
- Valider les chemins d’accès aux fichiers et les entrées avant l’exécution
- Commentez clairement votre code pour les coéquipiers
Conclusion
L’exécution automatique de scripts Python au démarrage de Metashape est un moyen puissant d’automatiser les flux de travail, en particulier dans les environnements de production ou multi-utilisateurs. Que vous traitiez des données par lots, que vous configuriez un projet standard ou que vous enregistriez l’activité du projet, startup.py
vous permet de prendre facilement le contrôle de votre environnement de photogrammétrie dès l’ouverture du logiciel.