一个简单的图像显示代码:
#include"highgui.h" //读取图像的 #include"cv.h" #include"cxcore.h" int main() { //用到两个"\\"的原因是第一个"\"起转意字符作用 IplImage* src = cvLoadImage("C:\\Users\\GSX\\Pictures\\Saved Pictures\\小丑的崛起.jpg"); cvNamedWindow("show",0); cvShowImage("show",src); cvWaitKey(0); //释放资源 cvReleaseImage(&src); cvDestroyWindow("show"); return 0; }
函数解释:
//载入图片
CVAPI(IplImage*) cvLoadImage( const char* filename, int iscolor CV_DEFAULT(CV_LOAD_IMAGE_COLOR));
filename:图像显示路径
iscolor:
enum
{
/* 图像颜色不变*/
CV_LOAD_IMAGE_UNCHANGED =-1,
/* 灰度图像(单通道) */
CV_LOAD_IMAGE_GRAYSCALE =0,
/* 彩***像(3通道图像) */
CV_LOAD_IMAGE_COLOR =1,
/* 输入图像格式可以为8位无符号,16位无符号,32位有符号或者32位浮点型 */
CV_LOAD_IMAGE_ANYDEPTH =2,
/* 保持原样 */
CV_LOAD_IMAGE_ANYCOLOR =4
};
cvLoadImage的功能:
【】通过文件名确定被加载图像的格式,并且该函数内部分配图像数据结构所需要的内存空间
【】支持多种图像格式
//创建窗口
CVAPI(int) cvNamedWindow( const char* name, int flags CV_DEFAULT(CV_WINDOW_AUTOSIZE) );
name:窗口的标志,如果有同名窗口,则该函数什么也不干
flags:
CV_WINDOW_NORMAL = 0x00000000, // 用户可以改变窗口的大小(没有限制) CV_WINDOW_AUTOSIZE = 0x00000001, // 根据图像自动调整窗口大小 CV_WINDOW_OPENGL = 0x00001000, //8 窗口创建的时候便会支持OpenGL。
//显示图像
CVAPI(void) cvShowImage( const char* name, const CvArr* image );
功能:在指定的窗口上显示图像
name:窗口的标志 这个标志是cvNameWindow函数设定的
image:要显示的图像
//等待
CVAPI(int) cvWaitKey(int delay CV_DEFAULT(0));
大于0:暂停X毫秒
其他: 等待用户按键输入