CN114187183A - 一种细粒度昆虫图像分类方法 - Google Patents

一种细粒度昆虫图像分类方法 Download PDF

Info

Publication number
CN114187183A
CN114187183A CN202111395529.4A CN202111395529A CN114187183A CN 114187183 A CN114187183 A CN 114187183A CN 202111395529 A CN202111395529 A CN 202111395529A CN 114187183 A CN114187183 A CN 114187183A
Authority
CN
China
Prior art keywords
picture
factor
insect
value
pictures
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.)
Pending
Application number
CN202111395529.4A
Other languages
English (en)
Inventor
徐杰
方伟政
李非非
苏光辉
余飞
杨帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Xingyinian Intelligent Technology Co ltd
Original Assignee
Chengdu Xingyinian Intelligent Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Xingyinian Intelligent Technology Co ltd filed Critical Chengdu Xingyinian Intelligent Technology Co ltd
Priority to CN202111395529.4A priority Critical patent/CN114187183A/zh
Publication of CN114187183A publication Critical patent/CN114187183A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种细粒度昆虫图像分类方法,采集不同种类昆虫的不同形态的细粒度图片,经过人工筛选方式删除重复、模糊、过曝的低质量图片,使剩余的图片满足类内差异大、类间差异小的特点,然后建立图片标签并增强处理;搭建用于昆虫分类的神经网络模型并训练,最后通过训练完成的神经网络模型对待检测的细粒度昆虫图片进行分类检测,从而直接输出图片中昆虫属于类别。

Description

