打开一张图片
//
// main.cpp
// Study01
//
// Created by Sean on 16/2/5.
// Copyright © 2016年 Sean. All rights reserved.
//
#include <iostream>
using namespace std;
#include "highgui.h"
int main(int argc, const char * argv[]) {
// insert code here...
cout << "Project start..."<<endl;
char name[] = "Exm";
IplImage* img = cvLoadImage("/Users/sean/Pictures/FN2V63AD2J.com.tencent.ScreenCapture2/QQ20160205-0.png");
//cvLoadImage加载图像至内存,执行完返回一个指针,IplImage是一个指针
cvNamedWindow( name , CV_WINDOW_AUTOSIZE);
//创建一个标题为“Exm”窗口,“Exm”类似句柄,,个人觉得用一个char的队列好管理窗口,这只是小程序,如果是大程序我就用结构体来存储数据
cvShowImage( name , img);
//显示图像,name为窗口名,img为图像指针
cvWaitKey(0);
/*等待按键,个人觉得可以理解成getchar(),等待从键盘按下一个按键,然后返回按键的ASCII码,
唯一和getchar()不同的就是它不用按回车。补充一下这里的意思是:等待键盘按一个键,然后继续
下一行代码,当然你可以写while(cvWaitKey(0)!=27);意思是:只有在按下“ESC”时才执行下一行代码*/
cvReleaseImage( &img );
/*释放img所占用的内存空间,我来po上函数原型“CVAPI(void) cvReleaseImage( IplImage** image );”
大家看到了吧“IplImage** image”!!,所以使用的时候别忘记加“&”哦!*/
cvDestroyWindow("Example");
/*销毁窗口,窗口太多的时候我就用“cvDestroyAllWindows();”简单粗暴*/
return 0;
}