void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0)
- src: 輸入圖像
- dst: 輸出圖像
- code: 顏色空間轉換標識符
- OpenCV2的CV_前綴宏命名規范被OpenCV3中的COLOR_式的宏命名前綴取代
- 注意RGB色彩空間默認通道順序為BGR
- 具體可以參考: enum cv::ColorConversionCodes部分
- dstCn: 目標圖像的通道數,該參數為0時,目標圖像根據源圖像的通道數和具體操作自動決定
示例代碼如下:
#include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> #include <iostream> // main int main( int argc, char** argv ) { // Load image cv::Mat srcImage = cv::imread("1.jpg"), dstImage; // Convert to other color space cv::cvtColor(srcImage, dstImage, cv::COLOR_BGR2Lab); imshow("Lab Space", dstImage); cv::cvtColor(srcImage, dstImage, cv::COLOR_BGR2GRAY); imshow("Gray Scale", dstImage); cv::waitKey(); return 0; }
Original Image:
Lab Space:
Gray Scale: