CÔNG NGHỆ EXCELITAS Hướng dẫn sử dụng Bộ công cụ phát triển phần mềm Python

EXCELITAS TECHNOLOGIES Python Software Development Kit - Featured Image

Logo CÔNG NGHỆ EXCELITASCÔNG NGHỆ EXCELITAS logo 1Bộ công cụ phát triển phần mềm Python
Hướng dẫn sử dụngCÔNG NGHỆ EXCELITAS Bộ công cụ phát triển phần mềm PythonCÔNG NGHỆ EXCELITAS logo 2

Bộ công cụ phát triển phần mềm Python

PCO yêu cầu bạn đọc kỹ và làm theo hướng dẫn trong tài liệu này.
Đối với bất kỳ câu hỏi hoặc ý kiến, xin vui lòng liên hệ với chúng tôi bất cứ lúc nào.
điện thoại: +49 (0) 9441 2005 50
số fax: +49 (0) 9441 2005 20
địa chỉ bưu chính: Excelitas PCO GmbH Donaupark 11 93309 Kelheim, Đức
e-mail: thông tin@pco.de
web: www.pco.de
hướng dẫn sử dụng pco.python 0.1.7
Phát hành tháng 2021 năm XNUMX
©Bản quyền Excelitas PCO GmbH
CÔNG NGHỆ EXCELITAS Bộ công cụ phát triển phần mềm Python - biểu tượng 1Tác phẩm này được cấp phép theo Giấy phép Quốc tế Creative Commons Attribution-No Derivatives 4.0. ĐẾN view một bản sao của giấy phép này, hãy truy cập http://creativecommons.org/licenses/by-nd/4.0/ hoặc gửi thư tới Creative Commons, PO Box 1866, Mountain View, CA 94042, Hoa Kỳ.

Tổng quan

Gói Python pco cung cấp tất cả các chức năng để làm việc với máy ảnh pco dựa trên hiện tại pco.sdk. Tất cả các thư viện được chia sẻ để liên lạc với máy ảnh và xử lý hình ảnh tiếp theo đều được bao gồm.

  • Lớp máy ảnh dễ sử dụng
  • API mạnh mẽ để pco.sdk
  • Ghi và xử lý ảnh với pco.recorder

1.1 Cài đặt
Cài đặt từ pypi (được khuyến nghị):
$ pip cài đặt pco
1.2 Sử dụng cơ bản
nhập matplotlib.pyplot dưới dạng plt
nhập khẩu pco
với pco.Camera() dưới dạng cam:
cam.record()
hình ảnh, meta = cam.hình ảnh()
plt.imshow(hình ảnh, cmap='màu xám')
plt.hiển thị()CÔNG NGHỆ EXCELITAS Bộ công cụ phát triển phần mềm Python - Cách sử dụng cơ bản1.3 Ghi nhật ký sự kiện và lỗi
Để kích hoạt đầu ra ghi nhật ký, hãy tạo đối tượng Camera với tham số debuglevel=.
Mức gỡ lỗi có thể được đặt thành một trong các giá trị sau:

  • 'off' Tắt tất cả đầu ra.
  • 'lỗi' Chỉ hiển thị thông báo lỗi.
  • 'tiết' Hiển thị tất cả các tin nhắn.
  • 'thêm tiết' Hiển thị tất cả thông báo và giá trị.

Mức gỡ lỗi mặc định là 'tắt'.
pco.Camera(debuglevel='verbose')

[][sdk] get_máy ảnh_type: Được rồi.
Thời gian tùy chọnamp= tham số kích hoạt một tag trong đầu ra được in. Các giá trị có thể là: 'bật' và 'tắt'. Giá trị mặc định là tắt'.
pco.Camera(debuglevel='verbose', timestamp='bật')

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

Tài liệu API

Lớp pco.Camera cung cấp các phương thức sau:

  • record() tạo, định cấu hình và bắt đầu phiên bản trình ghi mới.
  • stop() dừng quá trình ghi hiện tại.
  • close() đóng camera đang hoạt động hiện tại và giải phóng các nguồn tài nguyên bị chiếm dụng.
  • image() trả về một hình ảnh từ trình ghi dưới dạng mảng có nhiều mảng.
  • images() trả về tất cả các hình ảnh đã ghi từ đầu ghi dưới dạng danh sách các mảng có nhiều mảng.
  • image_average() trả về hình ảnh trung bình. Hình ảnh này được tính toán từ tất cả các hình ảnh được ghi trong bộ đệm.
  • set_exposure_time() đặt thời gian phơi sáng cho máy ảnh.
  • wait_for_first_image() đợi hình ảnh có sẵn đầu tiên trong bộ nhớ máy ghi.

Lớp pco.Camera có biến sau:

  • cấu hình

Lớp pco.Camera có các đối tượng sau:

  • sdk cung cấp quyền truy cập trực tiếp vào tất cả các chức năng cơ bản của pco.sdk.
  • máy ghi cung cấp quyền truy cập trực tiếp vào tất cả các chức năng cơ bản của pco.recorder.

2.1 Phương pháp
Phần này mô tả tất cả các phương thức được cung cấp bởi lớp pco.Camera.
2.1.1 Ghi lại
Sự miêu tả Tạo, định cấu hình và bắt đầu phiên bản ghi mới. Toàn bộ cấu hình camera phải được thiết lập trước khi gọi record(). Lệnh set_exposure_time() là ngoại lệ duy nhất. Chức năng này không ảnh hưởng đến đối tượng ghi và có thể được gọi trong quá trình ghi.
Nguyên mẫu bản ghi def(self, number_of_images=1, mode='sequence'):
Tham số

Tên Sự miêu tả
số_of_hình ảnh Đặt số lượng hình ảnh được phân bổ trong trình điều khiển. RAM của PC giới hạn giá trị tối đa.
cách thức Ở chế độ 'sequence', chức năng này bị chặn trong quá trình ghi. Máy ghi tự động dừng khi đạt đến số_hình_ảnh. Trong chế độ 'không chặn trình tự', chức năng này không chặn. Trạng thái phải được kiểm tra trước khi đọc một hình ảnh. Chế độ này được sử dụng để đọc hình ảnh trong khi ghi, ví dụ như hình thu nhỏ.
Trong chế độ 'bộ đệm vòng', chức năng này không bị chặn. Trạng thái phải được kiểm tra trước khi đọc một hình ảnh. Trình ghi không dừng ghi khi đạt đến số_hình_ảnh. Khi điều này xảy ra, những hình ảnh cũ nhất sẽ bị ghi đè.
Ở chế độ 'fifo', chức năng này không bị chặn. Trạng thái phải được kiểm tra trước khi đọc một hình ảnh. Khi đạt đến số_của_hình_ảnh trong fifo, những hình ảnh sau đây sẽ bị loại bỏ cho đến khi hình ảnh được đọc từ fifo.

2.1.2 Dừng
Sự miêu tả Dừng ghi âm hiện tại. Trong chế độ 'đệm chuông' và 'fifo', người dùng phải gọi chức năng này. Ở chế độ 'trình tự' và 'không chặn trình tự', chức năng này sẽ tự động được gọi khi đạt đến số_hình_ảnh.
Nguyên mẫu def dừng (tự):
2.1.3 Đóng
Sự miêu tả Đóng camera đã kích hoạt và giải phóng các nguồn tài nguyên bị chặn. Chức năng này phải được gọi trước khi ứng dụng kết thúc. Nếu không, các tài nguyên vẫn bị chiếm dụng.
Nguyên mẫu def đóng (tự):
Hàm này được gọi tự động nếu đối tượng máy ảnh được tạo bởi câu lệnh with. Một cuộc gọi rõ ràng để đóng () không còn cần thiết nữa.
với pco.Camera() dưới dạng cam: # thực hiện một số nội dung
2.1.4 Hình ảnh
Sự miêu tả Trả về một hình ảnh từ đầu ghi. Loại hình ảnh là numpy.ndarray. Mảng này được định hình tùy thuộc vào độ phân giải và ROI của hình ảnh.
Nguyên mẫu hình ảnh def(self, image_number=0, roi=None):
Tham số

Tên Sự miêu tả
số_ảnh Chỉ định số lượng hình ảnh sẽ được đọc. Ở chế độ 'trình tự' hoặc 'không chặn trình tự', chỉ mục trình ghi khớp với image_number. Nếu image_number được đặt thành 0xFFFFFFFF, hình ảnh được ghi cuối cùng sẽ được sao chép. Điều này cho phép tạo trước trực tiếpview trong khi ghi âm.
đầu Đặt vùng quan tâm. Chỉ vùng này của hình ảnh được sao chép vào giá trị trả về.

Example >>> cam.record(number_of_images=1, mode='sequence')
>>> hình ảnh, meta = cam.image()
>>> gõ (hình ảnh) numpy.ndarray
>>> image.shape (2160, 2560)
>>> hình ảnh, siêu dữ liệu = cam.image(roi=(1, 1, 300, 300))
>>> image.shape (300, 300)
2.1.5 Hình ảnh
Sự miêu tả Trả về tất cả các hình ảnh đã ghi từ đầu ghi dưới dạng danh sách các mảng có nhiều mảng.
Nguyên mẫu hình ảnh def(self, roi=None, blocksize=None):
Tham số

Tên Sự miêu tả
đầu Đặt vùng quan tâm. Chỉ vùng này của hình ảnh được sao chép vào giá trị trả về.
kích thước khối Xác định số lượng hình ảnh tối đa được trả về. Tham số này chỉ hữu ích trong chế độ 'fifo' và trong các điều kiện đặc biệt.

Example >>> cam.record(number_of_images=20, mode='sequence')
>>> hình ảnh, siêu dữ liệu = cam.images()
>>> len(hình ảnh) 20
>>> cho hình ảnh trong hình ảnh:

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

