EXCELITAS TECHNOLOGIES Python Software Development Kit ຄູ່ມືຜູ້ໃຊ້

EXCELITAS TECHNOLOGIES Python Software Development Kit - Featured Image

ໂລໂກ້ EXCELITAS TECHNOLOGIESໂລໂກ້ 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, ເຢຍລະມັນ
ອີເມວ: info@pco.de
web: www.pco.de
ຄູ່ມືຜູ້ໃຊ້ pco.python 0.1.7
ປ່ອຍອອກມາເມື່ອເດືອນທັນວາ 2021
©ລິຂະສິດ Excelitas PCO GmbH
EXCELITAS TECHNOLOGIES ຊຸດພັດທະນາຊອບແວ Python - icon 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, USA.

ທົ່ວໄປ

ຊຸດ Python pco ສະຫນອງຫນ້າທີ່ທັງຫມົດສໍາລັບການເຮັດວຽກກັບກ້ອງຖ່າຍຮູບ pco ທີ່ອີງໃສ່ປະຈຸບັນ pco.sdk. ຫ້ອງສະຫມຸດທີ່ໃຊ້ຮ່ວມກັນທັງຫມົດສໍາລັບການສື່ສານກັບກ້ອງຖ່າຍຮູບແລະການປະມວນຜົນຮູບພາບຕໍ່ມາແມ່ນລວມ.

  • ງ່າຍທີ່ຈະໃຊ້ຫ້ອງຮຽນກ້ອງຖ່າຍຮູບ
  • API ທີ່ມີປະສິດທິພາບເພື່ອ pco.sdk
  • ການບັນທຶກຮູບພາບແລະການປະມວນຜົນກັບ pco.recorder

1.1 ການຕິດຕັ້ງ
ຕິດຕັ້ງຈາກ pypi (ແນະນຳ):
$ pip ຕິດຕັ້ງ pco
1.2 ການນຳໃຊ້ພື້ນຖານ
ນໍາເຂົ້າ matplotlib.pyplot ເປັນ plt
ນໍາເຂົ້າ pco
ກັບ pco.Camera() ເປັນ cam:
cam.record()
ຮູບພາບ, meta = cam.image()
plt.imshow(ຮູບ, cmap='grey')
plt.show()EXCELITAS TECHNOLOGIES ຊຸດພັດທະນາຊອບແວ Python - ການນໍາໃຊ້ພື້ນຖານ1.3 ເຫດການ ແລະ ບັນທຶກຄວາມຜິດພາດ
ເພື່ອເປີດໃຊ້ງານການອອກບັນທຶກ, ສ້າງວັດຖຸກ້ອງຖ່າຍຮູບດ້ວຍຕົວກໍານົດການ debuglevel=.
ລະດັບການດີບັກສາມາດຖືກຕັ້ງເປັນໜຶ່ງໃນຄ່າຕໍ່ໄປນີ້:

  • 'ປິດ' ປິດການໃຊ້ງານຜົນຜະລິດທັງໝົດ.
  • 'error' ສະແດງພຽງແຕ່ຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ.
  • 'verbose' ສະແດງຂໍ້ຄວາມທັງຫມົດ.
  • 'extra verbose' ສະແດງຂໍ້ຄວາມ ແລະຄ່າທັງໝົດ.

ລະດັບດີບັກເລີ່ມຕົ້ນແມ່ນ 'ປິດ'.
pco.Camera(debuglevel='verbose')

[][sdk] get_camera_type: ຕົກລົງ.
ເວລາທາງເລືອກamp= ພາຣາມິເຕີເປີດໃຊ້ງານ a tag ໃນຜົນຜະລິດທີ່ພິມອອກ. ຄ່າທີ່ເປັນໄປໄດ້ແມ່ນ: 'ເປີດ' ແລະ 'ປິດ'. ຄ່າເລີ່ມຕົ້ນແມ່ນ 'ປິດ'.
pco.Camera(debuglevel='verbose', ເວລາສຸດamp='on')

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

ເອກະສານ API

ຫ້ອງຮຽນ pco.Camera ສະເຫນີວິທີການດັ່ງຕໍ່ໄປນີ້:

  • record() ສ້າງ, configure, ແລະເລີ່ມ instance ຕົວບັນທຶກໃຫມ່.
  • stop() ຢຸດການບັນທຶກປະຈຸບັນ.
  • close() ປິດກ້ອງຖ່າຍຮູບທີ່ໃຊ້ຢູ່ໃນປະຈຸບັນ ແລະປ່ອຍຊັບພະຍາກອນທີ່ຄອບຄອງໄວ້.
  • image() ສົ່ງຄືນຮູບພາບຈາກເຄື່ອງບັນທຶກເປັນ array numpy.
  • images() ສົ່ງຄືນຮູບພາບທີ່ບັນທຶກໄວ້ທັງໝົດຈາກເຄື່ອງບັນທຶກເປັນລາຍຊື່ຂອງ arrays.
  • image_average() ສົ່ງຄືນຮູບພາບສະເລ່ຍ. ຮູບພາບນີ້ແມ່ນຖືກຄິດໄລ່ຈາກທຸກຮູບພາບທີ່ບັນທຶກໄວ້ໃນ buffer.
  • set_exposure_time() ກໍານົດເວລາ exposure ສໍາລັບກ້ອງຖ່າຍຮູບ.
  • wait_for_first_image() ລໍຖ້າຮູບພາບທໍາອິດທີ່ມີຢູ່ໃນຫນ່ວຍຄວາມຈໍາຂອງເຄື່ອງບັນທຶກ.

ຫ້ອງຮຽນ pco.Camera ມີຕົວແປດັ່ງຕໍ່ໄປນີ້:

  • ການຕັ້ງຄ່າ

ຫ້ອງຮຽນ pco.Camera ມີວັດຖຸດັ່ງຕໍ່ໄປນີ້:

  • sdk ສະຫນອງການເຂົ້າເຖິງໂດຍກົງກັບຫນ້າທີ່ພື້ນຖານທັງຫມົດຂອງ pco.sdk.
  • recorder ສະ ຫນອງ ການ ເຂົ້າ ເຖິງ ໂດຍ ກົງ ກັບ ຫນ້າ ທີ່ ຕິດ ພັນ ທັງ ຫມົດ ຂອງ pco.recorder.

2.1 ວິທີການ
ພາກນີ້ອະທິບາຍວິທີການທັງໝົດທີ່ສະເໜີໃຫ້ໂດຍຫ້ອງຮຽນ pco.Camera.
2.1.1 ບັນທຶກ
ລາຍລະອຽດ ສ້າງ, ຕັ້ງຄ່າ, ແລະເລີ່ມຕົວຢ່າງຕົວບັນທຶກໃໝ່. ການຕັ້ງຄ່າກ້ອງຖ່າຍຮູບທັງໝົດຕ້ອງຖືກຕັ້ງກ່ອນການໂທບັນທຶກ(). ຄໍາສັ່ງ set_exposure_time() ເປັນຂໍ້ຍົກເວັ້ນເທົ່ານັ້ນ. ຟັງຊັນນີ້ບໍ່ມີຜົນຕໍ່ກັບວັດຖຸເຄື່ອງບັນທຶກ ແລະສາມາດຖືກເອີ້ນຂຶ້ນໃນລະຫວ່າງການບັນທຶກ.
ຕົ້ນແບບ def record(self, number_of_images=1, mode='sequence'):
ພາລາມິເຕີ

ຊື່ ລາຍລະອຽດ
number_of_images ກໍານົດຈໍານວນຮູບພາບທີ່ຈັດສັນຢູ່ໃນໄດເວີ. RAM ຂອງ PC ຈໍາກັດຄ່າສູງສຸດ.
ໂໝດ ໃນໂຫມດ 'ລໍາດັບ', ຟັງຊັນນີ້ຖືກປິດກັ້ນໃນລະຫວ່າງການບັນທຶກ. ເຄື່ອງບັນທຶກຈະຢຸດອັດຕະໂນມັດເມື່ອຮອດຈໍານວນຮູບ. ໃນໂຫມດ 'sequence non blocking', ຟັງຊັ່ນນີ້ແມ່ນບໍ່ຖືກບລັອກ. ສະຖານະຕ້ອງໄດ້ຮັບການກວດສອບກ່ອນທີ່ຈະອ່ານຮູບພາບ. ໂໝດນີ້ໃຊ້ເພື່ອອ່ານຮູບພາບໃນຂະນະທີ່ບັນທຶກ, ຕົວຢ່າງເຊັ່ນ: ຮູບຕົວຢ່າງ.
ໃນໂຫມດ 'ring buffer' ຟັງຊັນນີ້ບໍ່ຖືກບລັອກ. ສະຖານະຕ້ອງໄດ້ຮັບການກວດສອບກ່ອນທີ່ຈະອ່ານຮູບພາບ. ຕົວບັນທຶກບໍ່ຢຸດການບັນທຶກເມື່ອເຖິງ number_of_images. ເມື່ອສິ່ງດັ່ງກ່າວເກີດຂຶ້ນ, ຮູບພາບເກົ່າແກ່ທີ່ສຸດຈະຖືກຂຽນທັບ.
ໃນໂຫມດ 'fifo', ຟັງຊັນນີ້ແມ່ນບໍ່ຖືກບລັອກ. ສະຖານະຕ້ອງໄດ້ຮັບການກວດສອບກ່ອນທີ່ຈະອ່ານຮູບພາບ. ເມື່ອເຖິງຕົວເລກ number_of_images ໃນ fifo, ຮູບພາບຕໍ່ໄປນີ້ຈະຖືກຫຼຸດລົງຈົນກວ່າຮູບພາບຈະຖືກອ່ານຈາກ fifo.

2.1.2 ຢຸດ
ລາຍລະອຽດ ຢຸດການບັນທຶກປະຈຸບັນ. ໃນໂຫມດ 'ring buffer' ແລະ 'fifo', ຟັງຊັນນີ້ຕ້ອງຖືກເອີ້ນໂດຍຜູ້ໃຊ້. ໃນໂຫມດ 'ລໍາດັບ' ແລະ 'ລໍາດັບບໍ່ຖືກບລັອກ', ຟັງຊັນນີ້ຈະຖືກເອີ້ນໂດຍອັດຕະໂນມັດເມື່ອຈໍານວນຮູບພາບເຖິງ.
ຕົ້ນແບບ def stop(ຕົວ​ເອງ):
2.1.3 ປິດ
ລາຍລະອຽດ ປິດກ້ອງຖ່າຍຮູບທີ່ເປີດໃຊ້ງານ ແລະປ່ອຍຊັບພະຍາກອນທີ່ຖືກບລັອກ. ຟັງຊັນນີ້ຕ້ອງຖືກເອີ້ນກ່ອນທີ່ແອັບພລິເຄຊັນຈະຖືກປິດ. ຖ້າບໍ່ດັ່ງນັ້ນ, ຊັບພະຍາກອນຍັງຄົງຢູ່.
ຕົ້ນແບບ def close(ຕົວ​ເອງ):
ຟັງຊັນນີ້ຖືກເອີ້ນໂດຍອັດຕະໂນມັດຖ້າວັດຖຸກ້ອງຖ່າຍຮູບຖືກສ້າງຂື້ນໂດຍຄໍາຖະແຫຼງທີ່. ການໂທຫາຢ່າງຈະແຈ້ງເພື່ອປິດ() ແມ່ນບໍ່ຈໍາເປັນອີກຕໍ່ໄປ.
ກັບ pco.Camera() ເປັນ cam: # ເຮັດບາງສິ່ງບາງຢ່າງ
2.1.4 ຮູບພາບ
ລາຍລະອຽດ ສົ່ງຄືນຮູບພາບຈາກເຄື່ອງບັນທຶກ. ປະເພດຂອງຮູບພາບແມ່ນ numpy.ndarray. array ນີ້ແມ່ນຮູບຮ່າງຂຶ້ນກັບຄວາມລະອຽດແລະ ROI ຂອງຮູບພາບ.
ຕົ້ນແບບ def image(self, image_number=0, roi=None):
ພາລາມິເຕີ

