图像锐化算法实现知识讲解.docx

上传人:b****2 文档编号:19167400 上传时间:2023-04-24 格式:DOCX 页数:12 大小:1.20MB
下载 相关 举报
图像锐化算法实现知识讲解.docx_第1页
第1页 / 共12页
图像锐化算法实现知识讲解.docx_第2页
第2页 / 共12页
图像锐化算法实现知识讲解.docx_第3页
第3页 / 共12页
图像锐化算法实现知识讲解.docx_第4页
第4页 / 共12页
图像锐化算法实现知识讲解.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

图像锐化算法实现知识讲解.docx

《图像锐化算法实现知识讲解.docx》由会员分享,可在线阅读,更多相关《图像锐化算法实现知识讲解.docx(12页珍藏版)》请在冰豆网上搜索。

图像锐化算法实现知识讲解.docx

图像锐化算法实现知识讲解

 

图像锐化算法实现

南京信息工程大学实验(实习)报告

实验(实习)名称图像锐化算法实现实验(实习)日期*****得分指导教师***

学院****专业****年级*班次*姓名***学号***********

一、实验目的:

1.了解图像锐化的目的和意义,巩固所学的图像锐化的理论知识和相关算法;

2.掌握微分算子对图像锐化的方法;

3.熟练掌握空域中常用的锐化滤波器;

4.利用MATLAB程序进行图像锐化(要求:

不得调用Matlab自带的图像函数,但可以调用其它数学函数),观察图像锐化的效果。

二、实验内容:

1.读入一幅灰度图像

2.分别利用Roberts、Prewitt和Sobel边缘检测算子,对一幅灰度数字图像(cameraman.tif)进行边缘检测,显示处理前图像和检测的边缘图

3.根据获得的梯度图,分别采用5种锐化输出处理方式,显示锐化输出前后的图像

三、实验要求:

1.用Matlab语言进行编程,实现上述功能,并尽量使得程序具有通用性,3种算子3个.m文件。

2.撰写实验报告并附上所用程序和结果。

四、实验代码及实验结果

1.roberts算子

clear;

clc;

I=imread('cameraman.tif');

[x,y]=size(I);

J=double(I);

fori=1:

x-1%注意i的范围是1到x-1而不是到x

forj=1:

y-1

a=J(i+1,j+1)-J(i,j);

b=J(i+1,j)-J(i,j+1);

J1(i,j)=abs(a)+abs(b);%直接以梯度值代替

%辅以门槛判断

ifabs(a)+abs(b)>150

J2(i,j)=J1(i,j);

else

J2(i,j)=I(i,j);

end

%给边缘规定一个特定的灰度级

ifabs(a)+abs(b)>150

J3(i,j)=255;

else

J3(i,j)=I(i,j);

end

%给背景规定特定的灰度级

ifabs(a)+abs(b)>150

J4(i,j)=J1(i,j);

else

J4(i,j)=0;

end

%二值图像

ifabs(a)+abs(b)>100

J5(i,j)=255;

else

J5(i,j)=0;

end

end

end

J1=uint8(J1);

J2=uint8(J2);

subplot(2,3,1);imshow(I);title('原图');

subplot(2,3,2);imshow(J1);title('roberts算子1');

subplot(2,3,3);imshow(J2);title('roberts算子2');

subplot(2,3,4);imshow(J3);title('roberts算子3');

subplot(2,3,5);imshow(J4);title('roberts算子4');

subplot(2,3,6);imshow(J5);title('roberts算子5');

2.prewitt算子

clear;

clc;

I=imread('cameraman.tif');

[m,n]=size(I);

J=double(I);

forx=2:

m-1

fory=2:

n-1

a=J(x+1,y-1)-J(x-1,y-1)+J(x+1,y)-J(x-1,y)+J(x+1,y+1)-J(x-1,y+1);

b=J(x-1,y+1)-J(x-1,y-1)+J(x,y+1)-J(x,y-1)+J(x+1,y+1)-J(x+1,y-1);

J1(x,y)=abs(a)+abs(b);

ifabs(a)+abs(b)>160

J2(x,y)=J1(x,y);

else

J2(x,y)=I(x,y);

end

ifabs(a)+abs(b)>160

J3(x,y)=255;

else

J3(x,y)=I(x,y);

end

ifabs(a)+abs(b)>160

J4(x,y)=J1(x,y);

else

J4(x,y)=0;

end

ifabs(a)+abs(b)>160

J5(x,y)=255;

else

J5(x,y)=0;

end

end

end

J1=uint8(J1);

J2=uint8(J2);

subplot(2,3,1);imshow(I);title('原图');

subplot(2,3,2);imshow(J1);title('prewitt算子1');

subplot(2,3,3);imshow(J2);title('prewitt算子2');

subplot(2,3,4);imshow(J3);title('prewitt算子3');

subplot(2,3,5);imshow(J4);title('prewitt算子4');

subplot(2,3,6);imshow(J5);title('prewitt算子5');

 

3sobel算子

clear;

clc;

I=imread('cameraman.tif');

[m,n]=size(I);

J=double(I);

forx=2:

m-1

fory=2:

n-1

a=J(x+1,y-1)-J(x-1,y-1)+2*J(x+1,y)-2*J(x-1,y)+J(x+1,y+1)-J(x-1,y+1);

b=J(x-1,y+1)-J(x-1,y-1)+2*J(x,y+1)-2*J(x,y-1)+J(x+1,y+1)-J(x+1,y-1);

J1(x,y)=abs(a)+abs(b);

ifabs(a)+abs(b)>160

J2(x,y)=J1(x,y);

else

J2(x,y)=I(x,y);

end

ifabs(a)+abs(b)>160

J3(x,y)=255;

else

J3(x,y)=I(x,y);

end

ifabs(a)+abs(b)>160

J4(x,y)=J1(x,y);

else

J4(x,y)=0;

end

ifabs(a)+abs(b)>160

J5(x,y)=255;

else

J5(x,y)=0;

end

end

end

J1=uint8(J1);

J2=uint8(J2);

J3=uint8(J3);

J4=uint8(J4);

J5=uint8(J5);

subplot(2,3,1);imshow(I);title('原图');

subplot(2,3,2);imshow(J1);title('sobel算子1');

subplot(2,3,3);imshow(J2);title('sobel算子2');

subplot(2,3,4);imshow(J3);title('sobel算子3');

subplot(2,3,5);imshow(J4);title('sobel算子4');

subplot(2,3,6);imshow(J5);title('sobel算子5');

图像空域变化背景

图像经转换或传输,质量可能下降,难免有些模糊

图像锐化目的:

加强图像轮廓,使图像看起来比较清晰

平滑与锐化

1、高频分量对应图像中的区域边缘或噪声;

2、低频分量对应图像中灰度值缓慢变化的区域;

3、平滑减弱或消除图像中的高频分量,平滑图像,消除噪声;

4、锐化减弱或消除图像中的低频分量,增加图像的反差,突出边缘。

梯度算子

1.算子:

算子是一个函数空间到函数空间上的映射O:

X→X。

广义上的算子可以推广到任何空间,如内积空间等。

2.对于图像f(x,y),在(x,y)处的梯度定义为

3.梯度:

梯度对应一阶导数,相应的梯度算子就对应一阶导数算子

4.梯度是一个矢量,其幅度和方向分别为

离散图像的梯度

1.一阶偏导数采用一阶差分近似表示,如,常规梯度算子

2.对于离散图像处理而言,常用到梯度的大小,因此把梯度的大小习惯称为“梯度”

为简化梯度的计算,经常使用

几种常见的梯度算子

Roberts算子:

Prewitt算子

Sobel算子

Sobel算子并不是各向同性的算子,它分为:

∙水平边缘检测Sobel算子gx

∙垂直边缘检测Sobel算子gy

gxgx之所以近似表示水平梯度,是因为它直接求的是3*3窗口内模版中心像素点附近的像素点水平差分之和,中间元素差分乘以了权重系数2表示和模版中心关联度更高。

gygy可以类似理解。

运用模版卷积运算,可以快速求出水平梯度:

 

Gx=gx⋅F3×3

Sobel算子考虑权重,因此抗噪能力优于无权重的Prewitt算子(见后)。

 

 

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

当前位置:首页 > 求职职场 > 简历

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

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