一种基于多分支网络的水面环境解析方法与流程

文档序号:15236464发布日期:2018-08-24 05:29阅读:144来源:国知局

本发明涉及数字图像处理技术领域,具体公开了一种基于多分支网络的水面环境解析方法。



背景技术:

水面无人艇是一种无人操作的水面舰艇,能够自主规划、自主航行,并且可以采用主动方式或人工干预方式完成环境信息感知、目标探测等各项任务的小型水面舰艇。水面无人艇主要应用于执行危险以及不适于有人船只执行的任务,可完成无人值守下的自主控制和长时间可靠运行。无人艇在许多实际应用场景中都可以发挥出重要作用,如民用领域的水质监测,警用领域的海关稽查,军用领域的近海巡逻等。

无人艇环境感知模块包括了环境信息的采集与处理,是无人艇实现自主工作的第一步,也是构成无人艇的基本模块之一。无人艇环境感知模块需要实现水面目标检测、水面环境解析等功能,为无人艇自主避障、航迹规划等提供决策依据。

由于现实情况中,无论是内河水面还是近海水面,其环境往往复杂多变,不仅有着各类船只等移动目标,也有浮标等固定目标,而水面上的这些物体都将成为无人艇航行的障碍物,需要及时检测到它们的存在。另一方面,作为一种特殊的船只,无人艇需要在水面上航行,因此需要检测周围的水面区域作为无人艇的可行驶区域。因此,借助计算机视觉技术中的目标检测和图像解析技术,无人艇将具备水面目标检测和水面环境解析的能力。然而,水面种类众多,各类船只形态大小差异较大,在不同的视角下呈现出不同的姿态;另一方面,水面区域在不同的气象条件下也存在较大的颜色差异;稳定有效的水面目标检测技术和水面环境解析技术并不容易实现。

因此,需要一种能够同时实现水面目标检测和环境解析的技术方法,为无人艇自主巡航提供技术保障。



技术实现要素:

为了克服现有技术中存在的缺点和不足,本发明的目的在于提供一种基于多分支网络的水面环境解析方法。

为实现上述目的,本发明采用如下方案。

一种基于多分支网络的水面环境解析方法,包括:

制作训练样本;

构造多分支网络模型,利用训练样本对多分支网络模型进行训练,并作保存;

采集待解析环境的图像,将图像调至一定尺寸,输入多分支网络模型进行前向计算;

提取待解析环境的图像特征;

对待解析环境的图像特征进行目标检测;

对待解析环境的图像特征进行环境区域解析。

进一步地,所述制作训练样本,包括制作目标检测样本和环境区域解析样本:

采集一定数量的测目标图像,将图像调至一定尺寸,并对图像的目标类型、目标中心位置坐标及目标所在矩形长宽进行标记;

采集一定数量的环境区域图像,将图像调至一定尺寸,并对图像中不同的区域进行标记。

进一步地,所述构造多分支网络模型,利用训练样本对多分支网络模型进行训练,并作保存,包括:

进行多分支网络权值初始化;

利用目标检测样本对目标检测模块和特征提取模块进行训练,获得目标检测模块损失函数:

其中,s表示图像特征被划分网格的行列数;b表示每个网格预测的区域个数;c表示目标类型个数;表示指示函数;(xi,yi,hi,wi)表示真实目标框的位置及长宽,是网络预测目标框的位置及长宽;λcoord和λnoobj表示用于平衡存在目标与不存在目标网格间的损失函数;表示网络预测的第i个网格存在c类型目标的置信度;表示网络预测得到的目标物体置信度;ci用于表示是否存在目标类型物体;pi(c)用于表示是否存在c类型的目标;

利用随机梯度下降法分别对特征提取模块和目标检测模块进行网络权重的训练,待损失值不变时停止训练,并保存停止时特征提取模块和目标检测模块的网络权值;

利用环境区域样本对环境区域解析模块进行训练,获得环境区域解析模块损失函数:其中k表示环境区域类别数,m表示全图像素数量,θ表示系数矩阵,θj表示第j类系数向量;x(i)表示第i个像素的交叉熵损失层输入向量;y(i)表示第i个像素的样本标记;

利用反向传播和梯度下降算法对环境区域解析模块进行网络权重的训练,待环境区域解析模块参数迭代若干次后停止训练,并保存停止时环境区域解析模块的网络权值。

进一步地,所述进行多分支网络权值初始化,包括:

利用imagenet数据集上预训练的vgg16网络权值,对特征提取模块网络权值进行初始化;

利用xavier方法,对目标检测模块、环境区域解析模块中的卷积层、反卷积层网络权值进行初始化。

进一步地,所述对待解析环境的图像特征进行目标检测,包括:

将图像特征划分为若干个网格,并在每个网格上预设若干个目标框;

计算每个目标框类别置信度pr(classi|obj)=pr(obj)*pr(classi),其中pr(obj)表示目标框内包含目标的置信度,pr(classi)表示目标框属于类型classi的概率;

设置阈值,利用非极大值抑制算法去除类别置信度低于阈值的目标框;

选取保留规定数量的目标框,且每个目标框只保留置信度最高的目标类型;

多次计算保留的目标框与类别置信度最大的目标框交并比,舍弃交并比大于阈值的目标框。

进一步地,所述对待解析环境的图像特征进行环境区域解析,包括:

利用反卷积结构运算进行水面环境解析,获取每个像素在不同区域环境的概率;

根据像素在不同区域环境的概率,将像素归类并作标记,输出解析后的环境信息。

本发明的有益效果:提供一种基于多分支网络的水面环境解析方法,通过采用多分支网络的结构,只需获取一个图像特征即可完成目标检测和环境解析,实现完整的环境解析,而且具有较快的运算速度。

附图说明

图1为本发明实施例的流程示意图。

图2为本发明实施例的目标检测示意图。

图3为本发明实施例的环境解析示意图。

具体实施方式

本发明主要分为三个步骤:1、收集水面目标和水面环境训练样本,构建多分支网络,利用训练样本和反向传播算法进行网络训练,确定网络权值;2、使用时将水面环境图片输入多分支网络,进行前向计算;3、由网络的检测分支得到水面目标检测结果,由网络的解析分支得到水面解析结果。

为了便于本领域技术人员的理解,下面结合实施例及附图对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。

如图1所示,一种基于多分支网络的水面环境解析方法包括模型训练和模型使用。模型训练时,需训练目标检测样本和环境区域解析样本,采集一定数量的检测目标图像(优选为10000张图像),其中包括船只、军舰、游轮、浮标、桥墩等常见检测目标图像,利用软件(例如photoshop)将图像调至规定尺寸(优选为448*448),并对图像的目标类型、目标中心位置坐标及目标所在矩形长宽进行标记,如图2所示,图中矩形框表示目标在图像中的位置。采集一定数量的环境区域图像,利用软件将图像调至规定尺寸,并对图像中水面和非水面区域区域进行标记,如图3所示,标记后中下层区域为水面区域,上层区域为非水面区域。

构建多分支网络,并进行训练。多分支网络包括特征提取模块、目标检测模块和环境区域解析模块。利用imagenet数据集上预训练的vgg16网络权值,对特征提取模块网络权值进行初始化;利用xavier方法,对目标检测模块、环境区域解析模块中的卷积层、反卷积层网络权值进行初始化。

利用目标检测样本训练目标检测模块和特征提取模块。环境区域解析模块不参与此阶段的训练。在本实施例中,图像特征被划分为7*7个网格,每个网络预测两个区域,目标类别数量为5类,即s=7,b=2,c=5。目标检测模块损失函数如下:

其中该损失函数共有5项组成,前两项为目标框坐标及长宽的回归损失,是0-1指示函数,当第i个网格的第j个预测目标框中存在真实目标时指示函数为1否则为0,(xi,yi,hi,wi)是该真实目标框的位置及长宽,是网络预测目标框的位置及长宽;第三项是目标物体置信度损失项,当第i个网格中存在目标类型物体时ci=1,否则为0;是网络预测得到的目标物体置信度;第四项是非目标物体置信度损失项,当第i个网格中不存在目标类型物体时,ci=0;第五项是目标类型置信度损失项,当第i个网格中存在c类型的目标时,pi(c)=1,是网络预测的第i个网格存在c类型目标的置信度。λcoord和λnoobj用于平衡存在目标和不存在目标的网格间的损失函数(优选λcoord=5,λnoobj=0.5)。完成网络权值初始化并确定损失函数后,利用随机梯度下降法对特征提取模块和目标检测模块进行网络权重的训练,当损失值不变时停止训练,保存当前特征提取模块和目标检测模块的网络权值。

利用环境区域训练样本训练环境区域解析模块。此时保持图像特征模块和水面目标检测模块的网络权值不变,使用交叉熵损失函数计算环境区域模块的损失值:

其中,k为水面场景解析类别数量,在本实施例中k=2,代表水面和非水面两种标签类型;m为全图像素数量;θ为系数矩阵,θj为第j类系数向量;x(i)为第i个像素的交叉熵损失层输入向量;y(i)为第i个像素的样本标签。通过以上损失函数计算环境区域模块损失值,利用反向传播和梯度下降算法逐层更新网络模型参数。经过若干次迭代(优选将迭代次数设置为100000次),计算环境区域模块将获得良好的图像场景解析能力。训练完成后,保存计算环境区域模块的网络权值。至此,模型训练完成。

模型使用时,利用无人艇上安装的摄像机采集周围环境图片,将图片尺寸调整到448*448大小并输入到多分支网络,利用特征提取模块得到图像特征,并输入到目标检测模块和环境区域解析模块进行处理。

利用目标检测模块,对待解析环境的图像特征进行目标检测,步骤为:

将图像特征划分为s*s个网格,每个网格上预设b个目标框,每个目标框的信息包括目标框的中心位置坐标(x,y),长宽(w,h),目标框中包含物体的置信度pr(obj);每个网格上还要预测该网格对应区域属于c种目标类型的概率。对于每张图片,目标检测模块将输出s*s*(5*b+c)维度的信息,并得到了s*s*b个目标框;其中5表示每个目标框带有5维长度信息(即上述目标框中心位置坐标(x,y),长宽(w,h)以及该目标框中包含物体的置信度pro(obj)信息)。

计算每个目标框类别置信度(即每个目标框是特定目标类型的概率)pr(classi|obj)=pr(obj)*pr(classi),其中pr(obj)表示目标框内包含目标的置信度,pr(classi)表示目标框属于类型classi的概率;

设置一定大小的阈值,利用非极大值抑制算法去除类别置信度低于阈值的目标框,并根据情况选择保留一定数量的目标框,且保留的目标框中只保留置信度最高的目标类型信息;多次计算保留的目标框与类别置信度最大的目标框的交并比,舍弃交并比大于阈值的目标框。经过非极大值抑制过程后,只保留可靠的目标检测结果,以此获得精准的目标检测。

利用环境区域解析模块,对待解析环境的图像特征进行环境区域解析,步骤为:将待解析环境的图像特征输入环境区域解析模块,利用反卷积结构运算进行环境解析,从而获取每个像素属于水面和非水面的概率,并根据概率将像素归类为概率较大的区域,并标记出属于水面和非水面的像素,实现像素级的分类,以此进行对环境的解析。结合目标检测和环境解析的输出结果进行分析,能较为精准地完成对环境解析,为自主航行提供决策依据。

本发明利用多分支网络结构能同时实现目标检测和环境区域解析,能够适应各种光照条件下的水面环境,具有较好的灵活性,可以根据具体的应用需求设定不同的水面目标或环境解析类型,而且利用同一个图像特征即可完成水面目标检测和环境解析两项功能,具有较快的运算速度。

以上内容仅为本发明的较佳实施例,对于本领域的普通技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1