一种水下海参识别方法及系统与流程

文档序号:16856898发布日期:2019-02-12 23:25阅读:724来源:国知局
一种水下海参识别方法及系统与流程

本发明实施例涉及计算机技术领域,尤其涉及一种水下海参识别方法及系统。



背景技术:

海参是生活在近海至8000米海域的一种棘皮动物,距今已有六亿多年。我国海参资源丰富,约有140种,主要的食用海参有光参、刺参、梅花参等20余种。海参全身长满肉刺,具有很高的营养价值,近年来其养殖规模逐渐扩大,2004至2017年海参产量从几千吨增大到20万吨,养殖面积达到22万公顷。但以海参产业为代表的水产养殖领域目前的自动化水平还很低,主要依靠人工养殖捕捞,人工潜水捕捞的人力和经济成本高,而且潜水捕捞员非常辛苦,存在较大人身安全隐患。

机器视觉作为感知水下世界的重要技术之一,正在越来越多的应用于海洋和渔业工程的各个方面,为海洋学和渔业科学研究提供了丰富的信息,为智慧海洋、智慧渔业的发展提供了技术手段。水下图像目标检测技术作为其分支,搭载于水下机器人上,实现了将图像和视频分析、生物量检测、生物识别查找等应用于水下环境,促进了海洋探测及渔业自动化的发展,然而,由于水下环境光学成像通常光照不足、噪声强、对比度低、画面偏色严重,而且水下目标通常拥有和环境相似的保护色,以上因素都大大限制了传统图像目标检测算法在水下图像中的性能发挥。

现有的水下环境识别技术大多基于手工设计的特征(如颜色、形状、纹理、sift、hog、dpm等)提取图像目标特征,然后采用模式识别方法对目标进行识别定位。但是手工设计特征费时费力,而且对水下复杂背景的鲁棒性不好,识别准确度难以提升。



技术实现要素:

本发明实施例提供一种水下海参识别方法及系统,用以解决现有技术中水下环境识别技术大多基于手工设计的特征来提取图像目标特征,手工设计特征费时费力,而且对水下复杂背景的鲁棒性不好,识别准确度难以提升的问题。

第一方面,本发明实施例提供一种水下海参识别方法,包括:

获取水下海参图像;

将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

通过多尺度卷积神经网络mscnn去躁算法,对所述水下海参图像进行降噪处理,获得降噪后的水下海参图像。

其中,所述方法还包括:获取多张包含海参的水下图像,对所包含海参的水下图像中的海参通过标注框进行标注,构建训练样本集,通过所述训练样本集,对yolov3网络进行训练,获得基于yolov3网络的海参识别模型。

其中,所述对所包含海参的水下图像中的海参通过标注框进行标注的步骤,具体包括:将所述包含海参的水下图像中的海参通过倾斜矩形框进行标注,计算获得所述倾斜矩形框的边界框中心坐标、边界框的宽、边界框的高和边界框的倾斜角度。

其中,所述通过所述训练样本集,对yolov3网络进行训练,获得基于yolov3网络的海参识别模型的步骤具体包括:将所述包含海参的水下图像输入到yolov3网络中,获取目标尺度的特征图谱;对所述包含海参的水下图像划分为多个网格单元,在每个所述网格单元中设定一定数量的先验锚框,将所述先验锚框和所述训练样本集中对应的包含海参的水下图像中的倾斜矩形框映射到所述目标尺度的特征图谱中,将所述特征图谱中先验锚框标出的候选区域与映射在特征图谱中的标注倾斜矩形框进行比对,获取所述候选区域与所述倾斜矩形框的重叠面积;将所述候选区域与所述倾斜矩形框的重叠面积大于第一预设阈值的候选区域标注为正样本;将所述候选区域与所述倾斜矩形框的重叠面积小于第二预设阈值的候选区域标注为负样本。

其中,所述获取目标尺度的特征图谱的步骤还包括:获取多个在不同目标尺度下的特征图谱,将所述先验锚框和所述训练样本集中对应的包含海参的水下图像中的倾斜矩形框映射到所述多个不同目标尺度的特征图谱中,将所述多个不同尺度下的特征图谱中先验锚框标出的候选区域与映射在特征图谱中的标注倾斜矩形框进行比对,获取所述候选区域与所述倾斜矩形框的重叠面积。其中,所述将所述候选区域与所述倾斜矩形框的重叠面积大于预设阈值的候选区域标注为正样本的步骤之后,还包括:通过软非极大值抑制算法,对所述包含海参的水下图像中,任一所述网格单元内的多个候选区域进行筛选,将其中得分最高的候选区域作为所述任一海参的目标候选区域,将与得分最高的候选区域重叠的候选框用分数衰减函数重置得分。。

第二方面,本发明实施例还提供一种水下海参识别系统,包括:

