论文部分内容阅读
牛只的生长发育状况以及选种育种都是通过牛的体尺数据进行判断的。而在传统测量方法中,牛只体尺数据的测量大多都是工作人员使用传统工具徒手进行接触式测量。这样的测量方法,工作量大,任务量极其繁重。近年来,随着机器视觉技术的发展,越来越多的研究人员将机器视觉技术应用于家畜的体尺测量。在家畜的轮廓提取问题上,大多数研究都采用背景差分法以及阈值分割法。然而在实际环境中,这些方法经常会受到牲畜颜色以及光线的影响,导致无法精准的将目标家畜的轮廓曲线提取出来。因此,单一的彩色图像在真实环境下无法准确获取牛体空间轮廓曲线。针对上述家畜存在颜色以及光线干扰导致无法精准分割的问题,本文采用了基于深度学习的目标分割方法,设计了一套非接触式牛只体尺测量系统。首先,搭建实验测量平台,划分测量区域并计算测量区域的标定参数用于后续体尺计算。然后采集牛只原始图像,利用已经训练好的Mask R-CNN目标分割模型,对采集得到的原始彩色图像进行处理生成的具有掩码信息的掩码图像,精准提取出牛体闭合轮廓曲线。针对获取到的轮廓曲线从左往右逐行扫描确定前、后足点。接下来利用分区法将轮廓曲线分为A、B、C三个区域,分别在三个分区中寻找特征区域、体尺测点。此外,在特征点提取中,由于轮廓边缘是由无数个离散点组成的,为克服数字图像的离散性,采用U弦长曲率法在特征区域内进行曲率计算,计算得到的曲率最大点即为体尺测点。最后利用标定好的参数以及计算得到的体尺测点进行体尺计算。本文提出基于Mask R-CNN牛体尺测量方法,该方法基于Ubuntu系统下,使用Pytorch深度学习框架、利用PyQt5,将图像采集模块、Mask R-CNN分割模块、轮廓提取模块、计算体尺测点模块以及体尺数据模块相结合,设计了牛体尺测量系统软件界面,实现了非接触式的牛体体尺测量。通过实验验证,该系统测量牛体体高相对误差低于5.15%,体长相对误差为6.74%,体斜长相对误差不超过8.09%。