1. 程式人生 > >Matlab中的彩色圖及colormap(轉載整理)Headmap

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

返回當前的顏色圖。返回的值都在區間[0,1]內。  指定色圖

  在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

  .hsv 從紅色,變化到黃色、綠色、青綠色、品紅色,返回到紅色。 .jet 從藍色到紅色,中間經過青綠色、黃色和橙色。 .line 產生由座標軸的ColorOrder屬性產生的顏色以及灰色的背景色的色圖。 .pink 柔和的桃紅色。 .prism 重複這六種顏色:紅色、橙色、黃色、綠色、藍色和紫色。 .spring 包含品紅色和黃色的陰影顏色。 .summer 包含綠色和黃色的陰影顏色。 .white 全白的單色色圖。 Matlab中文論壇  .winter 包含藍色和綠色的陰影色。

=======================================================

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