本文默认你已经成功配置opencv并具有一定的c++基础,后续将由浅入深地介绍如何运用opencv进行图像处理与机器学习的具体实践,在熟悉opencv的同时也能对相关理论有更深刻的理解。opencv的具体配制方法参见:http://www.cnblogs.com/woshitianma/p/3853447.html。
第一个程序——展示一个图像
c++中通过文件流可以将图像从磁盘中读入,处理后再输出到磁盘,但无法在屏幕上显示,运用opencv中的HighGUI工具箱则可以达到屏幕上及时显示的效果。
首先在visual studio中创建一个空的win32项目,新建一个cpp文件,输入下面的代码,并将图像文件放到项目的文件目录中。在解决方案资源管理器中可以打开项目所在文件夹。
代码如下:
#include<iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
int main()
{
IplImage* img = cvLoadImage("a1.ppm");
//IplImage是opencv中处理图像的数据结构,支持所有图像格式。
//cvLoadImage函数读入图像"a1.ppm",返回一个指针变量。
cvNamedWindow("Example1",CV_WINDOW_AUTOSIZE);
//cvNamedWindow函数创建一个名为"Example1"的窗口,第二个参 //数CV_WINDOW_AUTOSIZE表示窗口大小自动调整与图像大小相同
cvShowImage("Example1",img);