EXCELITAS TECHNOLOGIES لوگوEXCELITAS TECHNOLOGIES لوگو 1ازگر سافٹ ویئر ڈویلپمنٹ کٹ
صارف دستیEXCELITAS TECHNOLOGIES Python سافٹ ویئر ڈویلپمنٹ کٹEXCELITAS TECHNOLOGIES لوگو 2

ازگر سافٹ ویئر ڈویلپمنٹ کٹ

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/ یا کریٹیو کامنز، پی او باکس 1866، ماؤنٹین کو خط بھیجیں۔ View، CA 94042، USA۔

جنرل

Python پیکیج pco پی سی او کیمروں کے ساتھ کام کرنے کے لیے تمام افعال پیش کرتا ہے جو کرنٹ پر مبنی ہیں۔ pco.sdk. کیمرے کے ساتھ مواصلت اور اس کے بعد امیج پروسیسنگ کے لیے تمام مشترکہ لائبریریاں شامل ہیں۔

  • کیمرہ کلاس استعمال کرنے میں آسان
  • طاقتور API کو pco.sdk
  • تصویر کی ریکارڈنگ اور پروسیسنگ کے ساتھ pco.recorder

1.1 تنصیب
pypi سے انسٹال کریں (تجویز کردہ):
$pip pco انسٹال کریں۔
1.2 بنیادی استعمال
matplotlib.pyplot کو بطور plt درآمد کریں۔
پی سی او درآمد کریں۔
pco.Camera() کے ساتھ بطور کیم:
cam.record()
تصویر، میٹا = cam.image()
plt.imshow(تصویر، cmap='گرے')
plt.show()EXCELITAS TECHNOLOGIES Python سافٹ ویئر ڈویلپمنٹ کٹ - بنیادی استعمال1.3 ایونٹ اور ایرر لاگنگ
لاگنگ آؤٹ پٹ کو چالو کرنے کے لیے، debuglevel= پیرامیٹر کے ساتھ کیمرہ آبجیکٹ بنائیں۔
ڈیبگ لیول کو درج ذیل اقدار میں سے کسی ایک پر سیٹ کیا جا سکتا ہے:

  • 'آف' تمام آؤٹ پٹ کو غیر فعال کرتا ہے۔
  • 'غلطی' صرف غلطی کے پیغامات دکھاتا ہے۔
  • 'verbose' تمام پیغامات دکھاتا ہے۔
  • 'اضافی وربوز' تمام پیغامات اور اقدار کو دکھاتا ہے۔

ڈیفالٹ ڈیبگل لیول 'آف' ہے۔
pco.Camera(debuglevel='verbose')

[][sdk] get_camera_type: ٹھیک ہے۔
اختیاری ٹائمسٹamp= پیرامیٹر ایکٹیویٹ کرتا ہے۔ 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() ریکارڈر سے ایک تصویر کو numpy array کے طور پر لوٹاتا ہے۔
  • images() ریکارڈر سے تمام ریکارڈ شدہ تصاویر کو numpy arrays کی فہرست کے طور پر واپس کرتا ہے۔
  • 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 ریکارڈ (self, number_of_images=1, mode='sequence'):
پیرامیٹر

نام تفصیل
تعداد_کی_تصاویر ڈرائیور میں مختص تصاویر کی تعداد مقرر کرتا ہے۔ PC کی RAM زیادہ سے زیادہ قدر کو محدود کرتی ہے۔
موڈ 'سیکیونس' موڈ میں، یہ فنکشن ریکارڈ کے دوران بلاک ہو رہا ہے۔ نمبر_of_images تک پہنچنے پر ریکارڈر خود بخود رک جاتا ہے۔ 'سیکونس نان بلاکنگ' موڈ میں، یہ فنکشن نان بلاکنگ ہے۔ تصویر پڑھنے سے پہلے سٹیٹس کو چیک کرنا ضروری ہے۔ یہ موڈ ریکارڈنگ کے دوران تصاویر کو پڑھنے کے لیے استعمال کیا جاتا ہے، جیسے تھمب نیل۔
'رنگ بفر' موڈ میں یہ فنکشن نان بلاکنگ ہے۔ تصویر پڑھنے سے پہلے سٹیٹس کو چیک کرنا ضروری ہے۔ جب نمبر_of_images تک پہنچ جاتا ہے تو ریکارڈر ریکارڈنگ نہیں روکتا۔ ایک بار ایسا ہونے کے بعد، قدیم ترین تصاویر اوور رائٹ ہو جاتی ہیں۔
'فیفو' موڈ میں، یہ فنکشن نان بلاکنگ ہے۔ تصویر پڑھنے سے پہلے سٹیٹس کو چیک کرنا ضروری ہے۔ جب فیفو میں امیجز کی تعداد تک پہنچ جاتی ہے، تو درج ذیل تصاویر کو اس وقت تک گرا دیا جاتا ہے جب تک کہ فیفو سے امیجز کو نہیں پڑھا جاتا۔

2.1.2 رک
تفصیل موجودہ ریکارڈنگ کو روکتا ہے۔ 'رنگ بفر' اور 'فیفو' موڈ میں، اس فنکشن کو صارف کو کال کرنا چاہیے۔ 'sequence' اور 'sequence non blocking' موڈ میں، یہ فنکشن خود بخود کال ہو جاتا ہے جب نمبر_of_images تک پہنچ جاتا ہے۔
پروٹوٹائپ def stop(self):
2.1.3 بند کریں۔
تفصیل چالو کیمرے کو بند کرتا ہے اور مسدود وسائل کو جاری کرتا ہے۔ درخواست کو ختم کرنے سے پہلے اس فنکشن کو کال کرنا ضروری ہے۔ بصورت دیگر وسائل پر قابض رہیں گے۔
پروٹوٹائپ ڈیف بند (خود):
یہ فنکشن خود بخود بلایا جاتا ہے اگر کیمرہ آبجیکٹ with بیان کے ذریعہ بنایا گیا ہو۔ بند کرنے کے لیے ایک واضح کال اب ضروری نہیں ہے۔
pco.Camera() بطور کیم کے ساتھ: # کچھ چیزیں کریں۔
2.1.4 تصویر
تفصیل ریکارڈر سے تصویر لوٹاتا ہے۔ تصویر کی قسم ایک numpy.ndarray ہے۔ یہ صف تصویر کی ریزولوشن اور ROI پر منحصر ہوتی ہے۔
پروٹوٹائپ def image(self, image_number=0, roi=None):
پیرامیٹر

نام تفصیل
تصویر_نمبر پڑھی جانے والی تصویر کی تعداد بتاتا ہے۔ 'sequence' یا 'sequence non blocking' موڈ میں، ریکارڈر انڈیکس image_number سے میل کھاتا ہے۔ اگر image_number 0xFFFFFFFF پر سیٹ ہے، تو آخری ریکارڈ شدہ تصویر کاپی ہو جاتی ہے۔ یہ ایک لائیو پری بنانے کی اجازت دیتا ہے۔view ریکارڈنگ کے دوران.
roi دلچسپی کا علاقہ متعین کرتا ہے۔ صرف تصویر کا یہ علاقہ واپسی کی قدر میں کاپی کیا جاتا ہے۔

Example >>> cam.record(number_of_images=1, mode='sequence')
>>> تصویر، میٹا = cam.image()
>>> type(image) numpy.ndarray
>>> image.shape (2160, 2560)
>>> تصویر، میٹا ڈیٹا = cam.image(roi=(1, 1, 300, 300))
>>> image.shape (300, 300)
2.1.5 تصاویر
تفصیل ریکارڈر سے تمام ریکارڈ شدہ تصاویر کو numpy arrays کی فہرست کے طور پر واپس کرتا ہے۔
پروٹوٹائپ def امیجز (self, roi=None, blocksize=None):
پیرامیٹر

