#基于matlab的数字图像处理Word下载.docx

上传人:b****4 文档编号:13689441 上传时间:2022-10-12 格式:DOCX 页数:17 大小:1.12MB
下载 相关 举报
#基于matlab的数字图像处理Word下载.docx_第1页
第1页 / 共17页
#基于matlab的数字图像处理Word下载.docx_第2页
第2页 / 共17页
#基于matlab的数字图像处理Word下载.docx_第3页
第3页 / 共17页
#基于matlab的数字图像处理Word下载.docx_第4页
第4页 / 共17页
#基于matlab的数字图像处理Word下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

#基于matlab的数字图像处理Word下载.docx

《#基于matlab的数字图像处理Word下载.docx》由会员分享,可在线阅读,更多相关《#基于matlab的数字图像处理Word下载.docx(17页珍藏版)》请在冰豆网上搜索。

#基于matlab的数字图像处理Word下载.docx

Imshow函数用于显示工作区或图像文件中的图像,在显示的同时可控制部分效果,常用的调用形式如下。

Imshow(I,[lowhigh],param1,value1,param2,value2,...);

Imshow(I,MAP);

Imshow(filename);

二.灰度直方图的使用

Matlab中的imhist函数可以进行图像的灰度直方图运算,调用语法如下。

imhist(I);

imhist(I,n);

[counts,s]=imhist(...);

4.一般直方图

下面使用了Matlab中的一张内置示例图片演示灰度直方图的生成和显示,程序如下。

I=imread('

pout.tif'

);

figure;

imshow(I);

title('

Source'

imhist(I);

Histogram'

上述程序的运行结果如图所示。

5.归一化直方图

在imhist函数的返回值中,counts保存了落入每个区间的像素个数,通过计算counts和图像中像素总数的商可以得到归一化直方图。

绘制有32个灰度区间的归一化直方图的Matlab程序如下。

[M,N]=size(I);

[counts,x]=imhist(I,32);

counts=counts/M/N;

stem(x,counts);

三.图像增强的练习:

3.1空间域图像增强

3.1.1线性平滑滤波器

例题:

对一个图像进行不同大小模板的均值滤波,并比较结果。

eight.tif'

J=imnoise(I,'

salt&

pepper'

0.02);

subplot(2,2,1)

imshow(J);

噪声图像'

K1=filter2(fspecial('

average'

3),J)/255;

K2=filter2(fspecial('

5),J)/255;

K3=filter2(fspecial('

7),J)/255;

subplot(2,2,2)

imshow(K1);

3x3模板均值滤波'

subplot(2,2,3)

imshow(K2);

5x5模板均值滤波'

subplot(2,2,4)

imshow(K3);

7x7模板均值滤波'

其显示结果如图所示。

3.1.2非线性平滑滤波器

对一个图像实现不同模板的中值滤波,并比较结果。

K1=medfilt2(J,[33]);

K2=medfilt2(J,[55]);

K3=medfilt2(J,[77]);

3x3模板中值滤波'

5x5模板中值滤波'

7x7模板中值滤波'

3.1.3线性锐化滤波器

对图像pout.tif进行线性高通滤波。

h=fspecial('

laplacian'

I2=filter2(h,I);

subplot(1,2,1);

原始图像'

subplot(1,2,2);

imshow(I2);

滤波后图像'

3.1.4非线性锐化滤波器

sobel算子,prewitt算子,log算子对图像滤波。

cameraman.tif'

subplot(2,2,1);

h1=fspecial('

sobel'

I1=filter2(h1,I);

subplot(2,2,2);

imshow(I1);

sobel算子滤波'

prewitt'

subplot(2,2,3);

prewitt算子滤波'

log'

subplot(2,2,4);

log算子滤波'

3.2频域图像增强

3.2.1低通滤波

对图像eight.tif加入椒盐噪声后,实现Butterworth低通滤波。

clear

I1=imread('

I2=imnoise(I1,'

f=double(I2);

g=fft2(f);

g=fftshift(g);

[N1,N2]=size(g);

n=2;

d0=50;

n1=fix(N1/2);

n2=fix(N2/2);

fori=1:

N1

forj=2:

N2

d=sqrt((i-n1)^2+(j-n2)^2);

h=1/(1+0.414*(d/d0)^(2*n));

result1(i,j)=h*g(i,j);

if(g(i,j)>

50)

result2(i,j)=0;

else

result2(i,j)=g(i,j);

end

end

result1=ifftshift(result1);

result2=ifftshift(result2);

X2=ifft2(result1);

X3=uint8(real(X2));

imshow(X3);

Btterworth滤波图像'

X4=ifft2(result2);

X5=uint8(real(X4));

imshow(X5);

理想低通滤波图像'

3.2.2高通滤波

对图像eight.tif实现Butterworth高通滤波。

ifd==0

h=0;

h=1/(1+(d0/d)^(2*n));

if(g(i,j)<

理想高通滤波图像'

四.图像的几何变换

4.1图像平移

程序:

functionI_out=imMove(I,Tx,Ty)

tform=maketform('

affine'

[100;

010;

TxTy1]);

I_out=imtransform(I,tform,'

XData'

[1size(I,2)],'

YData'

[1size(I,1)]);

subplot(1,2,1),imshow(I);

原图像'

subplot(1,2,2),imshow(I_out);

平移图像'

其中I=imread('

4.2图像镜像

A=imread('

[height,width,dim]=size(A);

[-100;

width01]);

B=imtransform(A,tform,'

nearest'

tform2=maketform('

0-10;

0height1]);

C=imtransform(A,tform2,'

subplot(1,3,1),imshow(A);

subplot(1,3,2),imshow(B);

水平镜像'

subplot(1,3,3),imshow(C);

竖直镜像'

4.3图像转置

[010;

100;

001]);

subplot(1,2,1),imshow(A);

subplot(1,2,2),imshow(B);

图像转置'

4.4图像缩放

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 财务管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1