yolov5 调用自己的dll(windows——c++)

博主分享了C++代码封装与优化经验,包括模型封装、性能提升、跨平台影响、Py版本接口开发,以及Yolox模型移植与DLL生成过程。还介绍了如何解决运行时错误和封装后的检测速度变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看我的效果

 

首先我 对代码 进行了2次封装。 目前不需要安装环境直接可以运行的。

主要把路径修改好

本来以为 这个问题应该封装的时候 老代码 会判断图片是否为空 有个return 0;

封装的时候我记得把他删掉了。不影响检测。 就是不好看。

回来发现在最后应该少了那个库;(太多了不知道少那个不找了)

程序是没有大问题的。下载下来以后 填好路径 就可以了

在封装前可以跑14ms 封装之后188ms (可能是跨平台影响的)

下面就是我封装好的文件 ——我的模型只有一个类别

链接:https://pan.baidu.com/s/1knCEqc24CDSeKC60DI0ghw 
提取码:o0sx 
--来自百度网盘超级会员V2的分享

补充 找到了

链接:https://pan.baidu.com/s/1g0le_3HY0DXlOIf_nrt3Fg 
提取码:kkqt 
--来自百度网盘超级会员V2的分享

把这个放里面  就没有报错了

 

好了   c++   能好了  搞个py 的版本

我写了一个py的接口  又封装在了pyside(qt)里面

 

功能就不展示了   

链接:https://pan.baidu.com/s/1qP86aMo0koltxDBWF5Isew 
提取码:xj8k 
--来自百度网盘超级会员V2的分享

下面这是yolox的封装  (我用的官网的模型,类别是coco)

 x比5简单

链接:https://pan.baidu.com/s/1MGGkgU0pTuCQIdE-_b5-Vg?pwd=5nej 
提取码:5nej 
--来自百度网盘超级会员V3的分享

上一次移植后的ms  ——193

初步考虑可能是封装的源码有问题

经过我重新封装  并且移植后  为30ms

移植前

移植后

简单说下怎么生成

 第一步跑通   trt  生成的engine  并且测试成功

 2  编写代码      改cmake    编译

3  releas   生成dll

 

 4.配环境  跑  dll   

 链接:https://pan.baidu.com/s/1Kwgf2DCHcdcoXNNq2B-7qw?pwd=o1yw 
提取码:o1yw 
--来自百度网盘超级会员V3的分享

新加 检测整个文件夹的接口

链接:https://pan.baidu.com/s/1MggzPN3uuAfqDTDwkE2xtw?pwd=0k1u 
提取码:0k1u 
--来自百度网盘超级会员V3的分享

如果出现  tplj  错误

解决  在Detection.h  39行加入

	int tplj(std::string img_dir, std::vector<cv::Rect>& Boxes, std::vector<const char*>& ClassLables);

 并且在  pch.h  添加、

virtual int tplj(std::string img_dir, std::vector<cv::Rect>& Boxes, std::vector<const char*>& ClassLables) = 0;

 

 

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WangSaLe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值