EXCELITAS TECHNOLOGIES լոգոնEXCELITAS TECHNOLOGIES logo 1Python Ծրագրային ապահովման մշակման հավաքածու
Օգտագործողի ձեռնարկEXCELITAS TECHNOLOGIES Python Software Development KitEXCELITAS TECHNOLOGIES logo 2

Python Ծրագրային ապահովման մշակման հավաքածու

PCO-ն խնդրում է ձեզ ուշադիր կարդալ և հետևել այս փաստաթղթի հրահանգներին:
Ցանկացած հարցի կամ մեկնաբանության համար խնդրում ենք ազատ զգալ կապվել մեզ հետ ցանկացած ժամանակ:
հեռախոս՝ +49 (0) 9441 2005 50
ֆաքս՝ +49 (0) 9441 2005 20
փոստային հասցե՝ Excelitas PCO GmbH Donaupark 11 93309 Kelheim, Գերմանիա
էլ. info@pco.de
web: www.pco.de
pco.python օգտագործողի ձեռնարկ 0.1.7
Թողարկվել է 2021 թվականի դեկտեմբերին
©Հեղինակային իրավունք Excelitas PCO GmbH
EXCELITAS TECHNOLOGIES Python Software Development Kit - պատկերակ 1Այս աշխատանքը լիցենզավորված է Creative Commons Attribution-No Derivatives 4.0 միջազգային լիցենզիայի ներքո: Դեպի view այս լիցենզիայի պատճենը, այցելեք http://creativecommons.org/licenses/by-nd/4.0/ կամ նամակ ուղարկեք Creative Commons, PO Box 1866, Mountain View, CA 94042, ԱՄՆ։

Գեներալ

Python փաթեթը pco-ն առաջարկում է բոլոր գործառույթները pco տեսախցիկների հետ աշխատելու համար, որոնք հիմնված են հոսանքի վրա pco.sdk. Ներառված են տեսախցիկի հետ կապի և հետագա պատկերների մշակման բոլոր ընդհանուր գրադարանները:

  • Հեշտ օգտագործման տեսախցիկի դաս
  • Հզոր API դեպի pco.sdk
  • Պատկերի ձայնագրում և մշակում հետ pco. ձայնագրիչ

1.1 Տեղադրում
Տեղադրեք pypi-ից (խորհուրդ է տրվում).
$ pip install pco
1.2 Հիմնական օգտագործումը
ներմուծել matplotlib.pyplot որպես plt
ներմուծում pco
հետ pco.Camera() որպես տեսախցիկ:
cam.record()
պատկեր, մետա = cam.image()
plt.imshow (պատկեր, cmap='մոխրագույն')
plt.show ()EXCELITAS TECHNOLOGIES Python Software Development Kit – Հիմնական օգտագործում1.3 Իրադարձությունների և սխալների գրանցում
Լոգինգի ելքը ակտիվացնելու համար ստեղծեք Camera օբյեկտը debuglevel= պարամետրով:
Վրիպազերծման մակարդակը կարող է սահմանվել հետևյալ արժեքներից մեկի վրա.

  • «անջատված» Անջատում է բոլոր ելքերը:
  • «սխալ» Ցույց է տալիս միայն սխալի հաղորդագրությունները:
  • «Բոլոր» Ցույց է տալիս բոլոր հաղորդագրությունները:
  • «լրացուցիչ բառապաշար» Ցույց է տալիս բոլոր հաղորդագրություններն ու արժեքները:

Վրիպազերծման կանխադրված մակարդակը «անջատված է»:
pco.Camera (debuglevel='verbose')

[][sdk] get_camera_type՝ Լավ:
Կամընտիր ժամանակաչափamp= պարամետրը ակտիվացնում է a tag տպագիր արտադրանքի մեջ: Հնարավոր արժեքներն են՝ «միացված» և «անջատված»: Նախնական արժեքը «անջատված է»:
pco.Camera(debuglevel='verbose', timestamp='մի')

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

API Փաստաթղթեր

Pco.Camera դասը առաջարկում է հետևյալ մեթոդները.

  • record()-ը ստեղծում, կազմաձևում և սկսում է ձայնագրիչի նոր օրինակ:
  • stop() դադարեցնում է ընթացիկ ձայնագրությունը:
  • close() փակում է ընթացիկ ակտիվ տեսախցիկը և ազատում զբաղեցրած ռեսուրսները:
  • image()-ը ձայնագրիչից պատկեր է վերադարձնում որպես անփայլ զանգված:
  • images()-ը վերադարձնում է ձայնագրիչից բոլոր գրանցված պատկերները որպես անփույթ զանգվածների ցուցակ:
  • image_average()-ը վերադարձնում է միջինացված պատկերը: Այս պատկերը հաշվարկվում է բուֆերում գրանցված բոլոր պատկերներից:
  • set_exposure_time()-ը սահմանում է խցիկի ազդեցության ժամանակը:
  • Wait_for_first_image() սպասում է առաջին հասանելի պատկերին ձայնագրիչի հիշողության մեջ:

Pco.Camera դասը ունի հետևյալ փոփոխականը.

  • կոնֆիգուրացիա

Pco.Camera դասը ունի հետևյալ օբյեկտները.

  • sdk-ն առաջարկում է ուղղակի մուտք դեպի բոլոր հիմնական գործառույթները pco.sdk.
  • Ձայնագրիչն առաջարկում է անմիջական մուտք դեպի բոլոր հիմնական գործառույթները pco. ձայնագրիչ.

2.1 Մեթոդներ
Այս բաժինը նկարագրում է pco.Camera դասի կողմից առաջարկվող բոլոր մեթոդները:
2.1.1 Գրառում
Նկարագրություն Ստեղծում, կարգավորում և գործարկում է ձայնագրիչի նոր օրինակ: Ամբողջ տեսախցիկի կոնֆիգուրացիան պետք է սահմանվի նախքան ռեկորդը () կանչելը: Set_exposure_time() հրամանը միակ բացառությունն է: Այս գործառույթը չի ազդում ձայնագրիչի օբյեկտի վրա և կարող է կանչվել ձայնագրման ընթացքում:
Նախատիպ def գրառում (ինքնուրույն, պատկերների_թիվ=1, ռեժիմ='հաջորդականություն'):
Պարամետր

Անուն Նկարագրություն
պատկերների_քանակ Սահմանում է վարորդում հատկացված պատկերների քանակը: ԱՀ-ի RAM-ը սահմանափակում է առավելագույն արժեքը:
ռեժիմ «Հաջորդական» ռեժիմում այս ֆունկցիան արգելափակվում է ձայնագրման ընթացքում: Ձայնագրիչը ինքնաբերաբար դադարում է, երբ հասնում է պատկերների_քանակը: «Հաջորդականություն չարգելափակող» ռեժիմում այս ֆունկցիան անարգելափակող է: Պատկերը կարդալուց առաջ պետք է ստուգել կարգավիճակը: Այս ռեժիմն օգտագործվում է ձայնագրման ընթացքում պատկերներ կարդալու համար, օրինակ՝ մանրապատկեր:
«Օղակաձեւ բուֆեր» ռեժիմում այս ֆունկցիան արգելափակող չէ: Պատկերը կարդալուց առաջ պետք է ստուգել կարգավիճակը: Ձայնագրիչը չի դադարեցնում ձայնագրումը, երբ հասնում է_պատկերների_քանակը: Երբ դա տեղի ունենա, ամենահին պատկերները վերագրվում են:
«Fifo» ռեժիմում այս գործառույթը չի արգելափակում: Պատկերը կարդալուց առաջ պետք է ստուգել կարգավիճակը: Երբ հասնում է fifo_ի_պատկերների թիվը, հետևյալ պատկերները հանվում են այնքան ժամանակ, մինչև նկարները կարդացվեն fifo-ից:

2.1.2 Կանգ առեք
Նկարագրություն Դադարեցնում է ընթացիկ ձայնագրությունը: «ring buffer» և «fifo» ռեժիմներում այս գործառույթը պետք է կանչվի օգտագործողի կողմից: «sequence» և «sequence non blocking» ռեժիմներում այս ֆունկցիան ավտոմատ կերպով կանչվում է, երբ հասնում է պատկերների_քանակը:
Նախատիպ def stop(self):
2.1.3 Փակել
Նկարագրություն Փակում է ակտիվացված տեսախցիկը և ազատում արգելափակված ռեսուրսները: Այս գործառույթը պետք է կանչվի մինչև հավելվածի դադարեցումը: Հակառակ դեպքում ռեսուրսները մնում են օկուպացված։
Նախատիպ def close(self):
Այս ֆունկցիան ավտոմատ կերպով կանչվում է, եթե տեսախցիկի օբյեկտը ստեղծվել է with ցուցումով: Close()-ի հստակ կոչն այլևս անհրաժեշտ չէ:
pco.Camera()-ով որպես տեսախցիկ՝ # որոշ բաներ անել
2.1.4 Պատկեր
Նկարագրություն Վերադարձնում է պատկեր ձայնագրիչից: Պատկերի տեսակը numpy.ndarray է: Այս զանգվածը ձևավորվում է կախված պատկերի լուծաչափից և ROI-ից:
Նախատիպ Def image (self, image_number=0, roi=None):
Պարամետր

Անուն Նկարագրություն
պատկեր_համար Նշում է ընթերցվող պատկերի թիվը: «sequence» կամ «sequence non blocking» ռեժիմում ձայնագրիչի ինդեքսը համապատասխանում է image_number-ին: Եթե ​​պատկերի_համարը դրված է 0xFFFFFFFF, վերջին գրանցված պատկերը պատճենվում է: Սա թույլ է տալիս ստեղծել կենդանի նախաview ձայնագրման ժամանակ։
roi Սահմանում է հետաքրքրության շրջանը: Պատկերի միայն այս հատվածը պատճենվում է վերադարձի արժեքին:

Example >>> cam.record (պատկերների_համար=1, ռեժիմ='հաջորդականություն')
>>> պատկեր, մետա = cam.image()
>>> type(image) numpy.ndarray
>>> image.shape (2160, 2560)
>>> պատկեր, մետատվյալներ = cam.image(roi=(1, 1, 300, 300))
>>> image.shape (300, 300)
2.1.5 Պատկերներ
Նկարագրություն Վերադարձնում է ձայնագրիչից բոլոր գրանցված պատկերները՝ որպես անփույթ զանգվածների ցանկ:
Նախատիպ def պատկերներ (self, roi=Ոչ մի, blocksize=Ոչ մեկը):
Պարամետր

Անուն Նկարագրություն
roi Սահմանում է հետաքրքրության շրջանը: Պատկերի միայն այս հատվածը պատճենվում է վերադարձի արժեքին:
բլոկի չափը Սահմանում է վերադարձվող պատկերների առավելագույն քանակը: Այս պարամետրը օգտակար է միայն «fifo» ռեժիմում և հատուկ պայմաններում:

Example >>> cam.record (պատկերների_համար=20, ռեժիմ='հաջորդականություն')
>>> պատկերներ, մետատվյալներ = cam.images()
>>> len (պատկերներ) 20
>>> պատկերների համար՝

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

Միջինը՝ 2147.64 DN
Միջինը՝ 2144.61 DN

>>> պատկերներ = cam.images(roi=(1, 1, 300, 300))
>>> պատկերներ[0].shape (300, 300)
2.1.6 Պատկեր_միջին
Նկարագրություն Վերադարձնում է միջինացված պատկերը: Այս պատկերը հաշվարկվում է բուֆերում գրանցված բոլոր պատկերներից:
Նախատիպ def image_average(self, roi=Ոչ մեկը):
Պարամետր

Անուն Նկարագրություն
roi Սահմանում է հետաքրքրության շրջանը: Պատկերի միայն այս հատվածը պատճենվում է վերադարձի արժեքին:

Example >>> cam.record (պատկերների_համար=100, ռեժիմ='հաջորդականություն')
>>> միջին = cam.image_average()
>>> միջին = cam.image_average(roi=(1, 1, 300, 300))
2.1.7 Սահմանել_բացահայտման_ժամանակ
Նկարագրություն Սահմանում է խցիկի բացահայտման ժամանակը:
Նախատիպ def set_exposure_time (self, exposure_time):
Պարամետր

Անուն Նկարագրություն
ազդեցության ենթարկման ժամանակ «Երկրորդ» միավորում պետք է տրվի որպես լողացող կամ ամբողջ թիվ: sdk.set_delay_exposure_time(0, 'ms', time, timebase) ֆունկցիայի հիմքում ընկած արժեքները կհաշվարկվեն ավտոմատ կերպով: Հետաձգման ժամանակը սահմանվել է 0:

Example >>> cam.set_exposure_time (0.001)
>>> cam.set_exposure_time(1e-3)
2.1.8 Սպասեք_առաջին_պատկերին
Նկարագրություն Սպասում է առաջին հասանելի պատկերին ձայնագրիչի հիշողության մեջ: Ձայնագրիչի ռեժիմում «sequence non blocking», «ring buffer»: և «fifo», ֆունկցիայի ռեկորդը () անմիջապես վերադառնում է: Հետևաբար, այս ֆունկցիան կարող է օգտագործվել տեսախցիկից պատկերներ սպասելու համար՝ նախքան image(), images() կամ image_average() կանչելը:
Նախատիպ def wait_for_first_image(self):
2.2 Փոփոխական կոնֆիգուրացիա
Տեսախցիկի պարամետրերը թարմացվում են՝ փոխելով կազմաձևման փոփոխականը:
cam.configuration = {'բացահայտման ժամանակ'՝ 10e-3,
«roi»: (1, 1, 512, 512),
«ժամանակamp': 'ascii',
«պիքսելային արագություն»՝ 100_000_000,
'trigger': 'auto sequence',
'ձեռք բերել': 'ավտո',
'մետատվյալներ': 'on',
'binning': (1, 1)}
Փոփոխականը կարող է փոխվել միայն մինչև record() ֆունկցիան կանչելը: Դա բառարան է որոշակի թվով մուտքերով։ Ոչ բոլոր հնարավոր տարրերը պետք է հստակեցվեն: Հետևյալ սample կոդը փոխում է միայն «պիքսելների արագությունը» և չի ազդում կազմաձևման այլ տարրերի վրա:
հետ pco.Camera() որպես տեսախցիկ:
cam.configuration = {'pixel rate'՝ 286_000_000}
cam.record()

2.3 Օբյեկտ
Այս բաժինը նկարագրում է pco.Camera դասի կողմից առաջարկվող բոլոր օբյեկտները:
2.3.1 SDK
Օբյեկտը sdk-ն թույլ է տալիս ուղղակիորեն մուտք գործել բոլոր հիմնական գործառույթները pco.sdk.
>>> cam.sdk.get_temperature()
{«տվիչի ջերմաստիճանը»՝ 7.0, «խցիկի ջերմաստիճանը»՝ 38.2, «սնուցման ջերմաստիճանը»՝ 36.7}
Բոլոր վերադարձվող արժեքները sdk ֆունկցիաներից բառարաններ են: Տեսախցիկի ոչ բոլոր կարգավորումներն են ներկայումս ընդգրկված Camera դասի կողմից: Հատուկ կարգավորումները պետք է սահմանվեն անմիջապես՝ զանգահարելով համապատասխան sdk ֆունկցիան:
2.3.2 Ձայնագրիչ
Օբյեկտը rec-ն առաջարկում է ուղղակի մուտք դեպի բոլոր հիմքում ընկած գործառույթները pco. ձայնագրիչ. Անհրաժեշտ չէ ուղղակիորեն ձայնագրիչ դասի մեթոդ կանչել: Բոլոր գործառույթներն ամբողջությամբ ծածկված են Camera դասի մեթոդներով։

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

pco Europe
+49 9441 2005 50
info@pco.de
pco.de
pco america
+1 866 678 4566
info@pco-tech.com
pco-tech.com
pco Ասիա
+65 6549 7054
info@pco-imaging.com
pco-imaging.com
pco Չինաստան
+86 512 67634643
info@pco.cn
pco.cn

EXCELITAS TECHNOLOGIES լոգոնEXCELITAS TECHNOLOGIES logo 1

Փաստաթղթեր / ռեսուրսներ

EXCELITAS TECHNOLOGIES Python Software Development Kit [pdf] Օգտագործողի ձեռնարկ
Python Software Development Kit, Software Development Kit, Development Kit, Kit

Հղումներ

Թողնել մեկնաբանություն

Ձեր էլփոստի հասցեն չի հրապարակվի: Պարտադիր դաշտերը նշված են *