CN109993037A - 动作识别方法、装置、穿戴设备及计算机可读存储介质 - Google Patents
动作识别方法、装置、穿戴设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109993037A CN109993037A CN201810000873.0A CN201810000873A CN109993037A CN 109993037 A CN109993037 A CN 109993037A CN 201810000873 A CN201810000873 A CN 201810000873A CN 109993037 A CN109993037 A CN 109993037A
- Authority
- CN
- China
- Prior art keywords
- data
- human body
- body attitude
- static
- action
- 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
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/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- 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/23—Recognition of whole body movements, e.g. for sport training
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Health & Medical Sciences (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种动作识别方法、装置、穿戴设备及计算机可读存储介质,其中,动作识别方法包括:间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;从人体姿态数据中提取动作特征;根据第一预设动作知识、动作识别参数和动作特征,识别人体姿态数据对应的动作为静态动作或动态动作;若人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和动作特征,识别人体姿态数据对应的动作为静态站立或静态坐;若人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和动作特征,识别人体姿态数据对应的动作为走路或跑步;动作识别参数为根据用户静止站立的静态数据初始化后的参数。本方案动作识别成本低、复杂度低、普遍性高。
Description
技术领域
本发明涉及物联网技术领域,特别是指一种动作识别方法、装置、穿戴设备及计算机可读存储介质。
背景技术
人体动作识别是众多与人相关的智能***中极为重要的一环,通过随身携带的姿态传感器实时监测人体姿态数据,提取人体姿态特征,识别人体动作状态,从而触发智能控制***中后续控制动作,实现更加智能化的设备及环境。
但是,目前用于动作识别的穿戴式设备在穿戴侧只能实现数据采集及数据传输的功能,无论将数据传输到控制台或是云端进行计算,都会对使用场景有较高的要求和限制,增加了控制决策***的计算量及延迟时间。
其次,基于数据训练的动作识别算法需要足够的用户数据来不断提高模型的准确性,通过部分穿戴者的数据训练的识别模型难以普适到一般用户,且出于用户隐私和用户差异性的约束,很难收集到足够的带标签样本进行训练。此外,目前用于动作识别的穿戴式设备用户体验度较差,多数算法通过增加传感器来弥补数据离散化丢失的数据信息,造成传感器的冗余程度高,且算法计算量及存储量大,大大增加了动作识别***的复杂程度。
也就是,已有的动作识别算法需要足够带标签数据进行训练从而构造算法模型,特别是为解决用户数据差异性问题,训练算法需要增加大量差异性样本,不仅增添了人工成本,且无法保证动作识别适用于所有穿戴者。
此外,基于数据的训练模型需要足够的存储空间存储数据和算法,并需要占用大量的计算资源及计算时间完成算法流程。
另外,已有的穿戴式设备在舒适度和智能化方面实现度较差。由于算法的复杂性,穿戴式设备在穿戴侧仅能实现数据采集,对于数据的处理需要传输到其他计算设备上,不仅增加了控制端的计算成本和存储成本,还增大了对数据传输的要求,违背了当前物联网边缘化计算的趋势。
其次,当前算法对数据进行片段化处理及提取简单特征,丢失了数据中的大量信息,一般采用增加传感器的方式增加信息量,从而造成严重的传感器冗余,穿戴者需要佩戴大量的传感器,特别是对传感器的佩戴位置也有严格的限制,极大降低了穿戴式设备的舒适度。
综上,现有的动作识别算法及穿戴式设备不适用于实际的物联网场景。
发明内容
本发明的目的在于提供一种动作识别方法、装置、穿戴设备及计算机可读存储介质,解决现有技术中动作识别方案成本高、复杂度高、普遍性差的问题。
为了解决上述技术问题,本发明实施例提供一种动作识别方法,包括:
间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
从所述人体姿态数据中提取动作特征;
根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
可选的,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
所述从所述人体姿态数据中提取动作特征的步骤包括:
将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
可选的,在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,所述动作识别方法还包括:
获取穿戴设备所采集的用户静止站立时的静态数据;
根据静态加速度数据对所述静态数据进行调整;
根据调整后的静态数据,初始化所述动作识别参数;
其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
可选的,所述静态数据包括用户静止时的三轴加速度数据;
所述根据调整后的静态数据,初始化所述动作识别参数的步骤包括:
将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
可选的,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:
将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
所述根据所述第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作的步骤包括:
根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
可选的,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:
将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值;
所述根据所述第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐的步骤包括:
根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
可选的,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;
所述从所述人体姿态数据中提取动作特征的步骤包括:
根据所述主轴角速度数据,得到主轴角度数据;
根据所述主轴角度数据,得到动作特征。
可选的,所述根据所述主轴角度数据,得到动作特征的步骤包括:
获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
所述根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步的步骤包括:
根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
本发明实施例还提供了一种动作识别装置,包括:
第一获取模块,用于间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
第一提取模块,用于从所述人体姿态数据中提取动作特征;
第一识别模块,用于根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
第二识别模块,用于若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
第三识别模块,用于若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
可选的,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
所述第一提取模块包括:
第一处理子模块,用于将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
可选的,所述动作识别装置还包括:
第二获取模块,用于在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,获取穿戴设备所采集的用户静止站立时的静态数据;
第一处理模块,用于根据静态加速度数据对所述静态数据进行调整;
第二处理模块,用于根据调整后的静态数据,初始化所述动作识别参数;
其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
可选的,所述静态数据包括用户静止时的三轴加速度数据;
所述第二处理模块包括:
第二处理子模块,用于将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
可选的,所述第一处理子模块包括:
第一处理单元,用于将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
所述第一识别模块包括:
第一识别子模块,用于根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
可选的,所述第一处理子模块包括:
第二处理单元,用于将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值;
所述第二识别模块包括:
第二识别子模块,用于根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
可选的,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;
所述第一提取模块包括:
第三处理子模块,用于根据所述主轴角速度数据,得到主轴角度数据;
第四处理子模块,用于根据所述主轴角度数据,得到动作特征。
可选的,所述第四处理子模块包括:
第一获取单元,用于获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
所述第三识别模块包括:
第三识别子模块,用于根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
本发明实施例还提供了一种穿戴设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;所述处理器执行所述程序时实现上述的动作识别方法。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的动作识别方法中的步骤。
本发明的上述技术方案的有益效果如下:
上述方案中,所述动作识别方法通过间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;从所述人体姿态数据中提取动作特征;根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数;
能够将动作知识加入动作识别算法,有效降低传感器数量及传感器佩戴位置的需求,不需要对收集到的原始数据做很复杂的数据处理而是直接使用;且算法精简后,可在低成本的计算芯片上实现,使穿戴式设备在穿戴端实现智能化,直接产生识别结果,消除数据传输的不稳定性和时延性,符合物联网计算边缘化的要求;在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,还可以通过联网对算法进行更新完善,降低实现成本和复杂度,并且本方案可以适用在一般人群上,提高普遍性。
附图说明
图1为本发明实施例的动作识别方法流程示意图;
图2为本发明实施例的静态数据采集示意图;
图3为本发明实施例的静态数据示意图;
图4为本发明实施例的决策树模型示意图;
图5为本发明实施例的用户走路时陀螺仪主动轴角度数据示意图;
图6为本发明实施例的用户站立时陀螺仪主动轴角度数据示意图;
图7为本发明实施例的用户走路姿态分解示意图;
图8为本发明实施例的可穿戴设备框架示意图;
图9为本发明实施例的动作识别方法具体应用流程示意图;
图10为本发明实施例的动作识别装置结构示意图;
图11为本发明实施例的可穿戴设备结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的技术中动作识别方案成本高、复杂度高、普遍性差的问题,提供一种动作识别方法,如图1所示,包括:
步骤11:间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
步骤12:从所述人体姿态数据中提取动作特征;
步骤13:根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
步骤14:若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
步骤15:若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
初始化后的动作识别参数因人而异,实现了针对不同用户的个性化设置,识别结果更加准确。预设时间可优选为1s。
本发明实施例提供的所述动作识别方法通过间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;从所述人体姿态数据中提取动作特征;根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数;
能够将动作知识加入动作识别算法,有效降低传感器数量及传感器佩戴位置的需求,不需要对收集到的原始数据做很复杂的数据处理而是直接使用;且算法精简后,可在低成本的计算芯片上实现,使穿戴式设备在穿戴端实现智能化,直接产生识别结果,消除数据传输的不稳定性和时延性,符合物联网计算边缘化的要求;在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,还可以通过联网对算法进行更新完善,降低实现成本和复杂度,并且本方案可以适用在一般人群上,提高普遍性。
其中,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
对应的,所述从所述人体姿态数据中提取动作特征的步骤包括:将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
进一步的,在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,所述动作识别方法还包括:获取穿戴设备所采集的用户静止站立时的静态数据;根据静态加速度数据对所述静态数据进行调整;根据调整后的静态数据,初始化所述动作识别参数;其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
考虑到实际应用情况,本实施例中,穿戴设备采集的用户静止站立时的静态数据的时间可为3s。
具体的,所述静态数据包括用户静止时的三轴加速度数据;所述根据调整后的静态数据,初始化所述动作识别参数的步骤包括:
将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
AX1表示静态数据中第一轴加速度集合;AX2表示静态数据中第二轴加速度集合;AX3表示静态数据中第三轴加速度集合。
其中,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
对应的,所述根据所述第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作的步骤包括:根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
每一个bi与对应轴向的ai比较,以判断人体姿态数据对应的动作为静态动作还是动态动作。BX1表示人体姿态数据中第一轴加速度集合;BX2表示人体姿态数据中第二轴加速度集合;BX3表示人体姿态数据中第三轴加速度集合。
其中,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值(由x轴加速度数据计算求得,由y轴加速度数据计算求得,由z轴的加速度数据计算求得);
对应的,所述根据所述第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐的步骤包括:根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
根据y轴加速度与重力加速度之间的夹角的余弦值,可设置第一阈值与第二阈值均为0.8,但并不以此为限。BX1表示人体姿态数据中X轴加速度集合;BX2表示人体姿态数据中Y轴加速度集合;BX3表示人体姿态数据中Z轴加速度集合。
其中,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;所述从所述人体姿态数据中提取动作特征的步骤包括:根据所述主轴角速度数据,得到主轴角度数据;根据所述主轴角度数据,得到动作特征。
具体的,所述根据所述主轴角度数据,得到动作特征的步骤包括:获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
对应的,所述根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步的步骤包括:根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
以上只是给出了关于静态(坐、站)、动态(跑、走)的示例识别,本方案同样可以适用于识别用户的躺姿、跪姿、喝水等静态动作,也可以适用于识别用户的骑车、跑楼梯等动态动作,只需要依据相关动作知识(物理知识),获取相应的传感数据即可实现,在此不再赘述。
下面对本发明实施例提供的动作识别方法进行进一步说明。
针对上述技术问题,本发明实施例提供了一种动作识别方法,可具体通过将动作知识加入动作识别算法,有效降低传感器数量及传感器佩戴位置的需求,且算法精简后,可在低成本的计算芯片上实现,使穿戴式设备在穿戴端实现智能化,直接产生识别结果,消除数据传输的不稳定性和时延性,符合物联网计算边缘化的要求。
本发明实施例可具体基于穿戴在身体上的运动传感器实时获取数据,其中包括加速度数据、陀螺仪数据等,并通过与传感器相连的ATmega328P芯片(8位微控制器、16兆赫兹计算速度、2KB的随机存取存储器以及32KB的闪存容量)以1秒为时间周期进行动作特征提取以及动作识别,最终实现在计算资源受限情况下的动作识别算法及设备。本发明实施例中的动作识别算法不需要使用训练数据进行模型训练,完全是结合相关运动姿态来自动进行动作识别,并且本发明中的动作识别方法以及穿戴设备可以适用在一般人群上,使用时只需要求用户将设备穿戴在身体的指定位置并原地站立不动3秒进行设备的初始化即可。
首先,本发明实施例可基于惯性测量单元IMU实时获取加速度、角速度等运动数据,数据收集频率可在20赫兹左右,并且本发明实施例中的算法不需要对收集到的原始数据做很复杂的数据处理而是直接使用;其次,根据运动规律并结合相关动作特征将每个周期内的数据进行特征提取,利用上述特征进行动作识别;最后,结合各个动作的特点以及通过传感器数据获取到的动作特征,构造决策树算法,并将该算法写入到芯片中。
本发明中的方法与设备几乎可以针对所有用户,并且在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,并且设备可以通过联网对算法进行更新完善。
具体的,本发明提供一种基于动作特征的自适应动作识别方法及计算资源受限下的穿戴设备,通过获取人体的姿态传感数据,提取动作特征,在有限计算资源下识别用户通过穿戴设备执行的动作姿态,所述方法包括如下操作:
1.在识别前令用户按照要求穿戴设备并静止站立3秒进行模型初始化,根据收集到的用户静态数据,调整分类模型中的相关参数(动作识别参数),进而实现动作识别的个性化;
2.设备中的传感器以20HZ左右频率获取人体的姿态传感数据,包括三轴加速度以及主活动轴的偏转角度。对所述人体姿态数据分段,存储1秒内人体动作数据序列;
3.通过上述动作序列提取动作特征,根据所识别的人体动作知识构造决策树模型,对1秒动作周期内所获取的动作特征进行分类。
相应的,提供了一套受限资源下的动作识别装置,其中涉及到动作识别算法的模块包括:
传感器数据采集模块,用于采集人体姿态数据,包括三轴加速度和主动作轴角度。
动作识别模块,用于提取姿态数据特征,并根据不同使用者的身体特征初始化决策树模型,对动作数据进行分类。
其中,在操作1中,由于不同使用者的身体数据差异较大,使传回的数据对模型的参数有很大影响,为了增强使用体验,要求佩戴者将传感器按一定姿态放置某一位置(例如将传感器绑到穿戴者膝盖上方,如图2),尽可能减少用户初始化的过程,设备启动时仅需要采集使用者3s内的静态数据,通过静态加速度数据对传感器方向数据(静态数据)进行调整,消除用户身体一般性抖动,并更新动作识别模型中的参数(动作识别参数),使分类模型能自适应于使用者及使用者所在环境。
在操作2中,以20HZ频率采集使用者动作数据,包括三轴加速度和主动轴角度,存储1秒时间段内人体动作数据序列,实际收集到的运动数据如图3所示(ACC_X表示X轴向的静态数据,ACC_Y表示Y轴向的静态数据,ACC_Z表示Z轴向的静态数据,ANGLE_MAINAXIS表示陀螺仪主轴的静态数据)。在受限资源下,数据采集频率和分片长度选取应既满足完整记录单个动作变化过程,又满足存储空间的限制。经多次实验证明,人体基本动作出现动作反复的周期短于1秒,20HZ采样频率可基本呈现所有基本动作的动作规律及动作特征。姿态数据通常包括三轴加速度,三轴角速度和三轴磁力计数据,通过对大量基本动作的分析,三轴加速度可用于区分使用者行为属于动态行为或者静态行为,重力所在的加速度轴可用于区分具体静态动作,角度特征可用于区分具体动态动作。由于佩戴者动作与朝向无关,且大多数基本动作仅有一个主动轴,主动轴的角度数据加之三轴加速度数据的辅助可对上述数据可进行精简,降低传感器的性能需求及处理***的存储需求。RAM仅需为单个传感器预留32KB左右的存储空间,存储当前1秒的原始数据。
在操作3中,通过相应算法分析人体动作规律及动作特征,本发明实施例中考虑站立、坐、走路、跑步等一系列基本动作。由于不同使用者之间动作数据差别较大,难以通过数据迁移或模型迁移用于新使用者的动作识别,因此本发明实施例将动作数据上升到动作知识层面,不需要采集大量的样本对模型进行训练,也可以克服使用者数据上呈现的差异问题。对动作知识的总结归纳可以通过构造出更有分辨力的特征简化计算过程,同时动作知识比动作数据更具有普适性,可适应于相互间差异较大的使用者。另外,通过动作知识可以构造出精简的决策树模型,每个分叉点的判断条件是同一大类下某两类差别最大的动作之间的动作区分知识,用知识代替数据比较可更好的实现动作分类,具体如图4所示。
以直立、静坐、行走、跑步四个可基于单个传感器识别的动作为例,简单描述动作知识算法的处理流程。
这里算法通过在操作1初始化阶段获得的用户静态数据来生成知识1所需要的识别向量(动作识别参数)aDS=[a1,a2,a3],这里令Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n],分别为初始化阶段记录的三轴加速度数据,那么通过下列公式:
计算得到;
这里β为经验参数,通过相应物理知识学习生成,其他参数含义可参见上述描述,在此不再赘述。
首先,基于知识1(第一预设动作知识),算法利用三轴加速度数据计算进而判断动态动作(走路、跑步)与静态动作(站立、坐)。这样在动作识别过程中将记录到的单位周期内的三轴加速度数据 通过以下计算:
得到向量[b1,b2,b3],参数含义可参见上述描述,在此不再赘述。
若存在至少一个bi,使得bi<ai,那么算法就将该单位周期的动作识别为静态动作,反之为动态动作。
对于静态动作的判别,这里算法使用到知识2(第二预设动作知识)。算法通过识别静态动作中加速度在三个坐标轴上夹角的不同对静态动作做进一步的划分。在操作1中要求传感器佩戴的方向使传感器y轴同重力加速度重合,对于单位周期内的三轴加速数据,算法通过计算确定佩戴者的肢体角度,这里由y轴加速度数据计算求得,若α大于通过知识所设定的一个阈值,那么则认为该静态动作为站立;在坐姿时,重力加速度同z轴重合,此时对于单位周期内的三轴加速度数据,算法通过计算确定佩戴者的肢体角度,这里由z轴的加速度数据计算求得,若γ大于通过知识所设定的一个阈值,那么则认为该静态动作为坐。公式中参数含义可参见上述描述,在此不再赘述。
对于动态动作的判别,这里算法使用到知识3(第三预设动作知识)。算法通过识别动态动作中陀螺仪在主动轴上的角度数据来进行进一步的识别,图5与图6分别为走路与站立时陀螺仪主动轴角度数据。走路时,主动轴的角度数据有明显的特征,可以看出走路时的角度数据呈现的形状类似于正弦波,存在波峰、波谷。结合图7,可以细致的将走路分解成几种姿态,图7的几种姿态对应角度数据分别呈现为波谷、中间、波峰、中间、波谷。算法通过计算在单位周期内陀螺仪角度数据是否存在波峰或者波谷,以及波峰、波谷的个数进而判断识别走路或者跑步。首先,结合知识3,计算出单位周期内陀螺仪主动轴角度中的波峰波谷的个数,记为θ,若θ等于1,识别该动态动作为走路;若θ大于或等于2,可进一步推断该动态动作为跑步。结合人类走路规律,一个波峰或者波谷可以代表一步,知识3可以简单理解为通过计算一秒内人的步数来判断走路还是跑步。
在上述装置中,传感器数据采集模块用于采集人体姿态数据,包括三轴加速度和主动作轴角度(X轴陀螺仪-主轴角速度),可放置在人体颈部、躯干、四肢等人体多刚体模型关键部位。典型的人体多刚体模型包括11个关键位置,经多次实验验证,对于本发明中涉及的4个动作可通过置于大腿位置的单个传感器收集到的动作数据就可以进行动作识别,不需要用户佩戴大量的传感器。
在尽可能减少传感器的情况下,本发明同样可以识别躺姿、跪姿、喝水等若干静态动作,及骑车、爬楼梯等若干动态动作,通过运动知识减少训练数据需求,降低传感器的冗余度。结合上述内容可以看出算法是将运动知识融合进动作识别***,有效缩短基于数据的模型开发周期及降低动作识别模型对数据及计算资源的需求。
动作识别模块中,根据上述对数据及算法的分析,本发明实施例中的动作识别方法不需要事先采集带标签的动作数据,且分类算法精简,运算处理模块仅采用ATmega328p微控制器(运算时钟16MHZ,2KB RAM,32KB flash)即可满足处理需求。由于算法本身可自适应不同用户的动作识别,无需外加云端或控制器对算法及数据进行修正和调整,整个动作识别模块可集成在穿戴设备上,在设备端即可得到识别结果,还可根据需要传到其他设备上进行后续处理。
本发明中的可穿戴设备的结构框图如图8所示,包括:三轴加速度计、主动轴陀螺仪、电池、复位电路、ATmega328p、控制模块、显示模块、WiFi模块以及决策***(可用于成人为儿童作出决策)。
本发明实施例提供的方案的执行流程可具体如图9所示,包括:
步骤91:采集穿戴者站立3s的数据,计算动作特征相关参数,构建个性化的动作识别模型;
步骤92:以20Hz左右频率采集穿戴者的姿态数据,更新并存储1s内的传感器数据;
步骤93:基于运动知识构造动作识别特征,将1s内的部分传感器数据压缩为一维特征向量;
步骤94:基于决策树模型,对获取的动作特征向量进行分类,识别当前的动作状态。
由上可知,本发明实施例提供的方案基于穿戴在身体上的运动传感器实时获取数据,其中包括加速度数据、陀螺仪数据等,并通过与传感器相连的ATmega328P芯片(8位微控制器、16兆赫兹计算速度、2KB的随机存取存储器以及32KB的闪存容量)以1秒为时间周期进行动作特征提取以及动作识别,最终实现在计算资源受限情况下的动作识别算法及设备。
首先,本发明实施例是通过挖掘人体各个动作物理规律,并将其整合进决策树模型当中,这样省去了使用训练数据学习模型的过程;其次,本发明中穿戴设备十分精简,整个算法可以在成本很低的单片机中完成计算处理,并能实时返回结果,整个设备可以在计算资源受限或者无法与云端进行数据交互的情况下正常使用;再次,本发明中的算法以及数据处理过程与现有方案相比有着很大的不同,选取的动作特征也有所不同;最后,本发明针对一般用户群体,对于使用设备的新用户来说不需要繁琐的数据录入或者初始化步骤即可立即使用。本发明中的方法与设备几乎可以针对所有用户,并且在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,并且设备可以通过联网对算法进行更新完善。
综上所述,本发明实施例提出的一种资源受限下基于动作特征的自适应动作识别方法及穿戴设备可以克服已有的动作识别方法无法在KB级的单片机上实现(当计算能力有限时,已有的方法会因此受到很大的影响)的缺陷,本发明中的方法通过结合运动规律构建出的动作识别算法,不需要事先录入训练数据进行算法学习,无需过多的传感器以及图像数据,大大精简了算法复杂度;并且本发明实施例提供的方案适用一般人群,当用户使用时无需进行复杂的数据校正,用户体验自然。
本发明实施例还提供了一种动作识别装置,如图10所示,包括:
第一获取模块101,用于间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
第一提取模块102,用于从所述人体姿态数据中提取动作特征;
第一识别模块103,用于根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
第二识别模块104,用于若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
第三识别模块105,用于若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
本发明实施例提供的所述动作识别装置通过间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;从所述人体姿态数据中提取动作特征;根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数;
能够将动作知识加入动作识别算法,有效降低传感器数量及传感器佩戴位置的需求,不需要对收集到的原始数据做很复杂的数据处理而是直接使用;且算法精简后,可在低成本的计算芯片上实现,使穿戴式设备在穿戴端实现智能化,直接产生识别结果,消除数据传输的不稳定性和时延性,符合物联网计算边缘化的要求;在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,还可以通过联网对算法进行更新完善,降低实现成本和复杂度,并且本方案可以适用在一般人群上,提高普遍性。
其中,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
对应的,所述第一提取模块包括:
第一处理子模块,用于将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
进一步的,所述动作识别装置还包括:第二获取模块,用于在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,获取穿戴设备所采集的用户静止站立时的静态数据;第一处理模块,用于根据静态加速度数据对所述静态数据进行调整;第二处理模块,用于根据调整后的静态数据,初始化所述动作识别参数;其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
具体的,所述静态数据包括用户静止时的三轴加速度数据;所述第二处理模块包括:第二处理子模块,用于将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
其中,所述第一处理子模块包括:第一处理单元,用于将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
对应的,所述第一识别模块包括:第一识别子模块,用于根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
其中,所述第一处理子模块包括:第二处理单元,用于将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值;
对应的,所述第二识别模块包括:第二识别子模块,用于根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
其中,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;所述第一提取模块包括:第三处理子模块,用于根据所述主轴角速度数据,得到主轴角度数据;第四处理子模块,用于根据所述主轴角度数据,得到动作特征。
具体的,所述第四处理子模块包括:第一获取单元,用于获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
对应的,所述第三识别模块包括:第三识别子模块,用于根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
其中,上述动作识别方法的所述实现实施例均适用于该动作识别装置的实施例中,也能达到相同的技术效果。
本发明实施例还提供了一种穿戴设备,如图11所示,包括存储器111、处理器112及存储在所述存储器111上并可在所述处理器112上运行的计算机程序113;所述处理器112执行所述程序时实现上述的动作识别方法。
具体的,所述处理器执行所述程序时实现如下步骤:
间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
从所述人体姿态数据中提取动作特征;
根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
本发明实施例提供的所述穿戴设备通过间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;从所述人体姿态数据中提取动作特征;根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数;
能够将动作知识加入动作识别算法,有效降低传感器数量及传感器佩戴位置的需求,不需要对收集到的原始数据做很复杂的数据处理而是直接使用;且算法精简后,可在低成本的计算芯片上实现,使穿戴式设备在穿戴端实现智能化,直接产生识别结果,消除数据传输的不稳定性和时延性,符合物联网计算边缘化的要求;在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,还可以通过联网对算法进行更新完善,降低实现成本和复杂度,并且本方案可以适用在一般人群上,提高普遍性。
其中,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
对应的,所述从所述人体姿态数据中提取动作特征的步骤包括:将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
进一步的,在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,所述动作识别方法还包括:获取穿戴设备所采集的用户静止站立时的静态数据;根据静态加速度数据对所述静态数据进行调整;根据调整后的静态数据,初始化所述动作识别参数;其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
具体的,所述静态数据包括用户静止时的三轴加速度数据;所述根据调整后的静态数据,初始化所述动作识别参数的步骤包括:
将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
其中,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
对应的,所述根据所述第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作的步骤包括:根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
其中,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值;
对应的,所述根据所述第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐的步骤包括:根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
其中,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;所述从所述人体姿态数据中提取动作特征的步骤包括:根据所述主轴角速度数据,得到主轴角度数据;根据所述主轴角度数据,得到动作特征。
具体的,所述根据所述主轴角度数据,得到动作特征的步骤包括:获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
对应的,所述根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步的步骤包括:根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
其中,上述动作识别方法的所述实现实施例均适用于该穿戴设备的实施例中,也能达到相同的技术效果。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的动作识别方法中的步骤。
具体的,该程序被处理器执行时实现如下步骤:
间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
从所述人体姿态数据中提取动作特征;
根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
本发明实施例提供的所述计算机可读存储介质上存储的计算机程序通过间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;从所述人体姿态数据中提取动作特征;根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数;
能够将动作知识加入动作识别算法,有效降低传感器数量及传感器佩戴位置的需求,不需要对收集到的原始数据做很复杂的数据处理而是直接使用;且算法精简后,可在低成本的计算芯片上实现,使穿戴式设备在穿戴端实现智能化,直接产生识别结果,消除数据传输的不稳定性和时延性,符合物联网计算边缘化的要求;在计算资源受限以及不依赖云端进行信息交互的情况下做出精准的动作识别,还可以通过联网对算法进行更新完善,降低实现成本和复杂度,并且本方案可以适用在一般人群上,提高普遍性。
其中,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
对应的,所述从所述人体姿态数据中提取动作特征的步骤包括:将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
进一步的,在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,所述动作识别方法还包括:获取穿戴设备所采集的用户静止站立时的静态数据;根据静态加速度数据对所述静态数据进行调整;根据调整后的静态数据,初始化所述动作识别参数;其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
具体的,所述静态数据包括用户静止时的三轴加速度数据;所述根据调整后的静态数据,初始化所述动作识别参数的步骤包括:
将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
其中,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
对应的,所述根据所述第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作的步骤包括:根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
其中,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值;
对应的,所述根据所述第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐的步骤包括:根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
其中,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;所述从所述人体姿态数据中提取动作特征的步骤包括:根据所述主轴角速度数据,得到主轴角度数据;根据所述主轴角度数据,得到动作特征。
具体的,所述根据所述主轴角度数据,得到动作特征的步骤包括:获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
对应的,所述根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步的步骤包括:根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
其中,上述动作识别方法的所述实现实施例均适用于该计算机可读存储介质的实施例中,也能达到相同的技术效果。
需要说明的是,此说明书中所描述的许多功能部件都被称为模块/子模块/单元/子单元,以便更加特别地强调其实现方式的独立性。
本发明实施例中,模块/子模块/单元/子单元可以用软件实现,以便由各种类型的处理器执行。举例来说,一个标识的可执行代码模块可以包括计算机指令的一个或多个物理或者逻辑块,举例来说,其可以被构建为对象、过程或函数。尽管如此,所标识模块的可执行代码无需物理地位于一起,而是可以包括存储在不同位里上的不同的指令,当这些指令逻辑上结合在一起时,其构成模块并且实现该模块的规定目的。
实际上,可执行代码模块可以是单条指令或者是许多条指令,并且甚至可以分布在多个不同的代码段上,分布在不同程序当中,以及跨越多个存储器设备分布。同样地,操作数据可以在模块内被识别,并且可以依照任何适当的形式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个数据集被收集,或者可以分布在不同位置上(包括在不同存储设备上),并且至少部分地可以仅作为电子信号存在于***或网络上。
在模块可以利用软件实现时,考虑到现有硬件工艺的水平,所以可以以软件实现的模块,在不考虑成本的情况下,本领域技术人员都可以搭建对应的硬件电路来实现对应的功能,所述硬件电路包括常规的超大规模集成(VLSI)电路或者门阵列以及诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立的元件。模块还可以用可编程硬件设备,诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等实现。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述原理前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种动作识别方法,其特征在于,包括:
间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
从所述人体姿态数据中提取动作特征;
根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
2.根据权利要求1所述的动作识别方法,其特征在于,所述人体姿态数据包括用户的人体姿态的三轴加速度数据;
所述从所述人体姿态数据中提取动作特征的步骤包括:
将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征。
3.根据权利要求2所述的动作识别方法,其特征在于,在间隔预设时间获取穿戴设备所采集的用户的人体姿态数据之前,所述动作识别方法还包括:
获取穿戴设备所采集的用户静止站立时的静态数据;
根据静态加速度数据对所述静态数据进行调整;
根据调整后的静态数据,初始化所述动作识别参数;
其中,所述静态加速度数据用于消除用户静止站立时抖动产生的数据。
4.根据权利要求3所述的动作识别方法,其特征在于,所述静态数据包括用户静止时的三轴加速度数据;
所述根据调整后的静态数据,初始化所述动作识别参数的步骤包括:
将调整后的静态数据中的三轴加速度设为Ax1=[acc11,...,acc1n],Ax2=[acc21,...,acc2n],Ax3=[acc31,...,acc3n];acc1n表示第一轴向第n个加速度数值,acc2n表示第二轴向第n个加速度数值,acc3n表示第三轴向第n个加速度数值;利用如下公式:
i=1,2,3,ai表示第i个轴向的初始加速度;accij表示静态数据中第i个轴向第j组的轴向加速度数据,表示静态数据中第i个轴向的轴向加速度平均值,n表示轴向加速度数据的总组数;β表示预设经验参数,通过相应物理知识学习生成;
将调整后的静态数据中的三轴加速度压缩为一维特征向量数据,得到初始化后的动作识别参数aDS=[a1,a2,a3]。
5.根据权利要求4所述的动作识别方法,其特征在于,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:
将所述人体姿态数据中的三轴加速度设为: 表示第一轴向第m个加速度数值,表示第二轴向第m个加速度数值,表示第三轴向第m个加速度数值;利用如下公式:
i=1,2,3,bi表示第i个轴向的目标加速度;表示人体姿态数据中第i个轴向第j组的轴向加速度数据,表示人体姿态数据中第i个轴向的轴向加速度平均值,m表示轴向加速度数据的总组数;
将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,得到第一目标向量[b1,b2,b3],作为第一动作特征;
所述根据所述第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作的步骤包括:
根据第一预设动作知识确定,若存在至少一个bi,满足bi<ai,则所述人体姿态数据对应的动作为静态动作,否则为动态动作。
6.根据权利要求2所述的动作识别方法,其特征在于,所述将所述三轴加速度数据压缩为一维特征向量数据,得到动作特征的步骤包括:
将所述人体姿态数据中的三轴加速度设为: 表示x轴第m个加速度数值,表示y轴第m个加速度数值,表示z轴第m个加速度数值;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第一肢体角度α,作为第二动作特征;
利用公式:将所述人体姿态数据中的三轴加速度压缩为一维特征向量数据,确定用户的第二肢体角度γ,作为第三动作特征;
其中,表示人体姿态数据中x轴向的轴向加速度平均值,表示人体姿态数据中y轴向的轴向加速度平均值,表示人体姿态数据中z轴向的轴向加速度平均值;
所述根据所述第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐的步骤包括:
根据第二预设动作知识确定,若α大于所设定的第一阈值,则所述人体姿态数据对应的动作为静态站立;若γ大于所设定的第二阈值,则所述人体姿态数据对应的动作为静态坐。
7.根据权利要求1所述的动作识别方法,其特征在于,所述人体姿态数据包括用户的人体姿态的主轴角速度数据;
所述从所述人体姿态数据中提取动作特征的步骤包括:
根据所述主轴角速度数据,得到主轴角度数据;
根据所述主轴角度数据,得到动作特征。
8.根据权利要求7所述的动作识别方法,其特征在于,所述根据所述主轴角度数据,得到动作特征的步骤包括:
获取所述主轴角度数据中存在的波峰波谷个数,记为θ,作为第四动作特征;
所述根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步的步骤包括:
根据第三预设动作知识确定,若θ等于1,则所述人体姿态数据对应的动作为走路;若θ大于或等于2,则所述人体姿态数据对应的动作为跑步。
9.一种动作识别装置,其特征在于,包括:
第一获取模块,用于间隔预设时间获取穿戴设备所采集的用户的人体姿态数据;
第一提取模块,用于从所述人体姿态数据中提取动作特征;
第一识别模块,用于根据第一预设动作知识、动作识别参数和所述动作特征,识别所述人体姿态数据对应的动作为静态动作或动态动作;
第二识别模块,用于若所述人体姿态数据对应的动作为静态动作,则根据第二预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为静态站立或静态坐;
第三识别模块,用于若所述人体姿态数据对应的动作为动态动作,则根据第三预设动作知识和所述动作特征,识别所述人体姿态数据对应的动作为走路或跑步;
其中,所述动作识别参数为根据用户静止站立的静态数据初始化后的参数。
10.一种穿戴设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;其特征在于,所述处理器执行所述程序时实现如权利要求1至8中任一项所述的动作识别方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8中任一项所述的动作识别方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810000873.0A CN109993037B (zh) | 2018-01-02 | 2018-01-02 | 动作识别方法、装置、穿戴设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810000873.0A CN109993037B (zh) | 2018-01-02 | 2018-01-02 | 动作识别方法、装置、穿戴设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109993037A true CN109993037A (zh) | 2019-07-09 |
CN109993037B CN109993037B (zh) | 2021-08-06 |
Family
ID=67128817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810000873.0A Active CN109993037B (zh) | 2018-01-02 | 2018-01-02 | 动作识别方法、装置、穿戴设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109993037B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866450A (zh) * | 2019-10-21 | 2020-03-06 | 桂林医学院附属医院 | 一种帕金森病监测方法、装置及存储介质 |
CN111166340A (zh) * | 2019-12-31 | 2020-05-19 | 石家庄学院 | 基于自适应加速度信号分割的人体姿势实时识别方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104713568A (zh) * | 2015-03-31 | 2015-06-17 | 上海帝仪科技有限公司 | 步态识别方法以及相应的计步器 |
CN105242779A (zh) * | 2015-09-23 | 2016-01-13 | 歌尔声学股份有限公司 | 一种识别用户动作的方法和移动智能终端 |
CN105718857A (zh) * | 2016-01-13 | 2016-06-29 | 兴唐通信科技有限公司 | 一种人体异常行为检测方法及*** |
US9479730B1 (en) * | 2014-02-13 | 2016-10-25 | Steelcase, Inc. | Inferred activity based conference enhancement method and system |
CN106203484A (zh) * | 2016-06-29 | 2016-12-07 | 北京工业大学 | 一种基于类别分层机制的人体运动状态分类方法 |
US20170161380A1 (en) * | 2015-12-04 | 2017-06-08 | Chiun Mai Communication Systems, Inc. | Server and music service providing system and method |
CN106951852A (zh) * | 2017-03-15 | 2017-07-14 | 深圳汇创联合自动化控制有限公司 | 一种有效的人体行为识别*** |
CN107085246A (zh) * | 2017-05-11 | 2017-08-22 | 深圳合优科技有限公司 | 一种基于mems的人体动作识别方法和装置 |
CN107220617A (zh) * | 2017-05-25 | 2017-09-29 | 哈尔滨工业大学 | 人体姿态识别***及方法 |
-
2018
- 2018-01-02 CN CN201810000873.0A patent/CN109993037B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9479730B1 (en) * | 2014-02-13 | 2016-10-25 | Steelcase, Inc. | Inferred activity based conference enhancement method and system |
CN104713568A (zh) * | 2015-03-31 | 2015-06-17 | 上海帝仪科技有限公司 | 步态识别方法以及相应的计步器 |
CN105242779A (zh) * | 2015-09-23 | 2016-01-13 | 歌尔声学股份有限公司 | 一种识别用户动作的方法和移动智能终端 |
US20170161380A1 (en) * | 2015-12-04 | 2017-06-08 | Chiun Mai Communication Systems, Inc. | Server and music service providing system and method |
CN105718857A (zh) * | 2016-01-13 | 2016-06-29 | 兴唐通信科技有限公司 | 一种人体异常行为检测方法及*** |
CN106203484A (zh) * | 2016-06-29 | 2016-12-07 | 北京工业大学 | 一种基于类别分层机制的人体运动状态分类方法 |
CN106951852A (zh) * | 2017-03-15 | 2017-07-14 | 深圳汇创联合自动化控制有限公司 | 一种有效的人体行为识别*** |
CN107085246A (zh) * | 2017-05-11 | 2017-08-22 | 深圳合优科技有限公司 | 一种基于mems的人体动作识别方法和装置 |
CN107220617A (zh) * | 2017-05-25 | 2017-09-29 | 哈尔滨工业大学 | 人体姿态识别***及方法 |
Non-Patent Citations (4)
Title |
---|
LEVI MALOTT: "《Detecting Self-harming Activities with Wearable Devices》", 《2015 IEEE INTERNATIONAL CONFERENCE ON PERVASIVE COMPUTING AND COMMUNICATION WORKSHOPS (PERCOM WORKSHOPS)》 * |
MUHAMMAD ARIF ET AL.: "《Physical Activities Monitoring Using Wearable Acceleration Sensors Attached to the Body》", 《PLOS ONE》 * |
王壮: "《可穿戴设备中的人体姿态识别方法》", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
蔡靖 等: "《基于人体传感和 Android 技术的运动监测***设计与实现》", 《微电子技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110866450A (zh) * | 2019-10-21 | 2020-03-06 | 桂林医学院附属医院 | 一种帕金森病监测方法、装置及存储介质 |
CN111166340A (zh) * | 2019-12-31 | 2020-05-19 | 石家庄学院 | 基于自适应加速度信号分割的人体姿势实时识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109993037B (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111291841B (zh) | 图像识别模型训练方法、装置、计算机设备和存储介质 | |
CN106295476B (zh) | 人脸关键点定位方法和装置 | |
CN110569795B (zh) | 一种图像识别方法、装置以及相关设备 | |
CN110675475B (zh) | 一种人脸模型生成方法、装置、设备及存储介质 | |
CN106530926B (zh) | 基于Myo臂带及视线追踪的虚拟假手训练平台及其训练方法 | |
CN111414839B (zh) | 基于姿态的情感识别方法及装置 | |
CN112131985B (zh) | 一种基于OpenPose改进的实时轻量人体姿态估计方法 | |
CN103678859B (zh) | 动作比对方法与动作比对*** | |
CN111460872A (zh) | 图像处理方法及装置、图像设备及存储介质 | |
KR20220025023A (ko) | 애니메이션 처리 방법 및 장치, 컴퓨터 저장 매체 그리고 전자 디바이스 | |
CN106923839A (zh) | 运动辅助装置、运动辅助方法以及记录介质 | |
Seiffert et al. | Next generation cooperative wearables: Generalized activity assessment computed fully distributed within a wireless body area network | |
Hnoohom et al. | Human activity recognition using triaxial acceleration data from smartphone and ensemble learning | |
US20190325780A1 (en) | Physical movement analysis | |
CN108871341A (zh) | 一种全局优化的并发定位与建图方法 | |
CN109614925A (zh) | 服饰属性识别方法和装置、电子设备、存储介质 | |
CN109847366A (zh) | 用于游戏的数据处理方法和装置 | |
CN110058699A (zh) | 一种基于智能移动设备传感器的用户行为识别方法 | |
CN111461042A (zh) | 跌倒检测方法及*** | |
CN109993037A (zh) | 动作识别方法、装置、穿戴设备及计算机可读存储介质 | |
CN109498375A (zh) | 一种人体运动意图识别控制装置及控制方法 | |
CN109993135A (zh) | 一种基于增强现实的手势识别方法、***及装置 | |
CN109407826A (zh) | 球类运动模拟方法、装置、存储介质及电子设备 | |
JP2021135995A (ja) | アバター表情生成システム及びアバター表情生成方法 | |
CN105046193B (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 |