“多源信息融合三维可视化平台”的版本间的差异

来自CGTWiki
跳转至:导航搜索
矢量数据
海浪仿真
第153行: 第153行:
  
 
==== 海浪仿真 ====
 
==== 海浪仿真 ====
国内外很多专家学者针对海浪仿真做了大量的研究工,随着人们对海浪的深入研究,海浪建模已取得了较大突破,目前对海面波浪进行建模可以分为'''基于物理模型的方法'''、'''基于几何模型的方法'''、'''基于谱分析的方法'''以及'''基于粒子系统的方法'''。<br>
+
国内外很多专家学者针对海浪仿真做了大量的研究工,随着人们对海浪的深入研究,海浪建模已取得了较大突破,目前对海面波浪进行建模可以分为'''基于几何模型的方法'''、'''基于谱分析的方法'''、'''基于分形的方法'''、'''基于动力模型的方法''''''基于物理模型的方法'''。<br>
  
 
=====基于几何模型的方法=====
 
=====基于几何模型的方法=====

2020年1月7日 (二) 04:57的版本

多源信息融合三维可视化平台

平台的软件架构

界面层

界面层采用微软的WPF技术,WPF拥有以下几大优势:

  • XAML的引入,使得美工和程序可以实现分离,使得定制化主题/外观/行为更加方便也易于维护;
  • 强大的 “数据绑定”功能,使得MVVM得以实现,成为“属性驱动”,而非WinForm的“事件驱动”;属性的更改可以自动获得,甚至动过转换器触发各种展示/行为的变更;
  • 绚丽的展示效果,WPF(Windows Presentation Fundation)顾名思义其强大的图形化API为程序提供了超乎想象的图形效果;

引擎层

OSGEARTH

大场景的三维实时渲染引擎采用osgearth,其官网为osgearth

osgEarth是基于三维引擎osg开发的三维数字地球引擎库,在osg基础上实现了瓦片调度插件,可选的四叉树调度插件,更多的地理数据加载插件(包括GDAL,ogr,WMS,TMS,VPB,filesystem等),再结合一套地理投影转换插件,这样就能够实现高效处理加载调度地理数据在三维地球上的显示,实现三维虚拟地球。

osgEarth的特点:

  1. 支持加载常见的栅格数据(影像和DEM),但是大数据必须建立金字塔,设置为地理投影,想要高效率最好处理为瓦片,这样也便于部署在服务端。
  2. 矢量数据,最好尽可能的简化,因为大的矢量会十分影响渲染速度,当然也可以对矢量栅格化处理加快速度.
  3. 大数据量模型一定要做LOD或者pageLod。

osgEarth的优点:

  1. 快速加载地理信息数据
  2. 编辑语言为C++,渲染效率高

UNITY3D

Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

Unity 最初于2005年在苹果公司的全球开发者大会上对外公布并开放使用,当时只是一款面向 OS X 平台的游戏引擎。时至2018年,该引擎所支持的研发平台已经达到27个。

Unity的优点:

  1. 工具插件齐全,小场景开发速度快,光影效果好
  2. C#语言开发,易于集成

平台的刚需与团队优势

三维平台与传感接入的刚性需求、痛点

一个产品应当找到他的应用场景,解决客户的刚性需求。只能通过不断地调研解决问题。

三维平台的团队优势

  1. 工程硕士占大多数,没有论文压力,可一年内全身心的投入平台建设。(这可能是主观愿望,也不一定是真正的优势)

平台研发的近期目标

2019年12月底至2020年9月初

视频的拼接与融合

  • N路视频在同一模型上的加载
  • 服务器选用海康威视的服务器

人员,车辆等的室内室外定位

重要场所的门禁与报警

设备台账、实时数据的接入

平台的主要功能:

三维场景下大规模视频的拼接与融合

背景与意义

  随着视频监控联网系统的不断普及和发展, 网络摄像机 更多的应用于监控系统中,尤其是高清时代的来临,更加快了网络摄像机的发展和应用。

  中投顾问调研数据表示,截止2017年,我国摄像机覆盖密度相对美国和英国等发达国家仍然较低,美国平均每千人配备约96台监控摄像机,英国平均每千人配备约75台监控摄像机,我国摄像头密度位居前列的北京每千人约配备59台监控设备,而紧随其后的杭州、上海等地每千人配备的摄像头数目约40左右, 随着我国雪亮工程、新型平安城市建设的发展和推进,视频监控未来在我国会有更快速的建设过程,摄像机市场呈现出巨大的增长空间。

  在监控摄像机数量的不断庞大的同时,在监控系统中面临着严峻的现状问题:海量视频分散、孤立、视角不完整、位置不明确等问题,始终围绕着使用者。因此,如何更直观、更明确的管理摄像机和掌控视频动态,已成为提升视频应用价值的重要话题。三维视频融合技术,面向安防视频监控领域,正是从解决此现状问题的角度,应运而生。围绕如何提高、管理和有效利用前端设备采集的海量信息为公共安全服务,特别是在技术融合大趋势下,如何结合当前先进的视频融合,虚实融合、三维动态等技术,实现三维场景实时动态可视化监控,更有效的识别、分析、挖掘海量数据的有效信息服务公共应用,已成为视频监控平台可视化发展的趋势和方向。

定义

  视频融合技术是虚拟现实技术的一个分支,或者说是虚拟现实的一个发展阶段。三维视频融合技术指把一个或多个由摄像机图像序列视频和与之相关的三维虚拟场景加以匹配和融合,生成一个新的关于此场景的动态虚拟场景或模型,实现虚拟场景与实时视频的融合,即:虚实结合。

  三维视频融合技术,可依托于单独的三维引擎,实现小范围或局部的三维场景与视频等资源的融合应用,也可依托于三维地理信息系统(3D GIS),实现全球广域范围内的三维地理信息可视化融合应用。

  基于单独三维引擎的视频融合相比于三维地理信息系统视频融合,受限于应用范围,不能形成全城、全国或更大范围的三维可视化应用平台。同时,在三维可视化数据挖掘和处理上,基于三维地理信息的视频融合技术,具有天然的时间和空间优势。通过内置的国际化统一标准的经度、纬度、海拔等地理信息坐标体系,实现三维可视化视频融合平台的精准定位和时空动态分析,提升视频分析及人工智能应用价值。

  虽然三维理信息系统有很多的优点,但三维地理信息系统为了追求高速渲染,而牺牲了渲染质量,尤其对小场景的渲染。

海内外现状

文献:


现在市场上做视频拼接的公司有如下:


知乎上有关的链接:

平台现状

只能接入视频,融合可做,但未见效果。

OSGEARTH下的动态投影纹理

OSGEARTH下shader的加载
投影纹理的基础知识

投影纹理映射用于映射一个纹理到物体上,好比将幻灯片投影到墙上一样。效果图如下:

投影纹理效果图


实现的原理是设置另一台相机(投影仪),额外进行一次MVP变换,在这一次的MVP变换时将VP矩阵设置成投影仪的VP矩阵,这样一来可以获得各个顶点在投影仪的裁剪空间中的坐标,然后将这个坐标映射到UV坐标,再绑定纹理即可实现投影纹理的效果。

具体实现

物联网传感器的接入

室内定位

室内定位是指在室内环境中实现位置定位,一般采用无线通讯、基站定位、惯导定位等多种技术集成形成一套室内定位体系,从而实现人员、物体等在室内空间中的实时位置监控。

常见室内定位技术

目前常见的室内无线定位技术有:Wi-Fi、蓝牙、红外线、超宽带、RFID、ZigBee和超声波等。

  • Wi-Fi技术

