CN113568996B - 一种基于osgEarth的多图层掉帧优化方法及系统 - Google Patents

一种基于osgEarth的多图层掉帧优化方法及系统 Download PDF

Info

Publication number
CN113568996B
CN113568996B CN202110865516.2A CN202110865516A CN113568996B CN 113568996 B CN113568996 B CN 113568996B CN 202110865516 A CN202110865516 A CN 202110865516A CN 113568996 B CN113568996 B CN 113568996B
Authority
CN
China
Prior art keywords
texture
layer
image
rgbdata
transparency
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.)
Active
Application number
CN202110865516.2A
Other languages
English (en)
Other versions
CN113568996A (zh
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.)
Xi'an Hengge Digital Technology Co ltd
Original Assignee
Xi'an Hengge Digital Technology Co ltd
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 Xi'an Hengge Digital Technology Co ltd filed Critical Xi'an Hengge Digital Technology Co ltd
Priority to CN202110865516.2A priority Critical patent/CN113568996B/zh
Publication of CN113568996A publication Critical patent/CN113568996A/zh
Application granted granted Critical
Publication of CN113568996B publication Critical patent/CN113568996B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Generation (AREA)

Abstract

一种基于osgEarth的多图层掉帧优化方法及系统。1)合并瓦片的纹理影像:2)利用合并后的纹理图片创建瓦片;3)创建好的瓦片与原来相同的流程进行挂在和渲染。本优化方案中的纹理影像合并在CPU中进行,并且和帧渲染不在同一个线程,这样有效的减缓了操作中GPU的压力,从而提升多图层操作的流畅度,使得帧率稳定,通过瓦片上纹理图片合并,使得之前多图层拖动,明显的卡顿的现象消失,帧率变得稳定。

Description

