本文介绍基于无人机影像建模完成后的结果,利用ArcMap软件进行空间选址分析,从而实现空间三维模型应用的方法。

  前面三篇博客分别基于不同软件、不同方法,详细讲解了空间三维模型建立的过程,具体文章包括物体三维模型的构建:3DSOM软件实现侧影轮廓方法空间三维模型的编码结构光方法实现:基于EinScan-S软件无人机影像的空间三维建模:Pix4Dmapper运动结构恢复法

  以上三篇博客主要是对空间三维建模的原理与具体操作加以总结;而空间三维模型在建立之后,如何对其加以更为具体的应用,如何提升模型自身的实践价值,同样需要我们去深入探讨。那么本次,综合上述第三篇博客所提到的方法与原理,我们就将在无人机影像三维模型重建的基础之上,对其加以更为具体的实际应用。

  其中,本文在上述博客3的基础之上,直接基于无人机影像建模完成后的结果加以空间分析;如果需要了解建模的详细过程,大家查阅无人机影像的空间三维建模:Pix4Dmapper运动结构恢复法即可。另一方面,本文并没有像前期遥感图像处理的相关博客那样,具体将每一个步骤记录,更多的则是展现基于三维模型进行空间分析的一个思路;因此,对于本文中没有表明如何具体进行的操作,大家如果有疑问可以留言。

  本文原始数据为无人机影像的空间三维建模:Pix4Dmapper运动结构恢复法所得到的某校园空间三维模型结果,空间分析部分借助ArcMap 10.2软件完成。

1 空间分析目标确立

  完成前述全部无人机航拍影像空间三维建模工作,结合当今疫情实际情况,期望借助建模所得数字表面模型(Digital Surface Model,DSM)与数字正射影像图(Digital Orthophoto Map,DOM),运用坡度分析、缓冲区分析、叠加分析等空间分析方法,继续以前述某校园部分区域为研究对象,加以临时观察隔离选址评价。

  基于前述空间三维模型建立过程,已知研究区域如下图所示。

  基于实际情况,为该学校疫情临时观察隔离选址条件加以初步规划,结果如下:

  1)坡度在3°以下;

  2)海拔低于35 m;

  3)周围15 m不得含有20 m以上地物;

  4)需具有一定防洪能力;

  5)面积不可过小;

  6)阳光照射时长尽可能长(择优)。

  上述约束条件更多仅仅作为一种选址分析的首要考虑因素,后续操作过程中将视情况对其加以适当修改。结合上述目标条件,借助空间三维模型建立后所得DSM数据与DOM数据,尝试对其加以实现。

2 基于基本约束条件的选址求解

2.1 坡度计算与提取

  利用三维建模所得部分校园区域DSM数据,求取其坡度信息,如下图所示。

  其中,可以看到部分房屋在坡度图中具有较好的辨识信息;将其放大即可观察到,这些房屋多为该学校老宿舍区、艺术馆、景园楼等具有倾斜房顶的建筑,如下图所示。

  依据前述限定条件,对坡度小于3°的部分加以提取,得到提取结果如下图所示。

  随后将其转换为矢量图层,如下图所示。

2.2 海拔提取

  依据前述对海拔条件的限制要求,提取出海拔小于35 m的地区;如下图所示。但是,可以发现依据这种划分指标的理想海拔区域明显包括了一些建筑物,如景园楼、艺术馆等。很显然,疫情临时观察隔离不可以设置在已有建筑物区域。

  出现这一问题的原因亦较为简单,即由于该所学校面积大、研究区域跨度长,且在东西方向、南北方向均具有较大的海拔差,从而使得所得研究区域DSM数据各位置(如研究区域西侧与东侧)之间海拔范围较大;可能在某一海拔整体较高区域,其地表高度就已高于海拔较低区域建筑物的高度。因此,使得海拔提取结果较为不理想。

  基于上述分析,随后尝试将对海拔的要求更改至15 m,得到提取结果如下图所示。

  可以看到,以15 m为阈值提取的海拔区域尽管较之前者有了一定改观,但在其理想区域中依然包含有建筑物的存在。因此,同样放弃15 m海拔的提取结果。

  进一步考虑,发现不仅仅是海拔的提取会受到影响,DSM数据在地物高度提取方面同样存在一定问题。例如,前述对疫情临时观察隔离的选址初步要求中提及了“周围15 m不得含有20 m以上地物”;其中,20 m以上地物的定义自身即具有一定问题——在未获取研究区域地表平均高程的情况下,地物高度自然没有一个统一的衡量标准,即无法对具有某一高度的地物加以提取。例如,由于研究区域西侧海拔普遍高于东侧,则15米既可能是研究区域西侧某一地表的海拔,亦有可能是东侧某一建筑物的顶层高度。因此,需要首先确定研究区域的平均地表高度,才可依据DSM数据对地物的高度加以进一步求解。

