v4.4.0¶
v4.4.0 新增了 tf.regression() API、OpenMV Cam H7 Pro 上的 FLIR Lepton 支援、Arduino Nicla Vision 上的 Cortex-M4 協同處理器支援,以及 MicroPython 1.19。部分特定開發板模組與 WiFi/LCD 行為有所變更——請閱讀下方的破壞性變更。
重點摘要¶
tf.regression()—— 執行 1D 輸入/1D 輸出的 TensorFlow Lite 迴歸模型。OpenMV Cam H7 Pro 上的 FLIR Lepton 熱感測器支援。
Arduino Nicla Vision —— Cortex-M4 協同處理器支援、可運作的 MicroSpeech、LPUART1。
MicroPython 更新至 1.19;ulab 更新至 5.1.1。
破壞性變更: Nicla Vision 的
lcd/tv模組已停用,且 RP2040 Connect 的 WiFi 驅動程式有所變更——請參閱破壞性變更。
新功能¶
tf.regression(model, input_array)—— 用於 1D 輸入/輸出 TensorFlow Lite 迴歸模型的新函式,回傳一個浮點數輸出的清單。GC2145 控制 ——
sensor.set_auto_exposure()與sensor.set_auto_whitebal()現在於 GC2145 上可正常運作(可停用自動曝光/白平衡;尚不支援明確設定曝光/增益)。Arduino Nicla Vision —— 已啟用 Cortex-M4 (CM4) 協同處理器支援與 LPUART1 周邊裝置。
machine.Pin——USB_VBUS接腳現在會公開給使用者指令碼。
其他變更與改進¶
MicroPython 更新至 1.19;ulab 更新至 5.1.1;隨附的 cyw43 WiFi 驅動程式已更新。
RP2(Arduino Nano RP2040 Connect)與 nRF(Arduino Nano 33 BLE Sense)連接埠改用新的基於 TinyUSB 的除錯器來進行 IDE/主機連線。
OV7670 的 XCLK 從 12 MHz 提升至 24 MHz(更新了暫存器組)。
錯誤修正¶
相機與感測器:
OpenMV Pure Thermal 的色塊溫度統計現在改用 IR 影像而非彩色影像,因此每個色塊的平均溫度才正確。
修正
draw_image()的 ROI 處理與面積縮放,使縮放後的輸出更為準確。在軟體重置後會重新初始化 IMU,因此當啟用 IMU SPI 匯流排時 IMU 仍可持續運作。
系統:
修正了 FAST/AGAST 特徵偵測、色塊偵測、CLAHE 以及 LCD/TV 驅動程式中的有號/無號比較問題;修正了 STM32 的相機 GPIO/SPI/DAC 反初始化、H7 LPUART 接腳對應,以及 STM32Cube.AI
nn模組的註冊。
Arduino Nicla Vision:
MicroSpeech 現在可正常運作(PDM 緩衝區加倍、新增範例),並修正了低功耗待機模式。
硬體與開發板支援¶
OpenMV Cam H7 Pro —— FLIR Lepton 熱感測器支援。
Arduino Nicla Vision —— CM4 協同處理器、LPUART1、MicroSpeech、低功耗待機。
破壞性 API 變更¶
v4.3.3 與 v4.4.0 之間使用者可見的 API 破壞性變更。範圍:modules/ 中的 Python C 模組與 scripts/libraries/ 中的 Python 函式庫。
每項變更皆標註其影響:
minor —— 範圍狹窄的 API;僅影響特定開發板上的指令碼。
behavior —— 相同的 API,但結果不同;請重新檢查經過調校的指令碼。
變更依影響程度按上述順序分組。若您只想移植程式碼,可直接跳至結尾的 遷移檢查清單。每個提交雜湊都連結至其在 GitHub 上的差異。
Nicla Vision 模組與 RP2040 WiFi (minor)¶
在 Arduino Nicla Vision 上,lcd 與 tv 模組已停用,以釋出記憶體供 CM4 協同處理器支援使用——在 Nicla Vision 上使用這些模組的指令碼將再也找不到它們。Arduino Nano RP2040 Connect 從 OpenMV 自訂的 WiFi/nina 實作改為上游的 MicroPython NINA-W10 驅動程式/模組,其 API 有所不同。
WiFi 通訊端逾時與 LCD 垂直翻轉 (behavior)¶
WINC1500 通訊端逾時現在會回傳非阻塞錯誤(EWOULDBLOCK)而非 ETIMEDOUT,因此逾時的通訊端不再被意外關閉——原本捕捉 ETIMEDOUT 的程式碼必須更新。SPI LCD 擴充板的 display 現在於未啟用三重緩衝而要求負的 y_scale 時會引發 ValueError("Vertical flip requires triple buffering!")。
遷移檢查清單¶
若要乾淨地移植至 v4.4.0,通常需要做的工作如下: