现有一含有椒盐噪声的图像image.jpg如何增强该图像,写出matlab程序

现有一含有椒盐噪声的图像image.jpg如何增强该图像,写出matlab程序,第1张

image.jpg如何增强该图像,写出matlab程序有以下几个方法:

1. 灰度线性变换, 是一种空域的方法, 直接对每一个像素迟谈袜的灰度值进行增强图像。2. 直方图均衡变换侍败。通常用来增加许多图像的全局对比度,亮度可以更好地在直方图上分布。3. 同态滤波利用去除乘性噪声(multiplicative noise),可以同时增加对比度以及标准化亮度,借此达到码激图像增强的目的。

均值滤波器程序送上。这个程序是我做边缘检测是写的,刚开始用高斯滤波器做均值滤波,LZ可以借鉴一下。程序送上~~~~

clc

close all

clear all

%%%生成高斯平滑滤波模板%%%

%%%%%%%%%%%%%%%%%%%%%%%%%

hg=zeros(3,3) %设定高斯平滑滤波模板的大小为3*3

delta=0.5

for x=1:1:3

for y=1:1:3

u=x-2

v=y-2

hg(x,y)=exp(-(u^2+v^2)/(2*pi*delta^2))

end

end

h=hg/sum(hg(:))

%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%读入图像%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%

f = imread('1111.tif')% 读入图像文件

f=rgb2gray(im2double(f))

imshow(f)

title('原始图像')

[m,n]=size(f)

ftemp=zeros(m,n)

rowhigh=m-1

colhigh=n-1

%%%高斯滤波%%%

for x=2:1:rowhigh-1

for y=2:1:colhigh-1

mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1)f(x,y-1) f(x,y) f(x,y+1)f(x+1,y-1) f(x+1,y) f(x+1,y+1)]

A=h.*mod

ftemp(x,y)=sum(A(:))

end

end

f=ftemp

figure,imshow(f)

title('通过高斯滤波器后的图像')

% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% %%%利用roberts算子进行边缘检测%%%

% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

sx=[-1 -2 -10 0 01 2 1]

sy=[-1 0 1-2 0 2-1 0 1]

for x=2:1:rowhigh-1

for y=2:1:colhigh-1

mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1)f(x,y-1) f(x,y) f(x,y+1)f(x+1,y-1) f(x+1,y) f(x+1,y+1)]

fsx=sx.*mod

fsy=sy.*mod

ftemp(x,y)=sqrt((sum(fsx(:)))^2+(sum(fsy(:)))^2)

end

end

fr=im2uint8(ftemp)

figure,imshow(fr)

title('用roberts算子边纯乎缘检测的原始图像')

%%%域值分割%%%

TH1=60 %设定阈值

for x=2:1:rowhigh-1

for y=2:1:colhigh-1

if (fr(x,y)>=TH1)&((fr(x,y-1) <= fr(x,y)) &(fr(x,y) >fr(x,y+1)) )

fr(x,y)=200

elseif(fr(x,y)>=TH1)&( (fr(x-1,y) <做纯悉=fr(x,y)) &(fr(x,y) >fr(x+1,y)))

fr(x,y)=200

else fr(x,y)=50

end

end

end

figure,imshow(fr)

title('用roberts算子边缘检测裤衫并细化后的图像')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8199701.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存