一种基于视觉和惯性的动作捕捉方法、装置及系统与流程

文档序号:17487839发布日期:2019-04-23 20:07阅读:167来源:国知局
一种基于视觉和惯性的动作捕捉方法、装置及系统与流程

本发明涉及动作捕捉技术领域,具体涉及一种基于视觉和惯性的动作捕捉方法、装置及系统。



背景技术:

惯性动作捕捉随着近年来微机电系统(mems)技术的成熟,迎来了高速发展,其方法为将惯性测量单元(imu)连接到待测物体,并跟随一起运动,测量待测物体的角速度信息和加速度信息,并进一步处理得到位置信息和姿态信息,但是该方法的测量精度较低。



技术实现要素:

有鉴于此,本发明实施例提出了一种基于视觉和惯性的动作捕捉方法、装置及系统,用以解决现有动作捕捉方法测量精度低的问题。

为实现上述目的,本发明采用如下技术方案:

根据第一方面,本发明实施例提供了一种基于视觉和惯性的动作捕捉方法,该动作捕捉方法包括:获取被捕捉对象的图像数据、通过视觉传感器模组得到的所述视觉传感器模组的第一运动数据及通过惯性测量模组得到的所述被捕捉对象的第二运动数据;根据所述图像数据和第一运动数据得到所述被捕捉对象的第一位姿数据;根据所述第二运动数据得到所述被捕捉对象的第二位姿数据;将所述第一位姿数据和第二位姿数据进行融合,得到所述被捕捉对象的动作信息。

结合第一方面,在第一方面第一实施方式中,所述视觉传感器模组包括:摄像头,所述方法通过所述摄像头获取所述图像数据;根据所述图像数据和第一运动数据得到所述被捕捉对象的第一位姿数据,包括:根据所述图像数据和第一运动数据得到所述摄像头在世界坐标系下的第三位姿数据;根据所述图像数据得到所述被捕捉对象在所述摄像头坐标系下的第四位姿数据;根据所述第三位姿数据和第四位姿数据得到所述被捕捉对象在所述世界坐标系下的所述第一位姿数据。

结合第一方面第一实施方式,在第一方面第二实施方式中,通过即时定位与建图算法得到所述摄像头在世界坐标系下的第三位姿数据。

结合第一方面第一实施方式,在第一方面第三实施方式中,通过深度学习算法得到所述被捕捉对象在所述摄像头坐标系下的第四位姿数据。

结合第一方面或第一方面中任意一种实施方式,在第一方面第四实施方式中,将所述第一位姿数据和第二位姿数据进行融合,得到所述被捕捉对象的动作信息,包括:将所述第一位姿数据和第二位姿数据进行融合,得到所述被捕捉对象的位姿信息;根据所述位姿信息进行动力学解算,得到所述被捕捉对象的动作信息。

结合第一方面第四实施方式,在第一方面第五实施方式中,通过互补滤波算法、最小二乘算法或卡尔曼滤波算法将所述第一位姿数据和第二位姿数据进行融合。

根据第二方面,本发明实施例提供了一种基于视觉和惯性的动作捕捉装置,该动作捕捉装置包括:数据获取模块,用于获取被捕捉对象的图像数据、通过视觉传感器模组得到的所述视觉传感器模组的第一运动数据及通过惯性测量模组得到的所述被捕捉对象的第二运动数据;第一位姿确定模块,用于根据所述图像数据和第一运动数据得到所述被捕捉对象的第一位姿数据;第二位姿确定模块,用于根据所述第二运动数据得到所述被捕捉对象的第二位姿数据;动作信息确定模块,用于将所述第一位姿数据和第二位姿数据进行融合,得到所述被捕捉对象的动作信息。

根据第三方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行本发明第一方面或第一方面第一实施方式至第一方面第五实施方式中任一实施方式所述的动作捕捉方法。

根据第四方面,本发明实施例提供了一种基于视觉和惯性的动作捕捉设备,该动作捕捉设备包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行本发明第一方面或第一方面第一实施方式至第一方面第五实施方式中任一实施方式所述的动作捕捉方法。

根据第五方面,本发明实施例提供了一种基于视觉和惯性的动作捕捉系统,该动作捕捉系统包括:视觉传感器模组、惯性测量模组和上位机,所述视觉传感器模组包括:摄像头和惯性测量单元;所述摄像头获取被捕捉对象的图像数据,并将所述图像数据发送至所述上位机;所述惯性测量单元获取所述视觉传感器模组的第一运动数据,并将所述第一运动数据发送至所述上位机;所述惯性测量模组获取所述被捕捉对象的第二运动数据,并将所述第二运动数据发送至所述上位机;所述上位机接收图像数据、第一运动数据和第二运动数据,根据所述图像数据和第一运动数据得到所述被捕捉对象的第一位姿数据,根据所述第二运动数据得到所述被捕捉对象的第二位姿数据,将所述第一位姿数据和第二位姿数据进行融合,得到所述被捕捉对象的动作信息。

本发明技术方案,与现有技术相比,至少具有如下优点:

本发明实施例提供了一种基于视觉和惯性的动作捕捉方法、装置及系统,该动作捕捉方法根据被捕捉对象的图像数据和视觉传感器模组的第一运动数据得到被捕捉对象的第一位姿数据,通过被捕捉对象的第二运动数据得到被捕捉对象的第二位姿数据,并将第一位姿数据和第二位姿数据进行融合,最终得到被捕捉对象的动作信息,由于结合了基于视觉的动作捕捉和基于惯性的动作捕捉两方面内容,将基于视觉的动作捕捉和基于惯性的动作捕捉得到的位姿数据进行融合,提高了动作捕捉的精度。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中基于视觉和惯性的动作捕捉方法的一个具体示例的流程图;

图2为本发明实施例中基于视觉和惯性的动作捕捉方法的另一个具体示例的流程图;

图3为本发明实施例基于视觉和惯性的动作捕捉装置的一个具体示例的原理框图;

图4为本发明实施例基于视觉和惯性的动作捕捉系统的一个具体示例的示意图;

图5为本发明实施例中基于视觉和惯性的动作捕捉设备的一个具体示例的示意图。

具体实施方式

下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

本发明实施例提供了一种基于视觉和惯性的动作捕捉方法,如图1所示,该动作捕捉方法包括:

步骤s1:获取被捕捉对象的图像数据、通过视觉传感器模组得到的视觉传感器模组的第一运动数据及通过惯性测量模组得到的被捕捉对象的第二运动数据;其中,第一运动数据为通过视觉传感器模组得到的视觉传感器模组的运动角速度和加速度,第二运动数据为通过惯性测量模组得到的被捕捉对象的运动角速度和加速度。

步骤s2:根据上述图像数据和第一运动数据得到被捕捉对象的第一位姿数据。

步骤s3:根据第二运动数据得到被捕捉对象的第二位姿数据。

步骤s4:将第一位姿数据和第二位姿数据进行融合,得到被捕捉对象的动作信息。

通过上述步骤s1至步骤s4,本发明实施例提供基于视觉和惯性的动作捕捉方法,根据被捕捉对象的图像数据和视觉传感器模组的第一运动数据得到被捕捉对象的第一位姿数据,通过被捕捉对象的第二运动数据得到被捕捉对象的第二位姿数据,并将第一位姿数据和第二位姿数据进行融合,最终得到被捕捉对象的动作信息,由于结合了基于视觉的动作捕捉和基于惯性的动作捕捉两方面内容,将基于视觉的动作捕捉和基于惯性的动作捕捉得到的位姿数据进行融合,提高了动作捕捉的精度。

在一较佳实施例中,上述步骤s1,视觉传感器模组包括:摄像头,该摄像头可以是采用ov580双目摄像头,通过该摄像头连续拍摄被捕捉对象的影像,从而获取上述图像数据。视觉传感器模组还包括:惯性测量单元,惯性测量单元可以是运动传感器,通过该运动传感器获取视觉传感器模组的运动角速度和加速度,即上述的第一运动数据。惯性测量模组也可以是运动传感器,通过该运动传感器获得被捕捉对象的运动角速度和加速度,即上述的第二运动数据。

如图2所示,上述步骤s2,根据图像数据和第一运动数据得到被捕捉对象的第一位姿数据,具体包括:

步骤s21:根据图像数据和第一运动数据得到摄像头在世界坐标系下的第三位姿数据;优选地,通过即时定位与建图算法(simultaneouslocalizationandmapping,slam)得到摄像头在世界坐标系下的第三位姿数据。

步骤s22:根据图像数据得到被捕捉对象在摄像头坐标系下的第四位姿数据;具体地,首先对图像数据进行畸变校正,得到无畸变图像,并利用无畸变图像进行基于tensorflow的深度学习,得到被捕捉对象的语义信息,从而得到被捕捉对象在摄像头坐标系下的第四位姿数据。需要说明的是,对图像数据进行畸变校正可以是采用现有技术中对图像进行畸变校正的方法,本发明对此不做限定。

步骤s23:根据第三位姿数据和第四位姿数据得到被捕捉对象在世界坐标系下的第一位姿数据;具体地,将被捕捉对象在摄像头坐标系下的位置和姿态,结合摄像头在世界坐标系下的位置和姿态,递推得到被捕捉对象在世界坐标系下的位置和姿态。

在一较佳实施例中,上述的步骤s3,具体可以是对被捕捉对象的角速度数据和加速度数据进行卡尔曼滤波,然后通过位姿解算得到被捕捉的对象的位置和姿态,即上述的第二位姿数据。需要说明的是,位姿解算可以是采用现有技术中的位姿解算方法,本发明对此不做限定。

在一较佳实施例中,如图2所示,上述步骤s4,将第一位姿数据和第二位姿数据进行融合,得到被捕捉对象的动作信息,包括:

步骤s41:将第一位姿数据和第二位姿数据进行融合,得到被捕捉对象的位姿信息;优选地,通过互补滤波算法、最小二乘算法或卡尔曼滤波算法将第一位姿数据和第二位姿数据进行融合,得到高精度和高稳定性的被捕捉对象的位置和姿态信息。

步骤s42:根据位姿信息进行动力学解算,得到被捕捉对象的动作信息;具体地,对上述融合得到的位姿信息进行前向动力学,得到被捕捉对象的骨骼树末端位置,然后根据该骨骼树末端位置进行反向动力学,得到连续、稳定的动作捕捉骨骼结构,从而得到被捕捉对象的动作信息。

本发明实施例还提供了一种基于视觉和惯性的动作捕捉装置,如图3所示,该动作捕捉装置包括:数据获取模块1,用于获取被捕捉对象的图像数据、通过视觉传感器模组得到的视觉传感器模组的第一运动数据及通过惯性测量模组得到的被捕捉对象的第二运动数据,详细内容可参见上述方法实施例的步骤s1的相关描述;第一位姿确定模块2,用于根据图像数据和第一运动数据得到被捕捉对象的第一位姿数据,详细内容可参见上述方法实施例的步骤s2的相关描述;第二位姿确定模块3,用于根据第二运动数据得到被捕捉对象的第二位姿数据,详细内容可参见上述方法实施例的步骤s3的相关描述;动作信息确定模块4,用于将第一位姿数据和第二位姿数据进行融合,得到被捕捉对象的动作信息,详细内容可参见上述方法实施例的步骤s4的相关描述。

通过上述数据获取模块1、第一位姿确定模块2、第二位姿确定模块3和动作信息确定模块4,本发明实施例提供基于视觉和惯性的动作捕捉装置,根据被捕捉对象的图像数据和视觉传感器模组的第一运动数据得到被捕捉对象的第一位姿数据,通过被捕捉对象的第二运动数据得到被捕捉对象的第二位姿数据,并将第一位姿数据和第二位姿数据进行融合,最终得到被捕捉对象的动作信息,由于结合了基于视觉的动作捕捉和基于惯性的动作捕捉两方面内容,将基于视觉的动作捕捉和基于惯性的动作捕捉得到的位姿数据进行融合,提高了动作捕捉的精度。

