真三维显示器上立体空间鼠标的实现及优化

2014-07-07 13:49朱柯烨王思纯赵慈航沈秋萍
电视技术 2014年8期
关键词:指尖鼠标显示器

潘 浩,田 丰,朱柯烨,王思纯,赵慈航,沈秋萍

(上海大学 影视艺术技术学院,上海 200072)

真三维显示器上立体空间鼠标的实现及优化

潘 浩,田 丰,朱柯烨,王思纯,赵慈航,沈秋萍

(上海大学 影视艺术技术学院,上海 200072)

通过介绍基于视觉的空间定位方法,解释了真三维立体鼠标的实现原理,搭建了真三维立体鼠标系统。针对真三维立体鼠标的空间静态与动态抖动问题,研究了真三维立体鼠标的去抖方法。为了实现两点触控,提出了鬼点去除方法,实现了两个指尖的位置识别。实验证明,在不需要佩戴任何标记和传感器的条件下,基于视觉的立体鼠标能够在真三维显示器上准确绘制图形且不受室内环境光干扰。

真三维显示;立体鼠标;动态抖动;鬼点

人们为了能真实地再现客观世界,对于立体显示技术的研究从未间断[1-4]。基于体扫描的真三维显示是目前最新的立体显示技术之一,它无需佩戴任何类型的立体眼镜,立体图像就能呈现出来[5-7]。真三维显示中所显示的是真实三维空间中真实存在的,提供了几乎所有的视觉深度信息、全角度立体画面,与人们观察世界的真实感受相一致,同时也符合所有生理和心理的深度暗示。真三维显示技术被一致认为在教育、科研、医疗、国防等领域将有良好的应用前景和重大的战略价值,同时也将成为改变人们日常工作、学习和生活方式的新一代显示媒体之一。

目前,课题组已有可用于演示的真三维显示器,且真三维图像的处理能力也达到了实时人机互动的要求。传统鼠标和触摸面板只能实现在一个平面内的精确书写,当它用于真三维显示器时,不能实现物理空间的三维指示,限制了真三维显示器的交互功能和应用范围。文献[8]对真三维显示的用户界面进行了方案研究,提出了几种可行的人机交互方式,文献[9]提出了基于手势识别的真三维显示交互方法和系统,实现了立体影像的操控。但基于手势的交互方法不能实现立体鼠标的精确定位和空间绘图;与用户习惯的触控手势不同的专用手势需要学习;为了识别准确的手势,手指需要佩戴标记;只实现3个自由度的旋转、平移、缩放等操作,未能实现更丰富的交互操控。现有基于脑电波、眼动、数据手套等新型人机交互界面大部分必须佩戴传感器,它们与深度传感器类似,目前都不能在手的运动范围内实现小于1 mm的三维空间精确定位[10-13];无法完成三维空间的绘图与书写功能。

为此,本文提出了一种用于真三维显示器的低成本立体鼠标实现方法,并且对该立体鼠标的绘制效果进行了优化。实验表明,本文提出的立体鼠标系统在不佩戴标记的条件下实现了精确三维空间交互,完成了三维空间书写功能,能在室内环境下正常使用,同时也扩展了真三维显示器的应用领域。

1 真三维立体鼠标的实现原理

经过数个立体显示课题的研究,课题组已获得数套可用于演示的真三维显示器。

真三维显示器可在空间呈现预先生成的静态和动态立体影像,但由于缺乏交互方法,影像不能由用户任意控制且不能实现准确的空间书写与绘图。

通常使用普通鼠标、触摸板可实现二维平面内的精确定位,而这些常用的方式并不能满足三维空间定位要求。为了实现真三维显示中的精确书写、绘图和影像互动等功能,本文提出一套基于光学反射的立体鼠标系统。在用户指尖上不安装任何辅助装置的条件下,实现真三维显示的精确绘图和互动功能。

如图1所示,基于红外光反射感应的真三维立体鼠标由固定于体空间支架上的红外发光二极管、CMOS传感器和环绕体空间的红外定向反射材料组成。两颗额定电流60 mA的红外发光二极管、经结构集成后的一片850 nm红外滤镜与CMOS传感器组成光传感器。左传感器和右传感器这两个光传感器共同完成空间定位。三组定向反射带分别位于外框底部、左侧、右侧,它们共同组成红外反射面。红外光由红外发光二极管发出,射到反射面后沿原路返回,被CMOS传感器接收。上述原理如图1所示。红外光场会在指尖进入时被遮挡,导致部分光线不能正常反射,从而手和指尖的阴影和形状出现在CMOS获得的图像上。左右两个传感器的探测过程类似,左传感器探测通过底部和右侧反光获得回归光线,右传感器探测通过左侧和底部反光获得回归光线。红外光接收传感器获取指尖的遮挡信息,再利用三角定位算法对遮挡点进行定位,从而确定指尖的位置。

