System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于机器视觉的洄游鱼群计数识别方法技术_技高网
当前位置: 首页 > 专利查询>浙江大学专利>正文

一种基于机器视觉的洄游鱼群计数识别方法技术

技术编号:40029742 阅读:21 留言:0更新日期:2024-01-16 18:03
本发明专利技术公开了一种基于机器视觉的洄游鱼群计数识别方法,利用yolov8作为backbone,创建了dve‑yolo结构,修改了yolov8的样本分配策略和损失函数来适应dve‑yolo结构。该结构以前后两张连续图片作为输入,前后对应物体的锚框组合作为输出,可以更好的获取图片中运动物体的动态特征,明确反映将前后两张图中物体的联系,使网络具有动态视力。由于可以同时获取前后状态信息,不需要传统的卡尔曼滤波器进行状态估计,因而可以创建更简单的跟踪计数逻辑。本发明专利技术可以准确地识别鱼群是否正在进行洄游,成本低,节省人工,可24小时不间断工作,具有很高的应用价值。

【技术实现步骤摘要】

本专利技术涉及洄游鱼群计数识别方法领域,具体是一种基于机器视觉的洄游鱼群计数识别方法


技术介绍

1、鱼群洄游过程中的计数识别反映了鱼类种群数量的变化,对农业生产、环境治理有着重要的意义。而传统的鱼群计数手段主要基于标记重捕法,对人工捕捞得到的鱼进行标记、计数并放回,一段时间后进行第二次捕捞统计有标记的鱼的数量及其所占比例,从而大致估算鱼群总数。这种方法可以直接计算得到鱼群总数;且当第二次捕捞数量足够大时,由切比雪夫大数定理可知,有标记的鱼的数量占比将无限逼近真实值,因此理论上计算得到的鱼群总数具有很高的精准度。但是,传统方法需要大量的人工操作,需要较多的时间成本和资金成本,无法适应复杂环境,无法在一段时间内进行连续计数的缺点,并且标记的方法对鱼类存在一定程度的伤害。


技术实现思路

1、本专利技术提供了一种基于机器视觉的洄游鱼群计数识别方法,以解决现有技术洄游鱼群标记重捕法计数方法存在的无法适应复杂环境、无法连续实现洄游计数的问题。

2、为了达到上述目的,本专利技术所采用的技术方案为:

3、一种基于机器视觉的洄游鱼群计数识别方法,包括以下步骤:

4、步骤1、获取河道水面监测一段时间的原始视频数据,基于原始视频数据中提取得到多帧图片数据;

5、步骤2、采用孪生dve-yolo网络,所述dve-yolo网络以前后相邻帧的两张图片作为输入,通过孪生dve-yolo网络实现鱼目标的检测、特征提取和匹配;

6、将步骤1获取的图片数据划分为训练集、测试集,通过训练集图片数据对孪生dve-yolo网络进行训练后,利用训练好的孪生dve-yolo网络处理测试集中图片数据,以完成鱼目标检测;

7、步骤3、基于步骤2中训练好的孪生dve-yolo网络的输出结果实现鱼目标的跟踪,由此得到原始视频数据中从出现到消失的鱼目标的轨迹,并对鱼目标的轨迹进行累计计数,即为原始视频数据相应时间段中游过河道的鱼计数量;

8、步骤4、将原始视频数据相应时间段划分为多个时间周期,计算每个时间周期的鱼计数量,将每个时间周期的鱼计数量与预设阈值进行比较,若某个时间周期内的鱼计数量均大于预设阈值,则判断该时间周期存在洄游,否则判断该时间周期不存在洄游。

9、进一步的步骤2中,所述孪生dve-yolo网络的结构为检测网络yolov8,所述检测网络yolov8包括两个图片特征提取器yolov8’s backbone以及dve head,两个图片特征提取器yolov8’s backbone互为孪生网络且权重参数共享;

10、由检测网络yolov8中的两个图片特征提取器yolov8’s backbone分别提取输入的前后相邻帧的两张图片的基本特征,提取的特征信息均送入检测网络yolov8中的dve head中进行融合,最后由dve head将把两张图片对应目标的锚框按输出格式组合到一起作为输出,由此完成鱼目标的检测、特征提取和匹配。

11、进一步的,检测网络yolov8中,每个图片特征提取器yolov8’s backbone的conv模块均使用了silu激活函数,表达式如公式(1)所示;

12、

13、公式(1)中:x表示神经网络张量各元素数值输入。

14、进一步的,检测网络yolov8的dve head进行特征融合时,将两张图片输出的不同尺度的特征信息进行拼接,并对同尺度的信息分别进行物体种类推理和锚框信息推理,由此得到两张图片对应目标的锚框,并得到锚框组合的输出格式。

15、进一步的,为了配合dve head得到的锚框组合的输出格式,所述孪生dve-yolo网络的样本分配策略过程设计如下:

16、在样本分配之前,需要先对dve head输出的bounding boxes信息进行解码,解码过程如公式(2)所示:

17、

