CN114115544A - 人机交互方法、三维显示设备及存储介质 - Google Patents
人机交互方法、三维显示设备及存储介质 Download PDFInfo
- Publication number
- CN114115544A CN114115544A CN202111445326.1A CN202111445326A CN114115544A CN 114115544 A CN114115544 A CN 114115544A CN 202111445326 A CN202111445326 A CN 202111445326A CN 114115544 A CN114115544 A CN 114115544A
- Authority
- CN
- China
- Prior art keywords
- hand
- virtual object
- dimensional
- dimensional display
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000003993 interaction Effects 0.000 title claims abstract description 49
- 238000013519 translation Methods 0.000 claims abstract description 73
- 238000003062 neural network model Methods 0.000 claims description 60
- 210000000707 wrist Anatomy 0.000 claims description 33
- 244000060701 Kaempferia pandurata Species 0.000 claims description 17
- 235000016390 Uvaria chamae Nutrition 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000003068 static effect Effects 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000012549 training Methods 0.000 description 7
- 210000003128 head Anatomy 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 239000011521 glass Substances 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 210000004247 hand Anatomy 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 241000203475 Neopanax arboreus Species 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 210000002478 hand joint Anatomy 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 210000003857 wrist joint Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开了一种人机交互方法、三维显示设备及存储介质,属于人机交互技术领域。在本申请实施例中,通过三维显示设备所包括的相机来采集手部图像,基于手部图像确定手部的三维旋转信息和三维平移信息,从而控制虚拟物体进行与手部的旋转和平移一致的运动。在这种三维显示一体的场景中,使用者无需操控笔之类的器件,即能够像拿着实物一样来移动和旋转虚拟物体进行仔细观摩。可见本方案的用户操作不受限,虚拟物体的运动也更灵活和真实。
Description
技术领域
本申请实施例涉及人机交互技术领域,特别涉及一种人机交互方法、三维显示设备及存储介质。
背景技术
三维显示技术的快速发展,为现实世界和虚拟世界的交互搭建了桥梁。基于三维显示技术的产品包括三维显示一体机。三维显示一体机包括三维显示屏,三维显示屏用于显示三维的虚拟物体,使用者通过佩戴眼镜或裸眼可以观看到所显示的虚拟物体。在使用者观看虚拟物体的过程中,如何进行人机交互以操控虚拟物体是当前研究的热点。
发明内容
本申请实施例提供了一种人机交互方法、装置、三维显示设备、存储介质及程序产品,可以精准操控所显示的虚拟物体进行运动。所述技术方案如下:
一方面,提供了一种人机交互方法,应用于三维显示设备,所述三维显示设备包括三维显示屏和相机,所述方法包括:
获取所述相机采集的第一手部图像;
基于所述第一手部图像,确定手部的多个关节点的坐标;
基于所述多个关节点的坐标,确定所述手部的三维旋转信息和三维平移信息;
基于所述手部的三维旋转信息和三维平移信息,控制目标虚拟物体进行与所述手部的旋转和平移一致的运动,所述目标虚拟物体为所述三维显示屏显示的多个虚拟物体中当前被选中的虚拟物体。
可选地,所述多个关节点包括手腕节点和指根节点;
所述基于所述多个关节点的坐标,确定所述手部的三维旋转信息和三维平移信息,包括:
基于所述多个关节点的坐标,建立所述手部的刚体模型;
基于所述刚体模型,以及所述手腕节点的坐标和指根节点的坐标,确定所述手腕节点的三维旋转信息和三维平移信息;
将所述手腕节点的三维旋转信息和三维平移信息,作为所述手部的三维旋转信息和三维平移信息。
可选地,所述基于所述第一手部图像,确定手部的多个关节点的坐标,包括:
将所述第一手部图像输入第一神经网络模型,以得到所述第一神经网络模型输出的所述多个关节点的坐标。
可选地,所述获取第一手部图像之前,还包括:
获取所述相机采集的第二手部图像;
基于所述第二手部图像,确定所述手部与所述多个虚拟物体中各个虚拟物体之间的距离;
如果所述多个虚拟物体中存在与所述手部之间的距离小于第一阈值的虚拟物体,则将所述多个虚拟物体中与所述手部之间的距离最小的虚拟物体确定为所述目标虚拟物体,并选中所述目标虚拟物体。
可选地,所述基于所述第二手部图像,确定所述手部与所述多个虚拟物体中各个虚拟物体之间的距离之后,还包括:
如果所述多个虚拟物体中不存在与所述手部之间的距离小于所述第一阈值的虚拟物体,则基于一帧或多帧第三手部图像,识别所述手部的手势,所述一帧或多帧第三手部图像中的最后一帧图像为所述第二手部图像;
如果识别到的手势为第一预定义手势,则基于所述第二手部图像,确定所述手部的位姿;
基于所述手部的位姿,确定一条手部射线;
将所述多个虚拟物体中与所述手部射线相交的虚拟物体确定为所述目标虚拟物体,并选中所述目标虚拟物体。
可选地,所述第一预定义手势为手掌张开且朝向所述三维显示屏的手势,所述手部射线与所述手掌所在平面垂直,所述手部的位姿包括所述手掌的位置和角度;或者,
所述第一预定义手势为一根手指指向所述三维显示屏的手势,所述手部射线的方向与所述手指的指向一致,所述手部的位姿包括所述手指的位置和指向。
可选地,所述基于一帧或多帧第三手部图像,识别所述手部的手势,包括:
将所述一帧或多帧第三手部图像输入第二神经网络模型,以得到所述第一神经网络模型输出的手势识别结果。
可选地,所述基于一帧或多帧第三手部图像,识别所述手部的手势,包括:
将所述一帧或多帧第三手部图像输入第一神经网络模型,以得到所述第一神经网络模型输出的一个或多个关节点坐标集,所述一个或多个关节点坐标集与所述一帧或多帧第三手部图像一一对应;
将所述一个或多个关节点坐标集输入第三神经网络模型,以得到所述第三神经网络模型输出的手势识别结果。
可选地,所述方法还包括:
获取所述相机采集的第四手部图像;
基于所述第四手部图像,确定所述手部的位姿和动作;
基于所述手部的位姿,生成一条手部射线;
基于所述手部射线和所述手部的动作,控制所述目标虚拟物体的运动。
另一方面,提供了一种人机交互装置,应用于三维显示设备,所述三维显示设备包括三维显示屏和相机,所述装置包括:
第一获取模块,用于获取所述相机采集的第一手部图像;
第一确定模块,用于基于所述第一手部图像,确定手部的多个关节点的坐标;
第二确定模块,用于基于所述多个关节点的坐标,确定所述手部的三维旋转信息和三维平移信息;
第一控制模块,用于基于所述手部的三维旋转信息和三维平移信息,控制目标虚拟物体进行与所述手部的旋转和平移一致的运动,所述目标虚拟物体为所述三维显示屏显示的多个虚拟物体中当前被选中的虚拟物体。
可选地,所述多个关节点包括手腕节点和指根节点;
所述第二确定模块包括:
建模子模块,用于基于所述多个关节点的坐标,建立所述手部的刚体模型;
第一确定子模块,用于基于所述刚体模型,以及所述手腕节点的坐标和指根节点的坐标,确定所述手腕节点的三维旋转信息和三维平移信息;
第二确定子模块,用于将所述手腕节点的三维旋转信息和三维平移信息,作为所述手部的三维旋转信息和三维平移信息。
可选地,所述第一确定模块包括:
第一处理子模块,用于将所述第一手部图像输入第一神经网络模型,以得到所述第一神经网络模型输出的所述多个关节点的坐标。
可选地,所述装置还包括:
第二获取模块,用于获取所述相机采集的第二手部图像;
第三确定模块,用于基于所述第二手部图像,确定所述手部与所述多个虚拟物体中各个虚拟物体之间的距离;
第四确定模块,用于如果所述多个虚拟物体中存在与所述手部之间的距离小于第一阈值的虚拟物体,则将所述多个虚拟物体中与所述手部之间的距离最小的虚拟物体确定为所述目标虚拟物体,并选中所述目标虚拟物体。
可选地,所述装置还包括:
手势识别模块,用于如果所述多个虚拟物体中不存在与所述手部之间的距离小于所述第一阈值的虚拟物体,则基于一帧或多帧第三手部图像,识别所述手部的手势,所述一帧或多帧第三手部图像中的最后一帧图像为所述第二手部图像;
第五确定模块,用于如果识别到的手势为第一预定义手势,则基于所述第二手部图像,确定所述手部的位姿;
第六确定模块,用于基于所述手部的位姿,确定一条手部射线;
第七确定模块,用于将所述多个虚拟物体中与所述手部射线相交的虚拟物体确定为所述目标虚拟物体,并选中所述目标虚拟物体。
可选地,所述第一预定义手势为手掌张开且朝向所述三维显示屏的手势,所述手部射线与所述手掌所在平面垂直,所述手部的位姿包括所述手掌的位置和角度;或者,
所述第一预定义手势为一根手指指向所述三维显示屏的手势,所述手部射线的方向与所述手指的指向一致,所述手部的位姿包括所述手指的位置和指向。
可选地,所述手势识别模块包括:
第二处理子模块,用于将所述一帧或多帧第三手部图像输入第二神经网络模型,以得到所述第一神经网络模型输出的手势识别结果。
可选地,所述手势识别模块包括:
第三处理子模块,用于将所述一帧或多帧第三手部图像输入第一神经网络模型,以得到所述第一神经网络模型输出的一个或多个关节点坐标集,所述一个或多个关节点坐标集与所述一帧或多帧第三手部图像一一对应;
第四处理子模块,用于将所述一个或多个关节点坐标集输入第三神经网络模型,以得到所述第三神经网络模型输出的手势识别结果。
可选地,所述装置还包括:
第三获取模块,用于获取所述相机采集的第四手部图像;
第八确定模块,用于基于所述第四手部图像,确定所述手部的位姿和动作;
生成模块,用于基于所述手部的位姿,生成一条手部射线;
第二控制模块,用于基于所述手部射线和所述手部的动作,控制所述目标虚拟物体的运动。
另一方面,提供了一种三维显示设备,所述三维显示设备包括三维显示屏、处理器和相机;
所述三维显示屏用于显示虚拟物体;
所述相机用于采集手部图像;
所述处理器用于实现上述所述人机交互方法的步骤。
可选地,所述三维显示屏还用于显示手部射线,所述手部射线基于所述手部图像生成。
另一方面,提供了一种电子设备,所述电子设备包括处理器、通信接口、存储器和通信总线,所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信,所述存储器用于存放计算机程序,所述处理器用于执行所述存储器上所存放的程序,以实现上述所述人机交互方法的步骤。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述所述人机交互方法的步骤。
另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述所述的人机交互方法的步骤。
本申请实施例提供的技术方案至少可以带来以下有益效果:
在本申请实施例中,通过三维显示设备所包括的相机来采集手部图像,基于手部图像确定手部的三维旋转信息和三维平移信息,从而控制虚拟物体进行与手部的旋转和平移一致的运动。在这种三维显示一体的场景中,使用者无需操控笔之类的器件,即能够像拿着实物一样来移动和旋转虚拟物体进行仔细观摩。可见本方案的用户操作不受限,虚拟物体的运动也更灵活和真实。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的手部关节点的示意图;
图2是本申请实施例提供的手部的刚体模型与自由度划分的示意图;
图3是本申请实施例提供的一种人机交互方法的示意图;
图4是本申请实施例提供的另一种人机交互方法的流程图;
图5是本申请实施例提供的又一种人机交互方法的流程图;
图6是本申请实施例提供的又一种人机交互方法的流程图;
图7是本申请实施例提供的一种人机交互装置的结构示意图;
图8是本申请实施例提供的一种三维显示设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于理解,首先对本申请实施例所涉及的部分术语进行解释。
三维显示设备:可显示三维立体影像的设备,所显示的三维立体影像包括三维的虚拟物体。当前,使用者可通过佩戴眼镜或裸眼来观看三维显示设备所显示的虚拟物体。在本申请实施例中,三维显示设备包括三维显示屏、相机和处理器。三维显示屏用于显示虚拟物体,相机用于采集使用者的手部图像,处理器用于基于手部图像来操控虚拟物体,以实现人机交互。其中,在使用者佩戴眼镜观看虚拟物体的实现方式中,三维显示屏可以采用偏振技术等实现,或者使用者佩戴快门眼镜等观看。在使用者裸眼观看虚拟物体的实现方式中,三维显示屏可采用光栅技术或光场裸眼三维成像技术等实现。另外,该相机可以为深度相机、双目相机等,以采集图像以及测距等。可选地,测距可以基于深度相机采集的深度图像实现,也可以基于双目相机采集的灰度图像实现,也可以基于ToF(Time of Light,飞行时间)技术或其他的技术实现。
三维显示中的出屏和入屏:根据三维显示屏来判断所显示的虚拟物体是向屏内纵深还是向屏外扩展,也即虚拟物体的出屏和入屏。
DoF(degree of freedom,自由度):指示独立坐标的个数,即运动维度的个数。本申请实施例涉及手部相关的自由度。在本申请实施例中,按照手部所包括的关节点的运动维度,划分26个自由度。请参照图1和图2,图1示出了手部的21个关节点,即从手腕节点(也称为掌跟节点)至指尖节点的21个关节点。图1中左侧为手部真实关节点的一个示例图,图1中右侧为描绘的手部关节点的示意图。图2示出了手部的刚体模型以及所划分的26个自由度。图2中(d)为一个手部的图像,(a)为该手部的刚体模型的示意图,(b)为该手部图像对应的21个关节点的示意图,(c)为该手部的26个自由度的示意图。其中,手腕节点有6个自由度,包括三维平移和三维旋转,即手腕节点有6DoF的运动维度。每个指根节点有2个自由度,包括二维旋转,即指根节点有2DoF的运动维度。每个指间节点有1个自由度,包括一维旋转,即指间节点有1DoF的运动维度。需要说明的是,在本申请实施例中,手腕节点的六自由度信息可以作为手部的六自由度信息,也即手部的全局自由度信息。换句话说,手腕节点的平移和旋转可以代表手部全局的平移和旋转。需要说明的是,将手腕节点的六自由度信息作为手部的六自由度信息的实现方式并不用于限制本申请实施例。在另一些实施例中,通过手部的一个或多个关节点的自由度信息也能够确定出手部的全局自由度信息,该一个或多个关节点可包括手腕节点,也可不包括手腕节点。
需要说明的是,本申请实施例所提供的三维显示设备(也称为三维显示一体机)以及人机交互方法可应用于各行各业、各种场景中。例如,应用于为商场、家庭等场景所提供的游戏产品中,以供使用者体验三维显示科技。又如,应用于为控制中心、会议室等所提供的三维显示产品中,以供使用者通过人机交互来展示信息等。
示例性地,该三维显示设备包括三维显示屏、处理器和相机。例如,该三维显示设备包括三维显示器和相机,三维显示器包括三维显示屏和处理器。其中,相机为三维显示设备中用户交互组件的一部分。在三维显示屏显示虚拟物体的过程中,使用者可在三维显示屏前通过手部来进行人机交互。例如,使用者站在三维显示屏前通过手部来增加、删除、选中某个虚拟物体,以及操控所选中的虚拟物体等等。其中,相机可实时采集使用者的手部图像,将手部图像发送给处理器,处理器根据本申请实施例提供的人机交互方法来更新所显示的虚拟物体,如增加、删除、拆解、移动、旋转虚拟物体等。
本申请实施例描述的及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
接下来对本申请实施例提供的人机交互方法进行详细的解释说明。
图3是本申请实施例提供的一种人机交互方法的流程图。该方法应用于三维显示设备,该三维显示设备包括三维显示屏、处理器和相机。请参考图3,该方法包括如下步骤。
步骤301:获取三维显示设备中相机采集的第一手部图像。
在本申请实施例中,三维显示设备中的相机用于采集手部图像,处理器获取相机所采集的手部图像,后续能够基于手部图像来进行人机交互。这里以相机当前采集的手部图像为第一手部图像为例进行介绍。需要说明的是,第一手部图像为选中目标虚拟物体之后相机采集的手部图像。目标虚拟物体为三维显示屏所显示的多个虚拟物体中当前被选中的虚拟物体。
可选地,该相机为深度相机或多目相机(如双目相机)。在本申请实施例中,该相机固定于三维显示屏的边缘(如上边缘或下边缘等),或者,该相机内置于三维显示屏内。该相机的拍摄视角对准三维显示屏的前方,以采集站在三维显示屏前的使用者的手部图像。可选地,该相机以固定频率采集手部图像。在一些情况下,该相机也可以在接收到触发信号时采集手部图像。
在本申请实施例中,使用者可以通过单手来进行人机交互,或者,使用者可以通过双手来进行人机交互,或者,使用者既可以通过单手也可以通过双手来进行人机交互。基于此,相机所采集的手部图像可以为单手或双手的图像。在本申请实施例中,以第一手部图像为单手图像为例进行介绍。
步骤302:基于第一手部图像,确定手部的多个关节点的坐标。
在本申请实施例中,处理器获取到第一手部图像之后,基于第一手部图像,确定手部的多个关节点的坐标。可选地,处理器将第一手部图像输入第一神经网络模型,以得到第一神经网络模型输出的多个关节点的坐标。也即是,处理器可以通过第一神经网络模型来估计手部的关节点的坐标。
需要说明的是,本申请实施例不限定第一神经网络模型所采用的算法、网络框架、网络层数和训练方式等。例如,第一神经网络模型为一种卷积神经网络模型,或者为一种循环卷积神经网络模型,或者为其他类型的网络模型。另外,第一神经网络模型预先经过大量的手部图像样本训练得到。其中,用于训练第一神经网络模型的手部图像样本标注有关节点的坐标。
另外,该多个关节点的坐标为三维空间坐标系下的坐标,在本申请实施例中,该多个关节点的坐标为相机坐标系下的坐标。可选地,该多个关节点包括手部的21个关节点,或者,该多个关节点包括手腕节点和指根节点,其中,指根节点为5个。也即是,第一神经网络模型为能够估计出手部全部的21个关节点坐标的模型,或者,第一神经网络模型为能够估计出手部局部的6个关节点坐标的模型。第一神经网络模型所估计出的关节点的坐标能够用于后续确定手部的六自由度信息即可。简单来说,第一神经网络模型能够估计出手腕节点和指根节点的坐标,除此之外,第一神经网络模型是否还能够估计出其他关节点的坐标,本申请实施例对此不作限定。接下来以第一神经网络模型能够估计出手部的21个关节点的坐标为例进行介绍。
步骤303:基于该多个关节点的坐标,确定手部的三维旋转信息和三维平移信息。
在本申请实施例中,处理器基于该多个关节点的坐标,确定手部的三维旋转信息和三维平移信息。
由前述可知,该多个关节点包括手腕节点和指根节点。可选地,处理器基于该多个关节点的坐标,建立手部的刚体模型,基于该刚体模型,以及手腕节点的坐标和指根节点的坐标,确定手腕节点的三维旋转信息和三维平移信息,将手腕节点的三维旋转信息和三维平移信息,作为手部的三维旋转信息和三维平移信息。在本申请实施例中,六自由度信息包括三维旋转信息和三维平移信息,六自由度信息也可被称为6DoF的运动信息,手部的六自由度信息也可称为手部6DoF的位姿信息。需要说明的是,在本申请实施例中,手部的三维旋转信息和三维平移信息即手部的六自由度信息,手部的六自由度信息为手部的全局自由度信息。简单来说,在本申请实施例中,处理器能够通过手部建模来确定手部的位姿。
可选地,假设该多个关节点包括手部的21个关节点,则处理器基于这21个关节点的坐标,建立手部的刚体模型更加精确,所建立的刚体模型为26DoF的刚体模型(如图2所示)。处理器基于这21个关节点的坐标以及手部的刚体模型,能够计算出手部26DoF的运动信息,手部26DoF的运动信息包括手腕节点的六自由度信息。之后,处理器将手腕节点的六自由度信息作为手部的六自由度信息,也即得到手部6DoF的位姿信息。
需要说明的是,将手腕节点的六自由度信息作为手部的六自由度信息的实现方式并不用于限制本申请实施例。在另一些实施例中,通过手部的一个或多个关节点的坐标也能够确定出手部的六自由度信息,该一个或多个关节点可包括手腕节点,也可不包括手腕节点。例如,基于手部的刚体模型,以及手腕节点、指根节点和指中节点的坐标,确定手部的六自由度信息。又如,基于手部的刚体模型,以及指根节点、指中节点和指尖节点的坐标,确定手部的六自由度信息。
步骤304:基于手部的三维旋转信息和三维平移信息,控制目标虚拟物体进行与手部的旋转和平移一致的运动,目标虚拟物体为三维显示屏显示的多个虚拟物体中当前被选中的虚拟物体。
在本申请实施例中,处理器在确定手部的三维旋转信息和三维平移信息之后,基于手部的三维旋转信息和三维平移信息,控制目标虚拟物体进行与手部的旋转和平移一致的运动。其中,目标虚拟物体为三维显示屏所显示的多个虚拟物体中当前被选中的虚拟物体。需要说明的是,三维显示屏当前也可以仅显示一个虚拟物体,该虚拟物体可被使用者通过手势选中。
在本申请实施例中,手部的六自由度信息描述了手部的平移运动和旋转运动。当手部选中目标虚拟物体,并与目标虚拟物体进行交互的过程中,若手部进行平移运动,则目标虚拟物体进行相一致的平移运动,若手部进行旋转运动,则目标虚拟物体进行相一致的旋转运动,若手部进行平移和旋转的组合运动,则目标虚拟物体进行相一致的组合运动。也即是,目标虚拟物体的位姿变化与手部的位姿变化时刻保持一致。若手部的位姿更新,则目标虚拟物体的位姿随之更新。就像是手部操控一个真实物体一样,使用者可以将目标虚拟物体拿近拿远,可以旋转目标虚拟物体以仔细观摩,可以拿着目标虚拟物体随意的运动,这些操作都可以基于手部的六自由度信息实现。
可选地,处理器控制目标虚拟物体进行与手部的旋转和平移一致的运动的实现方式为:处理器控制目标虚拟物体进行与手部的旋转和平移完全相同的运动,或者,处理器按照预设平移倍速,控制目标虚拟物体进行与手部的旋转和平移一致的运动,或者,处理器按照预设旋转倍速,控制目标虚拟物体进行与手部的旋转和平移一致的运动,或者,处理器按照预设平移倍速和预设旋转倍速,控制目标虚拟物体进行与手部的旋转和平移一致的运动。其中,预设平移倍速为0.5倍速、1倍速、1.5倍速或2倍速等,预设旋转倍速为0.5倍速、1倍速、1.5倍速或2倍速等。例如,假设预设平移倍速为2倍速,则处理器控制目标虚拟物体进行与手部的旋转和平移一致的运动的过程中,目标虚拟物体的平移速度是手部的平移速度的两倍,目标虚拟物体的旋转速度与手部的旋转速度相同。又如,假设预设旋转倍速为0.5倍速,则处理器控制目标虚拟物体进行与手部的旋转和平移一致的运动的过程中,目标虚拟物体的平移速度与手部的平移速度相同,目标虚拟物体的旋转速度是手部的旋转速度的0.5倍。又如,假设预设平移倍速和预设旋转倍速均为2倍速,则处理器控制目标虚拟物体进行与手部的旋转和平移一致的运动的过程中,目标虚拟物体的平移速度是手部的平移速度的两倍,目标虚拟物体的旋转速度是手部的旋转速度的2倍。
需要说明的是,在基于手部的三维旋转信息和三维平移信息操控目标虚拟物体运动之前,需要先选中目标虚拟物体。在本申请实施例中,根据虚拟物体的出屏显示和入屏显示,具体地根据手部与虚拟物体之间的距离,自由切换两种交互方式,即手部直接接触式交互和手部射线交互。这两种交互方式包括选中虚拟物体的方式。接下来将对这两种选中虚拟物体的方式进行介绍。
第一种选中虚拟物体的方式为手部直接选中的方式。在获取第一手部图像之前,处理器获取相机采集的第二手部图像,基于第二手部图像,确定手部与三维显示屏所显示的多个虚拟物体中各个虚拟物体之间的距离。如果该多个虚拟物体中存在与手部之间的距离小于第一阈值的虚拟物体,则处理器将该多个虚拟物体中与手部之间的距离最小的虚拟物体确定为目标虚拟物体,并选中目标虚拟物体。
可选地,处理器基于第二手部图像,确定手部与相机之间的距离,基于手部与相机之间的距离,以及该多个虚拟物体中各个虚拟物体与三维显示屏之间的距离,确定手部与该多个虚拟物体中各个虚拟物体之间的距离。其中,该多个虚拟物体中各个虚拟物体与三维显示屏之间的距离,即各个虚拟物体的出屏距离或入屏距离。该相机位于三维显示屏上,即相机与三维显示屏的距离为零。可选地,处理器可以基于深度学习算法识别第二手部图像中的手部所在区域,确定手部所在区域占第二手部图像的比例,基于该比例来确定手部与相机之间的距离。或者,处理器也可以采用其他方法来确定手部与相机之间的距离。
可选地,第一阈值为预设的数值,例如第一阈值为2cm(厘米)、3cm等。
示例性地,假设三维显示屏所显示的虚拟物体A为出屏显示,第一阈值为2cm,虚拟物体A与手部之间的距离最小且小于2cm,表示使用者所看到的虚拟物体A就在使用者的手旁,就像使用者可以直接触摸到(即拿住)虚拟物体A一样,这种情况下,处理器将虚拟物体A确定为目标虚拟物体,并选中虚拟物体A。后续处理器可以通过前述步骤301至304来控制虚拟物体A进行与手部的旋转和平移一致的运动。
可选地,处理器基于该多个虚拟物体中各个虚拟物体与三维显示屏之间的距离,确定该多个虚拟物体中的各个虚拟物体为出屏显示或入屏显示。在第一虚拟物体为出屏显示的情况下,处理器生成提示信息,以引导使用者向三维显示屏靠近,从而使得手部与第一虚拟物体之间的距离减小,在该距离减小至不超过第一阈值时,手部直接选中第一虚拟物体。其中,第一虚拟物体为该多个虚拟物体中的一个。示例性地,在三维显示设备提供的教学模式或训练模式中,处理器可在虚拟物体出屏显示的情况下,引导使用者靠近三维显示屏,从而学习如何通过手部直接选中某个虚拟物体。或者,在使用者未选中虚拟物体的任意时刻,处理器均可以通过判断虚拟物体是否出屏显示,从而引导使用者通过手部选中虚拟物体。
需要说明的是,使用者也可以在观看到第一虚拟物体出屏显示,但第一虚拟物体离手部较远的情况下主动靠近三维显示屏,从而使得手部与第一虚拟物体之间的距离减小,在该距离减小至不超过第一阈值时,通过手部直接选中第一虚拟物体。
第二种选中虚拟物体的方式为通过手部射线选中的方式。在获取第一手部图像之前,处理器获取相机采集的第二手部图像,基于第二手部图像,确定手部与三维显示屏所显示的多个虚拟物体中各个虚拟物体之间的距离之后,如果该多个虚拟物体中不存在与手部之间的距离小于第一阈值的虚拟物体,则处理器基于一帧或多帧第三手部图像,识别手部的手势,该一帧或多帧第三手部图像中的最后一帧图像为第二手部图像。如果识别到的手势为第一预定义手势,则处理器基于第二手部图像,确定手部的位姿。处理器基于手部的位姿,确定一条手部射线,将该多个虚拟物体中与手部射线相交的虚拟物体确定为目标虚拟物体,并选中目标虚拟物体。
其中,该一帧或多帧第三手部图像包括上一次识别到一个预定义手势之后采集的手部图像,上一次识别到的预定义手部不是第一预定义手势。示例性地,处理器上一次识别到预定义的增加手势,增加手势用于增加一个虚拟物体。之后,相机又采集了多帧第三手部图像。其中,相机每采集一帧第三手部图像,处理器对这一帧第三手部图像进行静态手势分析,以识别预定义的静态手势。若识别到预定义的一个静态手势,则处理器执行该静态手势所对应的控制指令。若未识别到预定义的静态手势,则处理器继续对下一帧第三手部图像进行静态手势分析,以及对识别到增加手势之后获取的几帧第三手部图像进行动态手势分析,以识别预定义的动态手势。也即是,处理器既能够进行实时的静态手势分析,也能够进行实时的动态手势分析。
需要说明的是,本申请实施例中手部识别的实现方式有多种。接下来介绍处理器基于该一帧或多帧第三手部图像进行手势识别的两种实现方式。
在第一种实现方式中,处理器将该一帧或多帧第三手部图像输入第二神经网络模型,以得到第一神经网络模型输出的手势识别结果。也即是,处理器基于单帧或多帧手部图像直接采用神经网络模型进行手势识别,以得到手势识别结果。手势识别结果包括所识别到的手势,或者包括未识别到预定义手势的指示信息。
需要说明的是,本申请实施例不限定第二神经网络模型所采用的算法、网络框架、网络层数和训练方式等。例如,第二神经网络模型为一种卷积神经网络模型,或者为一种循环卷积神经网络模型,或者为支持向量机模型,或者为其他类型的网络模型。另外,第二神经网络模型预先经过大量的手部图像样本训练得到。其中,用于训练第二神经网络模型的手部图像样本标注有手势信息。
在第二种实现方式中,处理器将该一帧或多帧第三手部图像输入第一神经网络模型,以得到第一神经网络模型输出的一个或多个关节点坐标集,该一个或多个关节点坐标集与一帧或多帧第三手部图像一一对应。处理器将一个或多个关节点坐标集输入第三神经网络模型,以得到第三神经网络模型输出的手势识别结果。其中,该一个或多个关节点坐标集中的各个关节点坐标集均包括多个关节点的坐标,可选地,该多个关节点包括手部的21个关节点。也即是,处理器先基于单帧或多帧手部图像采用神经网络模型估计出关节点的坐标,再基于关节点的坐标进行手势识别,以得到手势识别结果。
在本申请实施例中,预定义手势包括预定义的静态手势和/或动态手势。第一预定义手势为选中手势,用于选中目标虚拟物体。可选地,第一预定义手势为一个静态手势或一个动态手势。在本申请实施例中,以第一预定义手势为一个静态手势为例进行介绍。
可选地,第一预定义手势为手掌张开且朝向三维显示屏的手势,手部射线与手掌所在平面垂直,基于第二手部图像所确定的手部的位姿包括手掌的位置和角度。或者,第一预定义手势为一根手指指向三维显示屏的手势,手部射线的方向与手指的指向一致,基于第二手部图像所确定的手部的位姿包括手指的位置和指向。或者,第一预定义手势为握拳的手势,手部射线的方向与拳头的指向一致,基于第二手部图像所确定手部的位姿包括拳头的位置和指向。或者,第一预定义手势为其他的手势。由此可见,使用者可以通过手部发出一条虚拟射线去瞄准并选中目标虚拟物体,进而操控虚拟物体。
需要说明的是,使用者除了单纯通过手部来选中虚拟物体之外,也可以通过身体其他部位与手部配合来选中虚拟物体,或者,也可以通过身体其他部位来选中虚拟物体。例如,在一些实现方式中,相机所拍摄的手部图像不仅包含手部信息,还包括身体信息,身体信息如使用者的头部位姿、腰部位姿或肩部位姿等,处理器基于该一帧或多帧第三手部图像,确定手部关节点的坐标,还能够确定指定部位的位置,指定部位的位置如头部位置或腰部位置或肩部位置等。处理器所确定的手部射线的方向,与该指定部位到手部某一关节点的连线的方向一致。在另一些实现方式中,处理器也可以通过头部位姿确定一条射线,从而通过该射线选中某个虚拟物体,该射线的方向与头部位姿所指示的方向一致。
可选地,身体信息除了可以通过相机拍摄的图像得到,也可以通过使用者佩戴的装置得到,本申请实施例对此不作限定。例如,头部位姿也可以通过使用者佩戴的眼镜得到,该眼镜可以与处理器进行通信,将实时的头部位姿发送给处理器。腰部位姿也可以通过使用者腰部佩戴的且与处理器建立有通信连接的腰带或其他装置得到。肩部位姿也可以通过使用者肩部佩戴的且与处理器建立有通信连接的装置得到。
需要说明的是,在选中目标虚拟物体之前,移动手部的话,手部射线的方向也会相应改变。可选地,当处理器确定手部射线指向某个虚拟物体的时长大于第二阈值时,处理器将该虚拟物体确定为目标虚拟物体,并选中目标虚拟物体。其中,第二阈值为预设的数值,例如第二阈值为1s(秒)或2s等。也即是,使用者通过手部射线指向目标虚拟物体并持续一定时长后选中目标虚拟物体。
可选地,三维显示屏可以显示手部射线,以使用户更加直观地看出是否选中想要操控的目标虚拟物体。或者,当选中目标虚拟物体时,处理器生成提示信息,以提示选中目标虚拟物体。其中,该提示信息可以通过文字或者声音的方式提示给使用者。
处理器除了能够基于手部的三维旋转信息和三维平移信息控制虚拟物体的运动之外,在一些实施例中,处理器还能够基于手部射线来控制虚拟物体的运动。示例性地,处理器获取相机采集的第四手部图像,基于第四手部图像确定手部的位姿和动作,基于该手部的位姿生成一条手部射线,基于该手部射线和该手部的动作控制目标虚拟物体的运动。
其中,处理器将第四手部图像输入第一神经网络模型,以得到第一神经网络模型输出的多个关节点的坐标,处理器基于该多个关节点的坐标,确定手部的位姿和动作。或者,处理器也可以采用其他方法确定手部的位姿和动作,本申请实施例对此不作限定。另外,处理器在生成手部射线之后,通过该手部射线选中目标虚拟物体,控制目标虚拟物体按照该手部射线的指向进行移动,以及按照手部的动作做相一致的动作。示例性地,假设手部射线的指向向左移动,那么目标虚拟物体也向左移动,同时若手部的动作为左右旋转的动作,那么目标虚拟物体同时做出左右旋转的动作。
接下来请参考图4对以上实施例再次进行示例性说明。
图4是本申请实施例提供的另一种人机交互方法的流程图。参见图4,三维显示屏显示有虚拟物体,处理器根据虚拟物体与三维显示屏之间的距离,能够确定虚拟物体为出屏显示或入屏显示。在虚拟物体为入屏显示的情况下,处理器基于手部图像识别手部的手势和手部的位姿。若识别到的手势为选中手势,则处理器基于手部的位姿,计算一条指向某个虚拟物体的手部射线,通过手部射线选中该虚拟物体,并基于手部图像来控制该虚拟物体的运动,以更新该虚拟物体的三维显示。在虚拟物体为出屏显示的情况下,处理器基于手部图像确定手部与虚拟物体之间的距离。当手部与某个虚拟物体之间的距离最小且小于第一阈值时,处理器选中该虚拟物体,并基于手部图像来控制该虚拟物体的运动,以更新该虚拟物体的三维显示。这种情况下相当于手部直接选中并操控虚拟物体。
由前述可知,在本申请实施例中,处理器基于一帧或多帧手部图像,能够识别手部的手势,也即检测预定义手势。在识别出手部的手势后,执行与所识别出的手势相对应的控制指令。不同的手势对应不同的控制指令,不同的控制指令控制三维显示屏所显示的虚拟物体的显示状态、个数与姿态等进行不同的变化。其中,显示状态如变亮、变暗、变色、变大或变大等状态。例如前述所介绍的,如果识别到的手势为第一预定义手势(即选中手势),则处理器执行与第一预定义手势对应的控制指令,以选中目标虚拟物体。又如,如果识别到的手势为预定义的唤醒手势,则处理器执行与唤醒手势相对应的控制指令,以新增一个虚拟物体,即,当处理器检测到唤醒手势时,三维显示屏上新增一个虚拟物体。可选地,唤醒手势为五指握拳到五指张开的动态手势或“OK”的手势或其他的手势。又如,如果识别到的手势为预定义的删除手势,则处理器执行与删除手势相对应的控制指令,以删除一个虚拟物体。可选地,删除手势为手掌向左滑动的手势或其他的手势。又如,如果识别到的手势为预定义的拆解手势,则处理器执行与拆解手势相对应的控制指令,以拆解一个虚拟物体。可选地,拆解手势为点击手势。
图5是本申请实施例提供的又一种人机交互方法的流程图。参见图5,在使用者(即用户)作出预定义手势的情况下,处理器通过算法识别出该手势。然后,处理器根据预定义手势与控制指令之间的对应关系,执行与识别到的手势相对应的控制指令,以更新虚拟物体,进而通过三维显示屏更新虚拟物体的三维显示,也即响应使用者作出的手势。其中,处理器通过算法识别手势的实现过程参见前述实施例的相关介绍。
图6是本申请实施例提供的又一种人机交互方法的流程图。参见图6,在使用者通过手部与虚拟物体进行交互的过程中,相机采集手部图像。处理器获取手部图像后,基于手部图像,通过神经网络模型确定手部在三维空间坐标系下的21个关节点的坐标,并通过手部建模确定手部在三维空间坐标系下的位姿,该位姿包括手部的六自由度信息,手部的六自由度信息描述了手部动作,包括手部的平移和旋转运动。处理器还能够基于手部图像识别出预定义的静态手势和动态手势。处理器基于识别出的手势以及手部位姿的变化,控制三维显示屏中所显示的三维图像中虚拟物体的变化。
由前述可知,在本申请实施例中,在三维显示屏显示的虚拟物体为出屏显示时,可以使用手部直接与虚拟物体进行交互,操控虚拟物体运动。在三维显示屏显示的虚拟物体为入屏显示时,使用手部发出的射线操控虚拟物体运动。其中,通过手部的六自由度信息即可控制虚拟物体进行与手部的平移和旋转一致的运动。这样能够使得虚拟物体的运动更加灵活和真实化,用户操作不受限于平移运动,使用者也能够有更好的沉浸式体验。
综上所述,在本申请实施例中,通过三维显示设备所包括的相机来采集手部图像,基于手部图像确定手部的三维旋转信息和三维平移信息,从而控制虚拟物体进行与手部的旋转和平移一致的运动。在这种三维显示一体的场景中,使用者无需操控笔之类的器件,即能够像拿着实物一样来移动和旋转虚拟物体进行仔细观摩。可见本方案的用户操作不受限,虚拟物体的运动也更灵活和真实。
上述所有可选技术方案,均可按照任意结合形成本申请的可选实施例,本申请实施例对此不再一一赘述。
图7是本申请实施例提供的一种人机交互装置700的结构示意图,该人机交互装置700可以由软件、硬件或者两者的结合实现成为三维显示设备的部分或者全部。在本申请实施例中,该装置700应用于三维显示设备,该三维显示设备还包括三维显示屏和相机。请参考图7,该装置700包括:第一获取模块701、第一确定模块702、第二确定模块703和控制模块704。
第一获取模块701,用于获取相机采集的第一手部图像;
第一确定模块702,用于基于第一手部图像,确定手部的多个关节点的坐标;
第二确定模块703,用于基于该多个关节点的坐标,确定手部的三维旋转信息和三维平移信息;
控制模块704,用于基于手部的三维旋转信息和三维平移信息,控制目标虚拟物体进行与手部的旋转和平移一致的运动,目标虚拟物体为三维显示屏显示的多个虚拟物体中当前被选中的虚拟物体。
可选地,该多个关节点包括手腕节点和指根节点;
第二确定模块703包括:
建模子模块,用于基于该多个关节点的坐标,建立手部的刚体模型;
第一确定子模块,用于基于刚体模型,以及手腕节点的坐标和指根节点的坐标,确定手腕节点的三维旋转信息和三维平移信息;
第二确定子模块,用于将手腕节点的手部的三维旋转信息和三维平移信息,作为手部的手部的三维旋转信息和三维平移信息。
可选地,第一确定模块702包括:
第一处理子模块,用于将第一手部图像输入第一神经网络模型,以得到第一神经网络模型输出的多个关节点的坐标。
可选地,该装置700还包括:
第二获取模块,用于获取相机采集的第二手部图像;
第三确定模块,用于基于第二手部图像,确定手部与该多个虚拟物体中各个虚拟物体之间的距离;
第四确定模块,用于如果该多个虚拟物体中存在与手部之间的距离小于第一阈值的虚拟物体,则将该多个虚拟物体中与手部之间的距离最小的虚拟物体确定为目标虚拟物体,并选中目标虚拟物体。
可选地,该装置700还包括:
手势识别模块,用于如果该多个虚拟物体中不存在与手部之间的距离小于第一阈值的虚拟物体,则基于一帧或多帧第三手部图像,识别手部的手势,该一帧或多帧第三手部图像中的最后一帧图像为第二手部图像;
第五确定模块,用于如果识别到的手势为第一预定义手势,则基于第二手部图像,确定手部的位姿;
第六确定模块,用于基于手部的位姿,确定一条手部射线;
第七确定模块,用于将该多个虚拟物体中与该手部射线相交的虚拟物体确定为目标虚拟物体,并选中目标虚拟物体。
可选地,第一预定义手势为手掌张开且朝向三维显示屏的手势,该手部射线与手掌所在平面垂直,手部的位姿包括手掌的位置和角度;或者,
第一预定义手势为一根手指指向三维显示屏的手势,该手部射线的方向与该手指的指向一致,手部的位姿包括手指的位置和指向。
可选地,手势识别模块包括:
第二处理子模块,用于将该一帧或多帧第三手部图像输入第二神经网络模型,以得到第一神经网络模型输出的手势识别结果。
可选地,手势识别模块包括:
第三处理子模块,用于将该一帧或多帧第三手部图像输入第一神经网络模型,以得到第一神经网络模型输出的一个或多个关节点坐标集,该一个或多个关节点坐标集与该一帧或多帧第三手部图像一一对应;
第四处理子模块,用于将该一个或多个关节点坐标集输入第三神经网络模型,以得到第三神经网络模型输出的手势识别结果。
可选地,该装置700还包括:
第三获取模块,用于获取相机采集的第四手部图像;
第八确定模块,用于基于第四手部图像,确定手部的位姿和动作;
生成模块,用于基于手部的位姿,生成一条手部射线;
第二控制模块,用于基于该手部射线和手部的动作,控制目标虚拟物体的运动。
在本申请实施例中,通过三维显示设备所包括的相机来采集手部图像,基于手部图像确定手部的三维旋转信息和三维平移信息,从而控制虚拟物体进行与手部的旋转和平移一致的运动。在这种三维显示一体的场景中,使用者无需操控笔之类的器件,即能够像拿着实物一样来移动和旋转虚拟物体进行仔细观摩。可见本方案的用户操作不受限,虚拟物体的运动也更灵活和真实。
需要说明的是:上述实施例提供的人机交互装置在人机交互时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的人机交互装置与人机交互方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图8示出了本申请一个示例性实施例提供的三维显示设备800的结构框图。该三维显示设备800还可能被称为三维显示一体机、三维显示器、显示设备、用户设备等其他名称。
通常,三维显示设备800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的人机交互方法。
在一些实施例中,三维显示设备800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏(三维显示屏)805、摄像头组件(相机的组成部分)806、音频电路807、定位组件808和电源809中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它三维显示设备进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置在三维显示设备800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在三维显示设备800的不同表面或呈折叠设计;在另一些实施例中,显示屏805可以是柔性显示屏,设置在三维显示设备800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在三维显示设备的前面板,如设置在三维显示屏上,后置摄像头设置在三维显示设备的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(VirtualReality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在三维显示设备800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括耳机插孔。
定位组件808用于定位三维显示设备800的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件808可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源809用于为三维显示设备800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,三维显示设备800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。
加速度传感器811可以检测以三维显示设备800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器812可以检测三维显示设备800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对三维显示设备800的3D动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器813可以设置在三维显示设备800的侧边框和/或显示屏805的下层。当压力传感器813设置在三维显示设备800的侧边框时,可以检测用户对三维显示设备800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在显示屏805的下层时,由处理器801根据用户对显示屏805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置在三维显示设备800的正面、背面或侧面。当三维显示设备800上设置有物理按键或厂商Logo时,指纹传感器814可以与物理按键或厂商Logo集成在一起。
光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制显示屏805的显示亮度。具体地,当环境光强度较高时,调高显示屏805的显示亮度;当环境光强度较低时,调低显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
接近传感器816,也称距离传感器,通常设置在三维显示设备800的前面板。接近传感器816用于采集用户与三维显示设备800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与三维显示设备800的正面之间的距离逐渐变小时,由处理器801控制显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与三维显示设备800的正面之间的距离逐渐变大时,由处理器801控制显示屏805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图8中示出的结构并不构成对三维显示设备800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在一些实施例中,还提供了一种计算机可读存储介质,该存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中人机交互方法的步骤。例如,所述计算机可读存储介质可以是ROM、RAM、CD-ROM、磁带、软盘和光数据存储设备等。
值得注意的是,本申请实施例提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
应当理解的是,实现上述实施例的全部或部分步骤可以通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。所述计算机指令可以存储在上述计算机可读存储介质中。
也即是,在一些实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述所述的人机交互方法的步骤。
应当理解的是,本文提及的“至少一个”是指一个或多个,“多个”是指两个或两个以上。在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种人机交互方法,其特征在于,应用于三维显示设备,所述三维显示设备包括三维显示屏和相机,所述方法包括:
获取所述相机采集的第一手部图像;
基于所述第一手部图像,确定手部的多个关节点的坐标;
基于所述多个关节点的坐标,确定所述手部的三维旋转信息和三维平移信息;
基于所述手部的三维旋转信息和三维平移信息,控制目标虚拟物体进行与所述手部的旋转和平移一致的运动,所述目标虚拟物体为所述三维显示屏显示的多个虚拟物体中当前被选中的虚拟物体。
2.根据权利要求1所述的方法,其特征在于,所述多个关节点包括手腕节点和指根节点;
所述基于所述多个关节点的坐标,确定所述手部的三维旋转信息和三维平移信息,包括:
基于所述多个关节点的坐标,建立所述手部的刚体模型;
基于所述刚体模型,以及所述手腕节点的坐标和指根节点的坐标,确定所述手腕节点的三维旋转信息和三维平移信息;
将所述手腕节点的三维旋转信息和三维平移信息,作为所述手部的三维旋转信息和三维平移信息。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一手部图像,确定手部的多个关节点的坐标,包括:
将所述第一手部图像输入第一神经网络模型,以得到所述第一神经网络模型输出的所述多个关节点的坐标。
4.根据权利要求1-3任一所述的方法,其特征在于,所述获取第一手部图像之前,还包括:
获取所述相机采集的第二手部图像;
基于所述第二手部图像,确定所述手部与所述多个虚拟物体中各个虚拟物体之间的距离;
如果所述多个虚拟物体中存在与所述手部之间的距离小于第一阈值的虚拟物体,则将所述多个虚拟物体中与所述手部之间的距离最小的虚拟物体确定为所述目标虚拟物体,并选中所述目标虚拟物体。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第二手部图像,确定所述手部与所述多个虚拟物体中各个虚拟物体之间的距离之后,还包括:
如果所述多个虚拟物体中不存在与所述手部之间的距离小于所述第一阈值的虚拟物体,则基于一帧或多帧第三手部图像,识别所述手部的手势,所述一帧或多帧第三手部图像中的最后一帧图像为所述第二手部图像;
如果识别到的手势为第一预定义手势,则基于所述第二手部图像,确定所述手部的位姿;
基于所述手部的位姿,确定一条手部射线;
将所述多个虚拟物体中与所述手部射线相交的虚拟物体确定为所述目标虚拟物体,并选中所述目标虚拟物体。
6.根据权利要求5所述的方法,其特征在于,所述第一预定义手势为手掌张开且朝向所述三维显示屏的手势,所述手部射线与所述手掌所在平面垂直,所述手部的位姿包括所述手掌的位置和角度;或者,
所述第一预定义手势为一根手指指向所述三维显示屏的手势,所述手部射线的方向与所述手指的指向一致,所述手部的位姿包括所述手指的位置和指向。
7.根据权利要求6所述的方法,其特征在于,所述基于一帧或多帧第三手部图像,识别所述手部的手势,包括:
将所述一帧或多帧第三手部图像输入第二神经网络模型,以得到所述第一神经网络模型输出的手势识别结果。
8.根据权利要求6所述的方法,其特征在于,所述基于一帧或多帧第三手部图像,识别所述手部的手势,包括:
将所述一帧或多帧第三手部图像输入第一神经网络模型,以得到所述第一神经网络模型输出的一个或多个关节点坐标集,所述一个或多个关节点坐标集与所述一帧或多帧第三手部图像一一对应;
将所述一个或多个关节点坐标集输入第三神经网络模型,以得到所述第三神经网络模型输出的手势识别结果。
9.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
获取所述相机采集的第四手部图像;
基于所述第四手部图像,确定所述手部的位姿和动作;
基于所述手部的位姿,生成一条手部射线;
基于所述手部射线和所述手部的动作,控制所述目标虚拟物体的运动。
10.一种三维显示设备,其特征在于,所述三维显示设备包括三维显示屏、处理器和相机;
所述三维显示屏用于显示虚拟物体;
所述相机用于采集手部图像;
所述处理器用于实现权利要求1-9任一所述方法的步骤。
11.根据权利要求10所述的三维显示设备,其特征在于,所述三维显示屏还用于显示手部射线,所述手部射线基于所述手部图像生成。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-9任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111445326.1A CN114115544B (zh) | 2021-11-30 | 2021-11-30 | 人机交互方法、三维显示设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111445326.1A CN114115544B (zh) | 2021-11-30 | 2021-11-30 | 人机交互方法、三维显示设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114115544A true CN114115544A (zh) | 2022-03-01 |
CN114115544B CN114115544B (zh) | 2024-01-05 |
Family
ID=80368949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111445326.1A Active CN114115544B (zh) | 2021-11-30 | 2021-11-30 | 人机交互方法、三维显示设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114115544B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115129162A (zh) * | 2022-08-29 | 2022-09-30 | 上海英立视电子有限公司 | 一种基于人体图像变化的画面事件驱动方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241601A (zh) * | 2008-02-19 | 2008-08-13 | 深圳先进技术研究院 | 一种图形处理的关节中心参数估计方法 |
CN105302294A (zh) * | 2015-09-07 | 2016-02-03 | 哈尔滨市一舍科技有限公司 | 一种交互式虚拟现实演示装置 |
CN205080499U (zh) * | 2015-09-07 | 2016-03-09 | 哈尔滨市一舍科技有限公司 | 一种基于手势识别的虚拟现实交互设备 |
US20160140763A1 (en) * | 2014-11-14 | 2016-05-19 | Qualcomm Incorporated | Spatial interaction in augmented reality |
CN105912110A (zh) * | 2016-04-06 | 2016-08-31 | 北京锤子数码科技有限公司 | 一种在虚拟现实空间中进行目标选择的方法、装置及系统 |
CN107357427A (zh) * | 2017-07-03 | 2017-11-17 | 南京江南博睿高新技术研究院有限公司 | 一种用于虚拟现实设备的手势识别控制方法 |
CN107992189A (zh) * | 2017-09-22 | 2018-05-04 | 深圳市魔眼科技有限公司 | 一种虚拟现实六自由度交互方法、装置、终端及存储介质 |
CN111460873A (zh) * | 2019-01-18 | 2020-07-28 | 北京市商汤科技开发有限公司 | 图像处理方法及装置、图像设备及存储介质 |
CN113706699A (zh) * | 2021-10-27 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
-
2021
- 2021-11-30 CN CN202111445326.1A patent/CN114115544B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241601A (zh) * | 2008-02-19 | 2008-08-13 | 深圳先进技术研究院 | 一种图形处理的关节中心参数估计方法 |
US20160140763A1 (en) * | 2014-11-14 | 2016-05-19 | Qualcomm Incorporated | Spatial interaction in augmented reality |
CN105302294A (zh) * | 2015-09-07 | 2016-02-03 | 哈尔滨市一舍科技有限公司 | 一种交互式虚拟现实演示装置 |
CN205080499U (zh) * | 2015-09-07 | 2016-03-09 | 哈尔滨市一舍科技有限公司 | 一种基于手势识别的虚拟现实交互设备 |
CN105912110A (zh) * | 2016-04-06 | 2016-08-31 | 北京锤子数码科技有限公司 | 一种在虚拟现实空间中进行目标选择的方法、装置及系统 |
CN107357427A (zh) * | 2017-07-03 | 2017-11-17 | 南京江南博睿高新技术研究院有限公司 | 一种用于虚拟现实设备的手势识别控制方法 |
CN107992189A (zh) * | 2017-09-22 | 2018-05-04 | 深圳市魔眼科技有限公司 | 一种虚拟现实六自由度交互方法、装置、终端及存储介质 |
CN111460873A (zh) * | 2019-01-18 | 2020-07-28 | 北京市商汤科技开发有限公司 | 图像处理方法及装置、图像设备及存储介质 |
CN113706699A (zh) * | 2021-10-27 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115129162A (zh) * | 2022-08-29 | 2022-09-30 | 上海英立视电子有限公司 | 一种基于人体图像变化的画面事件驱动方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114115544B (zh) | 2024-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11169600B1 (en) | Virtual object display interface between a wearable device and a mobile device | |
US11546505B2 (en) | Touchless photo capture in response to detected hand gestures | |
US20210405761A1 (en) | Augmented reality experiences with object manipulation | |
CN110992493B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
US11520399B2 (en) | Interactive augmented reality experiences using positional tracking | |
CN110427110B (zh) | 一种直播方法、装置以及直播服务器 | |
CN111324250B (zh) | 三维形象的调整方法、装置、设备及可读存储介质 | |
CN109166150B (zh) | 获取位姿的方法、装置存储介质 | |
US20210405772A1 (en) | Augmented reality eyewear 3d painting | |
US20210409628A1 (en) | Visual-inertial tracking using rolling shutter cameras | |
US20220084303A1 (en) | Augmented reality eyewear with 3d costumes | |
CN110956580A (zh) | 图像换脸的方法、装置、计算机设备以及存储介质 | |
CN110052030B (zh) | 虚拟角色的形象设置方法、装置及存储介质 | |
CN111680758A (zh) | 图像训练样本生成方法和装置 | |
US20210406542A1 (en) | Augmented reality eyewear with mood sharing | |
CN114115544B (zh) | 人机交互方法、三维显示设备及存储介质 | |
CN114093020A (zh) | 动作捕捉方法、装置、电子设备及存储介质 | |
CN113160031B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
US11733789B1 (en) | Selectively activating a handheld device to control a user interface displayed by a wearable device | |
WO2022199102A1 (zh) | 图像处理方法及装置 | |
US20240077934A1 (en) | Virtual ar interfaces for controlling iot devices using mobile device orientation sensors | |
US20220182777A1 (en) | Augmented reality spatial audio experience | |
US20240119928A1 (en) | Media control tools for managing communications between devices | |
US20240036336A1 (en) | Magnified overlays correlated with virtual markers | |
WO2023034017A1 (en) | Augmented reality prop interactions |
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 |