当前位置:文档之家› 滤波和边缘检测

滤波和边缘检测

滤波和边缘检测
滤波和边缘检测

课程实验报告

2017 - 2018学年一学期

课程名称:计算机视觉及应用

实验名称:滤波和边缘检测

班级:

学生姓名: 学号:

实验日期: 2017.12.3地点:

指导教师:

成绩评定:批改日期:

实验数据分析及处理示例图片角点检测情况:

图一图二

图一为示例图像加入椒盐噪声的图片。图二是用中值滤波后的图片。

图三图四

图五图六

图三为将原图像进行灰度化后的图片,图四为在灰度图片上面用canny算子进行边缘提取的图片

图五为将在灰度图片上面进行边缘提取后的图片夹到原图像的结果,图六为使用了sobel算子进行边缘提取的结果

图七图八

图九

平滑滤波方法研究

平滑滤波方法研究 平滑滤波是低频增强的空间域滤波技术。它的目的有两类:一类是模糊;另一类是消除噪音。并且具有一定的处理要求,一是不能损坏图像的轮廓及边缘等重要信息;二是使图像清晰视觉效果好。平滑滤波的方法有邻域平滑滤波,就是求邻近像元点的平均亮度值,双边滤波,中值滤波,以及非局部均值滤波等。 1、双边滤波法 双边滤波是一种非线性滤波器,它可以达到保持边缘、降噪平滑的效果。双边滤波的边缘保持特性主要是通过在卷积的过程中组合空域函数和值域核函数来实现的,典型的核函数为高斯分布函数,如下所示: 其中: 为归一化作用。σs为空域高斯函数的标准差,σr为值域高斯函数的标准差,Ω表示卷积的定义域。 编写代码测试,当添加的噪声为0.05时,结果如下

滤波后图像 添加噪声为0.3时,结果如下 滤波后图像

由此可知,双边滤波具有去除噪音的作用 2、邻域平均法 邻域平滑滤波原理:邻域平均法就是对含噪声的原始图像f(x,y)的每一个像素点取一个邻域,计算S中所有像素灰度级的平均值,作为邻域平均处理后的图像g(x, y)的像素值。即 式中:x,y=0,1,…,N-1;S是以(x,y)为中心的邻域的集合,M是S 内的点数。 邻域平均法的思想是通过一点和邻域内像素点求平均来去除突变的像素点,从而滤掉一定噪声,其优点是算法简单,计算速度快,其代价会造成图像在一定程度上的模糊。 3、中值滤波法 中值滤波就是用一个奇数点的移动窗口,将窗口的中心点的值用窗口内的各点中值代替。假设窗口内有五点,其值为80、90、200、110和120,那么此窗口内各点的中值及为110。

设有一个一维序列f1,f2,…,fn,取窗口长度(点数)为m(m为奇数),对其进行中值滤波,就是从输入序列中相继抽出m个数fi-v,…,fi-1,fi,fi+1,…,fi+v(其中fi为窗口中心值,v=(m-1)/2),再将这m个点按其数值大小顺序排序,取其序号的中心点的那个数作为滤波输出。数学公式表示为: Yi=Med{fi-v,…,fi-1,fi,fi+1,…,fi+v} i∈N v=(m-1)/2 (式1-2)Yi称为序列fi-v,…,fi-1,fi,fi+1,…,fi+v的中值 例如,有一序列{0,3,4,0,7},重新排序后为{0,0,3,4,7}则Med{0,0,3,4,7}=3。此列若用平滑滤波,窗口也取5,那么平滑滤波输出为(0+3+4+0+7)/5=2.8。 把一个点的特定长度或形状的邻域称作窗口。在一维情况下,中值滤波器是一个含有奇数个像素的滑动窗口。中值滤波很容易推广到二维,此时可以利用二维形式的窗口。 对于平面图像采用的二维中值滤波可以由下式表示: 式中:A为窗口,{Xij}为二维数据序列,即数字图像各点的灰度值。 在对图像进行中值滤波时,如果窗口是关于中心点对称的,并且包含中心点在内,则中值滤波能保持任意方向的跳变边缘。图像中的跳变边缘指图像中不同灰度区域之间的灰度突变边缘。 在实际使用窗口时,窗口的尺寸一般先取3,再取5,依次增大,直到滤波效果满意为止,对于有缓变的较长轮廓线物体的图像,采用方形或圆形窗口较合适,对于包含尖顶角物体的图像,采用十字形窗口较合适。使用二维中值滤波值得注意的是要保持图像中有效线状体。 通过实验可得出中值滤波具有以下特性: (1)对于某些输入信号中值滤波具有不变性。 (2)中值滤波可以用来减弱随机干扰的脉冲干扰,具有较好的去噪声性能。

边界保持平滑滤波方法研究-灰度方差-k近邻平滑

. . ..大学毕业设计(论文) 图像降噪中的边界保持平滑滤波方法研究 : 学号: 指导教师:

摘要 当今社会是信息数字化时代,无论是学习,生活都与信息数字紧密相关联,其中数字图像处理在其中占有着举足轻重的地位。21世纪,数字图像处理技术高速发展,并广泛应用于识别领域,医学领域,体育领域等。 平滑滤波是图像处理学的基础.最基础的滤波方式是均值滤波和中值滤波,这两种滤波方式对噪声都有抑制作用而且算法简单,但是导致图像变模糊尤其是边缘变模糊是无可避免的。虽然将滤波器加权后,效果有所改善,但理论是近似的,所以效果仍不明显。 为了改善边缘的模糊,我们发现只要处理好灰度变化显著的边缘,图像就会达到一个很好的效果,要最大程度保持图片的清晰,希望在进行平滑处理的同时,检测出景物的边界,然后对噪声进行处理。 本文用matlab编辑算法实现中值滤波,均值滤波,最小方差滤波,k近邻滤波对噪声的处理,并进行性能的分析和比较。 关键词:matlab;中值滤波;均值滤波;最小方差滤波;k近邻滤波

Abstact Modern society is digital , whether learning or life is closely associated with digital information, including digital image processing in which occupies a pivotal position .21 century, the rapid development of digital image processing technology widely used in the field of identification, medicalfication, the field of sports. The smoothing filter is the basis of image processing. The most basic filter is the mean filter and median filter, both filtering noise inhibited and the algorithm is simple, but lead to the edge of the image blurred without avoidable. Although the effect is improving ,the theory is approximate, so the effect is still not clear. In order to improve the edge blur, we found that handling the gray-scale variation significant edge, the image will reach a good effect, To the maximum extent to maintain the clarity of the picture, while performing smoothing processing, a scene boundary is detected, then, the noise is processing. In this paper, using matlab algorithm for editing median filtering, mean filtering, minimum variance filtering, k-nearest neighbor filtering noise processing and analysis and comparison of performance. Keywords: matlab; median filter; mean filter; minimum variance filtering; k nearest neighbor filter

边缘保留的像噪声滤除方法

边缘保留的图像噪声滤除方法 噪声图像的滤波问题一直是图像处理的基本任务之一。常用的滤波技术主要有Lee滤波器,Frost滤波器,GammaGAP滤波器等。这些滤波算法都是基于对图像局部统计特性自适应的,因此滤除噪声的效果较好。但由于算法本身的原因,往往造成图像的边缘等细节信息模糊,降低了图像的质量1。针对这一问题,人们提出许多改进算法,如改进的Lee滤波器,变窗口滤波器等,这些算法虽然在一定程度上解决了边缘模糊的问题,但也带来新问题,比如改进的Lee滤波器,由于要进行边缘检测,所以选择的窗口就不能太大,但小窗口对消除斑噪声不利,又降低了效能。 针对以上情况,本文提出了一种新的滤波方法:把滤波过程分为两个步骤,先检测出图像的边缘,把图像的边缘从原图像中分离,得到无边缘纹理的图像;然后对其进行滤波,再将边缘纹理加入到滤波后的图像,这样就得到了一个即保留边缘纹理,又有好的滤波效果的图像。 1噪声图像边缘检测 最常用的边缘检测算法一般是Sobel算子、Kirsh算子、Laplacian算子以及Marr算子等,这些算法都是基于梯度检测的。梯度检测器就是确定一个门限,当象素梯度超过门限时就认为它是边缘,在图像越亮的地方,梯度的方差就越大,如果门限不变,就会有许多虚假边缘被检测出来;既使门限变化,由于门限的变化范围不好确定,因此效果也不好,所以检测被噪声污染的图像的边缘不能用一般的方法。本文使用斜面拟合法和广义模糊算子法较好地解决了这个问题。 1.1Haralick斜面拟合法[2] 边缘是一种灰度的起落,故可用曲面对数字图像进行拟合,然后再在拟合的曲面上进行边缘检测。由于拟合用的曲面是满足一定平滑性的有理曲面,因而可以使噪声图像得到平滑,有一定滤噪能力。本文用Haralick曲面拟合方法作图像边缘检测,该方法用斜面拼接成表面,然后求出表面的交,从而确定物体的边缘。Haralick边缘检测可以通过两个步骤完成: 1.1.1确定Haralick斜面拟合参数 假设对于方形数字图像R×C中的每一点(x,y),数字图像f(i,j)的斜面模型都可以写成: f(i,j)=αi+βj+γ+η(i,j)(1) 其中η(i,j)是噪声项,是独立的零均值随机变量。用最小平方误差求α,β,γ,即最小化下述误差: 将ε2分别对α,β,γ求偏微分,并令结果等于零: 通常R,C均为奇数,设拟合窗口R×C的中间点坐标为(0,0),由于对称性,有: 求解上面的方程组,得:

三种不同平滑滤波器对比

燕山大学 课程设计说明书 题目:几种平滑滤波器的作用与对比试验设计 学院(系):电气工程学院 年级专业: 学号: 学生姓名: 指导教师: 教师职称:

目录 第一章平滑滤波器 (1) 第二章处理程序和处理结果 (3) 第三章比较差异 (7) 第四章总结 (9) 参考文献 (9)

第一章平滑滤波器 滤波的本义是指信号有各种频率的成分,滤掉不想要的成分,即为滤掉常说 的噪声,留下想要的成分,这即是滤波的过程。 所谓目的:一是抽出对象的特征作为图像识别的特征模式;另一个是为适应图像处理的要求,消除图像数字化时所混入的噪声。 各类图像处理系统在图像的采集、获取、传送和转换(如成像、复制扫描、传输以及显示等)过程中,均处在复杂的环境中,光照、电磁多变,所有的图像均不同程度地被可见或不可见的噪声干扰。噪声源包括电子噪声、光子噪声、斑点噪声和量化噪声。如果信噪比低于一定的水平,噪声逐渐变成可见的颗粒形状,导致图像质量的下降。除了视觉上质量下降,噪声同样可能掩盖重要的图像细节,在对采集到的原始图像做进一步的分割处理时,我们发现有一些分布不规律的椒盐噪声,为此采取相应的对策就是对图像进行必要的滤波降噪处理。图像的噪声滤波器有很多种,常用的有线性滤波器,非线性滤波器。采用线性滤波如邻域平滑滤波,对受到噪声污染而退化的图像复原,在很多情况下是有效的。但大多数线性滤波器具有低通特性,去除噪声的同时也使图像的边缘变模糊了。而另一种非线性滤波器如中值滤波,在一定程度上可以克服线性滤波器所带来的图像模糊问题,在滤除噪声的同时,较好地保留了图像的边缘信息。这些滤波都是通过平滑滤波器来实现的。 平滑滤波是低频增强的空间域滤波技术。它的目的有两类:一类是模糊;另一类是消除噪音。所谓平滑滤波是指对一些不平滑的信号做处理,使它变平滑。那什么是不平滑呢,就是在示波器上看起伏不平的信号,最典型的就是交流整流后的脉动信号。这些随时间起伏不平变化的信号成分在频率上代表一些高频率的成分,上升下降越快,则表示频率越高。平滑滤波就是要把它们弄平,把它们弄得不再随时间变化,或者是变化很小,这种不随时间再变化,或者随时间变化很小的信号就是频率非常低的信号,使它们成为低频信号,在整流滤波上,就基本上直流信号,其中只含有非常少的成分随时间变化。所以平滑滤波与低通滤波说法差别不大,平滑滤波大多用在整流滤波上,一般可以理解成一个概念的不同描述方法。 图像在传递过程中,由于噪声主要集中在高频部分,为去除噪声改善图像质量,滤波器采用低通滤波器H(u ,v)来抑制高频成分,通过低频成分,然后再进行逆傅立叶变换获得滤波图像,就可达到平滑图像的目的 根据任务要求在此选择研究理想低通滤波器、Butterworth 低通滤波器、高斯低通滤波器三种滤波器来实现要求。 1.理想低通滤波器 设傅立叶平面上理想低通滤波器离开原点的截止频率为D0,则理想低通滤波器的传递函数: 1 (,)(,)0 (,)D u v D H u v D u v D ≤?=?>?

常见的信号处理滤波方法

低通滤波:又叫一阶惯性滤波,或一阶低通滤波。是使用软件编程实现普通硬件RC 低通滤波器的功能。 适用范围:单个信号,有高频干扰信号。 一阶低通滤波的算法公式为: Y(n)X(n)(1)Y(n 1)αα=+-- 式中: α是滤波系数;X(n)是本次采样值;Y(n 1)-是上次滤波输出值;Y(n)是本次滤波输出值。 滤波效果1: 红色线是滤波前数据(matlab 中生成的正弦波加高斯白噪声信号) 黄色线是滤波后结果。 滤波效果2:

matlab中函数,相当于一阶滤波,蓝色是原始数据(GPS采集到的x(北)方向数据,单位m),红色是滤波结果。 一阶滤波算法的不足: 一阶滤波无法完美地兼顾灵敏度和平稳度。有时,我们只能寻找一个平衡,在可接受的灵敏度范围内取得尽可能好的平稳度。

互补滤波:适用于两种传感器进行融合的场合。必须是一种传感器高频特性好(动态响应好但有累积误差,比如陀螺仪。),另一传感器低频特性好(动态响应差但是没有累积误差,比如加速度计)。他们在频域上互补,所以进行互补滤波融合可以提高测量精度和系统动态性能。 应用:陀螺仪数据和加速度计数据的融合。 互补滤波的算法公式为: 1122Y(n)X (n)(X (n)Y(n 1))αα+=+-- 式中:1α和2α是滤波系数;1X (n)和2X (n)是本次采样值;Y(n 1)-是上次滤 波输出值;Y(n)是本次滤波输出值。 滤波效果 (测试数据): 蓝色是陀螺仪 信号,红色是加 速度计信号,黄 色是滤波后的 角度。

