APP下载

一种视频图像船舶吃水线自动检测方法

2012-01-23,,

船海工程 2012年1期
关键词:水尺霍夫自动检测

,,

(上海海事大学 商船学院航海系,上海 200139)

水尺的测量在水尺计重和安全营运等方面都是重要的手段,是后续各种实际应用的前提条件。对于大型船舶而言,每厘米吃水误差可能导致载重误差达到几十甚至上百吨,这使船货双方在商品的结算、处理索赔、通关计税、计算运费等方面带来很大分歧[1]。

借助机器视觉和图像处理方法来检测船舶水尺并推算水尺刻度是一种新颖的方法。周广程[2]利用图像处理方法对船舶吃水线进行提取,将获得的水尺刻度与吃水线之间的距离与人工检测相结合,最终得到水尺读数,并且提出依据吃水线边缘的H梯度、S梯度、I梯度、彩色方向距离梯度以及启发式边缘提取中的边缘搜索次数这5个属性的值均应较大的特点,采用投票方法,根据投票结果选择了可能的真实吃水线边缘。

“基于机器视觉的船舶水尺自动识别和检测方法研究”的目标是提出一种基于机器视觉的船舶水尺自动识别和刻度测量方法,使操作人员能够通过采集船舶水尺图像数据快速准确地测定船舶水尺,避免操作人员的繁复劳动,提高船舶水尺测量的稳定性和精确性,为建立一套便于携带,易于使用的船舶水尺自动识别系统奠定理论基础。

在船舶水尺自动检测方法中,船舶吃水线的提取是后续工作的基础,其结果的精确与否直接关系到后续水尺读数判定结果的准确性。其中,波浪起伏在船体上形成的水迹线对实际吃水线的提取产生很大的干扰,普通的边缘检测方法无法得到正确结果,为此,本文提出一种基于图像处理的船舶吃水线自动检测方法,能准确地得到吃水线位置。

1 船舶吃水线自动检测的新方法

船舶吃水线自动检测的目的是去除水尺图像边缘检测后的水迹线干扰。先通过图像预处理对图像进行平滑,然后进行边缘检测提取出边缘像素,利用几何校正后的图像通过霍夫变换确定水迹线和吃水线边缘位置,最后去除水迹线干扰,见图1。

图1 基于图像处理的船舶吃水线自动检测系统流程

1.1 边缘检测

由于连续的视频是由一帧一帧的静态图像组成,因此对于视频的边缘检测,可以通过对每帧图像进行边缘检测实现。

Canny算子是先对处理的图像选择一定的高斯滤波器进行平滑,抑制噪声,然后细化平滑后的图像梯度幅值矩阵,寻找图像中可能的边缘点,最后利用双门限检测方法,通过双阈值递归寻找图像边缘点,完成边缘提取[3]。

Canny算子具有信噪比大和检测精度高的优点。因此,本文利用Canny算子进行边缘检测。

1.2 几何变换

图像f,像素点的坐标为(x,y),由于几何失真产生了另一幅图像g,其像素点为(x′,y′)。这个变换为

(1)

式中:r(x,y)、s(x,y)——空间变换。

图像的倾斜校正包括,倾斜角度测量和图像旋转。倾斜角度检测主要对变换域的数据进行分析,寻找穿越图像的近似直线,通过霍夫变换将这幅图像变换到变换域。图像中心旋转法对于倾斜校正较为简单,即在一幅图像中确定存在图像信息区域的中心,依据检测出的角度,再围绕中心旋转变换。围绕质心的旋转方法则需要计算出图像的质心,然后围绕质心完成图像处理过程。

本文分割出来的字符是倾斜的,需对其进行旋转处理。为尽可能减少处理带来的干扰,采用图像围绕质心旋转的方法,旋转公式为[4]

(2)

由于拍摄过程中波浪起伏,以至于被拍摄船舶与摄像机不断运动,导致图像中的水尺发生形变。形变的出现会使字符识别中出现误差,因此考虑利用放射变换解决此问题。仿射变换时由2×2矩阵给出的线性部分和一个平移部分组成,此处平移部分单独列出稍显繁琐,因此,在原坐标基础上引入第3个数值为1的坐标,这样便有为实现围绕质心旋转,计算出图像质心,建立变换域,将质心变换到坐标原点(0,0),利用旋转矩阵进行图像变换,然后反变换回原图像坐标,插值处理完成旋转。

(3)

1.3 霍夫变换

霍夫变换是判断图像空间xy中点是否共线的检测,是一种特殊的不同空间之间的变换。设在图像空间有一个目标,其轮廓可用代数方程表示,利用方程变换实现参数在不同空间中的转换。

在图像空间xy中,考虑点(xi,yi)和直线

yi=axi+b

(4)

式中:a——斜率;

b——截距。

通过(xi,yi)的直线有无数条,见图2。

图2 xy平面和参数空间

然而,参考ab平面将等式写成b=-xia+yi的形式。在参数空间中,直线与(xi,yi)相关的直线相交于(a′,b′)点。其中,a′为斜率,b′为xy平面上包含点(xi,yi)和(xj,yj)的直线截距。

霍夫变换是把图像空间xy转换成空间ab中是否有共同点的问题。是将参数空间进一步分割为所谓的累加器单元。(amin,amax)和(bmin,bmax)分别为斜率和截距值期望的范围。坐标(i,j)的单元具有累加值A(i,j),并对应于参数空间坐标(ai,bi)相关的矩形。这些单元最初被置为零,然后,对图像平面中的每个(xk,yk)带入等式,令参数a分别等于对应的b值,那么:

A(p,q)=A(p,q)+1

(5)

为解决直线接近垂直时,直线的斜率接近无限大这一问题,可以利用如下公式。

xcosθ+ysinθ=ρ

(6)

与直线不同,极坐标公式是ρθ平面上的正弦曲线,共线点集Q生成参数空间中交于点(ρi,θj)的正弦曲线,见图3。

图3 xy平面和参数空间的细分单元

θ的增加和对应ρ的求解,(ρi,θj)决定了单元相关累加器A(i,j)中Q的输入[5]。

2 实验与结果分析

为了测试本文方法的性能,通过实际拍摄的船舶水尺视频进行船舶吃水线的检测实验。

视频时长为22 s,帧数为25f/s,分辨率为720×576(16∶9)。实验硬件环境为Intel Pentium1.73 GHz,Windows XP,1 GB内存PC机,算法软件平台:在VC6.0的环境下利用OpenCV视觉算法库完成程序的编写。

2.1 边缘检测、几何校正试验及结果分析

见图4,各直方图上呈现明显的双峰状,选取两峰间的最小灰度级作为阈值可以进行图像的有效分割。

图4 图像切割空间选择

边缘检测前要进行平滑处理,的目是提高信噪比、消除噪声干扰。经过实验验证,Canny算子是最优的边缘检测算子,其利用高斯滤波器进行平滑处理。高斯滤波器为低通滤波器,其对较高频率信号有抑制作用,因此可以较少假边缘点的干扰。

此外,Canny算子检测像素边缘经过边缘连接,确保边缘的完整性。通过多次试验观察,Canny算子的双阈值定为(18,54)时,对于R通道的边缘检测最为理想,见图5。

图5 各算子边缘检测比较

几何校正目的是还原实物本来形状,见图6。

图6 几何校正

2.2 霍夫变换、确定吃水线实验及结果分析

利用霍夫变换检测到的两条边缘线见图7。

图7 霍夫变换检测两条边缘线

图像在经过边缘检测后会出现若干条边缘线,而所拍摄的图像是以水面与水尺为主要对象,因此边缘检测后水迹线边缘和吃水线边缘通常为最长的两条线。由于水迹线一定在吃水线上方,因此当确定两条边缘线位置后去掉位于上方水迹线,即得到吃水线,结果见图8。

图8 通过本文方法找到吃水线

3 结论

本文提出视频图像船舶吃水线自动检测方法能够比较有效地解决在船舶吃水线检测过程中水迹线的干扰问题,从而准确地检测出吃水线位置。多次试验证明,Canny算子在进行图像边缘检测时效果最佳。但此方法对边缘检测时的效果要求较高。此外,如果图像中的边缘信息比较复杂,含有大量的干扰信息,如出现多处断点,会导致检测误差,本方法将不再适用。

[1] 刘仁金,高远飙,郝祥根.船舶吃水线定位分析及算法研究[J].皖西学院学报,2009,25(5):1-4.

[2] 周广程.图象处理技术在船舶吃水自动检测系统中的应用[D].南京:南京理工大学,2006.

[3] WANG Bing, FAN Shaosheng. An improved CANNY edge detection algorithm[C]∥2009 Second International Workshop on Computer Science and Engineering,2009:497-450.

[4] 斯蒂格,尤里奇,威德曼.机器视觉算法与应用[M].杨少荣,译.北京:清华大学出版社,2008.

[5] 董 梁.基于哈夫变换的图像边缘连接[J].现代电子技术,2008,(18):149-151.

猜你喜欢

水尺霍夫自动检测
冰山与气候变化
浅析国内海洋渔船与海船载重线、水尺标志勘划的区别
世界之巅的花园——库肯霍夫
角接触球轴承外圈锁口高度自动检测规改进
海运电厂船舶靠岸侧水尺图像采集实验研究*
一种开关柜局部放电自动检测装置的研究
基于SSD目标检测的视频水位检测算法
基于STM32的室内有害气体自动检测与排风系统
光电传感器在自动检测和分拣中的应用
基于机器视觉的快速水尺刻度提取技术