v1.8.0

v1.8.0 はネットワーク機能と動画を中心とした大規模な機能リリースです。OpenMV Cam の WiFi プログラミング、フレームバッファ動画レコーダー、そして付属の ffmpeg/ffplay を利用する Tools > Video Tools メニューを追加します。さらに新しい OpenMV Cam H7 (OMV4) ボードのサポートを追加し、IDE を Raspberry Pi (Linux ARM) に拡張します。このリリースは Qt Creator 4.0.2 ベースを維持しており、既存のプロジェクトに対する破壊的変更は含まれていません。

ハイライト

  • WiFi プログラミング。 IDE は WiFi シールドを装着した OpenMV Cam からの UDP ブロードキャストアナウンスを待ち受けるようになり、接続ダイアログに検出されたカメラ(名前と IP:port)を一覧表示して、シリアルポートの代替として TCP 経由でそれらと通信します(69dc7dfbf)。

  • フレームバッファ動画レコーダー。 新しい Record/Stop ツールバーボタンは、経過時間/サイズ/FPS のステータスラベルを表示しながら、ライブの画像ストリームを OpenMV の ImageWriter ファイルにキャプチャします(39142ef705aceab31a)。

  • Video Tools メニュー。 Tools > Video ToolsConvert Video FilePlay Video File を追加します。付属の ffmpeg/ffplay を使って動画をトランスコードおよび再生し、ImageWriter.bin 録画を最初に透過的に MJPEG AVI に変換します。Play Video File は Windows と macOS でのみ利用可能です。これは ffplay が Linux/Raspberry Pi 向けには付属していないためです(d35f8d1ca8a99c994f)。

  • OpenMV Cam H7 (OMV4)。 新しい STM32H743 ボードが認識されるようになり、専用の付属ブートローダーとファームウェアとともに提供されます(e14810382)。

  • Raspberry Pi サポート。 Linux ARM の IDE ビルドが有効になり、OpenMV IDE が Raspberry Pi にもたらされます(f551b5f97)。

新機能

  • Configure OpenMV Cam settings file。 Tools に、カメラの main.ini の起動/WiFi 設定を書き込むダイアログが追加されます。これには WiFi の有効化、クライアントモードとアクセスポイントモードの選択、SSID/パスワード/セキュリティタイプ、ボード名、および main.ini 起動設定の下に保存される Duplicate REPL on the UART on startup オプションが含まれます(69dc7dfbf39142ef70)。

  • ネットワークターミナルのコマンドラインオプション。 既存のシリアルターミナルオプションに加えて、-open_udp_client_terminal-open_udp_server_terminal-open_tcp_client_terminal-open_tcp_server_terminal を追加しました(6362066a8d75209269)。

  • 追加のコマンドラインオプション。 -update_resources-open_serial_terminalport_name:baud_rate)、-override_read_timeout-override_read_stall_timeout を公開しました(061aacf15)。

  • ターミナルサーバーモード。 UDP/TCP のターミナル接続は、ホストへ接続するだけでなく、ローカルポートにバインドしてサーバーモードで動作できるようになりました(ポート 0 は任意のポートを選択します)(956e8a2f5)。

  • 新しいサンプルスクリプト。 レンズ補正、3D 回転補正、センサースリープによる低消費電力のサンプルを追加し、線分検出のサンプルを新しい find_line_segments(merge_distance, max_theta_diff) API に書き直しました(061aacf15)。

その他の変更と改善

  • 関数引数のコールチップと構文ハイライトが複数行に正しくまたがるようになり、複数行にわたる関数呼び出しでも引数ヒントとハイライトが保持されるようになりました(6535e9fdd4638bdd18)。

  • ターミナルの解像度/ROI ステータスバーが ROI のピクセル数も報告するようになりました(956e8a2f5)。

  • OpenMV Cam の登録ダイアログがボード/ID とサポート用メールアドレスを表示するようになり、Connecting... 進捗ダイアログは 5 秒後に Cancel を押すよう案内するようになりました(4638bdd18e14810382)。

  • Search Results パネルは、行番号ガターと結果テキストを明示的なダークテーマカラーで再スタイル設定し、ダーク UI に対して読みやすくなりました(b2599f9ea)。

  • シリアル/UDP/TCP ターミナルの書き込みループが、書き込みの合間に短時間譲るようになり、UI の応答性を保ちつつスループットを向上させます(c4700e2b0)。

  • ヒストグラム統計値のフィールドが固定の最小幅を確保するようになり、数値が変化してもパネルがリフローしなくなりました。またモードスイッチャーのドロワーボタンは固定の 160px 幅を使う代わりに引き伸ばされるようになりました(5aceab31a)。

  • カスタム Qt メッセージハンドラーにより、起動時に表示される不要な JIT is disabled for QML 警告を抑制しました(954220e39)。

バグ修正

  • ドキュメントのツールチップとハイライトが Python の例外型を認識するようになり(データと同様に扱われます)、いくつかのモジュール/インデックスのドキュメントエントリが正しく表示されるよう修正されました(4638bdd183613a7867897b9b0e2e3e41c56e)。

  • パッケージ更新チェッカーと、カメラのブロードキャスト/登録の解析を、アンカー付きでトリムした正規表現とより厳密な HTML レスポンスマッチングにより強化し、誤マッチを回避しました(461af11484638bdd18)。

  • 旧ファームウェアの API 検出に使われる OpenMV Cam M4 (OpenMV2) のボード識別子を OMV2 から OPENMV2 に修正しました(449024fe8)。

  • 破損/過大なフレームデータに対して、より厳密な幅/高さ/bpp/長さの境界チェックでカメラ I/O と動画トランスコーダーを強化し、動画 FPS の計算時のゼロ除算を回避しました(08248f208d0cbc27e5)。

  • 動画の変換/再生ツールが、生成されたシェルスクリプトまたは cmd.exe ラッパー経由で ffmpeg/ffplay を起動し、Linux 用の ffmpeg バイナリを同梱することで、macOS、32 ビット、Linux-ARM でも動作するようになりました(b9644e8599f0520bbe35eb69bcec4700e2b0)。

プラットフォームとツールのサポート

  • Qt Creator ベース: 4.0.2。

  • OpenMV Cam H7 (OMV4, STM32H743): 専用の付属ブートローダーとファームウェアとともに新しいボードが認識されます(e14810382)。

  • 付属の OpenMV ファームウェア: OPENMV2/OPENMV3/OPENMV4 向けに 2.6.0 へ更新されました(e14810382)。

  • 付属の ffmpeg/ffplay: Windows、macOS、Linux x86、Linux x86_64、Linux ARM (Raspberry Pi) 向けに静的な 3.3.3 ffmpeg ビルドを追加しました。ffplay は Windows と macOS にのみ同梱されます(2193d7923af92ad59e)。

  • Raspberry Pi (Linux ARM): オフラインヘルプの HelpManager を無効化し、bindist のパッケージングを tar.gz に切り替えることでビルドを有効にしました(f551b5f97)。

破壊的変更

なし。このリリースは Qt Creator 4.0.2 ベースを維持しており、既存のプロジェクトとワークフローは影響を受けません。