买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种基于Azure Kinect的羊只体尺体重获取系统及方法_河北农业大学_202310047701.X 

申请/专利权人:河北农业大学

申请日:2023-01-31

公开(公告)日:2024-01-12

公开(公告)号:CN116071417B

主分类号:G06T7/60

分类号:G06T7/60;G06T17/00;G06T7/33;G06T5/70;G06F17/18;A61B5/107;G01G17/08;G01G19/52;G01V1/00

优先权:

专利状态码:有效-授权

法律状态:2024.01.12#授权;2023.05.23#实质审查的生效;2023.05.05#公开

摘要:本发明公开了一种基于AzureKinect的羊只体尺体重获取系统及方法,属于体尺体重测量技术领域。本发明的羊只体尺体重获取系统包括:检测通道及围栏、超声波触发装置、两个深度相机和计算机;所述检测通道和围栏构成半封闭式前进通道;所述超声波触发装置由两个超声波传感器和一块stm32单片机组成,两个超声波传感器设置到前进通道的前后两端,前端为超声波传感器a,后端为超声波传感器b;所述两个深度相机安装在围栏上。采用本发明的系统,可以通过非接触的方式,快速、精确地重建出目标区域的三维模型,且根据三维模型计算出羊只的体尺参数和预估出羊只的体重数据,算法简单,计算量小,且可以达到较高的精度。

主权项:1.一种基于AzureKinect的羊只体尺体重获取系统,其特征在于,包括:检测通道及围栏、超声波触发装置、两个深度相机和计算机;所述检测通道和围栏构成半封闭式前进通道;所述超声波触发装置由两个超声波传感器和一块单片机组成,两个超声波传感器设置到前进通道的前后两端,前端为超声波传感器a,后端为超声波传感器b;所述两个深度相机安装在围栏上;采用上述所述的系统进行,步骤包括:1系统启动后,打开深度相机使其处于等待拍摄的状态;2超声波触发装置判断是否有羊只通过,若有羊只通过,单片机向计算机发出信号,计算机控制深度相机拍照;3根据深度相机获取的深度数据得到三维点云数据;4点云数据处理:利用体素网格滤波算法对点云进行下采样,利用约束条件去除背景点云,利用统计滤波去除噪声点云;5点云数据融合:基于相机相对位置进行初始配准,利用ICP算法在初次配准的基础上进行精细配准;所述初始配准的步骤为:①左右两侧的深度相机坐标系分别围绕各自X轴向左和向右旋转θ角,直到Y轴处于垂直于水平面的位置,此时左侧和右侧的深度相机坐标系的Z轴方向分别为水平向右和向左,经过坐标系旋转,深度相机获取的点云坐标位置如公式5所示: 其中,xL,yL,zL和xR,yR,zR分别表示左右两侧深度相机获取点云的原始坐标,x′L,y′L,z′L和x′R,y'R,z′R分别表示左右两侧坐标转换后的坐标;②步骤①得到的右侧深度相机坐标系沿竖直方向的Y轴,在XOZ平面中沿顺时针方向旋转180°,然后取当前X轴的负方向为正方向,使右侧深度相机的坐标轴方向与世界坐标系方向一致,右侧深度相机获取的点云坐标位置如公式6所示: 其中,x″R,y″R,z″R为经过步骤②之后右侧深度相机获取的点云的坐标;③步骤②得到的右侧深度相机坐标系向左移动Δl,使之与左侧的深度相机转换后的坐标系及坐标原点重叠,右侧深度相机获取的点云坐标系位置如公式7所示:xT,yT,zT=x″R,y″R,z″R-[0,0,Δl]7其中,x″R,y″R,z″R为经过步骤③之后右侧深度相机获取的点云的坐标;6利用RANSK算法去除两片点云中的地面点云;7获取羊只体尺,计算羊只体重;所述获取羊只体尺,包括如下步骤:①将羊只三维点云投影到XOY二维平面中,使得羊体朝向标准化,即头左,尾右为正方向;②提取羊只点云的轮廓,并使用高斯滤波去除噪声以及平滑轮廓曲线;③将轮廓划分为三个区间:x1,y1为羊只头顶坐标;x2,y2为羊只尾部坐标,x1+x22,y3、x1+x22,y4分别为水平中垂线与羊只躯干点云的交点坐标,x3,y5为y=y4与羊只最左端的交点坐标;根据上述坐标点,利用公式10-12将羊只二维轮廓划分为3个区间,其中区间1包含左半部分背部点云,区间2包含胸部点云,区间3包含后半部分背部点云; ④用三次B样条曲线算法对区间轮廓进行曲线拟合,B样条曲线如公式13所示: 其中,P0、P1、P2、P3为控制点,t为自变量;⑤羊只体尺参数测量点提取:A.耆甲点在轮廓线上表现为羊只脖颈的凸出处,在B样条曲线上以波峰的形式表现,通过波峰、波谷检测法检测耆甲点xq,yq;B.采用局部曲率检测法,计算曲率最大的点即为坐骨端后缘点xzd,yzd,曲率采用海伦-秦九韶公式计算;C.坐骨结节最后隆突点xzt,yzt在背部右半侧最高处,在区间3中找到Y轴坐标的最大值;D.将区间2内数据点的首、尾点相连构成一条直线,计算区间2内的点到该条直线的距离,取距离最大的点作为肩胛前端测量点xjq,yjq;E.胸深测量点在耆甲点后端的腹部,计算方法如下:a.根据公式14筛选羊只轮廓线中所有符合要求的点; 其中,xq为耆甲点的横坐标;b对于步骤a中得到的点集中的任意一点x',y'根据公式15规定的范围搜索纵坐标最大的对应点;按照这种方法对步骤a中所有点进行遍历,得到点集Pcm; 其中,为羊只三维模型的点云距离,如公式9所示;c.根据公式16和点集Pcm,得到胸深测量点坐标: 其中,xcd,ycd为胸深测量点坐标,xi,yi为点集Pcm的坐标,n为点集Pcm中点的数量;⑥根据得到的体尺参数测量点,利用公式17计算体高、体长、胸深、臀高: 其中,Lwh为体高,yd为地面所在平面的纵坐标,Lbl为体长,Lcd为胸深,LHh为臀高;使用三次B样条曲线拟合并补齐胸围轮廓,根据拟合后的轮廓曲线,利用欧式距离公式计算相邻两个点云之间的距离,最后将所有距离相加记为胸围,如公式18所示: 其中,LB为胸围,xm,ym,xm+1,ym+1为两个相邻的点云坐标;8返回步骤2,测量下一羊只体尺体重。

全文数据:

权利要求:

百度查询: 河北农业大学 一种基于Azure Kinect的羊只体尺体重获取系统及方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。