CN106096016A - 一种基于网络的三维点云可视化方法以及装置 - Google Patents

一种基于网络的三维点云可视化方法以及装置 Download PDF

Info

Publication number
CN106096016A
CN106096016A CN201610471575.0A CN201610471575A CN106096016A CN 106096016 A CN106096016 A CN 106096016A CN 201610471575 A CN201610471575 A CN 201610471575A CN 106096016 A CN106096016 A CN 106096016A
Authority
CN
China
Prior art keywords
data
cloud
cloud data
network
technology
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610471575.0A
Other languages
English (en)
Inventor
危双丰
叶梦轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Civil Engineering and Architecture
Original Assignee
Beijing University of Civil Engineering and Architecture
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Civil Engineering and Architecture filed Critical Beijing University of Civil Engineering and Architecture
Priority to CN201610471575.0A priority Critical patent/CN106096016A/zh
Publication of CN106096016A publication Critical patent/CN106096016A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开一种基于网络的三维点云可视化方法以及装置。其中,所述方法包括:获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中;基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;以及结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。通过本发明,能够为在线用户在浏览器中提供流畅的交互三维可视化体验,而且针对多种点云数据格式进行数据库集成。此外,在进行网络可视化时无需下载任何插件,并保证了三维显示的速度。

Description

一种基于网络的三维点云可视化方法以及装置
技术领域
本发明涉及三维可视化领域,具体地,涉及一种基于网络的三维点云可视化方法以及装置。
背景技术
作为一种新型的测量手段,三维激光扫描技术使得快速大量地获取空间点位信息成为可能,并以其非接触、快速、连续获得目标物信息的特性,迅速成为了现今获取三维空间信息的重要方法,被广泛应用于古建筑保护、特大异性结构变形监测以及城市测量等方面。扫描获取的待处理的点云数据是后续数据分析、生成格网模型及进行三维可视化展示的基础。因此,寻求一种远程、交互良好的网络点云可视化工具对于快速获取和评价点云数据质量及点云处理进度规划具有重要意义。
目前,国外基于Web的3D模型浏览工具较多,但是针对点云的却不多。在线点云浏览器主要是由三维激光扫描仪生产商开发,例如,Faro的Scene Web Share,Leica的TruView以及Allpoint Insight,Point Cab web Export等。但是,这些点云在线浏览器基本都是针对各厂商定制的,最大的困扰是几乎每个厂商开发的标准都需要自己插件的支持,这些插件需要下载安装且适配性较差,在带宽不理想的条件下会给使用者带来了诸多不便。此外,各仪器厂商的扫描仪所获取的点云数据的格式多样繁杂,必须在可视化进程前进行数据转换,也成为了一大问题。
随着WebGL图形库的出现,以之为基础的图形引擎,如three.js和Cesium等被逐渐应用到点云数据的可视化领域。Potree作为开源的网络点云浏览器,需要在本地对数据进行转换并上传至服务器,自动化程度较低且转换耗时较长。点云网络浏览器Online LIDARpoint cloud viewer支持服务器点云读取,用户需要将点云置于自己的服务器上,但是仅支持ASPRS LAS 1.2及XYZ格式。Oscar Martinez-Rubi等人以Potree为原型系统基于WebGL和和HTML5开发了一个开源的网站,但是数据只限于机载Lidar数据。而在国内,基于Web的点云可视化研究较少,曾珣提出了一种基于WebGL的机载激光雷达点云数据可视化方法,但仍没解决数据格式多样繁杂的问题。
发明内容
本发明的目的是提供一种基于网络的三维点云可视化方法以及装置。其中,所述方法不仅在可视化过程中实现去插件化,避免复杂的插件安装及环境配置,而且解决了数据格式转换的诸多问题,能为用户在网络浏览器中提供良好的三维可视化体验。
为了实现上述目的,本发明提供一种基于网络的三维点云可视化方法。所述方法包括:
获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中;
基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;以及
结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。
可选地,所述获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中,包括:
针对不同的点云数据格式的特征,统一数据结构,并提取所有点云数据的基本属性数据;
建立数据库,设计存储表并将所述基本属性数据以数据库对象的形式存储至所述数据库中。
可选地,所述方法还包括:
采用八叉树方法对所述数据库中的点云数据建立三维空间索引。
可选地,所述基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器,包括:
将所述数据库的存取接口嵌入WebServices,并采用数据异步传输的方式和Ajax请求机制从脚本中调用WebServices;
通过所述浏览器的HTML页面中的脚本回调函数调用所述WebService交换后的点云数据。
可选地,所述结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化,包括:
在HTML页面中创建WebGL渲染器,用于进行场景加载渲染;
基于粒子系统中的点云类创建所需的三维点云物体,以便高效地进行平移、旋转及缩放操作;
将摄像机添加到所述场景中并调整相关参数,及使用多种变换矩阵,使得观察者从不同角度和详细程度观察所述场景中的渲染对象;
对所述渲染器、所述三维物体以及所述摄像机进行初始化,并启动所述场景,开始渲染,从而显示得到基于所述点云数据的三维场景,
其中,所述场景是一个容器,用于保存并跟踪需要渲染的物体。
可选地,所述方法还包括:
在投影变换时进行视景体的裁切。
可选地,所述浏览器包括交互界面。
相应地,本发明还提供一种基于网络的三维点云可视化装置。所述装置包括:
处理单元,用于获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中;
数据交换单元,用于基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;以及
可视化单元,用于结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。
可选地,所述处理单元,具体用于:
针对不同的点云数据格式的特征,统一数据结构,并提取所有点云数据的基本属性数据;
建立数据库,设计存储表并将所述基本属性数据以数据库对象的形式存储至所述数据库中。
可选地,所述可视化单元,具体用于:
在HTML页面中创建WebGL渲染器,用于进行场景加载渲染;
基于粒子系统中的点云类创建所需的三维点云物体,以便高效地进行平移、旋转及缩放操作;
将摄像机添加到所述场景中并调整相关参数,及使用多种变换矩阵,使得观察者从不同角度和详细程度观察所述场景中的渲染对象;
对所述渲染器、所述三维物体以及所述摄像机进行初始化,并启动所述场景,开始渲染,从而显示得到基于所述点云数据的三维场景,
其中,所述场景是一个容器,用于保存并跟踪需要渲染的物体。
通过上述技术方案,获取来自扫描设备的不同格式的点云数据,并对点云数据进行处理,及将处理后的点云数据存储至数据库中;并基于Ajax技术和Webservice技术对数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;及结合WebGL技术和HTML5技术对传输至浏览器的点云数据创建三维场景并进行可视化,不仅在可视化过程中实现去插件化,避免复杂的插件安装及环境配置,而且解决了数据格式转换的诸多问题,能为用户在网络浏览器中提供良好的三维可视化体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1是本发明一实施例提供的基于网络的三维点云可视化方法的平台架构示意图;
图2是本发明一实施例提供的基于网络的三维点云可视化方法的流程图;
图3是本发明一实施例提供的数据库的构建流程图;
图4是本发明一实施例提供的前后台数据交换的示意图;
图5是本发明一实施例提供的基于网络的三维点云可视化装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本实施例中,采集北京建筑大学大兴校区部分地面的激光雷达扫描数据,对采集的建筑物点云数据进行处理,并存入数据库,及利用相应的可视化技术实现无插件的网络浏览器点云可视化。其环境和工具如表1所示。
表1环境配置表
在本实例中,采用Windows 8.1专业版CPU@3.60GHZ,16.0GB内存的PC电脑,以PostgreSQL作为数据库,利用Micosoft Visual Studio 13 C#中的ASP.NET Web应用程序搭建平台架构,最后基于WebGL可视化编程技术,利用Javascript语言编写可视化窗口及界面。
图1是本发明一实施例提供的基于网络的三维点云可视化方法的平台架构示意图。如图1所示,本发明一实施例提供的基于网络的三维点云可视化方法所涉及的平台,包括数据库端,服务器端,客户端三大部分。
其中,数据库端通过空间数据库PostgreSQL所提供的接口将后台系统和数据库连接起来,实现点云的空间数据和属性数据的统一组织和管理。该数据库端的作用是为前端提供所需的数据,空间数据库PostgreSQL所提供的接口为点云数据入库和出库的桥梁。在这一过程中,数据库PostgreSQL只是一个存取空间数据的容器,而存取接口则是数据处理的转换通道。数据库接收服务器端发送的libpq接口请求,并根据所述libpq接口请求返回格式为XML的数据。
其中,服务器端是由Web服务器IIS 6.0提供支持。Web服务器为开发、部署、运行以及管理网络应用服务(WebService)提供了运行环境。Web服务器提供了对空间数据库的管理和支持,提供数据获取及组织功能。Web服务器从客户端接收回调函数请求,同时用WebService对数据库中返回的XML数据进行处理,并将处理后的XML数据返回客户端。
其中,客户端的浏览器通过发起Ajax访问WebService提供的数据获取接口,WebService负责获取后台数据库中的数据,并将处理后的数据发送给浏览器。客户端作为用户与平台的交互界面,是这个平台的最前端,用户通过它来获得WebGIS提供的功能。现有的WebGIS客户端一般只负责接受用户请求,并返回结果,而本申请通过HTML5技术实现对点云数据的显示,通过Ajax技术和WebService技术实现空间数据的传输,并将部分分析功能转移到客户端,这样可以增加WebGIS的交互体验并减轻Web服务器的压力。
图2是本发明一实施例提供的基于网络的三维点云可视化方法的流程图。如图2所示,本发明一实施例提供的基于网络的三维点云可视化方法包括:
在步骤S101中,获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中。
具体地,该步骤包括:针对不同的点云数据格式的特征,统一数据结构,并提取所有点云数据的基本属性数据;建立数据库,设计存储表并将所述基本属性数据以数据库对象的形式存储至所述数据库中。其中,基本属性数据包括测站号、旋转变换参数、坐标、颜色信息、外包框、测站以及点云配准的参考站等信息。
优选地,所述方法还包括:采用八叉树方法对所述数据库中的点云数据建立三维空间索引。藉此,能够对数据库中点云数据进行动态调度。
在具体的实施方式中,针对原始点云数据的不同格式,设计统一的数据结构进行存取操作,建立数据库,并对其中的数据库对象建立空间索引。更为具体地,分析不同的点云格式的特点,将所有数据提取保存基本属性数据,设计统一的数据结构;建立项目数据库,并在数据库中建立表以存储数据,将上述的基本属性数据以数据库对象的形式存储到PostgreSQL数据库中;对数据库中的数据库对象进行八叉树的构建,建立三维空间索引。
其中,建立三维空间索引采用八叉树方法,其过程如下:计算出点云数据的最小外包框,即空间包围盒,选取它作为八叉树结构的根节点;沿X,Y,Z三个方向将空间包围盒均分为八个大小相同的子立方体,每个子立方体成为子节点;随后每个子立方体继续进行递归运算,空间物体分别位于这些子立方体的不同部分,处在不同的立方体之中。对子立方体和点云对象位置关系进一步判断,达到精度结束划分。递归划分判断步骤如下,若该节点(立方体)完全被物体包围(FULL节点)或者该节点为空(NULL),那么该节点无需进行剖分;若该节点(立方体)部分被物体包围(PARTIAL),那么该节点仍然需要沿着X,Y,Z方向剖分成更小的8个立方体。上述步PARTIAL节点应称为中间节点,而这8个更小的立方体称为该中间节点的下一级叶子节点,它的级数需要增加1,直到所有的节点完全被物体所填充或者完全为空结束。
图3是本发明一实施例提供的数据库的构建流程图。如图3所示,为不同格式的点云数据设计数据结构,并在PostgreSQL中新建工程,建表存储点云的相关信息。在调用数据库中的点云数据的情况下,利用基于VC2013.Net编写的数据库接口选择数据信息,并根据选择的数据信息判断数据库中点云数据的测站号是否为所需的测站号,如果为所需的测站号,则取出数据。在用户对测站号没有要求的情况下,还可以利用基于VC2013.Net编写的数据库接口直接调用数据库中的点云数据。
接着,在步骤S102中,基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器。
具体地,该步骤包括:将所述数据库的存取接口嵌入WebServices,并采用数据异步传输的方式和Ajax请求机制从脚本中调用WebServices;通过所述浏览器的HTML页面中的脚本回调函数调用所述WebService交换后的点云数据。
在具体的实施方式中,基于建立的点云数据库进行网络数据交换,将数据通过服务器传输至浏览器,如图4所示。数据库构建完毕之后,需要将其中存储的基本属性数据传输到浏览器端以供绘制。此处使用Web service来完成。Web Services可以将应用程序转换为网络应用程序,可以被其他应用程序利用。基本的Web Services平台是XML+HTTP。将数据库存取接口嵌入WebService,用ASP.NET AJAX从脚本中调用WebService。
在前台页面的Javascript调用WebService,方法如下:
<asp:ScriptManager ID="ScriptManager1"runat="server">
<Services>
<asp:ServiceReferencePath="WebService.asmx"InlineScript="True"/>
</Services>
</asp:ScriptManager>
然后,就可以通过页面中的脚本回调函数(callback)进行调用从而获取数据。
最后,在步骤S103中,结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。
具体地,该步骤包括:在HTML页面中创建WebGL渲染器,用于进行场景加载渲染;基于粒子系统中的点云类创建所需的三维点云物体,以便高效地进行平移、旋转及缩放操作;将摄像机添加到所述场景中并调整相关参数,及使用多种变换矩阵,使得观察者从不同角度和详细程度观察所述场景中的渲染对象;对所述渲染器、所述三维物体以及所述摄像机进行初始化,并启动所述场景,开始渲染,从而显示得到基于所述点云数据的三维场景,其中,所述场景是一个容器,用于保存并跟踪需要渲染的物体。
在具体的实施方式中,获取的传输数据在网络浏览器中结合WebGL及HTML5技术创建三维场景并进行可视化。展示完整的三维场景需要以下必要的组件:场景,渲染器,三维物体,相机。利用Three.js搭建WebGL场景首先需创建一个html页面,在<head>中添加对Three.js库的引用,并在<body>标签中创建WebGL渲染器用来进行场景加载渲染。场景是一个容器,用来保存并跟踪所需要渲染的物体。而渲染器完成从计算机中的三维空间到显示窗口二维平面的转换过程,经过渲染器渲染后的场景即可展示在用户面前。三维渲染元素准备完毕后在Javascript脚本处编写相关代码。在代码开始,通过回调函数获取数据库所提供的点云的坐标及色彩信息。
三维渲染过程中通过矩阵的乘法变换顶点在世界坐标系中的位置,而观察者需要的是以眼睛为中心的视点坐标系,所以要将顶点展示在观察者的面前,就需要将世界坐标系转换为视点(相机)坐标系,这个过程就成为视图矩阵的变换。
世界坐标系向相机坐标系的转换矩阵的推导过程如下,定义相机(眼睛)在世界坐标系中的位置为(x,y,z),则视图变换矩阵为公式(1):
M = - y v x z u v - x u 0 x v y v y v 0 0 y v - y u 0 0 0 u 1 - - - ( 1 )
其中,经过视图矩阵的变换,就确定了物体在相机坐标系中的位置,最后需要将物体显示在屏幕上,这还需要从相机坐标系到屏幕的投影矩阵的变换,将物体正确的显示在屏幕上。
投影矩阵分为两种,一种是正视投影,一种是透视投影。如图所示为透视投影模型,由于受屏幕大小的限制,其视野的空间是一个截头锥体,跟人眼视野相类似,视野较远处的物体投影到屏幕上成像较小。在WebGL中,假定相机的视线与裁剪面成90°的角,透视投影又将截头锥体(视野空间)内物体的坐标正交化成立方体的坐标,再将立方体的坐标压缩投影到屏幕中。
截头锥体的两个顶点P1的坐标为(xleft,ybotton,-znear),P2的坐标为(xright,ytop,-znear),截头锥体大截面的深度可以表示为,则投影矩阵的公式可以表示为(2):
M = - 2 z n e a r x r i g h t - x l e f t 0 x r i g h t + x l e f t x r i g h t - x l e f t 0 0 2 z n e a r y t o p - x b o t t o m y t o p + y b o t t o m y t o p - y b o t t o m 0 0 u v - z f a r + z n e a r z f a r - z n e a r - z f a r &times; z n e a r z f a r - z n e a r 0 0 - 1 0 - - - ( 2 )
要实现将世界坐标系中的点投影到二维屏幕上,就需要经过模型视图矩阵以及透视投影矩阵的变换,实现三维可视化中顶点在屏幕上的显示。
场景加载时需要创建三维世界所需的三维物体。本方法是基于粒子系统(Particle System)中的pointcloud类进行点云绘制,可将点云作为一个整体,并因此允许高效地操作点云来进行平移、旋转及缩放操作。而这些交互操作需要模型视图矩阵以及透视投影矩阵的变换。其原理如下:
在三维环境中,对于对象位置的变化,是通过控制对象模型的矩阵变化而实现的,如平移、缩放、旋转等。此过程中,采取的是齐次坐标系的方式表示物体在世界坐标系中的位置,用n+1维向量表示n维向量,比如用(x,y,z,h)作为可变参数,(x/h,y/h,z/h)则就表示三维空间中的坐标,运用齐次坐标系表示物体:
1)可以通过矩阵的加法和乘法运算表示坐标平移(矩阵相加)、坐标缩放与旋转(矩阵相乘)。
2)如果定义h=0,则表示无穷远处,可以将无穷远处通过矩阵表示出来。
下面公式中,(3),(4)分别表示齐次坐标系中顶点的平移、缩放矩阵,(5),(6),(7)分别表示绕X轴、Y轴、Z轴的旋转矩阵。
x &prime; y &prime; z &prime; 1 = 1 0 0 t x 0 1 0 t y 0 0 1 t z 0 0 0 1 &times; x y z 1 - - - ( 3 )
x &prime; y &prime; z &prime; 1 = s x 0 0 0 0 s x 0 0 0 0 s x 0 0 0 0 1 &times; x y z 1 - - - ( 4 )
x &prime; y &prime; z &prime; 1 = 1 0 0 0 0 c o s &theta; - sin &theta; 0 0 s i n &theta; cos &theta; 0 0 0 0 1 &times; x y z 1 - - - ( 5 )
x &prime; y &prime; z &prime; 1 = c o s &theta; 0 s i n &theta; 0 0 1 0 0 - sin &theta; 0 cos &theta; 0 0 0 0 1 &times; x y z 1 - - - ( 6 )
x &prime; y &prime; z &prime; 1 = c o s &theta; - s i n &theta; 0 0 sin &theta; cos &theta; 0 0 0 0 1 0 0 0 0 1 &times; x y z 1 - - - ( 7 )
以上各个组件对象进行初始化并启动场景,开始渲染。至此,运行系统即可在浏览器的网页中看到所构建的三维场景。
优选地,所述方法还包括:在投影变换时进行视景体的裁切。上述基于网络的三维点云可视化方法中的三维场景构建场景还包括视景体裁切过程。通过判断空间实体是否被包含(或部分包含)在视景体中来决定这个空间实体是否被显示和渲染。
视景体是点云后期绘制在投影变换时需要用到的方法,有两种用途,其一,它决定了一个物体是是通过何种投影方式(正射投影和透视投影)投影到屏幕上,其二,视景体确定了场景里的物体的哪一部分被裁剪到图像外。所述裁切过程根据投影方式的不同分为:透视投影裁切和平行投影裁切。
透视投影中的视景体裁切过程:视景体由左、右、上、下四个侧面和顶面以及底面6个裁剪平面构成,用6个裁剪平面方程,使视景体和经过八叉树结构组织后的点云的外包框信息进行相交测试(重叠区域测试),其思想是:用长方体(外包框)和视锥体的6个平面分别进行测试相交与否,若该长方体在某一平面的外部,那么这个长方体就在视锥体的外部。如果长方体都在6个平面的内部,认为截锥体与外包框长方体相交(实际上可能在截锥体的外部一部分)。
平行投影中的视景体裁切过程:视景体是一个长方体,它和点云的最小外包盒都是平行于坐标轴的(Axis-Aligned Bounding Box,AABB),因此只需要比较边长的最大值和最小值属性即可。
优选地,所述浏览器包括交互界面。为了方便使用上述技术,本实例还设计了交互界面。平台支持对多种点云格式的读取及显示。在平台前端界面中,左上方为实时渲染帧数监视器,页面右上方为操作菜单,可以调整点云粒子的大小、颜色、透明度、旋转速度等属性。
本实施例首先在PostgreSQL中建立项目数据库对象表以存储点云的坐标、颜色信息以及测站、外包框、测站、点云配准的参考站等信息。数据库构建完毕,并对其进行三维八叉树空间索引构建以完成点云的动态调度。然后,将存储的点云数据信息传输到浏览器端,此处使用AJAX技术结合Web service技术来完成。最后基于WebGL可视化编程技术利用Javascript脚本语言搭建三维场景,开发无插件点云数据网络可视化平台,不仅在可视化过程中实现去插件化,避免复杂的插件安装及环境配置,而且解决了数据格式转换的诸多问题,能为用户在网络浏览器中提供良好的三维可视化体验。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图5是本发明一实施例提供的基于网络的三维点云可视化装置的结构示意图。如图5所示,本发明一实施例提供的基于网络的三维点云可视化装置包括:
处理单元201,用于获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中;
数据交换单元202,用于基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;以及
可视化单元203,用于结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。
在本发明一可选实施例中,所述处理单元201,具体用于:
针对不同的点云数据格式的特征,统一数据结构,并提取所有点云数据的基本属性数据;
建立数据库,设计存储表并将所述基本属性数据以数据库对象的形式存储至所述数据库中。
在本发明一可选实施例中,所述可视化单元203,具体用于:
在HTML页面中创建WebGL渲染器,用于进行场景加载渲染;
基于粒子系统中的点云类创建所需的三维点云物体,以便高效地进行平移、旋转及缩放操作;
将摄像机添加到所述场景中并调整相关参数,及使用多种变换矩阵,使得观察者从不同角度和详细程度观察所述场景中的渲染对象;
对所述渲染器、所述三维物体以及所述摄像机进行初始化,并启动所述场景,开始渲染,从而显示得到基于所述点云数据的三维场景,
其中,所述场景是一个容器,用于保存并跟踪需要渲染的物体。
对于本发明一实施例提供的基于网络的三维点云可视化装置还涉及的具体细节已在本发明一实施例提供的基于网络的三维点云可视化方法中作了详细的描述,在此不再赘述。
应当注意的是,在本发明的系统的各个部件中,根据其要实现的功能而对其中的部件进行了逻辑划分,但是,本发明不受限于此,可以根据需要对各个部件进行重新划分或者组合,例如,可以将一些部件组合为单个部件,或者可以将一些部件进一步分解为更多的子部件。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上实施方式仅适于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (10)

1.一种基于网络的三维点云可视化方法,其特征在于,所述方法包括:
获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中;
基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;以及
结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。
2.根据权利要求1所述的基于网络的三维点云可视化方法,其特征在于,所述获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中,包括:
针对不同的点云数据格式的特征,统一数据结构,并提取所有点云数据的基本属性数据;
建立数据库,设计存储表并将所述基本属性数据以数据库对象的形式存储至所述数据库中。
3.根据权利要求1所述的基于网络的三维点云可视化方法,其特征在于,所述方法还包括:
采用八叉树方法对所述数据库中的点云数据建立三维空间索引。
4.根据权利要求1所述的基于网络的三维点云可视化方法,其特征在于,所述基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器,包括:
将所述数据库的存取接口嵌入WebServices,并采用数据异步传输的方式和Ajax请求机制从脚本中调用WebServices;
通过所述浏览器的HTML页面中的脚本回调函数调用所述WebService交换后的点云数据。
5.根据权利要求1所述的基于网络的三维点云可视化方法,其特征在于,所述结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化,包括:
在HTML页面中创建WebGL渲染器,用于进行场景加载渲染;
基于粒子系统中的点云类创建所需的三维点云物体,以便高效地进行平移、旋转及缩放操作;
将摄像机添加到所述场景中并调整相关参数,及使用多种变换矩阵,使得观察者从不同角度和详细程度观察所述场景中的渲染对象;
对所述渲染器、所述三维物体以及所述摄像机进行初始化,并启动所述场景,开始渲染,从而显示得到基于所述点云数据的三维场景,
其中,所述场景是一个容器,用于保存并跟踪需要渲染的物体。
6.根据权利要求5所述的基于网络的三维点云可视化方法,其特征在于,所述方法还包括:
在投影变换时进行视景体的裁切。
7.根据权利要求1-6中任意一项权利要求所述的基于网络的三维点云可视化方法,其特征在于,所述浏览器包括交互界面。
8.一种基于网络的三维点云可视化装置,其特征在于,所述装置包括:
处理单元,用于获取来自扫描设备的不同格式的点云数据,并对所述点云数据进行处理,及将处理后的点云数据存储至数据库中;
数据交换单元,用于基于Ajax技术和Webservice技术对所述数据库中的点云数据进行网络数据交换,并将交换后的点云数据传输至浏览器;以及
可视化单元,用于结合WebGL技术和HTML5技术对传输至所述浏览器的点云数据创建三维场景并进行可视化。
9.根据权利要求8所述的基于网络的三维点云可视化装置,其特征在于,所述处理单元,具体用于:
针对不同的点云数据格式的特征,统一数据结构,并提取所有点云数据的基本属性数据;
建立数据库,设计存储表并将所述基本属性数据以数据库对象的形式存储至所述数据库中。
10.根据权利要求8所述的基于网络的三维点云可视化装置,其特征在于,所述可视化单元,具体用于:
在HTML页面中创建WebGL渲染器,用于进行场景加载渲染;
基于粒子系统中的点云类创建所需的三维点云物体,以便高效地进行平移、旋转及缩放操作;
将摄像机添加到所述场景中并调整相关参数,及使用多种变换矩阵,使得观察者从不同角度和详细程度观察所述场景中的渲染对象;
对所述渲染器、所述三维物体以及所述摄像机进行初始化,并启动所述场景,开始渲染,从而显示得到基于所述点云数据的三维场景,
其中,所述场景是一个容器,用于保存并跟踪需要渲染的物体。
CN201610471575.0A 2016-06-24 2016-06-24 一种基于网络的三维点云可视化方法以及装置 Pending CN106096016A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610471575.0A CN106096016A (zh) 2016-06-24 2016-06-24 一种基于网络的三维点云可视化方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610471575.0A CN106096016A (zh) 2016-06-24 2016-06-24 一种基于网络的三维点云可视化方法以及装置

Publications (1)

Publication Number Publication Date
CN106096016A true CN106096016A (zh) 2016-11-09

Family

ID=57252660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610471575.0A Pending CN106096016A (zh) 2016-06-24 2016-06-24 一种基于网络的三维点云可视化方法以及装置

Country Status (1)

Country Link
CN (1) CN106096016A (zh)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106770045A (zh) * 2016-11-28 2017-05-31 北京理工大学 一种局部照射下目标激光散射特性的简便计算方法
CN107832054A (zh) * 2017-11-30 2018-03-23 郑州云海信息技术有限公司 一种房产模型的展示方法和装置
CN107943961A (zh) * 2017-11-27 2018-04-20 武汉地普三维科技有限公司 一种基于Web的海量点云渲染方法
CN108009979A (zh) * 2017-12-15 2018-05-08 湖北大学 基于时空数据融合的三维点云压缩存储方法及系统
CN108022292A (zh) * 2017-12-08 2018-05-11 郑州云海信息技术有限公司 一种数字地铁3d可视化方法及系统
CN108364341A (zh) * 2018-03-05 2018-08-03 四川易利数字城市科技有限公司 基于可重用模板模型的三维场景加载渲染效率提高方法
CN108536698A (zh) * 2017-03-02 2018-09-14 腾讯科技(深圳)有限公司 web数据三维展示方法及装置
CN108759840A (zh) * 2018-05-25 2018-11-06 北京建筑大学 一种室内外一体化三维导航路径规划方法
CN109443202A (zh) * 2018-11-05 2019-03-08 西安工业大学 一种三维场景数据的测量方法
CN109472852A (zh) * 2018-10-29 2019-03-15 百度在线网络技术(北京)有限公司 点云图像的显示方法及装置、设备及存储介质
CN109948049A (zh) * 2019-01-18 2019-06-28 杭州志远科技有限公司 一种基于物化缓存的网络大数据可视化方法
CN110012279A (zh) * 2018-01-05 2019-07-12 上海交通大学 基于3d点云数据的分视角压缩和传输方法及系统
CN110348620A (zh) * 2019-07-02 2019-10-18 深圳大学 基于激光扫描的建筑拆除废弃物产生量预测方法及装置
CN110766744A (zh) * 2019-11-05 2020-02-07 北京华捷艾米科技有限公司 一种基于3d深度摄像头的mr体积测量方法及装置
CN110955981A (zh) * 2019-12-16 2020-04-03 北京朗信智能科技有限公司 一种装车现场建模方法
CN110968962A (zh) * 2019-12-19 2020-04-07 武汉英思工程科技股份有限公司 基于云渲染在移动端或大屏三维展示方法及系统
CN111125585A (zh) * 2019-12-24 2020-05-08 武汉珞珈灵智科技有限公司 一种面向Web端三维模型的可视化方法及系统
CN111127610A (zh) * 2019-12-23 2020-05-08 武汉真蓝三维科技有限公司 一种点云数据三维可视化渲染方法与计算方法
CN111553973A (zh) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 一种插件式的点云颜色渲染方法、设备及计算机存储介质
CN111552555A (zh) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 一种点云的可视化方法和设备
CN112258650A (zh) * 2020-09-21 2021-01-22 北京科技大学 一种膏体充填进度实时测量与可视化方法及系统
CN112687012A (zh) * 2021-01-08 2021-04-20 中国南方电网有限责任公司超高压输电公司南宁监控中心 一种基于三维可视化管控平台的孤岛信息融合方法
CN112991511A (zh) * 2020-10-13 2021-06-18 中国汽车技术研究中心有限公司 一种点云数据的展示方法
CN113066174A (zh) * 2021-04-27 2021-07-02 深圳市商汤科技有限公司 点云数据处理方法、装置、计算机设备及存储介质
WO2022141049A1 (zh) * 2020-12-29 2022-07-07 深圳市大疆创新科技有限公司 激光测距装置、激光测距方法和可移动平台
CN114882189A (zh) * 2022-05-26 2022-08-09 广州市城市规划勘测设计研究院 一种三维场景灾变可视化展示方法
CN116974550A (zh) * 2023-09-20 2023-10-31 中科星图测控技术股份有限公司 一种通用三维地球可视化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615191A (zh) * 2009-07-28 2009-12-30 武汉大学 海量点云数据的存储与实时可视化方法
CN102622777A (zh) * 2010-11-19 2012-08-01 范努克机器人技术美国有限公司 显示三维机器人工作单元数据的系统、方法以及设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615191A (zh) * 2009-07-28 2009-12-30 武汉大学 海量点云数据的存储与实时可视化方法
CN102622777A (zh) * 2010-11-19 2012-08-01 范努克机器人技术美国有限公司 显示三维机器人工作单元数据的系统、方法以及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
曾珣: "《基于WebGL的机载激光雷达点云数据可视化》", 《湖南科技大学学报(自然科学版)》 *
王德生: "《基于HTML5和WebGL的三维WebGIS系统构建及应用》", 《中国优秀硕士学位论文全文数据库 基础科学辑》 *

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106770045A (zh) * 2016-11-28 2017-05-31 北京理工大学 一种局部照射下目标激光散射特性的简便计算方法
CN106770045B (zh) * 2016-11-28 2019-04-05 北京理工大学 一种局部照射下目标激光散射特性的简便计算方法
CN108536698B (zh) * 2017-03-02 2022-09-13 腾讯科技(深圳)有限公司 web数据三维展示方法及装置
CN108536698A (zh) * 2017-03-02 2018-09-14 腾讯科技(深圳)有限公司 web数据三维展示方法及装置
CN107943961A (zh) * 2017-11-27 2018-04-20 武汉地普三维科技有限公司 一种基于Web的海量点云渲染方法
CN107832054A (zh) * 2017-11-30 2018-03-23 郑州云海信息技术有限公司 一种房产模型的展示方法和装置
CN108022292A (zh) * 2017-12-08 2018-05-11 郑州云海信息技术有限公司 一种数字地铁3d可视化方法及系统
CN108009979A (zh) * 2017-12-15 2018-05-08 湖北大学 基于时空数据融合的三维点云压缩存储方法及系统
CN108009979B (zh) * 2017-12-15 2021-02-26 湖北大学 基于时空数据融合的三维点云压缩存储方法及系统
CN110012279B (zh) * 2018-01-05 2020-11-17 上海交通大学 基于3d点云数据的分视角压缩和传输方法及系统
CN110012279A (zh) * 2018-01-05 2019-07-12 上海交通大学 基于3d点云数据的分视角压缩和传输方法及系统
CN108364341B (zh) * 2018-03-05 2021-06-29 四川易利数字城市科技有限公司 基于可重用模板模型的三维场景加载渲染效率提高方法
CN108364341A (zh) * 2018-03-05 2018-08-03 四川易利数字城市科技有限公司 基于可重用模板模型的三维场景加载渲染效率提高方法
CN108759840A (zh) * 2018-05-25 2018-11-06 北京建筑大学 一种室内外一体化三维导航路径规划方法
CN108759840B (zh) * 2018-05-25 2022-07-26 北京建筑大学 一种室内外一体化三维导航路径规划方法
CN109472852B (zh) * 2018-10-29 2021-08-10 百度在线网络技术(北京)有限公司 点云图像的显示方法及装置、设备及存储介质
CN109472852A (zh) * 2018-10-29 2019-03-15 百度在线网络技术(北京)有限公司 点云图像的显示方法及装置、设备及存储介质
CN109443202A (zh) * 2018-11-05 2019-03-08 西安工业大学 一种三维场景数据的测量方法
CN109948049A (zh) * 2019-01-18 2019-06-28 杭州志远科技有限公司 一种基于物化缓存的网络大数据可视化方法
CN109948049B (zh) * 2019-01-18 2021-04-13 杭州志远科技有限公司 一种基于物化缓存的网络大数据可视化方法
CN110348620A (zh) * 2019-07-02 2019-10-18 深圳大学 基于激光扫描的建筑拆除废弃物产生量预测方法及装置
CN110766744A (zh) * 2019-11-05 2020-02-07 北京华捷艾米科技有限公司 一种基于3d深度摄像头的mr体积测量方法及装置
CN110955981B (zh) * 2019-12-16 2023-08-22 北京朗信智能科技有限公司 一种装车现场建模方法
CN110955981A (zh) * 2019-12-16 2020-04-03 北京朗信智能科技有限公司 一种装车现场建模方法
CN110968962B (zh) * 2019-12-19 2023-05-12 武汉英思工程科技股份有限公司 基于云渲染在移动端或大屏三维展示方法及系统
CN110968962A (zh) * 2019-12-19 2020-04-07 武汉英思工程科技股份有限公司 基于云渲染在移动端或大屏三维展示方法及系统
CN111127610B (zh) * 2019-12-23 2023-07-21 武汉真蓝三维科技有限公司 一种点云数据三维可视化渲染方法与计算方法
CN111127610A (zh) * 2019-12-23 2020-05-08 武汉真蓝三维科技有限公司 一种点云数据三维可视化渲染方法与计算方法
CN111125585A (zh) * 2019-12-24 2020-05-08 武汉珞珈灵智科技有限公司 一种面向Web端三维模型的可视化方法及系统
CN111552555A (zh) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 一种点云的可视化方法和设备
WO2021232469A1 (zh) * 2020-05-19 2021-11-25 北京数字绿土科技有限公司 一种点云的可视化方法和设备
CN111552555B (zh) * 2020-05-19 2023-07-28 北京数字绿土科技股份有限公司 一种点云的可视化方法和设备
CN111553973A (zh) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 一种插件式的点云颜色渲染方法、设备及计算机存储介质
CN112258650A (zh) * 2020-09-21 2021-01-22 北京科技大学 一种膏体充填进度实时测量与可视化方法及系统
CN112258650B (zh) * 2020-09-21 2024-03-19 北京科技大学 一种膏体充填进度实时测量与可视化方法及系统
CN112991511A (zh) * 2020-10-13 2021-06-18 中国汽车技术研究中心有限公司 一种点云数据的展示方法
WO2022141049A1 (zh) * 2020-12-29 2022-07-07 深圳市大疆创新科技有限公司 激光测距装置、激光测距方法和可移动平台
CN112687012A (zh) * 2021-01-08 2021-04-20 中国南方电网有限责任公司超高压输电公司南宁监控中心 一种基于三维可视化管控平台的孤岛信息融合方法
CN113066174A (zh) * 2021-04-27 2021-07-02 深圳市商汤科技有限公司 点云数据处理方法、装置、计算机设备及存储介质
CN114882189A (zh) * 2022-05-26 2022-08-09 广州市城市规划勘测设计研究院 一种三维场景灾变可视化展示方法
CN116974550A (zh) * 2023-09-20 2023-10-31 中科星图测控技术股份有限公司 一种通用三维地球可视化方法
CN116974550B (zh) * 2023-09-20 2023-12-29 中科星图测控技术股份有限公司 一种通用三维地球可视化方法

Similar Documents

Publication Publication Date Title
CN106096016A (zh) 一种基于网络的三维点云可视化方法以及装置
Keil et al. Creating immersive virtual environments based on open geospatial data and game engines
CN108919944B (zh) 一种基于数字城市模型实现在显示端进行数据无损交互的虚拟漫游方法
CN101923462A (zh) 一种基于FlashVR的三维微型场景网络发布引擎
CN106383965A (zh) 一种三维数值大气可视化支撑系统
Santana et al. Multimodal location based services—semantic 3D city data as virtual and augmented reality
CN103606188B (zh) 基于影像点云的地理信息按需采集方法
Knabb et al. Scientific visualization, 3D immersive virtual reality environments, and archaeology in Jordan and the Near East
CN100416613C (zh) 计算机网络环境智能化场景绘制装置系统及绘制处理方法
CN102044089A (zh) 一种三维模型的自适应化简、渐进传输和快速绘制的方法
CN109979002A (zh) 基于WebGL三维可视化的场景构建系统及方法
CN105741340B (zh) 一种用于网页展示的输电线路三维场景仿真方法和系统
Koeva 3D modelling and interactive web-based visualization of cultural heritage objects
CN106980378A (zh) 虚拟显示方法和系统
CN112053440A (zh) 单体化模型的确定方法及通信装置
Zhang et al. [Retracted] Virtual Reality Design and Realization of Interactive Garden Landscape
Davis et al. CAVE-VR and unity game engine for visualizing city scale 3d meshes
CN113648652B (zh) 对象渲染方法和装置、存储介质及电子设备
Salehi et al. Web-based visualization of 3D factory layout from hybrid Modeling of CAD and point cloud on virtual globe DTX solution
Boutsi et al. Interactive online visualization of complex 3D geometries
CN103617650A (zh) 一种复杂三维地形显示方法
CA2866589C (en) Method for representing a participating media in a scene and corresponding device
CN111949904A (zh) 一种基于浏览器的数据处理方法、装置以及终端
Stødle et al. High-performance visualisation of UAV sensor and image data with raster maps and topography in 3D
Cerfontaine et al. Immersive visualization of geophysical data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20161109