yolov8使用C++推理的流程及注意事项

1.下载yolov8项目源码GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite

 2.下载opencvReleases - OpenCV,建议版本>=4.7.0,选择下载源码,

windows版本由于使用的编译器与我们所使用的mingw不一致,后续会出现错误,所以我们选择自己编译

3.下载cmake编译工具,添加到环境变量,自行百度,版本选最新即可

4.下载c++编译器mingwhttps://github.com/niXman/mingw-builds-binaries/releases?page=2,版本注意选择好,我这里选择的是11.2.0这个版本,如果选择最新版的后面编译opencv源码时会出现问题(原因未知)

 5.使用cmake和mingw编译opencv源码

        在opencv源码目录下建立两个文件夹mingw_build和bulid

        cmd进入mingw_build执行以下命令

cmake -G "MinGW Makefiles" C:\opencv-4.7.0 -DCMAKE_INSTALL_PREFIX=C:\opencv-4.7.0\build -DEBUILD_TESTS=OFF -DBUILD_PREF_TESTS=OFF
mingw32-make install -j 8

6.完成第五步后,把C:\opencv-4.7.0\build\x64\mingw\bin这一路径添加到环境变量Path中

7.把训练好的.pt权重文件转换成.onnx文件,自行百度

8.大概阅读主文件,修改相关路径或参数

9.修改cmakelist.txt

10.在yolov8源码目录example/YOLOv8-CPP-Inferevce下新建build文件夹,

进入文件夹执行两条命令

cmake .. -G "MinGW Makefiles"
make

 注意事项

在第五步编译opencv源码和第10步编译推理文件时,如果出现一些奇怪的报错,比如

 could not convert template argument 'cv::obsensor::ComPtr<IMFA

 undefined reference to `xxxxx‘

等错误大都是由于mingw编译器版本,opencv版本不匹配导致的,

目前使用我以上指定的版本已调通。


 opencv4.7.0

 mingw编译器选择 x86_64-11.2.0-release-posix-sjlj-rt_v9-rev0.7z

编译的opencv源码放在这里

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/111471.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年腾讯云轻量应用服务器优缺点大全

2023年腾讯云轻量应用服务器优缺点大全&#xff0c;腾讯云轻量应用服务器性能如何&#xff1f;轻量服务器CPU内存带宽配置高&#xff0c;CPU采用什么型号主频多少&#xff1f;轻量应用服务器会不会比云服务器CVM性能差&#xff1f;腾讯云服务器网详解CPU型号主频、内存、公网带…

ubuntu入门01——windows上直接部署linux(WSL)

win10安装参考如下教程&#xff1a; 旧版 WSL 的手动安装步骤 | Microsoft Learn 说明&#xff1a;该文档是我按如上教程安装使用Ubuntu写的回顾&#xff0c;家人们参考官方教程更妙。 1.启用适用于Linux的wundows子系统 2.启用虚拟机功能 dism.exe /online /enable-feat…

MySQL数据备份与恢复

备份的主要目的&#xff1a; 备份的主要目的是&#xff1a;灾难恢复&#xff0c;备份还可以测试应用、回滚数据修改、查询历史数据、审计等。 日志&#xff1a; MySQL 的日志默认保存位置为&#xff1a; /usr/local/mysql/data##配置文件 vim /etc/my.cnf [mysqld] ##错误日志…

行业趋势和新兴领域分析:分析当前网络安全行业的发展趋势,如IoT安全、AI安全、区块链安全等。

第一章&#xff1a;引言 随着数字化时代的迅速发展&#xff0c;网络安全已经成为各行各业不可忽视的重要领域。恶意攻击、数据泄露以及黑客入侵等威胁逐渐增多&#xff0c;推动着网络安全行业不断创新与进步。本文将深入探讨当前网络安全领域的发展趋势&#xff0c;聚焦于新兴…

智慧校园用电安全解决方案

随着科技的不断发展&#xff0c;智慧校园建设逐渐成为了教育行业的一大趋势。在这个过程中&#xff0c;电力系统作为校园基础设施的重要组成部分&#xff0c;其安全、稳定、高效的运行显得尤为重要。下面小编来为大家介绍下智慧校园用电安全解决方案吧! 一、智慧校园电力系统现…

Ubuntu下的QT开发

ubuntu安装QT的组件如下&#xff1a; 若要在ubuntu下启动QT有两种方案&#xff0c;一种是在菜单栏搜索qt双QT Create&#xff1b;另一种则是使用命令&#xff1a;/opt/Qt5.12.9/Tools/QtCreator/bin/qtcreator.sh

用Java实现Huffman编码

文章目录 前言一、实现思路二、准备Huffman结点三、主要实现 前言 在使用http1.1协议传输数据的时候&#xff0c;会有一些固定的字段&#xff0c;比如cookie、编码方式、接收的数据类型&#xff0c;另外会有一些大量重复的字段造成请求报文过于冗长&#xff0c;为了解决这个问…

2023年智慧政务一网通办云平台顶层设计与建设方案PPT

导读&#xff1a;原文《2023年智慧政务一网通办云平台顶层设计与建设方案PPT》&#xff08;获取来源见文尾&#xff09;&#xff0c;本文精选其中精华及架构部分&#xff0c;逻辑清晰、内容完整&#xff0c;为快速形成售前方案提供参考。 部分内容&#xff1a; 喜欢文章&#…

CSS3D+动画

CSS3D 1.css3D 给父元素设置 perspective:景深:近大远小的效果900-1200px这个范围内 transform-style:是否设置3D环境 flat 2D环境 默认值 perserve-3D环境 3D功能函数 1.位移: translateZ()translate3D(x,y,z) <!DOCTYPE html> <html lang"en"><h…

6路液体水位检测芯片VK36W6D SOP16 抗电源干扰及手机干扰特性好

产品品牌&#xff1a;永嘉微电/VINKA 产品型号&#xff1a;VK36W6D 封装形式&#xff1a;SOP16/QFN16L 详细资料&#xff1a;13.5/5.474/4.703 概述 VK36W6D具有6个触摸检测通道&#xff0c;可用来检测6个点的水位。该芯片具有较高的集成度&#xff0c;仅需极少的外部组件便…

Java面向对象

1. 对象简介 万物皆对象&#xff0c;而类可以理解为是对某一类事物的描述或者说对象的模板。 实例化出来的对象的实际数据存储在堆内存中&#xff0c;变量只是在栈内存中存储了对象实际数据在堆内存中的地址&#xff0c;所以当多个对象变量指向同一个对象实际数据时&#xff…

打开谷歌浏览器远程调试功能

谷歌浏览器远程调试功能 首先我们来启动Chrome的远程调试端口。你需要找到Chrome的安装位置&#xff0c;在Chrome的地址栏输入chrome://version就能找到Chrome的安装路径 开启远程控制命令 文件路径/chrome.exe --remote-debugging-port9222开启后的样子(注意要关闭其他谷歌浏…

python学习2之sublime text编辑器安装配置使用

1、在windows系统中使用sublime text 下载地址 https://www.sublimetext.com/3 2、在sublime text中运行python程序 代码运行可选择菜单Tools->Build或者按CtrlB 3、定制sublime text的设置 3.1将制表符转换为空格 选择菜单view->indentation,核实选择了复选框indent u…

QT6为工程添加资源文件,并在ui界面引用

以添加图片资源为例 右键工程名字&#xff08;不是最上面的名字&#xff09;&#xff0c;点击添加现有文件 这种方式虽然添加到了工程中&#xff0c;但不能在UI设计界面完成引用。主要原因可能是未把文件放入到项目资源文件中&#xff0c;以下面一种方式可以看出区别。 点击添…

深入了解Nginx:高性能的开源Web服务器与反向代理

一、Nginx是什么 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件&#xff08;IMAP/POP3&#xff09;代理服务器&#xff0c;也可以作为负载均衡器和HTTP缓存服务器使用。它采用事件驱动、异步非阻塞的处理方式&#xff0c;能够处理大量并发连接和高流量负载&#xff…

如何使用CSS实现一个带有动画效果的进度条?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ HTML 结构&#xff1a;⭐ CSS 样式&#xff1a;⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那…

Tomcat安装及基本使用

1. 什么是Web服务器 Web服务器是一种应用程序&#xff08;软件&#xff09;&#xff0c;它封装了对HTTP协议的操作&#xff0c;使得开发人员无需直接操作协议&#xff0c;从而简化了Web开发。其主要功能是提供网上信息浏览服务。 Web服务器安装在服务器端&#xff0c;我们可以…

电商系统架构设计系列(十):怎么能避免写出慢SQL?

上篇文章中&#xff0c;我给你留了一个思考题&#xff1a;怎么能避免写出慢SQL&#xff1f; 我们知道&#xff0c;一个慢 SQL 就可以直接让 MySQL 瘫痪。以我个人经验总结来看&#xff0c;一般情况下系统出问题&#xff0c;大多数都是因为SQL语句的问题。掌握和用好了SQL&…

全国首台!浙江机器人产业集团发布垂起固定翼无人机-机器人自动换电机巢

展示突破性创新技术&#xff0c;共话行业发展趋势。8月25日&#xff0c;全国首台垂起固定翼无人机-机器人自动换电机巢新品发布会暨“科创中国宁波”无人机产业趋势分享会在余姚市机器人小镇成功举行。 本次活动在宁波市科学技术协会、余姚市科学技术协会指导下&#xff0c;由浙…

RV64和ARM64栈结构差异

RV64和ARM64栈结构差异 1 RV64和ARM64栈结构差异示意图1.1 RV64和ARM64寄存器介绍1.1.1 RV64寄存器1.1.2 ARM64寄存器 1.2 RV64和ARM64栈结构差异示意图 2 RV64和ARM64栈使用示例2.1 测试的程序2.2 RV64反汇编的汇编程序2.3 ARM64反汇编的汇编程序2.4 RV64和ARM64测试程序的栈结…