Matlab-Funktionen, die häufig in der digitalen Bildverarbeitung verwendet werden

1.Size()-Funktion

Funktion: Ermitteln Sie die Bildmatrixgröße. Wird im Allgemeinen auf formatierte Bilder angewendet, da die Größe unformatierter (binärer) Bilder beim Lesen bekannt ist.

I=imread(‘test’,’bmp’);%读入图像
[x,y]=size(I)%获取图像大小

Holen Sie sich die Werte von x und y, die Größe des Bildes ist x*y

2.Zeros()-Funktion

Funktion: Nullmatrixfunktion.

I=zeros(100,100)%I为100×100的零矩阵,矩阵中元素全为零。
Imshow(I)%显示一个100×100的黑方块。

Beispiel:

Um ein Bild mit Schwarz außen und Weiß in der Mitte zu erzeugen, können Sie zunächst ein komplett schwarzes Bild erzeugen, dann in der Mitte eine Doppelschleife machen und den Pixelwert 255 oder 1 zuweisen.
I1=zeros(128,128);% erzeugt ein 128×128 komplett schwarzes Bild
für i=38:1:90 für
j=58:1:70
I1(i,j)=255;% oder I1(i,j) =1;
end
end
imshow (I1); %I1 ist die gewünschte Grafik

3.fft2(), ifft2()-Funktion

fft2-Funktion: Führen Sie eine zweidimensionale schnelle Fourier-Transformation durch.
ift2-Funktion: Führen Sie eine zweidimensionale inverse schnelle Fourier-Transformation durch

Y =fft2(X)
%计算矩阵X的二维离散傅里叶变换矩阵Y。X和Y的维数相同。
Y = fft2(×,m,n)
%计算矩阵X的二维离散傅里叶变换矩阵Y。在变换前先将X补零至m×n矩阵。
%如果m或n比A的维数小,则将X截短。Y的维数为m×n。
X = ifft2(Y) 
%如果 Y 是一个多维数组,则 ifft2 计算大于 2 的每个维度的二维逆变换。输出 X 的大小与 Y 相同。
X = ifft2(Y,m,n) 
%在计算逆变换之前截断 Y 或用尾随零填充 Y,以形成 m×n 矩阵。X 也是 m×n。如果 Y 是一个多维数组,ifft2 将根据 m 和 n 决定 Y 的前两个维度的形状。
I=imread('kdy.jpg');
I = rgb2gray(I);      
subplot(1,2,1);
imshow(I)
% 求离散傅立叶频谱
L=fftshift(fft2(I));
subplot(1,2,2);
imshow(log(abs(L)),[8,10])

4.Imhist()-Funktion

Funktion: Histogramm der Bilddaten

[counts,bin] = imhist(I)
%计算灰度图像 I 的直方图。imhist 函数在 counts 中返回直方图计数,在 bin中返回 bin 位置。直方图中 bin 的数量由图像类型确定
imhist(___)
%显示绘制的直方图。如果输入图像是索引图像,则直方图在颜色图 cmap 的颜色条上方显示像素值分布。

5.Histeq()-Funktion

Funktion: Kontrast durch Histogrammausgleich verbessern

I=imread('kdy.jpg')
J = histeq(I) 
%变换灰度图像 I,以使输出灰度图像 J 的直方图具有 64bin 且大致平坦。
imshow(J,[]);

6.Imrotate()-Funktion

Funktion: Bild drehen

J = imrotate(I,angle) 将图像 I 围绕其中心点逆时针方向旋转 angle 度。
J = imrotate(I,angle,method) 使用 method 指定的插值方法旋转图像 I。
I=imread('kdy.jpg')
J = imrotate(I,-1,'bilinear');
figure
imshow(J)
title('Rotated Image')

7.Imnoise()-Funktion

Funktion: Bildrauschen hinzufügen

J = imnoise(I,'gaussian') 
%将方差为 0.01 的零均值高斯白噪声添加到灰度图像 I。
J = imnoise(I,'gaussian',m) 
%添加高斯白噪声,均值为 m,方差为 0.01
J = imnoise(I,'gaussian',m,var_gauss) 
%添加高斯白噪声,均值为 m,方差为 var_gauss。
J = imnoise(I,'salt & pepper') 
%添加椒盐噪声,默认噪声密度为 0.05。这会影响大约 5% 的像素。
J = imnoise(I,'salt & pepper',d) 
%添加椒盐噪声,其中 d 是噪声密度。这会影响大约 d*numel(I) 个像素。

8.Edge()-Funktion

Funktion: Kanten in 2D-Graustufenbildern finden

BW = edge(I) 
%返回二值图像 BW,其中的值 1 对应于灰度或二值图像 I 中函数找到边缘的位置,值 0 对应于其他位置
BW = edge(I,method) 使用 method 指定的边缘检测算法检测图像 I 中的边缘。

9.Xlable(),Ylable()-Funktion

Funktion: Beschriftungen zu X- und Y-Achsen hinzufügen

xlabel(txt) 对当前坐标区或独立可视化的 x 轴加标签。
ylabel(txt) 对当前坐标区或独立可视化的 y 轴加标签。

Guess you like

Origin blog.csdn.net/weixin_52049271/article/details/127816880