一种细粒度昆虫图像分类方法
技术领域
本发明属于计算机领域的图像分类技术领域,更为具体地讲,涉及一种细粒度昆虫图像分类方法。
背景技术
细粒度图像分类是计算机领域非常重要的问题,可以应用在许多专业的有价值的应用场景上。在昆虫识别领域上虽然已有大量的深度学习应用,但并没有较好的应用细粒度图像分类算法的研究。
细粒度图像分类是一个比传统图像分类更困难且在专业场景中更具应用价值的计算机视觉任务,而基于深度学习的昆虫图像分类在农业林业的虫害防治上具有重大的意义。将细粒度图像分类技术应用在昆虫图像识别上,能将难以划分的昆虫种类区分开来,进一步提升昆虫分类的准确率,从而提高昆虫图像识别在实际生产过程中的实用性与可靠性。然而,目前针对昆虫图像识别领域的细粒度图像分类算法的研究仍就不够充分与深入。
细粒度图像分类算法的几种主要思路为,基于通用图像分类网络的微调方法,基于强监督或弱监督注意力机制的定位与识别结合的方法,基于高阶特征融合的双线性池化方法,基于度量学习的方法,与基于transformer的方法。
其中,不论是基于强监督目标检测定位的Part-RCNN方法,还是基于弱监督注意力机制定位的RA--CNN方法,主要都是通过如何定位判别性区域,以致力于解决类间差异小,类内差异大的问题。即使是基于度量学习技术的方法,看起来与判别性区域定位无关,本质上也是通过收束类内距离与扩大类间距离来抑制无关特征与寻找关键的判别特征。
在生物分类学中,物种的归类是以级别为基础的***层次结构,使用一个固定数量的层次,即界、门、纲、目、科、属、种,随着分类层级逐渐往下,生物图像在视觉上就会越来越相似,其分类难度逐渐会达到在计算机视觉领域中所谓“细粒度分类”的要求。在人类常识里认知的昆虫,一般是属于昆虫纲下的生物。对于性状差异巨大的昆虫,一般按“目”进行划分,随着分类层级往下,不同昆虫类别之间会越来越相似。昆虫专家对采集到的昆虫图像进行标注的过程中,根据其丰富的经验知识与对昆虫图谱的对比,或许能够鉴定出某个昆虫样本在“属”或“种”级别下的具体标签。然而,由于昆虫是日常生活中能接触的生物中最为丰富多彩的动物类别,其种类繁多,形态千奇百怪,即使是经验丰富的昆虫学专家,也有无法对某个具体的昆虫样本做到其“属”和“种”一级的鉴定,而只能做到对“目”、“亚目”、“科”一级的鉴定。
其次,昆虫分类算法在实际应用时,主要用于对农业害虫的识别。而在一些情况下,判断某昆虫是否为害虫的与对应的防治策略所需要的类别信息并不需要精细到“种”这一级别,因为同一“科”或“属”下的昆虫往往拥有相似形态外表与性状。那么在这类应用场景中,一个好的算法应该满足这样的要求:即使不能得到正确的细粒度分类结果,算法也应该将错误结果限制在正确的上级类别之内。最后,现有的细粒度图像分类问题这些方法用到的监督信息都是最细粒度级别的类别标签。然而,在昆虫细粒度分类领域,高级标签的标注是不需要很大额外成本的,其获取难度一定远弱于强监督方法中的边界框信息。因此,将高级类别信息加入到监督学习中,应当能有效的提升细粒度分类任务的性能。
发明内容
本发明的目的在于克服现有技术的不足,提供一种细粒度昆虫图像分类方法,基于改进的弱监督细粒度分类模型与度量学习的层次多标签约束优化细粒度分类架构,实现昆虫图像准确分类。
为实现上述发明目的,本发明一种细粒度昆虫图像分类方法,其特征在于,包括以下步骤:
(1)、图像采集及预处理;
采集不同种类昆虫的不同形态的细粒度图片,经过人工筛选方式删除重复、模糊、过曝的低质量图片,使剩余的图片满足类内差异大、类间差异小的特点;
(2)、建立图片标签;
将每一张图片打上三层的类别标签,记为(y1,y2,y3),三层类别标签之间存在树状的映射关系;其中,第一层类别标签y1表示昆虫的“目”,第二层类别标签y2表示同一目下视觉特征相近的昆虫类别,第三层类别标签y3表示昆虫的细粒度类别;
(3)、图片增强处理;
(3.1)、图片缩放:将每一张图片的长宽经双线性插值方法采样至固定像素大小;
(3.2)、图片随机旋转:设置旋转因子factor;在[-factor,factor]内随机采样一个值作为图片的旋转角度并控制图片旋转,其中,当旋转角度不为90°或180°时,利用黑色对旋转操作时留下的无像素区域进行填充;
(3.3)、图片随机水平或竖直翻转:设置概率因子p;在[0,1]内随机产生一个概率值,如果概率值小于p,则对图片进行随机水平或竖直翻转操作,否则,图片不翻转;
(3.4)、图片随机裁剪:先将图片放大至原始图片的1.25倍,然后在放大后的图片中随机裁剪一个大小为网络输入尺寸的区域;
(3.5)、图片的颜色抖动处理;
(3.5.1)、设置抖动因子Factor;
(3.5.2)、增强图片的亮度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为亮度的缩放因子,再将原始图片的亮度值bright乘以缩放因子s,得到增强后的亮度值
Figure BDA0003369846580000031
Figure BDA0003369846580000032
(3.5.3)、增强图片的对比度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为对比度的缩放因子,再将原始图片的对比度contrast乘以缩放因子s,得到增强后的对比度值
Figure BDA0003369846580000033
Figure BDA0003369846580000034
(3.5.4)、增强图片的饱和度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为饱和度的缩放因子,再将原始图片的饱和度saturation乘以缩放因子s,得到增强后的饱和度值
Figure BDA0003369846580000035
Figure BDA0003369846580000036
(3.5.5)、通过标签控制增强图片的色相:初始化一个类别集合s,当一类图片中含有通过拍摄标本采集的图片时,将该类别加入集合中。对图片进行色相增强前,判断该图片所属类别是否属于集合s,若属于,则对图像做色相增强,若不属于,则不做增强。色相增强操作为:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为色相的偏移因子。对图片做色相增强前,再将原始图片的色相值hue按照偏移因子s在色相环上进行偏移操作,得到增强后的色相值
Figure BDA00033698465800000413
Figure BDA0003369846580000041
(4)、设置训练数据集,将增强后的图片及对应的标签设为训练数据集;
(5)、搭建用于昆虫分类的神经网络模型;
以现有的resnet50网络为基础模型,Resnet50整个特征提取部分被划分为5个stage,在stage3、stage4、stage5后各自添加一个通道注意力机制模块,通道注意力机制模块工作原理如下:每一个stage的输出特征I是一个c×w×h的三维矩阵,矩阵中的每个元素记为Ii,j,k,其中,i∈[1,c],j∈[1,w],k∈[1,h],c为通道数,w、h为宽和高;
通道注意力机制模块为输出特征I增加长度为c的注意力权重W,得到通道注意力机制的输出特征
Figure BDA0003369846580000042
其各个元素的值记为
Figure BDA0003369846580000043
其中,wi为权重系数;
在经过stage5以及通道注意力机制模块之后,加入改进后的双线性池化层,具体工作原理如下:将输出特征
Figure BDA0003369846580000044
展开为长度为c×(w×h)的二维向量,记为
Figure BDA0003369846580000045
然后对
Figure BDA0003369846580000046
进行双线性融合,得到最终的输出特征
Figure BDA0003369846580000047
最后再将输出特征
Figure BDA0003369846580000048
展开为长度为c×c的一维向量,记为
Figure BDA0003369846580000049
(6)、训练神经网络模型;
将增强后的图片及对应的标签输入至神经网络模型,神经网络模型预测出输入图片中对应昆虫的类别
Figure BDA00033698465800000410
(6.1)、在训练数据集中,从随机挑选b张图片及对应的标签作为本轮训练的输入,并输入至训练神经网络模型;
(6.2)、通过神经网络模型提取出b张图片的输出特征
Figure BDA00033698465800000411
i=1,2,…,b,其中,每张图片的输出特征是一个长度为c×c的一维向量;
(6.3)、将每张图片的输出特征
Figure BDA00033698465800000412
通过全连接层进行降维处理,得到各个图片的分类判别结果pi,其中,分类判别结果pi是一个一维矩阵,长度为训练数据集中昆虫种类个数M,分类判别结果中每一项为网络判定为对应种类昆虫的概率,最后将概率最大者作为预测结果,记为
Figure BDA0003369846580000051
并根据
Figure BDA0003369846580000052
得到对应的
Figure BDA0003369846580000053
(6.4)、计算本轮训练完成后的损失函数值L;
Figure BDA0003369846580000054
其中,β1为超参数,通过几组对比实验取值为0.5,
Figure BDA0003369846580000055
为输出特征中第三级标签对应的损失函数值,
Figure BDA0003369846580000056
为输出特征中第二级标签对应的损失函数值,LCE为分类判别结果对应的损失函数值;
Figure BDA0003369846580000057
Figure BDA0003369846580000058
Figure BDA0003369846580000059
其中,
Figure BDA00033698465800000510
表示在本次训练的b张输入图片中,当任意两张图片i与j的三级标签相同时
Figure BDA00033698465800000511
为1,否则
Figure BDA00033698465800000512
为0,Δ为预设的阈值;p为输出特征
Figure BDA00033698465800000513
的维度,p∈[1,c×c];
Figure BDA00033698465800000514
其中,λi表示第i张输入图片所属类别的图片个数在本轮b张输入图片中的占比;y为判别系数,当第i张输入图片的真实标签值等于τ时y为1,否则为0;p的值为分类判别结果pi中第τ个元素的值;
(6.5)、本轮训练完成后,通过梯度下降法对本轮损失函数值进行反向传播,从而更新网络参数,然后再返回步骤(6.1)进行下一轮的训练,直至网络收敛,从而得到训练完成的神经网络模型;
(7)、昆虫图片的实时分类;
将待检测的细粒度昆虫图片,经过图片缩放操作缩放至与训练数据相同的尺寸,输入至训练完成的神经网络,从而直接输出图片中昆虫属于类别。
本发明的发明目的是这样实现的:
本发明一种细粒度昆虫图像分类方法,采集不同种类昆虫的不同形态的细粒度图片,经过人工筛选方式删除重复、模糊、过曝的低质量图片,使剩余的图片满足类内差异大、类间差异小的特点,然后建立图片标签并增强处理;搭建用于昆虫分类的神经网络模型并训练,最后通过训练完成的神经网络模型对待检测的细粒度昆虫图片进行分类检测,从而直接输出图片中昆虫属于类别。
同时,本发明一种细粒度昆虫图像分类方法还具有以下有益效果:
(1)、通过使用标签控制的色相增强方法使得网络学习颜色特征又可以做到让部分类别不使用颜色特征进行判别;
(2)、通过在网络的不同阶段嵌入通道注意力模块,使得网络可以提取不同等级的视觉特征,同时通过双线性池化技术,使得不同特征之间进行高阶融合,以生成大量对细粒度图像分类更有效的细粒度特征;
(3)、使用3级标签结合距离度量的损失函数约束分类训练过程,使得网络能够更好的区分细粒度类别的差异,并扩大不相似大类之间的距离,使得网络能将样本的分类错误限制在细粒度类别内。
附图说明
图1是本发明一种细粒度昆虫图像分类方法流程图;
图2是不同种昆虫的不同形态示意图;
图3是昆虫的三层标签之间的映射关系图;
图4是图片随机旋转示意图;
图5是图片随机翻转示意图;
图6是用于昆虫分类的神经网络模型的基本架构图;
图7是本发明改进后的神经网络模型架构图;
图8是三种网络分类的结果评价图;
图9是SE模块的有效性与位置选择实验结果图;
图10是双线性池化的有效性实验结果图;
图11是不同网络结构性能对比图;
图12是引入多标签监督约束的分类性能对比图;
图13是引入度量损失的性能对比图;
图14是距离度量对比的性能对比图;
图15是阈值选择对比的性能对比图;
图16是其他几种距离度量损失的性能对比图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
图1是本发明一种细粒度昆虫图像分类方法流程图。
在本实施例中,如图1所示,本发明一种细粒度昆虫图像分类方法,包括以下步骤:
S1、图像采集及预处理;
在本实施例中,通过实地外景拍摄、标本拍摄、结合爬虫技术在常见的互联网搜索平台与专门的昆虫数据库网站中采集不同种类昆虫的不同形态的细粒度图片;其中,可以通过调整相机位置与角度,以获得包含昆虫不同部位的视觉内容的图片,如图2所示。另外,由于昆虫本身的形态结构会发生变化,如软体的昆虫幼虫不同蜷缩形态,成年昆虫翅膀张开与收束的形态,因此,在实地拍摄过程中,通过特意的延长对昆虫观察的时间,收集到了同类昆虫不同形态的图片。
经过人工筛选,删去了在不同平台中收集到的重复图片以及在实地拍摄过程中由于对同一只昆虫进行连拍而产生的那些图片哈希值不同但内容极为相似的图片。另外,删去那些同样因为拍摄问题而产生的模糊,过曝等不清晰的低质量图片。从而使留下的100种类别的3719张细粒度昆虫图像均满足类内差异大、类间差异小的特点。
S2、建立图片标签;
将每一张图片打上三层的类别标签,记为(y1,y2,y3),其中,第一层类别标签y1表示昆虫的“目”;第二层类别标签y2表示同一目下视觉特征相近的昆虫类别,范围等同于其一层标签“目”下的某一“亚目”、“科”、“亚科”;第三层类别标签y3为“属”、“种”一级的细粒度类别;其中第一层标签有15类,第二层标签有34类,第三层标签有100类。三层类别标签建立后,对于每一张图片样本都对应着一个三元组标签(y1,y2,y3),如图3所示,这三层标签之间存在树状的映射关系。
S3、图片增强处理;
S3.1、图片缩放:将每一张图片的长宽经双线性插值方法采样至固定像素大小;
S3.2、图片随机旋转:设置旋转因子factor;在[-factor,factor]内随机采样一个值作为图片的旋转角度并控制图片旋转,随机旋转示例如图4所示,其中,当旋转角度不为90°或180°时,利用黑色对旋转操作时留下的无像素区域进行填充;
S3.3、图片随机水平或竖直翻转:设置概率因子p;在[0,1]内随机产生一个概率值,如果概率值小于p,则对图片进行随机水平或竖直翻转操作,否则,图片不翻转;其中,随机翻转示例如图5所示,
S3.4、图片随机裁剪:先将图片放大至原始图片的1.25倍,然后在放大后的图片中随机裁剪一个大小为网络输入尺寸的区域;
S3.5、图片的颜色抖动处理;
颜色抖动方法是改变原图像的基本属性,即亮度、对比度、饱和度和色相四个属性;下面我们对颜色抖动处理的具体过程进行描述,具体如下:
S3.5.1、设置抖动因子Factor;
S3.5.2、增强图片的亮度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为亮度的缩放因子,再将原始图片的亮度值bright乘以缩放因子s,得到增强后的亮度值
Figure BDA0003369846580000081
Figure BDA0003369846580000082
S3.5.3、增强图片的对比度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为对比度的缩放因子,再将原始图片的对比度contrast乘以缩放因子s,得到增强后的对比度值
Figure BDA0003369846580000083
Figure BDA0003369846580000091
S3.5.4、增强图片的饱和度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为饱和度的缩放因子,再将原始图片的饱和度saturation乘以缩放因子s,得到增强后的饱和度值
Figure BDA0003369846580000092
Figure BDA0003369846580000093
S3.5.5、通过标签控制增强图片的色相:初始化一个类别集合s,当一类图片中含有通过拍摄标本采集的图片时,将该类别加入集合中。对图片进行色相增强前,判断该图片所属类别是否属于集合s,若属于,则对图像做色相增强,若不属于,则不做增强。色相增强操作为:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为色相的偏移因子。对图片做色相增强前,再将原始图片的色相值hue按照偏移因子s在色相环上进行偏移操作,得到增强后的色相值
Figure BDA0003369846580000094
Figure BDA0003369846580000095
S4、设置训练数据集,将增强后的图片及对应的标签设为训练数据集;
S5、搭建用于昆虫分类的神经网络模型;
在本实施例中,用于昆虫分类的神经网络模型的具体架构如图6所示,其中,f(·)为神经网络分类模型,我们把图6中最后的全连接层和损失函数删去其中L1损失函数是分类函数,即交叉熵损失函数,在本文中修改为在线权重统计的交叉熵损失函数。它接在网络最后输出的的类别概率分布后,类别分布特征维度与类别数量是一致的。而L2损失函数是距离度量损失函数,它接在网络特征提取部分输出的特征后,其维度与网络输出特征一致。距离度量损失函数能够计算两个特征之间的距离,通过该损失函数对网络特征提取的参数进行优化,从而得到图7所示的网络结构,具体为:以现有的resnet50网络为基础模型,Resnet50整个特征提取部分被划分为5个stage,在stage3、stage4、stage5后各自添加一个通道注意力机制模块,通道注意力机制模块工作原理如下:每一个stage的输出特征I是一个c×w×h的三维矩阵,矩阵中的每个元素记为Ii,j,k,其中,i∈[1,c],j∈[1,w],k∈[1,h],c为通道数,w、h为宽和高;
通道注意力机制模块为输出特征I增加长度为c的注意力权重W,得到通道注意力机制的输出特征
Figure BDA0003369846580000096
其各个元素的值记为
Figure BDA0003369846580000097
其中,wi为权重系数;
在经过stage5以及通道注意力机制模块之后,加入改进后的双线性池化层,具体工作原理如下:将输出特征
Figure BDA0003369846580000101
展开为长度为c×(w×h)的二维向量,记为
Figure BDA0003369846580000102
然后对
Figure BDA0003369846580000103
进行双线性融合,得到最终的输出特征
Figure BDA0003369846580000104
最后再将输出特征
Figure BDA0003369846580000105
展开为长度为c×c的一维向量,记为
Figure BDA0003369846580000106
在本实施例中,由于ResNet50最后的特征维度为2048维,经双线性池化后,生成4194304维特征,若再构造全连接层输出100分类,会产生一个400M参数量的全连接层网络,因此,本文使用一个大小为2048乘1乘1乘512的卷积层对最后的特征降维至512维,使最后的全连接层参数量下降16倍。
S6、训练神经网络模型;
将增强后的图片及对应的标签输入至神经网络模型,神经网络模型预测出输入图片中对应昆虫的类别
Figure BDA0003369846580000107
S6.1、在训练数据集中,从随机挑选b=20张图片及对应的标签作为本轮训练的输入,并输入至训练神经网络模型;
S6.2、通过神经网络模型提取出b张图片的输出特征
Figure BDA0003369846580000108
i=1,2,…,b,其中,每张图片的输出特征是一个长度为c×c的一维向量;
S6.3、将每张图片的输出特征
Figure BDA0003369846580000109
通过全连接层进行降维处理,得到各个图片的分类判别结果pi,其中,分类判别结果pi是一个一维矩阵,长度为训练数据集中昆虫种类个数M,分类判别结果中每一项为网络判定为对应种类昆虫的概率,最后将概率最大者作为预测结果,记为
Figure BDA00033698465800001010
并根据
Figure BDA00033698465800001011
得到对应的
Figure BDA00033698465800001012
S6.4、计算本轮训练完成后的损失函数值L;
Figure BDA00033698465800001013
其中,β1为超参数,通过几组对比实验取值为0.5,
Figure BDA00033698465800001014
为输出特征中第三级标签对应的损失函数值,
Figure BDA00033698465800001015
为输出特征中第二级标签对应的损失函数值,LCE为分类判别结果对应的损失函数值;
Figure BDA00033698465800001016
Figure BDA0003369846580000111
Figure BDA0003369846580000112
其中,
Figure BDA0003369846580000113
表示在本次训练的b张输入图片中,当任意两张图片i与j的三级标签相同时
Figure BDA0003369846580000114
为1,否则
Figure BDA0003369846580000115
为0,Δ为预设的阈值;p为输出特征
Figure BDA0003369846580000116
的维度,p∈[1,c×c];
Figure BDA0003369846580000117
其中,λi表示第i张输入图片所属类别的图片个数在本轮b张输入图片中的占比;y为判别系数,当第i张输入图片的真实标签值等于τ时y为1,否则为0;p的值为分类判别结果pi中第τ个元素的值;
S6.5、本轮训练完成后,通过梯度下降法对本轮损失函数值进行反向传播,从而更新网络参数,然后再返回步骤S6.1进行下一轮的训练,直至网络收敛,从而得到训练完成的神经网络模型;
S7、昆虫图片的实时分类;
将待检测的细粒度昆虫图片,经过图片缩放操作缩放至与训练数据相同的尺寸,输入至训练完成的神经网络,从而直接输出图片中昆虫属于类别。
实验
本文进行了大量的对比实验与消融实验,来保证网络中每一个部分的有效性。
网络选择:由图8可见,ResNet50与InceptionV3在本文任务上能达到不错的额性能。我们采用acc和F1这两个值作为评价指标,虽然ResNet50的结果略差于InceptionV3,但相差不大,千分点上的差距是容易被深度学***的。另外,由于ResNet50网络的基础结构更为简单,整个网络的构成逻辑也更为简单,更容易在其基础结构上进行改动。
SE模块的有效性与位置选择实验:由图9可知,在stage3,stage4,stage5加入注意力机制在本实施例的实验条件上效果最好,实验效果表明中高层特征的通道注意力机制确实能在数据量较少的情况下更深刻的影响特征的学习过程,达到更好的分类结果。
双线性池化的有效性实验:如图10所示,引入bilinear pooling方法后结果有明显提升,准确率提升了1.6个百分点,F1分数提升了1个百分点。该方法按原论文解释为该方法能将位置特征与内容特征相结合,因此对细粒度分类有帮助作用。而按本文理解与分析,bilinear pooling操作在分类类别较多时其性能才会体现,当分类类别较少时,类别间的有效区分特征不需要很多,而当分类类别数量增加时,将所有类别完全区分开需要的有效特征数量会以几何倍的速度增加。由于原始的ResNet50网络中最后参与分类的特征仅为2048维,经外积操作后,特征间进行了二阶融合,特征空间增大,更满足了本文昆虫分类这种需要大量特征的任务。
不同网络结构性能对比结构如图11所示,图中最后一列展示的本发明的评价指标明显优于其余网络结构的性能。
将acc2-3用于基础模型进行性能评价:如图12所示,显然,在不引入多标签监督约束框架时,模型对昆虫上级分类的准确率效果较差。
引入度量损失的实验。如图13所示,引入L+hinge3损失分别在两个结构中提升了6个千分点与9个千分点的3级分类准确率性能,但错误样本集合中的2级分类准确率有略微的下降。引入L-hinge2损失分别在两个结构中得到了轻微的3级分类准确率性能提升,但显著提高了错误样本集合中2级分类的准确率,其中ResNet50提高了约30个百分点,ResNet50+SE结构2提高了约20个百分点。当将两个损失函数组合起来后,模型性能在两个评价指标上都得到了显著提升。
距离度量对比实验:如图14所示,对于L-hinge2损失函数来说,使用L1距离能更好的提升acc2-3的性能,对于L+hinge3损失函数来说,使用L1距离能更好的提升acc3性能。另外,由于这两个损失函数都是对网络中同一个位置的特征进行优化,因此采用同样形式的距离度量函数能将特征表达限制在相同的特征空间内,对训练过程来说是更好的。
阈值选择实验:如图15所示,当L-hinge2与L+hinge3的L1距离的阈值Δ取值分别为0.7与0.2时达到最好的效果。
另外,本发明还验证了其他几种距离度量损失的无效性与抑制性。如图16所示,4种损失都能不同程度的抑制3级标签的细粒度分类结果。其中L-hinge3损失对结果无明显影响,L+hinge2将3级细粒度分类抑制了2个百分点,L+hinge1与L-hinge1对实验结果出现了较大的抑制影响。经分析可知,L+hinge2要求2级类内特征聚拢,而2级类分类与常规图像分类是相似的,这会使得网络学习到更多的常规判别特征,而3级标签的细粒度分类要求网络尽可能学习细粒度判别特征,这会使得细粒度分类性能被抑制。另外,1级标签约束对网络性能的巨大抑制主要体现在1级分类需要的特征空间与3级分类并不一致,将这两者结合训练近似于将两个互斥的任务联合学习,网络为了学习到更多的1级分类特征而影响了3级分类的效果。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (1)

