一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于光电传感器的高鲁棒性海天线提取方法与流程

2022-03-05 03:55:20 来源:中国专利 TAG:


1.本发明涉及光电传感器及无人船自动驾驶技术领域,更具体地,涉及一种基于光电传感器的高鲁棒性海天线提取方法。


背景技术:

2.中国专利cn201710878146.x公开了一种基于图像语义分割的海天线检测方法,主要包括以下步骤:(1)输入待检测图像;(2)采用slic算法对输入图像进行超像素分割;(3)以超像素为基本单位,建立海面图像语义分割的概率图模型,并利用该图模型将图像从上至下分割成天空区域、陆地与雾霾的混合区域以及海水区域;(4)对海水区域进行提取,从而获得海水区域的掩膜图像;(5)在海水区域掩膜图像上,根据列方向的梯度信息对海水区域的分界点进行提取;(6)采用ransac算法对海水区域的分界点进行直线拟合,确定出海天线的直线参数。该方法能够准确地检测出复杂环境下的海天线,还可以有效地检测出长海岸背景下的海岸线,但是,在一些海天区域分界限不明显的场景中容易受如船艇遮挡,河岸等噪声干扰,对于一些河岸、船艇等具有长直线特征的物体会被认为是海天线的一部分,影响提取精度。


技术实现要素:

