Win10+vs2017+OpenCV3.4.1+doxygen+cmake安装(DEBUG64位)

article/2025/9/27 20:55:22

  1. 下载软件

软件:vs2017

网址:https://visualstudio.microsoft.com/zh-hans/vs/whatsnew/

软件:opencv-3.4.1

网址:https://opencv.org/releases.html

软件:cmake-3.11(下载解压版本即可)

网址:https://cmake.org/files/

软件:opencv_contrib-3.4.1

网址:https://github.com/opencv/opencv_contrib/releases/tag/3.4.1

软件:doxygen

网址:https://sourceforge.net/projects/doxygen/files/

  1. vs2017安装

工作负载:

勾选项

1、使用 c++ 的桌面开发;

2visual studio 扩展开发

单个组件:

勾选项

1、适用于 Windows Git

2Help Viewer

注:还需要安装2015支持

如何补齐VS2017未安装的功能:(用于安装没有安装的功能)

https://blog.csdn.net/changfeng6616/article/details/81304034

  1. doxygen安装

doxygen官网下载doxygen-1.8.14-setup.exe,运行安装。默认安装即可。

  1. openCV编译

(1)cmake配置

a. 解压cmake至安装目录(自定义);

b. cmake-3.11.1-win64-x64\bin目录下运行cmake-gui.

c. cmake运行界面:

(2)openCV源码解压

(3)where is the source code

选择下载的opencv源文件(本例中选择E:\Program Files\opencv-3.4.1\src\opencv-3.4.1)(依具体路径配置(2)中配置)

(3)创建openCV编译文件夹

新建文件夹(本例中“E:\Program Files\opencv-3.4.1”下新建文件夹build_win64)。

(4)where to build the binaries

编译之后存放的位置选择(本例中选择刚建立的文件夹E:\Program Files\opencv-3.4.1 \build_win64

(5)平台配置并编译

点击cmake软件左下角的configure

选择 visual studio 15  2017  win64,然后点finish

(6)opencv_contrib-3.4.1配置

运行结束后,在name栏中找到BUILD_TESTSBUILD_PERF_TESTS取消勾选;

找到BUILD_DOCS勾选;

找到OPENCV_EXTRA_MODULES_PATHvalue栏中添加opencv_contrib-3.4.1modules路径: E:\Program Files\opencv-3.4.1\src\opencv_contrib-3.4.1(依具体情况确定路径)。

是否生成opencv_world.lib是要自己勾选的。opencv_world.lib只是所有lib的一个打包,在使用的时候,直接在附加依赖项添加这一个就可以,主要是为了比较方便。没有这个的话,把其他所有的lib文件全添加是一个效果。

一般实际工程中不需要opencv_world,会造成比较大量的冗余。

https://gss0.baidu.com/-Po3dSag_xI4khGko9WTAnF6hhy/zhidao/wh%3D600%2C800/sign=6cb17ce9dd00baa1ba794fbd7720952a/55e736d12f2eb93868dccbf7d9628535e5dd6f06.jpg

configure多次运行完后全部为白色;

点击Generate

完成后再点open Project

Open Project不可用,则在编译路径E:\Program Files\opencv-3.4.1\build_win64下找到OpenCV.sln,并打开。

(7)编译

在解决方案中找到CmakeTargets,下面有个install,右键点击生成build(建议先“清理”,再“重新生成”)。

Debug模式

Release 模式

(8)生成帮助文档

在解决方案中找到doxygen,右键点击生成build。完成后F:\opencv\ opencv3.4.1\mybuild_64\doc\doxygen\html中会生成帮助文件。

  1. 配置环境变量

计算机-属性-高级系统设置-高级,下面有个环境变量点进去,找到系统变量下的Path,添加build_win64\install\x64\vc15\文件夹下bin的路径E:\Program Files\opencv-3.4.1\build_win64\install\x64\vc15\bin

  1. vs配置openCV

1)打开VS2017,点击文件-新建-项目,已安装下的Visual  C++展开,常规,空项目,点确定即可新建空工程。

2)在VS2017右边有解决方案点击源文件,右键,添加-新建项,选择C++文件,点击右下角,添加。

3)选择视图-其他窗口-属性管理器,然后右边的工程那儿点击 属性管理器,展开DEBUG|X64,看到有个Microsoft.Cpp.x64.user,右键点击,选择属性。

4 通用属性-VC++目录,点击包含目录右边,选择,编辑,然后把三个文件夹添加进去(根据具体的安装路径安装):

E:\Program Files\opencv-3.4.1\build_win64\install\include

E:\Program Files\opencv-3.4.1\build_win64\install\include\opencv

E:\Program Files\opencv-3.4.1\build_win64\install\include\opencv2