图像获取模块,用于获取水下海参图像;

识别模块,用于将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

第三方面,本发明实施例还提供一种电子设备,包括处理器、存储器和总线,其中,处理器,通信接口,存储器通过总线完成相互间的通信,处理器可以调用存储器中的逻辑指令,以执行如上述第一方面所提供的水下海参识别方法。

第四方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面所提供的水下海参识别方法。

本发明实施例提供的水下海参识别方法及系统,将深度学习算法适应性地迁移到水下图像领域,并做一些适应性地改进,提升水下海参目标检测的准确率。使yolov3算法能应用到水下真实环境中,克服由于环境复杂而难以精确实时地识别和定位水下海参的实际困难,能很好的适应自动检测和自动捕捞等实际应用需求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例提供的水下海参识别方法的流程示意图;

图2为本发明一实施例提供的水下海参识别方法中,常规矩形框标注和倾斜矩形框标注的对比图;

图3为本发明一实施例提供的水下海参识别方法中边界框坐标示意图;

图4为本发明一实施例提供的水下海参识别方法中,dark53网络的结构示意图;

图5为本发明一实施例提供的水下海参识别方法中多尺度目标先验示意图;

图6为本发明一实施例提供的水下海参识别系统的结构示意图;

图7为本发明一实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明一实施例提供的水下海参识别方法的流程示意图,参考图1,本实施例提供的方法包括:

s1、获取水下海参图像;

s2、将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

具体的,通过对水下图像进行采集,采集到的水下图像中可能包含有海参,将采集到的水下图像输入到预设的基于yolov3网络的海参识别模型中,其中,yolov3的基础分类网络使用了一个53层的卷积网络,这个网络由残差单元叠加而成。在分类准确度跟速度的平衡上,该模型比resnet-101、resnet-152和darknet-19表现得更好,能够实现实时性。而且yolov3不同于yolo前两个版本,它从3种不同尺度的特征图谱上进行预测任务,利用了多尺度信息,增加了小目标和重叠目标的检测准确率。

本实施例中,将采集到的水下图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下图像中海参的位置信息,输出海参检测图像。

通过此方法,将yolov3网络的快速、准确、多尺度检测优势迁移到水下图像领域,提升真实水下环境的目标检测准确率和运行效率。

在上述实施例的基础上,所述获取水下海参图像的步骤之后,还包括:

通过多尺度卷积神经网络mscnn去躁算法,对所述水下海参图像进行降噪处理,获得降噪后的水下海参图像。

具体的,在获得了水下图像后,通过多尺度卷积神经网络mscnn去噪算法对水下海参图像进行降噪处理,可以为后续的检测提供更好的图像数据支持,提升识别的准确性。

在上述实施例的基础上,所述方法还包括:

获取多张包含海参的水下图像,对所包含海参的水下图像中的海参通过标注框进行标注,构建训练样本集,

通过所述训练样本集,对yolov3网络进行训练,获得基于yolov3网络的海参识别模型。

其中,所述对所包含海参的水下图像中的海参通过先验锚框进行标注的步骤,具体包括:将所述包含海参的水下图像中的海参通过倾斜矩形框进行标注,计算获得所述倾斜矩形框的边界框中心坐标、边界框的宽、边界框的高和边界框的倾斜角度。

其中,所述通过所述训练样本集,对yolov3网络进行训练,获得基于yolov3网络的海参识别模型的步骤具体包括:

将所述包含海参的水下图像输入到yolov3网络中,对所述包含海参的水下图像划分为多个网格单元,在每个所述网格单元中设定一定数量的先验锚框,将所述先验锚框和所述训练样本集中对应的包含海参的水下图像中的倾斜矩形框映射到所述目标尺度的特征图谱中,将所述特征图谱中先验锚框标出的候选区域与映射在特征图谱中的标注倾斜矩形框进行比对,获取所述候选区域与所述倾斜矩形框的重叠面积;将所述候选区域与所述倾斜矩形框的重叠面积大于第一预设阈值的候选区域标注为正样本;将所述候选区域与所述倾斜矩形框的重叠面积小于第二预设阈值的候选区域标注为负样本。

具体的,对于基于yolov3网络的海参识别模型的构建过程中,还需要通过训练样本集对基于yolov3网络的海参识别模型进行训练,首选通过获取多张包含有海参的水下图片,对每一张图片中的海参通过标注框进行标注,从而构建训练样本集。图片的来源可以为通过网络爬虫在互联网中爬取,或者通过在水下采集相关图像,也可以从imagenet数据集中提取相应的图像数据集。

