自动生成手部的标注数据的方法和计算骨骼长度的方法与流程

文档序号:24972722发布日期:2021-05-07 22:44阅读:375来源:国知局
自动生成手部的标注数据的方法和计算骨骼长度的方法与流程

本公开内容总体上涉及手部图像数据的采集和自动生成标注数据,具体而言,涉及一种自动生成手部的标注数据的方法和计算骨骼长度的方法。



背景技术:

手势输入是虚拟现实vr(virtualreality)和增强现实ar(augmentedreality)技术中用于三维人机交互输入的主要技术之一,具有广阔的运用前景。在虚拟环境中用手实现抓取、释放物体以及飞行、漫游等三维交互任务和技术,以往是利用人的触摸或操作行为和计算机的反应来获得基于人机交互的手段,一般采用硬件设备,诸如vr控制器、空间球、6d操纵杆、6d鼠标等来实现。但也可通过计算机非接触式地(如摄像机等)观察用户的动作来实现人机交互,这是一种通过手势识别来了解用户意图的三维交互新技术。

因此,在使用手势输入的场景中,如何对用户做出的手势进行准确地识别和区分,特别是对手势做出不同精度地区分(可以是很精细化地),是决定手势输入能否普及的重要因素之一。

当前,手势识别的一个研究方向是利用人工神经网络架构下的深度学习技术。利用摄像头采集图像,并利用深度学习模型来实现手部关键点的检测和跟踪、以及手势的识别,是比较高效和精准的方法。为了提高识别系统的可用性,需要提供训练好的深度网络模型。

在基于机器学习,特别是深度学习的识别过程中,为了提高识别的准备率,需要提供大量的具有正确训练标注的样本图像来对深度机器学习模型进行训练。同时,训练样本应当是尽可能地广泛的,包括提供的训练样本图像应当考虑光照、手部所在的周围环境、年龄、种族、肤色等各种因素的差异,以及手型、手势和动作的广泛性。目前,为了产生正确的标注样本图像,采用的方法是利用大量的人工对摄像装置拍摄的各种图像中的手部的关键点进行人工标注。

然而,为了提供大量的训练样本图像,采用人工标注的方法费事费力。

背景技术部分的内容仅仅是公开人所知晓的技术,并不当然代表本领域的现有技术。



技术实现要素:

本公开描述的技术方案的目的之一在于提供一种手部图像数据的采集和自动生成标注数据的方案。

本公开提供一种自动生成手部的标注数据的方法,包括:获取手部的在不同视角下的至少三幅待处理图像;分别在所述至少三幅待处理图像上检测关键点;利用所述至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选,所述关联关系为所述至少三幅待处理图像来自手部的不同视角下的同一帧图像;针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建所述手部的三维空间表示;将所述手部的三维表示上的关键点投影到所述至少三幅待处理图像;以及利用在所述至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

本公开还提供一种自动生成手部的标注数据的系统,包括:图像捕获系统,包括相机集合,被配置为获取针对手部的在不同视角下的至少三幅待处理图像;标注装置,被配置为执行以下操作:分别在所述至少三幅待处理图像上检测关键点;利用所述至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选,所述关联关系为所述至少三幅待处理图像来自手部的不同视角下的同一帧图像;针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建所述手部的三维空间表示;将所述手部的三维表示上的关键点投影到所述至少三幅待处理图像;以及利用在所述至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

本公开还提供一种用于计算手指骨骼长度的方法,包括:获取手部的在不同视角下的一帧图像中的至少两幅图像;利用所述不同视角下的至少两幅图像,进行手部的手势识别;在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;利用所检测的关键点重建手部的三维表示;以及根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

本公开还提供一种用于计算手指骨骼长度的装置,包括:获取装置,用于获取手部的在不同视角下的一帧图像中的至少两幅图像;识别装置,用于利用所述不同视角下的至少两幅图像,进行手部的手势识别;检测装置,用于在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;重建装置,用于利用所检测的关键点重建手部的三维表示;以及计算装置,用于根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

本公开还提供一种用于计算手指骨骼长度的系统,包括:图像捕获系统,包括相机集合,被配置为获取手部的在不同视角下的一帧图像中的至少两幅图像;手指骨骼长度计算装置,被配置为执行以下操作:利用所述不同视角下的至少两幅图像,进行手部的手势识别;在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;利用所检测的关键点重建手部的三维表示;以及根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

本公开还提供一种用于计算手势边界框的方法,包括:获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据手部的至少两幅二维图像重建的;根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;将所述辅助点投影到所述至少两幅二维图像;在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

本公开还提供一种用于计算手势边界框的装置,包括:获取装置,用于获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据手部的至少两幅二维图像重建的;辅助几何结构生成装置,用于根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;辅助点生成装置,用于针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;投影装置,用于将所述辅助点投影到所述至少两幅二维图像;边界框生成装置,用于在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

本公开还提供一种用于计算手势边界框的系统,包括:图像捕获系统,包括相机集合,被配置为获取手部的在不同视角下的一帧图像中的至少两幅图像;手势边界框计算装置,被配置为执行以下操作:获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据所述至少两幅二维图像重建的;根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;将所述辅助点投影到所述至少两幅二维图像;在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

本公开的优点在于,可以为深度学习模型提供大量的、有准确标注的、不同主体的、多样环境下的训练样本。根据本公开,可以快速生成满足上述要求的手部图像数据。

附图说明

构成本公开的一部分的附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:

图1示意性示出了根据本发明一个实施方式的用于图像标注系统的相机支撑框架的结构示意图;

图2示意性示出了根据本发明一个实施方式的用于搭建相机支撑框架的支撑板材的示意图;

图3(a)、图3(b)和图3(c)分别示意性示出了根据本发明一个实施方式的图像标注系统所位于的外部环境的示意图;

图4(a)、图4(b)、图4(c)和图4(d)分别示意性示出了根据本发明一个实施方式的不同类型的标注数据的示意图;

图5a示意性示出了根据本发明一个实施方式的自动生成标注数据的方法的流程图;

图5b示意性示出了根据本发明一个实施方式的手部二维关键点检测的示意图;

图5c示意性示出了根据本发明一个实施方式的自动生成标注数据的方法的流程图;

图6a示意性示出了根据本发明一个实施方式的计算手指骨骼长度的方法的流程图;

图6b示意性示出了根据本发明一个实施方式的计算手指骨骼长度的方法的流程图;

图6c示意性示出了根据本发明一个实施方式的计算手指骨骼长度的方法的流程图;

图7a示意性示出了根据本发明一个实施方式的计算手势边界框的方法的流程图;

图7b示意性示出了根据本发明一个实施方式的计算手势边界框的方法的流程图;

图8示意性示出了根据本发明一个实施方式的辅助几何结构的生成的示意图。

图9示意性示出了根据本发明一个实施方式的生成的手势边界框的示意图。

图10示意性示出了根据本发明实施例的相机的投影模型的示意图;

图11示意性示出了根据本发明一个实施方式的标定相机内参的原理图;

图12示意性示出了根据本发明一个实施方式的计算手部的三维关键点的位置的示意图;

图13图示了根据本发明一个实施方式的自动生成标注数据的装置的框图;

图14示意性示出了根据本发明一个实施方式的计算手指骨骼长度的装置的框图;

图15示意性示出了根据本发明一个实施方式的计算手势边界框的装置的框图;

图16示意性示出了根据本发明一个实施方式的计算机程序产品的框图;

图17示意性示出了根据本发明一个实施方式的适于用来实现本发明实施方式的计算机系统的框图。

具体实施方式

在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本公开的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和如下描述被认为本质上是示例性的而非限制性的。

附图中的流程图和框图,图示了按照本发明各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现预定的逻辑功能的可执行指令。应当注意,在有些作为备选的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也应当注意,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

在本公开的描述中,需要理解的是,术语"中心"、"纵向"、"横向"、"长度"、"宽度"、"厚度"、"上"、"下"、"前"、"后"、"左"、"右"、"坚直"、"水平"、"顶"、"底"、"内"、"外"、"顺时针"、"逆时针"等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语"第一"、"第二"仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有"第一"、"第二"的特征可以明示或者隐含地包括一个或者更多个所述特征。在本公开的描述中,"多个"的含义是两个或两个以上,除非另有明确具体的限定。

在本公开的描述中,需要说明的是,除非另有明确的规定和限定,术语"安装"、"相连"、"连接"应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接:可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。

在本公开中,除非另有明确的规定和限定,第一特征在第二特征之"上"或之"下"可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征"之上"、"上方"和"上面"包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征"之下"、"下方"和"下面"包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度小于第二特征。

下文的公开提供了许多不同的实施方式或例子用来实现本公开的不同结构。为了简化本公开的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本公开。此外,本公开可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本公开提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。

以下结合附图对本公开的具体实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本公开,并不用于限定本公开。

本公开的实施方式旨在为深度学习模型提供大量的、有准确标注的、不同主体的、多样环境下的训练样本图像。根据本公开,可以快速生成满足上述要求的手部图像数据。

在本公开的实施方式中,待处理数据(或待处理图像数据)是指,利用相机从不同视角对同一目标对象拍摄的视频或者连续图像。为了获得不同视角下的图像,所使用的相机的数量可以是一台或多台,在一台相机的情形下,保持目标对象不动、通过一台相机改变位置,例如可以围绕目标对象移动该台相机,来在多个角度拍摄、完成不同视角下的图像的拍摄。一台或多台相机从不同视角对同一目标对象的同一姿态拍摄的图像的集合,被称为一帧图像。以多台相机为例,每台相机在一个时刻拍摄的目标对象的图像,称为一个子帧或者子帧图像。在一个时刻,多台相机从不同角度对目标对象拍摄的图像的集合,组成一帧图像。另外本领域技术人员能够理解,相机拍摄的图像,可以是图片数据,也可以是从视频流中截取的图片。

根据本公开的实施方式,可以针对前述待处理数据自动生成标注数据。本公开中,标注包括以下中的一种或多种的组合:识别出目标对象的边界框(boundingbox);识别出图像上的2d关键点(例如手腕和手指的关节点);姿态类型(例如手势类型,诸如五指张开、握拳、点赞等);3d关键点(诸如关键点的三维坐标位置)和目标对象的姿态(手掌、手指等部位的姿态(即角度朝向等))。

目标对象例如可以是手部(或人手)、或者某根手指。目标对象的姿态例如可以是手势。在本发明的实施方式中,关键点可以与目标对象的特征、例如生理关节(如手指的各个关节)和/或其他指定的手部区域(例如掌心)相关联。本公开的标注数据可以有多种类型,将在下文中进行描述。

下文中,仅以人手作为示例进行说明,但是应当理解,所描述的各种实施方式还可以适用于其他合适目标对象的情形。同时,下文中,仅以手部的关节作为示例进行说明,但是应当理解,所描述的各种实施方式还可以适用于目标对象的其他合适的特征的情形。

待处理数据的捕获

参考图1,其示出了根据本公开一种实施方式的用于相机支撑框架100的物理结构示意图。如图1所示,相机支撑框架100是由多块支撑板材110搭接成的立体结构,其中相邻支撑板材110的拼接处形成了相机支撑框架的外围上的一个或多个孔洞203。图1中示出的支撑板材110为六边形的结构,其中六边形的支撑板材110仅为一实施方式,支撑板材110亦可为其它多边形的结构。

图2示出了根据本公开另一种实施方式的用于搭建相机支撑框架的支撑板材110’的示意图。该相机支撑框架大致为由二十块支撑板材110’搭建而成的正二十面体。支撑板材110’大致为正三角形,每个角去除顶点附近的区域而留有缺口202,这样,在相互搭建成相机支撑框架时,这些缺口的位置会与相邻的缺口拼接而形成相机支撑框架的外围上的孔洞203。支撑板材110’的大致中央位置可以设置有安装孔组204’,用于在其处安装相机。支撑板材110’的各个角的边缘位置可以设置有拼接孔组205’,用于与其他支撑板材方便的拼接以搭建成相机支撑框架。

在本文中,搭载有相机的相机支撑框架也被称为图像捕获系统。

在如图1和图2所示的实施例中,构成正二十面体的相机支撑框架的每个面的支撑板材的基本形状为边长例如60cm的正三角形,并且在正二十面体的十二个顶点处可留有孔洞,作为例如数据采集时手臂入口。使用正二十面体结构简单,并可以保证支撑结构稳定。相机可以安装在每个平面上并朝向中心。

进一步地,本公开还提供一种图像标注系统,其包括:相机支撑框架100,用于形成外围框架;较佳地至少两台相机120,安装在这些支撑板材中的至少两块板材上,其中各台相机可藉由控制装置无线或有线操作以同时启动、开始拍摄;以及标注装置,被配置为接收所述至少两台相机拍摄的两幅或多幅待处理图像,并对所述待处理图像数据中的手部进行标注。在进行图像数据采集时,测试人员的手部可以通过相机支撑框架上的任一个孔洞203伸入到相机支撑框架100内部。之后,安装在相机支撑框架上的相机120可以对测试人员的手部的各种动作从不同的视角出发进行拍摄,获得一帧或多帧图像。这样,捕获的数据包含有第一人称视角的手部图像数据,从而不存在在第三人称视角下的测试人员的手势被测试人员的身体遮挡的可能性。另外,采用正二十面体的相机支撑框架,使得相机支撑框架近似球形,在各个面都部署相机的情形下,可以对目标对象实现采集角度的全面的覆盖。

根据本发明的实施方式,标注装置用于对不同相机针对手部的同一姿态从不同视角拍摄的同一帧图像进行标注。例如,标注装置可以自动对来自不同相机的多视角图像进行同步、分割和标注。关于标注装置的识别同一帧图像并且进行具体标注方法,将在下文中讨论。

在一个实施例中,标注装置可以本地存储接收的图像数据或者将其存储在本地或者网络化的服务器上,标注装置还可以用作各台相机同时启动、开始拍摄的控制装置,从而,有利于标注装置识别出各台相机上同步的每一子帧。另外,各台相机拍摄的图像数据中可包含有时间值,从而通过比对各台相机拍摄的图像数据中的时间值,可以识别出各台相机上同步的子帧,还可以用于拼接或者合并成一帧图像数据。

在一个实施例中,图像标注系统还可以包括:控制中心(未示出)和存储设备(未示出)。控制中心通过有线或者无线方式连接到相机并控制所有相机和环境控制设备(光源、电视和投影仪等)对支撑框架外的环境进行控制。存储设备与控制中心、标注装置和/或相机连接,用于存储相机拍摄的图像(包括视频)数据。标注装置与相机和控制中心连接,可以自动对图像进行同步、分割和标注。

进一步地,图像标注系统还可以包括移动平台,用于支持图像捕获系统的移动。例如,移动平台可以是承载并携带图像捕获系统运动的小车。在一个实施例中,移动平台为两层结构的平板推车,上层安装相机支撑框架。下层放置前述标注装置以及可选的控制中心和存储设备等硬件设备。从而,该图像捕获系统是小型可移动的,无论在室内还是在户外,均可以轻松使用。

关于相机支撑框架,应当理解,三角形是最基本的稳定支撑形状,如图1和图2所示的支撑板材的基本形状和相机支撑框架的立体构造仅仅是示意性的,但是发明人还设想到了其他可能的形状,例如支撑板材可以选在由大小不等的正方形、大小不等的三角形、大小不等的五边形等素材构成的套件,相机支撑框架可以被构造成其他多面体结构,例如正方体(包括六个面)、足球状的三十二面体(包括十二个六边形和二十个五边形))。另外,视情况,每块支撑板材的顶点以外的边缘区域也可以留有缺口,从而两块支撑板材在拼接成相机支撑框架时在接合面处不必形成连续的过渡表面。

安装孔组204的形状、数量和大小可以根据配套的相机的安装需求而定,相机支撑框架的各个面可以设置相同或者不同的安装孔组。安装孔组204可以促进相机的快速拆装。应当理解,这些相机可以具有或者不具有相同的类型和配置。不同类型的相机可以安装在相机支撑框架的各个面的部分或者全部上,用于拍摄不同视角的、置于相机支撑框架中的目标对象的图像。根据需要,可以使用不同类型的相机,包括网络相机、手机、监控相机、专业相机等。可以使用任何可行的连接方式将相机固定在相机支撑框架的任一面板上(例如通过安装孔组)。

在一个实施例中,在将相机安装到相机支撑框架的一个面板上时,可以使得相机与该面板平行,并且大致在该面板中央。在如图1和图2所示的实施例中,每个面板的基本形状为边长60cm的正三角形,在二十面体的所有面上都布置相机的情形下,所有相机都可以覆盖相机支撑框架的中心半径大约25cm的空间。可以设定相机镜头的焦距为相机支撑框架的半径以获得最佳图像质量。

在一个实施例中,支撑板组件的材料可以为透明有机玻璃板。使用透明材质,相机拍摄的目标对象图像可以包括透过位于目标对象后方的支撑板材的周围背景,包括图像捕获系统所处的不同室内、室外环境、不同光照条件等。从而,可以方便录制适合的背景信息,并方便控制光照效果。

为了使采集的图像具有不同的光照效果,可以根据实际需要,使用不同类型的光源,如点光源(白炽灯),面光源等。光源可以在拍摄或录制过程中变换颜色和位置以形成不同类型的环境光照效果。光源的控制可以由前述的标注装置和/或控制中心来完成,或是在支撑板组件之外另外架设光源。同样地,由于支撑板组件的材料可以使用透明材质,因此可容易地在支撑板组件外调整或使用不同的光源。

在一个实施例中,可以在支撑板组件的内测粘贴各种不透明材料或者特定图像,以便模拟不同的背景。例如,可以将一个相机镜头正对面的支撑板组件覆盖以黑色幕布,从而使得该相机所拍摄的目标对象图像具有黑色背景。在一个实施例中,也可在支撑板组件之外另外架设并随时调整或更换背景。

此外,根据本发明的实施方式,可以在不同环境下拍摄连续图像或者录制视频。图3(a)、图3(b)、图3(c)示出了图像捕获系统所位于的外部环境的示意图。图3(a)处在办公区场景下,图3(b)处在储物区场景下,图3(c)处在会议室场景下。此外,采用诸如电视和投影仪的背景控制设备,可以方便地控制图像捕获系统所处的外部背景或环境。

应当理解,标注装置可以与相机支撑框架一起本地化地部署,或者标注装置也可以是网络化的,通过一个或多个网络与相机支撑框架或相机连接,该网络包括但不限于移动电话网络、无线局域网(lan)、蓝牙个人局域网、以太网lan、令牌环lan、广域网、互联网等。标注装置与相机的连接方式可以是有线连接或者无线连接。

根据本发明实施方式的图像采集装置,带来了如下优点:

(1)小型可移动,并可轻易组装及拆解;

(2)可户外使用;

(3)生成的图片的背景自然、多样,可以实现可变光照和可变背景;

(4)针对手部数据采集,可以获得第一人称视角数据,不存在在采集的图像收据中,测试人员的身体遮挡住手势的情形;

(5)可以混合使用不同类型的相机,例如可以混合使用rgb相机和深度相机,并可快速更换相机;

(6)采集角度全面覆盖,完整近似球形。

应当理解,以上所搭建的待处理数据的捕获系统是示例性而非限制性的,并且下文中所述的本公开的各种处理方法不限于仅处理以上所搭建的待处理数据的捕获系统所捕获的数据,还可以用于处理其他适当的捕获系统捕获的数据。也就是说,本文描述的对待处理数据点的处理方法对待处理数据的来源不做限定。

标注数据的类型

根据本公开的实施方式,可以通过拍摄多视角手部图像或视频,例如利用前述的图像捕获系统,并针对拍摄的多视角手部图像或者从多视角手部视频中提取的手部图像,自动生成标注数据。本公开的标注数据可以有多种类型,下面描述根据本公开的实施方式的标注数据的类型。

在一个实施方式中,标注数据可以是手部的边界框。边界框(boundingbox)是标注目标对象范围的工具,多数以矩形表示二维图像中的目标对象的范围,例如,图4(a)中示出的方块即为该实施方式中针对图片中的手部,自动生成的边界框。

在一个实施方式中,标注数据可以是二维图像上的手部的二维关键点。如图4(b)所示,在该实施方式中,定义手腕处和手指的关节点为手势识别任务中的关键点,每只手对应二十一个关键点。这二十一个关键点包括每个手指的四个关键点(指尖和三个关节点)和手掌根部手腕处的一个关键点。利用这些关键点的数据可以标识或者在后续应用中重现手的任何动作。

在一个实施方式中,标注数据可以是手部的三维关键点,该三维关键点基于多张关联的二维图像而计算得出。如图4(c)所示,在该实施方式中,定义手腕处和手指的关节点为手势识别任务中的关键点,每只手对应二十一个关键点,根据多张关联的二维图像中的对应二十一个关键点,计算出它们在世界坐标系下的三维位置,以及手掌、手指等部位的姿态(即角度朝向)。例如,多张关联的二维图像可以是多台相机在不同视角下对手部的同一姿态拍摄(例如,在同一时刻拍摄)的照片(即一帧图像),也可以是相继的时刻在同一角度对手部拍摄的照片。

在一个实施方式中,标注数据可以是预定的手势类型的识别结果。如图4(d)所示,在该实施方式中,可自动标注图像数据的手势类型,支持如五指张开、握拳、点赞等19类手势。

在一个实施方式中,标注数据可以包括手部骨骼长度。如图4(b)所示,手部骨骼长度为手上相邻两个关键点之间的长度,手在运动时手部骨骼长度并不会发生变化,因此可以统计标记结果,并获得测试人员的手部各关节间的骨骼长度,每个手指4段,共20段。

以上描述了根据本公开的实施方式的可能的标注数据的示例,包括:手部边界框、手部二维关键点、手势类型、手部三维关键点、手势类型(手的姿态)、以及手部骨胳长度。在后续应用中,这些标注数据类型可以单独使用或者组合使用。在进一步示例中,标注数据还可以是手部的特定部位的姿态,比如手掌的姿态和特定几根手指的姿态。

应当理解,在本文中,虽然以手部的关节点为例对手部的关键点进行了说明,但是本领域技术人员应当理解,本公开的实施方式不限于手部的关节点,其它能够用于表征手势的手部的位置也可以被看作手部的关键点,例如手掌的姿态、部分手指和手掌的姿态。

自动生成标注数据(即利用手指长度来辅助计算三维空间位置的实施例)

图5a示意出了根据本公开一种实施方式的自动生成标注数据的方法500的流程图。例如,该方法可以在前述的图像标注系统的标注装置处执行。下面参考附图详细描述。

在步骤s510,获取目标对象的在不同视角下的至少三幅待处理图像。该目标对象为手部,例如测试人员的手部。

在步骤s520,分别在所述至少三幅待处理图像上检测关键点。对关键点的检测可以利用计算机视觉和图像识别原理。关键点例如可以是手腕处和手指的关节点,或者可以是其他预定义可以表征手部姿态的特征点。对一幅静态图像,可以使用神经网络模型,对每张图像做二维关键点检测。图5b示出了根据本发明一个实施方式的二维关键点检测的示意图。在该图中,在左图的手部图像中检测到的手部关键点如右图所示。

在步骤s530,利用至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选。例如,至少三幅待处理图像可以属于同一目标对象的不同视角下的同一帧图像,即不同的子帧图像。或者,需要对至少三幅待处理图像进行识别,从中找到同一目标物体的不同视角下的至少两幅子帧图像。

下面举例说明筛选的过程。例如对于一个手部关键点,假设20个照相机都拍到了该关键点,即在20幅子帧图像中都识别出该关键点以及该关键点的坐标。但在实际的识别过程中,其中各个子帧图像中该关键点的坐标可能不会完全一致,其中一些子帧图像中该关键点的坐标的置信度或者可靠性较高,其中一些子帧图像中该关键点的坐标的置信度或者可靠性较低。筛选的过程就是要删选出置信度或者可靠性较高的那些子帧。

如上所述,由于对每一幅子帧图像,二维图像上的每个关键点的检测具有误差和错误,需要筛选出合适的二维关键点用来三维重建目标对象在三维空间中的位置。也就是对于每个空间的三维关键点,在其对应的多个二维图像上的投影关键点中选取一部分用于拟合三维关键点。例如,可以利用随机数据之间的耦合性筛选,具体可以采用ransac(randomsampleconsensus)算法筛选关键点。ransac是一个随机算法,该算法会随机找出一个最大的集合,在这个集合中的二维关键点可靠性较高。

在步骤s540,针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建手部的三维空间表示。手指骨骼长度例如手指各个关节之间的长度数据,可来自用户输入,或者来自用户数据,或者也可来自基于图像数据的识别和计算。本公开中,在重建手部的三维空间位置的过程中,不但基于筛选出的关键点的数据,还结合了用户的手指骨胳长度数据,能够显着提高手部三维重建的精度准确性。

在给定手指骨骼长度的条件下,可以对手部建立参数化模型。在已知手腕位置、空间旋转、每个手指关节的角度的情况下,可以唯一确定三维关节点的位置。那么三维关键点的重建问题转化为手部参数的求解问题。通过筛选过的二维关键点,可以通过优化方法计算出手部模型的所有参数。在求得参数后,即得到三维关键点的空间位置。

在步骤s550,将手部的三维表示上的关键点投影到所述至少两幅待处理二维图像。

在步骤s560,利用在至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

图5c示意出了根据本公开另一种实施方式的自动生成标注数据的方法500’的示意图。该方法在图5a所示的方法中的步骤s510之前,还包括步骤s502,对相机集合进行标定,计算得出相机内参和相机外参。前述的目标对象、即手部的在不同视角下的至少三幅待处理图像是由相机集合拍摄的。

方法500’中的步骤s510、s520、s530和s550与前述方法500中的对应步骤s510、s520、s530和s550相同,在此不再赘述。在示例方法500’中,步骤s540’对应于前述方法500中的步骤s540,但是其中根据同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度以及相机内参和相机外参,重建手部的三维表示。

同一帧图像的识别

在本公开的实施方式中,待处理图像数据是来自不同视角的图像数据的视频流或者图像序列,可以以各种方法来识别来自视频流或者图像序列中的同一帧图像,即针对目标对象(用户手部)同一动作(即手势,例如在同一时刻)在不同视角的图像。

通过相机同步可以获得多台相机在同一个时刻采集的图像。通过多相机间的同步和视频分拆,可以获得不同视角的图像中的同一帧图像。一些相机具有硬件同步功能,也叫外触发,即当接收到外部信号的时候,启动快门记录图像。在分拆视频时,可以直接按照录制帧率提取图像。对于没有硬件同步功能的相机,如手机,网络相机等,可以采用软同步的方式。在本实施方式中,通过使用外部定时闪光来作为同步信号。可以在图像捕获系统(或采集系统)中布置所有相机均可观测到的光源,通过电路控制光源定时闪光或者随着手势的变化而闪光。视频录制完成后,自动检测视频中所有拍摄到闪光的图像,不同相机所录制的视频可以将基于所检测的这些闪光帧进行对齐同步。相机也可以使用硬件同步。此外,附加地并且可选地,当系统中存在两种相机时,所有支持硬件同步的相机可以使用硬件同步并作为一个时间序列和其他相机进行软件同步。

在一个实施例中,可以通过前述图像标注系统中的控制中心来控制各个相机在同一时刻开启,并且各个相机使用相同配置的相机,从而,不同视角的图像数据的视频流或者图像序列在一开始就是同步的,可以从中方便地识别出同一帧图像。

在一个实施例中,多台相机被布置在目标对象、例如手部的周围,用于对目标对象拍摄视频和连续图像。通过外部装置使得对多台相机的启动动作可以同时完成,以便于相机拍摄的视频或连续图像在时间上同步的,即,每个视频中的相同时刻的每一帧视频图像中显示的是真实的测试环境下目标对象(手部)的同一时刻的图像。

在一个实施例中,多台相机被布置在目标对象、例如手部的周围,用于对目标对象拍摄视频和连续图像,在同时或非同时地启动多台摄像装置后,例如可以是在拍摄环境中引入随机的闪光,从而每台摄像装置可以基于识别到各自所拍摄的视频中的该闪光来完成相机的同步,并可以将该闪光出现的时刻标记为各幅视频中的相对零时。在一个实施例中,也可由后续的视频处理装置、系统或软件识别到每台摄像装置所拍摄的视频中的该闪光来完成相机的同步。

在一个实施方式中,可以利用多台相机搭建的拍摄环境对处于该拍摄环境下的目标对象、例如手部进行视频或图像拍摄。例如,在检测到测试人员将手伸到该拍摄环境,提示该人员做出不同手势,并不断变化手腕方向和位置,各台相机可以响应于手势变换后的闪光而启动并进行拍摄。这些闪光可以用作识别不同视角下的同一帧图像的依据。在拍摄数据采集完成后,首先根据相机的同步方式,将视频按照一定时间间隔拆分成图片。对于同一个时刻不同相机采集的一组图片,以下称为“帧”。即每一帧包含多个相机从不同角度在同一时刻的拍摄的图像。

示例性手指骨骼长度计算

发明人设想到了可以使用多种现有的手指骨骼长度计算来计算手指骨骼长度,这些方法包括利用所有数据直接计算、x光测量和手工标定等方法。

图6a示意出了根据本公开一种实施方式的计算手指骨骼长度的方法600的示意图。该方法600可以在前述的图像标注系统的标注装置处执行。下面参考附图详细描述。

在步骤s610,获取目标对象在不同视角下的一帧图像中的至少两幅图像,所述目标对象可以是测试人员的手部。

在步骤s620,利用所述不同视角下的至少两幅图像,进行测试人员手部的手势识别。

在步骤s630,在所识别的手势是预定义简单手势的情形下,分别在各幅手部图像上检测关键点。根据本发明的实施方式,预定义简单手势是指手指相互之间遮挡最少的手势,例如,图4(d)所示的手势类型“五指张开(five)”和“抓取(grap)”。“五指张开(five)”和“抓取(grap)”是手势识别准确率最高的两类手势,可以获得更加准确的初始结果。

在步骤s640,利用所检测的关键点,重建目标对象、即手部的三维表示。对于简单手势,假设同一帧图像上的每个关键点独立,则不用考虑手指长度的限制。

在步骤s650,根据重建的手部三维表示上的关键点,计算测试人员的手指骨胳长度。

图6b示意出了根据本公开另一种实施方式的计算手指骨骼长度的方法600’的示意图。与图6a所示的方法600的不同之处在于,在该方法600’中,获取并且利用目标对象在不同视角下的一帧图像中的至少三幅图像,该方法进一步包括步骤s635。在步骤s635:利用所述至少两幅图像之间的关联关系,对所检测到的关键点进行筛选。从而,可以减少初始检测结果的误差。所述关联关系基于所述至少两幅图像是同一帧图像的不同子帧图像。之后,方法600中步骤s640对应的方法600’中步骤s640’包括:利用筛选出的关键点,重建目标对象、即手部的三维表示。对于简单手势,假设同一帧图像上的每个关键点独立,则不用考虑手指长度的限制。那么通过筛选过的二维关键点,可以通过优化算法计算出重投影误差最小的三维关键点。优化算法例如可以是levenberg-marquard算法。

图6c示意出了根据本公开另一种实施方式的计算手指骨骼长度的方法600”的示意图。与图6b所示的方法600’的不同之处在于,该方法600”包括步骤s602,对相机集合进行标定,计算得出相机内参和相机外参。前述的目标对象、即手部的在不同视角下的至少三幅待处理图像是由相机集合拍摄的。该方法600”中的步骤s640”对应于方法600’的步骤s640’,但是在s640”中,与步骤s640’不同,通过筛选过的二维关键点,并且结合相机的内参和外参,可以通过优化算法计算出重投影误差最小的三维关键点。

在一个实施例中,在得到简单手势关键点的三维位置后,利用一帧图像,可以计算出手指关节的长度。基于关键点在手部骨胳中的定义,在同一帧图像中,利用两个相邻关键点的位置可计算对应的骨骼长度。返回参考图4(b),其示出了根据本发明实施方式的一个手部关键点和手指骨骼长度标识的示意图。如图所示,例如,通过食指根部关键点(图4(b)中食指0号节点)和食指第一个关键点(图4(b)中食指1号节点)可计算食指第一段骨骼长度(对应图4(b)中l1i所示骨骼)。

在一个实施例中,可以根据多帧图像,重复上述步骤,可以将针对所有帧计算得到的某一个手指骨骼长度的平均值作为骨骼长度标定结果。通过每一帧图像可获得一组手指长度的计算值,多帧图像获得多个结果,最后通过计算平均值、计算中位数等统计方法,获取手指长度的最终输出结果。

根据本发明的实施方式,在进行手势确定和识别时,可以包括如下操作。在采集数据时,测试人员根据要求做出不同手势,并记录每个手势持续的时间。因此可以按照时间确定手势类型。对于没有记录手势和时间对应关系的数据。对于同一个时刻的不同相机拍摄的照片,通过神经网络模型检测手势类型,并选择数量最多的手势作为这一帧的手势。将所有图片根据手势划分为简单和困难两类。简单手势手指遮挡少,结构简单,可以直接计算关键节点3d位置。并可以通过3d位置计算骨骼长度。目前简单手势包括手势类型的“five”和“grab”。其他手势作为困难手势。

在传统技术中,计算手指骨骼长度可以有如下几种方法。第一种,根据利用多幅子帧图像直接计算的方法,首先利用各幅图像计算手指长度,然后统计各幅图像手指长度的平均数。该方法中,错误识别结果会严重影响最终手指长度的准确度。即便所用的图像数据均为如五指张开此类的简单手势,也需要人工筛选或额外录制等方式来获得这部分数据,增加了人工成本,限定了使用范围。第二种,可以使用x光测量来获得精确的手指长度结果,但是不适宜大规模推广,测量成本高且实用性低。第三种,可以使用手工标定方法,其可手动标注图像中的2d关键点位置,然后利用相机参数或通过至少两幅图像的标定结果,直接计算手指长度。该方法人工成本高,适应场景受限,且计算结果受到人工标注误差的影响。

根据本发明实施方式的用于计算手指骨胳长度的方法,仅通过手势遮挡少的简单手势来测量骨胳长度,并且直接计算手部的三维表示的骨胳长度,从而弥补了现有方法中的各种不足。

示例性手势边界框计算

图7a示意出了根据本公开一种实施方式的手势边界框计算的方法700的示意图。根据该实施方式,可以基于关键点3d位置计算手势边界框。

在步骤s710,获取手部三维表示中的多个三维关键点的位置,手部的三维表示是根据手部的至少两幅二维图像重建的;

在步骤s720,根据每个关键点的类别,生成与每个关键点相关联的辅助几何结构。例如,以每根手指对应的四个关键点位置为球心,根据手指关节的粗细调节半径,生成四个大小不一的球体;手腕关键点则生成对应的椭球。这些辅助几何结构用于模仿手部皮肤表面。因为手部两个相邻关键点之间的骨骼是刚性结构,所以可通过球棍模型近似表示手部,其中通过辅助结构近似表示手部关节,从而简化计算。

在步骤s730,针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点。这些辅助点可以随机地生成。可以基于计算精度来设置辅助点的数量,实验表明,一只手对应的辅助点数量达到2000时,已经可以获得准确的边界框结果。

在步骤s740,将辅助几何结构表面的辅助点投影到待处理的二维图像。

在步骤s750,在至少两幅二维图像上,获取辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。例如,在二维图像上,遍历投影结果以获得辅助点在手部的上下左右的四个边界点,进而生成边界框结果。

在一个实施例中,该方法可以紧跟在前述步骤s540或s540’之后执行。在一个实施方式中,在步骤s740,可以所述待处理对象的三维表示上的关键点和辅助几何结构表面的辅助点投影到待处理的二维图像。

图7b示意出了根据本公开另一种实施方式的手势边界框计算的方法700’的示意图。根据该实施方式,可以基于关键点3d位置以及相机参数计算手势边界框。与图7a所示的方法700的不同之处在于,该方法700’包括步骤s702,对相机集合进行标定,计算得出相机内参和相机外参。前述的目标对象、即手部的在不同视角下的至少三幅待处理图像是由相机集合拍摄的。该方法700’中的步骤s740’对应于方法700的步骤s740,但是在s740’中,与步骤s740不同,结合相机的内参和外参,将辅助几何结构表面的辅助点投影到待处理的二维图像。

参考图8,其示出了根据本发明一个实施方式的辅助几何结构生成的示意图,其中,以每个3d关键点为球形,基于不同关键点处手的结构定义球的半径,生成21个球体,然后生成一组随机分布在球体表面的辅助点,并基于关键点的3d位置计算每个辅助点的3d坐标。参考图9,示出了基于二维子帧图像上的辅助点投影的最外面的四个边缘节点生成边界框的示意图。如图8和9所示,获得3d关键点位置之后,生成如辅助几何结构生成示意图中椭圆形122所示的辅助几何结构,然后在辅助几何结构表面随机生成3d辅助点。可以基于相机参数计算这些3d辅助点在各幅二维图像上的2d投影位置,图9中示出了这些3d辅助点在一幅二维图像上的投影点123和124,例如图中的红色节点和蓝色节点。通过遍历这些节点,可以发现蓝色节点124为为上下左右四个方向上的边界点,基于四点可生成图中所示蓝色边界框125,即手势边界框。

根据本发明的实施方式,具有如下优点中的一个或多个:

(1)可以快速生成大量数据。例如在当前设置下,使用20台具有30fps录制速度的相机,每秒可以产生20*30=600张图片,十分钟可以生成360,000张图片。

(2)可以自动标注数据。

(3)可以标注复杂环境下和遮挡情况下的数据。

(4)可以生成第一人称视角下的手部图像和标注数据。

相机标定

相机标定技术广泛应用于三维建模等计算机视觉领域。在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的关联关系或相互关系,需要建立相机成像的几何模型,这些几何模型参数就是相机参数。在大多数条件下这些参数需要通过实验与计算才能得到,这个求解参数(相机内参、相机外参)的过程就称之为相机标定。目前,文献中提到的标定方法有直接线性标定方法(dlt)、径向一致约束法(rac)、平面标靶标定法等,其中最常用的是张正友的平面标靶标定法。关于相机标定及相机内参和相机外参的计算,多篇文献都有所介绍,例如参考中国专利文献公开cn109003309a、cn107993266a、cn109615661a、cn106600648a等。

假设根据本发明实施方式的前述图像标注系统使用了c个相机在不同的视角对目标对象进行拍摄,则这些相机的各项参数通过如下符号来定义和计算。

a.相机内参是与相机自身特性相关的参数,比如相机的焦距、像素大小等。例如共有c台相机,其中第i个相机的相机内参ki可以用如下内参矩阵来表示:

其中αx为相机x轴方向上的以像素为单位的焦距,αy为相机y轴方向上的以像素为单位的焦距,αx和cy为投影中心对应的图像空间上的像素坐标。

b.相机的外参就是相机在空间的位置和姿态。第i个相机的相机外参ti可以用如下4×4矩阵来表示:

其中,ri是一个特殊正交群so(3)内的3×3矩阵,是第i个相机的旋转矩阵,用于描述第i个相机的旋转姿态。ti∈r3是一个三维向量,用于表示第i个相机的空间位置。ti完整描述了相机在空间的位置和方向,即相机的外参。为了方便描述和计算,ti可以等价的使用李代数ξi表示,即用如下公式来表示:ξi=[ρtφt]t=[ρ1ρ2ρ3φ1φ2φ3]t,其中ρ=[ρ1ρ2ρ3]t∈r3,φ=[φ1φ2φ3]t∈so(3),根据特殊欧式群se(3)上的指数映射,ti和ξi的关系用如下公式来计算:

其中

其中θ=||φ||,

利用这个关系,ti和ξi可以相互转化。

c.基于上述,所有c个相机的外参可以合记为如下公式:

ξ=[ξ1,ξ2,…,ξi,…,ξc],其中ξi对应ti,ξ表示所有相机的外参。

d.所有d个空间三维点可以合记为如下公式:

p=[p1,p2,…,pj,…,pd],其中pj=[xjyjzj]t∈r3为第j个3d点。

其中,pj=[xjyjzj]t对应的其齐次坐标表示为如下公式:

e.则,空间上第j个点在第i个相机上产生的真实投影点表示为如下公式:

rij=[uijvij]t,其中uij为空间上第j个点在第i个相机上产生的真实二维投影点x方向的坐标,vij为空间上第j个点在第i个相机上产生的真实二维投影点y方向的坐标。

g.空间上第j个点通过第i个相机参数计算出的投影点表示为如下公式:

qij=[wijsij]t,其中wij为空间上第j个点通过第i个相机参数计算出的投影点x方向的坐标,vij为空间上第j个点在第i个相机上产生的真实二维投影点y方向的坐标。

其中,为了方便计算,使用齐次坐标,表示为如下公式:

h.由此,手部参数化模型可以用如下公式来表示:

h(l,t,d,r,θ)→21个关键点位置

相机的内参标定就是求解相机的内参矩阵,即求解ax,ay,cx和cy。图10示意性地示出了相机的投影模型。

在一个实施例中,采用棋盘格的方法标定相机内参。图11示意性地示出了采用棋盘格的方法标定相机内参的原理图。如图11所示,假设有n个角点和k个棋盘图像(不同位置),k个棋盘,可以提供2nk的约束,即2nk的方程。计算相机内参需要求解4个内参数和6k个外参数(k个棋盘的位置和角度),通过设计n的大小即可求解方程。在实施中,打印出棋盘格,测量出格子长度,用相机从不同角度拍摄10-20张图片。利用标定算法就可以得到内参ax,ay,cx和cy。

应当注意,以上仅提供了一种测定相机内参的示例性方法,相机内参还可以是相机的制造厂商提供的信息。

相机外参标定即确定相机外参ξ=[ξ1,ξ2,…,ξi,…,ξc]的过程。已知相机内参,对于通过用多个相机拍摄同一个目标物体获得的一组投影点rij,根据相机投影模型可以得到空间第j个点pj通过第i个相机参数ki和ξi计算出的投影点可以通过如下公式表示:

则,每个投影产生的误差可以通过如下公式表示:

eij=eij(ξi,pj)=qij-rij

则,所有投影产生的误差记为f,f是相机外参ξ和3d点位置p的函数。那么最小化误差这个优化问题可以通过如下公式表示:

为了高效地优化误差函数,需要求解对应的雅可比矩阵,结果如下:

接着,通过利用非线性优化方法,如levenberg-marquard方法,可以优化求得ξ,p,但是求出ξ,p包含有一个自由变量,即对相机的位置和p等比例缩放,不影响目标函数的值。因此需要测量任意两个相机之间的距离或者任意两个3d点的距离,可以将求解结果适配到实际系统上。

在一个实施方式中,用所有相机同时拍摄一个小球,或者一个黑白标签,即得到了一组投影点rij,结合内参,可以求解相机的外参。如果采用小球,就需要测量任意两个相机的距离。如果用定位标签,因为知道标签的大小,相当于3d点的距离,因而可以消除比例参数,得到和真实尺寸一致的结果。

求解三维空间点在图像上的投影

相机标定将计算得到相机的内参和外参,二者是将三维空间中的点映射到图像上的依据。此外,在计算三维空间位置时,可以通过相机内参和外参和建立2d关键点和3d关键点之间的关系方程,进而可带入优化模型。

已知相机的参数ki和ti,在给定空间上的第j个点pj=[xjyjzj]t,其齐次坐标可以表示为可以通过如下投影关系来计算:

进而得到图像上投影坐标,

利用多个投影观测计算三维空间位置

已知相机的参数ki和ti,对于空间中一个三维点pj(未知)和其通过相机投影到图像上的投影点rij(已知),可以利用优化方法得到三维点pj的估计值。给定pj的一个初始值,利用前述求解三维空间点在图像上的投影小节的计算方法,可以得到投影坐标qij。

每个投影产生的误差可以通过如下公式表示:

ei=ei(ξi,pj)=qij-rij

则,所有投影产生的误差记为f,f是3d点位置p的函数。那么最小化误差这个优化问题可以通过如下公式表示:

为了高效地优化误差函数,需要求解对应的雅可比矩阵,结果如下:

利用非线性优化方法,可以求得pj估计值。

重建三维表示

根据本发明的实施方式,通过引入手指骨骼长度,将手部关键点的估计转化为手部模型参数的估计。手部参数化模型可以通过一个五元组来表示,即h(l,t,d,r,θ),通过手部参数化模型,可以计算出计算手部关键点在三维空间的位置。

a.手部参数化模型

本系统通过手部的参数化模型h(l,t,d,r,θ)计算手部关键点在三维空间的位置。其中:

l为手部骨骼长度集合,包括每根手指关节的4个长度,共20个值,可以通过如下公式来表示:

其中,t为手腕节点的3d位置,t∈r3,d为每根手指根节点相对手腕节点的方向向量,共5个单位向量,d={dt,di,dm,dr,dp},r为每根手指三维角度姿态信息,共5个旋转矩阵,r={rt,ri,rm,rr,rp},θ为表达手指弯曲角度的参数(包含10个参数,每根手指2个参数),

其中,字母t、i、m、r和p分别表示大拇指、食指、中指、无名指和小指。

在给定手部参数的条件下,可以得出当前参数下21个关键点的三维位置。

在一个实施例中,如图12所示,以食指(以下标i表示)为例,已知手腕位置t,食指根节点对应手腕节点的方向向量为定义食指的四个关键点三维位置分别为骨骼长度为相关角度参数为

则食指上四个关键点三维位置的参数表示如下:

应当理解,其余每根手指的计算方法与食指相同,不再赘述。

b.手部模型参数的优化方法

已知相机的参数ki和ti,手部长度信息l,筛选过的观测值r',根据手部参数化模型h(l,t,d,r,θ),可以优化得到t、d、r、θ,进而获得关键点三维位置。

给定一组t、d、r、θ的初始值,利用h(l,t,d,r,θ)可以得到21个关键点三维位置,通过如下公式表示:

对于给定一个pj∈k,利用上文求解三维空间点在图像上的投影小节的计算方法,可以得到投影坐标qij。

每个投影产生的误差可以通过如下公式表示:

eij=eij(ξi,pj)=qij-rij

则,优化问题可以表示为:

优化变量是t、d、r、θ,f(t,d,r,θ)是t、d、r、θ的连续函数,因此可以用非线性优化问题求解。将求解的参数值带入手部模型h中,可以得到最终21个关键点三维位置k。利用上文求解三维空间点在图像上的投影小节的计算方法,根据k,可以得到图像上的投影点。

ransac算法框架

针对一帧图像的不同视角下的多个子图像,可以利用ransac算法筛选出一个子集,以排除误差较大的数据的影响。在一个实施例中,对于一个三维点pj在不同相机的观测,利用ransac算法筛选关键点的方法可以包括迭代执行预设迭代次数n的如下步骤序列a1、a2和a3:

在步骤a1,在所有相机中随机选取s个相机作为集合s,其他相机作为集合u,并且选取投影点集合r中对应于s的投影点,r′j={rij:rij∈rj,i∈s},利用上文利用多个投影观测计算三维空间位置小节介绍的方法,利用r'j计算出的pj的一个估计值p'j。初始化结果集合f为空集。

在步骤a2,针对其他相机集合u中的每个相机u,利用上述重建三维表示小节介绍的方法,将估计值p'j投影到相机u拍摄的图像上得到投影quj;记ruj为相机u所采集图像上,第j个关键点在图像上位置。如果满足quj和ruj的距离小于预设误差阈值σ,则将该相机u归类入相机集合s。

在步骤a3,如果相机集合s的元素数量大于集合f的的元素数量,则将s的值赋值给f。

通过完成上述迭代步骤,则对于作为输入的d个空间上的点产生的观测r={rj:0<j≤d},其中rj={rij:0<i≤c},则可以得到输出结果,r的子集r’={ransac_select(rj):0<j≤d},作为手部模型参数的优化时的输入。

在实施中,手部有21个关键点,那么d=21,在相机数量c=20时,集合r包含420个二维观测。对于每个关键点产生的20个观测利用ransac算法框架可以筛选其中一部分(≥n)个作为可信观测,比如平均10个,将所有筛选过的观测值大约210个观测作为手部模型参数的优化时的输入。

第二方面:产品权利要求

图13图示了根据本发明一个实施方式的自动生成标注数据的装置1300的框图。装置1300包括:

获取装置1310,用于获取针对手部的在不同视角下的至少三幅待处理图像;

检测装置1320,用于分别在所述至少三幅待处理图像上检测关键点;

筛选装置1330,用于利用所述至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选,所述关联关系为所述至少三幅待处理图像来自手部的不同视角下的同一帧图像;

重建装置1340,针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建所述手部的三维空间表示;

投影装置1350,用于将所述手部的三维表示上的关键点投影到所述至少三幅待处理图像;以及

标注装置1360,用于利用在所述至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

应当理解,装置1300中记载的每个模块与参考图5a描述的方法500和参考图5c描述的方法500’中的每个步骤相应。由此,上文针对方法500和500’描述的操作和特征同样适用于装置1300及其中包含的装置或模块,为了简洁,相类似的内容在此不再赘述。

图14示意性示出了根据本发明一个实施方式的计算手指骨骼长度的装置1400的框图。装置1400包括:

获取装置1410,用于获取手部的在不同视角下的一帧图像中的至少两幅图像;

识别装置1420,用于利用所述不同视角下的至少两幅图像,进行手部的手势识别;

检测装置1430,用于在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;

重建装置1440,用于利用所检测的关键点重建手部的三维表示;以及

计算装置1450,用于根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

进一步地,至少两幅图像是至少三幅图像,装置1400可以进一步包括:

筛选装置1435,用于利用同一帧图像中的所述至少两幅图像之间的关联关系,对所检测到的关键点进行筛选。

应当理解,装置1400中记载的每个模块与参考图6a描述的方法600、参考图6b描述的方法600’和参考图6c描述的方法600”中的每个步骤相应。由此,上文针对方法600、600’和600”描述的操作和特征同样适用于装置1400及其中包含的装置或模块,为了简洁,相类似的内容在此不再赘述。

图15示意性示出了根据本发明一个实施方式的计算手势边界框的装置1500的框图。装置1500包括:

获取装置1510,用于获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据手部的至少两幅二维图像重建的;

辅助几何结构生成装置1520,用于根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;

辅助点生成装置1530,用于针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;

投影装置1540,用于将所述辅助点投影到所述至少两幅二维图像;

边界框生成装置1550,用于在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

应当理解,装置1500中记载的每个模块与参考图7a描述的方法700和参考图7b描述的方法700’中的每个步骤相应。由此,上文针对方法700和700’描述的操作和特征同样适用于装置1500及其中包含的装置或模块,为了简洁,相类似的内容在此不再赘述。

第三方面:计算机程序产品

本公开的第三方面还涉及一种计算机程序产品1600的框图,如图16所示。信号承载介质1602可以被实现为或者包括计算机可读介质1606、计算机可记录介质1608、计算机通信介质1610或者它们的组合,其存储有可配置处理器执行的先前描述的过程中的全部或一些的编程指令1604。这些指令可以包括例如用于使一个或多个处理器执行如下处理的一个或多个可执行指令。这些可执行指令例如可以是前述的诸多方法的方法步骤。

应当理解,前述的各种示例性方法和装置可以实现在服务器或用户终端设备处,其可以利用各种方式来实现,例如,在某些实施方式中,前述各种装置可以利用软件和/或固件模块来实现,也可以利用硬件模块来实现。现在已知或者将来开发的其他方式也是可行的,本发明的范围在此方面不受限制。

图17示出了适于用来实现本发明实施方式的计算机系统的框图。如图17所示,计算机系统可以包括:cpu(中央处理单元)1101、ram(随机存取存储器)1102、rom(只读存储器)1103、系统总线1104、硬盘控制器1105、键盘控制器1106、串行接口控制器1107、并行接口控制器1108、显示控制器1109、硬盘1110、键盘1111、串行外部设备1112、并行外部设备1113和显示器1114。在这些部件中,与系统总线1104相连的有cpu1101、ram1102、rom1103、硬盘控制器1105、键盘控制器1106、串行控制器1107、并行控制器1108和显示控制器1109。硬盘1110与硬盘控制器1105相连,键盘1111与键盘控制器1106相连,串行外部设备1112与串行接口控制器1107相连,并行外部设备1113与并行接口控制器1108相连,以及显示器1114与显示控制器1109相连。应当理解,图5所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明的限制。在某些情况下,可以根据需要增加或者减少其中的一些设备。

特别地,除硬件实施方式之外,本发明的实施方式可以通过计算机程序产品的形式实现。例如,参考图2描述的方法200可以通过计算机程序产品来实现。该计算机程序产品可以存储在ram、rom、硬盘和/或任何适当的存储介质中,或者通过网络从适当的位置下载到计算机系统上。计算机程序产品可以包括计算机代码部分,其包括可由适当的处理设备执行的程序指令。

依据以下条款可更好地理解前述内容

条款1:一种图像标注系统,包括:

支撑框架,所述支撑框架是由多块支撑板材搭建而成的多面体结构;

至少两台相机,安装在所述支撑框架的多块支撑板材中的至少两块支撑板材上;以及标注装置,被配置为接收所述至少两台相机拍摄的两幅或多幅待处理图像,并对所述待处理图像数据中的手部进行标注。

条款2:根据条款1所述的图像标注系统,其中,所述支撑框架是由二十块正三角形支撑板材搭建而成的正二十面体结构,所述二十块三角形支撑板材中的部分支撑板材的顶点留有开放缺口。

条款3:根据条款1或2所述的图像标注系统,其中,所述支撑板材的中央区域上设置有安装孔组,用于安装相机。

条款4:根据条款1或2所述的图像标注系统,其中,所述支撑板材的边缘区域设置有拼接孔组,用于与所述支撑框架的相邻支撑板材的固定。

条款5:根据条款1或2所述的图像标注系统,其中,所述支撑板材是透明材质的。

条款6:根据条款1或2所述的图像标注系统,其中,所述多块支撑板材中的支撑板材的形状包括正三角形、正方形或其他多边形。

条款7:根据条款1或2所述的图像标注系统,其中,所述多块支撑板材中的支撑板材的侧边留有开放缺口。

条款8:根据条款1或2所述的图像标注系统,其中,所述标注包括以下各项中的一种或多种:从所述两幅或多幅待处理图像中识别出手部的边界框;从所述两幅或多幅待处理图像中识别出手部的二维关键点;从所述两幅或多幅待处理图像中识别出手部的三维关键点;从所述两幅或多幅待处理图像中识别出手部的手势;从所述两幅或多幅待处理图像中识别出手部的特定部位的姿态;以及从所述两幅或多幅待处理图像中识别出手部的手指骨胳长度。

条款9:根据条款1或2所述的图像标注系统,其中,所述标注装置还被配置为指示测试人员做出不同的手势,其中所述测试人员的手部位于所述支撑框架中。

条款10:根据条款1或2所述的图像标注系统,其中,所述标注装置还被配置为识别所述两幅或多幅待处理图像中的属于同一帧图像的图像。

条款11:根据条款1或2所述的图像标注系统,还包括:控制中心,被配置为控制所述至少两台相机的快门同时启动。

条款12:根据条款1或2所述的图像标注系统,还包括:环境控制设备,对支撑框架外的环境进行控制。

条款13:根据条款1或2所述的图像标注系统,还包括:移动平台,被配置为支持所述支撑框架,并能够携带着所述支撑框架移动。

条款1’:一种自动生成手部的标注数据的方法,包括:获取手部的在不同视角下的至少三幅待处理图像;分别在所述至少三幅待处理图像上检测关键点;利用所述至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选,所述关联关系为所述至少三幅待处理图像来自手部的不同视角下的同一帧图像;针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建所述手部的三维空间表示;将所述手部的三维表示上的关键点投影到所述至少三幅待处理图像;以及利用在所述至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

条款2’:根据条款1’所述的方法,其中,所述至少三幅待处理图像是一相机集合拍摄的,所述方法还包括:

对所述相机集合进行标定,求解出所述相机集合的相机内参和相机外参;

条款3’:根据条款2’所述的方法,其中,所述重建所述手部的三维空间表示的步骤还包括:

针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,并结合相机集合的相机内参和相机外参来重建所述手部的三维空间表示。

条款4’:根据条款1’-3’任一项所述的方法,其中,对所检测到的关键点进行筛选,进一步包括:利用ransac算法对所检测到的关键点进行筛选。

条款5’:根据条款1’-3’任一项所述的方法,其中,所述手部的三维空间表示采用球棍模型。

条款6’:根据条款1’-3’任一项所述的方法,其中,所述标注数据包括以下各项中的一种或多种:手部的边界框;手部的二维关键点;手部的三维关键点;手部的手势;手部的特定部位的姿态;以及手部的手指骨骼长度.

条款7’:根据条款1’-3’任一项所述的方法,还包括:指示测试人员做出不同的手势。

条款8’:根据条款1’-3’任一项所述的方法,还包括如下的手指骨骼长度计算方法:

获取手部的在不同视角下的一帧图像中的至少两幅图像;

利用所述不同视角下的至少两幅图像,进行手部的手势识别;

在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;

利用所检测的关键点重建手部的三维表示;以及

根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

条款9’:根据条款8’所述的方法,其中,在分别在至少三幅图像中的每幅手部图像上进行关键点检测的步骤之后,所述手指骨骼长度计算方法进一步包括:

利用同一帧图像中的所述至少三幅图像之间的关联关系,对所检测到的关键点进行筛选,

其中,所述利用所检测的关键点重建手部的三维表示的步骤包括:

利用筛选出的关键点重建手部的三维表示。

条款10’:根据条款9’所述的方法,其中,所述至少三幅图像是一相机集合拍摄的,所述利用筛选出的关键点重建手部的三维表示进一步包括:利用筛选出的关键点并结合所述相机集合的相机集合的内参和外参来重建手部的三维表示。

条款11’:根据条款10’所述的方法,其中,对所检测到的关键点进行筛选进一步包括:利用ransac算法对所检测到的关键点进行筛选。

条款12’:根据条款8’所述的方法,其中,所述简单手势是五指张开手势和抓握手势。

条款13’:根据条款1’-3’任一项所述的方法,其中,所述生成待处理图像上的手部的标注数据为生成手部的边界框,具体包括:

获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据手部的至少两幅二维图像重建的;

根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;

针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;

将所述辅助点投影到所述至少两幅二维图像;

在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

条款14’:根据条款13’所述的方法,其中,所述将所述辅助点投影到所述至少两幅二维图像进一步包括:结合相机集合的内参和外参来计算所述辅助点在所述至少两幅二维图像上的投影位置,其中所述至少两幅图像是利用所述相机集合拍摄的。

条款15’:根据条款13’所述的方法,其中,所述将所述辅助点投影到所述至少两幅二维图像进一步包括:将手部的三维表示中的所述多个三维关键点连同所述辅助点投影到所述至少两幅二维图像。

条款16’:根据条款13’所述的方法,其中,所述关键点对应于手部的关节。

条款17’:一种自动生成手部的标注数据的装置,包括:

获取装置,用于获取针对手部的在不同视角下的至少三幅待处理图像;

检测装置,用于分别在所述至少三幅待处理图像上检测关键点;

筛选装置,用于利用所述至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选,所述关联关系为所述至少三幅待处理图像来自手部的不同视角下的同一帧图像;

重建装置,针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建所述手部的三维空间表示;

投影装置,用于将所述手部的三维表示上的关键点投影到所述至少三幅待处理图像;以及

标注装置,用于利用在所述至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

条款18’:根据条款17’所述的装置,其中,所述至少三幅待处理图像是一相机集合拍摄的,所述装置还包括:

标定装置,用于对所述相机集合进行标定,求解出所述相机集合的相机内参和相机外参。

条款19’:根据条款18’所述的装置,其中,所述重建装置还用于,针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,并结合相机集合的相机内参和相机外参来重建所述手部的三维空间表示。

条款20’:根据条款17’-19’中任一项所述的装置,其中,所述筛选装置还用于,利用ransac算法对所检测到的关键点进行筛选。

条款21’:根据条款17’-19’中任一项所述的装置,其中,所述标注数据包括以下各项中的一种或多种:手部的边界框;手部的二维关键点;手部的三维关键点;手部的手势;手部的特定部位的姿态;以及手部的手指骨骼长度

条款22’:一种自动生成手部的标注数据的系统,包括:图像捕获系统,包括相机集合,被配置为获取针对手部的在不同视角下的至少三幅待处理图像;标注装置,被配置为执行以下操作:分别在所述至少三幅待处理图像上检测关键点;利用所述至少三幅待处理图像之间的关联关系,对所检测到的关键点进行筛选,所述关联关系为所述至少三幅待处理图像来自手部的不同视角下的同一帧图像;针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,重建所述手部的三维空间表示;将所述手部的三维表示上的关键点投影到所述至少三幅待处理图像;以及利用在所述至少三幅待处理图像上的经投影的关键点,生成待处理图像上的手部的标注数据。

条款23’:根据条款22’所述的系统,其中,所述至少三幅待处理图像是一相机集合拍摄的,所述标注装置还被配置为执行以下操作:

对所述相机集合进行标定,求解出所述相机集合的相机内参和相机外参;

条款24’:根据条款23’所述的系统,其中,所述重建所述手部的三维空间表示的操作进一步包括:

针对同一帧图像上的筛选出的关键点,结合给定的手指骨胳长度,并结合相机集合的相机内参和相机外参来重建所述手部的三维空间表示。

条款25’:根据条款22’-24’中任一项所述的系统,其中,所述对所检测到的关键点进行筛选的操作进一步包括:利用ransac算法对所检测到的关键点进行筛选。

条款26’:根据条款22’-24’中任一项所述的系统,还包括:

控制中心,被配置为控制所述至少两台相机的快门同时启动。

条款27’:根据条款22’-24’中任一项所述的系统,还包括:

环境控制设备进行控制,对支撑框架外的环境进行控制。

条款28’:一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如条款1’-16’中任一项所述的标注数据的方法。

条款29’:一种用于计算手指骨骼长度的方法,包括:

获取手部的在不同视角下的一帧图像中的至少两幅图像;

利用所述不同视角下的至少两幅图像,进行手部的手势识别;

在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;

利用所检测的关键点重建手部的三维表示;以及

根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

条款30’:根据条款29’所述的方法,其中,所述至少两幅图像是至少三幅图像,在分别在至少两幅图像中的每幅手部图像上进行关键点检测的步骤之后,所述方法进一步包括:

利用同一帧图像中的所述至少三幅图像之间的关联关系,对所检测到的关键点进行筛选,

其中,所述利用所检测的关键点重建手部的三维表示的步骤包括:

利用筛选出的关键点重建手部的三维表示。

条款31’:根据条款30’所述的方法,其中,所述至少三幅图像是一相机集合拍摄的,所述利用筛选出的关键点重建手部的三维表示进一步包括:利用筛选出的关键点并结合所述相机集合的相机集合的内参和外参来重建手部的三维表示。

条款32’:根据条款31’所述的方法,其中,对所检测到的关键点进行筛选进一步包括:利用ransac算法对所检测到的关键点进行筛选。

条款33’:根据条款29’-32’任一项所述的方法,其中,所述简单手势是五指张开手势和抓握手势。

条款34’:一种用于计算手指骨骼长度的装置,包括:

获取装置,用于获取手部的在不同视角下的一帧图像中的至少两幅图像;

识别装置,用于利用所述不同视角下的至少两幅图像,进行手部的手势识别;

检测装置,用于在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;

重建装置,用于利用所检测的关键点重建手部的三维表示;以及

计算装置,用于根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

条款35’:根据条款34’所述的装置,其中,所述至少两幅图像是至少三幅图像,所述装置进一步包括:

筛选装置,用于利用同一帧图像中的所述至少三幅图像之间的关联关系,对所检测到的关键点进行筛选;其中,所述重建装置用于利用筛选出的关键点重建手部的三维表示。

条款36’:一种用于计算手指骨骼长度的系统,包括:

图像捕获系统,包括相机集合,被配置为获取手部的在不同视角下的一帧图像中的至少两幅图像;

手指骨骼长度计算装置,被配置为执行以下操作:

利用所述不同视角下的至少两幅图像,进行手部的手势识别;

在所识别的手势是预定义简单手势的情形下,分别在至少两幅图像中的每幅手部图像上进行关键点检测;

利用所检测的关键点重建手部的三维表示;以及

根据重建的手部的三维表示上的三维关键点,计算手部的手指骨胳长度。

条款37’:根据条款36’所述的系统,其中,所述至少两幅图像是至少三幅图像,所述手指骨胳长度计算装置还被配置为在分别在至少三幅图像中的每幅手部图像上进行关键点检测的步骤之后执行以下操作:

利用同一帧图像中的所述至少两幅图像之间的关联关系,对所检测到的关键点进行筛选,

其中,所述利用所检测的关键点重建手部的三维表示包括:

利用筛选出的关键点重建手部的三维表示。

条款38’:一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如条款29’-33’中任一项所述的用于计算手指骨骼长度的方法。

条款39’:一种用于计算手势边界框的方法,包括:

获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据手部的至少两幅二维图像重建的;

根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;

针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;

将所述辅助点投影到所述至少两幅二维图像;

在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

条款40’:根据条款39’所述的方法,其中,所述将所述辅助点投影到所述至少两幅二维图像进一步包括:

结合相机集合的内参和外参来计算所述辅助点在所述至少两幅二维图像上的投影位置,其中所述至少两幅图像是利用所述相机集合拍摄的。

条款41’:根据条款39’所述的方法,其中,所述将所述辅助点投影到所述至少两幅二维图像进一步包括:将手部的三维表示中的所述多个三维关键点连同所述辅助点投影到所述至少两幅二维图像。

条款42’:根据条款39’-41’所述的方法,其中,所述关键点对应于手部的关节。

条款43’:根据条款42’所述的方法,其中,对于手指的关键点,对应的辅助几何结构为球体;对于手腕的关键点,对应的辅助几何结构为椭球体。

条款44’:一种用于计算手势边界框的装置,包括:

获取装置,用于获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据手部的至少两幅二维图像重建的;

辅助几何结构生成装置,用于根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;

辅助点生成装置,用于针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;

投影装置,用于将所述辅助点投影到所述至少两幅二维图像;

边界框生成装置,用于在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

条款45’:一种用于计算手势边界框的系统,包括:

图像捕获系统,包括相机集合,被配置为获取手部的在不同视角下的一帧图像中的至少两幅图像;

手势边界框计算装置,被配置为执行以下操作:

获取手部的三维表示中的多个三维关键点的位置,所述手部的三维表示是根据所述至少两幅二维图像重建的;

根据多个三维关键点中的每个关键点的类别,生成与每个关键点相关联的辅助几何结构;

针对每个辅助几何结构,在每个辅助几何结构的表面生成一组辅助点;

将所述辅助点投影到所述至少两幅二维图像;

在所述至少两幅二维图像上,获取所述辅助点的投影中的最上、最下、最左、最右的边缘节点,并且基于这四个节点生成手势边界框。

条款46’:一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如条款39’-43’中任一项所述的计算手势边界框的方法。

应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的装置和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的装置及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。

应当注意,尽管在上文详细描述中提及了装置的若干模块或子模块,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中实现。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。

虽然已经参考目前考虑到的实施方式描述了本发明,但是应该理解本发明不限于所公开的实施方式。相反,本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。以下权利要求的范围符合最广泛解释,以便包含所有这样的修改及等同结构和功能。

以上所述仅为本公开的优选实施例而已,并不用于限制本公开,尽管参照前述实施例对本公开进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1