通过无线接入点(包括无线路由器)组成的无线局域网络(WLAN),可以实现复杂环境中的定位、监测和追踪任务。它以网络节点(无线接入点)的位置信息为基础和前提,采用经验测试和信号传播模型相结合的方式,对已接入的移动设备进行位置定位,最高精确度大约在1米至20米之间。如果定位测算仅基于当前连接的Wi-Fi接入点,而不是参照周边Wi-Fi的信号强度合成图,则Wi-Fi定位就很容易存在误差(例如:定位楼层错误)。 另外,Wi-Fi接入点通常都只能覆盖半径90米左右的区域,而且很容易受到其他信号的干扰,从而影响其精度,定位器的能耗也较高。

  • 蓝牙技术

蓝牙通讯是一种短距离低功耗的无线传输技术,在室内安装适当的蓝牙局域网接入点后,将网络配置成基于多用户的基础网络连接模式,并保证蓝牙局域网接入点始终是这个微网络的主设备。这样通过检测信号强度就可以获得用户的位置信息。 蓝牙定位主要应用于小范围定位,例如:单层大厅或仓库。对于持有集成了蓝牙功能移动终端设备,只要设备的蓝牙功能开启,蓝牙室内定位系统就能够对其进行位置判断。 不过,对于复杂的空间环境,蓝牙定位系统的稳定性稍差,受噪声信号干扰大。

  • 红外线技术

红外线技术室内定位是通过安装在室内的光学传感器,接收各移动设备(红外线IR标识)发射调制的红外射线进行定位,具有相对较高的室内定位精度。 但是,由于光线不能穿过障碍物,使得红外射线仅能视距传播,容易受其他灯光干扰,并且红外线的传输距离较短,使其室内定位的效果很差。当移动设备放置在口袋里或者被墙壁遮挡时,就不能正常工作,需要在每个房间、走廊安装接收天线,导致总体造价较高。

  • 超宽带技术

超宽带技术与传统通信技术的定位方法有较大差异,它不需要使用传统通信体制中的载波,而是通过发送和接收具有纳秒或纳秒级以下的极窄脉冲来传输数据,可用于室内精确定位,例如:战场士兵的位置发现、机器人运动跟踪等。 超宽带系统与传统的窄带系统相比,具有穿透力强、功耗低、抗多径效果好、安全性高、系统复杂度低、能够提高精确定位精度等优点,通常用于室内移动物体的定位跟踪或导航。

  • RFID技术

RFID定位技术利用射频方式进行非接触式双向通信交换数据,实现移动设备识别和定位的目的。它可以在几毫秒内得到厘米级定位精度的信息,且传输范围大、成本较低;不过,由于以下问题未能解决,以RFID定位技术的适用范围受到局限。 1. RFID不便于整合到移动设备之中 2. 作用距离短(一般最长为几十米) 3. 用户的安全隐私保护 4. 国际标准化

  • ZigBee技术

ZigBee是一种短距离、低速率的无线网络技术。它介于RFID和蓝牙之间,可以通过传感器之间的相互协调通信进行设备的位置定位。这些传感器只需要很少的能量,以接力的方式通过无线电波将数据从一个传感器传到另一个传感器,所以ZigBee最显著的技术特点是它的低功耗和低成本。

  • 超声波技术

超声波定位主要采用反射式测距(发射超声波并接收由被测物产生的回波后,根据回波与发射波的时间差计算出两者之间的距离),并通过三角定位等算法确定物体的位置。 超声波定位整体定位精度较高、系统结构简单,但容易受多径效应和非视距传播的影响,降低定位精度;同时,它还需要大量的底层硬件设施投资,总体成本较高。

  • 视觉定位

用手机摄像头或双目摄像头拍摄周边画面,并和已经预先储存的环境图像进行匹配,确定自己的位置。定位精度小于米,优点是可以直接用手机定位,不需要在室内部署基础设施。缺点是技术不成熟,稳定性不高,图像处理耗费大量和电量资源,定位操作方式怪异,用户体验不好,理论上有不可避免的问题,例如在环境单一的长走廊或类似场景中,仅靠机器视觉是难以准确定位的。

  • 惯性导航技术

