OpenCV 4.13.0
開源計算機視覺庫 (Open Source Computer Vision)
正在載入...
正在搜尋...
未找到匹配項
OpenCV 中的顏色對映

詳細說明

人類的感知能力不適合觀察灰度影像中的細微變化。人眼對觀察顏色之間的變化更敏感,因此您通常需要重新著色灰度影像以獲得一些線索。OpenCV 現在提供了各種顏色對映,以增強您計算機視覺應用程式的視覺化效果。

在 OpenCV 中,您只需呼叫 applyColorMap 即可在給定影像上應用顏色對映。下面的示例程式碼從命令列讀取影像路徑,在其上應用 Jet 顏色對映並顯示結果。

#include <opencv2/core.hpp>
using namespace cv;
#include <iostream>
using namespace std;
int main(int argc, const char *argv[])
{
// 我們需要一張輸入影像。(可以是灰度圖或彩色圖)
if (argc < 2)
{
cerr << "我們需要一張影像來處理。請執行:colorMap [影像路徑]" << endl;
return -1;
}
Mat img_in = imread(argv[1]);
if(img_in.empty())
{
cerr << "示例影像(" << argv[1] << ")為空。請調整您的路徑,使其指向有效的輸入影像!" << endl;
return -1;
}
// 儲存顏色對映後的影像
Mat img_color;
// 應用顏色對映
applyColorMap(img_in, img_color, COLORMAP_JET);
// 顯示結果
imshow("colorMap", img_color);
waitKey(0);
return 0;
}
n 維密集陣列類
定義於 mat.hpp:840
bool empty() const
如果陣列沒有元素,則返回 true。
void imshow(const String &winname, InputArray mat)
在指定視窗中顯示影像。
int waitKey(int delay=0)
等待按鍵操作。
void applyColorMap(InputArray src, OutputArray dst, int colormap)
在給定影像上應用等同於 GNU Octave/MATLAB 的顏色對映表。
int main(int argc, char *argv[])
定義 highgui_qt.cpp:3
定義 core.hpp:107
STL 名稱空間。
另請參閱
顏色對映型別

列舉

enum  cv::ColormapTypes {
  cv::COLORMAP_AUTUMN = 0 ,
  cv::COLORMAP_BONE = 1 ,
  cv::COLORMAP_JET = 2 ,
  cv::COLORMAP_WINTER = 3 ,
  cv::COLORMAP_RAINBOW = 4 ,
  cv::COLORMAP_OCEAN = 5 ,
  cv::COLORMAP_SUMMER = 6 ,
  cv::COLORMAP_SPRING = 7 ,
  cv::COLORMAP_COOL = 8 ,
  cv::COLORMAP_HSV = 9 ,
  cv::COLORMAP_PINK = 10 ,
  cv::COLORMAP_HOT = 11 ,
  cv::COLORMAP_PARULA = 12 ,
  cv::COLORMAP_MAGMA = 13 ,
  cv::COLORMAP_INFERNO = 14 ,
  cv::COLORMAP_PLASMA = 15 ,
  cv::COLORMAP_VIRIDIS = 16 ,
  cv::COLORMAP_CIVIDIS = 17 ,
  cv::COLORMAP_TWILIGHT = 18 ,
  cv::COLORMAP_TWILIGHT_SHIFTED = 19 ,
  cv::COLORMAP_TURBO = 20 ,
  cv::COLORMAP_DEEPGREEN = 21
}
 GNU Octave/MATLAB 等效顏色對映。更多...
 

函式

void cv::applyColorMap (InputArray src, OutputArray dst, InputArray userColor)
 在給定影像上應用使用者自定義的顏色對映表。
 
void cv::applyColorMap (InputArray src, OutputArray dst, int colormap)
 在給定影像上應用等同於 GNU Octave/MATLAB 的顏色對映表。
 

列舉型別文件 (Enumeration Type Documentation)

◆ 顏色對映型別

#include <opencv2/imgproc.hpp>

GNU Octave/MATLAB 等效顏色對映。

列舉值 (Enumerator)
COLORMAP_AUTUMN 
Python: cv.COLORMAP_AUTUMN
autumn
COLORMAP_BONE 
Python: cv.COLORMAP_BONE
bone
COLORMAP_JET 
Python: cv.COLORMAP_JET
jet
COLORMAP_WINTER 
Python: cv.COLORMAP_WINTER
winter
COLORMAP_RAINBOW 
Python: cv.COLORMAP_RAINBOW
rainbow
COLORMAP_OCEAN 
Python: cv.COLORMAP_OCEAN
ocean
COLORMAP_SUMMER 
Python: cv.COLORMAP_SUMMER
summer
COLORMAP_SPRING 
Python: cv.COLORMAP_SPRING
spring
COLORMAP_COOL 
Python: cv.COLORMAP_COOL
cool
COLORMAP_HSV 
Python: cv.COLORMAP_HSV
HSV
COLORMAP_PINK 
Python: cv.COLORMAP_PINK
pink
COLORMAP_HOT 
Python: cv.COLORMAP_HOT
hot
COLORMAP_PARULA 
Python: cv.COLORMAP_PARULA
parula
COLORMAP_MAGMA 
Python: cv.COLORMAP_MAGMA
magma
COLORMAP_INFERNO 
Python: cv.COLORMAP_INFERNO
inferno
COLORMAP_PLASMA 
Python: cv.COLORMAP_PLASMA
plasma
COLORMAP_VIRIDIS 
Python: cv.COLORMAP_VIRIDIS
viridis
COLORMAP_CIVIDIS 
Python: cv.COLORMAP_CIVIDIS
cividis
COLORMAP_TWILIGHT 
Python: cv.COLORMAP_TWILIGHT
twilight
COLORMAP_TWILIGHT_SHIFTED 
Python: cv.COLORMAP_TWILIGHT_SHIFTED
twilight shifted
COLORMAP_TURBO 
Python: cv.COLORMAP_TURBO
turbo
COLORMAP_DEEPGREEN 
Python: cv.COLORMAP_DEEPGREEN
deepgreen

函式文件 (Function Documentation)

◆ applyColorMap() [1/2]

void cv::applyColorMap ( InputArray src,
OutputArray dst,
InputArray userColor )
Python
cv.applyColorMap(src, colormap[, dst]) -> dst
cv.applyColorMap(src, userColor[, dst]) -> dst

#include <opencv2/imgproc.hpp>

在給定影像上應用使用者自定義的顏色對映表。

引數
src源影像,灰度圖或彩色圖,型別為 CV_8UC1 或 CV_8UC3。如果為 CV_8UC3,則內部使用 cv::COLOR_BGR2GRAY 生成 CV_8UC1 影像。
dst結果是經過顏色對映處理的源影像,通道數與 userColor 相同。注意:對 dst 呼叫了 Mat::create
userColor要應用的大小為 256 的 CV_8UC1 或 CV_8UC3 型別的顏色對映

◆ applyColorMap() [2/2]

void cv::applyColorMap ( InputArray src,
OutputArray dst,
int colormap )
Python
cv.applyColorMap(src, colormap[, dst]) -> dst
cv.applyColorMap(src, userColor[, dst]) -> dst

#include <opencv2/imgproc.hpp>

在給定影像上應用等同於 GNU Octave/MATLAB 的顏色對映表。

引數
src源影像,灰度圖或彩色圖,型別為 CV_8UC1 或 CV_8UC3。如果為 CV_8UC3,則內部使用 cv::COLOR_BGR2GRAY 生成 CV_8UC1 影像。
dst結果是經過顏色對映處理的源影像。注意:對 dst 呼叫了 Mat::create
colormap要應用的大小為 256 的 CV_8UC1 或 CV_8UC3 型別的顏色對映,請參閱 ColormapTypes