第29卷第5期 2012年5月 计算机应用与软件 Computer Applications and Software V01.29 No.5 Mav 20l2 一种改进的CHNN图像边缘检测方法mWeighted CHNN 赵广复 张有顺 (郑州职业技术学院软件工程系(郑州大学信息工程学院河南郑州450121) 河南郑州450001) 摘要 针对文献[1]中提出的CHNN图像边缘检测算法缺乏足够的参数来调节边缘检测的灵敏度以及检测结果图像边缘过宽 的缺陷,提出一种改进的CHNN方法,称之为Weighted CHNN(加权的CHNN,简称WCHNN)方法。该方法在CHNN神经网络元的n 个连接上施加权值,可以通过各种局部搜索、优化算法,使用指定的样本输入、样本输出等方法来训练该WCHNN网络从而确定各权 值,使得WCHNN在保留了CHNN的优点的同时,还可以根据不同的样本输入输出图像来调节边缘检测的灵敏度,从而提高检测结 果质量并避免检测结果中出现边缘过宽的情况。实验结果表明,训练后的WCHNN网络,比起CHNN有着更低的边缘检测错误率, 并可检出原来CHNN方法漏检的边缘。 关键词 中图分类号图像边缘检测 CHNN人工神经网络TP391.41 文献标识码A 加权参数参数训练 AN IMPRoVED CHNN IMAGE EDGE DETECTIoN METHoD—WEIGHTED CHNN Zhao Guangfu Zhang Youshun (Department ofSoftware Engineering,Zhengzhou Technical College,Zhengzhou 450121,Henan,China) (CollegPofInformationEngieerning,Zhengzhou University,Zhengzhou 450001,Henan,China) Abstract In response to the shortcomings of CHNN image edge detection algorithm brought up in literature tj that it lacks enough parameters to adjust the sensitivity of edge detection and that the edge detected is too wide,an improved CHNN method which is called Weighted CHNN(WCHNN in short)is presented.This method puts weights on n connections of each element of neural network of CHNN, and trains the WCHNN network using various local search and optimisation algorithms,as well as using designated sample input and output images to determine every weight value,therefore the WCHNN gains the ability of tuning the sensitivity of edge detection according to different inputs and outputs of images while retaining the advantages of CHNN,SO that improves the quality of detection results and prevents the situation of too—wide edges in detection.Experimental results show that the trained WCHNN network can get lower edge detection error rate than CHNN,and it can also detect those edges missed by CHNN. Keywords Image edge detection CHNN Artiifcial neural network Weighted parameters Parameter training 了一种新的基于Hopfield神经网络的边缘检测方法,称为Con— 0 引 言 图像的边缘是指图像中两个不同区域之间边界的位置,通 常处于灰度、色彩,或是纹理变化剧烈的地方 J。在许多图像 处理系统中,图像的边缘检测往往处于第一步,后续的各种操 作,比如图像分割、边界检测、模式识别等等,都要依赖于图像边 缘检测步骤的性能与质量,可见图像边缘检测的重要性 J。至 今研究人员提出的各种图像检测算法大致可分为以下几种:基 于一阶与二阶微分的边缘检测方法、基于小波变换的方法、基于 textual—Hopfield Neural Network(CHNN),该方法可以有效地抑 制图像噪声对边缘检测结果的影响,所得结果类似于人眼观物 的辨识结…。但CHNN方法亦有其不足之处经。实验证明, CHNN中参数的不同取值对检测结果没有影响,即CHNN方法 缺乏足够的参数来调节边缘检测的灵敏度与对噪声的敏感度; 二是CHNN图像边缘检测的结果中,边缘部分普遍宽约5到10 像素点,检测精度较低。为提高算法普适性与检测精度,本文提 出了一种对CHNN进行改进的边缘检测方法,称之为Weighted CHNN(简称WCHNN)。该方法对每个表示图像像素点的神经 形态学的方法、基于模糊理论的方法、基于分形几何的方法、标 记松弛匹配法、神经网络法、自组织聚类法、遗传算法、动态规划 法、矩不变边缘、最小代价函数法等 J。其中,Yan Zhu与Hong Yan提出了一种基于Hopfield神经网络的边缘检测方法 j,该 方法使用非监督式的Hopfield神经网络来实现边缘检测,但其 本质仍是只考虑单一像素点特性的边缘检测方法,会造成许多 不连续的碎块…。在前人工作基础之上,Chuan.Yu Chang提出 元与其他表示像素点的神经元的连接上施加权值,可以通过各 种局部搜索、优化算法以及使用指定的样本输入、样本输出等方 法来训练该WCHNN网络从而确定各权值,然后将训练后的 WCHNN网络用于对目标图像的边缘检测。与CHNN对比实验 收稿日期:2011—06—08。赵广复,副教授,主研领域:图形图像处 理及教学。张有顺,教授。 第5期 赵广复等:一种改进的CHNN图像边缘检测方法~weighted CHNN 所得的比率。 257 结果表明,WCHNN得到的检测结果具有更高的检测精度,并可 检出原来CHNN方法漏检的边缘。 (2)噪声一信号比率 噪声-信号比率 ],为实际输出图像的边缘点中与样本图 像不符合的点的个数,除以实际输出图像的边缘点中与样本图 ∑ 像相符合的点的个数,所得的比率。 (3)加权和规范化偏差 1 CHNN方法以及常用检测结果评价指标 1.1 CHNN方法简要描述 CHNN使用一个Hopfield神经网络,接受一幅N×N的灰度 图像作为输入,每一像素点在二维坐标上对应于一个神经元,每 个神经元接受它所对应的像素点的灰度值以及它在(P,q)范围 内的邻域内的神经元的输出作为输入,神经网络运行至稳定状 态的输出经过阈值二值化之后即为边缘检测的结果。该方法的 详细描述如下。定义 。为位于坐标( ,i)的神经元的状态oP、q 加权和规范化偏差E6]WND为: 1 ∑ ∑ ∑ d , “ WND 毒 南 (6) 其中, 为实际检测出的边缘点数目;,,为样本输出图像中的边 缘点数目;IN取值为max( ,,『).6为缩放常量;e为从一个实际 检测得出的边缘点,到对应的样本输出图像中边缘点的距离。 表示神经元邻域的范围,定义如式(1)所示: q P 此评价方法可以全面地对实际边缘检测结果进行评价。所得的 (y, )=∑‰ ∑8 一q :一P (1) 值越大,说明边缘检测结果与样本输出越一致。 p,q在文献[1]的实验中取值为1。其中,如果i= ,6 =1; 否则8。。=O o可知函数 ( √)对于位于( ,i)以P,q定义的邻 域之内的神经元(yJ)返回1,否则返回0。定义: dx (2) 2 Weighted CHNN方法 2.1 对CHNN方法参数取值的分析 文献[1]中介绍的CHNN方法中, 是最重要的参数,我们 分别对其取不同的值来考察CHNN方法检测结果是否有变化。 使用图1的输入图像以及样本输出图像作为测试用例。 其中,g 代表像素( ,i)的灰度值;max(G)表示最大的灰度 值。那么,神经元( ,i)的输入则可以用以下公式计算: N ne , =∑∑ 。 。+L, y;1 J=1 1 N N =一÷∑∑d p q y√) l+ ("× 而net exp . (3) (4) 、。 图1 样本输入图像CNN3.in以及CNN3—0ut ] 神经元的激励函数定义如下: 。) 其中,叩是给定的sigmoid函数的陡度(在文献[1]中多取0.7)。 此函数用以将第n次更新时的神经元状态值更新到第n+1次 时的值。 神经网络的能量函数定义为: net _= ),√) . (5) 对于CHNN方法,令P=q=1,给出不同的叼值,应用 CNN3.in输入图像所得的结果如图2所示。 可以通过能量函数的值来判断CHNN网络是否已经稳定。 使用CHNN进行图像边缘检测的整个过程如下: (1)所有有神经元的状态初始化。 (2)使用式(3)计算每个神经元( ,i)的总输入。 (3)用等式(4)计算每个神经元的新状态。 (4)复步骤(2)以及步骤(3),直至CHNN已经达到稳定状 =0.01 / 、 \ / =01 .态,即所有神经元的状态值都不再改变。可以用状态值的变化 是否都小于一个非常小的值来判定神经网络是否已经稳定。 (5)取稳定后所有神经元最终状态值的平均值为阈值,状 态值高于阈值者为边缘点,低于阈值者为非边缘点。 / 、/ 1.2对边缘检测算法实际结果的评价 对于一幅样本输入图像以及其对应的样本输出图像,可以 将边缘检测算法对于该样本输入图像的实际检测结果与样本输 出图像相比较,评价出算法实际结果的好坏。常见的评价指标 有以下三种: (1)理想边缘检出率 誉 、、 (, lf U 1 =0.3 图2叼取不同值时采用CHNN方法得到的边缘检测结果 可以观察到,对于不同的 值,CHNN方法所得的结果并无 太大的变化。将这些输出图像与CNN3-out样本输出相对比,计 算出它们的各项评价指标,如表1所示。 理想边缘检出率 ,为实际输出图像中边缘点与样本输出 图像边缘点相符合的个数,除以样本输出图像中边缘点的个数, 258 计算机应用与软件 表1-q取不同值时得到的边缘检测结果的评价指标 2012生 速度、引入多样性、在可能陷入局部最优时跳出局部最优,还种 群规模:30。 ”值 O.Ol O.1 O.2 0.3 理想边缘检出率 0.815318 O.813145 0.810972 0.808256 噪声一信号比率 1 09727 1.0982 1.O99l3 1.1o013 WND 0.72339 0.723305 0.723165 0.723202 算法步骤: (1)随机初始化整个种群,指定样本输入与样本输出图像。 (2)使用每个体代表的参数组合去运行WCHNN算法,对 所得的边缘检测结果计算错误率衄,采用1/ER作为适应值。 (3)采用锦标赛算子来选择种群规模的1/3的父代;并且 O.5 O.7 0.802825 0.801195 1.10284 1.07593 0.722814 0.728959 上一代中的最优个体一定会被选入下一代中。此1/3将直接复 制到子代中。 由表1可知,对于参数 的不同取值,所得的结果差别并不 明显,即单纯调节参数 不能有效地调节CHNN边缘检测法的 (4)从该1/3父代中杂交产生另外种群规模的1/3的子 代。每一次从3步的1/3父代中随机挑选两个个体进行交叉, 灵敏度。 2.2 Weighted CHNN网络的定义 基于对CHNN方法参数的实验与分析,本文提出对其改进 后的Weighted CHNN方法。将CHNN算法的P、q参数固定为1, 然后为为每个连接添加一个权值,单个神经元( ,i)与它的邻 域内的神经元的连接如图3所示。 . r l 图3添加权值后神经元( , )的邻域内的神经元的连接示意图 则需将计算神经元( , )输出值函数修改为: 删 =一寺 Ay-x,j-id :, (7) 一【Y,J)E ( t‘) 其中,N( ,i)={( 一1,i一1),( ,i一1),( +1,i一1),( 一 1,i),( +1,i),( 一1,i+1),( 一1,i+1),( ,i+1),( +1, i+1)}。A… 是神经元( ,i)到神经元(y, )的连接之上的权 值。表示如下: 厂A—l,一1 A0,一1 A1,一1 1 厂O;1 口2 Ⅱ31 l A一1.0 一 A1,o l=l。4 一。5 I (8) L AⅡ7。8_J 一1,l A0I A11 J L 6“..n 到08是Weighted CHNN算法的参数;它们的取值范围取 [一1,1]。由于此算法对CHNN所作的主要改变便是于每一神 经元到其邻域神经元的每一连接之上施加了权值,因此将其命 名为Weighted CHNN(加权的CHNN),简称WCHNN。 2.3 Weighted CI|口 N网络的训练 由WCHNN的定义可以看出,如果令神经元连接权值为1, 则WCHNN网络事实上就相当于一个CHNN网络。要令 WCHNN适用于不同性质的图像的边缘检测工作,自然需要使 用相应的样本输出图像、样本输出图像对该WCHNN网络进行 训练;这一过程即是确定参数组合l ,0。,Ⅱ:,03,q ,。5,86,。7, o。],使WCHNN对给定的输出图像的处理结果接近于理想的 样本输出图像。 为了较好地训练WCHNN网络参数,本文针对WCHNN的 特点设计了的遗传算法来对WCHNN进行训练。为了加快收敛 这两个个体记为P1以及P2,最后1/3的子代随机产生。, / 的 (5)对子代进行变异操作。变异的方法为对每个个体随机 个参数赋予处于各参数的上界与下界之内的随机值。n 的计算方法为: =mnd(0,min(argc一1,C× +1)) (9) 其中,argc代表参数的个数,对于WCHNN,其值为9。C代表最 近连续最大适应值都没有发生变化的代数。 (6)C>20时,采用爬山法对最优个体进行优化。方法为 依次对最优个体的每个参数向左、右进行微调,有利的微调将被 接受。依次采用该参数的上界下界的0.0l倍至0.000001倍为 步长进行微调,步长每次缩减为上次的1/10;重复爬山的过程 至最优个体的适应值不再增大为止。 (7)如果满足条件则优化停止。否则跳转到步骤(2)。 3实验结果与分析 3.1对WCHNN网络的参数训练 分别使用无噪声的样本输入图像CNN3。in与加入了1.8% 高斯分布的噪声的输入图像CNN3GaussianNoisel8一in,对 WCHNN进行训练过程。训练中的错误率指标使用WND方法 来计算。 的上界取I,下界取0.O1;a 至a 的取值范围为[一 I,I]。相应的样本输入、样本输出如图4所示。 样本输入圈像 样本鞠出图像 ‘l1 l_ 毒 厂 /I/I/ r一 ) g - 嗽 0 in Ch ̄/3-out ‘ 睡 { }薹曩 1 l尊¨ 厂 /I/I/ I __ ’r| __- H 鼯ia Noi5e1B-in Ch ̄out 图4 WCHNN的训练样本的输入输出用例 得到将使用无噪声样本图像训练所得的该组参数记为 WCHNNI,将使用有噪声样本图像训练所得的另一组参数记为 WCHNN2,其值分别为: )第5期 赵广复等:一种改进的CHNN图像边缘检测方法一weighted CHNN 259 麓 ,, 高噪声输入,使用有噪声样本训练的WCHNN2的噪声.信号比 率还是要比原CHNN算法低。WCHNN1对于高噪声的输入,各 项指标都指示其边缘检测质量大幅下降,而WCHNN2对各噪声 程度的输入图像的边缘检测结果的质量都比较稳定,各项指标 (10) 变化幅度不大,即经过训练的WCHNN网络具有更好的普适性。 将WCHNN与CHNN用于对图像处理领域的一些常用测试 图像进行边缘检测,对比如图6所示。可以看出,WCHNN得到 L0 n j 0.9182 0.4951 0.0989 3.2 WCHNN与CHNN对比实验 的边缘检测结果依然更加清晰细腻。 图5和图6以及表2分另U展示了WCHNN与CHNN对相同 表2 CHNN与WCHNN边缘检测结果评价指标值统计表 图像进行边缘检测后得到的图像和评价指标值。 样本输入图像 算法 理想边缘检出率 噪声-信号比率 WND ■ ; CHNN 0.80119 1.07593 0.72895 CNN3一in WCHNN1 0.96577 O.18728 0.92029 ““ WCHNN2 0.88593 0.33476 0.87436 一 - _ 。 OIS3-in a珥 I  ̄ussit嗣o1船10_ au嚣1a №1∞1S-in CHNN 0.78924 1.1342l 0.71343 CNN3Gaussi /气 WCHNN1 0.92449 O.4o01l 0.8033 / / anNoisel0 in WCHNN2 0.87126 0.34538 0.87O96 、 、 CHNN 0.78761 1.17931 0.70439 CNN3Gaussi 0 aⅫ WCHNN1 0.88810 1.99939 0.41660 anNoisel8.in 黼 WCHNN 0.84465 0.5O610 0.79366 (- ,一’ .、f 4 结语 本文提出了一种基于Hopfield神经网络的图像边缘检测算 法WCHNN,其源自文献[1]提出的CHNN神经网络边缘检测 法,主要针对CHNN的不足之处进行了改进,赋予了该方法对 于边缘检测灵敏度以及噪声敏感度的可调节能力,使得检测结 果明晰可辨。相比于CHNN简单易实现,WCHNN需要训练样 图5 CHNN与WCHNN进行边缘检测的输出图像 例的输入输出,使用优化方法优化参数选择,但神经网络的训练 ■■圈 是一次训练无限次使用,因此对算法效率的影响还在可接受范 围内 ■■ ■ 1-r 25 1 参考文献 ; 圈 [1]Chuan—Yu Chang.Contextual—based hopfield neurla network for medical image edge detection[J].Optical Engineering,2009,45(3):161 —168. [2]Alper Ba ̄tttrk,Enis Gtinay.Efficient edge detection in digitla images U— sing a cellular neural network optimized by differential evolutionary al・ gorithm[J].Expert Systems With Applications,2009,36(2):2645 . —2650. cT—m。引自文■[1] [3]张小琳.图像边缘检测技术综述[J].高能量密度物理,2007。3 (1):48—49. 图6 WCHNN与CHNN对经典图像边缘检测结果对比图 [4]Yan Zhu,Hong Yah.Computerized tumor boundary detection using a 从图5检测结果中可以看出,训练后的WCHNN1和 Hopfield neurla network[J].IEEE Transactions on Medical Ima ̄ag, WCHNN2都成功检测出来了所有的边缘,而且清晰可见;从表2 2009,16(1):55—67. 中也可以看出,WCHNN要比原CHNN算法在理想边缘检出率 [5]Tamar Peli,David Malah.A study of edge detection algoirthms[J]. Computer Graphics and Image Processing,2009,20(1):l一21. 这一指标上得到的值更高。这表明,WCHNN相比于CHNN有 [6]Yuksel M E.Edge detection in noisy images by neuro-fuzzy processing 更高的边缘检测灵敏度。 『J].International Journal of Electronics and Communications,2008,61 使用无噪声样本输入图像训练所得的WCHNN1,则对噪声 (2):82—89. ’ 最为敏感;而使用有噪声样本输入图像训练所得的WCHNN2, [7]张宇伟,王耀明,蒋慧钧.一种结合sobel算子和小波变换的图像边 则对噪声的敏感程度较低。这表现为对于低噪声输入,使用无 缘检测方法[J].计算机应用与软件,2007,24(4):133—134,161. 噪声样本训练的WCHNN1以及使用有噪声样本训练的 [8]李敏,蒋建春.基于腐蚀算法的图像边缘检测的研究与实现[J]. WCHNN2,它们的噪声.信号比率都比原CHNN算法低;而对于 计算机应用与软件,2009,26(1):82—84.