亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于MapReduce的瓦片金字塔并行構(gòu)建方法

文檔序號:6551646閱讀:340來源:國知局
一種基于MapReduce的瓦片金字塔并行構(gòu)建方法
【專利摘要】本發(fā)明提供了一種基于MapReduce的瓦片金字塔并行構(gòu)建方法,包括以下步驟:步驟10:采用最大分辨率影像作為金字塔底層;步驟20:對底層進(jìn)行分塊,并對分成的影像塊進(jìn)行編碼;步驟30:將步驟20中分塊編碼后的影像塊數(shù)據(jù)輸入到MapReduce模型中生成新一層的瓦片數(shù)據(jù);步驟40:依次將MapReduce模型每輪生成的新一層的瓦片數(shù)據(jù)作為下一輪MapReduce模型的輸入數(shù)據(jù),生成更上一層瓦片數(shù)據(jù),直到金字塔模型構(gòu)建結(jié)束。本發(fā)明不僅具有良好的可擴(kuò)展性,而且在計(jì)算機(jī)集群上并行構(gòu)建金字塔模型,針對海量數(shù)據(jù)具有更高的效率。
【專利說明】-種基于MapReduce的瓦片金字塔并行構(gòu)建方法

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種構(gòu)建瓦片金字塔的方法,特別涉及一種基于MapReduce的瓦片金 字塔并行構(gòu)建方法。

【背景技術(shù)】
[0002] 柵格數(shù)據(jù)是按網(wǎng)格單元的行與列排列、具有不同灰度或顏色的陣列數(shù)據(jù),一般作 為地圖的底層圖層加載,充當(dāng)GIS系統(tǒng)的背景圖像。為了縮短GIS服務(wù)器數(shù)據(jù)訪問時間,同 時解決多分辨率的問題,通常將柵格數(shù)據(jù)按不同分辨率和縮放等級進(jìn)行瓦片分塊,構(gòu)造瓦 片金字塔,分塊所得的影像塊叫做原圖像的一塊"瓦片"。金字塔模型是一種靜態(tài)多分辨率 層次模型,它以地理信息的冗余存儲為代價,以換取GIS平臺更快的響應(yīng)速度。金字塔模型 直接提供不同分辨率的數(shù)據(jù)而無需進(jìn)行實(shí)時重采樣,這樣客戶端在請求柵格數(shù)據(jù)時,服務(wù) 器端提供能滿足其顯示需求的部分瓦片,而不是傳輸整個的全景圖像,從而避免大量不需 關(guān)注的要素的加載、傳輸和渲染,大大減輕客戶端渲染模塊的壓力,降低網(wǎng)絡(luò)帶寬的負(fù)載, 從而提商系統(tǒng)整體的效率。
[0003] 目前多分辨率金字塔(multi-resolution pyramid)己成為處理大數(shù)據(jù)量柵格數(shù) 據(jù)集的常規(guī)辦法。多分辨率金字塔層層之間保持固定的分辨率比,通常是2:1,同層數(shù)據(jù)采 用相等大小的瓦片進(jìn)行分割。著名的Google Earth就是采用了多分辨金字塔的形式來存 儲它的海量遙感影像,因簡單快捷的操作和快速的網(wǎng)絡(luò)瀏覽顯示而得到大眾用戶的支持。 NASA的World Wind, Microsoft的Virtual Earth等也米用的是這種方式。
[0004] 隨著空間信息基礎(chǔ)設(shè)施建設(shè)和空間數(shù)據(jù)獲取技術(shù)的快速發(fā)展,空間數(shù)據(jù)規(guī)模越來 越大,柵格數(shù)據(jù)作為一種重要的空間數(shù)據(jù),正向著高分辨率的方向發(fā)展。高分辨率意味著大 數(shù)據(jù)量,對于同一地區(qū)不同分辨率的柵格影像數(shù)據(jù),分辨率越高數(shù)據(jù)量越大,兩者之間并 不是簡單的線性增加,而是呈指數(shù)倍增長。采用基于單機(jī)的傳統(tǒng)金字塔構(gòu)建算法為海量柵 格影像數(shù)據(jù)構(gòu)建金字塔,不僅時間長、效率低下,而且單一節(jié)點(diǎn)也容易成為限制瓶頸。


【發(fā)明內(nèi)容】

[0005] 發(fā)明目的:本發(fā)明的目的在于針對現(xiàn)有技術(shù)的不足,提供一種針對海量數(shù)據(jù)具有 更高效率的基于MapReduce的瓦片金字塔并行構(gòu)建方法。
[0006] 技術(shù)方案:本發(fā)明提供了一種基于MapReduce的瓦片金字塔并行構(gòu)建方法,包括 以下步驟:
[0007] 步驟10 :采用最大分辨率影像作為金字塔底層;
[0008] 步驟20 :對底層進(jìn)行分塊,并對分成的影像塊進(jìn)行編碼;
[0009] 步驟30 :將步驟20中分塊編碼后的影像塊數(shù)據(jù)輸入到MapReduce模型中生成新 一層的瓦片數(shù)據(jù);
[0010] 步驟40 :依次將MapReduce模型每輪生成的新一層的瓦片數(shù)據(jù)作為下一輪 MapReduce模型的輸入數(shù)據(jù),生成更上一層瓦片數(shù)據(jù),直到金字塔模型構(gòu)建結(jié)束。
[0011] 進(jìn)一步,所述步驟20中的分塊方法為:四叉樹的切分方式對影像進(jìn)行分塊。采用 這種切分方式便于使用四叉樹索引進(jìn)行快速定位。
[0012] 進(jìn)一步,所述步驟20中的編碼方法為:采用基于網(wǎng)格和Hilbert編碼的方式對分 塊成的影像瓦片進(jìn)行編碼;所述每個影像瓦片的編號由縮放等級Z、Hilbert編碼、瓦片列 號和瓦片行號組成?;诰W(wǎng)格的編碼能根據(jù)給定坐標(biāo)范圍方便快速地計(jì)算出對應(yīng)的瓦片文 件;而Hilbert編碼具有很好的聚類效果,當(dāng)Hilbert排列碼相鄰或相近,其對應(yīng)的空間目 標(biāo)也一定相鄰或相近時,基于Hilbert編碼對影像瓦片進(jìn)行存儲,能使剖分后影像瓦片文 件保持一定的聚集能力。
[0013] 更進(jìn)一步,所述每層瓦片數(shù)據(jù)生成的方法為:
[0014] 步驟401 :所在層的每個影像瓦片文件Z_H_C_R. dat通過Map函數(shù)產(chǎn)生一系列鍵 值對Key_>Value,其中key為上一層父影像瓦片編碼,由本層瓦片文件的縮放等級減1、 Hilbert號除以4取整、行、列號分別除以2取整獲得;value由文件編號i和瓦片文件組成; 其中文件編號i用于確定影像瓦片拼接時的相對位置,文件編號i是將影像瓦片文件行、列 號除以2取余后,將獲得的二維坐標(biāo)(R% 2,C% 2)通過公式(2X (R% 2)+C% 2)計(jì)算轉(zhuǎn)化 而得;其中R表示影像瓦片行號,C表示影像瓦片列號;
[0015] 步驟402:相同鍵值Key的影像瓦片數(shù)據(jù)會被發(fā)送到同一個歸約函數(shù)(下文簡 稱Reduce函數(shù)),Reduce函數(shù)首先根據(jù)i值將List列表中的瓦片文件升序排列,然后 將排序后的文件按照左下、左上、右下、右下的位置關(guān)系進(jìn)行拼接歸并,得到一個以鍵值命 名的新影像瓦片文件;新一層的影像瓦片文件全部生成后,新的影像瓦片層數(shù)據(jù)又作為 MapReduce的輸入數(shù)據(jù)生成更上一層影像瓦片數(shù)據(jù),直到金字塔模型構(gòu)建結(jié)束。
[0016] 工作原理:本發(fā)明將輸入的大規(guī)模影像數(shù)據(jù)先進(jìn)行分組,然后可以將針對特定層 的抽取任務(wù)通過Map的方式分配到各個數(shù)據(jù)節(jié)點(diǎn)上執(zhí)行,在這個過程中系統(tǒng)會有數(shù)據(jù)和計(jì) 算遷移的動作,在數(shù)據(jù)節(jié)點(diǎn)處理完成后調(diào)用Reduce函數(shù)把每個數(shù)據(jù)節(jié)點(diǎn)分別計(jì)算歸并,最 終得到分辨率小一級的影像,以從底層到上層的順序依次抽取必要的層,直到得到整個金 字塔模型建完為止。
[0017] 有益效果:與現(xiàn)有技術(shù)相比,本發(fā)明具有良好的可擴(kuò)展性,該金字塔并行構(gòu)建方法 基于MapReduce并行計(jì)算模式,在運(yùn)行時能夠方便地對硬件基礎(chǔ)設(shè)施進(jìn)行調(diào)整,如增加或 減少節(jié)點(diǎn)數(shù)量,對硬盤進(jìn)行調(diào)整等。同時,在計(jì)算機(jī)集群上并行構(gòu)建金字塔模型,針對海量 數(shù)據(jù)具有更高的效率;單機(jī)情況下集中式構(gòu)建影像金字塔只限于小范圍的少量數(shù)據(jù)且處理 緩慢,即便是磁盤容量能夠容納原始數(shù)據(jù),對于多時相、多數(shù)據(jù)源等大規(guī)模影像的處理效率 十分低。本發(fā)明基于瓦片之間的獨(dú)立性,在集群環(huán)境下,根據(jù)金字塔底層瓦片并行地生成上 層瓦片,充分利用集群的存儲資源與計(jì)算優(yōu)勢,特別對于構(gòu)造大區(qū)域(比如說全球范圍)、 大規(guī)模數(shù)據(jù)的瓦片金字塔模型更有優(yōu)勢。

