APP下载

基于体感交互的公路真三维设计与系统架构*

2014-08-16符锌砂龙立敦李海峰葛婷

关键词:三维空间体感线形

符锌砂 龙立敦 李海峰 葛婷

(1.华南理工大学 土木与交通学院,广东 广州 510640;2.中南大学 土木工程学院,湖南 长沙 410007)

现行的公路几何设计通常将公路空间线形拆分为平、纵两个二维方向的投影,然后考虑平、纵组合形成公路的三维空间曲线,再进行横断面设计[1].这种方法实质上是把公路这样一个完整的三维空间构造物分解为一些零散的片段进行设计,确定各个线形要素后,再进行组合的一种拼凑设计方法.现行方法忽视了公路线形“三维”自然本质,很难满足对公路三维空间实体的准确表述,其后果是有可能使得建成的公路存在某些设计缺陷和疏漏,从而导致公路几何特性与车辆行驶特性、驾驶人特性三者之间的不匹配,存在严重的安全隐患,这也是目前公路线形设计面临的主要困境之一[2-3].

要真正实现公路“真三维”设计,需要解决两个关键科学问题:其一是在三维空间上进行线形设计的人机交互问题,这是实现公路几何“真三维”设计的先决条件;其二是公路平、纵空间曲线的三维统一描述及其空间曲线求解问题,即如何将公路二维的平面线形和纵断面线形归结到一个统一的三维空间曲线,构建精确的三维空间公路线形模型,并快速求解出符合设计要求的空间曲线[4],这是实现公路“真三维”设计的核心问题.

现代传感器技术的发展,使得空间三维交互设计成为可能[5-6],现代计算机和三维图形技术的发展,为公路三维线形解析、模拟和分析提供了条件[7].文中着重对基于体感交互的公路真三维设计方法及系统架构进行研究,提出了基于体感交互的公路真三维交互设计系统架构,并通过系统原型的开发和实验,验证了基于体感交互的公路三维交互设计系统的可行性,为在三维空间进行人机交互实现公路真三维设计提供了有效的方法和手段.

1 基于体感交互的公路真三维设计方法

1.1 基于体感的三维人机交互

基于体感交互的公路真三维设计方法建立在公路三维空间曲线模型基础上,通过手势实现对三维虚拟空间的公路空间曲线模型和三维地形模型的人机交互,最终实现公路真三维设计.为此,采用Kinect传感器,作为实现三维人机交互的工具.Kinect 是微软公司于2010年11月发布作为Xbox 360 游戏主机的外围游戏控制设备[8],由一个RGB 摄像头、景深传感器和麦克风阵列构成,可以实时获取相机空间中物体每一点的深度信息和对全身20 个主要关节点进行三维追踪和定位,进而提供对全身3D 运动捕捉、手势识别等能力[9].由于其突出的三维空间感知能力,Kinect 被广泛应用于针对三维虚拟空间的应用程序、3D 游戏中[10].

建立基于Kinect 的三维人机交互系统包括两个方面内容:首先,根据公路三维设计需要,建立三维人机交互手势系统,然后根据每一手势中相关关节点的时空分布进行手势定义,并与Kinect 追踪数据进行匹配计算,完成手势侦测与解译,实现交互命令输入;其次,通过数学空间变换,建立起从手势物理空间到计算机虚拟空间的精确投影模型,把物理空间人体中人体关节点坐标向虚拟空间进行线性投影变换,实现物理空间对虚拟空间的动态三维交互控制.

1.2 公路真三维设计

公路三维空间曲线模型是突破传统的平、纵分离的设计思路,实现公路“真三维”设计的核心,其本质可以归结为在各种约束下的三维空间曲线求解问题.为此,需要根据汽车的行驶特性和空间行驶轨迹,从三维空间角度,重新考察公路技术标准及线形设计指标的三维空间属性,包括视距的三维属性、车辆空间运行稳定性、车辆驾驶空间连续性等,并将公路设计规范和各种技术要求作为对数学解析模型的约束条件,构建满足三维空间连续性、一致性的公路三维空间曲线的数学解析模型,实现公路空间曲线的三维统一描述,并能在给定的约束和参数下迅速确定空间曲线,作为实现公路三维设计的空间交互和三维联动设计的保证.

在公路三维空间曲线数学解析模型建立的基础上,引入数字地面模型(DTM)和三维GIS,通过手势进行三维人机交互,在具有真实景观的地形三维模型上进行路线的布置和方案优化,从而完成公路三维空间曲线线形设计.进而将横断面设计归约为道路三维中心线与DTM 的空间交并运算,由传统的“横断面带帽”转变为空间的自动交并,实现横断面的三维无缝设计,最终形成完整的公路三维几何设计体系.

基于体感交互的公路真三维设计方法原理见图1.

图1 真三维公路设计方法原理Fig.1 Principle of true three-dimensional road design method

1.3 与二维设计方法对比

基于体感交互的公路真三维设计方法与传统二维设计方法的本质区别在于三维空间曲线生成上,前者采用自然用户交互,并在三维空间曲线数学模型的支持下直接获取,后者通过分别进行平、纵线形设计后组合而成.具体表现在设计平台、交互工具、线形模型及设计基本流程4 个方面,如表1 所示.

表1 真三维设计方法与传统二维设计方法对比Table 1 Contradistinction between true 3D method and traditional 2D design method

2 系统架构

2.1 系统目标

基于体感交互的公路真三维设计系统在带有真实景观的数字地面模型上进行公路设计,首先可以通过对计算机三维虚拟空间的直接操控,实现在三维空间上的人机交互设计.系统以手势作为人机交互的主要手段,通过手势可以对三维地形图进行方便操控,灵活地改变视高、视角,从多个角度、以三维的视角动态、直观、立体地查看地形、公路设计线形,判断其设计质量、安全性、环境协调性;也可以通过手势进行控制点的生成、选择、删除操作,通过语音或键盘进行约束参数的定量输入;此外,作为本系统的特色之处,更能实现在三维空间中实现对控制点进行X、Y、Z 3 个方向的任意移动,系统依据公路三维空间曲线数学模型对控制点的变化和各约束参数实时动态自动更新道路三维中线,实现道路线形的真三维交互优化设计.其次,系统能实现公路平、纵曲线的三维空间统一描述,建立完善的公路中线三维模型.在充分考虑驾驶、车辆、地形、安全、舒适、排水等设计因素后,建立了面向三维空间的公路设计约束模型,使在特定的地形、控制点约束下自动拟合出符合要求的公路空间三维中线成为可能.最后,在数字地面模型(DTM)支持下,采用公路中心线与DTM 交并运算,自动完成路基横断面三维设计.

2.2 公路真三维设计系统架构

公路真三维设计系统基于Kinect,采用自然用户界面进行人机交互,通过手势和语音进行公路真三维交互设计.按照系统的可伸缩和可维护原则,依据系统功能需求,将系统划分为硬件和第三方软件、系统软件两个部分.

2.2.1 硬件和第三方软件

系统主要硬件为微软Kinect,在适合的驱动下能实时产生骨骼数据帧,其中的每一帧图像均包含了人体20 个主要关节点的三维空间坐标信息.基于骨骼数据帧,Kinect 系统软件实现对人体运动的三维实时追踪,为手势识别提供基础数据.

Kinect 的运行依靠Kinect for Windows Software Development Kit(SDK)或OpenNI 和NITE[11]等软件的支持,它们不仅包括Kinect 在计算机上运行所必须的驱动,还具有丰富的API 和设备接口,通过它不但能够获得Kinect 生成的原始彩色、深度和音频数据流,而且还能够对深度数据流进行预处理,实现对人体骨骼在三维模式下的追踪[12];其次,系统引入如Google Earth 的第三方3DGIS 软件,提供成熟完善的地理信息数据管理与查询、三维地图展示、三维视角变换、公路线形对象管理与展示功能,作为公路交互设计的平台.

2.2.2 系统软件

按照面向对象的编程思想和低耦合、高内聚的原则,以及实现的功能不同,在顶层将系统划分为传感器控制、手势定义与识别、3D 地图操控、公路三维线形求解、线形三维交互设计、用户界面控制共六大模块.各模块之间的关系如图2 所示.

(1)传感器控制模块.通过SDK 实现对Kinect的控制,收集传感器所产生的系统需要的数据如深度数据、骨骼数据,并传递至手势定义与识别模块,同时该模块也负责控制传感器开始、暂停、中断或终止产生各类数据流的任务[13].

(2)手势定义与识别模块.按照自然用户交互的一般原则和公路设计习惯对手势体系进行设计,约定地图操控、线形设计与工作模式转换等各类操作手势.同时,基于骨骼数据流,依据手势快照法解译手势的语义,向地图控制和公路线形交互模块发出消息,建立肢体运动物理空间到虚拟设计空间联系的桥梁,实现三维地图手势控制和线形设计的手势交互.

(3)3D 地图控制模块.系统侦测到地图操控类手势发生后,该模块按照3DGIS 软件的要求,生成其能够理解的操作指令并发出,通知地理信息软件做出响应,对三维地图进行缩放、旋转、翻转等操作,实现三维视角、视点的灵活改变.

图2 系统架构Fig.2 System architecture diagram

(4)公路三维线形求解模块.在全面考虑驾驶、车辆和地形因素对视距、安全、舒适、排水和美学等的影响基础上,采用PH(Pythagorean Hodograph)曲线及其扩展模型,以控制点为中心,通过扩展PH 曲线的空间属性,以设计约束为参数系统,完成控制点的插值,建立G2连续的空间曲线方程[7],实现空间曲线的三维统一描述,建立公路三维空间曲线模型和快速曲线求解算法.

(5)线形三维交互设计模块.该模块实时与平台进行双向通信,在接受手势定义与识别模块消息后,响应控制点的生成、选择、移动、删除等手势,生成GIS 软件能识别的指令并进行传递,获取控制点三维坐标等基本信息,在公路三维空间曲线模型的支持下进行公路空间线形快速求解,生成GIS 平台能够识别的格式并进行动态加载,实现公路三维空间曲线的动态显示.在完成三维空间曲线交互优化编辑后进行横断面自动设计,并最终通过三视图投影,完成公路施工图设计.

(6)用户界面控制模块.按照操作对象不同,将系统工作状态划分为地图视图模式和公路设计模式.该模块接收手势定义与识别模块消息和传感器控制模块消息并显示,提示用户当前传感器状态、可进行的操作、正在进行的操作和人体、手部追踪状态,并为手势识别提供依据.

3 系统原型建立与实验

3.1 公路真三维设计系统原型建立

按照上节所述的基于体感交互的公路真三维设计方法与系统架构思路,充分利用自然用户交互[14]这一最新人机交互概念的前沿技术,同时结合Google Earth 这一成熟的平台在地形数据查询与管理、三维视角操纵、三维地物模型显示方面的强大功能,开发了系统原型,系统的实现过程如下.

(1)在DotNet Framework 支持下,采用Extensible Application Markup Language(XAML)进行用户图形界面(GUI)设计,用图形化的界面提示用户系统的工作状态、人体追踪状态、手追踪状态、当前操作类型等系统信息;采用C#语言和面向对象的编程技术,完成系统原型开发.

(2)采用微软公司的SDK[15]作为Kinect 的驱动程序和数据预处理软件,获取骨骼数据帧;利用手势快照[16]的方法对骨骼数据帧进行匹配计算,完成交互手势识别与语义解译,实现对计算机虚拟三维设计空间的交互控制.

(3)采用Google Earth COM API 完成对三维地图视口的操作、获取地物信息和地理坐标信息[16-17];采用Google Earth KML 与SketchUp 插件进行公路线形要素描述与曲线三维模型构建,与COM API 相结合,实现公路三维空间曲线在Google Earth 客户端中实时动态显示.

3.2 实验与结论

完成系统原型开发后,在Windows 7 平台上进行系统原型功能性试验,验证基于手势进行三维人机交互进行公路三维交互设计的可行性,主要包括手势识别、三维视角变换、公路线形对象绘制、公路线形对象编辑4 个主要功能的实现验证.图3 为地图视图模式下采用手势对地图进行缩放、旋转等操作,图4 为公路设计模式下进行控制点的生成、选择、移动等操作与公路三维空间曲线实时动态显示.

图3 地图操控Fig.3 Map navigation

图4 线形元素编辑Fig.4 Alignment edit

通过系统原型的实验,得出以下结论:

(1)通过对基于体感交互的公路真三维设计系统的研究,设计了可扩展和性能优化的系统架构,并开发了基于手势识别的三维空间交互设计系统,实现了实质上的公路真三维设计;

(2)突破了图纸和CAD 平台的“二维平面”这一本质对公路设计向三维发展产生的瓶颈,使公路设计工作在三维虚拟空间中进行,直观、立体的反应出线形与地形的协调、适应情况;

(3)采用手势与计算机进行直接交互,彻底地改变了传统的鼠标、键盘等交互工具难以实现的三维人机交互的困境,可同时实现X、Y、Z 方向的控制与输入;

(4)灵活的三维视角控制,可从多个维度和多个角度查看公路线形的设计质量,以三维的视角检查线形设计质量,及时发现线形中的不足之处,依托对线形对象的三维交互编辑功能,可实时动态修改线形,为得到安全性最优、环境协调性最佳、经济效益最好的最终线形提供了技术支持;

(5)本原型系统的开发及实验,验证了利用体感交互进行三维人机交互实现公路真三维设计的可行性与先进性,使得公路设计回归到公路线形的“三维”自然本质,这对提高公路CAD 技术的研究和应用水平及公路设计水平和设计质量均具有积极意义.

4 结语