这是一种纯客户端的技术,主要利用终端惯性传感器采集的运动数据,如加速度传感器、陀螺仪等测量物体的速度、方向、加速度等信息,基于航位推测法,经过各种运算得到物体的位置信息。随着行走时间增加,惯性导航定位的误差也在不断累积。需要外界更高精度的数据源对其进行校准。所以现在惯性导航一般和WiFi指纹结合在一起,每过一段时间通过WiFi请求室内位置,以此来对MEMS产生的误差进行修正。该技术目前的商用得也比较成熟,在扫地机器人中得到广泛应用。

  • LED可见光技术

可见光是一个新兴领域,通过对每个LED灯进行编码,将ID调制在灯光上,灯会不断发射自己的ID,通过利用手机的前置摄像头来识别这些编码。利用所获取的识别信息在地图数据库中确定对应的位置信息,完成定位。根据灯光到达的角度进一步细化定位的结果,高通公司做到了厘米级定位精度。由于不需要额外部署基础设施,终端数量的扩大对性能没有任何的影响,并且可以达到一个非常高的精度,该技术被高通公司所看好。目前,可见光技术在北美有很多商场已经在部署。用户下载应用后,到达商场里的某一个货架,通过检测货架周围的灯光即可知晓具体位置,商家在通过这样的方法向消费者推动商品的折扣等信息。

主要运营公司

