您的位置:首页 > 运维架构

OpenCV入门----显示一幅图像

2010-10-21 20:26 323 查看
      OpenCV是强大的开源计算机视觉库,应用OpenCV有助于使用者快速的进行研究与工作,OpenCV的下载和安装配置参考OpenCV中文网站http://www.opencv.org.cn .  

      安装完OpenCV并且配置好以后,运行最简单的OpenCV实例----读取并显示一幅图像.(编程环境:vista + VS2005 + OpenCV2.0)

      在VS2005环境下使用OpenCV显示图像很简单,当所有的准备工作完成的时候,按以下几步很轻松读取并显示一幅图像.

1.打开VC++ 2005,创建一个Win32控制台程序ShowImage;

2.选择Solution Explorer里的ShowImage项目,点击鼠标右键,选择Properties,在[链接器 LINKER]的[输入INPUT]中,为项目的Debug配置增加依赖的库:cxcore200d.lib cv200d.lib highgui200d.lib ;为项目的Release配置增加依赖的库:cxcore200.lib cv200.lib highgui200.lib .

3.配置属性-字符集修改为使用“多字节字符集” (由于2005默认是以Unicode字符集编译的)

4.编译运行下面的例程(需要将lena.bmp文件放在项目目录下,与代码文件放在一起)。

 
#include "stdafx.h"
#include "highgui.h"  //需要用到highgui.h里面的函数

int _tmain(int argc, _TCHAR* argv[])
{
//定义一个字符变量存放图片名称
char* imagename="lena.bmp";
//利用cvLoadImage()函数将图像数据加载至内存,img指向该内存区域
IplImage* img = cvLoadImage(imagename,1);
//检查是否正确载入图像
if(img==0)
{
fprintf(stderr, "Can not load image %s/n", imagename);
return -1;
}
//在屏幕上创建一个窗口,用来显示内存中刚读取的图像
cvNamedWindow("Example",CV_WINDOW_AUTOSIZE);
//重绘,显示图像
cvShowImage("Example",img);
//暂停程序,等待用户进行按键操作(这里参数设为 0,也可以是正数)
cvWaitKey(0);
//释放img指针所指的内存,img置为NULL
cvReleaseImage(&img);
//销毁窗口
cvDestroyWindow("Example");
}


   

编译,执行->显示图像.

对于函数cvLoadImage的用法:

cvLoadImage
从文件中读取图像

IplImage* cvLoadImage( const char* filename, int iscolor=1 );

filename
要被读入的文件的文件名。
iscolor
指定读入图像的颜色:
如果 >0,读入的图像将被强制转换为3通道彩色图像;
如果为 0, 读入的图像将被强制转换为灰度图像;
如果 <0, 读入的图像将与它本来颜色信息一样 (颜色通道数目由图像文件决定)。
函数cvLoadImage从指定文件读入图像,返回读入图像的指针。目前支持如下文件格式:

Windows位图文件 - BMP, DIB;
JPEG文件 - JPEG, JPG, JPE;
便携式网络图片 - PNG;
便携式图像格式 - PBM,PGM,PPM;
Sun rasters - SR,RAS;
TIFF文件 - TIFF,TIF。


 

(完)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息