5)库目录,把build_win64\install\x64\vc15文件夹下的lib添加进去:

E:\Program Files\opencv-3.4.1\build_win64\install\x64\vc15\lib

6)左边通用属性-链接器-输入-附加依赖项(可以按需要,选择 E:\Program Files\opencv-3.4.1\build_win64\install\x64\vc15\lib下的部分lib库, 如下部分示例):

opencv_aruco341d.lib

opencv_bgsegm341d.lib

opencv_bioinspired341d.lib

opencv_calib3d341d.lib

opencv_ccalib341d.lib

opencv_core341d.lib

opencv_datasets341d.lib

opencv_dnn341d.lib

opencv_dnn_objdetect341d.lib

opencv_dpm341d.lib

opencv_face341d.lib

opencv_features2d341d.lib

opencv_flann341d.lib

opencv_fuzzy341d.lib

opencv_hfs341d.lib

opencv_highgui341d.lib

opencv_imgcodecs341d.lib

opencv_imgproc341d.lib

opencv_img_hash341d.lib

opencv_line_descriptor341d.lib

opencv_ml341d.lib

opencv_objdetect341d.lib

opencv_optflow341d.lib

opencv_phase_unwrapping341d.lib

opencv_photo341d.lib

opencv_plot341d.lib

opencv_reg341d.lib

opencv_rgbd341d.lib

opencv_saliency341d.lib

opencv_shape341d.lib

opencv_stereo341d.lib

opencv_stitching341d.lib

opencv_structured_light341d.lib

opencv_superres341d.lib

opencv_surface_matching341d.lib

opencv_text341d.lib

opencv_tracking341d.lib

opencv_video341d.lib

opencv_videoio341d.lib

opencv_videostab341d.lib

opencv_xfeatures2d341d.lib

opencv_ximgproc341d.lib

opencv_xobjdetect341d.lib

opencv_xphoto341d.lib

7)关闭VS2017,如果提示是否保存配置之类的都点确定,然后再重新打开VS2017,打开刚才新建的工程,在源文件里写下测试代码(复制下面的就行,注意下面程序中的图片路径选择你自己的图片路径)。注意运行程序时选择DEBUG,以及X64,因为整个环境是配的debug64位的。

代码:
#include<opencv2\opencv.hpp>

#include<iostream>

#include<math.h>

using namespace cv;

int main(int argc, char** argv)

{

         Mat src;

         src = imread("C:/Users/12897/Desktop/timg.jpg");

         if (!src.data)

         {

                  printf("could not load image...\n");

                  return -1;

         }

         namedWindow("imput image", CV_WINDOW_AUTOSIZE);

         imshow("imput image", src);

waitKey(0);//键盘按任意键关闭

         return 0;

}

运行成功后配置完成。

注:1如果选择编译release下的工程,重复步骤6.1 – 6.7),注意其中涉及到“debug”的项转换为对应的“release”项。

2可使用OpenCV_github代替OpenCV3.4.1,用Contrib_github代替opencv_contrib-3.4.1,配置过程中分别在DebugRelease模式下对install进行build,其他配置步骤相同。这种方式可以更方便的查看源代码。

注: 加库的时候注意区分。所有的库都加进去的时候会出现两个窗口, 一个debug, 一个release

全部的库文件,包含debugrelease版的。

opencv_aruco341.lib

opencv_aruco341d.lib

opencv_bgsegm341.lib

opencv_bgsegm341d.lib

opencv_bioinspired341.lib

opencv_bioinspired341d.lib

opencv_calib3d341.lib

opencv_calib3d341d.lib

opencv_ccalib341.lib

opencv_ccalib341d.lib

opencv_core341.lib

opencv_core341d.lib

opencv_datasets341.lib

opencv_datasets341d.lib

opencv_dnn341.lib

opencv_dnn341d.lib

opencv_dnn_objdetect341.lib

opencv_dnn_objdetect341d.lib

opencv_dpm341.lib

opencv_dpm341d.lib

opencv_face341.lib

opencv_face341d.lib

opencv_features2d341.lib

opencv_features2d341d.lib

opencv_flann341.lib

opencv_flann341d.lib

opencv_fuzzy341.lib

opencv_fuzzy341d.lib

opencv_hfs341.lib

opencv_hfs341d.lib

opencv_highgui341.lib

opencv_highgui341d.lib

opencv_imgcodecs341.lib

opencv_imgcodecs341d.lib

opencv_imgproc341.lib

opencv_imgproc341d.lib

opencv_img_hash341.lib

opencv_img_hash341d.lib

opencv_line_descriptor341.lib

opencv_line_descriptor341d.lib

