CN111523408B - 动作捕捉方法和装置 - Google Patents
动作捕捉方法和装置 Download PDFInfo
- Publication number
- CN111523408B CN111523408B CN202010272137.8A CN202010272137A CN111523408B CN 111523408 B CN111523408 B CN 111523408B CN 202010272137 A CN202010272137 A CN 202010272137A CN 111523408 B CN111523408 B CN 111523408B
- Authority
- CN
- China
- Prior art keywords
- video frame
- dimensional coordinates
- key points
- key point
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例公开了动作捕捉方法和装置。该方法的一具体实施方式包括:获取单目摄像头拍摄的包含对象的视频帧;检测该视频帧中该对象的关键点,得到该对象的关键点的三维坐标;基于该视频帧中该对象的关键点中的至少一个关键点的三维坐标,生成与该对象关联的目标。本申请实施例能够采用单目摄像头进行拍摄,从而有效节约拍摄成本。并且,通过确定关键点的三维坐标,可以生成更加准确的目标。
Description
技术领域
本申请实施例涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及动作捕捉方法和装置。
背景技术
动作捕捉是指利用外部设备来对人或者其他物体的位移或活动进行记录和处理。关于动作捕捉的技术在初期主要用于物理治疗和身体康复领域,在20世纪初开始应用于动画制作领域。
随着动画产业以及虚拟现实、游戏等多领域的蓬勃发展,动作捕捉的应用也越来越广泛。
发明内容
本申请实施例提出了动作捕捉方法和装置。
第一方面,本申请实施例提供了一种动作捕捉方法,包括:获取单目摄像头拍摄的包含对象的视频帧;检测视频帧中对象的关键点,得到对象的关键点的三维坐标;基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标。
在一些实施例中,目标包括虚拟动画或运动轨迹;基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标,包括:将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第一运动学算法,得到视频帧中对象的运动轨迹;和/或将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,并基于参数驱动虚拟动画,其中,虚拟动画的关键点与对象的至少一个关键点相对应。
在一些实施例中,第二运动学算法包括逆向运动学算法,至少一个关键点包括关节关键点,参数包括关节关键点对应的关节夹角;将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,包括:将视频帧中关节关键点的三维坐标,输入逆向运动学算法,得到关节关键点对应的关节夹角;将关节夹角输入正向运动学算法,得到用于驱动虚拟动画的参数。
在一些实施例中,对于视频帧中对象的关键点中的每个关键点,在该关键点的三维坐标(x,y,z)中,x,y为该关键点从单目摄像头的摄像头坐标系映射到该视频帧的UV坐标系中的坐标,z为该关键点在摄像头坐标系中与单目摄像头的距离。
在一些实施例中,方法还包括:对于每一个视频帧,在该视频帧中对象的关键点的三维坐标中,选取指定的三维坐标作为至少一个关键点的三维坐标,其中,每个种类的对象具有与该种类相对应的指定的关键点。
第二方面,本申请实施例提供了一种动作捕捉装置,包括:获取单元,被配置成获取单目摄像头拍摄的包含对象的视频帧;检测单元,被配置成检测视频帧中对象的关键点,得到对象的关键点的三维坐标;生成单元,被配置成基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标。
在一些实施例中,生成单元,进一步被配置成按照如下方式执行基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标:将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第一运动学算法,得到视频帧中对象的运动轨迹;和/或将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,并基于参数驱动虚拟动画,其中,虚拟动画的关键点与对象的至少一个关键点相对应。
在一些实施例中,第二运动学算法包括逆向运动学算法,至少一个关键点包括关节关键点,参数包括关节关键点对应的关节夹角;生成单元,进一步被配置成按照如下方式执行将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数:将视频帧中关节关键点的三维坐标,输入逆向运动学算法,得到关节关键点对应的关节夹角;将关节夹角输入正向运动学算法,得到用于驱动虚拟动画的参数。
在一些实施例中,对于视频帧中对象的关键点中的每个关键点,在该关键点的三维坐标(x,y,z)中,x,y为该关键点从单目摄像头的摄像头坐标系映射到该视频帧的UV坐标系中的坐标,z为该关键点在摄像头坐标系中与单目摄像头的距离。
在一些实施例中,装置还包括:选取单元,被配置成对于每一个视频帧,在该视频帧中对象的关键点的三维坐标中,选取指定的三维坐标作为至少一个关键点的三维坐标,其中,每个种类的对象具有与该种类相对应的指定的关键点。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如动作捕捉方法中任一实施例的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如动作捕捉方法中任一实施例的方法。
本申请实施例提供的动作捕捉方案,首先,获取单目摄像头拍摄的包含对象的视频帧。之后,检测视频帧中对象的关键点,得到对象的关键点的三维坐标。最后,基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标。本申请实施例提供的方案能够采用单目摄像头进行拍摄,从而有效节约拍摄成本。并且,通过确定关键点的三维坐标,可以生成更加准确的目标。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请一些实施例可以应用于其中的示例性系统架构图;
图2是根据本申请的动作捕捉方法的一个实施例的流程图;
图3是根据本申请的动作捕捉方法的一个应用场景的示意图;
图4是根据本申请的动作捕捉方法的又一个实施例的流程图;
图5是根据本申请的动作捕捉装置的一个实施例的结构示意图;
图6是适于用来实现本申请一些实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的动作捕捉方法或动作捕捉装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如动作捕捉应用、视频类应用、直播应用、即时通信工具、邮箱客户端、社交平台软件等。
这里的终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103提供支持的后台服务器。后台服务器可以对接收到的视频帧等数据进行分析等处理,并将处理结果(例如视频帧中对象的运动轨迹)反馈给终端设备。
需要说明的是,本申请实施例所提供的动作捕捉方法可以由服务器105或者终端设备101、102、103执行,相应地,动作捕捉装置可以设置于服务器105或者终端设备101、102、103中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的动作捕捉方法的一个实施例的流程200。该动作捕捉方法,包括以下步骤:
步骤201,获取单目摄像头拍摄的包含对象的视频帧。
在本实施例中,动作捕捉方法的执行主体(例如图1所示的服务器或终端设备)可以获取单目摄像头采集的视频帧。该视频帧中包含对象。这里的对象可以是各种对象,例如可以是生物,比如人或动物,也可以是物体,比如动画形象海绵宝宝。这里的视频帧可以是单个视频帧,也可以是多个视频帧比如多个连续的视频帧。
步骤202,检测视频帧中对象的关键点,得到对象的关键点的三维坐标。
在本实施例中,上述执行主体可以检测视频帧所包含对象的关键点。若对象为人体,则对象的关键点可以是人体关键点。若对象为动物,则对象的关键点可以是对该动物预设的关键点,比如可以包括指示关节的关节关键点和指示脸部的脸部关键点。关键点可以采用三维坐标表示。这里的三维坐标可以包含各种含义,比如,关键点的三维坐标可以是关键点相对于摄像头的三维位置。
在实践中,上述执行主体可以利用预先训练的深度神经网络确定关键点的三维坐标。比如,该深度神经网络可以是卷积神经网络或残差神经网络等等。具体地,该深度神经网络可以用于表征图像(比如视频帧)与该图像中的关键点的三维坐标之间的对应关系。上述执行主体将所获取的视频帧输入上述深度神经网络,可以得到从该深度神经网络输出的、该视频帧中关键点的三维坐标。
步骤203,基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标。
在本实施例中,上述执行主体可以基于检测到的关键点中的至少一个关键点的三维坐标,生成与上述对象关联的目标。具体地,目标可以是对象的运动轨迹或者对象中关键点的运动轨迹,也可以是利用至少一个关键点的三维坐标驱动的虚拟动画。举例来说,如果视频帧中的对象是网球,这里的运动轨迹可以是生成的网球的运动轨迹线条的坐标数据,虚拟动画则是利用至少一个关键点的三维坐标(比如网球的中心点),生成的正在运动的网球的动画。再比如,如果视频帧中的对象是人,这里的运动轨迹可以是人体的某个或某些关键点的运动轨迹,虚拟动画则可以是随着对象的动作的变化(面部动作、身体动作和/或手部动作),而进行动作变化的虚拟形象。该虚拟形象可以是与对象的相似度很高的形象,也可以是与对象相迥异的形象比如一个动画片中的动画人物。
在实践中,上述执行主体可以采用各种方式基于至少一个关键点的三维坐标,生成与对象关联的目标。举例来说,上述目标可以是对于对象的动作是否标准或标准程度的判断结果。上述执行主体可以将得到的至少一个关键点(至少一个关节点)的三维位置,与该至少一个关节点的参考三维位置相比对。之后上述执行主体可以基于比对得到的三维位置偏差,确定对象的动作是否标准,或者按照预设的三维位置偏差与动作标准程度的对应关系,确定出对象的动作的标准程度。此外,目标还可以是对象做出的动作。上述执行主体可以基于至少一个关键点中指定关键点之间的位置关系,确定对象做出的动作是哪个预设动作。具体地,上述执行主体可以利用预先设置的指定关键点之间的位置关系与动作之间的对应关系,比如对应关系表或者模型,确定出至少一个关键点对应的动作。
本申请的上述实施例提供的方法能够采用单目摄像头进行拍摄,从而有效节约拍摄成本。并且,通过确定关键点的三维坐标,可以生成更加准确的目标。
在本实施例的一些可选的实现方式中,方法还包括:对于每一个视频帧,在该视频帧中对象的关键点的三维坐标中,选取指定的三维坐标作为至少一个关键点的三维坐标,其中,每个种类的对象具有与该种类相对应的指定的关键点。
在这些可选的实现方式中,上述执行主体可以在步骤202得到的关键点的三维坐标中,选取指定的关键点的三维坐标,作为上述至少一个关键点的三维坐标。
每个种类的对象具有与之相对应的指定的关键点,因而,在实践中,不同种类的对象所对应的关键点可以是不同的。比如,一个人的关键点包括人的关节的关键点,一个足球的关键点可以仅仅包括足球的中心点。此外,针对相同种类的对象,指定的关键点也可以是不同的。比如,对象是人,如果要捕捉手部动作,指定的关键点可以仅仅包括人的手部的关键点。如果要捕捉脸部关键点,指定的关键点可以仅仅包括人的脸部的关键点。如果要捕捉身体的动作,指定的关键点可以仅仅包括人的关节的关键点。
这些实现方式可以针对不同的对象或者应用场景,采用指定关键点进行处理,避免对其他关键点进行处理所产生的无效处理过程,从而提高了处理的有效性,并且节约了运行资源,在一定程度上提高了处理效率。
在本实施例的一些可选的实现方式中,对于视频帧中对象的关键点中的每个关键点,在该关键点的三维坐标(x,y,z)中,x,y为该关键点从单目摄像头的摄像头坐标系映射到该视频帧的UV坐标系中的坐标,z为该关键点在摄像头坐标系中与单目摄像头的距离。
在这些可选的实现方式中,对于视频帧中的每个视频帧,在该视频帧中对象的关键点中的每个关键点,该关键点的三维坐标可以是(x,y,z)。其中的x,y为映射到UV坐标系中的UV坐标,z为与单目摄像头之间的距离,这里的距离的单位可以是mm。
这些实现方式可以通过UV坐标以及与摄像头的距离,表现出更加丰富的关键点信息,从而让生成的目标更加准确和逼真。
继续参见图3,图3是根据本实施例的动作捕捉方法的应用场景的一个示意图。在图3的应用场景中,执行主体301可以获取单目摄像头拍摄的包含一只白兔的多个连续的视频帧302。检测这些视频帧302中上述白兔的关键点(比如头部关键点、关节关键点等),得到上述白兔的关键点的三维坐标303。基于视频帧中上述白兔的关键点中的至少一个关键点的三维坐标,生成与上述白兔关联的目标304,比如上述白兔的运动轨迹。
进一步参考图4,其示出了动作捕捉方法的又一个实施例的流程400。该动作捕捉方法的流程400,包括以下步骤:
步骤401,获取单目摄像头拍摄的包含对象的视频帧。
在本实施例中,动作捕捉方法的执行主体(例如图1所示的服务器或终端设备)可以获取单目摄像头采集的视频帧。该视频帧中包含对象。这里的对象可以是各种对象,比如可以是生物,比如人或动物,也可以是物体,比如动画形象海绵宝宝。这里的视频帧可以是单个视频帧,也可以是多个视频帧比如连续的多个视频帧。
步骤402,检测视频帧中对象的关键点,得到对象的关键点的三维坐标。
在本实施例中,上述执行主体可以检测视频帧所包含对象的关键点。若对象为人体,则对象的关键点可以是人体关键点。若对象为动物,则对象的关键点可以是对该动物预设的关键点比如可以包括指示关节的关键点和指示脸部的关键点。关键点可以采用三维坐标表示。
步骤403,将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第一运动学算法,得到视频帧中对象的运动轨迹。
在本实施例中,上述目标可以包括虚拟动画或运动轨迹。上述执行主体可以将上述视频帧中对象的至少一个关键点的三维坐标,输入第一运动学算法(比如逆向运动学算法),得到从第一运动学算法输出的该对象的运动轨迹。
步骤404,将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,并基于参数驱动虚拟动画,其中,虚拟动画的关键点与对象的至少一个关键点相对应。
在本实施例中,上述执行主体也可以将上述至少一个关键点的三维坐标,输入第二运动学算法(比如逆向运动学算法),得到用于驱动虚拟动画的参数,并基于该参数驱动虚拟动画。具体地,该参数可以是各种用于驱动虚拟动画的参数,可以指示虚拟动画中指定点将要到达的目标位置,比如三维模型(比如三维脸部模型)中顶点的目标三维位置。虚拟动画的关键点与对象的至少一个关键点相对应,也即,虚拟动画和对象均包括至少一个关键点。因而,虚拟动画也包括上述至少一个关键点,比如左眼的右眼角关键点、嘴部关键点等等。
本实施例可以利用指定的运动学算法,生成对象的运动轨迹或者驱动虚拟动画,从而准确地利用关键点的三维坐标实现多种功能。
在本实施例的一些可选的实现方式中,第二运动学算法包括逆向运动学算法,至少一个关键点包括关节关键点,参数包括关节关键点对应的关节夹角;以及上述步骤403中的将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,可以包括:将视频帧中关节关键点的三维坐标,输入逆向运动学算法,得到关节关键点对应的关节夹角;将关节夹角输入正向运动学算法,得到用于驱动虚拟动画的参数。
在这些可选的实现方式中,上述执行主体可以将上述至少一个关键点的三维坐标,输入逆向运动学算法,从而得到从该逆向运动学算法输出的、该关节关键点对应的关节夹角。之后,上述执行主体可以将关节夹角输入正向运动学(Forward Kinematics)算法,从而得到用于驱动虚拟动画的参数。
在实践中,上述执行主体可以利用逆向运动学算法,计算关节关键点的夹角,即关节夹角。三个关节关键点可以形成一个关节夹角,该关节夹角即是这三个关节关键点均对应的关节夹角。每个关节关键点对应的关节夹角可以是一个或多个。比如,分别是右手腕关节点、右肘关节点和右肩关节点的三个关节关键点,以右肘关节点为顶点可以形成一个关节夹角。其中的右肩关节点也可以对应其它的关节夹角,比如,可以对应右肘关节点、右肩关节点和肩中心关节点形成的关节夹角。
这些实现方式可以结合逆向运动学算法和正向运动学算法,准确地确定出驱动虚拟动画的参数。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种动作捕捉装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,除下面所记载的特征外,该装置实施例还可以包括与图2所示的方法实施例相同或相应的特征或效果。该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的动作捕捉装置500包括:获取单元501、检测单元502和生成单元503。其中,获取单元501,被配置成获取单目摄像头拍摄的包含对象的视频帧;检测单元502,被配置成检测视频帧中对象的关键点,得到对象的关键点的三维坐标;生成单元503,被配置成基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标。
在本实施例中,动作捕捉装置500的获取单元501、检测单元502和生成单元503的具体处理及其所带来的技术效果可分别参考图2对应实施例中步骤201、步骤202和步骤203的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,生成单元,进一步被配置成按照如下方式执行基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标:将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第一运动学算法,得到视频帧中对象的运动轨迹;和/或将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,并基于参数驱动虚拟动画,其中,虚拟动画的关键点与对象的至少一个关键点相对应。
在本实施例的一些可选的实现方式中,第二运动学算法包括逆向运动学算法,至少一个关键点包括关节关键点,参数包括关节关键点对应的关节夹角;生成单元,进一步被配置成按照如下方式执行将视频帧中对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数:将视频帧中关节关键点的三维坐标,输入逆向运动学算法,得到关节关键点对应的关节夹角;将关节夹角输入正向运动学算法,得到用于驱动虚拟动画的参数。
在本实施例的一些可选的实现方式中,对于视频帧中对象的关键点中的每个关键点,在该关键点的三维坐标(x,y,z)中,x,y为该关键点从单目摄像头的摄像头坐标系映射到该视频帧的UV坐标系中的坐标,z为该关键点在摄像头坐标系中与单目摄像头的距离。
在本实施例的一些可选的实现方式中,装置还包括:选取单元,被配置成对于每一个视频帧,在该视频帧中对象的关键点的三维坐标中,选取指定的三维坐标作为至少一个关键点的三维坐标,其中,每个种类的对象具有与该种类相对应的指定的关键点。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、检测单元和生成单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取单目摄像头拍摄的包含对象的视频帧的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:获取单目摄像头拍摄的包含对象的视频帧;检测视频帧中对象的关键点,得到对象的关键点的三维坐标;基于视频帧中对象的关键点中的至少一个关键点的三维坐标,生成与对象关联的目标。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种动作捕捉方法,所述方法包括:
获取单目摄像头拍摄的包含对象的视频帧;
检测所述视频帧中所述对象的关键点,得到所述对象的关键点的三维坐标;
基于所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,生成与所述对象关联的目标;
所述目标包括虚拟动画或运动轨迹;所述基于所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,生成与所述对象关联的目标,包括:
将所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,并基于所述参数驱动虚拟动画,其中,所述虚拟动画的关键点与所述对象的所述至少一个关键点相对应;
所述第二运动学算法包括逆向运动学算法,所述至少一个关键点包括关节关键点,所述参数包括所述关节关键点对应的关节夹角;所述将所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,包括:
将所述视频帧中所述关节关键点的三维坐标,输入所述逆向运动学算法,得到所述关节关键点对应的关节夹角;
将所述关节夹角输入正向运动学算法,得到用于驱动虚拟动画的参数。
2.根据权利要求1所述的方法,其中,所述基于所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,生成与所述对象关联的目标,还包括:
将所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,输入第一运动学算法,得到所述视频帧中所述对象的运动轨迹。
3.根据权利要求1-2中任一项所述的方法,其中,对于所述视频帧中所述对象的关键点中的每个关键点,在该关键点的三维坐标(x,y,z)中,x,y为该关键点从所述单目摄像头的摄像头坐标系映射到该视频帧的UV坐标系中的坐标,z为该关键点在摄像头坐标系中与所述单目摄像头的距离。
4.根据权利要求1所述的方法,其中,所述方法还包括:
对于每一个所述视频帧,在该视频帧中所述对象的关键点的三维坐标中,选取指定的三维坐标作为所述至少一个关键点的三维坐标,其中,每个种类的对象具有与该种类相对应的指定的关键点。
5.一种动作捕捉装置,所述装置包括:
获取单元,被配置成获取单目摄像头拍摄的包含对象的视频帧;
检测单元,被配置成检测所述视频帧中所述对象的关键点,得到所述对象的关键点的三维坐标;
生成单元,被配置成基于所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,生成与所述对象关联的目标;
所述生成单元,进一步被配置成按照如下方式执行所述基于所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,生成与所述对象关联的目标:
将所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数,并基于所述参数驱动虚拟动画,其中,所述虚拟动画的关键点与所述对象的所述至少一个关键点相对应;
所述第二运动学算法包括逆向运动学算法,所述至少一个关键点包括关节关键点,所述参数包括所述关节关键点对应的关节夹角;所述生成单元,进一步被配置成按照如下方式执行所述将所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,输入第二运动学算法,得到用于驱动虚拟动画的参数:
将所述视频帧中所述关节关键点的三维坐标,输入所述逆向运动学算法,得到所述关节关键点对应的关节夹角;
将所述关节夹角输入正向运动学算法,得到用于驱动虚拟动画的参数。
6.根据权利要求5所述的装置,其中,所述生成单元,进一步被配置成按照如下方式执行所述基于所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,生成与所述对象关联的目标:
将所述视频帧中所述对象的关键点中的至少一个关键点的三维坐标,输入第一运动学算法,得到所述视频帧中所述对象的运动轨迹。
7.根据权利要求5-6中任一项所述的装置,其中,对于所述视频帧中所述对象的关键点中的每个关键点,在该关键点的三维坐标(x,y,z)中,x,y为该关键点从所述单目摄像头的摄像头坐标系映射到该视频帧的UV坐标系中的坐标,z为该关键点在摄像头坐标系中与所述单目摄像头的距离。
8.根据权利要求5所述的装置,其中,所述装置还包括:
选取单元,被配置成对于每一个所述视频帧,在该视频帧中所述对象的关键点的三维坐标中,选取指定的三维坐标作为所述至少一个关键点的三维坐标,其中,每个种类的对象具有与该种类相对应的指定的关键点。
9.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-4中任一所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010272137.8A CN111523408B (zh) | 2020-04-09 | 2020-04-09 | 动作捕捉方法和装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010272137.8A CN111523408B (zh) | 2020-04-09 | 2020-04-09 | 动作捕捉方法和装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111523408A CN111523408A (zh) | 2020-08-11 |
| CN111523408B true CN111523408B (zh) | 2023-09-15 |
Family
ID=71901386
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010272137.8A Active CN111523408B (zh) | 2020-04-09 | 2020-04-09 | 动作捕捉方法和装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111523408B (zh) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112634400B (zh) * | 2020-12-21 | 2024-06-25 | 浙江大华技术股份有限公司 | 一种跳绳计数方法、终端及其计算机可读存储介质 |
| CN113325950B (zh) * | 2021-05-27 | 2023-08-25 | 百度在线网络技术(北京)有限公司 | 功能控制方法、装置、设备以及存储介质 |
| CN113420719B (zh) * | 2021-07-20 | 2022-07-22 | 北京百度网讯科技有限公司 | 生成动作捕捉数据的方法、装置、电子设备以及存储介质 |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102169366A (zh) * | 2011-03-18 | 2011-08-31 | 汤牧天 | 三维立体空间中的多目标跟踪方法 |
| CN107066983A (zh) * | 2017-04-20 | 2017-08-18 | 腾讯科技(上海)有限公司 | 一种身份验证方法及装置 |
| CN107257980A (zh) * | 2015-03-18 | 2017-10-17 | 英特尔公司 | 视频中的局部改变检测 |
| CN109191548A (zh) * | 2018-08-28 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 动画制作方法、装置、设备及存储介质 |
| WO2019024793A1 (zh) * | 2017-07-31 | 2019-02-07 | 腾讯科技(深圳)有限公司 | 增强现实显示的方法、姿态信息的确定方法及装置 |
| CN110225400A (zh) * | 2019-07-08 | 2019-09-10 | 北京字节跳动网络技术有限公司 | 一种动作捕捉方法、装置、移动终端及存储介质 |
| CN110349177A (zh) * | 2019-07-03 | 2019-10-18 | 广州多益网络股份有限公司 | 一种连续帧视频流的人脸关键点跟踪方法和系统 |
| WO2020018469A1 (en) * | 2018-07-16 | 2020-01-23 | The Board Of Trustees Of The Leland Stanford Junior University | System and method for automatic evaluation of gait using single or multi-camera recordings |
-
2020
- 2020-04-09 CN CN202010272137.8A patent/CN111523408B/zh active Active
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102169366A (zh) * | 2011-03-18 | 2011-08-31 | 汤牧天 | 三维立体空间中的多目标跟踪方法 |
| CN107257980A (zh) * | 2015-03-18 | 2017-10-17 | 英特尔公司 | 视频中的局部改变检测 |
| CN107066983A (zh) * | 2017-04-20 | 2017-08-18 | 腾讯科技(上海)有限公司 | 一种身份验证方法及装置 |
| WO2019024793A1 (zh) * | 2017-07-31 | 2019-02-07 | 腾讯科技(深圳)有限公司 | 增强现实显示的方法、姿态信息的确定方法及装置 |
| WO2020018469A1 (en) * | 2018-07-16 | 2020-01-23 | The Board Of Trustees Of The Leland Stanford Junior University | System and method for automatic evaluation of gait using single or multi-camera recordings |
| CN109191548A (zh) * | 2018-08-28 | 2019-01-11 | 百度在线网络技术(北京)有限公司 | 动画制作方法、装置、设备及存储介质 |
| CN110349177A (zh) * | 2019-07-03 | 2019-10-18 | 广州多益网络股份有限公司 | 一种连续帧视频流的人脸关键点跟踪方法和系统 |
| CN110225400A (zh) * | 2019-07-08 | 2019-09-10 | 北京字节跳动网络技术有限公司 | 一种动作捕捉方法、装置、移动终端及存储介质 |
Non-Patent Citations (3)
| Title |
|---|
| 基于轨迹关键点的四足机器人步态规划与仿真;韩晓建;刘广超;丁相方;刘溢;;机械设计(第05期) * |
| 杨锦隆 等.基于深度学习进行动作模仿的舞蹈机器人.基于深度学习进行动作模仿的舞蹈机器人.2019,第第58卷卷(第第5期期),第759-766页. * |
| 韩晓建 ; 刘广超 ; 丁相方 ; 刘溢 ; .基于轨迹关键点的四足机器人步态规划与仿真.机械设计.2016,(第05期),全文. * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111523408A (zh) | 2020-08-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111694429B (zh) | 虚拟对象驱动方法、装置、电子设备及可读存储 | |
| US10832039B2 (en) | Facial expression detection method, device and system, facial expression driving method, device and system, and storage medium | |
| JP7268071B2 (ja) | バーチャルアバターの生成方法及び生成装置 | |
| CN113420719B (zh) | 生成动作捕捉数据的方法、装置、电子设备以及存储介质 | |
| CN115244495B (zh) | 针对虚拟环境运动的实时式样 | |
| KR20250151622A (ko) | 제스처-기반 공유 ar 세션 생성 | |
| CN108525305B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
| CN111260774A (zh) | 生成3d关节点回归模型的方法和装置 | |
| CN118541966B (zh) | 化身呼叫平台 | |
| CN109754464B (zh) | 用于生成信息的方法和装置 | |
| CN107622252B (zh) | 信息生成方法和装置 | |
| CN111523408B (zh) | 动作捕捉方法和装置 | |
| WO2021227916A1 (zh) | 面部形象生成方法、装置、电子设备及可读存储介质 | |
| CN107479699A (zh) | 虚拟现实交互方法、装置及系统 | |
| CN110059624B (zh) | 用于检测活体的方法和装置 | |
| CN116311519B (zh) | 动作识别方法、模型训练方法及装置 | |
| KR20250002534A (ko) | 위치 기반 공유 증강 현실 경험 시스템 | |
| CN113435226A (zh) | 信息处理方法和装置 | |
| JP7499346B2 (ja) | 逆運動学に基づいた関節の回転の推測 | |
| US20240288946A1 (en) | Shared augmented reality eyewear device with hand tracking alignment | |
| CN111340865B (zh) | 用于生成图像的方法和装置 | |
| CN109816791B (zh) | 用于生成信息的方法和装置 | |
| CN110189364B (zh) | 用于生成信息的方法和装置,以及目标跟踪方法和装置 | |
| CN115578541B (zh) | 虚拟对象驱动方法及装置、设备、系统、介质和产品 | |
| CN115937430B (zh) | 用于展示虚拟对象的方法、装置、设备及介质 |
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 |