【重新发现PostgreSQL之美 - 31 激光点云 LiDAR - 一尺之锤日取一半万世不竭

简介: 大家好,这里是重新发现PostgreSQL之美 - 31 激光点云 LiDAR - 一尺之锤日取一半万世不竭

背景


庄子在两千多年前就提出“一尺之锤日取一半万世不竭”, 说的是物体是可以被无限分割的, 反过来说, 我们的时空是由无限小的东西组成.

而今天量子理论体系下, 能量不是连续的, 由不可分割的量子组成.

不管谁对谁错, 我要表达的是, 我们可以从宏观去看这个世界, 也可以从微观去看这个世界, 尺度能做到做精细取决于当今的科技.

例如, 在表达一个建筑物的时候, 我们可以用一副照片就可以, 也可以全方位无死角的拍摄, 拍摄又有分辨率的差别

除了照片, 位置, 材质, 内部结构等等也是建筑物的表达

所以要表达一个东西, 和我们想把它表达到多细也是有莫大关系的. 激光点云是目前在3D打印、自动驾驶、测绘、3D城市、VR等领域非常常见的技术, 甚至Iphone手机都内置了激光雷达.

很显然激光点云的信息量非常巨大, 例如它的每个点包含的维度多(如三原色、材质、时间、位置等等)、且维度需要动态弹性

场景:

  • 3D打印、自动驾驶、测绘、3D城市、VR.
  • 激光雷达传感器.

挑战:

  • 数据量大, 要求高效写入和查询
  • 每个点存储的信息量大: 维度多(pcid表达格式,如三原色、材质、时间、位置等等)、且维度需要动态弹性, 存储和查询不方便
  • 存储空间消耗、计算挑战
  • 传统采用文件存储,
  • 数据效率低查询(为了得到一部分数据,您需要读取整个文件)
  • 无法并发性(一次只能有一个用户修改点/读取点)
  • 文件往往会有很多重复(每个工人都有自己的私有版本),没有数据的安全性(文件可能会被处理破坏,很难管理谁访问什么)
  • 很难同时使用几个不同的点云
  • 难以与其他空间数据(矢量、栅格、图像)一起使用点云

PG 解决方案:

  • 支持点云插件
  • 包含点云类型、patch类型、支持空间属性、附加属性
  • 支持自定义点云格式
  • 包含相应的索引和操作符接口
  • 自动压缩存储(二进制)
  • 支持高效写入、查询

pgPointcloud提供了一种在postgres数据库中有效存储点的方法。

实际上,pgpPointCloud存储点组(pcPoints),称为pcPatch,存储点组允许有效地压缩数据。

这个补丁有一个边界框,PostGIS空间特性可以使用它来大大加快查询速度。

pgPointcloud允许高效地查询非常大的点云。可以使用空间标准(哪些点在这个区域中)和点属性标准(between and)。

点云位于服务器中,它们可以用于处理或可视化,或流。

参考


https://pgpointcloud.github.io/pointcloud/concepts/index.html

《无人驾驶背后的技术 - PostGIS点云(pointcloud)应用 - 1》

《无人驾驶背后的技术 - PostGIS点云(pointcloud)应用 - 2》

https://pgpointcloud.github.io/pointcloud/faq.html

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
编解码 Linux C语言
探索C++与Live555实现RTSP服务器的艺术(一)
探索C++与Live555实现RTSP服务器的艺术
1803 1
|
关系型数据库 Linux PostgreSQL
Linux centos8 docker中安装postgresql12.4及远程访问设置
Linux centos8 docker中安装postgresql12.4及远程访问设置
1877 0
|
编解码
FFmpeg开发笔记(三十三)分析ZLMediaKit对H.264流的插帧操作
《FFmpeg开发实战》书中3.4.3节讲解如何将H.264流封装成MP4。H.264流通常以SPS→PPS→IDR帧开始,这一说法通过雷霄骅的H264分析器得到验证。分析器能解析H.264文件但不支持MP4。ZLMediaKit服务器在遇到I帧时会自动插入SPS和PPS配置帧,确保流符合标准格式。若缺少这些帧,客户端拉流时会报错。FFmpeg开发实战:从零基础到短视频上线》书中提供了更多FFmpeg开发细节。
818 0
FFmpeg开发笔记(三十三)分析ZLMediaKit对H.264流的插帧操作
|
JavaScript
Vue3 + Vite + TS项目引入iconfont图标(Svg方式)
前言 每一个项目都避免不了使用各种各样的图标,如果我们使用了 UI 组件库,比如说 ELement 等,那么组件库有一些封装好的图标供我们使用。但是项目是多变的和复杂的,组件库提供的图标很多时候不能满足需求,这个时候就需要我们自己引入想要的图标了。 今天介绍的便是如何将 iconfont 阿里图标库的图标引入到我们的 Vue3 项目中来!
6390 1
Vue3 + Vite + TS项目引入iconfont图标(Svg方式)
|
前端开发
react使用antd中的Checkbox实现多选
在React项目中,通过Ant Design的Checkbox组件实现多选。引入Checkbox,使用Checkbox.Group来管理Checkbox,设置`value`属性绑定选中项数组,通过`onChange`更新数组。维护一个全选状态,根据选中项数量与总数决定全选按钮状态。全选按钮的`onChange`事件用于控制所有Checkbox的选中状态。
938 1
react使用antd中的Checkbox实现多选
|
XML JavaScript Java
可观测性之Log4j2优雅日志打印
可观测性之Log4j2优雅日志打印
797 0
可观测性之Log4j2优雅日志打印
|
算法 Java Linux
7-zip 压缩算法及C SDK使用
7-zip 压缩算法及C SDK使用
2312 0
|
Web App开发
WebRTC 音视频同步原理与实现
所有的基于网络传输的音视频采集播放系统都会存在音视频同步的问题,作为现代互联网实时音视频通信系统的代表,WebRTC 也不例外。本文将对音视频同步的原理以及 WebRTC 的实现做深入分析。
WebRTC 音视频同步原理与实现
|
JavaScript API 定位技术
使用vue3结合高德实现定位功能
使用vue3结合高德地图实现定位功能
14251 59
使用vue3结合高德实现定位功能
|
Linux Shell UED
探索 Linux 命令 `dircolors`:自定义 `ls` 命令的颜色输出
`dircolors` 是 Linux 中用于自定义 `ls` 命令颜色输出的工具,它读取配置文件(默认 `/etc/DIR_COLORS` 或通过 `LS_COLORS` 环境变量)并生成 shell 变量。