CN112837339A - 基于运动捕捉技术的轨迹绘制方法及装置 - Google Patents
基于运动捕捉技术的轨迹绘制方法及装置 Download PDFInfo
- Publication number
- CN112837339A CN112837339A CN202110083716.2A CN202110083716A CN112837339A CN 112837339 A CN112837339 A CN 112837339A CN 202110083716 A CN202110083716 A CN 202110083716A CN 112837339 A CN112837339 A CN 112837339A
- Authority
- CN
- China
- Prior art keywords
- track
- target joint
- color
- joint point
- sub
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例提供的基于运动捕捉技术的轨迹绘制方法及装置,该方法包括:获取运动对象的图像帧和多个关节点的坐标。在多个关节点中确定目标关节点。根据目标关节点在多个图像帧中的坐标,确定目标关节点在运动过程中对应的至少一个轨迹颜色。根据目标关节点在运动过程中对应的至少一个轨迹颜色,显示目标关节点对应的运动轨迹。其中,通过深度体感摄像头获取运动对象的目标关节点坐标,根据计算相邻两幅图像帧中目标关节点坐标所确定的子轨迹,确定该子轨迹确定该轨迹的轨迹颜色,从而解决了增强现实的实现过程中所呈现的信息量较少的问题。
Description
技术领域
本申请实施例涉及自动控制技术,尤其涉及一种基于运动捕捉技术的轨迹绘制方法及装置。
背景技术
增强现实(Augmented Reality,简称AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像的技术,是一种将真实世界信息和虚拟世界信息“无缝”集成的新技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。随着随身电子产品运算能力的提升,增强现实的用途越来越广。
目前,有关增强现实的现有技术中,通常采用运动捕捉技术来对运动对象运动状态的实时捕捉,以实现对人体肢体动作进行识别。其中,运动捕捉是利用传感器、信号捕捉设备、数据传输设备和数据处理等外部设备来对人体结构的位移进行数据记录和姿势还原的技术。
然而,目前有关增强现实的现有技术仅仅是实现了对运动对象的肢体动作的识别,从而会导致增强现实的实现过程中所呈现的信息量较少。
发明内容
本申请实施例提供一种基于运动捕捉技术的轨迹绘制方法及装置,以解决使运动轨迹速度以图形化的方式形象展现的技术问题。
第一方面,本申请实施例提供一种基于运动捕捉技术的轨迹绘制方法,包括:
获取运动对象的图像帧和多个关节点的坐标;
在所述多个关节点中确定目标关节点;
根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色;
根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹。
在一种可能的设计中,所述根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色,包括:
按照预设频率拍摄得到多个图像帧;
确定所述目标关节点在各所述图像帧中的坐标;
将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,得到所述目标关节点的多个子轨迹;
分别确定各所述子轨迹各自对应的轨迹颜色,以得到所述目标关节点在运动过程中对应的至少一个轨迹颜色。
在一种可能的设计中,所述分别确定各所述子轨迹各自对应的轨迹颜色,包括:
针对每个所述子轨迹,根据所述子轨迹对应的两个图像帧中的目标关节点的坐标,确定所述子轨迹对应的距离;
根据所述子轨迹对应的距离和颜色修正系数进行处理,得到所述子轨迹对应的颜色变化值;
根据所述子轨迹对应的颜色变化值,确定所述子轨迹对应的轨迹颜色。
在一种可能的设计中,所述根据所述子轨迹对应的颜色变化值,确定所述子轨迹对应的轨迹颜色,包括:
获取预先划分的至少一个颜色变化区间,其中,各所述颜色变化区间分别对应各自的色值;
确定所述颜色变化值所属的颜色变化区间,将所述颜色变化区间所对应的色值确定为所述子轨迹对应的轨迹颜色。
在一种可能的设计中,所述根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹,包括:
根据所述目标关节点在运动过程中各所述子轨迹对应的轨迹颜色,分别对各所述子轨迹进行绘制,以显示所述目标关节点对应的运动轨迹。
在一种可能的设计中,所述方法还包括:
根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点的运动轨迹的最小多边形;
将所述最小多边形的各个边设置为预设色值;
确定所述最小多边形的各个边上的像素点的坐标,得到边界坐标集合;
根据所述边界坐标集合,确定所述最小多边形的范围内的多个像素点;
将所述最小多边形的范围内的多个像素点设置为预设样式。
在一种可能的设计中,所述确定所述最小多边形的各个边上的像素点的坐标,得到边界坐标集合,包括:
确定所述最小多边形对应的矩形边框,其中,所述最小多边形位于所述矩形边框内部;
针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为所述预设色值时,将所述像素点的坐标放入所述边界坐标集合中。
第二方面,本申请实施例提供一种基于运动捕捉技术的轨迹绘制装置,包括:
获取模块,用于获取运动对象的图像帧和多个关节点的坐标;
确定模块,用于在所述多个关节点中确定目标关节点;
第一处理模块,用于根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色;
第二处理模块,根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹。
在一种可能的设计中,所述第一处理单元具体用于:
按照预设频率拍摄得到多个图像帧;
确定所述目标关节点在各所述图像帧中的坐标;
将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,得到所述目标关节点的多个子轨迹;
分别确定各所述子轨迹各自对应的轨迹颜色,以得到所述目标关节点在运动过程中对应的至少一个轨迹颜色。
在一种可能的设计中,所述第一处理单元具体用于:
针对每个所述子轨迹,根据所述子轨迹对应的两个图像帧中的目标关节点的坐标,确定所述子轨迹对应的距离;
根据所述子轨迹对应的距离和颜色修正系数进行处理,得到所述子轨迹对应的颜色变化值;
根据所述子轨迹对应的颜色变化值,确定所述子轨迹对应的轨迹颜色。
在一种可能的设计中,所述第一处理单元具体用于:
获取预先划分的至少一个颜色变化区间,其中,各所述颜色变化区间分别对应各自的色值;
确定所述颜色变化值所属的颜色变化区间,将所述颜色变化区间所对应的色值确定为所述子轨迹对应的轨迹颜色。
在一种可能的设计中,所述第二处理单元具体用于:
根据所述目标关节点在运动过程中各所述子轨迹对应的轨迹颜色,分别对各所述子轨迹进行绘制,以显示所述目标关节点对应的运动轨迹。
在一种可能的设计中,所述第二处理单元,还用于:
根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点的运动轨迹的最小多边形;
将所述最小多边形的各个边设置为预设色值;
确定所述最小多边形的各个边上的像素点的坐标,得到边界坐标集合;
根据所述边界坐标集合,确定所述最小多边形的范围内的多个像素点;
将所述最小多边形的范围内的多个像素点设置为预设样式。
在一种可能的设计中,所述第二处理单元具体用于:
确定所述最小多边形对应的矩形边框,其中,所述最小多边形位于所述矩形边框内部;
针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为所述预设色值时,将所述像素点的坐标放入所述边界坐标集合中。
第三方面,本申请实施例提供一种基于运动捕捉技术的轨迹绘制设备,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。
第五方面,本申请实施例提供一种计算机程序产品,所述程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。
本申请实施例提供的基于运动捕捉技术的轨迹绘制方法及装置,该方法包括:获取运动对象的图像帧和多个关节点的坐标。在多个关节点中确定目标关节点。根据目标关节点在多个图像帧中的坐标,确定目标关节点在运动过程中对应的至少一个轨迹颜色。根据目标关节点在运动过程中对应的至少一个轨迹颜色,显示目标关节点对应的运动轨迹。其中,通过深度体感摄像头获取运动对象的目标关节点坐标,根据计算相邻两幅图像帧中目标关节点坐标所确定的子轨迹,确定该子轨迹确定该轨迹的轨迹颜色,从而解决了增强现实的实现过程中所呈现的信息量较少的问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的深度体感摄像头所能获取的25个人体骨骼关节的示意图;
图2为本申请实施例提供的深度体感摄像头视角下的坐标系的示意图;
图3为本申请实施例提供的基于运动捕捉技术的轨迹绘制方法的流程图一;
图4为本申请实施例提供的确定各关节连接关系的过程示意图;
图5为本申请实施例提供的基于推足球游戏的增强现实场景示意图;
图6为本申请实施例提供的当运动对象呈双手握拳姿势时全身骨骼关节位置的示意图;
图7为本申请实施例提供的基于运动捕捉技术的轨迹绘制方法的流程图二;
图8为本申请实施例提供的运动对象的目标关节点对应的运动轨迹示意图;
图9为本申请实施例提供的基于运动捕捉技术的轨迹绘制方法的流程图三;
图10为本申请实施例提供的运动对象的运动范围的示意图;
图11为本申请实施例提供的基于运动捕捉技术的轨迹绘制装置的结构示意图;
图12为本申请实施例提供的基于运动捕捉技术的轨迹绘制设备的硬件结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解本申请的技术方案,首先结合图1、图2对本申请所涉及的相关概念进行解释,图1为本申请实施例提供的深度体感摄像头所能获取的25个人体骨骼关节的示意图,图2为本申请实施例提供的深度体感摄像头视角下的坐标系的示意图:
增强现实技术,它是一种将真实世界信息和虚拟世界信息“无缝”集成的新技术,是把原本在现实世界的一定时间空间范围内很难体验到的实体信息(视觉信息、声音、味道、触觉等)通过电脑等科学技术,模拟仿真后再叠加,将虚拟的信息应用到真实世界,被人类感官所感知,从而达到超越现实的感官体验。真实的环境和虚拟的物体实时地叠加到了同一个画面或空间同时存在。
增强现实技术包含了多媒体、三维建模、实时视频显示及控制、多传感器融合、实时跟踪及注册、场景融合、运动捕捉等新技术与新手段。增强现实技术,不仅展现了真实世界的信息,而且将虚拟的信息同时显示出来,两种信息相互补充、叠加。在视觉化的增强现实中,用户利用头盔显示器,把真实世界与电脑图形多重合成在一起,便可以看到真实的世界围绕着它。
人机交互(Human-Computer Interaction,HCI)是虚拟现实的核心之一,对推进虚拟现实广泛应用和提高用户的体验具有重要意义,主要可分为:基本交互技术,图形交互技术、语音交互技术和体感交互技术。它可以实现用户与计算机之间进行信息交换的通路,其目标是通过适当的隐喻,将用户的行为和状态(输入)转变成一种计算机能够理解和操作的表示,并把计算机的行为和状态(输出)转换成一种人能够理解和操作的表达通过界面反馈给人。理想状态下,人机交互将不再依赖机器语言,在没有键盘、鼠标以及触摸屏等中间设备的情况下,随时随地地实现人机自由交流,从而实现人们的物理世界和虚拟世界的最终融合。
运动捕捉,又称为动态捕捉,是利用外部设备来对人体结构的位移进行数据记录和姿势还原的技术,由于它广泛应用于军事、娱乐、体育、医疗、游戏、计算机视觉以及机器人技术等诸多领域,因此这项技术拥有比较广泛的市场前景和价值。从技术角度来说,运动捕捉的实质就是要测量、跟踪、记录物体在三维空间中运动轨迹,通常运动捕捉设备一般由传感器、信号捕捉设备、数据传输设备和数据处理设备组成。目前动态捕捉技术大致可分为机械式运动捕捉、声学式运动捕捉、电磁式运动捕捉、主动光学式以及被动光学式运动捕捉,但采用上述运动捕捉技术的设备普遍存在穿戴复杂、实时性差、设备笨拙、安装环境要求高、成本高等缺陷。
作为实现运动捕捉的一种重要方式,深度体感摄像头对运动捕捉主要以骨骼追踪的形式实现,通过捕获红外光产生三维深度影像,整个过程不受周围光照条件的影响。骨骼层次结构从脊柱节点作为根节点开始,一直延伸到肢体末端(头、指尖、脚)。具体的,深度体感摄像头获取到运动对象的25个人体骨骼关节及其所在的位置,进一步根据逆运动学对运动对象的骨骼关节点进行关联、对肢体动作进行判断、识别等处理,此促进了人机交互的实现。其中,逆运动学分析是决定要达成所需要的肢体动作所要设置的关节可活动对象的参数的过程。
在一种可能的实现方式中,深度体感摄像头可以获取人体的25个骨骼关节,例如可以如图1所示。25个人体骨骼关节分别为:脊柱节点0、脊柱中段1、脖子2、头部3、左肩4、左肘5、左手腕6、左手7、右肩8、右肘9、右手腕10、右手11,左臀12、左膝盖13、左脚踝14,左脚15、右臀16、右膝盖17、右脚踝18,右脚19、肩部脊柱点20,左手指尖21、左手拇指22、右手指尖23、右手拇指24。需要强调的一点是,为了便于识别及处理,对于该25个关节点使用固定的数字进行编号。
在使用深度体感摄像头对所有的关节都以深度体感摄像头坐标系为参考,即以深度体感摄像头为坐标系原点,当运动对象正朝向深度体感摄像头时脊柱节点0处的坐标系如图2所示。具体的,以深度体感摄像头为坐标系原点,当运动对象站在深度体感摄像头的后面且面向深度体感摄像头时,左手边为X轴正向。上方为Y轴正向,正前方为Z轴。通过深度体感摄像头获取各个关节点的坐标,例如,左手指尖21的坐标可以表示为(x21,y21,z21)。其中,21为关节点左手指尖的编号,x21,y21,z21分别是左手指尖21在三维坐标系中X轴、Y轴、Z轴上的分量。
深度体感摄像头,具有图像识别、实时动作捕捉、语音识别和麦克风输入等功能,让用户无需手持或踩踏控制器,而是使用语音指令或手势识别来操作系统界面,同时它可以捕获用户的身体骨骼关节信息,做出动作来进行游戏,带给玩家“免控制器的游戏与娱乐体验”,对人机交互的理念起到了重大的推动作用。
第一步从捕获的深度影像中识别出人体区域范围(追踪包含人形特征的物体,注意与人形相近的衣物可能会被误判),遍历这些范围内的深度影像扫描点,判断归属人体的哪个节段(通过噪声阈值过滤、边缘检测等图像处理),并将人体与背景环境区分开来。由于每个人的高矮胖瘦不同,做出相同动作骨骼关节会呈现不同状态,无法穷举所有姿势,因此需要通过深度学习的方法对人体常见姿势和动作特征值进行分类来判断、预测用户的行为目的。获取人体不同节段后需进行相应骨骼关节点的定位,各关节自下而上依次连接下肢、躯干、手臂、头部等,可能会出现节点重叠现象,需要分别从主视图、侧视图等多个视角去修正最后形成骨骼系统。目前,在基于深度体感摄像头骨骼关节跟踪产生了很多有趣的应用,例如虚拟试衣镜、光剑游戏、肢体康复等,吸引了国内外大量的学者开发者的涌入,在识别效果和实地应用等方面做了许多研究,具有极大的发展空间。
肢体动作是指人的手臂、面部或身体的运动,用以传达信息或意图的目的,作为人机交互的重要组成部分,被视为计算机理解人体语言的新方式,其研究发展影响着人机交互的自然性和灵活性。肢体动作识别不仅包含人的运动跟踪,也包括把运动解释为具有语义的命令,一些常用的肢体动作包括手部姿势、臀部姿势、头部姿势和面部表情等。用户可以通过简单的。肢体动作来控制或与设备交互,而无需接触它们。从。肢体动作的功能角度看,。肢体动作可以分为三类:记号型肢体动作、表示活动、认知的肢体动作。记号型肢体动作通过增强或推动交流来传递有意义的信息;表示活动的肢体动作包括对物理环境的操作,通常涉及到工作的概念;认知型肢体动作包括通过触觉体验或触觉探查来搜索、认知环境的过程。
目前,有关增强现实的现有技术中,通常采用运动捕捉技术来对运动对象运动状态的实时捕捉,以实现对人体肢体动作进行识别。然而,目前有关增强现实的现有技术仅仅是实现了对运动对象的肢体动作的识别,但对如何以图形化的方式形象展现相应肢体动作的运动轨迹速度还没有一种直观有效的解决方案。
基于上述存在的问题,本申请提出了如下的技术构思:在运动对象的运动过程中,通过深度体感摄像头实时获取运动对象的彩色图像及骨骼关节坐标数据,实时跟踪关节运动轨迹变化,以图形化的方式形象展现运动对象的轨迹速度并绘制运动轨迹边界,可对运动对象的运动范围及运动强度进行量化评估,同时提高了虚拟系统的人机交互感。
基于上述介绍的技术构思,下面结合图3至图5和具体的实施例对本申请所提供的基于运动捕捉技术的轨迹绘制方法进行详细介绍,值得说明的是,本申请各实施例的执行主体为处理器和微处理器等具有数据处理及轨迹绘制功能的设备,本实施例对此执行主体的具体实现不做限定,只要其可以进行数据处理及轨迹绘制即可,图3为本申请实施例提供的基于运动捕捉技术的轨迹绘制方法的流程图一,图4为本申请实施例提供的确定各关节连接关系的过程示意图,图5为本申请实施例提供的基于推足球游戏的增强现实场景示意图,图6为本申请实施例提供的当运动对象呈双手握拳姿势时全身骨骼关节位置的示意图。
如图3所示,该方法包括:
S301、获取运动对象的图像帧和多个关节点的坐标。
在本实施例中,以Unity游戏引擎中一个推足球的游戏场景为例,对本申请提出的基于运动捕捉技术的轨迹绘制方法进行详细的介绍。Unity是由Unity Technologies公司开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。其中,在这个推足球的游戏场景中,在屏幕上会同时出现运动对象及足球。当推足球游戏正式开始后,运动对象双手握拳放于肚脐前静置3秒,3秒过后,运动对象保持双手握拳跟随足球的移动而移动。其中,肚脐眼所在的坐标为中心点。通过依次出现沿各个方向进行移动的足球,来引导运动对象保持双手握拳姿势从中心点出发沿着各足球的移动方向进行移动,直到足球停止移动且足球所在的位置与运动对象双手握拳所在的位置完全重合。接下来,运动对象以双手握拳的手势开始向中心点所在的位置开始移动。每完成这一(中心点->足球->中心点)往返过程即完成在一个方向上的推足球运动。与此同时,在运动对象运动的过程中深度体感摄像头会实时获取运动对象的彩色图像及关节点的坐标信息。
当这8个运动方向上的推足球运动全部完时,即该运动对象已完成运动,同时处理器和微处理器根据获得到运动对象实时的彩色图像及关节点坐标信息,可以进一步确定运动对象的运动轨迹。之后,处理器通过结合运动对象的彩色图像及关节点坐标信息进行数据处理,在屏幕上输出运动对象的运动轨迹。
基于上述对推足球游戏具体内容的介绍,接下来对推足球游戏过程中的运动对象的运动轨迹的绘制过程进行详细的介绍。
在本实施例中,运动对象在玩推足球游戏的过程中,深度体感摄像头实时获取运动对象的图像帧和多个关节点的坐标。其中,图像帧用于指示组成视频的最小单位,具体的,图像帧是指使用深度体感摄像头获取到运动对象的彩色图像。多个关节点用于指示使用深度体感摄像头可以获取到的25个关节点。
在本申请实施例中,只是对获取关节点坐标的具体实现方法以及关节点的具体数量进行示例性的介绍,并不是对获取关节点坐标的具体实现方式以及关节点的具体数量做以限制,对于获取关节点坐标的具体实现方式以及关节点的具体数量可以根据实际需求进行选择。
S302、在多个关节点中确定目标关节点。
基于步骤S301获得了运动对象的多个关节点的坐标后,接下来根据多个关节点的坐标,在多个关节点中确定目标关节点。具体的,针对推足球的游戏场景来说,在整个推足球的游戏过程中,要求运动对象保持双手握拳手势,那么将运动对象的双手握拳作为游戏是否正式开始的标志。对那个判断运动对象的双手呈握拳姿势后,双手将跟随屏幕上足球的位置移动而进行移动。若未检测到运动对象的双手呈握拳姿势,则深度体感摄像头会一直执行检测运动对象的当前姿势的动作。
接下来,对于处理器如何判断的运动对象的双手是否处于握拳姿势进行介绍。
优选的,在一种可能的实现方式中,根据左手指尖、右手指尖的坐标信息,计算左手指尖、右手指尖的第一距离,通过判断该第一距离是否小于预设阈值。若是,则表示该运动对象的双手呈握拳姿势。若否,则表示运动对象的双手未呈握拳姿势。其中,预设阈值为当双手呈握拳姿势时左手指尖与右手指尖的最大距离。
在一种可能的实现方式中,根据左手、右手的坐标信息,计算左手、右手的第一距离,通过判断该第一距离是否小于第二预设阈值。若是,则表示该运动对象的双手呈握拳姿势。若否,则表示运动对象的双手未呈握拳姿势。其中,预设阈值为当双手呈握拳姿势时左手与右手的最大距离。
在另一种可能的实现方式中,通过深度体感摄像头拍摄到运动对象的彩色图片,通过图像识别的技术去判断运动对象的双手未呈握拳姿势。
在本实施例中,只是对判断双手是否呈握拳姿势的实现方式进行示例性的介绍,并不是对判断双手是否呈握拳姿势的实现方式做以限制,对判断双手是否呈握拳姿势的实现方式可以根据实际的需求进行选择。
以通过判断左手指尖与右手指尖的距离是否小于预设阈值时,来判断双手是否呈握拳姿势为例,对目标关节点的确定进行介绍。
具体的,若左手指尖及右手指尖的坐标分别为:(x21,y21,z21),(x22,y22,z22)。通过左手指尖与右手指尖的距离来判断运动对象的双手是否处于握拳姿势,例如可以参照公式一。
其中,Dth为预设阈值,IsFist用于指示双手是否呈握拳姿势。当左手指尖与右手指尖的距离小于预设阈值时,IsFist的取值为1,即表示双手呈握拳姿势。当左手指尖与右手指尖的距离大于或等于预设阈值时,IsFist的取值为0,即表示双手未呈握拳姿势。
如图4中左图所示,针对关节坐标信息,以黑色小球的形式标记在人体骨架的25个关节上。其中,左图中包括25个关节点。根据各关节点的坐标及逆运动学分析后,得到各关节点的连接关系,并对各关节进行编号,得到右图中连接并编号后的关节点的示意图,具体如图4中右图所示。在对关节点进行连接及编号处理后,进一步确定左手指尖21及右手指尖23所在的坐标。基于以上处理,使得运动对象可以在屏幕上看到自己的关节点,具体如图5所示。
当处理器确定运动对象的双手呈握拳姿势后,由于当双手呈握拳姿势时,其关节点左手指尖和关节点右手指尖的距离小于预设阈值。因此,当双手呈握拳姿势后,在屏幕上的关节示例图上关节点左手指尖和关节点右手指尖发生了重合,如图6所示。因此,将根据双手握拳后的关节点左手指尖和关节点右手指尖,来确定目标关节点。
在一种可能的实现方式中,将双手握拳后的关节点左手指尖确定为目标关节点。
在另一种可能的实现方式中,将双手握拳后的关节点右手指尖确定为目标关节点。
在本实施例中,只是对目标关节点的选择进行示例性的介绍,并不是对目标关节点的选择做以限制,对于目标关节点的选择可以根据实际需求进行选择。
S303、根据目标关节点在多个图像帧中的坐标,确定目标关节点在运动过程中对应的至少一个轨迹颜色。
基于步骤S301、S302分别确定了目标关节点在多个图像帧中的坐标、目标关节点,为了实时绘制与运动对象的运动速度相匹配的颜色轨迹曲线,接下来介绍根据目标关节点在多个图像帧中的坐标,确定目标关节点在运动过程中对应的至少一个轨迹颜色的具体实现过程。
在Unity的固定刷新模块中,按照预设频率拍摄得到多个图像帧,即表示每秒以固定间隔获取运动对象的图像帧的数量是相同的,对应的确定关节点坐标的次数也是相同的。对于。每秒获得到的图像帧的数量及确定关节点坐标的次数的具体取值需由预设频率确定。但可以确定的是每次获取运动对象的图像帧及目标关节点的坐标的时间间隔是固定的,因此可以选择不考虑时间,使用相邻两个图像帧中目标关节点的坐标的距离变化来确定该运动轨迹速度对应的颜色。
在本实施例中,定义运动轨迹颜色根据速度由小变大而由绿色变黄再变红,中间涉及平滑过渡的颜色。根据工业界的颜色标准—RGB(光学三原色)色彩模式,其中,R用于指示红色,G用于指示绿色,B用于指示蓝色。对应的,RGB值是某中颜色中红、绿色及蓝色的成分。理论上讲,红绿蓝三种基色按照不同的比例混合可以调配出任何一种颜色来。绿色的RGB参数为(0,255,0),黄色的RGB参数为(255,255,0),红色的RGB参数为(255,0,0)。容易看出的是,从绿色到黄色,再到红色的颜色变化过程中,R值先由0增大到255,接下来G再由255减小到0。
在一种可能的实现方式中,可以根据相邻两幅图像帧中目标关节点的坐标,确实目标关节点坐标变化后的曼哈顿距离,可以确定一个子轨迹。接下来,再将该子轨迹对应的曼哈顿距离的大小与颜色变化的大小对应起来,从而确定目标关节点在运动过程中对应的该子轨迹的轨迹颜色。
在一种可能的实现方式中,可以根据相邻两幅图像帧中目标关节点的坐标,确实目标关节点坐标变化后的欧式距离,可以确定一个子轨迹。接下来,再将该子轨迹对应的欧式距离的大小与颜色变化的大小对应起来,从而确定目标关节点在运动过程中对应的该子轨迹的轨迹颜色。
基于以上任意一种可能的实现方式,当每两幅图像帧中目标关节点的坐标,确实目标关节点坐标变化后的距离,可以确定一个子轨迹。接下来,再将该子轨迹对应的欧式距离的大小与颜色变化的大小对应起来,从而确定目标关节点在运动过程中对应的该子轨迹的轨迹颜色。对所有的图像帧均完成上述操作时,即可获得运动对象在整个游戏过程中的各个子轨迹及其对应的轨迹颜色。
S304、根据目标关节点在运动过程中对应的至少一个轨迹颜色,显示目标关节点对应的运动轨迹。
基于步骤S303获取到目标关节点在运动过程中对应的至少一个轨迹颜色,接下来根据目标关节点的子轨迹及子轨迹对应的轨迹颜色,在屏幕上显示出目标关节点的带有颜色的运动轨迹。
本申请实施例提供的基于运动捕捉技术的轨迹绘制方法,包括:获取运动对象的图像帧和多个关节点的坐标。在多个关节点中确定目标关节点。根据目标关节点在多个图像帧中的坐标,确定目标关节点在运动过程中对应的至少一个轨迹颜色。根据目标关节点在运动过程中对应的至少一个轨迹颜色,显示目标关节点对应的运动轨迹。其中,通过深度体感摄像头获取运动对象的目标关节点坐标,根据计算相邻两幅图像帧中目标关节点坐标所确定的子轨迹,确定该子轨迹确定该轨迹的轨迹颜色,从而解决了增强现实的实现过程中所呈现的信息量较少的问题。
在上述实施例的基础上,下面结合一个具体的实施例对本申请提供的基于运动捕捉技术的轨迹绘制方法进行进一步的介绍,结合图7至图进行介绍,图7为本申请实施例提供的基于运动捕捉技术的轨迹绘制方法的流程图二,图8为本申请实施例提供的运动对象的目标关节点对应的运动轨迹示意图。
如图7所示,该方法包括:
S701、获取运动对象的图像帧和多个关节点的坐标。
其中,S701与S301的具体实现方式类似,此处不再赘述。
S702、在多个关节点中确定目标关节点。
其中,S702与S302的具体实现方式类似,此处不再赘述。
在本实施例中,当运动对象呈双手握拳姿势时确定左手指尖为目标关节点为例,对本申请实施例提出的基于运动捕捉技术的轨迹绘制方法进行进一步介绍。
S703、按照预设频率拍摄得到多个图像帧。
在本实施例中,同样是以Unity游戏引擎中一个推足球的游戏场景为例,对本申请提出的基于运动捕捉技术的轨迹绘制方法进行进一步的介绍。
在Unity的固定刷新模块中,按照预设频率拍摄得到多个图像帧。例如,预设频率可以为每秒50帧(固定时间间隔为0.02s),即表示每秒以固定间隔获取运动对象的图像帧的数量为50,同样对应的确定关节点坐标的次数为50次。
在本实施例中,只是对按照预设频率拍摄得到多个图像帧进行示例性的介绍,并不是对于预设频率的具体取值进行限制,对于预设频率的具体取值可以根据实际需求进行设置。
S704、确定目标关节点在各图像帧中的坐标。
基于步骤S701,通过深度体感摄像头获得了运动对象在整个推足球游戏运动过程中所有关节点在各图像帧中的坐标。基于步骤S702,确定了目标关节点。
因此,根据所有关节点在各图像帧中的坐标及目标关节点,可以确定目标关节点在各图像帧中的坐标。
S705、将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,得到目标关节点的多个子轨迹。
基于步骤S704确定了目标关节点在各图像帧中的坐标后,接下来根据目标关节点在各图像帧中的坐标,以确定构成运动对象运动轨迹的子轨迹。
在本实施例中,将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端。其中,该子轨迹为构成运动对象的运动轨迹的其中一条子轨迹。以同样的方法,得到目标关节点的多个子轨迹。
具体的,如图8所示,假设两个相邻的图像帧分别为第i幅图像帧及第i+1幅图像帧。根据第i幅图像帧上目标关节点的坐标801及第i+1幅图像帧上目标关节点的坐标802,得到目标关节点的对应的一条子轨迹803且目标关节点的运动方向如图中箭头方向所示。其中,第i幅图像帧上目标关节点的坐标801及第i+1幅图像帧上目标关节点的坐标802为该子轨迹的两端。
S706、针对每个子轨迹,根据子轨迹对应的两个图像帧中的目标关节点的坐标,确定子轨迹对应的距离。
基于步骤S705确定了构成运动对象的目标关节点运动轨迹的多个子轨迹,接下来针对每个子轨迹,确定子轨迹对应的距离。
由于每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,因此根据子轨迹对应的两幅相邻图像帧中目标关节点的坐标,来确定子轨迹的距离。其中,距离例如可以曼哈顿距离或欧式距离。
在本实施例中,只是对确定子轨迹对应的距离的实现方式进行示例性的介绍,并不是对确定子轨迹对应的距离的实现方式做以限制,对确定子轨迹对应的距离的实现方式可以根据实际需求进行选择。
S707、根据子轨迹对应的距离和颜色修正系数进行处理,得到子轨迹对应的颜色变化值。
其中,颜色修正系数用于指示为使子轨迹对应的距离尽可能的体现颜色变化值,即为了得到更好的子轨迹颜色轨迹效果,而对距离进行处理添加的系数。
在本实施例中,根据子轨迹对应的距离和颜色修正系数进行处理,得到子轨迹对应的颜色变化值,例如可以参考公式三:
DeltaBase=D×A 公式三
其中,A为颜色单位修正系数,DeltaBase为子轨迹对应的颜色变化值。
在本实施例中,只是对子轨迹对应的颜色变化值的实现方式进行示例性的介绍,并不是对子轨迹对应的颜色变化值的实现方式做以限制,对子轨迹对应的颜色变化值的实现方式根据实际需求进行选择,只要是根据子轨迹对应的距离和颜色修正系数得到的即可。
S708、获取预先划分的至少一个颜色变化区间,其中,各颜色变化区间分别对应各自的色值。
在本实施例中,定义运动轨迹颜色根据速度由小变大而由绿色变黄再变红,中间涉及平滑过渡的颜色。由于绿色的RGB参数为(0,255,0),黄色的RGB参数为(255,255,0),红色的RGB参数为(255,0,0)。容易看出的是,从绿色到黄色,再到红色的颜色变化过程中,R值先由0增大到255,接下来G再由255减小到0。在由绿色变黄再变红整个颜色变化过程中,共经过510个颜色单位的变化。
根据以上颜色的渐变规律即由绿色变黄再变红,即根据颜色色值的取值范围,获取划分后的至少一个颜色变化区间。其中,各颜色区间分别对应各自的色值。
具体的,以运动轨迹颜色根据速度由小变大而由绿色变黄再变红为例,对获取预先划分的至少一个颜色变化区间进行进一步介绍。DeltaBase对应的颜色变化区间,例如可以为:DeltaBase=0,0<DeltaBase≤255,255<DeltaBase≤510,DeltaBase=510。
在本实施例中,只是对根据速度对应的颜色变化对颜色变化区间划分进行示例性的介绍,并不是对根据速度对应的颜色变化对颜色变化区间划分做以限制,对根据速度对应的颜色变化对颜色变化区间划分可以根据实际情况进行划分。
S709、确定颜色变化值所属的颜色变化区间,将颜色变化区间所对应的色值确定为子轨迹对应的轨迹颜色。
基于步骤S707确定的子轨迹对应的颜色变化值,以及步骤S708中的颜色变化区间,接下来根据子轨迹对应的颜色变化值,确定该颜色变化值所属的颜色变化区间,将颜色变化区间所对应的色值确定为子轨迹对应的轨迹颜色。
需要强调说明的一点是,根据颜色变化值确定能够决定子轨迹颜色的两个颜色变化量,分别为:DeltaR,DeltaG。
具体的,当DeltaBase=0时,说明该目标关节点对应的颜色色值未发生变化,令DeltaR=0,DeltaG=0;
当0<DeltaBase≤255时,说明该目标关节点对应的颜色色值仅R发生变化,令DeltaR=DeltaBase,DeltaG=0;
当255<DeltaBase≤510时,说明该目标关节点对应的颜色色值R和G同时发生变化,令DeltaR=255,DeltaG=DeltaBase-255;
当DeltaBase>510时,说明该目标关节点对应的颜色色值R和G同时发生较大变化,令DeltaR=255,DeltaG=255。
基于以上的介绍,根据颜色变化值确定能够决定子轨迹颜色的两个颜色变化量,分别为:DeltaR,DeltaG。接下来,根据DeltaR,DeltaG,确定子轨迹对应的颜色RGB值。其中,R=DeltaR,G=255-DeltaG,B=0。
在本实施例中,只是对确定子轨迹对应的轨迹颜色的实现方式进行示例性的介绍,并不是对确定子轨迹对应的轨迹颜色的实现方式做以限制,对确定子轨迹对应的轨迹颜色的实现方式可以根据需求进行选择,只要是符合子轨迹速度大小与轨迹颜色变化的对应关系即可。
S710、根据目标关节点在运动过程中各子轨迹对应的轨迹颜色,分别对各子轨迹进行绘制,以显示目标关节点对应的运动轨迹。
基于步骤S709确定了目标关节点在运动过程中各子轨迹对应的轨迹颜色,接下来根据目标关节点在运动过程中各子轨迹对应的轨迹颜色,分别对各子轨迹进行绘制,以显示目标关节点对应的运动轨迹。
具体的,根据已知子轨迹对应的轨迹颜色,分别对各子轨迹进行绘制,得到显示在屏幕上运动对象的目标关节点对应的运动轨迹,如图8所示。其中,通过已知颜色,绘制轨迹的是实现方式,例如可以参照现有技术中的任一种可能的实现方式,此处不再赘述。
本申请实施例提供的基于运动捕捉技术的轨迹绘制方法,包括:获取运动对象的图像帧和多个关节点的坐标。在多个关节点中确定目标关节点。按照预设频率拍摄得到多个图像帧。确定目标关节点在各图像帧中的坐标。将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,得到目标关节点的多个子轨迹。针对每个子轨迹,根据子轨迹对应的两个图像帧中的目标关节点的坐标,确定子轨迹对应的距离。根据子轨迹对应的距离和颜色修正系数进行处理,得到子轨迹对应的颜色变化值。获取预先划分的至少一个颜色变化区间,其中,各颜色变化区间分别对应各自的色值。确定颜色变化值所属的颜色变化区间,将颜色变化区间所对应的色值确定为子轨迹对应的轨迹颜色。根据目标关节点在运动过程中各子轨迹对应的轨迹颜色,分别对各子轨迹进行绘制,以显示目标关节点对应的运动轨迹。其中,根据运动对象在子轨迹上不同的运动速度的变化匹配不同的颜色来绘制运动轨迹,这以可视化的方式显示了运动对象的运动轨迹并通过轨迹上不同的颜色来标识运动的速度大小。
在上述实施例的基础上,在得到目标关节点对应的运动轨迹后,根据目标关节点对应的运动轨迹确定运动对象的运动范围,下面结合图9至图10对确定运动对象的运动范围的实现过程进行介绍,图9为本申请实施例提供的基于运动捕捉技术的轨迹绘制方法的流程图三,图10为本申请实施例提供的运动对象的运动范围的示意图。
S901、根据目标关节点在多个图像帧中的坐标,确定目标关节点的运动轨迹的最小多边形。
基于步骤S301通过深度体感摄像机获取到目标关节点在多个图像帧中的坐标,接下来根据目标关节点在多个图像帧中的坐标,确定目标关节点的运动轨迹的最小多边形。
在一种可能的实现方式中,根据目标关节点在多个图像帧中的坐标,使用Melkman算法绘制得到整个运动轨迹的范围边界,如图10所示。其中,Melkman算法为一种现有的根据点集求最小多边形(凸多边形)的算法,具体的,根据的运动对象在整个游戏过程中的目标关节点的轨迹坐标点,在所有的轨迹坐标点找出几个坐标点作为构成该最小多边形的凸点。之后,把这几个凸点使用线段顺时针或逆时针连接起来,即构成最小多边形。
在本实施例中,只是对确定目标关节点的运动轨迹的最小多边形的实现方式进行示例性的介绍,并不是对确定目标关节点的运动轨迹的最小多边形的实现方式做以限制,对确定目标关节点的运动轨迹的最小多边形的实现方式可以根据实际需求进行选择。
S902、将最小多边形的各个边设置为预设色值。
基于步骤S901获取到运动轨迹对应的最小多边形后,接下来为该最小多边形的各个边设置为预设色值。
在实施例中,预设色值RGB值例如可以为(0,0,255),即该最小多边形的各个边的颜色设置为蓝色。
在本实施例中,只是对预设色值的具体设置进行示例性的介绍,并不是对预设色值的具体设置做以限制,对预设色值的具体设置可以根据实际需求进行设置。
S903、确定最小多边形对应的矩形边框,其中,最小多边形位于矩形边框内部。
S904、针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为预设色值时,将像素点的坐标放入边界坐标集合中。
接下来,对步骤S903、S904一起进行介绍。
基于步骤S902确定了最小多边形,但并不知道组成最小多边形的各个边上的点的具体坐标信息,接下来通过确定最小多边形对应的矩形边框、遍历各个像素点,通过像素点的色值是否为预设色值,进而确定组成最小多边形的各个边上的点的具体坐标信息。
首先,介绍根据最小多边形,确定最小多边形对应的矩形边框。其中,最小多边形位于矩形边框内部。具体的,根据构成最小多边形的多个凸点的坐标信息中的横坐标X和纵坐标Y,找到最大的X值,最小的X值,最大的Y值,最小的Y值这四个值,分别为Xmin,Xmax,Ymin,Ymax。
为了避免对边缘的误判,特别的,对这个四个值向外扩展第一数量个像素点得到的结果,即得到扩展后的四个值,分别为:X'min,X'max,Ym'in,Ym'ax。例如,当第一数量为10时,扩展后的四个值分别为:X'min=Xmin-10,X'max=Xmax+10,Y′min=Ymin-10,Y′max=Ymax+10。由这四个值可以确定四个点,分别为(X'min,Y′min),(X'max,Y′min),(X'min,Y′max),(X'max,Y′max)。根据该四个点,确定最小多边形对应的矩形边框,如图10所示。
接下来,针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为预设色值时,将像素点的坐标放入边界坐标集合中。
S905、根据边界坐标集合,确定最小多边形的范围内的多个像素点。
基于步骤S908确定了最小多边形上的边界坐标集合后,接下来,根据边界坐标集合,确定最小多边形的范围内的多个像素点。
在一种可能的实现方式中,从下往上依次遍历矩形边框的每一行像素。对每一行像素进行遍历时,使用两个指针,其中一个指针P从左至右依次遍历,另一个指针Q从右往左依次遍历,当指针P遍历到一像素点的色值与最小多边形的预设色值一样时,记录下该像素点p1。当指针Q遍历到一像素点的色值与最小多边形的预设色值一样时,记录下该像素点q1。将像素点p1与像素点q1中间的像素点,确定为最小多边形对应一行的多个像素点。当从下往上,把矩形边框的每行像素使用指针P、Q全部遍历完后,那么将最小多边形对应的每行的多个像素点组合起来,确定为最小多边形的范围内的多个像素点。
在另一种可能的实现方式中,从下往上依次遍历矩形边框的每一行像素。对每一行像素进行遍历时,使用一个指针W从左至右依次遍历,当指针W遍历到一像素点的色值与最小多边形的预设色值一样时,将接下来遍历到的记录像素点记录下来,直到再次遍历到与最小多边形的预设色值一样的像素点时,结束记录与遍历。将记录到的像素点,确定为最小多边形对应一行的多个像素点。当从下往上,把矩形边框的每行像素使用指针W全部遍历完后,那么将最小多边形对应的每行的多个像素点组合起来,确定为最小多边形的范围内的多个像素点。
需要强调说明的一点是,对于遍历矩形边框的每一行像素时从上至下或从下至上均可,对于遍历每一行像素时使用一个指针从左至右或从右至左均可,此处不再赘述。
在本实施例中,只是对确定最小多边形的范围内的多个像素点的实现方法进行示例性的介绍,并不是对确定最小多边形的范围内的多个像素点的实现方法做以限制,对确定最小多边形的范围内的多个像素点的实现方法可以根据实际需求进行设置。
S906、将最小多边形的范围内的多个像素点设置为预设样式。
基于步骤S905确定了最小多边形的范围内的多个像素点后,接下来将最小多边形的范围内的多个像素点设置为预设样式。
具体的,将预设样式设置为:将最小多边形的范围内的多个像素点的颜色色值设置为固定的RGB值(R',G',B')。将最小多边形的范围内的多个像素点设置为预设样式后,从最小多边形可以看出运动对象在各个方向上的运动范围。同时,如图10所示,右上角有当前得分这一项目,用于指示运动对象运动到某一点所对应的运动范围值。该数值取值预期大,则表明运动对象运动到某一点所对应的运动范围值越大。
在本实施例中,只是对预设样式进行示例性的介绍,并不是对于预设样式做以限制,对于预设样式的具体设置可以根据实际需求进行设置即可。
本申请实施例提供的基于运动捕捉技术的轨迹绘制方法,包括:根据目标关节点在多个图像帧中的坐标,确定目标关节点的运动轨迹的最小多边形。将最小多边形的各个边设置为预设色值。确定最小多边形对应的矩形边框,其中,最小多边形位于矩形边框内部。针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为预设色值时,将像素点的坐标放入边界坐标集合中。根据边界坐标集合,确定最小多边形的范围内的多个像素点。将最小多边形的范围内的多个像素点设置为预设样式。其中,通过画出最小多边形并将最小多边形内的多个像素点设置为预设样式,这使得运动对象可以清楚得看到自己的运动范围。
图11为本申请实施例提供的基于运动捕捉技术的轨迹绘制装置的结构示意图。如图11所示,该装置110包括:获取模块1101、确定模块1102、第一确定模块1103以及第二确定模块1103。
获取模块1101,用于获取运动对象的图像帧和多个关节点的坐标;
确定模块1102,用于在所述多个关节点中确定目标关节点;
第一处理模块1103,用于根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色;
第二处理模块1104,根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹。
在一种可能的设计中,所述第一处理单元1103具体用于:
按照预设频率拍摄得到多个图像帧;
确定所述目标关节点在各所述图像帧中的坐标;
将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,得到所述目标关节点的多个子轨迹;
分别确定各所述子轨迹各自对应的轨迹颜色,以得到所述目标关节点在运动过程中对应的至少一个轨迹颜色。
在一种可能的设计中,所述第一处理单元具体1103用于:
针对每个所述子轨迹,根据所述子轨迹对应的两个图像帧中的目标关节点的坐标,确定所述子轨迹对应的距离;
根据所述子轨迹对应的距离和颜色修正系数进行处理,得到所述子轨迹对应的颜色变化值;
根据所述子轨迹对应的颜色变化值,确定所述子轨迹对应的轨迹颜色。
在一种可能的设计中,所述第一处理单元1103具体用于:
获取预先划分的至少一个颜色变化区间,其中,各所述颜色变化区间分别对应各自的色值;
确定所述颜色变化值所属的颜色变化区间,将所述颜色变化区间所对应的色值确定为所述子轨迹对应的轨迹颜色。
在一种可能的设计中,所述第二处理单元1104具体用于:
根据所述目标关节点在运动过程中各所述子轨迹对应的轨迹颜色,分别对各所述子轨迹进行绘制,以显示所述目标关节点对应的运动轨迹。
在一种可能的设计中,所述第二处理单元1104还用于:
根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点的运动轨迹的最小多边形;
将所述最小多边形的各个边设置为预设色值;
确定所述最小多边形的各个边上的像素点的坐标,得到边界坐标集合;
根据所述边界坐标集合,确定所述最小多边形的范围内的多个像素点;
将所述最小多边形的范围内的多个像素点设置为预设样式。
在一种可能的设计中,所述第二处理单元1104具体用于:
确定所述最小多边形对应的矩形边框,其中,所述最小多边形位于所述矩形边框内部;
针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为所述预设色值时,将所述像素点的坐标放入所述边界坐标集合中。
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图12为本申请实施例提供的基于运动捕捉技术的轨迹绘制设备的硬件结构示意图,如图12所示,本实施例的基于运动捕捉技术的轨迹绘制设备120包括:处理器1201以及存储器1202;其中
存储器1202,用于存储计算机执行指令;
处理器1201,用于执行存储器存储的计算机执行指令,以实现上述实施例中基于运动捕捉技术的轨迹绘制方法所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,存储器1202既可以是独立的,也可以跟处理器1201集成在一起。
当存储器1202独立设置时,该基于运动捕捉技术的轨迹绘制设备还包括总线1203,用于连接所述存储器1202和处理器1201。
本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上基于运动捕捉技术的轨迹绘制设备所执行的基于运动捕捉技术的轨迹绘制方法。
本申请实施例还提供一种计算机程序产品,程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种基于运动捕捉技术的轨迹绘制方法,其特征在于,包括:
获取运动对象的图像帧和多个关节点的坐标;
在所述多个关节点中确定目标关节点;
根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色;
根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色,包括:
按照预设频率拍摄得到多个图像帧;
确定所述目标关节点在各所述图像帧中的坐标;
将每两个相邻的图像帧对应的目标关节点的坐标确定为子轨迹的两端,得到所述目标关节点的多个子轨迹;
分别确定各所述子轨迹各自对应的轨迹颜色,以得到所述目标关节点在运动过程中对应的至少一个轨迹颜色。
3.根据权利要求2所述的方法,其特征在于,所述分别确定各所述子轨迹各自对应的轨迹颜色,包括:
针对每个所述子轨迹,根据所述子轨迹对应的两个图像帧中的目标关节点的坐标,确定所述子轨迹对应的距离;
根据所述子轨迹对应的距离和颜色修正系数进行处理,得到所述子轨迹对应的颜色变化值;
根据所述子轨迹对应的颜色变化值,确定所述子轨迹对应的轨迹颜色。
4.根据权利要求3所述的方法,其特征在于,所述根据所述子轨迹对应的颜色变化值,确定所述子轨迹对应的轨迹颜色,包括:
获取预先划分的至少一个颜色变化区间,其中,各所述颜色变化区间分别对应各自的色值;
确定所述颜色变化值所属的颜色变化区间,将所述颜色变化区间所对应的色值确定为所述子轨迹对应的轨迹颜色。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹,包括:
根据所述目标关节点在运动过程中各所述子轨迹对应的轨迹颜色,分别对各所述子轨迹进行绘制,以显示所述目标关节点对应的运动轨迹。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点的运动轨迹的最小多边形;
将所述最小多边形的各个边设置为预设色值;
确定所述最小多边形的各个边上的像素点的坐标,得到边界坐标集合;
根据所述边界坐标集合,确定所述最小多边形的范围内的多个像素点;
将所述最小多边形的范围内的多个像素点设置为预设样式。
7.根据权利要求6所述的方法,其特征在于,所述确定所述最小多边形的各个边上的像素点的坐标,得到边界坐标集合,包括:
确定所述最小多边形对应的矩形边框,其中,所述最小多边形位于所述矩形边框内部;
针对矩形边框的每一行像素点,从左到右依次遍历,在确定遍历到的像素点的色值为所述预设色值时,将所述像素点的坐标放入所述边界坐标集合中。
8.一种基于运动捕捉技术的轨迹绘制装置,其特征在于,包括:
获取模块,用于获取运动对象的图像帧和多个关节点的坐标;
确定模块,用于在所述多个关节点中确定目标关节点;
第一处理模块,用于根据所述目标关节点在多个图像帧中的坐标,确定所述目标关节点在运动过程中对应的至少一个轨迹颜色;
第二处理模块,根据所述目标关节点在运动过程中对应的至少一个轨迹颜色,显示所述目标关节点对应的运动轨迹。
9.一种基于运动捕捉技术的轨迹绘制设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如权利要求1至7中任一所述的方法。
10.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110083716.2A CN112837339B (zh) | 2021-01-21 | 2021-01-21 | 基于运动捕捉技术的轨迹绘制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110083716.2A CN112837339B (zh) | 2021-01-21 | 2021-01-21 | 基于运动捕捉技术的轨迹绘制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112837339A true CN112837339A (zh) | 2021-05-25 |
CN112837339B CN112837339B (zh) | 2022-03-04 |
Family
ID=75929270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110083716.2A Active CN112837339B (zh) | 2021-01-21 | 2021-01-21 | 基于运动捕捉技术的轨迹绘制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112837339B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505637A (zh) * | 2021-05-27 | 2021-10-15 | 成都威爱新经济技术研究院有限公司 | 一种用于直播流的实时虚拟主播动作捕捉方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110082637A1 (en) * | 2008-06-25 | 2011-04-07 | Jeremy Green | Method and apparatus for trajectory display |
CN108257146A (zh) * | 2018-01-15 | 2018-07-06 | 新疆大学 | 运动轨迹显示方法及装置 |
CN108762492A (zh) * | 2018-05-14 | 2018-11-06 | 歌尔科技有限公司 | 基于虚拟场景实现信息处理的方法、装置、设备及存储介质 |
CN110420445A (zh) * | 2019-07-23 | 2019-11-08 | 东南大学 | 一种基于增强现实的壁球训练方法及装置 |
-
2021
- 2021-01-21 CN CN202110083716.2A patent/CN112837339B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110082637A1 (en) * | 2008-06-25 | 2011-04-07 | Jeremy Green | Method and apparatus for trajectory display |
CN108257146A (zh) * | 2018-01-15 | 2018-07-06 | 新疆大学 | 运动轨迹显示方法及装置 |
CN108762492A (zh) * | 2018-05-14 | 2018-11-06 | 歌尔科技有限公司 | 基于虚拟场景实现信息处理的方法、装置、设备及存储介质 |
CN110420445A (zh) * | 2019-07-23 | 2019-11-08 | 东南大学 | 一种基于增强现实的壁球训练方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505637A (zh) * | 2021-05-27 | 2021-10-15 | 成都威爱新经济技术研究院有限公司 | 一种用于直播流的实时虚拟主播动作捕捉方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112837339B (zh) | 2022-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI742079B (zh) | 基於手勢的互動方法及裝置 | |
Wang et al. | Real-time hand-tracking with a color glove | |
Lv et al. | Multimodal hand and foot gesture interaction for handheld devices | |
CN102184020B (zh) | 用于操纵用户界面的姿势和姿势修改 | |
US10481689B1 (en) | Motion capture glove | |
Tran et al. | Real-time virtual mouse system using RGB-D images and fingertip detection | |
Rautaray et al. | Real time multiple hand gesture recognition system for human computer interaction | |
US20130335318A1 (en) | Method and apparatus for doing hand and face gesture recognition using 3d sensors and hardware non-linear classifiers | |
CN102262438A (zh) | 用于操纵用户界面的姿势和姿势识别 | |
Bai et al. | Freeze view touch and finger gesture based interaction methods for handheld augmented reality interfaces | |
CN104914989B (zh) | 姿势辨识装置以及姿势辨识装置的控制方法 | |
CN107450714A (zh) | 基于增强现实和图像识别的人机交互支撑测试系统 | |
CN104740869A (zh) | 一种融合真实环境的虚实结合的交互方法及系统 | |
US20160086349A1 (en) | Tracking hand pose using forearm-hand model | |
US11951384B2 (en) | System and method for virtual character animation using motion capture | |
CN112837339B (zh) | 基于运动捕捉技术的轨迹绘制方法及装置 | |
Boruah et al. | Development of a learning-aid tool using hand gesture based human computer interaction system | |
Spanogianopoulos et al. | Human computer interaction using gestures for mobile devices and serious games: A review | |
Guliani et al. | Gesture controlled mouse navigation: Hand landmark approach | |
Roy et al. | Real time hand gesture based user friendly human computer interaction system | |
Annachhatre et al. | Virtual Mouse Using Hand Gesture Recognition-A Systematic Literature Review | |
Jain et al. | Human computer interaction–Hand gesture recognition | |
Xu et al. | Bare hand gesture recognition with a single color camera | |
Bernardes Jr et al. | Design and implementation of a flexible hand gesture command interface for games based on computer vision | |
Hoshino | Hand gesture interface for entertainment games |
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 |