买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:长江大学
摘要:本发明涉及一种基于全卷积神经网络的稻飞虱检测计数方法,属于稻飞虱防治检测领域。该基于全卷积神经网络的稻飞虱检测计数方法,包含数据获取、数据集制作、数据读取、模型训练、模型推理、结果验证、可视化的稻飞虱检测与计数方法。其核心在于,在训练模型时使用本技术中提出的对象计数损失函数,能够让FCN拥有对稻飞虱定位与计数的能力。解决了现有计数方式仅对通用目标检测框架进行改进,在面临密集小目标害虫时计数不准确的问题,特别适合体型极小昆虫计数,尤其适合稻飞虱的检测计数。
主权项:1.一种基于全卷积神经网络的稻飞虱检测计数方法,其特征在于:所述的稻飞虱检测计数方法,包括如下步骤:(1)数据获取:将智能手机放置在手持自拍杆上进行拍摄,以便获取最佳的拍摄距离与角度,拍摄分辨率为1728×2304;使用该装置在田间进行拍摄,在每一块有虫的区域拍摄3-5张照片,并保留最清晰的一张,作为原始图像;(2)数据集制作:使用labelme或者anylabeling标注工具对原始图像进行标注,使用其中的矩形标注,标注格式为两点式,即左上点(x1,y1)与右下点(x2,y2)确定一个矩形框,所有稻飞虱标签均标注为PH,标注工具会自动生成标注json文件,标注文件名与图片名对应;由于稻飞虱数量庞大,采取标注-校对两步方法,首先由N名农业专家分工,对原始图像进行第一遍标注,第一遍标注完成后,互相交换标注进行校对,以消除标注过程中主观因素的影响;由于原始图像分辨率较高,采取分块策略以减少模型训练与推理时的内存消耗;在训练前,将原始图像与对应标注信息四等分,得到4张864×1152分辨率图片与对应标注文件;分割过程中,原始图像质量没有损失,位于分割线上的标注框,根据中心点所处的块位置保留该标注;原图切分后产生的四张分块图片与标注文件均重新命名,命名格式为:图片名_rectangle_n,n为块编号,左上块、右上块、左下块、右下块编号分别的0、1、2、3;将原始图像按8比2的比例划分为训练集与验证集;然后再将每一张原始图像按照上述步骤切分为4块,最后构成数据集图像;随后的模型训练与检测均使用四等分后的图片,计算计数精度时会将数据集图像检测后,再将检测结果还原回原始图像进行比较;(3)数据读取;对于数据集图像的读取,使用OpenCV中imread方法进行读取,读取的图片为PythonNumpy数组格式;重点在于对标注信息的读取,标注采用的是矩形框标注,通过标注框,即可知道每个稻飞虱的矩形感兴趣区域,随后计算以下需要的数据,并以键值对的方式存放进Python字典中,键与计算方式分别为:counts,其数据类型为数值型,代表该图片中包含的稻飞虱总数,通过计算标注框的数量得到;points,其数据类型为Numpy数组,大小与数据集图像相同,通过计算每个标注框的中心点得到每一头稻飞虱的中心点坐标,并令points数组中对应位置的值等于1,其它位置等于0;boundaries,其仅在模型训练时读取,数据类型为Numpy数组,大小与数据集图像相同,读取标注框的坐标点,并令boundaries数组中与标注框位置对应区域的值等于1,其它位置等于0;boxes,其仅在模型验证时读取,数据类型为list,用来存放所有的矩形框坐标;为提高模型鲁棒性与数据多样性,读取数据时进行数据增强,对数据集图像与标注进行随机翻转,对points数组中的点坐标设置随机偏移量x,对boundaries数组中的框坐标设置随机偏移量y;(4)模型搭建:稻飞虱计数模型的网络模型由骨干网络和特征金字塔两个部分组成,骨干网络采用预训练ResNet50模型,并将骨干网络中C4层至C5层特征提取过程的下采样步幅由2修改为1,即数据集图片在C1-C5层的对应下采样倍数分别为4,8,16,16;将骨干网络中间层C2-C5层的输出分别输入特征金字塔中,由特征金字塔给出四个预测结果,再将这四个预测结果进行上采样融合,融合方式为对应位置元素相加,然后对最终相加结果使用sigmoid函数输出,最终稻飞虱计数模型输出的大小与其输入大小相同;(5)模型训练:本技术的关键在于训练时按照设计的数据读取方式读取训练数据,并同时使用提出的对象计数损失对模型进行优化;对象计数损失包含四项子损失函数,分别为图像损失、定位损失、边界损失和负样本损失;对象计数损失如公式(1)所示:设矩阵S为模型预测输出;设是像素i处的模型输出值,则为该输出值为稻飞虱的sigmoid概率;设TL为对象中心点矩阵的真实值,即在数据读取步骤中读取的points数组;设TB为对象边界矩阵的真实值,即在数据读取步骤中读取的boundaries数组; ;训练输入图片大小均为864×1152,即数据集图像,也可根据实际情况更改,采用随机翻转进行数据增强;骨干网络使用预训练ResNet50,训练时batchsize大小为2,优化器使用Adam,学习率设置为1e-5,weightdecay设置为1e-4,训练至少100个epoch;(6)模型推理与可视化:经过对象计数损失训练过的计数模型可以直接实现端到端的输出,在模型推理过程中仅有模型的前向传播过程,该过程与FCN是相同的;模型会对检测到的稻飞虱目标预测出一个较小的独立斑点区域,该区域大致会在稻飞虱的中心位置,通过连通区域标记算法,即可定位每头稻飞虱的位置,统计独立连通区域的数量,即可得出稻飞虱计数结果;输入一张RGB图片,模型会输出一张对应大小的预测图,通道数为1,其值在0-1之间,代表该像素是稻飞虱的概率;将预测图转化为热力图进行可视化,颜色越红,则表示模型越关注该区域,该区域为稻飞虱的可能性越高;对于模型预测输出,若元素值大于0.5,则判定该区域是稻飞虱,否则为背景;将热力图与输入进行融合,以方便进行模型效果的可视化;结合网络预测结果json文件与掩模结果输出,能够将分块结果还原回原图结果,从而最后在图片上打印出模型预测的稻飞虱数量。
全文数据:
权利要求:
百度查询: 长江大学 一种基于全卷积神经网络的稻飞虱检测计数方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。