C++图像识别之opencv入门学习(基于vs2015环境)

≯℡__Kan透↙ 提交于 2020-01-15 21:03:59

opencv是一个著名的开源计算机视觉库 ,它提供了很多函数,实现很多计算机视觉算法,可以进行图像处理和识别检测等很多功能。最简单的就是图像读取imread,图像写入imwrite,图像显示imshow,改变图像大小resize,图像类型颜色转换cvtColor这几个。关于opencv的具体下载地址大家可以自行搜索,这里主要是介绍在c++环境下开发opencv的步骤,以vs2015示范。

这是下载好opencv开发包的目录:

这是vs2015创建工程的属性配置,包含目录和库目录。因为是vs2015,所以库目录要选vc14,如是vs2017,要选vc15。

还有就是链接器-输入,要把lib库文件输入,因为是debug模式,所以是opencv_world420d.lib。如是release模式,需要输入opencv_world420.lib

下面就是一个简单的例子程序:


#include "opencv2/core.hpp"
#include "opencv2/imgproc.hpp"
#include "opencv2/highgui.hpp"
#include "opencv2/videoio.hpp"

#include <iostream>

using namespace std;
using namespace cv;
int main()
{
	Mat image;
	//读取图像,imread函数,从指定路径下读取图片。imread函数读取的是图片的每个像素点的数值,得到一个数字矩阵,
	//这个数字矩阵,就存放在Mat类型的所定义的变量image中。
	image = imread("C:/Users/achon/Pictures/11.jpg", IMREAD_COLOR);
	if (image.empty()) {
		//检查是否读取图像
		cout << "Input image cannot be read...\n";
		return -1;
	}
	//imshow就是输出文件到屏幕,第一个参数为输出框的名字,第二个为待输出的图像
	imshow("读取图像", image);
	//resize函数是更改图片的大小,第一个参数是输入源数组,第二个是输出数组,第三个是更改大小的数值
	resize(image, image, Size(400, 300));
	//imwrite是输出图片到特定的路径下
	imwrite("C:/Users/achon/Pictures/22.jpg", image);
	imshow("改变图像大小", image);
	//cvtColor函数是图片类型转换函数,第三个参数COLOR_RGB2GRAY就是把RGB彩色数值转换为GRAY灰度黑白数值。
	cvtColor(image, image, COLOR_RGB2GRAY);
	imshow("改为灰度图像", image);
	//waitkey等待按键按下,参数为空和0均表示等待时间无限长,在等待时间内,有按键按下,退出显示。
	//注意此处是对着HighGUI界面也就是imshow的显示界面才能起作用
	waitKey(0);
	return 0;
}

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!