. 互补滤波实际效果: .

卡尔曼滤波:卡尔曼滤波器是一个“optimal recursive data processing algorithm (最优化自回归数据处理算法)”。对于解决很大部分的问题,它是最优,效率最高甚至是最有用的。他的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测。 首先,用于测量的系统必须是线性的。 (k)(k 1)(k)(k)X AX BU w =-++ (k)(k)(k)Z HX v =+ (k)X 是系统k 时刻的状态,(k)U 是系统k 时刻的控制量。(k)Z 是系统k 时 刻的测量值。A 和B 为系统参数,(k)w 和(k)v 分别表示过程和测量的噪声,H 是测量系统参数。 在进行卡尔曼滤波时: 首先进行先验预测: (k 1|k)(k |k)(k)(k)X AX BU w +=++ 计算先验预测方差: '(k 1|k)(k |k)(k)P AP A Q +=+ 计算增益矩阵: (k 1)(k 1|k)'/((k 1|k)'(k 1))Kg P H HP H R +=++++ 后验估计值: (k 1|k 1)(k 1|k)(k 1)(Z(k 1)(k 1|k))X X Kg HX ++=++++-+ 后验预测方差: (k 1|k 1)(1(k 1))(k 1|k)P Kg H P ++=-++ 其中,(k)Q 是系统过程激励噪声协方差,(k)R 是测量噪声协方差。 举例说明: (下文中加粗的是专有名词,需要理解) 预测小车的位置和速度的例子(博客+自己理解):

边界保持平滑滤波方法研究-灰度方差-k近邻平滑

..大学毕业设计(论文) 图像降噪中的边界保持平滑滤波方法研究 : 学号: 指导教师:

摘要 当今社会是信息数字化时代,无论是学习,生活都与信息数字紧密相关联,其中数字图像处理在其中占有着举足轻重的地位。21世纪,数字图像处理技术高速发展,并广泛应用于识别领域,医学领域,体育领域等。 平滑滤波是图像处理学的基础.最基础的滤波方式是均值滤波和中值滤波,这两种滤波方式对噪声都有抑制作用而且算法简单,但是导致图像变模糊尤其是边缘变模糊是无可避免的。虽然将滤波器加权后,效果有所改善,但理论是近似的,所以效果仍不明显。 为了改善边缘的模糊,我们发现只要处理好灰度变化显著的边缘,图像就会达到一个很好的效果,要最大程度保持图片的清晰,希望在进行平滑处理的同时,检测出景物的边界,然后对噪声进行处理。 本文用matlab编辑算法实现中值滤波,均值滤波,最小方差滤波,k近邻滤波对噪声的处理,并进行性能的分析和比较。 关键词:matlab;中值滤波;均值滤波;最小方差滤波;k近邻滤波

Abstact Modern society is digital , whether learning or life is closely associated with digital information, including digital image processing in which occupies a pivotal position .21 century, the rapid development of digital image processing technology widely used in the field of identification, medicalfication, the field of sports. The smoothing filter is the basis of image processing. The most basic filter is the mean filter and median filter, both filtering noise inhibited and the algorithm is simple, but lead to the edge of the image blurred without avoidable. Although the effect is improving ,the theory is approximate, so the effect is still not clear. In order to improve the edge blur, we found that handling the gray-scale variation significant edge, the image will reach a good effect, To the maximum extent to maintain the clarity of the picture, while performing smoothing processing, a scene boundary is detected, then, the noise is processing. In this paper, using matlab algorithm for editing median filtering, mean filtering, minimum variance filtering, k-nearest neighbor filtering noise processing and analysis and comparison of performance. Keywords: matlab; median filter; mean filter; minimum variance filtering; k nearest neighbor filter

几种常用边缘检测算法的比较

几种常用边缘检测算法的比较摘要:边缘是图像最基本的特征,边缘检测是图像分析与识别的重要环节。基于微分算子的边缘检测是目前较为常用的边缘检测方法。通过对Roberts,Sobel,Prewitt,Canny 和Log 及一种改进Sobel等几个微分算子的算法分析以及MATLAB 仿真实验对比,结果表明,Roberts,Sobel 和Prewitt 算子的算法简单,但检测精度不高,Canny 和Log 算子的算法复杂,但检测精度较高,基于Sobel的改进方法具有较好的可调性,可针对不同的图像得到较好的效果,但是边缘较粗糙。在应用中应根据实际情况选择不同的算子。 0 引言 边缘检测是图像分析与识别的第一步,边缘检测在计算机视觉、图像分析等应用中起着重要作用,图像的其他特征都是由边缘和区域这些基本特征推导出来的,边缘检测的效果会直接影响图像的分割和识别性能。边缘检测法的种类很多,如微分算子法、样板匹配法、小波检测法、神经网络法等等,每一类检测法又有不同的具体方法。目前,微分算子法中有Roberts,Sobel,Prewitt,Canny,Laplacian,Log 以及二阶方向导数等算子检测法,本文仅将讨论微分算子法中的几个常用算子法及一个改进Sobel算法。 1 边缘检测 在图像中,边缘是图像局部强度变化最明显的地方,它

主要存在于目标与目标、目标与背景、区域与区域( 包括不同色彩) 之间。边缘表明一个特征区域的终结和另一特征区域的开始。边缘所分开区域的内部特征或属性是一致的,而不同的区域内部特征或属性是不同的。边缘检测正是利用物体和背景在某种图像特征上的差异来实现检测,这些差异包括灰度、颜色或纹理特征,边缘检测实际上就是检测图像特征发生变化的位置。边缘的类型很多,常见的有以下三种: 第一种是阶梯形边缘,其灰度从低跳跃到高; 第二种是屋顶形边缘,其灰度从低逐渐到高然后慢慢减小; 第三种是线性边缘,其灰度呈脉冲跳跃变化。如图1 所示。 (a) 阶梯形边缘(b) 屋顶形边缘 (b) 线性边缘 图像中的边缘是由许多边缘元组成,边缘元可以看作是一个短的直线段,每一个边缘元都由一个位置和一个角度确定。边缘元对应着图像上灰度曲面N 阶导数的不连续性。如果灰度曲面在一个点的N 阶导数是一个Delta 函数,那么就定义灰度曲面在这个点是N 阶不连续,则线性边缘是0 阶不

高斯滤波和双向滤波的区别与联系

1. 简介 图像平滑是一个重要的操作,而且有多种成熟的算法。这里主要简单介绍一下Bilateral方法(双边滤波),这主要是由于前段时间做了SSAO,需要用bilateral blur 算法进行降噪。Bilateral blur相对于传统的高斯blur来说很重要的一个特性即可可以保持边缘(Edge Perseving),这个特点对于一些图像模糊来说很有用。一般的高斯模糊在进行采样时主要考 虑了像素间的空间距离关系,但是却并没有考虑像素值之间的相似程度,因此这样我们得到的 模糊结果通常是整张图片一团模糊。Bilateral blur的改进就在于在采样时不仅考虑像素在空间距离上的关系,同时加入了像素间的相似程度考虑,因而可以保持原始图像的大体分块进而保 持边缘。在于游戏引擎的post blur算法中,bilateral blur常常被用到,比如对SSAO的降噪。 2. 原理 滤波算法中,目标点上的像素值通常是由其所在位置上的周围的一个小局部邻居像素的值所决定。在2D高斯滤波中的具体实现就是对周围的一定范围内的像素值分别赋以不同的高斯权重值,并在加权平均后得到当前点的最终结果。而这里的高斯权重因子是利用两个像素之间的空 间距离(在图像中为2D)关系来生成。通过高斯分布的曲线可以发现,离目标像素越近的点 对最终结果的贡献越大,反之则越小。其公式化的描述一般如下所述: 其中的c即为基于空间距离的高斯权重,而用来对结果进行单位化。 高斯滤波在低通滤波算法中有不错的表现,但是其却有另外一个问题,那就是只考虑了像素间 的空间位置上的关系,因此滤波的结果会丢失边缘的信息。这里的边缘主要是指图像中主要的 不同颜色区域(比如蓝色的天空,黑色的头发等),而Bilateral就是在Gaussian blur中加入了另外的一个权重分部来解决这一问题。Bilateral滤波中对于边缘的保持通过下述表达式来实现: 其中的s为基于像素间相似程度的高斯权重,同样用来对结果进行单位化。对两者进 行结合即可以得到基于空间距离、相似程度综合考量的Bilateral滤波:

MATLAB 图像边缘提取 图像高斯低通滤波 DCT变换 程序

实验二边缘提取 作业要求: 1.参考“空间域图像增强”课的内容, 用Sobel边缘算子提取图像边缘实验程序如下: RGB=imread('E:\图像信号处理\bmp格式图片\美女.bmp'); isrgb(RGB); figure; imshow(RGB); I=rgb2gray(RGB); imshow(I); colorbar('horiz'); isgray(I); ED=edge(I,'sobel',0.08); imshow(ED) 运行结果如下:

实验四高斯低通滤波器 作业要求: 参考“频率域图像增强”课的内容, 采用高斯低通滤波器对图片进行滤波操作, 取半径为5, 15, 30, 80和230, 分别输出结果图片 实验程序如下:(d0=5) I1=imread('E:\图像信号处理\bmp格式图片\荷花.bmp'); I=rgb2gray(I1); s=fftshift(fft2(I)); [M,N]=size(s); n=2; d0=5; n1=floor(M/2); n2=floor(N/2); for i=1:M for j=1:N d=sqrt((i-n1)^2+(j-n2)^2); h=1*exp(-1/2*(d^2/d0^2)); s(i,j)=h*s(i,j); end end s=ifftshift(s); s=uint8(real(ifft2(s))); figure; imshow(s); title('GLPF滤波(d0=5)');

实验六DCT变换 作业要求: 1.参考“图像压缩”课的内容, 并参考有关资料, 对输入图像进行离散余弦变换 2.通过离散余弦逆变换, 还原出原图片 实验程序如下: RGB=imread('E:\图像信号处理\bmp格式图片\美女.bmp'); figure(1);

四点平滑、八点平滑、中值滤波、直方图均匀化、线性变换

数字图像上机报告 一、实验内容: 四点平滑、八点平滑、中值滤波、直方图均匀化、线性变换 二、实验目的: 1、四点平滑、八点平滑:去除高斯噪声,使图像平滑,缺点是会使图像模糊,模糊程度与领域半径成正比丢失边沿。 2、中值滤波:去除图像中的椒盐噪声,平滑图像,同样会使图像模糊,丢失边缘。 三、编程思想: 1、四点平滑: f(i, j) ——表示(i, j)点的实际灰度值 g(i, j) ——变换后输出图象(i, j)点的实际灰度值 以(i, j)点为中心取其上下左右四个像素点的灰度值和点(i, j)取平均,将均值赋给g(i, j)作为输出灰度值。 2、八点平滑: f(i, j) ——表示(i, j)点的实际灰度值 g(i, j) ——变换后输出图象(i, j)点的实际灰度值 以(i, j)点为中心取一个N×N的窗口(N = 3,5,7,…八点滤波时N=3),窗口内象素组成的点集以A来表示,经邻域平均法滤波后,平滑后g(i, j)的值为九个像素点的灰度值值和。 3、中值滤波:取以(i, j)点为中心取一个N×N的窗口(N = 3,5,7,…),对窗口内的所有像素点的像素值进行排序,去中值作为该点的输出灰度值。取合理的邻近像素值来替代噪声点,所以只适合于椒盐噪声的去除(去椒盐噪声比超限像素平均分更有效),不适合高斯噪声的去除。在滤除随机噪声时,中值滤波要比均值滤波效果弱。 四、代码及实现效果 1、四点平滑: 代码: clear close all h=imread('che.jpg'); %读入彩色图片 c=rgb2gray(h); %把彩色图片转化成灰度图片,256级 figure,imshow(c),title('原始图象'); %显示原始图象 g=imnoise(c,'gaussian',0.01,0.002); %加入高斯噪声 figure,imshow(g),title('加入高斯噪声之后的图象'); p=size(g); %输入图像是p×q的,且p>n,q>n x1=double(g); x2=x1; for i=2:p(1)-2

边缘保持滤波器

实验三 边缘保持滤波器 一、实验内容 本次实验需要根据课堂讲授知识,按照已知算法,在VC++6.0平台上编译图像边缘保持滤波处理的程序。边缘保持滤波是基于均值滤波和中值滤波的一种滤波器。该滤波器在滤除噪声脉冲的同时,又不至于使图像边缘过于模糊。 二、实验原理 边缘保持算法的基本过程如下: 对灰度图像的每一个像素点],[j i 取适当大小的一个邻域,分别计算],[j i 的左上角子邻域、左下角子邻域、右上角子邻域和右下角子邻域的灰度分布均匀度V ,然后取最小均匀度对应区域的均值作为该像素点的新的灰度值。 用公式表示为: N j i f j i f V /)],[(],[22∑∑-=,或 22]),[],[(j i f j i f V -=∑ 三、实验代码 BOOL CBmpProcessView::EdgeFilter(LPSTR lpDIBBits, LONG lWidth, LONG lHeight) { // 指向源图像的指针 LPSTR lpSrc; // 指向缓存图像的指针 LPSTR lpDst; // 指向缓存DIB 图像的指针 LPSTR lpNewDIBBits; HLOCAL hNewDIBBits; //循环变量

long i; long j; //像素值 double result; unsigned char pixel[9]; // 暂时分配内存,以保存新图像 hNewDIBBits = LocalAlloc(LHND, lWidth * lHeight); if (hNewDIBBits == NULL) { // 分配内存失败 return FALSE; } // 锁定内存 lpNewDIBBits = (char * )LocalLock(hNewDIBBits); // 初始化新分配的内存,设定初始值为255 lpDst = (char *)lpNewDIBBits; memset(lpDst, (BYTE)255, lWidth * lHeight); //使用水平方向的结构元素进行腐蚀 for(j = lHeight-2; j > 0; j--) { for(i = 1;i

均值中值滤波以及边缘检测

《数字图像处理》实验报告 标题:数字图像的中值,均值滤波 和边缘检测算法 姓名: 学号: 班级:

数字图像滤波原理及方法和边缘检测算法 一.滤波原理 图像滤波,即在尽量保留图像细节特征的条件下对目标像的噪声(包括高斯噪声、椒盐噪声、随机噪声)进行抑制,是图像预处理中不可缺少的操作,其处理效果的好坏将直接响到后续图像处理和分析的有效性和可靠性。 由于成像系统、传输介质和记录设备等的不完善,数字图像在其形成、传输记录过程中往往会受到多种噪声的污染。另外,在图像处理的某些环节当输入的像对象并不如预想时也会在结果图像中引入噪声。这些噪声在图像上常表现为一引起较强视觉效果的孤立象素点或象素块。一般,噪声信号与要研究的对象不相关它以无用的信息形式出现,扰乱图像的可观测信息。对于数字图像信号,噪声表为或大或小的极值,这些极值通过加减作用于图像象素的真实灰度值上,在图像造成亮、暗点干扰,极大降低了图像质量,影响图像复原、分割、特征提取、图识别等后继工作的进行。要构造一种有效抑制噪声的滤波机必须考虑两个基本问题能有效地去除目标和背景中的噪声;同时,能很好地护图像目标的形状、大小及特定的几何和拓扑结构特征。 二.滤波方式 (1)中值滤波: 中值滤波由Turky在1971年提出,最初用于时间序列分析,后来被用于图像理,并在去噪复原中取得了较好的效果。中值滤波器是基于次序统计完成信号恢的一种典型的非线性滤波器,其基本原理是把图像或序列中心点位置的值用该域的中值替代,具有运算简单、速度快、除噪效果好等优点,曾被认为是非线波的代表。然而,一方面中值滤波因不具有平均作用,在滤除诸如高斯噪声之非冲激噪声时会严重损失信号的高频信息,使图像的边缘等细节模糊;另一方中值滤波的滤波效果常受到噪声强度

图像处理,图像滤波,边缘处理

课程设计 姓名: 学号: 学院: 专业: 课目:数字图像处理

图像处理实验部分 此次实验在MATLAB中实现:打开MATLAB,“file”—“new”—“script”,则创建新文件即完成,在新建的“Editor-Untitled”即可编程。下面简单介绍此次实验中主要应用到的函数: 1、imread 该函数用于读入各种图像文件。如:a=imread(‘rice.tif’),其中图像rice.tif在MATLAB安装目录“matlab”-“toolbox”-“images”-“imdemos”下,若图片不在该目录下,则读入图像格式如下:a=imread(‘D:\Demo4.bmp’)。 2、imshow 该函数用于图像文件得显示。如a=imshow(‘rice.tif’)。 3、rgb2gray 该函数用于将彩色转为黑白图像。如:I=rgb2gray[I]。 4、subplot 该函数一般格式为:subplot(m,n,p),用于在同一窗口中绘制 多个子图,把图形窗口分割为m*n个子图,然后再第P个小窗口 中创建坐标轴。 5、fspecial 利用该函数可生成滤波时所用的模板。其调用格式如下:

(1)h=fspecial(type) (2)h=fspecial(type,parameters) 参数type指定滤波器的类型,parameters是与滤波器类型有关的具体参数。 6、medfilt2 该函数用于实现中值滤波。其调用格式如下: B= medfilt2(A,[m,n]):对图像A执行二维中值滤波。每个输出像素为m*n领域的中值。在图像边界用0填充,所以边缘的中值为[m,n]/2,区域的中值,可能失真。 7、imfilter 该函数对任意类型数组或多维图像进行滤波。调用法如下: B=imfilter(A,H) B=imfilter(A,H,option1,option2,…) 或 g=imfilter(f,w,filtering_mode,boundary_options,size_opti ons) 其中,f为输入图像,w为滤波掩膜,g为滤波后图像。filtering_mode用于指定在滤波过程中使用“相关”还是“卷积”。boundary_options用于处理的边界充零问题,边界的大小由滤波器的大小确定。

(整理)图像增强、图像滤波、边缘检测的MATLAB实现

图像增强、图像滤波及图像边缘检测MATLAB实现程序 图像增强 图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。其主要目的是使处理后的图像对某些特定的应用比原来的图像更加有效。图像增强技术主要包含直方图修改处理、图像平滑化处理、图像尖锐化处理、和彩色处理技术等。图像增强有图像对比度增强、亮度增强,轮廓增强等等。 下面利用直方图统计算法对灰度图像进行增强: 程序代码: I=imread('cameraman.tif'); subplot(121) imshow(I); title('原始图像'); subplot(122) imhist(I,64) %绘制图像的直方图,n=64为灰度图像灰度级,若I为灰度图像,默认n=256;若I为二值图像,默认n=2。 title('图像的直方图'); (请自己运行查看) n=256时: (请自己运行查看)

下面利用直方图均衡化增强图像的对比度: I=imread('cameraman.tif'); J=histeq(I); %将灰度图像转换成具有64(默认)个离散灰度级的灰度图像 imshow(I) title('原始图像') figure,imshow(J) title('直方图均衡化后的图像') figure(1) subplot(121);imhist(I,64) title('原始图像的直方图') subplot(122);imhist(J,64) title('均衡化的直方图') (请自己运行查看) 分析:从上图中可以看出,用直方图均衡化后,图像的直方图的灰度间隔被拉大了,均衡化的图像的一些细节显示了出来,这有利于图像的分析和识别。直方图均衡化就是通过变换函数histeq将原图的直方图调整为具有“平坦”倾向的直方图,然后用均衡直方图校正图像。 下面利用直方图规定化对图像进行增强: I=imread('cameraman.tif'); figure,imshow(I); title('原始图像'); hgram=50:2:250; %规定化函数 J=histeq(I,hgram);

边缘保持最优化滤波方法

1引言 在摄影时,由于分辨率不足、感光度设置偏高等原因,经 常会遇到一些布满椒盐噪声或斑点噪声的照片,这些细小的噪声严重影响了照片效果。在这种情况下,通常可以使用均值滤波等滤波方法对照片进行平滑处理。平滑后,一般可以达到去除噪声的效果。但是一些边缘也随之变得模糊,导致照片丢失很多细节。有没有一种方法可以达到既去除噪声的目的,又不破坏边缘和细节呢?答案是肯定的。边缘保持最优化(EPOS )滤波算法就是这样一种在去除噪声的同时可以最佳保持边缘和细节的滤波方法,下面将对这种方法的原理和实现加以详细介绍。 2 EPOS 滤波原理 2.1 算法综述 EPOS 滤波是一种可以智能调整滤波窗口大小和形状的平 滑算法。它通过首先使用噪声方差的大小对均匀区域和含有边缘或孤立点的区域加以判断区分,然后仅对每个像素邻域中的均匀部分进行均值处理,来达到在滤波的同时保证边缘不变模糊的目的。在确定滤波窗口的大小和形状时,该算法将窗口的邻域分为8个不相重合的部分(如图1),通过逐步剔除与中心像素不相同的邻域,应用最后剩余区域中的像素灰度统计量估算中心像元最终的灰度值。 2.2算法流程与分析 EPOS 执行滤波的流程如图2。通过分析其计算过程可知,EPOS 滤波的执行流程可以分为如下几个部分:判断是否符合 均值滤波条件,窗口区域分块并计算各块方差,选出方差最大的一个并进行分块剔除,重新计算剩下分块方差。若仍不符合条件,进行窗口缩小,并重复上述过程,直至符合条件或窗口缩小为3×3的为止。由于每个窗口都是三角形,需要分别计算,给程序编码带来一些麻烦。综合分析,可以设置3个循环,分别为窗口移动循环、窗口缩小循环和区域删减循环,进行EPOS 滤波计算。 边缘保持最优化滤波方法 吴文瑾 黄敬贺 摘 要:在图像处理中,去除噪声的同时常常会给边缘与细节带来不可恢复的损失。为了解决 这一问题,讲解一种可以在去噪的同时,保留边缘细节的边缘保持最优化滤波方法。首先对该算法原理与实现方式进行了阐述,之后通过实验对该滤波方法的效果加以分析,最后对该算法的优缺点进行了总结。 关键词:滤波;平滑;边缘保持; EPOS 图1 EPOS 算法将滤波窗口划分成的8个 不相重合的部分 图2 EPOS 执行滤波的流程图

图像处理之四种边缘检测算子比较

数字图像处理 第三次作业 SpadesQ, Sun Yat-sen University 2017/4/27 1.边缘检测 边缘一般是指图像在某一局部强度剧烈变化的区域。强度变化一般有两种情况: ●阶跃变化 ●屋顶变化 边缘检测的任务: 找到具有阶跃变化或者屋顶变化的像素点的集合。 边缘检测基本原理: 既然边缘是灰度变化最剧烈的位置,最直观的想法就是求微分。 对于第一种情况:一阶微分的峰值为边缘点,二阶微分的零点为边缘点。 对于第二种情况:一阶微分的零点为边缘点,二阶微分的峰值为边缘点。

2.matlab内置函数

分析:通过对Roberts,Sobel,Prewitt,Log和Canny进行MATLAB 仿真实验对比,结果表明,Sobel,Prewitt和Roberts算子的算法简单,但检测精度不高,Log和Canny算子的算法复杂,但检测精度较高。在应用中应根据实 际情况选择不同的算子。

3.四种算子对比分析 3.1 Sobel算子 Sobel算子在边缘检测算子扩大了其模版,在边缘检测的同时尽量削弱了噪声。其模版大小为3×3,其将方向差分运算与局部加权平均相结合来提取边缘。在求取图像梯度之前,先进行加权平均,然后进行微分,加强了对噪声的一致。Sobel 算子所对应的卷积模版为: 图像中的每个像素点和以上水平和垂直两个卷积算子做卷积运算后,再计算得到梯度幅值G ( x,y),然后选取适当的阈值τ,若G ( x,y)>τ,则(i ,j)为边缘点,否则,判断(i,j)为非边缘点。由此得到一个二值图像{ g (i,j)},即边缘图像。Sobel 算子在空间上比较容易实现,不但产生较好的边缘检测效果,同时,由于其引入了局部平均,使其受噪声的影响也较小。若使用较大的邻域,抗噪性会更好,但也增加了计算量,并且得到的边缘比较粗。在对精度要求不是很高的场合下,

相关主题
文本预览
相关文档 最新文档