室内定位技术主要分基站定位和惯导定位两种服务商。基站定位服务商主要有:谷歌、诺基亚、TI、苹果、高德、百度等采用WIFI定位;惯导定位服务商主要有:美国的NAVISEER,龙旗瑞谱科技,上海消防研究所。商用技术基本采用WIFI,RFID等无线通讯基站方案,针对应急救援主要采用惯性导航等技术方案。目前国内的几家设备公司例如蜂鸟视图(https://www.fengmap.com/solution-business.html)、万位科技(https://www.wanwaytech.com/qiye/)提供无线和有线多种设备,可利用GPS+北斗+WIFI+基站进行定位,蜂鸟视图提供Android、IOS、JAVAScript SDK支持,无线设备多为盒状物体,可续航数年产品报价与需求量有关,目前尚不可获得报价。也有APP例如寻鹿、万汇等软件,但只能提供特定城市的特定区域定位导航。

温湿度传感器

门禁设备

电力行业常见传感器

实时水面渲染

平台海洋实时渲染采用的是SUNDOG公司triton插件。


海浪仿真

国内外很多专家学者针对海浪仿真做了大量的研究工,随着人们对海浪的深入研究,海浪建模已取得了较大突破,目前对海面波浪进行建模可以分为基于几何模型的方法基于谱分析的方法基于分形的方法基于动力模型的方法基于物理模型的方法

基于几何模型的方法

基于几何模型的方法中的典型方法是 Gerstner 模型。Gerstner 模型描述海浪各质点运动模式主要是从动力学的角度,其第一次被 Fournier 引入计算机图形图像领域是在 1986 年。Gerstner 模型最初被提出是作为流体动力学方程组的近似解决方案。它在考虑风为动力,重力为回复力的风成浪的基础上,根据海浪变化的圆轨道参数来描述海浪。 该模型假设水表面的每一个粒子沿着其静止位置点作圆周运动。在一个三维立体环境中,假设海平面位于 XY 平面,Z 轴指向朝上,水粒子沿着 X 轴方向运动,在t 时刻其波动传播的半径为 r ,则其运动状态用数学公式表示如下:

        z=z0-rcos(kx0-ωt)
x=x0+rsin(kx0-ωt)

此公式描述t时刻单个波的运动情况,其中水粒子静止时在X、Z轴的坐标分别为x0、z0;r为水粒子运动半径;k为点 (x0,z0)处的波数;ω为波的角速度;t为时间, 调整k、r可以得到不同的波形。
这种方法将水粒子的运动轨迹看成是在半径为1/k的圆上,距离圆心为r的点P沿距离X轴下方1/k的直线滚动得到的,如下图所示:

运动轨迹

比起普通的正余弦波动方程,Gerstner Wave 并不复杂,但它们描述的波形却有很大差别,正余弦波描述的海浪的波峰和波谷波的弧度都是均匀的,不能生产相对较尖的波峰,而 Gerstner 描述的波形正好可以产生更陡的波形,波峰尖,波谷宽,因此Gerstner描述的波形更加逼真。
但是 Gerstner 模型存在一定的缺陷:其只采用垂直方向和水平方向的单一正弦波来进行模拟,故而生成的海面比较规则。而真实的海浪运动是一种不规则行为,故模拟情况与真实海面的运动有较大的差别,无法表现海浪的随机性和不规则性。为了增强模拟的真实感和逼真度,通常采用多个Gerstner Wave相互叠加的方法生成海面,增加波形的变化。
由于这种方法具有简单直观、计算速度较快等优点,而波形函数本身可以反映海洋表面高度的变化,故而海浪运动一般采用这种模拟方法,适合模拟大面积海面。但是其具有一定的局限性,当进行波浪的破碎等现象的模拟是,生成的场景不够真实,故适用范围较窄[1-4]

基于谱分析的方法

这种方法建立在海洋观测结果的基础上,运用有线性叠加法和线性过滤法模拟海浪。线性叠加法因其物理概念清晰,计算方便快捷且模拟结果最为相似。
线性过滤法是以待模拟的海浪谱为依据设计出一个过滤器,选择适当的系统函数将白噪声作为一线性系统输入该系统并输出所需模拟的波面过程。该方法并没有得到广泛应用,因与真实的海浪谱误差较大。
线性叠加法是假定组成波是随机且独立的,将线性的简单波动迭加起来,多个振幅、角频率和随机相位都不相同的波叠加形成海浪。叠加的方式可以是线性的,也可以是非线性的。随机过程的一次实现只需要确定各个组成波的波幅、角频率和随机相位。这种方法具有很强的灵活性,并且由于它的数据基础来自于海洋统计学模型,因此渲染出来的水面真实感较强。但是缺点是采用规则网格,数据量大,很难实时渲染水面[5-8]

基于分形的方法

无论从时间上还是空间上看,海浪的运动都具有不规则性和不重复性,因此其本身可以被认为是一个十分复杂的自然现象。另外,海洋学家多年来对海浪谱进行了研究得出以下结论:海浪属于狭带谱的幅值服从锐利分布的正态随机过程。可以采用分形函数来描述具有负幂率谱的过程。这说明利用分形理论模拟随机海浪是可行的。
Perlin噪声(Perlin noise)指由 Ken Perlin 发明的自然噪声生成算法。Perlin 噪声这个名词现在被同时用于指代两种有一定联系的的噪声生成算法,即Simplex 噪声和分形噪声,这两种噪声都广泛地应用于计算机图形学,这里所说的柏林噪声函数指的是分形噪声。
分形噪声可以用来模拟自然界的自相似过程,包括海岸线,地形,海浪等。分形噪声的原理是利用 Perlin 噪声频率受限的特性,通过不断叠加更高频率的Perlin 噪声达到自相似的效果。
Perlin 噪声函数实际上属于一个随机数生成器,它与普通的随机数生成器的区别是它的参数是一个整数,基于这个参数做返回的随机数。如果两次传递回来的参数相同,则它产生的两次随机数也相同。要创建一个 Perlin 噪声函数,首先需要一个噪声函数和一个插值函数。
下图是一个噪声函数的例子:

由噪声函数产生的随机数

X轴上每个点被赋予一个0到1之间的随机数。对上图中的每个点插值,形成的连续噪声函数如下图所示。

连续的噪声函数

把若干个具有不同频率和振幅的连续光滑函数加起来,就可以获得Perlin噪声函数。由多个一维噪声函数构建一个Perlin函数的过程如下图所示。

构建Perlin函数

下图是一个二维Perlin函数的例子:

二维的噪声函数

以上是二维的噪声函数,把这些函数叠加起来产生如下的噪声样式,也就是二维Perlin函数:

二维Perlin函数

对海浪的建模所用的基于分形的方法,即使通过构造二维的 Perlin 函数,并将计算所得的噪声值作为网格点的水面高度值得到的连续动荡变化的水面高度场,从而构建逼真的海面。

基于动力模型的方法

基于动力系统模型的典型方法为粒子系统。这种方法主要用于解决如何在计算机上生成和显示由大量运动和变化有一定规则的微小粒子组成大物质的问题,与其他传统的渲染技术相比,这种技术在模拟该现象时具有真实感方面的优势。在海面建模的问题上,主要是对由波破碎和与障碍物相碰引起的水沫和飞沫建模,该方法被认为是迄今为止模拟不规则物体最为成功的一种图形生成算法。
粒子系统方法假设景物由若干不规则的、随机分布的粒子组成,这些微小粒子聚集在一起形成不规则的模糊物体,用于构造和绘制景物。粒子系统是一个动态系统,可以生长和消亡。也就是说,每个粒子除了具有位置、速度、颜色和加速度等属性外,还有一定的生命周期,即每个粒子都有自己的生命值,随时间变化,粒子的生命值不断减小,当粒子的生命值减小到零时,粒子便进入死亡状态,此时该生命周期结束,下一个生命周期随即开始。这个过程不断地有新粒子生成和旧粒子消失,这些粒子不断地改变形状,不断地运动,从而引起景物的总体形态和特征的变化。为使景物的随机性更加真实,通常采用一些简化的随机过程来控制粒子的形状、特征和运动。在确定每一个粒子参数的变化范围的基础上,在该范围内随机确定参数值,进而确定该粒子的状态,以增大粒子系统的随机性。
粒子系统瞬间画面的生成主要遵循以下步骤:1)在系统中生成一个新的粒子;2)赋予新粒子一定的属性;3)删除生命值为零的粒子;4)根据粒子的动态属性对粒子添加外力作用,如重力、风力等空间扭曲,实现对粒子的随机移动和变换;5)绘制并显示由所有生命值不为零的粒子组成的图形。
一般情况下,在三维空间中粒子系统的位置与运动取决于发射器。发射器可以用一组粒子行为参数及其在三维空间中的位置来表示。粒子生成速度、粒子初始速度向量和粒子寿命组成了粒子行为参数。当粒子进入系统中后,受控的随机过程可以模拟其运动。为了得到较逼真的景象,有时需要对粒子进行纹理贴图。
粒子系统的优点是,由于其充分体现了物体的动态性和随机性,在模拟火、云、水、森林和原野等自然景物时具有一定的优势;其缺点则是,构造太简单、粒子数太少的粒子模型在真实性上会有欠缺,复杂、粒子数过多的粒子模型又面临着计算量较大,难以实时进行表现的问题[9-11]

基于物理模型的方法

基于物理模型的建模,是针对液体的波动,从海面波浪的物理特性出发,不直接模拟海浪的运动,通过计算力学N-S方程获得海浪内部各质点的运动状态,用该方法模拟的波形充分地考虑了海浪运动的随机性,能更好、更真实地反映海浪形态各个要素的变化,同时也能较充分地反映海浪的成长特性及能量分布[12-16]

参考文献:

[1] Blinn J F. Simulation of wrinkled surfaces[J]. Computer Graphics,1978, 12(3):286-292.

[2] Fishman B, Schachter B. Computer display of height fields[J]. Computer Graphic,1980,14(5):53-60.

[3] Max N L. Vectorized procedural models for natural terrain: waves and islands in the sunset[J]. Computer Graphics, 1981, 15(3):317-324.

[4] Rankine W J W. On the exact form of waves near the surfaces of deep water[J]. Phil. Trans. R. Soc. A, 1863, 153(4):127–138.

[5] Tessendorf. Simulating ocean water[EB/OL]. http://home.gte.net/tssndrf/index.html, 2001.

[6]Jensen. Deep-water animation and rendering[EB/OL]. http://www.gamasutra.com/

gdce/Jensen/Jensen_01.html, 2001.

[7] Deviprasad T,Kesavadas T. Virtual Prototyping of Assembly Components Using Process Modeling[J]. Journal of Manufacturing Systems, 2003, 22(1):16-27.

