『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 1100|回复: 43

[经验分享] PVE+ vGPU Tesla P4 + Frigate 的简单尝试

[复制链接]

10

主题

63

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
金钱
235
HASS币
0
发表于 2024-4-8 16:33:49 | 显示全部楼层 |阅读模式
本帖最后由 hood2000 于 2024-4-11 09:57 编辑

在论坛里学了好多天,弄的一头雾水,还是要实践一下试试。

1.服务器
二手华为2288hv5 一台,垃圾矿卡 tesla P4 一张。
1.png

2.监控设备
垃圾tplink一套,支持rtsp 。
2.jpg
3.环境配置

(1)PVE配置vGPU host 驱动,单独部署一个docker FastAPI-DLS授权服务,将P4 切分给虚拟机。不得不说,P4这张卡,300多一片,8G显存,待机功耗10w,满载75w,我按2g显存切成为4份,分别配置给黑群、win11、Jellyfin和Frigate,一般软件和解码足够用了。 具体可参考 https://xinalin.com/159/vgpu-configuration-on-pve

3.png

(2)配置Frigate专用的虚拟机,要用ubuntu server,安装vGPU驱动。驱动装好之后如下图,暂时忽略下面的ffmpeg进程,这是加载了6个摄像头的进程。
4.0.png

(3)配置docker部署frigate。这里可参照使用Frigate配合摄像头进行人数统计最详细的中文教程 - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz! (hassbian.com),也要参照官方文档 Full Reference Config | Frigate

image: ghcr.io/blakeblackshear/frigate:stable-tensorrt #镜像文件看官方文档,这里选用了自带模型的镜像。

          devices: #这是docker直通虚拟机显卡的配置,nvidia gpu及驱动。
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    devices:
      - /dev/dri/renderD128:/dev/dri/renderD128
volumes:
      - /root/frigate/:/config
      - /root/frigate/storage:/media/frigate #建议加上,需要下载模型文件
  
<blockquote>ffmpeg:              
  hwaccel_args: preset-nvidia-h264 #GPU

4.png

(4)frigate配置。配置参照文档自己调整,用gpu模型需要配置好detectors和model。
mqtt:
  host: 192.168. .  #mqtt的ip
  port: 1883 #mqtt端口
  user: mqtt #mqtt用户名,如果没有的话,可不写
  password:   #mqtt密码,如果没有的话,可不写
  client_id: frigate #用于区分

detectors:
  tensorrt:
    type: tensorrt #nvidia tensorrt
    device: 0 #第一个gpu

model:
  path: /config/model_cache/tensorrt/yolov7-tiny-288.trt
  input_tensor: nchw
  input_pixel_format: rgb
  width: 288
  height: 288

        
objects:
  track:
    - person
    - dog
    - face

cameras: 
  South: 
    enabled: True
    record:
      enabled: True 
    ffmpeg:
      inputs:
        - path: rtsp://admin:*****@1.1.1. 1:554/stream2&channel2 
          roles:
            - detect
            - audio
            - record  
    audio:
      enabled: True
    detect:
      enabled: True

ffmpeg:              
  hwaccel_args: preset-nvidia-h264 #GPU

4.效果控制界面
5.png
动态鹰眼图,可以实时看所有的摄像头。
6.png
动态事件,在gpu和模型的加持下,有一点风吹草动都跑不掉,比tplink的app更灵敏更准确。但是,目前发现人狗不分。。。
7.png
有gpu的支持,系统占用喜人,功耗不超过30w
8.png

5.模型选择
frigate docker部署完成后,如果需要重新选择物体检测的模型,需要删除docker重新构建并生成相应预训练文件。备份好docker-compose.yml和config.yml ,分别在相应位置修改。
模型可选范围Object Detectors | Frigate
frigate:
  environment:
    - YOLO_MODELS=yolov7-320,yolov7x-640 #模型可选范围见  
    - USE_FP16=false

detectors:
  tensorrt:
    type: tensorrt
    device: 0 #This is the default, select the first GPU

model:
  path: /config/model_cache/tensorrt/yolov7-320.trt  #预训练的模型文件
  input_tensor: nchw
  input_pixel_format: rgb
  width: 320 #与上面文件尺寸对应
  height: 320

初次编译模型的时间还是挺长的,如果同时选择了几个,不要着急。

