推荐一个人体检测 NVR : Frigate ,使用 Tensorflow + OpenCV检测对象

一个完整的本地 NVR,专为具有 AI 对象检测功能的 Home Assistant 设计。使用 OpenCV 和 Tensorflow 在本地为 IP 摄像机执行实时对象检测。
官方文档:https://docs.frigate.video/

本人使用 锐角云,检测带两个720p摄像头,延迟还能接受。最主要的时,HA中自动生成了检测对象。(只需要配置好摄像头,HA中安装相关插件)。
支持硬件加速,请按照文档配置:

安装
docker run -d
–name frigate
–restart=unless-stopped
–mount type=tmpfs,target=/tmp/cache,tmpfs-size=1000000000
#–device /dev/bus/usb:/dev/bus/usb
#–device /dev/dri/renderD128
–shm-size=64m
-v /home/xxx/video:/media/frigate
-v /home/xxx/frigate/config.yml:/config/config.yml:ro
-v /etc/localtime:/etc/localtime:ro
-e FRIGATE_RTSP_PASSWORD=‘xxx’
-p 5000:5000
-p 1935:1935
blakeblackshear/frigate:stable-amd64

N1
docker run -d
–name frigate
–restart=unless-stopped
–mount type=tmpfs,target=/tmp/cache,tmpfs-size=1000000000
–device /dev/dri/renderD128
–shm-size=256m
-v /root/frigate/video:/media/frigate
-v /root/frigate/config:/config/:ro
-v /etc/localtime:/etc/localtime:ro
-e FRIGATE_RTSP_PASSWORD=‘xxxx’
-p 5003:5000
-p 1935:1935
blakeblackshear/frigate:stable-aarch64

下面附上我的配置文件,仅供参考,需要根据摄像头像素,调整相关参数:

预格式化文本将缩进 4 格

config.yml.zip (7.0 KB)

1 个赞

一直用cpu跑。。前几天买的m.2的coral tpu和转接卡刚到,但是机器不识别,头疼。

请教下 coral tpu 买的那款?我也想买个。就是头疼 低功耗主机接口是否支持的问题。看了下需要走 pcie 协议的才行。谢谢!

usb没货了。pcie总共有四款,一个miniPCIe 三个m.2不同key,现在只有m.2 E Key有货,淘宝搜”tpu E key” 之前我看mini pcie只要260,可惜没货了,缺芯片太严重。


然后你需要一个m.2 E key母头转接卡,一般Key E是用来插网卡的,(Key B和Key M一般都是NVME SSD)淘宝上关键词是“ngff网卡转接pcie”,“m.2网卡转接pcie”。转接啥就看你主板上有什么接口,我买的是转接mini pcie的。你问客服她会说转接卡只能给网卡用,实际因为协议是pcie,所以都能用

我的不能识别是因为我这个软路由主板的mini PCIe接口其实不支持PCIe通道、因为被拿给网卡用了。只要是支持pcie的接口,用相应的转接头插上就能识别,然后还要装驱动,Coral官网有教程。

另外这个E key版本是双TPU的,但是目前只能用其中一个。目前没有主板支持m.2 Key E有双通道PCIe

以上是这几天花了N小时国外论坛爬楼成果

太感谢了,买一个回来试试

群晖docker怎么安装呢

感谢分享配置,体验了一下,这个太吃CPU了,可能是我配置有问题,I3-7100U的NUC,用的addons方式安装的,启动之后CPU从20%飙升到90+%,不过效果感觉还可以

啥时换了7100U

cpu侦测就是费力。要用coral。另外一定要开h264硬件加速。开了以后一个摄像头最多5%。7代i3完全超配了

大佬们真是越玩越高级了,都快跟不上了。。。。再等等tpu成熟点吧,汗。

前几个月突然对NUC感兴趣了就关注咸鱼,然后看到了一个7代的降价了就买了个玩,10月份买的

这个配置起来还是有门槛啊,我开始尝试docker直接安装没成,然后看到addons可以,试了下成功了,就配置上了,硬件解码应该是没成功,回头再试一试吧,我还在尝试做基础的基于乱七八糟的人体存在的自动化关灯,这个回头再慢慢搞,谢谢提示和楼主分享。

老哥请教下您用的什么迷你主机?我买了个倍控,不知道是否可用?第二我在PVE系统安装的HASSOS,驱动能装上吗?先谢谢啦

土豆大佬,您这边硬解码成功了吗?能分享一下方法吗?谢谢,小弟也挺感兴趣的

没有,整不动啊…

可以。pve本质就是debian,按照谷歌coral官网linux教程打驱动。然后把/dev/apex_0设备暴露给虚拟机

我的已经搭建好了在运行
现在coral加速器各个版本全网断货

对了,突然想起来。。

我之前买过一个四网口工控主机,跟你这个很像但是J1900的。后来发现主板上的mini pcie口死活无法识别设备。后来问了店主发现,这种主板的pcie通道给了额外两个网口,而mini pcie接口上阉割了pcie通道了,只支持usb协议,只支持usb协议的mini pcie网卡(没错!物理插口是mini pcie,但协议是usb,我去看了mini pcie物理接口标准,是同时支持pcie和usb两个协议)

我觉得你这个J4125的很有可能也是一样,这个你最好问问店家。你就这样问他:“主板上的mini pcie接口是否支持PCIE协议,有几个PCIE通道(一般是x2),比如能否用常见的mini PCIE无线网卡”

淘宝上MINI PCIE无线网卡大部分都是PCIE协议的。有少部分是USB协议的。这个工控主机的mini pcie插口是用来插usb协议的mini pcie 4G网卡的

真是太感谢您的回复了,最近一直就觉买什么型号的TPU,今天问了一下客户,确实如你所说那个mini pcie协议是usb的,太坑了这样要想用的话也只能用USB接口的了,问了一下淘宝客服,现在定大约1个月到货,价格700+,这个价格基本上全网最便宜了,刚预定了一个,到时候给大家分享一下我的测试结果

现在用cpu跑的docker,感觉识别速度有点慢,搞笑的是墙上的贴画也给识别成人了,

左边菜单点开debug,可以看到实际的识别速度。cpu识别是200毫秒,tpu是10毫秒左右

不过这是单纯的识别速度。首先要cpu检测到像素有变化(移动侦测),才会送交识别。很多时候用户体验到的识别速度慢是因为刚开始的移动没到达移动侦测的阈值。可以在webui的实时视频画面点开debug,然后打开各种框查看实时识别的状况

有很多参数可以优化,比如物体识别confidence level(默认70%以上就算识别),移动侦测阈值,移动侦测区域(motion mask,忽略一些区域的移动),等等