一种基于osgEarth的多图层掉帧优化方法及系统
技术领域
本发明属于计算机图形技术领域,特别涉及一种基于osgEarth的多图层掉帧优化方法及系统。
背景技术
OsgEarth是一款开源的三维数字地球引擎,由于它本身兼具地理和三维特性,因此在GIS(地理信息系统)行业有着广泛的应用。其中最典型的应用就是高程、影像、矢量、海图等数据的加载与显示。当前OsgEarth都是以瓦片的形式加载地形和影像等,每个瓦片都是根据地形数据生成瓦片顶点,当瓦片范围内有多张影像图层时,那么该瓦片就对应多张纹理图片,在渲染的过程中就需要将所有张纹理图片都进行数据绑定和渲染。在单个的影像图层加载中,随便操作地球,都可以稳定在60帧(满帧),随着矢量栅格化与海图栅格化的盛行(栅格化后和影像图层的方式加载相同),多图层的加载运用的场景也越来越多,当图层多较多,拖动地球会明显的感觉到掉帧(卡顿)。
发明内容
本发明的目的是提供一种基于osgEarth的多图层掉帧优化方法及系统,以解决上述问题。
为实现上述目的,本发明采用以下技术方案:
一种基于osgEarth的多图层掉帧优化方法,包括以下步骤:
a.请求获取瓦片上的所有影像图层的纹理图片;
b.创建用于存储目标纹理的透明度,以及目标纹理的RGB的空间
c.将创建的空间内容初始化为0;
d.遍历影像图层,根据图层ID获取该图层在瓦片上的纹理图片image,遍历完成跳到步骤h;
e.如果image的大小不为256*256个像素大小,则将采用双线性插值算法将图片缩放为256*256
f将image作为前景利用AlphaData和RGBData进行叠加,叠加结果的RGB存放在RGBData中,透明度存放在AlphaData中;
g.若叠加后的AlphaData的值都为不透明则进行下一步,否则调到步骤d;
h.将RGBData和AlphaData作为前景和背景色进行叠加,叠加的结果放在RGBData和AlphaData中;
i.根据RGBData和AlphaData创建一个四通道的图片finalImage;
j.根据finalImage图片创建瓦片节点。
进一步的,创建一个空间AlphaData用于存储目标纹理的透明度;创建一个空间RGBData用于存储目标纹理的RGB。
进一步的,空间AlphaData的大小为256*256个字节,空间RGBData的大小为256*256*3个字节;AlphaData和RGBData称作画板。
进一步的,将纹理图片绘制到画板上具体包括:
1)合并瓦片的纹理影像;
2)利用合并后的纹理图片创建瓦片;
3)创建好的瓦片与优化前的流程相同的流程进行挂载和渲染。
进一步的,合并瓦片的纹理影像:
A.创建一个256*256的AlphaData数组和一个256*256*3的RGBData数组,类型为uchar;
B.将数组填充为背景颜色;
C.按原有的渲染顺序遍历瓦片上的纹理图片;
D.如果纹理影像图片为jpg则按照透明度为1在乘以该图层的透明度和A数组中的数据进行合并,并保存在A数组中;如果图片为png则直接用透明度乘以该图层的透明和A数组中的数据进行合并,并保存在A数组中;
E.如果遍历完成则进入下一步,否则取下一张纹理图片进入D步骤;
F.利用合并后A数组中数据创建一个纹理图片。
进一步的,如果image的大小不为256*256个像素大小,则将采用双线性插值算法将图片缩放为256*256。
进一步的,如果image三通道RGB图片则令其所有像素的透明度为不透明然后乘以该图层的透明度因子,如果image为四通道RGBA图片则透明度乘以该图层的透明度因子。
进一步的,一种基于osgEarth的多图层掉帧优化系统,包括:
图层获取模块,用于请求获取瓦片上的所有影像图层的纹理图片;
空间创建模块,用于创建用于存储目标纹理的透明度,以及目标纹理的RGB的空间;
遍历模块,用于遍历影像图层,根据图层ID获取该图层在瓦片上的纹理图片image,遍历完成跳到步骤g;
叠加模块,用于将image作为前景利用AlphaData和RGBData进行叠加,叠加结果的RGB存放在RGBData中,透明度存放在AlphaData中;
若叠加后的AlphaData的值都为不透明则进行下一步,否则调到步骤d;
将RGBData和AlphaData作为前景和背景色进行叠加,叠加的结果放在RGBData和AlphaData中;
根据RGBData和AlphaData创建一个四通道的图片finalImage;
瓦片节点创建模块,用于根据finalImage图片创建瓦片节点。
与现有技术相比,本发明有以下技术效果:
本优化方案中的纹理影像合并在CPU中进行,并且和帧渲染不在同一个线程,这样有效的减缓了操作中GPU的压力,从而提升多图层操作的流畅度,使得帧率稳定,通过瓦片上纹理图片合并,使得之前多图层拖动,明显的卡顿的现象消失,帧率变得稳定。
附图说明
图1是本发明单个瓦片纹理合并流程图;
具体实施方式
以下结合附图对本发明进一步说明:
请参阅图1:
1)合并瓦片的纹理影像:
A.创建一个256*256的AlphaData数组和一个256*256*3的RGBData数组,类型为uchar;
B.将数组填充为背景颜色;
C.根据图层ID获取该图层在瓦片上的纹理图片;
D.如果纹理影像图片为jpg则按照透明度为1(不透明)在乘以该图层的透明度和A数组中的数据进行合并,并保存在A数组中;如果图片为png则直接用透明度乘以该图层的透明和A数组中的数据进行合并,并保存在A数组中;
E.如果遍历完成则进入下一步,否则取下一张纹理图片进入D步骤;
F.利用合并后A数组中数据创建一个纹理图片。
2)利用合并后的纹理图片创建瓦片;
3)创建好的瓦片与原来相同的流程进行挂在和渲染。
具体方案:
a.请求获取瓦片上的所有影像图层的纹理图片;
b.创建一个大小为256*256个字节的空间AlphaData用于存储目标纹理的透明度;
c.创建一个大小为256*256*3个字节的空间RGBData用于存储目标纹理的RGB;
d.将AlphaData和RGBData空间内容初始化为0(AlphaData和RGBData后边也称作画板);
e.遍历影像图层,根据图层ID获取该图层在瓦片上的纹理图片(a中请求到的数据)image,遍历完成跳到步骤j;
f.如果image的大小不为256*256个像素(图片的长宽分别为256和256)大小,则将采用双线性插值算法将图片缩放为256*256;
g.如果image三通道RGB图片则令其所有像素的透明度为不透明然后乘以该图层的透明度因子,如果image为四通道RGBA图片则透明度乘以该图层的透明度因子;
h.将image作为前景利用AlphaData和RGBData进行叠加,叠加结果的RGB存放在RGBData中,透明度存放在AlphaData中;
i.若叠加后的AlphaData的值都为不透明则进行下一步,否则调到步骤e;
j.将RGBData和AlphaData作为前景和背景色进行叠加,叠加的结果放在RGBData和AlphaData中;
k.根据RGBData和AlphaData创建一个四通道的图片finalImage;
l.根据finalImage图片创建瓦片节点
实施例:
以矢量栅格化的方式加载陕西省高速、陕西省铁路、陕西省省道、陕西省建筑、陕西省国道、陕西省县道、陕西省省界为例,瓦片图层合并后的操作明显比之前的流畅。之前的掉帧主要是操作地球的过程中需要加载和卸载大量的瓦片,每个瓦片上又存在多个纹理影像,大量的纹理绑定和绘制使得GPU压力太大,导致卡顿掉帧;本优化方案中的纹理影像合并在CPU中进行,并且和帧渲染不在同一个线程,这样有效的减缓了操作中GPU的压力,从而提升多图层操作的流畅度,使得帧率稳定。
使用西安恒歌数码科技有限责任公司FreeXStudio平台进行如下实验:
在同一台机器上(CPU:Intel i7-9700F显卡:NVIDIA GeForce 650 Ti),对第二部分中加载的数据就行拉远拉近操作,最低帧率如下:
渲染方案 最低帧率
原有技术 20
优化后 55
西安恒歌数码科技有限责任公司的产品FreeXStudio是基于OpenSceneGraph、OsgEarth开发的多行业可自由扩展的二次开发GIS平台,该平台中图层合并版本对OsgEarth现有的瓦片加载技术进行了优化改造,使得多图层操作时的帧率稳定,操作流畅。

