CN112712590B - 一种动物点云生成方法及系统 - Google Patents

一种动物点云生成方法及系统 Download PDF

Info

Publication number
CN112712590B
CN112712590B CN202110057408.2A CN202110057408A CN112712590B CN 112712590 B CN112712590 B CN 112712590B CN 202110057408 A CN202110057408 A CN 202110057408A CN 112712590 B CN112712590 B CN 112712590B
Authority
CN
China
Prior art keywords
point cloud
point
target
view
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110057408.2A
Other languages
English (en)
Other versions
CN112712590A (zh
Inventor
刘刚
冯凡
司永胜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Agricultural University
Original Assignee
China Agricultural University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Agricultural University filed Critical China Agricultural University
Priority to CN202110057408.2A priority Critical patent/CN112712590B/zh
Publication of CN112712590A publication Critical patent/CN112712590A/zh
Application granted granted Critical
Publication of CN112712590B publication Critical patent/CN112712590B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/32Indexing scheme for image data processing or generation, in general involving image mosaicing

Abstract

本发明提供一种动物点云生成方法及系统,包括:根据俯视点云,确定目标动物的脊线中点;以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;获取每个目标点在球体上的镜像点;根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。本发明提供的动物点云生成方法及系统,根据俯视点云确定球心、根据侧视点云确定半径,创建每个侧视点云中各目标点对应的映射球体,进而对每个侧视点云作镜像处理,稳定、精准的还原目标动物一侧不便采集的点云数据,实现对目标动物全视角三维点云的确定,为目标动物的体尺体重测量等应用奠定基础。

Description

一种动物点云生成方法及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种动物点云生成方法及系统。
背景技术
我国畜牧业近几年得到了快速成长,禽畜的体型评分、健康状况对于提升我国的肉蛋奶产量竞争力有着至关重要的作用。三维点云数据包含了尺寸和外形等重要的几何信息,因此获取完整的禽畜三维点云数据对禽畜的体况评分,体尺与体重测量,健康评定等有着非常实用的应用价值。
在目前常用的三维点云重建技术中,主要是通过激光扫描仪、双目立体视觉技术、深度相机等途径对目标动物获取点云数据进行采集,受设备的精度和复杂采集环境的影响,获取的数据会有部分缺失等问题。针对缺失点云,现有技术对点云的镜像处理多是依赖物体内部特征,进行部分缺失点云的镜像处理。例如,对于一侧点云完全缺失的镜像的情况,可以通过找对称点与法向量,构建对称平面的方法来实现点云镜像的获取。
在目标动物一侧被完全遮挡而不便采集的情况下,只能获取到目标动物的单侧点云数据,严重影响目标动物的三维重建效果和测量精度;而上述构建对称平面进行三维重建的方法,易受噪声影响,进而影响点云镜像的结果,无法实现对目标动物全视角三维点云的确定。
发明内容
针对现有技术存在的问题,本发明实施例提供一种动物点云生成方法及系统,以提高目标动物三维点云重建的效果和精度。
本发明提供一种动物点云生成方法,包括:根据俯视点云,确定目标动物的脊线中点;以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;获取每个目标点在球体上的镜像点;根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
根据本发明提供的一种动物点云生成方法,根据俯视点云,确定目标动物的脊线中点,包括:获取目标动物的侧视点云和俯视点云;对侧视点云和所述俯视点云进行旋转处理;对旋转处理后的侧视点云和俯视点云进行拼接处理,获取拼接点云;根据拼接点云中的俯视点云,确定目标动物的脊线中点。
根据本发明提供的一种动物点云生成方法,所述对侧视点云和俯视点云进行旋转处理,包括:在XOY视角下,沿Y轴方向对侧视点云进行切片处理,获取多个侧视点云Y轴切片;所述目标动物的体高方向为所述三维点云坐标系的X轴方向,所述目标动物的体长方向为所述三维点云坐标系的Y轴方向,所述目标动物的体宽方向为所述三维点云坐标系的Z轴方向;基于每个侧视点云Y轴切片中的点云数量,对侧视点云Y轴切片进行切片投影,获取侧视点云数量投影曲线;确定侧视点云数量投影曲线中的两个极大值;将两个极大值所对应的侧视点云Y轴切片作为目标动物的前腿点云Y轴切片和后腿点云Y轴切片;获取前腿点云Y轴切片在Y轴方向的第一平均值以及在Z轴方向的第二平均值,获取后腿点云Y轴切片在Y轴方向的第三平均值以及在Z轴方向的第四平均值;根据第一平均值、第二平均值、第三平均值和第四平均值,在侧视点云中确定目标动物的前后腿终点连线与Y轴方向的夹角;旋转侧视点云和俯视点云,使得旋转后的夹角为0。
根据本发明提供的一种动物点云生成方法,根据第一平均值、第二平均值、第三平均值和第四平均值,在侧视点云中确定目标动物的前后腿终点连线与Y轴方向的夹角,其计算公式为:
其中,θ为夹角,avg_y1为第一平均值,avg_z1为第二平均值,avg_y2为第三平均值,avg_z2为第四平均值。
根据本发明提供的一种动物点云生成方法,将侧视点云和俯视点云沿夹角的方向逆向旋转,包括:基于三维仿射几何变换函数,根据夹角,对侧视点云和俯视点云进行旋转处理;;
对旋转处理后的侧视点云和俯视点云进行拼接处理,获取拼接点云,包括:基于迭代最近点算法,对侧视点云和俯视点云进行拼接处理,获取拼接点云。
根据本发明提供的一种动物点云生成方法,根据所述拼接点云中的俯视点云,确定所述目标动物的脊线中点,包括:在XOY视角下,沿X轴方向对俯视点云进行切片处理,获取多个俯视点云X轴切片;获取每个俯视点云X轴切片的Z坐标中值;确定每个俯视点云X轴切片中与Z坐标中值最近的点为目标脊线点;根据每个俯视点云X轴切片的目标脊线点,确定脊线点云;对应地,获取每个俯视点云X轴切片的Y坐标中值;获取脊线点云中的每个目标脊线点的Y轴坐标值与Y坐标中值的差值,以确定将差值最小的Y轴坐标值所对应的目标脊线点作为脊线中点。
根据本发明提供的一种动物点云生成方法,在以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体中,球体的函数表达式:
i∈(1,k);
其中,N(i,x)第i个目标点的X轴坐标,k为所述目标点的个数,(Qx,Qy,Qz)为球心的坐标,R为球体的半径;获取每个目标点在球体上的镜像点,包括:保持每个目标点的X轴坐标值和Y轴坐标值不变,确定目标点在球体上相对于目标动物的脊线的对称点作为目标点的镜像点。
本发明还提供一种动物点云生成系统,包括:脊线定位单元,根据俯视点云,确定目标动物的脊线中点;球体虚拟单元,用于以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;镜像映射单元,用于获取每个目标点在球体上的镜像点;点云构建单元,用于根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如上述任一种动物点云生成方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种动物点云生成方法的步骤。
本发明提供的动物点云生成方法及系统,根据俯视点云确定球心、根据侧视点云确定半径,创建每个侧视点云中各目标点对应的映射球体,进而对侧视点云作镜像处理,稳定、精准的还原目标动物一侧不便采集的点云数据,实现对目标动物全视角三维点云的确定,为目标动物的体尺体重测量等应用奠定基础。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的动物点云生成方法的流程示意图;
图2是本发明提供的动物侧视点云和俯视点云拼接示意图;
图3是本发明提供的动物侧视点云切片投影示意图;
图4是本发明提供的动物侧视点云前后腿终点连线角度示意图;
图5是本发明提供的动物俯视点云脊线点云示意图;
图6是本发明提供的动物俯视点云目标动物脊线中点示意图;
图7是本发明提供的动物构建球体镜像点云示意图;
图8是本发明提供的动物点云镜像完成效果示意图;
图9是本发明提供的动物点云生成系统的结构示意图;
图10是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明实施例的描述中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
下面结合图1-图10描述本发明实施例所提供的动物点云生成方法和系统。
图1是本发明提供的动物点云生成方法的流程示意图,如图1所示,主要包括但不限于以下步骤:
步骤S1:根据俯视点云,确定目标动物的脊线中点;
步骤S2:以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;
步骤S3:获取每个目标点在球体上的镜像点;
步骤S4:根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
可选地,根据养殖场复杂的环境,在采集取目标动物数据时,为了限制目标动物的活动范围,可以设置目标动物单向行走围栏通道,分别在通道顶部与某一侧方设置深度相机,通过设置在目标动物单向行走围栏通道顶部的深度相机采集俯视深度图像,通过设置在目标动物单向行走围栏通道某一侧方的深度相机采集侧视深度图像。
作为一种可选地实施例,设置在目标动物单向行走围栏通道顶部的深度相机,具体可以设置在通道顶部的正上方,以确保能采集完整的目标动物的俯视深度图像;还包括设置在目标动物单向行走围栏通道某一侧方的深度相机,具体可以设置在通道侧壁,以确保能采集完整的目标动物的侧视深度图像。
作为一种可选实施例,可以设置多条目标动物单向行走围栏通道,在每条目标动物单向行走围栏通道设置一组深度相机,每组深度相机包括设置在目标动物单向行走围栏通道顶部的深度相机和设置在目标动物单向行走围栏通道某一侧方的深度相机,可同时对多个目标动物进行图像采集,提高图像采集效率,节省图像采集时间。
可选地,本发明提供了一种根据俯视深度图像获取到对应的俯视点云,以及根据侧视深度图像获取到对应的侧视点云的方法:
首先,通过获取通道顶部的深度相机拍摄获取的俯视深度图像的俯视深度景深数据和通道顶部的深度相机的内参;然后,对俯视深度景深数据做直方图;根据直方图确定阈值区间,分割出目标动物的俯视角度的初始轮廓。进而,对目标动物的俯视角度的初始轮廓进行轮廓探测操作,并进行高斯滤波,再进行K均值聚类处理,得到目标动物俯视角度的轮廓。
进一步地,基于目标动物俯视角度的轮廓,取出俯视视角度完整的目标动物体,利用俯视深度信息生成图像的俯视点云,并分割提取出目标动物俯视点云。
相应地,通过获取通道侧方的深度相机拍摄获取的侧视深度图像的侧视深度景深数据和通道侧方的深度相机的内参;然后,对侧视深度景深数据做直方图;根据直方图确定阈值区间,分割出目标动物的侧视角度的初始轮廓。进而,对目标动物的侧视角度的初始轮廓进行轮廓探测操作,并进行高斯滤波,再进行K均值聚类处理,得到目标动物侧视角度的轮廓。
进一步地,基于目标动物侧视角度的轮廓,取出侧视角度完整的目标动物体,利用侧视深度信息生成图像的侧视点云,并分割提取出目标动物侧视点云。
将通过上述步骤得到的俯视点云和侧视点云并转为包含目标动物侧视点云和俯视点云的三维点云显示。
其中,目标动物可以是牛、羊、猪等脊椎动物,在本发明后续实施例中均以对奶牛进行三维点云重建为例进行说明,其不视为对本发明保护范围的限定。
可选地,本发明所采集的侧视点云可以是由左侧深度相机所采集的深度图像处理获取的点云数据,也可以是由右侧深度相机所采集的深度图像处理获取的点云数据,为了方便说明,在后续实施例中均以左侧采集的深度图像处理获取的点云数据为例进行说明,将不作一一赘述。
进一步地,步骤S1具体可以包括:
可以获取目标动物的俯视点云在奶牛的头部至尾部延伸点云分布的中线,作为目标动物的脊线L。
进一步地,可以根据获取的目标动物的脊线L的中点,作为所述目标动物的脊线中点Q。
进一步地,本发明提供了一种根据侧视点云获取与之对应的另一侧点云的方法,以所述侧视点云中的任一目标点为例,获取该目标点的对应镜像点的方法,主要包括:
在步骤S2中,以所述脊线中点Q为球心,以该目标点A与球心Q之间的距离为半径R,构建球体。
进一步地,在步骤S3中,以脊线中点所在的、平行于目标动物单向行走围栏通道侧壁的平面为镜像面,对该目标点A做镜像处理,得到的镜像点A’。根据上述镜像处理方法,对整个侧视点云中的所有点进行镜像处理,获取与侧视点云对应的镜像点云。
进一步地,在步骤S4中,可以根据镜像点云与侧视点云和俯视点云,获取目标动物的完整的全视角三维点云数据。
本发明提供的动物点云生成方法,根据俯视点云确定球心、根据侧视点云确定半径,创建每个侧视点云中各目标点对应的映射球体,进而对每个侧视点云作镜像处理,稳定、精准的还原目标动物一侧不便采集的点云数据,实现对目标动物全视角三维点云的确定,为目标动物的体尺体重测量等应用奠定基础。
基于上述实施例的内容,作为一种可选实施例,根据所述俯视点云,确定所述目标动物的脊线中点,包括:
获取目标动物的侧视点云和俯视点云;对侧视点云和所述俯视点云进行旋转处理;对旋转处理后的侧视点云和俯视点云进行拼接处理,获取拼接点云;根据拼接点云中的俯视点云,确定目标动物的脊线中点。
进一步地,在根据俯视点云,确定目标动物的脊线中点之前,还包括:构建X-Y-Z三维点云坐标系,对侧视点云和俯视点云进行旋转处理,以矫正侧视点云和俯视点云在三维点云坐标系中的位置,确保目标动物的体高方向为三维点云坐标系的X轴方向,目标动物的体长方向为三维点云坐标系的Y轴方向,目标动物的体宽方向为三维点云坐标系的Z轴方向。
其中,如图2所示,体高方向可以是从奶牛的背部至脚部,垂直于地面的方向;体长方向可以是奶牛的头部至尾部平行于地面的方向;体宽方向为从奶牛的左侧至右侧的方向且与所述体高方向和所述体长方向构成三维垂直坐标系。
本发实施例通过对侧视点云和俯视点云进行旋转矫正,得到更为精确的点云数据。
图2是本发明提供的动物侧视点云和俯视点云拼接示意图;作为一种可选实施例,如图2所示,区域A为奶牛俯视点云,区域B为奶牛侧视点云,对区域A的点云和区域B的点云提取图像特征,对区域A的点云和区域B的点云提取的特征点求变换矩阵,可以把区域A平移旋转,通过匹配算法将区域A的点集投影到区域B,使得两图中对应于空间同一位置的点一一对应起来,使区域A和区域B尽量重叠,直到正确匹配的收敛准则被满足,对区域A和区域B的点云进行拼接处理,最终获得目标点集与参考点之间的旋转矩阵和平移矩阵,并对拼接的部位进行模糊边界处理,获取拼接点云。
本发明提供的动物点云生成方法,根据目标对象的位置,设置对应的三维坐标系,并通过在三维坐标系中将俯视点云与侧视点云相融合,为后续根据俯视点云确定用于镜像映射的球面,为实现根据获取的侧视点云获取镜像点云提供了模型基础,有效地提高了镜像点云的生成精度。
图3是本发明提供的动物侧视点云切片投影示意图,作为一种可选实施例,如图3所示,对侧视点云和俯视点云进行旋转处理,可以包括以下步骤:在XOY视角下,沿所述Y轴方向对所述侧视点云进行切片处理,获取多个侧视点云Y轴切片;所述目标动物的体高方向为所述三维点云坐标系的X轴方向,所述目标动物的体长方向为所述三维点云坐标系的Y轴方向,所述目标动物的体宽方向为所述三维点云坐标系的Z轴方向;基于每个所述侧视点云Y轴切片中的点云数量,对所述侧视点云Y轴切片进行切片投影,获取侧视点云数量投影曲线;确定所述侧视点云数量投影曲线中的两个极大值;将所述两个极大值所对应的侧视点云Y轴切片作为所述目标动物的前腿点云Y轴切片和后腿点云Y轴切片;获取所述前腿点云Y轴切片在所述Y轴方向的第一平均值以及在所述Z轴方向的第二平均值,获取所述后腿点云Y轴切片在所述Y轴方向的第三平均值以及在所述Z轴方向的第四平均值;根据所述第一平均值、所述第二平均值、所述第三平均值和所述第四平均值,在所述侧视点云中确定所述目标动物的前后腿终点连线与所述Y轴方向的夹角;
旋转所述侧视点云和所述俯视点云,使得旋转后的所述夹角为0。
在XOY视角下,沿Y轴方向对侧视点云进行纵向等宽切片处理,如图3所示从奶牛背部切至奶牛脚部,切片的范围为奶牛头部至奶牛尾部。
如图3所示,本实施例的切片宽度取0.25时,奶牛的侧视点云被均匀地切成7片。
进一步地,获取多个等宽侧视点云Y轴切片;基于每个侧视点云Y轴切片中的点云数量,对侧视点云Y轴切片进行切片投影,对每个切片的点云数量进行统计后,以每个切片所在位置对应Y轴的数值为切片的Y轴坐标,以每个切片的点云数量作为切片的X轴坐标,获取侧视点云的切片点云数量在XOY平面的投影曲线;每个切片的点云数量与图3所示切片面积大小正相关,也可根据图3中的曲线直观看出每个切片的点云数量,图3所示奶牛左前脚的点云数量值约为300,奶牛后脚的点云数量值约为315。
对每个切片的点云数量进行比较,选出其中最大的两个数值,最大的两个数值为侧视点云数量投影曲线中的两个极大值。如图3所示,观察第一个峰值,曲线在前腿处体现出了一个峰值,峰值是在X轴方向体现出来的,即点云个数,此峰值对应的Y轴方向就是前腿,即代表切片位置;观察第二个峰值,曲线在后腿处体现出了另一个峰值,峰值是在X轴方向体现出来的,即点云个数,此峰值对应的Y轴方向就是后腿,即代表切片位置。
将上述两个极大值所对应的侧视点云Y轴切片作为目标动物的前腿点云Y轴切片和后腿点云Y轴切片;获取前腿点云Y轴切片在Y轴方向的第一平均值avg_y1,左前腿点云Y轴切片中点云在Z轴方向的第二平均值avg_z1,获取后腿点云Y轴切片在Y轴方向的第三平均值avg_y2,左前腿点云Y轴切片中点云在Z轴方向的第四平均值avg_z2。
其中,第二平均值avg_z1的计算公式为:
其中,C为左前腿切片点云的索引,C(i,z)为左前腿切片点云中第i个点的z坐标值,m为左前腿切片点云的个数。
如图3所示,在左前腿切片点云的个数为1的情况下,m取值为1。
同理,可求得左前腿点云在Y轴方向第一平均值avg_y1、左后腿的点云在Z轴与Y轴方向的第四平均值avg_z2和第三平均值avg_y2。
根据第一平均值avg_y1、第二平均值avg_z1、第三平均值avg_y2和第四平均值avg_z2,在侧视点云中,通过反三角函数计算,确定目标动物的前后腿终点连线与Y轴方向的夹角θ。
将侧视点云和俯视点云沿所述夹角θ的方向逆向旋转,使得旋转后的所述夹角为0。如图4所示,将奶牛的侧视点云和俯视点云沿逆时针方向旋转夹角θ,使得旋转后奶牛的侧视点云中前后腿终点连线与Y轴平行。
其中,点云数据,具有数据量大、分布不均匀等特点;点云索引C是将点云中不同点加上标签,方便后面的分类提取。
本实施例通过对目标动物对侧视点云进行切片处理,通过切片点云数量确定目标动物前腿和后腿的位置,计算前后腿终点连线与Y轴方向的夹角并通过旋转目标动物的侧视点云和俯视点云,矫正坐标系,为后续目标动物稳定、精准获得镜像点提供了基础。
图4是本发明提供的动物侧视点云前后腿终点连线角度示意图,作为一种可选实施例,如图4所示,在XOY视角下,根据第一平均值avg_y1、第二平均值avg_z1、第三平均值avg_y2和第四平均值avg_z2,在侧视点云中确定目标动物的前后腿终点连线与Y轴方向的夹角θ,其计算公式为:
基于上述实施例的内容,作为一种可选实施例,将侧视点云和俯视点云沿夹角θ的方向逆向旋转,包括:基于三维仿射几何变换函数,根据夹角θ,对侧视点云和俯视点云进行逆时针旋转θ处理。
三维仿射几何变换函数为:
对旋转处理后的侧视点云和俯视点云进行拼接处理,获取一次拼接点云,包括:
基于迭代最近点算法(Iterative closest point,ICP),通过空间变换把俯视点云映射到侧视点云,使得俯视点云与侧视点云中对应于空间同一位置的点一一对应起来,并对俯视点云与侧视点云进行拼接处理,获取一次拼接点云。
其中,拼接点云为俯视点云与侧视点云拼接后得到的点云;θ为夹角,(x’,y’,z’)将侧视点云和俯视点云中任一点(x,y,z)进行旋转处理后的点坐标。
本实施例通过反三角函数计算出目标动物的前后腿终点连线与Y轴方向的夹角θ,对侧视点云和俯视点云进行旋转处理后再做拼接获取拼接点云,为后续获取完整的三维点云模型提供了基础,有效地提高了镜像点云的生成精度。
图5是本发明提供的动物俯视点云脊线点云示意图;图6是本发明提供的动物俯视点云目标动物脊线中点示意图;作为一种可选实施例,如图6所示,根据俯视点云,确定所述目标动物的脊线中点,包括:
在XOY视角下,沿X轴方向对俯视点云进行切片处理,获取多个俯视点云X轴切片;获取每个俯视点云X轴切片的Z坐标中值mid_z。
其中,Z坐标中值mid_z的计算公式为:
i∈(1,n)
从第一层切片点云中筛选部分点云,筛选条件是其Z坐标需满足Z∈(mid_z-d,mid_z+d)
其中,D为第一层切片点云的索引,D(i,z)为D中所有点云的Z坐标值,n为D中点云的个数。d为设定的点云选取范围阈值。即当第一层切片点云的Z坐标符合上方条件时,将其作为图5所示的奶牛的脊线点云L。
在一个实施例中,目标脊线点Z坐标选用最佳取值范围,设定的点云选取范围阈值d=0.01,Z坐标取值在此范围的目标脊线点云所形成的脊线点云L,可兼顾精确和清晰连续。
同理,求出Y坐标的中值mid_y,在脊线点云中,获取点的Y坐标与Y坐标的中值mid_y差值,比较出差值的绝对值最小的点作为图6所示的脊线中点Q。
本实施例通过对俯视点云进行切片处理,获取每个俯视点云X轴切片的Z坐标中值,从第一层切片点云中筛选部分点云作为脊线点云,再根据上述方法对脊线点云求出Y坐标的中值,比较出差值最小的点作为脊线中点,为后续根据俯视点云确定用于镜像映射的球面,以实现根据获取的侧视点云获取镜像点云提供了模型基础,有效地提高了镜像点云的生成精度。
图7是本发明提供的动物构建球体镜像点云示意图;作为一种可选实施例,如图7所示,在以脊线中点Q为球心,以侧视点云中的任一目标点与球心之间的距离为半径R,构建一球体中,球体的函数表达式:
i∈(1,k);
其中,N(i,x)第i个点的X轴坐标,k为待镜像处理点的个数,(Qx,Qy,Qz)为球心坐标,R为球体的半径;
获取每个所述目标点在球体上的镜像点,包括:
保持每个目标点的X轴坐标值和Y轴坐标值不变,确定目标点在球体上相对于目标动物的脊线的对称点作为目标点的镜像点,点云镜像完成效果如图8所示。
本实施例以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体,为后续根据获取的侧视点云获取镜像点云、实现对目标动物全视角三维点云的确定提供了模型基础,有效地提高了镜像点云的生成精度。
图9是本发明提供的动物点云生成系统的结构示意图,如图9所示,包括但不限于以下单元:
脊线定位单元901,根据俯视点云,确定目标动物的脊线中点;
球体虚拟单元902,用于以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;
镜像映射单元903,用于获取每个目标点在球体上的镜像点;
点云构建单元904,用于根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
在一个实施例中,首先获取获取目标动物的侧视点云和俯视点云。然后,利用脊线定位单元901根据获取的俯视点云,确定目标动物的脊线中点;球体虚拟单元902以脊线定位单元901确定的脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;镜像映射单元903获取每个目标点在球体上的镜像点;点云构建单元904根据镜像映射单元903获取的所有的镜像点与获取的侧视点云和俯视点云,确定目标动物的全视角三维点云。
需要说明的是,本发明实施例提供的动物点云生成系统,在具体执行时,可以基于上述任一实施例所述的动物点云生成方法来实现,对此本实施例不作赘述。
图10是本发明提供的电子设备的结构示意图,如图10所示,该电子设备可以包括:处理器(processor)101、通信接口(CommunicationsInterface)102、存储器(memory)103和通信总线104,其中,处理器101,通信接口102,存储器103通过通信总线1040完成相互间的通信。处理器101可以调用存储器103中的逻辑指令,以执行动物点云生成方法,该方法包括:根据俯视点云,确定目标动物的脊线中点;以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;获取每个目标点在球体上的镜像点;根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
此外,上述的存储器103中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的动物点云生成方法,该方法包括:根据俯视点云,确定目标动物的脊线中点;以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;获取每个目标点在球体上的镜像点;根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的动物点云生成方法,该方法包括:根据俯视点云,确定目标动物的脊线中点;以脊线中点为球心,以侧视点云中的任一目标点与球心之间的距离为半径,构建一球体;获取每个目标点在球体上的镜像点;根据所有的镜像点与侧视点云和俯视点云,确定目标动物的全视角三维点云。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.一种动物点云生成方法,其特征在于,包括:
根据俯视点云,确定目标动物的脊线中点;
以所述脊线中点为球心,以侧视点云中的任一目标点与所述球心之间的距离为半径,构建一球体;
获取每个所述目标点在所述球体上的镜像点;
根据所有的镜像点与所述侧视点云和所述俯视点云,确定所述目标动物的全视角三维点云;
所述根据所述俯视点云,确定所述目标动物的脊线中点,包括:
获取目标动物的侧视点云和俯视点云;
对所述侧视点云和所述俯视点云进行旋转处理;
对旋转处理后的所述侧视点云和所述俯视点云进行拼接处理,获取拼接点云;
根据所述拼接点云中的俯视点云,确定所述目标动物的脊线中点;
其中,根据所述拼接点云中的俯视点云,确定所述目标动物的脊线中点,具体包括:
在XOY视角下,沿X轴方向对所述俯视点云进行切片处理,获取多个俯视点云X轴切片;获取每个所述俯视点云X轴切片的Z坐标中值;确定每个所述俯视点云X轴切片中与所述Z坐标中值最近的点为目标脊线点;根据每个所述俯视点云X轴切片的所述目标脊线点,确定脊线点云;对应地,获取每个所述俯视点云X轴切片的Y坐标中值;获取所述脊线点云中的每个所述目标脊线点的Y轴坐标值与所述Y坐标中值的差值,以确定将差值最小的Y轴坐标值所对应的目标脊线点作为所述脊线中点;
在所述以所述脊线中点为球心,以所述侧视点云中的任一目标点与所述球心之间的距离为半径,构建一球体中,所述球体的函数表达式:
其中,N(i,x)第i个目标点的X轴坐标,k为所述目标点的个数,(Qx,Qy,Qz)为所述球心的坐标,R为所述球体的半径;
所述获取每个所述目标点在所述球体上的镜像点,包括:
保持所述每个所述目标点的X轴坐标值和Y轴坐标值不变,确定所述目标点在所述球体上相对于所述目标动物的脊线的对称点作为所述目标点的镜像点。
2.根据权利要求1所述的动物点云生成方法,其特征在于,所述对所述侧视点云和所述俯视点云进行旋转处理,包括:
在XOY视角下,沿Y轴方向对所述侧视点云进行切片处理,获取多个侧视点云Y轴切片;所述目标动物的体高方向为所述三维点云坐标系的X轴方向,所述目标动物的体长方向为所述三维点云坐标系的Y轴方向,所述目标动物的体宽方向为所述三维点云坐标系的Z轴方向;
基于每个所述侧视点云Y轴切片中的点云数量,对所述侧视点云Y轴切片进行切片投影,获取侧视点云数量投影曲线;
确定所述侧视点云数量投影曲线中的两个极大值;
将所述两个极大值所对应的侧视点云Y轴切片作为所述目标动物的前腿点云Y轴切片和后腿点云Y轴切片;
获取所述前腿点云Y轴切片在所述Y轴方向的第一平均值以及在所述Z轴方向的第二平均值,获取所述后腿点云Y轴切片在所述Y轴方向的第三平均值以及在所述Z轴方向的第四平均值;
根据所述第一平均值、所述第二平均值、所述第三平均值和所述第四平均值,在所述侧视点云中确定所述目标动物的前后腿终点连线与所述Y轴方向的夹角;
旋转所述侧视点云和所述俯视点云,使得旋转后的所述夹角为0。
3.根据权利要求2所述的动物点云生成方法,其特征在于,所述根据所述第一平均值、所述第二平均值、所述第三平均值和所述第四平均值,在所述侧视点云中确定所述目标动物的前后腿终点连线与所述Y轴方向的夹角,其计算公式为:
其中,θ为所述夹角,avg_y1为所述第一平均值,avg_z1为所述第二平均值,avg_y2为所述第三平均值,avg_z2为所述第四平均值。
4.根据权利要求2所述的动物点云生成方法,其特征在于,
所述将所述侧视点云和所述俯视点云沿所述夹角的方向逆向旋转,包括:基于三维仿射几何变换函数,根据所述夹角,对所述侧视点云和所述俯视点云进行旋转处理;
所述对旋转处理后的所述侧视点云和所述俯视点云进行拼接处理,获取拼接点云,包括:基于迭代最近点算法,对所述侧视点云和所述俯视点云进行拼接处理,获取所述拼接点云。
5.一种动物点云生成系统,其特征在于,包括:
脊线定位单元,根据俯视点云,确定目标动物的脊线中点,包括:获取目标动物的侧视点云和俯视点云;对所述侧视点云和所述俯视点云进行旋转处理;对旋转处理后的所述侧视点云和所述俯视点云进行拼接处理,获取拼接点云;根据所述拼接点云中的俯视点云,确定所述目标动物的脊线中点;
其中,根据所述拼接点云中的俯视点云,确定所述目标动物的脊线中点,具体包括:
在XOY视角下,沿X轴方向对所述俯视点云进行切片处理,获取多个俯视点云X轴切片;获取每个所述俯视点云X轴切片的Z坐标中值;确定每个所述俯视点云X轴切片中与所述Z坐标中值最近的点为目标脊线点;根据每个所述俯视点云X轴切片的所述目标脊线点,确定脊线点云;对应地,获取每个所述俯视点云X轴切片的Y坐标中值;获取所述脊线点云中的每个所述目标脊线点的Y轴坐标值与所述Y坐标中值的差值,以确定将差值最小的Y轴坐标值所对应的目标脊线点作为所述脊线中点;
球体虚拟单元,用于以所述脊线中点为球心,以侧视点云中的任一目标点与所述球心之间的距离为半径,构建一球体,所述球体的函数表达式:
其中,N(i,x)第i个目标点的X轴坐标,k为所述目标点的个数,(Qx,Qy,Qz)为所述球心的坐标,R为所述球体的半径;
镜像映射单元,用于获取每个所述目标点在所述球体上的镜像点,包括:保持所述每个所述目标点的X轴坐标值和Y轴坐标值不变,确定所述目标点在所述球体上相对于所述目标动物的脊线的对称点作为所述目标点的镜像点;
点云构建单元,用于根据所有的镜像点与所述侧视点云和所述俯视点云,确定所述目标动物的全视角三维点云。
6.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述动物点云生成方法步骤。
7.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述动物点云生成方法步骤。
CN202110057408.2A 2021-01-15 2021-01-15 一种动物点云生成方法及系统 Active CN112712590B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110057408.2A CN112712590B (zh) 2021-01-15 2021-01-15 一种动物点云生成方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110057408.2A CN112712590B (zh) 2021-01-15 2021-01-15 一种动物点云生成方法及系统

Publications (2)

Publication Number Publication Date
CN112712590A CN112712590A (zh) 2021-04-27
CN112712590B true CN112712590B (zh) 2023-11-28

Family

ID=75549194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110057408.2A Active CN112712590B (zh) 2021-01-15 2021-01-15 一种动物点云生成方法及系统

Country Status (1)

Country Link
CN (1) CN112712590B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113724372B (zh) * 2021-08-23 2022-06-28 水利部交通运输部国家能源局南京水利科学研究院 成像装置和基于正交偏振双视角成像的鱼体三维建模方法
CN113706512B (zh) * 2021-08-31 2023-08-11 内蒙古大学 一种基于深度学习和深度相机的生猪体重测量方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102572505A (zh) * 2010-11-03 2012-07-11 微软公司 家中深度相机校准
CN106651900A (zh) * 2016-12-27 2017-05-10 中国农业大学 一种基于轮廓分割的高架原位草莓三维建模方法
CN107635509A (zh) * 2015-02-27 2018-01-26 因吉纳瑞股份公司 用于确定体况评分、体重和生育状态的改进方法和相关设备
CN108780228A (zh) * 2016-01-19 2018-11-09 奇跃公司 利用映像的增强现实系统和方法
CN109272572A (zh) * 2018-08-30 2019-01-25 中国农业大学 一种基于双Kinect相机的建模方法及装置
CN110986788A (zh) * 2019-11-15 2020-04-10 华南农业大学 一种基于三维点云牲畜表型体尺数据的自动测量方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039220B2 (en) * 2002-08-14 2006-05-02 C-Scan, L.L.P. Methods and apparatus for the dimensional measurement of livestock using a single camera

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102572505A (zh) * 2010-11-03 2012-07-11 微软公司 家中深度相机校准
CN107635509A (zh) * 2015-02-27 2018-01-26 因吉纳瑞股份公司 用于确定体况评分、体重和生育状态的改进方法和相关设备
CN108780228A (zh) * 2016-01-19 2018-11-09 奇跃公司 利用映像的增强现实系统和方法
CN106651900A (zh) * 2016-12-27 2017-05-10 中国农业大学 一种基于轮廓分割的高架原位草莓三维建模方法
CN109272572A (zh) * 2018-08-30 2019-01-25 中国农业大学 一种基于双Kinect相机的建模方法及装置
CN110986788A (zh) * 2019-11-15 2020-04-10 华南农业大学 一种基于三维点云牲畜表型体尺数据的自动测量方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
"基于三维重建的奶牛体重预估方法";初梦苑等;《农业机械学报》;第378-384页 *
"基于双目立体视觉的羊体尺参数提取及三维重构的研究";周艳青;《中国博士学位论文全文数据库农业科技辑》;第1-114页 *
"多视图图像三维重建若干关键技术研究";周骏;《中国博士学位论文全文数据库信息科技辑》;第1-86页 *
"高效率,无接触!三维重构技术应用在种猪育种能发挥多强大的效果?";《猪业》2020年第5期【万物互联 智慧养猪】专题系列文章;《链接:http://tech.gdswine.com/yzjs/ycyz/202012/207475.html》;第1-7页 *
基于单视角点云镜像的猪只体尺测量方法;王可;郭浩;马钦;苏伟;华明睿;朱德海;;农业机械学报(第03期);第187-195页 *

Also Published As

Publication number Publication date
CN112712590A (zh) 2021-04-27

Similar Documents

Publication Publication Date Title
CN106780619B (zh) 一种基于Kinect深度相机的人体尺寸测量方法
CN103913131B (zh) 一种基于双目视觉的自由曲面法矢量测量方法
EP2249311B1 (en) Systems and methods for extracting planar features, matching the planar features, and estimating motion from the planar features
Medeiros et al. Modeling dormant fruit trees for agricultural automation
CN111243005B (zh) 牲畜估重方法、装置、设备以及计算机可读存储介质
CN107767442A (zh) 一种基于Kinect和双目视觉的脚型三维重建与测量方法
CN112262408A (zh) 用于从一距离处表征活体标本的方法和装置
CN112712590B (zh) 一种动物点云生成方法及系统
JP5955028B2 (ja) 画像処理装置、画像処理方法および画像処理用のプログラム
JP2016161569A (ja) オブジェクトの3d姿勢およびオブジェクトのランドマーク点の3dロケーションを求める方法、およびオブジェクトの3d姿勢およびオブジェクトのランドマークの3dロケーションを求めるシステム
US20100328308A1 (en) Three Dimensional Mesh Modeling
CN112509119B (zh) 针对颞骨的空间数据处理及定位方法、装置及电子设备
CN109357633B (zh) 三维扫描方法、装置、存储介质和处理器
CN108994844B (zh) 一种打磨操作臂手眼关系的标定方法和装置
CN111340756B (zh) 一种医学图像病变检出合并方法、系统、终端及存储介质
Cheng et al. Building boundary extraction from high resolution imagery and lidar data
CN111126116A (zh) 无人船河道垃圾识别方法及系统
CN109636779A (zh) 识别家禽体积体尺的方法、装置及存储介质
CN110009745B (zh) 根据平面基元和模型驱动对点云提取平面的方法
CN112669379A (zh) 一种基于辅助标记点的图像特征快速提取方法
Yamazaki et al. Markerless landmark localization on body shape scans by non-rigid model fitting
CN113160381B (zh) 多视角动物三维几何与纹理自动化重建方法和装置
US20200250815A1 (en) Heart Position Estimation
Sun et al. Leaf vein and contour extraction from point cloud data
Pound et al. Surface reconstruction of plant shoots from multiple views

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant