OpenCV学习小记(一)——环境配置

来源:互联网 发布:数据录入员前景怎么样 编辑:程序博客网 时间:2024/05/01 13:41

一、OpenCV下载与配置

下载地址:OpenCV官方网址

1.安装到指定文件夹中D:\opencv\opencv


2.为Opencv 添加环境变量D:\opencv\opencv\build\x86\vc11\bin



二、VS2012配置

1.创建Win32控制台应用程序的项目

2.打开项目的属性管理器,首先配置项目的Debug版属性,右击Debug | Win32,选择添加新项目属性表,如下图:



3.添加新属性表



4.双击新建的属性页,修改包含目录和库目录



5.修改附加依赖项



6.添加如下内容

opencv_core249d.lib

opencv_imgproc249d.lib

opencv_highgui249d.lib

opencv_ml249d.lib

opencv_video249d.lib

opencv_features2d249d.lib

opencv_calib3d249d.lib

opencv_objdetect249d.lib

opencv_contrib249d.lib

opencv_legacy249d.lib

opencv_flann249d.lib



到此就成功配置好 Debug版的属性了,release版的跟上面的步骤类似,只是需要把附加依赖项后面的d字符去掉。

三、程序测试

打开一张图片

#include<iostream>#include"windows.h"#include <opencv/highgui.h> using namespace std;int main(){    IplImage* img = cvLoadImage("E:/STUDY/2015/opencv/img/cat1.jpg",1);    if(!img)    {        printf("error");    }    cvNamedWindow("小猫", CV_WINDOW_AUTOSIZE );     cvShowImage("小猫", img ); //显示原图像的窗口    cvWaitKey(0);     cvReleaseImage(&img );     cvDestroyWindow("小猫" ); }

运行结果:



对代码中的主要函数进行下讲解:

1.创建窗口 cvNamedWindow

函数名称:cvNamedWindow 
函数功能:创建窗口 
函数原型:
int cvNamedWindow( const char* name, int flags=CV_WINDOW_AUTOSIZE );

参数说明:
第一个参数表示窗口的名字,它被用来区分不同的窗口,并被显示为窗口标题。被创建的窗口可以通过它们的名字被引用。 
第二个参数表示窗口属性标志。目前唯一支持的标志是CV_WINDOW_AUTOSIZE。当这个标志被设置后,用户不能手动改变窗口大小,窗口大小会自动调整以适合被显示图像。 
函数cvNamedWindow创建一个可以放置图像和trackbar的窗口。

注意:
如果已经存在这个名字的窗口,这个函数将不做任何事情。

2.在指定窗口中显示图像 cvShowImage

函数名称:cvShowImage 
函数功能:在指定窗口中显示图像 
函数原型:
void cvShowImage( const char* name, const CvArr* image );
参数说明:

第一个参数:窗口的名字。 
第二个参数:被显示的图像。 

3.等待按键事件 cvWaitKey

函数名称:cvWaitKey

函数功能:等待按键事件

函数原型:
int cvWaitKey( int delay=0 );
参数说明:

第一个参数:延迟的毫秒数,当delay<=0时表示无限等待。

函数返回值:

如果超过指定时间则返回-1,否则返回被按键的值。

4.读取图像 cvLoadImage

函数名称:cvLoadImage
函数功能:读取图像 
函数原型:
IplImage* cvLoadImage( const char* filename, int flags=CV_LOAD_IMAGE_COLOR );
参数说明:

第一个参数:filename :要被读入的文件的文件名(包括后缀); 
第二个参数:flags :指定读入图像的颜色和深度:

cvLoadImage( filename, -1 ); 默认读取图像的原通道数
cvLoadImage( filename, 0 ); 强制转化读取图像为灰度图
cvLoadImage( filename, 1 ); 读取彩色图







1 0
原创粉丝点击