2010-08-12 194 views
4

對於顏色映射,您如何突出一些調光器功能的亮度?matlab中的顏色映射

+0

類似的問題:[內置在色彩映射表在Matlab(http://stackoverflow.com/questions/2785717/built-in-colormaps-in-matlab) – Amro 2011-11-07 20:41:51

回答

3

可以使用BRIGHTEN功能提亮整個顏色表,從而增亮調光功能,以及:

brighten(0.5); %# Brightens the current colormap 

%# OR... 

newMap = brighten(oldMap,0.5); %# Brighten the colormap in variable oldMap 
colormap(newMap);    %# Update the current colormap to newMap 

如果你想照亮調光功能(即只部分的色彩地圖),你必須首先決定如何將什麼歸類爲「調光器」功能。 ;)

+1

1另一個有趣的功能對比:給予圖像,它創建一個灰度色彩圖,增強對比度http://www.mathworks.com/access/helpdesk/help/techdoc/ref/contrast.html – Amro 2010-08-12 05:50:54

3

如果你有一個灰度色彩圖,灰度值線性地映射到強度。爲了增強暗淡特徵,您希望將低亮度映射到比高亮度更大範圍的灰度值。換句話說,您可以拉伸低強度並壓縮高強度。這可以通過調整色彩地圖的gamma來完成。當然,您也可以對RGB色彩圖進行伽馬校正。

如果有圖像處理工具箱,該Matlab的命令是IMADJUST,它使用這樣的:

newColormap = imadjust(oldColormap,[low_in; high_in],[low_out; high_out],gamma); 

新顏色表中的範圍內low_in/high_in的值映射到範圍low_out/high_out - 所以你很可能想要使用色彩地圖的最小/最大值 - 而伽馬是你想要設置爲> 1。

另一種強調暗淡特徵的快速方法是顯示圖像的平方根(或者對於更明顯的效果,對數)。

imshow(sqrt(img),[]) 
+0

+1:IMADJUST是一個不錯的選擇,當然假設你有圖像處理工具箱。 ;) – gnovice 2010-08-12 16:17:17

+0

@gnovice:謝謝,我澄清了解決方案 - 儘管我個人傾向於使用平方根或日誌來強調。它速度更快,需要更少的擺弄。 – Jonas 2010-08-12 16:39:37