opencv之伪彩变换
opencv之偽彩變換
我們在處理紅外圖像時,由于紅外圖像都是16位的數(shù)據(jù),灰度范圍較大,對比度不明顯,經(jīng)常通過直方圖均衡的方式將圖像增強進(jìn)行8位的顯示。
紅外圖像在一定程度上反映了環(huán)境中物體的溫度變化——我們可以認(rèn)為較暗的圖像區(qū)域表示的是溫度較低的區(qū)域(藍(lán)色來表示),更加明亮的區(qū)域認(rèn)為是溫度較高的區(qū)域(紅色來表示),進(jìn)而將灰度圖轉(zhuǎn)變?yōu)椴噬珨?shù)據(jù)便于人類的視覺系統(tǒng)進(jìn)行可視化。
用偽彩色更好地顯示數(shù)據(jù)的其他例子是高度、壓力、密度、濕度等等。
applyColorMap偽彩色函數(shù)
OpenCV定義了12種colormap(色度圖),可以應(yīng)用于8位的灰度圖像,使用函數(shù)applyColorMap產(chǎn)生偽彩色圖像。
applyColorMap定義
void applyColorMap(InputArray src, OutputArray dst, int colormap); // InputArray src: 輸入原始圖像(只支持8位灰度圖像) // OutputArray dst: 輸出結(jié)果偽彩色圖像 // int colormap: 色度圖的種類applyColorMap用法
using namespace cv; Mat im_gray = imread("pluto.jpg", IMREAD_GRAYSCALE); Mat im_color; applyColorMap(im_gray, im_color, COLORMAP_JET);下圖顯示了一個關(guān)于colormap(色度圖)的視覺表示和COLORMAP_*的數(shù)值,左邊的顏色模式表示較低的灰度值,右邊的則表示較高的灰度值。
LUT顏色查找表
**1、定義一個映射:**色度圖是從0-255值256種顏色映射。在OpenCV,我們需要創(chuàng)建一個大小為256×1的8位彩色圖像來存儲256個顏色值。
**2、對照顏色使用查找表:**在OpenCV,你可以申請一個信息存儲在一個256×1的彩色圖像使用查找表LUT圖像。
LUT定義
void LUT(InputArray src, InputArray lut, OutputArray dst); // src表示的是輸入圖像(可以是單通道也可是3通道) // lut表示查找表(查找表也可以是單通道,也可以是3通道,如果輸入圖像為單通道,那查找表必須為單通道,若輸入圖像為3通道,查找表可以為單通道,也可以為3通道,若為單通道則表示對圖像3個,通道都應(yīng)用這個表,若為3通道則分別應(yīng)用 ) // dst表示輸出圖像LUT用法
#include<highgui\highgui.hpp> using namespace cv; int main() {uchar lutData[256 * 3];int j = 0;for (int i = 0; i<256; i++){if (i <= 100){lutData[i * 3] = 0;lutData[i * 3 + 1] = 50;lutData[i * 3 + 2] = 50;}if (i > 100 && i <= 200){lutData[i * 3] = 100;lutData[i * 3 + 1] = 10;lutData[i * 3 + 2] = 200;}if (i > 200){lutData[i * 3] = 255;lutData[i * 3 + 1] = 200;lutData[i * 3 + 2] = 100;}}Mat lut(1, 256, CV_8UC3, lutData);Mat a = imread("test.jpg", CV_LOAD_IMAGE_ANYCOLOR);Mat b;namedWindow("anjis", CV_WINDOW_AUTOSIZE);namedWindow("anjis1", CV_WINDOW_AUTOSIZE);imshow("anjis", a);LUT(a, lut, b);imshow("anjis1", b);waitKey(); }附錄
0 COLORMAP_AUTUMN
1 COLORMAP_BONE
2 COLORMAP_JET
3 COLORMAP_WINTER
4 COLORMAP_RAINBOW
5 COLORMAP_OCEAN
6 COLORMAP_SUMMER
7 COLORMAP_SPRING
8 COLORMAP_COOL
9 COLORMAP_HSV
10 COLORMAP_PINK
11 COLORMAP_HOT
總結(jié)
以上是生活随笔為你收集整理的opencv之伪彩变换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java零基础学习记录09(飞机躲避炮弹
- 下一篇: elasticsearch6.5.4破解