ຊື່ ລາຍລະອຽດ
ໝາຍເລກຮູບ ລະບຸຈໍານວນຮູບພາບທີ່ຈະອ່ານ. ໃນໂໝດ 'ລຳດັບ' ຫຼື 'ລຳດັບບໍ່ບລັອກ', ດັດຊະນີເຄື່ອງບັນທຶກກົງກັບໝາຍເລກ image_number. ຖ້າ image_number ຖືກຕັ້ງເປັນ 0xFFFFFFFF, ຮູບພາບທີ່ບັນທຶກໄວ້ສຸດທ້າຍຈະຖືກຄັດລອກ. ນີ້ອະນຸຍາດໃຫ້ສ້າງ pre ສົດview ໃນຂະນະທີ່ບັນທຶກ.
ໂຣ ກໍານົດພາກພື້ນທີ່ມີຄວາມສົນໃຈ. ພຽງແຕ່ພາກພື້ນນີ້ຂອງຮູບພາບທີ່ຖືກຄັດລອກໄປຫາຄ່າກັບຄືນ.

Example >>> cam.record(number_of_images=1, mode='sequence')
>>> ຮູບພາບ, meta = cam.image()
>>> type(ຮູບ) numpy.ndarray
>>> image.shape (2160, 2560)
>>> ຮູບພາບ, metadata = cam.image(roi=(1, 1, 300, 300))
>>> image.shape (300, 300)
2.1.5 ຮູບພາບ
ລາຍລະອຽດ ສົ່ງຄືນຮູບພາບທີ່ບັນທຶກໄວ້ທັງໝົດຈາກເຄື່ອງບັນທຶກເປັນລາຍຊື່ຂອງ arrays.
ຕົ້ນແບບ def images(self, roi=None, blocksize=None):
ພາລາມິເຕີ

ຊື່ ລາຍລະອຽດ
ໂຣ ກໍານົດພາກພື້ນທີ່ມີຄວາມສົນໃຈ. ພຽງແຕ່ພາກພື້ນນີ້ຂອງຮູບພາບທີ່ຖືກຄັດລອກໄປຫາຄ່າກັບຄືນ.
ຂະໜາດ ກໍານົດຈໍານວນສູງສຸດຂອງຮູບພາບທີ່ຖືກສົ່ງຄືນ. ພາລາມິເຕີນີ້ມີປະໂຫຍດພຽງແຕ່ຢູ່ໃນໂຫມດ 'fifo' ແລະພາຍໃຕ້ເງື່ອນໄຂພິເສດ.

Example >>> cam.record(number_of_images=20, mode='sequence')
>>> ຮູບພາບ, metadatas = cam.images()
>>> ເລນ(ພາບ) 20
>>> ສໍາລັບຮູບພາບໃນຮູບພາບ:

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

ສະເລ່ຍ: 2147.64 DN
ສະເລ່ຍ: 2144.61 DN

>>> ຮູບພາບ = cam.images(roi=(1, 1, 300, 300))
>>> images[0].ຮູບຮ່າງ (300, 300)
2.1.6 Image_average
ລາຍລະອຽດ ຕອບຮູບພາບສະເລ່ຍ. ຮູບພາບນີ້ແມ່ນຖືກຄິດໄລ່ຈາກທຸກຮູບພາບທີ່ບັນທຶກໄວ້ໃນ buffer.
ຕົ້ນແບບ def image_average(ຕົນເອງ, roi=ບໍ່ມີ):
ພາລາມິເຕີ

ຊື່ ລາຍລະອຽດ
ໂຣ ກໍານົດພາກພື້ນທີ່ມີຄວາມສົນໃຈ. ພຽງແຕ່ພາກພື້ນນີ້ຂອງຮູບພາບທີ່ຖືກຄັດລອກໄປຫາຄ່າກັບຄືນ.

Example >>> cam.record(number_of_images=100, mode='sequence')
>>> avg = cam.image_average()
>>> avg = cam.image_average(roi=(1, 1, 300, 300))
2.1.7 Set_exposure_time
ລາຍລະອຽດ ຕັ້ງຄ່າເວລາເປີດຮັບແສງຂອງກ້ອງຖ່າຍຮູບ.
ຕົ້ນແບບ def set_exposure_time(ຕົນເອງ, exposure_time):
ພາລາມິເຕີ

ຊື່ ລາຍລະອຽດ
​ເວ​ລາ​ການ​ສຳ​ຜັດ​ເຊື້ອ ຕ້ອງໃຫ້ເປັນຄ່າ float ຫຼື integer ໃນຫົວໜ່ວຍ 'second'. ຄ່າພື້ນຖານສຳລັບຟັງຊັນ 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 Wait_for_first_image
ລາຍລະອຽດ ລໍຖ້າຮູບພາບທໍາອິດທີ່ມີຢູ່ໃນຫນ່ວຍຄວາມຈໍາຂອງເຄື່ອງບັນທຶກ. ໃນໂຫມດບັນທຶກ 'ລໍາດັບບໍ່ຂັດຂວາງ', 'ring buffer'. ແລະ 'fifo', function record() ກັບຄືນມາທັນທີ. ດັ່ງນັ້ນ, ຟັງຊັນນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອລໍຖ້າຮູບພາບຈາກກ້ອງຖ່າຍຮູບກ່ອນທີ່ຈະໂທຫາ image(), images(), ຫຼື image_average().
ຕົ້ນແບບ def wait_for_first_image(ຕົນເອງ):
2.2 ການຕັ້ງຄ່າຕົວແປ
ຕົວກໍານົດການກ້ອງຖ່າຍຮູບໄດ້ຖືກປັບປຸງໂດຍການປ່ຽນຕົວແປການຕັ້ງຄ່າ.
cam.configuration = {'ເວລາເປີດຮັບແສງ': 10e-3,
'roi': (1, 1, 512, 512),
'ເວລາທີ່ສຸດamp': 'ອາຊີ',
'ອັດຕາ pixels': 100_000_000,
'trigger': 'ລໍາດັບອັດຕະໂນມັດ',
'ໄດ້ມາ': 'ອັດຕະໂນມັດ',
'ເມຕາເດຕາ': 'ເປີດ',
'binning': (1, 1)}
ຕົວແປສາມາດປ່ຽນແປງໄດ້ກ່ອນທີ່ຟັງຊັນ record() ຈະຖືກເອີ້ນ. ມັນເປັນວັດຈະນານຸກົມທີ່ມີຈໍານວນທີ່ແນ່ນອນຂອງລາຍການ. ບໍ່ແມ່ນອົງປະກອບທີ່ເປັນໄປໄດ້ທັງຫມົດຕ້ອງໄດ້ຮັບການລະບຸ. ຕໍ່ໄປນີ້ sample code ພຽງແຕ່ປ່ຽນ 'ອັດຕາ pixels' ແລະບໍ່ມີຜົນກະທົບຕໍ່ອົງປະກອບອື່ນໆຂອງການຕັ້ງຄ່າ.
ກັບ pco.Camera() ເປັນ cam:
cam.configuration = {'ອັດຕາ pixels': 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. ມັນບໍ່ຈໍາເປັນຕ້ອງໂທຫາວິທີການຫ້ອງຮຽນບັນທຶກໂດຍກົງ. ຟັງຊັນທັງຫມົດແມ່ນກວມເອົາຢ່າງເຕັມສ່ວນໂດຍວິທີການຂອງຫ້ອງຮຽນກ້ອງຖ່າຍຮູບ.

EXCELITAS TECHNOLOGIES ຊຸດພັດທະນາຊອບແວ Python - QR cotehttps://www.pco.de/applications/

pco ເອີຣົບ
+49 9441 2005 50
info@pco.de
pco.de
pco ອາເມຣິກາ
+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 1

ເອກະສານ / ຊັບພະຍາກອນ

PDF thumbnailຊຸດພັດທະນາຊອບແວ 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.