void cv::cvtColor( cv::InputArray src, // 輸入序列
cv::OutputArray dst, // 輸出序列
int code, // 顏色映射碼
int dstCn = 0 // 輸出的通道數 (0='automatic')
);
輸入一個輸入序列(一般是原圖像),然后經過顏色映射碼生成這個顏色映射碼的輸出序列。其中,最后一個參數dstCn用於指定目標圖像的通道數,如果指定的值是默認值0,那么通道數將由輸入圖像和顏色轉換碼決定。
示例:
來源於:https://blog.csdn.net/fanjiule/article/details/81629581
#include <opencv2/opencv.hpp> #include <iostream>
using namespace cv; using namespace std; int main(int argc, char** argv) { Mat src,dst,dst1; src = imread("image5.jpg"); //判斷圖片是否載入成功
if (src.empty()) { printf("圖片加載失敗\n"); system("pause"); } imshow("原圖",src); cvtColor(src,dst,CV_BGR2GRAY);//轉換方式1,這種是轉換為灰度圖,經常使用,需要記住
cvtColor(src,dst1,COLOR_BGR2Lab);//轉換方式2
imshow("CV_BGR2GRAY轉換后",dst); imshow("COLOR_BGR2Lab轉換后",dst1); waitKey(0); return 0; }
這里給出一些顏色映射碼
來源於:https://blog.csdn.net/xuwenwen_2013/article/details/78663379
1、RGB和BGR(opencv默認的彩色圖像的顏色空間是BGR)顏色空間的轉換 cv::COLOR_BGR2RGB cv::COLOR_RGB2BGR cv::COLOR_RGBA2BGRA cv::COLOR_BGRA2RGBA 2、向RGB和BGR圖像中增添alpha通道 cv::COLOR_RGB2RGBA cv::COLOR_BGR2BGRA 3、從RGB和BGR圖像中去除alpha通道 cv::COLOR_RGBA2RGB cv::COLOR_BGRA2BGR 4、從RBG和BGR顏色空間轉換到灰度空間 cv::COLOR_RGB2GRAY cv::COLOR_BGR2GRAY cv::COLOR_RGBA2GRAY cv::COLOR_BGRA2GRAY 5、從灰度空間轉換到RGB和BGR顏色空間 cv::COLOR_GRAY2RGB cv::COLOR_GRAY2BGR cv::COLOR_GRAY2RGBA cv::COLOR_GRAY2BGRA 6、RGB和BGR顏色空間與BGR565顏色空間之間的轉換 cv::COLOR_RGB2BGR565 cv::COLOR_BGR2BGR565 cv::COLOR_BGR5652RGB cv::COLOR_BGR5652BGR cv::COLOR_RGBA2BGR565 cv::COLOR_BGRA2BGR565 cv::COLOR_BGR5652RGBA cv::COLOR_BGR5652BGRA 7、灰度空間域BGR565之間的轉換 cv::COLOR_GRAY2BGR555 cv::COLOR_BGR5552GRAY 8、RGB和BGR顏色空間與CIE XYZ之間的轉換 cv::COLOR_RGB2XYZ cv::COLOR_BGR2XYZ cv::COLOR_XYZ2RGB cv::COLOR_XYZ2BGR 9、RGB和BGR顏色空間與uma色度(YCrCb空間)之間的轉換 cv::COLOR_RGB2YCrCb cv::COLOR_BGR2YCrCb cv::COLOR_YCrCb2RGB cv::COLOR_YCrCb2BGR 10、RGB和BGR顏色空間與HSV顏色空間之間的相互轉換 cv::COLOR_RGB2HSV cv::COLOR_BGR2HSV cv::COLOR_HSV2RGB cv::COLOR_HSV2BGR 11、RGB和BGR顏色空間與HLS顏色空間之間的相互轉換 cv::COLOR_RGB2HLS cv::COLOR_BGR2HLS cv::COLOR_HLS2RGB cv::COLOR_HLS2BGR 12、RGB和BGR顏色空間與CIE Lab顏色空間之間的相互轉換 cv::COLOR_RGB2Lab cv::COLOR_BGR2Lab cv::COLOR_Lab2RGB cv::COLOR_Lab2BGR 13、RGB和BGR顏色空間與CIE Luv顏色空間之間的相互轉換 cv::COLOR_RGB2Luv cv::COLOR_BGR2Luv cv::COLOR_Luv2RGB cv::COLOR_Luv2BGR 14、Bayer格式(raw data)向RGB或BGR顏色空間的轉換 cv::COLOR_BayerBG2RGB cv::COLOR_BayerGB2RGB cv::COLOR_BayerRG2RGB cv::COLOR_BayerGR2RGB cv::COLOR_BayerBG2BGR cv::COLOR_BayerGB2BGR cv::COLOR_BayerRG2BGR cv::COLOR_BayerGR2BGR