图1 真三维立体鼠标的光学原理及最终结构图

图1中展示的真三维立体鼠标系统的最终立体结构图。它对反射带作了简化,仅在桌面上铺满红外回归反射带,在桌面两侧安装摄像传感器。

2 真三维立体鼠标的实现方法

CMOS图像传感器能够灵敏地获取红外光线。实用的真三维立体鼠标应达到普通光电鼠标的60 f/s(帧/秒)响应速度且同时具有较高的图像分辨率。OV7725CMOS芯片能够达到上述技术指标,故以它作为整个立体鼠标系统的图像传感器。视频图像获取与处理模块包含ARM处理器、图像存储器、电源与通信单元,如图2所示。两组视频图像获取与处理模块同时获取指尖的图像投影坐标。

图2 立体鼠标系统模块接连图

配制OV7725(A级)的工作模式为:VGA 640×480视频格式,以YUV8∶4∶4数据格式输出,ARM处理器只存储并处理Y分量信号,舍弃UV信号,视频速率设置为60 f/s,最后设定OV7725为固定曝光模式。指令通过ARM的I2C总线配制CMOS传感器。CMOS产生的信号包括像素时钟、行同步、场同步和像素值,为了让ARM处理器实时获得VGA中的有效画面,在CMOS和ARM处理器中添加一个异步FIFO。FIFO用来缓冲数据、隔离时钟并保存CMOS输出的部分图像。2个ARM处理器各自分析有效图像中指尖的图像投影坐标,通过RS-232串口把投影坐标发送给计算机。计算机依据标定板合成计算指尖的实际物理空间坐标。根据连续位置的识别,计算机下达真三维显示的绘制指令或控制指令。图3为第一代立体鼠标实物系统。

图3 第一代立体鼠标实物系统

3 真三维立体鼠标的优化

3.1 静态抖动的去除

手指举在空中总是不断在晃动,即使指尖相对空间静止,其采样的坐标也会微小变化,即出现静态抖动现象。

方差用来度量随机变量和其数学期望(即均值)之间的偏离程度。被记录的一组点坐标值方差过大时,说明这一组点坐标变化范围较大,即点在快速运动,反之一组点的坐标值方差较小时,说明此组点的坐标值在小范围内波动,一定范围内的波动可认为出现了静止状态下的抖动。首先计算一组点坐标的平均值

计算一组点的xyz坐标值的方差均在方差阈值L以内,即

最后分别用其均值Pˉ代替每个点的xyz坐标值,则可以去除静态抖动,即

图4为静态去抖的流程图。

图4 静态去抖流程图

3.2 动态抖动的去除

当指尖慢速画线时会出现锯齿状抖动,即出现动态抖动现象。如式(4)和图5所示,P4,P3,P2,P1为依次得到的4个连续指尖位置。当前点为P1,它与上一点P2的距离大于阈值R时,认为P1是相对于P2的突变点,将P1与P2的中点坐标值作为当前指尖位置的坐标,即M1的坐标

图5 一次慢画动态去抖的基本原理

在实验过程中,指尖慢速画线会存在大量点在小范围内变化。如图5中P3与P3',此时当前点P3'与点P3的距离小于阈值R,即在一个半径为R的球内,如果仍按上式计算将出现锯齿点,为避免这种情况的发生,应丢弃P3'点坐标。当大于阈值R的P2点出现时,将P2作为当前点计算,其计算方法为

图6为一次慢画动态去抖的算法流程图。

图6 一次慢画动态去抖流程图

图7为一次慢画动态去抖算法在二维平面上测试结果,即46 in(1 in=2.54 cm)屏幕上的触控效果。动态去抖动的目的是让慢画的笔迹更平滑,锯齿线为去抖动前的原始立体鼠标的运动路径,平滑线为一次动态修正后的绘制路径。

图7 动态去抖算法在二维平面上投影效果

一次慢画动态去抖能有效减弱绘图时的抖动情况,但仍不能满足用户书写的流畅体验。故在一次慢画动态去抖的基础上再做二次去抖算法。二次去抖算法以求和平均为基础,判定指尖运动速度,分区间设定求和平均总数,即运动距离D越小,求和平均数量I越多。

