祝毅鸣
(郑州大学西亚斯国际学院,河南 新郑 451150)
角点特征用来反映图像稳定稀疏的分布情况,如像素、结构与尺寸等,其在医疗影像、建筑物裂缝、数控雕刻以及计算机视觉等领域中起着至关重要的作用。图像角点常用二维空间图像亮度变化程度的点来表示,也可以用图像边缘线的曲率最大值点与最小值点来表示[1]。传统图像角点检测方法均效果不佳,不能精准获取到图像真实信息特征,也不能满足日常生活的需求,为此将引入人工智能技术对图像角点特征取证进行检测。
图像角点检测是图像特征取证与模式识别方面关键性研究课题。当前,对面向图像角点特征取证的检测方法研究诸多,例如张见双,张红民等人[2]发现Harris图像角点特征取证与检测时,由于是人工输入阈值,会出现假角点与角点聚簇等问题,为此对Harris图像角点方法进行改进。先使用分割技术将图像分割成若干个部分,并对该部分图像特征进行取证,再根据取证结果设定阈值,随后使用NCC方法对各部分图像进行特征取证,并将得出结果做匹配,最后通过参数化模型将该过程中出现错误匹配点删除,剩余部分则为正确角点。闫小盼,敖磊等人[3]认为传统检测方法运算复杂,浪费大量时间,提出使用编程方法对图像角点特征取证进行检测。首先根据编程的特征把整个图像分割成两部分,并分别对各部分图像角点进行特征取证,然后使用流水线算法将这两部分图像角点特征做处理,其中流水线算法主要包括导数、加权平均、图像角点响应、最大值与和最小值五部分算法构成,同时需要把该过程中繁琐计算变换成简单的位移与加减法进行计算,最终快速完成图像角点检测。
但以上两种方法存在检测结果与真实图像结果精度低的问题。针对以上存在不足之处,将采用人工智能技术对面向图像角点特征取证进行检测。该方法能够有效缩短取证时间,并能提升检测精度,实现了人工智能检测图像角点特征取证应用价值。
在图像角点特征取证过程中一定会有干扰向量影响取证结果的[4],所以取证图像可能包含多种色彩的特征,有可能就被保存成了RGB色彩模式。根据该模式对图像角点中各像素颜色设定了不同的分量值,同时也将其保存成空间函数的模式。若该图像角点模式进行直接处理,不仅会增加计算难度,还会降低效果。为此,通过在不同干扰情况下对图像做简化处理,而干扰程度最小的简化方式就是把RGB色彩模式图像角点变换成灰度图像,变换公式如式(1)所示。
In=0.3R+0.59G+0.11B
(1)
其中,In表示图像中各颜色灰度值;R和G、B分别表示RGB色彩模式图像色彩中的红和绿、蓝三个不同颜色的分量值。
在图像角点取证时会受到诸多原因的影响,产生噪声干扰,严重影响图像角点特征取证结果[5]。基于此,使用中值过滤算法对图像角点做去噪处理。
中值过滤算法是将图像某个部分D中的所有像素灰度值进行排序,去除该排序最大值与最小值,并提取该剩余部分中间值作为整个部分的中心点像素灰度值,具体计算过程如式(2)所示
g(c,r)=In·med(p(c,r),(c,r)∈D)
(2)
其中,p代表排序序列;(c,r)代表图像D部分中心点数值;med(·)代表符号函数。再采用人工智能检测方法对D部分图像做角点计算,得到式(3)
(3)
其中,(XA,YA)表示角点A在图像空间中的坐标;(xA,yA)表示角点A在检测部分空间中的坐标;(XZS,YZS)表示检测部分右上角全部图像空间中的坐标。
设定δ表示该图像的像素边长,通过对图像像素标记,并将经过相邻部分图像角点长度与像素值做对比,得到式(4)
(4)
其中,LAB代表相邻部分图像角点A与B间距;(xB,yB)代表角点B在检测部分空间中的坐标,完成特征取证。
根据图像角点特征取证结果发现,有很多原因影响去燥过程,如分解尺寸与临界值等,为此就要对角点特征图像做增强处理[6]。
采用掩模平滑方法对图像角点做增强处理,得到式(5)
(5)
其中,sgn()表示符号函数;wj,k表示小波变换系数;λ表示该部分图像阈值。如果|wj,k|≥λ时,则wj,k=λ+1;如果wj,k<λ-1时,则wj,k=0;如果-λ 由于阈值函数具有良好连续性、平滑和无间隔点特性,为此在图像信号处理时会发生多余断点,此时就需要使用掩模平滑将新图像角点做增强处理。 (6) (7) 其中,Q表示该部分图像掩模像素点个数;rj′表示第j′个部分图像角点。 根据式(6)与式(7)可知,假设(x,y)表示边缘线的相邻部分,则方差值较大;反之,则方差值较小,边缘灰度平均分布,其掩模灰度就越平均。假设图像角点是边缘点,就需要将第一个方差灰度值转换成图像角点灰度值,就不会影响图像清晰程度。假设(x,y)表示噪声点,采用其方法可以起到很好的光滑的作用,最终完成对图像角点增强处理。 人工智能技术主要使用链码算法对增强后的图像角点进行检测。链码介绍如图1所示。图1中P代表图像中某个角点的像素,数字0-14表示该角点不同方位的链码数值。再使用跟踪方法把角点形状链码描述,得到图2(白色表示角点像素)。从A点按照顺时针方向运动,形状的边缘用链码描述为L=2140217121010108644。 图1 八邻域链码 图2 图像边缘形状 相对链码是指链码和后一个链码的数值差,如果这两个链码数值差大于4时,则相对链码数值需要在原来基础上减8。而绝对链码是指相对链码从一开始就累加数值。当绝对链码完成一周运动时,得到式(8) A(N)-A(1)=8 (8) 其中,A(N)表示角点最后一个点的绝对链码数值;A(1)表示角点第一个点的绝对链码数值。 设定C(i)与C(i-1)表示角点像素(i)与(i-1)链码,R(i)表示相对链码,A(i)与A(i-1)表示绝对链码值,得到式(9)。 (9) 根据式(9)可知,链码和是指电A(i)、A(i+1)与A(i+2)之和,可以将角点边缘看做成直线,那么该点斜率为sum(i)=A(i)+A(i+1)+A(i+2)。 对于封闭形状,计算前两个点链码和,绝对链码数值是从最后一个点取值的,该点都比初始点大8,详细计算过程如式(10)所示。 sum(1)=A(1)+A(N)+A(N-1)-16 sum(2)=A(2)+A(1)+A(N)-8 (10) 通过式(10)可知,第一个链码和是可能为0或者不是0的数,为了方便计算每个边缘点链码和,把全部链码和除去第一个点链码和,最终获得从0开始的链码和的集合。 链码差表示相邻部分的链码之间差值,如式(11)所示 Diff(i+1)=sum(i+3)-sum(i) (11) 同上,对于封闭图形,计算前两个点链码差过程中,部分数值在第一个与最后一个点取值,即 Diff(1)=sum(3)-sum(N) Diff(N)=sum(N+3)-sum(N-1) =sum(3)-sum(N-1)+24 Diff(N-1)=sum(N+1)-sum(N-2) =sum(1)-sum(N-2)+24 (12) 根据图3可知,图像角点为六角星形状,图4表示该图像角点的链码和、差数值情况。 图3 六角星形状 图4 链码的和、差曲线分布情况 将被检测图像角点平均分割成20部分,同时把链码平均分成10份[7]。为此,使用链码能精准体现出边缘形状特点。图形角点在链码和直线上,直线部分表示图像角点边缘线,弧度线表示边缘的曲线与圆弧。如果链码和线段表示圆弧时,则线段曲度数愈大,则圆弧半径就愈大,反之亦然。 链码差代表2个切割线数值差,并且和曲线偏离直线成正比例关系。如果链码差等于2,代表2个切线夹角呈30°。若边缘形状按顺着逆时针运行,则数值为复数的点称为凹角点;反之,则数值为正数的点称为凸角点。 通过上面图像角点检测分析可知,图像中存在许多点可能会被当成图像真实角点,这些点将它命名为假角点。为此,通过分析假角点产生因素,并依据这些因素提出如下解决方案: 情况一,假角点存在于真实图像角点的相邻部分中。当检测到图像某角点过程中,同时检测与其相邻部分内若干个像素点存在其它角点,再采用链码差方法将检测出角点进行绝对值计算,得出真实角点(绝对值最大),最后将剩余角点删除[8-9]。 情况二,假角点存在于图像边缘线中[10]。先算出邻近两个角点和该角点的斜率绝对值差,再依据得出结果分析其是否为真角点,如果得到的值较大,则为真角点并保留,反之则为假角点并删除。具体计算过程如下: 设置(xi-1,yi-1)代表像素点为i-1空间坐标值,(xi,yi)代表像素点为i空间坐标值;(xi+1,yi+1)代表像素点为i空间坐标值;ki表示像素点i-1到i的斜率值;kk+1表示像素点i+1到i的斜率值;ki与kk+1计算过程如下 (13) 对这种假角点,判断根据为 |ki+1-ki|≤ζ (14) 其中,ζ代表0~0.2的常数。如果式(14)的像素点i-1和i、i+1在相同边缘线上,则i为假角点,将其删除,保留剩余两个角点;反之,i为真角点,将其保留,剩余两个角点删除。 如果在封闭图形中,就需要对第一个与最后一个角点做假检测。设定(x1,y1)表示该图像第一个角点空间坐标;(xm,ym)表示该图像最后一个角点空间坐标,第一个角点斜率计算过程如下 (15) 最后一个角点计算过程如下 (16) 通过分析链码数值大小,可知图像角点人工智能检测结果的精准度,即Diff(i)≤u或者Diff(i)≥v。 其中u与v表示链码上下阈值,u值为复数,v值为正数。u与v的数值大小直接反应检测结果。u和v数值越大,代表角点检测结果越精准;u和v数值越小,代表角点检测结果不精确。为此,通过以上计算得出u和v结果是偏大的,证明人工智能方法可以有效检测出图像角点。 为了证实图像角点人工智能检测方法比文献[2][3]方法正确率高。在网络中随机抽取一张图像,设定角点检测的阈值-u=-1,v=2,N=5,ζ=0.1,实验对比结果如图5所示。 图5 检测方法对比 表1 不同检测方法对比结果 根据表1可以得出,文献[2]方法检测图像角点数为300个,真角点数为160,假角点数为140个;文献[3]方法检测图像角点数为150个,真角点数为98,假角点数为52个;人工智能方法检测图像角点数为600个,真角点数为580,假角点数为20个,该方法准确率为96.67%显著高于文献[2]和文献[3]两种方法。为此,面向图像角点特征取证的人工智能检测方法具有较高准确性、实用性。 通过对图像角点特征取证检测方法存在精度不高,导致丢失、模糊不清等问题的角点特征取证图像无法被检测出,为此,通过提取出图像角点特征,得到取证的图像角点;再使用掩模平滑方法对得出图像做加强处理,得到新的图像角点;最后采用链码差与和、斜率相结的方法对新图像进行检测。仿真结果表明,该方法能有效检测图像角点特征取证效果,并保证检测结果精度。2.3 新图像角点检测
3 仿真结果分析
4 结论