CN111681274A - 基于深度相机点云数据的3d人体骨骼识别和提取方法 - Google Patents

基于深度相机点云数据的3d人体骨骼识别和提取方法 Download PDF

Info

Publication number
CN111681274A
CN111681274A CN202010803213.3A CN202010803213A CN111681274A CN 111681274 A CN111681274 A CN 111681274A CN 202010803213 A CN202010803213 A CN 202010803213A CN 111681274 A CN111681274 A CN 111681274A
Authority
CN
China
Prior art keywords
point cloud
point
skeleton
points
human body
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.)
Pending
Application number
CN202010803213.3A
Other languages
English (en)
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.)
Chengdu Alpace Technology Co ltd
Original Assignee
Chengdu Alpace Technology Co ltd
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 Chengdu Alpace Technology Co ltd filed Critical Chengdu Alpace Technology Co ltd
Priority to CN202010803213.3A priority Critical patent/CN111681274A/zh
Publication of CN111681274A publication Critical patent/CN111681274A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/66Analysis of geometric attributes of image moments or centre of gravity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

本发明属于虚拟人物三维建模技术领域,公开了一种基于深度相机点云数据的3D人体骨骼识别和提取方法,先在目标点云数据中过滤不需要的点云数据,通过局部直方图和支持向量机处理,进行所需人体点云的数据提取,然后进行初步骨架提取后,通过剪枝、去噪点等降噪预处理,得到没有冗余分支的符合人体模型拓扑结构的骨架模型,再对骨架曲线进行修正,调整至最佳位置,获取最终骨架位置,鲁棒性、抗噪能力和实时性性能优良,减少了目标识别的复杂度,提高了计算机视觉处理的实时性,加快了后期处理速度,减少了存储空间,针对模型骨架曲线所有性质均达到最理想状。

Description

基于深度相机点云数据的3D人体骨骼识别和提取方法
技术领域
本发明属于虚拟人物三维建模技术领域,具体涉及一种基于深度相机点云数据的3D人体骨骼识别和提取方法。
背景技术
人体识别技术一般通过音频、图像或者视频等媒体信息实现,随着信息技术发展,三维数字信息成为上述信息之后的第四类数字媒体信息,依据三维数字媒体信息构建虚拟人物三维模型,广泛的用于可视化、模式识别、计算机动画等领域;传统方法中通常使用三维立体扫描仪获取三维数字信息,针对三维立体模型的数学表达方法包括但不仅限于点云、骨架、多边形等,存在成本高昂、使用要求多、专业性强、局限性大等问题,不能面向大众普及应用,在生活中实际应用也很困难;三维数据模型的数据信息量巨大,结构繁杂,导致计算机在进行计算时工作量也很巨大,需要先对数据进行分析、整合及过滤,然后在经过筛选过滤后的数据上进行详细的计算;
随着科技发展,消费级深度相机的出现,降低了三维点云获取的成本,将点云模型的获取、处理、使用从专业化向大众推广普及,微软、英特尔以及其他一些厂商,都已经推了比较成熟的点云获取设备,例如微软的Kinect、英特尔的RealSense等,通过多台深度相机的配合使用,共同构建出立体点云数据,代替了传统扫描仪的点云数据,可以快捷地获取任意物体的三维表面数据,利用这些数据,可以构建出人体的三维模型;
但是现有技术中通过深度相机的点云数据构建人体三维模型还存在以下两个主要问题:
1、人体三维点云数据的识别问题:深度相机与扫描方式不同,在深度相机中不仅包含人体信息,还存在各种复杂的环境信息,庞大的数据量不仅会占据大量的存储空间,还会消耗大量的计算资源,在实时性上也难以实现,所以无法直接使用采集到的点云数据,还需要识别出人体点云数据,并单独提取出来;
2、关于人体三维点云数据的骨架提取问题:人体的点云模型,只能展现人体的表面信息,缺乏人体的特征点、骨骼、关节点等必要的人体语义数据,只能适用于特定的模型,很难针对模型骨架曲线所有性质达到最理想状态,而不同的应用领域对曲线骨架的性质具有不同的要求;
人体三维模型的骨架信息是一种强有力的形状描述符,可以描述物体的拓扑结构和关键形体特征,因此三维人体的骨架提取显得尤为重要;由于深度相机现有技术中的深度相机探测深度可以达到60米的距离,采集的点云数据丰富繁杂,包含大量不必要的点云数据,不仅干扰骨架数据的提取,还增加了系统运算量,降低了工作效率。
发明内容
为了解决现有技术存在的上述问题,本发明目的在于提供一种能够自动化完成人体点云模型的骨架数据信息提取,减轻计算机工作量,降低整体数据规模,减少目标识别的复杂度,提高计算和后期处理速度,基于深度相机点云数据的三维人体骨骼数据识别和提取方法。
本发明所采用的技术方案为:
一种基于深度相机点云数据的3D人体骨骼识别和提取方法,包括以下步骤:
S1、人体点云数据的识别与提取;
在深度相机采集的目标点云数据中过滤不需要的点云数据,提取所需点云数据,再进行局部直方图和支持向量机处理,提取人体点云数据特征;
S2、提取人体骨架点云数据;
在得到只与人体有关的点云数据之后,先进行初步的骨架提取,然后做预处理,包括剪枝、去噪点,进行降噪处理,得到没有冗余分支的符合人体模型拓扑结构的骨架模型,接着对骨架曲线进行修正,调整至最佳位置,获取最终骨架位置。
进一步地,一较佳实施例技术方案中,S1包括以下内容:
S11、简单阈值过滤处理;
根据使用场景设置探测距离阈值
Figure DEST_PATH_IMAGE001
,将采集到的点云数据
Figure 537702DEST_PATH_IMAGE002
根据深度进行过 滤,去除超过使用场景所要求最大深度
Figure DEST_PATH_IMAGE003
的点云数据,生成新的点云数据
Figure 283941DEST_PATH_IMAGE004
S12、体素网格滤波;
在识别人体点云前,对点云进行过滤;
采用点云体素化网格VG滤波器,创建一个三维体素栅格,体素重心表示为:
Figure DEST_PATH_IMAGE005
其中:P为目标体素,为体素基本单元,
Figure DEST_PATH_IMAGE007
为点云最小点,
Figure 561043DEST_PATH_IMAGE008
为点云中在体素基 元各个方向上的扩展体素,
Figure 583225DEST_PATH_IMAGE010
为体素P的重心,为基于基元的矢量积取整函 数;
进一步计算点云
Figure 76841DEST_PATH_IMAGE004
在体素下的重心
Figure 534367DEST_PATH_IMAGE014
信息;VG滤波器将第一步获得的点云数据
Figure DEST_PATH_IMAGE015
根据体素比例投影到新点云集中,在新的点云集中每一个点都有唯一ID标志,根据ID对 原始点云数据进行处理,获得新的点云集
Figure 411056DEST_PATH_IMAGE016
S13、分割去除背景;
对于S12滤波后的点云
Figure 30256DEST_PATH_IMAGE016
,获取地平面点云重心和法向量,识别出地平面并分割点云;
采用随机采样RANSAC方法去除局外点云,构建一个仅由局内点云组成的基本子集;
首先对点云进行直通滤波,滤除垂直方向干扰点,根据深度相机的高度,以及体素滤波后的点云尺寸,得到直通的滤波参数为:
Figure 828448DEST_PATH_IMAGE017
Figure DEST_PATH_IMAGE018
Figure 824086DEST_PATH_IMAGE019
轴方向为点云高度;
Figure DEST_PATH_IMAGE020
为点云
Figure 758544DEST_PATH_IMAGE019
方向的最大和最小值;
Figure 548645DEST_PATH_IMAGE021
为地面阈值,该 值为经验值;
Figure 568554DEST_PATH_IMAGE022
Figure 122811DEST_PATH_IMAGE019
方向直通滤波参数;
Figure 505251DEST_PATH_IMAGE023
为相机距离地面高度;
再由分割后点云平面方程可得点云簇平面高度和法向量;
由点云平面及夹角公式:
Figure 528571DEST_PATH_IMAGE024
Figure 629251DEST_PATH_IMAGE025
Figure DEST_PATH_IMAGE026
其中:、、、为点云中的任意平面的平面方程系数,arccos()是反余弦函 数,
Figure DEST_PATH_IMAGE032
,“·”表示向量点乘,“”表示标量乘法;
得到点云向量及其夹角,分割过程中不考虑点云法线方向;滤除
Figure DEST_PATH_IMAGE034
Figure 457792DEST_PATH_IMAGE035
点 云平面,计算剩余点云到点距离
Figure 549244DEST_PATH_IMAGE037
Figure DEST_PATH_IMAGE038
其中:
Figure 177016DEST_PATH_IMAGE023
为深度相机高度;
Figure 189972DEST_PATH_IMAGE039
为地平面参数,其最小值在
Figure DEST_PATH_IMAGE040
接近90和
Figure 931531DEST_PATH_IMAGE041
接近
Figure 815174DEST_PATH_IMAGE023
时产 生;则第
Figure DEST_PATH_IMAGE042
个点云为地面向量
Figure 554460DEST_PATH_IMAGE043
,为地面到点的距离;
点云分割获得修正后的法向量,获得真实的地面点云法线;
S14、进一步分割;
对S13去除地面点云后的点云数据进行欧式聚类分割,再根据人体特征进行人体识别,获得人体点云簇;
在三维空间使用固定大小的体素网格表示,并采用kd-tree结构填充,设置欧式分割点 距离参数
Figure DEST_PATH_IMAGE046
,对点云簇进行欧式聚类分割;
欧式聚类分割采用三维空间点欧式距离,若有空间点
Figure 6487DEST_PATH_IMAGE047
Figure DEST_PATH_IMAGE048
,则两点的空间距离表示为:
Figure 341041DEST_PATH_IMAGE049
进而得出
Figure DEST_PATH_IMAGE050
,若点
Figure 844703DEST_PATH_IMAGE051
Figure DEST_PATH_IMAGE052
间距离小于
Figure 832251DEST_PATH_IMAGE053
,则标记该点 为点云簇中点;
S15、人体识别;
采用人体识别算法,对S14获得的人体点云簇,由直方图特征HOG特性,对获取像素点梯 度值进行L2-norm归一化得:
Figure DEST_PATH_IMAGE054
,其中:
Figure 853296DEST_PATH_IMAGE055
为分式有意义的极小值;
根据支持向量机SVM定义,得到特征向量
Figure DEST_PATH_IMAGE056
是每个cell单元数目,默 认值为9;
Figure 39427DEST_PATH_IMAGE057
为block包含的cell个数,默认值为4;
Figure DEST_PATH_IMAGE058
是图像中block个数,默认值为; 通过计算方向梯度直方图特征
Figure 120515DEST_PATH_IMAGE061
表示人体特征;
由SVM训练出人体样本方向梯度直方图特征,从而得到SVM分类器参数
Figure DEST_PATH_IMAGE062
, 并计算人体可信度;
在SVM模型中,分离超平面定义为:
Figure DEST_PATH_IMAGE064
分离决策函数:
Figure 417166DEST_PATH_IMAGE065
其中,
Figure DEST_PATH_IMAGE066
为分离超平面参数,通过训练具有不同体侧的样本的人体梯度特征得 到,“×”表示向量叉乘, ()为符号函数,当>0时()=1;当=0时()=-1;
通过下式得到人体点云可信度
Figure 228182DEST_PATH_IMAGE071
,判断是否满足人体梯度直方图特征;
Figure DEST_PATH_IMAGE072
其中
Figure 412039DEST_PATH_IMAGE073
为特征向量
Figure DEST_PATH_IMAGE074
Figure 844157DEST_PATH_IMAGE075
是由SVM训练出的人体样本方向梯度直方 图特征得到的SVM分类器参数
Figure DEST_PATH_IMAGE076
识别出人体点云图。
进一步地,一较佳实施例技术方案中,S12中重复多次体素网格滤波。
进一步地,一较佳实施例技术方案中,设置欧式分割点距离参数
Figure 265911DEST_PATH_IMAGE077
进一步地,一较佳实施例技术方案中,人体识别采用PSVM算法,具体步骤如下:
Figure DEST_PATH_IMAGE078
为单位向量,
Figure 924950DEST_PATH_IMAGE079
为体素长度,
Figure DEST_PATH_IMAGE080
为人、深度相机位置;
S101、开始,输入源点云,记作
Figure 596103DEST_PATH_IMAGE081
S1011、设置基本体素
Figure DEST_PATH_IMAGE082
进行滤波;
S1012、体素参数
Figure 769595DEST_PATH_IMAGE083
S1013、获得点云最大、最小值:
Figure 311435DEST_PATH_IMAGE084
,计算在
Figure 100002_DEST_PATH_IMAGE085
方向点云体素矢量
Figure 607287DEST_PATH_IMAGE086
S1014、体素矢量积
Figure 100002_DEST_PATH_IMAGE087
S1015、计算所有乘积系数点云簇
Figure 765736DEST_PATH_IMAGE088
Figure 8498DEST_PATH_IMAGE088
Figure 100002_DEST_PATH_IMAGE089
Figure 201582DEST_PATH_IMAGE090
Figure 100002_DEST_PATH_IMAGE091
S1016、如果
Figure 402757DEST_PATH_IMAGE092
只有一个,则
Figure 100002_DEST_PATH_IMAGE093
;若有个
Figure 311151DEST_PATH_IMAGE092
相同,则
Figure 560867DEST_PATH_IMAGE096
,遍历所 有点;
S102、根据相机高度
Figure 100002_DEST_PATH_IMAGE097
,计算直通滤波参数;
S103、使用平面模型进行点云分割;
S104、计算点云簇
Figure 608457DEST_PATH_IMAGE098
,判断地面;
S105、对剔除地面后得点云
Figure 100002_DEST_PATH_IMAGE099
填充kd-tree结构,进行欧式聚类分割;
S1051、对于点
Figure 980533DEST_PATH_IMAGE100
,将点
Figure 316836DEST_PATH_IMAGE099
添加到点云簇
Figure 100002_DEST_PATH_IMAGE101
中,若
Figure 432560DEST_PATH_IMAGE102
(其中,
Figure 100002_DEST_PATH_IMAGE103
),检测点
Figure 600236DEST_PATH_IMAGE104
是否被处理,再次执行此步骤;
S1052、当
Figure 100002_DEST_PATH_IMAGE105
所有的点均已被处理,此时将
Figure 143213DEST_PATH_IMAGE106
添加到
Figure 100002_DEST_PATH_IMAGE107
Figure 966812DEST_PATH_IMAGE106
清零,返回上一步;
S1053、当所有的点云簇均被处理后,
Figure 89489DEST_PATH_IMAGE107
即为分割后的点云簇集合;
S106、滤除远离地面点云簇,并对剩余点云进行聚类分割;
S107、采用PSVM算法识别人体特征,输出
Figure 583443DEST_PATH_IMAGE071
,结束。
进一步地,一较佳实施例技术方案中,S2包括以下内容:
S21、提取初始骨架图
读入S15提取出的人体点云图,选取测地距离函数作为Morse函数,基于Dijkstra算法,计算模型上各点的测地距离,得到水平集,测地函数如下:
Figure 766163DEST_PATH_IMAGE108
其中,
Figure 100002_DEST_PATH_IMAGE109
为所选源点,
Figure 608217DEST_PATH_IMAGE110
为模型表面两点
Figure 100002_DEST_PATH_IMAGE111
Figure 65743DEST_PATH_IMAGE112
间的测地 距离;
选取源点
Figure 411273DEST_PATH_IMAGE109
后,计算各个顶点的Morse函数值,按照每个点的函数值来划分水平 集,然后使用基于区域生长技术的连通域算法,按照从上到下、从左到右的顺序扫描图像, 遇到一个尚未标记的前景像素时就执行区域生长算法,完成标记过程,得到初始骨架图;
S22、对初始骨架图预处理
进行剪枝和整理操作,通过遍历所有骨架,设置阈值条件删除毛刺,或合并节点,去除由噪声带来的错误分枝和闭环,经过粗略优化构成合适下一步处理的预处理骨架图;
S23、精准优化骨架图
采用蛇模型进行优化将曲线移动到需要捕捉的特征或目标位置,即模型的中轴位置,获得精准优化骨架线,提取骨骼数据。
进一步地,一较佳实施例技术方案中,S21中
Figure 100002_DEST_PATH_IMAGE113
源点的选择算法为:
首先,计算模型的重心坐标
Figure 296053DEST_PATH_IMAGE114
Figure 100002_DEST_PATH_IMAGE115
其中n为模型所包含的顶点数,
Figure 625403DEST_PATH_IMAGE116
为模型的重心;
其次,遍历模型中所有的点,计算所有点与重心
Figure 100002_DEST_PATH_IMAGE117
的空间欧氏距离,找到距离重心最 远的顶点
Figure 886620DEST_PATH_IMAGE118
,再遍历所有的点,找到离
Figure 100002_DEST_PATH_IMAGE119
最远的点
Figure 617816DEST_PATH_IMAGE120
,则
Figure 100002_DEST_PATH_IMAGE121
点为源点
Figure 694004DEST_PATH_IMAGE122
源点选择DRG初始骨架的起点;
S21中区域生长算法过程为:以当前像素为种子,用新标签记录当前像素,以同样标签标记与其相邻的所有像素中的前景像素,然后以每个相邻前景像素为种子进行递归;再采用连通域标记算法,对每个水平集进行连通域标记,该算法基于区域生长技术而完成;算法过程如下:
S2111、首先将空间分成若干个栅格,每个栅格具有相同的尺寸,将空间按照其坐标值分配到各个栅格中;
S2112、遍历所有栅格,删除点数小于1的栅格,则在空间构成三维二值模型;
S2113、对三维空间的二值模型利用基于区域生长技术的标记算法;每个栅格均具有一个标签,将该标签赋予栅格内的每一个点,完成空间点云的连通域标记;
得到各个水平集的连通子区间,并将每个连通子区间的点收缩,得到相应节点,然后按照算法规则连接形成骨架;
连接节点的算法如下:
S2121、按照节点所在的水平集所对应的Morse函数值从小到大的顺序遍历每一个节点,判断当前节点与下一个水平集中各节点的连接关系;
S2122、两个节点是否链接由以下标准来决定,即:两个节点所属的子集是否连通,若两子集连通,则连接两节点,若不连通则不进行连接;
S2123、判断两个点集是否连通的方法是遍历第一个子集中的所有顶点,查阅每个顶点的k-领域点,如果存在某一个领域点属于第二个子集,则这两个子集是互相连通的,则连接两个子集对应的节点形成骨架。
进一步地,一较佳实施例技术方案中,S22中骨架剪枝和整理的算法如下:
S2211、遍历所有骨架,统计所有
Figure 100002_DEST_PATH_IMAGE123
个节点的度数,用
Figure 776230DEST_PATH_IMAGE124
表示,其中
Figure 100002_DEST_PATH_IMAGE125
为节点 索引号,为从0到
Figure 44400DEST_PATH_IMAGE126
的整数;
S2212、找到
Figure 98944DEST_PATH_IMAGE124
为0的节点,和
Figure 794367DEST_PATH_IMAGE124
为1但是与其相连的节点的
Figure 100002_DEST_PATH_IMAGE127
值大于2 的节点,找到上述这些节点后将其删除;
S2213、针对子集个数突然增加而相隔
Figure 363889DEST_PATH_IMAGE128
个或小于
Figure 435750DEST_PATH_IMAGE129
个水平集后又突然减少的某一个 水平集中连通区间,将连通子集个数突变的几个水平集内的节点合并为一个节点,其中
Figure 344800DEST_PATH_IMAGE128
值设为2;
S2214、将
Figure 476704DEST_PATH_IMAGE127
值大于3的所有节点找出来,其中相邻的节点合并。
进一步地,一较佳实施例技术方案中,S22中初始骨架预处理还进行调整处理,调整处理骨架曲线的算法如下:
S2221、通过遍历所有骨架线,统计每个节点的
Figure 471205DEST_PATH_IMAGE130
值,当
Figure 550020DEST_PATH_IMAGE130
值大于3时,则判 定该节点为分叉部位中心点;
S2222、找到分叉中心点后,沿着分叉数量最多方向的反方向进行调整,将该节点调整到上一个节点的位置;若出现多个方向的分叉数量相同且为最多,则选择最后一次检测到的分叉数量最多方向的反方向;然后判断分叉点上所连接的分支骨架线都是否位于体内的,若没有到达体内则循环移动分叉点,直到全部分叉点都移至体内为止;
所述S2222中判断空间某条直线是否在体内的方法为:在该直线上均匀插入若干个点,如果这些插入点全部位于体内,说明该条直线位于体内;
具体判断插入的所有点是否位于体内的方法如下:对于直线上每个待判断的插入点;经过插入点做一个平面,选择经过插入点的与面平行的平面,此平面在人体点云模型上截得一个具有一定厚度的二维图形平面,设定一定的厚度阈值;对截面上的点云构成的形状进行连通区域标记,得到若干个连通的图形,分别判断插入点与各个连通图形的相对位置;连接插入点与连通图形的重心得到一条直线连线,过插入点做直线的垂线,如果垂线穿过连通图形,则说明点在模型内部,反之则在外部,接着判断插入点与下一个连通图形的相对位置,如果插入点在所有连通图形的外部,则该点在模型体外。
进一步地,一较佳实施例技术方案中,S23精准优化骨架图中具体包括以下操作步骤:
S231、遍历所有骨架,统计每个节点上所连接骨架的段数
Figure 313576DEST_PATH_IMAGE131
,将
Figure DEST_PATH_IMAGE132
值大于2的节 点标记为分支节点,并称其为分支部位中心节点,则该节点所在水平集为人体模型的分支 部位;
S232、找到分支部位所有偏离中轴的目标线段,即与分支部位中心节点所连接的骨架,并记录目标线段个数N;
S233、以目标线段的两端点为首尾点,在其中均匀的插入m个插入点,插入点与首尾点 按顺序分别表示为
Figure 147540DEST_PATH_IMAGE133
,这些点离散地组成了原目标线段;
S234、按照公式
Figure DEST_PATH_IMAGE134
,计算初始曲线的能量
Figure 960163DEST_PATH_IMAGE135
=,为曲线能量,为曲线内能,D为曲线上的点
Figure 523048DEST_PATH_IMAGE139
到边缘的距离;
S235、按照公式
Figure DEST_PATH_IMAGE140
计算插入点的移 动矢量
Figure 527913DEST_PATH_IMAGE141
,并按照该矢量的大小和方向更新每个插入点的新位置,形成新曲线;、、为插入点的移动矢量;D为到边缘的距离;
S236、按照S234计算方法,计算新曲线的能量
Figure 42257DEST_PATH_IMAGE145
的大小;
S237、如果
Figure DEST_PATH_IMAGE146
,则将当前
Figure 311564DEST_PATH_IMAGE147
的值赋给
Figure DEST_PATH_IMAGE148
,并循环执行S235~S236步骤,直到第一 次出现
Figure 487331DEST_PATH_IMAGE149
为止;
S238、对步骤S232中统计出来的N条目标线段分别执行步骤S233~S237,针对每段曲线进行优化;
S239、目标线段最终成为位于模型中轴上的一条曲线,具有准确的拓扑结构,从而获得精准优化骨架线,提取骨骼数据。
本发明的有益效果为:
先在目标点云数据中过滤不需要的点云数据,通过局部直方图和支持向量机处理,进行所需人体点云的数据提取,然后进行初步骨架提取后,通过剪枝、去噪点等降噪预处理,得到没有冗余分支的符合人体模型拓扑结构的骨架模型,再对骨架曲线进行修正,调整至最佳位置,获取最终骨架位置,进行骨架提取,能够自动化完成人体点云模型的骨架提取,并尽可能模拟人体骨骼的实际表现,同时在鲁棒性、抗噪能力以及实时性上具有较为良好的性能,去除人体点云数据以外的远景、天花板以及地平面等噪声,减少目标识别的复杂度,提高计算机视觉处理的实时性,提取出目标的精准点云数据,加快后期处理速度,减少存储空间,针对模型骨架曲线所有性质均达到最理想状;提取的骨架信息可以广泛推广应用,如3D建模,姿态识别,动画模拟等。
附图说明
图1是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法在体素网格滤波过程中的RGB图像原图、点云图和VG滤波后点云图,点云图和滤波后点云图中的a线和b线是以深度相机原点为中心的平面坐标轴;
图2是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法分割去除背景过程中的点云空间坐标示意图;
图3是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法的人体识别提取的流程示意图;
图4是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法提取初始骨架图过程中不同姿态的DRG示意图;
图5是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法的粗优化效果图;
图6是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法精准优化流程示意图;
图7是本发明基于深度相机点云数据的3D人体骨骼识别和提取方法优化后骨架线示意图。
具体实施方式
如图所示,本发明一较佳实施方式提供一种基于深度相机点云数据的3D人体骨骼识别和提取方法,具体分为两个部分,先进行关于人体点云的数据提取,然后再使用提取的人体点云数据进行骨架提取,提取的骨架信息可以广泛应用,如3D建模,姿态识别,动画模拟等。
S1、关于目标人体点云数据的识别与提取,在目标点云数据中过滤不需要的点云数据,提取所需点云数据,再进行局部直方图和支持向量机处理,可以有效的提取人体点云数据特征。具体步骤如下:
S11.深度过滤
目前已知的深度相机的探测深度可以到达60米的距离,而在实际应用 中往往这些数据是没有用的,所以先进行简单的阈值过滤处理,根据使用场景设置探测距 离阈值
Figure 678141DEST_PATH_IMAGE151
,将采集到的点云数据
Figure DEST_PATH_IMAGE152
根据深度进行过滤,去除超过使用场景所要求最 大深度
Figure 961836DEST_PATH_IMAGE153
的点云数据,生成新的点云数据
Figure DEST_PATH_IMAGE154
,减少不必要的数据量,从而达到减少运算 量,提升效率。
S12.点云滤波
由于深度体感相机采集的原始点云数据量大,直接处理会增加系统运算负担。本发明采用点云体素化网格VG滤波器,在识别人体点云前,对点云进行过滤,体素网格法对于曲面采样点具有较高效率,可以有效减少点云密度,提高点云分割速度,同时保证局部点云细节特征,体素滤波要考虑点云的压缩效率和后期处理时间,确保点云特征不丢失的前提下设定压缩参数,为后期的聚类分割做准备。VG滤波器通过创建一个三维体素栅格,体素重心表示为:
Figure 351229DEST_PATH_IMAGE155
其中:P为目标体素,为体素基本单元,
Figure 697897DEST_PATH_IMAGE157
为点云最小点,
Figure DEST_PATH_IMAGE158
为点云中在体素基 元各个方向上的扩展体素,
Figure 731898DEST_PATH_IMAGE092
为体素P的重心,为基于基元的矢量积取整函 数。
如图1所示,分别是RGB图像原图、点云图和VG滤波后点云图:
其中,点云图和滤波后点云图中的a线和b线是以深度相机原点为中心的平面坐标轴。
对于640×480的深度图像,采用体素网格法向下取整得到的体素范围内的点云簇 具有相同标志,进一步计算点云
Figure 962208DEST_PATH_IMAGE154
在体素
Figure 127610DEST_PATH_IMAGE161
下的中心
Figure 224879DEST_PATH_IMAGE092
信息。VG滤波器将原始点云数据
Figure 57706DEST_PATH_IMAGE154
根据体素比例投影到新点云集中,在新的点云集中每一个点都有唯一ID标志,根据ID对 原始点云数据进行处理,经过VG滤波后的点云
Figure DEST_PATH_IMAGE162
可以滤除不必要的点云簇,获得新的点云 集
Figure 949438DEST_PATH_IMAGE163
;有效提高后期人体识别效率,多次的体素滤波可以获得具有最佳点云特征的体素 值。
S13.去除背景
经过体素滤波后的点云
Figure 605066DEST_PATH_IMAGE162
中仍然含有一些背景噪声,其中地平面噪声最为突出,会影 响到人体识别效果。本方法将通过获取地平面点云重心和法向量,识别出地平面并分割点 云,以达到有效减少人体识别过程中的计算量。
本发明实施例中采用随机采样RANSAC方法去除局外点云,构建一个仅由局内点云组成的基本子集。首先对点云进行直通滤波,滤除垂直方向干扰点,根据深度相机的高度以及体素滤波后的点云尺寸得到直通的滤波参数为:
Figure 100002_DEST_PATH_IMAGE164
Figure 37184DEST_PATH_IMAGE165
点云空间坐标如图2所示;
Figure 100002_DEST_PATH_IMAGE166
轴方向为点云高度;
Figure 521255DEST_PATH_IMAGE167
为点云
Figure 849469DEST_PATH_IMAGE166
方向的最大和最小值;
Figure 100002_DEST_PATH_IMAGE168
为地面阈值,该 值为经验值;
Figure 255042DEST_PATH_IMAGE169
Figure 959693DEST_PATH_IMAGE166
方向直通滤波参数;
Figure 235954DEST_PATH_IMAGE097
为相机距离地面高度;由分割后点云平 面方程可得点云簇平面高度和法向量。
由点云平面及夹角公式:
Figure 100002_DEST_PATH_IMAGE170
Figure 531806DEST_PATH_IMAGE171
Figure 159096DEST_PATH_IMAGE172
其中:、、、为点云中的任意平面的平面方程系数,arccos()是反余弦函 数,
Figure 642194DEST_PATH_IMAGE176
,“·”表示向量点乘,“”表示标量乘法。
可以得到点云向量及其夹角,分割过程中不考虑点云法线方向;滤除
Figure DEST_PATH_IMAGE177
Figure 673921DEST_PATH_IMAGE178
点云平面,计算剩余点云到点距离
Figure 100002_DEST_PATH_IMAGE180
Figure 444617DEST_PATH_IMAGE181
其中:
Figure 232445DEST_PATH_IMAGE097
为深度相机高度;
Figure 100002_DEST_PATH_IMAGE182
为地平面参数,其最小值在
Figure 134541DEST_PATH_IMAGE183
接近90和
Figure 100002_DEST_PATH_IMAGE184
接近
Figure 677518DEST_PATH_IMAGE097
时产 生;则第
Figure 563435DEST_PATH_IMAGE185
个点云为地面向量
Figure 100002_DEST_PATH_IMAGE186
,为地面到点的距离。
通过观察可以发现,地面点是具有同一高度和不同深度的点云簇,只要测得的地面点云平均高度在深度相机系统误差允许范围内即可满足。由于深度相机特殊设计结构也会引起一定的系统误差,这些误差同样会影响平面点云的识别精度。本方法在实验过程中,深度图像中心距离镜头的平均距离为4.2m,引起的深度相机的系统误差为4.12cm,本方法采用聚类分割法,进行背景去除。
由上述可以看出,点云分割后可以获得修正后的法向量。上述方法可以获得真实的地面点云法线。
S14.进一步分割
在获取去除地面后的点云数据后,对点云进行欧式聚类分割,再根据人体特征进行人体识别。
深度相机点云簇形状不规则且分布不均匀,可在三维空间使用固定大小的体素网格表示,并采用kd-tree结构填充,对点云簇进行欧式聚类分割,该结构具有二叉树结构,且不需要空间等分,能比八叉树更好的包围图元。
欧式聚类分割采用三维空间点欧式距离,若有空间点
Figure 893943DEST_PATH_IMAGE187
Figure DEST_PATH_IMAGE188
,则两点的空间距离表示为:
Figure 735997DEST_PATH_IMAGE189
进而可以得出
Figure 865628DEST_PATH_IMAGE190
,若点
Figure DEST_PATH_IMAGE191
Figure 539054DEST_PATH_IMAGE192
间距离小于
Figure 95938DEST_PATH_IMAGE193
,则标记 该点为点云簇中点。设置好欧式分割点距离参数
Figure 894129DEST_PATH_IMAGE193
,本发明实施例中设置的
Figure 100002_DEST_PATH_IMAGE194
,能得 到非常好的点云簇分割效果。当图中物体点云簇集中时,合理设置分割点间的距离,以免被 分割算法错误的滤除。
S15.人体识别
本文采用人体识别PSVM算法,在得到可能包含人体点云簇后,由直方图特征(HOG)特性,对获取像素点梯度值进行L2-norm归一化得:
Figure 952084DEST_PATH_IMAGE195
,其中:
Figure DEST_PATH_IMAGE196
为分式有意义的极小值。
根据支持向量机SVM定义,得到特征向量
Figure 683280DEST_PATH_IMAGE197
Figure DEST_PATH_IMAGE198
是每个cell单元数目,默认值为9;
Figure 738960DEST_PATH_IMAGE199
为block包含的cell个数,默认值为4;
Figure DEST_PATH_IMAGE200
是图像中block个数,默认值为15×7。通过计算方向梯度直方图特征
Figure 552677DEST_PATH_IMAGE201
可以表示人体特征。
由SVM训练出人体样本方向梯度直方图特征,从而得到SVM分类器参数
Figure 820847DEST_PATH_IMAGE062
,并计算人体可信度;
在SVM模型中,分离超平面定义为:
Figure 836394DEST_PATH_IMAGE064
分离决策函数:
Figure 609178DEST_PATH_IMAGE065
其中,
Figure 415460DEST_PATH_IMAGE066
为分离超平面参数,通过训练具有不同体侧的样本的人体梯度特征得 到,“×”表示向量叉乘, ()为符号函数,当>0时()=1;当=0时()=-1;
通过下式得到人体点云可信度
Figure 671363DEST_PATH_IMAGE204
,判断是否满足人体梯度直方图特征;
Figure 85027DEST_PATH_IMAGE072
其中
Figure 171932DEST_PATH_IMAGE073
为特征向量
Figure 445306DEST_PATH_IMAGE205
Figure 617661DEST_PATH_IMAGE206
是由SVM训练出的人体样本方向梯度直方 图特征得到的SVM分类器参数
Figure 569437DEST_PATH_IMAGE076
通过以上方法便可以识别出人体点云数据,最后通过下图来体现整个基于深度相机点云数据的人体识别及提取的具体过程如图3所示;
具体人体识别的PSVM算法描述如下:
Figure 573165DEST_PATH_IMAGE078
为单位向量,
Figure 217773DEST_PATH_IMAGE079
为体素长度,
Figure 470900DEST_PATH_IMAGE080
为人、深度相机位置;
S101、开始,输入源点云,记作
Figure 226366DEST_PATH_IMAGE081
S1011、设置基本体素
Figure 350180DEST_PATH_IMAGE082
进行滤波;
S1012、体素参数
Figure 100002_DEST_PATH_IMAGE207
S1013、获得点云最大、最小值:
Figure 696848DEST_PATH_IMAGE084
,计算在
Figure 640533DEST_PATH_IMAGE085
方向点云体素矢量
Figure 199690DEST_PATH_IMAGE086
S1014、体素矢量积
Figure 912431DEST_PATH_IMAGE087
S1015、计算所有乘积系数点云簇
Figure 633263DEST_PATH_IMAGE088
Figure 84752DEST_PATH_IMAGE088
Figure 182021DEST_PATH_IMAGE089
Figure 218110DEST_PATH_IMAGE090
Figure 109842DEST_PATH_IMAGE091
S1016、如果
Figure 28120DEST_PATH_IMAGE092
只有一个,则
Figure 194659DEST_PATH_IMAGE208
;若有n个
Figure 616413DEST_PATH_IMAGE092
相同,则
Figure 944626DEST_PATH_IMAGE096
,遍历所有 点;
S102、根据相机高度
Figure 287883DEST_PATH_IMAGE097
,计算直通滤波参数;
S103、使用平面模型进行点云分割;
S104、计算点云簇
Figure 992534DEST_PATH_IMAGE098
,判断地面;
S105、对剔除地面后得点云
Figure 534373DEST_PATH_IMAGE099
填充kd-tree结构,进行欧式聚类分割;
S1051、对于点
Figure 299067DEST_PATH_IMAGE100
,将点
Figure 926358DEST_PATH_IMAGE099
添加到点云簇
Figure 100002_DEST_PATH_IMAGE209
中,若
Figure 903541DEST_PATH_IMAGE102
(其中,
Figure 299887DEST_PATH_IMAGE210
),检测点
Figure 100002_DEST_PATH_IMAGE211
是否被处理,再次执行此步骤;
S1052、当
Figure 766641DEST_PATH_IMAGE105
所有的点均已被处理,此时将
Figure 881227DEST_PATH_IMAGE106
添加到
Figure 865364DEST_PATH_IMAGE107
Figure 384725DEST_PATH_IMAGE106
清零,返回上一步;
S1053、当所有的点云簇均被处理后,
Figure 225642DEST_PATH_IMAGE107
即为分割后的点云簇集合;
S106、滤除远离地面点云簇,并对剩余点云进行聚类分割;
S107、采用PSVM算法识别人体特征,输出
Figure 93104DEST_PATH_IMAGE071
,结束。
S2、关于已知人体点云数据,在得到只与人体有关的点云数据之后,先进行初步的骨架提取,然后做一些预处理,包括剪枝、去噪点,进行降噪处理,得到没有冗余分支的符合人体模型拓扑结构的骨架模型,接着对骨架曲线进行修正,调整至最佳位置,获取最终骨架位置。具体步骤如下:
S21.提取初始骨架图
本方法是通过提取人体点云模型的离散Reeb图(Discrete Reeb Graph,DRG)来得到模型的拓扑形状信息,用来作为模型的初始骨架。DRG是基于Reeb图的基本原理提出的,是Reeb图的一种推广形式,而Morse理论则是Reeb图的数学基础。
读入S15提取出的人体点云图,选取测地距离函数作为Morse函数,基于Dijkstra算法,计算模型上各点的测地距离,得到水平集,测地函数如下:
Figure 677669DEST_PATH_IMAGE212
其中,
Figure 48608DEST_PATH_IMAGE122
为所选源点,
Figure 60426DEST_PATH_IMAGE110
为模型表面两点
Figure 87288DEST_PATH_IMAGE111
Figure 100002_DEST_PATH_IMAGE213
间的测地 距离。
关于
Figure 6702DEST_PATH_IMAGE122
源点的选择,遵循以下原则:首先,源点最好位于点云模型的某一拓 扑结构的末端;其次,源点与模型上的点的相对位置必须是固定的,这样提取的DRG才能适 合拓扑结构形状复杂的模型,具有旋转平移不变性,这对运动中的人体模型显得尤为重要, 从而适应不同姿势的变换。 所以综上所述,本发明将源点选在DRG初始骨架的起点,具体算 法为:首先,按照下式计算出模型的重心坐标
Figure 497727DEST_PATH_IMAGE114
Figure 680446DEST_PATH_IMAGE214
其中n为模型所包含的顶点数,
Figure 256921DEST_PATH_IMAGE114
为模型的重心。
接着遍历模型中所有的点,计算所有点与重心
Figure 100002_DEST_PATH_IMAGE215
的空间欧氏距离,找到距离重心 最远的顶点,再遍历所有的点,找到离最远的点,将点作为源点
Figure 211791DEST_PATH_IMAGE122
选取源点
Figure 938920DEST_PATH_IMAGE122
后便可以根据算法得到各个顶点的Morse函数值,按照每个点的 函数值来划分水平集,然后使用基于区域生长技术的连通域算法,该算法只需扫描一次图 像就可完成标记过程。算法按从上到下、从左到右的顺序扫描图像,当遇到一个尚未标记的 前景像素时就执行区域生长算法,区域生长算法过程为:以当前像素为种子,用新标签记录 当前像素,以同样标签标记与其相邻的所有像素中的前景像素,然后以每个相邻前景像素 为种子进行递归。接着采用连通域标记算法,对每个水平集进行连通域标记,该算法是基于 区域生长技术而完成的。算法过程如下:
首先将空间分成若干个栅格,每个栅格有相同的尺寸,将空间按照其坐标值分配到各个栅格中。
再遍历所有栅格,将里面点数小于1的栅格删除,则在空间构成了三维二值模型。
最后对这个三维空间的二值模型利用基于区域生长技术的标记算法。每个栅格都有一个标签,将该标签赋予栅格内的每一个点,就完成了空间点云的连通域标记。
得到各个水平集的连通子区间,并将每个连通子区间的点收缩,得到相应节点,然后按照一定规则连接起来形成骨架。
连接节点的算法如下:
第一步,按照节点所在的水平集所对应的Morse函数值从小到大的顺序遍历每一个节点,判断当前节点与下一个水平集中各节点的连接关系。
第二步,两个节点是否链接由以下标准来决定,即:两个节点所属的子集是否连通,若两子集连通,则连接两节点,若不连通则不进行连接。
第三步,判断两个点集是否连通的方法是遍历第一个子集中的所有顶点,查阅每个顶点的k-领域点,如果存在某一个领域点属于第二个子集,则这两个子集是互相连通的,则连接两个子集对应的节点形成骨架。
不同姿态的DRG如图4所示;
S22.针对初始骨架的预处理
预处理主要解决的是去除由噪声等带来的错误分枝和闭环,由上图可以看出,初始骨 架存在以上问题,需要进行剪枝和处理的操作,主要通过遍历所有骨架,设置阈值及合适的 条件删除毛刺,或合并节点;对子集个数的变化趋势做判断,在某一个水平集中连通区间子 集个数突然增加而相隔
Figure 873378DEST_PATH_IMAGE129
个或小于
Figure 866741DEST_PATH_IMAGE128
个水平集后又突然减少时,说明该处存在一个较小的 闭环或者错误分枝、毛刺,将连通子集个数突变的几个水平集内的节点合并,合并为一个节 点;如:某一个水平集中连通区间子集个数突然增加,相隔小于等于2个的水平集后又突然 减小,说明此处存在一个较小的闭环或错误分枝,将这些节点合并可以产生良好的优化效 果;在这里将
Figure 152229DEST_PATH_IMAGE128
值设为2,从而能够找到足够小的闭环以避免误判。
关于上述骨架剪枝和整理的算法详述如下:
第一步,遍历所有骨架,统计所有
Figure 685979DEST_PATH_IMAGE123
个节点的度数,用
Figure 740522DEST_PATH_IMAGE130
表示,其中
Figure 701525DEST_PATH_IMAGE125
为节点 索引号,为从0到
Figure 208730DEST_PATH_IMAGE218
的整数;
第二步,找到
Figure DEST_PATH_IMAGE219
为0的节点,和
Figure 15012DEST_PATH_IMAGE219
为1但是与其相连的节点的
Figure 455220DEST_PATH_IMAGE127
值大于2 的节点,找到上述这些节点后将其删除;
第三步,针对子集个数突然增加而相隔
Figure 321545DEST_PATH_IMAGE128
个或小于
Figure 581625DEST_PATH_IMAGE129
个水平集后又突然减少的某一 个水平集中连通区间,将连通子集个数突变的几个水平集内的节点合并为一个节点,其中
Figure 191598DEST_PATH_IMAGE128
值设为2;
第四步,将
Figure 423996DEST_PATH_IMAGE220
值大于3的所有节点找出来,其中相邻的节点合并。
完成上述预处理后,骨架曲线将被整理为合适下一步处理的初始骨架图。
根据上图还可以看出,骨架预处理的另一部分是将骨架线移动至人体点云内部,因为初始骨架线的提取算法并没有对模型体内和体外区域进行判断而只是由点的邻接关系来进行算法的计算,因此无法保证所提出的骨架曲线全部位于模型体内。
所以还需要对上述初始骨架图进行进行调整处理,进行调整骨架线的算法如下:
首先通过遍历所有骨架线,统计每个节点的
Figure 461223DEST_PATH_IMAGE124
值,当
Figure 474178DEST_PATH_IMAGE124
值大于3时,则可以 判定该节点为分叉部位中心点;
其次,找到分叉中心点后,沿着分叉数量最多方向的反方向进行调整,将该节点调整到上一个节点的位置;若出现多个方向的分叉数量相同且为最多,则选择最后一次检测到的分叉数量最多方向的反方向;然后判断分叉点上所连接的分支骨架线都是否位于体内的,若没有到达体内则循环移动分叉点,直到全部分叉点都移至体内为止。
判断空间某条直线是否在体内的方法为:在该直线上均匀插入若干个点,如果这些插入点全部位于体内,说明该条直线位于体内;
具体判断插入的所有点是否位于体内的方法如下:对于直线上每个待判断的插入点;经过插入点做一个平面,选择经过插入点的与面平行的平面,此平面在人体点云模型上截得一个具有一定厚度的二维图形平面,设定一定的厚度阈值;对截面上的点云构成的形状进行连通区域标记,得到若干个连通的图形,分别判断插入点与各个连通图形的相对位置;连接插入点与连通图形的重心得到一条直线连线,过插入点做直线的垂线,如果垂线穿过连通图形,则说明点在模型内部,反之则在外部,接着判断插入点与下一个连通图形的相对位置,如果插入点在所有连通图形的外部,则该点在模型体外。
根据上述的预处理可以得到经过粗略优化的骨架图,可以看出经过粗优化的初始骨架线中没有了影响拓扑结构判断的毛刺等误差,且骨架线更加接近中轴位置,但仍有一些偏差需要做更加精细的优化。粗优化效果如图5所示。
S23.骨架图的精准优化
通过上述步骤,可以得到拓扑一致性较好的初始骨架图,但是在模型拓扑分支部位部位中轴性没有达到模型骨架的要求,为了能够更加真实和准确的表达骨架模型,还需要对骨架模型进行精准优化的过程。
本发明实施例中采用1987年由Kass等人提出的蛇模型进行优化,也称为主动轮廓线模型(Active Contour Model),采用蛇模型方法优化的目的是将曲线移动到模型的中轴位置,因为模型的中轴就是要捕捉的特征或目标位置。
蛇模型的数学表示如下:假设建立一个主动轮廓线模型曲线,其数学表达式为:
Figure 887842DEST_PATH_IMAGE221
该曲线上的能量函数定义为:
Figure 974746DEST_PATH_IMAGE222
其中
Figure DEST_PATH_IMAGE223
为曲线模型的内部能量,数学表示为:
Figure 982541DEST_PATH_IMAGE224
其中
Figure DEST_PATH_IMAGE225
Figure 748372DEST_PATH_IMAGE226
分别是
Figure DEST_PATH_IMAGE227
Figure 434568DEST_PATH_IMAGE228
的一阶导数和二阶导数,系数
Figure DEST_PATH_IMAGE229
Figure 235034DEST_PATH_IMAGE230
分别来控制蛇 模型的弯曲性和光滑性,
Figure 100002_DEST_PATH_IMAGE231
是曲线的外部能量,它约束蛇模型向着图像特征靠近,由外力 场决定。
推动蛇模型运动的外部力也与外立场有着密不可分的关系,由外力场决定,一般 来说,外部力
Figure 348483DEST_PATH_IMAGE232
为外部能量的微分,即
Figure 100002_DEST_PATH_IMAGE233
本发明实施例中蛇模型变换的外立场选择空间距离场,目的是推动骨架线移向中轴的位置。
建立空间距离场:假设空间某位置
Figure 601610DEST_PATH_IMAGE234
,遍历模型上所有点,找到离
Figure 357077DEST_PATH_IMAGE235
点最 近的点
Figure 418574DEST_PATH_IMAGE236
,两点之间的距离为
Figure 234083DEST_PATH_IMAGE235
处的距离场值:
Figure 100002_DEST_PATH_IMAGE237
其中,
Figure 36823DEST_PATH_IMAGE238
为两点的欧式距离,
Figure 100002_DEST_PATH_IMAGE239
为模型上 的点;根据公式
Figure 64821DEST_PATH_IMAGE240
Figure 100002_DEST_PATH_IMAGE241
将外立场作为蛇模型变换的外立场,计算初始骨架模型的总能量可以变为:
Figure 571371DEST_PATH_IMAGE242
接着,提取出待优化的目标线段,本文选择与拓扑分支中心点相连接的骨架作为待优化的目标线段,在线段中插入若干点将其离散化,可以使蛇形能量函数离散为:
Figure 100002_DEST_PATH_IMAGE243
其中,
Figure 292202DEST_PATH_IMAGE125
为插入的离散点和端点的数量之和,
Figure 723183DEST_PATH_IMAGE244
为曲线上相邻点之 间距离的平均值。上式中的第一项表示曲线的总长度,为了控制曲线的形状,使最后得到的 目标曲线尽量短;第二项是为了控制曲线的光滑程度,使得最后得到的曲线尽量光滑;第三 项是曲线上所有点的距离场之和,值通常取负值以限制曲线使之最终位于距离场的极值 上;
Figure 617190DEST_PATH_IMAGE246
分别是三项所占的权重。
定义好曲线上所绑定的能量函数后,接着定义外力场,根据蛇模型的定义,此外力 为外力场的梯度,本发明取距离场的梯度的定义。根据公式:
Figure DEST_PATH_IMAGE247
,空 间中一点
Figure 918858DEST_PATH_IMAGE248
的距离场的定义为该点到模型上最近的点之间的距离值,表示为:
Figure 76170DEST_PATH_IMAGE249
其中,
Figure 100002_DEST_PATH_IMAGE250
为点
Figure 853502DEST_PATH_IMAGE248
的坐标,则该点的距离场梯度矢量
Figure 692145DEST_PATH_IMAGE251
可定 义如下:
Figure 379478DEST_PATH_IMAGE252
其中为单位长度,其大小与点云模型相邻点之间的平均距离值为同一数量级。在距 离场梯度的推动下,由离散点组成的初始化骨架曲线逐渐改变形状,目标骨架线的长度和 光滑度作为内力来约束曲线的形状,距离场作为外立场约束曲线的形状向中轴靠近,当能 量
Figure 504429DEST_PATH_IMAGE254
达到极小值时,曲线将最接近模型的中轴位置,从而完成骨架线的精细优化过程。
具体步骤如下:
第一步,遍历所有骨架,统计每个节点上所连接骨架的段数
Figure 644424DEST_PATH_IMAGE131
,将
Figure 552337DEST_PATH_IMAGE132
值大于2的 节点标记为分支节点,并称其为分支部位中心节点,则该节点所在水平集为人体模型的分 支部位;
第二步,找到分支部位所有偏离中轴的目标线段,即与分支部位中心节点所连接的骨架,并记录目标线段个数N;
第三步,以目标线段的两端点为首尾点,在其中均匀的插入
Figure 97106DEST_PATH_IMAGE129
个插入点,插入点与首 尾点按顺序分别表示为
Figure 596221DEST_PATH_IMAGE133
,这些点离散地组成了原目标线段;
第四步,按照公式
Figure DEST_PATH_IMAGE255
,计算初始曲线的能量
Figure 20249DEST_PATH_IMAGE135
=,为曲线能量,为曲线内能,D为曲线上的点
Figure 647222DEST_PATH_IMAGE139
到边缘的距离;
第五步,按照公式
Figure 693676DEST_PATH_IMAGE256
计算插入点的 移动矢量
Figure 210108DEST_PATH_IMAGE141
,并按照该矢量的大小和方向更新每个插入点的新位置,形成新曲线;
第六步,按照公式
Figure DEST_PATH_IMAGE257
,计算新曲线的能量
Figure 785445DEST_PATH_IMAGE258
的大小;
第七步,如果
Figure 652907DEST_PATH_IMAGE146
,则将当前
Figure 237472DEST_PATH_IMAGE147
的值赋给
Figure 811673DEST_PATH_IMAGE148
,并循环执行第五~第六步骤,直到第 一次出现
Figure DEST_PATH_IMAGE259
为止;
第八步,对第二步骤中统计出来的N条目标线段分别执行第三~第七步骤3~7,针对每段曲线进行优化。
流程如图6所示。
经过上述内容进行优化后的骨架线,目标线段最终成为位于模型中轴上的一条曲线,具有准确的拓扑结构,并且具有良好的中轴性,如图7所示。
最后将骨骼数据提取出来,可以用于三维重建、模式识别等。

Claims (10)

1.一种基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:包括以下步骤:
S1、人体点云数据的识别与提取;
在深度相机采集的目标点云数据中过滤不需要的点云数据,提取所需点云数据,再进行局部直方图和支持向量机处理,提取人体点云数据特征;
S2、提取人体骨架点云数据;
在得到只与人体有关的点云数据之后,先进行初步的骨架提取,然后做预处理,包括剪枝、去噪点,进行降噪处理,得到没有冗余分支的符合人体模型拓扑结构的骨架模型,接着对骨架曲线进行修正,调整至最佳位置,获取最终骨架位置。
2.根据权利要求1所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:S1包括以下内容:
S11、简单阈值过滤处理;
根据使用场景设置探测距离阈值
Figure DEST_PATH_IMAGE002
,将采集到的点云数据
Figure DEST_PATH_IMAGE004
根据深度进行过 滤,去除超过使用场景所要求最大深度
Figure DEST_PATH_IMAGE006
的点云数据,生成新的点云数据
Figure DEST_PATH_IMAGE008
S12、体素网格滤波;
在识别人体点云前,对点云进行过滤;
采用点云体素化网格VG滤波器,创建一个三维体素栅格,体素重心表示为:
Figure DEST_PATH_IMAGE010
其中:P为目标体素,为体素基本单元,
Figure DEST_PATH_IMAGE014
为点云最小点,
Figure DEST_PATH_IMAGE016
为点云中在体素基元各个方向上的扩展体素,
Figure DEST_PATH_IMAGE019
为体素P的重心,为基于基元的矢量积取整函数;
进一步计算点云
Figure 498150DEST_PATH_IMAGE008
在体素下的重心
Figure DEST_PATH_IMAGE024
信息;VG滤波器将第一步获得的点云数据
Figure DEST_PATH_IMAGE025
根据体素比例投影到新点云集中,在新的点云集中每一个点都有唯一ID标志,根据ID对 原始点云数据进行处理,获得新的点云集
Figure DEST_PATH_IMAGE027
S13、分割去除背景;
对于S12滤波后的点云
Figure 336662DEST_PATH_IMAGE027
,获取地平面点云重心和法向量,识别出地平面并分割点云;
采用随机采样RANSAC方法去除局外点云,构建一个仅由局内点云组成的基本子集;
首先对点云进行直通滤波,滤除垂直方向干扰点,根据深度相机的高度,以及体素滤波后的点云尺寸,得到直通的滤波参数为:
Figure DEST_PATH_IMAGE029
Figure DEST_PATH_IMAGE031
Figure DEST_PATH_IMAGE033
轴方向为点云高度;
Figure DEST_PATH_IMAGE035
为点云
Figure 772191DEST_PATH_IMAGE033
方向的最大和最小值;
Figure DEST_PATH_IMAGE037
为地面阈值,该 值为经验值;
Figure DEST_PATH_IMAGE039
Figure 757946DEST_PATH_IMAGE033
方向直通滤波参数;
Figure DEST_PATH_IMAGE041
为相机距离地面高度;
再由分割后点云平面方程可得点云簇平面高度和法向量;
由点云平面及夹角公式:
Figure DEST_PATH_IMAGE043
Figure DEST_PATH_IMAGE045
Figure DEST_PATH_IMAGE047
其中:、、、为点云中的任意平面的平面方程系数,arccos()是反余弦函数,
Figure DEST_PATH_IMAGE059
,“·”表示向量点乘,“”表示标量乘法;
得到点云向量及其夹角,分割过程中不考虑点云法线方向;滤除
Figure DEST_PATH_IMAGE063
Figure DEST_PATH_IMAGE065
点 云平面,计算剩余点云到点距离
Figure DEST_PATH_IMAGE069
Figure DEST_PATH_IMAGE071
其中:
Figure 667259DEST_PATH_IMAGE041
为深度相机高度;
Figure DEST_PATH_IMAGE073
为地平面参数,其最小值在
Figure DEST_PATH_IMAGE075
接近90和
Figure DEST_PATH_IMAGE077
接近
Figure 83197DEST_PATH_IMAGE041
时产 生;则第
Figure DEST_PATH_IMAGE079
个点云为地面向量
Figure DEST_PATH_IMAGE081
,为地面到点的距离;
点云分割获得修正后的法向量,获得真实的地面点云法线;
S14、进一步分割;
对S13去除地面点云后的点云数据进行欧式聚类分割,再根据人体特征进行人体识别,获得人体点云簇;
在三维空间使用固定大小的体素网格表示,并采用kd-tree结构填充,设置欧式分割点 距离参数
Figure DEST_PATH_IMAGE087
,对点云簇进行欧式聚类分割;
欧式聚类分割采用三维空间点欧式距离,若有空间点
Figure DEST_PATH_IMAGE089
Figure DEST_PATH_IMAGE091
,则两点的空间距离表示为:
Figure DEST_PATH_IMAGE093
进而得出
Figure DEST_PATH_IMAGE095
,若点
Figure DEST_PATH_IMAGE097
Figure DEST_PATH_IMAGE099
间距离小于
Figure DEST_PATH_IMAGE101
,则标记该点为 点云簇中点;
S15、人体识别;
采用人体识别算法,对S14获得的人体点云簇,由直方图特征HOG特性,对获取像素点梯 度值进行L2-norm归一化得:
Figure DEST_PATH_IMAGE103
,其中:
Figure DEST_PATH_IMAGE105
为分式有意义的极小值;
根据支持向量机SVM定义,得到特征向量
Figure DEST_PATH_IMAGE107
是每个cell单元数目,默认 值为9;
Figure DEST_PATH_IMAGE109
为block包含的cell个数,默认值为4;
Figure DEST_PATH_IMAGE111
是图像中block个数,默认值为15×7;通 过计算方向梯度直方图特征
Figure DEST_PATH_IMAGE113
表示人体特征;
由SVM训练出人体样本方向梯度直方图特征,从而得到SVM分类器参数
Figure DEST_PATH_IMAGE115
,并 计算人体可信度;
在SVM模型中,分离超平面定义为:
Figure DEST_PATH_IMAGE119
分离决策函数:
Figure DEST_PATH_IMAGE121
其中,
Figure DEST_PATH_IMAGE123
为分离超平面参数,通过训练具有不同体侧的样本的人体梯度特征得 到,“×”表示向量叉乘, ()为符号函数,当>0时()=1;当=0时 ()=-1;
通过下式得到人体点云可信度
Figure DEST_PATH_IMAGE129
,判断是否满足人体梯度直方图特征;
Figure DEST_PATH_IMAGE131
其中
Figure DEST_PATH_IMAGE133
为特征向量
Figure DEST_PATH_IMAGE135
Figure DEST_PATH_IMAGE137
是由SVM训练出的人体样本方向梯度直方 图特征得到的SVM分类器参数
Figure DEST_PATH_IMAGE139
识别出人体点云图。
3.根据权利要求2所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:所述S12中重复多次体素网格滤波。
4.根据权利要求2所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征 在于:所述S14设置欧式分割点距离参数
Figure DEST_PATH_IMAGE141
5.根据权利要求2所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:所述人体识别采用PSVM算法,具体步骤如下:
Figure DEST_PATH_IMAGE143
为单位向量,
Figure DEST_PATH_IMAGE145
为体素长度,
Figure DEST_PATH_IMAGE147
为人、深度相机位置;
S101、开始,输入源点云,记作
Figure DEST_PATH_IMAGE149
S1011、设置基本体素
Figure DEST_PATH_IMAGE151
进行滤波;
S1012、体素参数
Figure DEST_PATH_IMAGE153
S1013、获得点云最大、最小值:
Figure DEST_PATH_IMAGE155
,计算在
Figure DEST_PATH_IMAGE157
方向点云体素矢量
Figure DEST_PATH_IMAGE159
S1014、体素矢量积
Figure DEST_PATH_IMAGE161
S1015、计算所有乘积系数点云簇
Figure DEST_PATH_IMAGE163
Figure DEST_PATH_IMAGE164
Figure DEST_PATH_IMAGE166
Figure DEST_PATH_IMAGE168
Figure DEST_PATH_IMAGE170
S1016、如果
Figure 241733DEST_PATH_IMAGE019
只有一个,则
Figure DEST_PATH_IMAGE172
;若有个
Figure 306641DEST_PATH_IMAGE019
相同,则
Figure DEST_PATH_IMAGE176
,遍历所 有点;
S102、根据相机高度
Figure 892343DEST_PATH_IMAGE041
,计算直通滤波参数;
S103、使用平面模型进行点云分割;
S104、计算点云簇
Figure DEST_PATH_IMAGE178
,判断地面;
S105、对剔除地面后得点云
Figure DEST_PATH_IMAGE180
填充kd-tree结构,进行欧式聚类分割;
S1051、对于点
Figure DEST_PATH_IMAGE182
,将点
Figure 181242DEST_PATH_IMAGE180
添加到点云簇
Figure DEST_PATH_IMAGE184
中,若
Figure DEST_PATH_IMAGE186
(其中,
Figure DEST_PATH_IMAGE187
),检测点
Figure DEST_PATH_IMAGE189
是否被处理,再次执行此步骤;
S1052、当
Figure DEST_PATH_IMAGE190
所有的点均已被处理,此时将
Figure DEST_PATH_IMAGE192
添加到
Figure DEST_PATH_IMAGE194
Figure 875398DEST_PATH_IMAGE192
清零,返回上一步;
S1053、当所有的点云簇均被处理后,
Figure 416101DEST_PATH_IMAGE194
即为分割后的点云簇集合;
S106、滤除远离地面点云簇,并对剩余点云进行聚类分割;
S107、采用PSVM算法识别人体特征,输出
Figure DEST_PATH_IMAGE195
,结束。
6.根据权利要求1或2所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:所述S2包括以下内容:
S21、提取初始骨架图
读入S15提取出的人体点云图,选取测地距离函数作为Morse函数,基于Dijkstra算法,计算模型上各点的测地距离,得到水平集,测地函数如下:
Figure DEST_PATH_IMAGE197
其中,
Figure DEST_PATH_IMAGE199
为所选源点,
Figure DEST_PATH_IMAGE201
为模型表面两点
Figure 1451DEST_PATH_IMAGE180
Figure DEST_PATH_IMAGE202
间的测地距 离;
选取源点
Figure 133355DEST_PATH_IMAGE199
后,计算各个顶点的Morse函数值,按照每个点的函数值来划分水平 集,然后使用基于区域生长技术的连通域算法,按照从上到下、从左到右的顺序扫描图像, 遇到一个尚未标记的前景像素时就执行区域生长算法,完成标记过程,得到初始骨架图;
S22、对初始骨架图预处理
进行剪枝和整理操作,通过遍历所有骨架,设置阈值条件删除毛刺,或合并节点,去除由噪声带来的错误分枝和闭环,经过粗略优化构成合适下一步处理的预处理骨架图;
S23、精准优化骨架图
采用蛇模型进行优化将曲线移动到需要捕捉的特征或目标位置,即模型的中轴位置,获得精准优化骨架线,提取骨骼数据。
7.根据权利要求6所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征 在于:所述S21中
Figure DEST_PATH_IMAGE203
源点的选择算法为:
首先,计算模型的重心坐标
Figure DEST_PATH_IMAGE205
Figure DEST_PATH_IMAGE207
其中n为模型所包含的顶点数,
Figure DEST_PATH_IMAGE209
为模型的重心;
其次,遍历模型中所有的点,计算所有点与重心
Figure DEST_PATH_IMAGE211
的空间欧氏距离,找到距离重心最远 的顶点
Figure DEST_PATH_IMAGE213
,再遍历所有的点,找到离
Figure DEST_PATH_IMAGE215
最远的点
Figure DEST_PATH_IMAGE217
,则
Figure 845965DEST_PATH_IMAGE217
点为源点
Figure DEST_PATH_IMAGE218
所述源点选择DRG初始骨架的起点;
所述S21中区域生长算法过程为:以当前像素为种子,用新标签记录当前像素,以同样标签标记与其相邻的所有像素中的前景像素,然后以每个相邻前景像素为种子进行递归;再采用连通域标记算法,对每个水平集进行连通域标记,该算法基于区域生长技术而完成;算法过程如下:
S2111、首先将空间分成若干个栅格,每个栅格具有相同的尺寸,将空间按照其坐标值分配到各个栅格中;
S2112、遍历所有栅格,删除点数小于1的栅格,则在空间构成三维二值模型;
S2113、对三维空间的二值模型利用基于区域生长技术的标记算法;每个栅格均具有一个标签,将该标签赋予栅格内的每一个点,完成空间点云的连通域标记;
得到各个水平集的连通子区间,并将每个连通子区间的点收缩,得到相应节点,然后按照算法规则连接形成骨架;
连接节点的算法如下:
S2121、按照节点所在的水平集所对应的Morse函数值从小到大的顺序遍历每一个节点,判断当前节点与下一个水平集中各节点的连接关系;
S2122、两个节点是否链接由以下标准来决定,即:两个节点所属的子集是否连通,若两子集连通,则连接两节点,若不连通则不进行连接;
S2123、判断两个点集是否连通的方法是遍历第一个子集中的所有顶点,查阅每个顶点的k-领域点,如果存在某一个领域点属于第二个子集,则这两个子集是互相连通的,则连接两个子集对应的节点形成骨架。
8.根据权利要求7所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:所述S22中骨架剪枝和整理的算法如下:
S2211、遍历所有骨架,统计所有
Figure DEST_PATH_IMAGE220
个节点的度数,用
Figure DEST_PATH_IMAGE222
表示,其中
Figure DEST_PATH_IMAGE224
为节点索 引号,为从0到
Figure DEST_PATH_IMAGE226
的整数;
S2212、找到
Figure 317922DEST_PATH_IMAGE222
为0的节点,和
Figure 81479DEST_PATH_IMAGE222
为1但是与其相连的节点的
Figure DEST_PATH_IMAGE228
值大于2的 节点,找到上述这些节点后将其删除;
S2213、针对子集个数突然增加而相隔
Figure DEST_PATH_IMAGE230
个或小于
Figure 181022DEST_PATH_IMAGE230
个水平集后又突然减少的某一个 水平集中连通区间,将连通子集个数突变的几个水平集内的节点合并为一个节点,其中
Figure DEST_PATH_IMAGE231
值设为2;
S2214、将
Figure DEST_PATH_IMAGE232
值大于3的所有节点找出来,其中相邻的节点合并。
9.根据权利要求8所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:所述S22中初始骨架预处理还进行调整处理,调整处理骨架曲线的算法如下:
S2221、通过遍历所有骨架线,统计每个节点的
Figure 459556DEST_PATH_IMAGE222
值,当
Figure DEST_PATH_IMAGE233
值大于3时,则判 定该节点为分叉部位中心点;
S2222、找到分叉中心点后,沿着分叉数量最多方向的反方向进行调整,将该节点调整到上一个节点的位置;若出现多个方向的分叉数量相同且为最多,则选择最后一次检测到的分叉数量最多方向的反方向;然后判断分叉点上所连接的分支骨架线都是否位于体内的,若没有到达体内则循环移动分叉点,直到全部分叉点都移至体内为止;
所述S2222中判断空间某条直线是否在体内的方法为:在该直线上均匀插入若干个点,如果这些插入点全部位于体内,说明该条直线位于体内;
具体判断插入的所有点是否位于体内的方法如下:对于直线上每个待判断的插入点;经过插入点做一个平面,选择经过插入点的与面平行的平面,此平面在人体点云模型上截得一个具有一定厚度的二维图形平面,设定厚度阈值;对截面上的点云构成的形状进行连通区域标记,得到若干个连通的图形,分别判断插入点与各个连通图形的相对位置;连接插入点与连通图形的重心得到一条直线连线,过插入点做直线的垂线,如果垂线穿过连通图形,则说明点在模型内部,反之则在外部,接着判断插入点与下一个连通图形的相对位置,如果插入点在所有连通图形的外部,则该点在模型体外。
10.根据权利要求9所述基于深度相机点云数据的3D人体骨骼识别和提取方法,其特征在于:所述S23精准优化骨架图中具体包括以下操作步骤:
S231、遍历所有骨架,统计每个节点上所连接骨架的段数
Figure DEST_PATH_IMAGE235
,将
Figure DEST_PATH_IMAGE237
值大于2的节 点标记为分支节点,并称其为分支部位中心节点,则该节点所在水平集为人体模型的分支 部位;
S232、找到分支部位所有偏离中轴的目标线段,即与分支部位中心节点所连接的骨架,并记录目标线段个数N;
S233、以目标线段的两端点为首尾点,在其中均匀的插入m个插入点,插入点与首尾点 按顺序分别表示为
Figure DEST_PATH_IMAGE239
,这些点离散地组成了原目标线段;
S234、按照公式
Figure DEST_PATH_IMAGE241
,计算初始曲线的能量
Figure DEST_PATH_IMAGE243
=,为曲线能量,为曲线内能,D为曲线上的点
Figure DEST_PATH_IMAGE250
到边缘的距离;
S235、按照公式
Figure DEST_PATH_IMAGE252
计算插入点的移动 矢量
Figure DEST_PATH_IMAGE254
,并按照该矢量的大小和方向更新每个插入点的新位置,形成新曲线;、、为插入点的移动矢量;D为到边缘的距离;
S236、按照S234计算方法,计算新曲线的能量
Figure DEST_PATH_IMAGE262
的大小;
S237、如果
Figure DEST_PATH_IMAGE264
,则将当前
Figure DEST_PATH_IMAGE266
的值赋给
Figure DEST_PATH_IMAGE268
,并循环执行S235~S236步骤,直到第一 次出现
Figure DEST_PATH_IMAGE270
为止;
S238、对步骤S232中统计出来的N条目标线段分别执行步骤S233~S237,针对每段曲线进行优化;
S239、目标线段最终成为位于模型中轴上的一条曲线,具有准确的拓扑结构,从而获得精准优化骨架线,提取骨骼数据。
CN202010803213.3A 2020-08-11 2020-08-11 基于深度相机点云数据的3d人体骨骼识别和提取方法 Pending CN111681274A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010803213.3A CN111681274A (zh) 2020-08-11 2020-08-11 基于深度相机点云数据的3d人体骨骼识别和提取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010803213.3A CN111681274A (zh) 2020-08-11 2020-08-11 基于深度相机点云数据的3d人体骨骼识别和提取方法

