คู่มือการใช้งาน EXCELITAS TECHNOLOGIES Python Software Development Kit

EXCELITAS TECHNOLOGIES Python Software Development Kit - Featured Image

โลโก้ EXCELITAS เทคโนโลยีโลโก้ EXCELITAS TECHNOLOGIES 1ชุดพัฒนาซอฟต์แวร์ Python
คู่มือการใช้งาน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, Germany
อีเมล: 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 International License ถึง 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.recorder

1.1 การติดตั้ง
ติดตั้งจาก pypi (แนะนำ):
$ pip ติดตั้ง pco
1.2 การใช้งานพื้นฐาน
นำเข้า matplotlib.pyplot เป็น plt
นำเข้าพีซี
ด้วย pco.Camera() เป็นกล้อง:
แคม.บันทึก()
รูปภาพ เมตา = cam.image()
plt.imshow(ภาพ, cmap='สีเทา')
plt.แสดง()EXCELITAS TECHNOLOGIES ชุดพัฒนาซอฟต์แวร์ Python - การใช้งานพื้นฐาน1.3 การบันทึกเหตุการณ์และข้อผิดพลาด
หากต้องการเปิดใช้งานเอาต์พุตการบันทึก ให้สร้างวัตถุ Camera ด้วยพารามิเตอร์ debuglevel=
ระดับการดีบักสามารถตั้งค่าเป็นค่าใดค่าหนึ่งต่อไปนี้:

  • 'ปิด' ปิดใช้งานเอาต์พุตทั้งหมด
  • 'ข้อผิดพลาด' แสดงเฉพาะข้อความแสดงข้อผิดพลาด
  • 'รายละเอียด' แสดงข้อความทั้งหมด
  • 'extra verbose' แสดงข้อความและค่าทั้งหมด

debuglevel เริ่มต้นคือ 'ปิด'
pco.Camera (debuglevel = 'รายละเอียด')
-
[][sdk] get_camera_type: ตกลง
เวลาที่เป็นทางเลือกamp= เปิดใช้งานพารามิเตอร์ tag ในผลงานที่พิมพ์ออกมา ค่าที่เป็นไปได้คือ: 'เปิด' และ 'ปิด' ค่าเริ่มต้นคือ 'ปิด'
pco.Camera(debuglevel='verbose' เวลาamp='เปิด')
-
[2019-11-25 15:54:15.317855 / 0.016 วินาที] [][sdk] get_camera_type: ตกลง

เอกสารประกอบ API

คลาส pco.Camera มีเมธอดดังต่อไปนี้:

  • บันทึก () สร้าง กำหนดค่า และเริ่มต้นอินสแตนซ์เครื่องบันทึกใหม่
  • stop() หยุดการบันทึกปัจจุบัน
  • ปิด () ปิดกล้องที่ใช้งานอยู่ในปัจจุบันและปล่อยทรัพยากรที่ถูกครอบครอง
  • image() ส่งคืนรูปภาพจากเครื่องบันทึกเป็นอาร์เรย์ numpy
  • images() ส่งคืนภาพที่บันทึกทั้งหมดจากเครื่องบันทึกเป็นรายการอาร์เรย์จำนวนมาก
  • 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 (ตัวเอง number_of_images = 1 โหมด = 'ลำดับ'):
พารามิเตอร์

ชื่อ คำอธิบาย
number_of_images ตั้งค่าจำนวนภาพที่จัดสรรในไดรเวอร์ RAM ของพีซีจำกัดค่าสูงสุด
โหมด ในโหมด 'ลำดับ' ฟังก์ชันนี้จะบล็อกระหว่างการบันทึก เครื่องบันทึกจะหยุดโดยอัตโนมัติเมื่อถึง number_of_images ในโหมด 'ลำดับที่ไม่ปิดกั้น' ฟังก์ชันนี้จะไม่ปิดกั้น ต้องตรวจสอบสถานะก่อนอ่านภาพ โหมดนี้ใช้เพื่ออ่านภาพขณะบันทึก เช่น ภาพขนาดย่อ
ในโหมด 'บัฟเฟอร์วงแหวน' ฟังก์ชันนี้จะไม่มีการปิดกั้น ต้องตรวจสอบสถานะก่อนอ่านภาพ เครื่องบันทึกไม่หยุดการบันทึกเมื่อถึง number_of_images เมื่อสิ่งนี้เกิดขึ้น รูปภาพที่เก่าที่สุดจะถูกเขียนทับ
ในโหมด 'fifo' ฟังก์ชันนี้จะไม่มีการปิดกั้น ต้องตรวจสอบสถานะก่อนอ่านภาพ เมื่อถึง number_of_images ใน fifo รูปภาพต่อไปนี้จะถูกลบจนกว่ารูปภาพจะถูกอ่านจาก fifo