[8] 熊艳飞, 石志广, 郭建, et al. 基于海浪谱模型和 FFT 的海面建模[J]. 重庆理工大学学报(自然科学), 2014, 28(4):77-82.

[9] Reeves W T, L Ltd. Particle system—a technique for modeling a class of fuzzy objects[J]. Computer Graphics, 1983, 17(3):359-376.

[10] Peachey D R. Modeling waves and surf[J]. Computer Graphics, 1986, 20(4):65-74.

[11] 张艺衡, 李晓峰, 刘小玲, et al. 基于GPU粒子系统的可交互水波实时模拟[J]. 计算机工程与设计, 2014, 35(8):2831–2835.

[12] Chen J X, Lobo N V. Toward interactive-rate simulation of fluids with moving obstacles using Navier-Stokes equations[J]. Graph Models Image Process, 1995, 57(2):107-116.

[13]Foster N, Metaxas D. Modeling water for computer animation[J]. Communications of the ACM, 2000, 43(7):60-67.

[14] Kass M, Miller G. Rapid, stable fluid dynamics for computer graphics[J]. ACM SIGGRAPH Computer Graphics, 1990, 24(4):49-57.

[15] Chentanez N, Müller M. Real-time Eulerian water simulation using a restricted tall cell grid[J]. ACM Transactions on Graphics, 2011, 30(4):82-93.

[16] 刘文龙, 张静. 用MC算法优化基于 SPH的海浪粒子模型[J]. 海洋技术学报, 2017, 36(2):41-45.

湖面仿真

实时云模拟

视点漫游

视点包含六个参数:lon(经度),lat(纬度),altitude(海拔),heading(水平方位角),pitch(垂直俯仰角),range(可视范围) 点击界面上方选择路径按钮,自行添加视点信息,可控制飞行时间停留时间等信息,并将所生成的漫游路径存入本地Xml文件中。 目前可通过直接读取本地文件进行漫游也可自行添加新路径进行漫游。


使用方法

现存问题

数据下载