【專利附圖】

【附圖說明】
[0018] 圖1為本發(fā)明的流程圖;
[0019] 圖2為瓦片金字塔模型的的結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0020] 下面對本發(fā)明技術(shù)方案進(jìn)行詳細(xì)說明,但是本發(fā)明的保護(hù)范圍不局限于所述實(shí)施 例。
[0021] 實(shí)施例:本專利中采用的MapReduce是Google在2004年提出的應(yīng)用于大規(guī)模集 群進(jìn)行數(shù)據(jù)處理的并行計(jì)算模型,也是目前云計(jì)算的核心計(jì)算模式。
[0022] 如圖1所示,一種基于MapReduce的瓦片金字塔并行構(gòu)建方法,包括以下步驟:
[0023] 步驟10 :采用最大分辨率影像作為金字塔底層;
[0024] 步驟20 :對底層進(jìn)行分塊,并對分成的影像塊進(jìn)行編碼;其中,采用四叉樹的切分 方式對影像進(jìn)行分塊。采用基于網(wǎng)格和Hilbert編碼的方式對分塊成的影像瓦片進(jìn)行編 碼;所述每個影像瓦片的編號由縮放等級Z、Hilbert編碼、瓦片列號和瓦片行號組成。
[0025] 步驟30 :將步驟20中分塊編碼后的影像塊數(shù)據(jù)輸入到MapReduce模型中生成新 一層的瓦片數(shù)據(jù);
[0026] 步驟40 :依次將MapReduce模型每輪生成的新一層的瓦片數(shù)據(jù)作為下一輪 MapReduce模型的輸入數(shù)據(jù),生成更上一層瓦片數(shù)據(jù),直到金字塔模型構(gòu)建結(jié)束。
[0027] 如圖2所示,瓦片金字塔的生成策略是:先把初始影像作為金字塔模型的N層,進(jìn) 行2NX 2N的分塊后就得到了底層的瓦片矩陣,然后以此為基礎(chǔ)按照每2 X 2個像素取均值得 到1個像素的規(guī)則得到第N-1層,再進(jìn)行2ΜΧ2Μ分塊后得到N-1層瓦片,以此類推,在前 一層的基礎(chǔ)上生成后一層,直至最終生成第〇層瓦片為止。
[0028] 由瓦片金字塔的構(gòu)建原理可知,金字塔上下層之間的垂直映射關(guān)系,下層四個影 像塊如果將hilbert編碼除以4取整、行列號分別除以2取整即可得到上層的父影像塊編 碼,基于這種映射關(guān)系,可以基于MapReduce實(shí)現(xiàn)金字塔模型的并行構(gòu)建。
[0029] Map和Reduce的輸入輸出參數(shù)如表1所示,其中Z代表縮放等級、Η代表Hilbert 編碼、C代表瓦片列號、R代表瓦片行號,Z_H_C_R. dat代表對應(yīng)的影像瓦片文件。
[0030] 表 1
[0031]

