โลโก้ 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

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

EXCELITAS TECHNOLOGIES ชุดพัฒนาซอฟต์แวร์ Python [พีดีเอฟ] คู่มือการใช้งาน
ชุดพัฒนาซอฟต์แวร์ Python, ชุดพัฒนาซอฟต์แวร์, ชุดพัฒนา, ชุด

อ้างอิง

ฝากความคิดเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องกรอกข้อมูลมีเครื่องหมาย *