本技术涉及计算机,尤其涉及一种交互方法、装置、电子设备及计算机可读存储介质。
背景技术:
1、随着3d技术的逐渐普及,人们经常使用3d设备体验3d游戏等,现有3d交互方式通常需要用户佩戴虚拟现实技术(virtual reality,vr)或增强现实(augmented reality,ar)头显设备,且需要用户长时间触屏操作或使用鼠标键盘操作,这样不仅容易使用户产生肌肉疲劳,且目前vr、ar头显设备比较笨重,用户长时间佩戴易产生晕动症。可见,现有3d交互方式较为不够灵活,且操作效果较差。
技术实现思路
1、本技术实施例提供一种交互方法、装置、电子设备及计算机可读存储介质,以解决现有3d交互方式较为不够灵活,且操作效果较差的问题。
2、第一方面,本技术实施例提供了一种交互方法,包括:
3、获取人脸图像;
4、识别所述人脸图像中的头部姿态特征;
5、将所述头部姿态特征转换为对3d场景的画面控制参数;
6、基于所述画面控制参数,控制所述3d场景变化。
7、可选地,所述获取人脸图像之后,所述方法还包括:
8、识别所述人脸图像中的面部关键点;
9、基于所述面部关键点,确定面部动作,并控制所述3d场景中与所述面部动作关联的目标事件。
10、可选地,所述头部姿态特征包括头部旋转角度信息;
11、所述将所述头部姿态特征转换为对3d场景的控制参数,包括:
12、基于预设的头部旋转范围和所述3d场景中的视野范围,将所述头部旋转角度信息转换为在所述3d场景中的视角数据;
13、基于预设的旋转速度,通过四元数将所述视角数据转换为四元数旋转值;
14、所述基于所述画面控制参数,控制所述3d场景变化,包括:
15、将所述3d场景中的视角参数赋值为所述四元数旋转值,以控制所述3d场景的视角变化。
16、可选地,所述头部姿态特征包括头部位置信息;
17、所述将所述头部姿态特征转换为对3d场景的控制参数,包括:
18、基于预设的运动速度和所述3d场景中的初始位置信息,将所述头部位置信息转换为所述3d场景中的三维位置向量;
19、所述基于所述画面控制参数,控制所述3d场景变化,包括:
20、将所述3d场景中的位置参数赋值为所述三维位置向量,以控制所述3d场景的位置变化。
21、可选地,所述面部关键点包括唇部关键点;
22、所述基于所述面部关键点,确定面部动作,并控制所述3d场景中与所述面部动作关联的目标事件,包括:
23、基于所述唇部关键点的坐标位置,计算嘴部长宽比;
24、在所述嘴部长宽比大于第一预设阈值的情况下,确定为张嘴动作,并控制所述3d场景中释放目标特效。
25、可选地,所述面部关键点包括眼部关键点;
26、所述基于所述面部关键点,确定面部动作,并控制所述3d场景中与所述面部动作关联的目标事件,包括:
27、基于所述眼部关键点的坐标位置,计算眼部纵横比;
28、在所述眼部纵横比小于第二预设阈值的情况下,确定为眨眼动作,并记录所述眨眼动作的时间;
29、在所述眨眼动作距离上次眨眼的时间间隔小于预设时间间隔的情况下,控制所述3d场景中触发截屏事件。
30、可选地,所述将所述头部姿态特征转换为对3d场景的画面控制参数,包括:
31、通过网络传输协议将所述头部姿态特征以第一信息通道传输至3d应用服务器,以通过所述3d应用服务器将所述头部姿态特征转换为对3d场景的画面控制参数;
32、所述基于所述面部关键点,确定面部动作,包括:
33、通过网络传输协议将所述面部关键点以第二信息通道传输至所述3d应用服务器,以通过所述3d应用服务器基于所述面部关键点,确定面部动作。
34、第二方面,本技术实施例还提供一种交互装置,包括:
35、获取模块,用于获取人脸图像;
36、第一识别模块,用于识别所述人脸图像中的头部姿态特征;
37、转换模块,用于将所述头部姿态特征转换为对3d场景的画面控制参数;
38、第一控制模块,用于基于所述画面控制参数,控制所述3d场景变化。
39、可选地,所述交互装置还包括:
40、第二识别模块,用于识别所述人脸图像中的面部关键点;
41、第二控制模块,用于基于所述面部关键点,确定面部动作,并控制所述3d场景中与所述面部动作关联的目标事件。
42、可选地,所述头部姿态特征包括头部旋转角度信息;
43、所述转换模块包括:
44、第一转换单元,用于基于预设的头部旋转范围和所述3d场景中的视野范围,将所述头部旋转角度信息转换为在所述3d场景中的视角数据;
45、第二转换单元,用于基于预设的旋转速度,通过四元数将所述视角数据转换为四元数旋转值;
46、所述第一控制模块用于将所述3d场景中的视角参数赋值为所述四元数旋转值,以控制所述3d场景的视角变化。
47、可选地,所述头部姿态特征包括头部位置信息;
48、所述转换模块用于基于预设的运动速度和所述3d场景中的初始位置信息,将所述头部位置信息转换为所述3d场景中的三维位置向量;
49、所述第一控制模块用于将所述3d场景中的位置参数赋值为所述三维位置向量,以控制所述3d场景的位置变化。
50、可选地,所述面部关键点包括唇部关键点;
51、所述第二控制模块包括:
52、第一计算单元,用于基于所述唇部关键点的坐标位置,计算嘴部长宽比;
53、第一控制单元,用于在所述嘴部长宽比大于第一预设阈值的情况下,确定为张嘴动作,并控制所述3d场景中释放目标特效。
54、可选地,所述面部关键点包括眼部关键点;
55、所述第二控制模块包括:
56、第二计算单元,用于基于所述眼部关键点的坐标位置,计算眼部纵横比;
57、处理单元,用于在所述眼部纵横比小于第二预设阈值的情况下,确定为眨眼动作,并记录所述眨眼动作的时间;
58、第二控制单元,用于在所述眨眼动作距离上次眨眼的时间间隔小于预设时间间隔的情况下,控制所述3d场景中触发截屏事件。
59、可选地,所述交互装置还包括:
60、传输模块,用于通过网络传输协议将所述头部姿态特征以第一信息通道传输至3d应用服务器;
61、所述转换模块用于通过所述3d应用服务器将所述头部姿态特征转换为对3d场景的画面控制参数;
62、所述传输模块还用于通过所述网络传输协议将所述面部关键点以第二信息通道传输至所述3d应用服务器;
63、所述第二控制模块用于通过所述3d应用服务器基于所述面部关键点,确定面部动作,并控制所述3d场景中与所述面部动作关联的目标事件。
64、第三方面,本技术实施例还提供一种电子设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的交互方法中的步骤。
65、第四方面,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的交互方法中的步骤。
66、在本技术实施例中,获取人脸图像;识别所述人脸图像中的头部姿态特征,所述头部姿态特征包括头部旋转角度信息和头部位置信息中的至少一种;将所述头部姿态特征转换为对3d场景的画面控制参数;基于所述画面控制参数,控制所述3d场景变化。这样,用户通过头部姿态即可实现对3d场景的交互控制,相比于鼠标键盘、游戏手柄的操作方式更为灵活自然,更具趣味性,且不需要使用其他硬件设备和传感器,可降低交互成本。