2.3 LAS数据初探

  综上所述,考虑是否可对研究区域模型的地表平均高度加以求解。查阅互联网资料后,亦得知通过对地表点云加以分类等方式可对地表平均海拔加以求解;但这些方法整体操作往往较为复杂。随后,看到有部分网络资料提及,可以利用Pix4Dmapper软件建模所得点云LAS结果文件对地表高度加以求解。因此,尝试由这一角度加以实现。

  首先,在Pix4Dmapper软件中生成模型所对应的点云文件,并将其导入至ArcMap软件中。如下图所示。

  随后,基于导入的LAS数据,创建LAS数据集,如下图所示。

  依据网络资源所述,选用“平均值”像元分配类型方法,将LAS数据集转换为栅格,即可得到研究区域的地表平均海拔。借助相关教程,实现这一步骤,如下图所示。

  对得到的结果加以识别,并与DSM数据对比,如下所示。

  可以看到,其中的像元值与DSM数据几乎并无差别。由此,可以认为基于LAS数据的地表平均高度提取方法似乎亦不奏效。

  基于上述分析,个人决定还是需要直接由海拔高度入手,选取一个对研究区域DSM数据中建筑物与地表高度具有较好区分度的海拔数值,并以其作为建筑物与地表的分割阈值。经过多次尝试,发现这一阈值选取为20 m时整体较为合适。

  阈值为20 m时,所得海拔提取结果如下图所示。

  可以看到,上述所得结果整体对于建筑物与地表具有较好区分能力——除北部一带,其它位置的建筑与地表分离较好。而北部一带由于其自身复杂的地形,原本就不适合疫情临时观察隔离的建立。因此,可以认为20 m阈值的海拔提取结果较好。

  对上述海拔提取结果转变为矢量图层,并以15 m为半径进行缓冲区分析,得到结果如以下三幅图所示。

2.4 淹没分析

  考虑到该所学校所在城市整体地势,以及过去一段时间曾在该城市发生过的洪涝灾害实例,考虑到需要对疫情临时观察隔离加以一定防洪能力考虑。首先,选择以5 m水位为阈值,对区域整体防洪能力加以区分。其中,防洪能力较高区域即指5 m水位无法淹没区域。所得结果如下图所示。

  可以看到,仅仅在研究区域东南角具有部分防洪能力较弱区域。由于这一防洪能力较低区域面积较小,因此考虑适当加大淹没分析对应阈值。

  分别以8 m与10 m水位作为阈值,利用同样的方法对研究区域防洪能力加以区分,所得结果如下图所示。

  可以看到,当阈值为8 m时,所得到较易淹没地区多为研究区域东南侧一带;而当阈值为10 m时,较易淹没地区则还包含了运动场等区域。结合实际情况与往年该城市洪涝灾害实际情况,认为以8 m为阈值的淹没分析所得结果具有较高的现实性与实际意义。因此,最终结果中,选择以8 m为阈值,对疫情临时观察隔离选址的防洪能力加以评价。

2.5 区域相交

  基于上述坡度、周围建筑、防洪能力等因素,将各约束条件所得结果加以整合,从而得到能够满足上述全部要求的区域。

  下图为同时满足坡度要求与临近地物要求(距离20 m以上建筑物15 m以上)的区域。

  下图为同时满足坡度、临近地物要求与防洪能力(8 m水位为阈值)要求的区域。

  由此,即可得到初步选址结果。但是,可以看到所得结果较为零散——其中包含较多零散的点状区域。当然,由上图观之,由于分辨率等影响,点状分布区域或许并不明显;但实际这种小面积区域数量较多。下图即为将ArcMap图层放大后结果,可以明显观察到上述点状区域。

  这些区域由于实际面积较小,并不具有建设疫情临时观察隔离的实际价值。因此,我们需要借助各区域的实际面积,对上述所得选址结果加以进一步筛选,从而得到更加符合实际的选址方案。

2.6 面积约束

  假设每一疫情临时观察隔离至少应具有10 m2的面积。通过计算几何方法实现各区域面积的量算。

  依据10m2阈值,对不符合要求的区域加以剔除,所得结果如下图所示。

  其中,绿色区域即为结合了坡度要求、临近地物要求、防洪能力要求与面积要求的选址结果。

3 基于择优条件的选址求解

  至此,已完成全部基于基本约束条件的选址求解。考虑到疫情临时观察隔离的防菌、健康需求,尝试以日照情况作为择优条件,对上述区域的选址适宜性进一步加以求解。

  其中,以太阳方位角315°为例,求解研究区域山体阴影情况,所得结果如下图所示。

  将日照情况较好区域加以提取,如下图所示。

  与前述基本约束条件所得选址结果结合,得到具有适宜性评价的该学校疫情临时观察隔离选址分析图,如下图所示。

  其中,黄色区域为满足全部基本选址约束条件与具有光照优势的选址区域;将其作为疫情临时观察隔离的首要选址对象,即一级选址区域。红色区域为满足全部基本选址约束条件,但在光照方面较之前者次之的区域;将其作为疫情临时观察隔离的次要选址对象,即二级选址区域。

  可以看到,选址区域多分布于整体较为开阔,远离建筑物、山体等位置,尤其在运动场等位置集中分布;此外,较为空旷的区域,如广场等位置,同样是疫情临时观察隔离选址的热门区域。

  当然,其中一级选址区域面积较小,分布较为零散,显然存在一定问题。类似的空间分析中的不足将统一列于以下部分。

4 不足与问题

  结合上述操作流程中出现的问题,以及所得选址结果的表现效果,可以看到本次空间分析依然具有一定不足。

  1)未对选址区域外形特征加以限定。在结果图东北侧,所得结果中将细长的道路同样作为了选址区域。而在实际情况应用中,这一区域由于其细长的特征,或许并不适合作为隔离点选址区域。即上述空间分析中未对各区域的形状特征加以描述、筛选。

  2)未对水体加以提取。在前期建立各类缓冲区时,未专门对水体区域加以划分。尽管所得选址区域结果恰好未落入水体,但这样的操作还是具有一定不严谨之处。

  3)衡量防洪能力的实际水体高度意义不明确。进行淹没分析时,分别选取5 m、8 m与10 m作为模拟水体高度,从而区分不同区域的防洪能力。但是,这里的5 m、8 m与10 m仅仅是相对所得到的DSM数据而言的相对海拔高度,其所表述的实际意义可能由于无人机拍摄误差等而并不明确(例如,此处8 m的洪水高度到底代表多高的实际标准水位,是否有可能出现此处8 m的洪水等),具有一定不确定性。

  4)未考虑零散选址点的联通性。在进行面积筛选时,将很多零散的可选址点直接舍弃;但对于一些相距较近、分布密集的可选址点而言,其往往可以实现相互之间的联通,从而组成更大的选址区域。

  5)针对光照约束条件的执行、结果均不理想。针对光照这一约束条件,在操作过程中选取了山体阴影的分析方法。但这一方法一方面未考虑到全天内太阳高度角、太阳方位角等的变化,且在阈值选取过程中具有一定主观性(因为需要自主决定光照是否充足区域的划分阈值),因此这一步空间分析过程并不精密;并进一步导致所得光照条件的分析结果(即一级备选区域)较为不理想。

