v3.6.4

v3.6.4 は RTSP ビデオサーバー ライブラリを追加し、OV5640 のイメージングモード(あらゆる解像度での Grayscale / RGB565 / Bayer / JPEG)を完全に修正し、最適化されたドライバでセンサーの FPS を 2 倍にし、Bayer / JPEG エンコードのバグ群を修正します。Bayer 画像での image.get_pixel() とセンサーの自動回転が変更されました。以下の破壊的変更をお読みください。

ハイライト

  • RTSP — 例付きの新しい RTSP ビデオサーバーライブラリ。

  • OV5640 — Grayscale / RGB565 / Bayer / JPEG がすべての解像度で動作するようになり、最大 JPEG 転送が拡大され、高解像度読み出しが 2 倍になりました。

  • FPS 倍増 — センサードライバが約 2 倍のフレームレートに最適化されました。

  • 修正 — Bayer のエッジ/vflip、ソフトウェア JPEG(1-bpp および YCbCr グレースケール)、バッファオーバーフローの問題。

  • 破壊的変更: image.get_pixel() は Bayer 画像をデベイヤーするようになり、自動回転は sensor.reset() で再適用されるようになりました。破壊的変更を参照してください。

新機能

  • RTSP — RTSP ビデオストリーミング用に rtsp ライブラリと rtsp_video_server.py の例を追加しました。

その他の変更と改善

  • センサードライバをおよそ 2 倍のフレームレートに最適化し、Bayer/Grayscale/JPEG 向けに OV5640 の高解像度読み出しを 2 倍にし、最大 JPEG 画像転送サイズを拡大し、cascade_convert.py を Python 3 で動作するように更新しました。

バグ修正

カメラとイメージング:

  • OV5640 のイメージングモードを修正して Grayscale / RGB565 / Bayer / JPEG がすべての解像度で正しく動作するようにし、OV7725 / OV7690 での Bayer vflip、右端の Bayer 変換エラー、1-bpp 画像と YCbCr グレースケールのソフトウェア JPEG エンコード(−128 の減算)、JPEG 画像の末尾データ、およびバッファオーバーフローの問題を修正しました。

破壊的 API 変更

v3.6.3 と v3.6.4 の間でのユーザーから見える API の破壊的変更。範囲: modules/ 内の Python C モジュールと scripts/libraries/ 内の Python ライブラリ。

両方の破壊的変更は behavior の変更(API は同じだが結果が異なる)です — 影響を受けるスクリプトを再確認してください。各コミットハッシュは GitHub 上の差分にリンクしています。

image.get_pixel() は Bayer 画像をデベイヤーする (behavior)

Bayer フォーマットの画像での image.get_pixel() は、生の単一チャンネル Bayer 値の代わりに、デベイヤーして (r, g, b) タプルを返すようになりました。get_pixel() 経由で生の Bayer 値を読み取っていたスクリプトは、補間された RGB タプルを受け取るようになるため、更新する必要があります。

コミット: bf16b6a4f

自動回転は sensor.reset() で再適用される (behavior)

センサーの自動回転は sensor.reset() で(再)トリガーされるようになりました。向きを設定した後に sensor.reset() を呼び出し、回転状態が保持される、または再適用されないことを期待していたスクリプトは、異なる向きになる可能性があるため、再確認する必要があります。

コミット: 0d13a214b

移行チェックリスト

image.get_pixel() 経由で生の Bayer 値を読み取っていたコードを (r, g, b) タプルを期待するように更新し(get_pixel の変更)、sensor.reset() 周辺のセンサーの向きを再確認してください(自動回転の変更)。その他のすべてのスクリプトは変更なしで動作します。