نام تفصیل
roi دلچسپی کا علاقہ متعین کرتا ہے۔ صرف تصویر کا یہ علاقہ واپسی کی قدر میں کاپی کیا جاتا ہے۔
بلاکسائز واپس آنے والی تصاویر کی زیادہ سے زیادہ تعداد کی وضاحت کرتا ہے۔ یہ پیرامیٹر صرف 'fifo' موڈ میں اور خاص حالات میں مفید ہے۔

Example >>> cam.record(number_of_images=20, mode='sequence')
>>> تصاویر، میٹا ڈیٹا = 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(self, roi=None):
پیرامیٹر

نام تفصیل
roi دلچسپی کے علاقے کی وضاحت کرتا ہے۔ صرف تصویر کا یہ علاقہ واپسی کی قدر میں کاپی کیا جاتا ہے۔

Example >>> cam.record(number_of_images=100, mode='sequence')
>>> اوسط = 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', time, timebase) کے لیے بنیادی قدروں کا خود بخود حساب لگایا جائے گا۔ تاخیر کا وقت 0 پر سیٹ کیا گیا ہے۔

Example >>> cam.set_exposure_time(0.001)
>>> cam.set_exposure_time(1e-3)
2.1.8 پہلی_تصویر کے لیے_انتظار کریں۔
تفصیل ریکارڈر میموری میں پہلی دستیاب تصویر کا انتظار ہے۔ ریکارڈر موڈ میں 'سیکوینس نان بلاکنگ'، 'رنگ بفر'۔ اور 'fifo'، فنکشن ریکارڈ() فوراً واپس آجاتا ہے۔ لہذا، یہ فنکشن image(), images(), یا image_average() کو کال کرنے سے پہلے کیمرے سے تصاویر کا انتظار کرنے کے لیے استعمال کیا جا سکتا ہے۔
پروٹوٹائپ def wait_for_first_image(self):
2.2 متغیر کنفیگریشن
کیمرہ کے پیرامیٹرز کو کنفیگریشن متغیر کو تبدیل کرکے اپ ڈیٹ کیا جاتا ہے۔
cam.configuration = {'نمائش کا وقت': 10e-3،
'روئی': (1، 1، 512، 512)،
'timestamp': 'ascii',
'پکسل ریٹ': 100_000_000،
'trigger': 'خودکار ترتیب',
'acquire': 'خودکار',
'metadata': 'آن'،
'بائننگ': (1، 1)}
متغیر کو صرف ریکارڈ () فنکشن کو کال کرنے سے پہلے ہی تبدیل کیا جاسکتا ہے۔ یہ ایک لغت ہے جس میں اندراجات کی ایک خاص تعداد ہے۔ تمام ممکنہ عناصر کی وضاحت کرنے کی ضرورت نہیں ہے۔ مندرجہ ذیل ایسample کوڈ صرف 'پکسل ریٹ' کو تبدیل کرتا ہے اور کنفیگریشن کے کسی دوسرے عناصر کو متاثر نہیں کرتا ہے۔
pco.Camera() کے ساتھ بطور کیم:
cam.configuration = {'پکسل ریٹ': 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/

پی سی او یورپ
+49 9441 2005 50
info@pco.de
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 TECHNOLOGIES لوگوEXCELITAS TECHNOLOGIES لوگو 1

دستاویزات / وسائل

EXCELITAS TECHNOLOGIES Python سافٹ ویئر ڈویلپمنٹ کٹ [پی ڈی ایف] یوزر مینوئل
Python Software Development Kit, Software Development Kit, Development Kit, Kit

حوالہ جات

ایک تبصرہ چھوڑیں۔

آپ کا ای میل پتہ شائع نہیں کیا جائے گا۔ مطلوبہ فیلڈز نشان زد ہیں۔ *