CN114255357A - 一种基于计算机视觉的群养生猪身份识别与健康监测方法 - Google Patents
一种基于计算机视觉的群养生猪身份识别与健康监测方法 Download PDFInfo
- Publication number
- CN114255357A CN114255357A CN202111588174.0A CN202111588174A CN114255357A CN 114255357 A CN114255357 A CN 114255357A CN 202111588174 A CN202111588174 A CN 202111588174A CN 114255357 A CN114255357 A CN 114255357A
- Authority
- CN
- China
- Prior art keywords
- pig
- health
- live
- images
- data set
- 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
Links
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/22—Matching criteria, e.g. proximity measures
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Measuring And Recording Apparatus For Diagnosis (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明公开一种基于计算机视觉的群养生猪身份识别与健康监测方法,包括截取采集的视频,获得图像,利用结构相似性指数来度量图像间的相似度,去除极度相似图像,得到猪脸识别数据集和生猪健康监测数据集;将猪脸识别数据集送入卷积神经网络,进行猪脸识别,将生猪健康监测数据集输入目标检测算法,进行健康监测;猪脸识别任务和生猪健康监测任务存在很强的相关性,共享特征提取层,训练时对两个任务进行联合优化,实现猪脸识别精度和生猪健康监测准确率的同步提高。本方法通过无接触的摄像头数据判断猪的身份和健康状态,操作简单,方便快捷,节省了通过人工方式监测健康状态的时间,为养殖场的养殖人员提供参考依据,具有极大的应用价值。
Description
技术领域
本发明属于生猪身份识别与健康监测技术领域,涉及一种基于计算机视觉的群养生猪身份识别与健康监测方法。
背景技术
猪肉作为人们日常生活必不可少的消费品,其产量和质量与人民的健康生活息息相关。目前世界上超过一半的猪是在我国饲养和消费的,虽然我国已经形成高密度、集中化的养猪体系,养猪业得到了长足的发展,但是仍然存在着猪肉质量不高、出栏率低、生产效率低、养猪成本居高不下等诸多问题。我国生猪养殖业的整体发展情况是小规模生猪养殖户数逐渐减少,大型养殖场的生产规模随之扩大。但是,与西方国家相比,我国的养猪业效率低下。目前,我国主要采用RFID技术实现生猪的身份识别和传统的人工观察方法对猪的行为进行健康状态监测。RFID对生猪具有伤害性而且成本比较高,在使用过程中容易脱落且易滋生细菌引起并发症,在管理上RFID容易被冒充。
此外,由于规模化饲养技术密度高,往往会由于舍内环境调控设施不当,引起舍内环境条件差,不能满足猪的正常生理机能。猪舍内温度过高或者过低、湿度过大、舍内潮湿通常会引发病状。通风不良及有害气体的蓄积等因素,使猪产生不适感或休息不好。光照过强,猪处于兴奋状态,烦躁不安容易引起猪的行为异常,从而影响生产力。同时由于养殖密度的增加,某头猪发生瘟疫等传染病时,可能迅速传染到其他猪,因此对异常情况的实时性检测要求越来越高。若异常情况发现不及时,有可能造成严重的经济损失。采用传统的人工观察方法对猪的行为进行健康状态监测,受环境以及饲养人员的时间和精力限制,在观察过程中容易忽略养殖过程中的异常行为。
发明内容
为解决上述技术问题,本发明的目的是提供一种基于计算机视觉的群养生猪身份识别与健康监测方法,通过自动化的方法对猪的行为进行健康状态监测,并及时发现猪的异常状况。
本发明提供一种基于计算机视觉的群养生猪身份识别与健康监测方法,包括以下步骤:
步骤1:采集生猪图像数据,用于训练猪脸识别和生猪健康监测模型;
步骤2:对图像进行预处理,去除异常图像后,利用结构相似性指数来度量图像之间的相似度,去除相似度高的图像,将图像数据集制作为猪脸识别数据集和生猪健康监测数据集;
步骤3:基于卷积神经网络,对猪脸识别数据集进行猪脸特征提取,获得猪脸融合特征图;对生猪健康监测数据集进行猪身细节特征提取,获得猪身融合特征图;
步骤4:构建基于神经网络的猪身份识别分类器,进行猪脸识别,确定猪的身份信息;
步骤5:构建基于改进目标检测算法的猪健康监测模型,进行生猪健康状态检测,确定猪的健康状况;
步骤6:对猪脸识别以及生猪健康监测两个任务进行联合优化;
步骤7:综合步骤4、步骤5、步骤6所识别的生猪身份和健康状态,输出生猪身份与健康状态。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,所述步骤1具体为:
步骤1.1:使用防抖镜头,录制训练数据集所需视频,挑选大、中、小三种体型和健康、亚健康、生病三种状态的生猪,对每头生猪录一个视频,重点录制猪脸、猪身、猪的毛色,移动拍摄时生猪距离镜头0.3~3m;
步骤1.2:对采集的视频做切割视频帧处理,每5帧截取出一帧图像作为训练数据;
步骤1.3:对获取到的1920×1080分辨率图像边缘添加黑色像素值以使其宽高比为2:1,完成后像素值变为2048×1024。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,所述步骤2具体为:
步骤2.1:通过人工方式筛选掉不包含或只包含少部分猪脸的异常图像;
步骤2.2:去除异常图像后,再进行数据清洗,针对连续图像帧之间相似度过高的情况,采用结构相似性指数来度量图片之间的相似度,将每幅图像与随后出现的图像进行比较,直到找到足够的差异,淘汰其中相似度过高的图像,考虑两幅图像之间的方差、协方差和平均强度,计算公式如下:
式中,S(x,y)表示输入的两幅图像x,y的相似度;μx和μy分别为输入的两幅图像像素的平均值,σx和σy为输入的两幅图像像素的方差,σxy为两幅图像像素的协方差;c1和c2为常数,由cz=(kz×L)2,z=1,2确定,其中k为常量因子,L为图像像素值动态范围;k1和k2取值范围在0.01~0.05之间;S(x,y)取值范围在0~1之间,当S(x,y)低于0.75时,认为两张图像不同;
步骤2.3:数据清洗后将每两张图像进行拼接操作得到方形图像,分辨率为2048×2048,对获取的图像进行放缩操作,将分辨率最终转换为416×416;
步骤2.4:使用LabelImg软件,分别对图像中的猪脸和猪身进行标注,得到猪脸识别数据集和生猪健康监测数据集。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,所述步骤3具体为:
步骤3.1、数据集扩充:
将猪脸识别数据集和生猪健康监测数据集分别进行数据扩充,扩充方式为,对相应数据集中的图像增加光照变化和椒盐噪声后,将新形成的图像增加到数据集中;
步骤3.2、猪脸特征提取:基于猪脸识别数据集,通过CSPDarknet53网络提取猪脸特征,利用空间注意力和通道注意力将最后三层特征图进行融合,获得猪脸融合特征图;
步骤3.3、猪身细节特征提取:基于生猪健康监测数据集,通过CSPDarknet53网络提取猪身细节特征,利用空间注意力和通道注意力将最后三层特征图进行融合,获得猪身融合特征图。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,所述步骤4将猪脸融合特征图送入分类网络,经过置信度排序后,获取每头生猪身份信息,具体为:
步骤4.1:猪脸定位,利用CSPDarknet53输出的融合特征图,通过猪脸检测算法快速生成猪脸候选区域;
步骤4.2:将检测到的猪脸候区域图像经过ROI pooling和深度卷积神经网络得到猪脸特征,再通过全连接层获得猪脸的特征向量;
步骤4.3:对猪脸的特征向量进行L2正则化,筛选出有效特征猪脸的特征向量,计算Triplets Loss,获取梯度对网络参数进行优化;
步骤4.4:通过计算实时采集猪脸的图像与猪脸识别数据集之间特征向量的欧氏距离,表示两张图片的差异,最终进行猪脸识别,确定猪的身份信息。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,所述步骤5具体为:
步骤5.1:将YOLOX骨干网络作为特征提取网络,输入的图片在CSPDarknet53网络进行特征提取;
步骤5.2:在原始YOLOX网络的基础上,将YOLOX网络三尺度输出中最低维特征尺度的输出去掉,改为两尺度输出;同时将剩下的两个尺度特征利用通道注意力机制和空间注意力机制进一步融合,获得改进目标检测算法的生猪健康监测模型;
步骤5.3:利用改进目标检测算法的猪健康监测模型对当前生猪健康状态进行推理,得到生猪的矩形坐标和健康状态置信度,过滤掉置信度小于0.5的目标,得到生猪健康状态。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,所述步骤6具体为:
猪脸特征提取和猪身细节特征提取采用相同的特征提取网络,在优化时将猪脸识别损失和健康监测损失按照不同权重系数相加,进行联合优化,为不同的损失函数项提供适配学习率,计算公式为:
其中,θi是更新后的神经网络参数,Ftt是对角矩阵,为第i个矩阵元素对应从时间0到时间t沿第i个方向梯度平方的累加,Gtt是对角矩阵,为第i个矩阵元素对应从时间0到时间t沿第i个方向梯度平方的累加;lr是学习率,是损失函数对网络参数的梯度;将公式中的学习率分别除以常数和其中∈=10-8防止除零发散;f为生猪身份识别损失函数,g为生猪健康监测损失函数,g为YOLOX中的损失函数;
通过最小化f和g的联合损失,进行神经网络参数θi的更新,得到更好的猪脸识别与健康监测效果。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中:
生猪身份识别流程分为两部分:猪脸检测与猪脸识别,生猪身份识别损失f由两部分组成:
f=Ldet+Lrec
其中,猪脸检测损失函数Ldet与生猪健康监测损失函数g相同,猪脸识别损失函数Lrec用于检测是否为猪脸,采用人脸识别模型FaceNet中的Triplet Loss作为猪脸识别损失函数Lrec。
在本发明的基于计算机视觉的群养生猪身份识别与健康监测方法中,生猪的健康状态包括:健康、亚健康和生病三种,当输出结果为亚健康和生病时会发出警告。
本发明的一种基于计算机视觉的群养生猪身份识别与健康监测方法,至少具有以下有益效果:
1)采用无接触的智能视频监控系统,不会对生猪产生任何影响,同时能够对生猪进行视频监控、猪脸识别和健康监测,节省了大量人工成本,提高了养殖效率;
2)充分利用提取的高维和低维特征进行猪脸识别,在低维和高维特征之间引入注意力模块,最后再拼接构成一个新的特征图,实现准确高效的生猪身份识别;
3)生猪健康监测引入注意力机制增加细节特征的提取,减少尺度,提高检测速度和准确率;
4)利用多任务学习方式进一步降低模型的过拟合程度,提高模型的泛化能力;
5)整个过程自动完成,不需要人工参与。
附图说明
图1为本发明一种基于计算机视觉的群养生猪身份识别与健康监测方法的流程图;
图2为本发明的猪脸识别实现方法示意图;
图3为本发明的生猪健康监测方法示意图。
具体实施方式
如图1所示,本发明的一种基于计算机视觉的群养生猪身份识别与健康监测方法,包括以下步骤:
步骤1:采集生猪图像数据,用于训练猪脸识别和生猪健康监测模型;所述步骤1具体为:
步骤1.1:使用防抖镜头,录制训练数据集所需视频,挑选大、中、小三种体型和健康、亚健康、生病三种状态的生猪,对每头生猪录一个视频,重点录制猪脸、猪身、猪的毛色,移动拍摄时生猪距离镜头0.3~3m;
步骤1.2:对采集的视频做切割视频帧处理,每5帧截取出一帧图像作为训练数据;
步骤1.3:对获取到的1920×1080分辨率图像边缘添加黑色像素值以使其宽高比为2:1,完成后像素值变为2048×1024。
具体实施时,本步骤采集的数据集用于网络的训练和验证,测试集采用真实群养生猪监控视频。使用佳能700D防抖镜头挑选大、中、小三种体型和健康、亚健康、生病三种状态的生猪,对每头猪录视频一分钟左右,重点是猪脸、猪身和猪的毛色,移动拍摄时生猪距离镜头0.3~3m不等,采集不同大小猪脸和猪身区域。第一次共采集30头生猪,考虑到生猪生长周期短、变化大等因素,在开展实验后进行第二批数据集采集。对采集的视频做切割视频帧处理,每5帧截取出一帧作为训练数据,每头猪可以截取700张图片。对获取的1920×1080分辨率图片边缘添加黑色像素值,使其宽高比为2:1,完成后像素值变为2048×1024。采集的生猪状况如下表所示:
步骤2:对图像进行预处理,去除异常图像,利用结构相似性指数来度量图像之间的相似度,去除相似度高的图像,将图像数据集制作为猪脸识别数据集和生猪健康监测数据集,所述步骤2具体为:
步骤2.1:通过人工方式筛选掉不包含或只包含少部分猪脸的异常图像;
步骤2.2:去除异常图像后,再进行数据清洗,针对连续图像帧之间相似度过高的情况,采用结构相似性指数来度量图片之间的相似度,将每幅图像与随后出现的图像进行比较,直到找到足够的差异,淘汰其中相似度过高的图像,考虑两幅图像之间的方差、协方差和平均强度,计算公式如下:
式中,S(x,y)表示输入的两幅图像x,y的相似度;μx和μy分别为输入的两幅图像像素的平均值,σx和σy为输入的两幅图像像素的方差,σxy为两幅图像像素的协方差;c1和c2为常数,由cz=(kz×L)2,z=1,2确定,其中k为常量因子,L为图像像素值动态范围;k1和k2取值范围在0.01~0.05之间;S(x,y)取值范围在0~1之间,当S(x,y)低于0.75时,认为两张图像不同;
步骤2.3:数据清洗后将每两张图像进行拼接操作得到方形图像,分辨率为2048×2048,对获取的图像进行放缩操作,将分辨率最终转换为416×416;
经过清洗后,每头猪对应有200~300张图片。进行预处理,将每两张图像进行拼接操作得到方形图片,其分辨率为2048×2048,对获取的图片进行放缩操作,分辨率转换为416×416,减少运算量,提高模型训练速度。
步骤2.4:使用LabelImg软件作为标注工具,分别对图像中的猪脸和猪身进行标注,得到猪脸识别数据集和生猪健康监测数据集。
其中,两个数据集原始图片一样,在标注时,猪脸识别数据集以猪脸标注矩形框,生猪健康监测数据集以猪全身标注矩形框。
步骤3:基于卷积神经网络,对猪脸识别数据集进行猪脸特征提取,获得猪脸融合特征图;对生猪健康监测监数据集进行猪身细节特征提取,获得猪身融合特征图,所述步骤3具体为:
步骤3.1、数据集扩充:将猪脸识别数据集和生猪健康监测数据集分别进行数据扩充,扩充方式为对相应数据集中的图像增加光照变化和椒盐噪声,并将新的图像增加到数据集中;
步骤3.2、猪脸特征提取:基于猪脸识别数据集,通过CSPDarknet53网络提取猪脸特征,利用空间注意力和通道注意力将最后三层特征图进行融合,获得猪脸融合特征图;
步骤3.3、猪身细节特征提取:基于生猪健康监测数据集,通过CSPDarknet53网络提取猪身细节特征,利用空间注意力和通道注意力将最后三层特征图进行融合,获得猪身融合特征图。
具体实施时,CSPDarknet53一共输出5个层级的特征图,猪脸特征提取和猪身细节特征提取都只用到最后三层特征图。输入图片大小为416×416,最后三层特征图大小分别为52×52,26×26,13×13。52×52特征图分别经过空间注意力和通道注意力与26×26、13×13特征图拼接融合得到新的特征图,最后再与13×13特征图拼接融合,获得最终融合特征图,用来提取更加细粒度的特征。
步骤4:构建基于神经网络的猪身份识别分类器,进行猪脸识别,确定猪的身份信息,将猪脸融合特征图送入分类网络,经过置信度排序后,获取每头生猪身份信息,具体为:
步骤4.1:猪脸定位,利用CSPDarknet53输出的融合特征图,通过猪脸检测算法快速生成猪脸候选区域;
步骤4.2:将检测到的猪脸候区域图像经过ROI pooling和深度卷积神经网络得到猪脸特征,再通过全连接层获得猪脸的特征向量;
步骤4.3:对猪脸的特征向量进行L2正则化,筛选出有效特征猪脸的特征向量,计算Triplets Loss,获取梯度对网络参数进行优化;
步骤4.4:通过计算实时采集猪脸的图像与猪脸识别数据集之间特征向量的欧氏距离,表示两张图片的差异,最终进行猪脸识别,确定猪的身份信息。
猪身份识别包括两个模块:猪脸定位和猪脸识别,如图2所示,基于MTCNN(Multi-task convolutional neural network,多任务卷积神经网络)思想,利用CSPDarknet53输出的融合特征图和猪脸检测算法快速生成猪脸候选区域;然后猪脸候选区域图像经过ROIpooling和深度卷积神经网络得到猪脸特征,再通过全连接层将猪脸特征映射到128维的特征空间(欧几里得空间),从而获得猪脸的128维特征向量;最后以Triplet Loss作为监督信号,计算梯度并对神经网络模型参数进行优化,可以得到更好的猪脸数据的特征向量;然后计算实时采集猪脸的图片与猪脸数据集之间特征向量的欧氏距离,表示出两张猪脸图片的差异,最终进行猪脸识别,确定猪的身份信息。
步骤5:如图3所示,构建基于改进目标检测算法的猪健康监测模型,进行生猪健康状态检测,确定猪的健康状况,所述步骤5具体为:
步骤5.1:将YOLOX骨干网络作为特征提取网络,输入的图片在CSPDarknet53网络进行特征提取;
步骤5.2:在原始YOLOX网络的基础上,将YOLOX网络三尺度输出中最低维特征尺度的输出去掉,改为两尺度输出;同时将剩下的两个尺度特征利用通道注意力机制和空间注意力机制进一步融合,获得改进目标检测算法的生猪健康监测模型;
步骤5.3:利用改进目标检测算法的猪健康监测模型对当前生猪健康状态进行推理,得到生猪的矩形坐标和健康状态置信度,过滤掉置信度小于0.5的目标,得到生猪健康状态。
本发明将YOLOX三尺度的输出改为两尺度的输出,具体细节为:在步骤3得到52×52,26×26,13×13特征之后,利用通道注意力机制和空间注意力机制进一步融合,得到两尺度特征输出,有效地结合不同尺度的特征信息并减少模型的计算量,通过检测头得到最终健康状态。
步骤6:对猪脸识别和生猪健康状态监测两个任务进行联合优化,提高生猪的身份识别和健康状态识别准确率,具体为:
猪脸特征提取和猪身细节特征提取采用相同的特征提取网络,在优化时将猪脸识别损失和健康监测损失按照不同权重系数相加,进行联合优化,为不同的损失函数项提供适配学习率,计算公式为:
其中,θi是更新后的神经网络参数,Ftt是对角矩阵,第i个矩阵元素对应从时间0到时间t沿第i个方向梯度平方的累加、Gtt是对角矩阵,第i个矩阵元素对应从时间0到时间t沿第i个方向梯度平方的累加;lr是学习率,是损失函数对网络参数的梯度;将公式中的学习率分别除以常数和其中∈=10-8防止除零发散;f为生猪身份识别损失函数,g为生猪健康监测损失函数,g为YOLOX中的损失函数;
通过最小化f和g的联合损失,进行神经网络参数θi的更新,得到更好的识别效果。
生猪身份识别流程分为两部分:猪脸检测与猪脸识别,生猪身份识别损失f由两部分组成:
f=Ldet+Lrec
其中,猪脸检测损失函数Ldet与生猪健康监测损失函数g相同,猪脸识别损失函数Lrec用于检测是否为猪脸,采用开源人脸识别模型FaceNet中的Triplet Loss作为猪脸识别损失函数Lrec。
步骤7:综合步骤4、步骤5、步骤6所识别的生猪身份和健康状态,输出生猪身份与健康状态。生猪的健康状态包括:健康、亚健康和生病三种,当输出结果为亚健康和生病时会发出警告。
具体实施时,使用步骤1和步骤2标注得到猪脸、生猪健康监测数据集进行训练,数据集由图像数据和人工标签组成,综合步骤4、步骤5、步骤6运行训练程序,在训练时,把图像数据和人工标签进行匹配,训练完成结束后,得到生猪身份识别与健康监测模型。用上述模型对猪场摄像头实时监控所采集的图像进行推理,根据推理结果,得到所有生猪的身份信息、健康状态信息和置信概率;过滤掉置信度小于0.5的目标,输出生猪身份与健康状态。生猪的健康状态包括健康、亚健康和生病三种,当输出结果为亚健康或生病时会发出警告。
以上所述仅为本发明的较佳实施例,并不用以限制本发明的思想,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,包括以下步骤:
步骤1:采集生猪图像数据,用于训练猪脸识别和生猪健康监测模型;
步骤2:对图像进行预处理,去除异常图像后,利用结构相似性指数来度量图像之间的相似度,去除相似度高的图像,将图像数据集制作为猪脸识别数据集和生猪健康监测数据集;
步骤3:基于卷积神经网络,对猪脸识别数据集进行猪脸特征提取,获得猪脸融合特征图;对生猪健康监测数据集进行猪身细节特征提取,获得猪身融合特征图;
步骤4:构建基于神经网络的猪身份识别分类器,进行猪脸识别,确定猪的身份信息;
步骤5:构建基于改进目标检测算法的猪健康监测模型,进行生猪健康状态检测,确定猪的健康状况;
步骤6:对猪脸识别以及生猪健康监测两个任务进行联合优化;
步骤7:综合步骤4、步骤5、步骤6所识别的生猪身份和健康状态,输出生猪身份与健康状态。
2.如权利要求1所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,所述步骤1具体为:
步骤1.1:使用防抖镜头,录制训练数据集所需视频,挑选大、中、小三种体型和健康、亚健康、生病三种状态的生猪,对每头生猪录一个视频,重点录制猪脸、猪身、猪的毛色,移动拍摄时生猪距离镜头0.3~3m;
步骤1.2:对采集的视频做切割视频帧处理,每5帧截取出一帧图像作为训练数据;
步骤1.3:对获取到的1920×1080分辨率图像边缘添加黑色像素值,以使其宽高比为2:1,完成后像素值变为2048×1024。
3.如权利要求1所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,所述步骤2具体为:
步骤2.1:通过人工方式筛选掉不包含或只包含少部分猪脸的异常图像;
步骤2.2:去除异常图像后,再进行数据清洗,针对连续图像帧之间相似度过高的情况,采用结构相似性指数来度量图片之间的相似度,将每幅图像与随后出现的图像进行比较,直到找到足够的差异,淘汰其中相似度过高的图像,考虑两幅图像之间的方差、协方差和平均强度,计算公式如下:
式中,S(x,y)表示输入的两幅图像x,y的相似度;μx和μy分别为输入的两幅图像像素的平均值,σx和σy为输入的两幅图像像素的方差,σxy为两幅图像像素的协方差;c1和c2为常数,由cz=(kz×L)2,z=1,2确定,其中k为常量因子,L为图像像素值动态范围;k1和k2取值范围在0.01~0.05之间;S(x,y)取值范围在0~1之间,当S(x,y)低于0.75时,认为两张图像不同;
步骤2.3:数据清洗后将每两张图像进行拼接得到方形图像,分辨率为2048×2048,对获取的图像进行放缩,将分辨率最终转换为416×416;
步骤2.4:使用LabelImg软件,分别对图像中的猪脸和猪身进行标注,得到猪脸识别数据集和生猪健康监测数据集。
4.如权利要求1所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,所述步骤3具体为:
步骤3.1、数据集扩充:
将猪脸识别数据集和生猪健康监测数据集分别进行数据扩充,扩充方式为,对相应数据集中的图像增加光照变化和椒盐噪声后添加到数据集中;
步骤3.2、猪脸特征提取:基于猪脸识别数据集,通过CSPDarknet53网络提取猪脸特征,利用空间注意力和通道注意力将最后三层特征图进行融合,获得猪脸融合特征图;
步骤3.3、猪身细节特征提取:基于生猪健康监测数据集,通过CSPDarknet53网络提取猪身细节特征,利用空间注意力和通道注意力将最后三层特征图进行融合,获得猪身融合特征图。
5.如权利要求1所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,所述步骤4将猪脸融合特征图送入分类网络,经过置信度排序后,获取每头生猪身份信息,具体为:
步骤4.1:猪脸定位,利用CSPDarknet53输出的融合特征图,通过猪脸检测算法快速生成猪脸候选区域;
步骤4.2:将检测到的猪脸候区域图像经过ROI pooling和深度卷积神经网络得到猪脸特征,再通过全连接层获得猪脸的特征向量;
步骤4.3:对猪脸的特征向量进行L2正则化,筛选出有效特征猪脸的特征向量,计算Triplets Loss,获取梯度对网络参数进行优化;
步骤4.4:通过计算实时采集的猪脸图像与猪脸识别数据集之间特征向量的欧氏距离,表示两张图片的差异,最终进行猪脸识别,确定猪的身份信息。
6.如权利要求1所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,所述步骤5具体为:
步骤5.1:将YOLOX骨干网络作为特征提取网络,输入的图片在CSPDarknet53网络进行特征提取;
步骤5.2:在原始YOLOX网络的基础上,将YOLOX网络三尺度输出中最低维特征尺度的输出去掉,改为两尺度输出;同时将剩下的两个尺度特征利用通道注意力机制和空间注意力机制进一步融合,获得基于改进目标检测算法的生猪健康监测模型;
步骤5.3:利用基于改进目标检测算法的猪健康监测模型对当前生猪健康状态进行预测推理,得到生猪的矩形坐标和健康状态置信度,过滤掉置信度小于0.5的目标,得到生猪健康状态。
7.如权利要求1所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,所述步骤6具体为:
猪脸特征提取和猪身细节特征提取采用相同的特征提取网络,在优化时将猪脸识别损失和健康监测损失按照不同权重系数相加,进行联合优化,为不同的损失函数项提供适配学习率,计算公式为:
其中,θi是更新后的神经网络参数,Ftt是对角矩阵,为第i个矩阵元素对应从时间0到时间t沿第i个方向梯度平方的累加,Gtt是对角矩阵,为第i个矩阵元素对应从时间0到时间t沿第i个方向梯度平方的累加;lr是学习率,是损失函数对网络参数的梯度;将公式中的学习率分别除以常数和其中ε=10-8防止除零发散;f为生猪身份识别损失函数,g为生猪健康监测损失函数,g为YOLOX中的损失函数;
通过最小化f和g的联合损失,进行神经网络参数θi的更新,得到更好的猪脸识别与健康监测效果。
8.如权利要求7所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于:
生猪身份识别流程分为两部分:猪脸检测与猪脸识别,生猪身份识别损失f由两部分组成:
f=Ldet+Lrec
其中,猪脸检测损失函数Ldet与生猪健康监测损失函数g相同,猪脸识别损失函数Lrec用于检测是否为猪脸,采用人脸识别模型FaceNet中的Triplet Loss作为猪脸识别损失函数Lrec。
9.如权利要求6所述的基于计算机视觉的群养生猪身份识别与健康监测方法,其特征在于,生猪的健康状态包括:健康、亚健康和生病三种,当输出结果为亚健康和生病时会发出警告。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111588174.0A CN114255357A (zh) | 2021-12-23 | 2021-12-23 | 一种基于计算机视觉的群养生猪身份识别与健康监测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111588174.0A CN114255357A (zh) | 2021-12-23 | 2021-12-23 | 一种基于计算机视觉的群养生猪身份识别与健康监测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114255357A true CN114255357A (zh) | 2022-03-29 |
Family
ID=80797088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111588174.0A Pending CN114255357A (zh) | 2021-12-23 | 2021-12-23 | 一种基于计算机视觉的群养生猪身份识别与健康监测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114255357A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114463701A (zh) * | 2022-04-14 | 2022-05-10 | 华南农业大学 | 一种基于多源大数据动物养殖数据挖掘的监测预警系统 |
CN115226650A (zh) * | 2022-06-02 | 2022-10-25 | 南京农业大学 | 基于交互特征的母猪发情状态自动检测系统 |
CN115250952A (zh) * | 2022-08-18 | 2022-11-01 | 深圳进化动力数码科技有限公司 | 生猪健康监测方法、装置、设备及存储介质 |
CN115909403A (zh) * | 2022-11-25 | 2023-04-04 | 天津大学四川创新研究院 | 基于深度学习的低成本高精度猪脸识别方法 |
CN116227790A (zh) * | 2023-04-25 | 2023-06-06 | 宏景科技股份有限公司 | 智慧养殖智能管理方法、装置、电子设备及智能管理系统 |
CN117351537A (zh) * | 2023-09-11 | 2024-01-05 | 中国科学院昆明动物研究所 | 一种基于深度学习的猕猴脸部智能识别方法及系统 |
-
2021
- 2021-12-23 CN CN202111588174.0A patent/CN114255357A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114463701A (zh) * | 2022-04-14 | 2022-05-10 | 华南农业大学 | 一种基于多源大数据动物养殖数据挖掘的监测预警系统 |
CN114463701B (zh) * | 2022-04-14 | 2022-07-01 | 华南农业大学 | 一种基于多源大数据动物养殖数据挖掘的监测预警系统 |
CN115226650A (zh) * | 2022-06-02 | 2022-10-25 | 南京农业大学 | 基于交互特征的母猪发情状态自动检测系统 |
CN115226650B (zh) * | 2022-06-02 | 2023-08-08 | 南京农业大学 | 基于交互特征的母猪发情状态自动检测系统 |
CN115250952A (zh) * | 2022-08-18 | 2022-11-01 | 深圳进化动力数码科技有限公司 | 生猪健康监测方法、装置、设备及存储介质 |
CN115909403A (zh) * | 2022-11-25 | 2023-04-04 | 天津大学四川创新研究院 | 基于深度学习的低成本高精度猪脸识别方法 |
CN115909403B (zh) * | 2022-11-25 | 2023-08-22 | 天津大学四川创新研究院 | 基于深度学习的低成本高精度猪脸识别方法 |
CN116227790A (zh) * | 2023-04-25 | 2023-06-06 | 宏景科技股份有限公司 | 智慧养殖智能管理方法、装置、电子设备及智能管理系统 |
CN116227790B (zh) * | 2023-04-25 | 2024-04-09 | 宏景科技股份有限公司 | 智慧养殖智能管理方法、装置、电子设备及智能管理系统 |
CN117351537A (zh) * | 2023-09-11 | 2024-01-05 | 中国科学院昆明动物研究所 | 一种基于深度学习的猕猴脸部智能识别方法及系统 |
CN117351537B (zh) * | 2023-09-11 | 2024-05-17 | 中国科学院昆明动物研究所 | 一种基于深度学习的猕猴脸部智能识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114255357A (zh) | 一种基于计算机视觉的群养生猪身份识别与健康监测方法 | |
Zhou et al. | Evaluation of fish feeding intensity in aquaculture using a convolutional neural network and machine vision | |
CN104992223B (zh) | 基于深度学习的密集人数估计方法 | |
CN111178197B (zh) | 基于Mask R-CNN和Soft-NMS融合的群养粘连猪实例分割方法 | |
CN106971152B (zh) | 一种基于航拍图像的检测输电线路中鸟巢的方法 | |
CN107506703B (zh) | 一种基于无监督局部度量学习和重排序的行人再识别方法 | |
CN113537106A (zh) | 一种基于YOLOv5的鱼类摄食行为识别方法 | |
CN109543679A (zh) | 一种基于深度卷积神经网络的死鱼识别方法及预警系统 | |
CN108664878A (zh) | 基于卷积神经网络的猪只身份识别方法 | |
CN111709287A (zh) | 基于深度学习的断奶仔猪目标跟踪方法 | |
CN110363218B (zh) | 一种胚胎无创评估方法及装置 | |
CN111797831A (zh) | 基于bim和人工智能的家禽进食并行异常检测方法 | |
CN111127423A (zh) | 一种基于cnn-bp神经网络算法水稻病虫害识别方法 | |
CN107563327B (zh) | 一种基于自步反馈的行人重识别方法及系统 | |
CN117152676A (zh) | 一种基于图像数据的畜禽养殖环境监控方法 | |
CN117456358A (zh) | 一种基于YOLOv5神经网络的植物病虫害检测方法 | |
Li et al. | Fast recognition of pig faces based on improved Yolov3 | |
CN114898405A (zh) | 基于边缘计算的便携式肉鸡异常监测系统 | |
Brünger et al. | Panoptic instance segmentation on pigs | |
Hu et al. | Concurrent channel and spatial attention in Fully Convolutional Network for individual pig image segmentation | |
CN110991300A (zh) | 一种肉鸡腹部异常肿胀状态的自动识别方法 | |
Yu et al. | Precise segmentation of remote sensing cage images based on SegNet and voting mechanism | |
CN113947780A (zh) | 一种基于改进卷积神经网络的梅花鹿面部识别方法 | |
Ruchay et al. | Cattle Face Recognition Using Deep Transfer Learning Techniques | |
Li et al. | Dairy Cow Individual Identification System Based on Deep Learning |
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 |