AR技术在建筑施工领域的开发与应用
2018-03-06黄涛娟
黄涛娟
上海建工集团工程研究总院 上海 201114
增强现实(AR)技术是一种新兴计算机应用和人机交互技术,通常所说的增强现实,指的是用虚拟内容来做视觉上的增强,通过屏幕或投影设备来显示。它的本质是通过计算机技术将生成的虚拟物体、场景、视频、音频、动画及提示信息等叠加到真实世界,通过混合技术给用户呈现一个信息增强的现实世界与虚拟世界的混合体,可以增强用户对真实世界的感知能力[1-4]。根据AR在其他领域的指导应用,AR技术也可以应用于建筑施工中,早在1996年,Webster就将AR技术应用于建筑施工、检查和维修中,展示了其教学指导作用,后来也有研究应用AR技术实现图纸的三维可视化、施工模拟可视化等。本文通过增强现实技术在建筑施工中的应用及发展研究,将建筑施工领域的分析和技术相结合进行探讨,汲取国外先进的AR建筑应用技术,开发移动端应用程序并在实景中叠加可以互动的3D图像,便于施工过程中信息的交流理解,减少误读、信息传递失真等情况。
1 软件设计流程及关键技术研究
1.1 软件设计流程
移动增强现实系统由硬件和软件2部分组成。硬件部分主要包括可以把计算机所生成的虚拟物体和用户当前所处的真实环境及提示文字等同时进行显示的载体,本课题利用带有摄像功能的用户手持终端(如智能手机、平板电脑等)作为虚拟显示器。软件系统则是基于Vuforia SDK插件和Unity3D开发的可以进行增强现实对象的移动、旋转、缩放、动作触发、视频播放等交互功能的APP。
总体上看,AR技术的关键在于设备对周围环境的感知理解:最基本的,是确定设备自身的空间位置;再高级一点的,是对环境进行实时重建;更高级的,就涉及到识别、认知和交互了。其中,定位是最基础的,只有设备自身的位置和朝向精确地被确定,虚拟出来的内容才能和现实很好地结合,以达到足够的真实感,并且该过程需要实时地进行。目前应用于移动设备上的AR主要有2类:基于图片标记的AR和基于IMU的AR。本文研究的是基于图片标记的AR,在移动终端拍摄特定的图像,在预览画面中叠加3D动画效果,移动或者旋转手机,3D动画始终与拍摄的图片保持固定的位置关系,从而达到增强现实的体验。
增强现实技术的程序基本流程(图1)为:获取摄像头的图像、识别标识、检测标识的位置和方向、虚实结合,合成CG动画显示。
图1 增强现实技术的程序基本流程
1.2 关键技术研究
1.2.1 真实高效的3D渲染
目标物体的识别完成时,展现在移动端显示器中的三维辅助图形需要根据实际施工现场施工工艺进行3D模型的精确建模(图2、图3)。三维精确建模主要是利用现有成熟BIM软件实现从二维CAD建筑结构图纸到三维建筑结构模型的转变。其中需要整理模型物理参数和高效材质等内容,实现真实、高效的模型建模渲染和设置。
图2 主楼及裙房三维模型
图3 裙房近景
1.2.2 目标的精确识别
此应用程序采用高通的Vuforia SDK插件来实现目标物体的识别功能。Vuforia是一个能让应用拥有视觉的软件平台,开发人员可以轻松地为任何应用程序添加先进的计算机视觉功能,使其能够识别图像和对象,并与现实世界中的空间进行交互。Vuforia提供Unity 3D开发,通过上传图片数据到云数据库进行图片识别(图4),识别完成后在对应的现实场景中增加虚拟现实的内容。Vuforia SDK同时允许5个目标在摄像头范围内并且同时可以允许50个图像目标在资源数据库中。运行时允许交换数据集,这使得应用程序可以容纳更多的目标。它的图片识别机制如下:
1)服务器对上传图片进行灰度处理,使其变为黑白图。
2)提取黑白图像特征点。
3)将特征点数据打包。
4)程序运行时对比特征点数据包。
1.2.3 界面和可视化
用3DMAX等专业建模软件构建的三维模型没有地理坐标,在构建大范围场景时有一定困难,为实现把三维模型准确地绘制到当前的场景中(图5),就需引入AR技术,将识别代码植入三维模型对应的二维CAD图纸上。
图4 二维识别图纸
图5 Unity中二维图纸上绘制三维模型
本课题开发工具选用Unity,它是一款专业的游戏引擎,能够提供方便、简洁的多平台游戏开发,拥有高度优化的图形渲染管道,比较适用于虚拟现实世界的生成。Unity 3D技术实现全系统资源整合和集成,物体坐标采用笛卡尔坐标系描述,Transform组件用来描述在空间中物体的状态,它包括位置、旋转和缩放。在Unity中导入Vuforia SDK插件包和资源包后,就可以给模型添加脚本,实现3D模型的放大、缩小、旋转、文字显示等,也可以设计用户界面,通过按钮控制视频和音频的播放、暂停、终止,以及为模型添加文字、图片等辅助信息。在Unity中,利用Vuforia实现虚实结合的操作如下:
1)新建Unity 3D工程,导入Vuforia-Unity 3D数据包和从云数据库下载的包含识别图的目标包。
2)添加AR Camera和Image Target到场景中,模型添加到Image Target下。
3)设置AR Camera参数。
4)设置Image Target参数。
5)编写脚本为模型添加事件。
交互操作时,程序会根据用户的手势信息判断接触点的位置、数量以及手势方向调用对应的函数,从而实现对模型的交互控制。触摸点的数量由Input.touchCount函数获得。当Input.touchCount<=0时,代表触摸点为零,即没有触摸,否则当Input.touchCount=1时为单点触摸,控制模型水平上下旋转。当Input.touchCount=2时为多点触摸,控制模型放大缩小。Offset记录老的2个触摸点距离和新的2个触摸点距离差,Offset值为正表示放大手势,为负表示缩小手势,然后调用对应的函数(图6)。
图6 手势识别和模型控制流程
本文研究了基于Android和IOS平台发布apk格式的应用程序。图7为安卓手机上安装APP后测试示例效果,运行APP后,手机摄像头对准并识别图纸,屏幕上叠加显示建筑的3D模型,点击屏幕或虚拟按钮实现交互操作。
2 应用案例
本文的研究成果可广泛应用于工程建设中的数字化辅助建造。
图7 测试示例效果
2.1 机械维护和修理
AR 应用可以用于复杂的机械装配、维护和修理,允许施工人员在需要的地方查看设计、施工或运维信息,通过真实环境叠加的3D画面,查看具体的施工操作流程。
2.2 标书、报告、书籍等的扩展内容展现(3D书籍)
AR技术可以用于书籍的模型化展示,让图片上静态的建筑变成3D立体建筑模型,可以让用户直观地看到建筑物的构造细节,点击屏幕可以与3D建筑模型进行交互,将视觉的画面扩展到视听多方位的体验。
2.3 各类展会的辅助多媒体解说(虚拟解说员)
代替传统的宣传展示形式,展会中将3D建模的卡通人物叠加到展览图片中,通过实时视频显示或音频讲解进行现场解说,并将内容以多媒体的方式呈现给参观者,展示更多的咨询内容,提升参观者的观赏体验。
3 结语
本文是基于图纸的AR研究,在此基础上的下一个目标是将AR技术引入施工现场,将虚拟模型与真实环境等比例结合,以产生更好的视觉冲击,辅助施工作业,保证工期、施工质量,提高生产效率。另外,有人把AR看作新的计算平台,完全不为过,试想一下,最早期的寻呼机、功能机只是提供一维的通知、电话或短信服务,到了智能机时代,大屏的出现,二维的图像、音视频成了主流,那下一个时代呢,也许3D技术、AR会是计算设备的核心能力之一。
在全面建设智慧城市的形式下,智能建筑的发展需要新技术的支撑,AR技术代表的先进科技应该得到重视,要加快对先进科技的研究和应用,推进建筑行业的改革。