本平台所需数据主要下载自Planet OSM(https://planet.openstreetmap.org),均为立刻下载的免费数据。

影像数据

影像数据目前包含数个视频,下载来源为https://10.108.59.113/:8443/svn/WPFOSG。

高程数据

高程数据下载自谷歌地图和水经注地图http://www.rivermap.cn的高程数据下载。

矢量数据

矢量数据主要包括全国和数个城市周边的OSM数据,Planet OSM[[1]]提供以下两个下载路径:GeoFabrik[[2]]和BBBike[[3]],其中GeoFabrik[[4]] 提供的是洲级和国家级数据下载,可以根据需求直接在页面进行下载。而BBBike[[5]]提供了一些切割完成的特定区域和全球任意地区的任意形状的地区地图下载,文件大小下载上限为520M,根据需要选择选项,需要提供接收邮箱,待选定区域的数据在线处理结束后将下载链接发送至邮箱,点击链接即可下载。以上所列出的下载方式据提供多种数据格式,由于矢量数据的处理软件为Maperitive要求使用OSM文件,故下载数据时选用了OSM数据。此[[6]]为地图处理软件Maperitive官网,根据页面提示可以立即下载,加压下载文件后打开应用程序文件,按照以下步骤操作。

  1. 1、设定地图区域:

目前Maperitive使用电脑内存来存储地图数据,因此需根据电脑配置和需求来限定地图范围。(我的电脑32G切省级的没有问题,全国地图的话,32G内存依然不够)。一般有两种方式来设定地图区域:

  • (1)打开Maperitive,调整地图显示区域至需要范围,依次点击Map / Set Bounds即可。
  • (2)使用命令行(软件底部),例如:bounds-set 117.04261175,36.6741025754786,117.06649825,36.6808674694984
  1. 2、关闭web map:

打开web map 在切图是会下载在线地图数据,因此速度会非常慢,一般的做法是先将要切的地图数据下载下来,将web map关闭(点击web map前面的黄色五角星即可)。

  1. 3、导入本地地图数据:

依次点击file--》Open Map Source--》选择以下载好的.osm文件,软件开始加载数据,具体时间取决于数据大小。
在加载完成后,会在命令提示区显示完成:当然,Maperitive本身也提供了地图数据下载(Map / Download OSM Data)

  1. 4、修改地图样式:

依次选择 Map / Switch To Rules 来修改地图样式,因为没有什么特殊需要,在这我选择default 。选择后,稍等便可以在下面预览到显示效果。

  1. 5、选择 Tools / Generate Tiles ,Maperitive会根据选择区域大小自己选择zoom范围并开始切图。

如果需要自定义zoom范围,可使用命令行(我将zoom范围设置为1-18): generate-tiles minzoom=1 maxzoom=18在命令提示行提示命令执行情况并返回结果

  1. 6、至此,在Maperitive的安装目录下生成了Tiles文件夹,各地图切片(256X256的png图片)分级的保存在此文件夹下,可以直接移动到所需的文件夹。
  • 注意:下一次切割的文件会覆盖前一次的文件,所以务必将tiles文件夹中的文件挪出,否则将丢失前一次数据!

模型加载

可以将三维模型添加到大场景中。
添加界面如下图所示,用户输入模型文件的路径,设置模型的名字以及海拔经纬度,就可以将该模型添加到指定的经纬度上。

添加模型


矢量数据加载

平台中的二维地图数据使用了Maperitive地图软件处理下载自Planet OSM的全国和部分城市地区的OSM数据地图并进行瓦片的制作,以此来实现地域和地理信息显示的快速加载,摒弃了之前的全矢量数据,解决了数据加载过慢引起的各种问题。其次,采用叠加方式加载了全国10层和北京/深圳/菏泽等城市及周边地区的18层二维地图瓦片数据,数据格式使用切割工具默认格式,格式设置代码如下:

        properties
	map-background-color	: #F1EEE8
	map-background-opacity	: 0
	map-sea-color : #B5D0D0
	font-weight : bold
	font-family : Verdana
	text-max-width : 7
	text-halo-width : 25%
	text-halo-opacity : 0.75
	text-align-horizontal : center
	text-align-vertical : center
	font-stretch : 0.9
	map.rendering.lflp.min-buffer-space : 5
	map.rendering.lflp.max-allowed-corner-angle : 40
        

小场景

小场景按规划路线自动漫游和第一人称手动漫游+“后续”监控视频流播放 单场景漫游:

OSG小场景_学校

多场景漫游及监控视频流播放:

OSG小场景_场景选择界面
OSG小场景_全局照明房间
OSG小场景_公寓_固定位置的视频流播放
OSG小场景_公寓_UI层的监控视频流播放

平台安装说明

主要参与人员

平台框架:邢树军

视频加载、拼接、融合:代清 黄冠瑞

界面美化:孙默涵 王卓文

视点漫游:张泷 孙默涵

数据准备与矢量加载:谭丞鸣

输入框控件:陈莹莹

小场景:郑健平 沈圣 管延鑫

打包安装:张泷