opencv 订阅
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 [1]  它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令, 如今也提供对于C#、Ch、Ruby,GO的支持。 [2] 展开全文
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 [1]  它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令, 如今也提供对于C#、Ch、Ruby,GO的支持。 [2]
信息
开发商
OpenCV
软件授权
Intel、Willow Garage、NVIDIA等 [3]
软件名称
OpenCV
更新时间
2020-04-06
软件版本
OpenCV–4.3.0 [2]
软件平台
Linux、Windows、Android、Mac OS等
软件语言
C++
软件大小
1.16GB
opencv历史发展
OpenCV 拥有包括 500 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库——尽管也可以使用某些外部库。OpenCV 为Intel® Integrated Performance Primitives(IPP)提供了透明接口。这意味着如果有为特定处理器优化的 IPP 库,OpenCV 将在运行时自动加载这些库。 [4]  (注:OpenCV 2.0版的代码已显著优化,无需IPP来提升性能,故2.0版不再提供IPP接口) [5]  最新版本是3.4 ,2017年12月23日发布 [6]  。1999年1月,CVL项目启动。主要目标是人机界面,能被UI调用的实时计算机视觉库,为Intel处理器做了特定优化。2000年6月,第一个开源版本OpenCV alpha 3发布。2000年12月,针对linux平台的OpenCV beta 1发布。2006年,支持Mac OS的OpenCV 1.0发布。2009年9月,OpenCV 1.2(beta2.0)发布。2009年10月1日,Version 2.0发布。2010年12月6日,OpenCV 2.2发布。2011年8月,OpenCV 2.3发布。2012年4月2日,发布OpenCV 2.4。2014年8月21日,发布OpenCv 3.0 alpha。2014年11月11日,发布OpenCV 3.0 beta。2015年6月4日,发布OpenCV 3.0。2016年12月,发布OpenCV 3.2版(合并969个修补程序,关闭478个问题)2017年8月3日,发布OpenCV 3.3版(最重要的更新是把DNN模块从contrib里面提到主仓库)OpenCV 使用类BSDlicense,所以对非商业应用和商业应用都是免费(FREE)的。(细节参考 license)OpenCV提供的视觉处理算法非常丰富,并且它部分以C语言编写,加上其开源的特性,处理得当,不需要添加新的外部支持也可以完整的编译链接生成执行程序,所以很多人用它来做算法的移植,OpenCV的代码经过适当改写可以正常的运行在DSP系统和ARM嵌入式系统中,这种移植在大学中经常作为相关专业本科生毕业设计或者研究生课题的选题。
收起全文
精华内容
参与话题
问答
  •   文章链接: http://blog.csdn.net/poem_qianmo/article/details/19809337 作者:毛星云(浅墨) 邮箱: happylifemxy@163.com  写作当前博文时配套使用OpenCV版本:2.4.8因为读研期间的研究方向是图像处理,...


    本系列文章由@浅墨_毛星云 出品,转载请注明出处。  

    文章链接: http://blog.csdn.net/poem_qianmo/article/details/19809337

    作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442

    邮箱: happylifemxy@163.com

    知乎:http://www.zhihu.com/people/mao-xing-yun

    写作当前博文时配套使用的OpenCV版本: 2.4.8、2.4.9、3.0

    2014年4月28更新OpenCV 2.4.9的配置。

    2014年9月12更新OpenCV 3.0的配置

    2014年9月12日本文第6次修订完毕)


    OpenCV2.4.9和2.4.8的配置几乎一样,唯一的区别在下文中的第五步,链接库的配置,把对应的248改成249即可。

    OpenCV 3.0配置更是被简化了。和2.4.8、2.4.9的区别就是下文第五步,链接库的配置,只用添加

    opencv_ts300d.lib、opencv_world300d.lib(debug版本的库)

    或opencv_ts300.lib、opencv_world300.lib(release版本的库)即可。


    ----------------------------浅墨于2014年9月12日注



    因为读研期间的研究方向是图像处理,所以浅墨这段时间闭门研究了很多OpenCV和图像处理相关的知识与内容。眼看自己积累到一定的程度了,于是决定开始开设这个OpenCV系列专栏,总结自己所学,也分享知识给大家。

    好了,这篇文章作为OpenCV的启程篇,自然少不了先系统地介绍OpenCV开发环境的配置。
    浅墨前后经历过OpenCV 2.4.6,OpenCV 2.4.7,OpenCV 2.4.8这三个版本的配置,有时候还要涉及到三个版本之间的转换,所以还是对OpenCV的配置有一定的理解的,希望自己的一点拙见能帮到大家。

    还是先放出待会儿的测试用图(如果要另存为这张图并配合文章后面给出的代码进行测试,注意后缀名要为jpg,而不是jpeg或其他):



    那么,开始吧。


    1.下载和安装OpenCV SDK



    VS2010不用说,肯定都安装了吧。来说说当前最新的OpenCV版本2.4.8(2014年2月24日),2.4.9 (2014年4月)的下载和安装。与其说是安装,不如叫解压更加合适,因为我们下载的exe安装文件就是一个自解压程序而已。

    在官网:http://opencv.org/上找到OpenCV windows版下载下来。

    下载完后得到文件OpenCV 2.4.X,双击后会提示解压到某个地方,推荐放到D:\Program Files\下,比如D:\Program Files,(因为OpenCV项目文件打包的时候,根目录就是opencv,所以我们不需要额外的新建一个名为opencv的文件夹,然后再解压,那是多此一举的事情)然后点击Extract按钮。

    等一段时间,OpenCV2.4.8近3个多G的文件就解压到了D:\Program Files下。


     其中,build里面是使用OpenCV相关的文件,我们如果只是使用OpenCV的话呢,就只用管build里面的内容。下面的sources文件夹你嫌烦,你嫌占硬盘空间,完全可以删掉。但是需要注意的是,官方示例集,也就是samples文件夹里面的示例程序,在sources文件夹里面躺着呢,所以,如果真是要删的话,还是想清楚哦。

    sources里面是源代码。可以直接查看。如何生成sln解决方案浅墨在这篇博文中有详细讲到:

     【OpenCV入门教程之七】 玩转OpenCV源代码:生成OpenCV工程解决方案与OpenCV源码编译



    2.配置环境变量


      

     

    这步的配置方法如下:

    【计算机】->【(右键)属性】->【高级系统设置】->【高级(标签)】->【环境变量】->“双击”系统变量中的PATH->在变量值里面添加相应的路径。如图:

    <1>


    <2>


    <3>


    <4>


    <5>



    对于32位系统,就添加:

    ”;…… opencv\build\x86\vc10\bin”(和之前的就有有的环境变量用英文的分号“;”进行分隔)

     

    而对于64位系统,可以两个都添加上:

    ”;…… opencv\build\x86\vc10\bin”

    和”…… opencv\build\x64\vc10\bin”,

    这样,到时候才可以在编译器Win32和X64中来回切换都吃得开,游刃有余~


    例如,浅墨的就是

    D:\Program Files\opencv\build\x64\vc10\bin;D:\Program Files\opencv\build\x86\vc10\bin


     PS:有童鞋亲测说64位系统也只需添加”…… opencv\build\x86\vc10\bin”即可,大家不妨一试。


    注:变量值实际为bin文件夹的路径;D表示OpenCV安装于D盘;X64表示运行系统环境位64位系统,若安装于32位系统,应为X86;vc10表示编译环境为Microsoft Visual Studio 2010;变量添加完成后最好注销系统,才会生效。

     


     



    3.工程包含(include)目录的配置



    之前看过的好多博文都说“每次新建工程都要重新配置”,其实不用这样麻烦的。

    首先是在Visual Studio里面新建一个控制台应用程序,最好是勾好空项目那个勾。

    (考虑到看这篇博文的童鞋很少接触vs,那么浅墨在这里将过程详细截图出来——浅墨2014年6月11日注)

    <1>打开visual studio,新建win32控制台项目,取个名字,比如叫test1,然后选好路径,点确定.


    <2>点一次“下一步”。


    <3>勾上空项目那个勾。


    <4>接着在解决方案资源管理器的【源文件】处右击->添加->新建项,准备在工程中新建一个cpp源文件。



    <5>选定C++源文件,取个名字,比如叫“main”,然后点【添加】,那么,一个新的cpp文件就添加到了工程中。

    <6>看过浅墨之前DirectX配置的相关博文的朋友们应该都知道,有一招叫属性管理器。在属性管理器中进行一次配置,就相当于进行了通用的配置过程,以后新建的工程就不用再额外的进行重新配置了。

    在菜单栏里面点<视图>--<属性管理器>,那么就会在visual studio中多出一个属性管理器工作区来。



    <7>在新出现的“属性管理器”工作区中,点击项目->Debug|Win32->Microsoft.Cpp.Win32.userDirectories(右键属性,或者双击)即可打开属性页面。

     



    <8>打开属性页面后,就是一番配置了。首先是在

    【通用属性】 ->【VC++目录】 ->【包含目录】中


    添加上

    D:\Program Files\opencv\build\include

    D:\Program Files\opencv\build\include\opencv

    D:\Program Files\opencv\build\include\opencv2 这三个目录。


    当然,这是之前把OpenCV解压到D:\Program Files\下的情况。实际的路径还要看你自己把OpenCV解压到了哪个目录下,根据你的实际情况来调节。







    4.工程库(lib)目录的配置



    其实这步和上一步差不多,属性管理器”工作区中,点击项目->Debug|Win32->Microsoft.Cpp.Win32.userDirectories(反键属性,或者双击)打开属性页面。

    接着上步,就是在【通用属性】 ->【VC++目录】 ->【库目录】中,


    添加上D:\Program Files\opencv\build\x86\vc10\lib这个路径。(最好不要复制粘贴浅墨给出的路径,而是自己去预览里面指定出来,这样会准确得多)


    (感谢小如风童鞋,之前给出的路径D:\Program Files\opencv\build\x86\vc10\lib里少个空格,直接复制浅墨给出的上面路径的童鞋就会出现“无法打开错误 1 error LNK1104: 无法打开文件“opencv_calib3d248.lib”类似的错误”,现已更正)

    ——————浅墨于2014年4月3日


    这里选择x86还是x64是一个常常令人困惑的问题。当然,对于32位操作系统,铁定就是选x86了。

    如果是64位操作系统,很多童鞋会想当然自作聪明地选择x64,其实不然。正确的理解是这样的:


    不管你是32位还是64位操作系统,只用管你用win32编译器还是X64编译器。

    其实配置选择什么跟64位还是32位系统没有直接的关系,而是在于你在编译你的程序的时候是使用那个编译器。


    编译器选的是win32,就用x86

    编译器选的是X64,就用X64。不过一般情况下,都是用的win32的X86编译器。所以,无论32还是64位操作系统,配置文件最好都选择x86版的


    另外,这里的vc10表示vs2010,如果是其他版本的visual studio,稍微要微调一下。

    感谢JJBomb 童鞋,这里我们补充完整:vc8 = Visual Studio 2005,vc9 = Visual Studio 2008,vc10 = Visual Studio 2010,vc11 = Visual Studio 2012,vc12 = Visual Studio 2013。

     




    5.链接库的配置


     

    依然是“属性管理器”工作区中,点击项目->Debug|Win32->Microsoft.Cpp.Win32.userDirectories(反键属性,或者双击)即可打开属性页面。【通用属性】 ->【链接器】->【输入】->【附加的依赖项】


    对于OpenCV2.4.8】,添加如下248版本的lib(这样的lib顺序是:19个带d的debug版的lib写在前面,19个不带d的release版的lib写在后面)


    opencv_ml248d.lib
    opencv_calib3d248d.lib
    opencv_contrib248d.lib
    opencv_core248d.lib
    opencv_features2d248d.lib
    opencv_flann248d.lib
    opencv_gpu248d.lib
    opencv_highgui248d.lib
    opencv_imgproc248d.lib
    opencv_legacy248d.lib
    opencv_objdetect248d.lib
    opencv_ts248d.lib
    opencv_video248d.lib
    opencv_nonfree248d.lib
    opencv_ocl248d.lib
    opencv_photo248d.lib
    opencv_stitching248d.lib
    opencv_superres248d.lib
    opencv_videostab248d.lib

    opencv_objdetect248.lib
    opencv_ts248.lib
    opencv_video248.lib
    opencv_nonfree248.lib
    opencv_ocl248.lib
    opencv_photo248.lib
    opencv_stitching248.lib
    opencv_superres248.lib
    opencv_videostab248.lib
    opencv_calib3d248.lib
    opencv_contrib248.lib
    opencv_core248.lib
    opencv_features2d248.lib
    opencv_flann248.lib
    opencv_gpu248.lib
    opencv_highgui248.lib
    opencv_imgproc248.lib
    opencv_legacy248.lib

    opencv_ml248.lib


    对于【OpenCV2.4.9】,添加如下249版本的lib(这样的lib顺序是:19个带d的debug版的lib写在前面,19个不带d的release版的lib写在后面)


    opencv_ml249d.lib
    opencv_calib3d249d.lib
    opencv_contrib249d.lib
    opencv_core249d.lib
    opencv_features2d249d.lib
    opencv_flann249d.lib
    opencv_gpu249d.lib
    opencv_highgui249d.lib
    opencv_imgproc249d.lib
    opencv_legacy249d.lib
    opencv_objdetect249d.lib
    opencv_ts249d.lib
    opencv_video249d.lib
    opencv_nonfree249d.lib
    opencv_ocl249d.lib
    opencv_photo249d.lib
    opencv_stitching249d.lib
    opencv_superres249d.lib
    opencv_videostab249d.lib

    opencv_objdetect249.lib
    opencv_ts249.lib
    opencv_video249.lib
    opencv_nonfree249.lib
    opencv_ocl249.lib
    opencv_photo249.lib
    opencv_stitching249.lib
    opencv_superres249.lib
    opencv_videostab249.lib
    opencv_calib3d249.lib
    opencv_contrib249.lib
    opencv_core249.lib
    opencv_features2d249.lib
    opencv_flann249.lib
    opencv_gpu249.lib
    opencv_highgui249.lib
    opencv_imgproc249.lib
    opencv_legacy249.lib
    opencv_ml249.lib


     


    需要注意的是,所粘贴内容即为之前我们解压的OpencV目录D:\opencv\build\x86\vc10\lib下所有lib库文件的名字;其中的248代表我们的OpenCV版本为2.4.8,若是其他版本的配置则在这里要进行相应的更改,比如说2.4.6版的OpenCV,那么这里的opencv_calib3d248d.lib就要改成opencv_calib3d246d.lib了.

    Debug文件库名有d结尾,Release没有,如 opencv_ts248d.lib(debug版本的lib)和opencv_ts248.lib(release版本的lib)

    不过我一般是在这里把带d和不带d的统统写在这里,因为这里是以后创建所有工程时都会继承的公共属性。


    对于【OpenCV 3.0】添加3.0版本的lib,新版的lib非常简单。想用debug版本的库,添加

    opencv_ts300d.lib

    opencv_world300d.lib 这两个库即可。

    而想用release版本的库,添加

    opencv_ts300.lib

    opencv_world300.lib即可。


    其实,对已经发行和未来即将发布的新版OpenCV,只需看opencv\build\x86\vc10\lib下的库是哪几个,添加成依赖项就可以了。




    另外注意按照如上的这种方式来配置,也许会出现debug下可以运行但是release下不能运行的情况(因为字符串读取问题引起的诸如图片载入不了,报指针越界,内存错误等等),这算是OpenCV自2.4.1以来的一个bug。

    解决方案:想在release模式下运行出程序结果,在工程的release模式下,将不带d的lib(全部是19个)添加到【项目】->【属性】(注意这样打开的是当前工程的属性页,我们只需在这里将release版(即不带d)的相关lib添加进去)->【配置属性】->【链接器】->【输入】->【附加的依赖项】下即可。


    ——————浅墨 2014年3月17日注&2014年6月11日更新

    类似错误如图:


     

     



    6.在Windows文件夹下加入OpenCV动态链接库



    PS:经过 hellofuturecyj 同学提醒,如果配置环境变量那步配置准确,且配置之后经过重启,就没有进行这步配置的必要了。即做完上面第五步的配置,重启一次,就可以直接跳到第七步,进行测试,看出不出图。

    当然,如果需不重启而马上来看配置的结果,就可以试试这里的方式。

    ——————浅墨 2014年6月16日注


    这一步是各种介绍OpenCV的配置的相关博文中都没写出来的。根据这些博文配置出来的环境,在运行基于OpenCV的程序的时候,往往会得到这样类似的结果:

     

    这种问题最简单粗暴的方法,是把相关的dll都拷贝到Windows操作系统的目录下。如果你的Windows安装在C盘,那么路径就是c:\Windows\System32。按照之前我的OpenCV的存放环境,这些dll存放在

    D:\Program Files\opencv\build\x86\vc10\bin目录下。


    到这个目录下,【Alt+A】全选,【Alt+C】拷贝,然后转到c:\Windows\System32下面,【Alt+V】复制,简单粗暴地就完成了。

    PS:对于Windows 8,则要放在要在SysWOW64文件夹中。

     

     

    恩,环境配置大功告成,我们来测试一下成果吧~





    7.最终的测试


     

    就用载入并显示一张图片到窗口的程序,用于我们的配置测试吧。

    新建一个空项目的控制台应用程序,新建一个cpp文件,然后粘贴如下代码:

    #include<iostream>
    #include <opencv2/core/core.hpp>
    #include <opencv2/highgui/highgui.hpp>
    
    
    using namespace cv;
    
    
    int main()
    {
    	// 读入一张图片(游戏原画)
    	Mat img=imread("pic.jpg");
    	// 创建一个名为 "游戏原画"窗口
    	namedWindow("游戏原画");
    	// 在窗口中显示游戏原画
    	imshow("游戏原画",img);
    	// 等待6000 ms后窗口自动关闭
    	waitKey(6000);
    }


    放置一张名为pic.jpg的图片到工程目录中,然后点击“运行“按钮,如果配置成功,就不会报错,得到预想的运行结果:



    为了大家的考虑,还是把工程文件发一下吧,虽然这次只有简单的几句代码:


    OpenCV+VS2010开发环境配置 测试用例 by浅墨】下载

     



    7.可能遇到的问题和解决方案


     

    呼,生活不可能是一帆风顺的,我们的配置过程也是。浅墨在几次的配置过程中,出现了如下的几种典型问题,我相信你可能会出现,就在这里集中列举一下吧,希望能为大家解惑:


    1. 找不到core.h

    出现这个问题是因为include的时候粗心大意了。

    如果你的版本是2.4.6。在这个版本下,opencv根文件夹下面就有个include,但我们配置的时候如果包含的是他就坑爹了。

    正确的应该填build里面的那个include。

     

    2.无法解析的外部命令

    这个问题其实上面有过解释了,不管你是32位还是64位操作系统,只用管你用win32编译器还是X64 编译器。

    其实配置选择什么跟64位还是32位系统没有直接的关系,而是在于你在编译你的程序的时候是使用那个编译器。

    编译器是win32,就用x86

    编译器是X64,就用X64。不过一般情况下,都是用的win32的X86编译器。所以,

    无论32还是 64位操作系统,配置文件最好都选择x86版的。

     

    3.关于形如--error LNK2005:xxx 已经在 msvcrtd.lib ( MSVCR90D.dll ) 中定义

    出现这个问题,把静态库不包含就行了。

     

    4. 应用程序无法正常启动0xc000007b

    Lib包含的问题。也许你同时包含了X86和X64的,或者包含出错错了。或者是对于windows 8 64位,dll要放在和System32文件夹同级的SysWOW64文件夹中。


    5.明明图片路径是对的,却载入不进去图片,提示指针越界,有未经处理的异常

    类似错误如图:



    这算是opencv的一个bug,工程属性里面关于带d和不带d的lib文件的附加依赖项的问题,就算配置好了每次想debug和release下都运行还得手动在工程属性里面加。当得到这样的错误时,可以把调试方式改一改,debug和release互换:


    或者打开当前工程(注意是当前工程的属性页,不是通用属性页)的属性页,debug或者release哪个报错,就把对应的带d或不带d的lib添加到【“当前”工程属性】->【链接器】->【输入】->【附加的依赖项】下即可。


    关于问题五的另一种错法:图片后缀问题

    昨天晚上一个学弟和大家一样在参考这篇文章配置OpenCV环境,弄了一下午一直报这个错误。最后浅墨给他看了下,发现是图片后缀的问题,在这里更新一下,以免有童鞋是因为这个问题而一直得不出结果。确保你载入的图片是和代码中imread的路径、名称、后缀是一模一样的。例如,学弟遇到的问题就是,在xp系统下面,没有显示后缀名,下了浅墨在文章末尾给出的配置参考示例程序,估计是xp系统默认会把jpg当做jpeg对待,然后他在代码中imread的是“1.jpg”,硬是报错。我给他看的时候,在文件夹选项中调出文件后缀名,发现在win7下面给大家准备的名为“1.jpg”的文件,在xp下面变成了“1.jpeg”。然后浅墨将学弟代码中的“1.jpg”改成“1.jpeg”,立马出结果。或许这就是一部分朋友们调不出结果的另一种原因吧。

    -----------------------浅墨于2014年9月20日补充




    6.无法打开文件“opencv_ml249d.lib”系列的错误


    关于LINK : fatal error LNK1104: 无法打开文件“opencv_ml249d.lib”,在评论区和大家给浅墨发的邮件中是普遍的一个错误。


    PS: jzh258fits 同学提出的一个新的解决方法是:项目->属性管理器->Debug|Win32->Microsoft.Cpp.Win32.userDirectories中的属性页面->连接器->常规里面的附加库目录中加入相应的lib文件目录。

    这个错误主要是因为包含的库目录中,和包含的附加依赖项不能相互对应照成的。

    也许是“opencv_ml249d.lib“多加了一个空格,成了”opencv_ml249d. lib“,就会报错。
    遇到这个问题,检查三个方面:

    1.检查第四步”4.工程库(lib)目录的配置“库目录中的路径是否准确。
    2.检查第五步”5.链接库的配置“中附加依赖项”的格式有没有问题,有没有多空格,版本号248,249什么的有没有问题,有没有多一个空格,少一个点什么的。
    3.第二步环境变量的配置是否准确。


    ——————————浅墨2014年4月28日更新




    好了,OpenCV的配置大概就是这些。

    下篇文章见 :)

     

     

    展开全文
  • opencv2/opencv.hpp>头文件定义类似如下: # include <opencv2/opencv.hpp> # ifndef_OPENCV_ALL_HPP_ #define_OPENCV_ALL_HPP_ # include "opencv2/core/core_c.h" # include "opencv2/core/c...

    # include <opencv2/opencv.hpp>头文件定义类似如下:

    # include <opencv2/opencv.hpp>

    # ifndef_OPENCV_ALL_HPP_

    #define_OPENCV_ALL_HPP_

     

    # include "opencv2/core/core_c.h"

    # include "opencv2/core/core.hpp"

    # include "opencv2/flann/miniflann.hpp"

    # include "opencv2/imgproc/imgproc_c.h"

    # include "opencv2/imgproc/imgproc.hpp"

    # include "opencv2/photo/photo.hpp"

    # include "opencv2/video/video.hpp"

    # include "opencv2/features2d/features2d.hpp"

    # include "opencv2/objdetect/objdetect.hpp"

    # include "opencv2/calib3d/calib3d.hpp"

    # include "opencv2/m1/m1.hpp"

    # include "opencv2/highgui/highgui_c.h"

    # include "opencv2/highgui/highgui.hpp"

    # include "opencv2/contrib/contrib.hpp"

    # endif

    opencv.hpp已经包含了OpenCV各模块的头文件,所以在编写core、objdetect、imgproc、photo、features2d、calib3d、m1、highgui、contrib模块的应用程序时,原则上仅写一句“# include <opencv2/opencv.hpp>”即可。

     

     

    展开全文
  • ubuntu下opencv3和opencv2共存

    千次阅读 2017-05-04 15:43:05
    opencv3和opencv2共存

    最近高翔大神写的《视觉SLAM十四讲》到了,重新回顾,受益匪浅。不管是不是专注于视觉slam,都值得一看。

    在之前的安装中,电脑默认安装的opencv2.4.8,当我们 FIND_PACKAGE( OpenCV REQUIRED ) 时,系统默认在/usr/share/OpenCV下找OpenCVConfig.cmake,确定引入的Opencv的头文件和库文件的位置。

    高博在他的书中,选择了OpenCV3.1版本,与sudo apt-get install libopencv-dev 安装的opencv2.4 的版本不一样,会出现一些冲突,话虽如此,一些经典的算法选择的仍然是OpenCV的较早版本,因此我们需要直到多版本OpenCV并存。

    网上其他的一些方法比较繁杂,我选择了一个我觉得比较简单的方法。

    首先,下载OpenCV3的源码 opencv3.2 我选择了最新的3.2版本,和3.1差别不大。

    下载解压后,我用cmake-gui进行安装,感觉比较直观。

    mkdir build
    cd build
    cmake-gui ..

    在configure中选择默认设置即可,opencv3要下载一个ippicv的第三方包,直接下比较慢,可以自己下后,放到3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e里即可。
    ippicv_linux_20151201.tgz

    在之后的安装配置中,我把CMAKE_INSTALL_PREFIX 改为/usr/local/opencv3,之后generate,再make和sudo make install,在对应目录下就有opencv3的头文件和库文件了。

    当自己所写的程序使用到opencv3时,在 FIND_PACKAGE( OpenCV REQUIRED ) 前,添加set(OpenCV_DIR "usr/local/opencv3/share/OpenCV") 这样计算机就找到opencv3的对应头文件和库文件了,如果继续使用opencv2,不添加这一句就可以。

    展开全文
  • windows下OpenCV的安装配置部署详细教程

    万次阅读 多人点赞 2018-08-07 09:09:25
    OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、...

    零、简介
      OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程序库也可以使用英特尔公司的IPP进行加速处理。
      OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。该库也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。这些语言的API接口函数可以通过在线文档获得。如今也提供对于C#、Ch、Ruby、GO的支持。
      简单理解OpenCV就是一个库,是一个SDK,一个开发包,解压后直接用就可以。
      由于OpenCV网站及软件都更新了,博客也小小改了一下,
    windows 下OpenCV的安装部署详细教程

    一、下载OpenCV
      到OpenCV官网下载你需要的版本。
      点击RELEASES(发布)
    在这里插入图片描述

    由于OpenCV支持好多平台,比如Windows, Android, Maemo, FreeBSD, OpenBSD, iOS, Linux和Mac OS,一般初学者都是用windows,所以在这里下载Win pack
    这里写图片描述

    点击Win pack 后跳出下面界面,等待5s自动下载。
    这里写图片描述

    下载后是这样的
    这里写图片描述
    然后双击他,解压,就是大佬们说的安装,实质就是解压一下,解压完出来一个文件夹,其他什么也没发生。你把这个文件夹放在哪都行,不过你要记住他在哪。
    这里写图片描述
    正在解压
    这里写图片描述
    解压完打开文件夹是这样的
    这里写图片描述
    其中build是OpenCV使用时要用到的一些库文件,而sources中则是OpenCV官方为我们提供的一些demo示例源码

    二、配置环境变量
      把OpenCV文件夹放好地方后,依次选择计算机—>属性—>高级系统设置—>环境变量,找到Path变量,选中并点击编辑,然后新建把你的OpenCV执行文件的路径填进去,然后一路点确定,这样环境变量就配置完了。
    这里写图片描述
    OpenCV执行文件的路径这样找:
    找到你解压好的OpenCV文件夹,依次选择build—>x64—>vc15—>bin,
    然后是这样的
    这里写图片描述
    这个路径就是我的OpenCV执行文件的路径,你的应该和我的差不多吧。
    这里注意,如果你下载的是OpenCV2.x版本,选择build后,还需要选择x86或x64,然后是vc12(为什么不是vc10或vc11,一般都是选最新的),其他步骤大同小异。

    三、部署OpenCV
      前面说了,OpenCV是一个SDK,得使用工具开发它,比如Visual Studio(当然有些大佬只用记事本或神一样的Vim),接下来就是在Visual Studio中部署OpenCV了。

    0. 安装Visual Studio
      因为主题是OpenCV,这个这里不讲了,请自行Google。

    1. 打开Visual Studio,新建工程
      初学者最好是建一个控制台工程,没有其他问题的干扰。

    2. 添加包含目录
      依次选择项目—>属性—>VC++目录—>包含目录—>编辑
      找到你的包含目录添加就可以了,最好添加三个,我的是这样的:
      D:\opencv\build\include
      D:\opencv\build\include\opencv
      D:\opencv\build\include\opencv2
      这里写图片描述
      
    3.添加库目录
      依次选择项目—>属性—>VC++目录—>库目录—>编辑
      我的是D:\opencv\build\x64\vc15\lib
    这里写图片描述

    4.添加附加依赖项
      依次选择项目—>属性—>链接器—>输入—>附加依赖项—>编辑
      添加你的库文件名
      这里写图片描述
      库文件这样找:
      这里写图片描述
      有两个文件opencv_world341d.lib和opencv_world341.lib
      如果配置为Debug,选择opencv_world341d.lib
      如果为Release,选择opencv_world341.lib
      这里注意,如果你下载的是OpenCV2.x版本,这里的库文件比较多,都填进去就可以了。

    到这里OpenCV的所有安装部署就结束了,可以进行下一步的使用和学习了。

    展开全文
  • VS+opencv

    千次阅读 2018-07-09 14:24:55
    #opencv vs 安装##系统环境变量D:\Program Files\Opencv\opencv\build\x64\vc14\binD:\Program Files\Opencv\opencv\build\x64\vc15\bin##包含目录D:\Program Files\Opencv\opencv\build\includeD:\Program Files\...
  • 上一篇博客已经讲到如何在Visual Studio 2017上实现OpenCV3.4 的永久配置,但是有时我们又同时需要用到opencv2库,比如当使用特征检测算子时,opencv2版本较opencv3版本稳定。所以这篇博客将讲解如何在已经配置了...
  • VS2019配置OpenCV

    万次阅读 多人点赞 2018-12-28 14:33:57
    一、环境 vs2019社区版、win10 64位操作系统 二、opencv配置步骤(共5步) 1、下载OpenCV4.0.1,官网为opencv.org ...3、添加环境变量,在PATH中添加: D:\opencv-4.0.1-vc14_vc15\opencv\build\x64\vc15...
  • 树莓派安装openCv

    千次阅读 2019-04-06 20:33:35
    虽然,在控制摄像头上,树莓派已经为我们集成了picamera库,但我不经还是想用用opencv, 于是就要在树莓派上安装我们的opencv 在树莓派安装opencv的路不是那么容易的,就算你安装完成后,也会出现缺少各种依赖库...
  • VS2017配置opencv教程(超详细!!!)

    万次阅读 多人点赞 2018-06-03 23:48:23
    前言:刚开始是不打算写这篇博客的,但是我最近为了完成对老师布置的区域生长算法,强行要配置一波opencv,因为换了电脑,所以选择了有黑黑主题酷酷的VS2017,但无奈网上的博客关于vs2017配置Opencv不够全(vs2010...
  • OpenCV下载/OpenCV国内镜像/opencv_contrib下载

    万次阅读 多人点赞 2020-03-09 15:41:03
    最近用了一些OpenCV的东西,但是OpenCV不管是从官网下载还是从GitHub下载都是超级慢,体验烂透了,于是我就搭了梯子从3.0.0开始全部下载下来了,放到了我的服务器上,方便后来者下载,自身的服务器带宽有限,单用户...
  • OpenCV_1.0 版本下载 配置VC6.0

    千次下载 热门讨论 2007-07-11 15:34:11
    本手册适应 OpenCV 1.0 安装。 目录 [隐藏] 1 安装Visual C++ 6.0 2 安装OpenCV 3 配置Windows环境变量 4 配置Visual C++ 6.0 4.1 全局设置 4.2 项目设置 [编辑]安装Visual C++ 6.0 略。 [编辑]安装...
  • Anaconda安装opencv3

    万次阅读 2017-06-30 08:30:12
    我分别在Linux和Windows上安装了Python的Opencv3的库,首先说明的是在Linux32位系统上,并不支持opencv3的安装。如果安装可以安装opencv2.4版本。在Windows中,可以安装Opencv3。 打开命令行,输入conda,确认命令...
  • OpenCV读取灰度图像

    万次阅读 2016-11-13 13:44:19
    OpenCV读取灰度图像
  • VS2019 opencv配置(亲测可行)

    千次阅读 2019-04-27 16:01:30
    VS2019 opencv配置(亲测可行) vs2019专业版、win10 64位操作系统、opencv-4.0 OpenCV4.0配置 1、下载OpenCV4.0,官网为opencv.org 2、安装opencv,我的安装目录是 F:\opencv 3、添加环境变量,在PATH中添加: F:\...
  • Opencv安装教程

    万次阅读 多人点赞 2019-05-24 09:45:57
    Opencv3.4.6安装教程下载opencv下载opencv_contribCmake配置、生成Visual Studio 2017环境配置测试如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义...
  • vs2013+opencv3.4.3配置安装教程

    千次阅读 2019-03-21 17:42:19
    这并不代表vs2013中就不可以使用opencv3.4.3,这种方式就是重新编译opencv3.4.3对应的vs2013版本。【注:opencv3的其他版本也适用这种方式】 环境 windows / vs2013 / opencv3.4.3 步骤 1、下载CMake;链接 2...
  • 写作当前博文时配套使用OpenCV版本:2.4.8 之前啃了不少OpenCV的官方文档,发现如果了解了一些OpenCV整体的模块架构后,再重点学习自己感兴趣的部分的话,就会有一览众山小的感觉,于是,就决定写出这篇文章,...
  • 这篇文章中,我们一起探讨了如何通过已经安装的OpenCV,选择不同的编译器类型,生成高度还原的OpenCV开发时的解决方案工程文件,欣赏OpenCV新版本中总计 六十六多万行的精妙源代码。我们可以对其源代码进行再次编译...
  • VS2019:配置opencv教程

    万次阅读 热门讨论 2019-07-19 22:57:53
    VS2019配置opencv教程前言说明OpenCV配置步骤Visual Studio 2019 配置测试 前言 时间;2019-7-18 环境:Visual Studio 2019,Windows,OpenCV 4.1.0 说明 也许读者也看过其他配置OpenCV的教程,但是创建的项目属性...
  • vs2019永久配置opencv开发环境

    万次阅读 多人点赞 2019-04-05 22:15:58
    有很多同学肯定想学习opencv相关的知识,但是有些情况下每建一次项目都要重新引入下各种文件是不是很苦恼,所以我也面临了这个问题,在网上看到很多的同学的方法,有的也都是很一样的,将什么.dll加入环境变量,然后...
  • OpenCV入门指南】第一篇 安装OpenCV

    万次阅读 多人点赞 2012-12-03 09:33:21
    OpenCV第一篇】安装OpenCV本篇主要介绍如何下载OpenCV安装程序,如何在VS2008下安装配置OpenCV,文章最后还介绍了一个使用OpenCV的简单小例子。《OpenCV入门指南》系列文章地址:...
  • OPENCV_EXTRA_MODULES_PATH,添加opencv_contrib目录后报错,求问是什么问题啊? CMake Error at /Users/Documents/opencv/source/opencv-3.2.0/cmake/OpenCVUtils.cmake:1045 (file): file DOWNLOAD cannot open ...
  • 错误如下,是在配置“OPENCV_EXTRA_MODULES_PATH” 这个时候报错的 CMake Error at C:/Users/wyq/Downloads/opencv/sources/cmake/OpenCVUtils.cmake:857 (file): file MD5 failed to read file "C:/Users/wyq/...
  • CMake Error at H:/OpenCV/opencv/sources/cmake/OpenCVUtils.cmake:1005 (file): file MD5 failed to read file "H:/OpenCV/Library/3rdparty/protobuf/": Permission denied Call Stack (most recent call first):...
  • OpenCV-2.4.3

    千次下载 热门讨论 2012-12-05 11:30:57
    OpenCV-2.4.3 source code for convenient download
  • 由于在学习图像识别中的特征点检测中,需要用到Surf和Sift算法,但是这两个算法在OpenCV 3.1.0的Release版本中并不存在,因为他们是存放在opencv_contrib目录下面的未稳定功能模块,所以如果我们想要使用这个目录的...
  • opencv安装 pip install opencv-python

    万次阅读 2018-08-15 13:00:29
    一般情况下,安装包都...但是我试了 pip install opencv 发现没有这个包,查了资料才发现是要写成 pip install opencv-python 还有一点,后续调用OpenCV时,要用 import cv2, 而不是import opencv等其他名字。...
  • 我是小白,配置win10+VS2017+opencv3.4.2,看了很多论坛的opencv的教程配置好了路径什么的,但是头文件依然打不开,卡这里两天了。。。 我也把相应的dll文件放到了System32和SysWow64。。。。 请问到底是哪里有...
  • 本次安装因为我要配的这个笔记本是win7(32bit)的,所以安装中软件版本的选择就是按32位走的,我之前在win10(64bit)也装过,实际中这个教程的方法对于win7还是win10,32位又或是64位系统是通用的,软件版本按需...
  • VS2010+OpenCV安装配置

    千次阅读 2012-09-15 12:00:49
    关于OpenCV+VS2010的安装配置,在其官网上有详细介绍: 1) OpenCV Installation in Windows :  ...

空空如也

1 2 3 4 5 ... 20
收藏数 203,584
精华内容 81,433
关键字:

opencv