天天看點

圖像處理基礎---RGB圖 灰階圖 索引圖 調色闆

(1)二進制圖

在二進制圖中,像素的取值為兩個離散數值0或1中的一個,0代表黑色,1代表白色

 A=[0 0 1;1 1 0; 0 0 1];

>> imshow(A,'InitialMagnification','fit')          %調整合适的視窗顯示A。

圖像處理基礎---RGB圖 灰階圖 索引圖 調色闆

(2)索引圖

索引圖像包括一個資料矩陣X,一個顔色映像矩陣Map。其中Map是一個包含三列、若幹行的資料陣列,其中每個元素的值均為[0, 1]之間的雙精度浮點型資料。Map矩陣的每一行分别表示紅色、綠色和藍色的顔色值。在MATLAB中,索引圖像是從像素值到顔色映射表值的“直接映射”。像素顔色由資料矩陣X作為索引指向矩陣Map進行索引,例如,值1指向矩陣Map中的第一行,值2指向第二行,以此類推。

索引圖像的作用就是體積小,友善傳輸,隻需要把索引表傳輸過去,接收方用對應的RGB顔色表還原就行。

(3)灰階圖

灰階圖通常由一個unit8、unit16、單精度類型或者雙精度類型的數組描述,其實質是一個資料矩陣I,該矩陣中的資料均代表了一定範圍内的灰階級,每一個元素與圖像的一個像素點相對應,通常0代表黑色,1、255或65635(為資料矩陣的取值範圍上限)代表白色。

(4)RGB圖

RGB圖像又稱為真彩圖像,它使用R、G、B 3個分量辨別一個像素的顔色,R、G、B分别代表紅、綠、藍3種不同的基礎顔色,通過3基色可以合成出任意顔色。是以對一個尺寸nxm的彩色圖像來說,MATLAB中則存儲為一個nxmx3 的多元資料數組,其中數組中的元素定義了圖像中每一個像素的紅、綠、藍顔色值。圖形檔案格式把RGB圖像存儲為24位的圖像,紅、綠、藍分量分别占用8位,因而理論上可以有2^24種顔色。

1 clear;clc;
 2 A=imread('D:\mycode\matlab-test\0.jpg');
 3 subplot(2,2,1);
 4 imshow(A);
 5 title('原圖');
 6 
 7 %RGB圖轉化為灰階圖
 8 l=rgb2gray(A);
 9 subplot(2,2,2);
10 imshow(l);
11 title('灰階圖');
12 
13 %灰階圖轉化為索引圖
14 [X,map]=gray2ind(l);
15 subplot(2,2,3);
16 imshow(X);
17 title('灰階圖轉化為索引圖的X矩陣');
18 
19 %灰階圖轉化為索引圖的X矩陣
20 subplot(2,2,4);
21 imshow(map);
22 title('灰階圖轉化為索引圖的調色闆圖map');      
圖像處理基礎---RGB圖 灰階圖 索引圖 調色闆
1 %---------------------------------------------------
 2 
 3 clear;clc;
 4 B=imread('D:\mycode\matlab-test\1.jpg');
 5 subplot(2,2,1);
 6 imshow(B);
 7 title('原圖');
 8 
 9 %RGB圖轉化為索引圖
10 [X,map]=rgb2ind(B,256);
11 subplot(2,2,2);
12 imshow(X);
13 title('RGB圖轉化為索引圖中的X矩陣');
14 
15 %索引圖轉化為索引圖的X矩陣
16 subplot(2,2,3);
17 imshow(map);
18 title('RGB圖轉化為索引圖中的調色闆map');
19 
20 %索引圖轉化為灰階圖
21 l=ind2gray(X,map);
22 subplot(2,2,4);
23 imshow(l);
24 title('索引圖轉化為灰階圖');