カメライベントを保存前に処理することで、ホームNVRは長期保存に値するかどうかを判断する前に、活動を分類、追跡、フィルタリング、ランク付けできます。
カメラは連続したフレームを生成しますが、家庭では通常、玄関の人、車道に入る車、特定のゾーンに置かれた荷物、異常な音などに関心があり、すべての影、木の動き、露出の変化、空の廊下には関心がありません。イベント処理は、生の動きを時間的文脈、物体の識別、ゾーンへの侵入、信頼度、アラートの重要性に変換し、その後保存ポリシーが作用します。以下のセクションではそのパイプラインをたどり、イベント認識型の保存が検索、通知、ストレージ効率、後のレビューをどのように改善するかを説明します。
生の動きはより深い分析の候補に過ぎない
ビデオフレームは、人、動物、ヘッドライト、雨、昆虫、赤外線の切り替え、カメラノイズ、動く葉などで変化します。すべてのピクセル変化を耐久的なイベントとして扱うと、過剰な分析が発生し、レビュータイムラインが価値の低い活動で埋まってしまいます。
Frigateは動体検知を、物体検出で調査する価値のある領域を最初にチェックするために使用します。この低コストのゲートにより、より高価なモデルに送るフレームの領域と時間範囲が絞られます。
この分離は重要です。動きは感度は高いものの意味的ではありません。動きは「画像が変わったか?」に答え、後の段階は「何が動き、どこに行き、家庭が関心を持つか?」に答えます。
物体追跡は複数フレームにわたる文脈を追加する
1つの検出は1フレームを説明しますが、有用なイベントには連続性が必要です。NVRは時間をかけて検出を関連付け、同じ物体に属するか推定し、活動がいつ始まり、変化し、終わったかを判断しなければなりません。
Frigateのビデオパイプラインは、動体領域と物体検出を組み合わせ、保存ルールが録画とスナップショットを選択します。追跡は孤立したボックスを、継続時間、ラベル、信頼度、動きの履歴を持つイベントに変えます。
この時間的文脈により、同じ駐車車両を含むすべてのフレームが別々の保存されたインシデントになるのを防ぎます。また、後のフィルターに入退場、滞留、静止行動を区別する十分な情報を提供します。
したがって、保存前の処理はファイル圧縮レベルだけでなく、イベントレベルでの重複を減らします。
ゾーンとフィルターがイベントの関連性を決定する
物体の識別だけでは不十分です。公共歩道の人は通常ですが、同じ人がポーチゾーンに入るとアラートや長期保存に値するかもしれません。
Frigateのカメラゾーンは追跡された物体に位置の文脈を適用します。ラベル、信頼度閾値、必須ゾーン、マスク、サイズフィルター、滞留行動により、技術的には有効でも運用上重要でないイベントを減らせます。
フィルタリングの順序はストレージと注意を保護します。高信頼度の人物検出でも定義されたエリアに入らなければアラートから除外される一方、低帯域幅のプレビューは一般的なレビュー用に利用可能なままです。
イベントの品質が有用なスナップショットとクリップを決定する
イベントの最初のフレームは物体の一部しか映さなかったり、動きぼけがあったり、人物が画像の端にいたりします。すぐに保存すると、より鮮明なフレームが数秒後に現れても、質の低いサムネイルが残ることがあります。
Frigateは検出信頼度、物体サイズ、有用な視覚属性に基づく最適なスナップショットを追跡イベント全体で評価し、自動的にすべてのフレームを保持しません。信頼度、物体サイズ、端の位置、有用な属性が選択画像に影響します。
同じ原則がクリップにも適用されます。イベント前後の文脈、追跡のアクティブ部分、重複する物体が、レビュー時に理解しやすい録画セグメントを決定します。
イベント解釈後の保存は、すべての書き込みをイベント終了まで遅らせることを意味しません。実用的なNVRは短いローリングセグメントを連続的に録画し、イベントメタデータを使ってどのセグメントを長期保存するか決定します。
保存ポリシーは処理済みイベントを保存証拠に変換する
動き、検出、追跡、フィルタリングの後、NVRは連続映像、動きのあるセグメント、検出、アラートに異なる保存期間を適用する十分な文脈を持ちます。保存の決定は価値を反映し、すべての秒を同等に扱いません。
Frigateはアラートや検出と重複するイベント録画を保持できますが、重複する追跡物体のクリップを保存しません。これにより耐久的なビデオがイベントデータベースにリンクされ、物体ごとに独立したファイルを作成しません。
ZimaSpaceのスマートホーム設計も同様にカメラ、NVR処理、アクセラレータ、MQTT、録画ストレージを分離しています。そのNVRサービス境界により、検出負荷と保存容量を独立してスケールできます。
代表的な昼夜、天候、ペット、配達、家庭活動でポリシーを検証してください。目標は保存イベント数を最小にすることではなく、アラート、検索、インシデントレビューに必要な文脈を含む最小の保存セットを作ることです。
テック&AIハブ
もっと読む

Home Assistantにおけるランタイム状態と永続状態:再起動後も維持すべきものは?
Home Assistantはすべてのライブ値を永続化するわけではありません。設定、レジストリ、選択された復元状態、履歴、デプロイデータは、再起動時にそれぞれ異なる役割を果たします。

Home Assistantはローカルセッションとリモートセッションをどのように認証しますか?
ローカルおよびリモートのHome Assistantセッションでは、同じサーバー側のIDモデルを使用します。リモートアクセスによって変わるのは経路とTLSの境界であり、トークンフローの中核ではありません。

Recorderデータが増えると、なぜHome Assistantの履歴クエリは遅くなるのですか?
レコーダーの成長に伴い、要求された範囲に含まれる行数が増えたり、キャッシュミスが増加したり、ストレージやインデックス処理が遅くなったりすると、履歴クエリのコストが上昇する可能性があります。

