OpenCV的IDE选择为Qt,此乃继承自学长学姐们的传统。
软件下载和环境配置不再赘述,这里说一下使用Qt进行工程创建的过程。
工程创建其实很简单
(1)欢迎界面,点击New Project
(2)
(3)设置项目名称,选择创建路径,下一步
(4)下一步
(5)还是下一步
(7)点击完成就可以啦
(8)在项目栏里选择.pro,将OpenCV库加入项目中
这里记录一下我自己的路径
INCLUDEPATH += D:\opencv-build2.4.12\include\opencv\
D:\opencv-build2.4.12\include\opencv2\
D:\opencv-build2.4.12\include
LIBS += D:\opencv-build2.4.12\lib\libopencv_calib3d2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_contrib2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_core2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_features2d2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_flann2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_gpu2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_highgui2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_imgproc2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_legacy2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_ml2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_objdetect2412.dll.a\
D:\opencv-build2.4.12\lib\libopencv_video2412.dll.a
以上,一个工程创建就这么愉快地结束了嗯~ o(* ̄▽ ̄*)o
(9)我们用一个简单的例子试一下吧
运行键是左边那个绿色的箭头。要注意,同时打开多个项目的时候,运行的不一定是现在打开的那个,所以……不用的项目还是关掉吧嗯~ o(* ̄▽ ̄*)o
代码是网上copy下来的
#include"cv.h"
#include"highgui.h"
int main(int argc, char *argv[])
{
//QApplication a(argc, argv);
IplImage* pImg; //声明IplImage指针
pImg=cvLoadImage("C:/Users/9/Desktop/Luffy.jpg",1); //载入图像
cvNamedWindow( "Image",1 );//创建窗口
cvShowImage( "Image", pImg );//显示图像
cvWaitKey(0); //等待按键
cvDestroyWindow( "Image" );//销毁窗口
cvReleaseImage( &pImg ); //释放图像
return 0;
//return a.exec();
}简单查了一下各个代码的用法,介绍如下:
①函数原型:IplImage* cvLoadImage( const char* filename, int flags=CV_LOAD_IMAGE_COLOR );
filename :要被读入的文件的文件名(包括后缀);
flags :指定读入图像的颜色和深度
例如:
cvLoadImage( filename, -1 ); 默认读取图像的原通道数
cvLoadImage( filename, 0 ); 强制转化读取图像为灰度图
cvLoadImage( filename, 1 ); 读取彩色图
②函数原型: cvNamedWindow( const char* name, int flags=CV_WINDOW_AUTOSIZE );或cvNamedWindow( const char* name )
name 窗口的名字,它被用来区分不同的窗口,并被显示为窗口标题。
flags 窗口属性标志。可以选择CV_WINDOW_AUTOSIZE(1)和0两种值。0表示用户可以手动调节窗口大小,且显示的图像尺寸随之变化。
例如:
cvNamedWindow("video", 1);
③函数原型:void cvShowImage( const char* name, const CvArr* image );
name 窗口的名字。
image 被显示的图像。
函数cvShowImage 在指定窗口中显示图像。如果窗口创建的时候被设定标志CV_WINDOW_AUTOSIZE,那么图像将以原始尺寸显示;否则,图像将被伸缩以适合窗口大小
以上,OpenCV在Qt上的第一个程序完成(* ̄▽ ̄)y
最后,最爱的艾斯路飞镇楼~~虽然我也不懂这个奇怪的尺寸是怎么回事,不过好歹也算是成功了嗯~ o(* ̄▽ ̄*)o