张天巧
(广州建通测绘地理信息技术股份有限公司,广东 广州510663)
最近几年,搜索引擎Google把卫星遥感地图资源和三维电子地图技术及互联网集合起来,推出Google Earth和Google Maps,将人们带进了一个全新的广阔空间,从而给人栩栩如生、身临其境的体验。另外,国内一些企业也借助WebGIS技术,利用飞艇、飞机和汽车等交通工具,从不同角度对整个区域进行360°全方位拍摄,通过数据块与地图上每个具体地点联系起来,获得地区的实景地图。Skyline凭借其国际领先的三维数字化显示技术,利用海量的遥感航测影像数据、数字高程数据及其他二三维软件搭建出对真实世界进行模拟的三维场景,目前在国内是制作大型真实三维数字场景的首选软件。
基于机载倾斜摄影数据自动贴纹理的方法是机载倾斜摄影数据获取的斜片数据,在经过世界坐标到影像像素坐标的映射变换后,可以建立起像素级的对应关系,从影像中提取不规则像素区域,对纹理片段进行自动排样,可以自动地为建筑模型创建适合实时渲染的纹理贴图。
利用航拍影像(包括原始斜片影像和处理后的正射影像)中包含的建筑图像信息,为城市建筑模型创建纹理贴图。从海量影像数据中高效地为数字城市中大批量建筑模型半自动地创建纹理贴图。对于任意一个建筑模型,可以自动搜索含有该建筑外观信息的影像,并自动地将模型上的顶点映射到影像上的像素位置,用户只需要手动校准像素位置,即可自动地为模型创建纹理贴图。
目前为建筑模型创建贴图主要采用常规的办法,使用Photoshop等图像软件,手动将每个建筑的外观像素区域从影像中提取出来,并整合到一张图像中,然后利用三维建模软件,手动为模型创建纹理贴图。毫无疑问,这种方法工作量极大,考虑到城市中成千上万的房屋,其人力和物力成本将会非常昂贵,甚至是不可行的。使用本软件,将会大大减少贴图所耗费的时间人力,带来极高的经济效益。
利用机载航拍采集的海量影像(原始斜片影像和处理后的正摄影像)数据,半自动地为城市中大批量的建筑模型创建纹理贴图。对于一个建筑模型(如房屋),首先使用共线方程式将模型上每个顶点所在的世界坐标转换为某个影像上的像素坐标,计算出来的像素位置由于存在误差,可能需要手动校准,从而得到模型上每个面在影像中对应的像素区域,将这些像素区域提取出来,并整合(自动或手动)到一张较小的纹理图像中,最终为模型创建纹理贴图。
(1)世界坐标与影像像素坐标的相互转换
本系统使用共线方程式将世界坐标转换为影像像素坐标,利用单像测图方程式将影像像素坐标转换为世界坐标,利用航测业内常用的TerraPhoto-Camera相机参数配置格式来配置相机参数。
(2)复杂对应关系
模型上的顶点定义为空间点,三角形定义为空间三角形,一个空间点对应一张影像上的一个像素位置,因此相应地定义影像点及影像三角形。由于多个相邻三角形将构成一个连续的多边形区域,把相邻影像三角形构成的像素区域定义为影像片段;最后要把所有影像区域整合到一张较小的纹理图像中,因此还需要定义对应的纹理片段。
(3)从影像中提取不规则像素区域
一个模型对应的影像片段是不规则多边形,使用光栅化算法将这些不规则的像素区域提取出来。
(4)纹理片段的自动排样
为了在利用3D图形API渲染模型时减少显存资源的占用,提高渲染效率,应使最终创建的纹理图像尽可能小。因此,需要将所有纹理片段尽可能紧凑地摆放在一起。而纹理片段本身是不规则多边形,属于典型的排样问题,排样问题是数学上的NP完全问题,具有很高的复杂性,主要涉及遗传算法、临界多边形算法、多边形合成算法等。多边形排样示例如图1所示。
图1 多边形排样示例
1)由于系统的多个子模块具有较高的复杂度和耦合形,因此在开发初期,先进行概要的框架设计,将整个系统分为几个核心子模块,深入完成每个子模块之后,根据需要回归调整总体设计。
阶段工作包括:①系统概要框架设计;②设计工程数据管理机制;③管理模型空间顶点、空间三角形、影像点、影像三角形、片段点、片段三角形的复杂对应关系;④设计总体的浏览及编辑操作界面。
2)项目的深入实施阶段,实现所有核心功能模块,解决遇到的所有技术难点。
3)完善调整总体框架设计,将所有核心模块合理有序地嵌入到系统中。
4)完成界面设计和搭建工作,如编辑、数据保存等。
5)设计创新点:①构建复杂点、面对应关系;②提取不规则像素区域;③多边形排样。
(1)创建工程
由于城市中房屋数量较大,因此为数字城市房屋模型贴纹理是一个工作量较大的工程,需要多人分工合作,每人负责部分区域内的房屋模型。为了使工作有条不紊地进行,需要创建工程管理,如图2所示。
图2 创建工程管理
(2)加载工作子区域
完成工程创建之后,系统统计工程中包含所有模型及所在的位置。由于一个工程包含的模型可能较多,因此包含所有房屋模型的空间区域也将会较大。由于计算机硬件资源的限制,无法同时加载工程对应的整个空间区域内的房屋,因此需要分子区域加载。如图3所示,在模型导航窗口中,一个点代表一个建筑模型,半透明区域即为要加载的工作子区域。
(3)漫游选择要贴图的模型
选择加载工作子区域之后,工作子区域内的所有模型将会在程序主界面的三维视图中渲染。用户可以在三维视图中漫游工作区域内的场景,然后选中要贴图的模型,如图4所示。
三维视图中,当用户想要为某个模型贴纹理时,双击该模型,即可打开贴纹理的框架窗口;或用户在工程管理面板上的树形控件中双击想要贴纹理的模型,也将开始对该模型进行纹理贴图(这种方式可以为不在工作区域内的模型进行贴图)。
图3 工作子区域
图4 贴图的模型
(4)模型贴纹理
选择某个模型进行贴纹理后,进入贴纹理界面,如图5所示。
图5 模型贴纹理图
贴纹理界面由4个部分组成:模型视图、影像缩略图列表、影像视图、纹理视图。模型视图中渲染当前进行贴图的模型,可以在该视图中查看纹理贴到模型后的效果;影像缩略图列表中列出了所有与模型当前选择三角面相关的影像;影像视图显示影像缩略图列表中当前选中的影像,影像片段在该视图中编辑,改变影像点的位置后,影像片段重新计算,同时更新对应的纹理片段,并反映到纹理贴图中;纹理视图显示最终整合出来的纹理,在该视图中可以移动和旋转纹理片段,将所有纹理片段进行手动摆齐。
(5)编辑影像片段
影像片段的编辑有两种编辑模式:点模式及面模式,在贴图界面菜单中选择编辑模式,如图6所示。
图6 移动影像三角形
(6)纹理片段自动摆齐
完成影像片段编辑之后,为了节省工作量,可以利用纹理片段自动排样功能来自动摆齐所有纹理片段。
基于机载倾斜摄影数据自动贴纹理技术的研究是倾斜摄影未来的研究热点,也是倾斜摄影实践应用的关键技术,尤其随着数字城市和智慧城市建设的不断推进,对数据获取和更新提出更高的要求,倾斜摄影的数据自动贴纹理技术在这方面有着很大的优势,具有很好的应用前景。
[1] 彭国均,池天河,唐丽玉,等.数字城市的三维图形构建技术[J].地球信息科学,2013(1):84-89.
[2] 徐青.地形三维可视化技术[M].北京:测绘出版社,2003:5-25.
[3] 华斌.数字城市建设的理论与策略[M].北京:科学出版社,2004:110-125.
[4] 李玮峰,宫晋平,杨新海,等.机载倾斜摄影数据在三维建模及单斜片测量中的应用[J].遥感信息,2013(3):102-106.
[5] 冯梅.基于LiDAR和航空影像的三维建模方法探讨[J].测绘通报,2011(12):12-14.
[6] 张祖勋,朱俊峰,胡翔云.可量测影像高程同步模型及其在测图中的应用[J].测绘学报,2014,43(1):5-12.
[7] 吴文坛,田挚,李哲,等.河北CORS在大比例尺倾斜航空摄影测量中的应用[J].测绘通报,2013(2):63-66.
[8] 曹力.多重三维激光扫描技术在山海关长城测绘中的应用[J].测绘通报,2008(3):31-33.
[9] 喻雄.机载激光雷达在山区高速公路勘测中的应用[J].测绘通报,2011(2):31-34.
[10] 阚晓云,孙景振.LiDAR及倾斜摄影技术在数字实景城市模型中的应用[J].测绘地理信息,2014(3):43-46.
[11] 王庆栋,艾海滨,张力.利用倾斜摄影和3ds Max技术快速实现城市建模[J].测绘科学,2014(6):3-5.
[12] 王海云,余如松,缪世伟,等.航空摄影测量技术在海岛礁测绘的应用[J].海洋测绘,2011(2):45-48.
[13] 卢小平,庞星晨,武永斌,等.机载LiDAR基础测绘关键技术及应用[J].测绘通报,2014(9):26-30.
[14] 史照良,曹敏.基于LiDAR技术的海岛礁、滩涂测绘研究[J].测绘通报,2007(5):49-53.
[15] 楼燕敏,吴迪.机载LiDAR技术在浙江省滩涂海岸测量中的应用研究[J].测绘通报,2012(12):47-50.
[16] 张靖,江万寿,姜三.基于虚拟点模型的机载LiDAR系统自动检校方法[J].测绘学报,2013,42(3):389-396.