在获取了多张包含有海参的水下图像后,还可以根据获得的图像进行数据扩充,在深度学习领域中,数据扩充是常用的算法提升技巧。一方面,深度学习所需的训练图片数量远远多于传统方法,而水下图像又不易获取,数据扩充方法有效地增大了数据集,减小过拟合的影响;另一方面,大数据集可以有效提升算法的旋转不变性、尺度不变性、数据多样性等,从而提高目标检测精度。本发明使用的数据扩充技巧是水平翻转、上下翻转、旋转预设角度、随机缩放、随机裁剪和增加噪声。

在获取图像后,对图像进行先验锚框的过程中,采用倾斜的标注框对图像进行标注,如图2所示,图2为常规矩形框标注和倾斜矩形框标注的对比图,倾斜标注框的目标面积占比高于常规矩形框,减少了冗余,使海参目标检测结果更为准确,可使自动捕捞海参阶段的机械操作更为精准。倾斜矩形框的坐标信息需要以如下方式改进。假设检测网络在每一个网格单元中预测出的边界框(boundingboxes)有五个坐标值tx,ty,tw,th,ta,如图3所示,图3为边界框坐标示意图,σ(tx)、σ(ty)分别表示边界框中心点距网格单元的水平、垂直距离,σ表示使用sigmoid激活函数将tx,ty的值限定于0到1之间,使网络更容易学习、更稳定;tw、th分别表示先验锚框的宽高与预测边界框宽高的偏移量,ta表示角度偏移量。假设一个网格单元对于图片左上角的偏移量是cx、cy,先验锚框的宽度、高度和倾斜角度分别是pw,ph,pa,那么边界框的真正预测结果bx,by,bw,bh,ba通过以下公式计算获得:

边界框中心坐标:bx=σ(tx)+cx

边界框中心坐标:by=σ(ty)+cy

边界框的宽:

边界框的高:

边界框倾斜角度:

yolov3的基础分类网络使用了一个53层的卷积网络,这个网络由残差单元叠加而成。在分类准确度跟速度的平衡上,该模型比resnet-101、resnet-152和darknet-19表现得更好,能够实现实时性。而且yolov3不同于yolo前两个版本,它从3种不同尺度的特征图谱上进行预测任务,利用了多尺度信息,增加了小目标和重叠目标的检测准确率。

手动选择锚框的尺寸往往存在偏差,为进一步优化网络,采用k-means聚类方法选择先验锚框尺寸,能更准确地反映数据集特征,提高网络的收敛速度和检测准确率。由于检测的目标主要为了提高iou(交并比)分数,因此距离度量采用公式:

d(box,centroid)=1-iou(box,centroid)

式中,d(box,centroid)表示锚框大小角度和中心点的联合距离度量,iou(box,centroid)表示锚框大小角度和中心点的联合iou分数,iou分数可以反映真实标注框和检测框的重叠面积大小。

通过此方法,用倾斜的矩形框提升了目标面积的占比,减少了冗余,使海参目标检测结果更为准确,可使自动捕捞海参阶段的机械操作更为精准。同时采用k-means聚类方法为锚框的选定提供先验信息,更准确地反映数据集特征,进一步提高网络的检测准确率。

在上述实施例的基础上,所述获取目标尺度的特征图谱的步骤还包括:获取多个在不同目标尺度下的特征图谱,将所述先验锚框和所述训练样本集中对应的包含海参的水下图像中的倾斜矩形框映射到所述多个不同目标尺度的特征图谱中,将所述多个不同尺度下的特征图谱中先验锚框标出的候选区域与映射在特征图谱中的标注倾斜矩形框进行比对,获取所述候选区域与所述倾斜矩形框的重叠面积。

具体的,本实施例中,还包括对yolov3的改进步骤,dark53网络的结构如图4所示。首先将residualblock4x1024的特征图再经7层卷积得到第一个特征图谱(conv2d3x3+cov2d1x1(batch_size,13,13,75)),在它上面做第一次预测。然后将第一个特征图谱前一步的卷积输出进行一次卷积和一次x2上采样,将上采样特征与第43个卷积特征(即residualblock8x512)连接,经过7层卷积得到第二个特征图谱(conv2d3x3+cov2d1x1(batch_size,26,26,75)),在它上面做第二次预测。随后将第二个特征图谱前一步的卷积输出进行一次卷积和一次x2上采样,将上采样特征与第26个卷积特征(即residualblock8x256)连接,经过7层卷积得到第三个特征图谱(conv2d3x3+cov2d1x1(batch_size,52,52,75)),在它上面做第三次预测。

在每个不同的目标尺度下添加目标先验图的映射,构建多尺度目标先验检测结构。在网络迭代训练时,根据目标先验图的指示,只在目标标签得分大于第三预设阈值的候选区域内进行目标检测。

