Win10下部署VS+Qt+OpenCV+darknet(YOLO)集成环境
VS+Qt集成环境
- 下载VS与Qt并安装。
- 将Qt的bin目录加入PATH路径
bin目录举例:D:\development\Qt\5.12.0\msvc2017_64\bin
- 下载VS对应版本的Qt扩展插件,可以在VS的扩展商店下载也可以去网站下载然后安装
Qt Visual Studio Tools:下载连接
后缀名为vsix可以直接安装,如果是zip等压缩文件可以修改为vsix - 安装完成后打开VS,在扩展->Qt VS Tools->Qt Options->Add,将Qt安装路径添加进来。
如果第三步没有将Qt加入PATH路径的话这里可能没有可点击的选项
安装路径举例:D:\development\Qt\5.12.0\msvc2017_64 - 创建一个Qt新项目,如果创建成功就说明集成环境已经搭建完成。
有几种Qt新项目,如果一种不行就尝试另一种,因为可能有未知的错误导致失败
- 如果如上搭建完成但include导入包时显示无包,则在项目->属性->VC++目录,将Qt的include目录加入包含目录,将Qt的lib目录加入库目录
include目录举例:D:\development\Qt\5.12.0\msvc2017_64\include
lib目录举例:D:\development\Qt\5.12.0\msvc2017_64\lib
VS+OpenCV集成环境
注意:通过这个方式搭建的环境无法在Qt Creator中集成,具体原因暂未知。
- 下载OpenCV源码并解压,下载并安装CMake的带GUI版本
- 使用CMakd构建OpenCV
- Where is the source code选择OpenCV的sources目录
sources目录举例:D:/development/OpenCV/opencv/sources
- 在sources目录下建立build文件夹,Where to build the binaries选择该文件夹
build目录举例:D:/development/OpenCV/opencv/sources/build
- 点击Configure生成配置列表
如果有弹出CMakeSetup选项框的话:
- Specify the generator for this project选择你所使用的VS版本
- Optional platform for generator选择你所使用的平台,默认X64
- 然后点Finish
- 在生成的配置列表中找到"BUILD_opencv_world"勾上,然后再点击Configure,完成后点击Generate,完成后点击Open Project。
这样做的好处就是能将OpenCV模块构建为一个库(dll文件),VS中方便添加
- Where is the source code选择OpenCV的sources目录
- 使用VS生成OpenCV
- 点击生成(Build)->批生成(Batch Build)
- 将"ALL_BUILD"与"INSTALL"全都勾上(有4个)
- 点击生成(Build)
- 将OpenCV dll文件加入PATH环境变量,dll文件就是上面的lib同级目录下的bin目录
路径举例:D:\development\OpenCV\opencv\sources\build\install\x64\vc16\bin
- 配置VS+OpenCV环境
- 在项目->属性中选择VC++目录,在包含目录中添加include目录,在库目录中添加lib目录
include目录举例:D:\development\OpenCV\opencv\build\include
lib目录举例:D:\development\OpenCV\opencv\build\x64\vc15\lib - 选择链接器的输入选项卡,在附加依赖项中将lib目录下的两个.lib文件加入
举例:
D:\development\OpenCV\opencv\build\x64\vc15\lib\opencv_world346.lib
D:\development\OpenCV\opencv\build\x64\vc15\lib\opencv_world346d.lib
- 在项目->属性中选择VC++目录,在包含目录中添加include目录,在库目录中添加lib目录
- 新建一个Qt文件或者命令行应用,然后使用OpenCV的函数,如果不报错说明环境搭建完成。
Darknet部署YOLO
- 去GitHub上下载Darknet的zip包或者clone源码,或者在gitee的国内仓库下载,速度更快
Darknet:GitHub仓库地址、gitee仓库地址其一
- 下载CUDA以及cuDNN,要求CUDA>=10.2,cuDNN可用版本与CUDA一致,cnDNN要登录
- CUDA安装完成后打开C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0将cnDNN的文件解压覆盖
- 将Darknet源码中build目录下的darknet.vcxproj文件中的CUDA版本改为安装的版本。
darknet.vcxproj文件路径举例:D:\development\Tools\darknet\build\darknet
- 使用CMake-GUI,将Darknet源码构建,设置好Where is the source code与Where to build the binaries(注意源码中已经有build文件夹,不要选择该文件夹),点击Configure -> Finish(选项和上面一样) -> Generate -> Open Project,打开VS之后将Debug改为Release,并且选择x64平台,然后点击菜单的生成 -> 生成解决方案,只要生成成功就说明环境已经搭建成功。
- 将darknet.exe加入PATH路径,darknet.exe在生成文件夹的Release文件里,至此环境搭建已经完成
路径举例:D:\development\Tools\darknet\newbuild\Release
- 如果在使用YOLO时提示CUDA Error:no kernel image is available for execution on the device,说明CUDA版本太高,不支持当前显卡,请降低版本。
- 如果在使用YOLO时提示找不到pthreadsCV2.dll,前往Darknet的3rdparty文件夹将pthreads.dll复制到C:\Windows\SysWOW64与C:\Windows\System32中
pthreadsCV2.dll路径举例:D:\development\Tools\darknet\3rdparty\pthreads\bin
Win10下部署VS+Qt+OpenCV+darknet(YOLO)集成环境的更多相关文章
- 关于在windows下部署发布QT程序的总结
原文请看:http://www.cnblogs.com/javaexam2/archive/2011/05/18/2632916.html 关于在windows下部署发布QT程序的总结 2008-06 ...
- deepin系统下部署Python3.5的开发及运行环境
deepin系统下部署Python3.5的开发及运行环境 1 概述 由于最近要学习python接口自动化测试,所以记录一下相关学习经过及经验,希望对大家可以有所帮助. 2 下载 在python官网下载 ...
- win10 下 protobuf 与 qt
编译环境: win10 x64 编译器 :mingw32 cmake 使用场景:Qt4.8.7 下载 protobuf 最新的代码:https://github.com/google/proto ...
- Linux下部署docker记录(0)-基础环境安装
以下是centos系统安装docker的操作记录 1)第一种方法:采用系统自带的docker安装,但是这一般都不是最新版的docker安装epel源[root@docker-server ~]# wg ...
- windows下安装Apache、php、mysql集成环境
一.准备工作 本次安装的版本分别为:apache2.4 .php5.6 . mysql5.7 下载地址为:http://pan.baidu.com/s/1boQNIOn 密码:zarx 二.安装步骤 ...
- WIN10下使用Anaconda配置opencv、tensorflow、pygame并在pycharm中运用
昨天想运行一段机器学习的代码,在win10系统下配置了一天的python环境,真的是头疼,准备写篇博客来帮助后面需要配置环境的兄弟. 1.下载Anaconda 根据昨天的经历,发现Anaconda真的 ...
- win10系统iis下部署搭建https (ssl/tls)本地测试环境
有时想要把公司的某些XX项目部署成https站点,是为了在传输层加密传输,防止他人嗅探站点重要数据信息,平常我们使用的http方式都是明文方式传输的很不安全,容易被他人窃取.而有些时候要在本地搭建ht ...
- win10下部署.Net Web项目到IIS10
本问主要介绍如何将.Net Web项目部署到IIS10下面. 1.确保iis功能已开启 开启步骤如下:控制面板->程序 点击确定,ok,iis功能已开启. 2.打开iis,绑定站点到iis下面 ...
- C# 下搭建最新版OpenCV(Emgu CV)开发环境
既然是"最新版" 首先当然是去sf找安装包: https://sourceforge.net/projects/emgucv/files/emgucv/ 或着去github主页上c ...
随机推荐
- C# 排序列表(SortedList)
SortedList 类代表了一系列按照键来排序的键/值对,这些键值对可以通过键和索引来访问. 排序列表是数组和哈希表的组合.它包含一个可使用键或索引访问各项的列表.如果您使用索引访问各项,则它是一个 ...
- 13.SpringMVC之全局异常
我们知道,系统中异常包括:编译时异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发.测试通过手段减少运行时异常的发生.在开发中,不管是dao层 ...
- Spring详解(五)------面向切面编程
.AOP 什么? AOP(Aspect Oriented Programming),通常称为面向切面编程.它利用一种称为"横切"的技术,剖解开封装的对象内部,并将那些影响了多个类的 ...
- webpack4 插件ProvidePlugin使用遇到的问题
根据博客https://www.cnblogs.com/geyouneihan/p/9769808.html学习webpack4中使用ProvidePlugin遇到了自定义js无法使用的问题,解决之后 ...
- 查询ES6兼容的网站
http://kangax.github.io/compat-table/es6/ 查询es6兼容的网站
- 小程序es6
在小程序中使用ES6的新特性ECMAScript 6(简称ES6)是于2015年6月正式发布的JavaScript语言的标准,正式名为ECMAScript 2015(ES2015). 小程序在很久之前 ...
- Linux下修改mysql默认最大连接数
liunx下修改mysql最大连接数(Centos下测试通过)1.查看当前系统下mysql设置的最大连接数方式一.mysqladmin -uroot -p variables |grep max_co ...
- 三大操作系统对比使用之·Windows10
时间:2018-10-29 记录:byzqy 本篇是一篇个人对Windows系统使用习惯.技巧和应用推荐的文档,在此记录.分享和后续查询备忘. 打开终端: Win+R,调出"运行" ...
- MySQL数据完整性约束
主键约束 主键可以是表中的某一列,也可以是表中的多个列所构成的一个组合:其中,由多个列组合而成的主键也称为复合主键.在MySQL中,主键列必须遵守以下规则. (1)每一个表只能定义一个主键. (2)唯 ...
- 字符串截取子串(Java substring , indexOf)
前言 因为之前java课设做的是股票分析系统,我找的接口返回的是一个.csv文件,因为这种文件里面的数据是以逗号分隔的,所以要对数据进行分析的时候需要截取子串,并且以逗号作为截取的标志.所以接下来就说 ...