本發明專利技術針對大規模地形數據量大、應用背景復雜的問題,提出一種基于小波自反饋的大規模地形數據壓縮和解壓方法,該方法根據速度優先和壓縮比優先算法進行壓縮參數自適應調整,在地形分塊處理過程中,使用平滑算法解決了邊界連續和陡變問題,對于平坦、中等崎嶇、高度崎嶇的DEM地形數據,本發明專利技術分別取得4940倍、1240倍和620倍左右的壓縮比。同時,本發明專利技術基于CUDA技術對地形解壓算法進行了加速,與傳統基于CPU的方法相比,極大提高了運算效率,可更好的滿足三維地形繪制等實時應用的需要。
【技術實現步驟摘要】
本專利技術涉及基于小波自反饋的大規模地形數據壓縮和解壓方法。
技術介紹
三維地形可視化在軍事仿真、三維游戲、城市規劃、數字地球等領域有著廣泛的應用。受計算機內存容量的限制,隨著地形規模的増大,需要的存儲容量也相應增加。大規模地形由于數據量很大,且應用背景比較復雜,在當前計算機硬件條件下,所需的地形數據往往無法全部載入內存。而且,由于網絡帶寬的限制,很多需要快速傳遞地理信息的網絡化服務(如防汛、交通等)很難及時完成。戰場仿真和三維游戲對地形數據的讀取則更為頻繁,因而針對大規模地形數據的數據查詢和處理效率在這些應用中會受到極大的限制。因此,在內存有限的情況下,如何使載入內存的數據包含更多的地形信息成為虛擬仿真領域ー個研究方向,而DEM數據壓縮技術則是解決該問題的重要方法之一。隨著小波變換在圖像領域的應用日益廣泛,利用小波變換對地形數據壓縮取了得若干成果,但普遍存在壓縮參數選擇困難、數據還原效率低下等問題,并且目前的研究大都是在小規模地形上展開,而針對大規模地形壓縮技術的研究還相對欠缺。其中,羅永等在數字高程模型數據小波壓縮算法中討論了不同小波基對壓縮性能的影響,如提升9-7整數小波、CDF97小波在保持地形形狀和起伏特征的前提下對DEM數據最大有4096倍的壓縮比。但該方法將所有的地形高程值量均化到0-255范圍內,若地形的采樣精度很高,該方法會丟失很多的細節。此外,該方法沒有說明如何根據地形的變化幅度來動態選擇壓縮參數。崔寶俠等設計的基于小波的數字高程模型壓縮方法,提出了最優標量量化器,可使用該量化器對小波變換后的數據進行自動選擇參數量化。但因為其采用簡單的游程編碼,壓縮比并不高,僅具有30倍左右壓縮比。李毅等人在2009年提出了基于SPIHT小波的DEM自適應壓縮方法,并設計了ー種度量地形復雜度的方法,可根據計算出的復雜度對地形的壓縮參數進行選擇。該方法具有一定的自適應性,但無法精確控制圖形的信噪比、壓縮比、解壓縮的效率等參數。
技術實現思路
本專利技術的技術解決問題是解決了大規模地形數據壓縮無法對參數進行自適應選擇的問題,并借助基于CUDA的小波變換并行計算解決了壓縮算法效率低下的問題,本專利技術 的壓縮結果同時具有較大的壓縮比和較高的還原效率。本專利技術所采用的技術方案為一種基于小波自反饋的大規模地形數據壓縮和解壓方法,該方法包括如下步驟步驟(I)、大規模地形由于數據量大,很難一次載入內存,對大規模地形數據進行分塊預處理,并利用速度優先算法和壓縮比優先算法實現了編碼過程中對最佳參數的自動選擇;步驟(2)、對地形中的每ー個分塊,基于小波自反饋的地形數據壓縮處理方法來對其進行壓縮編碼,采用的具有線性相位的雙正交9/7小波(CDF97)作為濾波器,具體計算過程中將ニ維小波變換分解為兩次一維離散小波變換來加速計算,即首先將分塊后的地形數據和h進行卷積,抽取偶數項,排列作為低頻數據;然后將信號和g卷積,抽取奇數項,排列為高頻數據;步驟(3)、由于地形數據的解壓縮效率會嚴重影響到三維地形的實時繪制效率,基于CUDA的小波逆變換方法來加速解壓處理在CUDA架構下,多個并行的thread可以組成一個block,處于同一個block中的thread可共享同一塊內存,從而可以進行快速的同步處理,但由于共享內存存儲量有限,且只能被ー個block中的threads讀取,根據CUDA的特點利用專門的數據組織結構來保證算法對中間數據訪問的效率;步驟(4)、通過在分塊邊界處計算平均高程值的辦法來對邊界數據進行一致性平滑處理,解決了因為基于小波自反饋的地形數據壓縮處理為有損壓縮,且分塊壓縮時由于分塊地形在塊和塊之間缺乏聯系,從而解壓后會在分塊邊界處出現數據不一致、過渡不連續的問題。 其中,步驟(I)中所述的速度優先算法(Speed First Algorithm)將期望峰值信噪比、期望像素深度作為比較基準,使得還原后的高程圖像滿足峰值信噪比高于Epsnr,而每個像素所需要的位數接近Ebpp的要求;壓縮比優先算法是在給定期望峰值信噪比Epsnr和小波變換層數Elevel的情況下,自動選擇壓縮參數bpp,使得還原后的高程圖像和原始高程圖像的峰值信噪比高于Epsnr,并且具有最高的壓縮比。此外,步驟(3)中所述的基于CUDA的小波逆變換,分為基于CUDA的ー維小波逆變換和基于CUDA的ニ維小波逆變換。本專利技術的原理在于地形數據壓縮算法的基本思想是將地形高程值看作一張ニ維灰度圖,根據相鄰地形高程值數據具有連續性的特點,對該灰度圖進行小波變換,并用提取低頻數據的方法對頻域數據進行預處理,以實現高程數據的壓縮。壓縮算法的處理流程如圖I所示假設原始地形為ー個mXη的地形,保存在一個浮點型矩陣O中,矩陣O通過ー個量化器HQ將浮點類型的地形數據量化為整數,得到一個量化后的矩陣Q,矩陣Q通過小波變換系統HW將矩陣Q變換為矩陣W。變換需要選擇合適的小波基,主要負責將原數據分解為2個部分,即低頻平滑部分(LL)和高頻細節部分(LH、HL、HH)。其中,子帶數據LH、HL、HH分別對應于圖像的水平方向、垂直方向及對角線方向的邊緣和細節。這個分解過程可重復地用于LL部分的遞歸分解,重復分解的次數為level。經過變換的矩陣W通過編碼系統HC后便可得到壓縮后的序列A。參數bpp(bits per pixel)為姆個像素所占的比特數,該參數會直接影響壓縮比。對于地形數據來說,每個象素用ー個浮點數表示,占用32bit。當bpp=n時,壓縮比即為32/rubpp參數設置的越大,壓縮后還原的圖像與原始圖像的差別就越小。通常采用圖像處理中廣泛使用的峰值信噪比(PSNR)作為DEM數據的失真測度,來評價還原圖像和原始圖像的差另O。圖2給出了ー張原始地形灰度圖像和bpp=0. 026以及bpp=0. 013時還原后的圖像。從圖2中可以看出,對于較大的bpp,圖像的PSNR也較大,圖像失真較小。地形數據解壓算法的流程與壓縮算法相反根據參數bpp,壓縮數據A通過反編碼系統HC’生成小波矩陣ぎ,再通過小波逆變換系統服’生成Q’,最后根據Base值量化成還原數據O’。本專利技術與現有技術相比的優點在于(I)、針對傳統地形壓縮算法壓縮參數選擇困難問題,本專利技術設計了速度優先算法和壓縮比優先算法,實現了編碼過程中的對最佳參數的自動選擇;(2)、本專利技術設計了基于CUDA的小波逆變換方法,提高了解壓效率,可更好的滿足三維地形繪制等 實時應用的需要;(3)、傳統的大規模地形數據壓縮方法,在對分塊地形數據進行壓縮時,因塊和塊之間缺乏聯系會出現數據還原后邊界數據不一致、過渡不連續問題,本專利技術通過設計數據一致性處理方法,解決了這ー問題。附圖說明圖I壓縮算法系統示意圖;圖2原始地形和在不同bpp下的還原效果示意圖;其中,圖2(a)為原始圖像,圖2(b)中 bpp=0. 026,PSNR = 34. IdB,圖 2 中(c)bpp=0. 013 ;圖3邊界數據陡變和消除陡變示意圖;圖3(a)為邊界數據陡變問題示意圖;圖3(b)為消除邊界數據陡變后示意圖;圖4不同PSNR下還原地形和原始地形比較示意圖;圖4(a)為原始地形示意圖,圖 4 中(b)PSNR=35,bpp=0. I 時示意圖,圖 4(c)中 PSNR本文檔來自技高網...
【技術保護點】
一種基于小波自反饋的大規模地形數據壓縮和解壓方法,其特征在于:該方法包括如下步驟:步驟(1)、大規模地形由于數據量大,很難一次載入內存,對大規模地形數據進行分塊預處理,并針對速度優先算法和壓縮比優先算法實現了編碼過程中對最佳參數的自動選擇;步驟(2)、對地形中的每一個分塊,基于小波自反饋的地形數據壓縮處理方法來對其進行壓縮編碼,采用的具有線性相位的雙正交9/7小波(CDF97)作為濾波器,具體計算過程中將二維小波變換分解為兩次一維離散小波變換來加速計算,即首先將分塊后的地形數據和h進行卷積,抽取偶數項,排列作為低頻數據;然后將信號和g卷積,抽取奇數項,排列為高頻數據;步驟(3)、由于地形數據的解壓縮效率會嚴重影響到三維地形的實時繪制效率,基于CUDA的小波逆變換方法來加速解壓處理:在CUDA架構下,多個并行的thread可以組成一個block,處于同一個block中的thread可共享同一塊內存,從而可以進行快速的同步處理,但由于共享內存存儲量有限,且只能被一個block中的threads讀取,根據CUDA的特點提出專門的數據組織結構來保證算法對中間數據訪問的效率;步驟(4)、通過在分塊邊界處計算平均高程值的辦法來對邊界數據進行一致性平滑處理,解決了因為基于小波自反饋的地形數據壓縮處理為有損壓縮,且分塊壓縮時由于分塊地形在塊和塊之間缺乏聯系,從而解壓后會在分塊邊界處出現數據不一致、過渡不連續的問題。...
【技術特征摘要】
【專利技術屬性】
技術研發人員:李帥,劉勇敢,郝愛民,楊麗鵬,
申請(專利權)人:北京航空航天大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。