前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >QT5+OpenCV+OpenVINO C++ 应用打包发布

QT5+OpenCV+OpenVINO C++ 应用打包发布

作者头像
OpenCV学堂
发布2022-06-13 11:10:16
1.9K1
发布2022-06-13 11:10:16
举报

点击上方蓝字关注我们

微信公众号:OpenCV学堂 关注获取更多计算机视觉与深度学习知识

引子

我用QT C++写了一个YOLOv5模型推理演示应用,主要包括功能有:

YOLOv5+ OpenCV4.5.4 DNN推理演示YOLOv5+OpenVINO2022.1推理演示YOLOv5+ONNXRUNTIME 推理演示

上述三个都CPU版本的推理演示,然后我最终完成GUI演示程序如下图:

支持一些显示选项,例如FPS计算显示,类别显示设置等。后来我又加上了YOLOX的推理演示,跟Faster-RCNN与Mask-RCNN的ONNXRUNTIME推理演示。

今天有个哥们想要测试程序,于是我就开始了使用QT自带的打包工具windeployqt.exe 开始了一通如猛虎操作,完成了打包!远程发到他的没有开发环境电脑,发现可以了,截图如下:

打包过程

01

拷贝第三方依赖DLL文件

首先把所有依赖的dll文件全部拷贝到项目编译生成的release目录下,我的release目录是:

D:\Qt\projects\build-yolov5_demo-Desktop_Qt_5_12_12_MSVC2017_64bit-Release\release

这些DLL主要是第三方的库,具体我的是OpenCV4.5.4相关DLL、OpenVINO支持必须的相关DLL文件,ONNXRUNTIEM相关的DLL文件,一通猛拷贝,就可以啦!

02

windeployqt.exe生成打包

这个时候一定要清楚你的编译是基于MINGW的编译器还是VS的编译器,这点太重要了,以我的为例:在QT的安装目录下面有两个目录

mingw73_64msvc2017_64

如果工程是MINGW编译的一定要选择 第一个目录下的windeployqt.exe,如果是VS编译的,比如我是VS2017的,就一定要选择第二个目录下的windeployqt.exe 工具来打包,否则打包完以后就无法运行!

确定了windeployqt.exe工具之后,打开cmd到windeployqt.exe工具所在目录,如下图:

然后运行命令行:

windeployqt.exe D:\Qt\projects\build-yolov5_demo-Desktop_Qt_5_12_12_MSVC2017_64bit-Release\release\yolov5_demo.exe –release

这句话的意思是打包成release的,因为我工程构建是基于release的,这点也太重要了,你的工程构建跟发布打包必须debug-debug 或者release-release,不然肯定无法启动。

其中--release表示打包为release模式。

成功运行之后显现如下:

这样就成功了!

03

zip打包发布

删去release目录下所有的cpp文件跟编译生成的中间文件,然后选择全部文件zip打包就好啦,这样就完成了打包。

最后特别说明

打包OpenVINO2022的时候除了需要把那些DLL文件全部拷贝过去,一定记得把plugin.xml文件(来自安装好的OpenVINO2022文件夹下)也拷贝过去,不然就会一直无法启动程序!!!

就是上图红框的文件,打包之后,我本机运行:

扫码查看OpenCV+OpenVIO+Pytorch系统化学习路线图

 推荐阅读 

CV全栈开发者说 - 从传统算法到深度学习怎么修炼

2022入坑深度学习,我选择Pytorch框架!

Pytorch轻松实现经典视觉任务

教程推荐 | Pytorch框架CV开发-从入门到实战

OpenCV4 C++学习 必备基础语法知识三

OpenCV4 C++学习 必备基础语法知识二

OpenCV4.5.4 人脸检测+五点landmark新功能测试

OpenCV4.5.4人脸识别详解与代码演示

OpenCV二值图象分析之Blob分析找圆

OpenCV4.5.x DNN + YOLOv5 C++推理

OpenCV4.5.4 直接支持YOLOv5 6.1版本模型推理

OpenVINO2021.4+YOLOX目标检测模型部署测试

比YOLOv5还厉害的YOLOX来了,官方支持OpenVINO推理

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OpenCV学堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档