1.一种细粒度昆虫图像分类方法,其特征在于,包括以下步骤:
(1)、图像采集及预处理;
采集不同种类昆虫的不同形态的细粒度图片,经过人工筛选方式删除重复、模糊、过曝的低质量图片,使剩余的图片满足类内差异大、类间差异小的特点;
(2)、建立图片标签;
将每一张图片打上三层的类别标签,记为(y1,y2,y3),三层类别标签之间存在树状的映射关系;其中,第一层类别标签y1表示昆虫的“目”,第二层类别标签y2表示同一目下视觉特征相近的昆虫类别,第三层类别标签y3表示昆虫的细粒度类别;
(3)、图片增强处理;
(3.1)、图片缩放:将每一张图片的长宽经双线性插值方法采样至固定像素大小;
(3.2)、图片随机旋转:设置旋转因子factor;在[-factor,factor]内随机采样一个值作为图片的旋转角度并控制图片旋转,其中,当旋转角度不为90°或180°时,利用黑色对旋转操作时留下的无像素区域进行填充;
(3.3)、图片随机水平或竖直翻转:设置概率因子p;在[0,1]内随机产生一个概率值,如果概率值小于p,则对图片进行随机水平或竖直翻转操作,否则,图片不翻转;
(3.4)、图片随机裁剪:先将图片放大至原始图片的1.25倍,然后在放大后的图片中随机裁剪一个大小为网络输入尺寸的区域;
(3.5)、图片的颜色抖动处理;
(3.5.1)、设置抖动因子Factor;
(3.5.2)、增强图片的亮度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为亮度的缩放因子,再将原始图片的亮度值bright乘以缩放因子s,得到增强后的亮度值
Figure FDA0003369846570000011
Figure FDA0003369846570000012
(3.5.3)、增强图片的对比度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为对比度的缩放因子,再将原始图片的对比度contrast乘以缩放因子s,得到增强后的对比度值
Figure FDA0003369846570000021
Figure FDA0003369846570000022
(3.5.4)、增强图片的饱和度:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为饱和度的缩放因子,再将原始图片的饱和度saturation乘以缩放因子s,得到增强后的饱和度值
Figure FDA0003369846570000023
Figure FDA0003369846570000024
(3.5.5)、通过标签控制增强图片的色相:初始化一个类别集合s,当一类图片中含有通过拍摄标本采集的图片时,将该类别加入集合中。对图片进行色相增强前,判断该图片所属类别是否属于集合s,若属于,则对图像做色相增强,若不属于,则不做增强。色相增强操作为:在max(0,1-Factor)~(1+Factor)之间随机产生一个数值s作为色相的偏移因子。对图片做色相增强前,再将原始图片的色相值hue按照偏移因子s在色相环上进行偏移操作,得到增强后的色相值
Figure FDA0003369846570000025
Figure FDA0003369846570000026
(4)、设置训练数据集,将增强后的图片及对应的标签设为训练数据集;
(5)、搭建用于昆虫分类的神经网络模型;
以现有的resnet50网络为基础模型,Resnet50整个特征提取部分被划分为5个stage,在stage3、stage4、stage5后各自添加一个通道注意力机制模块,通道注意力机制模块工作原理如下:每一个stage的输出特征I是一个c×w×h的三维矩阵,矩阵中的每个元素记为Ii,j,k,其中,i∈[1,c],j∈[1,w],k∈[1,h],c为通道数,w、h为宽和高;
通道注意力机制模块为输出特征I增加长度为c的注意力权重W,得到通道注意力机制的输出特征
Figure FDA0003369846570000027
其各个元素的值记为
Figure FDA0003369846570000028
其中,wi为权重系数;
在经过stage5以及通道注意力机制模块之后,加入改进后的双线性池化层,具体工作原理如下:将输出特征
Figure FDA0003369846570000029
展开为长度为c×(w×h)的二维向量,记为
Figure FDA00033698465700000210
然后对
Figure FDA00033698465700000211
进行双线性融合,得到最终的输出特征
Figure FDA00033698465700000212
最后再将输出特征
Figure FDA00033698465700000213
展开为长度为c×c的一维向量,记为
Figure FDA00033698465700000214
(6)、训练神经网络模型;
将增强后的图片及对应的标签输入至神经网络模型,神经网络模型预测出输入图片中对应昆虫的类别
Figure FDA0003369846570000031
(6.1)、在训练数据集中,从随机挑选b张图片及对应的标签作为本轮训练的输入,并输入至训练神经网络模型;
(6.2)、通过神经网络模型提取出b张图片的输出特征
Figure FDA0003369846570000032
其中,每张图片的输出特征是一个长度为c×c的一维向量;
(6.3)、将将每张图片的输出特征
Figure FDA0003369846570000033
通过全连接层进行降维处理,得到各个图片的分类判别结果pi,其中,分类判别结果pi是一个一维矩阵,长度为训练数据集中昆虫种类个数M,分类判别结果中每一项为网络判定为对应种类昆虫的概率,最后将概率最大者作为预测结果,记为
Figure FDA0003369846570000034
并根据
Figure FDA0003369846570000035
得到对应的
Figure FDA0003369846570000036
(6.4)、计算本轮训练完成后的损失函数值L;
Figure FDA00033698465700000317
其中,β1为超参数,通过几组对比实验取值为0.5,
Figure FDA0003369846570000037
为输出特征中第三级标签对应的损失函数值,
Figure FDA0003369846570000038
为输出特征中第二级标签对应的损失函数值,LCE为分类判别结果对应的损失函数值;
Figure FDA0003369846570000039
Figure FDA00033698465700000310
Figure FDA00033698465700000311
其中,
Figure FDA00033698465700000312
表示在本次训练的b张输入图片中,当任意两张图片i与j的三级标签相同时
Figure FDA00033698465700000313
为1,否则
Figure FDA00033698465700000314
为0,Δ为预设的阈值;p为输出特征
Figure FDA00033698465700000315
的维度,p∈[1,c×c];
Figure FDA00033698465700000316
其中,λi表示第i张输入图片所属类别的图片个数在本轮b张输入图片中的占比;y为判别系数,当第i张输入图片的真实标签值等于τ时y为1,否则为0;p的值为分类判别结果pi中第τ个元素的值;
(6.5)、本轮训练完成后,通过梯度下降法对本轮损失函数值进行反向传播,从而更新网络参数,然后再返回步骤(6.1)进行下一轮的训练,直至网络收敛,从而得到训练完成的神经网络模型;
(6)、昆虫图片的实时分类;
将待检测的细粒度昆虫图片,经过图片缩放操作缩放至与训练数据相同的尺寸,输入至训练完成的神经网络,从而直接输出图片中昆虫属于类别。
CN202111395529.4A 2021-11-23 2021-11-23 一种细粒度昆虫图像分类方法 Pending CN114187183A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111395529.4A CN114187183A (zh) 2021-11-23 2021-11-23 一种细粒度昆虫图像分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111395529.4A CN114187183A (zh) 2021-11-23 2021-11-23 一种细粒度昆虫图像分类方法