【權(quán)利要求】
1. 一種基于MapReduce的瓦片金字塔并行構(gòu)建方法,其特征在于:包括以下步驟: 步驟10 :采用最大分辨率影像作為金字塔底層; 步驟20 :對底層進(jìn)行分塊,并對分成的影像塊進(jìn)行編碼; 步驟30 :將步驟20中分塊編碼后的影像塊數(shù)據(jù)輸入到MapReduce模型中生成新一層 的瓦片數(shù)據(jù); 步驟40 :依次將MapReduce模型每輪生成的新一層的瓦片數(shù)據(jù)作為下一輪MapReduce 模型的輸入數(shù)據(jù),生成更上一層瓦片數(shù)據(jù),直到金字塔模型構(gòu)建結(jié)束。
2. 根據(jù)權(quán)利要求1所述的基于MapReduce的瓦片金字塔并行構(gòu)建方法,其特征在于: 所述步驟20中的分塊方法為:四叉樹的切分方式對影像進(jìn)行分塊。
3. 根據(jù)權(quán)利要求2所述的基于MapReduce的瓦片金字塔并行構(gòu)建方法,其特征在于: 所述步驟20中的編碼方法為:采用基于網(wǎng)格和Hilbert編碼的方式對分塊成的影像瓦片進(jìn) 行編碼;所述每個影像瓦片的編號由縮放等級Z、Hilbert編碼、瓦片列號和瓦片行號組成。
4. 根據(jù)權(quán)利要求3所述的基于MapReduce的瓦片金字塔并行構(gòu)建方法,其特征在于: 所述每層瓦片數(shù)據(jù)生成的方法為: 步驟401 :所在層的每個影像瓦片文件Z_H_C_R. dat通過Map函數(shù)產(chǎn)生一系列鍵值對 Key->Value,其中key為上一層父影像瓦片編碼,由本層瓦片文件的縮放等級減l、Hilbert 號除以4取整、行、列號分別除以2取整獲得;value由文件編號i和瓦片文件組成;其中文 件編號i用于確定影像瓦片拼接時的相對位置,文件編號i是將影像瓦片文件行、列號除以 2取余后,將獲得的二維坐標(biāo)(R% 2, C% 2)通過公式(2X (R% 2)+C% 2)計(jì)算轉(zhuǎn)化而得; 其中R表示影像瓦片行號,C表示影像瓦片列號; 步驟402 :相同鍵值Key的影像瓦片數(shù)據(jù)會被發(fā)送到同一個Reduce函數(shù),Reduce函數(shù) 首先根據(jù)i值將List列表中的瓦片文件升序排列,然后將排序后的文件按照左下、左上、右 下、右下的位置關(guān)系進(jìn)行拼接歸并,得到一個以鍵值命名的新影像瓦片文件;新一層的影像 瓦片文件全部生成后,新的影像瓦片層數(shù)據(jù)又作為MapReduce的輸入數(shù)據(jù)生成更上一層影 像瓦片數(shù)據(jù),直到金字塔模型構(gòu)建結(jié)束。
【文檔編號】G06T1/00GK104091301SQ201410305679
【公開日】2014年10月8日 申請日期:2014年6月30日 優(yōu)先權(quán)日:2014年6月30日
【發(fā)明者】吳克河, 崔文超, 王艷萍 申請人:江蘇華大天益電力科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1