菜鸟都应该知道的倾斜摄影测量知识

作者:翔翔

所谓“站在巨人的肩膀上”在这篇文章中就很好的体现出来了,本文的一些图和一些概念就是借鉴“巨人”发表的文章中的图和概念。这还得感谢这些“巨人”把我们领向一条光明大道。我不是摄影测量的专业人士,GIS圈也只是个刚入门的菜鸟。请允许我从一个菜鸟的角度,来说说那些菜鸟入门级的倾斜摄影测量知识。
近些年,倾斜摄影测量在GIS圈掀起了一阵巨浪,有人说他颠覆传统的测绘领域,有人说他替代了传统建模方式。正因为倾斜摄影测量被带上了这么多光环,人们开始对他有形形色色的猜想,让它变得越来越神秘。就让咱们来看看倾斜摄影数据的效果图。
这里写图片描述

我们先来看看倾斜摄影测量,和我们传统的影像有什么区别?
从数据采集的方式来看,传统影像是通过飞机上搭载的航摄仪对地面连续摄取相片,而后经过一系列的内业处理得到的影像数据,获取的成果只有地物俯视角度信息,也就是视角垂直于地面。而倾斜摄影测量测试通过飞机或无人机搭载5个相机从前、后、左、右、垂直五个方向对地物进行拍摄,再通过内业的几何校正、平差、多视影像匹配等一系列的处理得到的具有地物全方位信息的数据。简单理解就是,影像上地物是在一个平面的,倾斜摄影测量地物是具有真实高度的。
这里写图片描述

我们知道了倾斜摄影数据采集的方式,通过倾斜摄影数据加工的关键技术,比如多视影像联合平差、多视影像关键匹配、数字表面模型生产和真正射影像纠正等,得到地表数据更多的侧面信息,加上内业数据处理,得到数据的三维模型。
下面,小伙伴们一起来揭开倾斜摄影测量数据神秘的面纱吧!倾斜摄影测量的数据本质上来看是mesh模型,什么是mesh模型呢?mesh模型就是网格面模型,它是点云通过一些算法,比如区域增长法、八叉树算法和波前算法等等构成的。而点云是在同一空间参考系下用来表示目标空间分布和目标表面特性的海量点集合。内业软件基于几何校正,联合平差等处理流程,可计算出基于影像的超高密度点云,如下图:
这里写图片描述
最后经过纹理映射构建真实三维模型,如下图:
这里写图片描述
下面我们说说倾斜摄影测量常用的处理软件。目前国内外比较流行的倾斜摄影自动建模软件如下:
1) 法国Acute3D公司的Smart3DCapture。基于图形运算单元GPU的快速三维场景运算软件,可运算生成基于真实影像的超高密度点云,它能无需人工干预地从简单连续影像中生成逼真的三维场景模型。 国内有多家重要的数据生产单位正在使用该软件。
2) 法国INFOTERRA公司的像素工厂(Pixel Factory)StreetFactory子系统通过对获得的倾斜影像进行几何处理、多视匹配、三角网构建,提取典型地物的纹理特征,并对该纹理进行可视化处理,最终得到三维模型。
3) 美国苹果公司收购C3公司所采用自动建模技术。
4) 美国Pictometry公司的Pictometry倾斜影像处理软件提供了EFSElectronic Field Study。
5) 国内有多家企业及单位对倾斜模型也有比较深入的研究,形成自己独特的模型工艺流程。
目前网络上可以方便找到Smart3DCapture Viewer,并且在Acute3D官网提供了示范的数据, 感兴趣的同学不妨下载试用,下载地址:http://www.acute3d.com/s3c-viewer/。
好,啰嗦了这么多,咱们言归正传,超图可以用倾斜摄影测量的数据做些啥呢?
倾斜摄影测量的数据格式很多,超图目前支持的是OSGB文件格式的倾斜模型,OSGB文件格式自带了多级金子塔的模型精度级别,为了充分利用其LOD结构,超图平台通过scp索引文件直接加载模型,SuperMap iDesktop 7C版本已经为用户提供了生成scp的工具,通过在场景中直接加载scp的方式,可以快速的在三维场景中显示不同精度的LOD层级。这里得说明下LOD这个概念,LOD(Level of Detail)是GIS平台提高性能的一个重要法宝,即对同一个数据从清晰到模糊有多层。当屏幕视角距离某个地物近时,软件自动调用最清晰层的数据;当屏幕视角远离该地物时,则自动切换为模糊层的数据。想在前年使用超图对接OSGB数据时,使用的还是数据导入,再生成模型缓存的方式,这种方式耗时长而且数据加载慢,这样做完全不利于用户体验。现在以这种scp直接加载数据的方式,真是好太多太多了。
倾斜摄影测量的数据有这么多的好处,比如浏览速度快、数据加载快、数据精度高、数据真实性高、人员成本低、和数据获取耗时短等等,但是用过的人都知道,单体化是倾斜摄影测量应用的一大问题,为什么这么说呢?咱们的倾斜摄影数据是一个整体,不像简单模型那样是一个或者同类对象组成的,所以咱们想要倾斜模型像简单模型那样能够进行查询、分析和编辑等功能,这就是倾斜模型存在的一个大问题。
那么什么叫单体化?我们有必要先了解下这个概念。简单的说单体化也就是获取或者分离一个场景中的单个或者一类对象。怎样获取或者分离呢?不同的人有不同的看法,比如说一些人认为应该用切割的方式来获取或者分离;而超图则是用矢量化的方式来获取或者分离,这主要是超图得益于二三维一体化的技术,将二三维的矢量数据与倾斜摄影测量数据相结合,实现了数据的单体化,有了这个法宝,什么查询,分析,编辑等等功能的实现就水到渠成了。小菜我就以这两种方式来谈谈单体化问题。
提倡切割的人认为,单体化单体化,不仅仅是要单体,而且还要实现分离的效果,最后把同类的给分离出来,完成分离之后给后期基于此数据做查询、分析和编辑等功能时提供方便。现在我们来看看切割出来的效果:
这里写图片描述