2.1.2 หยุด
คำอธิบาย หยุดการบันทึกปัจจุบัน ในโหมด 'ring buffer' และ 'fifo' ผู้ใช้จะต้องเรียกใช้ฟังก์ชันนี้ ในโหมด 'sequence' และ 'sequence non blocking' ฟังก์ชันนี้จะถูกเรียกใช้โดยอัตโนมัติเมื่อถึง number_of_images
ต้นแบบ def หยุด (ตัวเอง):
2.1.3 ปิด
คำอธิบาย ปิดกล้องที่เปิดใช้งานและปล่อยทรัพยากรที่ถูกบล็อก ต้องเรียกใช้ฟังก์ชันนี้ก่อนที่แอปพลิเคชันจะสิ้นสุดลง มิฉะนั้นทรัพยากรจะยังคงถูกครอบครอง
ต้นแบบ def ปิด (ตัวเอง):
ฟังก์ชันนี้ถูกเรียกใช้โดยอัตโนมัติหากวัตถุกล้องถูกสร้างขึ้นโดยคำสั่ง with การเรียกให้ปิดอย่างชัดเจน () ไม่จำเป็นอีกต่อไป
ด้วย pco.Camera() เป็นกล้อง: # ทำบางสิ่ง
2.1.4 รูปภาพ
คำอธิบาย ส่งกลับภาพจากเครื่องบันทึก ประเภทของรูปภาพคือ numpy.ndarray อาร์เรย์นี้มีรูปร่างขึ้นอยู่กับความละเอียดและ ROI ของภาพ
ต้นแบบ ภาพ def (ตัวเอง, image_number=0, roi=ไม่มี):
พารามิเตอร์

ชื่อ คำอธิบาย
หมายเลขภาพ ระบุจำนวนภาพที่จะอ่าน ในโหมด 'sequence' หรือ 'sequence non blocking' ดัชนีเครื่องบันทึกจะตรงกับ image_number หากตั้งค่า image_number เป็น 0xFFFFFFFF ภาพที่บันทึกล่าสุดจะถูกคัดลอก สิ่งนี้ทำให้สามารถสร้างพรีสดได้view ขณะกำลังบันทึก
รอย ตั้งค่าภูมิภาคที่สนใจ เฉพาะบริเวณนี้ของรูปภาพเท่านั้นที่จะถูกคัดลอกไปยังค่าที่ส่งกลับ

Example >>> cam.record(number_of_images=1, โหมด='ลำดับ')
>>> รูปภาพ เมตา = cam.image()
>>> พิมพ์(ภาพ) numpy.ndarray
>>> image.shape (2160, 2560)
>>> รูปภาพ ข้อมูลเมตา = cam.image(roi=(1, 1, 300, 300))
>>> image.shape (300, 300)
2.1.5 ภาพ
คำอธิบาย ส่งกลับภาพที่บันทึกทั้งหมดจากเครื่องบันทึกเป็นรายการอาร์เรย์ตัวเลข
ต้นแบบ ภาพ def (ตัวเอง, roi=ไม่มี, ขนาดบล็อก=ไม่มี):
พารามิเตอร์

ชื่อ คำอธิบาย
รอย ตั้งค่าภูมิภาคที่สนใจ เฉพาะบริเวณนี้ของรูปภาพเท่านั้นที่จะถูกคัดลอกไปยังค่าที่ส่งกลับ
ขนาดบล็อค กำหนดจำนวนภาพสูงสุดที่ส่งคืน พารามิเตอร์นี้มีประโยชน์ในโหมด 'fifo' และภายใต้เงื่อนไขพิเศษเท่านั้น

Example >>> cam.record(number_of_images=20, โหมด='ลำดับ')
>>> รูปภาพ ข้อมูลเมตา = cam.images()
>>> เลนส์(ภาพ) 20
>>> สำหรับภาพในภาพ:
-
พิมพ์ ('หมายถึง: {:7.2f} DN'.format (image.mean ()))
-
หมายถึง: 2147.64 DN
หมายถึง: 2144.61 DN
-
>>> รูปภาพ = cam.images (roi = (1, 1, 300, 300))
>>> รูปภาพ[0].รูปร่าง (300, 300)
2.1.6 รูปภาพ_เฉลี่ย
คำอธิบาย ส่งกลับภาพเฉลี่ย ภาพนี้คำนวณจากภาพที่บันทึกไว้ทั้งหมดในบัฟเฟอร์
ต้นแบบ def image_average(ตัวเอง, roi=ไม่มี):
พารามิเตอร์

ชื่อ คำอธิบาย
รอย กำหนดภูมิภาคที่สนใจ เฉพาะบริเวณนี้ของรูปภาพเท่านั้นที่จะถูกคัดลอกไปยังค่าที่ส่งกลับ

Example >>> cam.record(number_of_images=100, โหมด='ลำดับ')
>>> เฉลี่ย = cam.image_average()
>>> เฉลี่ย = cam.image_average(roi=(1, 1, 300, 300))
2.1.7 ตั้งค่า_แสง_เวลา
คำอธิบาย ตั้งเวลาเปิดรับแสงของกล้อง
ต้นแบบ def set_exposure_time(ตัวเอง เวลาเปิดรับแสง):
พารามิเตอร์

ชื่อ คำอธิบาย
เวลารับสัมผัสเชื้อ ต้องกำหนดเป็นทศนิยมหรือค่าจำนวนเต็มในหน่วย 'วินาที' ค่าพื้นฐานสำหรับฟังก์ชัน sdk.set_delay_exposure_time(0, 'ms', เวลา, ฐานเวลา) จะถูกคำนวณโดยอัตโนมัติ เวลาหน่วงถูกกำหนดเป็น 0

Example >>> cam.set_exposure_time(0.001)
>>> cam.set_exposure_time(1e-3)
2.1.8 รอ_for_first_image
คำอธิบาย รอภาพแรกที่มีในหน่วยความจำเครื่องบันทึก ในโหมดเครื่องบันทึก 'ซีเควนซ์ไม่บล็อค', 'ริงบัฟเฟอร์' และ 'fifo' ฟังก์ชัน record() จะคืนค่าทันที ดังนั้นจึงสามารถใช้ฟังก์ชั่นนี้เพื่อรอภาพจากกล้องก่อนที่จะเรียก image(), images() หรือ image_average()
ต้นแบบ def wait_for_first_image (ตัวเอง):
2.2 การกำหนดค่าตัวแปร
พารามิเตอร์ของกล้องได้รับการอัพเดตโดยการเปลี่ยนตัวแปรการกำหนดค่า
cam.configuration = {'เวลาเปิดรับแสง': 10e-3,
'รอย': (1, 1, 512, 512),
'เวลาamp': 'แอสกี้',
'อัตราพิกเซล': 100_000_000
'ทริกเกอร์': 'ลำดับอัตโนมัติ'
'ได้รับ': 'อัตโนมัติ'
'ข้อมูลเมตา': 'เปิด'
'บิน': (1, 1)}
ตัวแปรสามารถเปลี่ยนแปลงได้ก่อนที่จะเรียกใช้ฟังก์ชัน record() เท่านั้น เป็นพจนานุกรมที่มีจำนวนรายการที่แน่นอน ไม่จำเป็นต้องระบุองค์ประกอบที่เป็นไปได้ทั้งหมด ต่อไปนี้ampโค้ด le จะเปลี่ยนเฉพาะ 'อัตราพิกเซล' และไม่ส่งผลต่อองค์ประกอบอื่นๆ ของการกำหนดค่า
ด้วย pco.Camera() เป็นกล้อง:
cam.configuration = {'อัตราพิกเซล': 286_000_000}
แคม.บันทึก()
-
2.3 วัตถุ
ส่วนนี้อธิบายอ็อบเจ็กต์ทั้งหมดที่มีให้โดยคลาส pco.Camera
2.3.1 ชุดพัฒนาซอฟต์แวร์
วัตถุ 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 - รหัส QRhttps://www.pco.de/applications/

พีซีโอยุโรป
+49 9441 2005 50
info@pco.de
สคบ
พีซีโออเมริกา
+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 เทคโนโลยีโลโก้ EXCELITAS TECHNOLOGIES 1

เอกสาร / แหล่งข้อมูล

ภาพย่อของไฟล์ PDFชุดพัฒนาซอฟต์แวร์ Python
User Manual · Python Software Development Kit, Software Development Kit, Development Kit, Kit

ถามคำถาม

Use this section to ask about setup, compatibility, troubleshooting, or anything missing from this manual.

ถามคำถาม

Ask about setup, compatibility, troubleshooting, or anything missing from this manual. Name and email are optional.