CN113901944A - 一种基于改进的yolo算法的海洋生物目标检测方法 - Google Patents
一种基于改进的yolo算法的海洋生物目标检测方法 Download PDFInfo
- Publication number
- CN113901944A CN113901944A CN202111251729.2A CN202111251729A CN113901944A CN 113901944 A CN113901944 A CN 113901944A CN 202111251729 A CN202111251729 A CN 202111251729A CN 113901944 A CN113901944 A CN 113901944A
- Authority
- CN
- China
- Prior art keywords
- image
- data set
- marine organism
- reading
- yolo
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 68
- 238000012549 training Methods 0.000 claims abstract description 25
- 238000007781 pre-processing Methods 0.000 claims abstract description 14
- 238000013434 data augmentation Methods 0.000 claims abstract description 9
- 238000000034 method Methods 0.000 claims description 58
- 238000005070 sampling Methods 0.000 claims description 19
- 238000009826 distribution Methods 0.000 claims description 16
- 238000005096 rolling process Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 9
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 6
- 230000004927 fusion Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000012360 testing method Methods 0.000 claims description 4
- 238000012952 Resampling Methods 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000012805 post-processing Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 230000015556 catabolic process Effects 0.000 description 8
- 238000006731 degradation reaction Methods 0.000 description 8
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 239000013535 sea water Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及计算机视觉技术领域,提供一种基于改进的YOLO算法的海洋生物目标检测方法,包括:步骤100,采集海洋生物数据集;步骤200,对数据集进行预处理和数据增广;步骤300,构建使用可变形卷积改进的YOLO V3检测器;步骤400,在进行步骤200形成的数据集上训练模型;步骤500,部署训练好的模型用于海洋生物目标的检测任务。本发明能够提高海洋生物目标检测的精确性和可靠性。
Description
技术领域
本发明涉及计算机视觉技术领域,尤其涉及一种基于改进的YOLO算法的海洋生物目标检测方法。
背景技术
渔业作为海洋产业的一大板块,是中国国民经济的重要组成部分,中国也是世界上最大的渔业生产国。近年来我国的渔业逐渐走向现代化,规模化的海洋牧场为现代化渔业的建设和管理提供了可行的解决方案。但现阶段对于海产品的捕捞,尚需要一种现代化的捕捞作业方式,这就需要一种针对海洋生物的目标检测方法来辅助机器人入水执行作业。
目标检测作为计算机视觉领域的一个基础性问题,已经有数十年的研究历史,近几年,随着深度学习技术的兴起,目标检测领域涌现出了一系列代表性的方法,例如,以Faster R-CNN(Faster Region with Convolutional Neural Network,更快速的含区域卷积神经网络)为代表的两阶段目标检测方法,以YOLO V3(You Only Look Once V3,只看一次的目标检测器)为代表的一阶段目标检测方法,以CenterNet(中心网络)为代表的无锚框目标检测方法等等。
尽管如此,海洋生物生活在水下,由于海水以及其中悬浮的微粒对光的衰减和散射,水下图像退化严重,普遍存在着亮度低、对比度低、色偏等问题,常规的目标检测方法难以奏效。考虑到水下图像获取难度较大,数据驱动的方式难以奏效。所以,如何克服水下图像退化问题,使用小规模数据完成海洋生物的目标检测是一个亟待解决的问题。
发明内容
本发明主要解决现有技术不适应小规模数据训练以及水下图像退化现象的技术问题,提出一种基于改进的YOLO算法的海洋生物目标检测方法,以达到提高海洋生物目标检测的精确性和可靠性的目的。
本发明提供了一种基于改进的YOLO算法的海洋生物目标检测方法,包括以下步骤:
步骤100,采集海洋生物数据集;
步骤200,对数据集进行预处理和数据增广;
步骤300,构建使用可变形卷积改进的YOLO V3检测器;
步骤400,在进行步骤200形成的数据集上训练模型,包括如下步骤401至步骤406:
步骤401,读取参数文件,加载在大规模图像分类数据集上预训练的模型权重;
步骤402,从步骤200处理生成的数据集中读取图像,划分训练集和验证集;
步骤403,将训练数据分批次输入到骨干网络中,经过连续的卷积处理,生成三张尺度分别为13*13、26*26和52*52的特征图,供后续特征融合;
步骤404,通过上采样后再卷积的方式,融合三张不同尺度下的特征图上所包含的信息,供后续执行预测;
步骤405,使用两分支的头部网络,在三张特征图上的每一个网格处各预测出三个目标框,并给出它们的位置信息和类别信息;
步骤406,采用BBox Voting的方法对目标框进行后处理,得到最终的预测结果;
步骤500,部署训练好的模型用于海洋生物目标的检测任务。
进一步的,所述步骤100中采集海洋生物数据集,包括如下步骤:
步骤101,由潜水员或水下航行器携带摄像头设备在近岸海域拍摄包含海洋生物的原始图像;
步骤102,筛选所摄制的图像,对拍摄质量较好的图像上存在的海洋生物进行标注,形成标准图像和标注信息;
步骤103,将标准图像和标注信息按照PASCAL VOC的标准格式导出,形成数据集。
进一步的,所述步骤200,对数据集进行预处理和数据增广,包括如下步骤:
步骤201,读入数据集中的图像,采用直方图均衡化的方法,调整图像的灰度分布,生成图像集A;
步骤202,读入图像集A中的图像,采用Flip的方法,随机翻转图像,增加数据集中不同视角下的样本数量,生成图像集B;
步骤203,读入图像集A中的图像,采用Mixup的方法,随机融合图像,增加数据集中存在遮挡和密集分布现象的样本数量,生成图像集C;
步骤204,读入图像集A中的图像,采用Crop的方法,随机裁剪图像,增加数据集中大尺度目标的样本数量,生成图像集D;
步骤205,读入图像集A中的图像,采用Expand的方法,随机拼合图像,增加数据集中小尺度目标的样本数量,生成图像集E;
步骤206,读入图像集A中的图像,统计不同类别样本的分布,采用Copy-Paste的方法,增加数据集中样本数较少的类别的样本数量,生成图像集F;
步骤207,读入图像集A、B、C、D、E、F中的图像,将图像大小缩放到标准尺寸,生成待训练的图像集G。
进一步的,所述步骤300,构建改进的YOLO V3检测器,包括以下步骤:
步骤301,构建输入层,用于接受水下图像输入;
步骤302,构建使用可变形卷积块改进的骨干网络,用于提取特征;
步骤303,构建使用可变形卷积块改进的第一大尺度检测头部网络,用于检测大尺度海洋生物;
步骤304,构建使用可变形卷积块改进的第二中尺度检测头部网络,用于检测中尺度海洋生物;
步骤305,构建使用可变形卷积块改进的第三小尺度检测头部网络,用于检测小尺度海洋生物;
步骤306,将步骤301至305所构建网络进行组合,得到改进的YOLO V3检测器。
进一步的,改进的YOLO V3检测器中可变形卷积的计算,包括如下过程:
获取上层卷积输出的特征图;
对特征图进行卷积运算得到偏移矩阵;
根据偏移矩阵得到含偏移的采样网格;
根据含偏移的采样网格对特征图重新采样;
对采样结果进行卷积运算并输出新的特征。
进一步的,在步骤406之后,还包括:
步骤407,通过损失函数计算预测结果与真值的误差,执行反向传播;
步骤408,在验证集上测试模型效果,判断其损失是否在超过损失阈值,如超过损失阈值,则重复步骤403至408,直到损失小于损失阈值,将当前的模型权重保存到权重文件中。
进一步的,所述步骤500中部署训练好的模型用于海洋生物目标的检测任务,包括如下步骤:
步骤501,将改进的YOLO V3检测器部署到用于执行检测的运算设备上;
步骤502,读取参数文件,加载步骤400中训练完成的模型权重;
步骤503,读取摄像头设备上的图像,使用直方图均衡化的方法对图像进行预处理;
步骤504,将处理好的图像送入改进的YOLO V3检测器,执行海洋生物目标的预测;
步骤505,将检测结果中包含的位置信息和类别信息予以可视化。
本发明提供的一种基于改进的YOLO算法的海洋生物目标检测方法,与现有技术相比具有以下优点:
1、取代了传统的水下图像预处理流水线,避免了由于作业深度的变化使得图像亮度分布、色彩分布不均衡,从而给目标检测的准确度和召回率带来的影响。
2、引入了Mixup、Crop等数据增广方法,解决了水下图像难以获取,数据集规模小的问题,也加强了对海洋生物密集分布或存在遮挡等多种情况下的检测能力。
3、改进了传统的YOLO V3检测器的检测效果,通过引入可变形卷积,获得了具有自适应感受野的骨干网络,提升了检测器对于海洋生物形状上的适应性。
附图说明
图1是本发明提供的方法的基于改进的YOLO算法的海洋生物目标检测方法的流程图;
图2是本发明提供的数据预处理和数据增广的流程图;
图3是本发明提供的改进的YOLO V3检测器的网络结构示意图;
图4是可分离卷积的流程图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
图1是本方法的步骤图。如图1所示,本发明实施例提供的基于改进的YOLO算法的海洋生物目标检测方法,包括以下步骤:
步骤100,采集海洋生物数据集。
步骤101,由潜水员或水下航行器携带摄像头设备在近岸海域拍摄包含海洋生物的原始图像。
具体的,首先由潜水员或水下航行器携带摄像头设备下潜至富有海洋生物的自然海域或养殖区域,拍摄足够的图像,图像应尽可能包含可能出现的各类海洋生物。
步骤102,筛选所摄制的图像,对拍摄质量较好的图像上存在的海洋生物进行标注。
完成拍摄作业后,对所摄制的图像予以筛选,滤去其中不包含任何海洋生物的无效照片,以及因拍摄原因导致的模糊照片等不适合用作数据集的照片,对拍摄质量较好的图像上存在的海洋生物进行标注。
步骤103,将标准图像和标注信息按照PASCAL VOC的标准格式导出,形成数据集。
将剩余有效照片按照PASCAL VOC要求的标准格式,进行数据标注,标注出图像中存在的海洋生物,制作成可供目标检测器训练的标准格式数据集。
步骤200,对数据集进行预处理和数据增广。
具体的,本步骤的详细实施步骤如图2所示。针对海洋生物的目标检测问题主要面临两项挑战:其一是水下图像普遍存在着亮度低、对比度低、色偏等退化问题,且伴随着作业深度的变化,图像的退化程度也会随之变化,为目标检测任务的执行增加了诸多不便;其二是水下图像获取困难,因此数据规模较小,难以通过数据驱动的方式训练模型。
步骤201,读入数据集中的图像,采用直方图均衡化的方法,调整图像的灰度分布,解决水下图像失真的问题,生成图像集A;
本步骤主要是针对其中的第一个挑战,解决水下图像失真的问题。本发明采用直方图均衡化算法对水下摄制图像进行预处理,直方图均衡化是数字图像处理技术中的一种灰度方法,其统计图像的灰度分布,并通过应用一个非线性变换,使灰度级重新近似均匀的分布在[0,255]的区间上。对于所摄制的RGB三通道彩色图像,将其三个通道各自独立地进行直方图均衡化变换而后叠加,即可使其色彩恢复到较为均匀的分布下,同时,该算法对图像亮度和对比度的提升作用也十分显著。该算法能够对图像退化程度伴随水深不断变化这一问题有优良的自适应特性,有效的解决了水下图像退化的问题。
步骤202,读入图像集A中的图像,采用Flip的方法,随机翻转图像,增加数据集中不同视角下的样本数量,生成图像集B。
Flip(翻转)方法,随机对图像执行水平翻转或垂直翻转,可以扩充以不同方向、不同视角采集的水下图像数据。
步骤203,读入图像集A中的图像,采用Mixup的方法,随机融合图像,增加数据集中存在遮挡和密集分布现象的样本数量,生成图像集C。
Mixup(混合)方法,随机选取两张图像进行融合,可以扩充存在密集分布或存在遮挡现象的水下图像数据。
步骤204,读入图像集A中的图像,采用Crop的方法,随机裁剪图像,增加数据集中大尺度目标的样本数量,生成图像集D。
Crop(裁切)方法,随机从图像中裁剪下一块包含海洋生物目标的子区域,经过后续步骤的缩放后,所裁下的区域会变成一个目标尺度较大的样本;
步骤205,读入图像集A中的图像,采用Expand的方法,随机拼合图像,增加数据集中小尺度目标的样本数量,生成图像集E。
Expand(扩展)方法,随机拼接几张水下图像,所拼合的图像经后续步骤的缩放后会变成目标尺度较小的样本,该方法和Crop方法的引入可以扩充不同尺度的水下图像数据;
步骤206,读入图像集A中的图像,统计不同类别样本的分布,采用Copy-Paste的方法,增加数据集中样本数较少的类别的样本数量,生成图像集F。
Copy-Paste(复制-粘贴)方法,考虑到各类别的海洋生物的数量分布是不均匀的,该方法将数量较少的海洋生物样本进行裁切并粘贴在其他图像上,以增加其样本数量,该方法的引入可以扩充困难样本的数量,使各类别海洋生物的数量分布更加均匀。
步骤207,读入图像集A、B、C、D、E、F中的图像,将图像大小缩放到标准尺寸,生成待训练的图像集G。
在执行过上述预处理和图像增广的方法之后,为了适应步骤300中YOLO V3检测器的输入要求,所有的图像将被统一缩放到416*416的标准尺寸,形成一个新的待训练的数据集,该数据集将在步骤400中用于模型的训练。
步骤200针对其中的第二个挑战,步骤202-步骤206用来增加数据集中不同视角下的样本数量。本发明引入了Flip、Mixup、Crop、Expand和Copy-Paste等5种数据增广方法,能够扩充训练数据。
步骤300,构建使用可变形卷积改进的YOLO V3检测器。
具体的,使用可变形卷积改进的YOLO V3检测器的网络结构如图3所示,包含骨干网络、第一大尺度检测头部网络、第二中尺度检测头部网络和第三小尺度检测头部网络。YOLO V3延续了YOLO系列方法一以贯之的设计思想,将输入图像均匀划分成多个网格,如果某一目标的中心落到了一个网格上,那么就由这一网格负责预测该目标。传统的YOLO V3检测器使用一种包含53层卷积运算的全卷积网络作为骨干网络提取输入图像中的特征,对其中不同层次的特征图进行融合,在此基础上,直接预测出目标的形状位置和类别信息。本步骤在骨干网络、第二中尺度检测头部网络和第三小尺度检测头部网络中使用可变形卷积替代普通卷积对传统YOLO V3检测器实现改进。包括以下步骤:
步骤301,构建输入层,用于接受水下图像输入。
按照YOLO V3检测器的需要执行必要的图像预处理,例如标准化以及图像到张量的转化等,以满足骨干网络的输入需要。
步骤302,构建使用可变形卷积块改进的骨干网络,用于提取特征。
骨干网络包含第一卷积层、第二卷积层、第一残差块、第三卷积层、第二残差块、第四卷积层、第三残差块、第五卷积层、第四残差块、第六卷积层、第五残差块和第一可变形卷积块。步骤301所输入张量经过本步骤得到能对其进行表征的特征图。
步骤303,构建使用可变形卷积块改进的第一大尺度检测头部网络,用于检测大尺度海洋生物。
第一大尺度检测头部网络包含第七卷积层和第一输出层。步骤302所输出特征图经过本步骤得到第一组预测目标框。
步骤304,构建使用可变形卷积块改进的第二中尺度检测头部网络,用于检测中尺度海洋生物。
第二中尺度检测头部网络包含第八卷积层、第一上采样层、连接运算、第二可变形卷积块、第九卷积层和第二输出层。步骤302所构建骨干网络中第一可变形卷积块与第四残差块的输出特征图经过本步骤得到第二组预测目标框。
步骤305,构建使用可变形卷积块改进的第三小尺度检测头部网络,用于检测小尺度海洋生物。
第三小尺度检测头部网络包含第十卷积层、第二上采样层、连接运算、第三可变形卷积块、第十一卷积层和第三输出层。步骤302所构建骨干网络中第三残差块和步骤304所构建第二中尺度检测头部网络中第二可变形卷积块的输出特征图经过本步骤得到第三组预测目标框。
步骤306,将步骤301至305所构建网络进行组合,得到改进的YOLO V3检测器。
考虑到海洋生物的外观形状是不规则的,为了更好的适应这一现象,本发明为传统YOLO V3检测器提供自适应的感受野(Receptive Field),感受野是指卷积算子在一次运算中能获取到的信息对应在原始输入图像上的范围。本发明引入了可变形卷积块,即使用可变形卷积替代普通3*3卷积的卷积序列。
具体的,可变形卷积是一种即插即用模块,如图4所示,改进的YOLO V3检测器中可变形卷积的计算,包括如下过程:
步骤a,获取上层卷积输出的特征图。
步骤b,对特征图进行卷积运算得到偏移矩阵。
使用二倍于特征通道数的卷积核对特征图进行一次卷积运算,所得到的运算结果被视作偏移矩阵。原特征图的每一通道对应运算结果中的两张偏移图,分别代表采样点在宽和高两个轴向上的偏移量。
步骤c,根据偏移矩阵得到含偏移的采样网格。
查询步骤b计算得到的偏移图,对规范采样网格上的每一个采样点应用其在偏移图上的偏移量修正,得到修正后的采样网格。
步骤d,根据含偏移的采样网格对特征图重新采样。
按照步骤c生成的采样网格采样,对于其中为小数坐标的采样点,考虑其邻域上的值,采用双线性插值计算目标位置上的值。
步骤e,对采样结果进行卷积运算并输出型的特征。
按照步骤d的采样结果,与卷积核进行运算。直到完成滑动窗口,得到输出特征图。
本发明可变形卷积块改变了常规卷积的采样范围,从而拓展其感受野。该模块作为网络的一部分,可以在训练过程中自行学习,使YOLO V3检测器获得自适应的感受野,从而更好地适应海洋生物的外观形状。
步骤400,在进行步骤200形成的数据集上训练模型。
步骤401,读取参数文件,加载在大规模图像分类数据集(ImageNet)上预训练的模型权重。
步骤402,从步骤200处理生成的数据集中读取图像,划分训练集和验证集。
具体的,本步骤导入步骤200中所形成的经过预处理和增广后的训练集,按照3:1的比例划分训练集和验证集,载入训练集数据并随机打乱次序,按照一定输入逐批次读入图像,并同步到GPU的显存中。加载在ImageNet(一种大规模图像分类数据集)上预训练的权重,并将模型同步到GPU的显存中。
步骤403,将训练数据分批次输入到骨干网络中,经过连续的卷积处理,生成三张尺度分别为13*13、26*26和52*52的特征图,供后续特征融合。
对于每一批次的图像数据,本步骤将其送入YOLO V3检测器,交付骨干网络处理,骨干网络会从该批次的图像数据中提取特征,并输出在13*13、26*26、52*52等三种不同尺度下的特征图。
步骤404,通过上采样后再卷积的方式,融合三张不同尺度下的特征图上所包含的信息,供后续执行预测。
经过瓶颈网络的上采样和卷积操作,三张不同尺度上的特征图会由深而浅进行融合,得到三张包含了不同层次融合语义特征的特征图。
步骤405,使用两分支的头部网络,在三张特征图上的每一个网格处各预测出三个目标框,并给出它们的位置信息和类别信息。
特征图上的每一个点对应一个网格,代表着原始图像上的一个区块划分,YOLO V3的头部网络会在每一个网格上预测出三个可能存在海洋生物的预测框,并给出该预测框在图像中的坐标、大小、所属类别和置信度等信息。
步骤406,采用BBox Voting(Bounding Box Voting,边框选举)的方法对目标框进行后处理,得到最终的预测结果。
这些候选框信息会使用BBox Voting方法进行后处理,该方法使用与选定框IoU(Intersection-over-Union,交并比)超过一定阈值的预测框的形状位置信息加权平均以修正选定框的形状位置。最终,输出一批对海洋生物的预测结果,前向传播完成。
在步骤406之后,还包括:
步骤407,通过损失函数计算预测结果与真值的误差,执行反向传播。
对于所输出的预测结果,将其与训练数据进行的标注中提供的真值做对比,使用YOLO V3的损失函数计算损失值,将这一损失值应用在网络的反向传播中用于更新权重,推进网络的学习进程。
步骤408,在验证集上测试模型效果,判断其损失是否在超过损失阈值,如超过损失阈值,则重复步骤403至408,直到损失小于损失阈值,将当前的模型权重保存到权重文件中。
当网络已经学习过训练集中的所有图像后,在验证集上使用损失函数评估模型的表现,当其损失值下降到一定阈值之下后,可以停止训练过程,否则,重复上述过程,再次打乱训练集,使模型继续在训练集图像上学习。当训练过程结束后,模型将具有优良的海洋生物目标检测能力,导出模型中的权重,供部署使用。
步骤500,部署训练好的模型用于海洋生物目标的检测任务。
步骤501,将改进的YOLO V3检测器部署到用于执行检测的运算设备上。
具体的,本步骤将步骤400中训练好的模型转换成易于部署的格式,这一转换方式和目标格式受部署的目标平台的特性和需要决定。例如,可以通过TensorRT的形式在Nvidia Jetson系列嵌入式终端部署;或通过MNN框架在运行Android或iOS***的可移动设备上部署等。相应的,权重文件也应按照部署的需要进行格式的转换。
步骤502,读取参数文件,加载步骤400中训练完成的模型权重。
步骤503,读取摄像头设备上的图像,使用直方图均衡化的方法对图像进行预处理。
即在执行检测时,调用终端上的摄像头设备,获取实时视频流,如步骤201所述过程,将视频帧进行直方图均衡化处理,以解决视频帧中水下图像的退化问题。对于处理好的帧数据,将其尺寸缩放到416*416的大小上。
步骤504,将处理好的图像送入改进的YOLO V3检测器,执行海洋生物目标的预测。
步骤505,将检测结果中包含的位置信息和类别信息予以可视化。
将步骤504输出的预测结果进行解析,获取海洋生物目标的位置信息及类别信息,使用OpenCV提供的图像编辑和显示接口,在帧数据中目标位置上绘制边框,并标注所述的海洋生物类别,提供给显示设备显示。
本发明实施例提供的基于改进的YOLO算法的海洋生物目标检测方法,首先构建一个符合标准PASCAL VOC格式的海洋生物目标检测数据集;通过包含直方图均衡化和Flip、Crop等方法的流水线,完成图像的预处理和增广,形成可供训练使用的数据集;进一步,构建使用可变形卷积改进的YOLO V3检测器,并使用上述数据集训练该检测器,使其具有优良的水下目标检测能力;最后,导出可部署的模型,在用于检测作业的终端运算设备上部署模型,从摄像头输入的视频流中执行检测任务。
经测试,本发明实施例提供的基于改进的YOLO算法的海洋生物目标检测方法可应对复杂海洋环境带来的水下图像退化问题,使用小规模数据即可训练针对海洋生物的目标检测模型,在满足实施目标检测任务需求的同时,具有优良的准确率和召回率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (7)
1.一种基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,包括以下步骤:
步骤100,采集海洋生物数据集;
步骤200,对数据集进行预处理和数据增广;
步骤300,构建使用可变形卷积改进的YOLO V3检测器;
步骤400,在进行步骤200形成的数据集上训练模型,包括如下步骤401至步骤406:
步骤401,读取参数文件,加载在大规模图像分类数据集上预训练的模型权重;
步骤402,从步骤200处理生成的数据集中读取图像,划分训练集和验证集;
步骤403,将训练数据分批次输入到骨干网络中,经过连续的卷积处理,生成三张尺度分别为13*13、26*26和52*52的特征图,供后续特征融合;
步骤404,通过上采样后再卷积的方式,融合三张不同尺度下的特征图上所包含的信息,供后续执行预测;
步骤405,使用两分支的头部网络,在三张特征图上的每一个网格处各预测出三个目标框,并给出它们的位置信息和类别信息;
步骤406,采用BBox Voting的方法对目标框进行后处理,得到最终的预测结果;
步骤500,部署训练好的模型用于海洋生物目标的检测任务。
2.根据权利要求1所述的基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,所述步骤100中采集海洋生物数据集,包括如下步骤:
步骤101,由潜水员或水下航行器携带摄像头设备在近岸海域拍摄包含海洋生物的原始图像;
步骤102,筛选所摄制的图像,对拍摄质量较好的图像上存在的海洋生物进行标注,形成标准图像和标注信息;
步骤103,将标准图像和标注信息按照PASCAL VOC的标准格式导出,形成数据集。
3.根据权利要求1所述的基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,所述步骤200,对数据集进行预处理和数据增广,包括如下步骤:
步骤201,读入数据集中的图像,采用直方图均衡化的方法,调整图像的灰度分布,生成图像集A;
步骤202,读入图像集A中的图像,采用Flip的方法,随机翻转图像,增加数据集中不同视角下的样本数量,生成图像集B;
步骤203,读入图像集A中的图像,采用Mixup的方法,随机融合图像,增加数据集中存在遮挡和密集分布现象的样本数量,生成图像集C;
步骤204,读入图像集A中的图像,采用Crop的方法,随机裁剪图像,增加数据集中大尺度目标的样本数量,生成图像集D;
步骤205,读入图像集A中的图像,采用Expand的方法,随机拼合图像,增加数据集中小尺度目标的样本数量,生成图像集E;
步骤206,读入图像集A中的图像,统计不同类别样本的分布,采用Copy-Paste的方法,增加数据集中样本数较少的类别的样本数量,生成图像集F;
步骤207,读入图像集A、B、C、D、E、F中的图像,将图像大小缩放到标准尺寸,生成待训练的图像集G。
4.根据权利要求1所述的基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,所述步骤300,构建改进的YOLO V3检测器,包括以下步骤:
步骤301,构建输入层,用于接受水下图像输入;
步骤302,构建使用可变形卷积块改进的骨干网络,用于提取特征;
步骤303,构建使用可变形卷积块改进的第一大尺度检测头部网络,用于检测大尺度海洋生物;
步骤304,构建使用可变形卷积块改进的第二中尺度检测头部网络,用于检测中尺度海洋生物;
步骤305,构建使用可变形卷积块改进的第三小尺度检测头部网络,用于检测小尺度海洋生物;
步骤306,将步骤301至305所构建网络进行组合,得到改进的YOLO V3检测器。
5.根据权利要求4所述的基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,改进的YOLO V3检测器中可变形卷积的计算,包括如下过程:
获取上层卷积输出的特征图;
对特征图进行卷积运算得到偏移矩阵;
根据偏移矩阵得到含偏移的采样网格;
根据含偏移的采样网格对特征图重新采样;
对采样结果进行卷积运算并输出新的特征。
6.根据权利要求1所述的基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,在步骤406之后,还包括:
步骤407,通过损失函数计算预测结果与真值的误差,执行反向传播;
步骤408,在验证集上测试模型效果,判断其损失是否在超过损失阈值,如超过损失阈值,则重复步骤403至408,直到损失小于损失阈值,将当前的模型权重保存到权重文件中。
7.根据权利要求1所述的基于改进的YOLO算法的海洋生物目标检测方法,其特征在于,所述步骤500中部署训练好的模型用于海洋生物目标的检测任务,包括如下步骤:
步骤501,将改进的YOLO V3检测器部署到用于执行检测的运算设备上;
步骤502,读取参数文件,加载步骤400中训练完成的模型权重;
步骤503,读取摄像头设备上的图像,使用直方图均衡化的方法对图像进行预处理;
步骤504,将处理好的图像送入改进的YOLO V3检测器,执行海洋生物目标的预测;
步骤505,将检测结果中包含的位置信息和类别信息予以可视化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111251729.2A CN113901944B (zh) | 2021-10-25 | 2021-10-25 | 一种基于改进的yolo算法的海洋生物目标检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111251729.2A CN113901944B (zh) | 2021-10-25 | 2021-10-25 | 一种基于改进的yolo算法的海洋生物目标检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113901944A true CN113901944A (zh) | 2022-01-07 |
CN113901944B CN113901944B (zh) | 2024-04-09 |
Family
ID=79026845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111251729.2A Active CN113901944B (zh) | 2021-10-25 | 2021-10-25 | 一种基于改进的yolo算法的海洋生物目标检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113901944B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114973121A (zh) * | 2022-04-29 | 2022-08-30 | 深圳市瑞驰信息技术有限公司 | 一种基于CenterNet的河道排水口检测方法、***及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108711172A (zh) * | 2018-04-24 | 2018-10-26 | 中国海洋大学 | 基于细粒度分类的无人机识别与定位方法 |
CN109409443A (zh) * | 2018-11-28 | 2019-03-01 | 北方工业大学 | 一种基于深度学习的多尺度可变形卷积网络目标检测方法 |
CN110070142A (zh) * | 2019-04-29 | 2019-07-30 | 上海大学 | 一种基于yolo神经网络的海上船只目标检测方法 |
WO2019144575A1 (zh) * | 2018-01-24 | 2019-08-01 | 中山大学 | 一种快速行人检测方法及装置 |
CN111143146A (zh) * | 2019-12-26 | 2020-05-12 | 深圳大普微电子科技有限公司 | 一种存储装置的健康状态预测方法及*** |
KR102180884B1 (ko) * | 2020-04-21 | 2020-11-19 | 피앤더블유시티 주식회사 | 영상 콘텐츠에서 객체 인식 기반의 상품 정보를 제공하기 위한 장치 및 이를 위한 방법 |
-
2021
- 2021-10-25 CN CN202111251729.2A patent/CN113901944B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019144575A1 (zh) * | 2018-01-24 | 2019-08-01 | 中山大学 | 一种快速行人检测方法及装置 |
CN108711172A (zh) * | 2018-04-24 | 2018-10-26 | 中国海洋大学 | 基于细粒度分类的无人机识别与定位方法 |
CN109409443A (zh) * | 2018-11-28 | 2019-03-01 | 北方工业大学 | 一种基于深度学习的多尺度可变形卷积网络目标检测方法 |
CN110070142A (zh) * | 2019-04-29 | 2019-07-30 | 上海大学 | 一种基于yolo神经网络的海上船只目标检测方法 |
CN111143146A (zh) * | 2019-12-26 | 2020-05-12 | 深圳大普微电子科技有限公司 | 一种存储装置的健康状态预测方法及*** |
KR102180884B1 (ko) * | 2020-04-21 | 2020-11-19 | 피앤더블유시티 주식회사 | 영상 콘텐츠에서 객체 인식 기반의 상품 정보를 제공하기 위한 장치 및 이를 위한 방법 |
Non-Patent Citations (2)
Title |
---|
吴俊;冯林;刘胜蓝;于来行: "基于基兀相关性描述子的图像检索", 计算机研究与发展, vol. 53, no. 012, 31 December 2016 (2016-12-31) * |
毛国君;翁伟栋;朱晋德;张媛;吴富村;毛玉泽: "基于改进YOLO-V4网络的浅海生物检测模型", 农业工程学报, no. 012, 30 June 2021 (2021-06-30) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114973121A (zh) * | 2022-04-29 | 2022-08-30 | 深圳市瑞驰信息技术有限公司 | 一种基于CenterNet的河道排水口检测方法、***及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113901944B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111223088B (zh) | 一种基于深层卷积神经网络的铸件表面缺陷识别方法 | |
CN110379020B (zh) | 一种基于生成对抗网络的激光点云上色方法和装置 | |
CN111339902B (zh) | 一种数显仪表的液晶屏示数识别方法及装置 | |
CN112967255A (zh) | 一种基于深度学习的盾构管片缺陷类型识别及定位***及其方法 | |
CN112070727A (zh) | 一种基于机器学习的金属表面缺陷检测方法 | |
CN111161224A (zh) | 基于深度学习的铸件内部缺陷分级评估***及方法 | |
CN111080531A (zh) | 一种水下鱼类图像的超分辨率重建方法、***及装置 | |
CN111524144A (zh) | 一种基于GAN和Unet网络的肺结节智能诊断方法 | |
CN114581432A (zh) | 一种基于深度学习的舌象仪舌象分割方法 | |
CN112651989A (zh) | 基于Mask RCNN实例分割的SEM图像分子筛粒径统计方法和*** | |
CN112949378A (zh) | 一种基于深度学习网络的细菌显微图像分割方法 | |
CN117252815A (zh) | 基于2d-3d多模态图像的工业零件缺陷检测方法、***、设备及存储介质 | |
CN113901944B (zh) | 一种基于改进的yolo算法的海洋生物目标检测方法 | |
CN112037225A (zh) | 一种基于卷积神经的海洋船舶图像分割方法 | |
CN116385758A (zh) | 基于YOLOv5网络对传送带表面损伤的检测方法 | |
CN115240259A (zh) | 一种基于yolo深度网络的课堂环境下人脸检测方法及其检测*** | |
CN111652231A (zh) | 一种基于特征自适应选择的铸件缺陷语义分割方法 | |
CN115223043A (zh) | 一种草莓缺陷检测方法、装置、计算机设备及存储介质 | |
CN114821229A (zh) | 基于条件生成对抗网络的水下声学数据集增广方法及*** | |
CN110570375A (zh) | 一种图像处理方法、装置、电子设置以及存储介质 | |
CN112270404A (zh) | 一种基于ResNet64网络的紧固件产品鼓包缺陷的检测结构及其方法 | |
CN114120061A (zh) | 一种面向电力巡检场景的小目标缺陷检测方法及*** | |
CN111429411B (zh) | 一种碳纤维复合芯导线的x射线缺陷图像样本生成方法 | |
CN114897214A (zh) | 一种基于图形化处理的金属增材制造时间预测***和方法 | |
CN114565764A (zh) | 基于舰船实例分割的港口全景感知*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |