APP下载

无介质浮空投影交互系统的实现

2021-10-05刘光沛贺亚威

智能计算机与应用 2021年5期
关键词:介质手势红外

刘光沛,贺亚威,张 兵,

(1浙江理工大学 信息学院,杭州310000;2像航(上海)科技有限公司,上海200000)

0 引 言

虚拟现实技术主要以信息技术为核心,可以将人们的视觉、听觉以及触觉等融为一体,形成一个沉浸交互式虚拟环境,用户在这个虚拟的三维环境中可以与物体展开交互,为用户带来更加真实的体验感。目前,较为人们熟知的VR(Virtual Reality)、AR(Augmented Reality)以及全息技术都属于沉浸式虚拟环境技术,但其中VR需要头戴设备,AR需要手机或眼镜,全息投影(虚像)无交互或交互性差等缺点。本文介绍一种新型的视觉体验技术——无介质浮空投影技术,该技术是基于光线在微镜矩阵结构中的二次反射,将物体投射到空中,形成浮空影投,用户可以在没有任何介质的空气中,裸眼观看“真实存在”的影像。

人机交互是人与计算机之间交换信息的过程,为了在三维环境下实现人机交互,手势识别是关键,而手势识别设备是手势识别的基础[1]。目前常用的手势识别设备有基于运动传感器的数据手套[2]、基于高帧率单目摄像系统或高帧率双目摄像系统。数据手套通过运动传感器获取手势相关数据,其优点是准确,但是需要用户佩戴专业设备,适用范围窄、应用性差[3],且成本较高。高帧率单目摄像系统或高帧率双目摄像系统是利用红外摄像头模拟人的双目视觉,实现手势的定位和识别。但由于在实际交互中,摄像头对环境光的抗光性较弱,对手部信息的形态学检测效果较差,不能保证在实际交互中可以精准响应用户的点击行为。因此,本文选用红外阵列触摸传感器,它能够在空气中形成红外光场区域模拟触摸区域,其抗光性能优越,用红外激光进行定位和手势识别,误差可低至毫米级,并且可以在多种系统中进行集成。

Unity 3D是Unity Technologies公司开发的一款跨平台综合性专业游戏引擎[1],可以应用在多种系统中,满足多种应用需求。

1 原理简介

1.1 无介质浮空投影技术原理

无介质浮空投影技术是一种新型的显示技术,该技术基于光线在微镜结构中的二次反射将物体投射到空中,形成浮空投影。光学微镜结构选用新型纳米级光学材料——微通道矩阵光波导平板(Microchannel matrix optical waveguide plate,简称MOW)[4],可以使入射图像的光线产生弯曲,使光线在光学成像元件中经过至少2次反射后,形成与入射图像对应的空中实像。折射角的条件要大于临界角,形成全反射。一次反射不能形成无介质浮空影像,所以需要二次反射才能形成稳定的、完全定位的空中实像。无介质浮空影像技术不需要任何介质,能够在不存在任何事物的空中出现正视的影像。成像过程如图1所示。

图1 成像原理图Fig.1 Principle diagram of optical materials

1.2 红外阵列触摸传感器原理

红外阵列触摸传感器是一种基于红外激光的传感器模块,可以集成在多种设备中,并支持多种系统。传感器模块能够在任何表面甚至在空气中使用,不仅可以提供多种尺寸的触摸区域,并可以配置参数来选取触摸活动区域。传感器模块扫描频率高、延迟低,触摸精度可达到0.1mm。

红外光波长范围在750~1 000 nm之间,是一种不可见光,但与可见光一样具有反射、折射、吸收等性质[3]。红外阵列触摸传感器就是通过红外线漫反射来检测和跟踪物体。该传感器模块包括一个光学系统,光学系统用于将红外发射器(Emitter)和红外接收器(Receiver)相结合,并形成多个发射器—接收器组合。每个发射器-接收器组合覆盖一个狭窄区域。一个物体出现在感应区域将影响几个发射-接收通道,通过计算物体重心定位物体坐标位置。该传感器模块处理器有检测和跟踪多个对象的能力,可以判断是否出现相对应的手势。例如,手指点击、拖拽、缩放、旋转等。

