关于图片的颜色空间的介绍可以参考博客:http://blog.csdn.net/victoriaw/article/details/67639227
OpenCV提供了转换颜色空间的函数cvtColor()。
- C++:
void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0 )
- Python:
cv2.cvtColor(src, code[, dst[, dstCn]]) → dst
参数:
src:输入图像
dst:和src有同样size和depth的输出图像
code:颜色空间转换码,
- BGR-RGB:cv2.COLOR_BGR2RGB(python)
- RGB-GRAY:CV_BGR2GRAY(cv2.COLOR_BGR2GRAY), CV_RGB2GRAY, CV_GRAY2BGR, CV_GRAY2RGB
- RGB-HSV:CV_BGR2HSV, CV_RGB2HSV, CV_HSV2BGR, CV_HSV2RGB
- RGB-Lab:CV_BGR2Lab, CV_RGB2Lab, CV_Lab2BGR, CV_Lab2RGB
示例:
Mat img = imread("stack.jpg");
cvtColor(img, dst, CV_BGR2Lab);