本文是计算机论文,本文主要研究是一个基于计算机视觉的红鳍东方鲀物体检测和计数的精准养殖问题,结合现有相关研究知识,在数据集和YOLOv3模型基础上进行了改进。在边框筛选上用新的算法替换原有使用的方法,更改的方法在处理网络梯度问题和重叠物体边框筛选问题上能起到有效抑制作用。改进后的模型在检测准确率、召回率和速度上相对原有YOLOv3算法有了明显提升。实验结果充分说明本文提出的算法在实验评价指标上都有较好的结果,具有一定应用的实际社会价值。本文使用数据增广和改进后的YOLOv3模型取得了一定的提升效果,但仍存在未考虑到的角度。实验主干网络采用了原卷积神经网络结构,针对单物体图像检测会大大增加了训练的运算和时间成本,而且改进后整体网络框架仍然是基于图像的目标检测任务,并没有充分利用视频图像的物体连续移动的坐标位置信息。在未来的工作中,针对上述问题,将做以下改进:第一,从视频目标检测的思路入手,利用拍摄中鱼类连续游动位置坐标,寻找更合适的算法模型。例如,可以考虑在两帧之间的鱼类位置变化信息,通过目标轨迹来实现目标跟踪,定位物体信息,这种方法一定程度上能减少物体遮挡和漏检情况,提高物体识别检测准确率。研究基于计算机视觉的红鳍东方鲀的计数系统问题,本文主要从养殖池鱼类数据集增广方法和根据养殖场需求所选取的网络模型YOLOv3进行改进两个方向深入研究。
...........
第1章绪论
本课题的研究将会解决水产养殖中人工计数费时费力问题,利用计算机视觉实现自动计数技术,此项研究将会大大提高养殖效率,对下一步针对红鳍东方鲀进行鱼类个体重量状态研究工作都奠定了一定的基础。最终的研究实验结果将形成一套准确、高效且省时省力的鱼类检测计数系统,对精准养殖行业中的养殖技术和行业经济都具有促进和推动作用。具体研究内容如下所述:(1)分析养殖池存在的随着自然光线而变化的照明情况,由于水雾而存在的模糊现象和鱼个体之间存在的遮挡现象,针对数据集分别进行改进。实验表明,改进后的数据集重新输入到神经网络模型可以有效的提升鱼类识别检测效果。本文的组织结构主要包括五章,论文的具体组织如下:第一章是绪论先分析了水产养殖中关于红鳍东方鲀计数的研究背景和理论意义,进一步展开介绍了国内外研究现状与国内外研究趋势,最后详细阐述了本文的研究内容和组织结构;第二章先介绍计算机视觉中的卷积神经网络的发展研究史,网络框架及结构特点,再介绍了深度学习中具有代表性的目标检测算法Faster-RCNN算法;SSD算法及YOLO系列的算法;第三章介绍了数据集的来源及针对养殖场环境对直接拍摄的图像数据增广的三种方法。针对养殖场环境光线亮度、水面模糊和鱼个体之间存在的遮挡等特点对图像进行处理,分别采用图像亮度增广、增广图像模糊程度和部分置黑图像增广的三种方式。接着使用数据集中常用的LableImg标注工具进行图像标注,制作标准数据集PASCALVOC2007格式的文件用于输入网络中,质量好的数据也能一定程度上提高网络检测计数的效果,降低过拟合情况发生;第四章主要内容为鱼类检测网络的选择与改进。先针对工厂实际要求进行研究分析,选定兼顾检测精度与实时性的YOLOV3网络模型作为鱼类目标的检测网络。
......
第2章相关理论介绍
2.1计算机视觉技术
作为人工智能中“眼睛”的计算机视觉是在信息感知层上尤为值得关注的技术之一。计算机视觉技术从生物视觉中获得灵感,模仿获取到的图像中的特征信息进行物体种类识别、目标检测、生物跟踪等,真正理解“识别”和“检测”的含义。目前此项技术已经广泛应用到各行各业中,也是目前人工智能技术中落地最广的技术之一。在过去几年中,计算机视觉的重点主要是放在卷积神经网络上的研究和学习[44]。它能成为深度学习领域中人人熟知的神经网络之一,主要原因是因为它在图像分析和特征处理研究中有很多创新性发展。2012年,利用视觉领域中标准图像数据库ImageNet的卷积神经网络在特征提取下进行图像分类、物体识别等任务中取得了令人满意的成绩。卷积神经网络的特点之一为卷积神经网络都是将原始数据集直接输入算法模型中,从而有效地减少传统的图像处理算法中每次都需要重新对学习特征的图像重新进行人工计算,卷积神经网络由提前设置好的模型自动选取图像特征完成之后一系列工作,目前它已经被广泛应用于各大图像相关的行业中.针对鱼类目标特有的扁长形状替换了原网络使用的通用数据集的锚框。经K-means算法计算出属于鱼类特有的锚点,统计结果可以得出检测的物体为中小物体。因此将改进算法中检测部分的网络,保留中型和小型物体检测结构,删除关于大物体检测网络。将原算法中NMS算法更换新的soft-NMS非极大抑制算法,主要目的是解决因重叠而产生遗漏目标或者重复检测的情况。养殖池塘鱼类数据集增广方法研究。针对真实养殖环境下采集的鱼群数据质量不高、标注困难以及鱼群数据样本存在遮挡、模糊等问题,提出了集成的养殖池塘鱼类数据集增广方法,以有效地解决在模型学习过程中容易产生的过拟合问题。
交并比的定义图
2.2数据增广算法数据
增广是神经网络中处理数据常用的方法之一,尽可能的使数据集变得丰富多样是其方法主要目的之一,模型使用处理后的数据比原数据集更具有泛化能力。现阶段各大深度学习网络结构存在直接在模型中自带了数据增广方法,但是使用数据增广是针对通用数据集直接调用了对应的接口函数,而没有特殊情况进行进行详细的分析。在实际应用环境中,现有的增广方式不一定都适合属于自己的训练数据,需要根据不同的数据集特征来重新确定应该使用数据增广方式。通用的标准图像的增广方式包含有:翻转(垂直或水平),位移,裁剪,旋转,颜色抖动,添加噪声,例如椒盐噪声,高斯噪声等。此外针对不同数据集还可以尝试多种操作的组合,例如同时做翻转和随机角度旋转等。图像平移通常是指图像上的像素均沿X左边或Y左边方向移动图像或同时沿二者方向移动。图像翻转主要涵盖水平翻转和垂直翻转两种方式,其中垂直翻转是将图像旋转180度后再执行水平翻转。图像旋转是指以图像中某个点(常用图像中心点)为中心进行任意规定的方位旋转。图像缩放中向外缩放即将图片进行放大操作,向内缩放即为图像缩小。与缩放不同,从需要增广的某张图像中随机选取图像中某部分,再将裁剪的图像的尺寸调整为原始图像大小的方法通常称为随机裁剪。深度学习的裁剪的常用做法是将原有图片缩放到1.1倍,然后在改变大小的图像上进行裁剪操作。在神经网络学习过程中可能存在许多跟网络学习不相关的特征。为解决此类问题,在图像中常常需要添加适量的噪声去增强化神经网络模型的对数据集样本的学习能力。
鱼类检测结果1
第3章图像数据增广及数据集制作.........................................................................................12
3.1引言................................................................................................................................12
3.2鱼类图像数据集............................................................................................................12
3.1引言................................................................................................................................12
3.2鱼类图像数据集............................................................................................................12
3.3鱼类图像增广方法........................................................................................................13
第4章YOLOv3检测网络的选择与改进.....................................................................................18
4.1引言................................................................................................................................18
4.2YOLOv3网络检测算法...................................................................................................18
4.2YOLOv3网络检测算法...................................................................................................18
4.3基于K-means算法聚类标注信息锚框........................................................................21
4.4基于YOLOv3改进的网络模型......................................................................................22
4.5非极大值抑制处理物体重复检测方法........................................................................24
第5章实验与结果分析.............................................................................................................28
5.1实验环境.........................................................................................................................28
5.2实验评价指标.................................................................................................................28
5.2实验评价指标.................................................................................................................28
5.3实验结果与分析............................................................................................................28
......
第5章实验与结果分析
5.1实验环境
本实验所用数据是来自真实养殖场池塘的图片,大小均为1280*736.这些图片均截取自萤石云中实时监控鱼类养殖视频,Ubuntu16.01,TeslaK20显卡,6G内存,NvidiaCuda6.0。在训练阶段,带动量项的异步随机梯度下降为0.9,每批包含64幅图像,初始学习率为0.001,衰减系数为0.0005。训练数据集(1000个图像)被格式化为VOC数据集。测试数据集(200幅图像)用于测试训练效果.通过对标记数据集的聚类分析,发现大部分鱼类数据集都是扁长形的框,常用的anchorbox只适合通用数据集。根据K-means聚类算法,可以得到属于鱼类的数据集anchorbox,将得到的anchorbox与原始数据集进行比较得出鱼类大多为中小型物体。原始网络中大型目标的尺度检测不满足鱼类数据集的特征,因此将大尺度检测网络删除。传统的数据增强方法不适合水产养殖环境。根据数据集的特点,提出了亮度调整,模糊增广,部分置黑三种人工扩充数据集的方法。删除后的网络提高了训练速度和识别精度,使数据集检测技术精度达到85%以上,完成实时识别目标的要求。非极大值抑制可以有效避免重复框的产生,但是原有NMS可能会将重叠的物体框直接消除,本文将NMS改成Soft-NMS不需要重新训练原有的模型,不额外增加计算量还可以有效提高重叠物体的检测率。在处理深度学习中的数据增广问题,针对实际场景及特有特点大多数会采用多种数据增广方式的结合,而并非单独使用一种的增广方法。
5.2实验评价指标
为了验证提出的性能评估指标的方法是否正确简单进行了一些测试。目标检测结果如图5-1所示。首先用传统的YOLOv3网络检测测试数据集中的图像,结果如图5-1(a)和(b)所示。然后,图5-2(a)和(b)表示使用数据增广和改进模型后的综合结果。在图5-1(a)和(b)中,存在物体漏检(由白色圆圈标记)和检测框重复检测(由黄色箭头标记)检测问题。为了解决这些问题,本文提出了数据增广和模型改进的方法。在图5-2(a)和(b)中,有效地检测出模糊的水面下的遮挡鱼群(由标记为黑色圆圈),并且修正了检测框的检测结果(由标记为蓝色箭头)。通过实验结果可以对比原方法及改进后的方法性能之间进行了客观的评价。此外,对比实验中原始的YOLOv3和数据增强后的YOLOv3分别进行准确率与召回率的实验,实验结果如表5-1和5-2所示。在表中可以看出,在网络模型上加入数据增广技术可以明显地提高模型的精度与召回率。对比实验中原始的YOLOv3网络结构与改进后的网络结构分别进行准确率与召回率的实验,实验结果如表5-3和5-4。从实验结果可以看出,在改进后的YOLOv3网络模型上可以明显地提高模型的精度与召回率。对比实验中原始的YOLOv3网络结构与和综合提出的网络模型方法(网络优化和数据增强)分别使用实验评价指标测试,实验结果如表5-5和5-6。在结果中可以看出,综合提出的网络模型方法上可以明显地提高模型的精度与召回率。本文提出的最终模型不仅解决了鱼类检测中的漏检和重复检测问题,而且在所有测试图像上都达到了较高的平均精度、召回率和速度。由以上的分析可得知,本方法可以方便、准确地计算出鱼的数量。该方法具有以下优点:1)数据增广可以有效地解决鱼类图像集产生的过拟合问题。
........
第6章总结与展望
随着科技的发展,计算机视觉引发社会关注度不断提高,计算机视觉领域中从最开始的机器学习到深度学习,网络结构和层数不断更新。在科学研究深入的时间里,基于深度学习的卷积网络模型层出不断,但大部分都是适用于通用领域中,特定领域的神经网络模型根据数据集特点对网络进行相应的改进,可以有效的解决更多现实生活中的具体问题。图像分类、目标检测、物体分割为三大核心计算机视觉的任务。目标检测被分成一阶段和两阶段类型,涵盖着多种检测效果良好的神经网络模型。在以后的工作中,该方法可以在线实现并用于视频计数,具有更大的挑战性和实用性;第二,考虑建立新的特征学习网络模型模型,原网络模型中使用的Darknet53结构针对单一的目标检测数据集来说,计算量过于复杂,可以针对单一的检测目标设定一个新的网络模型结构。在这个新的网络模型结构后面仍采取改进后的YOLOv3中的两种尺度检测模型,完成一个全新的网络模型框架。新提出的网络模型框架可以大大减少特征学习中的数据卷积计算,大大减小数据计算,能提升检测的实时性,更加符合真实环境下的需求。本文提出的方法是在离线条件下对图像和视频进行计数。在线完成计数也将在今后的工作中纳入考虑范围内。通过对比实验的结果,可见本文所提出的整体模型在数据集上均有提高检测准确率和召回率的效果,改进后的YOLOv3模型明显更适合鱼类检测,平均检测准确率达到了92.5%,速度提升3ms,提出的整体模型对于实现基于计算机视觉鱼类检测具有社会应用意义,有助于节省财力和时间,相比人工计数更加准确。
参考文献(略)