本發(fā)明屬于數(shù)據(jù)分析技術(shù)領(lǐng)域,尤其涉及一種基于地球呈現(xiàn)的數(shù)據(jù)分析方法及其系統(tǒng)。
背景技術(shù):
譯見(jiàn)(www.yeesight.com)是一個(gè)輻射全球的跨語(yǔ)言大數(shù)據(jù)平臺(tái),面向的是有數(shù)據(jù)分析需求的用戶群體。通過(guò)對(duì)網(wǎng)頁(yè)新聞,社交媒體,論壇博客,電商數(shù)據(jù)等多樣化互聯(lián)網(wǎng)數(shù)據(jù)進(jìn)行采集,使用先進(jìn)的自然語(yǔ)言處理技術(shù),深耕結(jié)構(gòu)化與非結(jié)構(gòu)化的數(shù)據(jù),發(fā)揮機(jī)器翻譯和人工智能的優(yōu)勢(shì),以精準(zhǔn)、快速、可視和定制的服務(wù),將跨越空間、時(shí)間和語(yǔ)言的信息匯聚與分析,讓用戶通過(guò)數(shù)據(jù)分析來(lái)洞察數(shù)字背后未來(lái)趨勢(shì)、深度觀點(diǎn)、危機(jī)風(fēng)險(xiǎn)、波動(dòng)走向等,達(dá)到透視商業(yè)價(jià)值驅(qū)動(dòng)價(jià)值更新。
譯見(jiàn)地球首頁(yè),利用OpenGL,結(jié)合全球高程和遙感映像數(shù)據(jù)實(shí)現(xiàn)了真實(shí)的球體建模、紋理映射、2D地球轉(zhuǎn)化、旋轉(zhuǎn)、縮放等,并以此解決實(shí)現(xiàn)了全球媒體大數(shù)據(jù)呈現(xiàn)分布和多樣化互聯(lián)網(wǎng)采集與匯聚分析等。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種基于地球呈現(xiàn)的數(shù)據(jù)分析方法及其系統(tǒng),旨在解決全球媒體大數(shù)據(jù)不能很好的在3d地球上進(jìn)行布點(diǎn)和分類(lèi)統(tǒng)計(jì)分析的問(wèn)題。
本發(fā)明是這樣實(shí)現(xiàn)的,一種基于地球呈現(xiàn)的數(shù)據(jù)分析方法,所述基于地球呈現(xiàn)的數(shù)據(jù)分析方法包括以下步驟:
Web GL的三維虛擬地球繪制,通過(guò)客戶端進(jìn)行譯見(jiàn)三維虛擬地球系統(tǒng)基礎(chǔ)網(wǎng)格的構(gòu)建、可視瓦片的請(qǐng)求和渲染以及各類(lèi)媒體數(shù)據(jù)人機(jī)交互;
Java Script的內(nèi)存管理,通過(guò)應(yīng)用層的GIS的應(yīng)用服務(wù)器,實(shí)現(xiàn)GIS的應(yīng)用服務(wù);當(dāng)收到客戶端的數(shù)據(jù)請(qǐng)求后,還進(jìn)行譯見(jiàn)地球空間量算分析和空間查詢以及譯見(jiàn)的緩存;
Web端瓦片四叉樹(shù)調(diào)用過(guò)程中的緩存管理,通過(guò)數(shù)據(jù)服務(wù)層進(jìn)行三維虛擬地球中影像、地形和三維模型的空間數(shù)據(jù)的組織和管理。
進(jìn)一步,Web GL的三維虛擬地球繪制方法包括:
1)三維球體輪廓的渲染;三維球體輪廓的渲染被封裝在基于WebGL的框架內(nèi),在頁(yè)面中使用scripts標(biāo)簽引入框架的javaScript文件,使用框架中定義的接口在瀏覽器上渲染出三維地球;
2)可視區(qū)域的確定,對(duì)經(jīng)過(guò)視點(diǎn)與視窗中心的直線與地球模型求交,以交點(diǎn)為中心的一個(gè)正方形為可視區(qū)域;正方形的邊長(zhǎng)由交點(diǎn)的經(jīng)緯度與當(dāng)前層數(shù)的分辨率共同確定;
3)可視瓦片的選取,確定可視區(qū)域后,根據(jù)當(dāng)前視點(diǎn)相對(duì)與地球模型的位置確定一個(gè)最高分辨率,然后從最低分辨率一級(jí)開(kāi)始,按照四叉樹(shù)的方式對(duì)當(dāng)前層的可視瓦片逐級(jí)往上刨分,直接選出可視瓦片列表。
進(jìn)一步,
Java Script的內(nèi)存管理方法包括:
在JavaScript中,當(dāng)服務(wù)器收到客戶端的數(shù)據(jù)請(qǐng)求后,由jquery.ajax()執(zhí)行異步http請(qǐng)求,調(diào)用query.load()從服務(wù)器加載數(shù)據(jù)并返回指定的元素中,無(wú)論數(shù)據(jù)是否加載完成,都取消加載并釋放內(nèi)存。
進(jìn)一步,Web端瓦片四叉樹(shù)調(diào)用過(guò)程中的緩存管理方法包括:
設(shè)定一個(gè)定長(zhǎng)的對(duì)象數(shù)據(jù)存儲(chǔ)服務(wù)器根據(jù)請(qǐng)求返回到客戶端瓦片時(shí),首先檢查請(qǐng)求的瓦片是否在緩存,如果在直接返回,否則,向服務(wù)器發(fā)出請(qǐng)求,并采用算法更新數(shù)組,用請(qǐng)求到的最新瓦片替換最近使用次數(shù)最少的瓦片。
本發(fā)明另一目的在于提供一種基于地球呈現(xiàn)的數(shù)據(jù)分析系統(tǒng),所述基于地球呈現(xiàn)的數(shù)據(jù)分析系統(tǒng)包括:
客戶端,用于負(fù)責(zé)譯見(jiàn)三維虛擬地球系統(tǒng)基礎(chǔ)網(wǎng)格的構(gòu)建,可視瓦片的請(qǐng)求和渲染以及各類(lèi)媒體數(shù)據(jù)人機(jī)交互;
應(yīng)用層,用于實(shí)現(xiàn)GIS的應(yīng)用服務(wù),還用于譯見(jiàn)地球空間量算分析和空間查詢,譯見(jiàn)緩存;
數(shù)據(jù)服務(wù)層,用于負(fù)責(zé)三維虛擬地球中影像、地形和三維模型等空間數(shù)據(jù)的組織和管理。
進(jìn)一步,所述客戶端包括:
所述應(yīng)用層包括:用于實(shí)現(xiàn)GIS的應(yīng)用服務(wù)的GIS的應(yīng)用服務(wù)器;
譯見(jiàn)地球空間量算分析的譯見(jiàn)地球空間量算模塊;
空間查詢的譯見(jiàn)空間查詢模塊;
譯見(jiàn)緩存的服務(wù)器緩存模塊;
所述數(shù)據(jù)服務(wù)層包括:
服務(wù)器;
影像瓦片數(shù)據(jù)模塊;
地形瓦片數(shù)據(jù)模塊;
金字塔結(jié)構(gòu)數(shù)據(jù)模型。
本發(fā)明為了實(shí)現(xiàn)譯見(jiàn)3d地球B/S模式下基于WebGL三維虛擬地球系統(tǒng),使用JavaScript語(yǔ)言進(jìn)行編程實(shí)現(xiàn),程序的調(diào)試借助已開(kāi)啟WebGL功能的Google Chrome瀏覽器,實(shí)驗(yàn)數(shù)據(jù)以四叉樹(shù)結(jié)構(gòu)存放在部署于譯見(jiàn)生產(chǎn)環(huán)境中的HTTP Server上,數(shù)據(jù)采用譯見(jiàn)新聞媒體真實(shí)數(shù)據(jù)進(jìn)行建模分析,在3d地球上進(jìn)行布點(diǎn)和分類(lèi)統(tǒng)計(jì)分析。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例提供的基于地球呈現(xiàn)的數(shù)據(jù)分析流程圖。
圖2是本發(fā)明實(shí)施例提供的基于地球呈現(xiàn)的數(shù)據(jù)分析系統(tǒng)示意圖。
圖中:1、客戶端;2、應(yīng)用層;3、數(shù)據(jù)服務(wù)層。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明譯見(jiàn)地球核心采取Web GL技術(shù)使得在普通的瀏覽器上渲染三維虛式的三維虛擬地球系統(tǒng)?;赪eb GL這一跨平臺(tái)的Web地球三維圖形開(kāi)發(fā)環(huán)境,構(gòu)建了Browse/Server模式下的多層體系結(jié)構(gòu),關(guān)鍵點(diǎn)主要包括Web GL的三維虛擬地球繪制、Java Script的內(nèi)存管理和Web端瓦片四叉樹(shù)調(diào)用過(guò)程中的緩存管理。
下面結(jié)合附圖對(duì)本發(fā)明的應(yīng)用原理作詳細(xì)描述。
如圖1所示,本發(fā)明實(shí)施例提供的基于地球呈現(xiàn)的數(shù)據(jù)分析方法,所述基于地球呈現(xiàn)的數(shù)據(jù)分析方法包括以下步驟:
S101:Web GL的三維虛擬地球繪制,通過(guò)客戶端進(jìn)行譯見(jiàn)三維虛擬地球系統(tǒng)基礎(chǔ)網(wǎng)格的構(gòu)建、可視瓦片的請(qǐng)求和渲染以及各類(lèi)媒體數(shù)據(jù)人機(jī)交互。
S102:Java Script的內(nèi)存管理,通過(guò)應(yīng)用層的GIS的應(yīng)用服務(wù)器,實(shí)現(xiàn)GIS的應(yīng)用服務(wù);當(dāng)收到客戶端的數(shù)據(jù)請(qǐng)求后,還進(jìn)行譯見(jiàn)地球空間量算分析和空間查詢以及譯見(jiàn)的緩存。
S103:Web端瓦片四叉樹(shù)調(diào)用過(guò)程中的緩存管理,通過(guò)數(shù)據(jù)服務(wù)層進(jìn)行三維虛擬地球中影像、地形和三維模型的空間數(shù)據(jù)的組織和管理。
進(jìn)一步,Web GL的三維虛擬地球繪制方法包括:
1)三維球體輪廓的渲染;三維球體輪廓的渲染被封裝在基于WebGL的框架內(nèi),在頁(yè)面中使用scripts標(biāo)簽引入框架的javaScript文件,使用框架中定義的接口在瀏覽器上渲染出三維地球;
2)可視區(qū)域的確定,對(duì)經(jīng)過(guò)視點(diǎn)與視窗中心的直線與地球模型求交,以交點(diǎn)為中心的一個(gè)正方形為可視區(qū)域;正方形的邊長(zhǎng)由交點(diǎn)的經(jīng)緯度與當(dāng)前層數(shù)的分辨率共同確定;
3)可視瓦片的選取,確定可視區(qū)域后,根據(jù)當(dāng)前視點(diǎn)相對(duì)與地球模型的位置確定一個(gè)最高分辨率,然后從最低分辨率一級(jí)開(kāi)始,按照四叉樹(shù)的方式對(duì)當(dāng)前層的可視瓦片逐級(jí)往上刨分,直接選出可視瓦片列表。
進(jìn)一步,Java Script的內(nèi)存管理方法包括:
在JavaScript中,當(dāng)服務(wù)器收到客戶端的數(shù)據(jù)請(qǐng)求后,由jquery.ajax()執(zhí)行異步http請(qǐng)求,調(diào)用query.load()從服務(wù)器加載數(shù)據(jù)并返回指定的元素中,無(wú)論數(shù)據(jù)是否加載完成,都取消加載并釋放內(nèi)存。
進(jìn)一步,Web端瓦片四叉樹(shù)調(diào)用過(guò)程中的緩存管理方法包括:
設(shè)定一個(gè)定長(zhǎng)的對(duì)象數(shù)據(jù)存儲(chǔ)服務(wù)器根據(jù)請(qǐng)求返回到客戶端瓦片時(shí),首先檢查請(qǐng)求的瓦片是否在緩存,如果在直接返回,否則,向服務(wù)器發(fā)出請(qǐng)求,并采用算法更新數(shù)組,用請(qǐng)求到的最新瓦片替換最近使用次數(shù)最少的瓦片。
如圖2所示,本發(fā)明實(shí)施例提供的基于地球呈現(xiàn)的數(shù)據(jù)分析系統(tǒng),所述基于地球呈現(xiàn)的數(shù)據(jù)分析系統(tǒng)包括:
客戶端1,用于負(fù)責(zé)譯見(jiàn)三維虛擬地球系統(tǒng)基礎(chǔ)網(wǎng)格的構(gòu)建,可視瓦片的請(qǐng)求和渲染以及各類(lèi)媒體數(shù)據(jù)人機(jī)交互;
應(yīng)用層2,用于實(shí)現(xiàn)GIS的應(yīng)用服務(wù),還用于譯見(jiàn)地球空間量算分析和空間查詢,譯見(jiàn)緩存;
數(shù)據(jù)服務(wù)層3,用于負(fù)責(zé)三維虛擬地球中影像、地形和三維模型等空間數(shù)據(jù)的組織和管理。
進(jìn)一步,所述客戶端包括:
所述應(yīng)用層包括:用于實(shí)現(xiàn)GIS的應(yīng)用服務(wù)的GIS的應(yīng)用服務(wù)器;
譯見(jiàn)地球空間量算分析的譯見(jiàn)地球空間量算模塊;
空間查詢的譯見(jiàn)空間查詢模塊;
譯見(jiàn)緩存的服務(wù)器緩存模塊;
所述數(shù)據(jù)服務(wù)層包括:
服務(wù)器;
影像瓦片數(shù)據(jù)模塊;
地形瓦片數(shù)據(jù)模塊;
金字塔結(jié)構(gòu)數(shù)據(jù)模型。
下面結(jié)合具體實(shí)施例對(duì)本發(fā)明的應(yīng)用原理作進(jìn)一步描述。
1、Web GL的三維虛擬地球繪制。
基于WebGL的譯見(jiàn)三維地球體的繪制主要分為3個(gè)步驟:
1)三維球體輪廓的渲染。三維球體輪廓的渲染被封裝在基于WebGL的框架內(nèi),在頁(yè)面中使用scripts標(biāo)簽引入框架的javaScript文件,使用框架中定義的接口在瀏覽器上渲染出三維地球。
2)可視區(qū)域的確定,傳統(tǒng)的做法是通過(guò)將視景體與地球模型求交完成可視區(qū)域的計(jì)算,本發(fā)明的分析方法在此基礎(chǔ)上將其簡(jiǎn)化,對(duì)經(jīng)過(guò)視點(diǎn)與視窗中心的直線與地球模型求交,以交點(diǎn)為中心的一個(gè)正方形即是可視區(qū)域,正方形的邊長(zhǎng)由交點(diǎn)的經(jīng)緯度與當(dāng)前層數(shù)的分辨率共同確定。
3)可視瓦片的選取,確定了可視區(qū)域后,根據(jù)當(dāng)前視點(diǎn)相對(duì)與地球模型的位置確定一個(gè)最高分辨率,然后從最低分辨率一級(jí)開(kāi)始,按照四叉樹(shù)的方式對(duì)當(dāng)前曾的可視瓦片逐級(jí)往上刨分,直接選出可視瓦片列表
2、Java Script的內(nèi)存管理。
當(dāng)訪問(wèn)譯見(jiàn)3d地球首頁(yè)用戶網(wǎng)速較慢或者瓦片數(shù)據(jù)沒(méi)有下載完成而需要查看其它區(qū)域的信息時(shí),程序應(yīng)該能夠立即終止瓦片的下載,重新計(jì)算下載,這就是異步訪問(wèn)機(jī)制,在JavaScript中,如數(shù)據(jù)庫(kù)事物、文件下載等耗時(shí)的異步操作通常被封裝在JQuery.j框架中。當(dāng)服務(wù)器收到客戶端的數(shù)據(jù)請(qǐng)求后,由jquery.ajax()執(zhí)行異步http請(qǐng)求,調(diào)用query.load()從服務(wù)器加載數(shù)據(jù)并返回指定的元素中,無(wú)論數(shù)據(jù)是否加載完成,都取消加載并釋放內(nèi)存。
3、Web端瓦片四叉樹(shù)調(diào)用過(guò)程中的緩存管理。
譯見(jiàn)3d地球基于WebGL的三維虛擬地球系統(tǒng)在構(gòu)建過(guò)程中用到的瓦片具有數(shù)據(jù)文件多,數(shù)據(jù)量大的特點(diǎn),如何根據(jù)客戶端的請(qǐng)求快速返回所需的瓦片將直接關(guān)系到系統(tǒng)的運(yùn)行效率。
本發(fā)明提出的緩存方法具體步驟是:設(shè)定一個(gè)定長(zhǎng)的對(duì)象數(shù)據(jù)存儲(chǔ)服務(wù)器根據(jù)請(qǐng)求返回到客戶端瓦片時(shí),首先檢查請(qǐng)求的瓦片是否在緩存,如果在直接返回,否則,向服務(wù)器發(fā)出請(qǐng)求,并采用算法更新數(shù)組,用請(qǐng)求到的最新瓦片替換最近使用次數(shù)最少的瓦片。
本發(fā)明為了實(shí)現(xiàn)譯見(jiàn)3d地球B/S模式下基于WebGL三維虛擬地球系統(tǒng),使用JavaScript語(yǔ)言進(jìn)行編程實(shí)現(xiàn),程序的調(diào)試借助已開(kāi)啟WebGL功能的Google Chrome瀏覽器,實(shí)驗(yàn)數(shù)據(jù)以四叉樹(shù)結(jié)構(gòu)存放在部署于譯見(jiàn)生產(chǎn)環(huán)境中的HTTP Server上,數(shù)據(jù)采用譯見(jiàn)新聞媒體真實(shí)數(shù)據(jù)進(jìn)行建模分析,在3d地球上進(jìn)行布點(diǎn)和分類(lèi)統(tǒng)計(jì)分析。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。