Matlab圖像處理基礎知識


Matlab圖像處理基礎知識

Matlab的圖片以矩陣的形式存儲,矩陣的行列值為圖片的行列的色彩值。

1圖像表達方式:

  1. 像素索引

圖像被視為離散單元。如使用I(2,2)可以獲取第二行第二列的像素值

 

 

 

  1. 空間位置:

使用連續值,數據存儲位置為坐標中點,存儲位置可以非默認

 

 

 

A=magic(5);
x=[19.5,23.5];
y=[8.0,12.0];
image(A,'XData',x,'YData',y),axis image,colormap(jet(25))

%image('XData',x,'YData',y,'CData',C) x,y指定橫縱坐標,C為每個x,y坐標點的顏色值
%axis 設置坐標軸
%colormap 查看並設置當前顏色圖
%jet 25是條目數,將RGB顏色方案平分成25種顏色

 

 

 

2Malatb圖像類型:

二進制圖

像素的取值只有0和1,分別代表黑與白。

索引圖(偽彩色)

索引圖中某一像素的值代表調色板中能代表絕大多數的255中顏色之一,調色板大小為256×3。假如索引值為5,那么使用調色板第五行的三個數值代表顏色。

灰度圖

灰度圖中某一像素的值從0-255代表從黑到白的255種顏色層次。只能表現為灰色圖像。

RGB圖(真彩色)

在matlab中為n×m×3的多維數組,n,m,分別代表像素位置,第三維的三個數字代表RGB顏色的值。

RGB=reshape(ones(64,1)*reshape(jet(64),1,192),[64,64,3]);
R=RGB(:,:,1);
G=RGB(:,:,2);
B=RGB(:,:,3);
figure
subplot(141);imshow(R)
subplot(142);imshow(G)
subplot(143);imshow(B)
subplot(144);imshow(RGB)

%reshape:重構數組,將jet(64)中的RGB顏色分離,此時的RGB參數中存儲着64中顏色的RGB值
%此時的RGB中第三維的第1,2,3個數字代表R,G,B數值

 

3Matlab圖像類型轉換:

       圖像顏色篩選轉換

X=dither(RGB,map):通過篩選算法將真彩色圖像RGB按指定的顏色圖map轉換成索引色圖像X

X = dither(RGB,map,Qm,Qe) 還指定要沿每個顏色軸為逆向顏色圖使用的量化位數 Qm,以及用於顏色空間誤差計算的量化位數 Qe。

BW = dither(I) 通過抖動將灰度圖像 I 轉換為二值(黑白)圖像 BW。

 

asahi=imread('asahi.jpg');

imshow(asahi)

%map=jet(255);

%asahi_dither=dither(asahi,map);

%imshow(asahi_dither)

 

原圖:

 

 

篩選轉換

asahi=imread('asahi.jpg');

%imshow(asahi)

map=jet(255);

asahi_dither=dither(asahi,map);

imshow(asahi_dither)

 

 

灰度圖轉換為索引圖:

[X,map]=gray2ind(I,n): 根據指定灰度級數n和顏色圖map轉換成灰度圖X,n默認值為64

索引圖轉換為灰度圖:

I=ind2gray(X,map):將索引圖X轉換成灰度圖I,丟棄圖像色度和飽和度,僅保留亮度信息。

RGB圖轉換成灰度圖:

X=imread('asahi.jpg');

imshow(rgb2gray(X))

 

RGB圖轉換成索引圖:

[X,cmap] = rgb2ind(RGB,Q) 使用具有 Q 種量化顏色的最小方差量化法並加入抖動,將 RGB 圖像轉換為索引圖像 X,關聯顏色圖為 cmap。

[X,cmap] = rgb2ind(RGB,tol) 使用均勻量化法並加入抖動,將 RGB 圖像轉換為索引圖像,容差為 tol。

X = rgb2ind(RGB,inmap) 使用逆顏色圖算法並加入抖動,將 RGB 圖像轉換為索引圖像,指定的顏色圖為 inmap。

___ = rgb2ind(___,dithering) 啟用或禁用抖動。

 

[Y,map]=rgb2ind(imread('asahi.jpg'),12);

figure

imagesc(Y)

colormap(map)

imshow(Y,map)

 

索引圖轉換成RGB圖:

RGB=ind2rgb(X,map):將矩陣X及相應的調色板map轉換成真彩色圖像RGB

閾值法從灰度圖產生索引圖:

X=grayslice(I,n):將灰度圖均勻量化為n個等級,轉換成偽彩色圖像X

將矩陣轉換成灰度圖像:

mat2gray函數

I=mat2gray(X,[Xmin,Xmax]):指定區間Xmin-Xmax代表灰度0-1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM