CN110603570A - 对象物识别方法、装置、系统、程序 - Google Patents

对象物识别方法、装置、系统、程序 Download PDF

Info

Publication number
CN110603570A
CN110603570A CN201780090522.7A CN201780090522A CN110603570A CN 110603570 A CN110603570 A CN 110603570A CN 201780090522 A CN201780090522 A CN 201780090522A CN 110603570 A CN110603570 A CN 110603570A
Authority
CN
China
Prior art keywords
parameter
time
unit
point
portions
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.)
Granted
Application number
CN201780090522.7A
Other languages
English (en)
Other versions
CN110603570B (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN110603570A publication Critical patent/CN110603570A/zh
Application granted granted Critical
Publication of CN110603570B publication Critical patent/CN110603570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/77Determining position or orientation of objects or cameras using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • 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/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • 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/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开一种由计算机执行的对象物识别方法,该方法包含:从获得三维位置信息的传感器,获取涉及具有多个关节的对象物的表面的点群数据,并导出或者获取表示上述对象物的多个部位中的每一个部位的位置以及轴向的第一参数且是第一时刻的第一参数,并基于比上述第一时刻靠后的第二时刻的上述点群数据、上述第一时刻的上述第一参数、以及具有轴的几何模型,导出上述第二时刻的上述第一参数。

Description

对象物识别方法、装置、系统、程序
技术领域
本公开涉及对象物识别方法、对象物识别装置、对象物识别系统以及对象物识别程序。
背景技术
已知有基于散布在人等对象物的表面的点群数据,来追踪对象物的骨骼的技术(例如,参照非专利文献1)。在该技术中,对点群数据的分布,假定混合高斯分布,并且假定各高斯分布的中心(特征点)被固定于对象物的表面,在这样的假定下,通过按每一帧追踪特征点,来追踪对象物的骨骼。
非专利文献1:由M.Ye and R.Yang撰写的"Real-time Simultaneous Pose andShape Estimation for Articulated Objects Using a Single Depth Camera"in CVPR(2014)
然而,在如上述那样的现有技术中,由于需要对每一帧进行修正特征点的偏差的迭代计算,所以存在计算负荷相对较高的问题。例如,在如上述那样的现有技术中,若每帧实施10次以上的迭代计算,则即使驱使GPU(Graphics Processing Unit:图形处理单元)也预测为30fps是极限。
发明内容
因此,在一个侧面,本发明的目的在于以相对较低的计算负荷高精度地识别对象物的关节或者骨骼。
根据本公开的一个方面提供一种由计算机执行的对象物识别方法,该方法包含:
从获得三维位置信息的传感器,获取涉及具有多个关节的对象物的表面的点群数据,
导出或者获取表示上述对象物的多个部位中的每一个部位的位置以及轴向的第一参数且是第一时刻的第一参数,
基于比上述第一时刻靠后的第二时刻的上述点群数据、上述第一时刻的上述第一参数、以及具有轴的几何模型,导出上述第二时刻的上述第一参数。
根据本公开,能够以相对较低的计算负荷高精度地识别对象物的关节或者骨骼。
附图说明
图1是示意性地表示一个实施例的对象物识别系统的简要结构的图。
图2是表示对象物识别装置的硬件结构的一个例子的图。
图3是表示对象物识别装置的功能的一个例子的框图。
图4是关节模型的一个例子的说明图。
图5是示意性地表示EM算法部124的导出结果的图。
图6是由长度计算部128进行的基于半峰全宽的决定方法的说明用的简要流程图。
图7是表示对象物识别系统1的整体动作的一个例子的简要流程图。
图8是表示部位识别处理的一个例子的简要流程图。
图9A是由对象物识别系统进行的处理的说明图。
图9B是由对象物识别系统进行的处理的说明图。
图10是χkl'的说明图。
图11是表示对用于χkl'的说明的部位分配编号的例子的图。
图12是整体动作的一个例子的简要流程图。
图13是微小拟合处理的一个例子的简要流程图。
具体实施方式
以下,参照附图对各实施例进行详细说明。在本说明书中,只要未特别提及,所谓的“导出某个参数(例如后述的参数θ)”意味着“导出该参数的值”。
图1是示意性地表示一个实施例的对象物识别系统1的简要结构的图。在图1中,为了说明,示有对象者S(对象物的一个例子)。
对象物识别系统1包含距离图像传感器21和对象物识别装置100。
距离图像传感器21获取对象者S的距离图像。例如,距离图像传感器21是三维图像传感器,进行空间整体的传感检测来测量距离,并获取如数字图像那样每个像素具有距离信息的距离图像(点群数据的一个例子)。距离信息的获取方式是任意的。例如,距离信息的获取方式可以为将特定的图案投影至对象并利用图像传感器读取该图像,并根据投影图案的几何学形变通过三角测量的方式获取距离的主动立体(Active stereo)方式。另外,也可以是照射激光并通过图像传感器读取反射光,并根据其相位的偏差来测量距离的TOF(Time-of-Flight)方式。
此外,距离图像传感器21可以以位置被固定的方式来设置,也可以以位置可动的方式来设置。
对象物识别装置100基于从距离图像传感器21获得的距离图像,来识别对象者S的关节、骨骼。关于该识别方法,在后面详细叙述。对象者S是人、人型的机器人,具有多个关节。以下,作为一个例子,对象者S是人。对象者S根据用途,可以是特定的个人,也可以是不特定的人。例如,在用途是体操等的比赛时的动作的解析的情况下,对象者S也可以为比赛选手。此外,在用途为对如体操、花样滑冰等的比赛时的剧烈的动作(高速并且复杂的动作)进行解析的情况下,距离图像传感器21优选如图1中示意性所示那样设置多个,以获得接近对象者S的三维形状的点群数据。
对象物识别装置100也可以以与距离图像传感器21连接的计算机的方式来实现。对象物识别装置100与距离图像传感器21的连接可以通过由有线形成的通信路径、由无线形成的通信路径、或者它们的组合来实现。例如,在对象物识别装置100是相对于距离图像传感器21相对远程地配置的服务器的方式的情况下,对象物识别装置100可以经由网络与距离图像传感器21连接。在该情况下,网络例如可以包含移动电话的无线通信网、互联网、World Wide Web(万维网)、VPN(virtual private network:虚拟专用网)、WAN(Wide AreaNetwork:广域网)、有线网络、或者它们的任意的组合等。另一方面,在对象物识别装置100相对于距离图像传感器21配置于相对附近的情况下,由无线形成的通信路径也可以通过近距离无线通信、蓝牙(注册商标)、Wi-Fi(Wireless Fidelity:无线高保真)等来实现。另外,对象物识别装置100也可以通过不同的2个以上的装置(例如计算机、服务器等)协作来实现。
图2是表示对象物识别装置100的硬件结构的一个例子的图。
在图2所示的例子中,对象物识别装置100包含控制部101、主存储部102、辅助存储部103、驱动器装置104、网络I/F部106、输入部107。
控制部101是执行主存储部102、辅助存储部103中存储的程序的运算装置,从输入部107、存储装置接受数据,并在运算、加工之后,输出至存储装置等。控制部101例如也可以包含CPU(Central Processing Unit:中央处理器)、GPU。
主存储部102是ROM(Read Only Memory:只读存储器)、RAM(Random AccessMemory:随机存储器)等,是存储或者临时保存作为控制部101所执行的基本软件的OS、应用软件等的程序、数据的存储装置。
辅助存储部103是HDD(Hard Disk Drive:硬盘驱动器)等,是存储与应用软件等相关的数据的存储装置。
驱动器装置104从记录介质105例如软盘读出程序,并安装到存储装置。
记录介质105储存规定的程序。该记录介质105中储存的程序经由驱动器装置104被安装于对象物识别装置100。所安装的规定的程序能够由对象物识别装置100执行。
网络I/F部106是周边设备与对象物识别装置100的接口,其中,周边设备具有经由由有线和/或无线线路等数据传输路径构建的网络连接的通信功能。
输入部107具有具备光标键、数字输入以及各种功能键等的键盘、鼠标、切片板等。输入部107也可以对应于声音输入、手势等其他输入方法。
此外,在图2所示的例子中,以下说明的各种处理等能够通过使对象物识别装置100执行程序来实现。另外,也能够将程序记录于记录介质105,并使对象物识别装置100读取记录有该程序的记录介质105,而使以下说明的各种处理等实现。此外,记录介质105能够使用各种类型的记录介质。例如,可以是如CD-ROM、软盘、光磁盘等那样光、电或磁性记录信息的记录介质,如ROM、闪存等那样电性记录信息的半导体存储器等。此外,记录介质105不包含载波。
图3是表示对象物识别装置100的功能的一个例子的框图。
对象物识别装置100包含数据输入部110(获取部的一个例子)、一个场景骨骼识别部120(参数导出/获取部的一个例子)、以及几何模型数据库140(在图3中,记作“几何模型DB”)。另外,对象物识别装置100包含校准信息存储部142、微小拟合处理部150(导出处理部的一个例子)、以及输出部160。数据输入部110、一个场景骨骼识别部120、微小拟合处理部150、以及输出部160能够通过图2所示的控制部101执行主存储部102中存储的一个以上的程序来实现。几何模型数据库140也可以通过图2所示的辅助存储部103来实现。另外,校准信息存储部142也可以通过图2所示的主存储部102(例如RAM)来实现。此外,对象物识别装置100的功能的一部分也可以通过可内置于距离图像传感器21的计算机来实现。
从距离图像传感器21向数据输入部110输入距离图像(以下,称为“点群数据”),并且输入所使用的关节模型。点群数据如上所述,例如也可以在每个帧周期输入。另外,在使用多个距离图像传感器21的情况下,点群数据也可以包含来自多个距离图像传感器21的距离图像的集合。
所使用的关节模型是涉及对象者S的任意的模型,例如,是用多个关节和关节间的骨骼(链接)表示的模型。在本实施例中,作为一个例子,使用如图4所示的关节模型。图4所示的关节模型是头部具有1个关节、躯体部(躯干部)、两臂部、以及两腿部分别具有3个关节的16关节模型,头部将两端规定为关节,其他部分将两端以及中点这3个位置规定为关节。具体而言,由16个关节a0~a15、以及连接关节间的15个骨骼b1~b15(或者也称为“部位b1~b15”)构成。此外,为了能够理解,例如关节a4、a7是左右的肩的关节,关节a2是涉及颈椎的关节。另外,关节a4、a7是左右的髋关节,关节a0是涉及腰椎的关节。在这样的关节模型中,涉及髋关节的骨骼b14、b15、涉及肩的关节的骨骼b4、b7为仅通过使用后述的几何模型无法高精度地识别的骨骼(以下,也称为“隐藏骨骼”)。另外,在以下的说明中,关于与关节、部位相关的位置关系,所谓的“祖先”是指接近身体的中心的一侧,所谓的“子孙”是指远离身体的中心的一侧。
一个场景骨骼识别部120基于某一时刻(一个场景)的对象者S的点群数据,进行一个场景骨骼识别处理。一个场景骨骼识别处理包含通过对某一时刻(一个场景)的对象者S的点群数据进行使用几何模型的拟合,来生成作为拟合结果的校准信息。对于使用几何模型的拟合的方法,与校准信息的生成方法一起后述。以下,将通过一个场景骨骼识别部120生成校准信息的时刻称为“校准实施时刻”。校准实施时刻可以是初次的1个时刻,也可以在每个规定时间、规定的条件成立的情况下到来。
一个场景骨骼识别部120若生成校准信息,则将所生成的校准信息存储至校准信息存储部142。
此外,一个场景骨骼识别部120中的处理与后述的微小拟合处理部150中的处理相比处理负荷有意较高。因此,虽然取决于对象物识别装置100的处理能力,然而校准信息的生成也可能有花费比帧周期长的时间的情况。在该情况下,在成为能够开始由微小拟合处理部150进行的处理的状态之前(即校准信息的生成结束之前),可以对对象者S采取暂时静止等措施。
微小拟合处理部150基于校准实施时刻以后的某一时刻(一个场景)的对象者S的点群数据和校准信息存储部142内的校准信息,生成对象者S的骨骼信息。微小拟合处理部150通过使用几何模型的微小拟合处理,生成对象者S的骨骼信息。对于微小拟合处理的方法后述。骨骼信息也可以包含能够确定关节a0~a15的各位置的信息。另外,骨骼信息也可以包含能够确定骨骼b1~b15的位置、方向、粗细的信息。骨骼信息的用途是任意的,也可以利用于下一帧周期中的该骨骼信息的导出。另外,骨骼信息最终也可以利用于体操等的比赛时的对象者S的动作的解析。例如在体操的比赛时的对象者S的动作的解析中,也可以实现基于骨骼信息的技巧的识别。另外,作为其他用途,也可以对假定作业者的对象者S的动作进行解析,并利用于机器人程序。或者,也能够利用于基于手势的用户界面、个人的识别、熟练技术的定量化等。
输出部160向显示装置等(未图示)输出对象者S的骨骼信息(在图3中,记作“识别结果”)。例如,输出部160也可以在每个帧周期,大致实时地输出对象者S的骨骼信息。在该情况下,输出部160也可以在校准实施时刻,输出基于校准信息的对象者S的骨骼信息,在非校准实施时刻,输出来自微小拟合处理部150的对象者S的骨骼信息。或者,在对象者S的动作的解说用等中,输出部160也可以非实时地按时间序列输出骨骼信息。
根据本实施例,如上所述,通过微小拟合处理部150基于由一个场景骨骼识别部120进行的使用几何模型的拟合结果(校准信息)进行微小拟合处理,能够生成对象者S的骨骼信息。由此,由于与按每一帧执行由一个场景骨骼识别部120进行的使用几何模型的拟合的情况相比,计算负荷减少,所以能够以相对较低的计算负荷高精度地识别对象物的关节或者骨骼。由此,能够应用于体操、花样滑冰等高速并且复杂的动作的解析等。
以下,依次对一个场景骨骼识别部120、以及微小拟合处理部150进一步进行说明。
[一个场景骨骼识别部]
一个场景骨骼识别部120包含聚类部122、EM算法部124、模型优化部126、以及长度计算部128。另外,对象物识别装置100还包含部位识别部130、骨骼整形部132、以及校准信息生成部134。
聚类部122对被输入至数据输入部110的点群数据进行聚类,对每个类进行拟合并获取初始拟合结果(使用后述的几何模型的拟合所使用的初始值)。作为聚类方法,能够使用Kmeans++法等。此外,对聚类部122给予的类数可以通过手动输入,但也可以使用与骨骼模型相应的规定量。与骨骼模型相应的规定量例如是从涉及骨骼模型的部位的总数中减去涉及隐藏骨骼的部位的数量所得的值。即,在为图4所示的16关节(15个部位)模型的情况下,由于4个部位为隐藏骨骼,所以最初的类数亦即规定量为“11”。在该情况下,根据进行聚类的拟合结果,放弃模型的一部分。作为放弃方法,可以使用对能够在模型中说明的点群数据的数量的期待值亦即后验分布的数据和设定阈值,并放弃阈值以下的模型的方法。若决定出放弃数,则聚类部122能够通过再次以该类数进行拟合,而获得使用后述的几何模型的拟合所使用的初始值。
此外,在变形例中,也可以代替聚类部122,使用机械学习部获取拟合所使用的初始值。在该情况下,机械学习部基于被输入至数据输入部110的点群数据,对15个部位进行标签划分(部位识别)。也可以作为机械学习方式使用随机森林,作为特征量使用关注像素与周边像素的距离值之差。另外,也可以是将距离图像作为输入进行各像素的多类别分类(Multi-class Classification)的方式。另外,在随机森林的情况下也可以使用距离值之差以外的特征量,也可以使用也包含与特征量相当的参数来进行学习的深层学习(DeepLearning)。
EM算法部124基于被输入至数据输入部110的点群数据、几何模型数据库140内的几何模型、由聚类部122获得的拟合的初始值,通过EM算法导出参数θ。使用由聚类部122获得的拟合的初始值是因为在EM算法中在一定程度上给予接近解的初始值很有用。初始值是部位数M、后述的参数θ所涉及的初始值。几何模型数据库140内的几何模型例如是圆柱,以下,主要对为圆柱的情况进行说明。对于其他几何模型的可能性后述。
EM算法部124以点群数据xn最集中于几何模型的表面的方式决定参数θ。点群数据xn为用三维的空间坐标(x,y,z)表示的N个各点(例如位置向量)的集合(x1、x2、…、xN)。在该情况下,例如空间坐标的x成分以及y成分是图像平面内的二维坐标的值,x成分是水平方向的成分,y成分是垂直方向的成分。另外,z成分表示距离。
参数θ有涉及部位m(m=1、2、…、M')的几何模型(在这里为圆柱)的粗细(直径)rm、涉及部位m的几何模型的位置cm 0和方向em 0、以及方差σ2这4个。此外,所谓的部位m是每个几何模型的点群数据的部位(一部分),是几何模型以及伴随于此与对象者S的部位建立对应关系的部位。也有部位m与对象者S的2个部位同时建立对应关系的情况。例如,在对象者S伸肘的状态下,从肘的关节到手腕的关节(子孙侧的关节)的部位(图4的部位b6、部位b9)、以及从肘的关节到肩的关节(祖先侧的关节)的部位(图4的部位b5、部位b8)可以为一个部位m。
rm以及σ2是标量,cm 0以及em 0是向量。另外,em 0为单位向量。即,em 0是表示圆柱的轴的方向的单位向量。另外,位置cm 0是圆柱的轴上的任意的点的位置的位置向量。此外,圆柱的轴向的长度(高度)不确定。另外,几何模型的方向em 0与几何模型的轴向是相同的概念。
若假定点群数据xn与部位m的表面残差εm(xn,θ)(垂直于表面的方向的差)为高斯分布,则几何模型整体能够如下表示。
[式1]
在这里,p(xn)是点群数据xn的混合概率分布模型,如上述那样,σ2是方差,M'使用由聚类部122获得的类数。此时,对应的对数似然函数如下。
[式2]
在这里,N是数据数(涉及1帧的点群数据所包含的数据数)。
由于式2是混合高斯模型的对数似然函数,所以能够使用EM算法等。在本实施例中,EM算法部124基于EM算法,导出将对数似然函数最大化的参数θ以及方差σ2
在涉及部位m的几何模型是圆柱时,表面残差εm(xn,θ)能够如下表示。此外,向量间的符号“×”表示外积。
εm(xn,θ)=|(xn-em 0)×em 0|-rm
其中,在本实施例中,为了线性化,表面残差εm(xn,θ)表示为式2中的指数部分为平方差,具体而言如下。
[式3]
众所周知,EM算法是计算期待值的E步骤和将期待值最大化的M步骤的重复。
在E步骤中,EM算法部124计算以下的后验分布pnm
[式4]
在M步骤中,EM算法部124导出将以下的期待值Q(θ,σ2)最大化的参数θ以及方差σ2。此外,在M步骤中,后验分布pnm作为常量来处理。
[式5]
在这里,P是后验分布pnm的数据和的所有部位的和(以下,也称为“后验分布pnm的数据和的所有部位和”),如下。
[式6]
根据期待值Q(θ,σ2)的基于方差σ2的偏微分,得到将期待值Q(θ,σ2)最大化的方差σ2的推断值σ2 如下。
[式7]
若将该推断值σ2 代入式5的式子,则如下。
[式8]
关于参数θ的各要素(rm、cm 0、以及em 0),粗细rm的推断值r*m如下,能够直接最小化。
[式9]
在这里,对于式9中的表达式〈〉p,是使用后验分布pnm的平均操作,对于任意的张量或矩阵Anm如下。
[式10]
若着眼于方向em 0的推断值e*m 0是点群数据的主要成分,则能够基于主要成分分析导出。即,方向em 0的推断值e*m 0能够作为以下的方差协方差矩阵σxx的固有值的最大的固有向量的方向求出。
[式11]
σxx=<(xn-<xn>p)(xn-<xn>p)T>p
此外,通过式10所示的平均操作,对于m不取和。因此,〈xnp具有针对部位m的依存性,对应于涉及部位m的几何模型(圆柱)的重心(中心)。同样地,方差协方差矩阵σxx也是部位m固有的,对应于涉及部位m的几何模型(圆柱)的方向。
或者,由于期待值Q(θ,σ2)关于参数θ的各要素(rm、cm 0、以及em 0)是非线性的,所以方向em 0可以通过线性近似导出。具体而言,根据微小旋转得到的更新式以保存规范的方式来规定,如下。
[式12]
在这里,Δe是微小旋转向量。此时,Δe的推断值Δe通过以Δe对式8的式子进行微分而获得,如下。
[式13]
在这里,Bm的逆矩阵如下。
[式14]
式14中的W如下。
[式15]
此外,在式14、式15中(以下也相同),T表示倒置。在式15中,e1以及e2是与方向em 0正交的单位向量。
另外,式13中的anm、bnm如下(与图4所示的关节a0~a15、骨骼b1~b15的标记没有关系)。
[式16]
[式17]
因此,方向em 0的推断值e*m 0如下。
[式18]
此时,将粗细rm的推断值r*m代入式8的式子,根据位置cm 0的偏微分,如下能够直接导出位置cm 0的推断值c*m 0
[式19]
在这里,协方差矩阵σyy的逆矩阵、以及向量σy2y(下标「y2y」)如下。
[式20]
[式21]
此外,在上述的情况下,EM算法部124首先求出位置cm 0的推断值c*m 0,之后求出粗细rm的推断值r*m
此外,在变形例中,例如在通过其他测量持有对象者S的形状信息的情况下等,参数θ中的粗细rm可以由用户手动输入,也可以基于形状信息自动地设定。在该情况下,EM算法部124导出参数θ中的剩余的要素(位置cm 0以及方向em 0)。此外,其他测量可以是预先的精密的测量,也可以并行执行。
在EM算法部124对一个部位使用多种几何模型执行拟合时,模型优化部126导出所执行的多个种类中的拟合时适合度最良好的一种几何模型。
多种几何模型作为圆柱以外的几何模型,包含圆锥、梯形柱、楕圆柱、椭圆锥、以及梯形楕圆柱中的至少任意一个几何模型。其中,涉及一个部位的多种几何模型也可以不包含圆柱。另外,涉及一个部位的多种几何模型也可以按每个部位而不同。另外,对于部分特定的部位,也可以不使用多种几何模型,而使用单一的固定的几何模型。
例如,EM算法部124首先使用圆柱的几何模型,进行针对各部位的拟合。接着,EM算法部124将涉及某个部位的几何模型从圆柱切换为其它模型(例如圆锥等),进行针对该部位的拟合。然后,模型优化部126选择对数似然函数的最大的几何模型作为适合度最良好的一种几何模型。模型优化部126也可以代替对数似然函数的最大的几何模型,选择后验分布的数据和的所有部位和最大的几何模型作为适合度最良好的一种几何模型。
在为圆锥的情况下,表面残差εm(xn,θ)可以如下表示。
[式22]
在这里,位置cm 0对应于顶点位置,方向em 0是中心轴的单位向量。另外,向量nm是圆锥的表面上的某1点上的法线向量。
在为梯形柱的情况下,表面残差εm(xn,θ)可以与圆锥的情况相同。即在为梯形柱的情况下,能够通过对圆锥的一部分规定分布来表达。
在为楕圆柱的情况下,表面残差εm(xn,θ)可以如下表示。
[式23]
在这里,dm为焦距,am为剖面的椭圆的长轴的长度,nm'是长轴方向的单位向量。此外,同样地,位置cm0对应于轴上的位置,方向em 0是楕圆柱的轴(轴向)的单位向量。
另外,在为椭圆锥的情况下,表面残差εm(xn,θ)可以如下表达。
[式24]
在这里,ψm1以及ψm2分别是朝向长轴以及短轴方向的倾斜角。另外,同样地,位置cm 0对应于顶点位置,方向em 0是中心轴的单位向量。
另外,与梯形柱和圆锥的关系相同,在梯形楕圆柱的情况下,表面残差εm(xn,θ)也可以与椭圆锥的情况相同。
在这里,在使用将长度公式化为无限的圆柱、楕圆柱等几何模型的情况下,在E步骤中,EM算法部124优选进行有限长度处理。有限长度处理为仅对点群数据xn中的满足规定的条件的数据计算后验分布pnm,对于其他数据将后验分布pnm设为0的处理。有限长度处理是用于防止与部位m无关的数据的混入的处理,规定的条件被设定为能够排除与部位m无关的数据。由此,能够抑制实际上没有关系的点群数据给解析带来影响。满足规定的条件的数据例如也可以是满足以下的式子的数据。
[式25]
在这里,lm 0是涉及部位m的输入长度,α是余量(例如1.2)。根据式25,对于点群数据中的距离几何模型的中心(或者中心位置,以下相同)的轴向的距离为规定距离(=αlm 0)以上的数据,将后验分布设为0。对于输入长度lm 0而言,也能够进行手动输入,也可以基于通过其他测量获得的对象者S的形状信息设定。
长度计算部128在EM算法部124利用将长度公式化为无限的圆柱、楕圆柱等几何模型的情况下,导出与从几何模型的中心到端部的长度(从部位m的中心到端部的长度)对应的长度参数lm。例如,长度计算部128也可以使用方差协方差矩阵σxx如下计算部位m的长度参数lm
[式26]
其中,C是常量倍的修正值。
或者,长度计算部128也可以基于沿着部位m的轴向的点群数据的分布方式,导出部位m的长度参数lm。具体而言,长度计算部128也可以通过基于半峰全宽的决定来计算部位m的长度参数lm。所谓的半峰全宽是指到与数据较多的位置相比数据数达到一半的位置的区间。长度计算部128通过找到部位m的“缝隙”导出长度参数。即,长度计算部128将部位m以将涉及方向em 0的轴向设为法线的环的方式沿着轴向精细地切成圆片,并对其中所包含的数据数进行计数,将成为规定的阈值以下的位置规定为“缝隙”。具体而言,在基于半峰全宽的决定中,规定的阈值为计数值的最大值的一半,但也可以为如计数值的最大值的0.1倍那样的一半以外的值。
在这里,参照图5以及图6,对由长度计算部128进行的基于半峰全宽的决定方法的一个例子进行具体说明。
图5是示意性地表示EM算法部124的导出结果(基于几何模型的拟合结果)的图,图6是由长度计算部128进行的基于半峰全宽的决定方法的说明用的简要流程图。
在图5中,分别各以一个圆柱拟合头部以及躯体部,并分别在每一侧各以一个圆柱拟合两臂部以及两腿部。在图5中,以对象者S的臂部为部位m的情况为代表,对部位m的长度参数lm(l+ m以及lm)的计算方法进行说明。此外,如图5所示,在这里,由于伸展了肘的关节,所以臂部通过EM算法部124识别为一个部位(用一个几何模型适用)。
在步骤S600中,长度计算部128设定为n=1。对于n的意义后述。
在步骤S602中,长度计算部128对点群数据xn中的满足以下的条件的数据的数量进行计数。
[式27]
且pnm>Sm
〈xn·em 0p对应于部位m的中心。Δlm对应于圆片的宽度(沿着轴向em 0的宽度),例如为0.01lm 0。此外,lm 0如上述那样,是涉及部位m的输入长度。Sm是针对后验分布pnm的阈值,例如为0.1。
在步骤S604中,长度计算部128基于在步骤S602中获得的计数数,设定基准值Cref。例如,长度计算部128将在步骤S602中获得的计数数设定为基准值Cref。
在步骤S606中,将n自加“1”。
在步骤S608中,长度计算部128对点群数据xn中的满足以下的条件的数据的数量进行计数。即,长度计算部128在偏移Δlm的下一区间,对满足以下的条件的数据的数量进行计数。
[式28]
且pnm>Sm
在步骤S610中,长度计算部128判定在步骤S608中计数的数据数是否为基准值Cref的规定量倍(例如0.5倍)以下。在判定结果为“是”的情况下,进入步骤S612,在除此以外的情况下,反复从步骤S606开始的处理。
在步骤S612中,长度计算部128使用当前的n的值,计算部位m中的从中心到子孙侧的端部的长度参数l+ m,作为nΔlm。即,作为l+ m=nΔlm来计算。
在步骤S620~步骤S632中,长度计算部128通过进入相反方向(祖先侧),以相同的思考方式,计算图5所示的部位m中的从中心到祖先侧的端部的长度参数l m
此外,作为变形例,长度计算部128也可以以如下的方式计算部位m的长度参数lm
[式29]
在这里,Nm是以下定义的n的部分集合,是后验分布pnm比某个阈值pm th小的n的集合。
[式30]
阈值pm th例如如下。
[式31]
对此,部分集合Nm表示点群数据xn中的不属于部位m的数据的集合。因此,长度计算部128基于部分集合Nm中的离中心的距离(式29的|xn·em 0-〈xn·em 0p|)最小的数据,计算部位m的长度参数lm
部位识别部130基于部位m的参数(rm、cm 0、以及em 0)的导出结果和部位m的长度参数lm的导出结果,进行部位识别处理。部位识别处理包含识别部位m与对象者S的各部位(参照图4的各部位b1~b15)的对应关系。
在这里,根据部位m的长度参数lm的导出结果以及cm 0以及em 0的导出结果,基于距离部位m的中心(=〈xn·em 0p)的长度参数l+ m、l m,能够导出部位m的轴上的端部(决定长度参数lm的端部)的位置。具体而言,部位m的轴上的端部的位置ξm 0满足以下。
[式32]
此时,式32的右边第二项在祖先侧的端部和子孙侧的端部如下。
[式33]
在这里,l+ m如上述那样,是从部位m的中心(=〈xn·em 0p)的朝向子孙侧的长度参数,l m是从部位m的中心的朝向祖先侧的长度参数,如上述那样由长度计算部128来计算。β是常量,例如可以为1。
在以下的说明中,所谓的“关节点”是指涉及关节的代表点(表示涉及关节的位置的点),能够这样导出的部位m的端部(位置)也对应于关节点。另外,在以下的说明中,部位m*(*是任意的符号)表示获得参数(rm、cm 0、以及em 0)的部位m(m=1、2、…、M')中的特定的部位。部位识别部130利用粗细rm,来识别主要部位。主要部位是粗细最大的部位,在本实施例中,是对象者S的躯体部。
部位识别部130将最粗的部位、或者粗细之差小于规定值并且邻接的2个第一粗的部位和第二粗的部位识别为对象物的主要部位。具体而言,部位识别部130在第一大的部位m1与第二大的部位m2之间的差小于规定值的情况下,部位识别部130将任意的部位m1、m2也识别为躯体部。规定值是与部位m1、m2的粗细之差对应的适合值。另一方面,在第一大的部位m1与第二大的部位m2之间的差为规定值以上的情况下,部位识别部130仅将第一大的部位m1识别为躯体部(部位b1+部位b2)。在该情况下,部位识别部130对部位ml设定“切断标志”。对于切断标志的意义后述。由此,例如,在图4中,根据对象者S的姿势,即使在部位b1以及部位b2笔直地伸展的情况下,也将部位b1以及部位b2识别为涉及部位m1以及部位m2的躯体部。
部位识别部130若识别主要部位(躯体部),则判定(识别)处于躯体部的底面附近的关节点。相对于躯体部的底面,部位识别部130在设定在躯体部的底面侧的端部的位置的微小的圆柱(或者楕圆柱、梯形柱等)内,确定躯体部侧的端部的位置所属的2个部位ml、mr。此外,微小的圆柱的高度也可以使用规定的值。而且,部位识别部130将部位ml、mr识别为涉及左腿部的部位(参照图4的部位b10或者部位b10+b11)和涉及右腿部的部位(参照图4的部位b12或者部位b12+b13)。
部位识别部130若识别涉及左腿部的部位ml,则判定设定在部位ml中的远离躯体部的一侧的端部的位置的球(以下,也称为“连结球”)内,是否存在具有接近躯体部的一侧的端部的位置的部位。此外,连结球的直径也可以使用规定的值。而且,在连结球内,存在具有接近躯体部的一侧的端部的位置的部位ml2的情况下,部位识别部130将部位ml识别为左腿部的大腿b10,并将部位ml2识别为左腿部的小腿b11。另一方面,在连结球内,不存在具有接近躯体部的一侧的端部的位置的部位的情况下,部位识别部130将部位ml识别为包含左腿部的大腿和小腿双方的部位。在该情况下,部位识别部130对部位ml,设定“切断标志”。由此,例如,在图4中,根据对象者S的姿势,即使在部位b10以及b11笔直地伸展的情况下,也能够将部位b10以及b11识别为涉及左腿部的部位。
同样地,部位识别部130若识别涉及右腿部的部位mr,则判定设定在部位mr中的远离躯体部的一侧的端部的位置的球(连结球)内,是否存在具有接近躯体部的一侧的端部的位置的部位。此外,连结球的直径也可以使用规定的值。而且,在连结球内,存在具有接近躯体部的一侧的端部的位置的部位mr2的情况下,部位识别部130将部位mr识别为右腿部的大腿b12,并将部位mr2识别为右腿部的小腿b13。另一方面,在连结球内,不存在具有接近躯体部的一侧的端部的位置的部位的情况下,部位识别部130将部位mr识别为包含右腿部的大腿和小腿双方的部位。在该情况下,部位识别部130对部位mr设定“切断标志”。由此,例如,在图4中,根据对象者S的姿势,即使在部位b12以及b13笔直地伸展的情况下,也能够将部位b12以及b13识别为涉及右腿部的部位。
另外,部位识别部130若识别主要部位(躯体部),则判定(识别)处于躯体部的侧面附近的关节点。部位识别部130将处于躯体部的轴向(主轴)的侧面,并且最接近头部侧的面的2个关节点识别为左右的臂部的根关节点(涉及肩的关节的关节点)。例如,部位识别部130将躯体部的侧面中的较薄的圆环(涉及圆柱的圆环)内所包含的关节点识别为臂部的根关节点。此外,圆环的厚度等也可以使用规定的值。而且,部位识别部130将包含左右的臂部的根关节点的部位mlh、mrh识别为涉及左手的部位(参照图4的部位b5或者部位b5+b6)和涉及右手的部位(参照图4的部位b8或者部位b8+b9)。
部位识别部130若识别涉及左手的部位mlh,则判定在设定在部位mlh中的远离躯体部的一侧的端部的位置的球(连结球)内,是否存在具有接近躯体部的一侧的端部的位置的部位。此外,连结球的直径也可以使用规定的值。而且,在连结球内,存在具有接近躯体部的一侧的端部的位置的部位mlh2的情况下,部位识别部130将部位mlh识别为左手的上臂部b5,将部位mlh2识别为左手的前臂部b6。另一方面,在连结球内,不存在具有接近躯体部的一侧的端部的位置的部位的情况下,部位识别部130将部位mlh识别为包含左手的上臂部和前臂部双方的部位。在该情况下,部位识别部130对部位mlh设定“切断标志”。由此,例如,在图4中,根据对象者S的姿势,即使在部位b5以及b6笔直地伸展的情况下,也能够将部位b5以及b6识别为涉及左手的部位。
同样,部位识别部130若识别涉及右手的部位mrh,则判定设定在部位mrh中的远离躯体部的一侧的端部的位置的球(连结球)内,是否存在具有接近躯体部的一侧的端部的位置的部位。此外,连结球的直径也可以使用规定的值。而且,在连结球内,存在具有接近躯体部的一侧的端部的位置的部位mrh2的情况下,部位识别部130将部位mrh识别为右手的上臂部b8,并将部位mrh2识别为右手的前臂部b9。另一方面,在连结球内不存在具有接近躯体部的一侧的端部的位置的部位的情况下,部位识别部130将部位mrh识别为包含右手的上臂部和前臂部双方的部位。在该情况下,部位识别部130对部位mrh设定“切断标志”。由此,例如,在图4中,根据对象者S的姿势,即使在部位b8以及b9笔直地伸展的情况下,也能够将部位b8以及b9识别为涉及右手的部位。
骨骼整形部132作为骨骼整形处理,进行切断处理、结合处理、以及连结处理。
切断处理是将一个部位进一步分离为2个部位的处理。分离对象的部位是部位m中的设定有上述的切断标志的部位。此外,涉及成为切断处理的对象的部位的几何模型(即涉及设定有上述的切断标志的部位的几何模型)是第一几何模型的一个例子。设定有切断标志的部位例如是如上臂部和前臂部(参照图4的部位b5以及b6)那样的为笔直地伸展的状态时通过基于几何模型的适用识别为一个部位的部位。切断处理将这样的本来由2个部位构成的部位分离为2个更进一步的部位。参数θ的各要素(rm、cm 0、以及em 0)中的2个更进一步的部位的rm以及em 0保持原样。另一方面,骨骼整形部132根据式32求出2个更进一步的部位的cm 0之间的关节的位置(即,设定有切断标志的部位的中间的关节点)。在为中间的关节点的情况下,式32的右边第二项如下。此外,中间的关节点的导出使用cm 0以及em 0的导出结果。
[式34]
中间的关节点
如上述那样,β是常量,例如可以是1。在β=1的情况下,部位m的中心(=〈xn·em 0p)表示本来由2个部位构成的部位m的中间的关节点。或者,β也可以基于通过其他测量获得的对象者S的形状信息来设定。
像这样根据切断处理,即使在部位m包含本来由2个部位构成的部位的情况下,也能够切断为2个更进一步的部位,而导出3个关节点。因此,例如即使在腿部伸展且肘、膝笔直地伸展的情况下,也能够通过切断处理导出3个关节点。
结合处理是基于通过隐藏骨骼连接的2个部位m的位置cm 0、方向em 0、以及长度参数lm,导出与遍及2个部位m的直线建立对应关系的对象者S的隐藏骨骼的处理。具体而言,结合处理是将隐藏骨骼生成为连结涉及规定的2个部位m的2个关节点间的直线的处理。此外,成为结合处理的对象的涉及规定的2个部位m的几何模型是第二几何模型的一个例子。所谓的隐藏骨骼如参照图4上述的那样,有涉及髋关节的骨骼b14、b15、涉及肩的关节的骨骼b4、b7。对于涉及髋关节的骨骼b14,成为结合处理的对象的2个关节点对应部位b1的底面侧的关节点a0和部位b10的躯体部侧的关节点a14。另外,对于涉及髋关节的骨骼b15,规定的2个关节对应部位b1的底面侧的关节点a0、部位b12的躯体部侧的关节点a15。对于涉及肩的关节的骨骼b4,规定的2个关节对应部位b2的头部侧的关节点a2和部位b5的躯体部侧的关节点a4。对于涉及肩的关节的骨骼b7,规定的2个关节对应部位b2的头部侧的关节点a2和部位b8的躯体部侧的关节点a7。
像这样根据结合处理,即使在关节模型包含隐藏骨骼的情况下,也能够通过结合处理导出隐藏骨骼(与链接对应的直线)。
连结处理是将能够根据涉及不同的部位的几何模型导出的涉及相同的关节的关节点(共用的关节点)统合(连结)为一个关节点的处理。例如,连结对象的关节点例如是上述的连结球内的2个关节点(涉及图4的关节a5、a8、a10、a12的关节点)。这样的涉及臂部以及腿部的连结处理在未设定有切断标志的情况下执行。另外,其他连结对象的关节点涉及脖子的关节点,是根据头部的几何模型和躯体部的几何模型双方获得的2个关节点(涉及图4的关节a2的关节点)。另外,在将粗细rm第一大的部位m1和第二大的部位m2分别识别为躯体部的情况下,其他连结对象的关节点是部位m1与部位m2之间的关节点(涉及图4的关节a1的关节点)。即,涉及躯体部的连结处理在未设定切断标志的情况下执行。
连结处理也可以是仅选择任意一方的关节点的处理。或者,也可以是利用2个关节点的平均值的方法、利用涉及2个关节点的2个部位中的后验分布的数据和较大的一方的部位的值的方法、利用以后验分布的数据和加权后的值的方法等。
骨骼整形部132作为骨骼整形处理,优选进一步进行对称化处理。对称化处理是针对本来实质上左右对称的部位,关于参数也修正为左右对称的处理。本来实质上左右对称的部位例如是左右的臂部、左右的腿部。例如对于左右的臂部(对于左右的腿部也相同)、骨骼整形部132也可以对参数θ中的粗细rm和长度参数lm,统合为后验分布的数据和的最大的一方。例如在涉及左腿部的后验分布的数据和比涉及右腿部的后验分布的数据和大的情况下,将涉及右腿部的粗细rm和长度参数lm修正为涉及左腿部的粗细rm和长度参数lm。由此,能够利用左右的对称性,提高粗细rm、长度参数lm的精度。
校准信息生成部134基于部位m的参数θ的导出结果、部位m的长度参数lm的导出结果、部位识别部130的部位识别处理结果、骨骼整形部132的骨骼整形处理结果等,生成校准信息。
校准信息包含涉及对象者S的所有部位的部位信息。所谓的对象者S的所有部位是基于关节模型的所有部位,在图4所示的例子中,是15个部位。以下,将对象者S的所有部位中的任意的一个部位记作“部位k”。此外,部位m是基于几何模型的成为拟合的对象的部位。
部位信息例如也可以包含表示部位k与对象者S的各部位(参照图4的各部位b1~b15)的对应关系的信息(以下,称为“部位对应关系信息”)、部位k的位置、轴向、长度、粗细等。在本实施例中,作为一个例子,部位信息包含部位对应关系信息、作为部位k的位置的部位k的祖先侧的关节点的位置ck Θ0、部位k的方向ek Θ0、以及部位m的长度参数lm。位置ck Θ0以及方向ek Θ0表示某一姿势Θ下的部位m的位置以及方向(第一参数的一个例子)的初始值。
部位k的位置ck Θ0对应于基于位置cm 0等导出的部位m的祖先侧的端部(参照式32、式33)的位置。在执行切断处理的情况下,通过切断处理分离后的2个部位的各自的位置ck Θ0同样为该部位上的祖先侧的关节点。例如在对涉及腿部的部位m执行了切断处理的情况下,将部位m分离为2个的部位中的涉及大腿部的部位k的位置ck Θ0为祖先侧的关节点。另外,将部位m分离为2个的部位中的涉及小腿部的部位k的位置ck Θ0为祖先侧的关节点(即部位m的中间的关节点,涉及膝的关节点)(参照式34)。另外,涉及隐藏的骨骼的部位k的位置ck Θ0是与隐藏的骨骼在祖先侧连接的部位的子孙侧的关节点。例如,与部位b4对应的部位k的位置ck Θ0对应于与部位b2对应的部位m的子孙侧的关节点a2。
方向ek Θ0能够直接使用方向em 0。在对部位m执行了切断处理的情况下,作为通过切断处理分离的2个部位的各自的方向ek Θ0,使用部位m的方向em 0。涉及隐藏的骨骼的部位k的方向ek Θ0使用通过结合处理导出的隐藏骨骼所涉及的直线的方向。
另外,校准信息包含表示对所有全部位中的除去隐藏的骨骼(部位)的各部位,在哪个部位使用哪种几何模型的信息(以下,称为“使用几何模型信息”)和几何模型。在对部位m执行了切断处理的情况下,通过切断处理分离的2个部位的各自的几何模型是与部位m建立对应关系的几何模型。此外,在仅使用一种几何模型(例如圆柱)的变形例中,无需使用几何模型信息。
根据本实施例的一个场景骨骼识别处理,如上述那样,对使用几何模型进行拟合而获得的结果,执行切断处理。由此,例如即使在如对象者S的躯体部、臂部、腿部那样的通过关节连接的2个部位笔直地伸展的情况下,能够高精度地识别连接该2个部位的关节。即,即使在仅通过使用几何模型的拟合仅能够识别为一个部位的状况下(本来是2个部位但仅能够识别为一个部位的状况下),也能够高精度地识别连接2个部位的关节。另外,根据本实施例,如上述那样,对使用几何模型进行拟合而获得的结果,执行结合处理。由此,也能够高精度地识别仅通过使用几何模型的拟合难以高精度地识别的隐藏的骨骼。这样,根据本实施例,基于对象者S的点群数据,能够高精度地识别对象者S的关节或者骨骼。
因此,根据本实施例,能够生成精度较高的校准信息,其结果,也能够提高利用校准信息的后述的微小拟合处理的精度。
接下来,参照图7以后的简要流程图,对一个场景骨骼识别部120的动作例进行说明。
图7是表示一个场景骨骼识别部120的整体动作的一个例子的简要流程图,图8是表示部位识别处理的一个例子的简要流程图。图9A以及图9B是图7的处理等的说明图。在图9A以及图9B中,分别示有某一个时刻(一个场景)的点群数据xn
在步骤S700中,向数据输入部110输入某一个时刻的点群数据xn
在步骤S702中,聚类部122基于在步骤S700中获得的点群数据xn,获取在使用几何模型的拟合中使用的初始值。聚类部122的处理(初始值的获取方法)的详细内容如上所述。
在步骤S704中,EM算法部124基于在步骤S700中获得的点群数据xn和在步骤S702中获得的初始值,执行EM算法的E步骤。EM算法的E步骤的详细内容如上所述。
在步骤S705中,EM算法部124设定为j=1。
在步骤S706中,EM算法部124对第j个部位j(m=j)进行有限长度处理。有限长度处理的详细内容如上所述。
在步骤S708中,EM算法部124基于在步骤S704中获得的E步骤的结果和在步骤S706中获得的有限长度处理结果,对第j个部位j(m=j)执行EM算法的M步骤。EM算法的M步骤的详细内容如上所述。
在步骤S710中,EM算法部124判定是否有未处理部位,即j<M'。在有未处理部位的情况下,经由步骤S711,反复从步骤S706开始的处理。在没有未处理部位的情况下,进入步骤S712。
在步骤S711中,EM算法部124将j自加“1”。
在步骤S712中,EM算法部124判定是否收敛。作为收敛条件,例如,可以使用对数似然函数为规定的值以下、对数似然函数的移动平均为规定的值以下等。
在步骤S714中,模型优化部126进行模型优化处理。例如,模型优化部126计算涉及本次所使用的几何模型的后验分布的数据和的所有部位和。而且,在后验分布的数据和的所有部位和小于规定基准值的情况下,对EM算法部124指示几何模型的变更,并在此执行步骤S704至步骤S712的处理。或者,模型优化部126不管涉及本次所使用的几何模型的后验分布的数据和的所有部位和如何,都对EM算法部124指示几何模型的变更,并再次执行步骤S704至步骤S712的处理。在该情况下,模型优化部126选择后验分布的数据和的所有部位和最大的几何模型作为适合度最良好的一种几何模型。
若步骤S714之前的处理结束,则如图9A所示,获得对点群数据xn适用的多个几何模型所涉及的参数θ(rm、cm 0、以及em 0)。在图9A所示的例子中,概念性地示出对点群数据xn适用的6个几何模型M1~M6。几何模型M1是涉及对象者S的头部的几何模型,几何模型M2是涉及对象者S的躯体部的几何模型,几何模型M3以及M4是涉及对象者S的两臂部的几何模型,几何模型M5以及M6是涉及对象者S的两腿部的几何模型。在图9A所示的例子中,几何模型M1~M6全部为圆柱。
在步骤S716中,长度计算部128基于点群数据xn、和在步骤S714之前的处理中获得的参数θ,导出各几何模型(参照几何模型M1~M6)的长度参数lm。导出长度参数lm如上述那样,包括对部位m的中心,导出长度参数l+ m以及长度参数l m
在步骤S718中,部位识别部130进行部位识别处理。部位识别处理如上所述,关于一个例子的过程,参照图8后述。
在步骤S720中,骨骼整形部132基于在步骤S718中获得的部位识别处理结果等,进行切断处理、结合处理、以及连结处理。骨骼整形部132对设定有切断标志的部位进行切断处理。切断处理的详细内容如上所述。另外,结合处理如上所述,包括导出涉及髋关节的骨骼b14、b15、涉及肩的关节的骨骼b4、b7所涉及的各直线。另外,连结处理的详细内容如上所述。
若步骤S720之前的处理结束,则如图9B概念性所示,导出涉及切断处理的各关节的位置、隐藏的骨骼等。
在步骤S722中,骨骼整形部132基于在步骤S704~步骤S712中获得的后验分布的数据和,进行对称化处理。对称化处理的详细内容如上所述。
在步骤S722中,校准信息生成部134基于在本次周期中的步骤S704至步骤S722的处理结果,生成校准信息。校准信息的生成方法如上所述。
接着,参照图8对步骤S718中的部位识别处理进行说明。
在步骤S800中,部位识别部130对粗细rm判定第一粗的部位与第二粗的部位之差是否为规定值以上。在判定结果为“是”的情况下,进入步骤S802,在除此以外的情况下,进入步骤S804。
在步骤S802中,部位识别部130将粗细rm第一大的部位m1识别为躯体部(笔直地伸展的躯体部),并对部位m1设定切断标志。例如,在图9A所示的例子中,几何模型M2所建立对应关系的部位为与第二粗的部位之差为规定值以上的第一粗的部位m1,并设定切断标志。此外,若像这样对部位m1设定切断标志,则在图7的步骤S720中对部位m1执行切断处理。
在步骤S804中,部位识别部130将粗细rm第一大的部位m1和第二大的部位m2识别为躯体部。
在步骤S806中,部位识别部130识别头部。例如,部位识别部130将部位m1的上表面附近的部位mh识别为头部。例如在图9A所示的例子中,将几何模型M1所建立对应关系的部位识别为头部。
在步骤S808中,部位识别部130在躯体部的底面附近识别左右的腿部。即,部位识别部130如上述那样,在躯体部的底面附近将左右的2个关节点识别为各腿部的根关节点,并将具有该2个关节点的部位ml、mr识别为涉及左右的腿部的部位。
在步骤S810中,部位识别部130判定在步骤S808中识别出的左右的腿部所涉及的部位ml、mr的末端侧(远离躯体部的一侧),是否存在涉及其他部位ml2、mr2的关节点。此时,部位识别部130对左右的腿部分别分开进行判定。在判定结果为“是”的情况下,进入步骤S812,在除此以外的情况下,进入步骤S814。
在步骤S812中,部位识别部130将在步骤S808中识别出的左右的腿部所涉及的部位ml、mr识别为大腿部,并且将在步骤S810中识别出的其他的部位ml2、mr2识别为小腿部。此外,在该情况下,在图7的步骤S720中,对部位ml、ml2执行连结处理,并对部位mr、mr2执行连结处理。
在步骤S814中,部位识别部130将在步骤S808中识别出的左右的腿部所涉及的部位ml、mr识别为笔直地伸展的腿部,并对部位ml、mr设定切断标志。此外,若像这样对部位ml、mr设定切断标志,则在图7的步骤S720中对部位ml、mr分别执行切断处理。
在步骤S816中,部位识别部130在躯体部的上侧(远离腿部的一侧)的左右的侧面识别左右的臂部。即,部位识别部130如上述那样,将躯体部的侧面中的较薄的圆环内所包含的2个关节点识别为各臂部的根关节点,并将具有该2个关节点的部位mlh、mrh识别为左右的臂部所涉及的部位。
在步骤S818中,部位识别部130判定在步骤S808中识别出的左右所涉及的臂部的部位mlh、mrh的末端侧(远离躯体部的一侧),是否存在涉及其他部位mlh2、mrh2的关节点。此时,部位识别部130对左右的臂部分别分开进行判定。在判定结果为“是”的情况下,进入步骤S820,在除此以外的情况下,进入步骤S822。
在步骤S820中,部位识别部130将在步骤S816中识别出的左右的臂部所涉及的部位mlh、mrh识别为上臂部,并且将在步骤S818中识别出的其他部位mlh2、mrh2识别为前臂部。此外,在该情况下,在图7的步骤S720中,对部位mlh、mlh2执行连结处理,对部位mrh、mrh2执行连结处理。
在步骤S822中,部位识别部130将在步骤S816中识别出的左右的臂部所涉及的部位mlh、mrh识别为笔直地伸展的臂部,并对部位mlh、mrh设定切断标志。此外,若像这样对部位mlh、mrh设定切断标志,则在图7的步骤S720中对部位mlh、mrh分别执行切断处理。
根据图7以及图8所示的处理,能够基于某一个时刻(一个场景)的对象者S的点群数据xn,高精度地识别对象者S的关节或者骨骼。此外,图7以及图8所示的处理可以按每个帧周期反复执行,也可以对下一帧,利用在前一次的帧中获得的参数θ以及方差σ2、在前一次的帧中使用的几何模型,导出涉及下一帧的参数θ等。
此外,在上述的一个场景骨骼识别处理中,点群数据xn公式化为全部存在于几何模型表面附近,但点群数据xn中也包含噪声等。若混入那样的远离表面的数据,则存在E步骤的后验分布变得数值不稳定而无法正确计算的情况。因此,也可以如下,向分布p(xn)作为噪声项追加均匀分布。
[式35]
在这里,u是任意的权重。此时,以如下方式对后验分布进行修正。
[式36]
在这里,uc如下来定义。
[式37]
uc≡(2πσ2)1/2uM′/(1-u)N
由此,将uc导入分母,消除数值不稳定。此外,也可以仅E步骤变更,M步骤保持原样。
[微小拟合处理部]
对于在以下的[微小拟合处理部]的说明中使用的符号,只要不特别提及,是与在上述的[一个场景骨骼识别部]的说明中使用的符号实质相同的意思。此外,对于点群数据xn,使用相同的符号“xn”,但如上述那样,在微小拟合处理部150中使用的点群数据xn是在比一个场景骨骼识别部120中使用的点群数据xn靠后的时刻(帧)获得的数据。以下,将在一个场景骨骼识别部120中使用的点群数据xn所涉及的时刻称为“第一时刻”,将在微小拟合处理部150中使用的点群数据xn所涉及的时刻称为“第二时刻”。虽然反复,第二时刻也比第一时刻靠后,在这里,例如靠后与1帧周期对应的微小时间。
另外,在以下的[微小拟合处理部]的说明中,部位m是拟合的对象的部位的点与上述的[一个场景骨骼识别部]的说明相同,但仅以下的点不同。即,在一个场景骨骼识别处理中,也有如上述那样,部位m同时与对象者S的2个部位建立对应关系的情况,但在以下的微小拟合处理中,部位m未同时与对象者S的2个部位建立对应关系。因此,在[微小拟合处理部]的说明中,所谓的部位m在图4所示的关节模型的情况下,与15个部位中的除去隐藏的骨骼(部位)的各部位一一对应。
微小拟合处理部150如上述那样,利用由一个场景骨骼识别部120生成的校准信息,进行微小拟合处理。以下,将与上述的参数θ相关的参数,且是表示对象者S的关节(关节旋转)、对象者S的重心的旋转以及平移的参数称为“变形参数θar”。另外,校准信息如上述那样包含使用几何模型信息(表示在一个场景骨骼识别处理中对各部位利用的几何模型的信息)。在微小拟合处理中,继续利用在获得校准信息时利用的几何模型。例如,在生成校准信息时,在对某个部位使用圆柱的情况下,在微小拟合处理中,对该部位也使用圆柱。
如图3所示,微小拟合处理部150包含表面残差计算部151、后验分布计算部152、有限长度处理部154、方差更新部155、微小变化计算部156、以及参数更新部158。
表面残差计算部151计算表面残差εnm以及表面残差的微分ε'nm。在微小拟合中,与上述的一个场景骨骼识别处理相同,假定点群数据xn和部位m的表面残差εm(xnar)(垂直于表面的方向之差)为高斯分布。具体而言,如下。
[式38]
在这里,M是关节模型的所有部位数(包括隐藏的部位的所有部位的总数),在图4所示的关节模型中,为“15”。因此,M可能与在一个场景骨骼识别部120中使用的M′不同。h是隐藏的骨骼(部位)(第二部位的一个例子)的数量,在图4所示的关节模型中,为“4”。使用“M-h”是为了除去对拟合没有帮助的部位。即,M-h是在微小拟合处理中成为拟合对象的部位(第一部位的一个例子)的数量。代替在一个场景骨骼识别部120中使用的“M′”而使用“M-h”是因为不一定一直为M′=M-h。另外,能够为固定值“M-h”是因为在微小拟合处理中,与一个场景骨骼识别处理不同,即使在手、腿等笔直地伸展的状态下,也能够追踪各部位。此时,对应的对数似然函数如下。
[式39]
表面残差εnm、以及表面残差的微分ε′nm如下定义。此外,θar是变形参数。
[式40]
εnm≡εm(xn,θar)
此外,在[微小拟合处理部]的说明中,对于表达式<>p,同样是使用后验分布pnm的平均操作,但与“M′”和“M-h”的差异相关,对于任意的张量或矩阵anm,如下。
[式41]
在几何模型是圆柱的情况下,表面残差例如可以如下表达。在这里,位置cm Θ以及方向em Θ表示某一姿势Θ下的部位m的位置以及方向。此外,位置cm Θ如已经定义的那样,是部位m的祖先侧的关节点的位置。
[式42]
此外,在式42中右边不是平方彼此的差,但如上述的式3那样也可以使用平方的项。此外,在一个场景骨骼识别处理中,通过将指数部分设为平方差来将式子线性化。
此时,表面残差的微分如下。
[式43]
[式44]
[式45]
在这里,后缀l'指可动部位,总数为M-f(例如13)。ε'nml'i'是关于可动部位的表面残差的微分,ε'nm,M-f+1,i'是关于对象者S的重心的旋转的表面残差的微分,ε'nm,M-f+2,i'是关于对象者S的重心的平移的表面残差的微分。
δml'是克罗内克的增量,如下。
[式46]
另外,χml'如下。
[式47]
χml'是表示部位m与部位l'(l'=1、2、…、13)的祖先-子孙关系的参数,对于表示祖先-子孙关系的参数而言,与部位k和部位l'相关,参照图10以及图11后述。此外,祖先-子孙关系能够基于校准信息所包含的部位对应关系信息来判断。
在为圆锥的情况下,表面残差εm(xnar)可以如下表达。此外,在圆锥(在椭圆锥的情况下也相同)中,位置cm Θ对应于某一姿势Θ下的顶点位置,某一姿势Θ下的方向em Θ为中心轴的单位向量。
[式48]
向量nm如关于式22上述。在为梯形柱的情况下,也可以与圆锥的情况相同。另外,在为楕圆柱的情况下,表面残差εm(xnar)可以如下表示。
[式49]
dm等如关于式23上述。
另外,在为椭圆锥的情况下,表面残差εm(xnar)可以如下表示。
[式50]
ψm1等如关于式24上述。在为梯形楕圆柱的情况下,表面残差εm(xnar)也可以与椭圆锥的情况相同。
后验分布计算部152在微小拟合处理中计算后验分布pnm。微小拟合处理中的后验分布pnm与“M'”和“M-h”的差异相关,如下。
[式51]
有限长度处理部154基于由后验分布计算部152获得的后验分布pnm,进行有限长度处理。有限长度处理如上述那样,是仅对点群数据xn中的满足规定的条件的数据计算后验分布pnm,对于其他数据将后验分布pnm设为0的处理。在微小拟合处理中,满足规定的条件的数据例如也可以是满足以下的式子的数据。
[式52]
在这里,lm是校准信息所包含的长度参数(即由长度计算部128导出的部位m的长度参数lm)。
方差更新部155导出(更新)微小变化后的方差(σ0 2+Δσ2)。似然函数的最大化问题能够通过线性近似导出解。即,通过将式39的式子的有关σ2的微分置为0,获得微小变化后的方差(σ0 2+Δσ2)。此外,方差σ0 2是初始值,由一个场景骨骼识别部120获得。例如,微小变化后的方差(σ0 2+Δσ2)也可以如下。
[式53]
微小变化计算部156计算变形参数θar的微小变化Δθ。在这里,似然函数的最大化问题与方差σ2相同,能够如以下方式,通过线性近似导出解。即,由于第二时刻比第一时刻靠后微小时间,所以期待第二时刻的点群数据xn不从第一时刻的点群数据xn较大地变化。因此,期待第二时刻的变形参数θar不从第一时刻的变形参数θar较大地变化。因此,第二时刻的变形参数θar用从第一时刻的变形参数θar的微小变化Δθ来表示。
[式54]
因此,变形参数θar的微小变化Δθ使用表面残差εnm、以及表面残差的微分ε'nm(参照式40),如下。
[式55]
此外,具体的微小变化Δθ的计算方法与以下的参数更新部158的说明相关地后述。
参数更新部158通过基于由微小变化计算部156计算出的微小变化Δθ,导出(更新)位置ck Θ以及方向ek Θ的各自的变化Δck Θ以及Δek Θ(第二参数的一个例子),来导出(更新)位置ck Θ+ΔΘ以及方向ek Θ+ΔΘ。此外,位置ck Θ以及方向ek Θ如上述那样,表示某一姿势Θ下的部位k的位置以及方向。位置ck Θ以及方向ek Θ的初始值使用校准信息所包含的位置ck Θ0以及方向ek Θ0
位置ck Θ+ΔΘ以及方向ek Θ+ΔΘ能够分别如下表示。此外,部位k包含隐藏的部位,因此,在图4所示的关节模型中,k=1、2、…、15。此外,关于方向ek Θ+ΔΘ以保存规范的方式来更新。
[式56]
[式57]
在这里,Δck Θ以及Δek Θ能够基于机构模型的正向运动学,以如下的方式导出。
[式58]
[式59]
在这里,Δθl'i'、ΔθM-f+1,i'、以及ΔθM-f+2,i'是微小变化Δθ的各要素。Δθl'i'表示部位l'(l'=1、2、…、M-f)的关节旋转,ΔθM-f+1,i'表示对象者S的重心的旋转,ΔθM-f+2,i'表示对象者S的重心的平移。i'表示旋转的3个自由度,i'=0、X、XX。d是空间维度,d=3。另外,f是不可动的关节数。所谓的不可动的关节例如是涉及骨盆部(参照图4的部位b14、b15)的关节(参照图4的关节a0)。
在几何模型是圆柱的情况下,Δθl'i'、ΔθM-f+1,i'、以及ΔθM-f+2,i'基于式43、式44、以及式45的式子、式55导出。换言之,ε'nml'i'是用于根据上述的式55的式子,获得式58以及式59中的Δθl'i'的表面残差的微分。同样地,ε'nm,M-f+1,i'是用于根据上述的式55的式子,获得式58以及式59中的ΔθM-f+1,i'的表面残差的微分。同样地,ε'nm,M-f+2,i'是用于根据上述的式55的式子,获得式58中的ΔθM-f+2,i'的表面残差的微分。此外,对于圆柱以外的几何模型,也能够使用上述的表面残差以相同的方式导出。
另外,在式58以及式59中使用的向量、用于求出角度变化的生成器如下。此外,以下,n是任意的单位向量(固定向量),例如也可以是涉及距离图像传感器21的方向的单位向量。
[式60]
[式61]
另外,δkl'是克罗内克的增量,与上述相同。另外,χkl'是表示部位k(k=1、2、…、15)与部位l'(l'=1、2、…、13)的祖先-子孙关系的参数,例如,如图10所示。图10中的部位的编号如图11所示。例如,在部位m=部位6并且部位l'=部位5时,χ56=1。这是因为部位5处于部位6的祖先侧。此外,在图10以及图11所示的例子中,将不可动的骨盆部的编号设为最后的2个“14”以及“15”并且从列中除去。此外,行和列的相同的编号指相同的部位。
此外,在这里,若对后缀的表示进行整理,则后缀k指所有的部位,总数为M。后缀m指拟合对象的部位,总数为M-h。后缀l'指可动部位,总数为M-f。此外,这些后缀即使为相同的编号也未必指相同的部位。
像这样,Δck Θ以及Δek Θ能够通过将Δθl'i'、ΔθM-f+1,i'、以及ΔθM-f+2,i'代入式58以及式59而导出。而且,若获得Δck Θ以及Δek Θ,则能够基于式56以及式57的更新式,导出部位k的位置ck Θ+ΔΘ以及方向ek Θ+ΔΘ
在本实施例中,作为一个例子,所有的关节如球关节那样具有3个自由度。例如,假定所有的关节如肩、髋关节那样,能够进行绕轴旋转、垂直摆动、水平摆动。然而,实际上也有自由度受到限制的关节。例如肘仅为1个自由度。该点,在接近轴对称的部位很难鉴别可动轴。因此,在本实施例中,作为一个例子,避免鉴别可动轴,对所有的关节考虑使用某个固定向量n构成的绕轴的旋转。其中,在如圆柱、梯形柱那样的轴对称的几何模型中,由于绕轴旋转自由度不确定所以被除去。具体而言,在轴对称的几何模型中,具有除去绕轴的自由度后的2个自由度。因此,对于轴对称的几何模型,仅计算Δθl'0、Δθl'X、以及Δθl'XX中的除去绕轴的关节旋转Δθl'0的Δθl'X以及Δθl'XX。由此,能够高效地减少计算负荷。此外,在想要求出实际的可动轴中的旋转角度的情况下,能够通过根据旋转矩阵变换来获取。
接下来,参照图12的简要流程图,与微小拟合处理一起说明本实施例的对象物识别系统1的动作例。
图12是表示对象物识别系统1的整体的动作例的简要流程图。
在步骤S1200中,数据输入部110获取表示所使用的关节模型的信息。例如,数据输入部110获取表示图4所示的关节模型的信息。表示关节模型的信息也可以是表示关节数(部位数)、连接关系、拟合对象的部位、可动关节等的信息。
在步骤S1201中,数据输入部110设定为jj=0。
在步骤S1202中,数据输入部110判定规定的处理结束条件是否成立。例如,在为非实时的处理的情况下,规定的处理结束条件可以在处理对象的全部的点群数据(例如多个时刻的点群数据且是一系列的时间序列所涉及的数据)的处理结束的情况下满足。另外,在为实时的处理的情况下,规定的处理结束条件可以在用户输入了结束指示的情况下、未输入涉及本次的帧周期的点群数据的情况下等满足。在判定结果为“是”的情况下,直接结束,在除此以外的情况下,进入步骤S1204。
在步骤S1203中,数据输入部110将jj自加“1”。
在步骤S1204中,数据输入部110获取涉及处理对象的1个时刻的点群数据,且是按时间序列涉及第jj个(即第jj个帧)的点群数据。例如,在实时处理的情况下,涉及本次的帧周期的点群数据为涉及处理对象的1个时刻的点群数据。
在步骤S1206中,一个场景骨骼识别部120基于在步骤S1204中获得的点群数据,进行一个场景骨骼识别处理。一个场景骨骼识别处理如上所述。
在步骤S1208中,一个场景骨骼识别部120判定一个场景骨骼识别处理是否成功。具体而言,一个场景骨骼识别部120在判定为通过一个场景骨骼识别处理导出满足第一规定基准的校准信息(位置ck Θ0以及方向ek Θ0等)的情况下,判定为一个场景骨骼识别处理成功了。例如,一个场景骨骼识别部120在能够识别规定量的部位,并且,各部位的后验分布的数据和分别为规定值Th1以上的情况,判定为导出了满足第一规定基准的校准信息。规定量的部位也可以对应于除去隐藏的部位的全部的部位(通过关节模型定义的全部的部位)。通过对各部位的后验分布的数据和进行评价,能够生成高精度地识别所有部位时的校准信息。在判定结果为“是”的情况下,进入步骤S1210,在除此以外的情况下,进入步骤S1212。
在步骤S1210中,判定规定的处理结束条件是否成立。规定的处理结束条件也可以与步骤S1202相同。在判定结果为“是”的情况下,直接结束,在除此以外的情况下,进入步骤S1212。
在步骤S1211中,数据输入部110将jj自加“1”。
在步骤S1212中,数据输入部110获取涉及处理对象的1个时刻的点群数据,且是按时间序列涉及第jj个的点群数据。
在步骤S1214中,微小拟合处理部150基于在步骤S1208中成功时的校准信息和在步骤S1212中获得的点群数据,进行微小拟合处理。此外,这里使用的点群数据是在步骤S1212中获得的点群数据,且是比在步骤S1204中获得的点群数据所涉及的时刻(第一时刻)靠后的时刻(第二时刻)所涉及的数据。
在步骤S1216中,微小拟合处理部150判定微小拟合处理是否成功。具体而言,微小拟合处理部150在判定为通过微小拟合处理导出了满足第二规定基准的位置ck Θ以及方向ek Θ的情况下,判定为微小拟合处理成功。例如,微小拟合处理部150在后验分布的数据和的所有部位和为规定值Th2以上的情况下,判定为导出了满足第二规定基准的位置ck Θ以及方向ek Θ。通过代替各部位的后验分布的数据和,对后验分布的数据和的所有部位和进行评价,即使在未高精度地识别部分部位的状况下,在后验分布的数据和的所有部位和为相对良好的值的情况下,也能够继续进行微小拟合处理。这是因为在微小拟合中,由于缺损部分仅为关节旋转,所以不会较大地错过对象者S的动作。另外,由于在微小拟合中,与一个场景骨骼识别处理中的拟合不同,若是部分缺损则能够根据剩余的数据来推断。由此,例如,在对象者S采取蹲伏状态等无法获取较多特征点的复杂的姿势的情况下,也能够继续获取相对较高的精度的骨骼信息。在判定结果为“是”的情况下,进入步骤S1210,在步骤S1210中判定结果为“是”的情况下,执行基于涉及下一帧的点群数据的微小拟合处理。另一方面,在判定结果为“否”的情况下,返回到步骤S1202,再次进行一个场景骨骼识别处理。
像这样根据图12所示的处理,在通过一个场景骨骼识别处理获得了精度较高的识别结果(校准信息)的情况下,能够基于该识别结果,进行微小拟合处理。由此,与按每一帧反复一个场景骨骼识别处理的情况相比,能够提高处理速度。另外,在通过之后的微小拟合处理识别精度恶化的情况下(后验分布的数据和的所有部位和小于规定值Th2的情况下),能够再次进行一个场景骨骼识别处理。由此,能够抑制由于过度地继续微小拟合处理而产生的故障,即识别精度的恶化。像这样,根据图12所示的处理,能够实现处理速度的提高和较高的精度的识别结果的确保的兼得。
图13是微小拟合处理的简要流程图,是能够在步骤S1214中执行的处理的一个例子。
在步骤S1300中,微小拟合处理部150设定为m=1。
在步骤S1302中,表面残差计算部151计算涉及部位m的表面残差εnm以及表面残差的微分ε'nm。表面残差εnm以及表面残差的微分ε'nm的计算方法如上所述。此外,如上所述,涉及部位m的表面残差εnm以及表面残差的微分ε'nm的计算取决于与部位m建立有对应关系的几何模型。例如,在几何模型为圆柱的情况下,也可以使用用式42~式45表示的式子。
在步骤S1304中,后验分布计算部152基于在步骤S1212中获得的点群数据和在步骤S1302中获得的表面残差εnm,计算涉及部位m的后验分布pnm。后验分布pnm的计算方法如上所述(参照式51)。
在步骤S1306中,有限长度处理部154基于在步骤S1304中获得的后验分布pnm,进行有限长度处理。有限长度处理如上所述(参照式52)。
在步骤S1308中,微小拟合处理部150判定是否m=M-h。如上述那样,M-h是拟合对象的部位的总数。在判定结果为“是”的情况下,进入步骤S1312,在除此以外的情况下,经由步骤S1310,返回到步骤S1302。
在步骤S1310中,微小拟合处理部150将m自加“1”。
在步骤S1312中,微小变化计算部156计算微小变化Δθ。此时,微小变化计算部156也可以针对l'=1、2、…、M-f、以及i'=0、X、XX的全部,一并计算微小变化Δθ的各要素Δθl'i'、ΔθM-f+1,i'、以及ΔθM-f+2,i'。该计算例如能够通过矩阵运算来实现。
在步骤S1314中,微小拟合处理部150设定为k=1。
在步骤S1316中,参数更新部158基于在步骤S1312中获得的微小变化Δθ,导出位置ck Θ+ΔΘ以及方向ek Θ+ΔΘ,并以导出的位置ck Θ+ΔΘ以及方向ek Θ+ΔΘ更新位置ck Θ以及方向ek Θ。位置ck Θ+ΔΘ以及方向ek Θ+ΔΘ的导出方法如上所述。在这里,位置ck Θ以及方向ek Θ的初始值为位置ck Θ0以及方向ek Θ0,在最近的步骤S1206中获得。
在步骤S1318中,微小拟合处理部150判定是否k=M。M如上述那样是全部的部位的总数。
在步骤S1320中,微小拟合处理部150将k自加“1”。
在步骤S1322中,方差更新部155基于在步骤S1302中获得的表面残差εnm、和在步骤S1304中获得的后验分布pnm,更新方差σ2。方差σ2的更新方法如上所述(参照式53)。
像这样根据图13所示的处理,利用在图12的步骤S1206中获得的一个场景骨骼识别处理结果,能够以相对较高的处理速度更新位置ck Θ以及方向ek Θ。例如,与进行每一帧的N次的迭代计算的情况相比,能够实现N倍速的处理速度。
此外,在图13所示的处理中,步骤S1316的处理也可以通过并列处理来实现。然而,在微小拟合处理中,由于部位m的长度固定,所以关于位置ck Θ,若对某一个部位求出则对于其他部位也能够导出,所以也可以仅对某一部位计算。其中,在该情况下,由于需要统合各部位的方向ek Θ的结果计算各位置ck Θ,所以在使各部位的运算并列化的情况下,发生同步等待。关于这一点,另一方面,若在各部位计算位置ck Θ和方向ek Θ双方,则能够避免那样的同步等待。
以上,对各实施例进行了详细叙述,但并不限定于特定的实施例,也能够在权利要求书所记载的范围内,进行各种变形以及变更。另外,也能够将上述的实施例的构成要素的全部或者多个组合。
附图标记说明
1…对象物识别系统;21…距离图像传感器;100…对象物识别装置;110…数据输入部;120…一个场景骨骼识别部;122…聚类部;124…EM算法部;126…模型优化部;128…长度计算部;130…部位识别部;132…骨骼整形部;134…校准信息生成部;140…几何模型数据库;142…校准信息存储部;150…微小拟合处理部;151…表面残差计算部;152…后验分布计算部;154…有限长度处理部;155…方差更新部;156…微小变化计算部;158…参数更新部;160…输出部。

Claims (21)

1.一种由计算机执行的对象物识别方法,包含:
从获得三维位置信息的传感器,获取涉及具有多个关节的对象物的表面的点群数据,
导出或者获取表示上述对象物的多个部位中的每一个部位的位置以及轴向的第一参数且是第一时刻的第一参数,
基于比上述第一时刻靠后的第二时刻的上述点群数据、上述第一时刻的上述第一参数、以及具有轴的几何模型,导出上述第二时刻的上述第一参数。
2.根据权利要求1所述的对象物识别方法,其中,
在每个周期执行上述点群数据的获取,
上述第二时刻包含涉及上述第一时刻的周期的下一个周期。
3.根据权利要求1或2所述的对象物识别方法,其中,
上述第一时刻的上述第一参数的导出包含适用处理,上述适用处理使上述几何模型在多处位置分别适用于上述第一时刻的上述点群数据,并基于适用于上述第一时刻的上述点群数据的多个上述几何模型中的每一个几何模型的位置以及轴向,导出上述第一时刻的上述第一参数,
上述第二时刻的上述第一参数的导出包含作为上述第二时刻的上述第一参数导出适用于上述第二时刻的上述点群数据的多个上述几何模型中的每一个几何模型的位置以及轴向。
4.根据权利要求3所述的对象物识别方法,其中,
上述适用处理包含以均匀分布将上述点群数据所包含的噪声模型化。
5.根据权利要求3或4所述的对象物识别方法,其中,
上述几何模型涉及圆柱、圆锥、梯形柱、楕圆柱、椭圆锥、以及梯形楕圆柱中的至少任意一个,
基于上述第一时刻的上述第一参数的导出所使用的种类的多个上述几何模型导出上述第二时刻的上述第一参数。
6.根据权利要求3~5中任一项所述的对象物识别方法,其中,
在通过上述适用处理得到满足第一规定基准的上述第一参数之后执行上述第二时刻的上述第一参数的导出,
上述适用处理在每个周期反复,直到得到满足上述第一规定基准的上述第一参数。
7.根据权利要求6所述的对象物识别方法,其中,
上述适用处理包含计算基于上述第一时刻的上述点群数据的第一后验分布,
上述第一规定基准在上述多个部位的数量为规定量以上,并且,上述多个部位中的每一个部位所涉及的上述第一后验分布的数据和为第一规定值以上的情况下被满足。
8.根据权利要求6或7所述的对象物识别方法,其中,
还包含判定上述第二时刻的上述第一参数的导出结果是否满足第二规定基准,
并包含在上述第二时刻的上述第一参数的导出结果不满足上述第二规定基准的情况下,从新的上述第一时刻的上述第一参数的导出开始重新进行。
9.根据权利要求8所述的对象物识别方法,其中,
包含计算基于上述第二时刻的上述点群数据的第二后验分布,
上述多个部位包含与多个上述几何模型建立对应关系的多个第一部位和未与上述几何模型建立对应关系的多个第二部位,
上述第二规定基准在上述多个第一部位中的每一个所涉及的上述第二后验分布的数据和的合计为第二规定值以上的情况下被满足。
10.根据权利要求9所述的对象物识别方法,其中,
上述第二后验分布的计算按上述多个第一部位中的每一个,对上述第二时刻的上述点群数据中的距离与上述第一部位建立对应关系的上述几何模型的轴向的中心的轴向的距离为规定距离以上的数据,将上述第二后验分布设为0。
11.根据权利要求10所述的对象物识别方法,其中,
上述对象物是人、或者人型的机器人,
上述多个第二部位包含连结上述对象物的臂部的根关节与上述对象物的躯体部中的头部侧的关节的部位、和连结上述对象物的腿部的根关节与上述对象物的躯体部中的上述腿部侧的关节的部位。
12.根据权利要求8~11中的任一项所述的对象物识别方法,其中,
还包含在上述第二时刻的上述第一参数的导出结果满足上述第二规定基准的情况下,基于该第二时刻的上述第一参数的导出结果和涉及该第二时刻的周期的下一个周期的上述点群数据,导出新的上述第二时刻的上述第一参数。
13.根据权利要求12所述的对象物识别方法,其中,
导出上述第二时刻的上述第一参数包含对上述多个部位中的每一个部位导出表示变化的第二参数,上述变化是位置以及轴向的各自的变化,且是从上述第一时刻开始的变化。
14.根据权利要求13所述的对象物识别方法,其中,
上述第二参数的计算包含基于正向运动学的计算处理,上述正向运动学使用了具有能够与上述对象物的关节建立对应关系的多个关节的机构模型。
15.根据权利要求14所述的对象物识别方法,其中,
上述计算处理伴随着将上述对象物的重心的平移、旋转、以及上述多个关节中的每一个的旋转作为微小变化来处理的情况。
16.根据权利要求15所述的对象物识别方法,其中,
上述多个部位包含可动部位和非可动部位,
上述机构模型是对上述多个关节中的上述可动部位所涉及的各关节给予绕3个轴的旋转自由度的模型。
17.根据权利要求16所述的对象物识别方法,其中,
计算上述第二参数包含省略上述计算处理中的涉及上述多个关节中的上述非可动部位间的关节的计算部分。
18.根据权利要求16所述的对象物识别方法,其中,
计算上述第二参数包含省略上述计算处理中的与上述多个部位中的轴对称的几何模型建立对应关系的部位所涉及的计算部分,且是绕轴旋转所涉及的计算部分。
19.一种对象物识别装置,包含:
获取部,从获得三维位置信息的传感器,获取涉及具有多个关节的对象物的表面的点群数据;
参数导出/获取部,导出或者获取表示上述对象物的多个部位中的每一个部位的位置以及轴向的第一参数且是第一时刻的第一参数;以及
导出处理部,基于比上述第一时刻靠后的第二时刻的上述点群数据、上述第一时刻的上述第一参数、以及具有轴的几何模型,导出上述第二时刻的上述第一参数。
20.一种对象物识别系统,包含:
传感器,获得三维位置信息;
获取部,从上述传感器获取涉及具有多个关节的对象物的表面的点群数据;
参数导出/获取部,导出或者获取表示上述对象物的多个部位中的每一个部位的位置以及轴向的第一参数且是第一时刻的第一参数;以及
导出处理部,基于比上述第一时刻靠后的第二时刻的上述点群数据、上述第一时刻的上述第一参数、以及具有轴的几何模型,导出上述第二时刻的上述第一参数。
21.一种对象物识别程序,该程序使计算机执行如下处理:
从获得三维位置信息的传感器,获取涉及具有多个关节的对象物的表面的点群数据,
导出或者获取表示上述对象物的多个部位中的每一个部位的位置以及轴向的第一参数且是第一时刻的第一参数,
基于比上述第一时刻靠后的第二时刻的上述点群数据、上述第一时刻的上述第一参数、以及具有轴的几何模型,导出上述第二时刻的上述第一参数。
CN201780090522.7A 2017-05-10 2017-05-10 对象物识别方法、装置、系统、程序 Active CN110603570B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/017695 WO2018207282A1 (ja) 2017-05-10 2017-05-10 対象物認識方法、装置、システム、プログラム

Publications (2)

Publication Number Publication Date
CN110603570A true CN110603570A (zh) 2019-12-20
CN110603570B CN110603570B (zh) 2023-08-04

Family

ID=64104549

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780090522.7A Active CN110603570B (zh) 2017-05-10 2017-05-10 对象物识别方法、装置、系统、程序

Country Status (5)

Country Link
US (1) US11126831B2 (zh)
EP (1) EP3624059A4 (zh)
JP (1) JP6996557B2 (zh)
CN (1) CN110603570B (zh)
WO (1) WO2018207282A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111033560A (zh) * 2017-08-07 2020-04-17 富士通株式会社 信息处理装置、模型数据创建程序、模型数据创建方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018207282A1 (ja) 2017-05-10 2018-11-15 富士通株式会社 対象物認識方法、装置、システム、プログラム
EP3425591B1 (en) * 2017-07-07 2021-01-13 Tata Consultancy Services Limited System and method for tracking body joints
EP3825730A1 (en) * 2019-11-21 2021-05-26 Bentley Systems, Incorporated Assigning each point of a point cloud to a scanner position of a plurality of different scanner positions in a point cloud
CN114117652B (zh) * 2020-08-31 2024-09-10 重庆大学 基于工业ct图像的工件内部裂纹提取和扩展分析的方法
JP6800509B1 (ja) * 2020-09-30 2020-12-16 アースアイズ株式会社 撮影システム、及び、撮影方法
CN113436223B (zh) * 2021-07-14 2022-05-24 北京市测绘设计研究院 点云数据的分割方法、装置、计算机设备和存储介质

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006302133A (ja) * 2005-04-22 2006-11-02 Toyota Motor Corp 情報処理装置、情報処理方法、及びこれを用いた画像情報処理装置、画像情報処理方法
US20090190798A1 (en) * 2008-01-25 2009-07-30 Sungkyunkwan University Foundation For Corporate Collaboration System and method for real-time object recognition and pose estimation using in-situ monitoring
JP2010015472A (ja) * 2008-07-07 2010-01-21 Nippon Telegr & Teleph Corp <Ntt> 歩行者性別判定装置、歩行者性別判定方法、歩行者性別判定プログラムおよびその記録媒体
US20100302247A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Target digitization, extraction, and tracking
WO2013033442A1 (en) * 2011-08-30 2013-03-07 Digimarc Corporation Methods and arrangements for identifying objects
US20130144135A1 (en) * 2011-08-02 2013-06-06 Mohamed R. Mahfouz Method and apparatus for three dimensional reconstruction of a joint using ultrasound
JP2013115380A (ja) * 2011-11-30 2013-06-10 Panasonic Corp 部品実装装置および部品実装方法
US20130223673A1 (en) * 2011-08-30 2013-08-29 Digimarc Corporation Methods and arrangements for identifying objects
US20130335528A1 (en) * 2012-05-15 2013-12-19 Board Of Regents Of The University Of Texas System Imaging device capable of producing three dimensional representations and methods of use
CN104662587A (zh) * 2012-07-27 2015-05-27 日本电气方案创新株式会社 三维用户界面装置以及三维操作方法
JP2015102913A (ja) * 2013-11-21 2015-06-04 キヤノン株式会社 姿勢推定装置及び姿勢推定方法
US20150193977A1 (en) * 2012-08-31 2015-07-09 Google Inc. Self-Describing Three-Dimensional (3D) Object Recognition and Control Descriptors for Augmented Reality Interfaces
JP2015170907A (ja) * 2014-03-05 2015-09-28 キヤノン株式会社 スキャナシステム、スキャナシステムのデータ処理方法、及びプログラム
JP2016103137A (ja) * 2014-11-28 2016-06-02 キヤノン株式会社 ユーザインタフェース装置、画像処理装置及び制御用プログラム
US20160335790A1 (en) * 2015-05-13 2016-11-17 Intel Corporation Iterative closest point technique based on a solution of inverse kinematics problem
JP2017036998A (ja) * 2015-08-10 2017-02-16 株式会社東芝 色情報決定装置および画像生成装置
JP2017073039A (ja) * 2015-10-08 2017-04-13 キヤノン株式会社 物体識別装置、物体識別方法及びプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10149445A (ja) 1996-11-19 1998-06-02 Image Joho Kagaku Kenkyusho 身体動作解析可視化装置
US9135502B2 (en) 2009-05-11 2015-09-15 Universitat Zu Lubeck Method for the real-time-capable, computer-assisted analysis of an image sequence containing a variable pose
JP5297403B2 (ja) 2010-02-26 2013-09-25 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測方法、プログラムおよび記憶媒体
EP2383696A1 (en) 2010-04-30 2011-11-02 LiberoVision AG Method for estimating a pose of an articulated object model
EP3751517A1 (en) 2011-05-16 2020-12-16 Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. Fast articulated motion tracking
US9235928B2 (en) 2012-01-24 2016-01-12 University Of Southern California 3D body modeling, from a single or multiple 3D cameras, in the presence of motion
EP2674913B1 (en) * 2012-06-14 2014-07-23 Softkinetic Software Three-dimensional object modelling fitting & tracking.
US9928412B2 (en) 2014-10-17 2018-03-27 Ebay Inc. Method, medium, and system for fast 3D model fitting and anthropometrics
US10186081B2 (en) 2015-12-29 2019-01-22 Microsoft Technology Licensing, Llc Tracking rigged smooth-surface models of articulated objects
US9898858B2 (en) 2016-05-18 2018-02-20 Siemens Healthcare Gmbh Human body representation with non-rigid parts in an imaging system
EP3249921A1 (en) * 2016-05-24 2017-11-29 Thomson Licensing Method, apparatus and stream for immersive video format
WO2018207282A1 (ja) 2017-05-10 2018-11-15 富士通株式会社 対象物認識方法、装置、システム、プログラム

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006302133A (ja) * 2005-04-22 2006-11-02 Toyota Motor Corp 情報処理装置、情報処理方法、及びこれを用いた画像情報処理装置、画像情報処理方法
US20090190798A1 (en) * 2008-01-25 2009-07-30 Sungkyunkwan University Foundation For Corporate Collaboration System and method for real-time object recognition and pose estimation using in-situ monitoring
JP2010015472A (ja) * 2008-07-07 2010-01-21 Nippon Telegr & Teleph Corp <Ntt> 歩行者性別判定装置、歩行者性別判定方法、歩行者性別判定プログラムおよびその記録媒体
US20100302247A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Target digitization, extraction, and tracking
US20130144135A1 (en) * 2011-08-02 2013-06-06 Mohamed R. Mahfouz Method and apparatus for three dimensional reconstruction of a joint using ultrasound
WO2013033442A1 (en) * 2011-08-30 2013-03-07 Digimarc Corporation Methods and arrangements for identifying objects
US20130223673A1 (en) * 2011-08-30 2013-08-29 Digimarc Corporation Methods and arrangements for identifying objects
JP2013115380A (ja) * 2011-11-30 2013-06-10 Panasonic Corp 部品実装装置および部品実装方法
US20130335528A1 (en) * 2012-05-15 2013-12-19 Board Of Regents Of The University Of Texas System Imaging device capable of producing three dimensional representations and methods of use
CN104662587A (zh) * 2012-07-27 2015-05-27 日本电气方案创新株式会社 三维用户界面装置以及三维操作方法
US20150193977A1 (en) * 2012-08-31 2015-07-09 Google Inc. Self-Describing Three-Dimensional (3D) Object Recognition and Control Descriptors for Augmented Reality Interfaces
JP2015102913A (ja) * 2013-11-21 2015-06-04 キヤノン株式会社 姿勢推定装置及び姿勢推定方法
JP2015170907A (ja) * 2014-03-05 2015-09-28 キヤノン株式会社 スキャナシステム、スキャナシステムのデータ処理方法、及びプログラム
JP2016103137A (ja) * 2014-11-28 2016-06-02 キヤノン株式会社 ユーザインタフェース装置、画像処理装置及び制御用プログラム
US20160335790A1 (en) * 2015-05-13 2016-11-17 Intel Corporation Iterative closest point technique based on a solution of inverse kinematics problem
JP2017036998A (ja) * 2015-08-10 2017-02-16 株式会社東芝 色情報決定装置および画像生成装置
JP2017073039A (ja) * 2015-10-08 2017-04-13 キヤノン株式会社 物体識別装置、物体識別方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SILVIA ZUFFI ET AL: "Shape Models of the Human Body for Distributed Inference", 《HTTPS://WWW.IS.MPG.DE/UPLOADS_FILE/ATTACHMENT/ATTACHMENT/199/THESIS.PDF》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111033560A (zh) * 2017-08-07 2020-04-17 富士通株式会社 信息处理装置、模型数据创建程序、模型数据创建方法

Also Published As

Publication number Publication date
US11126831B2 (en) 2021-09-21
CN110603570B (zh) 2023-08-04
WO2018207282A1 (ja) 2018-11-15
JP6996557B2 (ja) 2022-02-21
US20200074161A1 (en) 2020-03-05
JPWO2018207282A1 (ja) 2020-03-12
EP3624059A1 (en) 2020-03-18
EP3624059A4 (en) 2020-05-27

Similar Documents

Publication Publication Date Title
CN110603570B (zh) 对象物识别方法、装置、系统、程序
Corazza et al. Markerless motion capture through visual hull, articulated icp and subject specific model generation
US11188742B2 (en) Information processing apparatus and model data creating method
Hu et al. 3D Pose tracking of walker users' lower limb with a structured-light camera on a moving platform
KR101700377B1 (ko) 아바타 생성을 위한 처리 장치 및 방법
KR102500626B1 (ko) 로봇의 움직임을 제어하기 위한 장치 및 이에 관련된 치료 로봇
JP4016180B2 (ja) 平面抽出方法、その装置、そのプログラム、その記録媒体及び撮像装置
JP2019096113A (ja) キーポイントデータに関する加工装置、方法及びプログラム
JP2004094288A (ja) 指示位置検出装置及び自律ロボット
CN111862299A (zh) 人体三维模型构建方法、装置、机器人和存储介质
JP2012128661A (ja) 情報処理装置、情報処理方法及びプログラム
US20220414291A1 (en) Device for Defining a Sequence of Movements in a Generic Model
JP4535096B2 (ja) 平面抽出方法、その装置、そのプログラム、その記録媒体及び撮像装置
JP6465027B2 (ja) 特徴点位置推定装置、特徴点位置推定方法および特徴点位置推定プログラム
KR20130098824A (ko) 에이에이엠 및 추정된 깊이 정보를 이용하는 3차원 얼굴 포즈 및 표정 변화 추정 방법
JP4765075B2 (ja) ステレオ画像を利用した物体の位置および姿勢認識システムならびに物体の位置および姿勢認識方法を実行するプログラム
CN114422832A (zh) 主播虚拟形象生成方法及装置
WO2018207292A1 (ja) 対象物認識方法、装置、システム、プログラム
JP5872401B2 (ja) 領域分割装置
US11978228B2 (en) Systems and methods for determining an orientation of an image
KR20230009676A (ko) 3차원 인체 자세 추정 장치 및 그 방법
Kerdvibulvech et al. Structural human shape analysis for modeling and recognition
Bhanu et al. Model-based human recognition—2D and 3D gait
KR102176767B1 (ko) 사용자의 특정 동작을 통해 센서 데이터를 보정하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체
WO2023162223A1 (ja) 学習プログラム、生成プログラム、学習方法および生成方法

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