0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于QT5+OpenCV+OpenVINO C++的应用打包过程

OpenCV学堂 来源:OpenCV学堂 2024-01-26 10:17 次阅读

引子

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

YOLOv5+ OpenCV4.5.4 DNN推理演示
YOLOv5+OpenVINO2022.1推理演示
YOLOv5+ONNXRUNTIME 推理演示
上述三个都CPU版本的推理演示,然后我最终完成GUI演示程序如下图:

cba03884-bb58-11ee-8b88-92fbcf53809c.png

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

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

打包过程

01拷贝第三方依赖DLL文件

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

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

02windeployqt.exe生成打包

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

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

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

cbd006fe-bb58-11ee-8b88-92fbcf53809c.png

然后运行命令行:

windeployqt.exe D:Qtprojectsuild-yolov5_demo-Desktop_Qt_5_12_12_MSVC2017_64bit-Release
eleaseyolov5_demo.exe –release

这句话的意思是打包成release的,因为我工程构建是基于release的,这点也太重要了,你的工程构建跟发布打包必须debug-debug 或者release-release,不然肯定无法启动。 其中--release表示打包为release模式。 成功运行之后显现如下:

cbe11de0-bb58-11ee-8b88-92fbcf53809c.png

cbf3ea42-bb58-11ee-8b88-92fbcf53809c.png

这样就成功了!

03zip打包发布

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

最后特别说明

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

cc027e04-bb58-11ee-8b88-92fbcf53809c.png

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

wKgaomWzFnaAa2gpAAB6oVGRfkk543.jpg

wKgaomWzFoSAdcWZAABy1yBjmCc873.jpg

wKgaomWzFpSALrVaAAB3l0x6bo0215.jpg

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C++
    C++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72900
  • 模型
    +关注

    关注

    1

    文章

    2704

    浏览量

    47686
  • OpenCV
    +关注

    关注

    29

    文章

    611

    浏览量

    40776
  • Qt5
    Qt5
    +关注

    关注

    0

    文章

    15

    浏览量

    2991

原文标题:QT5+OpenCV+OpenVINO C++ 应用打包发布

文章出处:【微信号:CVSCHOOL,微信公众号:OpenCV学堂】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Qt使用openCV

    ,现在最新的是2.2,不过我用的是2.1。注意下载的时候选择VC专用版的。安装OpenCV2.1,我安装在C:/OpenCV2.1新建Qt的Project在.pro文件中包含
    发表于 11-22 16:12

    C++能用来做什么?

    了资料,Linux的应用开发有QT、安卓等。而我选择了QT。而QT又是使用C++的,所以我就开始学习了C++。学习了一段时间的
    发表于 08-13 08:00

    Qt Creator如何创建纯C++项目?

    Qt Creator如何创建纯C++项目
    发表于 11-09 08:54

    迅为i.MX6ULL开发板-移植OpenCv2.4.9-QT程序编译

    1.将提供的 QT 文件下载完成后,放到 /home/topeet/opencv2.4.9/opencvinstall/文件夹下。进入/QT/demo 目录下。我们打开 opencv
    发表于 05-06 14:19

    怎样去生成能在Qt中应用的opencv库呢

    请问如何生成适用于arm版的opencv,能在Qt中应用。(想在Qt中开发opencv相关的功能,需要调用opencv库,我用别的交叉工具链
    发表于 12-30 06:58

    OpenCV C++程序编译与演示

    1、在JetsonNano上编译OpenCV源码与OpenCV C++ YOLOv5程序演示  编译OpenCV最新4.5.x版本  Jet
    发表于 11-10 16:42

    使用OpenVINO中包含的OpenCV时无法导入ArUco库如何解决?

    使用OpenVINO™中包含的 OpenCV。 导入了搭载 Python 的 ArUco 库。 收到错误:ModuleNotFoundError: No module named \'cv2.aruco\'
    发表于 08-15 07:30

    opencv_videoio_ffmpeg_64.dll缺失,无法在OpenVINO trade中配置OpenCV怎么处理?

    ] global C:\\jenkins\\workspace\\OpenCV\\OpenVINO\\2021.4\\build\\windows\\opencv\\modules\\
    发表于 08-15 08:24

    如何正确安装OpenVINO并将其与所需依赖关系链接?

    \\openvino_2019.3.334\\opencv\\bin C:\\Program Files (x86)\\Intel\\openvino_2019.3.334\\pyth
    发表于 08-15 08:29

    使用OpenVINO运行C++ API创建输入tensor并执行推理遇到的问题求解

    使用 OpenVINO™ 运行时 C++ API 创建输入 tensor 并执行推理: ov::Tensor input_tensor = ov::Tensor(input_type
    发表于 08-15 08:22

    无法在OpenVINO trade Docker中运行OpenCV怎么解决?

    /dev/dri:/dev/dri \\ -v /docker-share/public:/public \\ openvino/ubuntu20_dev:latest 使用包含 OpenCV
    发表于 08-15 08:29

    如何在使用Inspector运行OpenVINO C++样本时避免内存泄露?

    运行OpenVINO™ 图像分类 Async C++示例带英特尔® Inspector用于检查内存问题。使用命令: $ pwd /home/centos
    发表于 08-15 06:18

    从Docker映像为Raspbian OpenVINO工具套件的安装过程

    openvino_fd_myriad.py 在此脚本中,OpenCV* 从中间表示 (IR) 格式加载人车-单车检测模型和图像。然后,它运行推理,将图像与检测结果保存为 out.png 。 这完成了从 Docker* 映像为 Raspbian*
    发表于 08-15 06:59

    Qt5环境下如何配置OpenCV

    本文档的主要内容详细介绍的是Qt5环境下如何配置OpenCV
    发表于 11-22 16:53 17次下载
    <b class='flag-5'>Qt</b>5环境下如何配置<b class='flag-5'>OpenCV</b>

    qt opencv opencl opengl源码例程

    qt-opencv-opencl-opengl-源码例程
    发表于 09-27 14:42 1次下载