opencv_ml341.lib

opencv_ml341d.lib

opencv_objdetect341.lib

opencv_objdetect341d.lib

opencv_optflow341.lib

opencv_optflow341d.lib

opencv_phase_unwrapping341.lib

opencv_phase_unwrapping341d.lib

opencv_photo341.lib

opencv_photo341d.lib

opencv_plot341.lib

opencv_plot341d.lib

opencv_reg341.lib

opencv_reg341d.lib

opencv_rgbd341.lib

opencv_rgbd341d.lib

opencv_saliency341.lib

opencv_saliency341d.lib

opencv_shape341.lib

opencv_shape341d.lib

opencv_stereo341.lib

opencv_stereo341d.lib

opencv_stitching341.lib

opencv_stitching341d.lib

opencv_structured_light341.lib

opencv_structured_light341d.lib

opencv_superres341.lib

opencv_superres341d.lib

opencv_surface_matching341.lib

opencv_surface_matching341d.lib

opencv_text341.lib

opencv_text341d.lib

opencv_tracking341.lib

opencv_tracking341d.lib

opencv_video341.lib

opencv_video341d.lib

opencv_videoio341.lib

opencv_videoio341d.lib

opencv_videostab341.lib

opencv_videostab341d.lib

opencv_xfeatures2d341.lib

opencv_xfeatures2d341d.lib

opencv_ximgproc341.lib

opencv_ximgproc341d.lib

opencv_xobjdetect341.lib

opencv_xobjdetect341d.lib

opencv_xphoto341.lib

opencv_xphoto341d.lib


http://chatgpt.dhexx.cn/article/gjEEtAmC.shtml

相关文章

Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 使用cmake .. 有时候会遇到如下问题&#xff1a; $ cmake ..-- The CXX compiler identification is GNU 11.2.0 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for worki…

win10系统msmq服务器,win10使用RabbitMQ实现消息队列

熟悉了 linux 下使用消息队列实现进程异步,转到 win10 下该怎么办? RabbitMQ 简介 可靠性(Reliability):RabbitMQ 使用一些机制来保证可靠性,如持久化、传输确认、发布确认。 灵活的路由(Flexible Routing):在消息进入队列之前,通过 Exchange 来路由消息的。对于典型的路由…

ThinkPHP框架漏洞总结

Thinkphp简介 ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的&#xff0c;是一个快速、兼容而且简单的轻量级国产PHP开发框架&#xff0c;诞生于2006年初&#xff0c;原名FCS&#xff0c;2007年元旦正式更名为ThinkPHP&#xff0c;遵循Apache2开源协议发布&#…

Thinkphp5框架简单理解

说明 该文章来源于同事lu2ker转载至此处&#xff0c;更多文章可参考&#xff1a;https://github.com/lu2ker/ 目录 说明TP5框架简单理解1. 架构总览1.1 控制器/操作1.2 MVC模式流程1.3 类库自动加载1.4 URL访问检测1.5 路由模式1.5.1 普通模式1.5.2 混合模式1.5.4 强制路由 1.…

ThinkPHP框架-2

十、ThinkPHP框架中的模型 模型的作用、处理业务数据、与数据库进行交互。 1、导入数据表 新建tpshop数据库(create database tpshop character set utf8 collate utf8_general_ci) 导入数据表 说明&#xff1a;如果导入sql文件时&#xff0c;有报错&#xff0c;提示类似“…

ThinkPHP框架介绍及应用

一.ThinkPHP介绍 1.1.什么是框架 PHP框架是许多代码的集合&#xff0c;这些代码是程序结构的代码(并不是业务代码)&#xff0c;代码中有许多函数、类、功能类包&#xff0c;框架的代码按照一定标准组成了一个有机的功能体&#xff0c;这个功能体中有许多设计模式如MVC、单例、…

thinkPHP框架学习(速成,一天)

一。TP框架介绍与配置 第一个是最开始沿用的一种结构&#xff0c;它有一个致命的缺点&#xff1a;比如说如果后端程序员在编写的过程中&#xff0c;前端程序就不能做修改&#xff0c;一旦修改了&#xff0c;那么肯定会有冲突。 后来大家进行了改进----把前端脱离出来。 再后来…

【代码审计-PHP】基于Thinkphp框架开发的

前言&#xff1a; 介绍&#xff1a; 博主&#xff1a;网络安全领域狂热爱好者&#xff08;承诺在CSDN永久无偿分享文章&#xff09;。 殊荣&#xff1a;CSDN网络安全领域优质创作者&#xff0c;2022年双十一业务安全保卫战-某厂第一名&#xff0c;某厂特邀数字业务安全研究员&…

thinkphp框架的使用

ThinkPhp知识大全&#xff08;非常详细&#xff09; 转载文章&#xff0c;感觉写的非常好 thinkphp.cn thinkphp 3.2版本 【框架项目部署】 部署一个Shop项目&#xff0c;使用tp框架 步骤&#xff1a; 创建入口文件&#xff1a; 1.在ThinkPHP目录下创建一个入口文件index.…

PHP之ThinkPHP框架

一、框架概述 1、什么是框架 框架就是一些代码类、方法&#xff08;函数&#xff09;、变量、常量的集合&#xff0c;这些代码是功能结构性的代码&#xff08;并非业务代码&#xff09;。业务代码其实就是具体的一些模块的增删改查逻辑代码。 使用框架开发项目&#xff0c;有…

ThinkPHP框架之快速入门

一.创建工程tp&#xff0c;目录结构如下: 在工程下导入thinkphp。 在tp中&#xff0c;可以在任何目录下创建入口文件&#xff0c;也可以把项目初始化到任何目录下. index.php: <?php //定义thindphp的路径 define(THINK_PATH, ./ThinkPHP/); //默认值当前目录下的./Thi…

PHP_thinkPHP框架(1)

能够理解并使用composer PHP一个包管工具 解决源码包 依赖问题 ​ 1.7.3 软件升级 composer self-update 能够安装Thinkphp5.1框架 composer create-project --prefer-dist topthink/think[版本号] 目录名称 ​ 安装之前一定要切换国内源&#xff0c;否则成功的概率很小。 …

使用ThinkPHP框架快速开发网站(多图)

使用ThinkPHP框架快速搭建网站 这一周一直忙于做实验室的网站&#xff0c;基本功能算是完成了。比较有收获的是大概了解了ThinkPHP框架。写一些东西留作纪念吧。如果对于同样是Web方面新手的你有一丝丝帮助&#xff0c;那就更好了挖。 以前用PHP做过一个很蹩脚的网站&#xff0…

ThinkPHP框架完全解析一

第一步&#xff1a;搭建应用和框架目录 文件系统结构如上图所示&#xff0c;新建一个名为tp_an的目录作为我们的应用目录。其中&#xff0c;ThinkPHP这个目录&#xff0c;就是thinkphp框架的目录。所有涉及到框架的开发&#xff0c;都会在ThinkPHP中进行。只是为了方便测试&…

Thinkphp框架初始及安装部署

一、框架概述 1、什么是框架 框架就是一些代码类、方法&#xff08;函数&#xff09;、变量、常量的集合&#xff0c;这些代码是功能结构性的代码&#xff08;并非业务代码&#xff09;。业务代码其实就是具体的一些模块的增删改查逻辑代码。 使用框架开发项目&#xff0c;有…

认识thinkphp框架

https://www.thinkphp.cn/down.html 版本5.0.24 ThinkPHP是一个免费开源的&#xff0c;快速、简单的面向对象的轻量级PHP开发框架 tp5 WEB部署目录&#xff08;或者子目录&#xff09; ├─application 应用目录 │ ├─common 公共模块目录&#xff08;可以更改&#xff09; …

【Java教程系列】IDEA快捷键大全。

自动代码 常用的有fori/sout/psvmTab即可生成循环、System.out、main方法等boilerplate样板代码 。 例如要输入for(User user : users)只需输入user.forTab &#xff1b; 再比如&#xff0c;要输入Date birthday user.getBirthday()只需输入user.getBirthday().varTab即可。…

IDEA快捷键大全(超详细!)

4.1、字体设置 file --> settings --> 输入font --> 设置字体样式以及字号大小。 4.2、快速生成main方法 psvm、main 4.3、快速生成System.out.println() sout 4.4、注意&#xff1a;IDEA是自动保存&#xff0c;不需要ctrl s 4.5、删除一行 ctrl y 4.6、怎…

IDEA的实用快捷键大全

目录 1.常规快捷键 1.1通用类 1.2注释类 1.3操作类 1.4展开与关闭 2.智能补全类快捷键 3.程序结构类快捷键 4.统一操作快捷键 1.常规快捷键 1.1通用类 像 Ctrl C 复制&#xff0c; Ctrl V 粘贴&#xff0c; Ctrl S保存文件&#xff0c; Ctrl X剪切&#xff0c;这种…

IDEA快捷键大全 + 动图演示

目录 一、构建/编译二、文本编辑三、光标操作四、文本选择五、代码折叠六、多个插入符号和范围选择七、辅助编码八、上下文导航九、查找操作十、符号导航十一、代码分析十二、运行和调试十三、代码重构十四、全局 CVS 操作十五、差异查看器十六、工具窗口 一、构建/编译 Ctrl …