Frigate是一个开源的软件,可以让你在Home Assistant中实现实时的人物和物体检测。它可以和支持RTSP协议的摄像头配合使用,让你的智能家居更加智能。本教程将指导你如何在supervised版本的home assistant的config文件夹创建一个frigate文件夹,以便存放frigate的数据库文件。
准备工作
在开始本教程之前,你需要准备以下内容:
- 安装了Home Assistant(我使用的是VMWare Workstation虚拟机)
- 安装了MQTT服务器(作为Home Assistant的插件)。你可以参考这个指南的“Install MQTT Broker”和“Create MQTT User Account”部分。
- 一台支持RTSP协议的摄像头(我使用的是Amcrest IP2M-841 1080p Pan/tilt/zoom camera)
步骤一:安装Frigate NVR插件
- 打开Home Assistant,进入Supervisor > Add-on Store。
- 在右上角,点击三个点,选择Repositories。
- 在弹出的窗口中,粘贴这个链接
https://github.com/blakeblackshear/frigate-hass-addons
,然后点击Add。 - 你应该会看到两个新的插件:Frigate NVR和Frigate Proxy。
- 点击Frigate NVR,然后点击Install。
步骤二:配置Frigate NVR
- 在Frigate NVR的页面中,点击Configuration。
- 在Configuration中,你需要填写以下内容:
- mqtt: 这里你需要填写你的MQTT服务器的地址、端口、用户名和密码。例如:
mqtt:
host: 192.168.1.100
port: 1883
user: mqtt_user
password: mqtt_password
- cameras: 这里你需要填写你要添加的摄像头的信息,包括名称、RTSP地址、角度、宽度、高度等。例如:
cameras:
front_door:
ffmpeg:
inputs:
- path: rtsp://user:password@ip_address:port/cam/realmonitor?channel=1&subtype=0
roles:
- detect
- rtmp
width: 1920
height: 1080
fps: 5
rotate: 0
- 填写完毕后,点击Save。
步骤三:创建frigate文件夹
- 在Home Assistant的config文件夹中(通常位于/home/homeassistant/.homeassistant/),创建一个名为frigate的文件夹。
- 在frigate文件夹中,创建一个名为frigate.db的文件。这个文件将用于存放frigate的数据库信息。
- 在Frigate NVR的Configuration中,设置database path为/config/frigate/frigate.db。例如:
database:
path: /config/frigate/frigate.db
- 点击Save。
步骤四:重启Frigate NVR
- 在Frigate NVR的页面中,点击Info。
- 在Info中,点击Restart。
- 等待几秒钟,你就可以看到Frigate NVR已经成功启动,并且开始检测你添加的摄像头。
步骤五:安装Frigate Home Assistant集成
- 在Home Assistant中,进入HACS > Integrations。
- 点击右下角的加号图标,搜索Frigate。
- 点击Frigate,然后点击Install。
- 安装完成后,重启homeassistant core
步骤六:添加Frigate摄像头到Home Assistant
- 在Home Assistant中,进入Configuration > Integrations。
- 点击右下角的加号图标,搜索Frigate。
- 点击Frigate,然后点击Configure。
- 在弹出的窗口中,填写你的Frigate NVR的地址和端口。例如:
Host: 192.168.1.100
Port: 5000
- 点击Submit。
- 你就可以看到Frigate已经成功添加到Home Assistant,并且显示了你添加的摄像头和检测到的实体。
步骤七:创建一个Lovelace卡片来显示你的摄像头
- 在Home Assistant中,进入Overview > Edit Dashboard。
- 点击右下角的加号图标,选择Manual Card。
- 在弹出的窗口中,输入以下代码:
type: picture-entity
entity: camera.front_door
camera_image: camera.front_door
show_name: false
show_state: false
aspect_ratio: 50%
tap_action:
action: more-info
- 点击Save。
- 你就可以看到一个Lovelace卡片,显示了你的摄像头的画面,并且在画面上标注了检测到的人物或物体。
恭喜你,你已经完成了本教程!你现在可以在Home Assistant中使用Frigate来实现实时的人物和物体检测了。