2 系统实现

2.1 系统总体架构

无介质浮空投影交互系统由红外阵列触摸传感器、主机系统、高亮显示器和光学微镜结构MOW板构成。总体架构如图2所示。

图2 系统总体框图Fig.2 System overall block diagram

其中,红外阵列触摸传感器用来检测浮空投影交互位置信息,并通过I2C/USB完成与主机系统的通信;主机系统用来识别交互事件;高亮显示器用来提供像源;像源通过光学微镜结构MOW板在空气中形成无介质浮空投影。

2.2 红外阵列触摸传感器交互实现

红外阵列触摸传感器系统架构如图3所示。该系统包括主机系统、连接器、电源电路、微处理器、多点触控处理器、红外传感器阵列。主机系统通过与标准连接器连接电源电路。标准连接器的8个引脚可以适配多种主机系统,并且通过USB或I2C接口进行通信,完成数据传输。红外传感器阵列将检测到的原始数据发送给多点触控处理器,然后发送给微处理器进行数据处理,转换为位置坐标信息,最终发送给主机系统。

图3 红外阵列触摸传感器系统框图Fig.3 Infrared array touch sensor system block diagram

为实现成像区域与触摸区域进行匹配实现交互,触摸区域需要与显示区域一一映射。红外阵列传感器模块有自己对应的软件开发工具,可以通过SDK(Software Development Kit)或Ardunio库配置参数,选择触摸区域范围、触摸区域方向及成像区域范围,并且可以配置坐标偏移量,来指定显示区域中触摸区域,满足用户多种需求。

2.3 Unity 3D软件交互设计

本文通过Unity 3D系统平台开发设计浮空投影,并通过C#脚本编程设计触发事件识别基本手势。基本手势包括:点击、拖拽、缩放、旋转手势。Unity 3D采用事件函数驱动机制,其脚本是由事先声明好的事件函数组成。每一个Unity 3D脚本都会绑定到一个Game Object(游戏对象)上,当这个Game Object在程序运行中被激活时,事件函数则开始运行,当这个Game Object被销毁时,相应的脚本也随之销毁。常用事件函数有:Awake()、Start()、Update()、Fixed Update()、On Enable()、On Disable()、On Destroy()等。Unity 3D常 用 的API(Application Programming Interface)接口是Transform类,用于描述和控制物体的三维或二维位置、旋转、缩放属性[5]。本文通过调用API接口编写C#脚本程序实现对Game Object(游戏对象)的控制,完成Unity 3D交互软件实现。C#脚本程序流程如图4所示:

图4 程序流程Fig.4 Program flow chart

2.4 无介质浮空投影系统

无介质浮空投影系统结构主件包括:主板、光学微镜结构MOW板、红外阵列触摸传感器、显示屏幕,如图5所示。显示屏幕在竖直方向成一定倾斜角度放置,光学微镜结构MOW板水平放置,红外阵列触摸传感器放置与浮空投影区域平行,使触摸区域与成像区域构成映射关系。

图5 无介质浮空投影系统示意图Fig.5 Non-medium floating image system diagram

3 系统测试

3.1 静态定位测试

3.1.1 测试方法

测试方案选择L型测试板,左侧面板模拟显示区域和触摸区域,下表面放置红外阵列传感器,红外阵列触摸传感器与PC主机连接,如图6所示。设置显示区域范围与触摸区域范围完全映射(范围大小选择320*192和300*200 mm),将显示区域单位划分(单位大小分别为16*16 mm和10*10 mm)模拟浮空投影区域,分别选择直径为16 mm和10 mm单位圆柱测试棒,模拟不同大小手指。单位圆柱测试棒分别测量单位区域,将PC计算出的坐标信息进行统计分析。本次实验测试包括定位准确性、定位稳定性、移动误差。

图6 测试方法图Fig.6 Test method diagram

3.1.2 实验结果

3.1.2.1 定位准确性

测试区域范围分别为320*192 mm和300*200 mm,单位测试区域范围为16*16 mm(240个区域)和10*10 mm(600个区域),共计840个区域。分别使用直径16 mm和10 mm的白色单位圆柱测试棒,对单位测试区域点击测试,统计PC计算坐标是否落在各区域,测试结果如图7所示。

图7 单位区域点击测试结果图Fig.7 Unit area click test result graph

由测试结果可见,对于不同尺寸单位圆柱测试棒测试结果下,各测试坐标均落入单位区域,说明在人机交互中,不同尺寸的手指可以实现对浮空投影精准定位。

3.1.2.2 定位稳定性

测试区域范围为320*192 mm和300*200 mm,单位测试区域范围为16*16 mm和10*10 mm。分别对测试区域左上、左下、右上、右下、中心多次测量,统计PC坐标数据,计算坐标均值μ,95%置信区间μ±2σ。 测试结果见表1及表2。

表1 单位区域16*16 mm各点坐标波动表Tab.1 Unit area 16*16 mm coordinate fluctuation table of each point

表2 单位区域10*10 mm各点坐标波动表Tab.2 Unit area 10*10 mm coordinate fluctuation table of each point

由测试结果可以看出,对于不同尺寸单位圆柱测试棒测试结果,各单位区域坐标95%置信区间幅度范围在2 mm内,且均落在单位区域范围内,证明在人机交互中,不同尺寸手指可以保证对浮空投影稳定定位。

3.1.2.3 移动误差

测试区域范围分别为320*192 mm和300*200 mm,单位测试区域范围分别为16*16 mm和10*10 mm。以左上角为起始点,连续向右或向下移动10个单位区域,分别记录移动坐标测量值,与实际值进行比较。测试结果如图8所示。

图8 单位移动对比图Fig.8 Unit movement comparison chart

由测试结果可以看出,在不同尺寸单位圆柱测试棒测试下,测量折线与实际折线几乎重合,移动误差在1 mm左右。说明在人机交互中,不同尺寸手指对浮空投影进行移动操作时可以实时准确控制。

3.2 动态交互测试

采用Unity 3D设计10*10 mm测试背景板及相关模型,在浮空投影区域完成对模型的基本手势操作。图9为初始模型未执行手势操作,浮空投影的基本手势交互结果如图10所示。

图9 初始模型图Fig.9 Initial model diagram

其中,图10(a)中点击模型后模型有“爆炸”特效;图10(b)中移动手势完成模型向右移动;图10(c)、(d)中缩放手势完成模型的放大与缩小;图10(e)中旋转手势完成模型的旋转。

图10 浮空投影手势交互结果图Fig.10 Gesture interaction result chart of floating image

4 结束语

本文介绍并实现了无介质浮空投影交互系统。用户可以裸眼观看空气中“真实存在”的影像,并且通过红外阵列触摸传感器,实现在空气中的人机交互。文中介绍了无介质浮空投影和红外阵列触摸传感器的技术原理和系统结构,并且通过Unity 3D设计实现了浮空投影与手势交互事件,完成了交互软件系统。通过静态定位与动态交互测试证明,该系统能够实现对浮空投影精准稳定定位,并能够完成基本手势交互识别。该系统应用前景十分广泛,例如在疫情期间,为避免在公共场所接触可能造成的交叉感染,该系统可以应用在各种公共终端设备,浮空投影可以带来真正的科技感,无接触手势交互可以保证安全性。

猜你喜欢

介质手势红外
宫颈癌调强计划在水与介质中蒙特卡罗计算的剂量差异
信息交流介质的演化与选择偏好
网红外卖
“资源一号”02卫星可见近红外相机、宽幅红外相机在轨顺利开机成像
闪亮的中国红外『芯』
汤定元:中国红外事业奠基人
挑战!神秘手势
胜利的手势
Compton散射下啁啾脉冲介质非线性传播
认手势说数字