Logotip EXCELITAS TECHNOLOGIESLogotip EXCELITAS TECHNOLOGIES 1Komplet za razvoj programske opreme Python
Uporabniški priročnikEXCELITAS TECHNOLOGIES Python Software Development KitLogotip EXCELITAS TECHNOLOGIES 2

Komplet za razvoj programske opreme Python

PCO vas prosi, da natančno preberete in upoštevate navodila v tem dokumentu.
Za kakršna koli vprašanja ali komentarje nas lahko kadar koli kontaktirate.
telefon: +49 (0) 9441 2005 50
faks: +49 (0) 9441 2005 20
poštni naslov: Excelitas PCO GmbH Donaupark 11 93309 Kelheim, Nemčija
e-pošta: info@pco.de
web: www.pco.de
pco.python uporabniški priročnik 0.1.7
Izdano decembra 2021
©Avtorske pravice Excelitas PCO GmbH
EXCELITAS TECHNOLOGIES Python Software Development Kit - ikona 1To delo je licencirano pod mednarodno licenco Creative Commons Attribution-Brez izpeljank 4.0. Za view kopijo te licence obiščite http://creativecommons.org/licenses/by-nd/4.0/ ali pošljite pismo na Creative Commons, PO Box 1866, Mountain View, CA 94042, ZDA.

Splošno

Python paket pco ponuja vse funkcije za delo s pco kamerami, ki temeljijo na trenutnem pco.sdk. Vključene so vse deljene knjižnice za komunikacijo s kamero in kasnejšo obdelavo slik.

  • Razred kamere, enostaven za uporabo
  • Zmogljiv API za pco.sdk
  • Snemanje in obdelava slik z pco.snemalnik

1.1 Namestitev
Namestite iz pypi (priporočeno):
$ pip namestite pco
1.2 Osnovna uporaba
uvozi matplotlib.pyplot kot plt
uvoz pco
s pco.Camera() kot kamero:
cam.record()
slika, meta = cam.image()
plt.imshow(slika, cmap='siva')
plt.show()EXCELITAS TECHNOLOGIES Python Software Development Kit - Osnovna uporaba1.3 Beleženje dogodkov in napak
Če želite aktivirati izhod beleženja, ustvarite objekt Camera s parametrom debuglevel=.
Raven odpravljanja napak je mogoče nastaviti na eno od naslednjih vrednosti:

  • 'off' Onemogoči vse izhode.
  • 'error' Prikaže samo sporočila o napakah.
  • 'verbose' Prikaže vsa sporočila.
  • 'extra verbose' Prikaže vsa sporočila in vrednosti.

Privzeta raven odpravljanja napak je 'off'.
pco.Camera(debuglevel='verbose')

[][sdk] get_camera_type: V redu.
Izbirni časamp= parameter aktivira a tag v natisnjenem izpisu. Možni vrednosti sta: 'on' in 'off'. Privzeta vrednost je 'off'.
pco.Camera(debuglevel='verbose', timestamp='on')

[2019-11-25 15:54:15.317855 / 0.016 s] [][sdk] get_camera_type: OK.

API dokumentacija

Razred pco.Camera ponuja naslednje metode:

  • record() ustvari, konfigurira in zažene nov primerek zapisovalnika.
  • stop() ustavi trenutni posnetek.
  • close() zapre trenutno aktivno kamero in sprosti zasedene vire.
  • image() vrne sliko iz snemalnika kot matriko numpy.
  • images() vrne vse posnete slike iz snemalnika kot seznam nizov numpy.
  • image_average() vrne povprečno sliko. Ta slika je izračunana iz vseh posnetih slik v medpomnilniku.
  • set_exposure_time() nastavi čas osvetlitve za kamero.
  • wait_for_first_image() čaka na prvo razpoložljivo sliko v pomnilniku snemalnika.

Razred pco.Camera ima naslednjo spremenljivko:

  • konfiguracijo

Razred pco.Camera ima naslednje objekte:

  • sdk ponuja neposreden dostop do vseh osnovnih funkcij programa pco.sdk.
  • snemalnik ponuja neposreden dostop do vseh osnovnih funkcij pco.snemalnik.

2.1 Metode
Ta razdelek opisuje vse metode, ki jih ponuja razred pco.Camera.
2.1.1 Zapis
Opis Ustvari, konfigurira in zažene nov primerek snemalnika. Pred klicem record() je treba nastaviti celotno konfiguracijo kamere. Ukaz set_exposure_time() je edina izjema. Ta funkcija ne vpliva na objekt snemalnika in jo lahko prikličete med snemanjem.
Prototip def record(self, number_of_images=1, mode='sequence'):
Parameter

Ime Opis
število_slik Nastavi število slik, dodeljenih v gonilniku. RAM računalnika omejuje največjo vrednost.
način V 'zaporednem' načinu je ta funkcija med snemanjem blokirana. Snemalnik se samodejno ustavi, ko je doseženo število_slik. V načinu 'neblokiranje zaporedja' ta funkcija ne blokira. Pred branjem slike je treba preveriti stanje. Ta način se uporablja za branje slik med snemanjem, npr. sličice.
V načinu 'medpomnilnik zvonjenja' ta funkcija ne blokira. Pred branjem slike je treba preveriti stanje. Snemalnik ne ustavi snemanja, ko je doseženo število_slik. Ko se to zgodi, so najstarejše slike prepisane.
V načinu 'fifo' ta funkcija ne blokira. Pred branjem slike je treba preveriti stanje. Ko je doseženo število_slik v FIFO, se naslednje slike izpustijo, dokler slike niso prebrane iz FIFO.

2.1.2 Ustavite se
Opis Ustavi trenutni posnetek. V načinu 'ring buffer' in 'fifo' mora to funkcijo poklicati uporabnik. V načinu 'sequence' in 'sequence non blocking' se ta funkcija samodejno prikliče, ko je doseženo število_slik.
Prototip def stop(self):
2.1.3 Zapri
Opis Zapre aktivirano kamero in sprosti blokirane vire. To funkcijo je treba poklicati, preden se aplikacija prekine. V nasprotnem primeru viri ostanejo zasedeni.
Prototip def close(self):
Ta funkcija se samodejno pokliče, če je objekt kamere ustvarjen s stavkom with. Izrecni klic close() ni več potreben.
s pco.Camera() kot cam: # naredi nekaj stvari
2.1.4 slika
Opis Vrne sliko iz snemalnika. Vrsta slike je numpy.ndarray. Ta niz je oblikovan glede na ločljivost in ROI slike.
Prototip def image(self, image_number=0, roi=None):
Parameter

Ime Opis
številka_slike Določa številko slike za branje. V načinu 'zaporedje' ali 'neblokiranje zaporedja' se indeks snemalnika ujema s številko slike. Če je image_number nastavljena na 0xFFFFFFFF, se kopira zadnja posneta slika. To omogoča ustvarjanje živega preview med snemanjem.
roi Nastavi območje zanimanja. Samo ta del slike je kopiran v vrnjeno vrednost.

Example >>> cam.record(number_of_images=1, mode='sequence')
>>> slika, meta = cam.image()
>>> tip(slika) numpy.ndarray
>>> image.shape (2160, 2560)
>>> slika, metapodatki = cam.image(roi=(1, 1, 300, 300))
>>> image.shape (300, 300)
2.1.5 Slike
Opis Vrne vse posnete slike iz snemalnika kot seznam nizov numpy.
Prototip def images(self, roi=None, blocksize=None):
Parameter

Ime Opis
roi Nastavi območje zanimanja. Samo ta del slike je kopiran v vrnjeno vrednost.
velikost bloka Določa največje število vrnjenih slik. Ta parameter je uporaben le v načinu 'fifo' in pod posebnimi pogoji.

Example >>> cam.record(number_of_images=20, mode='sequence')
>>> slike, metapodatki = cam.images()
>>> leč(slike) 20
>>> za sliko v slikah:

print('Mean: {:7.2f} DN'.format(image.mean()))

Srednja: 2147.64 DN
Srednja: 2144.61 DN

>>> slike = cam.images(roi=(1, 1, 300, 300))
>>> slike[0].oblika (300, 300)
2.1.6 Image_average
Opis Vrne povprečno sliko. Ta slika je izračunana iz vseh posnetih slik v medpomnilniku.
Prototip def image_average(self, roi=None):
Parameter