Publications (1)

Publication Number Publication Date
CN114187183A true CN114187183A (zh) 2022-03-15

Family

ID=80541280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111395529.4A Pending CN114187183A (zh) 2021-11-23 2021-11-23 一种细粒度昆虫图像分类方法

Country Status (1)

Country Link
CN (1) CN114187183A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116453032A (zh) * 2023-06-16 2023-07-18 福建农林大学 一种海洋生态检测***
CN117237814A (zh) * 2023-11-14 2023-12-15 四川农业大学 一种基于注意力机制优化的大规模果园虫情监测方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116453032A (zh) * 2023-06-16 2023-07-18 福建农林大学 一种海洋生态检测***
CN116453032B (zh) * 2023-06-16 2023-08-25 福建农林大学 一种海洋生态检测***
CN117237814A (zh) * 2023-11-14 2023-12-15 四川农业大学 一种基于注意力机制优化的大规模果园虫情监测方法
CN117237814B (zh) * 2023-11-14 2024-02-20 四川农业大学 一种基于注意力机制优化的大规模果园虫情监测方法

Similar Documents

Publication Publication Date Title
CN106920243B (zh) 改进的全卷积神经网络的陶瓷材质件序列图像分割方法
CN109886066B (zh) 基于多尺度和多层特征融合的快速目标检测方法
Wang et al. A random forest classifier based on pixel comparison features for urban LiDAR data
CN107766933B (zh) 一种解释卷积神经网络的可视化方法
CN112734775B (zh) 图像标注、图像语义分割、模型训练方法及装置
Solaiman et al. Multisensor data fusion using fuzzy concepts: application to land-cover classification using ERS-1/JERS-1 SAR composites
CN108052966A (zh) 基于卷积神经网络的遥感图像场景自动提取和分类方法
Zhang et al. PSO and K-means-based semantic segmentation toward agricultural products
Liu et al. Remote sensing image change detection based on information transmission and attention mechanism
CN108492298B (zh) 基于生成对抗网络的多光谱图像变化检测方法
CN109840483B (zh) 一种滑坡裂缝检测与识别的方法及装置
CN104850822B (zh) 基于多特征融合的简单背景下的叶片识别方法
Shahab et al. How salient is scene text?
CN109886161A (zh) 一种基于可能性聚类和卷积神经网络的道路交通标识识别方法
CN108229550A (zh) 一种基于多粒度级联森林网络的云图分类方法
CN106408030A (zh) 基于中层语义属性和卷积神经网络的sar图像分类方法
CN114187183A (zh) 一种细粒度昆虫图像分类方法
CN110211127B (zh) 基于双相关性网络的图像分割方法
CN106022254A (zh) 图像识别技术
Patil et al. Enhanced radial basis function neural network for tomato plant disease leaf image segmentation
Su et al. LodgeNet: Improved rice lodging recognition using semantic segmentation of UAV high-resolution remote sensing images
Chen et al. Agricultural remote sensing image cultivated land extraction technology based on deep learning
Ju et al. Classification of jujube defects in small data sets based on transfer learning
Saba et al. Optimization of multiresolution segmentation for object-oriented road detection from high-resolution images
Zhao et al. Butterfly recognition based on faster R-CNN

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