EXCELITAS TECHNOLOGIES ლოგოEXCELITAS TECHNOLOGIES ლოგო 1Python პროგრამული უზრუნველყოფის განვითარების ნაკრები
მომხმარებლის სახელმძღვანელოEXCELITAS TECHNOLOGIES Python პროგრამული უზრუნველყოფის განვითარების ნაკრებიEXCELITAS TECHNOLOGIES ლოგო 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 პროგრამული უზრუნველყოფის განვითარების ნაკრები - ხატულა 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 to pco.sdk
  • გამოსახულების ჩაწერა და დამუშავება pco.recorder

1.1 მონტაჟი
დააინსტალირეთ pypi-დან (რეკომენდებულია):
$ pip install pco
1.2 ძირითადი გამოყენება
იმპორტი matplotlib.pyplot როგორც plt
კომპიუტერის იმპორტი
pco.Camera()-ით კამერით:
cam.record()
სურათი, მეტა = cam.image()
plt.imshow (სურათი, cmap='ნაცრისფერი')
plt.show()EXCELITAS TECHNOLOGIES Python პროგრამული უზრუნველყოფის განვითარების ნაკრები - ძირითადი გამოყენება1.3 მოვლენისა და შეცდომების აღრიცხვა
ჟურნალის გამომავალი გასააქტიურებლად შექმენით კამერის ობიექტი debuglevel= პარამეტრით.
გამართვის დონე შეიძლება დაყენდეს ერთ-ერთ შემდეგ მნიშვნელობაზე:

  • 'off' გამორთავს ყველა გამომავალს.
  • 'error' აჩვენებს მხოლოდ შეცდომის შეტყობინებებს.
  • 'verbose' აჩვენებს ყველა შეტყობინებას.
  • 'ზედმეტად ვრცელი' აჩვენებს ყველა შეტყობინებას და მნიშვნელობას.

ნაგულისხმევი გამართვის დონე არის „გამორთული“.
pco.Camera (debuglevel='verbose')

[][sdk] get_camera_type: OK.
სურვილისამებრ დროamp= პარამეტრი ააქტიურებს a tag დაბეჭდილ პროდუქტში. შესაძლო მნიშვნელობებია: „ჩართული“ და „გამორთული“. ნაგულისხმევი მნიშვნელობა არის "გამორთული".
pco.Camera(debuglevel='verbose', timestamp= 'on')

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

API დოკუმენტაცია

pco.Camera კლასი გთავაზობთ შემდეგ მეთოდებს:

  • record() წარმოქმნის, აკონფიგურირებს და იწყებს ჩამწერის ახალ მაგალითს.
  • stop() აჩერებს მიმდინარე ჩანაწერს.
  • close() ხურავს მიმდინარე აქტიურ კამერას და ათავისუფლებს დაკავებულ რესურსებს.
  • image() აბრუნებს სურათს ჩამწერიდან, როგორც numpy მასივი.
  • images() აბრუნებს ყველა ჩაწერილ სურათს ჩამწერიდან, როგორც numpy მასივების სიას.
  • image_average() აბრუნებს საშუალო გამოსახულებას. ეს სურათი გამოითვლება ბუფერში ჩაწერილი ყველა სურათიდან.
  • set_exposure_time() ადგენს კამერის ექსპოზიციის დროს.
  • Wait_for_first_image() ელოდება პირველ ხელმისაწვდომ სურათს ჩამწერის მეხსიერებაში.

pco.Camera კლასს აქვს შემდეგი ცვლადი:

  • კონფიგურაცია

pco.Camera კლასს აქვს შემდეგი ობიექტები:

  • sdk გთავაზობთ პირდაპირ წვდომას ყველა ძირითად ფუნქციაზე pco.sdk.
  • ჩამწერი გთავაზობთ პირდაპირ წვდომას ყველა ძირითად ფუნქციაზე pco.recorder.

2.1 მეთოდები
ეს განყოფილება აღწერს ყველა მეთოდს, რომელსაც გთავაზობთ pco.Camera კლასი.
2.1.1 ჩანაწერი
აღწერა ქმნის, აკონფიგურირებს და იწყებს ჩამწერის ახალ მაგალითს. კამერის მთლიანი კონფიგურაცია უნდა იყოს დაყენებული ჩანაწერის () გამოძახებამდე. set_exposure_time() ბრძანება ერთადერთი გამონაკლისია. ეს ფუნქცია არ მოქმედებს ჩამწერ ობიექტზე და შეიძლება გამოიძახოთ ჩაწერის დროს.
პროტოტიპი def ჩანაწერი (თვითონ, სურათების_რაოდენობა=1, რეჟიმი='მიმდევრობა'):
პარამეტრი

სახელი აღწერა
სურათების_რაოდენობა ადგენს დრაივერში გამოყოფილი სურათების რაოდენობას. კომპიუტერის ოპერატიული მეხსიერება ზღუდავს მაქსიმალურ მნიშვნელობას.
რეჟიმი "მიმდევრობის" რეჟიმში, ეს ფუნქცია იბლოკება ჩაწერის დროს. ჩამწერი ავტომატურად ჩერდება სურათების_რაოდენობის მიღწევისას. "მიმდევრობით დაუბლოკავი" რეჟიმში, ეს ფუნქცია არ არის დაბლოკილი. სურათის წაკითხვამდე უნდა შემოწმდეს სტატუსი. ეს რეჟიმი გამოიყენება ჩაწერის დროს სურათების წასაკითხად, მაგ. მინიატურა.
"ring buffer" რეჟიმში ეს ფუნქცია არ არის დაბლოკილი. სურათის წაკითხვამდე უნდა შემოწმდეს სტატუსი. ჩამწერი არ წყვეტს ჩაწერას, როდესაც მიიღწევა სურათების_რაოდენობა. როგორც კი ეს მოხდება, უძველესი სურათები გადაიწერება.
"fifo" რეჟიმში, ეს ფუნქცია არ არის დაბლოკილი. სურათის წაკითხვამდე უნდა შემოწმდეს სტატუსი. როდესაც fifo-ში_სურათების_რაოდენობა მიიღწევა, შემდეგი სურათები იშლება, სანამ სურათები არ წაიკითხება fifo-დან.

2.1.2 გაჩერდი
აღწერა აჩერებს მიმდინარე ჩაწერას. 'ring buffer' და 'fifo' რეჟიმში, ეს ფუნქცია მომხმარებელმა უნდა გამოიძახოს. 'sequence' და 'sequence non blocking' რეჟიმში, ეს ფუნქცია ავტომატურად გამოიძახება, როდესაც მიიღწევა სურათების_რაოდენობა.
პროტოტიპი Def stop (თვითონ):
2.1.3 დახურვა
აღწერა ხურავს გააქტიურებულ კამერას და ათავისუფლებს დაბლოკილ რესურსებს. ეს ფუნქცია უნდა გამოიძახოთ განაცხადის დასრულებამდე. წინააღმდეგ შემთხვევაში, რესურსები ოკუპირებული რჩება.
პროტოტიპი დახურვა (თვითონ):
ეს ფუნქცია ავტომატურად გამოიძახება, თუ კამერის ობიექტი იქმნება with განაცხადით. დახურვის() აშკარა გამოძახება საჭირო აღარ არის.
ერთად pco.Camera() როგორც კამერა: # გააკეთე რაღაცეები
2.1.4 გამოსახულება
აღწერა აბრუნებს სურათს ჩამწერიდან. გამოსახულების ტიპი არის numpy.ndarray. ეს მასივი ყალიბდება გამოსახულების გარჩევადობისა და ROI-ის მიხედვით.
პროტოტიპი def სურათი (თვითონ, image_number=0, roi=არცერთი):
პარამეტრი

სახელი აღწერა
სურათის_ნომერი განსაზღვრავს წასაკითხი სურათის რაოდენობას. "მიმდევრობის" ან "მიმდევრობის არაბლოკირების" რეჟიმში, ჩამწერის ინდექსი ემთხვევა image_number-ს. თუ image_number დაყენებულია 0xFFFFFFFF, ბოლო ჩაწერილი სურათი კოპირდება. ეს საშუალებას გაძლევთ შექმნათ ცოცხალი წინასწარიview ჩაწერისას.
როი ადგენს ინტერესის რეგიონს. გამოსახულების მხოლოდ ეს რეგიონი კოპირდება დაბრუნებულ მნიშვნელობაზე.

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=არცერთი):
პარამეტრი

სახელი აღწერა
როი ადგენს ინტერესის რეგიონს. გამოსახულების მხოლოდ ეს რეგიონი კოპირდება დაბრუნებულ მნიშვნელობაზე.
ბლოკის ზომა განსაზღვრავს დაბრუნებული სურათების მაქსიმალურ რაოდენობას. ეს პარამეტრი გამოსადეგია მხოლოდ '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))
>>> images[0].shape (300, 300)
2.1.6 გამოსახულების_საშუალო
აღწერა აბრუნებს საშუალო გამოსახულებას. ეს სურათი გამოითვლება ბუფერში ჩაწერილი ყველა სურათიდან.
პროტოტიპი def image_average(self, roi=არცერთი):
პარამეტრი

სახელი აღწერა
როი განსაზღვრავს ინტერესის რეგიონს. გამოსახულების მხოლოდ ეს რეგიონი კოპირდება დაბრუნებულ მნიშვნელობაზე.

Example >>> cam.record (სურათების_რაოდენობა=100, რეჟიმი='მიმდევრობა')
>>> საშუალო = cam.image_average()
>>> საშუალო = cam.image_average(roi=(1, 1, 300, 300))
2.1.7 ექსპოზიციის_დროის დაყენება
აღწერა ადგენს კამერის ექსპოზიციის დროს.
პროტოტიპი def set_exposure_time (თვითონ, ექსპოზიციის_დრო):
პარამეტრი

სახელი აღწერა
დაინფიცირების წყაროსთან კონტაქტის დრო უნდა იყოს მიცემული როგორც float ან მთელი რიცხვი ერთეულში 'second'. ფუნქციის ძირითადი მნიშვნელობები sdk.set_delay_exposure_time (0, 'ms', დრო, დროის ბაზა) ავტომატურად გამოითვლება. დაყოვნების დრო დაყენებულია 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': 'ასკი',
'პიქსელის სიხშირე': 100_000_000,
'ტრიგერი': 'ავტომატური თანმიმდევრობა',
"შეძენა": "ავტო",
'მეტამონაცემები': 'ჩართული',
'ბინინგი': (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 ფუნქციებიდან არის ლექსიკონები. ამჟამად კამერის ყველა პარამეტრი არ არის დაფარული კამერის კლასში. სპეციალური პარამეტრების დაყენება უნდა მოხდეს უშუალოდ შესაბამისი sdk ფუნქციის დარეკვით.
2.3.2 ჩამწერი
ობიექტი rec გთავაზობთ პირდაპირ წვდომას ყველა ძირითადი ფუნქციაზე pco.recorder. არ არის აუცილებელი პირდაპირ ჩამწერი კლასის მეთოდის გამოძახება. ყველა ფუნქცია სრულად არის დაფარული Camera კლასის მეთოდებით.

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

პკო ევროპა
+49 9441 2005 50
info@pco.de
pco.de
pco ამერიკა
+1 866 678 4566
info@pco-tech.com
pco-tech.com
პკო აზია
+65 6549 7054
info@pco-imaging.com
pco-imaging.com
პკო ჩინეთი
+86 512 67634643
info@pco.cn
pco.cn

EXCELITAS TECHNOLOGIES ლოგოEXCELITAS TECHNOLOGIES ლოგო 1

დოკუმენტები / რესურსები

EXCELITAS TECHNOLOGIES Python პროგრამული უზრუნველყოფის განვითარების ნაკრები [pdf] მომხმარებლის სახელმძღვანელო
Python Software Development Kit, Software Development Kit, Development Kit, Kit

ცნობები

დატოვე კომენტარი

თქვენი ელფოსტის მისამართი არ გამოქვეყნდება. მონიშნულია აუცილებელი ველები *