图像处理开发需求、图像处理接私活挣零花钱,请加微信/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的时候,函数返回的是原图的灰度图像。