cvtColor() 用于将图像从一个颜色空间转换到另一个颜色空间的转换(目前常见的颜色空间均支持),并且在转换的过程中能够保证数据的类型不变,即转换后的图像的数据类型和位深与源图像一致。
cvtColor()函数详解
C++: void cvtColor
(
InputArray src,
OutputArray dst,
int code,
int dstCn=0
)
参数说明:
src - 输入图像:8位无符号,16位无符号(CV_16UC…),或单精度浮点。
dst - 输出图像的大小和深度与src相同。
code - 颜色映射类型,可以查表得到,有很多
dstCn - 输出的通道数 (0=‘automatic’),我们可以使用默认值,什么都不写。
举例说明:
imshow("原图",src);
Mat dst, dst1, imgBGR;
cvtColor(src,dst,CV_BGR2GRAY); // 转换方式1,这种是将彩色图像转换为灰度图,经常使用,需要记住
cvtColor(dst, imgBGR, COLOR_GRAY2BGR); // 验证的时候经常将灰度图像转换为彩色图像
cvtColor(src, dst1, COLOR_BGR2Lab); // 转换方式2