Claims (8)

1.一种基于osgEarth的多图层掉帧优化方法,其特征在于,包括以下步骤:
a.请求获取瓦片上的所有影像图层的纹理图片;
b.创建用于存储目标纹理的透明度,以及目标纹理的RGB的空间
c.将创建的空间内容初始化为0;
d.遍历影像图层,根据图层ID获取该图层在瓦片上的纹理图片image;
e.将image作为前景利用AlphaData和RGBData进行叠加,叠加结果的RGB存放在RGBData中,透明度存放在AlphaData中;
f.若叠加后的AlphaData的值都为不透明则进行下一步,否则调到步骤d;
g.将RGBData和AlphaData作为前景和背景色进行叠加,叠加的结果放在RGBData和AlphaData中;
h.根据RGBData和AlphaData创建一个四通道的图片finalImage;
i.根据finalImage图片创建瓦片节点。
2.根据权利要求1所述的一种基于osgEarth的多图层掉帧优化方法,其特征在于,创建一个空间AlphaData用于存储目标纹理的透明度;创建一个空间RGBData用于存储目标纹理的RGB。
3.根据权利要求2所述的一种基于osgEarth的多图层掉帧优化方法,其特征在于,空间AlphaData的大小为256*256个字节,空间RGBData的大小为256*256*3个字节;AlphaData和RGBData称作画板。
4.根据权利要求3所述的一种基于osgEarth的多图层掉帧优化方法,其特征在于,将纹理图片绘制到画板上具体包括:
1)合并瓦片的纹理影像;
2)利用合并后的纹理图片创建瓦片;
3)创建好的瓦片与优化前的流程相同的流程进行挂载和渲染。
5.根据权利要求4所述的一种基于osgEarth的多图层掉帧优化方法,其特征在于,合并瓦片的纹理影像:
A.创建一个256*256的AlphaData数组和一个256*256*3的RGBData数组,类型为uchar;
B.将数组填充为背景颜色;
C.按原有的渲染顺序遍历瓦片上的纹理图片;
D.如果纹理影像图片为jpg则按照透明度为1在乘以该图层的透明度和A数组中的数据进行合并,并保存在A数组中;如果图片为png则直接用透明度乘以该图层的透明和A数组中的数据进行合并,并保存在A数组中;
E.如果遍历完成则进入下一步,否则取下一张纹理图片进入D步骤;
F.利用合并后A数组中数据创建一个纹理图片。
6.根据权利要求1所述的一种基于osgEarth的多图层掉帧优化方法,其特征在于,如果image的大小不为256*256个像素大小,则将采用双线性插值算法将图片缩放为256*256。
7.根据权利要求1所述的一种基于osgEarth的多图层掉帧优化方法,其特征在于,如果image三通道RGB图片则令其所有像素的透明度为不透明然后乘以该图层的透明度因子,如果image为四通道RGBA图片则透明度乘以该图层的透明度因子。
8.一种基于osgEarth的多图层掉帧优化系统,其特征在于,基于权利要求1至7任意一项所述的一种基于osgEarth的多图层掉帧优化方法,包括:
图层获取模块,用于请求获取瓦片上的所有影像图层的纹理图片;
空间创建模块,用于创建用于存储目标纹理的透明度,以及目标纹理的RGB的空间;
遍历模块,用于遍历影像图层,根据图层ID获取该图层在瓦片上的纹理图片image,遍历完成跳到步骤g;
叠加模块,用于将image作为前景利用AlphaData和RGBData进行叠加,叠加结果的RGB存放在RGBData中,透明度存放在AlphaData中;
若叠加后的AlphaData的值都为不透明则进行下一步,否则调到步骤d;
将RGBData和AlphaData作为前景和背景色进行叠加,叠加的结果放在RGBData和AlphaData中;
根据RGBData和AlphaData创建一个四通道的图片finalImage;
瓦片节点创建模块,用于根据finalImage图片创建瓦片节点。
CN202110865516.2A 2021-07-29 2021-07-29 一种基于osgEarth的多图层掉帧优化方法及系统 Active CN113568996B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110865516.2A CN113568996B (zh) 2021-07-29 2021-07-29 一种基于osgEarth的多图层掉帧优化方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110865516.2A CN113568996B (zh) 2021-07-29 2021-07-29 一种基于osgEarth的多图层掉帧优化方法及系统

