matlab图像命令

发布 2022-09-20 20:40:28 阅读 6257

matlab图像命令大全。

图像增强。1. 直方图均衡化的 matlab 实现。

1.1 imhist 函数。

功能:计算和显示图像的色彩直方图。

格式:imhist(i,n)

imhist(x,map)

说明:imhist(i,n) 其中,n 为指定的灰度级数目,缺省值为256;imhist(x,map) 就算和显示索引色图像 x 的直方图,map 为调色板。用。

stem(x,counts) 同样可以显示直方图。

1.2 imcontour 函数。

功能:显示图像的等灰度值图。

格式:imcontour(i,n),imcontour(i,v)

说明:n 为灰度级的个数,v 是有用户指定所选的等灰度级向量。

1.3 imadjust 函数。

功能:通过直方图变换调整对比度。

格式:j=imadjust(i,[low high],[bottom top],gamma)

newmap=imadjust(map,[low high],[bottom top],gamma)

说明:j=imadjust(i,[low high],[bottom top],gamma) 其中,gamma 为校正量r,[low high] 为原图像中要变换的灰度范围,[bottom top]

指定了变换后的灰度范围;newmap=imadjust(map,[low high],[bottom top],gamma) 调整索引色图像的调色板 map 。此时若 [low high] 和。

bottom top] 都为2×3的矩阵,则分别调整 r、g、b 3个分量。

1.4 histeq 函数。

功能:直方图均衡化。

格式:j=histeq(i,hgram)

j=histeq(i,n)