由于只有一小部分参考框真正包含物体,因此物体和非物体的数量极不平衡,为了尽力挖掘负样本信息,将目标先验图加入yolov3网络。如图5所示,图5为本发明一实施例提供的水下海参识别方法中多尺度目标先验示意图,其中三个尺度的特征图谱都来自图4的dark53网络,不同尺度的目标会在对应尺度的特征图谱中体现出来。目标先验图是通过一个3×3×2的卷积核来明确指示每个参考框中是否存在物体,因此可以降低搜索范围。具体来说,每个网格单元有多少个参考框就将目标先验图的通道数设为多少。

在将目标先验与检测相结合的过程中,将目标先验和yolo检测层进行映射,通过多任务损失函数联合训练,最后直接预测出各种特征图所有位置的最终检测结果。

网络迭代训练的时候,给每个候选区域指定一个二进制标签。如果候选区域包含目标,就再指定一个类别标签。对每一个真实标注框,找到和它重叠面积最大的候选区域。对每个候选区域,找到和它重叠面积大于0.5的真实标注框。这种匹配策略保证了每一个真实标注框都至少有一个候选框和它对应。对于重叠面积小于0.3的,分配负样本标签。

当反向传播误差时,网络首先会产生目标先验,然后对于检测,只会在目标标签得分大于某个阈值的区域内进行目标检测。额外的计算仅仅是为反向传播选择训练样本。当选择合适的阈值时,样本的数量减少了,就可以降低搜索范围,减少误差反向传播的时间,因此可以将网络的训练集中于有目标的区域,提高网络的检测精度和速度。

通过此方法,从3种不同尺度的特征图谱上进行预测任务,利用了多尺度信息,增加了小目标和重叠目标的检测准确率。同时将目标先验图加入yolov3网络,将网络的训练集中于有目标的区域,提高网络的检测精度和速度。

在上述实施例的基础上,所述将所述候选区域与所述倾斜矩形框的重叠面积大于预设阈值的候选区域标注为正样本的步骤之后,还包括:通过软非极大值抑制算法,对所述包含海参的水下图像中,任一所述网格单元内的多个候选区域进行筛选,将其中得分最高的候选区域作为所述任一海参的目标候选区域,将与得分最高的候选区域重叠的候选框用分数衰减函数重置得分。

具体的,在目标检测过程中,往往都要用到nms(非极大值抑制)进行后处理,通常的做法是将检测框按得分排序,然后保留得分最高的框,同时删除与该框重叠面积大于一定比例的其它框。然而nms的最大问题就是它将相邻检测框的分数均强制归零,如果一个真实物体在重叠区域出现,将导致对该物体的检测失败。

soft-nms(软非极大值抑制)的做法是基于重叠部分的大小为相邻检测框设置一个衰减函数。越是与当前得分最高框m高度重叠的检测框,越有可能出现假阳性结果,它们的分数衰减应该更严重。而如果检测框与m只有小部分重叠,那么它的原有检测分数不会受太大影响。yolov3网络有一个缺点是召回率低,而soft-nms可以提高召回率,有效改善检测结果。对nms原有的分数重置函数改进如下:

式1是线性加权的,式2是更为平滑的高斯加权函数。式1和式2中,m为当前得分最高框,bi为待处理框,nt为bi和m的iou判定阈值,bi和m的iou越大,bi的得分si就下降的越厉害。

综上所述,本发明实施例提供的水下海参识别方法中,将深度学习算法适应性地迁移到水下图像领域,并做一些适应性地改进,提升水下海参检测的准确率。使yolov3算法能应用到水下真实环境中,克服由于环境复杂而难以精确实时地识别和定位水下目标海参的实际困难。另一方面,倾斜的矩形框减少信息冗余,目标先验降低目标区域搜索范围,为自动捕捞海参、海洋探测等实时应用提供理论和技术支持,提升海洋工程和渔业工程的自动化水平。

图6为本发明一实施例提供的水下海参识别系统的结构示意图,所提供的系统包括:图像获取模块61和识别模块62。

其中,图像获取模块61用于获取水下海参图像;

识别模块62用于将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

需要说明的是,图像获取模块61和识别模块62配合以执行上述实施例中的水下海参识别方法,该系统的具体功能参见上述的水下海参识别方法的实施例,此处不再赘述。

图7为本发明一实施例提供的电子设备的结构示意图,如图7所示,深度学习系统的漏洞检测设备包括:处理器(processor)701、通信接口(communicationsinterface)702、存储器(memory)703和总线704,其中,处理器701,通信接口702,存储器703通过总线704完成相互间的通信。处理器701可以调用存储器703中的逻辑指令,以执行如下方法,例如包括:获取水下海参图像;将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

本发明实施例公开一种计算机程序产品,计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:获取水下海参图像;将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

本实施例提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的方法,例如包括:获取水下海参图像;将所述水下海参图像输入到预设的基于yolov3网络的海参识别模型中,通过模型计算,获得水下海参图像中海参的位置信息,输出海参检测图像。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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