利用OpenCV的函数imread()将RGB图像转化为灰度图像

图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601

通常,我们是利用OpenCV的函数cvtColor()将图像转化为灰度图,但实际上在读取图像的时候便可以将图像转化为灰度图。

很简单的操作,只需要将函数imread()的第二个参数置为0即可。

如下面的代码:

cv::Mat srcImage = cv::imread("lakeWater.jpg",0);

函数imread()的原型如下:

Mat cv::imread	(	const String & 	filename,
					int 	flags = IMREAD_COLOR 
				)	
​

第二个参数"flags"说明如下:

>0 Return a 3-channel color image 
=0 Return a grayscale image 
<0 Return the loaded image as is. Note that in the current implementation the alpha channel, if any, is stripped from the output image. For example, a 4-channel RGBA image is loaded as RGB if flags\ge0 . 
可见,当flags==0的时候,函数返回的是原图的灰度图像。

你可能感兴趣的:(图像处理原理,工具,代码,opencv,图像处理,计算机视觉)