按运动距离D分为A,B,C共3个区域,对应3个求和平均数量I,I∈{a,b,c},当运动距离判定从A进入B时,I的值从a直接变为b,但运动速度在临界区域中来回变化,出现书写跳笔。为解决区域划分带来的跳笔,本文提出求和平均变速算法。当运动距离判定从A进入B时,I的值从a渐变为b,当运动距离判定在A和B之间不断变化时,I的值在a和b之间渐变。图8为各级去抖算法的平面显示器绘制结果。

图8 各级去抖算法的平面显示器绘制结果

3.3 快画插值

CMOS传感器的数据频率为60 Hz,即计算机每秒接收60个触控点的数据,因此当快速画线尤其画曲线时,数据量不足而导致画出的曲线出现较长直线段现象,从而使得曲线不够圆滑,鼠标快速绘制也出现类似现象。虽然无法做到绝对的圆滑,但本文采用三次样条插值的方法对原始数据进行补点,通过增加发送点的数量缩短点与点之间线段的长度,从而改善快画时不够圆滑的问题。插值算法流程如图9所示。

图9 动态去抖算法在二维平面上投影效果

3.4 两点鬼点去除

为了实现立体影像的缩放、旋转,立体鼠标系统需支持两点的输入。如图10所示,两个手指进入反射区域可实现两点输入。按单点检测法可获得两个指尖的图像坐标,但仅根据两个摄像机拍摄的画面无法判断两个指尖的物理位置。

如图11所示,指尖的坐标根据左右传感器拍摄到的手指的阴影来计算得到,当图中的黑色圈或者灰色圈分别为两个指尖的位置时,两个传感器同时看到的指尖影子位置是相同的,即探测结果相同,无法判断两个指尖的空间位置,出现了鬼点现象。

图11 鬼点现象

指尖在图像中的投影包含指尖的图像坐标和指尖的宽度信息。利用指尖在两个传感器上的图像坐标来计算指尖的空间位置,同时可以用指尖的宽度信息来排除鬼点。宽度信息代表了指尖与传感器的距离,但宽度信息并不能准确估计距离,只能提供一个距离的大致范围。本文提出两点宽度叠加比较的方法,能够基本解决鬼点问题。W1L为左侧传感器获得的1号手指宽度,W2L为左侧传感器获得的2号手指宽度,W1R为右侧传感器获得的1号手指宽度,W2R为右侧传感器获得的2号手指宽度,满足式(7),可判定两个手指在a、c区域内。

满足式(8),可判定两个手指在b、d区域内。

4 结果和讨论

原型设计验证了基于光学的立体鼠标系统的有效性。图12展示了作者用手在空间书写并在真三维显示器上显示轨迹。当手指在空中保持相对静止时,立体鼠标不产生抖动,当手指在空中慢速绘图时,动态的锯齿也被去除,当手指快速书写时,补充的插值点使得曲线更光滑。在室内光环境下能从各个角度清晰地观察到绘制的三维影像。

图12 三角形与扫描面的匹配分类(截图)

由于成像空间在一个有限的范围内,手指不能直接伸入显示空间,缺少书写的验证反馈信息,故需要用户的练习才能完成空间绘制;系统目前没有加入手势识别功能,手指进入光学反射面范围就开始连续绘制,不能断笔,书写连笔字与真正意义上的文字书写比较还有距离,需要加入简单的手势识别方法来完成类似鼠标按键的功能;两个手指的遮挡会带来坐标计算的误差,这是由于遮挡后,不能区分两个手指实际的中心位置,通过对遮挡后手指阴影的梯度分析可能提取出部分位置信息;CMOS传感器目前没有配置电子快门速度,手指快速移动产生拖影,这使得在空间上方快画竖线时产生变形,通过同步场中断和红外LED闪光可能使得拖影减少;两颗红外LED的光强较弱,固定曝光值设定较高,从图10可知画面的暗噪声较大,当具有大量红外光的阳光照进室内,用户或观众遮挡阳光时,由于系统验测到大于门限的阴影,故容易出现误触发,即鼠标随机启动绘制,根据传感器特性,通过配置更多的大功率红外LED并降低CMOS的曝光值能有效降低阳光的影响并可大大降低暗噪声。上述问题将仍有待探讨和深入研究,新的系统正在设计中。

5 结论

本文提出了一种用于真三维立体显示的光学空间立体鼠标实现方法,实现了对空间范围内任意位置的精确指向,且不受室内环境光变化的影响。在此基础上,提出了立体鼠标静态、动态去抖和快画插值方法,实现了三维空间的平滑书写与绘图。为了实现两点触控,提高人机交互功能,提出了两点鬼点的去除方法,实现了两个指尖的区域位置识别,为真三维影像的交互旋转、缩放奠定基础。随着空间交互技术的不断改进,它们将带来全新的信息表达方式,并大大扩展真三维显示的应用价值,同时也可能成为未来三维交互的一种崭新途径。目前,正继续探索真三维显示及其相关互动技术,积极争取真三维显示的产业化。

[1] 田丰,王晓明,刘锦高.自由立体显示中的实景立体影像获取方法[J].电视技术,2010,34(11):23-26

[2]Sony.「デジタルコンテンツEXPO2009」出展のご案内[EB/OL]. [2013-08-05].http://www.sony.co.jp/SonyInfo/News/Press/200910/ 09-123.

[3]杨倩,林志贤,杜世远,等.基于双面光栅的LED三维立体显示系统的研制[J].电视技术,2012,36(23):69-72.

[4]LANMAN D,WETZSTEIN G,HIRSCH M.Polarization fields:dy⁃namic light field display using multi-layer LCDs[J].ACM Trans. Graphics,2011,30(6):1-9.

[5] 杨忠,李莉,鄂龙慧,等.基于数字微镜的旋转体扫描3维显示系统[J].中国图象图形学报,2010,15(1):149-154.

[6] 岳键,樊琼剑,沈春林.体扫描显示系统中螺旋旋转屏及螺旋切片生成算法[J].中国图象图形学报,2011,16(8):1466-1473.

[7]陆海霞,郑文庭,陈为.彩色体三维显示系统上基于GPU的实时均匀体素化算法[J].计算机辅助设计与图形学学报,2010,22(3): 373-381.

[8]BALAKRISHNAN R,FIZMAURICE G W,KURTENBACH G. User interfacesfor volumetric displays[J].Computer,2001(5): 37-45.

[9]GROSSMAN T,WIGDOR D,BALAKRISHNAN R.Multi-finger gestural interaction with 3D volumetric displays[J].ACM Trans. Graphics,2004,6(2):61-70.

[10]BANG JW,LEE E,PARK K R.New computer interface com⁃bining gaze trackingand brainwave measurements[J].IEEE Trans. Consumer Electronics,2011,57(4):1646-1651.

[11]NAWAZ T,MIAN M S,HABIB H A.Infotainment devices con⁃trol by eye gaze and gesture recognition fusion[J].IEEE Trans. Consumer Electronics,2008,54(2):277-282.

[12]HEO H,LEE E C,PARK K R,et al.A realistic game system using multi-modal user interfaces[J].IEEE Trans.Consumer Electronics,2010,56(3):1364-1372.

[13] HAN Y.A low-cost visualmotion data glove as an input device tointerpret human hand gestures[J].IEEE Trans.Consumer Elec⁃tronics,2010,56(2):501-509.

Imp lementation and Optim ization of 3D M ouse for Volumetric Three-Dimensional Display

PAN Hao,TIAN Feng,ZHU Keye,WANG Sichun,ZHAO Cihang,SHEN Qiuping
(Institute of Film&TV Arts and Technology,Shanghai University,Shanghai 200072,China)

Through the introdction of vision based spatial positioning method,the principle of volumetric 3D mouse is explained and its system is built.Jitter revomal method is proposed to solve the problem of spatial static and dynamic jitter.In order to achieve two touch,ghost point removal method is proposed,the position identification of two fingertips is achieved.Demonstrated in the experiments,the vision based 3D mouse can draw graphics accurately on the volumetric three-dimensional display without any marks or sensors interference from ambient light.

volumetric three-dimensional display;volumetric 3D mouse;dynamic jitter;ghost point

TN87;TN919.82

A

�� 盈

2013-09-22

【本文献信息】潘浩,田丰,朱柯烨,等.真三维显示器上立体空间鼠标的实现及优化[J].电视技术,2014,38(8).

上海市教育委员会科研创新项目(12YZ008);国家大学生创新项目(sdcx2012045)

猜你喜欢
指尖鼠标显示器
治理“指尖乱像”不宜一散了之
把显示器“穿”在身上
Progress in Neural NLP: Modeling, Learning, and Reasoning
虔诚之花在指尖绽放
指尖上的生活,指尖上的美
IDC发布《2018年PC显示器市场跟踪报告》
一种新型点阵显示器的设计
指尖童话
点距小也不怕
45岁的鼠标