API: Python SDK

Der Chloros Python SDK bietet programmatischen Zugriff auf die Bildverarbeitungs-Engine Chloros und ermöglicht so Automatisierung, benutzerdefinierte Workflows und nahtlose Integration in Ihre Python-Anwendungen und Forschungs-Pipelines.

Hauptmerkmale

  • 🐍 Native Python – Sauberes, Python-basiertes API für die Bildverarbeitung

  • 🔧 Vollständiger API-Zugriff – Vollständige Kontrolle über die Chloros-Verarbeitung

  • 🚀 Automatisierung – Erstellen Sie benutzerdefinierte Workflows für die Stapelverarbeitung

  • 🔗 Integration – Chloros in bestehende Python-Anwendungen einbetten

  • 📊 Forschungsbereit – Perfekt für wissenschaftliche Analyse-Pipelines

  • Parallele Verarbeitung – Skalierbar auf Ihre CPU-Kerne (Chloros+)

Anforderungen

Anforderung
Details

Chloros Desktop

Muss lokal installiert sein

Betriebssystem

Windows 10/11 (64-Bit)

Python

Python 3.7 oder höher

Arbeitsspeicher

Mindestens 8 GB RAM (16 GB empfohlen)

Internet

Für die Lizenzaktivierung erforderlich

Lizenzanforderungen: Für Python SDK ist ein kostenpflichtiges Chloros+-Abonnement für den Zugriff auf API erforderlich. Standard-Tarife (kostenlos) haben keinen Zugriff auf API/SDK. Besuchen Sie https://cloud.mapir.camera/pricingarrow-up-right, um ein Upgrade durchzuführen.

Schnellstart

Installation

Installation über pip:

circle-info

Ersteinrichtung: Bevor Sie SDK verwenden, aktivieren Sie Ihre Chloros+-Lizenz, indem Sie Chloros, Chloros (Browser) oder Chloros CLI öffnen und sich mit Ihren Anmeldedaten anmelden. Dies muss nur einmal durchgeführt werden.

Grundlegende Verwendung

Verarbeiten Sie einen Ordner mit nur wenigen Zeilen:

Volle Kontrolle

Für fortgeschrittene Arbeitsabläufe:


Installationsanleitung

Voraussetzungen

Bevor Sie SDK installieren, stellen Sie sicher, dass Sie über Folgendes verfügen:

  1. Chloros Desktop installiert (Download)

  2. Python 3.7+ installiert (python.orgarrow-up-right)

  3. Aktive Chloros+-Lizenz (Upgradearrow-up-right)

Installation über pip

Standardinstallation:

Mit Unterstützung für Fortschrittsüberwachung:

Entwicklungsinstallation:

Installation überprüfen

Testen Sie, ob SDK korrekt installiert ist:


Erstmalige Einrichtung

Lizenzaktivierung

SDK verwendet dieselbe Lizenz wie Chloros, Chloros (Browser) und Chloros CLI. Aktivieren Sie die Lizenz einmalig über die GUI oder CLI:

  1. Öffnen Sie Chloros oder Chloros (Browser)und melden Sie sich auf der Registerkarte „Benutzer” an . Oder öffnen SieCLI.

  2. Geben Sie Ihre Chloros+-Anmeldedaten ein und melden Sie sich an

  3. Die Lizenz wird lokal zwischengespeichert (bleibt auch nach einem Neustart erhalten)

circle-info

Einmalige Einrichtung: Nach der Anmeldung über die GUI oder CLI verwendet SDK automatisch die zwischengespeicherte Lizenz. Es ist keine zusätzliche Authentifizierung erforderlich!

circle-info

Abmelden: SDK-Benutzer können zwischengespeicherte Anmeldedaten programmgesteuert mit der Methode logout() löschen. Siehe logout()-Methode in der API-Referenz.

Verbindung testen

Überprüfen Sie, ob SDK eine Verbindung zu Chloros herstellen kann:


API Referenz

ChlorosLocal-Klasse

Hauptklasse für die lokale Bildverarbeitung von Chloros.

Konstruktor

Parameter:

Parameter
Typ
Standardwert
Beschreibung

api_url

str

"http://localhost:5000"

URL des lokalen Chloros-Backends

auto_start_backend

bool

True

Backend bei Bedarf automatisch starten

backend_exe

str

None (automatische Erkennung)

Pfad zur ausführbaren Backend-Datei

timeout

int

30

Zeitüberschreitung bei Anfragen in Sekunden

backend_startup_timeout

int

60

Zeitüberschreitung beim Starten des Backends (Sekunden)

Beispiele:


Methoden

create_project(project_name, camera=None)

Erstellen Sie ein neues Chloros-Projekt.

Parameter:

Parameter
Typ
Erforderlich
Beschreibung

project_name

str

Ja

Name für das Projekt

camera

str

Nein

Kameravorlage (z. B. „Survey3N_RGN”, „Survey3W_OCN”)

Rückgabewerte: dict – Antwort zur ProjekterstellungBeispiel:


import_images(folder_path, recursive=False)

Bilder aus einem Ordner importieren.

Parameter:

Parameter
Typ
Erforderlich
Beschreibung

folder_path

str/Pfad

Ja

Pfad zum Ordner mit Bildern

recursive

bool

Nein

Unterordner durchsuchen (Standard: False)

Rückgabewerte: dict – Importergebnisse mit DateianzahlBeispiel:


configure(**settings)

Verarbeitungseinstellungen konfigurieren.

Parameter:

Parameter
Typ
Standard
Beschreibung

debayer

str

„Hohe Qualität (schneller)“

Debayer-Verfahren

vignette_correction

bool

True

Vignettenkorrektur aktivieren

reflectance_calibration

bool

True

Reflektionskalibrierung aktivieren

indices

list

None

Zu berechnende Vegetationsindizes

export_format

str

„TIFF (16-Bit)“

Ausgabeformat

ppk

bool

False

PPK-Korrekturen aktivieren

custom_settings

dict

None

Erweiterte benutzerdefinierte Einstellungen

Exportformate:

  • "TIFF (16-bit)" – Empfohlen für GIS/Fotogrammetrie

  • "TIFF (32-bit, Percent)" – Wissenschaftliche Analyse

  • "PNG (8-bit)" – Visuelle Inspektion

  • "JPG (8-bit)" – Komprimierte Ausgabe

**Verfügbare Indizes:**NDVI, NDRE, GNDVI, OSAVI, CIG, EVI, SAVI, MSAVI, MTVI2 und weitere.Beispiel:


process(mode="parallel", wait=True, progress_callback=None)

Verarbeiten Sie die Projektbilder.

Parameter:

Parameter
Typ
Standardwert
Beschreibung

mode

str

"parallel"

Verarbeitungsmodus: „parallel” oder „seriell”

wait

bool

True

Auf Abschluss warten

progress_callback

callable

None

Fortschritts-Callback-Funktion(progress, msg)

poll_interval

float

2.0

Abfrageintervall für Fortschritt (Sekunden)

Rückgabewerte: dict – Verarbeitungsergebnisse

circle-info

Parallelmodus: Erfordert die Lizenz Chloros+. Skaliert automatisch auf Ihre CPU-Kerne (bis zu 16 Worker).

Beispiel:


get_config()

Aktuelle Projektkonfiguration abrufen.

Gibt zurück: dict – Aktuelle ProjektkonfigurationBeispiel:


get_status()

Ruft Backend-Statusinformationen ab.

Rückgabewert: dict – Backend-StatusBeispiel:


shutdown_backend()

Beendet das Backend (wenn es durch SDK gestartet wurde).

Beispiel:


logout()

Löscht zwischengespeicherte Anmeldedaten aus dem lokalen System.

Beschreibung:

Meldet sich programmgesteuert ab, indem zwischengespeicherte Anmeldedaten entfernt werden. Dies ist nützlich für:

  • Wechsel zwischen verschiedenen Chloros+-Konten

  • Löschen von Anmeldedaten in automatisierten Umgebungen

  • Sicherheitszwecke (z. B. Entfernen von Anmeldedaten vor der Deinstallation)

Rückgabewerte: dict – Ergebnis des AbmeldevorgangsBeispiel:

circle-info

Erneute Authentifizierung erforderlich: Nach dem Aufruf von logout() müssen Sie sich erneut über Chloros, Chloros (Browser) oder Chloros CLI anmelden, bevor Sie SDK verwenden können.


Komfortfunktionen

process_folder(folder_path, **options)

Einzeilige Komfortfunktion zur Verarbeitung eines Ordners.

Parameter:

Parameter
Typ
Standardwert
Beschreibung

folder_path

str/Path

Erforderlich

Pfad zum Ordner mit Bildern

project_name

str

Automatisch generiert

Projektname

camera

str

None

Kameravorlage

indices

list

["NDVI"]

Zu berechnende Indizes

vignette_correction

bool

True

Vignettenkorrektur aktivieren

reflectance_calibration

bool

True

Reflektionskalibrierung aktivieren

export_format

str

„TIFF (16-Bit)“

Ausgabeformat

mode

str

"parallel"

Verarbeitungsmodus

progress_callback

callable

None

Fortschritts-Callback

Rückgabewerte: dict – VerarbeitungsergebnisseBeispiel:


Unterstützung von Kontextmanagern

SDK unterstützt Kontextmanager für die automatische Bereinigung:


Vollständige Beispiele

Beispiel 1: Grundlegende Verarbeitung

Verarbeiten Sie einen Ordner mit Standardeinstellungen:


Beispiel 2: Benutzerdefinierter Workflow

Volle Kontrolle über die Verarbeitungs-Pipeline:


Beispiel 3: Stapelverarbeitung mehrerer Ordner

Verarbeiten Sie mehrere Flugdatensätze:


Beispiel 4: Integration der Forschungspipeline

Integrieren Sie Chloros in die Datenanalyse:


Beispiel 5: Benutzerdefinierte Fortschrittsüberwachung

Erweiterte Fortschrittsverfolgung mit Protokollierung:


Beispiel 6: Fehlerbehandlung

Robuste Fehlerbehandlung für den Produktionseinsatz:


Beispiel 7: Kontoverwaltung und Abmeldung

Verwaltung von Anmeldedaten per Programm:


Beispiel 8: Befehlszeilentool

Erstellen Sie mit SDK ein benutzerdefiniertes CLI-Tool:

Verwendung:


Ausnahmebehandlung

SDK bietet spezifische Ausnahmeklassen für verschiedene Fehlertypen:

Ausnahmehierarchie

Beispiele für Ausnahmen


Fortgeschrittene Themen

Benutzerdefinierte Backend-Konfiguration

Verwenden Sie einen benutzerdefinierten Backend-Speicherort oder eine benutzerdefinierte Konfiguration:

Nicht blockierende Verarbeitung

Starten Sie die Verarbeitung und fahren Sie mit anderen Aufgaben fort:

Speicherverwaltung

Bei großen Datensätzen in Stapeln verarbeiten:


Fehlerbehebung

Backend startet nicht

Problem: SDK kann das Backend nicht starten.Lösungen:

  1. Überprüfen Sie, ob Chloros Desktop installiert ist:

  1. Überprüfen Sie, ob Windows Firewall nicht blockiert

  2. Versuchen Sie den manuellen Backend-Pfad:


Lizenz nicht erkanntProblem: SDK warnt vor fehlender LizenzLösungen:

  1. Öffnen Sie Chloros, Chloros (Browser) oder Chloros CLI und melden Sie sich an.

  2. Überprüfen Sie, ob die Lizenz im Cache gespeichert ist:

  1. Wenn Probleme mit den Anmeldedaten auftreten, löschen Sie die im Cache gespeicherten Anmeldedaten und melden Sie sich erneut an:

  1. Wenden Sie sich an den Support: info@mapir.camera


ImportfehlerProblem: ModuleNotFoundError: No module named 'chloros_sdk'Lösungen:


Zeitüberschreitung bei der VerarbeitungProblem: Zeitüberschreitung bei der VerarbeitungLösungen:

  1. Zeitüberschreitung erhöhen:

  1. Verarbeiten Sie kleinere Stapel.

  2. Überprüfen Sie den verfügbaren Speicherplatz.

  3. Überwachen Sie die Systemressourcen.


Port bereits in VerwendungProblem: Backend-Port 5000 belegt.Lösungen:

Oder suchen und schließen Sie den konfliktauslösenden Prozess:


Tipps zur Leistungsoptimierung

Optimieren Sie die Verarbeitungsgeschwindigkeit

  1. Verwenden Sie den Parallelmodus (erfordert Chloros+)

  1. Reduzieren Sie die Ausgabeauflösung (sofern akzeptabel)

  1. Deaktivieren Sie unnötige Indizes

  1. Verarbeiten Sie auf SSD (nicht HDD)***

Speicheroptimierung

Für große Datensätze:


Hintergrundverarbeitung

Python für andere Aufgaben freigeben:


Integrationsbeispiele

Django-Integration

Flask API

Jupyter Notebook


FAQ

F: Benötigt SDK eine Internetverbindung?

A: Nur für die erstmalige Lizenzaktivierung. Nach der Anmeldung über Chloros, Chloros (Browser) oder Chloros CLI wird die Lizenz lokal zwischengespeichert und funktioniert 30 Tage lang offline.***

F: Kann ich SDK auf einem Server ohne GUI verwenden?A: Ja! Voraussetzungen:

  • Windows Server 2016 oder höher

  • Chloros installiert (einmalig)

  • Lizenz auf einem beliebigen Rechner aktiviert (zwischengespeicherte Lizenz auf Server kopiert)


F: Was ist der Unterschied zwischen Desktop, CLI und SDK?

Funktion
Desktop-GUI
CLI Befehlszeile
Python SDK

Schnittstelle

Point-and-Click

Befehl

Python API

Am besten geeignet für

Visuelle Arbeit

Skripting

Integration

Automatisierung

Begrenzt

Gut

Ausgezeichnet

Flexibilität

Grundlegend

Gut

Maximal

Lizenz

Chloros+

Chloros+

Chloros+

F: Kann ich mit SDK erstellte Apps vertreiben?A: Der SDK-Code kann in Ihre Anwendungen integriert werden, aber:

  • Endbenutzer benötigen Chloros

  • Endbenutzer benötigen aktive Chloros+-Lizenzen

  • Für den kommerziellen Vertrieb ist eine OEM-Lizenz erforderlich.

Wenden Sie sich für OEM-Anfragen an info@mapir.camera.


F: Wie aktualisiere ich SDK?


F: Wo werden die verarbeiteten Bilder gespeichert?

Standardmäßig im Projektpfad:


F: Kann ich Bilder aus Python-Skripten verarbeiten, die nach einem Zeitplan ausgeführt werden?A: Ja! Verwenden Sie den Windows Taskplaner mit Python-Skripten:

Planen Sie über den Taskplaner eine tägliche Ausführung.


F: Unterstützt SDK async/await?A: Die aktuelle Version ist synchron. Für asynchrones Verhalten verwenden Sie wait=False oder führen Sie es in einem separaten Thread aus:


F: Wie wechsle ich zwischen verschiedenen Chloros+-Konten?A: Verwenden Sie die Methode logout(), um zwischengespeicherte Anmeldedaten zu löschen, und melden Sie sich dann mit dem neuen Konto erneut an:

Melden Sie sich nach dem Abmelden über die GUI, den Browser oder CLI mit dem neuen Konto an, bevor Sie SDK erneut verwenden.


Hilfe erhalten

Dokumentation

  • API-Referenz: Diese Seite

Support-Kanäle

Beispielcode

Alle hier aufgeführten Beispiele sind getestet und einsatzbereit. Kopieren Sie sie und passen Sie sie an Ihren Anwendungsfall an.


SDK erfordert ein aktives Chloros+-Abonnement. Die unbefugte Nutzung, Verbreitung oder Änderung ist untersagt.

Zuletzt aktualisiert