Pix4Dmapper空间三维模型的应用实例:GIS选址分析的更多相关文章

  1. GIS规划应用——基于哈夫模型的GIS服务区分析

    1.  GIS服务区分析 区位因素是商业分析中一个至关重要的因素,因此在商店选址时,例行的服务区分析十分重要.服务区是指顾客分布的主要区域,在其范围内该店的商品销售量或服务营业额超过其竞争对手.对于现 ...

  2. JavaBean 基础概念、使用实例及代码分析

    JavaBean 基础概念.使用实例及代码分析 JavaBean的概念 JavaBean是一种可重复使用的.且跨平台的软件组件. JavaBean可分为两种:一种是有用户界面的(有UI的):另一种是没 ...

  3. 【转】证书的应用之一 —— TCP&SSL通信实例及协议分析(下)

    原文链接 前面两部分分别讲解了如何在.net程序中使用SSL实现安全通信以及SSL的通信过程,并通过抓包工具具体分析了ssl的握手过程,本文通过一个demo来模拟ssl协议,在TCP之上实现自己的安全 ...

  4. 【VS开发】【Live555-rtsp】RTSP服务器实例live555源代码分析

    原文地址:RTSP服务器实例live555源代码分析作者:mozheer 1. RTSP连接的建立过程 RTSPServer类用于构建一个RTSP服务器,该类同时在其内部定义了一个RTSPClient ...

  5. 增加临时表空间组Oracle11g单实例

    #需求,测试库与生产库,临时表空间同步一致 #经过查询生产环境,数据库默认临时表空间,为临时表空间组,有三个成员,三个临时表空间,每个临时表空间一个数据文件,自动扩展 #使用临时表空间组的优点,减少不 ...

  6. [置顶] Cocos2d-x 实例源码分析之二 小实例的主框架

    这篇文章是分析第一个小实例ActionTest的源码.其实所有实例程序的结构都是一样的,只有特定方法里的代码不同,大的框架都是一样的.也就是说看完这篇文章你就可以自己开始分析其他源码了. 废话不多说, ...

  7. Android中的跨进程通信方法实例及特点分析(二):ContentProvider

    1.ContentProvider简单介绍 在Android中有些数据(如通讯录.音频.视频文件等)是要供非常多应用程序使用的.为了更好地对外提供数据.Android系统给我们提供了Content P ...

  8. GIS专业分析方法(待更新)

    遗传算法 核密度估计 http://blog.163.com/zhuandi_h/blog/static/1802702882012111092743556/ http://blog.csdn.net ...

  9. Android中的跨进程通信方法实例及特点分析(一):AIDL Service

    转载请注明出处:http://blog.csdn.net/bettarwang/article/details/40947481 近期有一个需求就是往程序中增加大数据的採集点,可是由于我们的Andro ...

  10. Java精通并发-锁粗化与锁消除技术实例演示与分析

    在上一次https://www.cnblogs.com/webor2006/p/11446473.html中对锁的升级进行了一个比较详细的理论化的学习,先回忆一下: 编译器对于锁的优化措施: 锁消除技 ...

随机推荐

  1. Redis从入门到放弃(12):pipeline管道技术

    1.引言 在现代应用程序中,高性能和低延迟是至关重要的因素.而在处理大规模数据操作时,Redis作为一种快速.可靠的内存数据库,成为了许多开发人员的首选. 在Redis中,每个操作都需要与服务器进行往 ...

  2. 使用HTML一键打包EXE工具打包KRPANO全景项目

    HTML一键打包EXE工具(HTML封装EXE, HTML转EXE)能把任意HTML项目(网址)一键打包为单个EXE文件,可以脱离浏览器和服务器,直接双击即可运行. 打包工具群:429338543 最 ...

  3. 在微服务环境下,远程调用feign和异步线程存在请求数据丢失问题

    一.无异步线程得情况下feign远程调用: 0.登录拦截器: @Component public class LoginUserInterceptor implements HandlerInterc ...

  4. Java笔记(细碎小知识点)1

    1.Dos命令:dir:打出当前目录结构:md:创建文件夹:cd+文件夹地址:跳转到当前目录下的对应文件夹:cd..:跳转到上一目录:rd+文件夹:删除文件夹中东西:del+文件(或 "*. ...

  5. MySQL系列之——错误日志(log_error)、二进制日志(binary logs)、慢日志(slow_log)

    文章目录 1.错误日志(log_error) 1.1 作用 1.2 错误日志配置 1.3 日志内容查看 2. binlog(binary logs):二进制日志 ***** 2.1 作用 2.2 bi ...

  6. WEBGpu最佳实践之BindGroup

    介绍 在WebGPU中,资源通过GPUBindGroup结构传递给着色器,与支持它的布局定义(GPUBindGroupLayout和GPUPipelineLayout)以及着色器中绑定组的声明一起.这 ...

  7. 记Halo1.5版本迁移Halo2.10.0版本

    原文地址: 记Halo1.5版本迁移Halo2.10.0版本 - Stars-One的杂货小窝 上一篇Window10安装linux子系统及子系统安装1Panel面板 - Stars-One的杂货小窝 ...

  8. InnoDB 存储引擎之 Buffer Pool

    Mysql 5.7 InnoDB 存储引擎整体逻辑架构图 一.Buffer Pool 概述 InnoDB 作为一个存储引擎,为了降低磁盘 IO,提升读写性能,必然有相应的缓冲池机制,这个缓冲池就是 B ...

  9. Unity禁止C#自动编译

    基于unity2017\2020版本 using System; using System.Linq; using System.Reflection; using UnityEditor; usin ...

  10. docker 分离engine和client

    背景 由于我个人电脑是2020款m1,16G,256G.一方面,平时除了运行多个浏览器,还有coding 编辑器等等,内存确实很紧张.其次呢,m1 是ARM的架构,所以构建的镜像是无法在X86的机器上 ...