本发明属于鼠类识别,更为具体地讲,涉及一种基于卷积神经网络的细粒度鼠类识别方法。
背景技术:
1、鼠类除了糟蹋庄稼、浪费粮食和损坏生活生产物品外,其身上还携带很多病原微生物,同时鼠类身上寄居的很多小生物(如跳蚤和恙虫)也是疫病传播的使者和媒介。通过唾液(鼠类咬伤)、接触(跳蚤叮咬)、排泄物3种途径,鼠类可传播鼠疫等57种疾病,这些鼠源性疾病的传播严重威胁广大人民的生命健康。因此,鼠患防治工作对于加强疾病防治能力、提高人民健康水平有着重要意义。鼠患防治工作,通常需根据不同类别的鼠类及分布情况制定有效的应对措施,然而,从事鼠类识别的基层工作人员队伍不稳定、专业经验不足、对鼠类的鉴别能力普遍较低,潜在的错误信息会给决策带来诸多困难。
2、为了辅助基层工作人员快速准确地做出判断,一些公知的方法将图像处理和机器学习技术用于鼠类识别。例如,童荪等(<专利202110495695.5>,2021)采用移动侦测技术识别待测区域中的移动物体,当移动物体的最小外接矩形面积处于预设鼠类面积范围内时,将待测区域图像输入到yolo v3(you only look once v3)模型中,从而实现鼠类识别,该方法可对鼠类进行实时监测,但不能细分不同类别的鼠类。由于不同鼠类的活动习性、传播疾病、消杀方案有所不同,鼠患防治工作需根据不同鼠类采取相应的防治方法,以实施精准防控。
3、传统的细粒度鼠类识别,通过人工观察鼠类的本体特征或其留下的咬痕、爪印、鼠粪等痕迹,依靠领域知识和工作经验进行综合分析,从而确定其类别,但存在主观性强、识别效率低等问题。同时,鼠类行踪不定且经常昼伏夜出,图像采集难度大,虽然现有的鼠类图像数据多为实验室特定场景下拍摄的标本图像,但仍缺乏严格统一的拍摄标准。高质量鼠类图像数据的匮乏,使得基于现有机器学习方法训练出的模型,仅能关注较小的局部区域且易受背景、光照、拍摄角度等环境因素的影响,存在模型泛化能力弱的问题。此外,不同类别的鼠类形态特征相似,需要依靠鼠类本体细微的局部差异才能正确细分不同的鼠类,而通用的识别模型难以捕捉到具有区分性的局部区域,导致模型识别精度低。针对上述问题,仇雪雅等(<专利201911007638.7>,2019)通过巡逻机器人获取鼠粪图像,并利用图像识别模型根据鼠粪形状判定老鼠的类别,该方法克服了人工识别所导致的识别困难且效率低下的问题。然而,这类基于痕迹的鼠类识别方法易受外在因素干扰而导致相关痕迹破坏的影响,并且未从形态学的视角直接利用鼠类本体特征,无法为基于鼠类本体特征的研究、监测和防控提供有效的技术支撑。
技术实现思路
1、本发明的目的在于克服现有技术的不足,提供一种基于卷积神经网络的细粒度鼠类识别方法,通过构建基于三分支卷积神经网络的细粒度鼠类识别模型,能有效过滤背景噪声,聚焦于鼠类图像中的重要区域,增强局部特征的表征能力,从而提高细粒度鼠类识别的精度。
2、为实现上述发明目的,本发明基于卷积神经网络的细粒度鼠类识别方法包括以下步骤:
3、s1:根据实际需要确定n个老鼠类别,对于每个老鼠类别分别收集若干图像样本并采用预设方法进行预处理,根据老鼠类别对每个图像样本进行分类标注,得到鼠类图像样本集d;
4、s2:构建基于三分支卷积神经网络的细粒度鼠类识别模型,包括图像特征提取模块、主体区域选择模块、擦除视角图像生成模块、裁切视角图像生成模块、全局平均池化模块、分类网络和识别结果融合模块,其中:
5、图像特征提取模块用于对输入的老鼠图像irow、擦除视角图像生成模块发送的擦除视角图像ierase、裁切视角图像生成模块发送的裁切视角图像icrop分别进行特征提取,得到大小为h×w×c的特征图fi,其中h、w分别表示特征图fi的高和宽,c表示特征图fi的通道数,i∈{row,erase,crop},记特征图fi中所有特征点的集合为pi={pi,1,pi,2,...,pi,h×w},pi,j∈rc表示特征图fi的第j个特征点的特征向量,j=1,2,...,h×w,r表示实数域;然后将特征图frow、ferase发送给主体区域选择模块,将特征图fcrop发送给全局平均池化模块;
6、主体区域选择模块用于对特征图frow、ferase进行主体区域选择,得到特征图中作为主体区域的特征点集合p′row、p′erase,将老鼠图像irow的主体区域的特征点集合p′row发送给鼠类擦除视角生成模块、鼠类裁切视角生成模块和全局平均池化模块,将擦除视角图像ierase的主体区域的特征点集合p′erase发送给全局平均池化模块;主体区域选择模块包括全连接层和主体特征点筛选模块,其中:
7、全连接层用于将特征图fi′中每一个特征点pi′,j分别作为一个独立的区域特征进行分类预测,i′∈{row,erase},得到每个特征点pi′,j的鼠类置信度向量fi′,j∈rn,然后输出至主体特征点筛选模块;
8、主体特征点筛选模块在接收到所有特征点pi′,j预测的鼠类置信度向量fi′,j后,从每个鼠类置信度向量fi′,j中选取最大置信度值作为该特征点表征局部区域的判别权重,将所有特征点按照判别权重从大到小进行排序,选取前k个判别权重对应的特征点的集合p′i′作为主体区域,k的值根据实际需要确定;
9、鼠类擦除视角生成模块用于根据老鼠图像irow的主体区域的特征点集合p′row生成老鼠图像irow对应的擦除视角图像ierase,具体方法为:随机从特征点集合p′row中选择m个特征点cm,m=1,2,...,m,m的值根据实际需要确定且1≤m≤k;然后根据老鼠图像irow和特征图frow中像素点的映射关系,将这m个特征点映射回老鼠图像irow得到m个像素点c′m,以像素点c′m为中心从老鼠图像irow中擦除m个预设形状区域,得到擦除视角图像ierase并输出至图像特征提取模块;
10、鼠类裁切视角生成模块用于根据老鼠图像irow的主体区域的特征点集合p′row生成老鼠图像irow对应的裁切视角图像icrop,具体方法为:随机从特征点集合p′row中选择h个特征点h的值根据实际需要确定且1≤h≤k,然后根据老鼠图像irow和特征图frow中像素点的映射关系,将h个特征点的坐标映射回老鼠图像irow中得到h个像素点以像素点为中心,按照预设边长从老鼠图像irow中裁切得到h个矩形区域,按照预设的组合方式将h个矩形区域组合为一张图像,并放大至老鼠图像irow大小,得到裁切视角图像icrop并输出至图像特征提取模块;
11、全局平均池化模块用于对特征点集合p′row、p′erase中所有特征点对应的区域特征进行全局平均池化,得到主体视角特征frow∈rc和擦除视角特征ferase∈rc;对裁切视角图像icrop的特征图fcrop进行全局平均池化,得到裁切视角特征fcrop∈rc;然后将各个视角特征fi输出至分类网络;
12、分类网络用于根据视角特征fi进行分类,得到该视角下的识别结果si∈rn并输出至识别结果融合模块,si中第n个元素为老鼠图像irow属于第n个老鼠类别的置信度;
13、识别结果融合模块用于将三个视角的识别结果si进行加权融合,得到最终的识别结果spre:
14、spre=λrow×srow+λerase×serase+λcrop×scrop
15、其中,λrow、λerase、λcrop分别表示预设的对应视角的权重,且λrow+λerase+λcrop=1;
16、将识别结果spre中置信度最大值对应的老鼠类别作为老鼠图像irow所属的类别;
17、s3:采用步骤s1中的鼠类图像样本集d对细粒度鼠类识别模型进行训练,得到训练好的细粒度鼠类识别模型;
18、s4:将待识别的老鼠图像采用步骤s1相同的预处理方法进行预处理,然后输入训练好的细粒度鼠类识别模型中,得到识别结果。
19、本发明基于卷积神经网络的细粒度鼠类识别方法,收集鼠类图像样本集,构建基于三分支卷积神经网络的细粒度鼠类识别模型,包括图像特征提取模块、主体区域选择模块、擦除视角图像生成模块、裁切视角图像生成模块、全局平均池化模块、分类网络和识别结果融合模块,通过对提取的主体视角、擦除视角、裁切视角的特征进行识别,融合得到最终的识别结果,采用鼠类图像样本集对细粒度鼠类识别模型进行训练,采用训练好的细粒度鼠类识别模型对待识别的老鼠图像进行识别。
20、本发明具有以下有益效果:
21、1)本发明采用基于三分支卷积神经网络的细粒度鼠类识别模型,通过筛选主体区域特征点,捕捉鼠类图像主体区域中有助于细粒度识别的特征,从而有效减少背景干扰,提高识别准确率;
22、2)本发明基于三分支卷积神经网络的细粒度鼠类识别模型,通过对鼠类图像的主体区域进行擦除和裁切操作,使模型从不同视角学习到更多的具有区分性的局部特征,在识别过程中融合三个视角的识别结果,进一步提高识别准确度;
23、3)本发明还提出了基于各分支分类损失函数和中心损失函数的损失函数,通过各分支交叉熵损失函数和中心损失函数的共同约束,使模型能根据图像中局部区域的细粒度特征进行鼠类识别,改善了不同类别的鼠类特征相似导致细粒度识别困难的问题。