

Bộ công cụ phát triển phần mềm Python
Hướng dẫn sử dụng

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
Tá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ị()
1.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.
https://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 |


Tài liệu / Tài nguyên
![]() | Bộ công cụ phát triển phần mềm Python |
Tài liệu tham khảo
- Chứng thư - Ghi công-Không phái sinh 4.0 International - Creative Commonscreativecommons.org
- mailto:info@pco.depco.de
- PCO | Excelitaswww.pco.de
- PCO | Excelitaswww.pco.de
- Hướng dẫn sử dụngmanual.tools
