Jetpack4.6+Deepstream6.0+Yolov5安装

1 安装Deepstream

2 yolov5转换

2.1 编译插件DeepStream-Yolo

2.2 yolov5转换成wts

  • 下载yolov5项目:https://github.com/ultralytics/yolov5
  • 将DeepStream-Yolo项目中utils/gen_wts_yoloV5.py拷贝到yolov5项目目录下,因为该脚本依赖了yolov5中utils中的内容
  • 执行python3 gen_wts_yoloV5.py -w WEIGHT -s SIZE生成cfg和wts文件【一定要在这一步指定模型的输入尺寸】

2.3 配置config_infer_primary_yoloV5.txt

[property]
gpu-id=0
net-scale-factor=0.0039215697906911373
model-color-format=0
custom-network-config=yolov5s.cfg  # cfg文件路径
model-file=yolov5s.wts  # wts文件路径
model-engine-file=model_b1_gpu0_fp32.engine
#int8-calib-file=calib.table
labelfile-path=labels.txt
batch-size=1
network-mode=0
num-detected-classes=80
interval=0
gie-unique-id=1
process-mode=1
network-type=0
cluster-mode=2
maintain-aspect-ratio=1
parse-bbox-func-name=NvDsInferParseYolo
custom-lib-path=nvdsinfer_custom_impl_Yolo/libnvdsinfer_custom_impl_Yolo.so
engine-create-func-name=NvDsInferYoloCudaEngineGet

[class-attrs-all]
nms-iou-threshold=0.45
pre-cluster-threshold=0.25
topk=300
  • custom-network-config=yolov5s.cfg # cfg文件路径
  • model-file=yolov5s.wts # wts文件路径
  • model-engine-file=model_b1_gpu0_fp32.engine,可以默认不修改,若无该文件将在第一期deepstream启动时自动根据wts和cfg生成model_b1_gpu0_fp32.engine。

2.4 执行deepsteam-app命令,生成engine文件并开始推理。

3 PythonSDK调用

问题1:执行deepstream-test1时出现下面错误

File "deepstream_test_1.py", line 55, in osd_sink_pad_buffer_probe
    batch_meta = pyds.gst_buffer_get_nvds_batch_meta(hash(gst_buffer))
AttributeError: module 'pyds' has no attribute 'gst_buffer_get_nvds_batch_meta

参考解决方案1:

Pyds In the use of probe extract Metadata Key information in , To use NVIDIA Compiled package , Not directly pip install The way , Otherwise, the corresponding method file will be missing , If the report is wrong :

AttributeError: module 'pyds' has no attribute 'gst_buffer_get_nvds_batch_meta'

The correct way is to download the compiled compressed package file , Download after decompression and download after decompression python/bindings In the path , According to their own platform , Such as jetson Copied to the /home/<user>/.local/lib/python<python-version>/site-packages/pyds.so In the path

此处pyds不是通过 pip3 install pyds安装的,它是nvidia提供的捆绑软件中的一个库deepstream_python_v0.9.tbz2下载地址。解压并安装。

tar jxvf deepstream_python_v0.9.tbz2
mkdir -p /home/<user>/.local/lib/python3.6/site-packages/
cp deepstream_python_v0.9/python/bindings/jetson/pyds.so  ~/.local/lib/python3.6/site-packages
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容