opencv图像处理教程(1) —— 加载、修改、保存图像

以后的教程都是基于c++编写,适用于opencv3.0以上版本。opencv安装和配置教程可参考:

ubuntu下安装opencv :https://blog.csdn.net/qq_38236355/article/details/88864023

window+vs下安装opencv:https://blog.csdn.net/qq_38236355/article/details/88901956

opencv基本操作令:

1、加载图像 (cv::imread)

Mat img = imread("D:/unity ziyuan/IMG_20190116_190933.jpg", -1);

imread 功能是加载图像文件成为一个Mat对象,其中第一个参数表示图像文件所在的绝对路径,第二个参数表示加载的图像是什么类型,常见的三个参数值:

IMREAD_UNCHANGED(或<0的数)表示加载原图,不做任何改变;
IMREAD_GRAYSCALE(或0)表示把原图作为灰度图加载进来;
IMREAD_COLOR(或>0的数)表示把原图作为RGB图像加载进来。
注意:OpenCV支持JPG、PNG、TIFF等常见格式图像文件加载。

2、显示图像(cv::namewindow与cv::imshow)

namewindos功能是创建一个opencv窗口,它是由opencv自动生成并释放,你无需销毁它。常见用法:

namedWindow("Example", WINDOW_AUTOSIZE);

WINDOW_AUTOSIZE会自动根据图像大小显示窗口大小,不能人为改变窗口大小。

imshow根据窗口名称显示图像到指定的窗口上去,第一个参数是窗口名称,第二个参数为Mat对象:

imshow("Example1", img);

3、修改图像(cv::cvtColor)

cvtColor的功能是把图像从一个彩色空间转换到另外一个色彩空间,有三个参数,第一个参数表示源图像、第二参数表示色彩空间转换之后的图像、第三个参数表示源和目标色彩空间,如:COLOR_BGR2HLS 、COLOR_BGR2GRAY 等。

cvtColor(img, img2, CV_BGR2GRAY);//CV_BGR2GRAY表示图像从BGR色彩空间转到灰度色彩空间,即由RGB图变为灰度图

4、保存图像(cv::imwrite)

保存图像文件到指定目录路径,只有8位、16位的PNG、JPG、Tiff文件格式而且是单通道或者三通道的BGR的图像才可以通过这种方式保存,保存PNG格式的时候可以保存透明通道的图片,可以指定压缩参数。

imwrite("D:/unity ziyuan/hskjh.jpg", img2);//将img2图像保存在指定目录下。

总体代码演示:

#include 
using namespace cv;
int main(int argc, char ** argv)
{
	Mat img = imread("D:/unity ziyuan/IMG_20190116_190933.jpg", -1);//路径自己定义
	if (img.empty())
		return -1;
	namedWindow("Example1", cv::WINDOW_AUTOSIZE);
	imshow("Example1", img);
	Mat img2;
	cvtColor(img, img2, CV_BGR2GRAY);
	namedWindow("Example2", WINDOW_AUTOSIZE);
	imshow("Example2", img2);
	imwrite("D:/unity ziyuan/hskjh.jpg", img2);
	waitKey(0);
	return 0;
}

结果如下:
opencv图像处理教程(1) —— 加载、修改、保存图像_第1张图片

你可能感兴趣的:(opencv图像处理,opencv,图像处理,加载,修改,保存)