上面两张图看来切割的方式展现出来的效果还蛮不错的,有条有理的,但是当你拉近到一定程度的时候效果是这样的:
这里写图片描述
这样看来切割的缺点就不言而喻了,出现的锯齿状是用户最不愿看到的,而且这也不是倾斜摄影该有的展示效果。这是效果问题,那么对于倾斜摄影的话,我们后续还要进行数据处理,切割之后的倾斜摄影要替换人工精细建模的时候, 如何才能把锯齿状边缘与精细模型的边缘对接上去,使它们能够达到无缝结合?要隐藏某种地物的时候露出锯齿状的空洞,该如何解决?而且这样切割之后,也抛弃了倾斜摄影数据自带的LOD的优点,导致GIS平台只能用按照普通模型的方法来构建LOD。这些都应该是 “切割工程师”需要考虑的。
说完了切割咱们来一起来探讨下矢量化的方式,何谓矢量化?矢量化则是用简单的面数据,通过贴附的方式展现在倾斜摄影模型数据上,在保证效果、不破坏原始数据和LOD的同时,最大的好处还在于它打通了基于三维的倾斜摄影与基于二维的矢量面之间的关键“关卡”,实现三维和二维GIS的完美一体化。现在小菜我就给大家带来大神做的矢量化的单体化的效果图:
这里写图片描述
看到了这样的效果,小伙伴们是怎样想的呢?上面咱们介绍了单体化的内容,现在咱们来说说矢量化解决了倾斜摄影数据的一个重大问题水面“破洞”现象,“破洞”是由于水面的高反射现象使得相机在获取水面信息的时候被“致盲”了,使得那片区域的信息不准确。下面咱们来看看修补前后的效果图:
这里写图片描述
这里写图片描述
超图弥补的还不止一个倾斜摄影数据本身的问题,比如树的还原度不高等问题。大家都知道相机是有拍摄盲区,比如立交桥的下面,建筑的屋檐下面,这些被遮挡的地方,而这盲区也是不可避免的,就像人的眼睛不能看到遮挡物后面的区域,这片区域就是我们所谓的盲区 。对于这个区域目前各个公司有不同的想法,目前听来,才疏学浅的我觉得,倾斜摄影测量+街景的想法很靠谱,既可以利用现有的资源,同时还能弥补互相的不足 ,不过街景数据的覆盖程度和数据更新的算法也是个问题,那就让我们拭目以待。下面这幅图就给大家说明了相机盲区和树的还原度问题。
这里写图片描述
在小菜我看来,倾斜数据的价值还需要挖掘,它能提供给我们的价值远不止目前看到的,随之数据精度的不断提高,采集速度的加快,有可能在未来的某一天,倾斜摄影测量的数据可能会成为人们了解现实环境的重要手段。
但是犹如上文提及到的一系列功能模块,我们也可以看到倾斜摄影的一些缺陷:比如倾斜摄影相机的盲点区域,比如立交桥下、房屋遮挡处;水面的“破洞”现象;不规则模型的还原度不高,比如说树等等,造成这些缺陷的主要原因还在于倾斜摄影相机的拍摄技巧、硬件、还原模型的计算方式等因素。在这里小菜我也希望大家一起努力的学习把倾斜摄影这个技术提升到一个新的高度,也让我们的数字化城市、数字化地球更加真实、漂亮、更具观赏性。未来是咱们的!

  • 24
    点赞
  • 128
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
MicroPython菜鸟教程是一个专门为初学者设计的教程,旨在帮助新手快速上手和理解MicroPython编程语言。该教程结构清晰,内容简洁明了,非常适合没有编程经验的菜鸟学习。 教程首先介绍了MicroPython的基本概念,包括MicroPython的特点、启动MicroPython以及如何通过MicroPython运行代码等。接着,教程详细讲解了MicroPython的基本语法,如变量、数据类型、运算符等,让初学者可以迅速掌握语言的基础知识。 在掌握基础语法后,教程进一步介绍了MicroPython的常用功能,包括条件语句、循环语句、函数以及面向对象编程等。这些内容帮助学习者理解和掌握如何使用MicroPython编写更复杂的程序,提高代码的重复利用性和可读性。 此外,教程还深入介绍了MicroPython的一些高级功能,如文件操作、网络编程、图形界面和串口通信等。这些内容不仅帮助菜鸟了解MicroPython在各个领域的应用,还为他们提供了更深入的学习和发展的方向。 通过学习MicroPython菜鸟教程,菜鸟们可以迅速入门MicroPython编程,并逐步提高编程能力。教程的简洁明了的风格和实例的丰富性,使得初学者能够轻松理解并应用所学知识。同时,教程还提供了相关的习题和实例,供学习者练习和巩固所学内容。 总之,MicroPython菜鸟教程是一个优秀的入门教程,适合所有对MicroPython编程有兴趣的菜鸟。通过学习这个教程,菜鸟们可以迅速掌握MicroPython的基础知识和编程技巧,并在实践中不断提升自己的能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值