论文部分内容阅读
随着我国奶牛养殖业的快速发展,迫切需要利用信息技术提升养殖科学管理水平。及时、准确地掌握奶牛发情信息,适时进行人工授精,对节约人工授精人力和冷冻精液成本,提高奶牛受孕率,缩短产犊间隔,最大程度地提高奶牛养殖场生产效益均具有重要意义。针对接触式传感器的发情检测方法硬件功耗受限,且会使奶牛产生应激反应;而现有基于计算机视觉的发情检测方法依赖阈值分割的结果,且奶牛发情行为有效特征难以提取等问题,本文研究了基于视频分析和深度学习的奶牛发情检测方法,重点研究了复杂养殖环境下奶牛监控视频预处理方法、运动奶牛目标检测算法、基于AlexNet的奶牛行为识别模型、基于改进YOLO_v3的奶牛发情行为识别方法,为通过机器视觉检测奶牛发情信息提供了理论和技术支持。论文主要工作及结论如下:(1)对复杂环境下奶牛日常行为视频预处理的方法进行了对比试验,并将多种方法组合,减少了奶牛视频中的背景干扰,提高了奶牛目标与背景的对比度。为降低图像采集、传输过程中产生的均匀噪声、脉冲噪声和高斯噪声,采用双边滤波的方法进行去噪;为减弱光照变换、天气等因素的影响,采用分段线性变换对低亮度的视频图像进行对比度增强、采用Gamma变换(γ=0.5)对晴天正午时的视频图像进行对比度增强、采用直方图均衡化对雨雾天气下的视频图像进行对比度增强,试验结果表明,上述3种方法可显著提高视频图像中奶牛目标与背景的对比度。(2)提出了基于背景减除的运动奶牛目标检测算法。基于供试奶牛视频采集时摄像机位置固定,视频拍摄场景固定,采集到的奶牛视频前后帧背景相差不大的特点,选择对视频进行动态背景建模并及时更新,以准确检测出场景中的运动奶牛目标。在对帧差法、平均背景模型法、高斯混合模型法GMM以及视觉背景提取算法ViBe的理论和试验结果分析的基础上,从背景模型初始化、自适应半径阈值、背景模型更新方法3个方面对经典ViBe算法进行改进,提出一种基于改进ViBe算法的运动奶牛目标检测方法。在同一奶牛视频测试集下进行改进ViBe算法、经典ViBe算法和混合高斯模型的运动奶牛目标检测试验,结果表明,本文改进方法的平均查准率为82.66%,比经典ViBe算法和混合高斯模型法分别提高了4.94%和2.58%,本文改进方法的平均查全率为86.80%,比经典ViBe算法和混合高斯模型分别提高了4.93%和2.37%,在目标检测速度方面,本文改进方法的实时性指标为0.78(≤1认为满足实时性),经典ViBe算法的实时性指标为0.91,高斯混合模型法的实时性指标1.30,本文改进方法能够实现快速、准确地将运动奶牛目标从背景中检测出来。(3)构建了基于AlexNet的奶牛行为识别模型,对(2)中检测出的运动奶牛目标区域进行发情行为识别。对奶牛发情行为的识别,其本质是将奶牛行为视频帧图像分类为发情行为图像和非发情行为图像,为此,本文构建了基于AlexNet深度学习网络模型构建了奶牛发情行为识别分类器模型,并针对AlexNet网络结构庞大、参数数量多,训练时收敛速度慢的问题,对其进行了简化改进,模型训练后可精准分类奶牛爬跨等基本行为,分类的准确率为97.6%。用奶牛行为识别分类器模型结合(2)中的运动奶牛目标检测算法进行奶牛发情行为检测试验,结果表明,本文方法检测的准确率为100%,召回率为88.24%,具有较高的奶牛发情检测准确率,但方法的识别速度有待提高。(4)提出了一种基于改进YOLO_v3的奶牛发情行为识别模型。针对现有的奶牛发情检测方法多采用先进行奶牛目标检测、再对检出的目标区域进行发情行为识别的两阶段方式,存在干扰因素多、检测速度慢、检测准确率低的问题,为进一步提高奶牛发情行为的检测效率,结合奶牛视频数据特点,从锚点框尺寸集优化、特征提取网络改进以及边界框损失函数优化3个方面对YOLO_v3模型进行了改进,构建了一种端到端的奶牛发情行为识别方法模型。试验结果表明,对于相同的测试样本,本文模型的平均识别准确率为99.15%,召回率为97.62%,比YOLO_v3模型的准确率提高了2.63%,召回率提高了7.28%,与FasterRCNN模型相比,虽然识别准确率低了0.21%,但召回率提高了7.28%。本文模型识别速度为31f/s,能够满足对奶牛发情行为识别的实时性需求。