18、其中,128位的锚框信息分为8组,每组16位对应一个坐标值;δx是检测出的鱼类位置坐标距离锚点的偏离量;encoding(δx)t是未经解码的δx,是16×1形状的向量;stride是锚点间隔;softmax表示机器学习中常用的softmax函数;

19、最终的坐标值由公式(3)获得,公式(3)如下:

20、x=δx+anchor   (3)

21、其中,anchor是等间隔分布于像素平面上的坐标集合,加上偏移量δx用于计算检测到的鱼类的实际坐标位置;

22、根据公式(2)完成解码后再代入公式(3),输出两个具有对应关系的锚框位置信息;

23、样本分配时,由于dve-yolo网络将输出8400个预测锚框,而一张图包含n个目标锚框,故计算出一一对应的n×8400个得分值,将得分值最高的topk个预测框视作正样本,其他得分低的预测框均视为负样本,得分计算方式如公式(4)所示:

24、score=class_scoreα·(0.5*ciou1β+0.5*ciou2β)  (4)

25、公式(4)中的score,class_score,ciou1,ciou2∈rn×8400;class_score指的是对应目标种类的置信度;ciou1和ciou2代表预测的两个锚框与目标之间的重叠度;α和β为可调节的超参数;r指的是实数域;

26、由公式(4)可知,预测值中的目标种类置信度越高、锚框重叠度越大,越容易被认为是正样本。

27、进一步的,为了配合dve head得到的锚框组合的输出格式,所述孪生dve-yolo网络的损失函数设计如公式(5)所示:

28、l=w1·iou_loss+w2·cls_loss+w3·dfl_loss  (5)

29、公式(5)中,l是关于锚框重叠度、种类、锚框坐标的多目标优化,需要将三个损失函数分别乘以w1、w2、w3权重;iou_loss是由于预测锚框和目标锚框重叠度不够产生的损失;cls_loss是预测物体种类和目标物体种类不符产生的损失;dfl_loss损失函数则专门针对锚框左上角和右下角坐标误差产生的损失;

30、其中,cls_loss以交叉熵的形式计算种类损失;

31、iou_loss表达式如公式(6)所示:

32、iou_loss=sum(1-0.5ciou1-0.5ciou2)  (6)

33、公式(6)中,iou_loss∈r1;ciou1∈r8400×1,ciou2∈r8400×1,ciou1和ciou2分别是针对8400个预测框和其分配到的样本之间的ciou值;sum表示在第一个维度上对ciou1和ciou2进行求和;

34、dfl_loss表达式如公式(7)所示:

35、

36、公式(7)中,dfl_loss∈r1;xi∈r8400×16,target_xi∈r8400×1;yi∈r8400×16,ta本文档来自技高网...

【技术保护点】

1.一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,步骤2中,所述孪生dve-yolo网络的结构为检测网络yolov8,所述检测网络yolov8包括两个图片特征提取器yolov8’s backbone以及dve head,两个图片特征提取器yolov8’s backbone互为孪生网络且权重参数共享;

3.根据权利要求2所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,检测网络yolov8中,每个图片特征提取器yolov8’s backbone的Conv模块均使用了SiLU激活函数,表达式如公式(1)所示;

4.根据权利要求2所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,检测网络yolov8的dve head进行特征融合时,将两张图片输出的不同尺度的特征信息进行拼接,并对同尺度的信息分别进行物体种类推理和锚框信息推理,由此得到两张图片对应目标的锚框,并得到锚框组合的输出格式。

5.根据权利要求4所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,为了配合dve head得到的锚框组合的输出格式,所述孪生dve-yolo网络的样本分配策略过程设计如下:

6.根据权利要求4所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,为了配合dve head得到的锚框组合的输出格式,所述孪生dve-yolo网络的损失函数设计如公式(5)所示:

7.根据权利要求1所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,步骤3中,每当新的检测物体出现时,dve-yolo的跟踪策略需要进行两个步骤:首先将新检测到的t时刻位置与已有轨迹的t时刻位置进行匹配,当两者距离小于阈值时,则使用新轨迹的t+1时刻对已有轨迹进行更新使已有轨迹包含t+1时刻的位置;如果没有已有轨迹与新检测物体匹配,则创建新的轨迹;

...

【技术特征摘要】

1.一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,步骤2中,所述孪生dve-yolo网络的结构为检测网络yolov8,所述检测网络yolov8包括两个图片特征提取器yolov8’s backbone以及dve head,两个图片特征提取器yolov8’s backbone互为孪生网络且权重参数共享;

3.根据权利要求2所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,检测网络yolov8中,每个图片特征提取器yolov8’s backbone的conv模块均使用了silu激活函数,表达式如公式(1)所示;

4.根据权利要求2所述的一种基于机器视觉的洄游鱼群计数识别方法,其特征在于,检测网络yolov8的dve head进行特征融合时,将两张图片输出的不同尺度的特征信息进行拼接,并对同尺度的信息分别进行物...

【专利技术属性】
技术研发人员:林峰朱基诚尤爱菊滑磊韩涛
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1