API : Python SDK

Chloros Python SDK oferă acces programatic la motorul de procesare a imaginilor Chloros, permițând automatizarea, fluxurile de lucru personalizate și integrarea perfectă cu aplicațiile și canalele de cercetare Python.

Caracteristici cheie

  • 🐍 Python nativ - API curat, Pythonic pentru procesarea imaginilor

  • 🔧 Acces complet la API - Control complet asupra procesării Chloros

  • 🚀 Automatizare - Creați fluxuri de lucru personalizate pentru procesarea în lot

  • 🔗 Integrare - Încorporați Chloros în aplicațiile Python existente

  • 📊 Gata pentru cercetare - Perfect pentru fluxurile de analiză științifică

  • Procesare paralelă - Se adaptează la nucleele CPU (Chloros+)

Cerințe

Cerință
Detalii

Chloros Desktop

Trebuie instalat local

Sistem de operare

Windows 10/11 (64 biți)

Python

Python 3.7 sau o versiune superioară

Memorie

Minim 8 GB RAM (recomandat 16 GB)

Internet

Necesar pentru activarea licenței

circle-info

Cerințe de licență: Python SDK necesită un abonament Chloros+ plătit pentru accesul la API. Planurile standard (gratuite) nu au acces la API/SDK. Vizitați https://cloud.mapir.camera/pricingarrow-up-right pentru a face upgrade.

Început rapid

Instalare

Instalați prin pip:

circle-info

Configurare inițială: Înainte de a utiliza SDK, activați licența Chloros+ deschizând Chloros, Chloros (Browser) sau Chloros CLI și conectându-vă cu datele dvs. de autentificare. Acest lucru trebuie făcut o singură dată.

Utilizare de bază

Procesați un folder cu doar câteva linii:

Control complet

Pentru fluxuri de lucru avansate:


Ghid de instalare

Cerințe preliminare

Înainte de a instala SDK, asigurați-vă că aveți:

  1. Chloros Desktop instalat (descărcare)

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

  3. Licență Chloros+ activă (upgradearrow-up-right)

Instalare prin pip

Instalare standard:

Cu suport pentru monitorizarea progresului:

Instalare pentru dezvoltare:

Verificarea instalării

Testați dacă SDK este instalat corect:


Configurare inițială

Activarea licenței

SDK utilizează aceeași licență ca Chloros, Chloros (Browser) și Chloros CLI. Activați o singură dată prin GUI sau CLI:

  1. Deschideți Chloros sau Chloros (Browser)și conectați-vă la fila Utilizator . Sau deschidețiCLI.

  2. Introduceți datele de autentificare Chloros+ și conectați-vă

  3. Licența este stocată local (persistă după repornire)

circle-info

Configurare unică: După conectarea prin GUI sau CLI, SDK utilizează automat licența stocată în cache. Nu este necesară nicio autentificare suplimentară!

circle-info

Deconectare: Utilizatorii SDK pot șterge programatic datele de autentificare stocate în cache utilizând metoda logout(). Consultați metoda logout() în Referința API.

Testați conexiunea

Verificați dacă SDK se poate conecta la Chloros:


Referință API

Clasa ChlorosLocal

Clasa principală pentru procesarea locală a imaginilor Chloros.

Constructor

Parametri:

Parametru
Tip
Implicit
Descriere

api_url

str

"http://localhost:5000"

URL al backend-ului local Chloros

auto_start_backend

bool

True

Pornește automat backend-ul dacă este necesar

backend_exe

str

None (detectare automată)

Calea către executabilul backend

timeout

int

30

Timp de expirare a cererii în secunde

backend_startup_timeout

int

60

Timp de expirare pentru pornirea backend-ului (secunde)

Exemple:


Metode

create_project(project_name, camera=None)

Creați un nou proiect Chloros.

Parametri:

Parametru
Tip
Obligatoriu
Descriere

project_name

str

Da

Numele proiectului

camera

str

Nu

Șablon cameră (de ex., „Survey3N_RGN”, „Survey3W_OCN”)

Returnează: dict - Răspuns la crearea proiectuluiExemplu:


import_images(folder_path, recursive=False)

Importă imagini dintr-un folder.

Parametri:

Parametru
Tip
Obligatoriu
Descriere

folder_path

str/Path

Da

Calea către folderul cu imagini

recursive

bool

Nu

Căutare în subfoldere (implicit: Fals)

Returnează: dict - Rezultate import cu numărul de fișiereExemplu:


configure(**settings)

Configurează setările de procesare.

