牲畜体尺测量方法、电子设备及存储介质

未命名 09-22 阅读:69 评论:0


1.本发明属于畜牧设施技术领域,涉及图像处理技术,尤其涉及一种牲畜体尺测量方法、电子设备及存储介质。


背景技术:

2.在牲畜饲养管理过程中,牲畜体尺参数可以反应牲畜生长发育情况、生产性能和遗传特征。因此,研究体尺参数测量及其形态评价是决定牲畜合理养殖和提高养殖效益的有效途径。
3.长期以来,养殖场中主要依靠卷尺、测量杆和测量仪等仪器,人工手动测量牲畜体尺参数。在进行牲畜体尺数据采集时,对牲畜站姿要求严格。这些原因导致了人工测量方式工作量大、效率低,且人工测量方式具有较强的主观性,在直接接触牲畜进行测量时,牲畜可能会产生应激反应,影响其生产性能和生长发育。另外,人与牲畜的直接接触,也增加了人畜共患病的传播几率。


技术实现要素:

4.本发明提供一种牲畜体尺测量方法、电子设备及存储介质,搭建基于深感相机的数据采集平台,通过神经网络、映射原理和三维点云处理技术等研究牲畜自动检测关键点的方法,计算牲畜体尺参数,为牲畜的自动化体尺测量等提供理论依据和技术支撑,推动现代养殖场智能化发展。
5.本发明提供一种牲畜体尺测量方法,包括如下步骤:s1、搭建采集平台:以四周添加护栏的形式围成采集区域,牲畜位于所述采集区域,在所述采集区域两侧设置深感相机;s2、采用两侧的所述深感相机对牲畜进行数据采集,获得牲畜的彩色图像和原始点云数据;s3、对步骤s2获取的原始点云数据进行预处理,去除噪声点云数据,获得去噪点云信息;s4、对步骤s3得到的去噪点云信息进行点云配准,构建完整牲畜三维模型;s5、在步骤s2获得的彩色图像上标注牲畜体尺关键点,采用deeplabcut算法识别所述关键点,确定标注的关键点在彩色图像上的二维坐标;s6、将步骤s5确定的关键点的二维坐标映射到步骤s4构建的牲畜三维模型中,获得关键点在牲畜三维模型中的三维坐标;s7、利用步骤s6中获得的关键点在牲畜三维模型中的三维坐标,结合空间距离公式进行牲畜体尺计算。
6.根据本发明提供的牲畜体尺测量方法,步骤s3中对原始点云数据进行预处理具体过程如下:s31、对原始点云数据进行体素下采样处理,获得下采样点云数据;
s32、在步骤s31的下采样点云数据基础上进行离群点噪声去除处理;s33、在经过步骤s32处理后的点云数据中去除背景栏杆的点云数据。
7.根据本发明提供的牲畜体尺测量方法,步骤s4中的点云配准过程为:基于深感相机内外参数计算出变换矩阵,然后使用迭代最近点算法对预处理后的去噪点云信息进行点云精配准,构建成完整牲畜三维模型。
8.根据本发明提供的牲畜体尺测量方法,基于深感相机内外参数计算出变换矩阵的具体过程为:s41、使用纯蓝色平面贴纸作为标定物,放置在两侧深感相机拍摄范围内,采集深感相机拍摄的标定物的彩色图,以及深感相机拍摄的标定物的深度图像;s42、在彩色图分离出蓝色区域,生成二值化的掩膜图像,掩膜图像上的白色区域对应为彩色图的蓝色区域,掩膜图像上的黑色区域对应为彩色图的非蓝色区域;s43、将掩膜图像上的白色区域映像至对应的深感相机拍摄的标定物的深度图像上,结合相机内参数,匹配彩色图的蓝色区域对应深度图像上的点云信息,生成初始旋转矩阵与初始平移矩阵;s44、以一侧深感相机的世界坐标系作为主坐标,通过对初始旋转矩阵以及初始平移矩阵关系矩阵数值进行迭代计算和调整,实现两侧深感相机点云完全重合,记录调整后的旋转矩阵r与平移矩阵t,r与t的关系如公式1所示: 公式1。
9.根据本发明提供的牲畜体尺测量方法,迭代计算和调整初始旋转矩阵以及初始平移矩阵关系矩阵数值的方法如下:将彩色图的蓝色区域对应深度图像上的点云信息记作待配准点云p和待配准点云q,在待配准点云p中任意选择一点,记为,从待配准点云q中查找一个距离欧氏距离最短的点,记为,和为对应点,采用公式2进行多次迭代和调整,实现待配准点云p和待配准点云q重合,
ꢀꢀ
公式2最终获得调整后的旋转矩阵r与平移矩阵t。
10.根据本发明提供的牲畜体尺测量方法,步骤s5中,采用deeplabcut算法识别所述关键点的过程为:s51、提取需标记的多帧彩色图像,置于deeplabcut项目管理器中;s52、使用标记工具在步骤s51提取的彩色图像上进行人工标注牲畜体尺关键点,生成训练数据集;
s53、对步骤s52生成的训练数据集进行网络模型训练,进而确关键点在彩色图像中的二维坐标。
11.根据本发明提供的牲畜体尺测量方法,步骤s5中牲畜体尺关键点至少包括:在左侧深感相机获取的彩色图像上进行人工标注的耆甲点、坐骨结节点、肩部左侧最宽点、臀部左侧最宽点、髋骨中心点、耆甲点地面映射点和髋骨中心点地面映射点;在右侧深感相机获取的彩色图像上进行人工标注的耆甲点、坐骨结节点、肩部右侧最宽点、臀部右侧最宽点、髋骨中心点、耆甲点地面映射点和髋骨中心点地面映射点。
12.根据本发明提供的牲畜体尺测量方法,步骤s7中的牲畜体尺包括体长、体宽、臀宽、体高和臀高5项体尺参数中的至少一种,其中:所述耆甲点到所述髋骨中心点的距离与所述髋骨中心点到所述坐骨结节点的距离之和为所述体长;所述肩部左侧最宽点到所述肩部右侧最宽点的距离为所述体宽;所述臀部左侧最宽点到所述臀部右侧最宽点的距离为所述臀宽;所述耆甲点到地面的垂直距离为所述体高;所述髋骨中心点到地面的垂直距离为所述臀高。
13.根据本发明提供的牲畜体尺测量方法,步骤s6中,将步骤s5确定的关键点的二维坐标映射到步骤s4构建的牲畜三维模型中之前要先进行偏移点坐标优化,具体操作方法为:s61、采用两侧的所述深感相机对牲畜进行数据采集,获得牲畜的深度图像;s62、人工识别步骤s5确定的关键点的二维坐标,确定哪些关键点为偏移点;s63、以步骤s61确定的偏移点在步骤s61获得的深度图像中的像素坐标为中心,向外扩张一个矩形像素区域,计算矩形像素区域的深度数据集合,用集合内的非零最小值替换偏移点的深度值,优化偏移点坐标。
14.根据本发明提供的牲畜体尺测量方法,所述矩形像素区域为像素的矩形区域,其中,d为大于0的自然数,从d=1像素开始计算,不断改变d,并以偏移点的深度值作为比对,直到扩张后的矩形区域内的深度值包含偏移点的深度值,然后停止扩张,计算矩形像素区域的深度数据集合。
15.本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述牲畜体尺测量方法。
16.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述牲畜体尺测量方法。
17.本发明提供的牲畜体尺测量方法、电子设备及存储介质,是一种非接触式牲畜体尺测量方法,搭建基于深感相机的数据采集平台,通过神经网络、映射原理和三维点云处理技术等研究牲畜自动检测关键点的方法,计算牲畜体尺参数,精准测量出各姿态牲畜的体尺参数,减少体尺测量中的限制因素,提高牲畜体尺测量的精度与检测速度,增加体尺测量算法的实用性,为牲畜的自动化体尺测量等提供理论依据和技术支撑,推动现代养殖场智能化发展。
附图说明
18.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1是本发明提供的牲畜体尺测量方法的流程示意图之一;图2是本发明提供的牲畜体尺测量方法的流程示意图之二;图3是本发明提供的牲畜体尺测量方法的步骤s3的原始点云数据进行预处理的流程示意图;图4是本发明提供的牲畜体尺测量方法的步骤s4的点云配准过程示意图;图5是本发明提供的牲畜体尺测量方法的步骤s5的识别关键点过程示意图;图6是本发明实施例中不同主干网络关键点检测结果对比的模型训练过程损失函数;图7是本发明提供的电子设备的结构示意图。
具体实施方式
20.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.本发明一个具体实施例提供一种牲畜体尺测量方法,参见图1和图2所示,包括如下步骤:s1、搭建采集平台:以四周添加护栏的形式围成矩形采集区域,牲畜位于采集区域,在采集区域左右两侧设置深感相机;s2、采用两侧的深感相机对牲畜进行数据采集,获得牲畜的彩色图像和原始点云数据;s3、对步骤s2获取的原始点云数据进行预处理,去除噪声点云数据,获得去噪点云信息;s4、对步骤s3得到的去噪点云信息进行点云配准,构建完整牲畜三维模型;s5、在步骤s2获得的彩色图像上标注牲畜体尺关键点,采用deeplabcut算法识别关键点,确定标注的关键点在彩色图像上的二维坐标;s6、将步骤s5确定的关键点的二维坐标映射到步骤s4构建的牲畜三维模型中,获得关键点在牲畜三维模型中的三维坐标;s7、利用步骤s6中获得的关键点在牲畜三维模型中的三维坐标,结合空间距离公式进行牲畜体尺计算。
22.本实施例的牲畜体尺测量方法,无需人工接触牲畜,通过双深感相机采集不同视角局部点云,由采集设备传送到控制计算机。左右两个视角的三维点云去除噪声点,结合深度信息的特性结合特征物体颜色特性获取初始矩阵,完成不同视角坐标系下点云配准,重构牲畜三维模型,依据deeplabcut算法和映射原理获取牲畜关键点位置及坐标,结合欧氏
距离公式实现牲畜多项体尺数据精确估算,减少体尺测量中的限制因素,提高牲畜体尺测量的精度与检测速度,增加体尺测量算法的实用性,为牲畜的自动化体尺测量等提供理论依据和技术支撑,推动现代养殖场智能化发展。
23.上述实施例提供的牲畜体尺测量方法,其中,由于环境和深感相机本身的限制,步骤s2获得的初始点云包含大量的离群点和设施噪声点。本实施例步骤s3通过点云下采样、点云噪声去除和背景栏杆去除处理算法,只保留牲畜和地面点云,提升牲畜点云配准精度和速度,参见图3所示,预处理过程包括:s31、为保留点云的主要特征和形状信息,降低点云复杂度和存储空间,对原始点云数据进行体素下采样:依据数据采集平台尺寸分别设置点云数据的x轴、y轴、z轴取值范围,将取值范围内的点云数据离散成合适大小的三维体素网格,其中包含m个点,根据下列公式3计算非空体素的质心 代替原始点云数据体素内的所有点,实现点云下采样。
24.公式3s32、为去除光照、风速等原因造成的离群值,本步骤采用统计离群点移除法,通过计算上述步骤s31中每个非空体素的质心点到最近k个近邻点的平均距离d和距离阈值筛选离群点。当点满足时,则判断该点为离群点进行去除。
25.距离阈值的计算方式如公式4所示。
26.公式4式中,为所有距离的平均值;为所有距离的标准差;为标准差乘数。
27.s33、为去除背景栏杆的点云数据,提高关键点检测精度,本步骤利用欧氏聚类法提取点数最小的类即为牲畜点云数据。将点云数据中的点分成n个类,合并类间距最小的两个类构建新类g,通过公式5计算g与其它各类的最短距离,得到牲畜个体和地面部分的点云数据。
28.公式5其中,表示第个类和第个类之间的欧氏距离;分别表示类中的点。
29.本发明上述实施例提供的牲畜体尺测量方法中,参见图4所示,步骤s4中的点云配准过程为:基于深感相机内外参数计算出变换矩阵,然后使用迭代最近点算法对预处理后的去噪点云信息进行点云精配准,构建成完整牲畜三维模型。
30.由于使用深感相机拍摄时,已做好相机内参数标定,包含深感相机光心坐标、焦距、畸变系数等,无需额外进行内参数标定。对于深感相机外参数标定通常选用张正友标定
法,需要借助棋盘格进行标定,但由于操作过程较为繁琐,本实施例借助相机具备深度信息的特性结合待测物颜色特性,获取待测物的点云信息。运用点云配准算法获取旋转矩阵、平移矩阵等相机外参数。
31.具体地,基于深感相机内外参数计算出变换矩阵的具体过程为:s41、使用一个平面特征物体,表面粘贴纯色贴纸(下面使用纯蓝色举例),无需考虑贴纸大小或者是否规整问题,保证两台相机的视野都能拍摄到贴纸;使用纯蓝色平面贴纸作为标定物,放置在两侧深感相机拍摄范围内,采集深感相机拍摄的标定物的彩色图以及深感相机拍摄的标定物的深度图像;s42、在彩色图分离出蓝色区域,生成二值化的掩膜图像,掩膜图像上的白色区域对应为彩色图的蓝色区域,掩膜图像上的黑色区域对应为彩色图的非蓝色区域;s43、将掩膜图像上的白色区域映像至对应的深感相机拍摄的标定物的深度图像上,结合相机内参数,匹配彩色图的蓝色区域对应深度图像上的点云信息,生成初始旋转矩阵与初始平移矩阵;s44、以一侧深感相机的世界坐标系作为主坐标,通过对初始旋转矩阵以及初始平移矩阵关系矩阵数值进行迭代计算和调整,实现两侧深感相机点云完全重合,记录调整后的旋转矩阵r与平移矩阵t,r与t的关系如公式1所示:公式1迭代计算和调整初始旋转矩阵以及初始平移矩阵关系矩阵数值的方法如下:将彩色图的蓝色区域对应深度图像上的点云信息记作待配准点云p和待配准点云q,在待配准点云p中任意选择一点,记为,从待配准点云q中查找一个距离欧氏距离最短的点,记为,和为对应点,得出变换矩阵,经过多次迭代,最终获得最理想的变换矩阵,利用最近点迭代算法(iterative closest point,icp)实现p、q两点云重合,最终获得调整后的旋转矩阵r与平移矩阵t。迭代停止的条件如下公式2所示:公式2本发明上述实施例提供的牲畜体尺测量方法中,参见图5所示,步骤s5中采用deeplabcut算法识别关键点的过程为:s51、提取需标记的多帧彩色图像,置于deeplabcut项目管理器中;s52、使用标记工具在步骤s51提取的彩色图像上进行人工标注牲畜体尺关键点,生成训练数据集;s53、对步骤s52生成的训练数据集进行网络模型训练,进而确关键点在彩色图像中的二维坐标。
32.上述deeplabcut算法是一个深度卷积网络,结合了对象识别和语义分割算法中,包含预先训练的resnets和反卷积层,权重在大规模数据集imagenet上训练。参见图5所示,首先,在原有的网络基础上去除resnet结构的分类层,使用反卷积层对视觉信息进行上采样,并产生空间概率密度,概率密度代表了某个身体部位所处的特定位置。在训练过程中,权重以迭代的方式进行调整,基础骨架模型进行了4次下采样,反卷积进行了1次上采样,最终,网络进行了3次下采样。上采样后获得具有关键点分布情况的特征图,并依据呈现出的关键点概率密度情况和向量趋势数据,进而确定关键点具体位置,获取关键点二维坐标。
33.为获取牲畜关键点检测最佳模型,本实施例选取deeplabcut算法中的resnet-50、resnet-101、resnet-152、mobilenet v2-1.0、mobilenet-v2-0.75、mobilenet-v2-0.5、mobilenet-v2-0.35、efficientnet-b0和efficientnet-b3九个主干网络分别训练,选取最优deeplabcut算法主干网络模型。九种主干网络模型训练过程的损失函数如图6所示。由图6可知,9个模型均在迭代30000次时收敛,且网络损失值由小到大呈现为efficientnet系列、resnet系列、mobilenet系列。efficientnet-b3模型在整个训练过程中一直保持最低的损失值。
34.下述记载的表1为9种主干网络模型的性能对比表,对比模型处理速度、内存占用量及检测误差可发现,resnet模型系列的关键点检测误差较大,且模型内存占用量较大,检测速度除resnet-152网络外均无明显优势;efficientnet模型系列在模型处理速度和关键点检测误差均无明显优势;mobilenet系列模型性能较高,其中mobilenet-v2-0.75处理速度可达16.5f/s,但关键点检测误差稍高,精度难以保证,更适合时效性要求高于准确度要求的研究领域;mobilenet-v2-0.35模型内存占用量最少,且该模型在测试集上的误差最小,适合用于高精度测量,因此选用mobilenet-v2-0.35网络模型作为deeplabcut算法的主干网络。
35.表1 不同主干网络模型性能对比
36.本发明上述实施例提供的牲畜体尺测量方法中,步骤s5中牲畜体尺关键点包括但不限于以下关键点:在左侧深感相机获取的彩色图像上进行人工标注的耆甲点、坐骨结节点、肩部左侧最宽点、臀部左侧最宽点、髋骨中心点、耆甲点地面映射点和髋骨中心点地面映射点;在右侧深感相机获取的彩色图像上进行人工标注的耆甲点、坐骨结节点、肩部右侧最宽点、臀部右侧最宽点、髋骨中心点、耆甲点地面映射点和髋骨中心点地面映射点。
37.继而,步骤s7中的牲畜体尺至少包括体长、体宽、臀宽、体高和臀高5项体尺参数,其中:耆甲点到髋骨中心点的距离与髋骨中心点到坐骨结节点的距离之和为体长;肩部左侧最宽点到肩部右侧最宽点的距离为体宽;臀部左侧最宽点到臀部右侧最宽点的距离为臀宽;耆甲点到地面的垂直距离为体高;髋骨中心点到地面的垂直距离为臀高。
38.以上体尺关键点的选取以及获取的体尺参数为基本参数信息,还可以有其他关键点的选取和体尺参数的获取,比如以羊只为例,体尺参数可以有体高、臀高、体长、胸高、胸围、腰角宽、耳长、臀端宽、头宽、尻长、头长、腹围、管围、鼻口部周长和胸宽等体尺数据参数,根据需要测量的体尺参数来确定需要进行人工标注的关键点,因此本发明的牲畜体尺测量方法在选取关键点的时候可根据最终要获取的体尺参数进行选取,包括但不限于体长、体宽、臀宽、体高和臀高,可适用于各种牲畜的体尺测量,而且也可推广应用于禽类的体尺测量。
39.获取彩色图像上的关键点位置和信息坐标后,将其映射到牲畜三维模型中,在依据其配准矩阵与映射后坐标信息计算牲畜体尺参数,利用深感相机的内参计算出深度帧空间和世界空间的对应关系。假设点p是深度图像中的关键点,其在相机空间中对应的3d点为
pc。点p和点pc之间的关系如公式6所示:公式6其中(u,v)和(x,y)分别是p的像素坐标和图像坐标,是相机空间中的三维坐标,是图像中心的像素坐标,f是相机的焦距。本步骤可以将整个帧从rgb图像映射到深度帧,包括将颜色帧映射到相机空间的功能。整个映射过程可以理解为两个输入和三个输出输出的过程,输入的为二维平面a1中的二维坐标(x1,y1),输出为三维空间b2中的三维坐标(x2,y2,z2),即f(x1,y1)=(x2,y2,z2)。一般情况下,a1平面的z1轴高度即为z2,函数表达式可表达为f(x1,y
1,
z1)=(x2,y2,z2),若z2值已知,即为f(x1,y1)=(x2,y2),简化成两个输入与两个输出的问题。坐标转换过程中,通过不断的旋转、平移、拉伸和压缩,使得二维图像中所有点都能与三维点云中的点相对应。由于该过程始终为均匀变化,因此,只需确定平面上两个点和三维点云上两个确定点重合,其他点也将重合。即判断出平面伸缩、平移和旋转的规律,依据变化前平面上某一随机的点,就可计算出平面变化后这个点会与三维点云中的哪个点重合。
40.采集图像过程中,牲畜腹部与地面区域存在重合,导致牲畜部分深度值缺失,上述通过deeplabcut算法识别的部分关键点偏移,因此,在本实施例中,步骤s6中,将步骤s5确定的关键点的二维坐标映射到步骤s4构建的牲畜三维模型中之前要先进行偏移点坐标优化,具体操作方法为:s61、采用两侧的深感相机对牲畜进行数据采集,获得牲畜的深度图像(在步骤s2获取牲畜的彩色图像和原始点云数据时候,同时获取牲畜的深度图像);s62、人工识别步骤s5确定的关键点的二维坐标,确定哪些关键点为偏移点;s63、以步骤s61确定的偏移点在步骤s61获得的深度图像中的像素坐标为中心,向外扩张一个矩形像素区域,计算矩形像素区域的深度数据集合,用集合内的非零最小值替换偏移点的深度值,优化偏移点坐标。
41.矩形像素区域为像素的矩形区域,其中,d为大于0的自然数,从d=1像素开始计算,不断改变d,并以偏移点的深度值作为比对,直到扩张后的矩形区域内的深度值包含偏移点的深度值,然后停止扩张,计算矩形像素区域的深度数据集合。
42.优化偏移点坐标后,结合空间距离公式进行体长、体宽、臀宽和臀高、体高数据的计算,部署边缘计算实现数据的实时采集与计算。
43.结合地面方程和各体尺参数对应的关键点坐标计算牲畜体长、体宽、臀宽、体高和臀高5项参数。设地面平面方程为,牲畜体尺关键点耆甲点,髋骨中心点坐标为,坐骨结节点,肩部和臀部两侧关键点为和。
44.牲畜点云数据中,耆甲点到髋骨中心点和髋骨中心点到坐骨结节点的距离之和为体长l,依据欧氏距离公式计算如下公式7所示:公式7左右两侧肩部、臀部关键点之间的距离分别为体宽和臀宽,依据欧式距离公式计算牲畜宽度参数w,如下公式8所示:公式8耆甲点和髋骨中心点到地面的垂直距离分别为体高和臀高,牲畜高度参数h计算公式,如下公式9所示:公式9以下,以羊只体尺测量为例验证本发明提供的牲畜体尺测量方法,为获取羊只体尺参数,使用deeplabcut算法检测羊只关键点,结合欧式距离公式计算。利用人工标注方法和本研究体尺测点提取方法,在获取测试数据的基础上,针对每只羊选取50组rgb-d图像进行体长、体宽、臀宽和体高、臀高测量,50组测量结果的平均值作为各体尺参数的真实值。每只羊人工测量三次,取三次测量结果的平均值作为真实值,羊只体尺测量真实值与实际值的结果如表2所示。
45.表2 体尺测量实际值与真实值结果对比表