Ime Opis
roi Določa območje zanimanja. Samo ta del slike je kopiran v vrnjeno vrednost.

Example >>> cam.record(number_of_images=100, mode='sequence')
>>> avg = cam.image_average()
>>> povprečje = cam.image_average(roi=(1, 1, 300, 300))
2.1.7 Nastavitev_časa_osvetlitve
Opis Nastavi čas osvetlitve kamere.
Prototip def set_exposure_time(sam, čas_ekspozicije):
Parameter

Ime Opis
čas izpostavljenosti Podano mora biti kot vrednost s plavajočim ali celo število v enoti 'sekunda'. Osnovne vrednosti za funkcijo sdk.set_delay_exposure_time(0, 'ms', time, timebase) bodo samodejno izračunane. Čas zakasnitve je nastavljen na 0.

Example >>> cam.set_exposure_time(0.001)
>>> cam.set_exposure_time(1e-3)
2.1.8 Počakaj_na_prvo_sliko
Opis Čaka na prvo razpoložljivo sliko v pomnilniku snemalnika. V načinu snemalnika 'sequence non blocking', 'ring buffer'. in 'fifo', funkcija record() vrne takoj. Zato lahko to funkcijo uporabite za čakanje na slike iz kamere, preden pokličete image(), images() ali image_average().
Prototip def čakaj_na_prvo_sliko(sebe):
2.2 Konfiguracija spremenljivke
Parametri kamere se posodobijo s spremembo konfiguracijske spremenljivke.
cam.configuration = {'exposure time': 10e-3,
'roi': (1, 1, 512, 512),
'časamp': 'ascii',
'stopnja slikovnih pik': 100_000_000,
'trigger': 'samodejno zaporedje',
'acquire': 'auto',
'metapodatki': 'vklopljeno',
'binning': (1, 1)}
Spremenljivko je mogoče spremeniti samo pred klicem funkcije record(). Je slovar z določenim številom gesel. Ni treba navesti vseh možnih elementov. Naslednji sampkoda le spremeni 'pikselsko hitrost' in ne vpliva na druge elemente konfiguracije.
s pco.Camera() kot kamero:
cam.configuration = {'pixel rate': 286_000_000}
cam.record()

2.3 predmetov
Ta razdelek opisuje vse objekte, ki jih ponuja razred pco.Camera.
2.3.1 SDK
Objekt sdk omogoča neposreden dostop do vseh osnovnih funkcij pco.sdk.
>>> cam.sdk.get_temperature()
{'temperatura senzorja': 7.0, 'temperatura kamere': 38.2, 'temperatura napajanja': 36.7}
Vse vrnjene vrednosti funkcij sdk so slovarji. Razred Camera trenutno ne pokriva vseh nastavitev kamere. Posebne nastavitve je treba nastaviti neposredno s klicem ustrezne funkcije sdk.
2.3.2 Snemalnik
Objekt rec ponuja neposreden dostop do vseh osnovnih funkcij pco.snemalnik. Metode razreda snemalnika ni treba poklicati neposredno. Vse funkcije so v celoti pokrite z metodami razreda Camera.

EXCELITAS TECHNOLOGIES Python Software Development Kit - QR kodahttps://www.pco.de/applications/

pco europe
+49 9441 2005 50
info@pco.de
pco.de
pco amerika
+1 866 678 4566
info@pco-tech.com
pco-tech.com
pco azija
+65 6549 7054
info@pco-imaging.com
pco-imaging.com
pco Kitajska
+86 512 67634643
info@pco.cn
pco.cn

Logotip EXCELITAS TECHNOLOGIESLogotip EXCELITAS TECHNOLOGIES 1

Dokumenti / Viri

EXCELITAS TECHNOLOGIES Python Software Development Kit [pdfUporabniški priročnik
Komplet za razvoj programske opreme Python, komplet za razvoj programske opreme, razvojni komplet, komplet

Reference

Pustite komentar

Vaš elektronski naslov ne bo objavljen. Obvezna polja so označena *