数字图像处理.pptx

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

图像增强

基于MATLAB实现;引言:;空域增强方法可表示为:g(x,y)=EH[f(x,y)]

其中f(x,y)和g(x,y)分别为增强前后的图像,EH代表增强操作。

;空域变换增强;

从上图中可以看出,通过变换可以使原图的较高的和较低的灰度值的动态范围减小,而原图在二者之间的动态范围增加了,从而其范围的对比度增加了。

;使用Matlab增强对比度

MATLAB代码所示:

X1=imread(pout.tif);

figure,imshow(X1)

f0=0;g0=0;

f1=70;g1=30;

f2=180;g2=230;

f3=255;g3=255;

r1=(g1-g0)/(f1-f0);

b1=g0-r1*f0;

r2=(g2-g1)/(f2-f1);

b2=g1-r2*f1;

r3=(g3-g2)/(f3-f2);

b3=g2-r3*f2;

[m,n]=size(X1);

X2=double(X1);

fori=1:m

forj=1:n

f=X2(i,j);

g(i,j)=0;

if(f=0)(f=f1)

g(i,j)=r1*f+b1;

elseif(f=f1)(f=f2)

g(i,j)=r2*f+b2;

elseif(f=f2)(f=f3)

g(i,j)=r3*f+b3;

end

end

end

figure,imshow(mat2gray(g))

;图像处理图示

原图增强后;二、图像求反

对图像求反是将原来的灰度值翻转,简单的说就是使黑变白,使白变黑。普通的黑白底片和照片就是这样的关系。具体的变换就是将图像中每个像素的灰度值根据变换曲线进行映射。

;使用Matlab求反

MATLAB代码所示:

X1=imread(pout.tif);

f1=200;

g1=256;

k=g1/f1;

[m,n]=size(X1);

X2=double(X1);

fori=1:m

forj=1:n

f=X2(i,j);

g(i,j)=0;

if(f=0)(f=f1)

g(i,j)=g1-k*f;

else

g(i,j)=0;

end

end

end

figure,imshow(mat2gray(g))

;图像求反后如图;空域滤波增强;基本原理;平滑滤波器:它能减弱或消除傅立叶空间的高频分量,但不影响低频分量。因为高频分量对应图像中的区域边缘等灰度值具有较大较快变化的部分,滤波器将这些分量滤去可使图像平滑。

锐化滤波器:它能减弱或消除傅立叶空间的高频分量

空域滤波器都是利用模板卷积,主要步骤如下:

(1)将模板在图中漫游,并将模板中心与图中某个像素位置重合;

(2)将模板上的系数与模板下对应的像素相乘;

(3)将所有的乘积相加;

(4)将和(模板的输出响应)赋给图中对应的模板中心位置像素。

;线性平滑滤波器;MATLAB实现均值过滤器的代码所示:

I=imread(saturn.tif);

J=imnoise(I,saltpepper,0.02);

imshow(I)

figure,imshow(J)

K1=filter2(fspecial(average,3),J)/255;

figure,imshow(K1)

title(3*3的均值滤波器)

;原图像,加入椒盐噪声的图像和均值滤波的图像

原图加入椒盐噪声图;3*3的均值滤波器处理结果

;非线性平滑滤波器;MATLAB实现中值滤波器代码所示:

I=imread(saturn.tif);

J=imnoise(I,saltpepper,0.02);

K1=medfilt2(J,[3,3]);

figure,imshow(K1)

中值滤波的结果如图所示;线性锐化滤波器;用Matlab实现

MATLAB代码所示:

I=imread(saturn.tif);

m=fspecial(laplacian)

I1=filter2(m,I)

h=fspecial(unsharp,0.5);

I2=filter2(h,I)/255;

subplot(1,2,1);

imshow(I1);

title(高通滤波laplacian算子)

subp

文档评论(0)

智乾 + 关注
实名认证
内容提供者

科技工作者

1亿VIP精品文档

相关文档