9.png

换成yolov7-320,分辨率4608x1260占用大概在300m左右,分辨率1792x490大概在150m,识别的成功率明显提高,但是显存和功耗也相应提升不少。
p4在切片为2g显存的情况下,如果采用yolov7-640 ,不足以支持以上6台摄像头。
11.png 12.png 配合mqtt推送给手机客户端,可参照下文。
Frigate + MQTT + HA 推送摄像头----更新为PushDeer推视截图+视频 - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz! (hassbian.com)

10.jpg


6.完
p4这张十年前的gpu对于这种轻量级的应用还是非常实惠的,相对于其他设备便宜大碗,欢迎大家搞来一起玩。








评分

参与人数 4金钱 +42 收起 理由
firewater + 10 高手,这是高手!
dest16 + 10 高手,这是高手!
kaka0992 + 10 感谢楼主分享!
隔壁的王叔叔 + 12 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

7

主题

134

帖子

953

积分

高级会员

Rank: 4

积分
953
金钱
819
HASS币
0
发表于 2024-4-8 16:42:30 | 显示全部楼层
4.06ms 的能力,雀食牛皮。

P4这个卡美中不足的就是解码不支持AV1。
回复

使用道具 举报

2

主题

340

帖子

2915

积分

金牌会员

Rank: 6Rank: 6

积分
2915
金钱
2575
HASS币
0
发表于 2024-4-8 16:48:11 | 显示全部楼层
居然人狗不分
回复

使用道具 举报

1

主题

148

帖子

1098

积分

金牌会员

Rank: 6Rank: 6

积分
1098
金钱
950
HASS币
0
发表于 2024-4-8 16:55:24 | 显示全部楼层
hhh. 发表于 2024-4-8 16:42
4.06ms 的能力,雀食牛皮。

P4这个卡美中不足的就是解码不支持AV1。

价格感人
回复

使用道具 举报

10

主题

63

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
金钱
235
HASS币
0
 楼主| 发表于 2024-4-8 16:55:54 | 显示全部楼层

应该是模型输入只有288x288像素,所以人狗不分,估计换个大模型应该可以。不过,考虑到功耗和实际需求,影响不大。
回复

使用道具 举报

41

主题

1299

帖子

5340

积分

论坛元老

Rank: 8Rank: 8

积分
5340
金钱
4036
HASS币
20
发表于 2024-4-8 16:56:00 | 显示全部楼层
请问pve部署vgpu是要在宿主系统部署吗,有详细部署命令吗,谢谢
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

10

主题

63

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
金钱
235
HASS币
0
 楼主| 发表于 2024-4-8 16:58:42 | 显示全部楼层
本帖最后由 hood2000 于 2024-4-8 17:00 编辑
jjcs 发表于 2024-4-8 16:56
请问pve部署vgpu是要在宿主系统部署吗,有详细部署命令吗,谢谢

https://xinalin.com/159/vgpu-configuration-on-pve
相信这个帖子能解决你的问题,方法、驱动、破解都在里面。
回复

使用道具 举报

41

主题

1299

帖子

5340

积分

论坛元老

Rank: 8Rank: 8

积分
5340
金钱
4036
HASS币
20
发表于 2024-4-8 17:19:57 | 显示全部楼层
hood2000 发表于 2024-4-8 16:58
https://xinalin.com/159/vgpu-configuration-on-pve
相信这个帖子能解决你的问题,方法、驱动、破解都在 ...

论坛有你更精彩
折腾精神永存,感恩感谢论坛每一位愿意分享和帮助过我的大佬,论坛有你更精彩
回复

使用道具 举报

10

主题

63

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
金钱
235
HASS币
0
 楼主| 发表于 2024-4-8 19:00:31 | 显示全部楼层
jjcs 发表于 2024-4-8 17:19
论坛有你更精彩

能不能打赏一点
回复

使用道具 举报

51

主题

250

帖子

4324

积分

元老级技术达人

积分
4324
金钱
4064
HASS币
80
发表于 2024-4-8 20:23:18 | 显示全部楼层
yolov7是这样的,实测误报有点严重。p4的价格已经不美丽了,最近不得已在用p106训练小模型,速度和电费都吐了
没意思,跑路了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-1 18:15 , Processed in 0.444828 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表