CN111401330B - 教学系统及采用该教学系统的智能镜 - Google Patents
教学系统及采用该教学系统的智能镜 Download PDFInfo
- Publication number
- CN111401330B CN111401330B CN202010339273.4A CN202010339273A CN111401330B CN 111401330 B CN111401330 B CN 111401330B CN 202010339273 A CN202010339273 A CN 202010339273A CN 111401330 B CN111401330 B CN 111401330B
- Authority
- CN
- China
- Prior art keywords
- action
- module
- video
- track
- user
- 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; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/02—Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip
Abstract
本发明公开了一种教学系统及采用该教学系统的智能镜,涉及人工智能领域。利用本教学系统进行运动动作的学习时,用户无需穿戴硬件设备,通过观看显示模块播放的图像视频进行学习,同时,系统利用摄像头模块捕捉人的肢体信息,再通过中央控制模块进行处理,然后通过显示模块直观地反馈用户做的动作是否标准规范以及相关建议。用户根据系统反馈的信息进行动作的调整,从而提高运动动作的标准度和专业度。将教学系统安装于镜子中,既能保证用户对镜子的基本需求,又能在摄像头模块捕捉用户做的动作时,用户根据镜面揣摩和调整自己的动作,便于提升用户运动动作的标准度和专业度。
Description
技术领域
本发明涉及人工智能技术领域,具体涉及一种教学系统及采用该教学系统的智能镜。
背景技术
运动本身可以预防疾病、提升身体的抵抗力、反应、舒援压力,对于肥胖人士来说,运动可以有助他们减肥。随着科技的快速发展,便捷化工具在方便人们生活的同时,也使得人们日常的活动量减少,导致亚健康人数越来越大。人们为了保证自身的身体健康,纷纷开始锻炼身体。
生活中,涉及运动的项目有很多,比如健身运动、舞蹈。人们学习运动动作的方法包括通过教练现场教学、观看录像视频,因教练现场教学所需费用较高,人们大多选择自我观看视频和对着镜子练习以揣摩和领会动作。然而,自我学习无法确定所做的动作是否做得标准规范,无法得知运动动作的完成情况,严重影响了自学模仿者的学习效率和效果,甚至因错误的姿势给身体造成伤害。
现有的运动状态感知技术通过采用可穿戴设备,固定附着在人体多个部位,利用传感器实时监测人体运动状况,根据传感器获取的人体信息进行分析,可得知人做的运动动作或者舞蹈动作是否标准和规范,再根据分析结果提出相应的建议。此方式需要使用者佩戴可穿戴设备,不够方便,同时也增加了用户金钱上的开销,也失去了教学与学习这个过程的基本意义。
发明内容
本发明的目的在于:提供一种教学系统,用户无需佩戴相关的硬件设备,通过观看图像视频进行学习,并在完成学习后,直观得到具体的教学反馈信息,以帮助用户提高运动动作的标准度和专业度。
本发明采用的技术方案如下:
一种教学系统,包括识别模块、动作模块、教学模块、中央控制模块、显示模块、用户控制模块、摄像头模块、通讯模块,系统通过通讯模块连接有服务器,服务器中存储有视频源库,其中:
显示模块,用于显示系统的软件界面;
用户控制模块,用于用户操作软件界面,用户通过操作软件界面进行图像视频的学习;
摄像头模块,用于实时采集用户做的动作以形成待识别的图像视频,并将待识别的图像视频传至中央控制模块;
识别模块,基于人体姿态识别模型对图像视频进行识别,判断图像视频数据中是否存在人体,以及判断人体是否开始运动、人体是否结束运动;
动作模块,用于将图像视频存入服务器的视频源库中,将视频源库包括的所有图像视频中人体的肢体动作转换成对应的动作节点并基于前述动作节点建立动作库,以及利用动作匹配算法将待识别的图像视频中人体的肢体动作转换成动作节点并与动作库中的动作节点进行匹配;
教学模块,通过显示模块播放视频源库中的图像视频用以用户学习和训练,利用完整度匹配模型输出用户的教学结果;
中央控制模块,用于与服务器建立通讯,接收和处理由摄像头模块、用户控制模块获得的信息,控制系统中所有功能模块。
进一步地,系统还包括搜索模块,搜索模块提供自动识别和主动选择两种方式进行动作的搜索,搜索结果通过显示模块展示,其中:
主动识别,利用摄像头模块获取用户做动作形成的图像视频并传至中央控制模块,通过动作模块输出前述图像视频的动作节点,再利用动作匹配算法将前述动作节点与动作库中的动作节点进行匹配,从动作库中获取动作搜索结果;
主动选择,搜索模块建立有分类项目和分类栏,用户以关键字、动作类型、系列类型的方式进行搜索。
进一步地,系统还包括历史记录模块或/和音频播放模块,历史记录模块用于展示用户的历史运动记录和报表,音频播放模块用于播放图像视频的声音。
进一步地,动作模块包括动作节点子模块、动作库子模块和匹配子模块三部分,其中:
动作节点子模块,利用人体姿态识别模型将图像视频中的人的肢体动作转换成可被匹配子模块及动作库子模块识别的动作节点,一个动作节点代表图像视频中人体单个肢体的识别结果数据集,包括肢体运动轨迹和角度数据集;
动作库子模块,用于将图像视频转化成视频源并放进服务器的视频源库中,以及将视频源通过动作节点子模块转换成不同的动作节点,用以建立动作库;
匹配子模块,利用动作匹配算法对由动作节点子模块转换成的动作节点和动作库中的动作节点进行匹配,以得到由动作节点子模块转换成的动作节点在动作库中相应的可识别的动作。
进一步地,人体姿态识别模型的输入为图像视频,输出为由人体姿态的骨骼特征点组成的识别结果数据集,利用人体姿态识别模型对图像视频进行识别的方法为:
根据图像视频的帧率,将视频拆分成每一帧的帧图矩阵数据,再将帧图矩阵数据通过时序的方式送入人体姿态识别模型进行识别,得到识别结果数据集;识别结果数据集以视频帧为时间轴组合成特征识别矩阵,其中,识别结果数据集包括视频中人物的头部数据、肩部数据、臂部数据、手部数据、臀部数据、腿部数据和脚部数据。
进一步地,基于动作节点建立动作库的方法为:对由识别结果数据集组合成的特征识别矩阵进行动作筛选,具体操作如下:
步骤A1:定义图像视频的开始帧和结束帧,将图像视频中开始帧之前和结束帧之后的视频帧及其对应的识别结果数据集抛弃,将图像视频中剩下的视频帧,记作视频帧集DT[N];
步骤A2:保留视频帧集DT[N],并时序地处理视频帧集DT[N]中每一帧经过识别模块输出的识别结果数据集,记作DS[i],以完成动作库中动作的加入;其中,N表示视频帧集DT[N]的帧数,i表示视频帧集DT[N]中第i个视频帧,i的初始值为1,且1≤i≤N;
处理识别结果数据集DS[i]的具体步骤如下:
步骤A2.1:根据当前视频帧中人体肢体的位置确定人体当前的姿态;
步骤A2.2:基于人体肢体的姿态,计算当前视频帧中人体肢体角度、朝向;
步骤A2.3:令i=i+1,若i=N+1,则执行步骤A2.4,反之则进行如下操作:
若识别结果数据集DS[i]和识别结果数据集DS[i-1]对应的位置、朝向、角度数据均相同,则只记录视频帧集DT[N]中第i个视频帧中人体肢体的位置、朝向、角度数据,反之则记录此视频帧以及此帧的时间轴;
步骤A2.4:遍历识别结果数据集DS[i](1≤i≤N)中所有数据,对所有数据做进行如下处理:将同一姿态下,同一位置、朝向、角度的数据去重;将不同姿态的前后帧记录并标记,用高斯滤波消除噪声,将此动作加入动作库。
进一步地,利用动作匹配算法将待识别的图像视频中人体的肢体动作转换成的动作节点与动作库中的动作节点进行匹配的方法为:
以时序的方式将待识别的图像视频中人体的肢体动作转换成的动作节点组成其对应的轨迹集合A={a1,a2,a3,a4,…,an},将轨迹集合A与动作库中动作节点的轨迹集合进行轨迹匹配,求轨迹集合间的相似度;根据求得的相似度大小得出动作库中与待识别的图像视频中人体的肢体动作最相似的动作。
进一步地,计算轨迹集合A与动作库中动作节点的轨迹集合间的相似度的具体步骤如下:
步骤B1:将动作库中任一的动作节点以时序的方式组成其轨迹集合B={b1,b2,b3,b4,…,bm},轨迹集合A和轨迹集合B构成大小为n×m的矩阵;
步骤B2:计算上述矩阵中两个不同点之间的距离,得到距离矩阵DIST;
步骤B3:对距离矩阵DIST中所有矩阵元素Dist(ap,bq)的ap轨迹点、bq轨迹点进行轨迹匹配,得到轨迹路径R={r1,r2,…,re};其中,p、q均为变量,p、q分别表示轨迹集合A、轨迹集合B元素的下标,ap表示轨迹集合A中第p个元素,bq表示轨迹集合B中第q个元素,且满足1≤p≤n、1≤q≤m;轨迹匹配方法如下:
以距离矩阵DIST的左下角作为轨迹出发点、右上角作为轨迹结束点,即r1=(1,1)、re=(n,m);其中,轨迹路径R中元素rt=(p,q),表示距离矩阵DIST中第p行第q列位置的矩阵元素,即矩阵元素Dist(ap,bq)在距离矩阵DIST中的位置,t为变量,且满足1≤t≤e;
若路径轨迹点rw满足rw=(v,v),即矩阵元素在距离矩阵DIST中的行和列相等时,轨迹路径中下一个路径轨迹点rw+1=(u,k)须满足以下两个条件:
u-v≤1且k-v≤1,即不能跨点去匹配,只能和相邻的点对齐;
0≤u-v且0≤k-v,以保证路径不会相交;
其中,w、v、u、k均为变量,且各变量须满足:2≤w≤e-1,2≤v≤n-1且2≤v≤m-1,2≤u≤n-1,2≤k≤m-1;
步骤B4:按轨迹路径R中元素的排列顺序,计算相邻两个元素的距离并累加,得到轨迹集合A与动作库中某一动作节点的轨迹集合间的相似度。
进一步地,完整度匹配模型的输入为视频源库中的图像视频对应的特征识别矩阵、利用摄像头模块获得的用户做动作形成的图像视频对应的特征识别矩阵,输出的教学结果包括用户做的动作的动作完成程度、标准程度、动作还原标准程度、动作节奏标准程度;
利用完整度匹配模型输出教学结果的具体步骤如下:
步骤C1:构建人体的肢体动作对应的动作节点的肢体向量;
步骤C2:基于动作节点的肢体向量变化程度,得到用户做的动作的肢体运动轨迹E与动作库中保存的动作的肢体运动轨迹F;其中,肢体运动轨迹为由动作节点组成的动作节点集合而形成的轨迹;
步骤C3:根据肢体运动轨迹E与肢体运动轨迹F的动作节点判断动作的肢体标准度:
以肢体运动轨迹F为准,记录肢体运动轨迹E、肢体运动轨迹F对应的运动节点集合中元素的数量,利用上述轨迹匹配方法找出用户动作的肢体动作节点中的错误向量,将不属于错误向量的向量的动作节点加入标准列表;
步骤C4:计算动作节点相对时间轴,再计算肢体运动轨迹E、肢体运动轨迹F中动作节点通过上述动作匹配算法能匹配到的动作节点,比较其时间轴,将不等于动作库中动作节点的时间轴的动作节点加入节奏列表;
步骤C5:统计用户做动作形成的图像视频中所有动作节点所产生的标准列表和节奏列表,按时序的方式拼接成完整度匹配模型的返回类型。
一种智能镜,包括镜体、电源模块、距离传感器,还包括上述教学系统,所述电源模块、距离传感器均连接中央控制模块,所述教学系统的功能组件均安装于镜体内。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、本发明中,用户无需穿戴硬件设备,通过观看图像视频并学习后,通过在摄像头模块可采集的区域内做动作而直观得到具体的教学反馈信息,便于用户提高运动动作的标准度和专业度。
2、本发明中,智能镜不但具有镜子本身的功能,还能在用户站在镜前做特定动作或操控用户控制模块时与用户交互。并且,本发明能直观地通过显示模块得到中央控制模块反馈的所有信息,帮助规范和教学用户对于健身和舞蹈等动作的实际需求。
3、本发明中,通过智能镜中的系统与人进行人机交互,通过智能镜的摄像头模块捕捉人的肢体信息,不需要穿戴任何设备,不受环境场景限制,通过智能镜中教学系统计算,能让人直观地通过智能镜的显示模块得知自身学习的动作是否做的标准规范,也能通过智能镜的镜面揣摩和调整自己的动作,便于提升自身运动动作的标准度和专业度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明的教学系统整体结构示意图;
图2为本发明的骨骼特征点示意图;
图3为本发明的人体姿态识别模型处理图像视频的流程图;
图4为本发明的智能镜镜体正面结构示意图;
图5为本发明的智能镜镜体背面结构示意图;
图6为本发明的智能镜镜体侧面结构示意图;
图7为本发明的智能镜侧面结构示意图。
图中标记:1-镜体、2-显示模块、3-摄像头模块、4-中央控制模块、5-红外距离传感器、6-电源模块、7-通讯模块、8-外壳。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合实施例对本发明的特征和性能作进一步的详细描述。
实施例一
本实施例提供了一种教学系统,该系统通过通讯模块7连接有服务器,服务器主动收集、上传符合规格的图像视频,此图像视频具体指健身运动、舞蹈运动等有专业性要求的运动动作,可以是单个动作,也可以是连贯完整的运动视频。服务器中建立有视频源库、类型分类列表,服务器对收集的图像视频的类型进行主动定义。服务器在上传和收集图像视频时,主动选择类型分类列表或定义该图像视频所属类型,服务器主动定义的类型属于类型分类列表。
如图1所示,系统包括摄像头模块3、显示模块2、用户控制模块、通讯模块7、中央控制模块4、识别模块、动作模块、教学模块,以下对系统各组成部分的功能进行描述。
A.摄像头模块3,通过摄像头模块3实时采集图像视频并将其传至中央控制模块4。
B.显示模块2,用于显示软件界面,软件界面清晰简洁。
C.用户控制模块,用于用户操作软件界面,用户可操作软件界面进入到以下功能界面:
测试界面,用于测试用户身体体能;
教学界面,用于完成动作的标准教学。
D.中央控制模块4,为一集成的主板式计算机,用于接收和处理摄像头模块3、用户控制模块的信息,与服务器通讯,统一控制教学系统中所有功能模块,处理所有计算工作。
E.识别模块,基于人体姿态识别模型对待识别的图像视频进行识别,判断待识别的图像视频中是否存在人体,以及判断人体是否开始运动、人体是否结束运动。
F.动作模块分为动作节点子模块、动作库子模块和匹配子模块三部分,具体介绍如下:
(1)动作节点子模块:利用识别模块中的人体姿态识别模型将图像视频中的人的肢体动作分类、定义成不同的可被匹配子模块及动作库子模块识别的动作节点。一个动作节点代表图像视频中人体单个肢体的识别结果数据集,包括肢体运动轨迹和角度数据集。
(2)动作库子模块:通过通讯模块7与服务器建立连接,具有以下两大功能:
a.用于对收集到的符合规格的图像视频进行分类、剪切、定义、归类成视频源并放进服务器的视频源库里。
对收集到的符合规格的图像视频进行分类、剪切、定义、归类成视频源的方法具体如下;
分类:上传图像视频时,主动选择图像视频中动作的类型以进行初步分类。例如,舞蹈(古典、现代..)、运动(拉伸、波比)。
剪切:上传图像视频之后,利用识别模块对图像视频进行逐帧、跳帧识别,排除图像视频中的无效帧,获取图像视频中的有效帧。逐帧、跳帧为一个算法动作,逐帧、跳帧识别图像视频并获得图像视频的有效帧的具体方法如下:
从图像视频的第一帧开始,如果第c(c为变量,表示图像视频中的第i帧,满足1≤c且c≤total,其中,total表示图像视频的总帧数)帧没有识别出人,则c=2c+1,持续叠加,直至第c帧识别出有人或者所有帧都被识别完。若第c帧识别出有人,则c=c-1,再判断第c帧是否有人,若有人,则继续按1递减,直至减到识别出没有人的那一帧,该帧则为有效帧的开始,有效帧的结尾的定义与其开始的定义同理,此处不再赘述。图像视频中其他不属于有效帧的帧即为无效帧。
定义、归类:主观地对图像视频进行定义,通常有一些动作是其他动作的组合,例如,常规的健身运动波比跳是结合了深蹲、伏地挺身、跳跃的动作组合,那么在归类波比跳时,将通过动作模块中的匹配子模块先将整个动作转换成动作节点,然后将此动作节点与动作库内的动作节点做相似度匹配,匹配完成之后得到一个动作节点列表集,基于此进行图像视频的归类。
b.用于将前述视频源通过动作节点子模块转换成不同的动作节点,再将动作节点以顺序的方式排列并保存在服务器里,以此建立动作库。视频源库中所有图像视频中的运动动作均会自动被处理并加入动作库,动作库会在事先在服务器中建立并持续更新和完善,动作库的丰满度影响着教学模块和搜索模块的丰满度。
(3)匹配子模块:利用动作匹配算法对由动作节点子模块转换成的动作节点和动作库中的动作节点进行匹配,以得到由动作节点子模块转换成的动作节点在动作库中相应的可识别的动作。
G.教学模块,在动作库子模块建立后,制定有教学内容系列集,教学模块中的每一套教学任务,都以链表的方式建立有动作库。服务器收集和制作符合规格的动作教学视频,此视频是其教学任务之一,是连贯完整的图像视频。通过动作模块将动作教学视频进行分类、剪切、定义、归类成视频源并放进服务器的视频源库里,并通过动作模块将前述视频源转换分类成不同的动作节点,将动作节点以顺序的方式排列起来并保存在服务器里。通过上述方式将所有的教学任务保存在服务器,并且通过标签进行排列,然后放在一个教学任务系列里,用户可以通过寻找教学模块的目录中找到此系列,并可以从任意动作节点开始学习。
(一)关于人体姿态识别模型
本发明中,人体姿态识别模型采用现有技术中的识别模型以实现识别模块的功能需求,具体为:通过基于卷积神经网络建立的人体骨骼特征图组的特征训练模型提取人的骨骼特征点,将提取出的人的骨骼特征点连接成骨骼线,如图2所示。
人体姿态识别模型的输入是图像视频,输出是由人体姿态的骨骼特征点组成的识别结果数据集。其中,骨骼特征点以图像视频分辨率计算其坐标值(x,y)。人体姿态识别模型的识别方式具体为:根据图像视频的帧率,将视频拆分成每一帧的帧图矩阵数据,再将帧图矩阵数据通过时序的方式送入该模型进行识别,得到识别结果数据集。识别结果数据集包括视频中人物的头部数据、肩部数据、臂部数据、手部数据、臀部数据、腿部数据和脚部数据,识别结果数据集以视频帧为时间轴组合成特征识别矩阵。
(二)实现将图像视频内容中的动作加入动作库
服务器视频源库的图像视频内容通过识别模块获得其对应的识别结果数据集,再通过动作模块对由识别结果数据集组合成的特征识别矩阵进行筛选,以将动作加入动作库。视频源库中所有图像视频中的运动动作均会被处理后加入动作库,动作模块会持续工作,自动从视频源库里补充没有处理到的图像视频,直到补充完成。
动作的具体操作如下:
首先,观察图像视频的开始帧和结束帧,从能识别出人体的视频帧开始,一定会有起始动作,这个动作在视频中一般是直立,或者是特定的固定动作,这类动作的共同点在于其将保持动作一秒以上。优选地,按视频源库的图像视频中单帧图像出现的先后顺序,将具有相同的通过识别模块输出的识别结果数据集的最小帧序号定义为开始帧,将图像视频的开始帧前的图像数据及其通过识别模块得到的识别模型结果集全部抛弃;将具有相同的通过识别模块输出的识别结果数据集的最大帧序号定义为结束帧,将图像视频的结束帧后的图像数据及其通过识别模块得到的识别模型结果集全部抛弃。此时,图像视频的帧数与其通过识别模块输出的识别模型结果集的维度数是相同的。
然后,将图像视频中人体动作开始前和结束后的视频帧及其通过识别模块输出的识别模型结果集删除,保存该图像视频中开始帧和结束帧之间(包括开始帧和结束帧)的视频帧(记作视频帧集DT[N]),及其对应的识别结果数据集。保留视频帧集DT[N],并时序地处理视频帧集DT[N]中每一帧经过识别模块输出的识别结果数据集(记作DS[i])。其中,N表示视频帧集DT[N]的帧数,i表示视频帧集DT[N]中第i个视频帧,i的初始值为1,且1≤i≤N。处理识别结果数据集DS[i]的具体步骤如下:
步骤1:根据当前视频帧中人体肢体的位置确定人体当前的姿态,具体是正面或者背面,又或者是侧面对着摄像头模块3。
首先,将识别结果数据集DS[i]中的头部数据、肩部数据、臂部数据、手部数据、臀部数据、腿部数据、脚部数据按肢体结构连线,得到人体骨骼连线图。参考人体骨骼连线图,定义以下几个骨骼点:头部H(xh,yh)、颈部N(xn,yn)、左肩LS(xls,yls)、右肩RS(xrs,yrs)、左肘LE(xle,yle)、右肘RE(xre,yre)、左腕LW(xlw,ylw)、右腕RW(xrw,yrw)、左胯LH(xlh,ylh)、右胯RH(xrh,yrh)、左膝LK(xlk,ylk)、右膝RK(xrk,yrk)、左踝LA(xla,yla)、右踝RA(xra,yra)。所有骨骼点的坐标参考系相同,对于同一二维坐标系中,人体肢体的位置即为其对应骨骼点在上述二维坐标系中的位置坐标。
然后,确定人体当前的姿态。若左肩的位置坐标LS(xls,yls)中的xls小于右肩的位置坐标RS(xrs,yrs)中的xrs,则人体处于面对摄像头模块3的状态,反之则处于背对摄像头模块3的状态;若左肩的位置坐标LS(xls,yls)中的xls小于右肩的位置坐标RS(xrs,yrs)中的xrs,则人体处于左侧面对着摄像头模块3的状态,否则人体处于右侧面对着摄像头模块3的状态。
步骤2:基于人体肢体的姿态,对运动肢体进行点位分解,计算当前视频帧中人体肢体角度、朝向。
人体肢体角度的计算方法具体如下:
所有骨骼点的坐标参考系相同,对于同一2D平面中,计算肢体间的角度为计算骨骼点连线之后的两条直线夹角,不同部位的角度计算维度不同,具体介绍如下:
头部角度需要先计算肩部和头部之间的倾斜夹角,其中,肩部为左右肩位置坐标组成的直线和颈部位置坐标与头部位置坐标组成的直线的夹角:
HX=LS(xls,yls)RS(xrs,yrs),HY=N(xn,yn)H(xh,yh)
左右手角度需要先计算两个角度指标,一是肩部与手臂的夹角,通过计算颈部位置坐标、肩部位置坐标与肘部位置坐标的夹角可得;二是手肘的角度,通过计算肩部位置坐标、肘部位置坐标与腕部位置坐标的夹角可得。
计算左手时:
LHX1=N(xn,yn)LS(xls,yls),LHY1=LS(xls,yls)LE(xle,yle)
LHX2=LS(xls,yls)LE(xle,yle),LHY2=LE(xle,yle)LW(xlw,ylw)
计算右手时:
RHX1=N(xn,yn)RS(xrs,yrs),RHY1=RS(xrs,yrs)RE(xre,yre)
RHX2=RS(xrs,yrs)RE(xre,yre),RHY2=RE(xre,yre)RW(xrw,yrw)
左右腿角度需要先计算胯部位置坐标到踝部位置坐标的夹角:
计算左腿时:
LLX=LH(xlh,ylh)LK(xlk,ylk),LLY=LK(xlk,ylk)LA(xla,yla)
计算右腿时:
RLX=RH(xrh,yrh)RK(xrk,yrk),RLY=RK(xrk,yrk)RA(xra,yra)
然后,将上述X(即HX、LHX1、LHX2、RHX1、RHX2、LLX、RLX)及其对应的Y(即HY、LHY1、LHY2、RHY1、RHY2、LLY、RLY)代入下述角度计算公式中,得到对应的角度,具体原理如下:
有直线X(a-b)、Y(c-d)以及组成该两条直线的点a(xa,ya)、b(xb,yb)、c(xc,yc)、d(xd,yd),其中:
v1=xb-xa;
v2=yb-ya;
v3=xd-xc;
v4=yd-yc;
角度的计算公式为:
以头部角度为例,有直线HX(LS-RS)、HY(N-H),通过组成该两条直线的点LS(xls,yls)、RS(xrs,yrs)、N(xn,yn)、H(xh,yh)进行角度的计算。当人体是面对摄像头模块3的状态时,肢体的角度的值为计算出的angle;当人体是背对摄像头模块3的状态时,肢体的角度的值为180度减去计算出的angle角度,即180-angle。
计算出人体肢体的角度后,再通过2D平面的坐标系,计算人体肢体的朝向。人体肢体朝向的计算具体为目标对于坐标系中的两条轴的角度。
例如,计算左手手臂的朝向:
LEWO=LE(xle,yle)LW(xlw,ylw)
代入下述计算公式中,得到左手手臂相对于坐标系中两条轴的角度,即该肢体的朝向,具体公式如下:
对于x轴:
对于y轴:
计算人体肢体的朝向的方法类似,此处不再赘述。
步骤3:令i=i+1,若i=N+1,则执行步骤4,反之则进行如下操作:
若识别结果数据集DS[i]和识别结果数据集DS[i-1]对应的位置、朝向、角度数据均相同,则只记录视频帧集DT[N]中第i个视频帧中人体肢体的位置、朝向、角度数据;反之则记录此视频帧以及此帧的时间轴,即上一姿态与下一姿态的相隔时间。
步骤4:遍历识别结果数据集DS[i](1≤i≤N)中所有数据,对所有数据做进行如下处理:将同一姿态下,同一位置、朝向、角度的数据去重;将不同姿态的前后帧记录并标记,用高斯滤波消除噪声,将以上点位记录进动作节点库;并将此前后的顺序关系加入序列库,将此动作加入动作库。其中,动作节点库中包括有动作节点id、肢体类型(具体为头部、躯干、左手、右手、左腿、右腿)、时序列中的位置,动作库中包括有动作id、动作名称、动作类型(具体为个体动作、教学动作)、动作序列id,序列库中包括有序列id、动作节点id、动作序列id。
(三)关于动作匹配算法
动作匹配算法的具体步骤如下:
步骤1:获取用户运动的图像视频,将其放入动作模块后获得该图像视频转换后的动作节点,得到的动作节点即该图像视频中用户的肢体的运动节点。需要说明的是,本发明中,通过摄像头模块3获取的用户做动作的图像视频是从用户开始做动作起到结束动作截止,截止时间可选择结束动作后的一定时间,例如截止时间选择结束动作后的2秒钟。
步骤2:将得到的动作节点以时序的方式组成其对应的轨迹集合A={a1,a2,a3,a4,…,an}。其中,轨迹可由时间域到空间域的映射函数表示。
步骤3:将轨迹集合A与动作库中动作节点的轨迹集合进行轨迹匹配,求轨迹集合间的相似度,具体方法如下:
以上述同样的方式,将动作库中任一的动作节点以时序的方式组成其轨迹集合B={b1,b2,b3,b4,…,bm}。由于用户在摄像头模块3前做动作的时长与视频源库中图像视频的时长难以完全相等,因此,轨迹组合A的维度n和轨迹组合B的维度m通常不会相等。
轨迹集合A和轨迹集合B构造一个n×m的矩阵:
Dist(A,B)=f(ap,bq)≥0
上述公式旨利用欧氏距离通过计算轨迹组合A、轨迹组合B内各个点之间的距离,得到对应的距离矩阵DIST,其中,f()表示矩阵方式,p、q均为变量,p、q分别表示轨迹集合A、轨迹集合B元素的下标,ap表示轨迹集合A中第p个元素,bq表示轨迹集合B中第q个元素,且满足1≤p≤n、1≤q≤m。欧式距离的计算方式如下:
Dist(ap,bq)=(ap-bq)2
距离矩阵DIST如下表所示:
Dist(a1,b1) | Dist(a1,b2) | … | Dist(a1,bm) |
Dist(a2,b1) | Dist(a2,b2) | … | Dist(a2,bm) |
… | … | … | … |
Dist(an,b1) | Dist(an,b2) | … | Dist(an,bm) |
距离矩阵DIST中的元素Dist(ap,bq)表示点ap、bq的对齐,Dist(ap,bq)即点ap、bq的欧式距离。由于轨迹组合A的维度n和轨迹组合B的维度m通常不会相等,因此需要对距离矩阵DIST中所有矩阵元素Dist(ap,bq)的ap轨迹点、bq轨迹点进行匹配,得到轨迹路径R={r1,r2,…,re}。轨迹匹配方法如下:
首先,为保证ap、bq两条轨迹的第一个值和最后一个值相对应,因此,轨迹路径R选择以距离矩阵DIST的左下角作为轨迹出发点、右上角作为轨迹结束点。轨迹路径R中元素(下文称路径轨迹点)rt=(p,q),其表示距离矩阵DIST中第p行第q列位置的矩阵元素,即矩阵元素Dist(ap,bq)在距离矩阵DIST中的位置。其中,t为变量,且满足1≤t≤e。由前述可知:路径轨迹点r1=(1,1)、re=(n,m)。此时的r1旨在说明轨迹A的第一个点与轨迹B的第一个点对应,re旨在说明轨迹A的n个点与轨迹B的第m个点对应。两条轨迹中任意一条轨迹起伏可能会有任意变化,但是其起伏的先后顺序不会更改,因此所选的路径必定是从左下到右上。轨迹路径R中第w个元素定义为rw=(f,g),(f,g)对应距离矩阵DIST中第f行第g列的元素。
若路径轨迹点rw满足rw=(v,v),即矩阵元素在距离矩阵DIST中的行和列相等时,轨迹路径中下一个路径轨迹点rw+1=(u,k)须满足以下两个条件:
u-v≤1且k-v≤1,即不能跨点去匹配,只能和相邻的点对齐;
0≤u-v且0≤k-v,以保证路径不会相交。
其中,w、v、u、k均为变量,且各变量须满足:2≤w≤e-1,2≤v≤n-1且2≤v≤m-1,2≤u≤n-1,2≤k≤m-1。
由上述内容可知,路径轨迹每次可前进的方向只有三种:(f+1,g),(f,g+1)或(f+1,g+1)。
满足以上条件的路径中,找出规划代价最小的路径,求取规划路径代价最小的路径的公式如下:
上述公式中,分母U,用来对不同长度的规划路径做补偿,定义一个距离的累加,从位置(0,0)点(即距离矩阵DIST最左上角的第一个点)开始匹配A={a1,a2,a3,a4,…,an}、B={b1,b2,b3,b4,…,bm}这两个序列,每到一个路径轨迹点,之前所有的路径轨迹点计算的距离都会累加。到达轨迹结束点(n,m)后,该累积距离就是该条路径的总距离,即当前动作节点对应的轨迹集合A与动作库中某一动作节点对应的轨迹集合B的相似度。
距离的累加v(f,g)表示当前点ai和bj的欧式距离与可以达到该点的最小邻近的距离之和(相似度),公式如下:
v(f,g)=Dist(af,bg)+min(v(f-1,g-1),v(f-1,g),v(f,g-1))
其中,v(f-1,g-1)、v(f-1,g)、v(f,g-1)满足上述条件,即这个点的下、左、斜下这三个方向的值,这三个方向的值可以依次递归求得,直到轨迹开始点(1,1)。
通常地,某一个动作节点有三条轨迹,例如,手臂有肩膀点轨迹、手肘点轨迹、手腕点轨迹,分别计算出它们的相似度。通过上述轨迹相似度的匹配方式,匹配找到最接近的动作节点列表集,经过排序,找到最接近的动作节点时序列表,由此匹配到最相似的动作库中的动作。
(四)关于完整度匹配模型
完整度匹配模型的输入为视频源库中作为评判标准的图像视频(具体指测试视频、动作教学视频)对应的特征识别矩阵、利用摄像头模块3获得的用户做的动作对应的特征识别矩阵,输出的教学结果包括用户做的动作的动作完成程度、标准程度、动作还原标准程度、动作节奏标准程度,其标准程度细分到运动动作中每个肢体的角度和节奏点。需要说明的是,此处通过动作模块处理以视频帧为时间轴将识别结果数据集组合成的特征识别矩阵时,不处理重复帧,基于重复帧来判断动作节点的标准度。
完整度匹配模型实现上述功能的具体步骤如下:
首先,在上述动作匹配算法的基础上,加入动作的向量变化。当某一个动作节点的肢体向量发生过大变化时(过大变化时指向量的变化角度超过30%),记录当前动作节点与动作变化之后的动作节点。通过时序的方式,保存所有被记录的动作节点。从而得到从第一个动作节点到变化后的动作节点的集合,将集合形成轨迹,由此得到用户动作的肢体运动轨迹E与动作库中动作的肢体运动轨迹F。
然后,根据肢体运动轨迹E与肢体运动轨迹F的动作节点判断动作的肢体标准度:以肢体运动轨迹F为准,记录肢体运动轨迹E、肢体运动轨迹F对应的运动节点集合中元素的数量,利用上述维度不相等的轨迹匹配方法找出用户动作的肢体动作节点中的错误向量,将不属于错误向量的向量的动作节点加入标准列表。
接着,计算动作节点相对时间轴(在一个时序的轨迹里,每一个动作节点在本轨迹里的相对时间以帧数计算),再计算肢体运动轨迹E、F中动作节点通过上述动作匹配算法能匹配到的动作节点,比较其时间轴,将不等于动作库中动作节点的时间轴的动作节点加入节奏列表。
最后,统计用户做动作形成的图像视频中所有动作节点所产生的标准列表和节奏列表,按时序的方式拼接成完整度匹配模型的返回类型。
(五)关于测试身体体能
服务器中存储有系统已收集的用于测试人体身体体能的类别及其对应的测试项目(即图像视频),用户进入测试界面后,可在选择用于测试体能的类别后选择所属该类别的测试项目进行测试,显示模块2播放所选的测试项目对应的测试视频,用户依照视频内容做相应动作,同时,摄像头模块3实时地将用户做动作的图像视频传至中央控制模块4。此段图像视频依次经过识别模块和动作模块后,输出用户在此次测试过程中的动作节点,然后利用完整度匹配模型获得用户体能评分数据及需要提升的建议和途径,并通过显示模块2显示此数据和建议信息。
(六)关于动作教学
用户进入教学界面后,可通过选择历史教学任务或任意课程进行学习和训练运动动作。当用户指定一套教学任务中某一动作教学视频后,显示模块2会播放(可循环播放)该动作教学视频,用户依照视频内容做相应动作,摄像头模块3实时地将用户做动作的图像视频传至中央控制模块4。此段图像视频依次经过识别模块和动作模块后,输出用户在此次教学过程中的动作节点,然后利用完整度匹配模型获得用户对此次教学内容的完成情况,并通过显示模块2显示用户在此次教学内容中的动作标准程度、动作还原标准程度、发生动作不统一的结果集、动作节奏标准程度等相关数据。用户通过查看显示模块2展示的数据,可直观地知晓此次教学内容中,自己的动作是否规范、合格、标准,做的动作存在的具体问题。
实施例二
本实施例在实施例一的基础上,进一步地,系统还包括具有搜索引擎功能的搜索模块,用户可操作软件界面进入搜索模块对应的搜索界面。本系统中,用户可通过自动识别和主动选择两种方式进行搜索,即搜索模块根据用户做出的单节/单个动作进行搜索以及根据用户指定的和/或用户选择的内容进行搜索。用户可在搜索界面选择通过自动识别或者主动选择的方式进行上述动作库的搜索,其中:
1)自动识别:通过用户控制模块选择自动识别搜索图像视频,具体实现方法如下:
用户选择自动识别搜索后,摄像头模块3工作,用户做出想要搜索的图像视频中的所有动作或者其中部分动作,摄像头模块3实时地将用户做动作的图像视频传至中央控制模块4。通过识别模块输出此段图像视频对应的识别结果数据集,然后将前述识别结果数据集发送到动作模块中,利用动作模块输出前述图像视频的动作节点。搜索引擎利用动作匹配算法将前述动作节点与动作库中的动作节点进行匹配,再从服务器中调出从动作库中搜索出的动作搜索结果。
2)主动选择:搜索模块建立有分类项目和分类栏,搜索界面的主动界面中,以关键字、动作类型、系列类型的方式使用户快速又准确地找到所需的图像视频。
优选地,通过动作匹配算法将待识别的图像视频中人体的肢体动作转换成动作节点并与动作库中的动作节点进行匹配后,成功匹配到的动作库中的动作会形成一个列表,由搜索引擎决定哪一些会被用户看到,并且被选择。
实施例三
本实施例在上述任一实施例的基础上,进一步地,系统还包括历史记录模块,用户可操作软件界面进入历史记录模块对应的历史运动记录界面,历史运动记录界面用于展示用户的历史运动记录(包括体能测试、教学)和报表,用户可随意查看。用户的体能测试记录通过历史记录模块写进服务器,以便用户查看及生成体能测试数据。用户在完成动作教学视频的学习后,可通过历史记录模块查看用户选择过的动作教学视频及用户对其教学内容的完成情况。
实施例四
本实施例在上述任一实施例的基础上,进一步地,系统还包括音频播放模块,用于播放显示模块2当前显示的图像视频对应的声音。
实施例五
本实施例提供了一种采用上述任一实施例所述的教学系统的智能镜,如图4至7所示,该智能镜还包括镜体1、外壳8、红外距离传感器5、电源模块6,教学系统至少包括摄像头模块3、显示模块2、用户控制模块、中央控制模块4、通讯模块7、识别模块、动作模块、教学模块。在不同的应用环境下,智能镜可以通过通讯模块7连接不同的服务器。其中,中央控制模块4接收和处理用户控制模块、摄像头模块3、红外距离传感器5的信息,统一控制镜体1内所有功能组件,是智能镜的核心。用户控制模块、红外距离传感器5均与通讯模块7直接连接,显示模块2、摄像头模块3、用户控制模块、通讯模块7、电源模块6均与中央控制模块4直接连接。
智能镜正面通体为镜体1,镜体1采用单向透视玻璃,此玻璃是一种对可见光具有很高反射比的玻璃。单向透视玻璃的正面被用户看见和使用,背面由于有特殊装置和密封设计,使镜体1正面与普通镜子相同。镜体1分正、反两面,镜体1内嵌有偏振膜。镜体1正面为玻璃镜面,用来反射光线以形成正常镜面。镜体1中可安置多个不同大小的显示模块2以便用户完成教学、测试;显示模块2具有触摸功能,在显示模块2工作时,用户可通过触摸镜面任何位置以实现与软件界面的交互。本实施例中,智能镜包括一个显示模块2,用户控制模块即显示模块2工作时可进行交互的图标、文字等。用户利用显示模块2发起人机交互时,立即发送信号至中央控制模块4,通过中央控制模块4作出对应的逻辑和界面处理。
显示模块2紧贴安装于镜体1背面内侧上方,显示模块2外层贴有玻璃镀膜。中央控制模块4安装于镜体1背面的中央位置并紧贴于镜体1背面,摄像头模块3、红外距离传感器5、通讯模块7及电源模块6安装于中央控制模块4的垂直方向下方且紧贴于玻璃镜面,红外距离传感器5在通电之后即处于开启状态。镜体1左下方位置开设有一线孔,用于伸出电源线。本实施例中,若教学系统包括有音频播放模块,则该音频播放模块与中央控制模块4连接,音频播放模块包括音频播放器A和音频播放器B,音频播放器A、音频播放器B以水平布置方式分别安装于镜体1的中部位置左右两端。
智能镜的表面形状为矩形,外壳8的形状可以为矩形、多边形、规则多边形、圆形等任意形状,外壳8正面嵌入镜体1,外壳8内安装智能镜包含的其他部件。外壳8整体密封,在外壳8正面左边的底部开设有智能镜电源线的伸出口。智能镜正面通体为镜体1,智能镜背面可以被固定在固定支架上或者内嵌入墙体内,也可通过安装支架放在地面。
本实施例中,摄像头模块3采用高广角摄像头,以近距离内完整获取用户图像,包括用户的头部、手臂、躯干、腿部和脚的图像,摄像头实时获取用户肢体数据并将该数据实时地传至中央控制模块4,中央控制模块4利用识别模块进行识别。显示模块2采用按镜体1尺寸比例定制尺寸的电容屏,以显示智能镜的程序显示结果和软件界面,并根据用户的使用(通过肢体或者用户控制模块)来进行切换和使用。
在无人或断电情况下,教学系统部分功能组件处于待机状态(处于待机状态的功能组件包括摄像头模块3、识别模块、动作模块、显示模块2、教学模块;若教学系统包括有搜索模块,则处于待机状态功能组件还包括搜索模块;若教学系统包括有历史记录模块,则处于待机状态功能组件还包括历史记录模块),显示模块2不工作,镜体1从镜体1正面看,安装显示模块2的位置可以达到完全镜面的效果,使得该智能镜与普通镜子无异,为一个完整的反光镜面。
当有人或物体在智能镜前时,红外距离传感器5信号产生变化,该信号传至中央控制模块4,中央控制模块4基于人或物体在智能镜前停留时间判断是否需要开启摄像头和识别模块,例如,当有人或物体在镜体1面前阻挡超过3秒时,则开启摄像头,并启用识别模块。摄像头实时采集图像视频并传至中央控制模块4,通过识别模块识别出镜体1前是否有人体;若是,则唤醒教学系统所有功能组件,显示模块2开始工作,在镜体1安装显示模块2的区域显示教学系统的软件界面。显示模块2工作时,由于镜体1密封无可见光源,根据单向透视玻璃的特性,显示模块2显示智能镜的软件界面,镜体1镜面其他部分仍与普通镜子无异。软件界面简单易操作,通过用户控制模块控制,用户控制模块以及红外距离传感器5的信号经过通讯模块7转换后传送至中央控制模块4。
当人离开智能镜前之后,中央控制模块4基于摄像头模块3及和红外距离传感器5采集到的实时数据判断是否使教学系统部分功能组件处于待机状态。例如,当识别模块识别出人离开镜体1前持续有10秒后,则让教学系统部分功能组件处于待机状态。教学系统组成组件的唤醒和待机状态的切换呈智能化,无需人做任何操作,用户体验好。
显示模块2播放测试视频或动作教学视频时,用户可在镜体1中看到自己做的动作,根据视频内容对自身所做的动作进行主观调整。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种教学系统,包括显示模块、用户控制模块、摄像头模块、通讯模块,系统通过通讯模块连接有服务器,服务器中存储有视频源库,其特征在于,系统还包括识别模块、动作模块、教学模块、中央控制模块,其中:
显示模块,用于显示系统的软件界面;
用户控制模块,用于用户操作软件界面,用户通过操作软件界面进行图像视频的学习;
摄像头模块,用于实时采集用户做的动作以形成待识别的图像视频,并将待识别的图像视频传至中央控制模块;
识别模块,基于人体姿态识别模型对图像视频进行识别,判断图像视频数据中是否存在人体,以及判断人体是否开始运动、人体是否结束运动;
动作模块,用于将图像视频存入服务器的视频源库中,将视频源库包括的所有图像视频中人体的肢体动作转换成对应的动作节点并基于前述动作节点建立动作库,以及利用动作匹配算法将待识别的图像视频中人体的肢体动作转换成动作节点并与动作库中的动作节点进行匹配;
教学模块,通过显示模块播放视频源库中的图像视频用以用户学习和训练,利用完整度匹配模型输出用户的教学结果;
中央控制模块,用于与服务器建立通讯,接收和处理由摄像头模块、用户控制模块获得的信息,控制系统中所有功能模块;
还包括搜索模块,搜索模块提供自动识别和主动选择两种方式进行动作的搜索,搜索结果通过显示模块展示,其中:
主动识别,利用摄像头模块获取用户做动作形成的图像视频并传至中央控制模块,通过动作模块输出前述图像视频的动作节点,再利用动作匹配算法将前述动作节点与动作库中的动作节点进行匹配,从动作库中获取动作搜索结果;
主动选择,搜索模块建立有分类项目和分类栏,用户以关键字、动作类型、系列类型的方式进行搜索;
所述动作模块包括动作节点子模块、动作库子模块和匹配子模块三部分,其中:
动作节点子模块,利用人体姿态识别模型将图像视频中的人的肢体动作转换成可被匹配子模块及动作库子模块识别的动作节点,一个动作节点代表图像视频中人体单个肢体的识别结果数据集,包括肢体运动轨迹和角度数据集;
动作库子模块,用于将图像视频转化成视频源并放进服务器的视频源库中,以及将视频源通过动作节点子模块转换成不同的动作节点,用以建立动作库;
匹配子模块,利用动作匹配算法对由动作节点子模块转换成的动作节点和动作库中的动作节点进行匹配,以得到由动作节点子模块转换成的动作节点在动作库中相应的可识别的动作;
人体姿态识别模型的输入为图像视频,输出为由人体姿态的骨骼特征点组成的识别结果数据集,利用人体姿态识别模型对图像视频进行识别的方法为:
根据图像视频的帧率,将视频拆分成每一帧的帧图矩阵数据,再将帧图矩阵数据通过时序的方式送入人体姿态识别模型进行识别,得到识别结果数据集;识别结果数据集以视频帧为时间轴组合成特征识别矩阵,其中,识别结果数据集包括视频中人物的头部数据、肩部数据、臂部数据、手部数据、臀部数据、腿部数据和脚部数据;
基于动作节点建立动作库的方法为:对由识别结果数据集组合成的特征识别矩阵进行动作筛选,具体操作如下:
步骤A1:定义图像视频的开始帧和结束帧,将图像视频中开始帧之前和结束帧之后的视频帧及其对应的识别结果数据集抛弃,将图像视频中剩下的视频帧,记作视频帧集DT[N];
步骤A2:保留视频帧集DT[N],并时序地处理视频帧集DT[N]中每一帧经过识别模块输出的识别结果数据集,记作DS[i],以完成动作库中动作的加入;其中,N表示视频帧集DT[N]的帧数,i表示视频帧集DT[N]中第i个视频帧,i的初始值为1,且1≤i≤N;
处理识别结果数据集DS[i]的具体步骤如下:
步骤A2.1:根据当前视频帧中人体肢体的位置确定人体当前的姿态;
步骤A2.2:基于人体肢体的姿态,计算当前视频帧中人体肢体角度、朝向;
步骤A2.3:令i=i+1,若i=N+1,则执行步骤A2.4,反之则进行如下操作:
若识别结果数据集DS[i]和识别结果数据集DS[i-1]对应的位置、朝向、角度数据均相同,则只记录视频帧集DT[N]中第i个视频帧中人体肢体的位置、朝向、角度数据,反之则记录此视频帧以及此帧的时间轴;
步骤A2.4:遍历识别结果数据集DS[i](1≤i≤N)中所有数据,对所有数据做进行如下处理:将同一姿态下,同一位置、朝向、角度的数据去重;将不同姿态的前后帧记录并标记,用高斯滤波消除噪声,将此动作加入动作库。
2.根据权利要求1所述的一种教学系统,其特征在于,还包括历史记录模块或/和音频播放模块,历史记录模块用于展示用户的历史运动记录和报表,音频播放模块用于播放图像视频的声音。
3.根据权利要求1所述的一种教学系统,其特征在于,利用动作匹配算法将待识别的图像视频中人体的肢体动作转换成的动作节点与动作库中的动作节点进行匹配的方法为:
以时序的方式将待识别的图像视频中人体的肢体动作转换成的动作节点组成其对应的轨迹集合A={a1,a2,a3,a4,…,an},将轨迹集合A与动作库中动作节点的轨迹集合进行轨迹匹配,求轨迹集合间的相似度;根据求得的相似度大小得出动作库中与待识别的图像视频中人体的肢体动作最相似的动作。
4.根据权利要求3所述的一种教学系统,其特征在于,计算轨迹集合A与动作库中动作节点的轨迹集合间的相似度的具体步骤如下:
步骤B1:将动作库中任一的动作节点以时序的方式组成其轨迹集合B={b1,b2,b3,b4,…,bm},轨迹集合A和轨迹集合B构成大小为n×m的矩阵;
步骤B2:计算上述矩阵中两个不同点之间的距离,得到距离矩阵DIST;
步骤B3:对距离矩阵DIST中所有矩阵元素Dist(ap,bq)的ap轨迹点、bq轨迹点进行轨迹匹配,得到轨迹路径R={r1,r2,…,re};其中,p、q均为变量,p、q分别表示轨迹集合A、轨迹集合B元素的下标,ap表示轨迹集合A中第p个元素,bq表示轨迹集合B中第q个元素,且满足1≤p≤n、1≤q≤m;轨迹匹配方法如下:
以距离矩阵DIST的左下角作为轨迹出发点、右上角作为轨迹结束点,即r1=(1,1)、re=(n,m);其中,轨迹路径R中元素rt=(p,q),表示距离矩阵DIST中第p行第q列位置的矩阵元素,即矩阵元素Dist(ap,bq)在距离矩阵DIST中的位置,t为变量,且满足1≤t≤e;
若路径轨迹点rw满足rw=(v,v),即矩阵元素在距离矩阵DIST中的行和列相等时,轨迹路径中下一个路径轨迹点rw+1=(u,k)须满足以下两个条件:
①、u-v≤1且k-v≤1,即不能跨点去匹配,只能和相邻的点对齐;
②、0≤u-v且0≤k-v,以保证路径不会相交;
其中,w、v、u、k均为变量,且各变量须满足:2≤w≤e-1,2≤v≤n-1且2≤v≤m-1,2≤u≤n-1,2≤k≤m-1;
步骤B4:按轨迹路径R中元素的排列顺序,计算相邻两个元素的距离并累加,得到轨迹集合A与动作库中某一动作节点的轨迹集合间的相似度。
5.根据权利要求4所述的一种教学系统,其特征在于,完整度匹配模型的输入为视频源库中的图像视频对应的特征识别矩阵、利用摄像头模块获得的用户做动作形成的图像视频对应的特征识别矩阵,输出的教学结果包括用户做的动作的动作完成程度、标准程度、动作还原标准程度、动作节奏标准程度;
利用完整度匹配模型输出教学结果的具体步骤如下:
步骤C1:构建人体的肢体动作对应的动作节点的肢体向量;
步骤C2:基于动作节点的肢体向量变化程度,得到用户做的动作的肢体运动轨迹E与动作库中保存的动作的肢体运动轨迹F;其中,肢体运动轨迹为由动作节点组成的动作节点集合而形成的轨迹;
步骤C3:根据肢体运动轨迹E与肢体运动轨迹F的动作节点判断动作的肢体标准度:
以肢体运动轨迹F为准,记录肢体运动轨迹E、肢体运动轨迹F对应的运动节点集合中元素的数量,利用上述轨迹匹配方法找出用户动作的肢体动作节点中的错误向量,将不属于错误向量的向量的动作节点加入标准列表;
步骤C4:计算动作节点相对时间轴,再计算肢体运动轨迹E、肢体运动轨迹F中动作节点通过上述动作匹配算法能匹配到的动作节点,比较其时间轴,将不等于动作库中动作节点的时间轴的动作节点加入节奏列表;
步骤C5:统计用户做动作形成的图像视频中所有动作节点所产生的标准列表和节奏列表,按时序的方式拼接成完整度匹配模型的返回类型。
6.一种智能镜,包括镜体、电源模块、距离传感器,其特征在于,还包括权利要求1至5任一项所述的教学系统,所述电源模块、距离传感器均连接中央控制模块,所述教学系统的功能组件均安装于镜体内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010339273.4A CN111401330B (zh) | 2020-04-26 | 2020-04-26 | 教学系统及采用该教学系统的智能镜 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010339273.4A CN111401330B (zh) | 2020-04-26 | 2020-04-26 | 教学系统及采用该教学系统的智能镜 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111401330A CN111401330A (zh) | 2020-07-10 |
CN111401330B true CN111401330B (zh) | 2023-10-17 |
Family
ID=71433496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010339273.4A Active CN111401330B (zh) | 2020-04-26 | 2020-04-26 | 教学系统及采用该教学系统的智能镜 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111401330B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112040301B (zh) * | 2020-09-14 | 2023-05-16 | 成都拟合未来科技有限公司 | 交互式练习设备动作讲解方法、系统、终端及介质 |
CN112149586A (zh) * | 2020-09-28 | 2020-12-29 | 上海翰声信息技术有限公司 | 一种基于神经网络的视频片段自动抽取系统及方法 |
CN112560572A (zh) * | 2020-10-24 | 2021-03-26 | 北京博睿维讯科技有限公司 | 一种摄像和大屏交互处理方法、装置及系统 |
CN112597933B (zh) * | 2020-12-29 | 2023-10-20 | 咪咕互动娱乐有限公司 | 动作评分方法、装置及可读存储介质 |
CN113034989A (zh) * | 2021-02-20 | 2021-06-25 | 广州颐寿科技有限公司 | 护理培训方法、系统以及存储装置 |
CN113257055A (zh) * | 2021-05-11 | 2021-08-13 | 山东体育学院 | 一种智能舞蹈步伐学习装置及方法 |
CN113262459B (zh) * | 2021-05-26 | 2022-06-14 | 上海大动科技有限公司 | 应用于运动健身镜的动作标准性的判定方法,装置和介质 |
CN113378804A (zh) * | 2021-08-12 | 2021-09-10 | 中国科学院深圳先进技术研究院 | 一种自助采样的检测方法、装置、终端设备和存储介质 |
CN113706960B (zh) * | 2021-08-29 | 2023-01-20 | 华中科技大学同济医学院附属协和医院 | 一种基于vr技术的护理操作练习平台及使用方法 |
TWI823478B (zh) * | 2022-07-18 | 2023-11-21 | 新加坡商鴻運科股份有限公司 | 人工智慧之動作管理方法、電子設備及存儲介質 |
CN117078976B (zh) * | 2023-10-16 | 2024-01-30 | 华南师范大学 | 动作评分方法、装置、计算机设备以及存储介质 |
CN117406887B (zh) * | 2023-11-21 | 2024-04-09 | 东莞莱姆森科技建材有限公司 | 一种基于人体感应的智能镜柜控制方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6323776B1 (en) * | 1999-12-21 | 2001-11-27 | Snap-On Technologies, Inc. | Method and apparatus of automatically identifying faults in a machine vision measuring system |
CN101295442A (zh) * | 2008-06-17 | 2008-10-29 | 上海沪江虚拟制造技术有限公司 | 非接触式立体显示虚拟教学系统 |
CN106157741A (zh) * | 2016-09-13 | 2016-11-23 | 刘翔 | 一种教学用写字板选择性显示装置 |
CN106652590A (zh) * | 2017-03-27 | 2017-05-10 | 深圳未来立体教育科技有限公司 | 教学方法、教学识别体及教学系统 |
CN108040203A (zh) * | 2017-11-30 | 2018-05-15 | 深圳云天励飞技术有限公司 | 操作显示方法、装置、智能镜子及计算机可读存储介质 |
CN109389054A (zh) * | 2018-09-21 | 2019-02-26 | 北京邮电大学 | 基于自动图像识别和动作模型对比的智能镜子设计方法 |
CN110119513A (zh) * | 2018-12-19 | 2019-08-13 | 吉林化工学院 | 一种基于大数据分析的远程日语教学交互系统及交互方法 |
CN110478883A (zh) * | 2019-08-21 | 2019-11-22 | 南京信息工程大学 | 一种健身动作教学及矫正系统及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8866845B2 (en) * | 2010-03-10 | 2014-10-21 | Empire Technology Development Llc | Robust object recognition by dynamic modeling in augmented reality |
US20130077932A1 (en) * | 2011-09-26 | 2013-03-28 | David James Cornell | Digital video camera system having two microphones |
KR101904203B1 (ko) * | 2012-06-20 | 2018-10-05 | 삼성전자주식회사 | 시프트 알고리즘을 이용하여 대용량 소스 이미지의 특징점 정보를 추출하는 장치 및 방법 |
KR20190097640A (ko) * | 2018-02-12 | 2019-08-21 | 삼성전자주식회사 | 영상 정합 방법 및 장치 |
-
2020
- 2020-04-26 CN CN202010339273.4A patent/CN111401330B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6323776B1 (en) * | 1999-12-21 | 2001-11-27 | Snap-On Technologies, Inc. | Method and apparatus of automatically identifying faults in a machine vision measuring system |
CN101295442A (zh) * | 2008-06-17 | 2008-10-29 | 上海沪江虚拟制造技术有限公司 | 非接触式立体显示虚拟教学系统 |
CN106157741A (zh) * | 2016-09-13 | 2016-11-23 | 刘翔 | 一种教学用写字板选择性显示装置 |
CN106652590A (zh) * | 2017-03-27 | 2017-05-10 | 深圳未来立体教育科技有限公司 | 教学方法、教学识别体及教学系统 |
CN108040203A (zh) * | 2017-11-30 | 2018-05-15 | 深圳云天励飞技术有限公司 | 操作显示方法、装置、智能镜子及计算机可读存储介质 |
CN109389054A (zh) * | 2018-09-21 | 2019-02-26 | 北京邮电大学 | 基于自动图像识别和动作模型对比的智能镜子设计方法 |
CN110119513A (zh) * | 2018-12-19 | 2019-08-13 | 吉林化工学院 | 一种基于大数据分析的远程日语教学交互系统及交互方法 |
CN110478883A (zh) * | 2019-08-21 | 2019-11-22 | 南京信息工程大学 | 一种健身动作教学及矫正系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111401330A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111401330B (zh) | 教学系统及采用该教学系统的智能镜 | |
Presti et al. | 3D skeleton-based human action classification: A survey | |
Kale et al. | A study of vision based human motion recognition and analysis | |
Thar et al. | A proposal of yoga pose assessment method using pose detection for self-learning | |
CN110711374B (zh) | 多模态舞蹈动作评价方法 | |
Wang et al. | Human posture recognition based on images captured by the kinect sensor | |
CN110705390A (zh) | 基于lstm的形体姿态识别方法、装置及存储介质 | |
Su | Personal rehabilitation exercise assistant with kinect and dynamic time warping | |
CN110490109B (zh) | 一种基于单目视觉的在线人体康复动作识别方法 | |
Ahmed et al. | Kinect-based gait recognition using sequences of the most relevant joint relative angles | |
Avola et al. | Deep temporal analysis for non-acted body affect recognition | |
Anilkumar et al. | Pose estimated yoga monitoring system | |
Chiu et al. | Emotion recognition through gait on mobile devices | |
Yadav et al. | YogNet: A two-stream network for realtime multiperson yoga action recognition and posture correction | |
CN113709411A (zh) | 一种mr智能眼镜基于眼动追踪技术的体育辅助训练系统 | |
CN113255522A (zh) | 基于时间一致性的个性化运动姿态估计与分析方法及系统 | |
CN114998983A (zh) | 一种基于增强现实技术和姿态识别技术的肢体康复方法 | |
Ramirez et al. | Fall detection using human skeleton features | |
WO2023108842A1 (zh) | 基于健身教学训练的动作评价方法及系统 | |
Khosla et al. | Assistive robot enabled service architecture to support home-based dementia care | |
Yurtsever et al. | BabyPose: Real-time decoding of baby’s non-verbal communication using 2D video-based pose estimation | |
CN115188074A (zh) | 一种互动式体育训练测评方法、装置、系统及计算机设备 | |
Dindo et al. | Hankelet-based action classification for motor intention recognition | |
CN111310655A (zh) | 基于关键帧和组合注意力模型的人体动作识别方法和系统 | |
Tian et al. | Design and implementation of dance teaching system based on Unity3D |
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 |