Parametri:

Parametru
Tip
Implicit
Descriere

debayer

str

„Calitate înaltă (mai rapid)”

Metoda Debayer

vignette_correction

bool

True

Activare corecție vignetă

reflectance_calibration

bool

True

Activare calibrare reflectanță

indices

listă

None

Indici de vegetație de calculat

export_format

str

„TIFF (16 biți)”

Format de ieșire

ppk

bool

False

Activare corecții PPK

custom_settings

dict

None

Setări personalizate avansate

Formate de export:

  • "TIFF (16-bit)" - Recomandat pentru GIS/fotogrammetrie

  • "TIFF (32-bit, Percent)" - Analiză științifică

  • "PNG (8-bit)" - Inspecție vizuală

  • "JPG (8-bit)" - Ieșire comprimată

**Indici disponibili:**NDVI, NDRE, GNDVI, OSAVI, CIG, EVI, SAVI, MSAVI, MTVI2 și altele.Exemplu:


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

Procesează imaginile proiectului.

Parametri:

Parametru
Tip
Implicit
Descriere

mode

str

"parallel"

Mod de procesare: „parallel” sau „serial”

wait

bool

True

Așteaptă finalizarea

progress_callback

callable

None

Funcție de apel invers pentru progres (progress, msg)

poll_interval

float

2.0

Interval de interogare pentru progres (secunde)

Returnează: dict - Rezultate procesare

circle-info

Mod paralel: Necesită licență Chloros+. Se scalează automat la nucleele procesorului (până la 16 procesoare).

Exemplu:


get_config()

Obține configurația curentă a proiectului.

Returnează: dict - Configurația curentă a proiectuluiExemplu:


get_status()

Obține informații despre starea backend-ului.

Returnează: dict - Starea backend-uluiExemplu:


shutdown_backend()

Opriți backend-ul (dacă a fost pornit de SDK).

Exemplu:


logout()

Ștergeți datele de autentificare din cache-ul sistemului local.

Descriere:

Se deconectează programatic prin eliminarea datelor de autentificare din cache. Acest lucru este util pentru:

  • Comutarea între diferite conturi Chloros+

  • Ștergerea datelor de autentificare în medii automatizate

  • Scopuri de securitate (de exemplu, eliminarea datelor de autentificare înainte de dezinstalare)

Returnează: dict - Rezultatul operațiunii de deconectareExemplu:

circle-info

Reautentificare necesară: După apelarea logout(), trebuie să vă autentificați din nou prin Chloros, Chloros (browser) sau Chloros CLI înainte de a utiliza SDK.


Funcții utile

process_folder(folder_path, **options)

Funcție utilitară pe o singură linie pentru procesarea unui folder.

Parametri:

Parametru
Tip
Implicit
Descriere

folder_path

str/Path

Obligatoriu

Calea către folderul cu imagini

project_name

str

Auto-generat

Numele proiectului

camera

str

None

Șablon cameră

indices

list

["NDVI"]

Indici de calculat

vignette_correction

bool

True

Activare corecție vignetă

reflectance_calibration

bool

True

Activare calibrare reflectanță

export_format

str

"TIFF (16 biți)"

Format de ieșire

mode

str

"parallel"

Mod de procesare

progress_callback

callable

None

Apel invers de progres

Returnează: dict - Rezultate procesareExemplu:


Suport manager context

SDK suportă manageri de context pentru curățare automată:


Exemple complete

Exemplul 1: Prelucrare de bază

Prelucrați un folder cu setările implicite:


Exemplul 2: Flux de lucru personalizat

Control complet asupra fluxului de prelucrare:


Exemplul 3: Procesare în lot a mai multor foldere

Procesarea mai multor seturi de date de zbor:


Exemplul 4: Integrarea fluxului de cercetare

Integrarea Chloros cu analiza datelor:


Exemplul 5: Monitorizarea personalizată a progresului

Urmărirea avansată a progresului cu înregistrare:


Exemplul 6: Gestionarea erorilor

Gestionarea robustă a erorilor pentru utilizare în producție:


Exemplul 7: Gestionarea contului și deconectarea

Gestionarea programată a datelor de autentificare:


Exemplul 8: Instrument de linie de comandă

Creați un instrument personalizat CLI cu SDK:

Utilizare:


Gestionarea excepțiilor

SDK oferă clase de excepții specifice pentru diferite tipuri de erori:

Ierarhia excepțiilor

Exemple de excepții


Subiecte avansate

Configurare personalizată a backend-ului

