EXCELITAS TECHNOLOGIES Python 소프트웨어 개발 키트 사용 설명서

EXCELITAS TECHNOLOGIES 로고EXCELITAS TECHNOLOGIES 로고 1Python 소프트웨어 개발 키트
사용자 설명서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년 XNUMX월 출시
©저작권 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.레코더

1.1 설치
pypi에서 설치(권장):
$ pip 설치 pco
1.2 기본 사용법
matplotlib.pyplot을 plt로 가져오기
PCO 수입
pco.Camera()를 캠으로 사용:
캠.레코드()
이미지, 메타 = cam.image()
plt.imshow(이미지, cmap='회색')
plt.show()EXCELITAS TECHNOLOGIES Python 소프트웨어 개발 키트 - 기본 사용법1.3 이벤트 및 오류 로깅
로깅 출력을 활성화하려면 debuglevel= 매개변수를 사용하여 Camera 객체를 생성합니다.
디버그 수준은 다음 값 중 하나로 설정할 수 있습니다.

  • 'off' 모든 출력을 비활성화합니다.
  • 'error' 오류 메시지만 표시합니다.
  • 'verbose' 모든 메시지를 표시합니다.
  • 'extra verbose' 모든 메시지와 값을 표시합니다.

기본 debuglevel은 'off'입니다.
pco.Camera(debuglevel='verbose')

[][sdk] get_camera_type: 좋습니다.
선택적 시간amp= 매개변수는 a를 활성화합니다. tag 인쇄된 출력에서. 가능한 값은 'on' 및 'off'입니다. 기본값은 '꺼짐'입니다.
pco.Camera(debuglevel='verbose', 시간amp='켜기')

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

API 문서

pco.Camera 클래스는 다음 메서드를 제공합니다.

  • record()는 새 레코더 인스턴스를 생성, 구성 및 시작합니다.
  • stop()은 현재 기록을 중지합니다.
  • close()는 현재 활성 카메라를 닫고 점유된 리소스를 해제합니다.
  • image()는 레코더의 이미지를 numpy 배열로 반환합니다.
  • images()는 레코더에서 녹화된 모든 이미지를 numpy 배열 목록으로 반환합니다.
  • image_average()는 평균 이미지를 반환합니다. 이 이미지는 버퍼에 기록된 모든 이미지에서 계산됩니다.
  • set_exposure_time()은 카메라의 노출 시간을 설정합니다.
  • wait_for_first_image()는 레코더 메모리에서 사용 가능한 첫 번째 이미지를 기다립니다.

pco.Camera 클래스에는 다음 변수가 있습니다.

  • 구성

pco.Camera 클래스에는 다음 개체가 있습니다.

  • sdk는 모든 기본 기능에 대한 직접 액세스를 제공합니다. pco.sdk.
  • 레코더의 모든 기본 기능에 대한 직접 액세스를 제공합니다. PCO.레코더.

2.1 방법
이 섹션에서는 pco.Camera 클래스에서 제공하는 모든 메서드에 대해 설명합니다.
2.1.1 기록
설명 새 레코더 인스턴스를 생성, 구성 및 시작합니다. 전체 카메라 구성은 record()를 호출하기 전에 설정해야 합니다. set_exposure_time() 명령은 유일한 예외입니다. 이 함수는 레코더 개체에 영향을 미치지 않으며 녹음 중에 호출할 수 있습니다.
원기 def record(self, number_of_images=1, mode='시퀀스'):
매개변수

이름 설명
number_of_images 드라이버에 할당된 이미지 수를 설정합니다. PC의 RAM은 최대값을 제한합니다.
방법 '시퀀스' 모드에서 이 기능은 녹화 중에 차단됩니다. number_of_images에 도달하면 레코더가 자동으로 중지됩니다. 'sequence non-blocking' 모드에서 이 기능은 non-blocking입니다. 이미지를 읽기 전에 상태를 확인해야 합니다. 이 모드는 녹화 중 이미지(예: 썸네일)를 읽는 데 사용됩니다.
'링 버퍼' 모드에서 이 기능은 비차단입니다. 이미지를 읽기 전에 상태를 확인해야 합니다. 레코더는 number_of_images에 도달해도 녹화를 중지하지 않습니다. 이런 일이 발생하면 가장 오래된 이미지를 덮어씁니다.
'fifo' 모드에서 이 기능은 비차단입니다. 이미지를 읽기 전에 상태를 확인해야 합니다. fifo의 number_of_images에 도달하면 fifo에서 이미지를 읽을 때까지 다음 이미지가 삭제됩니다.

2.1.2 중지
설명 현재 녹음을 중지합니다. '링 버퍼' 및 'fifo' 모드에서 이 함수는 사용자가 호출해야 합니다. 'sequence' 및 'sequence non blocking' 모드에서 number_of_images에 도달하면 이 기능이 자동으로 호출됩니다.
원기 방어 정지(자체):
2.1.3 닫기
설명 활성화된 카메라를 닫고 차단된 리소스를 해제합니다. 이 함수는 응용 프로그램이 종료되기 전에 호출해야 합니다. 그렇지 않으면 리소스가 점유된 상태로 유지됩니다.
원기 데프 닫기(자체):
이 함수는 with 문에 의해 카메라 객체가 생성되면 자동으로 호출됩니다. close()에 대한 명시적 호출은 더 이상 필요하지 않습니다.
with pco.Camera() as cam: # 몇 가지 작업 수행
2.1.4 이미지
설명 레코더에서 이미지를 반환합니다. 이미지 유형은 numpy.ndarray입니다. 이 배열은 이미지의 해상도와 ROI에 따라 모양이 결정됩니다.
원기 def 이미지(self, image_number=0, roi=None):
매개변수

