CN112926652A - 一种基于深度学习的鱼类细粒度图像识别方法 - Google Patents
一种基于深度学习的鱼类细粒度图像识别方法 Download PDFInfo
- Publication number
- CN112926652A CN112926652A CN202110211206.9A CN202110211206A CN112926652A CN 112926652 A CN112926652 A CN 112926652A CN 202110211206 A CN202110211206 A CN 202110211206A CN 112926652 A CN112926652 A CN 112926652A
- Authority
- CN
- China
- Prior art keywords
- fish
- image
- layer
- network
- feature
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000013135 deep learning Methods 0.000 title claims abstract description 19
- 241000251468 Actinopterygii Species 0.000 claims abstract description 106
- 238000012545 processing Methods 0.000 claims abstract description 28
- 238000001514 detection method Methods 0.000 claims abstract description 16
- 238000007781 pre-processing Methods 0.000 claims abstract description 4
- 238000011176 pooling Methods 0.000 claims description 41
- 238000013527 convolutional neural network Methods 0.000 claims description 23
- 238000000605 extraction Methods 0.000 claims description 21
- 230000003068 static effect Effects 0.000 claims description 17
- 230000004927 fusion Effects 0.000 claims description 14
- 239000013598 vector Substances 0.000 claims description 11
- 238000010276 construction Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 21
- 238000012549 training Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012360 testing method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 241000207965 Acanthaceae Species 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 241000334709 Chromis chrysura Species 0.000 description 1
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 241000282414 Homo sapiens Species 0.000 description 1
- 210000004690 animal fin Anatomy 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic 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
Abstract
本发明公开了一种基于深度学习的鱼类细粒度图像识别方法,具体处理步骤如下:1)图像预处理处理步骤、2)图像检测步骤、3)图像识别步骤;本发明提供了实现复杂海洋环境下不同海洋鱼类的快速有效识别,解决特征不明显等问题的一种基于深度学习的鱼类细粒度图像识别方法。
Description
技术领域
本发明涉及水下鱼类的分布情况检测的技术领域,更具体的说,它涉及一种基于深度学习的鱼类细粒度图像识别方法。
背景技术
海洋鱼类作为海洋生物资源中最重要的一类,它不仅是人类重要的食物来源,同时也是维护地球生态平衡的重要力量。在对海洋鱼类资源开发探测过程中,必须对各种品种的鱼类进行识别,但鱼类体形各异,大小不一,识别起来较为复杂,而且同一类鱼的不同品种通常具有相似的外形、尺寸以及纹理等特征,很有可能会出现误判而导致严重的经济损失。因此研究海洋鱼类图像的识别技术,对我国海洋鱼类资源的开发利用具有重要的学术价值和经济价值。
鱼类识别是了解海洋生态系统和生物多样性的一项重要任务。可以通过自动鱼类识别,监测和评估鱼类种群以及分析海洋环境的变化来帮助科学家获得某些特定鱼类的分布。由于在复杂的海洋环境中很多鱼类的水下图像不清晰,并且存在训练图像的数量不平衡的问题,因此正确识别鱼类通常具有挑战性。
随着计算机信息技术的飞速发展,深度学习在计算机视觉等多个领域取得重要突破,传统的机器学习方法正逐渐被基于深度学习的方法所替代。利用深度学习方法的强大能力及优势,将其运用在海洋鱼类图像识别领域,开展基于深度学习的海洋鱼类图像识别相关技术研究成为重要的渔业课题之一,其中如何实现复杂海洋环境下不同海洋鱼类的快速有效识别,特征不明显等问题是重中之重。
发明内容
本发明为解决上述问题,提供了实现复杂海洋环境下不同海洋鱼类的快速有效识别,解决特征不明显等问题的一种基于深度学习的鱼类细粒度图像识别方法。
本发明的技术方案如下:
一种基于深度学习的鱼类细粒度图像识别方法,具体处理步骤如下:
1)图像预处理处理步骤:选取公开的海洋鱼类视频数据集,并从中选取一定数量的含鱼类的静态图像;对含鱼类的静态图像通过图像增强方法进行处理,得到预处理图像;
2)图像检测步骤:通过融合候选区域的深度全卷积网络RPN的快速区域卷积神经网络Faster R-CNN对步骤1)处理后的图像进行检测,构建海洋鱼类图像识别的模型;模型构建中通过卷积神经网络中的卷积层和池化层来产生特征图;
3)图像识别步骤:通过特征融合的FL-BCNN鱼类识别模型,对识别模型中特征网络提取到的不同卷积层的特征进行特征融合,增强特征提取网络之间的空间联系,提高鱼类特征的表达能力;
其中,基于特征融合的FL-BCNN网络包括特征提取过程的Stream A和Stream B,且Stream A和Stream B分别使用VGG-16作为特征提取网络,通过13个卷积层和4个池化层执行位置检测和特征提取;其中13个卷积层均使用3×3尺寸的卷积核,相同的卷积核尺寸使得前一层卷积核的张量与后一层的卷积核张量保持相同的宽和高,4个池化层均使用2×2的池化核进行池化。
进一步的,将步骤1)图像增强方法处理含鱼类的静态图像,对采集到的样本数据集做基于暗通道的加强处理,提高颜色通道的低值部分,暗通道定义公式如下:
其中,Jc表示彩色图像中的每个通道,Ω(x)表示以像素x为中心的一个窗口y,r、g、b表示图像的三个颜色通道;
提高图像颜色通道的低值部分的公式如下:
其中,I(x)就是已有的含鱼类的静态图像,J(x)是提升颜色通道低值部分后的图像,A是从含鱼类的静态图像的暗通道图中,取前0.1%的像素位置,在原始图像中寻找对应的具有最高亮度的点的值;t(x)为透射率,t0为常数,其中ω为常数。
进一步的,步骤2)中的海洋鱼类图像识别的模型具体包括如下步骤:
2.1)将对应得处理后的图像数据由ResNet101特征提取网络进行处理,得到特征图;
2.2)得到的特征图经过两条线路,一条线路经过特征金字塔网络FPN,融合不同层的特征,然后经过目标候选区域网络RPN,得到若干个前景目标候选区域ROI,并将其送入ROI Pooling层;另一条线路原封不动直接将特征图送入ROI Pooling层;
2.3)将经过ROI Pooling层的特征向量输入到两个输出层:一个是分类层,判断目标是否是某类鱼类;另一个是回归层,对ROI边框位置和大小进行微调,从而最终得到图像中鱼类的检测结果。
进一步的,步骤2.2)中的目标候选区域网络RPN采用特征金字塔网络FPN融合不同层的特征生成目标候选框;
特征金字塔网络FPN把特征图feature map设计成多尺度的金字塔结构,每一层对应使用单一尺度的anchor,ResNet101中卷积层的C2、C3、C4、C5对应的每一层金字塔{P2、P3、P4、P5},且其分别对应的anchor尺度为{32×32,64×64,128×128,256×256},并且为了目标候选区域网络RPN进行下采样操作的P6层的anchor尺度为512×512;其中使用三种比例(1:2,1:1,2:1)共15种类型的anchor对鱼类图像中的目标对象和背景进行检测,生成目标候选框;
具体处理如下:
首先将卷积层C5降到256,经过3×3卷积处理输出P5;再将卷积层C5经过上采样后经过1×1降维处理再与卷积层C4相加,经过3×3卷积处理输出P4;P3、P2以此类推;接着P6则是从P5极大池化后直接得到;最后将得到的P2-P6输入RPN网络中。
进一步的,步骤2.2)中的ROI Pooling层由目标候选区域网络RPN产生的候选框映射到特征图feature map上得到的;ROI Pooling就是针对ROIs的一种Pooling层,是将ROI调整到固定尺寸,其输出包括经过FPN网络得到的鱼类图像的特征图,和经过目标候选区域网络RPN直接得到的ROI;其中ROI Pooling的输出就是batch个大小固定且一致的矩形框,batch就是ROIs的个数;对ROI Pooling输出的每个矩形框进行max pooling操作,形成最后的ROI Pooling层输出结果。
进一步的,Stream B采用的VGG-16的最后一层卷积的输出与前面conv4卷积块的输出、conv5_1的输出做外积,达到融合不同层次的特征的目的;具体步骤如下:
即先将conv4和conv5_1的输出分别与最后一层的输出进行外积相乘,得到B2和B3;再将B2、B3与两个特征提取网络外积相乘得到的B1进行相加融合得到Bilinearvector;接着对Bilinear vector依顺序执行有符号平方根正则化操作最后对正则化操作获得的向量执行L2归一化,并将其发送到全连接的层。
进一步的,Stream B中采用焦点损失函数来判断模型的优劣,焦点损失函数采用在基于二值分类的交叉熵中引入Focal loss函数,来降低容易分类的样本的权重;其中,Focal loss的函数为如下公式:
FL(Pi)=-αi(1-Pi)γlog(Pi) 公式(3)
Pi为经过softmax的输出的模型估计概率,Pi越大代表越容易分类,γ是一个指数,经过指数化后1-Pi变得更小,αi为平衡因子,-log(Pi)为交叉熵函数。
本发明相比现有技术优点在于:
本发明利用深度学习方法的强大能力及优势,实现基于改进Faster-RCNN的鱼类目标检测方法,对每张图像上的不同鱼类目标标注类别、具体位置及置信度,从而建立一个基于Faster-RCNN的海洋鱼类图像检测系统,以实现复杂海洋环境下不同海洋鱼类的快速有效识别。
本发明基于特征融合的FL-BCNN鱼类细粒度图像识别算法,解决特征不明显的问题,通过融合不同卷积层的特征,提高细粒度特征的表达能力,并且利用焦点损失函数解决样本数据不平衡的问题,提高水下鱼类图像的识别能力。
附图说明
图1为本发明的处理流程图;
图2为本发明的图像增强对比图;
图3为本发明的检验数据集样本示例图;
图4为本发明的F4k数据集样本示例图;
图5为本发明的融合FPN的鱼类候选区域的深度全卷积网络图;
图6为本发明的遮挡未识别鱼类的识别结果示意图;
图7为本发明的背景相似未识别鱼类的识别结果示意图;
图8为本发明的特征融合的FL-BCNN鱼类识别模型网络结构图;
图9为本发明的特征融合过程示意图;
图10为本发明的conv5_3的可视化结果示意图;
图11为本发明的模型的识别结果示意图;
图12为本发明的在数据F4k上得到的混淆矩阵示意图。
具体实施方式
下面结合附图和具体实施方式对本发明进一步说明。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域所属的技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。其中并未详细描述的细节技术均采用常规技术手段即可实现。
如图1至图12所示,一种基于深度学习的鱼类细粒度图像识别方法,具体处理步骤如下:
1)图像预处理步骤:选取公开的海洋鱼类视频数据集,并从中选取一定数量的含鱼类的静态图像,且含鱼类的静态图像中只包含单个物种;对含鱼类的静态图像通过图像增强方法进行处理,得到预处理图像。
海洋鱼类视频数据集采用F4k数据集,其是由Fish for knowledge项目组制作的一个公开数据集,该数据集建立的样本均从真实海洋环境中采集,以台湾南湾、蓝屿等观测台收集的鱼类视频作为研究对象。
对此次视频集中的数据,按1帧/s的间隔从视频中提取出2000幅静态图像,为了避免海底环境的复杂性和鱼类游动的不确定性而导致的图像中没有目标鱼类出现的样本情况,并且为了使训练样本图像多样化,加强模型的稳定性,可以采用人工对静态图像进行筛选,同时采用水平翻转、旋转平移等数据增强的手段扩充数据集建立一个3000张图像的样本集。
为了使采取的样本数据集训练的效果更好,图像增强方法处理含鱼类的静态图像,对采集到的样本数据集做基于暗通道的加强处理,提高颜色通道的低值部分。因为水下拍摄容易发生模糊现象,其是由水中的杂质对光的散射造成的,使得某一些像素总会有至少一个颜色通道具有很低的值。换言之,该区域光强度的最小值是个很小的数。因此需要对其进行处理提升相应的像素值。
任意的输入图像J,暗通道定义公式如下:
其中,Jc表示彩色图像中的每个通道,Ω(x)表示以像素x为中心的一个窗口y,r、g、b表示图像的三个颜色通道。
提高图像颜色通道的低值部分的公式如下:
其中,I(x)就是已有的含鱼类的静态图像,J(x)是提升颜色通道低值部分后的图像,A是从含鱼类的静态图像的暗通道图中,取前0.1%的像素位置,在原始有雾图像I中寻找对应的具有最高亮度的点的值,t(x)为透射率,t0为常数,其中ω为常数。
此步骤完成后,采用LabelImg按照PASCAL VOC2007的格式,进行手工标注图片中的不同鱼类,获得每幅样本图像的标签矩阵。将全部图像样本分成训练集、验证集和测试集。其中训练集2100张图片,验证集600张,测试集300张,这几个集合中的图片互不重叠。数据集样本如图3所示,其中每行包含单个物种的图像,每行中的前两幅图像来自训练集的样本,接下来的两幅图像来自验证集的样本,最后一幅图像是测试集的样本。
从而对F4k图像数据集进行相同操作,并进行数据扩充。F4k图像数据集中共包含23种鱼类,共27370张图像。其中数量最多的一类包含12112张图像,数量最少的一类只有16张图像。由于该数据集是从实况视频中截取的鱼类画面,因此有大量重复的图像。采用人工的方式将大多数重复的图像筛选出去,同时采用水平翻转、旋转平移等数据增强的手段扩充数据集,最终选取15类鱼类,9345张图片按照7:3的比例划分为训练集和验证集进行鱼类识别模型的训练。其中最多的一类图片数量为1000张,最少的一类为145张。数据集示例如图4所示。
2)图像检测步骤:通过融合候选区域的深度全卷积网络RPN的快速区域卷积神经网络Faster R-CNN对步骤1)处理后的图像进行检测,构建海洋鱼类图像识别的模型。其主要由以下四个部分组成:鱼类候选区域生成、鱼类特征提取、鱼类分类和边框回归。模型构建中通过卷积神经网络中的卷积层和池化层来产生特征图。由于鱼类数量中会存在数据量较小的鱼类,因此Faster R-CNN中原有的VGG16网络容易造成数据失衡,本方案用残差网络ResNet101来作为基础特征网络提取图像特征。ResNet101通过引入残差块来解决由于网络结构过深而出现的梯度消失或梯度爆炸的问题,确保数据不失衡。
生成的所有特征图feature map上通过候选区域生成网络RPN(region proposalnetworks)和特征金字塔网络FPN(feature pyramid networks)生成前景目标候选区域ROI(region of interest)和候选区域得分,得分最高的区域作为最终的鱼类候选区域。
海洋鱼类图像识别的模型具体包括如下步骤:
2.1)将对应得处理后的图像数据由ResNet101特征提取网络进行处理,得到特征图。
2.2)得到的特征图feature map经过两条线路,一条线路经过特征金字塔网络FPN,融合不同层的特征,然后经过目标候选区域网络RPN,得到若干个前景目标候选区域ROI,并将其送入ROI Pooling层。另一条线路原封不动直接将特征图送入ROI Pooling层。
即具体的,目标候选区域网络RPN采用特征金字塔网络FPN融合不同层的特征生成目标候选框。
特征金字塔网络FPN把特征图feature map设计成多尺度的金字塔结构,每一层对应使用单一尺度的anchor,ResNet101中卷积层的C2、C3、C4、C5对应的每一层金字塔{P2、P3、P4、P5},且其分别对应的anchor尺度为{32×32,64×64,128×128,256×256},并且为了目标候选区域网络RPN进行下采样操作的P6层的anchor尺度为512×512;其中使用三种比例(1:2,1:1,2:1)共15种类型的anchor对鱼类图像中的目标对象和背景进行检测,生成目标候选框。具体处理如下:
首先将卷积层C5降到256,经过3×3卷积处理输出P5;再将卷积层C5经过上采样后经过1×1降维处理再与卷积层C4相加,经过3×3卷积处理输出P4;P3、P2以此类推;接着P6则是从P5极大池化后直接得到;最后将得到的P2-P6输入RPN网络中。
ROI Pooling层由目标候选区域网络RPN产生的候选框映射到特征图feature map上得到的;ROI Pooling就是针对ROIs的一种Pooling层,是将ROI调整到固定尺寸,其输出包括经过FPN网络得到的鱼类图像的特征图,和经过目标候选区域网络RPN直接得到的ROI;其中ROI Pooling的输出就是batch个大小固定且一致的矩形框,batch就是ROIs的个数;对ROI Pooling输出的每个矩形框进行max pooling操作,形成最后的ROI Pooling层输出结果。
2.3)将经过ROI Pooling层的特征向量输入到两个输出层:一个是分类层,判断目标是否是某类鱼类;另一个是回归层,对ROI边框位置和大小进行微调,从而最终得到图像中鱼类的检测结果。
将本方案模型与其他现有检测模型进行对比,对比模型采用未融合FPN得FasterR-CNN、SSD进行模型训练,这两个模型同样使用ImageNet数据集的初始化网络参数,最后使用评价指标MAP、R、F值对比测试效果。
P(Precision)和R(Recall)的核心是实际真实对象和预测对象之间的相似性度量,F值是P和R加权调和平均,可用公式表示为:
表1给出了SSD、Faster R-CNN以及本文中的网络模型在同样本数据集下的检测结果。
表1
由表1的数据可以发现,本文中的网络模型结构相对于Faster R-CNN和SSD来说,平均准确率(AP)之差分别为10%和18%,从以上数据中可以看出本文中融合了FPN的Faster R-CNN性能优于Faster R-CNN和SSD。SSD的速度虽然较Faster R-CNN速度稍快,但准确率有明显的差异,尤其是对小目标的检测能力较弱,而本文在Faster R-CNN中融合了FPN网络,有效地提升了网络的检测能力。
3)图像识别步骤:通过特征融合的FL-BCNN鱼类识别模型,识别模型中的特征提取网络提取到的不同卷积层的特征进行融合,增强特征提取网络之间的空间联系,提高鱼类特征的表达能力。特征融合的FL-BCNN鱼类识别模型对不同卷积层特征进行融合,增强特征提取网络之间的空间联系,提高特征表达能力。此外,该模型采用焦点损失(Focal loss)函数,使其聚焦于难训练的样本,对于简单的,容易分类的样本,给予的损失权重较低,这样可以解决数据样本不平衡的问题,从而提高模型的准确度。
其中,基于特征融合的FL-BCNN网络包括特征提取过程的Stream A和Stream B,且Stream A和Stream B分别使用VGG-16作为特征提取网络,通过13个卷积层和4个池化层执行位置检测和特征提取。其中13个卷积层均使用3×3尺寸的卷积核,相同的卷积核尺寸使得前一层卷积核的张量与后一层的卷积核张量保持相同的宽和高,4个池化层均使用2×2的池化核进行池化。
Stream B采用的VGG-16的最后一层卷积的输出与前面conv4卷积块的输出、conv5_1的输出做外积,达到融合不同层次的特征的目的。具体步骤如下:
即先将conv4和conv5_1的输出分别与最后一层的输出进行外积相乘,得到B2和B3;再将B2、B3与两个特征提取网络外积相乘得到的B1进行相加融合得到Bilinearvector;接着对Bilinear vector依顺序执行有符号平方根正则化操作BV是指B1、B2和B3集合。最后对正则化操作获得的向量执行L2归一化,并将其发送到全连接的层。在具体本方案中,如图9所示,将conv5_3输出的三维向量分别与其他卷积层上的输出做外积。由于不同卷积层上输出的特征大小并不一致,因此经过通道位置变换(Transpose)和重新调整大小(Reshape)进行尺寸的调节,并最终连接(Contact)在一起得到特征融合后的向量。
Stream B中采用焦点损失函数来判断模型的优劣,标准的采用交叉熵损失函数(cross entropy),该损失函数使用经过归一化指数函数softmax激活后的概率分布作为输入,刻画预测分类和真实结果之间的相似度。softmax的公式如下:
其中Pi是经过softmax得到的预测结果,yi代表真实值。交叉熵损失函数刻画的是实际输出的概率与期望输出的概率的距离,即交叉熵的值越小,两个概率分布就越接近。Cross entropy损失函数适用于图像多分类的场景,在图像多分类任务中取得很好的效果。
但是,在鱼类样本数据集的类别比例不均衡时,如果采用标准的交叉熵损失函数,在训练过程中极易出现过拟合现象,影响模型的准确率和收敛速度。因此焦点损失函数本方案采用在基于二值分类的交叉熵中引入Focal loss函数,来降低容易分类的样本的权重;其中,Focal loss的函数为如下公式:
FL(Pi)=-αi(1-Pi)γlog(Pi)公式(3)
Pi为经过softmax的输出的模型估计概率,Pi越大代表越容易分类,γ是一个指数,经过指数化后1-Pi变得更小,αi为平衡因子,-log(Pi)为交叉熵函数。这样越简单的越容易分类的样本,FL(Pi)的值就越小,那么loss的权重就越小,就可以使模型更好的聚焦于难训练的样本进行训练。
根据公式(3)可以得到Focal Loss的反向传播公式为:
具体在本FL-BCNN鱼类识别模型中,对超参数γ的选取如下。当γ=0时,FL函数等于标准的交叉熵函数,即FL函数无意义;当γ=5时,简单易分的样本权重过小,对简单样本的学习产生影响,不利于模型的学习。因此,在[0,5]之间折中γ=2,并通过实验验证了当γ=2时,对容易分类的样本进行指数化最适合本实验中的鱼类识别模型。
使用本方案提出的FL-BCNN模型对F4k数据集中选取的15类鱼类,9345张图片进行训练。其中,batch size为32,学习率使用0.01,动量因子为0.9,迭代次数最大为5000次,当损失达到收敛后,在验证集上验证最终的模型性能。本实验用准确率(accuracy)和混淆矩阵(Confusion Matrix)作为评价指标。最终通过测试集的验证,得出模型的准确率为97.68%。图10是特征提取的conv5_3卷积层激活图的可视化结果,可以看出本模型在conv5_3学习到的特征已经具有很强的辨识性。例如背景部分完全没有激活度,而在鱼尾或是鱼鳍等比较关键的、细节性的位置则激活度较强,因此本模型可以有效地对关键特征进行识别。
如图11所示是实验中四种鱼的最终的识别结果,由图片和图片上方预测的鱼类名称组成。可以看出本模型对水下鱼类的识别效果表现较好,可以快速准确地识别出某种鱼类。本模型对15种鱼类在验证集上的识别准确率如图12所示。图中横坐标为预测值,纵坐标为真实值,根据在数据集上得到的混淆矩阵可以看到对于不同种类的分类效果,对角线上的单元格颜色越深说明准确率越高,识别效果越好。从图中可以看到除了编号为2的Chromis chrysura类外,其他类别的准确率都较高。在给出的数据集样本示例中可以发现,2号Chromischrysura类与5号Acanthurus nigrofuscus类相似度极高,并且几乎没有纹理特征,因此,Chromis chrysura类有时会被错分为Acanthurus nigrofuscus类。
本方案选取了基于分类回归树的方法CART,基于使用拒绝选项的强制平衡优化树的方法BEDTR,卷积神经网络VGG-16,双线性卷积神经网络B-CNN以及基于特征融合的FL-BCNN模型在数据集F4K(15)上进行对比实验。实验结果如表2所示。
Model | layers | Accuracy(%) |
CART<sup>[14]</sup> | - | 87 |
BEDTR<sup>[4]</sup> | - | 97.5 |
VGG-16 | 16 | 91.72 |
BCNN | 16 | 92.97 |
FL-BCNN | 16 | 97.68 |
表2
从表2可以看出,在相同的数据集上,本方案所提出的FL-BCNN方法取得了最好的性能,与其他算法相比分别高出10.68%,0.18%,5.96%,4.71%。同时从表中结果来看,B-CNN方法优于VGG-16,说明相比于传统的深度学习的卷积神经网络,B-CNN更适应于细粒度图像识别。本方案所提出的FL-BCNN方法要优于VGG-16和B-CNN,使得识别的准确率和模型的收敛速度进一步提升,说明利用特征融合和Focal loss解决细粒度特征不明显和样本数据类别不均衡的问题有助于提升模型的识别准确率。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明保护范围内。
Claims (4)
1.一种基于深度学习的鱼类细粒度图像识别方法,其特征在于,具体处理步骤如下:
1)图像预处理处理步骤:选取公开的海洋鱼类视频数据集,并从中选取一定数量的含鱼类的静态图像;对含鱼类的静态图像通过图像增强方法进行处理,得到预处理图像;
2)图像检测步骤:通过融合候选区域的深度全卷积网络RPN的快速区域卷积神经网络Faster R-CNN对步骤1)处理后的图像进行检测,构建海洋鱼类图像识别的模型;模型构建中通过卷积神经网络中的卷积层和池化层来产生特征图;
3)图像识别步骤:通过特征融合的FL-BCNN鱼类识别模型,对识别模型中特征网络提取到的不同卷积层的特征进行特征融合,增强特征提取网络之间的空间联系,提高鱼类特征的表达能力;
其中,基于特征融合的FL-BCNN网络包括特征提取过程的Stream A和Stream B,且Stream A和Stream B分别使用VGG-16作为特征提取网络,通过13个卷积层和4个池化层执行位置检测和特征提取;其中13个卷积层均使用3×3尺寸的卷积核,相同的卷积核尺寸使得前一层卷积核的张量与后一层的卷积核张量保持相同的宽和高,4个池化层均使用2×2的池化核进行池化。
3.根据权利要求1所述的一种基于深度学习的鱼类细粒度图像识别方法,其特征在于:步骤2)中的海洋鱼类图像识别的模型具体包括如下步骤:
2.1)将对应得处理后的图像数据由ResNet101特征提取网络进行处理,得到特征图;
2.2)得到的特征图经过两条线路,一条线路经过特征金字塔网络FPN,融合不同层的特征,然后经过目标候选区域网络RPN,得到若干个前景目标候选区域ROI,并将其送入ROIPooling层;另一条线路原封不动直接将特征图送入ROI Pooling层;
2.3)将经过ROI Pooling层的特征向量输入到两个输出层:一个是分类层,判断目标是否是某类鱼类;另一个是回归层,对ROI边框位置和大小进行微调,从而最终得到图像中鱼类的检测结果。
4.根据权利要求3所述的一种基于深度学习的鱼类细粒度图像识别方法,其特征在于:步骤2.2)中的目标候选区域网络RPN采用特征金字塔网络FPN融合不同层的特征生成目标候选框;
特征金字塔网络FPN把特征图feature map设计成多尺度的金字塔结构,每一层对应使用单一尺度的anchor,ResNet101中卷积层的C2、C3、C4、C5对应的每一层金字塔{P2、P3、P4、P5},且其分别对应的anchor尺度为{32×32,64×64,128×128,256×256},并且为了目标候选区域网络RPN进行下采样操作的P6层的anchor尺度为512×512;其中使用三种比例(1:2,1:1,2:1)共15种类型的anchor对鱼类图像中的目标对象和背景进行检测,生成目标候选框;
具体处理如下:
首先将卷积层C5降到256,经过3×3卷积处理输出P5;再将卷积层C5经过上采样后经过1×1降维处理再与卷积层C4相加,经过3×3卷积处理输出P4;P3、P2以此类推;接着P6则是从P5极大池化后直接得到;最后将得到的P2-P6输入RPN网络中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110211206.9A CN112926652B (zh) | 2021-02-25 | 2021-02-25 | 一种基于深度学习的鱼类细粒度图像识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110211206.9A CN112926652B (zh) | 2021-02-25 | 2021-02-25 | 一种基于深度学习的鱼类细粒度图像识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112926652A true CN112926652A (zh) | 2021-06-08 |
CN112926652B CN112926652B (zh) | 2023-10-24 |
Family
ID=76171800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110211206.9A Active CN112926652B (zh) | 2021-02-25 | 2021-02-25 | 一种基于深度学习的鱼类细粒度图像识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112926652B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113420759A (zh) * | 2021-06-11 | 2021-09-21 | 中国船舶重工集团公司七五0试验场 | 一种基于深度学习的抗遮挡与多尺度死鱼识别系统与方法 |
CN114782875A (zh) * | 2022-05-18 | 2022-07-22 | 电子科技大学 | 一种基于鱼道构建的鱼类细粒度信息获取方法 |
CN115471871A (zh) * | 2022-09-22 | 2022-12-13 | 四川农业大学 | 一种基于目标检测和分类网络的麻鸭性别分类识别方法 |
CN116630680A (zh) * | 2023-04-06 | 2023-08-22 | 南方医科大学南方医院 | 一种x线摄影联合超声的双模态影像分类方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815973A (zh) * | 2018-12-07 | 2019-05-28 | 天津大学 | 一种适用于鱼类细粒度识别的深度学习方法 |
CN110084285A (zh) * | 2019-04-08 | 2019-08-02 | 安徽艾睿思智能科技有限公司 | 基于深度学习的鱼类细粒度分类方法 |
WO2020181685A1 (zh) * | 2019-03-12 | 2020-09-17 | 南京邮电大学 | 一种基于深度学习的车载视频目标检测方法 |
CN111814881A (zh) * | 2020-07-10 | 2020-10-23 | 江南大学 | 一种基于深度学习的海洋鱼类图像识别方法 |
CN111968054A (zh) * | 2020-08-14 | 2020-11-20 | 中国海洋大学 | 基于潜在低秩表示和图像融合的水下图像颜色增强方法 |
-
2021
- 2021-02-25 CN CN202110211206.9A patent/CN112926652B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815973A (zh) * | 2018-12-07 | 2019-05-28 | 天津大学 | 一种适用于鱼类细粒度识别的深度学习方法 |
WO2020181685A1 (zh) * | 2019-03-12 | 2020-09-17 | 南京邮电大学 | 一种基于深度学习的车载视频目标检测方法 |
CN110084285A (zh) * | 2019-04-08 | 2019-08-02 | 安徽艾睿思智能科技有限公司 | 基于深度学习的鱼类细粒度分类方法 |
CN111814881A (zh) * | 2020-07-10 | 2020-10-23 | 江南大学 | 一种基于深度学习的海洋鱼类图像识别方法 |
CN111968054A (zh) * | 2020-08-14 | 2020-11-20 | 中国海洋大学 | 基于潜在低秩表示和图像融合的水下图像颜色增强方法 |
Non-Patent Citations (8)
Title |
---|
周洋等: "《一种面向细粒度图像分类的特征融合方法》", 《中国科技论文在线》 * |
周洋等: "《一种面向细粒度图像分类的特征融合方法》", 《中国科技论文在线》, 13 March 2020 (2020-03-13), pages 2 - 3 * |
朱玉刚: ""融合深度学习的无人驾驶多目标检测算法"", 《软件导刊》 * |
朱玉刚: ""融合深度学习的无人驾驶多目标检测算法"", 《软件导刊》, vol. 18, no. 9, 30 September 2019 (2019-09-30), pages 44 * |
浙江省统计局: "《数字的魅力 基于统计视野的浙江经济社会发展研究》", 31 July 2019, pages: 248 * |
自然资源部农业地质量与监控重点实验室: "《中国农用地质量发展研究报告 2019版》", 30 April 2020, pages: 218 * |
萌面女XIA: "《FPN最新的目标检测算法》", 《HTTPS://BLOG.CSDN.NET/DCXHUN3/ARTICLE/DETAILS/59055974》 * |
萌面女XIA: "《FPN最新的目标检测算法》", 《HTTPS://BLOG.CSDN.NET/DCXHUN3/ARTICLE/DETAILS/59055974》, 1 March 2017 (2017-03-01), pages 1 - 10 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113420759A (zh) * | 2021-06-11 | 2021-09-21 | 中国船舶重工集团公司七五0试验场 | 一种基于深度学习的抗遮挡与多尺度死鱼识别系统与方法 |
CN113420759B (zh) * | 2021-06-11 | 2023-04-18 | 中国船舶重工集团公司七五0试验场 | 一种基于深度学习的抗遮挡与多尺度死鱼识别系统与方法 |
CN114782875A (zh) * | 2022-05-18 | 2022-07-22 | 电子科技大学 | 一种基于鱼道构建的鱼类细粒度信息获取方法 |
CN114782875B (zh) * | 2022-05-18 | 2023-04-21 | 电子科技大学 | 一种基于鱼道构建的鱼类细粒度信息获取方法 |
CN115471871A (zh) * | 2022-09-22 | 2022-12-13 | 四川农业大学 | 一种基于目标检测和分类网络的麻鸭性别分类识别方法 |
CN116630680A (zh) * | 2023-04-06 | 2023-08-22 | 南方医科大学南方医院 | 一种x线摄影联合超声的双模态影像分类方法及系统 |
CN116630680B (zh) * | 2023-04-06 | 2024-02-06 | 南方医科大学南方医院 | 一种x线摄影联合超声的双模态影像分类方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112926652B (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110443143B (zh) | 多分支卷积神经网络融合的遥感图像场景分类方法 | |
CN111259930B (zh) | 自适应注意力指导机制的一般性目标检测方法 | |
CN110348319B (zh) | 一种基于人脸深度信息和边缘图像融合的人脸防伪方法 | |
CN112926652B (zh) | 一种基于深度学习的鱼类细粒度图像识别方法 | |
CN110781897B (zh) | 一种基于深度学习的语义边缘检测方法 | |
KR20180065889A (ko) | 타겟의 검측 방법 및 장치 | |
CN103544504B (zh) | 一种基于多尺度图匹配核的场景字符识别方法 | |
CN109903339B (zh) | 一种基于多维融合特征的视频群体人物定位检测方法 | |
CN114663346A (zh) | 一种基于改进YOLOv5网络的带钢表面缺陷检测方法 | |
CN112819821B (zh) | 一种细胞核图像检测方法 | |
CN110008899B (zh) | 一种可见光遥感图像候选目标提取与分类方法 | |
CN109242826B (zh) | 基于目标检测的移动设备端签状物根数计数方法及系统 | |
CN111680705A (zh) | 适于目标检测的mb-ssd方法和mb-ssd特征提取网络 | |
CN116452966A (zh) | 一种水下图像的目标检测方法、装置、设备及存储介质 | |
WO2020119624A1 (zh) | 一种基于深度学习的类别敏感型边缘检测方法 | |
TWI696958B (zh) | 影像適應性特徵提取法及其應用 | |
CN110826629A (zh) | 一种基于细粒度分类的耳镜图像辅助诊断方法 | |
CN114863198A (zh) | 一种基于神经网络的小龙虾质量分级方法 | |
CN112991281B (zh) | 视觉检测方法、系统、电子设备及介质 | |
CN114299383A (zh) | 基于密度图与注意力机制融合的遥感图像目标检测方法 | |
CN111582057B (zh) | 一种基于局部感受野的人脸验证方法 | |
CN111797795A (zh) | 一种基于YOLOv3与SSR的行人检测算法 | |
CN115187982B (zh) | 藻类检测方法、装置及终端设备 | |
CN116543308A (zh) | 一种基于多模型融合的滑坡检测预警模型及预警方法 | |
CN111046861B (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 |