Publications (2)

Publication Number Publication Date
CN113568996A CN113568996A (zh) 2021-10-29
CN113568996B true CN113568996B (zh) 2023-05-16

Family

ID=78169067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110865516.2A Active CN113568996B (zh) 2021-07-29 2021-07-29 一种基于osgEarth的多图层掉帧优化方法及系统

Country Status (1)

Country Link
CN (1) CN113568996B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1351297A (zh) * 2000-10-26 2002-05-29 上海奇码数字信息有限公司 具有网络拓扑结构的自适应信息处理系统
WO2006052390A2 (en) * 2004-10-15 2006-05-18 Seadragon Software, Inc. System and method for managing communication and/or storage of image data
CN107369200A (zh) * 2017-07-04 2017-11-21 福建星网视易信息系统有限公司 一种3d场景特效处理方法及存储设备
CN110619675A (zh) * 2019-09-11 2019-12-27 西安恒歌数码科技有限责任公司 基于OsgEarth的面矢量数据的加载方法
CN110634171A (zh) * 2019-02-01 2019-12-31 天津完美引力科技有限公司 一种绘制地图的装置和方法
CN110738718A (zh) * 2019-09-04 2020-01-31 中国国土勘测规划院 一种国土数据的三维可视化方法
CN111666363A (zh) * 2020-04-22 2020-09-15 国家信息中心 一种海量高分辨率影像数据切片及质量控制的方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2955409B1 (fr) * 2010-01-18 2015-07-03 Fittingbox Procede d'integration d'un objet virtuel dans des photographies ou video en temps reel
US9684673B2 (en) * 2013-12-04 2017-06-20 Urthecast Corp. Systems and methods for processing and distributing earth observation images
US10303925B2 (en) * 2016-06-24 2019-05-28 Google Llc Optimization processes for compressing media content

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1351297A (zh) * 2000-10-26 2002-05-29 上海奇码数字信息有限公司 具有网络拓扑结构的自适应信息处理系统
WO2006052390A2 (en) * 2004-10-15 2006-05-18 Seadragon Software, Inc. System and method for managing communication and/or storage of image data
CN107369200A (zh) * 2017-07-04 2017-11-21 福建星网视易信息系统有限公司 一种3d场景特效处理方法及存储设备
CN110634171A (zh) * 2019-02-01 2019-12-31 天津完美引力科技有限公司 一种绘制地图的装置和方法
CN110738718A (zh) * 2019-09-04 2020-01-31 中国国土勘测规划院 一种国土数据的三维可视化方法
CN110619675A (zh) * 2019-09-11 2019-12-27 西安恒歌数码科技有限责任公司 基于OsgEarth的面矢量数据的加载方法
CN111666363A (zh) * 2020-04-22 2020-09-15 国家信息中心 一种海量高分辨率影像数据切片及质量控制的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周友华等."Multigen Creator几何建模中的纹理优化".《电脑编程技巧与维护》.2021,145-146. *

Also Published As

Publication number Publication date
CN113568996A (zh) 2021-10-29

Similar Documents

Publication Publication Date Title
Kopf et al. One shot 3d photography
US20220164919A1 (en) Tile based computer graphics
US9424673B2 (en) Efficient composition and rendering of graphical elements
US7280121B2 (en) Image processing apparatus and method of same
US7463261B1 (en) Three-dimensional image compositing on a GPU utilizing multiple transformations
EP0875860B1 (en) Precise gradient calculation system and method for a texture mapping system of a computer graphics system
US8462159B2 (en) Subdividing geometry images in graphics hardware
CN1659595B (zh) 用于编码纹理信息的方法和设备
Strugar Continuous distance-dependent level of detail for rendering heightmaps
US9495767B2 (en) Indexed uniform styles for stroke rendering
US9811940B2 (en) Bandwidth reduction using vertex shader
US20100146211A1 (en) Shader Complex with Distributed Level One Cache System and Centralized Level Two Cache
EP3580726B1 (en) Buffer index format and compression
WO2016133730A1 (en) Systems and methods for reducing memory bandwidth using low quality tiles
KR102569371B1 (ko) 델타 색상 압축의 비디오 적용
US11270507B1 (en) Rendering textures utilizing sharp displacement mapping
US20050068326A1 (en) Image processing apparatus and method of same
US11842443B2 (en) Rendering three-dimensional objects utilizing sharp tessellation
US20160307294A1 (en) Systems and Methods for Displaying Patterns of Recurring Graphics on Digital Maps
CN113568996B (zh) 一种基于osgEarth的多图层掉帧优化方法及系统
US6473091B1 (en) Image processing apparatus and method
Thöny et al. Large‐scale pixel‐precise deferred vector maps
CN115880127A (zh) 一种渲染格式选择方法及其相关设备
US7079150B1 (en) Image processing wherein decompression and compression methods provide faster transmission of texture data between a texture buffer and Aprocessor than between a storage device and a processor
US11869123B2 (en) Anti-aliasing two-dimensional vector graphics using a compressed vertex buffer

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant