v3.6.8¶
v3.6.8 では OpenMV Cam Pure Thermal ボードを追加し、TensorFlow を CMSIS-NN へ移行することで tf の推論を約 4 倍高速化 し、デスクトップ版 rpc ライブラリに UART / Kvaser CAN / I2C / SPI インターフェースを拡張し、Arduino Portenta H7 の SD カード を有効化しました。SD カードのパーティション処理と、センサーを持たないボードでの import sensor の挙動が変更されています — 下記の互換性を壊す変更を参照してください。
ハイライト¶
OpenMV Cam Pure Thermal — 新しいボードのサポート。
TensorFlow が約 4 倍高速化 —
tfの推論が CMSIS-NN 上で動作するようになりました。rpcライブラリ — UART、Kvaser CAN、I2C/SPI のマスター/スレーブインターフェースを追加しました。Portenta H7 の SD カード — PLL1/HSE/ADC クロックの修正とともに、SD カードのサポートを有効化しました。
互換性を壊す変更: SD カード起動時にパーティションを自動検出するようになり、画像センサーが存在しない場合に
import sensorが例外を送出するようになりました — 互換性を壊す変更を参照してください。
新機能¶
rpc— デスクトップ版 RPC ライブラリに UART、Kvaser CAN、I2C/SPI のマスター/スレーブインターフェース(rpc_uart_master/rpc_uart_slave、rpc_kvarser_can_master/rpc_kvarser_can_slave、および I2C/SPI のマスター/スレーブ)を追加しました。センサーを持たないボード — ファームウェアが画像センサーを持たないボードをサポートするようになりました(Pure Thermal ボードを実現)。
JPEG ジオメトリ — JPEG ジオメトリを読み取るための JPEG 読み取り設定構造体(
jpg_w/jpg_h/jpg_size)を追加しました。
その他の変更と改善¶
TensorFlow を CMSIS-NN へ切り替え、
tfの推論を約 4 倍高速化しました(ボードごとの imlib 設定を調整)。ulabのサンプルはulab.numerical.mean/stdを使用するようになり、ディープスリープのサンプルは OV7725 のレギュレータバイパスレジスタへの書き込みの前にsensor.sleep(True)を呼び出すようになりました。
バグ修正¶
カメラと画像処理:
ディスクからの JPEG 画像の読み込み(JPEG ジオメトリが非対応フォーマットとして拒否されていた)を修正し、
sensor.reset()がハードリセットを行うようにしてレギュレータのシャットダウン後にセンサーが復帰できるようにし、OpenMV 4 / 4 Plus での FLIR Lepton SPI のオルタネート機能/クロック設定を修正し、OpenMV 4 / 4 Plus での FSYNC ピンの割り当てを修正しました。
接続性とシステム:
H7 でのタイマー駆動の
pyb.DAC書き込みを修正し、WINC1500 のWLAN.start_ap()が OPEN セキュリティでキーを必要としないようにし、Portenta でカメラとユーザーペリフェラル間の I2C バス共有を修正し、セルフテストの SWD フレームバッファマーカーをボードごとにして、マーカーを持たないボードでフレームバッファのbppを破壊しないようにしました。
ハードウェアとボードサポート¶
OpenMV Cam Pure Thermal — 新しいボード。
Arduino Portenta H7 — PLL1(400 MHz/40 MHz、USB/RNG は HSI48)、HSE(25 MHz)、ADC クロックソースの修正とともに、SD カードを有効化しました。
互換性を壊す API 変更¶
v3.6.7 と v3.6.8 の間のユーザーから見える API の破壊的変更。対象範囲: modules/ 内の Python C モジュールと scripts/libraries/ 内の Python ライブラリ。
どちらの破壊的変更も 動作 の変更(API は同じだが結果が異なる)です — 影響を受けるスクリプトを再確認してください。各コミットハッシュは GitHub 上の差分へのリンクになっています。
SD カードのパーティション自動検出 (動作)¶
SD カード起動時に、常にパーティション 1 をマウントするのではなく、パーティションを自動検出するようになりました。従来の固定パーティション 1 の動作に依存していたカードは、別のファイルシステムをマウントする可能性があります。マルチパーティションの SD カードと、想定されるマウントを再確認してください。
コミット: 1f7f003b8
センサーを持たないボードで import sensor が例外を送出 (動作)¶
画像センサーを持たないボードをサポートするため、sensor モジュールの初期化チェックがインポート時に実行されるようになり、画像センサーが検出されない場合に import sensor が RuntimeError を送出するようになりました(以前のように後で失敗するのではなく)。サーマル専用ボードでは、import sensor を try / except で囲むか、インポートを避けてください。
コミット: 17b444ad1
移行チェックリスト¶
新しいパーティション自動検出(SD カードの変更)に対してマルチパーティションの SD カードを再確認し、センサーを持たない/サーマル専用のボードでは import sensor を保護してください(センサーインポートの変更)。それ以外のスクリプトはすべてそのまま動作します。