日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OpenCV伪彩色applyColorMap函数

發(fā)布時間:2024/9/21 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV伪彩色applyColorMap函数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

? ? ? ?假如我們想在圖片上顯示不同區(qū)域的溫度,我們可以把紅外圖像上的溫度數(shù)據(jù)疊加為灰度圖像,暗的區(qū)域代表冷的溫度,更明亮的區(qū)域代表較熱的溫度,但是這樣的呈現(xiàn)不能給人類視覺帶來直覺的感受,不能更好地感知顏色的變化。如果我們用不同的顏色代表不同的溫度,比如用藍色表示冷的溫度,紅的表示熱的溫度,能夠帶來更好的感知。為了更好地展示數(shù)據(jù),我們把數(shù)據(jù)轉換為彩色數(shù)據(jù)來實現(xiàn)可視化,用偽彩色更好地顯示溫度、壓力、濕度等數(shù)據(jù)。

OpenCV提供了偽彩色函數(shù)applyColorMap來實現(xiàn)偽彩色功能。

原型1

CV_EXPORTS_W void applyColorMap(InputArray src, OutputArray dst, int colormap);

功能

把給定的圖像轉換為偽彩色圖像。

參數(shù)釋義:

  • 參數(shù)1 src 輸入源圖像,灰度圖或者CV_8UC1、CV_8UC3類型的圖。

  • 參數(shù)2 dst 轉換后的偽彩色圖,注意:dst調用了Mat::create

  • 參數(shù)3 colormap 偽彩色圖像類型 參考ColormapTypes

原型2

CV_EXPORTS_W void applyColorMap(InputArray src, OutputArray dst, InputArray userColor);

功能

把給定的圖像轉換為偽彩色圖像。

參數(shù)釋義:

  • 參數(shù)1 src 輸入源圖像,灰度圖或者CV_8UC1、CV_8UC3類型的圖。

  • 參數(shù)2 dst 轉換后的偽彩色圖,注意:dst調用了Mat::create

  • 參數(shù)3 userColor 用戶定義的類型,適用于類型:CV_8UC1 或者 CV_8UC3并且大小為256

示例源碼

#include <iostream> #include <opencv2/opencv.hpp> ? int main() {cv::Mat image = cv::imread("D:\\OpenCVtest\\images\\juice.png");cv::Mat imageMapAutum;cv::Mat imageMapBone;cv::Mat imageMapJet;cv::Mat imageMapCIVIDIS;cv::Mat imageMapCOOL;cv::Mat imageMapDEEPGREEN;cv::Mat imageMapHOT;cv::Mat imageMapHSV;cv::Mat imageMapINFERNO;cv::Mat imageMapMAGMA;cv::Mat imageMapOCEAN;cv::Mat imageMapPARULA;cv::Mat imageMapPINK;cv::Mat imageMapPLASMA;cv::Mat imageMapRAINBOW;cv::Mat imageMapSPRING;cv::Mat imageMapSUMMER;cv::Mat imageMapTURBO;cv::Mat imageMapTWILIGHT;cv::Mat imageMapTWILIGHT_SHIFTED;cv::Mat imageMapVIRIDIS;cv::Mat imageMapWINTER; ?cv::applyColorMap(image, imageMapAutum, cv::COLORMAP_AUTUMN);cv::applyColorMap(image, imageMapBone, cv::COLORMAP_BONE); ?cv::applyColorMap(image, imageMapJet, cv::COLORMAP_JET);cv::applyColorMap(image, imageMapCIVIDIS, cv::COLORMAP_CIVIDIS);cv::applyColorMap(image, imageMapCOOL, cv::COLORMAP_COOL);cv::applyColorMap(image, imageMapDEEPGREEN, cv::COLORMAP_DEEPGREEN);cv::applyColorMap(image, imageMapHOT, cv::COLORMAP_HOT);cv::applyColorMap(image, imageMapHSV, cv::COLORMAP_HSV);cv::applyColorMap(image, imageMapINFERNO, cv::COLORMAP_INFERNO);cv::applyColorMap(image, imageMapMAGMA, cv::COLORMAP_MAGMA);cv::applyColorMap(image, imageMapOCEAN, cv::COLORMAP_OCEAN);cv::applyColorMap(image, imageMapPARULA, cv::COLORMAP_PARULA);cv::applyColorMap(image, imageMapPINK, cv::COLORMAP_PINK);cv::applyColorMap(image, imageMapPLASMA, cv::COLORMAP_PLASMA);cv::applyColorMap(image, imageMapRAINBOW, cv::COLORMAP_RAINBOW);cv::applyColorMap(image, imageMapSPRING, cv::COLORMAP_SPRING);cv::applyColorMap(image, imageMapSUMMER, cv::COLORMAP_SUMMER);cv::applyColorMap(image, imageMapTURBO, cv::COLORMAP_TURBO);cv::applyColorMap(image, imageMapTWILIGHT, cv::COLORMAP_TWILIGHT);cv::applyColorMap(image, imageMapTWILIGHT_SHIFTED, cv::COLORMAP_TWILIGHT_SHIFTED);cv::applyColorMap(image, imageMapVIRIDIS, cv::COLORMAP_VIRIDIS);cv::applyColorMap(image, imageMapWINTER, cv::COLORMAP_WINTER);?cv::imshow("image", image);cv::imshow("Autum", imageMapAutum);cv::imshow("Bone", imageMapBone);cv::imshow("Jet", imageMapJet);cv::imshow("CIVIDIS", imageMapCIVIDIS);cv::imshow("COOL", imageMapCOOL);cv::imshow("DEEPGREEN", imageMapDEEPGREEN);cv::imshow("HOT", imageMapHOT);cv::imshow("HSV", imageMapHSV);cv::imshow("INFERNO", imageMapINFERNO);cv::imshow("MAGMA", imageMapMAGMA);cv::imshow("OCEAN", imageMapOCEAN);cv::imshow("PARULA", imageMapPARULA);cv::imshow("PINK", imageMapPINK);cv::imshow("PLASMA", imageMapPLASMA);cv::imshow("RAINBOW", imageMapRAINBOW);cv::imshow("SPRING", imageMapSPRING);cv::imshow("SUMMER", imageMapSUMMER);cv::imshow("TURBO", imageMapTURBO);cv::imshow("TWILIGHT", imageMapTWILIGHT);cv::imshow("TWILIGHT_SHIFTED", imageMapTWILIGHT_SHIFTED);cv::imshow("VIRIDIS", imageMapVIRIDIS);cv::imshow("WINTER", imageMapWINTER);std::cout << ""; ?cv::waitKey(0); }

運行結果如下圖所示,效果供各位參考使用:

?

?

?

?

?

?

?

?

?

參考

ColormapTypes枚舉定義

?

總結

以上是生活随笔為你收集整理的OpenCV伪彩色applyColorMap函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。