Matlab中的彩色圖及colormap(轉載整理)Headmap
Matlab中的彩色圖及colormap(轉載整理)
colormap功能簡介
設定和獲取當前的色圖。
使用方法
色圖是一個m*3的實數矩陣,實數的大小在0到1.0之間,每一行是定義一種顏色的一個RGB向量。顏色圖的第k行定義第k種顏色,其中 map(k,:)=[r(k) g(k) b(k)]定義為紅、綠、藍亮度。 Matlab中文論壇 1.colormap(map) 設定顏色圖為矩陣map。如果map中的任何值在區間[0,1]之外,MATLAB返回錯誤:Colormap must have values in [0,1]。2.colormap('default')
將當前的顏色圖設定為預設的顏色圖。3.cmap=colormap
在color目錄中的M檔案產生多種色圖。每一個M檔案將顏色圖的大小作為一個變數。例如: colormap(hsv(128)) 建立一個hsv顏色圖,具有128種顏色。如果使用者不指定大小,MATLAB建立與當前色圖大小相同的色圖。 支援的色圖 下面將舉例描述MATLAB內建的色圖。使用者除了可以程式設計指定MATLAB內建的色圖,還可以使用Plot Tools圖形用具介面的Figure Properties面板中的Colormap選單來選擇一種色圖。
.autumn 從紅色平滑變化到橙色,然後到黃色; .bone 具有較高的藍色成分的灰度色圖。該色圖用於對灰度圖新增電子的檢視。 .colorcube 儘可能多地包含在RGB顏色空間中的正常空間的顏色,試圖提供更多級別的灰色、純紅色、純綠色和純藍色。《Simulink與訊號處理》 .cool 包含青綠色和品紅色的陰影色。從青綠色平滑變化到品紅色。 .copper 從黑色平滑過渡到亮銅色。 .flag 包含紅色、白色、綠色和黑色。 .gray 返回線性灰度色圖。 .hot 從黑色平滑過度到紅色、橙色和黃色的背景色,然後到白色。 book.iLoveMatlab.cn
=======================================================
1.控制著色方式
matlab提供了函式colormap控制色方式,該函式的語法格式是:
colormap(map)
colormap('default')
colormap('stylename')
特別說明:map是一個3列矩陣,其元素數值定義在區間[0,1]。矩陣的每行元素表示1一個真色彩向量,即紅、綠、藍3基色的係數。default用於設定當前彩色圖為預設值。stylename表示matlab提供的預定義的色圖樣式名稱,具體取值如下所示:
matlab中預定義的色圖樣式
色圖名稱 說明 色圖名稱 說明
autumn 平滑的紅、橘黃、黃色 jet 藍色為頭、紅色為尾的飽和色
bone 高藍色灰度漸進 lines 多線繪製時的配置色
colorcube 三純色濃淡交替 pink 淡粉紅色圖
cool 青色、平紅色濃淡交替 prism 光譜交錯色圖
copper 純銅色線性 spring 青黃濃淡色圖
flag 紅、白、藍、黑色交錯圖 summer 綠黃濃淡色圖
gray 灰度漸進 winter 藍綠濃淡色圖
hot 黑、紅、黃、白色濃淡交錯 white 純白色色圖
hsv 兩端為紅色的飽和色
下面給出色圖著色控制的例子
load spine; %匯入影象資料
figure; image(x);colormap bone;%顯示影象,並設定著色方案為bone
figure; image(x);colormap('hot');%顯示影象,並設定著色方案為hot
特別提醒: 函式colormap將視窗內所有的圖形著色,因此需要在不同圖形的視窗中才能得到不同的著色方案。
2.圖片亮度的控制
函式brighten可以實現對圖片明暗的控制,語法格式為:
brighten(beta);
引數說明:beta是一個定義於[-1,1]區間內的數值,其中beta在[0,1]範圍內的色圖較亮.
下面的例子可以測試明暗的差別:
figure;image(x);colormap bone;brighten(0.6)
figure;image(x);colormap bone;brighten(-0.6)
(1)http://blog.sciencenet.cn/blog-360646-465608.html
(2)http://blog.sciencenet.cn/blog-360646-465626.html