Có nghĩa là: 2147.64 DN
Có nghĩa là: 2144.61 DN

>>> hình ảnh = cam.images(roi=(1, 1, 300, 300))
>>> hình ảnh[0].hình dạng (300, 300)
2.1.6 Hình ảnh_trung bình
Sự miêu tả Trả về hình ảnh trung bình. Hình ảnh này được tính toán từ tất cả các hình ảnh được ghi trong bộ đệm.
Nguyên mẫu def image_average(self, roi=None):
Tham số

Tên Sự miêu tả
đầu Xác định khu vực quan tâm. Chỉ vùng này của hình ảnh được sao chép vào giá trị trả về.

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
Sự miêu tả Đặt thời gian phơi sáng của máy ảnh.
Nguyên mẫu def set_exposure_time(self, Exposure_time):
Tham số

Tên Sự miêu tả
thời gian phơi nhiễm Phải được cung cấp dưới dạng giá trị float hoặc số nguyên trong đơn vị 'giây'. Các giá trị cơ bản cho hàm sdk.set_delay_exposure_time(0, 'ms', time, timebase) sẽ được tính toán tự động. Thời gian trễ được đặt thành 0.

Example >>> cam.set_exposure_time(0.001)
>>> cam.set_exposure_time(1e-3)
2.1.8 Chờ_for_first_image
Sự miêu tả Đợi hình ảnh có sẵn đầu tiên trong bộ nhớ đầu ghi. Trong chế độ ghi 'không chặn trình tự', 'đệm đổ chuông'. và 'fifo', hàm record() trả về ngay lập tức. Do đó, chức năng này có thể được sử dụng để đợi hình ảnh từ máy ảnh trước khi gọi image(), images() hoặc image_average().
Nguyên mẫu def wait_for_first_image(bản thân):
2.2 Cấu hình biến
Các thông số máy ảnh được cập nhật bằng cách thay đổi biến cấu hình.
cam.configuration = {'thời gian phơi sáng': 10e-3,
'roi': (1, 1, 512, 512),
'thời gianamp': 'ascii',
'tỷ lệ pixel': 100_000_000,
'kích hoạt': 'trình tự tự động',
'có được': 'tự động',
'siêu dữ liệu': 'bật',
'binning': (1, 1)}
Biến chỉ có thể được thay đổi trước khi hàm record() được gọi. Nó là một từ điển với một số mục từ nhất định. Không phải tất cả các yếu tố có thể cần phải được chỉ định. Các nội dung sauampmã chỉ thay đổi 'tỷ lệ pixel' và không ảnh hưởng đến bất kỳ yếu tố nào khác của cấu hình.
với pco.Camera() dưới dạng cam:
cam.configuration = {'tỷ lệ pixel': 286_000_000}
cam.record()

2.3 Đối tượng
Phần này mô tả tất cả các đối tượng được cung cấp bởi lớp pco.Camera.
Bộ công cụ phát triển 2.3.1
Đối tượng sdk cho phép truy cập trực tiếp vào tất cả các chức năng cơ bản của pco.sdk.
>>> cam.sdk.get_Temper()
{'nhiệt độ cảm biến': 7.0, 'nhiệt độ máy ảnh': 38.2, 'nhiệt độ nguồn': 36.7}
Tất cả các giá trị trả về từ các hàm sdk là từ điển. Không phải tất cả các cài đặt máy ảnh hiện được bao phủ bởi lớp Máy ảnh. Các cài đặt đặc biệt phải được đặt trực tiếp bằng cách gọi hàm sdk tương ứng.
2.3.2 Máy ghi âm
Đối tượng rec cung cấp quyền truy cập trực tiếp vào tất cả các chức năng cơ bản của pco.recorder. Không cần thiết phải gọi trực tiếp một phương thức của lớp máy ghi âm. Tất cả các chức năng được bao phủ đầy đủ bởi các phương thức của lớp Camera.

CÔNG NGHỆ EXCELITAS Bộ công cụ phát triển phần mềm Python - QR cotehttps://www.pco.de/applications/

pco châu âu
+49 9441 2005 50
thông tin@pco.de
pco.de
pco mỹ
+1 866 678 4566
info@pco-tech.com
pco-tech.com
pco châu á
+65 6549 7054
info@pco-imaging.com
pco-imaging.com
pco trung quốc
+86 512 67634643
info@pco.cn
pco.cn

Logo CÔNG NGHỆ EXCELITASCÔNG NGHỆ EXCELITAS logo 1

Tài liệu / Tài nguyên

PDF thumbnailBộ công cụ phát triển phần mềm Python
User Manual · Python Software Development Kit, Software Development Kit, Development Kit, Kit

Tài liệu tham khảo

Đặt câu hỏi

Use this section to ask about setup, compatibility, troubleshooting, or anything missing from this manual.

Đặt câu hỏi

Ask about setup, compatibility, troubleshooting, or anything missing from this manual. Name and email are optional.