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

Opencv入门笔记一---从磁盘加载并显示图像

2018-01-28 20:31 344 查看
代码:

#include "highgui.h"

int main(int argc,char** argv)

{

    IplImage* img = cvLoadImage( argv[1] );
cvNamedWindow( "Example1", CV_WINDOW_AUTOSIZE );
cvShowImage("Example1",img);
cvWaitKey(0);
cvReleaseImage( &img );
cvDestroyWindow( "Example1" );

}

总结:
1.头文件:

highgui.h,函数库,图形交互和媒体接口

2.结构体或函数:

IplImage是用来表示图像的结构体;

//***************************************************************************************************************

cvLoadImage函数原型为 IplImage* cvLoadImage( const char* filename, int flags=CV_LOAD_IMAGE_COLOR )

flags=1,读取彩色图;flags=0,强制读取灰度图;flags=-1,默认原图像;在vs10里面不设的话默认是1;

//******************************************************************************************************************

cvNamedWindow建立窗口,原型为int cvNmaedWindow(const char* name,int flags=CV_WINDOW_AUTOSIZE),

name为窗口名字;flags=1,也就是上面的第二个参数值,此时窗口固定;flags=0,可以手动调节输出图像的大小

//*******************************************************************************************************************

cvShowImage在指定窗口显示图像,原型为void cvShowImage(const char *name, const CvArr*  image ),百度了一下,Cvarr* 仅被用作函数的参数,指明函数接受的数组类型不止一个,如IplImage*,CvMat*,Cvseq*;

//*********************************************************************************************************************

cvWaitkey是不断刷新图像,返回键为键的ASCII码值,原型为int cvwaitKey(int delay),delay<=0时,程序将一直等待按键操作,delay>0,那么程序将暂停一段时间,时间长为整数个毫秒单位,然后继续执行程序

3.遇到的问题及解决方案:

第一个是设置命令参数:菜单栏--项目---opencvtest属性(opencvtest为工程名)---调试--命令参数--H:\100.jpg

第二个是注释掉cvNamedWindow函数,也就是不创建窗口,直接输出也能成功运行,目前还不明白
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  计算机视觉