이름 설명
이미지 번호 읽을 이미지의 번호를 지정합니다. 'sequence' 또는 'sequence non blocking' 모드에서 레코더 인덱스는 image_number와 일치합니다. image_number를 0xFFFFFFFF로 설정하면 마지막으로 녹화된 이미지가 복사됩니다. 이렇게 하면 라이브 사전을 만들 수 있습니다.view 녹음하는 동안.
로이 관심 영역을 설정합니다. 이미지의 이 영역만 반환 값에 복사됩니다.

Example >>> cam.record(number_of_images=1, 모드='시퀀스')
>>> 이미지, 메타 = cam.image()
>>> 유형(이미지) numpy.ndarray
>>> 이미지.모양 (2160, 2560)
>>> 이미지, 메타데이터 = cam.image(roi=(1, 1, 300, 300))
>>> 이미지.모양 (300, 300)
2.1.5개의 이미지
설명 레코더에서 녹화된 모든 이미지를 numpy 배열 목록으로 반환합니다.
원기 데프 이미지(self, roi=없음, 블록 크기=없음):
매개변수

이름 설명
로이 관심 영역을 설정합니다. 이미지의 이 영역만 반환 값에 복사됩니다.
블록 크기 반환되는 최대 이미지 수를 정의합니다. 이 매개변수는 'fifo' 모드와 특수 조건에서만 유용합니다.

Example >>> cam.record(number_of_images=20, 모드='시퀀스')
>>> 이미지, 메타데이터 = cam.images()
>>> len(이미지) 20
>>> 이미지의 이미지:

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

평균: 2147.64DN
평균: 2144.61DN

>>> 이미지 = cam.images(roi=(1, 1, 300, 300))
>>> 이미지[0].shape (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 Set_exposure_time
설명 카메라의 노출 시간을 설정합니다.
원기 def set_exposure_time(self, 노출_시간):
매개변수

이름 설명
노출 시간 초 단위로 float 또는 정수 값으로 주어져야 합니다. 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
설명 레코더 메모리에서 사용 가능한 첫 번째 이미지를 기다립니다. 레코더 모드에서 '시퀀스 논블로킹', '링 버퍼'. 그리고 'fifo', 함수 record()는 즉시 반환합니다. 따라서 이 함수는 image(), images() 또는 image_average()를 호출하기 전에 카메라에서 이미지를 기다리는 데 사용할 수 있습니다.
원기 def wait_for_first_image(self):
2.2 변수 구성
구성 변수를 변경하면 카메라 매개변수가 업데이트됩니다.
cam.configuration = {'노출 시간': 10e-3,
'로이': (1, 1, 512, 512),
'시간대amp': '아스키',
'픽셀 속도': 100_000_000,
'trigger': '자동 시퀀스',
'acquire': '자동',
'메타데이터': '켜기',
'비닝': (1, 1)}
변수는 record() 함수가 호출되기 전에만 변경할 수 있습니다. 일정 수의 항목이 있는 사전입니다. 가능한 모든 요소를 ​​지정할 필요는 없습니다. 다음amp파일 코드는 '픽셀 속도'만 변경하며 구성의 다른 요소에는 영향을 주지 않습니다.
pco.Camera()를 캠으로 사용:
cam.configuration = {'픽셀 속도': 286_000_000}
캠.레코드()

2.3 객체
이 섹션에서는 pco.Camera 클래스에서 제공하는 모든 개체에 대해 설명합니다.
2.3.1 SDK
개체 sdk는 모든 기본 기능에 대한 직접 액세스를 허용합니다. pco.sdk.
>>> cam.sdk.get_temperature()
{'센서 온도': 7.0, '카메라 온도': 38.2, '전원 온도': 36.7}
SDK 함수의 모든 반환 값은 사전입니다. 현재 모든 카메라 설정이 Camera 클래스에 포함되는 것은 아닙니다. 특수 설정은 해당 sdk 함수를 호출하여 직접 설정해야 합니다.
2.3.2 레코더
개체 rec는 모든 기본 기능에 대한 직접 액세스를 제공합니다. PCO.레코더. 레코더 클래스 메서드를 직접 호출할 필요는 없습니다. 모든 기능은 Camera 클래스의 메서드로 완전히 처리됩니다.

EXCELITAS TECHNOLOGIES Python 소프트웨어 개발 키트 - QR 코드https://www.pco.de/applications/

PCO 유럽
+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
PCO 중국
+86 512 67634643
info@pco.cn
pco.cn

EXCELITAS TECHNOLOGIES 로고EXCELITAS TECHNOLOGIES 로고 1

문서 / 리소스

PDF thumbnailPython 소프트웨어 개발 키트
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.