基于动态模板的光学运动捕捉数据处理方法

文档序号:6480994阅读:171来源:国知局

专利名称::基于动态模板的光学运动捕捉数据处理方法
技术领域
:本发明涉及光学人体运动捕捉散乱数据处理,特别是为了消除由于噪声数据和缺失数据所导致的在数据处理中的误差累积问题的技术和方法。
背景技术
:近年来,随着计算机软硬件技术的进歩,虚拟现实(Virtual-Reality)技术得到了飞速的发展,运动捕捉数据处理的研究是虚拟现实技术重要的研究领域之一,虚拟人是真实人类在计算机生成空间(虚拟环境)中的几何特性与行为特性的表示,主要包括人脸表情仿真(FacialExpressionSimulation)及人体运动合成(HumanMotionSynthesize)两个主要方而。在现实世界中广泛应用于工业、农业、交通、文教卫生和体育等许多行业,特别是在体育科学研究、运动训练指导、现代影视、动画和游戏制作等领域的应用,有重耍的作用和意义。因此,提高运动捕捉的精度、效率,降低设备成本,对推动影视制作、游戏娱乐、动漫产业的快速发展,构建相互支撑的动漫产业链,促进国家文化产业发展进而带动国民经济增长具有重要的作用和深刻意义。到目甜为止,常用的运动捕捉技术从原理上说可分为机械式、声学式、电磁式和光学式。不同原理的设备各有其优缺点,一般可从以下几个方面进行评价定位精度;实时性;使用方便程度;可捕捉运动范围大小;成本;抗干扰性;多目标捕捉能力。光学式运动捕捉的优点是表演者活动范围大,无电缆、机械装置的限制,表演者可以自由地表演,使用很方便。其采样速率较高,可以满足多数高速运动测量的需要。Marker的价格便宜,便于扩充。这种方法的缺点是系统价格昂贵,虽然它可以捕捉实时运动,但后处理(包括Marker的识别、跟踪、空间坐标的计算)的工作量较大,对于表演场地的光照、反射情况有-定的要求,装置定标也较为烦琐。特别是当运动复杂时,不同部位的Marker有可能发生混淆、遮挡,产生错误结果,这时需要人工干预后处理过程。光学式运动捕获的优点使得其在应用领域占有重要份额。但由于其数据固有问题使得其后期的数据处理尤为重要。通过分析散乱数据特征,总结出光学式运动捕捉散乱数据的特点如下。①采集到的信息仅有Marker点的三维坐标信息,数据以散乱无序(没有被标定)的形式存在;②由于标记点被道具、四肢、躯干或者其他标记点遮挡,存在缺失点数据,时常缺失点会连续缺失;③由于摄像延迟会出现噪声点;④运动员在做剧烈的运动时,Marker点相对于人体会出现位移,从而改变了运动数据之间的拓扑结构。基于以上四点,数据后续处理运算复杂度较大,数据跟踪匹配的主要困难在于如何提取合适的散乱数据的特征信息,及遮挡等情况给跟踪与匹配带来的困难如何建立起快速搜索匹配算法,实时准确地对运动数据实现跟踪。刚体匹配方法是一种传统的数据处理方法,由于人体骨骼结构为相对刚性铰接结构,所以可以将其看作是刚体。在进行Marker点的匹配跟踪时,可根据刚休结构的几何特性进行跟踪匹配。根据人体骨架结构和上文所述的Marker点布点方案,设计几何匹配关系线段匹配、三角形匹配、四边形匹配、对角四边形匹配和刚性四边形(四面体)匹配。匹配方法是首先建立匹配模版,根据模版的几何特性在待标定的散乱数据中查找与模板匹配或近似匹配的几何结构(线段长度、向量夹角),找到则标定。例如,对于刚性四边形匹配,要判定四条边和两对角线都满足条件,本文中适用于头部、腰部等刚性部位的匹配。在一般运动幅度下,上述形状匹配的方法已经基本能够达到较高的标定精度且算法实现简单能够满足实时性要求。但由于以下三点原因极大地影响了匹配精度①Marker点是设置在表演者的紧身衣上,在运动过程中紧身衣会弹性伸縮。②肌肉和皮肤在运动过程中相对于骨骼会拉伸和滑动。③数据捕捉过程中的滞后和数据预处理点簇聚类的影响。因此,在剧烈运动下刚性结构将遭到破坏,刚体上的Marker之间的距离会有伸缩,因此基于固定模版的匹配将出现误差现象。从而设计一种能够根据当甜帧的具体姿态,获得动态模板进行刚体匹配,从而减少误差,消除误差累积问题的数据处理算法仍然是一个具有挑战性的任务。
发明内容本发明的目的在于提出了一种用于被动式光学人体运动捕捉数据方法,该方法通过建立运动特征数据库,着重解决在运动过程中刚体结构被破坏所导致的在数据处理中的误差累积问题,从而提高运动数据跟踪匹配效率,使得在处理过程中无需手工干预,并且单帧数据处理耗时满足运动捕捉的实时性要求。本发明的技术方案是基于动态模板的光学运动捕捉数据处理方法,包括以下步骤-(1)运动数据预处理,处理方法是对聚集在一起的数据进行合并,相对距离在一个阈值内的所有Marker点认为是由摄像机的延迟所造成,是同一个Marker点的幻化;(2)建立动态模板库模型。模板库根据人体肢体分为头、肩、手臂、躯干、腰、腿和脚七个模块,关联形态表现为数据库表与表的关联。基T运动生物力学的三维人体运动模型屮关于关节结构分类、不同类型自由度的定义以及一些主要关节运动分析,结合本专利对人体结构模型的定义,给出动态模板库中各主要运动肢体的关联设计;肩部的运动关联分析设定肩部线段长度与脊椎骨的夹角和与脊椎骨垂直的向量的夹角进行映射;脊柱部的运动关联分析其与髋关节平面的夹角来描述其长度变化;手部的运动关联分析设定手部前端线段长度和后端线段长度与两线向量夹角进行映射;腿部的运动关联分析小腿长度可与大腿和小腿之间的夹角值进行映射;(3)基于三样条插值的动态拟合模板模型。在数据标定吋,需从动态模版库中查询当前帧的模板,由于动态模版库中姿态有限可能无法找到与当前帧精确一致的运动模板数据,利用与当前帧姿态相近的运动数据采用三次样条插值的方法拟合出近似的运动模板数据,人体运动是一个连贯的动作,肢体运动具有光滑性特征,而三次样条插值函数曲线具有较高的光滑性,结合三次样条插值函数定义,实现从动态模版库中获取当前帧的模版;(4)基于动态模板的运动数据预测与跟踪算法,具体步骤如下-歩骤l:首先,对数据预处理。处理方法是对聚集在一起的数据进行合并,相对距离在一个阈值内的所有Marker点认为是ttj摄像机的延迟所造成,是同一个Marker点的幻化,预处理后使数据点个数基本接近实际Marker点数目,很大程度上提高了后续的数据处理效率;歩骤2:逐帧进行形状匹配。依据标准模版对各肢体进行上面提到的五种匹配关系进行匹配,为了适应刚体形状偏差,设定误差允许范围x,如果全部成功匹配且匹配结果只有一个正确跟踪则成功标定,对于运动幅度比较大交叉比较多的运动,匹配结果不只一个,这种情况转入歩骤3;歩骤3:运用动态模版信息剔除噪声匹配结果,仍以肩部为例,肩部的动态模版信息主要和脊椎部关联,为了获取当前帧的肩部模版信息要通过査询当前帧脊椎部的匹配情况,根据姿态参数在动态模版库中进行三样条插值拟合,拟合出映射参数,用映射参数和3前姿态参数比较,如夹角和线段长度和在动态模版中拟合的对应姿态下的夹角和线段长度不吻合,说明是错误匹配结果,去除之;如相同,匹配块是正确的匹配结果,标定Marker点,结束验证;步骤4:在当前帧所有模块通过步骤2、歩骤3两步处理完成后,进行最后的结构效验。具体包括以下技术环节1.特征点摆放方式根据人体近刚性特点,在关节处摆放标记点,标记点摆放具体位置尽量避免被遮挡和滑动现象。2.建立动态模板库模型动态模板库的标准是姿态丰富和关联合理。姿态丰富要求动态模版库中应该尽暈多地包含运动的各种姿态和不同幅度的动作,使得在数据处理过程中的模版检索能够尽可能满足;5关联合理要求肢体之间的关联应该是相互使动关系,例如影响肩部Marker点连线的长度变化应该和手臂、背部的运动变化有关而和脚腿部关系不大。基于运动生物力学的三维人体运动模型中关于关节结构分类、不同类型自由度的定义以及一些主要关节运动分析,结合本文人体结构模型的定义,给出动态模版库中各运动肢体的关联设计。在人体的运动中肩部、脊椎部、手部和腿部等器官的运动具有复杂性,我们对这几个部位的运动关联作详细介绍。(1)肩部的运动关联分析肩关节是球窝型关节,有三个自由度,其运动范围广、幅度大,与之链接的锁骨是L型关节,由于其相对滑动的特点使得肩上的四Marker点之间的长度变化较大,因此闪点难以标定。根据其与锁骨的联系和运动姿态,我们设定长度与脊椎骨的夹角和与脊椎骨垂直的向量的夹角进行映射。公式表示为L:FOd,x》.其中L为肩部向量长度,x,为肩部向量与脊椎骨的夹角,X2为肩部向量与脊椎骨垂直的向量的夹角.其肩部模型图形显示见附图3。(2)脊柱部的运动关联分析-脊柱由24块独立的椎骨、1块骶骨、1块尾骨以及连结它们的23块椎间盘、关节和韧带装置构成。脊柱之间的运动幅度虽然有限,但整个脊柱的运动范围仍很大。脊杵绕额状轴可做屈伸运动;绕矢状轴可做侧屈运动;绕垂直轴可做回旋运动和环转运动。本文人体结构模型的脊柱部是由四Marker点描述,通过分析其与髋关节(平面)的夹角来描述其长度变化。映射公式为L^F(x,,X2).其中L为脊椎部向量长度,x,为脊椎部向量与髋关节(平面)前侧向量的夹角,&为脊椎部向量与髋关节(平面)左侧向量的夹角。(3)手部的运动关联分析根据本Marker点的贴点方式,手部在腕部水平贴两个点,在中指关节的第二个关节上贴一个点。腕关节属于鞍状关节,其上下活动比较大,左右活动比较小。当上下活动时手部皮肤伸縮必然导致手部两线段长度变化;当左右活动时两线段长度也有变化,但其长度之和基本不变。出此分析得出关联结果用公式描述为(L,L2)4(x),其中L、L2为向量的长度,x为向量L与向量U的夹角.L,+L2=H,其中H为在上下活动姿态下两线段之和的恒定值。(4)腿部的运动关联分析-膝关节属于铰链关节,与之相连的踝关节是球窝关节其都有一个自由度。影响小腿部长度变化的因素主要是肌肉的拉伸和皮肤的滑动,因此小腿长度可与大腿和小腿之间的火角值进行映射,具体公式描述L=F(x),其x为小腿向量与大腿向量之间的夹角,L为大腿向量长度。其它关节的运动关联分析方法基本上和这些雷同不在赘述,到此动态模板库基本建立完成。实际工作时,要由表演者尽可能地表演不同幅度的动作,成功标定运动数据,丰富动态模版库。其实,.动态模板库的丰富过程是不断渐进的过程,每当有成功处理的数据时都可以把运动数据添加到运动模版库中。动态模板库的结构示意图见附图4。3.建立基于三样条插值的动态拟合模板模型在数据标定时,需从动态模版库中杳询当前帧的模板,由于动态模版库中姿态有限可能无法找到与当前帧精确一致的运动模板数据。我们提出利用与当前帧姿态相近的运动数据采用三次样条插值的方法拟合出近似的运动模板数据。人体运动是一个连贯的动作,肢体运动具有光滑性特征,而三次样条插值函数曲线具有较高的光滑性。定义l三样条插值函数设给定函数F(x)在区间[a,b]上的节点为:a<=x。<Xl<......<x<=b,及节点上的函数值F(Xi)=y,(i=0,l,……,n)。F(x)的三次样条插值函数s(x)要满足s(x—y'(i=0,l,,.,,,it)W由三次样条函数的定义得到s(x)是[a,b]上的分段三次插值多项式,即'.....(2)、mW'xn其中Sk(X)应是子区间[Xk,Xw]上的两点三次插值多项式,并且山于s(x)GC2[a,b],故有Iims,x戶Hn〗s,x)(P-o,u;k-〗么",〗》(袭^^数阶数)(4)在实际应用中我们设定边界约束条件为自然边界条件,需要满足S'(Xd户F),,S'〖&》=F'n(5)通过(l)、(3)、(4)、(5)四类条件求得F(x)的三次样条插值函数s(x)。三次样条插值函数在动态模版匹配中的应用,结合三次样条插值函数定义,实现从动态模版库中获取当前帧的模版,详细算法歩骤叙述如下步骤l:根据当甜帧的姿态参数,在动态模版库中搜索近似姿态。以求肩部关节线段(5、9)长度为例,首先得出向量(5、9)与向量(5、6)之间的夹角xb向量(5、9)与向量(5、8)的夹角X2.在动态模版库中搜索对应误差范围在y内的两夹角对(a,,bi)……(a,b),其巾n为满足误差范围内的值对个数,a,为夹角值,a,为在夹角bi对应下的线段(5、9)的长度。歩骤2:算法实现三次样条插值多项式求解,调用函数ThreePline();歩骤3:输入为n,{Xi,y,},ii,u,p。,pn输出为S(u)。其中p。和p。为边界条件,在本算法处理时选择自然边界条件,即PFPn-O。S(u)即为所求当前帧该姿态下的模版长度。附图5所示为利用该算法拟合的插值,圆圈内点为与其相近的红色点所拟合的结果,可看出平滑效果比较好。4.基于动态模板的运动数据预测与跟踪算法由于运动数据是散乱数据,在对当前帧进行有序标定时,无法确定当甜帧各肢体的姿态,逆向思维,利用后续验证的方法来验证当前匹配的正确性。运动数据的预测与跟踪方法是在基十刚体的形状匹配方法上的改进。由于摄像延迟会出现噪声点,在匹配之前要先对运动数据进行简单的去噪处理以保证处理后的每帧数据基本上接近Marker点数。在进行形状匹配时,首先利用标准模版对上面提到的各个模块在各自(根据动态模版中各线段长度的上下界)的误差范围内进行匹配,匹配结果可能有不只一个满足条件,这时利用动态模版中的数据信息对噪声结果进行一一排除,找出最相近的匹配结果进行标定。下面叙述算法处理详细歩骤歩骤1:首先,对数据预处理。处理方法是对聚集在一起的数据进行合并,相对距离在一个阈值内的所有Marker点认为是由摄像机的延迟所造成,是同一个Marker点的幻化。预处理后使数据点个数基本接近实际Marker点数目,很大程度上提高了后续的数据处理效率。歩骤2:逐帧进行形状匹配。依据标准模版对各肢体进行上面提到的五种匹配关系进行匹配,为了适应刚体形状偏差,设定误差允许范围x。如果全部成功匹配且匹配结果只有-个IH确跟踪则成功标定。而对于运动幅度比较大交叉比较多的运动,可能匹配结果不只一个,例如满足肩部四边形结构的匹配结果可能有两套以上,这种情况转入3.步骤3:运用动态模版信息剔除噪声匹配结果。仍以肩部为例,肩部的动态模版信息主要和脊椎部关联,为了获取当前帧的肩部模版信息要通过査询当甜帧脊椎部的匹配情况,根据姿态参数在动态模版库中进行三样条插值拟合,拟合出映射参数,用映射参数和当甜姿态8参数比较,如夹角和线段长度和在动态模版中拟合的对应姿态下的夹角和线段长度不吻合,说明是错误匹配结果,去除之;如相同,我们认为此匹配块是正确的匹配结果,标定Marker点,结束验证。步骤4:在当前帧所有模块通过2、3两步处理完成后,进行最后的结构效验,结构效验主要解决肢体对称性问题。本发明与现有技术相比具有以下优点1、一般的人体运动数据跟踪匹配方法是在固定模板的前'提下进行处理的,但在剧烈运动下刚性结构将遭到破坏,刚体上的Marker之间的距离会有伸缩,因此基于固定模版的匹配将出现误差现象。基于动态模板库的匹配方法能够消除误差累积现象,在每帧数据处理时都能在动态模板库中搜寻或拟合出当前的精确模板,从而减少匹配误差,提高匹配效率,达到数据自动处理,无需人工调整,满足实时性要求。2、该方法具有良好的可扩展性;表现在(1)特征数据库可以随着运动数据的丰富不断得到丰富,用己标定的数据填充特征数据库,从而可以简单地得到丰富的姿态特征数据库。(2)该方法适合于其他数据处理方法,特征数据库可以作为一个独立的单元,來为不同的数据处理方法提供约束条件。图1本发明算法流程图。图2标记点摆放方法。图3肩部模型关联示意图。图4动态模板库的结构示意图。图5三次样条插值结果图。图6系统实现结果,上图是散乱数据下图对应处理数据。具体实施例方式本发明的实施例是在以本发明技术方案为前提下进行实施的,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实施例。实例选取-组体操运动进行验证,运动人体标记点的贴点方式如图2所示,标记点个数为32,采样频率60fps。具体实施歩骤为歩骤l:采集原始数据。原始数据存储格式如下FRAME1MARKER1-116.271363-114.849685162.238128MARKER1-109.013663-94.76932393.733788MARKER2-110.722049-72.05035187.020620MARKER3-129.460634-133.89104781.189525FRA穀其中FRAMEn表示为第n帧数据MAMERm表示第m个特征标记点,随后的三个数分别表示其x,y,z坐标,单位mm。歩骤2:载入运动数据。歩骤3:数据归一化。由于数据捕获时,表演员的身体有差异,高矮胖瘦各不同,获取数据对应的表演者的身体参数(身高、臂长、腿长、腰围、胸围、手型和脚型等),这些参数如果数据中没有给出(如第三方数据),可单帧手动获取。人体模型的数据归一化处理研究己经趋于成熟,王维等人在论文《基于国际人体测量学数据的虚拟人縮放方法》通过研究Jack软件中人体模型表示方法和人体测量学数据之间的映射关系,提出一种人体测量学数据的人体模型动态縮放方法。并利用该方法在Jack软件中建立了基于国际人体测量学数据的人体模型动态縮放子系统。本专利应用此方法,把运动数据转换为适合固定人体模型的数据,进行归-化。歩骤4:数据预处理。根据满足帧数调节去噪参数进行去噪处理,处理后数据每帧保持在和所贴标记点数目大致相同,本专利规定32个标记点。歩骤5:加载动态模板库,模板库根据人体肢体分为头、肩、手臂、躯干、腰、腿和脚七个模块,其关联定义由第二节提到的肢体关联模型给出定义,关联形态表现为数据库表与表的关联。例如肩部关联,在获得当前模板的肩部具体长度(在本专利中表现为线段59的长度),利用公式L二F(U2)。肩部表的格式和数据如下表AcanthaNumberangle—oneangle—twodistance167.27416992187581.889472961425823.72375265.356788635253989.479911804199222.9198363.208293914794990.625106811523420.95225463.254184722900490.352882385253921.39528歩骤6:循环所有帧数据,对每帧调用基于动态模板的运动数据预测与跟踪算法。该算法在发明专利内容第4节已经详细叙述,此过程可用伪码描述为FORi二ltom一nCut,FrameResultTemp[]=RIGIDB0DY(i);m一pConnection-〉Open("Provider二Microsof't.Jet.OLEDB.4.O;DataSource二DynamicTemplate.mdb〃,〃",〃",adModeUnknown);Result[]二DY廳ICPROCESS(ResultTemp[]);,歩骤7:处理后的运动数据输出,以文件形式输出,数据格式为-F廳ElMARKER1-102.613005-66.8843762.368223MARKER1-120.167395-82.583491139.118830MARKER2-115.241901-128.29310185.508738MARKERS—133.748703—128.622772102.070744FRAME2其中FRAMEn表示为第n帧数据,具体帧数和原始数据一样。MARKERm表示第m个特征标记点,随后的三个数分别表示其x,y,z坐标,中.位mm。在本专利中数据处理后m的最大值同定为32,与原始数据对比对应值不变,变化的是原始数据中每帧数据可能不为32个。且标记点顺序与模板中标记点顺序一致。附图6为利用本文所提算法并经过优化后对一组光学捕捉散乱运动进行数据处理的界面,分别显示散乱数据和对应的处理结果。运用本文所提方法,算法经过优化后,该系统对不同复杂度的光学捕捉数据进行处理,处理结果表明准确处理率根据动作复杂度不同分布在75%-100%之间,表一所示,对于一般交叉较少运动幅度变化不是很大的常规数据匹配成功率能込到90%以上,对于运动幅度很大的运动,成功定标率在80%左右。该方法自动递归处理,无须手动千预,经测试,对于以每秒60帧采集的散乱数据,争帧数据处理过程耗时t〈l/60s,每帧处理耗时相近,处理效率能够满足实时性要求。表一各组运动数据实验结果<table>tableseeoriginaldocumentpage12</column></row><table>权利要求1、基于动态模板的光学运动捕捉数据处理方法,其特征在于,包括以下步骤(1)运动数据预处理处理方法是对聚集在一起的数据进行合并,相对距离在一个阈值内的所有Marker点认为是由摄像机的延迟所造成,是同一个Marker点的幻化;(2)建立动态模板库模型模板库根据人体肢体分为头、肩、手臂、躯干、腰、腿和脚七个模块,关联形态表现为数据库表与表的关联。基于运动生物力学的三维人体运动模型中关于关节结构分类、不同类型自由度的定义以及一些主要关节运动分析,结合本专利对人体结构模型的定义,给出动态模板库中各主要运动肢体的关联设计;肩部的运动关联分析设定肩部线段长度与脊椎骨的夹角和与脊椎骨垂直的向量的夹角进行映射;脊柱部的运动关联分析其与髋关节平面的夹角来描述其长度变化;手部的运动关联分析设定手部前端线段长度和后端线段长度与两线向量夹角进行映射;腿部的运动关联分析小腿长度可与大腿和小腿之间的夹角值进行映射;(3)基于三样条插值的动态拟合模板模型在数据标定时,需从动态模版库中查询当前帧的模板,由于动态模版库中姿态有限可能无法找到与当前帧精确一致的运动模板数据,利用与当前帧姿态相近的运动数据采用三次样条插值的方法拟合出近似的运动模板数据,人体运动是一个连贯的动作,结合三次样条插值函数定义,实现从动态模版库中获取当前帧的模版;(4)基于动态模板的运动数据预测与跟踪步骤1首先,对数据预处理,处理方法是对聚集在一起的数据进行合并,相对距离在一个阈值内的所有Marker点认为是由摄像机的延迟所造成,是同一个Marker点的幻化,预处理后使数据点个数基本接近实际Marker点数目;步骤2逐帧进行形状匹配,依据标准模版对各肢体进行上面提到的五种匹配关系进行匹配,设定误差允许范围x,如果全部成功匹配且匹配结果只有一个正确跟踪则成功标定,若匹配结果不只一个,转入步骤3;步骤3运用动态模版信息剔除噪声匹配结果,根据姿态参数在动态模版库中进行三样条插值拟合,拟合出映射参数,用映射参数和当前姿态参数比较,如夹角和线段长度和在动态模版中拟合的对应姿态下的夹角和线段长度不吻合,说明是错误匹配结果,去除之;如相同,匹配块是正确的匹配结果,标定Marker点,结束验证;步骤4在当前帧所有模块通过步骤2、步骤3两步处理完成后,进行最后的结构效验。全文摘要本发明公开了基于动态模板的光学运动捕捉数据处理方法。通过建立运动特征数据库,提出一种改进的基于刚体的光学运动捕捉数据处理方法,着重解决在运动过程中刚体结构被破坏的问题,通过运动特征数据库建立一个动态的匹配模版,从而有效地解决了传统的刚体匹配仅用唯一匹配模版所造成的失配和误差累积问题。本发明利用运动特征数据库检索信息,在跟踪匹配过程中自动调整各刚体长度的误差参数,在处理过程中无需手工干预自动完成,并且单帧数据处理耗时满足运动捕捉的实时性要求。文档编号G06T17/00GK101533526SQ20091001122公开日2009年9月16日申请日期2009年4月18日优先权日2009年4月18日发明者升吴,强张,魏小鹏申请人:大连大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1