v3.6.0¶
v3.6.0 帶來了完整的 OV5640 500 萬畫素相機支援,含新的高解析度影格尺寸(HD / FHD / QHD / QXGA / WQXGA),將核心更新至 MicroPython 1.12,大幅最佳化了軟體 JPEG 編碼器及 AprilTag / 線條偵測,在 OpenMV Cam H7 Plus 上新增了 UVC(USB 視訊),並支援最高 32 MB 的 QSPI 快閃記憶體。MicroPython 的行為與 get_histogram() 已變更——請閱讀下方的破壞性變更。
重點摘要¶
OV5640 500 萬畫素——完整的相機驅動程式,含新的 HD / FHD / QHD / QXGA / WQXGA / WQXGA2 影格尺寸。
MicroPython 1.12——隨附的核心已更新。
更快的處理流程——大幅最佳化了軟體 JPEG 編碼、AprilTag 偵測、LSD 線條偵測、
histeq()及 QR 碼解碼。H7 Plus 上的 UVC——OpenMV Cam H7 Plus 可作為 USB 視訊裝置運作。
破壞性變更: MicroPython 的行為、
image.get_histogram()的正規化,以及 OpenMV 3 的 JPEG/灰階輸出已變更——請參閱破壞性變更。
新功能¶
OV5640——新增對 OV5640 500 萬畫素相機的完整支援(在 sensor 初始化中設定外部時脈),以及新的
sensor.HD/FHD/QHD/QXGA/WQXGA/WQXGA2影格尺寸常數。TIM4——已釋出,因此可從 MicroPython 中使用。
新增了 DAC 計時寫入範例(
dac_write_timed.py),並將dac_control.py重新命名為dac_write.py。
其他變更與改進¶
將隨附的 MicroPython 更新至 1.12;大幅最佳化了軟體 JPEG 編碼器(VGA 路徑、灰階/二值路徑、以整數運算取代浮點運算、最佳化 MCU 擷取)、LSD
find_line_segments()、AprilTag 偵測、Image.histeq()及 QR 碼 / RGB 轉灰階的轉換;新增了對最高 32 MB 晶片的 QSPI 快閃記憶體支援;移除了過時的 CMSIS-CNNcnn.py範例。
錯誤修正¶
相機與影像處理:
修正了 HQQQVGA 下的 JPEG 編碼損毀、二值(1 位元)影像 → JPEG 壓縮、一個
find_line_segments()的退化問題(重新啟用了NOTDEF非對齊檢查),以及一些 OV2640 驅動程式的小問題。
系統與開機:
修正了自我測試 / 檔案系統損毀問題(
selftest.py現在會在啟用 USB MSC 之前執行,且發生致命錯誤時會啟用 USB MSC,讓主機可讀取錯誤記錄)、pyb.DAC的write_timed()、H7 的machine.I2C時序、F7 在停止模式後重新啟用超頻(overdrive),以及stop_mode.py的rtc.wakeup()間隔。
硬體與板子支援¶
OV5640——完整的 500 萬畫素相機驅動程式,含高解析度影格尺寸。
OpenMV Cam H7 Plus——UVC(USB 視訊)支援;
OPENMV4R板子目標已重新命名為OPENMV4P。QSPI 快閃記憶體——現在支援最高 32 MB 的晶片。
破壞性 API 變更¶
v3.5.2 與 v3.6.0 之間使用者可見的 API 變更。範圍:modules/ 中的 Python C 模組,以及 scripts/libraries/ 中的 Python 函式庫。
這三項破壞性變更都是行為變更(API 相同,結果不同)——請重新檢查受影響的指令碼。每個提交雜湊都連結至其在 GitHub 上的差異。
MicroPython 更新至 1.12 (行為)¶
隨附的 MicroPython 核心已更新至 1.12。標準函式庫與語言行為遵循上游 MicroPython 1.12;請重新檢查依賴特定版本 micropython / 標準模組行為的指令碼。
提交: eafd431ea
image.get_histogram() 閾值正規化已變更 (行為)¶
使用色彩閾值的 image.get_histogram()(及 get_statistics())現在會以經過閾值處理的像素數量進行正規化,而非整個 ROI,並在分組(bin)索引時使用無條件捨去(floor)而非四捨五入。經過閾值處理的呼叫所得到的直方圖/統計值與先前版本不同——請重新調整原本與絕對直方圖值比較的程式碼。
提交: 7cf0f8089
OpenMV 3 JPEG/灰階輸出已變更 (行為)¶
為節省快閃記憶體,OpenMV 3(M7)的 YUV 查詢表已被停用,因此 OpenMV 3 上的 JPEG 與灰階輸出像素值的計算方式略有不同。輸出仍然有效,但與先前版本略有差異;請重新檢查 OpenMV 3 上像素精確的比較。
提交: 0e4b46e41
遷移檢查清單¶
針對 1.12 重新驗證依賴特定版本 MicroPython 行為的指令碼(MicroPython 升級),在使用色彩閾值時重新調整原本與絕對 get_histogram() / get_statistics() 值比較的程式碼(直方圖變更),並重新檢查 OpenMV 3 上像素精確的比較(OpenMV 3 輸出變更)。所有其他指令碼可原封不動執行。