本发明实施例还提供了一种基于视觉和惯性的动作捕捉系统,如图4所示,该动作捕捉系统包括:视觉传感器模组5、惯性测量模组6和上位机7,视觉传感器模组5包括:摄像头51和惯性测量单元52;摄像头51获取被捕捉对象的图像数据,并将图像数据发送至上位机7;惯性测量单元52获取视觉传感器模组的第一运动数据,并将第一运动数据发送至上位机7;惯性测量模组6获取被捕捉对象的第二运动数据,并将第二运动数据发送至上位机7;上位机7接收图像数据、第一运动数据和第二运动数据,根据图像数据和第一运动数据得到被捕捉对象的第一位姿数据,根据第二运动数据得到被捕捉对象的第二位姿数据,将第一位姿数据和第二位姿数据进行融合,得到被捕捉对象的动作信息。

通过上述视觉传感器模组5、惯性测量模组6和上位机7,本发明实施例提供的基于视觉和惯性的动作捕捉系统,根据被捕捉对象的图像数据和视觉传感器模组的第一运动数据得到被捕捉对象的第一位姿数据,通过被捕捉对象的第二运动数据得到被捕捉对象的第二位姿数据,并将第一位姿数据和第二位姿数据进行融合,最终得到被捕捉对象的动作信息,由于结合了基于视觉的动作捕捉和基于惯性的动作捕捉两方面内容,将基于视觉的动作捕捉和基于惯性的动作捕捉得到的位姿数据进行融合,提高了动作捕捉的精度。

在本发明的可选实施方式中,上述摄像头51可以是采用ov580双目摄像头,可以进行静态拍摄,也可以结合视觉传感器模组的第一运动数据进行运动拍摄,通过该摄像头连续拍摄被捕捉对象的影像,从而获取上述图像信息;上述惯性测量单元52可以是采用mpu6500,通过mpu6500中的三轴陀螺仪和三轴加速度计获取视觉传感器模组的角速度数据和加速度数据,即上述的第一运动数据;上述惯性测量模组6也可以是采用mpu6500,mpu6500绑定于被捕捉对象的躯干上,通过柔性绷带与被捕捉对象的躯干刚性固连,具体可以是若干个mpu6500分别绑定于被捕捉对象的左右手臂、左右腿、头部和背部等,通过mpu6500中的三轴陀螺仪和三轴加速度计惯性测量模组的角速度数据和加速度数据,从而得到上述被捕捉对象的第二运动数据。

上述基于视觉和惯性的动作捕捉系统的具体细节可以对应参阅图1和图2所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。

本发明实施例还提供了一种基于视觉和惯性的动作捕捉设备,如图5所示,该电子设备可以包括处理器81和存储器82,其中处理器81和存储器82可以通过总线或者其他方式连接,图5中以通过总线连接为例。

处理器81可以为中央处理器(centralprocessingunit,cpu)。处理器81还可以为其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。

存储器82作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的基于视觉和惯性的动作捕捉方法对应的程序指令/模块(例如,图4所示的数据获取模块1、第一位姿确定模块2、第二位姿确定模块3和动作信息确定模块4)。处理器81通过运行存储在存储器82中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的基于视觉和惯性的动作捕捉方法。

存储器82可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器81所创建的数据等。此外,存储器82可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器82可选包括相对于处理器81远程设置的存储器,这些远程存储器可以通过网络连接至处理器81。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

所述一个或者多个模块存储在所述存储器82中,当被所述处理器81执行时,执行如图1和图2所示实施例中的基于视觉和惯性的动作捕捉方法。

上述基于视觉和惯性的动作捕捉设备的具体细节可以对应参阅图1和图2所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。

本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flashmemory)、硬盘(harddiskdrive,缩写:hdd)或固态硬盘(solid-statedrive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。

虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1