46.由表2可知,体长的平均绝对误差为1.20cm,体宽的平均绝对误差为0.68cm,臀宽的平均绝对误差为0.63cm,体高的平均绝对误差为0.94cm,臀高的平均绝对误差为0.79cm。其中,6号羊的体高误差较大,主要原因是深度相机分辨率较高,数据采集时存在少量粉尘在羊体上空漂浮,体高关键点提取方法误将粉尘误认为羊体躯干上一部分,将粉尘到深度相机平面的距离看作是羊体到相机平面的距离,体高关键点选取错误。2号羊的体宽误差较大,主要原因是,数据采集时阳光照射较强,导致彩色图像和羊只点云图像的肩部关键点区域信息缺失。
47.本发明还提供一种电子设备,如图7所示,该电子设备可以包括:处理器(processor)、通信接口(communications interface)、存储器(memory)和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信。处理器可以调用存储器中的逻辑指令,以执行上述实施例提供的牲畜体尺测量方法。
48.此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
49.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行
时,计算机能够执行上述各方法所提供的牲畜体尺测量方法。
50.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的牲畜体尺测量方法。
51.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
52.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
53.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术特征:
1.一种牲畜体尺测量方法,其特征在于,包括如下步骤:s1、搭建采集平台:以四周添加护栏的形式围成采集区域,牲畜位于所述采集区域,在所述采集区域两侧设置深感相机;s2、采用两侧的所述深感相机对牲畜进行数据采集,获得牲畜的彩色图像和原始点云数据;s3、对步骤s2获取的原始点云数据进行预处理,去除噪声点云数据,获得去噪点云信息;s4、对步骤s3得到的去噪点云信息进行点云配准,构建完整牲畜三维模型;s5、在步骤s2获得的彩色图像上标注牲畜体尺关键点,采用deeplabcut算法识别所述关键点,确定标注的关键点在彩色图像上的二维坐标;s6、将步骤s5确定的关键点的二维坐标映射到步骤s4构建的牲畜三维模型中,获得关键点在牲畜三维模型中的三维坐标;s7、利用步骤s6中获得的关键点在牲畜三维模型中的三维坐标,结合空间距离公式进行牲畜体尺计算。2.根据权利要求1所述的牲畜体尺测量方法,其特征在于,步骤s3中对原始点云数据进行预处理具体过程如下:s31、对原始点云数据进行体素下采样处理,获得下采样点云数据;s32、在步骤s31的下采样点云数据基础上进行离群点噪声去除处理;s33、在经过步骤s32处理后的点云数据中去除背景栏杆的点云数据。3.根据权利要求1所述的牲畜体尺测量方法,其特征在于,步骤s4中的点云配准过程为:基于深感相机内外参数计算出变换矩阵,然后使用迭代最近点算法对预处理后的去噪点云信息进行点云精配准,构建成完整牲畜三维模型。4.根据权利要求3所述的牲畜体尺测量方法,其特征在于,基于深感相机内外参数计算出变换矩阵的具体过程为:s41、使用纯蓝色平面贴纸作为标定物,放置在两侧深感相机拍摄范围内,采集深感相机拍摄的标定物的彩色图,以及深感相机拍摄的标定物的深度图像;s42、在彩色图分离出蓝色区域,生成二值化的掩膜图像,掩膜图像上的白色区域对应为彩色图的蓝色区域,掩膜图像上的黑色区域对应为彩色图的非蓝色区域;s43、将掩膜图像上的白色区域映像至对应的深感相机拍摄的标定物的深度图像上,结合相机内参数,匹配彩色图的蓝色区域对应深度图像上的点云信息,生成初始旋转矩阵与初始平移矩阵;s44、以一侧深感相机的世界坐标系作为主坐标,通过对初始旋转矩阵以及初始平移矩阵关系矩阵数值进行迭代计算和调整,实现两侧深感相机点云完全重合,记录调整后的旋转矩阵r与平移矩阵t,r与t的关系如公式1所示:
ꢀꢀ
公式1。5.根据权利要求4所述的牲畜体尺测量方法,其特征在于,迭代计算和调整初始旋转矩阵以及初始平移矩阵关系矩阵数值的方法如下:将彩色图的蓝色区域对应深度图像上的点云信息记作待配准点云p和待配准点云q,在待配准点云p中任意选择一点,记为,从待配准点云q中查找一个距离欧氏距离最短的点,记为,和为对应点,采用公式2进行多次迭代和调整,实现待配准点云p和待配准点云q重合,
ꢀꢀ
公式2最终获得调整后的旋转矩阵r与平移矩阵t。6.根据权利要求1所述的牲畜体尺测量方法,其特征在于,步骤s5中,采用deeplabcut算法识别所述关键点的过程为:s51、提取需标记的多帧彩色图像,置于deeplabcut项目管理器中;s52、使用标记工具在步骤s51提取的彩色图像上进行人工标注牲畜体尺关键点,生成训练数据集;s53、对步骤s52生成的训练数据集进行网络模型训练,进而确关键点在彩色图像中的二维坐标。7.根据权利要求6所述的牲畜体尺测量方法,其特征在于,步骤s5中牲畜体尺关键点至少包括:在左侧深感相机获取的彩色图像上进行人工标注的耆甲点、坐骨结节点、肩部左侧最宽点、臀部左侧最宽点、髋骨中心点、耆甲点地面映射点和髋骨中心点地面映射点;在右侧深感相机获取的彩色图像上进行人工标注的耆甲点、坐骨结节点、肩部右侧最宽点、臀部右侧最宽点、髋骨中心点、耆甲点地面映射点和髋骨中心点地面映射点。8.根据权利要求7所述的牲畜体尺测量方法,其特征在于,步骤s7中的牲畜体尺包括体长、体宽、臀宽、体高和臀高5项体尺参数中的至少一种,其中:所述耆甲点到所述髋骨中心点的距离与所述髋骨中心点到所述坐骨结节点的距离之和为所述体长;所述肩部左侧最宽点到所述肩部右侧最宽点的距离为所述体宽;所述臀部左侧最宽点到所述臀部右侧最宽点的距离为所述臀宽;所述耆甲点到地面的垂直距离为所述体高;所述髋骨中心点到地面的垂直距离为所述臀高。9.根据权利要求1所述的牲畜体尺测量方法,其特征在于,步骤s6中,将步骤s5确定的关键点的二维坐标映射到步骤s4构建的牲畜三维模型中之前要先进行偏移点坐标优化,具体操作方法为:s61、采用两侧的所述深感相机对牲畜进行数据采集,获得牲畜的深度图像;
s62、人工识别步骤s5确定的关键点的二维坐标,确定哪些关键点为偏移点;s63、以步骤s61确定的偏移点在步骤s61获得的深度图像中的像素坐标为中心,向外扩张一个矩形像素区域,计算矩形像素区域的深度数据集合,用集合内的非零最小值替换偏移点的深度值,优化偏移点坐标。10.根据权利要求9所述的牲畜体尺测量方法,其特征在于,所述矩形像素区域为像素的矩形区域,其中,d为大于0的自然数,从d=1像素开始计算,不断改变d,并以偏移点的深度值作为比对,直到扩张后的矩形区域内的深度值包含偏移点的深度值,然后停止扩张,计算矩形像素区域的深度数据集合。11.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至10任一项所述牲畜体尺测量方法。12.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10任一项所述牲畜体尺测量方法。

技术总结
本发明属于畜牧设施技术领域,尤其涉及一种牲畜体尺测量方法、电子设备及存储介质,搭建基于深感相机的数据采集平台,通过神经网络、映射原理和三维点云处理技术等研究牲畜自动检测关键点的方法,计算牲畜体尺参数,精准测量出各姿态牲畜的体尺参数,减少体尺测量中的限制因素,提高牲畜体尺测量的精度与检测速度,增加体尺测量算法的实用性,为牲畜的自动化体尺测量等提供理论依据和技术支撑,推动现代养殖场智能化发展。代养殖场智能化发展。代养殖场智能化发展。


技术研发人员:王海峰 李斌 朱芷芫 赵宇亮 贾楠
受保护的技术使用者:北京市农林科学院智能装备技术研究中心
技术研发日:2023.08.11
技术公布日:2023/9/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