Publications (1)

Publication Number Publication Date
CN111681274A true CN111681274A (zh) 2020-09-18

Family

ID=72458244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010803213.3A Pending CN111681274A (zh) 2020-08-11 2020-08-11 基于深度相机点云数据的3d人体骨骼识别和提取方法

Country Status (1)

Country Link
CN (1) CN111681274A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112337093A (zh) * 2021-01-08 2021-02-09 成都完美时空网络技术有限公司 一种虚拟对象的分簇方法、装置、存储介质和电子装置
CN112509142A (zh) * 2020-11-10 2021-03-16 华南理工大学 基于面向表型精确鉴定的豆株快速三维重建方法
CN112767319A (zh) * 2020-12-30 2021-05-07 无锡祥生医疗科技股份有限公司 基于点云数据分割的乳腺超声成像方法、装置及存储介质
CN112802089A (zh) * 2021-02-05 2021-05-14 重庆大学 一种基于分叉数量自动估计的点云骨架线提取方法及系统
CN113035038A (zh) * 2021-03-29 2021-06-25 安徽工业大学 一种虚拟骨科手术练习系统及模拟训练方法
CN113066064A (zh) * 2021-03-29 2021-07-02 郑州铁路职业技术学院 基于人工智能的锥束ct图像生物结构识别及三维重建系统
CN113658195A (zh) * 2021-08-16 2021-11-16 金地(集团)股份有限公司 图像分割方法、装置及电子设备
CN113792745A (zh) * 2021-09-17 2021-12-14 重庆大学 单面树木点云骨架线提取方法及系统
CN114419276A (zh) * 2022-01-19 2022-04-29 厦门大学 基于最优传输和聚类的曲线骨架提取方法
TWI798663B (zh) * 2021-03-22 2023-04-11 伍碩科技股份有限公司 深度影像補償方法及其系統
CN116520289A (zh) * 2023-07-04 2023-08-01 东莞市新通电子设备有限公司 五金件加工过程智能控制方法及相关装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156714A (zh) * 2015-04-24 2016-11-23 北京雷动云合智能技术有限公司 基于骨骼关节特征和表面特征融合的人体行为识别方法
CN107330903A (zh) * 2017-06-29 2017-11-07 西安理工大学 一种人体点云模型的骨架提取方法
US20180286071A1 (en) * 2017-03-30 2018-10-04 Body Surface Translations Inc. Determining anthropometric measurements of a non-stationary subject
CN111274909A (zh) * 2020-01-16 2020-06-12 重庆邮电大学 一种基于深度学习的人体点云骨架提取方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156714A (zh) * 2015-04-24 2016-11-23 北京雷动云合智能技术有限公司 基于骨骼关节特征和表面特征融合的人体行为识别方法
US20180286071A1 (en) * 2017-03-30 2018-10-04 Body Surface Translations Inc. Determining anthropometric measurements of a non-stationary subject
CN107330903A (zh) * 2017-06-29 2017-11-07 西安理工大学 一种人体点云模型的骨架提取方法
CN111274909A (zh) * 2020-01-16 2020-06-12 重庆邮电大学 一种基于深度学习的人体点云骨架提取方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
侯培: "三维人体点云模型骨架提取方法研究", 《中国优秀硕士学位论文全文数据库》 *
杨晶东等: "一种有效的基于点云特征人体识别方法", 《计算机应用研究》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112509142A (zh) * 2020-11-10 2021-03-16 华南理工大学 基于面向表型精确鉴定的豆株快速三维重建方法
CN112509142B (zh) * 2020-11-10 2024-04-26 华南理工大学 基于面向表型精确鉴定的豆株快速三维重建方法
CN112767319A (zh) * 2020-12-30 2021-05-07 无锡祥生医疗科技股份有限公司 基于点云数据分割的乳腺超声成像方法、装置及存储介质
CN112337093A (zh) * 2021-01-08 2021-02-09 成都完美时空网络技术有限公司 一种虚拟对象的分簇方法、装置、存储介质和电子装置
CN112802089A (zh) * 2021-02-05 2021-05-14 重庆大学 一种基于分叉数量自动估计的点云骨架线提取方法及系统
CN112802089B (zh) * 2021-02-05 2023-09-01 重庆大学 一种基于分叉数量自动估计的点云骨架线提取方法及系统
TWI798663B (zh) * 2021-03-22 2023-04-11 伍碩科技股份有限公司 深度影像補償方法及其系統
CN113066064B (zh) * 2021-03-29 2023-06-06 郑州铁路职业技术学院 基于人工智能的锥束ct图像生物结构识别及三维重建系统
CN113066064A (zh) * 2021-03-29 2021-07-02 郑州铁路职业技术学院 基于人工智能的锥束ct图像生物结构识别及三维重建系统
CN113035038A (zh) * 2021-03-29 2021-06-25 安徽工业大学 一种虚拟骨科手术练习系统及模拟训练方法
CN113658195A (zh) * 2021-08-16 2021-11-16 金地(集团)股份有限公司 图像分割方法、装置及电子设备
CN113658195B (zh) * 2021-08-16 2024-03-19 金地(集团)股份有限公司 图像分割方法、装置及电子设备
CN113792745A (zh) * 2021-09-17 2021-12-14 重庆大学 单面树木点云骨架线提取方法及系统
CN113792745B (zh) * 2021-09-17 2023-10-20 重庆大学 单面树木点云骨架线提取方法及系统
CN114419276A (zh) * 2022-01-19 2022-04-29 厦门大学 基于最优传输和聚类的曲线骨架提取方法
CN114419276B (zh) * 2022-01-19 2024-05-03 厦门大学 基于最优传输和聚类的曲线骨架提取方法
CN116520289B (zh) * 2023-07-04 2023-09-01 东莞市新通电子设备有限公司 五金件加工过程智能控制方法及相关装置
CN116520289A (zh) * 2023-07-04 2023-08-01 东莞市新通电子设备有限公司 五金件加工过程智能控制方法及相关装置

Similar Documents

Publication Publication Date Title
CN111681274A (zh) 基于深度相机点云数据的3d人体骨骼识别和提取方法
CN107742102B (zh) 一种基于深度传感器的手势识别方法
CN106910242B (zh) 基于深度相机进行室内完整场景三维重建的方法及系统
CN100559398C (zh) 自动的深度图像配准方法
Li et al. Feature-preserving 3D mesh simplification for urban buildings
Tam et al. Registration of 3D point clouds and meshes: A survey from rigid to nonrigid
Ladicky et al. From point clouds to mesh using regression
CN108363983A (zh) 一种基于无人机影像与重建点云的城市植被分类方法
CN110852182B (zh) 一种基于三维空间时序建模的深度视频人体行为识别方法
CN113379898B (zh) 一种基于语义分割的三维室内场景重建方法
CN109712143B (zh) 一种基于超像素多特征融合的快速图像分割方法
Pound et al. A patch-based approach to 3D plant shoot phenotyping
CN104143080A (zh) 基于三维点云的三维人脸识别装置及方法
CN109766873A (zh) 一种混合可变形卷积的行人再识别方法
WO2018133119A1 (zh) 基于深度相机进行室内完整场景三维重建的方法及系统
Hu et al. Geometric feature enhanced line segment extraction from large-scale point clouds with hierarchical topological optimization
Xiang et al. Interactive natural image segmentation via spline regression
Hou et al. Multi-modal feature fusion for 3D object detection in the production workshop
Zhao et al. 3D object tracking via boundary constrained region-based model
Liao et al. Fast hierarchical animated object decomposition using approximately invariant signature
Labatut et al. Hierarchical shape-based surface reconstruction for dense multi-view stereo
Pound et al. Surface reconstruction of plant shoots from multiple views
Zou et al. A 3D model feature extraction method using curvature-based shape distribution
Cheng et al. Tree skeleton extraction from a single range image
Wang et al. Current situation and review of image segmentation

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200918

RJ01 Rejection of invention patent application after publication