UUV近海面航行时拍摄到的红外图像均在平视的状态下,此时图像中包涵3个区域:天空区域、海天线区域和海面区域。若目标出现,则目标一定在海天线区域,因此如果能确定海天线区域,针对海天线区域进行后续的处理,可以划定船舰目标的潜在范围,抑制其他区域中的噪声对目标分割的干扰,减少目标分割时的计算量和目标检测的难度,确定海天线区域的前提是通过算法来确定海天线的位置。海天线通常情况下是1条亮度由高(天空)到低(海面)的渐变带,而且由于海浪起伏,图像大多数具有一定的倾斜度,甚至有时会出现波浪状,但可以细化,将其拟合成1条直线。
目前,海天线提取的相关算法主要是以海天线边缘的直线特征进行检测,进而提取出海天线。文献[1]中采用行均值梯度法,利用海天线区域灰度过渡特性,采用形态学开运算与背景行均值曲线突降区间检测算法,定位出真实海天线的大致水平位置。文献[2]针对全景图像,基于梯度方向特征提出了全景圆形海天线提取方法。为了加图像中的边缘特征并消除干扰,文献[3]提出了基于梯度显著性的海天线检测方法,并通过区域生长法完成了海天线的检测。
文献[4-5]中采用Hough变换直线检测法,利用像素空间和参数空间之间的对偶关系,即像素空间的一点变换为参数空间的1条线,而具有相同参数特性的点变换后在参数空间里相交,比如说,在像素空间中共线的点,在变换到参数空间后所对应的曲线相交于1点,然后通过计算交点处的累积数目来完成曲线的检测。但是直接使用Hough变换检测海天线,容易造成误检。文献[6]将多级小波变换和多方向Gabor滤波结合,提高了目标信杂比。文献[7]则使用高斯低通滤波和结构森林快速边缘检测对图像进行处理。文献[8]利用均值飘移分析方法和嵌入置信度进行像素属性鉴别。
文献[9]中采用基于Otsu分割和形态学处理组合法,将图像进行Otsu阈值分割,分割成为二值图像,经过形态学开、闭运算,将这部分噪声和海浪斑点去除,同时经过形态学处理后的图像的边缘信息变得更平滑,最后再对形态学处理后的图像进行边缘提取,提取出来的边缘即为海天线。文献[10]通过使用Ostu自适应阈值分割法进行了粗提取,并判断出海天线的存在。文献[11]在研究传统一维Ostu算法的基础上,通过使用形态学滤波器降噪,提出了二维Ostu海天线提取算法。
文献[12-13]中采用直线拟合法,传统直线拟合法在某些复杂的情况下,则难以得到满意的提取效果。为解决这一问题,在海天线提取前进行有效的背景抑制及目标增强是十分必要的。为粗提取海天线,常常对目标使用Canny边缘检测[14]。为抑制噪声,常见的方法有对图像进行降噪,如小波变换等方法,对光照海浪等局部纹理使用Gabor滤波、高斯滤波器、形态学滤波器等方法。
本文结合基于行均值梯度法和直线拟合法总结提出了一种适合复杂海空背景情况下的红外图像的新方法。这两种方法由于受背景的复杂程度制约,并不能检测出天空背景和海面背景比较复杂的海天线的位置,本方法首先利用优化的行均值梯度法检测海天线的位置,这时的海天线位置为海天线的粗略位置,利用这条线把图像粗略的分成天空区域、海天线区域和海面区域3部分,并对其中的海面区域和天空区域进行滤波平滑处理,平滑二者背景中灰度起伏较大的噪声,然后利用优化的直线拟合法对天空区域和海面区域滤波后的图像进行海天线提出,这时的海天线为比较精确的海天线位置。
1 行均值滤波优化 1.1 基于行均值梯度法在海空背景情况下的红外目标图像中,当天空背景中没有云层或者云层非常少时,天空背景的红外图像灰度变化比较均匀,而海面背景由于有波浪和太阳光的辐射,一般情况下灰度变化起伏较大,有鱼鳞光等杂波存在。因为天空背景和海面背景灰度差值较大,所以在海天线处会出现1个灰度跃迁的现象。图 1为海空背景解析图,其中图 1(a)是一幅经中值滤波和非线性增强预处理后的海空背景红外图像,图 1(b)是该红外图像的三维表面图,从图上可以看出,天空部分的变化幅度比较低,基本平稳上升状态,并且距离海天线越近的地方灰度值越高,海面背景和天空背景的灰度值在海天线附近发生突变,并快速地过渡到海面背景区域,海面背景区域因为受波浪和鱼鳞光等噪声的影响,变化幅度较大。
Download:
|
|
对于一幅大小为M×N的红外图像,其灰度的行均值可定义为
$ R\left( i \right) = \frac{1}{N}\sum\limits_{j = 1}^N {f\left( {i, j} \right)\left( {i = 1, 2, \cdots , M} \right)} $ | (1) |
式中:M和N分别代表图像的行和列,f(i, j)代表图像的灰度值。
图 1(c)是该红外图像的行均值曲线图, 曲线可以大致分成3段:天空区域线(ab)、海天交界区域线(bc)、海面区域线(cd)。由图像可知,对于海天线近似水平分布的海天背景红外目标图像来说, 行均值曲线可以较好反映出图像的整体特性。所以,只要确定bc段所在的行数,就可以大致确定海天线的位置。对图分析得知,ab段变化平缓,bc段灰度上有突变,cd段有较大起伏。定义这种变化或起伏的大小为梯度,如式(2)所示[15]:
$ \mathit{\boldsymbol{G}}\left( i \right) = \left| {R\left( i \right) - R\left( {i - 1} \right)} \right|i = 2, 3, \cdots , M $ | (2) |
根据式(1)可求出行均值曲线梯度, 其梯度如图 1(d)所示。该图也大致分为3段:天空区域线梯度(AB)、海天交界区域线梯度(BC)、面区域线梯度(CD)。由图可知,AB段梯度值较小,并且起伏不大,比较平稳。从BC段开始图像梯度起伏剧烈。为了求得BC段所在的行数, 利用公式先求梯度均值G和梯度的标准差δ,然后定义梯度阈值T如式(3)所示:
$ T = \bar G + k\delta $ | (3) |
式中k代表标准差系数。
在行均值灰度梯度图上找到第一次超过该阈值的行。此行像素点的灰度幅值为255,即一条白线,此白线就是所求的海天线。
1.2 梯度均值滤波优化传统的行均值梯度法在天空背景和海面背景灰度差异明显,且海天线近似水平的小目标图像中能准确定位海天线;当海天线倾斜角度大或大目标导致的行均值梯度大于海天线的梯度时,将会使海天线偏向目标。所以,基于行均值梯度的海天线检测算法的可靠性不高,目标大小和海天复杂程度对检测效果有较强的干扰影响,适应性不强。所以只能用于粗略的估计海天线的位置,并且其是对每一行的灰度行均值求梯度,这样的梯度图易受噪声影响,所以本文对其进行了优化。
一幅大小为M×N图像的行均值为R(i),(i=1, 2, …, M),则G(i)=[R1 R2 … RM]T。对向量G(i)中的元素,即每行的灰度均值,从上至下每a个元素求平均值,并且构建一个新的列向量G(j),Gj=[b1 b2… bj]T,(j=1, 2, …, m)。式中
$ \mathit{\boldsymbol{G}}'' = |\mathit{\boldsymbol{G}}'\left( j \right)\;\;\mathit{\boldsymbol{G}}'\left( {j\;\;1} \right)|, j = 2, 3, \cdots , m $ | (4) |
然后求梯度均值,并定义阈值T。找到梯度图像中第1次超过阈值的点,将此点所在的行数j与常数a相乘即为海天线在原图中所在的粗略位置。
对优化后的算法进行仿真,并与传统算法进行对比,其中a取值为5,结果如图 2所示。可以看出,优化后的算法与传统算法相比,优化后的算法的梯度变化更为明显,检测出的海天线的位置与海天线实际位置更接近,优化后的行均值梯度算法明显优于传统算法。
Download:
|
|
经过优化后的行均值梯度算法处理后,我们可以得到海天线的位置,但此时的海天线位置并不精确,尤其对于倾斜的海天线而言,本文将此海天线成为初选海天线,根据此海天线,可以粗略地将图像分为天空区域、海天线区域和海面区域。通常情况下,目标大小不会超过200像素,并且越接近海天线的区域灰度值越平稳,故将粗选海天线的上、下35行以内区域定义为海天线区域,海天线区域上方为天空区域,海天线以下为海面区域。然后分别对海面区域和天空区域进行多次的形态学开运算和闭运算,这样可以平滑背景中起伏较大的区域,便于后续的海天线精确检测。
2 直线拟合法粗大点优化 2.1 直线拟合法直线拟合法检测海天线的数学依据是最小二乘法[16],首先把海天线近似的看成是1条直线,这条直线可以是近似水平或者是倾斜,然后通过算法近似找出n个海天线上的点,把这个n点拟合成1条直线,这条直线就可以近似的看成海天线。假设这条直线的方程为
$ y = Ax + B $ |
将图像均匀的分成K个区域,求每个区域海天线的中心坐标(xi, yi),其中i=1, 2, …, K,在最小均方误差意义下求得
$ \begin{array}{l} A = \frac{{K\sum\limits_{i = 1}^K {{x_i}{y_i} - \sum\limits_{i = 1}^K {x\sum\limits_{i = 1}^K {{y_i}} } } }}{D}\\ B = \frac{{\sum\limits_{i = 1}^K {x_i^2\sum\limits_{i = 1}^K {{y_i} - \sum\limits_{i = 1}^K {x\sum\limits_{i = 1}^K {{x_i}{y_i}} } } } }}{D} \end{array} $ | (5) |
式中
要求出式(5)的A、B的值,首先要求出每个区域海天线的中心坐标(xi, yi),假设有1幅大小为M×N的红外图像,分成K个区域,每个区域的大小为M×C,其中C=N/K。
对于第l个区域,其第j行灰度行均值为
$ {g_{{l_j}}} = \frac{1}{C}\sum\limits_{m = \left( {l - 1} \right)C + 1}^{lC} {{g_{{m_j}}}j = 1, 2, \cdots , M} $ |
则整个区域的灰度行均值列向量为
$ {\mathit{\boldsymbol{G}}_l} = {[{g_{{l_1}}}\;\;{g_{{l_2}}}\;\; \cdots \;\;{g_{{l_M}}}]^{\rm{T}}} $ | (6) |
根据式(6)可以求出这个区域灰度行均值的梯度变化,即Gl的梯度向量G'l如式(7)所示:
$ \mathit{\boldsymbol{G}}{'_l} = {[g{'_{{l_1}}}\;\;g{'_{{l_2}}}\;\; \cdots \;\;g{'_{{l_M}}}]^{\rm{T}}} $ | (7) |
式中g'lj=|glj-gl(j-1)|,j=2, 3, …, M。当g'lj为向量G'l中最大时,记下此时的行数j,可认为第l个区域的海天线在该区域的第j行,令yl=j,xl为第l个区域的中心列数,即xl=lC+C/2+1,取整数。这样就可以求出每个区域海天线的中心坐标(xi, yi),从而求得海天线的直线方程式。
因为在求每个区域的梯度最大值的时候,有可能会存在海天线处的灰度变化梯度不是最大值,而是背景中的高亮度杂波和背景形成的最大梯度,从而引入了非海天线上的点,导致海天线检测不准确,所以要去除这样的粗大点。首先要求出所有区域的海天线所在行数的平均值
$ {y_i} = \left\{ \begin{array}{l} {y_i}, \bar y - T < {y_i} < \bar y + T\\ \bar y, {\rm{else}} \end{array} \right. $ | (8) |
通过式(10)对粗大点的处理,可以得到一组新的海天线中心点的坐标,可以绘制出没有粗大点影响的海天线。
2.2 粗大点优化处理对传统的直线拟合法中的粗大点进行处理,将检测到的各区域的海天线的中心点的行数的平均值赋值给粗大点,这样的话,如果图中存在过多的粗大点,会使检测到的海天线整体向粗大点多的区域方向移动,从而偏离实际的海天线位置。对此,本文提出了新的处理粗大点的方法。
首先建立一个2×K的一维数组W,其中K为将原图沿列方向分割的区域数,一维数组中第1行依次放置对应区域的梯度向量G'l中的最大值,第2行依次放置达到最大值时所对应的行坐标,若最大值有多个,取最小的行坐标。然后对这个一维数组进行2次循环。第1次循环,先求出数组W第1行的均值和方差,然后将第1行的每个值与其均值做差后取绝对值,并将此绝对值与该行的方差进行比较,如果绝对值大于方差,则认为该点为粗大点,并去除,得到1个新的一维数组W1。第2次循环先求出数组W1第2行的均值和方差,然后将第2行的每个值与其均值做差后取绝对值,并将此绝对值与该行的方差进行比较,如果绝对值大于方差,则认为该点为粗大点,并去除,得到1个新的一维数组W2。
经过2次去除粗大点处理,可以有效抑制背景的影响,然后对数组中的第2行数据,即海天线的行坐标和该行坐标对应的区域的列坐标经过直线拟合法绘制出海天线。
3 实验验证与结果分析根据本文的方法,首先利用优化的行均值梯度法检测海天线的位置,这时的海天线位置为海天线的粗略位置,对其中的海面区域和天空区域进行滤波平滑处理,平滑二者背景中灰度起伏较大的噪声,然后利用优化的直线拟合法对天空区域和海面区域滤波后的图像进行海天线提出。
利用MATLAB对近海面UUV拍摄的图像进行了实验。选取3张具有代表性红外图像进行仿真验证。图 3为海天线上存在大尺寸舰船目标的红外图像检测结果,图 4为海天线存在大幅度倾斜时的红外图像检测结果,图 5为海天线近似水平时的红外图像检测结果。3幅图中图 3(a)、图 4(a)、图 5(a)为原始图像,图 3(b)、图 4(b)、图 5(b)为采用传统海天线提取方法得到的图像,图 3(c)、图 4(c)、图 5(c)为采用本文方法进行海天线检测后得到的图像。
Download:
|
|
Download:
|
|
Download:
|
|
实验仿真结果表明,与传统检测方法相比较,应用本方法检测出的海天线的位置与海天线实际位置更接近,优化后的方法明显优于传统方法,不同海面情况中的海天线检测效果更佳,具有很好的适应性。
4 结束语结合以UUV做为载体所拍摄的红外图像中海天线的特点,本文提出了一种新的海天线检测方法,经过仿真验证,结果显示本方法具有很好的抗噪声性能,不受海天背景的复杂程度所限制,改善了海面情况复杂、天空区域有云层的红外图像海天线位置检测的效果,具有非常好的通用性。这对于UUV近海面红外图像的目标检测和识别具有重要的现实意义,为后续的图像分割及目标的检测与识别奠定良好的基础。
[1] | 杨家红, 李翠红, 危德益, 等. 基于复杂海空背景行均值曲线的海天线定位算法[J]. 激光与红外, 2012, 42(12): 1346-1350. DOI:10.3969/j.issn.1001-5078.2012.12.007 (0) |
[2] | 苏丽, 尹义松, 刘志林. 基于全景海天线提取的海面小目标检测[C]//第三十三届中国控制会议论文集(C卷). 南京, 2014. http://www.wanfangdata.com.cn/details/detail.do?_type=conference&id=WFHYXW582301 (0) |
[3] | 王博, 苏玉民, 万磊, 等. 基于梯度显著性的水面无人艇的海天线检测方法[J]. 光学学报, 2016, 36(5): 0511002. (0) |
[4] | 刘松涛, 沈同圣, 韩艳丽, 等. 舰船目标海天线提取方法研究[J]. 激光与红外, 2003, 33(1): 51-53. DOI:10.3969/j.issn.1001-5078.2003.01.015 (0) |
[5] | 董宇星, 刘伟宁, 王爽. 基于Canny原理海天线检测算法研究[J]. 计算机测量与控制, 2010, 18(3): 697-698, 702. (0) |
[6] | 杨俊彦, 逄浩君, 曹耀心, 等. 海天背景下红外小目标检测的背景抑制及海天线检测方法[J]. 红外, 2016, 37(12): 24-28. DOI:10.3969/j.issn.1672-8785.2016.12.005 (0) |
[7] | 徐良玉, 马录坤, 谢燮, 等. 基于结构森林边缘检测和Hough变换的海天线检测[J]. 上海大学学报:自然科学版, 2017, 23(1): 47-55. (0) |
[8] | 雷琴, 施朝健, 陈婷婷. 基于均值漂移边缘提取的海天线检测方法[J]. 计算机应用与软件, 2015, 32(6): 208-211. DOI:10.3969/j.issn.1000-386x.2015.06.051 (0) |
[9] | 温佩芝, 史泽林, 于海斌. 复杂海面背景红外小目标自动检测方法[J]. 红外与激光工程, 2003, 32(6): 590-593, 604. DOI:10.3969/j.issn.1007-2276.2003.06.011 (0) |
[10] | 孙茂芬, 卢道华, 李忠国, 等. 海上监控图像的海天线及其目标区域提取[J]. 机械工程师, 2016(2): 89-92. DOI:10.3969/j.issn.1002-2333.2016.02.036 (0) |
[11] | 韩嘉隆, 毛征, 王宁, 等. 基于二维OTSU的海天分界线提取算法[J]. 国外电子测量技术, 2016, 35(8): 67-70. DOI:10.3969/j.issn.1002-8978.2016.08.015 (0) |
[12] | 刘松涛, 周晓东, 王成刚. 复杂海空背景下鲁棒的海天线检测算法研究[J]. 光电工程, 2006, 33(8): 5-10. DOI:10.3969/j.issn.1003-501X.2006.08.002 (0) |
[13] | 时磊, 赵军, 叶宗民. 一种基于直线拟合法的新的海天线检测方法[J]. 红外, 2011, 32(8): 25-28. DOI:10.3969/j.issn.1672-8785.2011.08.005 (0) |
[14] | 朱齐丹, 徐从营, 蔡成涛, 等. 全景图像海天线提取及舰船目标自动检测[J]. 计算机测量与控制, 2014, 22(8): 2350-2352. DOI:10.3969/j.issn.1671-4598.2014.08.004 (0) |
[15] | 许韦韦, 孟昭香. 新兴的水下作战平台UUV[J]. 指挥控制与仿真, 2006, 28(3): 16-19. DOI:10.3969/j.issn.1673-3819.2006.03.004 (0) |
[16] | XU Yansun, WEAVER J B, HEALY D M, et al. Wavelet transform domain filters:a spatially selective noise filtration technique[J]. IEEE transactions on image processing, 1994, 3(6): 747-758. DOI:10.1109/83.336245 (0) |