3.本发明为克服上述现有技术中的缺陷,提供一种基于光电传感器的高鲁棒性海天线提取方法,有效提高了拟合的海天线的精度,提高了鲁棒性。
4.为解决上述技术问题,本发明采用的技术方案是:一种基于光电传感器的高鲁棒性海天线提取方法,包括以下步骤:
5.s1.通过光电传感器提取视觉图像信息,通过sobel算子,对图像的sobel垂直梯度进行计算,根据梯度对图像中的场景边缘进行边缘锐化;
6.s2.对边缘增强后的图像数据通过lsd直线检测操作,寻找图像中梯度变化较大的像素,合并相似像素,得到一系列的直线段;
7.s3.在所提取的直线中,过滤短直线,进行抽样取候选点,同时保存的候选点具有所在直线的方向信息;
8.s4.对图像按所设定的大小区块进行划分,得到不同区块上候选点的分布及数量,将包含候选点超过所设定数量的区块记为感兴趣区域roi;
9.s5.卷积神经网络作二分类任务对图像上所有感兴趣区域划分为海天线区域与背景区域,从而对存在于背景区域中的候选点进行过滤;
10.s6.通过步骤s5得到分布在海天线附近的控制点,用ransac采用随机抽样验证的方法,拟合出的直线即为海天线。
11.本发明通过光电传感器提取视觉图像信息,通过边缘增强对海天线、河岸线进行增强,再利用直线检测对图像中的长线段进行提取,然后通过抽样取点提取出边界候选点,再对图像进行区块划分,将候选点所在的图像块使用二分类神经网络进行分类判断,对提
取出的候选点进行滤噪得到控制点,最后利用ransac直线拟合控制点,基于欧氏距离和控制点的方向信息以及控制点分布情况进行拟合得到海天线。
12.本发明提出的一种基于光电传感器的高鲁棒性海天线提取方法,不仅可以应用于广阔的海平面,也可应用于长海岸或是河岸的海岸线提取;为无人船对自身姿态评估与目标检测范围提供重要的信息,而且为之后的目标检测和目标跟踪中的图像配准提供了必要的条件。本发明通过sobel算子,对图像的sobel垂直梯度进行计算,根据梯度对图像中的场景边缘进行边缘锐化,解决在模糊图像中边缘不明显的特点,防止因光照变化或是相机抖动导致海天线模糊造成的漏检。对边缘增强后的图像数据通过lsd直线检测操作,得到直线段。在所提取的所有直线中,过滤短直线,解决一些由于海浪、云层、岛屿等的边缘造成的干扰。之后对所有的直线进行抽样取候选点,降低计算复杂度,同时保存候选点所在直线的方向信息,最大限度保存原有信息,即直线的方向性。对整个视觉图像按一定大小(32*32像素)区块进行划分,得到不同区块上候选点的分布及数量,将包含候选点超过一定数量的区块记为感兴趣区域roi,提取部分区域以降低计算复杂度。用卷积神经网络作二分类任务对图像上所有感兴趣区域划分为海天线区域与背景区域,从而对存在于背景区域中的候选点进行过滤,相比其他使用传统特征的区分方法,神经网络能够达到非常高的分类效果。在进行候选点去噪后,得到分布在海天线附件的控制点,用ransac采用随机抽样验证的方法,拟合出海天线,提高检测精度和鲁棒性。
13.进一步的,所述的sobel算子边缘算子所采用的算法是先进行加权平均,然后进行微分运算,计算方法如下:
14.δ
x
f(x,y)=[f(x-1,y 1) 2f(x,y 1) f(x 1,y 1)]
[0015]-[f(x-1,y-1) 2f(x,y-1) f(x 1,y-1)]
[0016]
δyf(x,y)=[f(x-1,y-1) 2f(x-1,y) f(x-1,y 1)]
[0017]-[f(x 1,y-1) 2f(x 1,y) f(x 1,y 1)]
[0018]
式中:x,y为原图f在x,y方向上的像素值,所得δ
x
f(x,y)为原图在x方向上的边缘算子,δyf(x,y)为原图在y方向上的边缘算子。
[0019]
进一步的,所述的lsd直线检测包括以下步骤:首先计算图像中所有像素点的梯度大小和方向,然后将梯度方向变化小且相邻的点作为一个连通域,接着根据每一个域的矩形度来判断是否需要按照规则将其断开以形成多个矩形度较大的域,最后对生成的所有的连通域进行改善和筛选,保留其中满足条件的域,即为最后的直线检测结果。
[0020]
进一步的,所述的lsd直线检测方法首先计算每个像素的水平线角度以构成一个水平线场,这些水平线场被分隔为连通的若干部分,其中方向近似且在容忍度τ内的,得到一系列区域,这些区域即为连通域。
[0021]
进一步的,所述的连通域就是一组连通像素,是直线段的候选,对于整个线段连通域,计算该组像素的最小外接矩阵,如果矩形中的像素的水平线角度与最小外接矩形的主方向的角度差在容忍τ内的话,那么这个点被称作同性点;通过统计最小外接矩形内的所有像素数n和其内的同性点个数k,用来判定这个连通域,即该组连通像素是否是一个直线段。
[0022]
进一步的,所述的步骤s6中的验证方法包括以下步骤:
[0023]
随机假设部分局内点为初始值;然后用此局内点拟合一个模型,此模型适应于假设的局内点,所有的未知参数都能从假设的局内点计算得出;
[0024]
用上一步得到的模型去测试所有的其它数据,如果某个点适用于估计的模型,认为它也是局内点,将局内点扩充;
[0025]
如果有足够多的点被归类为假设的局内点,那么估计的模型就足够合理;
[0026]
然后,用所有假设的局内点去重新估计模型,因为此模型仅仅是在初始的假设的局内点估计的,后续有扩充后,需要更新;
[0027]
最后,通过估计局内点与模型的错误率来评估模型;
[0028]
重复执行以上流程到一定次数,最后模型达到一定精度停止或是迭代次数完毕后因为无法达到精度要求而停止。
[0029]
进一步的,所述的步骤s6中拟合出直线的步骤包括:
[0030]
在控制点中随机选取2个点拟合出一条直线;
[0031]
用这条直线测试其他控制点:若控制点(x,y)满足与直线l的距离d以及原始所在直线段斜率k与直线斜率k

在一定阈值内则为局内点w:
[0032][0033]
考虑在海天线应当拟合图像中水平位置上更多的点,因此对局内点的x坐标进行一维栅格化处理,从而计算出拟合的局内点在水平位置上的占有栅格数,有效拟合点数=占有栅格数/拟合局内点数;
[0034]
直线的更新策略:
[0035]
a)若新一轮的直线拟合点数大于当前最优直线的拟合点数,且有效拟合点数少于当前最优直线有效拟合点数,则比较拟合点数是否超过最优直线拟合点数的1.5倍;
[0036]
b)若有效拟合数大于当前最优直线有效拟合数,则比较拟合点数是否超过最优直线拟合点数的一半;
[0037]
满足以上条件其一,则用当前拟合直线更新最优直线。
[0038]
进一步的,所述的步骤s5中的卷积神经网络为轻量级的卷积神经网络,输入的图像的尺寸为32x32像素,将图像输入到卷积神经网络模型后,经过2层卷积层和池化层后,通过全连接层输出分类标签。
[0039]
本发明还提供一种电子设备,包括:
[0040]
存储器,用于存储计算机程序;
[0041]
处理器,用于执行所述计算机程序时实现以上所述方法的步骤。
[0042]
本发明还提供一种计算机可读存储介质,所述的计算机可读存储介质上存储有计算机程序,所述的计算机程序被处理器执行时实现以上所述的方法的步骤
[0043]
与现有技术相比,有益效果是:
[0044]
1.本发明所提出的方法扩大了使用场景的范围。相比其它检测方法,大部分只能应用于比较理想的水面环境。本发明的实验场景有宽阔的水域,也有港口繁杂的河岸、海岸区域,在背景信息复杂的场景中同样能够使用,大大地扩展了应用场景范围。
[0045]
2.本发明所提出的提取海天线方法准确率和鲁棒性较高。在海面上直接使用直线检测与拟合方法容易受其他边缘信息如船体,船艇行驶产生的尾浪以及云层的干扰。本发明通过二分类神经网络来过滤噪声点,大大地提高了海天线提取的准确率,能够适用于更多复杂的海上情景。
[0046]
3.本发明解决了以往使用传统方法处理视觉图像,如多尺度图像滤波,分区域纹理分析融合算法等导致的速度慢、效率低的问题,在利用神经网络进行去噪,ransac拟合直线的方法下,一帧视觉图像的处理时间仅为0.1s,极大缩短了海天线检测所需的时间,为后续的图像配准,目标跟踪提供实时性保证。
附图说明
[0047]
图1是本发明的方法流程示意图。
[0048]
图2是本发明sobel算子模板。
[0049]
图3是本发明中水平线示意图。
[0050]
图4是本发明连通性示意图。
[0051]
图5是本发明步骤s3中抽样取点得到候选点示意图。
[0052]
图6是本发明步骤s4中图像分块截取获得候选点相关区域示意图。
[0053]
图7是本发明选用的二分类神经网络结构示意图。
[0054]
图8是本发明利用二分类模型对候选点所在区域进行分类示意图。
[0055]
图9是本发明利用分类结果对相关区域的候选点进行去噪示意图。
[0056]
图10是本发明使用ransac算法拟合控制点生成海天线示意图。
具体实施方式
[0057]
附图仅用于示例性说明,不能理解为对本发明的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。附图中描述位置关系仅用于示例性说明,不能理解为对本发明的限制。
[0058]
发明基于光电传感器提取海天线的步骤分为三大步,首先进行直线检测、接着对候选点进行滤噪,最后对候选点进行拟合。整体框架图如图1所示。
[0059]
步骤1:通过光电传感器提取视觉图像信息,通过sobel算子,对图像的sobel垂直梯度进行计算,根据梯度对图像中的场景边缘进行边缘锐化。sobel算子是计算机视觉领域的一种重要处理方法。主要用于获得数字图像的一阶梯度,常见的应用和物理意义是边缘检测。索贝尔算子是把图像中每个像素的上下左右四邻域的灰度值加权差,在边缘处达到极值从而检测边缘。在图像的任何一点使用此算子,将会产生对应的梯度矢量或是其法矢量。sobel算子不但产生较好的检测效果,而且对噪声具有平滑抑制作用,但是得到的边缘较粗,且可能出现伪边缘。
[0060]
sobel算子边缘算子所采用的算法是先进行加权平均,然后进行微分运算,算子的计算方法如下:
[0061]
δ
x
f(x,y)=[f(x-1,y 1) 2f(x,y 1) f(x 1,y 1)]
[0062]-[f(x-1,y-1) 2f(x,y-1) f(x 1,y-1)]
[0063]
δyf(x,y)=[f(x-1,y-1) 2f(x-1,y) f(x-1,y 1)]
[0064]-[f(x 1,y-1) 2f(x 1,y) f(x 1,y 1)]
[0065]
式中:x,y为原图f在x,y方向上的像素值,所得δ
x
f(x,y)为原图在x方向上的边缘算子,δyf(x,y)为原图在y方向上的边缘算子。
[0066]
sobel算子垂直方向和水平方向的模板如图2所示,前者可以检测出图像中的水平方向的边缘,后者则可以检测图像中垂直方向的边缘。
[0067]
步骤2:对边缘增强后的图像数据通过lsd直线检测操作,寻找图像中梯度变化较大的像素,合并相似像素,得到一系列的直线段。
[0068]
lsd是一种线段检测算法,该方法能在较短的时间内获得较高精度的直线段检测结果。该算法首先计算图像中所有像素点的梯度大小和方向,然后将梯度方向变化小且相邻的点作为一个连通域,接着根据每一个域的矩形度来判断是否需要按照规则将其断开以形成多个矩形度较大的域,最后对生成的所有的连通域进行改善和筛选,保留其中满足条件的域,即为最后的直线检测结果。该算法的优点在于检测速度快,而且无需参数调节,利用错误控制的方法,提高直线检测的准确度。
[0069]
lsd直线检测方法首先计算每个像素点的水平线(level-line)角度,从而形成了一个水平线场(level-line field),即单位矢量场。这里像素点的水平线角度就是该点梯度方向的垂直角度,如图3所示。
[0070]
lsd直线检测方法首先计算每个像素的水平线角度以构成一个水平线场。该场被分割为连通的若干个部分,它们方向近似相同并且在容忍度τ内,这样可以得到一系列regions,这些regions被称为连通域(line support regions),如图4所示。
[0071]
连通域就是一组连通像素,是直线段的候选,对于整个线段连通域,计算该组像素的最小外接矩阵,如果矩形中的像素的水平线角度与最小外接矩形的主方向的角度差在容忍(tolerance)τ内的话,那么这个点被称作同性点。通过统计最小外接矩形内的所有像素数n和其内的同性点个数k,用来判定这个连通域,即该组连通像素是否是一个直线段。
[0072]
步骤3:在所提取的直线中,过滤短直线,进行抽样取候选点,同时保存的候选点具有所在直线的方向信息。
[0073]
步骤4:对图像按一定大小(32*32像素)区块进行划分,得到不同区块上候选点的分布及数量,将包含候选点超过一定数量的区块记为感兴趣区域roi,并分块截取候选点的相关区域。
[0074]
步骤5:用卷积神经网络作二分类任务对图像上所有感兴趣区域划分为海天线区域与背景区域,从而对存在于背景区域中的候选点进行过滤。
[0075]
由于神经网络输入的图像尺寸较小,为32x32,因此网络结构并不会太复杂,为一个普通的轻量级的cnn网络,神经网络模型如图7所示。在将图像输入到cnn模型后,经过2层卷积层和池化层后,通过全连接层输出分类标签。
[0076]
步骤6:通过步骤5可得到分布在海天线附件的控制点,用ransac采用随机抽样验证的方法,拟合出的直线为海天线
[0077]
经过步骤5后一些由于其他边缘信息产生的噪声被二分类神经网络去除,但仍有一些难以去除的噪声如在海天线附近的船身边缘直线以及河岸产生的直线信息,因此可以使用ransac算法进一步消除噪声的干扰,拟合出最后的海天线,如图10所示。
[0078]
ransac算法输入是一组观测数据,一个可以解释或者适应于观测数据的参数化模型以及一些可信的参数。ransac通过反复选择数据中的一组随机子集来达成目标。被选取的子集被假设为局内点,并用下述方法进行验证:
[0079]
(1)先随机假设一些局内点为初始值。然后用此局内点拟合一个模型,此模型适应
于假设的局内点,所有的未知参数都能从假设的局内点计算得出。
[0080]
(2)用(1)中得到的模型去测试所有的其它数据,如果某个点适用于估计的模型,认为它也是局内点,将局内点扩充。
[0081]
(3)如果有足够多的点被归类为假设的局内点,那么估计的模型就足够合理。
[0082]
(4)然后,用所有假设的局内点去重新估计模型,因为此模型仅仅是在初始的假设的局内点估计的,后续有扩充后,需要更新。
[0083]
(5)最后,通过估计局内点与模型的错误率来评估模型。
[0084]
(6)重复执行以上流程到一定次数,最后模型达到一定精度停止或是迭代次数完毕后因为无法达到精度要求而停止。
[0085]
海天线直线拟合的步骤如下:
[0086]
(1)在控制点中随机选取2个点拟合出一条直线;
[0087]
(2)用这条直线测试其他控制点:若控制点(x,y)满足与直线l的距离d以及原始所在直线段斜率k与直线斜率k

在一定阈值内则为局内点w;
[0088][0089]
(3)考虑在海天线应当拟合图像中水平位置上更多的点,因此对局内点的x坐标进行一维栅格化处理,从而计算出拟合的局内点在水平位置上的占有栅格数,有效拟合点数=占有栅格数/拟合局内点数;
[0090]
(4)直线的更新策略:
[0091]
a)若新一轮的直线拟合点数大于当前最优直线的拟合点数,且有效拟合点数少于当前最优直线有效拟合点数,则比较拟合点数是否超过最优直线拟合点数的1.5倍;
[0092]
b)若有效拟合数大于当前最优直线有效拟合数,则比较拟合点数是否超过最优直线拟合点数的一半。
[0093]
满足以上条件其一,则用当前拟合直线更新最优直线。
[0094]
针对复杂多变的水面情况,本发明提出一种基于光电传感器的高鲁棒性无人船提取海天线的方法,不仅可以应用于广阔的海平面,也可应用于长海岸或是河岸的海岸线提取。通过对垂直梯度下的图像边缘增强,首先过滤了一些无关的竖直线段,由于无人船在海上行驶会遇到复杂海况,如受到风、海浪等影响,会产生颠簸,导致光电传感器相机获取的图像模糊,边界不明显,通过边缘增强解决了海天线未被直线检测器所检测到的问题。接着对直线进行抽样取点,得到边界的候选点,同时保留了直线的方向信息,根据边界的候选点提取出候选点周围的图像区块,通过对边界点周围的图像特征信息来判断该边界为海天线或是其他对象的边缘,从而对边界候选点进行过滤。在该二分类任务中使用了深度学习网络,利用含有海天线的图像块以及只有背景信息的图像块对该网络进行训练,使得该网络能够学习到海天线特征,在对边界候选点过滤的操作中有效区分海天线图像块与背景信息图像块,排除如船艇产生的尾浪,云层以及船体等其他边缘噪声的干扰。为了排除一些不连续点以及一些未能被过滤的噪声的干扰,在ransac直线拟合中,综合考虑了拟合直线与拟合点的欧氏距离以及直线方向与拟合点从直线中抽样所保留的方向信息,使得最终拟合的海天线精度更高,更具鲁棒性。
[0095]
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例
性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
[0096]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献