关于OpenCV源码的查看&&用CMake编译其他vs版本的opencv

一、openCV源码查看

对于大部分刚刚使用OpenCV的用户而言,只需要用调用OpenCV的函数即可。但有时候我们想要查看OpenCV的源代码,例如查看cv::imread()这个函数,此时只需要鼠标左键go to declaration(查看声明)即可,但我们发现只是进入了一个声明而没有源代码,如下图所示。当我们想要进入它的定义(go to definition)时却什么也不能打开,这又是什么原因呢?这是因为OpenCV将很多函数加入了函数库,被编译成了DLL文件,所以只能看到声明,没有办法看到源代码。

那为什么又说OpenCV是开源软件呢?的确OpenCV是开源软件,有以下几种方式查看OpenCV的源代码:

1)方法一:在自己所安装的文件夹中查看,我这里OpenCV安装的文件夹为:C:\OpenCV-3.2.0\opencv\sources\modules。 就拿上面的cv::imread为例,上图右上方imgcodecs.hpp说明了源代码是在路径C:\OpenCV-3.2.0\opencv\sources\modules下的imgcodecs这个文件夹中的。按照命名的意义我们可以找到是在loadsave.cpp这个文件中:

2)方法二:用CMake导出OpenCV的源码,生成VC++项目,然后用visual Studio打开工程,去这个工程中搜索。在后面《用Cmake生成并且编译其他版本的OpenCV,例如Visual Studio2017版本》可查看。具体可以参看这一篇博客:http://blog.csdn.net/lu597203933/article/details/16116721

 

二、用Cmake生成并且编译其他版本的OpenCV,例如Visual Studio2017版本

1.什么是CMake?

       CMake is an open-source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your chioce.
(大致意思是:CMake 是一个开源,跨平台的工具,用来构建,测试,打包应用软件。CMake 被用作控制软件编译的过程,使用简单平台以及独立的便宜设置文件,来生成你所选择编译环境下的当地“生成文件makefiles”和工作区)

         实现可以参考这篇博客http://blog.csdn.net/u013358387/article/details/50558597;

2.CMake-GUI编译不同VS版本的include,dll,lib

        注意:在cmake-gui中需要勾选BUILD_opencv_world这一个选项。因为opencv_world.dll和opencv_world.lib是在编译时是需要用到的。

         打开opencv.sln,INSTALL生成,对应的x86,x64,Debug,Release需要分开编译,在install文件夹中查找相应的dll,lib,include。

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值