首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

<<一种基于δ函数的图象边缘检测算法>>一文算法的实现

2013-10-27 
一种基于δ函数的图象边缘检测算法一文算法的实现。  原始论文下载: 一种基于δ函数的图象边缘检测算法。

<<一种基于δ函数的图象边缘检测算法>>一文算法的实现。

  原始论文下载: 一种基于δ函数的图象边缘检测算法。

     这篇论文读起来感觉不像现在的很多论文,废话一大堆,而是直入主题,反倒使人觉得文章的前后跳跃有点大,不过算法的原理已经讲的清晰了。

    一、原理

     文中提出的边缘检测算法原理也不是特别复杂,使用了一个低通滤波函数以及一个高通滤波函数,其形式分别为:

         <<一种基于δ函数的图象边缘检测算法>>一文算法的实现                                            (1)

        <<一种基于δ函数的图象边缘检测算法>>一文算法的实现                  (2)

       当图像中的噪音比较少时,可以直接使用高通滤波器对图像进行滤波,得到图像的细节信息(即边缘处),论文中称之为D算法,计算公式如下:

       <<一种基于δ函数的图象边缘检测算法>>一文算法的实现

    式中顶部的横线应该是表示开平方的意思。

       而当图像含有噪音时,则采用高通和低通滤波器结合方式,使用低通滤波器平滑图像中的噪音,高通滤波器检测边缘,这个原理则类似于高斯拉普拉斯边缘检测过程,论文中称之为C算法,计算公式如下:

<<一种基于δ函数的图象边缘检测算法>>一文算法的实现 

       式中w表示的是窗口大小,取值越大,边缘的宽度越大,建议理想取值为2。

   上面两个式子都已经是离散化的表达方式了,因此实际上也是一种对图像的模板操作,只是模板中的因子需要随着参数的不同而改变。

       注意:D算法仅仅是一维的模板操作,而C算法是二维的。

二、代码

       下面贴出D算法的核心代码:

 

<<一种基于δ函数的图象边缘检测算法>>一文算法的实现 <<一种基于δ函数的图象边缘检测算法>>一文算法的实现

                 原图                      Radius=2,S=3.14,T=1                 Radius=2,S=1.57,T=1

   D算法:

   <<一种基于δ函数的图象边缘检测算法>>一文算法的实现<<一种基于δ函数的图象边缘检测算法>>一文算法的实现<<一种基于δ函数的图象边缘检测算法>>一文算法的实现

     原图                          Radius=2,S0 = 0.3, T0 = 3, S1 = 0.2, T1 = 2              Radius=2,S0 = 3, T0 = 3, S1 = 2, T1 = 2  

    可见,这个算法要取得比较好的效果,是需要调整S/T这些参数,关于这些参数的取值意向,可以参考原文中的一些描述。

    这个工程比较简单,附上C#的程序:http://files.cnblogs.com/Imageshop/EdgeDetectUseDeltaFunction.rar

 

 

*****************************基本上我不提供源代码,但是我会尽量用文字把对应的算法描述清楚或提供参考文档*********************

*************************************因为靠自己的努力和实践写出来的效果才真正是自己的东西,人一定要靠自己****************************

*********************************作者: laviewpbt   时间: 2013.10.26    联系QQ:  33184777  转载请保留本行信息************************

 

热点排行