v2.5.0¶
v2.5.0 là bản phát hành hình ảnh giàu tính năng: bổ sung find_rects(), find_circles(), get_regression() (khớp đường/hồi quy), find_number() (nhận dạng chữ số LeNet), các lớp luồng ImageWriter / ImageReader, sensor.flush() / width() / height(), và hỗ trợ pyb.RTC. Việc tải ảnh nay được sao lưu bởi bộ đệm khung hình — hãy đọc các thay đổi gây lỗi bên dưới.
Điểm nổi bật¶
image.find_rects()— phát hiện hình chữ nhật/tứ giác với đầu ra góc.image.find_circles()— phát hiện đường tròn Hough.image.get_regression()— khớp đường bình phương nhỏ nhất và khớp mạnh (Theil-Sen).image.find_number()— nhận dạng chữ số LeNet.ImageWriter/ImageReader— ghi và phát lại các luồng ảnh.Hỗ trợ
pyb.RTC, cùng vớisensor.flush()/sensor.width()/sensor.height().Thay đổi gây lỗi: việc tải ảnh nay được sao lưu bởi bộ đệm khung hình và phát sinh lỗi nếu ảnh quá lớn — xem các thay đổi gây lỗi.
Tính năng mới¶
Phát hiện đặc trưng — đã thêm
image.find_rects()(bộ phát hiện tứ giác AprilTag; các đối tượng hình chữ nhật với thuộc tínhx/y/w/h/corners/magnitude),image.find_circles()(Hough),image.get_regression()(khớp đường bình phương nhỏ nhất + Theil-Sen mạnh mẽ), vàimage.find_number()(nhận dạng chữ số LeNet), mỗi loại có tập lệnh ví dụ.Góc của kết quả — đã thêm thuộc tính
cornersvào các đối tượng kết quả mã QR/AprilTag/ma trận dữ liệu/mã vạch.Luồng ảnh — đã thêm các lớp
image.ImageWriter/image.ImageReader(định dạng chunk căn chỉnh 16 byte) với các ví dụimage_writer.py/image_reader.py.Cảm biến — đã thêm
sensor.flush()(đẩy bộ đệm khung hình lên IDE mà không cần chụp ảnh) vàsensor.width()/sensor.height().pyb.RTC— đã kích hoạt hỗ trợ RTC với ví dụrtc.py.Đã thêm cascade Haar khuôn mặt mèo và ví dụ Servo-Shield (PCA9685); công cụ máy chủ
openmv-cascade.pyđã được bổ sung hỗ trợ định dạng cascade XML OpenCV mới.
Các thay đổi và cải tiến khác¶
Bộ đệm khung hình đã được tái cấu trúc để các phương thức ảnh
copy_to_fbcập nhật bản xem trước IDE; các đường dẫnHaarCascade()không còn yêu cầu dấu/đứng đầu (tích hợp sẵn hay từ tệp được tự động phát hiện); ghi GIF/MJPEG nay hỗ trợ VGA (và BAYER GIF);README.txttích hợp đã được cập nhật và tệp driveropenmv.infkhông còn được tạo trên hệ thống tệp mới.
Sửa lỗi¶
Hình ảnh:
Đã sửa lỗi tích lũy phiếu
find_circles(), độ lệch rho củaget_regression()với ROI và rò rỉ bộ nhớ, việc hợp nhất đoạn củafind_lines(), tính trung bình góc củafind_blobs()và ngưỡng màu mặc định (ít hạn chế nhất), độ ổn định sắp xếp điểm đặc trưng ORB / thứ tự bộ mô tả và cờ khớp, cùng việc tải cascade Haar theo vùng đệm (đọc không căn chỉnh).
Hệ thống:
Đã kích hoạt Servo 3 (P9) của
pyb(#256), sửa lỗi khởi tạo RTC, tăng thời gian chờ ký tự UART (#240), và sửa cờ "enabled" chưa được khởi tạo của bộ đệm khung hình cảm biến.
Phần cứng và hỗ trợ bo mạch¶
Các thay đổi API gây lỗi¶
Các thay đổi API hiển thị với người dùng giữa v2.4.1 và v2.5.0. Phạm vi: C-module Python trong modules/ và thư viện Python trong scripts/libraries/.
Thay đổi gây lỗi là thay đổi hành vi (cùng API, kết quả khác) — hãy kiểm tra lại các tập lệnh bị ảnh hưởng. Mỗi hash commit liên kết đến diff của nó trên GitHub.
Tải ảnh được sao lưu bởi bộ đệm khung hình (hành vi)¶
image.Image / tải ảnh nay sao chép ảnh đã tải vào bộ đệm khung hình chính và phát sinh ngoại lệ nếu ảnh quá lớn để vừa. Các lần tải trước đây thành công vào bộ đệm heap có thể thất bại — hãy đảm bảo các ảnh đã tải vừa với bộ đệm khung hình (hoặc xử lý lỗi mới).
Commits: 87d53385a
Danh sách kiểm tra di chuyển¶
Đảm bảo các ảnh đã tải vừa với bộ đệm khung hình (hoặc bắt lỗi "image too large" mới) ở những nơi trước đây bạn dựa vào việc tải ảnh được sao lưu bởi heap (thay đổi tải ảnh). Tất cả các tập lệnh khác chạy không thay đổi.