文中提出了基于体感交互的公路真三维设计方法和系统架构,并对系统原型进行了实验,验证了其实现的可行性.对于突破传统的公路几何线形设计方法面临的不得不有意忽视公路线形“三维”本质,转而通过平、纵线形分别进行设计,再组合获取空间线形,最终导致大量线形设计缺陷不可避免地被带入到公路运行阶段中的困境,做出了有益的探索.同时也将自然用户交互这一全新的人机交互概念引入到公路设计工作中,推动公路设计工作从人机交互手段、交互平台、公路空间线形三维模型几方面逐渐实现三维化,最终实现公路设计全过程的三维化.

[1]符锌砂.公路实时三维可视化系统架构[J].中国公路学报,2007,20(6):31-35.Fu Xin-sha.Framework of real-time 3D visualization system of highway[J].China Journal of Highway and Transport,2007,20(6):31-35.

[2]孟祥海,关志强,郑来.基于几何线形指标的山区高速公路安全性评价[J].中国公路学报,2011,3(24):103-108.Meng Xiang-hai,Guan Zhi-qiang,Zheng Lai.Safety evaluation of mountainous expressway based on geometric alignment indexes[J].China Journal of Highway and Transport,2011,3(24):103-108.

[3]Hassan Y,Easa S M,El Halim A O A.Analytical model for sight distance analysis on three-dimensional highway alignments[J].Transportation Research Record:Journal of the Transportation Research Board,1996,1523(1):1-10.

[4]Easa S M,Strauss T R,Hassan Y,et al.Three-dimensional transportation analysis:planning and design[J].Journal of Transportation Engineering,2002,128(3):250-258.

[5]Izadi S,Kim D,Hilliges O,et al.Kinectfusion:real-time 3D reconstruction and interaction using a moving depth camera[J].ACM Symposium on User Interface Software and Technology,2011,11(21):559-568.

[6]Tong J,Zhou J,Liu L,et al.Scanning 3D full human bodies using kinect[J].Visualization and Computer Graphics,IEEE Transactions,2012,18(4):643-650.

[7]Habib Z,Sakai M.G2 Pythagorean hodograph quintic transition between two circles with shape control[J].Computer Aided Geometric Design,2007,24(5):252-266.

[8]Kathryn LaBelle.Evaluation of kinect joint tranking for clinical and in-home stroke rehabilitation tools[D].Indiana:Udergraduate Program in Computer Science Notre Dame,2011.

[9]Wang Y,Yang C,Wu X,et al.Kinect based dynamic hand gesture recognition algorithm research [C]∥Intelligent Human-Machine Systems and Cybernetics,2012 4th International Conference on.[S.l.]:IEEE,2012:274-279.

[10]Stannus S,Rolf D,Lucieer A,et al.Gestural navigation in google earth[C]∥Proceedings of the 23rd Australian Computer-Human Interaction Conference.[S.l.]:ACM,2011:269-272.

[11]Li H,Yang L,Wu X,et al.Static hand gesture recognition based on hog with kinect[C]∥Intelligent Human-Machine Systems and Cybernetics,2012 4th International Conference on.[S.l.]:IEEE,2012:271-273.

[12]KamelBoulos M N,Blanchard B J,Walker C,et al.Web GIS in practice X:a microsoft kinect natural user interface for Google Earth navigation[J].International Journal of Health Geographices,2011,10(1):45.

[13]Biswas K K,Basu S K.Gesture recognition using microsoft kinect[C]∥Automation,Robotics and Applications (ICARA),2011 5th International Conference on.[S.l.]:IEEE,2011:100-103.

[14]江宽,龚小鹏.Google API 开发详解[M].北京:电子工业出版社,2010.

[15]Lai K,Konrad J,Ishwar P.A gesture-driven computer interface using kinect[C]∥Image Analysis and Interpretation(SSIAI),2012 IEEE Southwest Symposium on.[S.l.]:IEEE,2012:185-188.

[16]余涛.Kinect 应用开发实践[M].北京:机械工业出版社,2012.

[17]Boehm J.Natural user interface sensors for human body measurement[J].Int International Archives of the Photogrammetry,Remote Sensing and Spatial Information Sciences,2012,18(39):531-536.

猜你喜欢

三维空间体感线形
前庭刺激对虚拟环境三维空间定向的影响及与空间能力的相关关系
体感交互技术在脑卒中康复中的应用
短线法预制节段梁线形综合控制技术研究
大跨度连续刚构桥线形控制分析
人体体感感知机械手设计与实现
红领巾环保走进三维空间——“6·5世界环境日”活动方案
三维空间的二维图形
非触控式的体感机械臂交互控制系统研究
基于虚拟三维空间数字技术的房屋土地管理系统
体感语境下的交互行为设计