Utilizați o locație sau o configurare personalizată a backend-ului:

Procesare fără blocare

Începeți procesarea și continuați cu alte sarcini:

Gestionarea memoriei

Pentru seturi de date mari, procesați în loturi:


Depanare

Backend-ul nu pornește

Problemă: SDK nu reușește să pornească backend-ul.Soluții:

  1. Verificați dacă Chloros Desktop este instalat:

  1. Verificați dacă Windows Firewall nu blochează

  2. Încercați calea manuală a backend-ului:


Licența nu este detectatăProblemă: SDK avertizează că licența lipseșteSoluții:

  1. Deschideți Chloros, Chloros (browser) sau Chloros CLI și conectați-vă.

  2. Verificați dacă licența este stocată în memoria cache:

  1. Dacă întâmpinați probleme cu datele de autentificare, ștergeți datele stocate în memoria cache și conectați-vă din nou:

  1. Contactați serviciul de asistență: info@mapir.camera


Erori de importProblemă: ModuleNotFoundError: No module named 'chloros_sdk'Soluții:


Timp de expirare al procesăriiProblemă: Timpul de expirare al procesăriiSoluții:

  1. Măriți timpul de expirare:

  1. Procesați loturi mai mici

  2. Verificați spațiul disponibil pe disc

  3. Monitorizați resursele sistemului


Port deja utilizatProblemă: Portul backend 5000 ocupatSoluții:

Sau găsiți și închideți procesul conflictual:


Sfaturi de performanță

Optimizați viteza de procesare

  1. Utilizați modul paralel (necesită Chloros+)

  1. Reduceți rezoluția de ieșire (dacă este acceptabil)

  1. Dezactivați indicii inutili

  1. Procesați pe SSD (nu pe HDD)***

Optimizarea memoriei

Pentru seturi de date mari:


Procesare în fundal

Eliberați Python pentru alte sarcini:


Exemple de integrare

Integrare Django

Flask API

Jupyter Notebook


Întrebări frecvente

Î: SDK necesită o conexiune la internet?

R: Doar pentru activarea inițială a licenței. După conectarea prin Chloros, Chloros (browser) sau Chloros CLI, licența este stocată local și funcționează offline timp de 30 de zile.***

Î: Pot utiliza SDK pe un server fără GUI?R: Da! Cerințe:

  • Windows Server 2016 sau o versiune ulterioară

  • Chloros instalat (o singură dată)

  • Licență activată pe orice mașină (licență stocată în cache copiată pe server)


Î: Care este diferența dintre Desktop, CLI și SDK?

Caracteristică
GUI Desktop
CLI Linie de comandă
Python SDK

Interfață

Point-click

Comandă

Python API

Cel mai potrivit pentru

Lucru vizual

Scripting

Integrare

Automatizare

Limitată

Bună

Excelentă

Flexibilitate

De bază

Bună

Maximă

Licență

Chloros+

Chloros+

Chloros+

Î: Pot distribui aplicații create cu SDK?R: Codul SDK poate fi integrat în aplicațiile dvs., dar:

  • Utilizatorii finali trebuie să aibă instalat Chloros.

  • Utilizatorii finali trebuie să aibă licențe active Chloros+.

  • Distribuția comercială necesită licențiere OEM.

Contactați info@mapir.camera pentru întrebări legate de OEM.


Î: Cum actualizez SDK?


Î: Unde sunt salvate imaginile procesate?

În mod implicit, în calea proiectului:


Î: Pot procesa imagini din scripturile Python care rulează conform programului?R: Da! Utilizați Windows Task Scheduler cu scripturile Python:

Programați prin Task Scheduler să ruleze zilnic.


Î: SDK acceptă async/await?R: Versiunea actuală este sincronă. Pentru comportament asincron, utilizați wait=False sau rulați într-un thread separat:


Î: Cum pot comuta între diferite conturi Chloros+?R: Utilizați metoda logout() pentru a șterge datele de autentificare din cache, apoi reconectați-vă cu noul cont:

După deconectare, autentificați-vă cu noul cont prin GUI, browser sau CLI înainte de a utiliza din nou SDK.


Obținerea de ajutor

Documentație

  • Referință API: această pagină

Canale de asistență

Cod de exemplu

Toate exemplele enumerate aici sunt testate și gata de producție. Copiați-le și adaptați-le pentru cazul dvs. de utilizare.


SDK necesită un abonament activ Chloros+. Utilizarea, distribuirea sau modificarea neautorizată este interzisă.

Last updated