天天看點

opencv 把3通道圖像轉成單通道_三行代碼,OpenCV輕松生成19種色彩風格圖像

opencv 把3通道圖像轉成單通道_三行代碼,OpenCV輕松生成19種色彩風格圖像

點選上方藍字關注我們

微信公衆号:OpenCV學堂

關注擷取更多計算機視覺與深度學習知識

Hello,大家好,今天給大家分享一個OpenCV中相對冷門的一個知識點,就是如何使用OpenCV中的顔色表,快速實作各種色彩風格的轉換,先看下圖:

opencv 把3通道圖像轉成單通道_三行代碼,OpenCV輕松生成19種色彩風格圖像

相關知識點解釋

我隻用了三行代碼就完成上述功能(除去第三行),代碼如下:

1for (int i = 0; i 19; i++) {
2    applyColorMap(image, dst, colormap[i]);
3    imwrite(format("D:/%d.jpg", i), dst);
4}
           

其中colormap是我定義的色彩轉換表,這個來自OpenCV本身,OpenCV支援20中色彩風格變換,我定義的colormap變量如下:

1int colormap[]= {
 2    COLORMAP_AUTUMN,
 3    COLORMAP_BONE,
 4    COLORMAP_JET,
 5    COLORMAP_WINTER,
 6    COLORMAP_RAINBOW,
 7    COLORMAP_OCEAN,
 8    COLORMAP_SUMMER,
 9    COLORMAP_SPRING,
10    COLORMAP_COOL,
11    COLORMAP_PINK,
12    COLORMAP_HOT,
13    COLORMAP_PARULA,
14    COLORMAP_MAGMA,
15    COLORMAP_INFERNO,
16    COLORMAP_PLASMA,
17    COLORMAP_VIRIDIS,
18    COLORMAP_CIVIDIS,
19    COLORMAP_TWILIGHT,
20    COLORMAP_TWILIGHT_SHIFTED
21};
           

函數applyColorMap與參數解釋如下:

void cv::applyColorMap(            InputArray src,         OutputArray dst,         int colormap)
           

參數解釋如下:

src是輸入圖像,支援三通道與單通道

dst是調色之後圖像

colormap表示使用的顔色表标号

支援的顔色表圖示如下:

opencv 把3通道圖像轉成單通道_三行代碼,OpenCV輕松生成19種色彩風格圖像

志合者不以山海為遠

道乖者不以咫尺為近

 推薦閱讀 

OpenCV4系統化學習路線圖-視訊版本!

OpenCV單應性矩陣發現參數估算方法詳解

單應性矩陣應用-基于特征的圖像拼接

OpenCV圖像拼接改進算法之完美拼接

OpenCV | 二值圖像分析的技巧都在這裡

OpenCV二值圖像分析之形态學應用技巧

圖像色彩空間與應用轉換

五分鐘學會C++高效圖表繪制神器調用

沒想到圖像直方圖有這麼多應用場景

基于灰階共生矩陣(GLCM)的圖像紋理分析與提取

OpenCV中一個最容易搞錯的形态學操作

OpenCV實作皮膚表面粗糙度3D顯示

解密 | OpenCV加載圖像大小是有限制的 ?

OpenCV中ORB特征提取與比對

OpenCV SIFT特征算法詳解與使用

HOG特征詳解與行人檢測

opencv 把3通道圖像轉成單通道_三行代碼,OpenCV輕松生成19種色彩風格圖像

繼續閱讀