热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

在Oracle11g中构建点云数据类型

传送门?轮子的专栏??blog.csdn.netleverage_12291发展历程2处理流程3存储模型将逻辑结构从物理结构中分离出来(1)逻辑结构:这些表含有一个类型为SDO_PC的列包含一般的属性和所占用空间的单位数量并且包含一个指向点云块表的指针(2

传送门 ? 轮子的专栏 ? ? http://blog.csdn.net/leverage_1229 1发展历程 2处理流程 3存储模型 将逻辑结构从物理结构中分离出来 (1)逻辑结构: 这些表含有一个类型为SDO_PC的列 包含一般的属性和所占用空间的单位数量 并且包含一个指向点云块表的指针 (2

传送门 ? 轮子的专栏 ? ? http://blog.csdn.net/leverage_1229

1发展历程


2处理流程


3存储模型 将逻辑结构从物理结构中分离出来
(1)逻辑结构:
这些表含有一个类型为SDO_PC的列
包含一般的属性和所占用空间的单位数量
并且包含一个指向点云块表的指针
(2)物理结构:
“分块表”
包含点云块
可以是非常庞大的
在SDO_PC_BLK对象类型中定义结构


4创建点云表 点云表的数量没有限制
支持由任何类型的字段组合
场景可以被任何属性所检索
并且场景具有空间幅度
CREATE TABLE LIDAR_SCENES (
SCENE_ID NUMBER PRIMARY KEY,
COLLECTION_TS TIMESTAMP,
DESCRIPTION CLOB,
... (any number of attributes) ...
POINT_CLOUD SDO_PC
);
5SDO_PC类型 PC_EXTENT是点云所占空间的单位数量
需要一个空间索引以支持空间检索

属性

说明

BASE_TABLE

包含一个SDO_PC类型的列的表名称

BASE_TABLE_COL

SDO_PC类型的列的名称

PC_ID

点云ID

BLK_ID

包含点云中各块信息的表名称

PTN_PARAMS

点云分区的参数

PC_EXTENT

SDO_GEOMETRY对象展示点云的空间幅度(最小边界对象封闭点云中所有对象)

PC_TOL

点云中点的容差值

PC_TOT_DIMENSIONS

点云中维度的总数。包括空间维度和其他非空间维度,最大值为9

PC_DOMAIN

(目前未使用)

PC_VAL_ATTR_TABLES

SDO_STRING_ARRAY对象为点云指定任何值属性表的名称

PC_OTHER_ATTRS

XMLTYPE对象指定点云的任何其他属性

6创建点云分块表 使用SDO_PC_BLK类型
在块ID上定义一个主键
使用SECUREFILE lobs(11g的新结构)
允许LOBs压缩(加密和删除重复)
CREATE TABLE PC_BLK_01 OF SDO_PC_BLK (
PRIMARY KEY (
OBJ_ID, BLK_ID
)
)
LOB(POINTS) STORE AS SECUREFILE
(COMPRESS HIGH NOCACHE NOLOGGING);
7SDO_PC_BLK类型 描述点的一块
包含块的唯一标识
场景ID(OBJ_ID与PC_ID一致)和分块ID(BLK_ID)

属性

说明

OBJ_ID

点云对象ID

BLK_ID

块ID

BLK_EXTENT

块的空间幅度

BLK_DOMAIN

(目前未使用)

PCBLK_MIN_RES

在一个查询中可见块的最小分辨率

PCBLK_MAX_RES

在一个查询中可见块的最大分辨率

NUM_POINTS

POINTS BLOB中点的总数

NUM_UNSORTED_POINTS

POINTS BLOB中无序点的数量

PT_SORT_DIM

有序点的维度

POINTS

BLOB包含的点

8BLOB结构 BLOB包含一个存放点的数组
各点编码
d 64位浮点数(d = 点的维度)
一个32位整型表示点数
一个32位整型表示分区数
将来:压缩格式
从块MBR的来源处存储坐标以作为偏移量
使用短整型
9初始化一个点云 (1)定义点云的结构和组织
分辨率、维度、幅度
块的容量
(2)为各点云指定块的位置
点块表的名称
表的唯一标识
INSERT INTO LIDAR_SCENES (
SCENE_ID, POINT_CLOUD)
VALUES (
1,
SDO_PC_PKG.INIT (
BASETABLE => 'LIDAR_SCENES',
BASECOL => 'POINT_CLOUD',
BLKTABLE => 'PC_BLK_01',
PTN_PARAMS => 'BLK_CAPACITY=1000',
PC_TOL => 0.005,
PC_TOT_DIMENSIOnS=> 3,
PC_EXTENT =>
SDO_GEOMETRY (2003, 4326, NULL,
SDO_ELEM_INFO_ARRAY (1, 1003, 3),
SDO_ORDINATE_ARRAY (-74, 40, -73, 41)
)
)
);
10加载一个点云 (1)从一个普通表中加载一个点云
DECLARE
PC SDO_PC;
BEGIN
SELECT POINT_CLOUD INTO PC
FROM LIDAR_SCENES WHERE SCENE_ID = 1;
SDO_PC_PKG.CREATE_PC (PC, 'INPUT_POINTS');
END;
(2)用来输入的表的结构


(3)这个用来输入的表可以是文本文件,被关联成一个外部表使用


推荐阅读
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • Android系统移植与调试之如何修改Android设备状态条上音量加减键在横竖屏切换的时候的显示于隐藏
    本文介绍了如何修改Android设备状态条上音量加减键在横竖屏切换时的显示与隐藏。通过修改系统文件system_bar.xml实现了该功能,并分享了解决思路和经验。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • 本文介绍了在使用MSXML解析XML文件时出现DTD禁用问题的解决方案。通过代码示例和错误信息获取方法,解释了默认情况下DTD是禁用的,以及如何启用DTD的方法。此外,还提到了网上关于该问题的信息相对较少,因此本文提供了解决方案以供参考。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • 本文是关于自学Android的笔记,包括查看类的源码的方法,活动注册的必要性以及布局练习的重要性。通过学习本文,读者可以了解到在自学Android过程中的一些关键点和注意事项。 ... [详细]
author-avatar
QX封面精选
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有