本帖最后由 Kara 于 2022-7-28 16:41 编辑
5.1 引言 进一步针对猪舍中的猪只进行监测,基于计算机视觉技术,利用猪舍中安装的监控视频,进行智能分析。对猪只智能分析的前提是同时对视频中多个猪只进行定位,并维持他们的身份标识ID,记录每个个体的轨迹。此类问题在计算机视觉领域属于多目标跟踪(MultipleObjectTracking,MOT)问题。多目标跟踪问题仍是一个开放的问题,面临多重挑战,如:个体频繁遮挡、轨迹交叉和外观高度相似等。多目标跟踪算法具有很强的通用性,可以迁移到相似任务中,广泛的应用是在行人与车辆跟踪,如SORT、Deep-SORT[60]。
在猪只目标跟踪上,首先要解决的就是猪只定位问题。目标检测算法发展迅速,通用目标检测问题已经得到了解决,检测效果如图5.1所示。但由于通用模型未包含猪只(Pig)一类,因此该类算法无法直接用于猪只检测,需要利用猪舍图像标注数据进行算法模型重新训练。 图5.1通用检测算法检测效果
其次,得到检测结果后,需要对视频图像中目标的矩形框进行身份关联。数据关联的本质是在目标检测的基础上寻找最优的关联目标对,从而形成一段连续的轨迹[61]。较为简单的一种方法,是用相邻两帧的检测结果进行重叠率计算(IntersectionOverUnion,IOU),目标对边界框(BoundingBox)的重叠率越高(接近1.0),说明前后两帧的检测目标是同一目标的可能性就越大,从而建立关联。IOU表示预测框和真实框交集部分面积与并集部分面积的比值,该值表示预测框与真实框的接近程度。
但单纯使用重叠率计算也会存在一些问题,如漏检、误检或遮挡问题,因此检测器的检测结果存在的误差将可能导致跟踪失败。一些研究人员提出,利用轨迹预测的方法修正检测器误差,如粒子滤波算法和卡尔曼滤波算法。
最后,为了得到猪只更细节的状态信息,本篇提出采用轻量化的分割算法。通过对猪只的检测结果图像块进行分割,进而得到猪只的精细轮廓,进一步得到猪只在视野中的像素面积比重。由于监控相机与猪舍之间相对静止,因此可以进行背景建模,进行尺寸标定,根据猪只体重与猪只在监控视野中所占面积,可以大致得到猪只的体重信息。
基于本篇所提的猪只检测算法,可以对猪只进行多种维度的分析,包括:猪群数量统计、猪群总体运动量分析、猪群体重估计和猪只异常行为分析等。
5.2 算法原理与设计 5.2.1 算法整体结构设计 本篇所提的猪只检测算法,主要解决三个任务,分别是:猪只检测、猪只跟踪与猪体分割。检测算法是跟踪与分割的基石,也是后续对猪只行为分析的基础,算法整体结构设计如图5.2所示。 图5.2算法整体结构设计
选用目标检测算法YOLOv4用于本文的猪只检测任务,该算法是在YOLOv1算法上经过多次改进而来,具有计算速度快、检测精度高的优点。利用猪只数据集对该算法进行训练,经过训练后能够实现实现
下一篇内容: 【IoT毕设.5.2】STM32+机智云AIoT+猪只检测算法设计 |