API : Python SDK

Το Chloros Python SDK παρέχει προγραμματιστική πρόσβαση στον μηχανισμό επεξεργασίας εικόνων Chloros, επιτρέποντας αυτοματοποίηση, προσαρμοσμένες ροές εργασίας και απρόσκοπτη ενσωμάτωση με τις εφαρμογές Python και τις ερευνητικές σας διαδικασίες.

Βασικά χαρακτηριστικά

  • 🐍 Εγγενές Python - Καθαρό, Pythonic API για επεξεργασία εικόνων

  • 🔧 Πλήρης πρόσβαση στο API - Πλήρης έλεγχος της επεξεργασίας Chloros

  • 🚀 Αυτοματοποίηση - Δημιουργήστε προσαρμοσμένες ροές εργασίας μαζικής επεξεργασίας

  • 🔗 Ενσωμάτωση - Ενσωματώστε το Chloros σε υπάρχουσες εφαρμογές Python

  • 📊 Έτοιμο για έρευνα - Ιδανικό για ροές επιστημονικής ανάλυσης

  • Παράλληλη επεξεργασία - Κλιμακώνεται ανάλογα με τους πυρήνες της CPU σας (Chloros+)

Απαιτήσεις

Απαίτηση
Λεπτομέρειες

Chloros Εγκατεστημένο

Windows: Πρόγραμμα εγκατάστασης για επιτραπέζιους υπολογιστές; Linux: Πακέτο .deb

Λειτουργικό σύστημα

Windows 10/11 (64-bit), Linux x86_64 (amd64), Linux arm64 (NVIDIA Jetson JetPack 6)

Python

Python 3.7 ή νεότερη έκδοση

Μνήμη

Ελάχιστη μνήμη RAM 8 GB (συνιστάται 16 GB)

Διαδίκτυο

Απαιτείται για την ενεργοποίηση της άδειας χρήσης

circle-exclamation

Γρήγορη εκκίνηση

Εγκατάσταση

Εγκαταστήστε μέσω pip:

circle-info

Αρχική ρύθμιση: Πριν χρησιμοποιήσετε το SDK, ενεργοποιήστε την άδεια χρήσης Chloros+ ανοίγοντας το Chloros, Chloros (Πρόγραμμα περιήγησης) ή το Chloros CLI και συνδεθείτε με τα διαπιστευτήριά σας. Αυτό χρειάζεται να γίνει μόνο μία φορά. Στο Linux (χωρίς GUI), χρησιμοποιήστε: chloros-cli login user@example.com 'password'

Βασική χρήση

Επεξεργαστείτε έναν φάκελο με λίγες μόνο γραμμές:

circle-info

Διαπλατφορμικές διαδρομές: Τα παραδείγματα κώδικα σε αυτή τη σελίδα χρησιμοποιούν διαδρομές τύπου Windows (π.χ., C:\\DroneImages\\Flight001). Στο Linux, χρησιμοποιήστε διαδρομές τύπου Linux (π.χ., /home/user/drone_images/flight001 ή ~/drone_images/flight001). Το SDK λειτουργεί με τον ίδιο τρόπο και στις δύο πλατφόρμες.

Πλήρης έλεγχος

Για προηγμένες ροές εργασίας:


Οδηγός εγκατάστασης

Προαπαιτούμενα

Πριν εγκαταστήσετε το SDK, βεβαιωθείτε ότι διαθέτετε:

  1. Εγκατεστημένο το Chloros — Windows: Πρόγραμμα εγκατάστασης για επιτραπέζιους υπολογιστές (λήψη); Linux: Πακέτο .deb (Εγκατάσταση Linux)

  2. Python 3.7+ εγκατεστημένο (python.orgarrow-up-right)

  3. Ενεργή άδεια Chloros+ (αναβάθμισηarrow-up-right)

Εγκατάσταση μέσω pip

Τυπική εγκατάσταση:

Με υποστήριξη παρακολούθησης προόδου:

Εγκατάσταση ανάπτυξης:

Επαλήθευση εγκατάστασης

Ελέγξτε ότι το SDK έχει εγκατασταθεί σωστά:


Αρχική ρύθμιση

Ενεργοποίηση άδειας χρήσης

Το SDK χρησιμοποιεί την ίδια άδεια χρήσης με τα Chloros, Chloros (Browser) και Chloros CLI. Ενεργοποιήστε μία φορά μέσω του GUI ή του CLI:Windows:Ανοίξτε τοChloros ή το Chloros (Browser) και συνδεθείτε στην καρτέλα ή χρησιμοποιήστε το CLI.Linux: Χρησιμοποιήστε το CLI (δεν διατίθεται GUI):

Η άδεια αποθηκεύεται τοπικά και παραμένει ενεργή μετά από επανεκκινήσεις.

circle-check
circle-info

Αποσύνδεση: Οι χρήστες του SDK μπορούν να διαγράψουν προγραμματικά τα αποθηκευμένα διαπιστευτήρια χρησιμοποιώντας τη μέθοδο logout(). Δείτε τη μέθοδο logout() στην Αναφορά API.

Δοκιμή σύνδεσης

Επαληθεύστε ότι το SDK μπορεί να συνδεθεί με το Chloros:


Αναφορά API

Κλάση ChlorosLocal

Κύρια κλάση για τοπική επεξεργασία εικόνων Chloros.

Κατασκευαστής

Παράμετροι:

Παράμετρος
Τύπος
Προεπιλογή
Περιγραφή

api_url

str

"http://localhost:5000"

URL του τοπικού Chloros backend

auto_start_backend

bool

True

Αυτόματη εκκίνηση του backend αν χρειαστεί

backend_exe

str

None (αυτόματη ανίχνευση)

Διαδρομή προς το εκτελέσιμο του backend

timeout

int

30

Χρονικό όριο αιτήματος σε δευτερόλεπτα

backend_startup_timeout

int

60

Χρονικό όριο εκκίνησης backend (δευτερόλεπτα)

Παραδείγματα:

circle-info

Αυτόματη ανίχνευση πολλαπλών πλατφορμών: Το SDK δοκιμάζει αυτόματα τη σωστή διαδρομή backend για την πλατφόρμα σας:

  • Windows: C:\Program Files\MAPIR\Chloros\resources\backend\chloros-backend.exe

  • Linux (.deb): /usr/lib/chloros/chloros-backend

  • Linux (χειροκίνητη εγκατάσταση): /opt/mapir/chloros/backend/chloros-backend


Μέθοδοι

create_project(project_name, camera=None)

Δημιουργία νέου έργου Chloros.

Παράμετροι:

Παράμετρος
Τύπος
Απαιτείται
Περιγραφή

project_name

str

Ναι

Όνομα για το έργο

camera

str

Όχι

Πρότυπο κάμερας (π.χ., "Survey3N_RGN", "Survey3W_OCN")

Επιστρέφει: dict - Απόκριση δημιουργίας έργουΠαράδειγμα:


import_images(folder_path, recursive=False)

Εισαγωγή εικόνων από φάκελο.

Παράμετροι:

Παράμετρος
Τύπος
Απαιτείται
Περιγραφή

folder_path

str/Path

Ναι

Διαδρομή προς φάκελο με εικόνες

recursive

bool

Όχι

Αναζήτηση υποφακέλων (προεπιλογή: False)

Επιστρέφει: dict - Αποτελέσματα εισαγωγής με αριθμό αρχείωνΠαράδειγμα:


configure(**settings)

Διαμόρφωση ρυθμίσεων επεξεργασίας.

Παράμετροι:

Παράμετρος
Τύπος
Προεπιλογή
Περιγραφή

debayer

str

"Standard (Fast, Medium Quality)"

Μέθοδος Debayer

vignette_correction

bool

True

Ενεργοποίηση διόρθωσης βινιέτας

reflectance_calibration

bool

True

Ενεργοποίηση βαθμονόμησης ανακλαστικότητας

indices

list

None

Δείκτες βλάστησης προς υπολογισμό

export_format

str

"TIFF (16-bit)"

Μορφή εξόδου

ppk

bool

False

Ενεργοποίηση διορθώσεων PPK

custom_settings

dict

None

Προηγμένες προσαρμοσμένες ρυθμίσεις

Μορφές εξαγωγής:

  • "TIFF (16-bit)" - Συνιστάται για GIS/φωτογραμμετρία

  • "TIFF (32-bit, Percent)" - Επιστημονική ανάλυση

  • "PNG (8-bit)" - Οπτική επιθεώρηση

  • "JPG (8-bit)" - Συμπιεσμένη έξοδος

**Διαθέσιμοι δείκτες:**NDVI, NDRE, GNDVI, OSAVI, CIG, EVI, SAVI, MSAVI, MTVI2, και άλλα.Παράδειγμα:


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

Επεξεργασία των εικόνων του έργου.

Παράμετροι:

Παράμετρος
Τύπος
Προεπιλογή
Περιγραφή

mode

str

"parallel"

Λειτουργία επεξεργασίας: "parallel" ή "serial"

wait

bool

True

Αναμονή για ολοκλήρωση

progress_callback

callable

None

Συνάρτηση επιστροφής κλήσης προόδου (progress, msg)

poll_interval

float

2.0

Διάστημα ελέγχου για την πρόοδο (δευτερόλεπτα)

Επιστρέφει: dict - Αποτελέσματα επεξεργασίας

circle-exclamation

Παράδειγμα:


get_config()

Λήψη της τρέχουσας διαμόρφωσης του έργου.

Επιστρέφει: dict - Τρέχουσα διαμόρφωση έργουΠαράδειγμα:


get_status()

Λήψη πληροφοριών κατάστασης του backend, συμπεριλαμβανομένης της προόδου επεξεργασίας ανά νήμα.

Επιστρέφει: dict - Κατάσταση του backend με την ακόλουθη δομή:

Παράδειγμα:


shutdown_backend()

Τερματισμός του backend (εάν ξεκίνησε από το SDK).

Παράδειγμα:


logout()

Εκκαθάριση των αποθηκευμένων διαπιστευτηρίων από το τοπικό σύστημα.

Περιγραφή:

Αποσυνδέεται προγραμματικά αφαιρώντας τα αποθηκευμένα διαπιστευτήρια πιστοποίησης. Αυτό είναι χρήσιμο για:

  • Εναλλαγή μεταξύ διαφορετικών λογαριασμών Chloros+

  • Εκκαθάριση διαπιστευτηρίων σε αυτοματοποιημένα περιβάλλοντα

  • Λόγους ασφαλείας (π.χ. αφαίρεση διαπιστευτηρίων πριν από την απεγκατάσταση)

Επιστρέφει: dict - Αποτέλεσμα της λειτουργίας αποσύνδεσηςΠαράδειγμα:

circle-info

Απαιτείται εκ νέου έλεγχος ταυτότητας: Μετά την κλήση της logout(), πρέπει να συνδεθείτε ξανά μέσω της Chloros, της Chloros (Πρόγραμμα περιήγησης) ή της Chloros CLI πριν χρησιμοποιήσετε την SDK.


Λειτουργίες ευκολίας

process_folder(folder_path, **options)

Λειτουργία ευκολίας μίας γραμμής για την επεξεργασία ενός φακέλου.

Παράμετροι:

Παράμετρος
Τύπος
Προεπιλογή
Περιγραφή

folder_path

str/Path

Απαιτείται

Διαδρομή προς φάκελο με εικόνες

project_name

str

Αυτόματη δημιουργία

Όνομα έργου

camera

str

None

Πρότυπο κάμερας

indices

λίστα

["NDVI"]

Δείκτες προς υπολογισμό

vignette_correction

bool

True

Ενεργοποίηση διόρθωσης βινιέτας

reflectance_calibration

bool

True

Ενεργοποίηση βαθμονόμησης ανακλαστικότητας

export_format

str

"TIFF (16-bit)"

Μορφή εξόδου

mode

str

"parallel"

Λειτουργία επεξεργασίας

progress_callback

callable

None

Επιστροφή κλήσης προόδου

Επιστρέφει: dict - Αποτελέσματα επεξεργασίαςΠαράδειγμα:


Υποστήριξη διαχειριστή περιβάλλοντος

Το SDK υποστηρίζει διαχειριστές περιβάλλοντος για αυτόματο καθαρισμό:


Πλήρη παραδείγματα

circle-info

Χρήστες Linux: Όλα τα παρακάτω παραδείγματα χρησιμοποιούν διαδρομές Windows. Αντικαταστήστε τις διαδρομές C:\\... με τις δικές σας διαδρομές Linux (π.χ., /home/user/... ή ~/...). Όλες οι λειτουργίες του SDK είναι πανομοιότυπες σε όλες τις πλατφόρμες.

Παράδειγμα 1: Βασική επεξεργασία

Επεξεργασία φακέλου με τις προεπιλεγμένες ρυθμίσεις:


Παράδειγμα 2: Προσαρμοσμένη ροή εργασίας

Πλήρης έλεγχος της διαδικασίας επεξεργασίας:


Παράδειγμα 3: Μαζική επεξεργασία πολλαπλών φακέλων

Επεξεργασία πολλαπλών συνόλων δεδομένων πτήσεων:


Παράδειγμα 4: Ενσωμάτωση στη ροή εργασίας έρευνας

Ενσωμάτωση του Chloros στην ανάλυση δεδομένων:


Παράδειγμα 5: Προσαρμοσμένη παρακολούθηση προόδου

Προηγμένη παρακολούθηση προόδου με καταγραφή:


Παράδειγμα 6: Διαχείριση σφαλμάτων

Αξιόπιστη διαχείριση σφαλμάτων για χρήση σε περιβάλλον παραγωγής:


Παράδειγμα 7: Διαχείριση λογαριασμού και αποσύνδεση

Διαχείριση διαπιστευτηρίων μέσω προγραμματισμού:


Παράδειγμα 8: Εργαλείο γραμμής εντολών

Δημιουργία προσαρμοσμένου εργαλείου CLI με το SDK:

Χρήση:


Χειρισμός εξαιρέσεων

Το SDK παρέχει συγκεκριμένες κλάσεις εξαιρέσεων για διαφορετικούς τύπους σφαλμάτων:

Ιεραρχία εξαιρέσεων

Παραδείγματα εξαιρέσεων


Προχωρημένα θέματα

Προσαρμοσμένη διαμόρφωση backend

Χρησιμοποιήστε μια προσαρμοσμένη θέση ή διαμόρφωση backend:

Επεξεργασία χωρίς μπλοκάρισμα

Ξεκινήστε την επεξεργασία και συνεχίστε με άλλες εργασίες:

Διαχείριση μνήμης

Για μεγάλα σύνολα δεδομένων, επεξεργαστείτε τα κατά παρτίδες:


Αντιμετώπιση προβλημάτων

Το backend δεν ξεκινά

Πρόβλημα: Το SDK δεν ξεκινά το backendΛύσεις:

  1. Βεβαιωθείτε ότι το Chloros είναι εγκατεστημένο:

  1. Ελέγξτε το τείχος προστασίας (Windows) ή τη διαθεσιμότητα της θύρας (Linux: lsof -i :5000)

  2. Δοκιμάστε τη διαδρομή του backend χειροκίνητα:


Δεν εντοπίστηκε άδεια χρήσηςΠρόβλημα: Το SDK προειδοποιεί για έλλειψη άδειας χρήσηςΛύσεις:

  1. Ανοίξτε το Chloros, το Chloros (Πρόγραμμα περιήγησης) ή Chloros CLI και συνδεθείτε.

  2. Βεβαιωθείτε ότι η άδεια χρήσης έχει αποθηκευτεί στην προσωρινή μνήμη:

  1. Εάν αντιμετωπίζετε προβλήματα με τα διαπιστευτήρια, διαγράψτε τα αποθηκευμένα διαπιστευτήρια και συνδεθείτε ξανά:

  1. Επικοινωνήστε με την υποστήριξη: info@mapir.camera


Σφάλματα εισαγωγήςΠρόβλημα: ModuleNotFoundError: No module named 'chloros_sdk'Λύσεις:


Χρονικό όριο επεξεργασίαςΠρόβλημα: Χρονικό όριο επεξεργασίαςΛύσεις:

  1. Αυξήστε το χρονικό όριο:

  1. Επεξεργαστείτε μικρότερες παρτίδες

  2. Ελέγξτε τον διαθέσιμο χώρο στο δίσκο

  3. Παρακολουθήστε τους πόρους του συστήματος


Η θύρα χρησιμοποιείται ήδηΠρόβλημα: Η θύρα 5000 του backend είναι κατειλημμένηΛύσεις:

Ή εντοπίστε και κλείστε τη διεργασία που προκαλεί τη σύγκρουση:


Συμβουλές απόδοσης

Βελτιστοποίηση ταχύτητας επεξεργασίας

  1. Χρησιμοποιήστε παράλληλη λειτουργία (απαιτείται Chloros+)

  1. Μειώστε την ανάλυση εξόδου (εάν είναι αποδεκτό)

  1. Απενεργοποιήστε περιττούς δείκτες

  1. Επεξεργασία σε SSD (όχι σε HDD)***

Βελτιστοποίηση μνήμης

Για μεγάλα σύνολα δεδομένων:


Επεξεργασία στο παρασκήνιο

Απελευθερώστε Python για άλλες εργασίες:


Παραδείγματα ενσωμάτωσης

Ενσωμάτωση Django

Flask API

Jupyter Notebook


Συχνές ερωτήσεις

Ε: Το SDK απαιτεί σύνδεση στο διαδίκτυο;

