SUSAN算子角点提取在船舶舷号定位中的应用
2015-08-05王星邓小炼
王星++邓小炼
摘要:指出了船舶的舷号包含着船舶的基本身份信息以及船只在其所属部门和序列中的位置,通过对船舶舷号的检测,可以迅速识别出对方船只的身份信息。这对舰艇在海洋航行中区别和联络他国船舶以及在海事营救时搜寻并确认失事船只中有着重要的应用。提出了一种船舶舷号的检测方法,该法先将彩色船舶图像转化为HSI模型,然后利用SUSAN算子角点检测算法提取饱和度图像中的角点。当检测出角点以后,再进行多次搜索,实现对舷号的检测和定位。实验表明:这种方法拥有非常好的稳定性和有效性。
关键词:舷号的检测;像素;质心
中图分类号: TP391
文献标识码: A 文章编号: 16749944(2015)06029203
1 引言
SUSAN算法是由Smith[1]等提出的一种关于图像的处理方法,该算法是基于像素领域的。它是用含有若干元素的圆形模板,遍历图像的每个像素点,根据每个像素的灰度,求出角点响应函数的值。如果其值大于某阈值,并且它还是局部的极大值,则认为这个点为角点。
本文通过SUSAN算法检测出船舶图像中的角点[2],然后根据图像中角点的分布状况,先对船舶舷号进行粗略定位,然后再进一步进行精确地定位,从而实现对舷号的准确检测。
2 图像的初步处理
首先对图像进行初步处理,本文用彩色模型。 我们根据色调来滤掉非舷号的背景颜色和字符具有的各种颜色所产生的干扰。这是因为外面照射的明暗和强弱等对模型的色调不会产生较大的干扰。
在饱和度方面,船舶舷号的背景色和字符两者在舷号部分的这里面有很大的差异。舷号字符中又包含着大量的有规律的角点,所以也可同时利用饱和度来帮助对图像舷号的定位。
在对图像初步处理时,需要先将它的模型转化为模型, 接着再对图像饱和度实施有效的中值滤波, 这样来去除噪声。
根据上面的公式,我们对图像开始转变,下面的图A显示的就是转变完之后的结果图。接下来,我们可以对它实施相关的滤波处理。
文中,我们对图1所展示的饱和度图进行了滤波。方便后续的计算,我们先对饱和度成倍放大,这样做的目的是加大图像中各个像素点间的饱和度值。取S0=kS,k=255。为了消除噪声,接着我们对饱和度图进行了中值滤波的处理。
3 角点的提取
角点有很高的信息含量,一方面,角点可以保留图像的许多重要特征[3],另一方面,角点能减少相关信息的一些数据量,可以大大减化计算量。
如图2所示的圆形区域, 称之为模板。模板的核在其中心十字交叉的地方。
当我们在整个区域里面移动该模板时,它和前景会产生不同的接触状况,如图2所示。在图像的角点提取中,我们需要用到USAN[4]。
有待进行处理的这些点是基于像素领域的,为了求出模板中所有的点与这些点的相似程度[5],我们用该模板对图像里面的所有点进行遍历,在这个过程中,把需要处理的这些点与模板区域里面的核组合重叠在一起,按照上述方法求解出相似程度值。包含在模板里面的前景区域部分表示的的积分结果与这个值在数值上面是等价的。
计算相似程度的公式如下式:
若质心和圆形模板核之间的距离比模板半径的1/4小,则把该位置标记为非角点的位置。
我们对饱和度分量的图像实施SUSAN角点提取,其条件是图像数据满足在色调值的范围内。在所做的实验里面, 我们使用的SUSAN掩模的像素数是37,角点阈值是28 。若掩模区域的核像素点的角点强度值比这个区域里面的所有其他位置上的角点强度值要小, 那么这里就是非角点的地方,我们把这里标注下来,就这样处理完全部的地方与位置。
然后再把图像扫描一遍,如果那些点对应的R比0要大,而且之前未被标注过,那么这些点就是最终要提取的角点。图3是将饱和度分量图实施检测以后的角点图。
根据图3我们能看出, 当对饱和度分量图实行检测以后,船的舷号区域角点分布很有规律,所以我们接下来的定位可以大大简化计算过程,迅速提升运算的速度。
4 初步定位的搜索
(1)按列排序好搜索出来的所有角点。搜索的范围是190个像素的宽度,在这个范围内从第一个角点开始搜索。
(2)当角点的数目比16大时, 那么就认定它是船舶舷号纵坐标的起点, 反之, 就认为它是单独角点, 接着搜索下一个角点, 这样一直搜索,当找出了纵坐标的起始点后,就停止搜索。
(3)如果找出了纵坐标的起始点以后, 就接着搜索,当找到这样的一个范围,它比16个角点大,并且这个范围就是最靠后的一个时,那么船舷号终点的纵坐标就是这个范围里面最末尾的那个角点。
(4)当角点包含在纵坐标的范围里面时,就把所有的这些角点根据行来排列,然后对这些角点按照从上到下的方向进行搜索, 搜索的范围是65个像素,门限值是16,搜索的步骤与途径和上面一样。就这样求出与起始点相对应的横坐标值。图4是初步的结果图。
5 舷号进一步地检测
我们还需要对舷号部分做更深一步的检测和定位。只有这样才能实现我们的预期的结果。根据图4,我们可以看到船舶舷号部分的角点是具有一定规律地分布。所以我们根据角点的特点设计了下面所示的精确的更进一步的检测和定位方法。
(1)将初步定位的角点根据列来进行排列。然后从左至右地检测每一个角点。 假如有两个角点之间的间隔为16个像素时,就把后一个角点相应的纵坐标设置为新的船舶舷号部分的纵坐标,就这样地搜索下去,一直到当出现两个角点之间的距离比16个像素小的时候,就停止。
(2)用同样的途径和方式,根据从右边到左边的方向,进行搜索,这样可使船舶舷号的区域变小一些。
(3)按照由左到右的方向搜索每一个角点,一直到新的船舶舷号区域1/4的地方。当有两个角点之间的间隔比38个像素大时,就把这之前的像素都删除,而船舶舷号区起始点所对应的纵坐标就是下面紧接着的一个角点相应的纵坐标。
(4)再用这样的途径来进行由右边向左边地搜索。这种方法可以删除一些无关的角点。
(5)根据以上步骤找到船舶舷号部分内部的角点后,再把这些角点由行来组合排列。按照由上面到下面的方向进行搜索,一直到舷号部分的2/3的地方。
(6)当有两个角点相隔的距离比19个像素大的时候,就把前面的角点都删除,接着再根据由下面到上面的方向,使用前面一样的途径和步骤进行搜索,当找到舷号开头角点所对应横坐标值的时候,停止搜索。图5为经过精确检测后的船舶舷号部分图像。
6 分析与总结
文中是根据SUSAN角点提取的方法, 提取船舶
图像的角点, 然后再对舷号进行进一步地检测和定位。实验表明,这种方法可以非常好地抑制噪声,而且效率比较高,有很好的稳定性。
参考文献:
[1]何东健.数字图像处理[M].西安:西安电子科技大学出版社,2003:30~32.
[2]席志红,刘利彬,许新利.SUSAN角点检测算法改进[J].应用技术,2006,33(9):29~31.
[3]张桂林.利用SUSAN算子的特征复合相关定位算法[J].红外与激光工程,2000,29(4):34~37.
[4]荆仁杰,叶秀清,徐胜荣等.计算机图像处理[M].杭州:浙江大学出版社,1990.
[5]张春森.基于点特征匹配的SUSAN,Harris算子比较[J].西安科技大学学报,2007,27(4):609.
[6]李俊山.数字图像处理[M].北京:清华大学出版社,2007.