之彩色圖像的讀取及RGB的數值讀取

Matlab 讀取彩色圖像是三維數組,圖像的座標是以左上角爲(0,0)點,彩色圖像形成的三維數組中前兩位表示圖像的像素點的座標,第三位爲1時表示是圖像中R的值,爲2時表示G的值,爲3時表示B的值。故若要對一個彩色圖像分別讀取R,G,B時,採用下述代碼即可。

% 2017-3-14 
% write by Mr.Han
clc;
clear;
%讀入原圖像及獲取大小
image = imread('1.jpg');
%   分別讀取RGB
image_r=image(:,:,1);
image_g=image(:,:,2);
image_b=image(:,:,3);
%  測試RGB輸出
subplot(2,2,1),imshow(image_r),title('Red component');  
subplot(2,2,2),imshow(image_g),title('green component');  
subplot(2,2,3),imshow(image_g),title('blue component');  
subplot(2,2,4),imshow(image),title('original image');  

對上述結果進行驗證,分別讀取圖像的RGB的值,並取原圖像左上角10X10的值。代碼如下:

% 2017-3-14 
% write by Mr.Han
clc;
clear;
%讀入原圖像
image = imread('1.jpg');
%   分別讀取RGB
image_r=image(:,:,1);
image_g=image(:,:,2);
image_b=image(:,:,3);
%  測試RGB輸出
subplot(2,2,1),imshow(image_r),title('Red component');  
subplot(2,2,2),imshow(image_g),title('green component');  
subplot(2,2,3),imshow(image_g),title('blue component');  
subplot(2,2,4),imshow(image),title('original image');  
%取原圖像部分數據
partdate(:,:,:)=image(1:10,1:10,:);%取最左上角10X10的原始圖像數據
通過查看變量數據進行驗證:
partdata中可以看到分別用val(:,:,1),val(:,:,2),val(:,:,3)來顯示R,G,B的值。

我們再查看image_r左上10X10的值來驗證val(:,:,1)


同樣對比image_g,image_b的左上10X10與partdata中val(:,:,2),val(:,:,3)



















發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章