frigate 支持人脸识别啦

绕海飞行的鱼🐟 发布于 6 天前 27 次阅读


目前 frigate v0.16 版本以上,添加了对人脸识别的支持。配置人脸识别不再需要 frigate + double-take + codeprojectai 了~ 官方文档也有了社区翻译,WEB UI 也有中文啦🎉~

设置人脸识别

在 frigate 配置编辑器中,全局开启人脸识别即可!(不需要的摄像头下面再手动关闭):

model_size 设置了 small,实测效果不错!建议有 GPU 的可以设置 large,详见官方说明

此时,保存并重启配置后,在左边栏中应该会出来一个人脸管理的按钮,点击进去后添加人脸:

然后去摄像头底下走一圈,正常就能检测到人脸数据了!

人脸训练数据和方法可以参考官方文档来进行!

Home Assistant 中的消息改动

原来在 HA 中截取了 double-take 的 MQTT 消息来判断人脸识别情况,现在只有 frigate 了,需要改动一下。

可以使用 frigate/reviews MQTT 消息来判断。以官方的示例为例:

{
  "type": "update", // new(新建), update(更新), end(结束)
  "before": {
    "id": "1718987129.308396-fqk5ka", // review_id(核查ID)
    "camera": "front_cam",
    "start_time": 1718987129.308396,
    "end_time": null,
    "severity": "detection",
    "thumb_path": "/media/frigate/clips/review/thumb-front_cam-1718987129.308396-fqk5ka.webp",
    "data": {
      "detections": [
        // 事件ID列表
        "1718987128.947436-g92ztx",
        "1718987148.879516-d7oq7r",
        "1718987126.934663-q5ywpt"
      ],
      "objects": ["person", "car"],
      "sub_labels": [],
      "zones": [],
      "audio": []
    }
  },
  "after": {
    "id": "1718987129.308396-fqk5ka",
    "camera": "front_cam",
    "start_time": 1718987129.308396,
    "end_time": null,
    "severity": "alert",
    "thumb_path": "/media/frigate/clips/review/thumb-front_cam-1718987129.308396-fqk5ka.webp",
    "data": {
      "detections": [
        "1718987128.947436-g92ztx",
        "1718987148.879516-d7oq7r",
        "1718987126.934663-q5ywpt"
      ],
      "objects": ["person", "car"],
      "sub_labels": ["Bob"],
      "zones": ["front_yard"],
      "audio": []
    }
  }
}

下面是我 HA 中 Node-RED 配置,其实三个 switch 可以用一个 function 代替来判断就行: