CN115188071A - 姿态识别方法、装置和电子设备 - Google Patents

姿态识别方法、装置和电子设备 Download PDF

Info

Publication number
CN115188071A
CN115188071A CN202210791514.8A CN202210791514A CN115188071A CN 115188071 A CN115188071 A CN 115188071A CN 202210791514 A CN202210791514 A CN 202210791514A CN 115188071 A CN115188071 A CN 115188071A
Authority
CN
China
Prior art keywords
information
key point
point information
sub
gesture
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.)
Pending
Application number
CN202210791514.8A
Other languages
English (en)
Inventor
秦敬一
黄翀宇
付浩翔
罗晨
鲁威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202210791514.8A priority Critical patent/CN115188071A/zh
Publication of CN115188071A publication Critical patent/CN115188071A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本公开实施例公开了的姿态识别方法、装置和电子设备,通过在接收到候选姿态信息和关键点信息之后;还会根据关键点信息确定是否响应候选姿态信息所指示的姿态。也即,会根据用户第二部分的关键点信息,确定是否响应用户第一部分的姿态。

Description

姿态识别方法、装置和电子设备
技术领域
本公开涉及互联网技术领域,尤其涉及一种姿态识别方法、装置和电子设备。
背景技术
随着科学技术的发展,终端应用所具备的功能也越来越完善,例如,一些终端设备还支持手势控制,例如,当用户执行某个手势之后,可能会执行终端设备执行相应的指令。举例说明,终端设备可能是一个智能音乐播放器,当用户执行了某个手势之后,可以切换当前正在播放的歌曲。
发明内容
提供该公开内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该公开内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
本公开实施例提供了一种姿态识别方法、装置和电子设备,可以实现对用户的第一部分的姿态更加准确地响应,也即,可以对用户误触发姿态进行识别,从而提升姿态响应的准确性。
第一方面,本公开实施例提供了一种姿态识别方法,包括:接收候选姿态信息和关键点信息,其中,上述候选姿态信息和上述关键点信息这两者对应同一用户,上述候选姿态信息指示第一部位的姿态为预定义姿态,上述关键点信息指示上述用户的第二部位的关键点;基于上述关键点信息,确定是否响应上述候选姿态信息所指示的姿态。
第二方面,本公开实施例提供了一种姿态识别装置,包括:接收单元,用于接收候选姿态信息和关键点信息,其中,上述候选姿态信息和上述关键点信息这两者对应同一用户,上述候选姿态信息指示第一部位的姿态为预定义姿态,上述关键点信息指示上述用户的第二部位的关键点;确定单元,用于基于上述关键点信息,确定是否响应上述候选姿态信息所指示的姿态。
第三方面,本公开实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行,使得上述一个或多个处理器实现如第一方面上述的姿态识别方法。
第四方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面上述的姿态识别方法的步骤。
本公开实施例提供的姿态识别方法、装置和电子设备,通过在接收到候选姿态信息和关键点信息之后;还会根据关键点信息确定是否响应候选姿态信息所指示的姿态。也即,会根据用户第二部分的关键点信息,确定是否响应用户第一部分的姿态。可见,在本公开中,虽然候选姿态信息所指示的姿态为预定义姿态,但是,还是会根据第二部分的关键点信息对是否响应第一部分的姿态进行判断,从而也就可以避免误响应某些姿态。换言之,这样可以实现对用户的第一部分的姿态更加准确地响应。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1是根据本公开的姿态识别方法的一个实施例的流程图;
图2是根据本公开的姿态识别方法的一个实施例的用户的部分区分示意图;
图3A和3B是根据本公开的姿态识别方法的另一个实施例的关键点分别示意图;
图4是根据本公开的姿态识别装置的一个实施例的结构示意图;
图5是本公开的一个实施例的姿态识别方法可以应用于其中的示例性系统架构;
图6是根据本公开实施例提供的电子设备的基本结构的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
请参考图1,其示出了根据本公开的姿态识别方法的一个实施例的流程。该姿态识别方法可以应用于终端设备(例如,智能家电)。如图1所示该姿态识别方法,包括以下步骤:
步骤101,接收候选姿态信息和关键点信息。
在这里,候选姿态信息和关键点信息这两者对应同一用户,候选姿态信息指示第一部位的姿态为预定义姿态,关键点信息指示用户的第二部位的关键点。
在这里,一个候选姿态信息可以对应一个人体关键点信息。
作为示例,第一部位和第二部位可以不同。例如,第一部位为用户的第一只手,而第二部位则可以为用户除去第一只手的其它部位。当然,第一部位和第二部位具体为那些部位,可以根据实际情况进行限定,在此,并不对第一部位和第二部位的具体部位进行限定。
为了便于更好地理解第一部位和第二部位,可以结合图2进行理解,图2可以理解为用户部位示意图,如图2所示,第一部位201和第二部位202可以是用户不同的部位。
作为示例,执行主体可以通过关键点信息所指示的关键点的数目和位置,确定用户第二部位的形态。例如,第二部位包括人体肢体,则可以通过关键点信息确定用户是否正对执行主体、用户是否坐着、用户是否站着等。
作为示例,预定义姿态可以根据实际应用场景进行定义,例如,第一部位为手时,当用户做出手掌的姿态、用户比‘耶’的姿态、用户握紧拳头的姿态等姿态均可以根据实际情况,确定是否将其中的部分或者全部定义为预定义姿态。
步骤102,基于关键点信息,确定是否响应候选姿态信息所指示的姿态。
作为示例,执行主体可以通过关键点信息,确定用户当前第二部位的形态,从而,即可基于用户关键点信息,确定用户的第一部位做出该姿态是有意控制执行主体,还是无意制执行主体。
在一些实现方式中,确定是否响应候选姿态信息所指示的姿态也可以理解为:确定候选姿态信息所指示的姿态是否未用户误触发的姿态。
例如,执行主体可以响应用户做出的‘拳头’手势,若用户面对执行主体,而做出了‘拳头’手势,则可以表征用户是有意控制执行主体,而当用户并未正对执行主体,且做出了该‘拳头’手势,则可能是用户在与其它用户聊天而做出了这个手势,此时则可以认为用户无意控制执行主体。此时,显然可以不响应该候选姿态信息所指示的姿态。
在相关技术中,当接收到所指示的姿态为预定义姿态的候选姿态信息,则可以直接响应该候选姿态信息所指示姿态。这样,则可能存在大量的误响应的情况。
可见,在本公开中,在接收到候选姿态信息和关键点信息之后;还会根据关键点信息确定是否响应候选姿态信息所指示的姿态。也即,会根据用户第二部分的关键点信息,确定是否响应用户第一部分的姿态。可见,在本公开中,虽然候选姿态信息所指示的姿态为预定义姿态,但是,还是会根据第二部分的关键点信息对是否响应第一部分的姿态进行判断,从而也就可以避免误响应某些姿态。换言之,这样可以实现对用户的第一部分的姿态更加准确地响应。
在一些实施例中,步骤102(基于关键点信息,确定是否响应候选姿态信息所指示的姿态)具体可以包括:基于关键点信息,确定用户的第二部位的姿态;基于确定的第二部位的姿态,确定是否响应候选姿态信息所指示的姿态。
在这里,第一部位的姿态与第二部位的姿态应该相互对应。例如,第一部位为用户的第一只手,第二部位为用户除去第一只手的其它部位。若用户的第一只手正对执行主体做出某个手势时,用户的第二部位实际也应该正对执行主体,若校验到用户第二部位的姿态并未正对执行主体,显然,可能的情况是用户误将第一部位做出了某个姿态,此时,则可以确定不响应候选姿态信息所指示的姿态。
可见,利用第二部位的姿态,可以确定用户当前的一个形态,而利用用户的当前形态,确定用户做出第一部位的姿态时状态,例如,用户是否面向执行主体。这样,通过判断用户是否在对执行主体所做出的姿态;更为准确地判断用户当前第一部位的姿态是否针对执行主体。
在一些实施例中,上述基于关键点信息,确定用户的第二部位的姿态具体可以包括:基于关键点信息所指示的关键点的数目,以及关键点信息所指示的关键点之间的位置关系,确定第二部位的姿态。
作为示例,可以预先关键点姿态对应表,而关键点姿态对应表中可以记录关键点数目和关键点位置关系与姿态之间的对应关系。
当然,在具体实施方式中,具体如何根据关键点的数目,以及关键点信息所指示的关键点之间的位置关系,确定第二部位的姿态可以根据实际情况进行限定。
作为示例,本申请的应用场景为手势识别的应用场景,在该场景中,候选姿态信息和关键点信息均可以从视频帧图像中进行获取,因此,可以以视频帧的左侧顶端为坐标原点,并以像素点作为单位,记录各关键点的坐标,之后,即可根据个关键点的坐标,确定各关键点的位置关系。当然,在具体实施方式中,如何确定关键点的位置关系可以根据实际情况进行限定。
在这里,同时利用关键点的数目和关键点的位置关系,可以较为准确的确定第二部位的姿态。例如,关键点的数目,可以确定用户的第二部位是否朝向执行主体,而关键点的位置关系,可以进一步确定用户的第二部位的当前姿态,这样,可以使得针对第二部位的姿态判断更加准确。
在一些实施例中,关键点信息包括至少一个子关键点信息,子关键点信息用于指示子部位的关键点,此时,步骤102(基于关键点信息,确定是否响应候选姿态信息所指示的姿态)具体可以包括:确定各子关键点信息对应的校验方式;根据确定的校验方式对子关键点信息进行校验,并基于子关键点信息的校验结果,确定是否响应候选姿态信息所指示的姿态。
作为示例,关键点信息可以包括至少一个子关键点信息,此时,对各子关键点信息进行校验,可以使得每次校验的数据量较少。
而由于根据子关键点信息的校验结果可以确定是否响应候选姿态信息所指示的姿态;这样,也可以使得确定结果更加准确。例如,当用户的某个子部位不满足校验条件时,则可以确定不响应候选姿态信息所指示的姿态(也即,当用户的某个子部位不满足校验条件时,则可以确定当前用户的第一部位的姿态是误触发的。而子部位可以理解为子关键点信息所指示的部位)。
为了便于理解关键点信息所指示的第二部位和子关键点信息所指示的子部位的关系,进行举例说明,例如,第二部位为除去用户手部的其它部位,而子部位则可以理解为:眼部、头部、肩部、髋部等。
在一些实施例中,上述根据确定的校验方式对子关键点信息进行校验具体可以包括:确定对各子关键点信息的校验顺序;根据确定的校验顺序对子关键点信息进行校验,并根据上一子关键点信息的校验结果,确定是否对下一子部位信息进行校验。
在一些实现场景中,当上一子关键信息的校验结果为校验失败时,此时,则可以无需对下一子关键信息进行校验。这样,也就可以提升确定是否响应候选姿态信息所指示的姿态的效率,同时也可以节约计算资源。
在一些实施例中,可以根据针对各子关键点信息所对应的校验时长,确定针对各子关键点信息的校验顺序。
作为示例,第二部位可能包括了多个子部位,而各子关键点信息所指示的子部位不同,这样,使得针对各子关键点信息的校验时长可能不同。例如,各子关键点信息中的关键点数目不同、各子关键点信息的需要经过校验步骤不同等因素,会造成针对各子关键点信息进行校验的校验时长不同。
作为示例,校验顺序可以指示先针对校验时长较短的子关键点信息进行校验。而这样则可以更加高效地确定是否响应候选姿态信息所指示的姿态。也即,校验顺序可以指示根据校验时长由短至长的顺序,依次对各子关键点信息进行校验。
在一些实施例中,响应于确定任一子关键点信息校验失败,确定不响应候选姿态信息所指示的姿态。
也即,当任一子关键点信息校验失败时,则可以确定不响应该候选姿态信息所指示的姿态;这样,不仅可以减少了需要处理的数据量,也可以提升处理效率,并可以节约计算资源。
例如,关键点信息可以包括3个子关键点信息,当针对三个子关键信息进行排序之后,则可以先对排序第一的子关键点信息进行校验,若排序第一的子关键点信息校验失败,则无需在校验排序第二的子关键点信息和排序第三的子关键点信息,而是直接确定不响应该候选姿态信息所指示的姿态。
为了便于理解,进行举例说明,例如,关键点信息包括子关键点信息A、子关键点信息B和子关键点信息C;若校验子关键点信息A需要5毫秒,校验子关键点信息B需要15毫秒,校验子关键点信息C需要20毫秒。若先校验子关键点信息A,则仅需5毫秒即可确定是否响应候选姿态信息所指示的姿态。若先校验子关键点信息B在校验子关键点信息A,则可能需要20毫秒才能确定是否响应候选姿态信息所指示的姿态。可见,根据校验时长由短到长的顺序,依次对各子关键点信息进行排序校验,可以更加高效地确定是否响应候选姿态信息所指示的姿态。
在一些实施例中,关键点信息可以包括以下至少一项:肢体关键点信息、眼部关键点信息、髋关节关键点信息、肩关节关键点信息。
作为示例,关键点信息具体包括哪些信息可以根据实际情况进行限定,在此并不对人体关键点信息具体所包括的信息进行限定。
在一些实施例中,当关键点信息包括肢体关键点信息、眼部关键点信息、髋关节关键点信息、肩关节关键点信息时;确定的校验顺序可以依次为:校验肢体关键点信息、校验眼部关键点信息、校验髋关节关键点信息、校验肩关节关键点信息。
作为示例,通过这样的校验方式,可以更加快捷地确定是否响应候选姿态信息所指示的姿态。例如,校验肢体关键点信息可以确定用户是否正对执行主体,校验眼部关键点信息可以确定用户是否注视执行主体,校验髋关节关键点信息和肩关节关键点信息可以进一步地确定用户姿态,从而可以更加准确地判断该候选姿态信息所指示的姿态是否为误触发姿态。
在一些实施例中,可以通过如下方式对子关键点信息进行校验:
利用子关键点信息所指示的子部位的姿态和/或子关键点信息的置信度,对子关键点信息进行校验。
作为示例,子部位的姿态可以一定程度反映用户第一部位所执行的姿态是有意还是无意的。
作为示例,子关键点信息的置信度可以表征该子关键点信息的一个置信程度,而子关键点信息的置信度与拍摄时的背景、光线等相关。因此,根据子关键点信息的置信度,可以确定该子关键点信息是否可靠。
也即,无论是子部位的姿态不符合校验条件,还是子关键点信息不符合校验条件,均将可以判定该子关键点信息不符合校验条件(校验失败)。
需要说明的是,在实际应用场景中,具体选用子关键点信息所指示的子部位的姿态对子关键点信息进行校验,还是选用子关键点信息的置信度进行校验,还是两者都选用,可以根据实际情况进行合理选取,在此并不对具体的校验方式进行限定。
在一些实现场景中,当同时选用子关键点信息所指示的子部位的姿态对子关键点信息和子关键点信息的置信度进行子关键点信息的校验时,可以先校验子关键点信息所指示的子部位的姿态,再校验子关键点信息的置信度。这样,当子关键点信息所指示的子部位的姿态失败时,则可以无需校验子关键点信息的置信度,节约校验时间,而且,校验子关键点信息的置信度相较于校验子关键点信息所指示的子部位的姿态更加复杂,校验时间更长,这种校验方式,也就可以节约计算资源,以及可以提高校验效率。
在一些实施例中,可以通过如下方式确定子关键点信息所指示的子部位的姿态。
基于子关键点信息所指示的子关键点数目,确定该子关键点信息所指示的子部位的姿态。
作为示例,当用户执行某个姿态时,子关键点信息所指示的子部位的关键点的数目应该是一定的。例如,当用户针对执行主体时,用户躯干的子关键点数目应该为15,此时,校验到该子关键点信息所指示的数目为10,则可以表征用户并未正对执行主体。为了便于理解,可以结合图3A-3B进行说明,图3A-3B是用户的某个部位的关键点分布图,图3A可以理解用户面对执行主体时,该部位的关键点分布图,图3B可以表征当前检测到的关键点分布图,从图3B可见,图3B中的关键点相较于图3A明显少了一半,因此,此时用户的正面并未正对执行主体,而是用户的侧面侧面与执行主体对应。
在这里,通过基于子关键点信息所指示的子关键点数目,确定该子关键点信息所指示的子部位的姿态,可以更加高效地确定子部位的姿态,从而也就可以更为高效地实现对子关键点信息的校验。
为了更好的理解本公开针对各种子关键点信息的校验方式,下面依次描述针对肢体关键点信息、眼部关键点信息、髋关节关键点信息、肩关节关键点信息的校验方式。
在一些实施例中,关键点信息可以包括肢体关键点信息,此时,可以通过如下方式对肢体关键点信息进行校验:
基于肢体关键点信息所指示的肢体关键点的数目和/或肢体关键点的位置,对肢体关键点信息进行校验。
作为示例,肢体关键点的数目与预设的肢体关键点数目不匹配,则可以表征用户此时的姿态可能并未正对执行主体,此时,则可以确定肢体关键点信息校验失败。
作为示例,肢体关键点的位置与预定义的位置不匹配,也可以表征用户此时的姿态可能并未正对执行主体,此时,则可以确定肢体关键点信息校验失败。
作为示例,肢体关键点的位置与预定义的位置不匹配可以理解为:肢体关键点之间的分布关系与预定义的关键点之间的分布关系不匹配。例如,3个肢体关键点成锐角三角形分布,而预定义的3个关键点成钝角三角形分布。
作为示例,可以以第一视频帧图像的左上角为坐标原点,建立二维坐标系,然后,以第一视频帧图像中的像素点表征肢体关键点的位置。当然,具体实施方式中,可以用来表征肢体关键点位置的方式还有很多,在此并不对表征肢体关键点位置的方式进行限定。需要说明的是,此处的第一视频帧图像可以理解为用于获取候选姿态信息和关键点信息的图像。
可见,当关键点信息包括肢体关键点信息时,可以通过校验肢体关键点的数目和/或肢体关键点的位置,即可对肢体关键点信息进行校验。
在这里,当利用校验肢体关键点的数目,确定肢体关键点信息是否校验合格时,由于校验肢体关键点的数目需要处理的数据量小,从而可以很快的得出校验结果,也即,可以高效地获得校验结果。
在这里,当利用肢体关键点的位置,确定肢体关键点信息进行校验时,可以更加准确的确定用户的姿态,也就使得校验结果更加准确。
在这里,当同时利用校验肢体关键点的位置和校验肢体关键点的数目对肢体关键点信息进行校验时,可以先校验肢体关键点的数目,在肢体关键点数目满足条件时,再校验肢体关键点的位置。这样,不仅可以提升校验效率,而且可以使得校验的结果更加准确。
在一些实施例中,还可以结合肢体关键点信息的置信度,对该肢体关键点信息进行校验。
作为示例,可以基于第一视频帧图像的阴影比例、第一视频帧图像对应的背景光线强度等,确定肢体关键点信息的置信度。
在一些实施例中,人体关键点信息还可以包括眼部关键点信息,此时,可以通过如下方式对眼部关键点信息进行校验:
可以基于眼部关键点信息所指示的眼部关键点数目和/或眼部关键点信息对应的置信度,对眼部关键点信息进行校验。
作为示例,当眼部关键点信息所指示的眼部关键点数目与预设的眼部关键点数目不匹配,则可以确定眼部关键点信息校验失败。例如,眼部关键点信息所指示的眼部关键点数目为5,误差为1,也即,当眼部关键点信息所指示的眼部关键点数目为4-6时,眼部关键点信息所指示的眼部关键点数目与预设的眼部关键点数目都匹配,若当眼部关键点信息所指示的眼部关键点数目为7时,则眼部关键点信息所指示的眼部关键点数目与预设的眼部关键点数目不匹配。
作为示例,眼部关键点信息对应的置信度可以表征眼部关键点信息的真实性。
作为示例,可以根据第一视频帧图像的阴影度、第一视频帧图像中包括的内容的多少等信息,确定眼部关键点信息对应的置信度。当然,再具体实施方式中,如何确定眼部关键点信息对应的置信度,可以根据实际情况进行限定。
作为示例,当眼部关键点信息对应的置信度低于预设眼部关键点置信度阈值时,则可以表征眼部关键点信息校验失败。当然,预设眼部关键点置信度阈值可以根据实际情况进行限定。
在一些实现场景中,当利用眼部关键点信息所指示的眼部关键点数目和眼部关键点信息对应的置信度来校验眼部关键点信息是否合格时,可以先校验眼部关键点数目再校验关键点信息对应的置信度;这样,可以提升校验的效率。
在一些实施例中,关键点信息可以包括髋关节关键点信息,以及,可以通过如下方式对髋关节关键点信息进行校验:
基于髋关节关键点信息所指示的髋关节关键点数目和/或髋关节关键点信息对应的置信度,对髋关节关键点信息进行校验。
同理,当利用髋关节关键点信息所指示的髋关节关键点数目和/或髋关节关键点信息对应的置信度,对髋关节关键点信息进行校验的方式,与上述对眼部关键点信息进行校验的方式类似,为了说明书的简洁,在此不再进行赘述。而通过这样的校验方式,也可以较地确定实现对髋关节关键点信息的校验。
在一些实施例中,关键点信息可以包括髋关节关键点信息,以及,可以通过如下方式对髋关节关键点信息进行校验:
基于髋关节关键点信息指示的髋关节关键点数目,对髋关节关键点信息进行第一次校验;响应于确定髋关节关键点信息满足第一次校验条件,基于髋关节关键点信息的置信度,对髋关节关键点信息进行第二次校验;响应于确定髋关节关键点信息满足第二次校验条件,利用髋关节关键点信息和候选姿态信息确定第一部位与髋关节的差异系数,并基于第一部位与髋关节的差异系数对髋关节关键点信息进行第三次校验。
作为示例,对髋关节关键点信息进行三次校验,可以使得确定的髋关节关键点信息的校验结果更加准确,从而也就可以使得判断该候选姿态信息所指示的姿态是否为误触发姿态的判断结果更加准确。
作为示例,第一部位与髋关节的差异系数也可以表征用户的第一部位与髋关节的差异性。通常情况下,当用户执行某个动作时,第一部位与髋关节的差异系数应该在一个波动的范围内,若第一部位与髋关节的差异系数不在这个波动范围内,则可以表征用户当前的姿态不对。
具体而言,髋关节关键点信息满足第一次校验条件可以表征用户的髋关节姿态可能满足条件,髋关节关键点信息满足第二次校验条件可以表征该髋关节关键点信息的真实性较高,而髋关节关键点信息满足第三次校验条件可以表征此时用户的髋关节姿态满足条件。通过三次校验,可以保证校验的准确性。
在一些实现方式中,可以优先对髋关节关键点信息指示的髋关节关键点数目进行校验,也就实现了先校验较为简单的校验项目,在校验较为复杂的校验项目,从而也就可以进一步提升校验效率。
在一些实现方式中,可以通过如下方式获得第一部位与髋关节的差异系数:
以第一视频帧的左上角为坐标原点建立坐标系,此时,设定髋关节垂直方向坐标为
Figure BDA0003730923910000151
第一部位的第i个关键点的坐垂直方向坐标为
Figure BDA0003730923910000152
则有
差异系数
Figure BDA0003730923910000153
差异系数γ可以理解为第一部位与髋关节的差异系数。而当利用上述公式计算第一部位与髋关节的差异系数时,计算出的差异系数应该在1.35左右,例如,应该在1.25-1.45之间,若计算出的差异系数γ超过这个区间,则可以表征第三次校验不合格。
在一些实施例中,关键点信息可以包括肩关节关键点信息,以及,通过如下方式确定对肩关节关键点信息进行校验:
基于肩关节关键点信息所指示的髋关节关键点数目和/或上述肩关节关键点信息对应的置信度,对肩关节关键点信息进行校验。
同理,当利用髋关节关键点信息所指示的髋关节关键点数目和/或髋关节关键点信息对应的置信度,对髋关节关键点信息进行校验的方式与上述对眼部关键点信息进行校验的方式类似,为了说明书的简洁,在此不再进行赘述。而通过这样的校验方式,也可以较地实现对髋关节关键点信息的校验。
在一些实施例中,关键点信息可以包括肩关节关键点信息,以及,可以通过如下方式对肩关节关键点信息进行校验:
基于肩关节关键点信息所指示的肩关节关键点数目,对肩关节关键点信息进行第一次校验;响应于确定肩关节关键点信息满足第一次校验条件,基于肩关节关键点信息的置信度,对肩关节关键点信息进行第二次校验;响应于确定肩关节关键点信息满足第二次校验条件,利用肩关节关键点信息和候选姿态信息确定第一部位与肩关节的差异系数,并基于第一部位与肩关节的差异系数对肩关节关键点信息进行第三次校验。
在这里,对肩关节关键点信息进行三次校验,可以使得确定的肩关节关键点信息的校验结果更加准确,从而也就可以使得判断该候选姿态信息所指示的姿态是否为误触发姿态的判断结果更加准确。
作为示例,第一部位与肩关节的差异系数也可以表征用户的第一部位与肩关节的差异性。通常情况下,当用户执行某个动作时,第一部位与肩关节的差异系数应该在一个波动的范围内,若第一部位与肩关节的差异系数不在这个波动范围内,则可以表征用户当前的姿态不对。
具体而言,肩关节关键点信息满足第一次校验条件可以表征用户的肩关节姿态可能满足条件,肩关节关键点信息满足第二次校验条件可以表征该肩关节关键点信息的真实性较高,肩关节关键点信息满足第三次校验条件可以表征此时用户的肩关节姿态是符合要求的。通过三次校验,可以保证校验的准确性。
在一些实现方式中,优先对肩关节关键点信息指示的肩关节关键点数目进行校验,也就实现了先校验较为简单的校验项目,在校验较为复杂的校验项目,从而也就可以进一步提升校验效率。
在一些实现方式中,可以通过如下方式获得第一部位与肩关节的差异系数:
以第一视频帧的左上角为坐标原点建立坐标系,此时,设定肩关节垂直方向坐标为
Figure BDA0003730923910000171
第一部位的第i个关键点的水平方向坐标为
Figure BDA0003730923910000172
则有
手肩差异系数
Figure BDA0003730923910000173
Figure BDA0003730923910000174
在这里,差异系数β可以理解为第一部位与肩关节的差异系数。而当利用上述公式计算第一部位与肩关节的差异系数时,计算出的差异系数应该在-0.85左右,例如,应该在-0.8至-0.9之间,若计算出的差异系数β超过这个区间,则可以表征第三校验不合格。
在一些实施例中,当候选姿态信息用于指示用户的第一只手的手部姿态,肩关节关键点信息包括用于指示该用户的第二只手的肩部关键点的信息。
在一些实现方式中,肩关节关键点信息包括用于指示该用户的第二只手的肩部关键点的信息,这样,在校验肩关节关键点信息所指示的肩部关键点数目时,可以仅校验第二只手的肩部关节点数目,从而也就可以提升校验效率。相应的,在进行目标肢体与肩关节的差异系数计算时,也可以仅采用第二只手的肩部关键点,这样,也可以提升校验效率。
同时,当用户面对执行主体时,第二只手通常无遮挡,从而使得第二只手的肩部图像可能阴影较少,也即,第二只手的关键点信息真实性可能较高,这样,利用第二只手的关键点信息来进行检查,可以使得校验结果更加准确。
在一些实施例中,确定响应候选姿态信息所指示的姿态,基于候选姿态信息的置信度和关键点信息的置信度,确定候选姿态信息是否为目标姿态信息。
在这里,目标姿态信息所指示的姿态为待执行姿态。
需要说明的是,在一个视频帧图像中,可能有多个用户图像,相应的,则可能获取到多个候选姿态信息;且可能响应多个候选姿态信息(例如,这多个候选姿态信息所指示的姿态均不是误触发的姿态)。
此处,多个候选姿态信息所指示的姿态可能不同,因此,可能会在则多个候选姿态信息中确定是否存在目标姿态信息。例如,可以根据候选姿态信息的置信度进行确定,和/或,根据候选姿态信息所指示的姿态与预定义姿态的匹配度进行确定。
而多个候选姿态信息中,可能并没有一个目标姿态信息。例如,例如,多个用户都在作某个姿态,若检测到这些姿态都不是误触发的,因此,都会响应这些候选姿态信息,但是,由于这些用户在执行姿态时,执行的动作并不标准,此时这些姿态也就并不是待执行姿态,从而使得这些候选姿态信息并非目标姿态信息。
作为示例,待执行姿态可以理解为:执行主体等待执行的姿态,也即,执行主体可能会根据该姿态进行某些指令。而通常情况下,执行主体不会在确定目标姿态信息之后,立即执行该目标姿态信息,因为此时目标姿态信息仅是一张视频帧图像所对应的目标姿态信息,为了执行的准确性,执行主体可能会继续校验接下来的视频帧图像所对应的目标姿态信息是否与当前视频帧图像所对应的目标姿态信息相匹配,若是,则可以执行该目标姿态信息所对应的指令。例如,执行主体此时可以实现翻页、调节音量、开启、关闭等功能。
在这里,基于候选姿态信息的置信度和关键点信息的置信度,确定候选姿态信息是否为目标姿态信息也就可以理解为:确定用户触发的非误触发姿态的有效性。而同时考虑候选姿态信息的置信度和关键点信息的置信度,可以使得确定结果更加准确。
在一些实现方式中,还可以考虑候选姿态信息所指示的姿态与标准姿态的相似度,这样,可以进一步提升确定结果的准确性。
为了更好地理解本公开中的执行过程,下面列举一种执行主体可能的执行方式。
在一些实施例中,当多个候选姿态信息中包括目标姿态信息时,还可以将第一视频帧图像作为基准视频帧图像,并继续校验第一预设数目的视频帧图像;根据第一预设数目中的匹配视频帧图像的数目,确定是否执行该目标姿态信息所指示的姿态。
在这里,匹配视频帧图像确定的目标姿态信息与基准视频帧图像中确定的目标姿态信息相匹配。
作为示例,通过继续校验第一预设数目的视频帧图像,并根据第一预设数目中的匹配视频帧图像的数目,确定是否执行该目标姿态信息所指示的姿态。可以进一步确保执行主体执行的准确性。
例如,第一视频帧图像确定的待执行姿态为姿态B,若继续校验第一预设数目的视频帧图像,所确定的待执行姿态均和姿态B不匹配,可见,第一视频帧图像中的待执行姿态确定出错,从而也就可以不执行姿态B。
当然,第一预设数目可以根据实际情况进行设定,例如,可以为7。此时,若匹配视频帧图像的数目不小于5,则可以执行该目标姿态信息所指示的姿态,反之,则不执行该目标姿态信息所指示的姿态。
在一些实施例中,响应于确定第一预设数目中的匹配视频帧图像的数目不小于预设数值阈值,执行基准视频帧图像所确定的目标姿态信息所指示的姿态。
在这里,第一预设数目中的匹配视频帧图像的数目不小于预设数值阈值,则可以表征第一预设数目中的大部分视频帧图像确定的目标姿态信息,与基准视频帧图像确定的目标姿态信息相匹配。这样,也就可以确定用户是需要执行主体执行的姿态为基准视频帧图像所确定目标信息所指示的姿态。因此,此时可以响应基准视频帧图像所确定的目标信息所指示的姿态。这样,可以使得执行主体的执行过程更加精确。
需要说明的是,第一预设数目和预设数值阈值可以根据实际情况进行合理设定。例如,第一预设数目为7,预设数值阈值可以为5。
在一些实施例中,响应于确定第一预设数目中的匹配视频帧图像的数目小于预设数值阈值,基于第一预设数目的视频帧图像中各视频帧图像确定的目标姿态信息,更新确定的基准视频帧图像。
在这里,第一预设数目中的匹配视频帧图像的数目小于预设数值阈值,则可以表征第一预设数目中的大部分视频帧图像确定的目标姿态信息,均与基准视频帧图像确定的目标姿态信息不匹配,此时,可能用户并非需要执行主体执行当前基准视频帧图像所确定的目标姿态信息所指示的姿态。因此,可以基于第一预设数目的视频帧图像中各视频帧图像确定的目标姿态信息,更新确定的基准视频帧图像。这样,也就可以保证执行主体可以更加精确的执行指令。
换言之,确定第一预设数目中的匹配视频帧图像的数目小于预设数值阈值,也可以理解为第一预设数目中的大部分视频帧图像中所确定的待执行姿态,与基准视频帧图像确定的待执行姿态不同。
在一些实施例中,可以根据第一预设数目中各视频帧中的时间先后顺序,更新确定的基准视频帧图像。
作为示例,根据时间的现有顺序,更新确定的基准视频帧图像,可以使得用户执行的姿态可以被较快地被执行,也即,可以缩短用户做出姿态到执行主体执行姿态所需的时间。
为了便于理解,举例说明,当前视频帧图像为视频帧1,第一数目的视频帧图像可以为视频帧2-8。若视频帧1确定的目标姿态信息与视频帧2-8中大部分视频帧所确定的目标姿态信息均不匹配,此时,则可以将视频帧2作为基准视频帧图像。此时,则可以比较视频帧3-9中各视频帧确定的目标姿态信息与视频帧2确定的目标姿态信息。若此时选择视频帧8作为基准视频帧图像,则需要等待视频帧图像15确定目标姿态信息完毕,才能确定是否执行目标姿态信息所指示的姿态。可见,通过时间顺序更新基准视频帧图像,可以缩短用户做出姿态到执行主体执行姿态所需的时间。
在一些实施例中,候选姿态信息和关键点信息均从第一视频帧获取,以及,可以通过如下方式从第一视频帧中获取候选姿态信息和关键点信息:将第一视频帧图像输入至预建神经网络模型,获得初始姿态信息和关键点信息;基于预定义姿态,对获得的初始姿态信息进行筛选,获得候选姿态信息。
在这里,可以通过如下方式获得预建神经网络模型:
获取训练用样本图像集合和初始神经网络模型,
利用训练用样本图像集合中的训练样本图像对初始神经网络模型进行训练,获得预建神经网络模型。
作为示例,利用预建神经网络模型获取第一视频帧图像中的初始姿态信息和人体关键点信息,使得更加快捷且准确地获取到初始姿态信息和关键点信息。这样,也就可以加快缩短用户做出姿态到执行主体执行姿态所需的时间。
作为示例,基于预定义姿态,对获得的初始姿态信息进行筛选,这样,可以节约执行主体进行校验的信息数目,从而也就可以节约校验时间。
在一些实施例中,在上述基于预定义姿态,对获得的初始姿态信息进行筛选之前,上述方法还可以包括:
利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,和/或,对初始姿态信息进行信息增强处理。
在这里,利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,可以节约后续需要处理的初始姿态信息的数量,从而可以加快整个手势识别过程。
在这里,对初始姿态信息进行信息增强处理,可以使得后续手势识别过程中,更易查找需要的特征,从而也可以加快整个手势识别过程。
在一些应用场景中,既利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,又对初始姿态信息进行信息增强处理时,可以先利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,在对初始姿态信息进行信息增强处理,这样,可以使得进行增强处理的数据量减少,从而可以加快处理效率。
在一些应用场景中,既利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,又对初始姿态信息进行信息增强处理时,可以先对初始姿态信息进行信息增强处理,在利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,这样,可以使得筛选的效果更好。
当然,具体采用何种处理先后顺序,可以根据实际使用情况进行合理设定即可。
进一步参考图4,作为对上述各图所示方法的实现,本公开提供了一种姿态识别装置的一个实施例,该装置实施例与图1所示的姿态识别方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例的姿态识别装置包括:接收单元401,用于接收候选姿态信息和关键点信息,其中,上述候选姿态信息和上述关键点信息这两者对应同一用户,上述候选姿态信息指示第一部位的姿态为预定义姿态,上述关键点信息指示上述用户的第二部位的关键点;确定单元402,用于基于上述关键点信息,确定是否响应上述候选姿态信息所指示的姿态。
在一些实施例中,上述关键点信息包括至少一个子关键点信息,子关键点信息用于指示子部位的关键点,以及,上述确定单元402还用于:确定各子关键点信息对应的校验方式;根据确定的校验方式对子关键点信息进行校验,并基于子关键点信息的校验结果,确定是否响应上述候选姿态信息所指示的姿态。
在一些实施例中,上述确定单元402还用于:确定对各子关键点信息的校验顺序;根据确定的校验顺序对子关键点信息进行校验,并根据上一子关键点信息的校验结果,确定是否对下一子部位信息进行校验。
在一些实施例中,上述确定单元402还用于:响应于确定任一子关键点信息校验失败,确定不响应上述候选姿态信息所指示的姿态。
在一些实施例中,上述确定单元402还用于:通过如下方式对子关键点信息进行校验:
利用子关键点信息所指示的子部位的姿态和/或子关键点信息的置信度,对子关键点信息进行校验。
在一些实施例中,上述确定单元402还用于:通过如下方式确定子关键点信息所指示的子部位的姿态:
基于子关键点信息所指示的子关键点数目以及各子关键点之间的位置关系,确定该子关键点信息所指示的子部位的姿态。
在一些实施例中,上述关键点信息包括髋关节关键点信息,上述确定单元402还用于:通过如下方式对上述髋关节关键点信息进行校验:
基于髋关节关键点信息所指示的髋关节关键点数目,对上述髋关节关键点信息进行第一次校验;响应于确定上述髋关节关键点信息满足第一次校验条件,基于上述髋关节关键点信息的置信度,对上述髋关节关键点信息进行第二次校验;响应于确定上述髋关节关键点信息满足第二次校验条件,利用上述髋关节关键点信息和上述候选姿态信息确定上述第一部位与髋关节的差异系数,并基于上述第一部位与髋关节的差异系数对上述髋关节关键点信息进行第三次校验。
在一些实施例中,上述人体关键点信息包括肩关节关键点信息,以及,上述确定单元402还用于:通过如下方式对上述肩关节关键点信息进行校验:基于肩关节关键点信息所指示的肩关节关键点数目,对上述肩关节关键点信息进行第一次校验;响应于确定上述肩关节关键点信息满足第一次校验条件,基于上述肩关节关键点信息的置信度,对上述肩关节关键点信息进行第二次校验;响应于确定上述肩关节关键点信息第二次校验合格,利用上述肩关节关键点信息和上述候选姿态信息确定上述第一部位与肩关节的差异系数,并基于上述第一部位与肩关节的差异系数对上述肩关节关键点信息进行第三次校验。
在一些实施例中,候选姿态信息用于指示用户的第一只手的手部姿态,肩关节关键点信息包括用于指示该用户的第二只手的肩部关键点的信息。
在一些实施例中,上述关键点信息包括以下至少一项:肢体关键点信息、眼部关键点信息、髋关节关键点信息、肩关节关键点信息。
在一些实施例中,上述装置还用于响应于确定响应上述候选姿态信息所指示的姿态,基于上述候选姿态信息的置信度和上述关键点信息的置信度,确定上述候选姿态信息是否为目标姿态信息,其中,上述目标姿态信息所指示的姿态为待执行姿态。
在一些实施例中,候选姿态信息和关键点信息均从第一视频帧获取,以及,上述装置还用于通过如下方式从上述第一视频帧中获取候选姿态信息和关键点信息:将上述第一视频帧图像输入至预建神经网络模型,获得初始姿态信息和关键点信息;基于预定义姿态,对获得的初始姿态信息进行筛选,获得候选姿态信息;其中,通过如下方式获得预建网络模型:
获取训练用样本图像集合和初始神经网络模型,
利用上述训练用样本图像集合中的训练样本图像对上述初始神经网络模型进行训练,获得上述预建神经网络模型。
在一些实施例中,上述装置还用于利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,和/或,对初始姿态信息进行信息增强处理。
请参考图5,图5示出了本公开的一个实施例的姿态识别方法可以应用于其中的示例性系统架构。
如图5所示,系统架构可以包括终端设备501、502、503,网络504,服务器505。网络504可以用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备501、502、503可以通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种客户端应用,例如网页浏览器应用、搜索类应用、新闻资讯类应用。终端设备501、502、503中的客户端应用可以接收用户的指令,并根据用户的指令完成相应的功能,例如根据用户的指令在信息中添加相应信息。
终端设备501、502、503可以是硬件,也可以是软件。当终端设备501、502、503为硬件时,可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。当终端设备501、502、503为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器505可以是提供各种服务的服务器,例如接收终端设备501、502、503发送的信息获取请求,根据信息获取请求通过各种方式获取信息获取请求对应的展示信息。并展示信息的相关数据发送给终端设备501、502、503。
需要说明的是,本公开实施例所提供的信息处理方法可以由终端设备执行,相应地,姿态识别装置可以设置在终端设备501、502、503中。此外,本公开实施例所提供的姿态识别方法还可以由服务器505执行,相应地,信息处理装置可以设置于服务器505中。
应该理解,图4中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本公开实施例的电子设备(例如图5中的终端设备或服务器)的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置508加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收候选姿态信息和关键点信息,其中,上述候选姿态信息和上述关键点信息这两者对应同一用户,上述候选姿态信息指示第一部位的姿态为预定义姿态,上述关键点信息指示上述用户的第二部位的关键点;基于上述关键点信息,确定是否响应上述候选姿态信息所指示的姿态。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收候选姿态信息和关键点信息的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (16)

1.一种姿态识别方法,其特征在于,包括:
接收候选姿态信息和关键点信息,其中,所述候选姿态信息和所述关键点信息这两者对应同一用户,所述候选姿态信息指示第一部位的姿态为预定义姿态,所述关键点信息指示所述用户的第二部位的关键点;
基于所述关键点信息,确定是否响应所述候选姿态信息所指示的姿态。
2.根据权利要求1所述的方法,其特征在于,所述关键点信息包括至少一个子关键点信息,子关键点信息用于指示子部位的关键点,以及,所述基于所述关键点信息,确定是否响应所述候选姿态信息所指示的姿态,包括:
确定各子关键点信息对应的校验方式;
根据确定的校验方式对子关键点信息进行校验,并基于子关键点信息的校验结果,确定是否响应所述候选姿态信息所指示的姿态。
3.根据权利要求2所述的方法,其特征在于,所述根据确定的校验方式对子关键点信息进行校验;包括:
确定对各子关键点信息的校验顺序;
根据确定的校验顺序对子关键点信息进行校验,并根据上一子关键点信息的校验结果,确定是否对下一子部位信息进行校验。
4.根据权利要求2所述的方法,其特征在于,所述基于子关键点信息的校验结果,确定是否响应所述候选姿态信息所指示的姿态,包括:
响应于确定任一子关键点信息校验失败,确定不响应所述候选姿态信息所指示的姿态。
5.根据权利要求2所述的方法,其特征在于,通过如下方式对子关键点信息进行校验:
利用子关键点信息所指示的子部位的姿态和/或子关键点信息的置信度,对子关键点信息进行校验。
6.根据权利要求5所述的方法,其特征在于,通过如下方式确定子关键点信息所指示的子部位的姿态:
基于子关键点信息所指示的子关键点数目以及各子关键点之间的位置关系,确定该子关键点信息所指示的子部位的姿态。
7.根据权利要求2所述的方法,其特征在于,所述关键点信息包括髋关节关键点信息,以及,通过如下方式对所述髋关节关键点信息进行校验:
基于髋关节关键点信息所指示的髋关节关键点数目,对所述髋关节关键点信息进行第一次校验;
响应于确定所述髋关节关键点信息满足第一次校验条件,基于所述髋关节关键点信息的置信度,对所述髋关节关键点信息进行第二次校验;
响应于确定所述髋关节关键点信息满足第二次校验条件,利用所述髋关节关键点信息和所述候选姿态信息确定所述第一部位与髋关节的差异系数,并基于所述第一部位与髋关节的差异系数对所述髋关节关键点信息进行第三次校验。
8.根据权利要求2所述的方法,其特征在于,所述人体关键点信息包括肩关节关键点信息,以及,通过如下方式对所述肩关节关键点信息进行校验:
基于肩关节关键点信息所指示的肩关节关键点数目,对所述肩关节关键点信息进行第一次校验;
响应于确定所述肩关节关键点信息满足第一次校验条件,基于所述肩关节关键点信息的置信度,对所述肩关节关键点信息进行第二次校验;
响应于确定所述肩关节关键点信息第二次校验合格,利用所述肩关节关键点信息和所述候选姿态信息确定所述第一部位与肩关节的差异系数,并基于所述第一部位与肩关节的差异系数对所述肩关节关键点信息进行第三次校验。
9.根据权利要求8所述的方法,其特征在于,
候选姿态信息用于指示用户的第一只手的手部姿态,肩关节关键点信息包括用于指示该用户的第二只手的肩部关键点的信息。
10.根据权利要求1所述的方法,其特征在于,所述关键点信息包括以下至少一项:肢体关键点信息、眼部关键点信息、髋关节关键点信息、肩关节关键点信息。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于确定响应所述候选姿态信息所指示的姿态,基于所述候选姿态信息的置信度和所述关键点信息的置信度,确定所述候选姿态信息是否为目标姿态信息,其中,所述目标姿态信息所指示的姿态为待执行姿态。
12.根据权利要求1所述的方法,其特征在于,候选姿态信息和关键点信息均从第一视频帧获取,以及,通过如下方式从所述第一视频帧中获取候选姿态信息和关键点信息:
将所述第一视频帧图像输入至预建神经网络模型,获得初始姿态信息和关键点信息;
基于预定义姿态,对获得的初始姿态信息进行筛选,获得候选姿态信息;
其中,通过如下方式获得预建网络模型:
获取训练用样本图像集合和初始神经网络模型,
利用所述训练用样本图像集合中的训练样本图像对所述初始神经网络模型进行训练,获得所述预建神经网络模型。
13.根据权利要求12所述的方法,其特征在于,在所述基于预定义姿态,对获得的初始姿态信息进行筛选之前,所述方法还包括:
利用初始姿态信息的合法性对获取的初始姿态信息进行筛选,和/或,对初始姿态信息进行信息增强处理。
14.一种姿态识别装置,其特征在于,包括:
接收单元,用于接收候选姿态信息和关键点信息,其中,所述候选姿态信息和所述关键点信息这两者对应同一用户,所述候选姿态信息指示第一部位的姿态为预定义姿态,所述关键点信息指示所述用户的第二部位的关键点;
确定单元,用于基于所述关键点信息,确定是否响应所述候选姿态信息所指示的姿态。
15.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-13中任一所述的方法。
16.一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-13中任一所述的方法。
CN202210791514.8A 2022-07-05 2022-07-05 姿态识别方法、装置和电子设备 Pending CN115188071A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210791514.8A CN115188071A (zh) 2022-07-05 2022-07-05 姿态识别方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210791514.8A CN115188071A (zh) 2022-07-05 2022-07-05 姿态识别方法、装置和电子设备

Publications (1)

Publication Number Publication Date
CN115188071A true CN115188071A (zh) 2022-10-14

Family

ID=83517732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210791514.8A Pending CN115188071A (zh) 2022-07-05 2022-07-05 姿态识别方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN115188071A (zh)

Similar Documents

Publication Publication Date Title
CN109993150B (zh) 用于识别年龄的方法和装置
CN109284445B (zh) 网络资源的推荐方法、装置、服务器及存储介质
US20160044269A1 (en) Electronic device and method for controlling transmission in electronic device
CN111104980B (zh) 确定分类结果的方法、装置、设备及存储介质
CN110070063B (zh) 目标对象的动作识别方法、装置和电子设备
CN112733970B (zh) 图像分类模型处理方法、图像分类方法及装置
WO2021088790A1 (zh) 用于目标设备的显示样式调整方法和装置
CN110555102A (zh) 媒体标题识别方法、装置及存储介质
CN112084959B (zh) 一种人群图像处理方法及装置
CN112306235A (zh) 一种手势操作方法、装置、设备和存储介质
CN110188782B (zh) 图像相似性确定方法、装置、电子设备及可读存储介质
CN110717467A (zh) 头部姿势的估计方法、装置、设备及存储介质
CN113850212A (zh) 图像生成方法、装置、设备及存储介质
CN111586295B (zh) 图像生成方法、装置和电子设备
CN112990176A (zh) 书写质量评价方法、装置和电子设备
CN113191257A (zh) 笔顺检测方法、装置和电子设备
CN111402154A (zh) 图像美颜方法、装置、电子设备及计算机可读存储介质
CN116596748A (zh) 图像风格化处理方法、装置、设备、存储介质和程序产品
CN112231023A (zh) 一种信息显示方法、装置、设备及存储介质
CN115188071A (zh) 姿态识别方法、装置和电子设备
CN111680754B (zh) 图像分类方法、装置、电子设备及计算机可读存储介质
CN111461964B (zh) 图片处理方法、装置、电子设备和计算机可读介质
CN114637400A (zh) 视觉内容更新方法、头戴式显示设备组件和计算机可读介质
CN111104566A (zh) 特征索引编码方法、装置、电子设备及存储介质
CN113283115B (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