知识点
(1)颜色空间转换
(2)图像保存
相关API(C++)
(1)颜色空间转换函数:cvtColor()
void cvtColor (InputArray src, OutputArray dst, int code, int dstcn=0)
第一、二个参数分别是输入的图像、输出的目标图像。
第三个参数,code为颜色空间转换的标识符。
第四个参数,dstcn是目标图像的通道数,默认为0,表示目标图像取源图像的通道数。
标识符 | 代替值 | 意义 |
COLOR_BGR2GRAY | 6 | 彩色到灰度 |
COLOR_GRAY2BGR | 8 | 灰度到彩色 |
COLOR_BGR2HSV | 40 | BGR到HSV |
COLOR_HSV2BGR | 54 | HSV到 BGR |
(2)图像保存:imwrite()
c++版本示例
#include<opencv2\opencv.hpp>
#include<iostream>
using namespace cv;
using namespace std;
int main()
{
Mat src = imread("D:/opencv3.1.0/images/Messi.jpg");
Mat dst;
imshow("input image",src);
cvtColor(src,dst,CV_BGR2GRAY);
imwrite("D:/dst.jpg", dst);
imshow("dst image", dst);
waitKey(0);
return 0;
}
python版本示例
import cv2 as cv
src = cv.imread("D:/opencv3.1.0/images/Messi.jpg")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)
gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY)#颜色空间转换
cv.imshow("gray", gray)
cv.imwrite("D:/dst1.jpg", gray);#在D:/dst1.jpg目录下,写入图像
cv.waitKey(0)
cv.destroyAllWindows()
★finished by songpl ,2018.12.