hpc203 / yolov5-dnn-cpp-python

用opencv的dnn模块做yolov5目标检测,包含C++和Python两个版本的程序

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

C++版本检测不到物体

JinXiangLai opened this issue · comments

C++版本的
boxes.size()是0,检测不到任何物体是怎么回事呢?

commented

In some cases you need to low the confidence acquirement if you use default setting:
(content from yolo.h)
image

commented

C++版本的 boxes.size()是0,检测不到任何物体是怎么回事呢?

你好,你能用c++加载模型吗?是把yolov5 6.0版本的按照他说的提取出.pth然后转换为yolov5s.onnx,最后就能调用吗?我按照这个步骤做的,但是readNetFromONNX就会报错,加载不了网络。您成功了吗?可以说下做的步骤吗?

readNetFromONNX就

你是不是把onnx文件放错位置了?如果你用vs,把onnx文件和图片都放在与 ***.vcxproj相同的目录下

C++版本的 boxes.size()是0,检测不到任何物体是怎么回事呢?

你好,你能用c++加载模型吗?是把yolov5 6.0版本的按照他说的提取出.pth然后转换为yolov5s.onnx,最后就能调用吗?我按照这个步骤做的,但是readNetFromONNX就会报错,加载不了网络。您成功了吗?可以说下做的步骤吗?

如果你用的是vs,你把coco.name放在***.vsxproj文件的目录下,保证coco.name与***vcxproj处于同一个目录下就可以了。

这个仓库的代码有些旧了,最近我发布了使用opencv部署yolov5-v6.1的程序,源码地址是:
https://github.com/hpc203/yolov5-v6.1-opencv-onnxrun
可以用这个新的,里面讲解了如何转换生成onnx文件

commented

readNetFromONNX就

你是不是把onnx文件放错位置了?如果你用vs,把onnx文件和图片都放在与 ***.vcxproj相同的目录下

并没有欸,coco.name已经正确读取了,但是用opencv读取onnx文件就报错,我的opencv是4.1.3,但我不能更换这个版本。所以不知道问题在哪里?用python 里的opencv读取没有问题

但是readNetFromONNX就会报错

onnx文件在什么位置?是否与.vcxproj处于同一目录?读onnx不应该有错的,大概率是程序没找到onnx文件。
image
如图所示,你得让.onnx和.vcxproj处于同一目录才行

readNetFromONNX就

你是不是把onnx文件放错位置了?如果你用vs,把onnx文件和图片都放在与 ***.vcxproj相同的目录下

并没有欸,coco.name已经正确读取了,但是用opencv读取onnx文件就报错,我的opencv是4.1.3,但我不能更换这个版本。所以不知道问题在哪里?用python 里的opencv读取没有问题

你再检查一下程序。程序里的模型名字和onnx文件名是否对的上?