

પાયથોન સોફ્ટવેર ડેવલપમેન્ટ કિટ
વપરાશકર્તા માર્ગદર્શિકા

પાયથોન સોફ્ટવેર ડેવલપમેન્ટ કિટ
PCO તમને આ દસ્તાવેજમાંની સૂચનાઓને કાળજીપૂર્વક વાંચવા અને તેનું પાલન કરવાનું કહે છે.
કોઈપણ પ્રશ્નો અથવા ટિપ્પણીઓ માટે, કૃપા કરીને કોઈપણ સમયે અમારો સંપર્ક કરો.
ટેલિફોન: +49 (0) 9441 2005 50
ફેક્સ: +49 (0) 9441 2005 20
પોસ્ટલ સરનામું: એક્સેલિટાસ પીસીઓ જીએમબીએચ ડોનાઉપાર્ક 11 93309 કેલ્હેમ, જર્મની
ઇમેઇલ: info@pco.de
web: www.pco.de
pco.python વપરાશકર્તા માર્ગદર્શિકા 0.1.7
ડિસેમ્બર 2021 માં રિલીઝ
©કોપીરાઇટ એક્સેલિટાસ પીસીઓ જીએમબીએચ
આ કાર્ય ક્રિએટિવ કોમન્સ એટ્રિબ્યુશન-નો ડેરિવેટિવ્ઝ 4.0 ઇન્ટરનેશનલ લાયસન્સ હેઠળ લાઇસન્સ પ્રાપ્ત છે. પ્રતિ 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.Camera() સાથે કેમ તરીકે:
cam.record()
છબી, મેટા = cam.image()
plt.imshow(છબી, cmap='ગ્રે')
plt.show()
1.3 ઇવેન્ટ અને એરર લોગીંગ
લોગીંગ આઉટપુટ સક્રિય કરવા માટે, debuglevel= પરિમાણ સાથે કેમેરા ઓબ્જેક્ટ બનાવો.
ડીબગ સ્તર નીચેના મૂલ્યોમાંથી એક પર સેટ કરી શકાય છે:
- 'બંધ' બધા આઉટપુટને અક્ષમ કરે છે.
- 'ભૂલ' માત્ર ભૂલ સંદેશાઓ દર્શાવે છે.
- 'વર્બોઝ' બધા સંદેશા બતાવે છે.
- 'વધારાની વર્બોઝ' બધા સંદેશાઓ અને મૂલ્યો દર્શાવે છે.
ડિફૉલ્ટ ડિબગલેવલ 'બંધ' છે.
pco.Camera(debuglevel='verbose')
…
[][sdk] get_camera_type: ઓકે.
સૌથી વૈકલ્પિક સમયamp= પરિમાણ સક્રિય કરે છે a 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() નમ્પી એરે તરીકે રેકોર્ડરમાંથી ઇમેજ પરત કરે છે.
- 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, mode='sequence'):
પરિમાણ
| નામ | વર્ણન |
| છબીઓની_સંખ્યા | ડ્રાઇવરમાં ફાળવેલ છબીઓની સંખ્યા સુયોજિત કરે છે. પીસીની રેમ મહત્તમ મૂલ્યને મર્યાદિત કરે છે. |
| મોડ | 'ક્રમ' મોડમાં, આ કાર્ય રેકોર્ડ દરમિયાન અવરોધિત થઈ રહ્યું છે. જ્યારે #_of_images પર પહોંચી જાય ત્યારે રેકોર્ડર આપમેળે બંધ થઈ જાય છે. 'સિક્વન્સ નોન બ્લોકિંગ' મોડમાં, આ ફંક્શન નોન-બ્લોકીંગ છે. ઇમેજ વાંચતા પહેલા સ્ટેટસ ચેક કરવું આવશ્યક છે. આ મોડનો ઉપયોગ રેકોર્ડિંગ વખતે ઈમેજો વાંચવા માટે થાય છે, દા.ત. થંબનેલ. 'રિંગ બફર' મોડમાં આ ફંક્શન નોન બ્લોકીંગ છે. ઇમેજ વાંચતા પહેલા સ્ટેટસ ચેક કરવું આવશ્યક છે. જ્યારે_ઇમેજની_સંખ્યા સુધી પહોંચી જાય ત્યારે રેકોર્ડર રેકોર્ડિંગ બંધ કરતું નથી. એકવાર આવું થાય, સૌથી જૂની છબીઓ ઓવરરાઈટ થઈ જાય છે. 'fifo' મોડમાં, આ ફંક્શન નોન-બ્લોકીંગ છે. ઇમેજ વાંચતા પહેલા સ્ટેટસ ચેક કરવું આવશ્યક છે. જ્યારે ફીફોમાં_છબીઓની_સંખ્યા પર પહોંચી જાય છે, ત્યારે ફીફોમાંથી ઈમેજો વાંચવામાં ન આવે ત્યાં સુધી નીચેની ઈમેજો છોડી દેવામાં આવે છે. |
2.1.2 રોકો
વર્ણન વર્તમાન રેકોર્ડિંગ બંધ કરે છે. 'રિંગ બફર' અને 'ફિફો' મોડમાં, આ ફંક્શનને વપરાશકર્તા દ્વારા કૉલ કરવું આવશ્યક છે. 'સિક્વન્સ' અને 'સિક્વન્સ નોન બ્લોકિંગ' મોડમાં, જ્યારે નંબર_ઓફ_ઈમેજીસ પર પહોંચી જાય ત્યારે આ ફંક્શન આપમેળે બોલાવવામાં આવે છે.
પ્રોટોટાઇપ def stop(સ્વ):
2.1.3 બંધ
વર્ણન સક્રિય કૅમેરા બંધ કરે છે અને અવરોધિત સંસાધનોને પ્રકાશિત કરે છે. એપ્લિકેશન સમાપ્ત થાય તે પહેલાં આ કાર્યને કૉલ કરવું આવશ્યક છે. નહિંતર, સંસાધનો કબજે રહે છે.
પ્રોટોટાઇપ def બંધ(સ્વ):
જો કૅમેરા ઑબ્જેક્ટ વિથ સ્ટેટમેન્ટ દ્વારા બનાવવામાં આવે તો આ ફંક્શન ઑટોમૅટિક રીતે કહેવાય છે. બંધ કરવા માટેનો સ્પષ્ટ કૉલ હવે જરૂરી નથી.
pco.Camera() સાથે cam તરીકે: # કેટલીક વસ્તુઓ કરો
2.1.4 છબી
વર્ણન રેકોર્ડરમાંથી એક છબી પરત કરે છે. છબીનો પ્રકાર numpy.ndarray છે. આ એરે ઇમેજના રિઝોલ્યુશન અને ROI પર આધાર રાખીને આકાર આપે છે.
પ્રોટોટાઇપ def ઇમેજ(સ્વ, image_number=0, roi=None):
પરિમાણ
| નામ | વર્ણન |
| છબી_નંબર | વાંચવા માટેની છબીની સંખ્યા સ્પષ્ટ કરે છે. 'સિક્વન્સ' અથવા 'સિક્વન્સ નોન બ્લોકિંગ' મોડમાં, રેકોર્ડર ઇન્ડેક્સ 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 છબીઓ
વર્ણન નમ્પી એરેની સૂચિ તરીકે રેકોર્ડરમાંથી તમામ રેકોર્ડ કરેલી છબીઓ પરત કરે છે.
પ્રોટોટાઇપ def છબીઓ(સ્વ, roi=None, blocksize=None):
પરિમાણ
| નામ | વર્ણન |
| roi | રસનો પ્રદેશ સેટ કરે છે. ઇમેજના માત્ર આ પ્રદેશની જ રીટર્ન વેલ્યુ પર કૉપિ કરવામાં આવી છે. |
| બ્લોકસાઇઝ | પરત કરવામાં આવેલી છબીઓની મહત્તમ સંખ્યાને વ્યાખ્યાયિત કરે છે. આ પરિમાણ માત્ર 'fifo' મોડમાં અને ખાસ પરિસ્થિતિઓમાં જ ઉપયોગી છે. |
Example >>> cam.record(number_of_images=20, mode='sequence')
>>> છબીઓ, મેટાડેટા = cam.images()
>>> લેન(છબીઓ) 20
>>> છબીઓમાં છબી માટે:
…
પ્રિન્ટ('મીન: {:7.2f} DN'.ફોર્મેટ(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=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(સ્વ):
2.2 ચલ રૂપરેખાંકન
રૂપરેખાંકન ચલ બદલીને કેમેરા પરિમાણો અપડેટ કરવામાં આવે છે.
cam.configuration = {'એક્સપોઝર ટાઇમ': 10e-3,
'roi': (1, 1, 512, 512),
'સમયamp': 'ascii',
'પિક્સેલ રેટ': 100_000_000,
'ટ્રિગર': 'ઓટો સિક્વન્સ',
'એક્વાયર': 'ઓટો',
'મેટાડેટા': 'ચાલુ',
'બિનિંગ': (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. રેકોર્ડર ક્લાસ પદ્ધતિને સીધો કૉલ કરવો જરૂરી નથી. તમામ કાર્યો સંપૂર્ણપણે કેમેરા વર્ગની પદ્ધતિઓ દ્વારા આવરી લેવામાં આવ્યા છે.
https://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 |


દસ્તાવેજો / સંસાધનો
![]() | પાયથોન સોફ્ટવેર ડેવલપમેન્ટ કિટ |
સંદર્ભો
- ડીડ - એટ્રિબ્યુશન-નોડેરિવેટિવ્સ 4.0 ઇન્ટરનેશનલ - ક્રિએટિવ કોમન્સcreativecommons.org
- mailto:info@pco.depco.de
- પીસીઓ | એક્સેલિટાસwww.pco.de
- પીસીઓ | એક્સેલિટાસwww.pco.de
- વપરાશકર્તા માર્ગદર્શિકાmanual.tools
