重要なポイント
- Frigate 0.17.2(2026年6月28日)が現行安定版。0.18.0 は 2026年8月8日時点でベータ段階
- まず検出器から:OpenVINO を動かす Intel iGPU が最も安価な現実的スタート。Hailo-8 や NVIDIA GPU はさらに上へ伸ばせます
- Coral は標準ではなくフォールバック。消費電力が決定的な制約となる場合にのみ推奨されます
- カメラごとに 2 系統:検出用 1280x720 / 5fps、録画用にフル解像度メインストリーム 15fps
- 誤検知を実際に減らすのはゾーンと required_zones、loitering_time、inertia であり、より優れたモデルではありません
- Home Assistant 統合は MQTT 統合の事前設定が必要。未設定だとエンティティが 1 つも生成されません
- セマンティック検索は RAM 8 GB 以上が必須、快適に使うには 16 GB と GPU、さらに AVX2 対応 CPU が必要
- Frigate+ は年額 50 ドル(USD 決済)で最大 12 個のファインチューニング済みモデル。顔認識とナンバープレート認識はサブスクなしで動作
Frigate は一般的な NVR と何が違うのですか?
Frigate は 2 段構えで動きます。まず負荷の軽い動体検出が「見る価値のある領域」を絞り込み、次に本格的な物体検出モデルがそこに人・車・犬・荷物が写っているかを判定します。 一般的な NVR はピクセル変化で反応するため、ヘッドライトや雨、揺れる植木にも通知を出します。
📍 一文で説明
Frigate は低コストの動体検出で画面内の領域を選び、その領域にのみ物体検出モデルを実行します。だからこそ小型アクセラレーター 1 個で多数のカメラを同時に処理できます。
- 動体が先、AI が後: 軽量な動体検出が検出器を動かす*場所*を決めるため、小さなアクセラレーターでも多数のカメラをまかなえます。
- 物体単位の録画: 保存期間は検出内容に基づき、24時間連続バッファではないため、ストレージが大幅に長持ちします。
- go2rtc による再配信: Frigate はカメラを 1 回だけ取得して再配信します。5 つのクライアントが同じカメラに直接接続する事態を避けられます。
- MQTT 出力: 追跡対象・ゾーン進入・物体カウントがすべて配信されます。これが Home Assistant のオートメーションを可能にします。
- レビュー項目: 検出は *alerts*(通知してほしいもの)と *detections*(記録のみで通知なし)に分けられます。
📌補足: alerts と detections の区別は、Frigate で最も役立つ概念です。alerts はスマートフォンを鳴らすもの、detections は検索可能な記録です。両者は別々に設定してください。
2026年に Frigate 用として買うべき検出器はどれですか?
ゼロから始めるなら Intel iGPU 搭載機と OpenVINO 検出器、ワットあたりの低レイテンシを求めるなら Hailo-8 モジュール、すでに NVIDIA GPU がある機体なら ONNX 検出器を選んでください。 Frigate のドキュメントは、消費電力が極端に厳しい場合を除き、新規構築で Coral を推奨しないと明記しています。
💬 簡潔に説明
検出器とは「これは人か?」を判定するチップのことです。Intel CPU に内蔵されたグラフィックス、専用の NVIDIA カード、あるいは小型の M.2 AI モジュールが使えます。どこでも勧められている USB スティック(Google Coral)は今も動きますが、推奨される出発点ではなくなりました。
- ホストが第6世代以降の Intel CPU なら OpenVINO を使ってください。iGPU はすでに購入済みで、追加ハードウェアが不要です。
- すでに NVIDIA または AMD の GPU がある場合は ONNX を使ってください。Frigate がプラットフォームを自動判別します。
- M.2 スロットで低消費電力かつアクセラレーター級のレイテンシが欲しい場合は Hailo-8 / Hailo-8L を使ってください。
- NVIDIA Jetson ボードでは TensorRT を使ってください — スマートホーム AI 向け NVIDIA Jetson Orin Nano レビューを参照。
- edgetpu(Coral)は、ワット数が決定的な制約であり、モデルラインナップの古さを許容できる場合にのみ使ってください。
- cpu 検出器は完全に避けてください。Frigate によれば、OpenVINO の CPU モードのほうが専用 CPU 検出器より効率的です。
検出器 | ハードウェア | 推論時間(公表値) |
|---|---|---|
| openvino | Intel Arc A750 | 約 4 ms MobileNetV2 / 約 8 ms YOLOv9-320 |
| openvino | Intel NPU | 約 6 ms MobileNetV2 / 約 11 ms YOLOv9-320 |
| openvino | Intel UHD 730 iGPU | 約 10 ms MobileNetV2 / 約 14 ms YOLOv9-tiny |
| hailo8l | Hailo-8 | 約 6 ms SSD MobileNet / 約 7 ms YOLOv6n |
| hailo8l | Hailo-8L | 約 10 ms SSD MobileNet / 約 11 ms YOLOv6n |
| onnx | NVIDIA RTX 3070 | 約 6–8 ms YOLOv9 tiny→small 320 |
| onnx | NVIDIA RTX 3050 | 約 8–10 ms YOLOv9 tiny→small 320 |
| onnx | AMD Radeon 780M | 約 14 ms YOLOv9-tiny-320 |
| zmq | Apple M3 Pro | 約 6 ms YOLOv9-tiny-320 |
これらは Frigate が公表している検出器ごとの数値であり、PromptQuorum による計測値ではありません。Frigate は他にも rknn(Rockchip NPU)、memryx、synaptics、deepstack、degirum の検出器タイプを提供しています。
⚠️注意: ほとんどの Frigate 解説はいまだに「まず Coral を買え」から始まります。この助言は 0.16 と 0.17 で進んだ OpenVINO・Hailo・ONNX 対応より前のものであり、Frigate 自身のハードウェアページが新規構築については明確に否定しています。
💡ヒント: Coral のカメラ処理能力は、全カメラで共有される約 1000 / inference_speed fps に相当します。検出 5fps なら 10 ms の推論予算で計算上 20 カメラ分の余裕がありますが、サーマルスロットリングと USB 給電の制約で実際はこれより減ります。
Frigate サーバー本体に必要なものは?
Intel N シリーズまたは Core i シリーズの小型ミニ PC に RAM 8〜16 GB、OS 用 SSD、録画用に別途 HDD という構成で、カメラ 4〜8 台の一般的な住宅をカバーできます。 ボトルネックが CPU になることはまれで、実際には共有メモリ、ディスクの書き込み耐久性、そしてセマンティック検索を使うかどうかが効いてきます。
- **共有メモリ(
shm):** 既定の 128 MB は 720p のカメラ約 2 台分しかありません。Frigate は 1280x720 のカメラ 1 台あたりログ込みで約 66.63 MB を見込むため、8 台なら約 253 MB が必要です。 --shm-sizeは明示的に設定:** 多くの構成では--shm-size=512mbが安全な値です。小さすぎると明確なエラーではなく、カメラが断続的に落ちる形で現れます。- 3 つのマウントポイント: YAML とデータベース用の
/config、クリップ・録画・エクスポート用の/media/frigate、処理中セグメント用の/tmp/cache。 - 録画は HDD へ: 連続書き込みはコンシューマー SSD の寿命を削ります。
/media/frigateは HDD に置き、/tmp/cacheは高速ストレージに残してください。 - AI 機能向けの RAM: セマンティック検索には最低 8 GB と AVX / AVX2 対応 CPU が必要で、推奨構成は 16 GB と GPU です。
構成 | 検出器 | 適した用途 |
|---|---|---|
| Intel N100/N150 ミニ PC、16 GB | openvino (iGPU) | カメラ 2〜6 台、セマンティック検索なし |
| Intel Core i5 ミニ PC、32 GB | openvino (iGPU) | カメラ 6〜12 台+セマンティック検索 |
| 任意のホスト+Hailo-8 M.2 | hailo8l | 低消費電力・多カメラ構成 |
| RTX 3050 以上のデスクトップ | onnx | Frigate とローカル LLM を 1 台で運用 |
| Raspberry Pi 5 | edgetpu / hailo8l | カメラ 1〜3 台、電力予算が厳しい環境 |
Frigate はベアメタル Debian 上の Docker、Home Assistant アドオン、Helm による Kubernetes、Unraid、Synology / QNAP の NAS、ESXi、Apple Silicon 版 macOS に対応します。Proxmox では QEMU 仮想マシンを使ってください。LXC は明確に非対応です。
⚠️注意: Proxmox の LXC コンテナでの Frigate 運用は非対応です。Coral や iGPU のパススルーは一見動作したあと、誰にも切り分けできない形で壊れます。仮想マシンを使ってください。
🛠️実践: Frigate・Home Assistant・ローカル LLM を 1 台にまとめたい場合は、まず LLM 側から必要スペックを決めてください — Home Assistant とローカル AI 向けミニ PC 選びを参照。
Frigate 向けにカメラをどう設定すべきですか?
カメラ側のファームウェアで 2 系統を設定してください。検出用に 1280x720 / 5fps、録画用にネイティブ解像度 / 15fps、いずれも H.264 でアスペクト比を揃えます。 Frigate の検出モデルは 320x320 の入力で動くため、4K の検出ストリームは効果がないうえデコード負荷だけが跳ね上がります。
- H.265 ではなく H.264 を使ってください。H.265 はブラウザ対応が限られており、まずライブ表示に影響が出ます。
- フレームレートはカメラ側で変更し、Frigate 側では変更しないでください。ソフトウェアでの間引きは CPU を消費するだけです。
- 無線より有線 PoE を優先してください。サブストリームの切断は明確な障害ではなく、検出漏れという形で現れます。
- RTSP と ONVIF が正しく使えるカメラについては、Frigate 構成向けローカル防犯カメラ購入ガイドを参照してください。
- 1カメラのファームウェアで、サブストリームを 1280x720、5fps、H.264、I フレーム間隔 5(毎秒 1 キーフレーム)に設定します。
- 2メインストリームはカメラのネイティブ解像度(一般的な 4MP センサーなら 2688x1520)、15fps、H.264、I フレーム間隔 30 に設定します。
- 3両ストリームのアスペクト比を揃えます(16:9 同士)。これで検出と録画の間でバウンディングボックスが正しく対応します。
- 4Frigate 側で
detectロールにサブストリーム、recordロールにメインストリームを割り当てます。 - 5検出を 10fps に上げるのは、狭い進入路を横切る車のように本当に速い対象がある場合だけにしてください。
💡ヒント: 進入路の奥の物体がまったく検出されない場合、原因はモデルではなく解像度であることがほとんどです。1280x720 を 320x320 入力に縮小すると、遠くの人物は数ピクセルにしかなりません。検出解像度を全体的に上げるのではなく、その範囲を 2 台目のカメラやズームしたストリームに分けてください。
📌補足: Frigate はカメラを 1 回だけ取得し、他のクライアントにはその複製を配信します。だからこそ Home Assistant はカメラではなく Frigate に向けるべきです。
Frigate はどうインストールしますか?
サポートされた手順を選ぶならベアメタル Debian ホスト上の Docker Compose、ワンクリック導入と引き換えに制御性を手放してよいなら Home Assistant アドオンを使ってください。 どちらも同じ config.yml と同じ MQTT ブローカーが必要です。
- 1Debian 系ホストに Docker をインストールし、
/configと/media/frigateのディレクトリを作成します。 - 2カメラ 1 台のみで検出器ブロックを含まない最小限の
config.ymlを書き、既定値で起動させて映像が届くことを確認します。 - 3
shm_sizeを明示し、環境に応じたデバイス(Intel なら/dev/dri、NVIDIA なら GPU ランタイム、Hailo なら/dev/hailo0)を渡してコンテナを起動します。 - 4Web UI を開き、カメラ映像・検出 FPS・システムページの推論時間を確認します。
- 5実際の
detectorsブロックを追加して再起動し、推論時間がハードウェアの公表値まで下がることを確認します。 - 6
config.ymlに MQTT ブローカーを設定し、その後 Home Assistant で Frigate 統合を追加します。
services:
frigate:
container_name: frigate
image: ghcr.io/blakeblackshear/frigate:0.17.2
restart: unless-stopped
privileged: true
shm_size: "512mb"
devices:
- /dev/dri/renderD128:/dev/dri/renderD128 # Intel iGPU (OpenVINO)
volumes:
- /etc/localtime:/etc/localtime:ro
- ./config:/config
- /srv/frigate/media:/media/frigate
- type: tmpfs
target: /tmp/cache
tmpfs:
size: 1000000000
ports:
- "8971:8971" # authenticated web UI
- "8554:8554" # RTSP restream
- "8555:8555/tcp"
- "8555:8555/udp"⚠️注意: イメージタグは stable ではなく特定バージョンに固定してください。Frigate の設定スキーマはマイナーバージョン間で変わるため、0.17 から 0.18 の境目で無人の docker compose pull を走らせると、既存の YAML を受け付けないコンテナが残ることがあります。
🛠️実践: 残りを追加する前に、まず 1 台だけ稼働させてください。「Frigate が動かない」という相談のほとんどは、特定 1 台のサブストリーム URL に原因があり、設定にエントリが 1 つだけならはるかに見つけやすくなります。
動作する Frigate の config.yml はどう書きますか?
**動作する設定は 4 ブロックで構成されます。mqtt、detectors、2 つのストリームロールを持つ cameras、そしてカメラごとの zones と review フィルタです。** それ以外は初日は既定値のままで問題ありません。
subtype=1とsubtype=0は Dahua / Amcrest 系のサブ・メインストリーム表記です。Reolink ではh264Preview_01_subとh264Preview_01_mainを使います。retain.mode: motionは動きがあった箇所だけ連続録画を残す設定で、ストレージ削減の最大のレバーです。review.alerts.required_zonesは、公道を走る車でスマートフォンが鳴るのを防ぎます。- Frigate 0.17 で UI からの完全な設定編集が加わったため、この大半は手書きせずブラウザ上で編集できます。
mqtt:
host: 192.168.1.10
user: frigate
password: "{FRIGATE_MQTT_PASSWORD}"
detectors:
ov:
type: openvino
device: GPU
cameras:
driveway:
ffmpeg:
inputs:
- path: rtsp://user:pass@192.168.1.51:554/cam/realmonitor?channel=1&subtype=1
roles: [detect]
- path: rtsp://user:pass@192.168.1.51:554/cam/realmonitor?channel=1&subtype=0
roles: [record]
detect:
width: 1280
height: 720
fps: 5
record:
enabled: true
retain:
days: 3
mode: motion
alerts:
retain:
days: 30
snapshots:
enabled: true
motion:
mask:
- 0,0,0.35,0,0.35,0.12,0,0.12 # timestamp overlay
zones:
driveway_apron:
coordinates: 0.14,0.98,0.62,0.55,0.95,0.72,0.88,1.0
loitering_time: 4
inertia: 3
review:
alerts:
labels: [person, car]
required_zones: [driveway_apron]
detections:
labels: [person, car, dog, cat]💡ヒント: Frigate 0.17 ではプロファイルも追加されました。名前付きの設定オーバーライドで、コンテナを再起動せずに切り替えられます。required_zones を広げる「来客中」プロファイルを用意するほうが、週に 2 回 YAML を書き換えるより実用的です。
ゾーンとマスクはどう誤検知を止めるのですか?
ゾーンはどの検出が重要かを絞り込み、モーションマスクはその領域を Frigate にそもそも見せません。物体は本物だが関心がない場合はゾーン、動きが物体ですらない場合はマスクを使います。 ゾーン内の存在判定はバウンディングボックスの下端中央で行われるため、ゾーンは頭の高さではなく足や車輪が接する地面を覆う必要があります。
📍 一文で説明
Frigate では、モーションマスクはその領域の検出処理自体を止め、ゾーンと required_zones は検出を通常どおり実行したうえで、どの検出が通知を発生させてよいかだけを制限します。
❌ 悪い進め方
“すべてのカメラ・すべての人物・終日で通知を有効にし、前の歩道が一晩に 40 件の通知を生むため 2 日で通知を切ってしまう。”
✅ 良い進め方
“敷地境界の内側の地面だけを覆う driveway_apron ゾーンを作り、review.alerts.required_zones をそのゾーンに設定し、loitering_time: 4 を加える。そのうえで detections(通知なし)は他の対象にも有効のままにして、検索可能な記録を欠けさせない。”
- モーションマスク: タイムスタンプの焼き込み、揺れる木、旗などに使います。Frigate はその領域で検出を実行しません。関心のある物体が決して現れない動きに向いています。
- 物体フィルターマスク: 特定領域の特定ラベルを抑制します。常に
carとして検出され続ける隣家の駐車車両などが該当します。 - **ゾーン+
required_zones:** 対象は確かに人物ですが、歩道の人物は通知対象ではありません。歩行者交通に対する正しい対処法です。 loitering_time:** 対象がゾーン内に N 秒とどまることを要求します。私道を上がってくる配達員は該当し、通り過ぎる人は該当しません。inertia:** 対象が連続 N フレーム(既定 3)ゾーン内にとどまることを要求し、境界でのバウンディングボックスの揺れによる誤発報を防ぎます。- 速度推定: 地面に沿った 4 点だけで構成したゾーンに
distancesを指定すると、UI と MQTT に速度値が出力されます。
⚠️注意: 画面上半分にゾーンを引いても意味がありません。存在判定はバウンディングボックスの下端中央で行われます。ゾーンは地面に描いてください。
🔍洞察: 誤検知はほぼ確実にモデル品質の問題ではありません。一般的な住宅設置では、検出器のアップグレードよりゾーンと required_zones のほうがはるかに多くのノイズを取り除きます。
Frigate を Home Assistant にどう接続しますか?
先に Home Assistant で MQTT 統合を設定し、Frigate を同じブローカーに向けてから Frigate 統合をインストールしてください。カメラごと・ゾーンごとに camera、image、sensor、switch、binary_sensor のエンティティが生成されます。 MQTT を先に設定していないと、統合はインストールされるものの何も生成されません。
- 1MQTT ブローカー(通常は Mosquitto アドオン)を導入し、Home Assistant に MQTT 統合を追加します。
- 2Frigate の config.yml の
mqttブロックを同じブローカーに向け、専用のユーザー名とパスワードを設定します。 - 3HACS 経由またはコア統合として Frigate 統合をインストールし、Frigate ホストを指定します。
- 4Media Source 統合を有効にして、録画とスナップショットをメディアブラウザーに表示させます。
- 5オートメーションはカメラ単位ではなくゾーン単位のバイナリセンサーを起点に組み立てます。
binary_sensor
- 得られるもの:
- カメラ別・ゾーン別・物体ラベル別の動体および物体の存在
- 主な使い道:
- ほぼすべてのオートメーションのトリガー。特定ゾーン内の人物は、カメラの動体よりはるかに優れたトリガーになります
camera
- 得られるもの:
- ポート 8554 の Frigate 再配信から供給されるライブストリーム
- 主な使い道:
- ダッシュボードのカードやキャスト。カメラではなくここを指すことで、カメラへの二重接続を避けられます
image
- 得られるもの:
- カメラごとの、直近に検出された物体のスナップショット
- 主な使い道:
- スナップショット API を手動で呼ばずに、モバイル通知へ画像を添付できます
sensor
- 得られるもの:
- ゾーン別・カメラ別の物体カウントと、検出器およびプロセスの性能値
- 主な使い道:
- 在室ロジックとシステム状態ダッシュボード。ここの推論時間は、検出器が CPU にフォールバックした際の早期警告になります
switch
- 得られるもの:
- カメラごとの検出・録画・スナップショットの切り替え
- 主な使い道:
- プライバシー用オートメーション。在宅判定が出たら屋内検出を停止する、といった使い方ができます
この統合は camera.turn_on と camera.turn_off のアクションも提供し、MQTT 設定を分けた複数の Frigate サーバーに対応し、RTSP URL テンプレートを Jinja2 で上書きできます。
⚠️注意: Frigate 統合はインストールできたのにエンティティが 1 つも出てこない場合、原因はほぼ MQTT です。Home Assistant 側で MQTT 統合を追加していないか、Frigate と Home Assistant が別々のブローカーを見ているかのどちらかです。
🛠️実践: オートメーションはゾーンのバイナリセンサーに物体ラベルの条件を組み合わせて起動してください。カメラの動体センサー単体では雨でも発火しますが、binary_sensor.driveway_driveway_apron_person は発火しません。
セマンティック検索・顔認識・ナンバープレート認識で何ができますか?
セマンティック検索は「夜間に進入路にいた黒いバン」と入力して該当クリップを取り出せる機能です。顔認識とナンバープレート認識は匿名の検出を名前付きの検出に変えます。いずれも Frigate+ の契約なしで動作します。 これらのコストは金銭ではなく RAM です。
- セマンティック検索: RAM 8 GB 以上、AVX / AVX2 対応 CPU が必須で、理想は 16 GB と専用 GPU です。Raspberry Pi では実用になりません。
- 埋め込みモデル: 既定は Jina CLIP V1 です。
smallは量子化済みで CPU でも実用的に動き、largeは GPU があればそれを利用します。 - Jina CLIP V2 は英語のみでなく 89 言語に対応しますが、Frigate は「RAM と推論時間が大幅に増える割に約 3% の改善」と記載しており、CPU 推論は推奨していません。
- 再インデックスは手動: セマンティック検索を有効にしても既存の物体は索引化されません。UI の「Reindex」ボタンを使うか
reindex: Trueを設定します。実行中は CPU 負荷が高くなります。 - 顔認識とナンバープレート認識 はローカルで動作し、契約は不要です(Frigate+ のモデルは効率を高めます)。
- GenAI による説明生成: 0.17 で複数プロバイダー対応と llama.cpp 専用連携が追加され、説明文を自宅のモデルで生成できるようになりました — Home Assistant でのローカル LLM 自動化を参照。
💡ヒント: クリップが 1 年分たまる前にセマンティック検索を有効化してください。GPU なしのミニ PC で追跡対象 20 万件を再インデックスするのは一晩がかりの作業です。
📌補足: Frigate 0.16 ではセマンティック検索トリガーが追加されました。追跡対象が保存済みの画像や説明に一致した時点でアクションが起動します。「映像を検索する」と「映像の意味に基づいて自動化する」をつなぐ機能です。
Frigate+ の年額 50 ドルは妥当ですか?
標準モデルでは解消しない、具体的で反復する誤検知が出てきた時点で Frigate+ は妥当です。そうでなければ無償モデルと適切なゾーン設定で十分です。 年額 50 ドル(USD 決済)で最大 12 個のファインチューニング済みモデルが含まれ、追加のファインチューニングは 1 回 5 ドルです。
Frigate+ と標準モデル、どちらを選ぶか
ローカルLLMを使うべき場合:
- •自宅の敷地で特定の物体が繰り返し誤分類される
- •標準モデルが苦手とする特殊なカメラアングルがある
- •自分のアップロードを効率化するため AI によるラベル候補が欲しい
- •オープンソース開発の継続を支援したい
クラウドモデルを使うべき場合:
- •誤通知の原因が歩道の通行なら、ゾーン設定で無償に解決できる
- •Frigate の対応ラベル外が必要な場合。独自ラベルはまだ利用できません
- •カメラが 1〜2 台で、構図も単純である
クイック判断:
- →まずゾーンを直し、2 週間後に再評価する
- →それでも実在の物体で通知が外れるなら契約する
- →学習させたモデルは解約後もダウンロード可能なまま
- Frigate+ のベースモデルは YOLOv9 ベースの 2026.0 に更新され、
lawnmowerやheronといった候補ラベルが追加されました。 - 任意の独自ラベルはまだ追加できません。学習は Frigate が対応するラベル集合に限られます。
- 顔認識とナンバープレート認識に契約は必要ありません。
🔍洞察: ゾーンを詰める前に契約するのは、50 ドルを払って何も改善しない最も一般的なパターンです。ファインチューニングは正しい検出をより確実にするだけで、正しく検出された歩行者が歩行者でなくなるわけではありません。
サブスク型カメラと比べて費用はどうですか?
Frigate は、カメラ台数に比例して増えるクラウド月額を、台数に比例しない一度きりのハードウェア費用に置き換えます。 カメラが 2 台を超えるなら、通常 1 年以内に損益分岐します。
項目 | クラウドカメラ | Frigate |
|---|---|---|
| 継続費用 | 月額、多くはカメラ単位 | なし |
| 初期費用 | カメラのみ | ホスト+検出器+ストレージ |
| AI 検出 | 事業者のクラウド | ローカル(OpenVINO/Hailo/ONNX) |
| 映像の保存先 | 事業者のデータセンター | 自分のディスク |
| ネット障害時 | 機能低下または停止 | LAN 内で完全に動作 |
| 機能廃止リスク | 事業者がプランを変更しうる | 使用中のバージョンは動き続ける |
Frigate ではカメラを 1 台増やすとカメラ代だけがかかります。サブスク型では通常カメラ代に加えて請求項目が 1 行増えます。差が広がるのはここです。サブスクなしのスマートホーム運用も参照してください。
📌補足: 電気代も正直に数えてください。常時稼働のミニ PC とディスクでおよそ 15〜30 W です。5 年で見れば実費として無視できませんが、多カメラのクラウドプランよりは十分に安く収まります。
Frigate 構築でよくある失敗
Frigate 構築の失敗の大半は 5 つの誤りに集約され、そのうちハードウェアに関するものは 1 つだけです。
- メインストリームで検出する:
detectロールを 4K ストリームに向けると、モデル入力が 320x320 である以上、精度は上がらずデコード負荷だけが何倍にもなります。検出は必ずサブストリーム、録画はメインストリームで行ってください。 shm_sizeを既定のままにする:** 128 MB では 720p カメラ 2 台程度しか賄えません。それ以上のカメラは明確なエラーなしに断続的に落ちます。--shm-size=512mbを設定して先へ進んでください。- MQTT より先に Home Assistant 統合を入れる: 統合は問題なくインストールされ、そして何も作りません。先に Home Assistant の MQTT 統合と Frigate の
mqttブロックを、同じブローカーに向けて設定してください。 - 検出器を替えて誤通知を直そうとする: 歩道の歩行者は正しい検出です。解決策は
required_zonesとloitering_timeを伴うゾーンであり、高速なアクセラレーターや有料モデルではありません。 - OS 用 SSD に録画する: 連続的な映像書き込みはコンシューマー SSD の寿命を急速に消費します。
/media/frigateは HDD に置き、/tmp/cacheは高速のままにして、retain.mode: motionを設定してください。 - Proxmox LXC で運用する: デバイスパススルーは一見動作したあと、サポート外かつ切り分け不能な形で壊れます。QEMU 仮想マシンを使ってください。
結論:実際に何を組むべきか
RAM 16 GB の Intel ミニ PC を買い、その iGPU で OpenVINO 検出器を動かし、720p / 5fps のサブストリームを持つ PoE カメラを使い、最初の 1 週間はハードウェアではなくゾーン設定に充ててください。 この構成で一般的な住宅は十分にまかなえ、カメラが増えたら後から Hailo-8 を足す余地も残ります。
- ゼロから始めるなら Intel iGPU 上の OpenVINO を使ってください。最も低コストで追加ハードウェア不要、カメラ 2〜6 台には十分な余裕があります。
- カメラが 8 台を超える、または消費電力が重要なら Hailo-8 M.2 モジュール を使ってください。
- すでに NVIDIA GPU があるなら ONNX を使ってください。同じ機体でローカル LLM も動かす場合はとくに有効です。
- Coral は、ワット数が絶対的な制約であり、推奨経路ではなくなった点を受け入れられる場合にのみ使ってください。
- cpu 検出器は避けてください。フォールバックとしては OpenVINO の CPU モードのほうが優れています。
- 迷ったら Intel N150 ミニ PC とカメラ 2 台から始め、ゾーンを詰めてから拡張してください。
🛠️実践: 実際に機能する予算配分の順序は、まずカメラと PoE スイッチ、次にホスト、次にストレージ、そしてシステムページの数値が必要だと示したときに初めてアクセラレーターです。アクセラレーターを最初に買うのが典型的な順序の逆転です。
よくある質問
Frigate NVR とは何ですか?
Frigate は、OpenCV と TensorFlow を用いて IP カメラ映像に対する AI 物体検出をローカル実行するオープンソースのネットワークビデオレコーダーです。単なる動体ではなく検出内容に基づいてクリップを録画し、検出結果を MQTT で配信するため Home Assistant から自動化できます。コアソフトウェアにクラウドサービスやサブスクリプションはありません。
2026年でも Frigate に Google Coral TPU は必要ですか?
いいえ。Frigate のハードウェアドキュメントは、消費電力が極端に厳しい場合を除き、新規インストールで Coral を推奨しないと明記しています。新規構築では Intel iGPU 上の OpenVINO 検出器、Hailo-8 モジュール、または既存 NVIDIA GPU 上の ONNX 検出器が推奨経路です。
Frigate のどのバージョンを使うべきですか?
2026年6月28日にリリースされた Frigate 0.17.2 が現行の安定版です。0.18.0 は 2026年7月からベータ段階にあり、3 番目のベータは 2026年8月8日に公開されました。マイナーバージョン間の設定変更に対応できる場合のみ 0.18 を使ってください。
Frigate にはどれくらいの RAM が必要ですか?
物体検出と録画だけなら 8 GB で余裕をもって動作します。セマンティック検索を使うと要件が上がり、Frigate は最低 8 GB、推奨は 16 GB 以上と専用 GPU、さらに AVX および AVX2 命令に対応した CPU が必要と記載しています。
家の前を通る人で毎回通知が来るのはなぜですか?
それが正しい検出だからです。敷地内の地面だけを覆うゾーンを描き、review.alerts.required_zones をそのゾーンに設定し、loitering_time を加えて通行人が立ち止まらない限り通知しないようにしてください。存在判定はバウンディングボックスの下端中央で行われるため、ゾーンは地面を覆う必要があります。
インターネット接続がなくても Frigate は動きますか?
はい。検出、録画、MQTT、Home Assistant のオートメーションはすべて LAN 内で完結します。接続が必要なのは外出先からの遠隔視聴と、任意で使うクラウド型 GenAI プロバイダーだけです。0.17 では llama.cpp 連携が追加され、説明文の生成もローカルで行えます。
Frigate のゾーンとマスクは何が違いますか?
モーションマスクはその領域で検出処理そのものを止めるため、タイムスタンプの焼き込みや常に揺れる草木に向いています。ゾーンは検出を通常どおり実行したうえで、required_zones によって通知を出してよい検出だけに絞り込みます。物体でないものにはマスク、関心のない実在の物体にはゾーンです。
Frigate サーバー 1 台で何台のカメラを扱えますか?
カメラ台数そのものより推論時間で決まります。実用的な毎秒検出回数はおよそ 1000 を推論時間(ミリ秒)で割った値で、これを全カメラで共有します。カメラごとに検出 5fps、Intel Arc A750 で YOLOv9-320 が 8 ms という条件なら、一般的な住宅設置には十分な余裕があります。
顔認識やナンバープレート認識に Frigate+ は必要ですか?
いいえ。顔認識とナンバープレート認識は契約なしでローカル動作します(Frigate+ のモデルは効率を改善します)。Frigate+ は年額 50 ドルで最大 12 個のファインチューニング済みモデルを含み、追加は 1 回 5 ドルです。誤分類が繰り返される場合には有効ですが、歩道の通行対策には不要です。
Proxmox の LXC コンテナで Frigate を動かせますか?
いいえ。Proxmox LXC は明確に非対応です。代わりに QEMU 仮想マシンを使ってください。iGPU、Coral、Hailo モジュールのパススルーは LXC 上で一見動作しても、サポート不能な形で破綻することがあります。
出典
- Frigate 推奨ハードウェア — docs.frigate.video/frigate/hardware — 検出器ごとの公表推論時間と、新規インストールで Coral を推奨しないという記載。
- Frigate 物体検出器の設定 — docs.frigate.video/configuration/object_detectors — 検出器
typeの全一覧と、CPU 検出器を推奨しない旨の注記。 - Frigate カメラ設定 — docs.frigate.video/frigate/camera_setup — 検出用・録画用ストリームの解像度、フレームレート、I フレーム間隔の指針。
- Frigate ゾーン設定 — docs.frigate.video/configuration/zones — required_zones、loitering_time、inertia の既定値、速度推定の要件。
- Frigate セマンティック検索 — docs.frigate.video/configuration/semantic_search — RAM と AVX2 の要件、Jina CLIP V1 / V2 の比較、再インデックスの挙動。
- Frigate Home Assistant 連携 — docs.frigate.video/integrations/home-assistant — 前提となる MQTT と、統合が生成するエンティティ種別。
- GitHub の Frigate リリース — github.com/blakeblackshear/frigate/releases — 0.17.x および 0.18.0 ベータのバージョン番号とリリース日。
- Frigate+ — frigate.video/plus/ — 契約価格、含まれるファインチューニング回数、ラベルの制約。