j,t]=histeq(i,..

newmap=histeq(x,map,hgram)

newmap=histeq(x,map)

new,t]=histeq(x,..

说明:j=histeq(i,hgram) 实现了所谓“直方图规定化”,即将原是图象 i 的直方图变换成用户指定的向量 hgram 。hgram 中的每一个元素。

都在 [0,1] 中;j=histeq(i,n) 指定均衡化后的灰度级数 n ,缺省值为 64;[j,t]=histeq(i,..返回从能将图像 i 的灰度直方图变换成。

图像 j 的直方图的变换 t ;newmap=histeq(x,map) 和 [new,t]=histeq(x,..是针对索引色图像调色板的直方图均衡。

2. 噪声及其噪声的 matlab 实现。

imnoise 函数。

格式:j=imnoise(i,type)

j=imnoise(i,type,parameter)

说明:j=imnoise(i,type) 返回对图像 i 添加典型噪声后的有噪图像 j ,参数 type 和 parameter 用于确定噪声的类型和相应的参数。

3. 图像滤波的 matlab 实现。

3.1 conv2 函数。

功能:计算二维卷积。

格式:c=conv2(a,b)

c=conv2(hcol,hrow,a)

c=conv2(..shape')

说明:对于 c=conv2(a,b) ,conv2 的算矩阵 a 和 b 的卷积,若 [ma,na]=size(a), mb,nb]=size(b), 则 size(c)=[ma+mb-1,na+nb-1];

c=conv2(hcol,hrow,a) 中,矩阵 a 分别与 hcol 向量在列方向和 hrow 向量在行方向上进行卷积;c=conv2(..shape') 用来指定 conv2

返回二维卷积结果部分,参数 shape 可取值如下:

full 为缺省值,返回二维卷积的全部结果;

same 返回二维卷积结果中与 a 大小相同的中间部分;

valid 返回在卷积过程中,未使用边缘补 0 部分进行计算的卷积结果部分,当 size(a)>size(b) 时,size(c)=[ma-mb+1,na-nb+1]

3.2 conv 函数。

功能:计算多维卷积。

格式:与 conv2 函数相同。

3.3 filter2函数。

功能:计算二维线型数字滤波,它与函数 fspecial 连用。

格式:y=filter2(b,x)

y=filter2(b,x,'shape')

说明:对于 y=filter2(b,x) ,filter2 使用矩阵 b 中的二维 fir 滤波器对数据 x 进行滤波,结果 y 是通过二维互相关计算出来的,其大。

小与 x 一样;对于 y=filter2(b,x,'shape') filter2 返回的 y 是通过二维互相关计算出来的,其大小由参数 shape 确定,其取值如下。

full 返回二维相关的全部结果,size(y)>size(x);

same 返回二维互相关结果的中间部分,y 与 x 大小相同;

valid 返回在二维互相关过程中,未使用边缘补 0 部分进行计算的结果部分,有 size(y)

3.4 fspecial 函数。

功能:产生预定义滤波器。

格式:h=fspecial(type)

h=fspecial('gaussian',n,sigma) 高斯低通滤波器。

h=fspecial('sobel') sobel 水平边缘增强滤波器。

h=fspecial('prewitt') prewitt 水平边缘增强滤波器。

h=fspecial('laplacian',alpha) 近似二维拉普拉斯运算滤波器。

h=fspecial('log',n,sigma) 高斯拉普拉斯(log)运算滤波器。

h=fspecial('**erage',n) 均值滤波器。

h=fspecial('unsharp',alpha) 模糊对比增强滤波器。

说明:对于形式 h=fspecial(type) ,fspecial 函数产生一个由 type 指定的二维滤波器 h ,返回的 h 常与其它滤波器搭配使用。

4. 彩色增强的 matlab 实现。

4.1 imfilter函数。

功能:真彩色增强。

格式:b=imfilter(a,h)

说明:将原始图像 a 按指定的滤波器 h 进行滤波增强处理,增强后的图像 b 与 a 的尺寸和类型相同。

图像的变换。

1. 离散傅立叶变换的 matlab 实现。

matlab 函数 fft、fft2 和 fftn 分别可以实现一维、二维和 n 维 dft 算法;而函数 ifft、ifft2 和 ifftn 则用来计算反 dft 。

这些函数的调用格式如下:

a=fft(x,n,dim)

其中,x 表示输入图像;n 表示采样间隔点,如果 x 小于该数值,那么 matlab 将会对 x 进行零填充,否则将进行截取,使之长度为。

n ;dim 表示要进行离散傅立叶变换。

a=fft2(x,mrows,ncols)

其中,mrows 和 ncols 指定对 x 进行零填充后的 x 大小。

a=fftn(x,size)

其中,size 是一个向量,它们每一个元素都将指定 x 相应维进行零填充后的长度。

函数 ifft、ifft2 和 ifftn的调用格式于对应的离散傅立叶变换函数一致。

例子:图像的二维傅立叶频谱。

读入原始图像。

i=imread(''

imshow(i)

求离散傅立叶频谱。

j=fftshift(fft2(i));

figure;

imshow(log(abs(j)),8,10])

2. 离散余弦变换的 matlab 实现。

2.1. dct2 函数。

功能:二维 dct 变换。

格式:b=dct2(a)

b=dct2(a,m,n)

b=dct2(a,[m,n])

说明:b=dct2(a) 计算 a 的 dct 变换 b ,a 与 b 的大小相同;b=dct2(a,m,n) 和 b=dct2(a,[m,n]) 通过对 a 补 0 或剪裁,使 b 的大。

小为 m×n。

2.2. dict2 函数。

功能:dct 反变换。

格式:b=idct2(a)

b=idct2(a,m,n)

b=idct2(a,[m,n])

说明:b=idct2(a) 计算 a 的 dct 反变换 b ,a 与 b 的大小相同;b=idct2(a,m,n) 和 b=idct2(a,[m,n]) 通过对 a 补 0 或剪裁,使 b

的大小为 m×n。

2.3. dctmtx函数。

功能:计算 dct 变换矩阵。

格式:d=dctmtx(n)

说明:d=dctmtx(n) 返回一个 n×n 的 dct 变换矩阵,输出矩阵 d 为 double 类型。

3. 图像小波变换的 matlab 实现。

3.1 一维小波变换的 matlab 实现。

1) dwt 函数。

功能:一维离散小波变换。

格式:[ca,cd]=dwt(x,'wname')

ca,cd]=dwt(x,lo_d,hi_d)

说明:[ca,cd]=dwt(x,'wname') 使用指定的小波基函数 'wname' 对信号 x 进行分解,ca、cd

分别为近似分量和细节分量;[ca,cd]=dwt(x,lo_d,hi_d) 使用指定的滤波器组 lo_d、hi_d 对信号进行分解。

2) idwt 函数。

功能:一维离散小波反变换。

格式:x=idwt(ca,cd,'wname')

x=idwt(ca,cd,lo_r,hi_r)

x=idwt(ca,cd,'wname',l)

x=idwt(ca,cd,lo_r,hi_r,l)

说明:x=idwt(ca,cd,'wname') 由近似分量 ca 和细节分量 cd 经小波反变换重构原始信号 x 。

matlab图像处理

matlab 二值图像外轮廓提取。注意 填充时,轮廓线是闭合连续的。im imread filepath读取原图。figure,imshow im,title raw 显示原图。im im2bw im转二值图像。figure,imshow im,title bw 显示二值图像。im2 imfill ...

MATLAB作业 MATLAB在图像方面的应用

图形绘制。俗话说 一图胜万语 在科学研究 工程上有图则一目了然,无图搭配则很难窥得全貌,这也是一般工程偏重于图说的原因。而matlab提供了强大的图形功能,利用程序与绘图的结合,可以将结果计算以图形展示,有助于了解计算过程及分析计算结果,这在科学 工程中都非常重要。在matlab中绘制图形,通常采用...

matlab图像处理函数

matlab中图像函数大全 2008 04 21 15 24 26 标签 杂谈 matlab中图像函数大全2008 04 17 22 40matlab常用图像操作。一。读写图像文件。1.imread imread函数用于读入各种图像文件,如 a imread e 注 计算机e盘上要有w01相应的。t...