PP-Human人类属性运行环境搭建

PP-Human人类属性运行环境搭建

功能介绍

PP-Human提供了目标检测、属性识别、行为识别、ReID预训练模型,以实现不同使用场景,用户可以直接下载使用.Paddle humank可以实现实现PersonReID、客流等功能

github上相关详细文档

任务端到端速度(ms)模型方案模型体积
行人检测(高精度)25.1ms多目标跟踪182M
行人检测(轻量级)16.2ms多目标跟踪27M
行人跟踪(高精度)31.8ms多目标跟踪182M
行人跟踪(轻量级)21.0ms多目标跟踪27M
跨镜跟踪(REID)单人1.5msREIDREID:92M
属性识别(高精度)单人8.5ms目标检测 属性识别目标检测:182M 属性识别:86M
属性识别(轻量级)单人7.1ms目标检测 属性识别目标检测:182M 属性识别:86M
摔倒识别单人10ms多目标跟踪 关键点检测 基于关键点行为识别多目标跟踪:182M 关键点检测:101M 基于关键点行为识别:21.8M
闯入识别31.8ms多目标跟踪多目标跟踪:182M
打架识别19.7ms视频分类90M
抽烟识别单人15.1ms目标检测 基于人体id的目标检测目标检测:182M 基于人体id的目标检测:27M
打电话识别单人6.0ms目标检测 基于人体id的图像分类目标检测:182M 基于人体id的图像分类:45M

运行环境搭建

下载docker

然后pull镜像文件。cuda版本向下兼容

docker pull paddlepaddle/paddle:2.4.1-gpu-cuda10.2-cudnn7.6-trt7.0
创建docker

然后根据下载的镜像文件创建docker容器。

docker  run --runtime nvidia \
    -p 9292:9292 \
    --name test \
    -shm-size=252G \
    --network=host \
    -v $PWD:/home/PaddleDetection \
    -dit paddlepaddle/paddle:2.4.1-gpu-cuda10.2-cudnn7.6-trt7.0 /bin/bash

-v $PWD:/home/PaddleDetection :挂载工程目录

验证docker

然后用docker ps看一下当前运行的docker容器

docker ps     #查看当前运行的docker容器。
docker ps -a  #查看所有存在的docker容器。

结果如下:

CONTAINER ID   IMAGE                                           COMMAND       CREATED             STATUS             PORTS     NAMES
489e9f56374b        paddlepaddle/paddle:2.4.1-gpu-cuda10.2-cudnn7.6-trt7.0                     "/bin/bash"              41 hours ago        Up 41 hours                 22/tcp, 0.0.0.0:9292->9292/tcp      test
进入docker

然后进入docker环境:

docker exec -it test /bin/bash

工程部署

克隆PaddleDetection仓库
cd /home/test
git clone https://github.com/PaddlePaddle/PaddleDetection.git
cd PaddleDetection
git checkout release/2.5
安装其他依赖
cd PaddleDetection
pip install -r requirements.txt -i https://pypi.douban.com/simple

预测部署

视频资源:https://motchallenge.net/

参数说明

–video_fileOption
–configYes配置文件路径
-oOption覆盖配置文件中对应的配置
–image_fileOption需要预测的图片
–image_dirOption要预测的图片文件夹路径
–video_fileOption需要预测的视频,或者rtsp流地址(推荐使用rtsp参数)
–deviceOption运行时的设备,可选择CPU/GPU/XPU,默认为CPU
–rtspOptionrtsp视频流地址,支持一路或者多路同时输入
–run_modeOption使用GPU时,默认为paddle, 可选(paddle/trt_fp32/trt_fp16/trt_int8)
–trt_calib_modeOptionTensorRT是否使用校准功能,默认为False。使用TensorRT的int8功能时,需设置为True,使用PaddleSlim量化后的模型时需要设置为False
图片检测

行人检测,指定配置文件路径和测试图片,图片输入默认打开检测模型

python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml --image_file=demo/000000014439_640x640.jpg --device=gpu
视频检测
  • 行人属性识别,直接使用examples中配置
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/examples/infer_cfg_human_attr.yml --video_file=demo/videos/MOT16-02-raw.mp4 --device=gpu
  • 行人跟踪,指定配置文件路径,模型路径和测试视频, 命令行中指定的模型路径优先级高于配置文件
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml -o MOT.enable=True REID.enable=True --video_file=demo/videos/MOT16-02-raw.mp4 --device=gpu

命令行中指定的模型路径优先级高于配置文件

  • 行为识别,以摔倒识别为例,命令行中开启SKELETON_ACTION模型
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml -o SKELETON_ACTION.enbale=True --video_file=demo/videos/MOT16-02-raw.mp4 --device=gpu
视频流检测
  • 行人属性识别,单路视频流
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml -o visual=False --rtsp rtsp://[YOUR_RTSP_SITE]  --device=gpu
  • 行人属性识别,多路视频流
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml -o visual=False --rtsp rtsp://[YOUR_RTSP_SITE1]  rtsp://[YOUR_RTSP_SITE2] --device=gpu

tensorrt加速

使用tensorrt对服务进行加速

mode of running(paddle/trt_fp32/trt_fp16/trt_int8)

  • run_mode = paddle
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml --video_dir=demo/videos --device=gpu --run_mode paddle 
  • run_mode = trt_fp32
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml --video_dir=demo/videos --device=gpu --run_mode trt_fp32 
  • run_mode = trt_fp16
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml --video_dir=demo/videos --device=gpu --run_mode trt_fp16
  • run_mode = trt_int8,需要对模型进行量化
python deploy/pipeline/pipeline.py --config deploy/pipeline/config/infer_cfg_pphuman.yml --video_dir=demo/videos --device=gpu --run_mode trt_int8
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值