matlab数字图像处理
1.1 Matlab图像处理基本操作
本文中对于大多数的操作,是对数字图像处理领域中最为著名的“lena”图片进行操作的。原图如下(figure 1):
Figure 1
首先,在MATLAB中显示这幅图片:
I=imread('lena.jpg');
imfinfo('lena.jpg')
imshow(I);
其中,imread()可以读取图片,imfinfo()可以获取图片的信息(Figure 2),imshow()可以显示图片。
Figure 2
从Figure 2中可以看出,该图片格式为png,长宽均为512px,颜色类型为真彩色。
处理后的图片还需要进行保存:
imwrite(I,'lenaSave.jpg');
1.2 图像数字化
使用imread()读取图像后,可以看到,读入的图片I是以一个512*512*3的矩阵进行保存的,即分别是RGB颜色的数字图片。为了方便起见,在本文中,笔者将lena图进行了转换,转换为灰度图,即保存为一个512*512*1的矩阵。
为了完成这样一个步骤,MATLAB中提供了相应的函数:
I1=rgb2gray(I);
imshow(I1);
I1以512*512*1的矩阵形式进行存储。效果如下图(Figure 3):
Figure 3
1.3 直方图
为了显示图像灰度的分布情况,还需要绘制灰度直方图。可以使用如下代码:
figure,imhist(I1);%显示图片灰度值的统计结果直方图
效果如下(Figure 4):
Figure 4
1.4 图像噪声的添加
为了完成多种图像处理的操作和试验,还可以对图片添加噪声。所用函数为imnoise (I, type),该函数中的type可以为5种噪声参数,分别为:'gaussian'(高斯白噪声),'localvar'(与图象灰度值有关的零均值高斯白噪声),'poisson'(泊松噪声),'salt & pepper'(椒盐噪声)和'speckle'(斑点噪声)。
以下为高斯噪声(Figure 5)和椒盐噪声(Figure 6)的代码和效果:
I2=imnoise(I1,'gaussian');
figure,imshow(I2);
Figure 5
I3=imnoise(I1,'salt & pepper');
figure,imshow(I3);
Figure 6
相关阅读
原文contour矩阵的等高线图全页折叠语法contour(Z)contour(Z,n)contour(Z,v)contour(X,Y,Z)contour(X,Y,Z,n)contour(X,Y,Z,v)con
有这样一幅图, 我们想获取其中的连通区域,可以使用以下代码: src_img_name = 'blue_sky_white_clound_002594.jpg';img = imread(src
之前在网上找关于求多项式系数及次数的算法,发现只有系数可以找到,但是对于下面这种函数:f=t^5+t^3-2,利用MATLAB自带的coeffs(f,t)
Matlab绘图强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参
原文 定义: MATLAB帮助文件原文 The 'i' in the 'Nth root of unity' 是虚数单位 调用: 1. Y = fft(y);2. Y = fft(y,N);式