Α: Μόνο για την αρχική ενεργοποίηση της άδειας χρήσης. Αφού συνδεθείτε μέσω του Chloros, του Chloros (Browser) ή του Chloros CLI, η άδεια αποθηκεύεται τοπικά και λειτουργεί εκτός σύνδεσης για 30 ημέρες.***

Ε: Μπορώ να χρησιμοποιήσω το SDK σε διακομιστή χωρίς GUI;Α: Ναι! Το SDK λειτουργεί χωρίς οθόνη τόσο σε διακομιστές Windows όσο και Linux.Linux (συνιστάται για χρήση χωρίς οθόνη):

  • Εγκατάσταση μέσω του πακέτου .deb

  • Ενεργοποίηση άδειας χρήσης: chloros-cli login user@example.com 'password'

Διακομιστής Windows:

  • Διακομιστής Windows 2016 ή νεότερη έκδοση

  • Εγκατεστημένο το Chloros (μία φορά)

  • Άδεια ενεργοποιημένη μέσω CLI ή σε οποιονδήποτε υπολογιστή


Ε: Ποια είναι η διαφορά μεταξύ Desktop, CLI και SDK;

Λειτουργία
Desktop GUI
CLI Γραμμή εντολών
Python SDK

Διεπαφή

Σημείο-κλικ

Εντολή

Python API

Κατάλληλο για

Οπτική εργασία

Σενάρια

Ενσωμάτωση

Αυτοματοποίηση

Περιορισμένη

Καλή

Εξαιρετική

Ευελιξία

Βασική

Καλή

Μέγιστη

Άδεια χρήσης

Chloros+

Chloros+

Chloros+

Ε: Μπορώ να διανέμω εφαρμογές που έχουν δημιουργηθεί με το SDK;Α: Ο κώδικας SDK μπορεί να ενσωματωθεί στις εφαρμογές σας, αλλά:

  • Οι τελικοί χρήστες πρέπει να έχουν εγκατεστημένο το Chloros

  • Οι τελικοί χρήστες πρέπει να διαθέτουν ενεργές άδειες Chloros+

  • Η εμπορική διανομή απαιτεί άδεια OEM

Επικοινωνήστε με το info@mapir.camera για ερωτήσεις σχετικά με το OEM.


Ε: Πώς μπορώ να ενημερώσω το SDK;


Ε: Πού αποθηκεύονται οι επεξεργασμένες εικόνες;

Από προεπιλογή, στη Διαδρομή Έργου :


Ε: Μπορώ να επεξεργαστώ εικόνες από σενάρια Python που εκτελούνται σύμφωνα με χρονοδιάγραμμα;Α: Ναι! Χρησιμοποιήστε τον προγραμματιστή του λειτουργικού σας συστήματος με σενάρια Python:

Windows: Προγραμματίστε μέσω του Task Scheduler για καθημερινή εκτέλεση.Linux: Προγραμματίστε μέσω cron:


Ε: Υποστηρίζει το SDK async/await;Α: Η τρέχουσα έκδοση είναι σύγχρονη. Για ασύγχρονη συμπεριφορά, χρησιμοποιήστε το wait=False ή εκτελέστε το σε ξεχωριστό νήμα:


Ε: Πώς μπορώ να εναλλάσσω διαφορετικούς λογαριασμούς Chloros+;Α: Χρησιμοποιήστε τη μέθοδο logout() για να διαγράψετε τα αποθηκευμένα διαπιστευτήρια και, στη συνέχεια, συνδεθείτε ξανά με τον νέο λογαριασμό:

Μετά την αποσύνδεση, πιστοποιηθείτε με τον νέο λογαριασμό μέσω του GUI, του προγράμματος περιήγησης ή του CLI πριν χρησιμοποιήσετε ξανά το SDK.


Λήψη βοήθειας

Τεκμηρίωση

  • Αναφορά API: Αυτή η σελίδα

Κανάλια υποστήριξης

Δείγματα κώδικα

Όλα τα παραδείγματα που αναφέρονται εδώ έχουν δοκιμαστεί και είναι έτοιμα για παραγωγή. Αντιγράψτε τα και προσαρμόστε τα για τη δική σας περίπτωση χρήσης.


Άδεια χρήσηςΙδιόκτητο λογισμικό - Πνευματικά δικαιώματα (c) 2025 MAPIR Inc.

Το SDK απαιτεί ενεργή συνδρομή Chloros+. Απαγορεύεται η μη εξουσιοδοτημένη χρήση, διανομή ή τροποποίηση.

Last updated