How to Auto-Run Python Scripts at Startup in Agisoft Metashape

Automatisches Ausführen von Python-Skripten beim Start in Agisoft Metashape

Die Automatisierung Ihres Photogrammetrie-Workflows kann die Effizienz drastisch erhöhen – insbesondere bei sich wiederholenden oder unternehmensweiten Aufgaben. Agisoft Metashape unterstützt Python-Skripte und Sie können es sogar so konfigurieren, dass die Skripte beim Start automatisch ausgeführt werden. Dieser Leitfaden zeigt Ihnen, wie Sie das Programm unter Windows, macOS und Linux einrichten und enthält Best Practices für die Skriptstruktur und das Debugging.

Warum werden Python-Skripte in Metashape automatisch ausgeführt?

Die automatische Ausführung von Python-Skripten ermöglicht es Ihnen:

  • Automatisieren Sie Routineabläufe (z.B. Importieren, Ausrichten, Modell erstellen, Exportieren)
  • Durchsetzung von Projektstandards innerhalb eines Teams
  • Auslösen von Cloud-Uploads oder Datenbanksynchronisationen beim Start
  • Stapelverarbeitung von Bildordnern ohne Benutzereingabe

Wo Sie Auto-Run-Skripte platzieren

Metashape sucht in einem bestimmten Benutzerverzeichnis nach einer Skriptdatei namens startup.py. Wenn es gefunden wird, führt es dieses Skript beim Start automatisch aus.

🟦 Fenster

Platzieren Sie Ihr Skript hier:

%APPDATA%\Agisoft\Metashape Pro\scripts\startup.py

Beispielpfad: C:\Users\YourName\AppData\Roaming\Agisoft\Metashape Pro\scripts\startup.py

🍎 macOS

Verwenden Sie den folgenden Ordner:

~/Library/Application Support/Agisoft/Metashape Pro/scripts/startup.py

🐧 Linux

Für Linux-Systeme:

~/.local/share/Agisoft/Metashape Pro/scripts/startup.py

Grundlegende Struktur von 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()

Häufige Anwendungsfälle

  • Stapelweise Bilder aus einem überwachten Ordner laden
  • Ausrichtung starten, wenn Metashape gestartet wird
  • Verbindung zu externer Datenbank oder Abruf von Metadaten
  • Projektstatus oder Benutzeraktivitäten protokollieren

Beispiel: Fotos beim Starten automatisch ausrichten

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()

Erweitert: Von externem Skript laden

Sie können Ihre Kernlogik in einem anderen Skript behalten und es importieren, um startup.py sauber zu halten:

import sys
sys.path.append("C:/MyScripts/")
import auto_processing
auto_processing.main()

So debuggen Sie startup.py

  • Verwenden Sie häufig print() Anweisungen
  • Prüfen Sie die Metashape-Konsole auf Fehler
  • Führen Sie startup.py manuell über die Python-Konsole aus, um zu testen

Auto-Run deaktivieren oder vorübergehend auslassen

Wenn Ihr Skript Probleme verursacht, benennen Sie es einfach um oder löschen Sie startup.py. Fügen Sie alternativ eine Markierung in das Skript ein, um die Ausführung bei Bedarf zu deaktivieren:

if __name__ == "__main__":
    debug = True
    if not debug:
        run_on_startup()

Bewährte Praktiken

  • Halten Sie startup.py leicht – vermeiden Sie schwere Schlingen beim Start
  • Verwenden Sie für langfristige Skripte die Protokollierung anstelle des Drucks
  • Überprüfen Sie Dateipfade und Eingaben vor der Ausführung
  • Kommentieren Sie Ihren Code deutlich für Teamkollegen

Fazit

Die automatische Ausführung von Python-Skripten beim Starten von Metashape ist eine leistungsstarke Methode zur Automatisierung von Arbeitsabläufen, insbesondere in Produktions- oder Mehrbenutzerumgebungen. Ganz gleich, ob Sie Daten im Stapel verarbeiten, ein Standardprojektlayout einrichten oder Projektaktivitäten protokollieren, startup.py macht es Ihnen leicht, die Kontrolle über Ihre Photogrammetrieumgebung zu übernehmen, sobald die Software geöffnet wird.