Opencv安装教程(一)及第一个例子

这是很久以前在别的平台写的安装opencv教程,现在转载到这个平台。做机器视觉,核心是图像处理,而用到的图像处理工具,主流的就是opencv、halcon和visionpro。后面两个是商业软件,opencv是完全免费的。要学好机器视觉的核心图像处理,建议可以opencv和halcon同时入手,最开始最好用opencv,这样对图像算法的理解会更加深刻一些。我见过一些做视觉图像的,会一点halcon,就感觉自己好像会做机器视觉了。这是不可能的,如果对图像处理算法没有比较深刻的理解,那么对算法函数的调用也很难实现下你给要的功能。举个简单的例子,一个固定阈值的二值化操作,很多人可能觉得太简单而且没有什么用处。可是如果改变一下方式,会得到意想不到的效果。
首先,从opencv官网https://opencv.org/releases.html上下载。
在这里插入图片描述
图1 opencv下载界面
如果想自己编译opencv的编代码,需要下载的是Source,建议初学者不要自己去编译源代码,而是直接使用已经编译好的文件。当然,你也可以从github网站https://github.com/opencv/opencv去下载opencv的源码。
在这里插入图片描述
图2 github上的opencv源码
下载后,在你的电脑上应该有这样的文件opencv-4.0.0-vc14_vc15.exe。其实就是一个压缩文件,直接双击,选择安装目录,直接安装就行,然后配置环境变量。如下图
在这里插入图片描述
图3 配置opencv环境变量
上面的目录是安装opencv的目录。
这样,就把opencv安装好了,但是要在visual studio里面使用opencv,还需要导入opencv的头文件,dll文件等。首先打开visual studio软件,按照下图选择Visual c++项目,然后选择win32控制台应用程序,输入名称和位置,点击确定,然后下一步选择空项目
在这里插入图片描述
图4 新建控制台程序
在这里插入图片描述
图5 选择空项目
点击确定完成,这样就新建了一个空的win32控制台项目。
然后选择属性管理器,具体位置如下图
在这里插入图片描述
图6 选择属性管理器
在属性管理器上右键新建属性管理器,输入名称和位置,点击确定
下面来一个具体的例子,利用opencv显示视频图像,如果你的电脑上有摄像头,并且按照上面的方法配置好了opencv,那么,下面的例子可以直接运行看得到结果。
在这里插入图片描述
图7 添加新项目属性表
在这里插入图片描述
图8 新添加的属性表
这时属性管理器多了一个“opencv40”,双击它,弹出属性页对话框,然后按照下面的图示配置属性表。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如上图,分别配置包含目录和库目录以及附加依赖项,在链接器-》输入-》附加依赖项中加入opencv_world400d.lib,直接确定,就配置完成了,有的opencv版本附加依赖项有多个lib文件,后来的版本将多个lib文件合并成了一个opencv_world400d.lib。以后,你可以在新建的项目里面直接包含该属性,这个文件在你的项目下面,直接拷贝该属性表到你新建项目的对应目录下,以后对于新的项目,就不需要重新配置opencv了。
点击解决方案资源管理器,选择源文件右键添加新项,选择c++源文件,然后就可以编写代码,调用opencv的函数,实现图像处理功能了。
在这里插入图片描述
注意,可能运行opencv程序会出错,因为可能有的系统会缺少类似msvcp100d.dll,msvcr100d.dll这样的文件,这时需要自己去下载这些文件,放在系统文件夹下面就可以了。

#include
#include<opencv2\highgui\highgui.hpp>
#include<opencv2\imgproc\imgproc.hpp>

using namespace std;
using namespace cv;

int main(int arg, char** argv)
{
namedWindow(“读取摄像头图像”, 0);//建立一个窗体用于显示视频图像, VideoCapture cap;//视频类
cap.open(0);//打开摄像头,如果打开的是本地视频,需要该视频的路径
Mat frame;//读取的视频帧
while (1)//一直循环读取
{
cap >> frame;//读视频图像
if (frame.empty())
break;
imshow(“读取摄像头图像”, frame);//显示
if (waitKey(33) >= 0)
break;
}
return 0;
}
说明:其实vc++目录和c/c++只需要配置一个就可以使用,当然,两个都配置上也是没有什么问题的。
已经编译好的opencv及扩展库可以在下面网盘下载,直接配置环境就可以使用了。
链接:https://pan.baidu.com/s/1XyotEmXLfD-XCNCYOiVUYg
提取码:aj9d

猜你喜欢

转载自blog.csdn.net/lang_shi/article/details/129317226