opencv cmake配置 怎么生成64位

用cmake生成的opencv库在c#中怎么引用_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
用cmake生成的opencv库在c#中怎么引用
我有更好的答案
OPENCV不是有现成的DLL库的吗直接当一般的C++的DLL用就行了
采纳率:31%
为您推荐:
其他类似问题
cmake的相关知识
等待您来回答【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译 - CSDN博客
【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译
本系列文章由@浅墨_毛星云 出品,转载请注明出处。&& 文章链接: 作者:毛星云(浅墨)&&&&邮箱:&& 写作当前博文时配套使用的OpenCV版本: 2.4.8&&这篇文章中,我们一起探讨了如何通过已经安装的OpenCV,选择不同的编译器类型,生成高度还原的OpenCV开发时的解决方案工程文件,欣赏OpenCV新版本中总计 六十六多万行的精妙源代码。我们可以对其源代码进行再次编译,得到二进制文件,或者修改原版官方的OpenCV代码,并编译后为自己所用,为深入理解OpenCV的开源魅力迈出了坚实的一步。&&一、下载安装cmake想要在Windows平台下生成OpenCV的解决方案,我们需要一个名为cmake的开源软件,可以在camke的官网:上下载到,首先转到其下载页面。下载页面的Source distributions处可以下载到cmake软件的源码,如果对这款开源软件感兴趣,不妨看看。&而Binary distributions处可以下载到cmake的执行文件,我们只需要下载到其执行文件即可,选择Windows (Win32 Installer)进行下载,点击这里直接下载:&这一步就是下载和安装cmake,下载地址给出了,安装大家都会,就不过多讲。安装完成后,如果没有生成桌面快捷方式,在安装路径下,如D:\Program Files(x86)\CMake 2.8\bin处找到cmake-gui.exe运行。另外,关于cmake的一个简介:CMake,是“crossplatform make”的缩写,它是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台的原生建构系统的能力是CMake 和 SCons 等其他类似系统的区别之处。&&&二、使用cmake生成OpenCV源代码工程的解决方案这一步是全文的核心内容。为了讲解条理清晰,我们分步介绍:&1&运行cmake-gui如果没有生成桌面快捷方式,在安装路径下,如D:\Program Files(x86)\CMake 2.8\bin处找到cmake-gui.exe运行。运行后得到如下的窗口:&2&指定OpenCV的安装路径如下图,点击红色方框内的“Browse Source”按钮,在弹出的对话框中指定出OpenCV安装时源代码的存储路径。以当前最新版本的OpenCV 2.4.8安装在D:\Program Files下为例,则在此选择路径:D:\Program Files\opencv\sources其实我们可以发现,此路径下必须会有一个名为CMakeLists.txt的文件。这个文件就是给cmake留下的配置文件,cmake可以根据这个配置文件,通过不同的编译器选择,来生成不同的解决方案,VisualStudio的编译器对应的就生成Visual Studio版的sln解决方案。&3&指定解决方案的存放路径如下图,点击红色方框内的“Browse Build”按钮,在弹出的对话框中指定我们存放生成的opencv解决方案的路径。比如F:/opencv。&&&&4&第一次Configure如图,第一次点击Configure按钮。会弹出如下进行编译器选择的对话框:首先选定“Use default native compilers”,然后,我们可以发现下拉列表中提供了几十种编译器给我们选择,因为我们安装了Visual Studio,会默认为我们选择好对应版本的Visual Studio编译器,比如Visual Studio 10(即待会儿会生成对应VS2010的sln解决方案)确认无误后,单击“finish”按钮。于是,cmake开始第一次源代码配置过程:在cmake处理的过程中,也许会出现诸如“Could not copy from: D:/Program Files(x86)/CMake 2.8/share/cmake 2.8/Templates/CMakeVSMacros2.vsmacrosto: C:/Users/浅墨/Documents/VisualStudio 2010/Projects/VSMacros80/CMakeMacros/CMakeVSMacros2.vsmacros”的红色字样警告,因为这是系统用户的路径名有中文字符 “浅墨”照成的,因为cmake不认中文路径,但是只要我们在上面的第三步中设置生成的路径中没有中文就行了。就算有这个因为C:/Users/下有中文照成的错误,也对我们这次的生成无碍,不用去管他。&PS:关于系统用户名为中文,这是血的教训。之前在玩Unity3D游戏引擎的时候,被系统路径为中文虐了好一阵子,在unity官方商店下个插件就报错。在控制面板中更改用户名是治标不治本的办法,最后把系统user的Documents目录定位到别的地方才解决。不过这会造成一些在Documents路径下存了数据的软件数据丢失,甚至打不开。。。。。所以,血的教训。。。。浅墨在以后重装系统的时候,绝对不会以中文ID作为用户名了。&看到进度条读到尽头,出现了Configuring done字样,第一次的源码配置就完成了,如图&5&第二次Configure第一次配置完成之后,我们还需要进行第二次配置,于是再次点击“Configure”按钮。这次的配置是很快的,几秒钟就会再次出现“Configuring done”字样,并且红色的选中部分都正常了:&&6&点击Generate,大功告成&这样,就只剩下点一次Generate按钮,来生成最终的解决方案了:&因为之前已经有过两次的configure过程,所以生成解决方案也将是非常的快:&看到Generating done字样,就表示大功告成,可以去之前我们指定的F:\opencv下找寻我们生成的解决方案了。&&PS:2.4.8的OpenCV用cmake生成的工程只有3点多M,相比之前2.4.6版本的OpenCV有3个多G的工程,浅墨一开始都以为生成出错了,但是点开sln工程,发现里面依然可以看到源代码。原来自从2.4.7版本起,opencv源代码就直接包含在了opencv的安装路径下,我们生成的sln工程,也只是连接到了opencv安装路径下的源文件而已,工程本身并不大。&&&三、编译OpenCV源代码&我们怀着忐忑的心态打开刚刚生成的热乎乎的“OpenCV.sln”解决方案,看到一个庞大的工程映入眼帘——这可是一个包含了67个项目的解决方案:&大家这个时候可以在解决方案资源管理界面,随意地点进去一个自己感兴趣的项目,比如opencv_core这个项目,在opencv_core/Src/matrix.cpp查看其中某个文件的源代码,浅墨截的这张图是大家都很熟悉的Mat类型的某个构造函数的源码:一阵对源代码的欣赏之后,我们可以按【F5】或者使用其他各种操作来启动调试编译过程:编译结果:编译用时5分钟左右,具体时间和机器配置关系比较大。通过浅墨的截图可以发现,这次编译成功了62个项目,失败了0,即没有出篓子,全部编译生成成功了。:D另外,编译完成会得到这样的警告:别紧张,这是正常的。因为OpenCV2.4.8的源代码工程默认将“ALL_BUILD”这个项目其设为了启动项,编译成功后,就会默认运行它。而“ALL_BUILD”是一个项目生成周边的杂项,不是exe,本身不可以运行,所以就会弹出这样的提示。&关于启动项的指定,我们可以在解决方案资源管理器里面,对需要设为启动项的那个项目反键点击,在弹出的菜单项中点击【设为启动项(J)】进行设定。如下图:其实我们编译OpenCV,就是得到了一些二进制的生成文件,如DLL和Lib、exe。因为我们是在debug下编译的,所以在工程目录的bin\debug下会生成opencv 2.4.8的依赖库(700多M,有点大),可以供我们以后调用opencv时使用。&四、OpenCV代码行数统计OpenCV到了2.4时代,源代码src部分已经有了170多M,而源代码行数,通过浅墨的统计,是68多万行。(这里浅墨不禁有些感慨,前两天刚在捣鼓的Unreal Engine 4的源码是144多万行,是OpenCV的两倍多。。。。)&可以看到,准确的OpenCV 2.4.8的源代码,有687,870行。OK,盛宴开始,计算机视觉领域的大宝库——OpenCV的源码近眼前,不虚此生地欣赏它吧。&嗯,本节的内容大概就是这些,我们下篇文章见:)
本文已收录于以下专栏:
相关文章推荐
有的时候直接调用opencv的函数并不能满足我们的要求,如果想修改opencv中的函数该怎么做呢?
第一步:首先要用cmake编译一下opencv
具体步骤我就不说了参考博文 http://blo...
上篇文章中我们讲到了使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像混合操作。
而为了更好的观察一些图像材料的特征,有时需要对R...
本系列文章由@浅墨_毛星云 出品,转载请注明出处。   文章链接: http://blog.csdn.net/poem_qianmo/article/details/ 作者:毛星云(浅...
在近日举行的GDC2014大会上,除了DirectX12的曝光,游戏业界两款顶级的游戏引擎——Unreal Engine 4(UE4,虚幻引擎4)和CryEngine3(CE3),先后宣布了白菜价位的...
一、起因最近在玩Boost库。当然首先是要进行Booist库的安装和配置。于是浅墨Google了一下boost库的安装配置攻略,下载了最新版1.55的boost库,就愉悦地开始进行配置了。当进行到第五...
别以为是那些软件开发定律,别以为是开发出那些特殊用途的软件,别以为是软件设计技术本身。只有一条真理决定了一个软件程序员的成功还是失败。由于坚持这个真理,一个资深的程序员能在一天的时间里学会一门新的编程...
本篇文章中,我们将一起学习OpenCV中边缘检测的各种算子和滤波器——Canny算子,Sobel算子,Laplace算子以及Scharr滤波器。文章中包含了五个浅墨为大家准备的详细注释的博文配套源代码...
本篇文章中,我们一起探讨了OpenCV填充算法中漫水填充算法相关的知识点,以及了解了OpenCV中实现漫水填充算法的两个版本的floodFill函数的使用方法,此博文一共有两个个配套的示例程序,其详细...
这篇文章中我们一起学习了如何在OpenCV中用createTrackbar函数创建和使用轨迹条,以及图像对比度、亮度值的动态调整。
文章首先详细讲解了OpenCV2.0中的新版创建轨迹条的函数crea...
本篇文章中,我们一起探讨了OpenCV中Harris角点检测相关的知识点,学习了OpenCV中实现Harris角点检测的cornerHarris函数的使用方法。此博文一共有两个配套的麻雀虽小但五脏俱全...
他的最新文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)【转】opencv&+&cmake&+&vs2010&配置过程
转自:/emouse/archive//2878533.html
研究生课题做嵌入式图像处理方向,所以主要涉及的知识就是嵌入式Linux+OpenCV+QT,主要OpenCV和QT都是跨平台的,而且充分利用好的话再后期的算法设计和功能扩展上就方便很多。只是之前多数做的是硬件方向设计和偏单片机类型的处理器,嵌入式Linux没有太多的基础,图像处理方面基本上是空白,QT也从没有接触过,完成这个任务需要学习的东西还很多啊。目前只是大致确定了一个方向,很多地方还很迷茫,欢迎有兴趣的朋友指点、交流。
既然学习OpenCV,虽说我是想在嵌入式平台上使用,但是还是需要在win平台上先学习,有些算法验证上也方便些。因此本文首先是关于Windows平台下的OpenCV安装与使用。
软件平台:
Windows 7 X86, Visual Studio 2010, OpenCV2.4.3 ,Cmake 2.8
部分软件下载地址:
从以上提供的网站下载对应版本和平台的软件。
本文的主要参考:
学习OpenCV那么中文官方网站的资料应该是比较权威和全面的,因此本文只是对参考文章的补充和实践。
OpenCV的下载与安装
下载Windows下的安装文件OpenCV-2.4.3.exe,双击解压,选择需要的安装目录即可。我的存放路径为D:\opencv。
解压完成后就是需要的文件了。注意相应的目录不能包含中文。
编译OpenCV
这一步不是必须的,如果不编译,可以使用编译好的库,但是不能进行源代码的跟踪调试(未验证),因此这里还是编译一下。
编译用的工具Cmake,这是一个跨平台的安装编译工具,主要用于把OpenCV的源码生成对应的VS工程。操作如下。
1、如图所示,设置OpenCV的安装文件路径和想要生成的文件路径;
2、点击左下方configure,在弹出的选项中选择Visual Studio 10(对应2010版本);
3、点击完成就会进行配置,配置后的界面如下图所示,选择需要加入的文件,我这里勾上BUILD_EXAMPLES其他选项默认;
4、修改完成后再次点击configure进行配置,完成后点击Generate,至此完成配置。
使用VS2010编译版本库
以上操作完成后,就可以在生成的目录下找到对应的工程文件,根据上图配置我的文件路径为D:\OpenCV24\OpenCV.sln,使用VS2010打开,进行如下操作。
1、在Debug下,选择解决方案(解决方案资源管理器)里的 解决方案“OpenCV”,点右键,运行"重新生成解决方案";
2、生成成功后,在选择INSTALL项目,右键运行生成;
3、在Release下进行1-2步的操作;
4、以上操作完成后,针对当前的系统的OpenCV库就生成了。
VS的相关配置
也即告诉VC去什么地方寻找OpenCV的头文件和库,打开VC,选择菜单“工具”-&“选项”-&“项目和解决方案”-&“VC++目录”-&“包含文件”,在VS2010中此选项打开如下图所示,显示编辑功能被否决。
可以在具体的项目中右键-&属性来设置,只是这样的设置无法被继承,每一个项目都需要单独设置,因此需要丛一个能够被继承的全局设置,方法如下:
1、在VS中确保至少有一个工程被打开的情况下,点击“视图”-&“其他窗口”-&“属性管理器”,然后从左侧任意项目中打开“Debug|
Win32”-&“Microsoft.Cpp.Win32.user”,如下图所示。
2、在弹出如下图所示的窗口中,添加文件包含与库的路径。点击左侧VC++目录,编辑右侧的包含目录与库目录,分别添加对应的路径。
对应的路径如下:
使用提供的库需要添加(对应我自己的安装目录,路径根据个人安装修改)
D:\opencv\build\include
D:\opencv\build\include\opencv
D:\opencv\build\include\opencv2
如果使用的是上文编译的库的路径,则添加(对应我自己的目录,路径根据个人安装修改)
D:\OpenCV24\install\include
D:\OpenCV24\install\include\opencv
D:\OpenCV24\install\include\opencv2
64为系统对应更改。
在OpenCV的安装文件中已经为VC预先编译好了动态库与静态库,因此可以不需要编译直接添加。
针对VS2010添加(对应我自己的目录,路径根据个人安装修改)
D:\opencv\build\x86\vc10\lib
添加上文编译的库则添加(对应我自己的目录,路径根据个人安装修改)
D:\OpenCV24\install\lib
注:有的资料中说法如下:
(注:由于自己编译成功,lib文件在Debug和Release两个文件中,加载库时需到Debug和Release中,
我配置的库目录为:D:\Program Files\OpenCV2.3.1\opencv\build\my\install\lib\Debug,否则调试时无法进入Open CV代码中。 by:Jackyzzy 赵振阳)
但是我的目录下并没有对应的文件夹,反而在D:\OpenCV24\lib目录下有对应的Debug文件夹,文件经过对比也一致,因此这个地方究竟添加什么地方的目前还没有验证,已经验证的同学欢迎告知我。
到这里,配置完毕,任意打开一个项目通过属性来查看,可以看到以上配置已经被继承。
设置环境变量
刚才设置的是动态库,因此还需要将OpenCV的dll文件所在的目录加入Path环境变量。dll文件目录如下:
自己编译的库
D:\OpenCV24\install\bin
使用提供的库(VS2010)
D:\opencv\build\x86\vc10\bin
有的资料中说由于有些函数需要使用TBB,因此需要把TBB相关也添加环境变量,但是我并没有在opencv\build\common\tbb这个路径中找到TBB文件件,在2.4.3版本中经过查找此文件夹存在与opencv\build\common\tbb
路径下,因此这部分同样未验证。
至此,就完成了OpenCV的安装与配置。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。win10X64 + vs2015通过Cmake编译Opencv - CSDN博客
win10X64 + vs2015通过Cmake编译Opencv
写在前面的话:
为什么需要使用Cmake编译安装?在我目前的印象中主要有两个原因:一是能够看Opencv的源代码;而是能够生成能在没有Opencv环境的电脑系统下运行的可执行文件。同时建议大家先看看第七点,也就是我在编译安装过程中遇到过什么错误,是什么原因造成的之后再开始编译安装,这样能避免重复我的错误
1.安装vs2015
我的VS2015是中文专业版,修改了路径,直接默认安装;之后在网上找了一个秘钥解除30天的试用期的限制。
2.解压OpenCV3.1.0
直接运行.exe文件即可,将解压的文件夹放在自己想要的目录中。解压结果是一个名为opencv的文件夹,内容如下:
3.安装Cmake
到下载Cmake文件,下载cmake-3.6.1-win64-x64.msi安装(版本不对会出错,详情见后文,这里截图都是用我最开始错误版本的截图)。
4.Cmake编译Opencv
运行cmake软件,制定source code路径为OpenCV解压所得的sources文件夹路径,在选定生成路径,如下图:
点击configure,选定编译器为Visual Studio 14 2015,点击finish。
如果没有错误的话,会出现configure done,忘了截图
手动勾选两项内容:
BUILD_EXAMPLES
BUILD_opencv_world
再次点击Configure,又会出现configure done,结果如下:
再点击generate,生产sln工程
5.打开OpenCV.sln工程
打开生产的sln工程,如下图:
点击生产-&批生成,选择如下:
注意:不要勾选ALL_BUILD对应的两项,这是我首次尝试的时候勾选的,失败了。成功的那次没有勾选
结果如下:
1.设置环境变量
右击 我的电脑-&属性-&高级系统设置-&环境变量-&系统变量-&编辑Path-&新建, 添加路径:D:\OpenCV3.1.0\opencv\cbuild\install\x64\vc14\bin
2.配置vs2015
新建一个控制台应用程序,勾选空项目。(用vs新建工程默认不截图了。。。)
在 属性管理器-&Debug | x64-&Microsoft.Cpp.x64.user 上 右键-&属性 打开属性页
C/C++–& 常规 –& 附加包目录,添加
链接器—&附加库目录
链接器—&输入
注意带d和不带d的顺序,应该会有影响
在该工程的cpp文件中添加如下代码
#include &opencv2\opencv.hpp&
using namespace
int main(int argc, char** argv)
Mat img = imread("test.jpg");
imshow("img", img);
waitKey(0);
相应路径下有名为test.jpg的图片
运行(有可能需要重启)
结果如下:
8.错误总结
错误一:vs2015模块不全
如果vs安装有问题,就会出现如下错误:
Error in configuration process, project files may be invalid.
No CMAKE_CXX_COMPILER could be found.
错误提示为没有找到相应的编译器,这是由于vs2015相应模块没有安装的问题,点击新建项目,在已安装模块的Visual C++下吧相应的模块安装完毕就能解决这个错误
错误二:缺少一些文件
再次出现如下错误:
这是由于cmake时需要下载opencv_ffmpeg_64.dll,opencv_ffmpeg.dll以及ippicv_windows_.zip,但是自动下载会出错。所以需要先下好,放到相应的位置。文件下载在,里面有使用方法
错误三:camke版本问题
我最开始下载的目前最新的版本cmake-3.7.0-rc3-win64-x64.msi。Cmake能够通过,但是打开Opencv.sln之后批生成是无法成功的,错误如下
本文已收录于以下专栏:
相关文章推荐
这篇文章中,我们一起探讨了如何通过已经安装的OpenCV,选择不同的编译器类型,生成高度还原的OpenCV开发时的解决方案工程文件,欣赏OpenCV新版本中总计 六十六多万行的精妙源代码。我们可以对其...
这一篇则主要分析一下2个内容:
1. OpenCV中的Adaboost级联分类器的结构,包括强分类器和弱分类器的形式;
2. OpenCV自带的XML分类器中各项参数的含义,如internalNode...
Opencv又出新版本。老样子,写个配置过程吧
下载OpenCV3.1:http://opencv.org/
下载CMake3.4.1:https://cmake.org/down...
本节主要介绍AdaBoost,以及AdaBoost中的DAB与GAB算法。
1》cmake可以到官网http://www.cmake.org去下载,安装一切按默认设置,一路点击“下一步”即可。
2》打开Cmake工具,如下图所示:
3》点击“Where is the...
caffe是好用,可是配置其环境实在是太痛苦了,依赖的库很多不说,在VS上编译还各种报错,你能想象那种被一百多个红色提示所笼罩的恐惧。
且网上很多教程是VS2013环境下编译的,问人很多也说让我把1...
前一篇文章分析了Haar特征,即通过“平移+放大”能够产生一系列数量巨大的Haar子特征,同时给出了Haar特征值计算公式。那么这就有一个问题:如何快速的计算出图像任意位置的某个Haar特征值?这就需...
官网(opencv.org)目前提供的安装包只提供了vs2015(vc14)的编译版本。所以,若想在其他编译环境(如vs2010、vs2012、vs2013等)下使用,需要下载opencv3.2.0的...
准备文件:
python2.7.12,下载链接https://www.python.org/downloads/
pip8.1.1,下载链接https://pypi.python.org/packag...
在上一篇文章中,我曾提到:级联分类器通过移动检测窗口寻找图像中不同位置的目标,同时通过放大检测窗口寻找图像中大小不同的目标,最终寻找到图像中不同位置、不同的大小的所有目标。那么必然存在这样的情况:一个...
他的最新文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 cmake编译opencv 的文章

 

随机推荐