点云数据从入到arcgis平台、发布场景服务到前端调用

10 篇文章 8 订阅

激光雷达是以发射激光束探测目标的位置、速度等特征量的雷达系统。从工作原理上讲,与微波雷达没有根本的区别:向目标发射探测信号(激光束),然后将接收到的从目标反射回来的信号(目标回波)与发射信号进行比较,作适当处理后,就可获得目标的有关信息,如目标距离、方位、高度、速度、姿态、甚至形状等参数,从而对飞机、导弹等目标进行探测、跟踪和识别。

激光雷达LiDAR(Light Detection and Ranging),是激光探测及测距系统的简称,另外也称Laser Radar或LADAR(Laser Detection and Ranging)。激光雷达系统的主要硬件组成部分包括一组车辆(飞机、无人机、直升机、车辆以及三脚架)、激光扫描系统、GPS(全球定位系统)和 INS(惯性导航系统)。INS 系统测量激光雷达系统的滚动角、俯仰角与前进方向。

优点:

  • 具有极高的分辨率

激光雷达可以获得极高的角度、距离和速度分辨率。可以在3km距离上分辨相距0.3m的两个目标,并可同时
跟踪多个目标;距离分辨率可达0.lm;速度分辨率能达到10m/s以内。

  • 抗干扰能力强

激光直线传播、方向性好、光束非常窄,只有在其传播路径上才能接收到自然界中能对激光雷达起干扰作用的
信号源不多,因此激光雷达抗有源干扰的能力很强,适于工作在日益复杂和激烈的信息环境中。

  • 获取的信息量丰富

可直接获取目标的距离、角度、反射强度、速度等信息。

  • 可全天时工作

激光雷达为有源主动探测,不依赖于外界光照条件或目标本身的辐射特性。它只需发射激光束,通过接收回
波信号来获取目标信息。

缺点:

容易受到大气条件的影响 在大雨、大雪、浓雾、浓烟、浮尘等坏天气情况下,衰减急剧加大,传播距离大受影响。

提示:但是也有方法来削弱误差的影响。

激光雷达能生成可通过 ArcGIS 进行管理、显示、分析以及共享的离散点云数据集,LiDAR的点云数据一般格式为LAS。在ArcGIS Pro中可以直接加载LAS,也可以使用GP工具创建LAS Dateset,一般一个项目的LiDAR数据是涉及多个LAS文件的,使用LAS Dataset来统一管理多个相关的LAS文件会更加方便。

本篇博客记录点云数据从入到arcgis平台、发布场景服务到前端调用的全流程。

1、arcgispro加载点云数据

示例数据:

链接:https://pan.baidu.com/s/1rFuLDqwa83Cq6gbLLy03NA 
提取码:cnb6

方法一:添加单个las文件(.las)到arcgispro

方法二:创建las数据集(.lasd)。使用arcgispro工具箱中的创建las数据集的工具将包含一个或者多个las文件的文件夹添加到las数据集中,然后将las数据集在arcgispro中加载。

2、可视化点云数据

点云数据默认的渲染方式为高程渲染方式,要想点云数据显示真彩色,这要求在数据采集的时候,对目标体进行数据扫描时开启真彩色扫描,然后才能在符号化时显示真彩色。下述演示了如何更改点云数据的渲染方式为RGB(源颜色):

如果希望为点云图层(例如地面、建筑物、植被或水体)中的唯一类代码值分配特定颜色,则可以使用类样式。

在查看 LAS 数据集时还可以通过Eye-Dome 照明(是一项阴影技术)来改善对深度和等值线的感知。

 通过点细化选项来控制点云数据的点密度。

3、生成点云场景图层包

使用数据管理工具集下的创建点云场景图层包工具来生成slpk文件。

设置空间参考为3857

4、发布点云场景服务

使用数据管理工具集下的共享包工具将slpk文件共享到portal或者arcgisonline,从而进行进一步的场景服务发布。

5、前端调用

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta
      name="viewport"
      content="initial-scale=1,maximum-scale=1,user-scalable=no"
    />
    <title>
      PointCloudLayer - change point size and density | Sample | ArcGIS API for
      JavaScript 4.16
    </title>
    <style>
      html,
      body,
      #viewDiv {
        padding: 0;
        margin: 0;
        height: 100%;
        width: 100%;
      }

    
      }
    </style>

    <link
      rel="stylesheet"
      href="https://js.arcgis.com/4.16/esri/themes/light/main.css"
    />
    <script src="https://js.arcgis.com/4.16/"></script>

    <script>
      require([
        "esri/Map",
        "esri/views/SceneView",
        "esri/layers/PointCloudLayer",
      
      ], function (Map, SceneView, PointCloudLayer) {
       

        // create map and view
        var map = new Map({
       
        });

        var view = new SceneView({
          container: "viewDiv",
          map: map,
          camera: {
            heading: 45,
            tilt: 78,
            position: {
              x:11593876.70,
              y: 3590862.50,
              z: 700,
              spatialReference: {
                wkid: 3857
              }
            }
          }
        });

        // create Point Cloud Layer with a renderer with set values for point size and point density
        var pcLayer = new PointCloudLayer({
          url:
            "https://tiles.arcgis.com/tiles/dquVImIBJG0qpFXp/arcgis/rest/services/test1/SceneServer",
         
        });

        // add layer to the map
        map.add(pcLayer);
       
      });
    </script>
  </head>

  <body>
    <div id="viewDiv"></div>
    
   
  </body>
</html>

参考资料:

http://zhihu.geoscene.cn/article/2921

https://www.bilibili.com/video/av80340641/   易智瑞公开课《点云数据在arcgis平台中应用》

https://developers.arcgis.com/javascript/latest/sample-code/layers-pointcloud-size-density/index.html   点云

 

更多gis方面的内容,请关注微信公众号:gislaozhang

 

  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值