999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Oracle SDO_PC的點云數據存儲管理技術的應用研究

2015-12-26 06:15:00尚曉娟,姜福泉,張帆
測繪通報 2015年4期
關鍵詞:存儲

引文格式: 尚曉娟,姜福泉,張帆,等. 基于OracleSDO_PC的點云數據存儲管理技術的應用研究[J].測繪通報,2015(4):57-60.DOI:10.13474/j.cnki.11-2246.2014.0502

基于OracleSDO_PC的點云數據存儲管理技術的應用研究

尚曉娟1,姜福泉2,張帆1,黃先鋒1

(1. 武漢大學測繪遙感信息工程國家重點實驗室,湖北 武漢 430079;

2. 中國地質大學(武漢)信息工程學院,湖北 武漢 430074)

ApplicationResearchonPointCloudDataMemoryManagementTechnique

BasedonOracleSDO_PC

SHANGXiaojuan,JIANGFuquan,ZHANGFan,HUANGXianfeng

摘要:基于Oracle SDO_PC的存儲模型和功能結構研究點云的數據庫導入、存儲、檢索等操作,并針對不同的點云數據量、點云類型、存儲分塊大小,以及多用戶并發情況,分別進行點云數據存儲和檢索效率的試驗對比。試驗結果表明,SDO_PC模型可以勝任不同類型點云數據的存儲、檢索工作,并具有良好的數據存儲可擴展能力和高效的多用戶并發處理能力。本研究可為后續海量點云數據存儲管理及應用、服務提供有價值的參考。

關鍵詞:SDO_PC;點云數據;存儲;檢索;多用戶并發

中圖分類號:P208

收稿日期:2014-02-25

基金項目:973計劃(2011CB707001);國家自然科學基金(41071291;41001308);Oracle空間數據庫新技術研究;國家科技支撐計劃(2012BAH43F00)

作者簡介:尚曉娟(1988—),女,碩士生,主要研究方向為攝影測量、激光掃描數據分析處理等。E-mail:shangxiaojuan@whu.edu.cn

一、引言

近十幾年來,激光掃描點云數據作為一種描述空間對象的重要數據源,已經受到國內外學者和工業應用的廣泛關注,并在三維建模、文物修復、地物提取等方面得到廣泛應用[1-2]。然而,激光掃描點云數據的“海量性”給點云數據的后處理帶來很大困難,已經成為限制點云在存儲、管理、查詢、分析、可視化等多方面應用的瓶頸。

目前,點云數據的組織與管理多采用文件形式的數據管理方案,但文件管理點云數據的方法尚存在許多不足之處,如信息共享不便、安全級別較低、并發訪問難等。OracleSpatial作為領先的空間數據庫管理平臺,在管理空間數據方面具有保證數據的完整性、可恢復性和安全性等基本特性。OracleSpatial從11g開始推出了專門用于點云數據組織與管理的SDO_PC數據類型,針對點云數據的特點擴展了存儲對象創建、查詢、可視化等多方面的功能[3]。

本文針對SDO_PC的存儲模型和功能結構,研究了Oracle數據庫的點云數據導入、創建存儲對象和檢索點云數據的操作。為了測試SDO_PC在點云數據存儲管理方面的性能,本文分別設計了在不同數據量的點云數據、不同類型的點云、存儲過程中不同的分塊,以及多用戶并發等不同情況下,進行點云數據存儲和檢索的效率測試試驗。從而驗證Oracle的SDO_PC技術在點云數據管理方面的性能,為日益廣泛開展與海量點云數據管理、處理有關的工程應用和科研提供實驗參考。

二、SDO_PC簡介

SDO_PC是Oracle數據庫的一種對象關系數據模型,是存取管理點云數據信息的基礎,提供了存取、索引、查詢、分析點云數據的能力,同時提供了并發訪問和安全控制等機制,并將相關函數集成在一起[4]。

1.SDO_PC點云數據存儲模型

圖1顯示了在Oracle中使用SDO_PC類型表示點云的存儲體系結構。基表具有數據類型為SDO_PC的列,這個列存儲與點云相關的元數據。點云被分成多個子集,并存儲為塊表的多行。塊表同時記錄了分塊的其他屬性,如分塊的范圍、分塊中點的數目、分塊點云的分辨率范圍等。塊表中的每個分塊都唯一關聯到一個pc元數據對象上,同時每個pc對象記錄了對應塊表的屬性信息,如塊表名稱、塊表的范圍、分塊的大小等。

點云數據采用上述存儲模型具有如下優點:①存儲點云的數據量沒有上限,因為表的行數沒有限制;②通過指定窗口或指定塊(BLK_ID)有效選擇點云的子集;③支持刪除或更新指定范圍的點云數據。

圖1 Oracle 中點云的可伸縮存儲框架

2.SDO_PC相關功能介紹

OracleSpatial為實現快速、高效地存取、分析空間數據而將相關功能函數及其過程完全集成在數據庫服務器內,并為數據庫管理系統管理空間數據提供了完全開放的體系結構[5]。用戶通過SQL定義和操縱空間數據,可以訪問對象關系數據模型的存取、檢索、分析等功能。表1 為集成在Oracle數據庫內部的SDO_PC相關功能。

表1  SDO_PC_PKG

三、Oracle數據庫中點云數據的關鍵操作

1. 點云數據的數據庫導入

LAS文件為存儲點云數據的常用數據格式。目前有兩種方法可以實現點云數據LAS文件的Oracle數據庫導入,分別是libLAS[6]和PDAL[7]。

筆者仿照libLAS的LAS文件讀取方式讀取點云數據,使用OCCI[8]接口將點云數據插入到Oracle數據庫中,根據要存儲的點云屬性創建Inputtable來存儲點云坐標和屬性信息。LAS文件導入為Oracle數據庫表結構如圖2所示。

圖2 LAS文件導入為Oracle數據庫示意圖

2. 創建SDO_PC存儲對象

在Oracle數據庫中,創建SDO_PC存儲對象的實質是基于點云數據構建R-tree索引[9]。導入到輸入表(InpTable)的點云數據最終按照R-tree索引的原理被分塊存儲到塊表的多行。Oracle數據庫基于點云數據構建R-tree索引的程序被集成在Oracle數據庫服務器的SDO_PC_PKG.INIT函數和SDO_PC_PKG.CREATE_PC函數中。

3. 點云數據的檢索

Oracle數據庫提供了兩種檢索點云數據的方法,窗口查詢和基于分辨率的查詢[10]。兩者相比而言,窗口查詢的檢索結果更加精準。筆者主要針對窗口查詢進行了試驗。查詢過程包括兩個階段:①檢索與所給窗口范圍相交的候選分塊;②檢索候選分塊中與檢索窗口范圍相交的所有點。該過程被集成在Oracle數據庫服務器的SDO_PC_PKG.CLIP_PC函數中。

四、試驗測試及分析

為驗證OracleSDO_PC的點云數據存儲、檢索、多用戶并發等功能的可行性,筆者進行了大量的測試試驗。試驗硬件環境:2個Intel至強3.2GHz處理器,8GB內存,1TB硬盤,NTFS分區。軟件環境:64位Windows7操作系統,VC++2010編輯器,Oracle11gR2。

試驗數據來源于敦煌973數字文化遺產項目的機載掃描數據。掃描區域大致位于北緯40.04°、東經94.81°的敦煌莫高窟附近的沙漠區域,數據采集的儀器為LeicaALS50Ⅱ,點云數據格式為LAS1.0,點云數據的點間距為0.4m,數據量為347GB。

1. 基于SDO_PC的點云數據存儲與檢索

為驗證Oracle數據庫對點云數據存儲的可擴展性,試驗挑選了同一測區6組不同數據量的點云數據,從100萬到3700萬不等。將其逐個導入到數據庫中,并記錄存儲時間。6組數據導入完成后,利用窗口查詢進行檢索試驗,并記錄檢索與存儲范圍同樣大小的檢索時間,用吞吐量衡量所用服務器的I/O效率。試驗結果見表2。

表2 點云數據的存儲和檢索時間

從表2可以看出,Oracle數據庫可以實現點云數據的導入,并表現出存儲點云數據的可擴展性。另外,隨著點云數據量的增多,點云的存儲時間和檢索時間都在增大,但是檢索時間卻遠遠小于存儲時間,這種情況同樣體現在點云存儲和查詢的服務器I/O效率上,點云存儲I/O效率是1.3~1.4萬點/s,點云查詢的I/O效率在25萬點/s左右。原因在于基于點云數據構建R-tree索引的過程遠遠復雜于R-tree的檢索過程,并且數據量越大,R-tree索引的構建就越復雜。但是正由于R-tree索引的建立,才大大提高了點云數據的檢索效率,方便了點云數據的后續處理。

2. 點云類型不同對數據存儲和檢索的影響

為測試點云類型不同對Oracle的點云數據存儲和檢索的影響,本文選了3組不同類型的點云數據進行存儲和檢索試驗。試驗數據情況和試驗結果見表3。

表3 不同類型點云數據的 Oracle存儲和檢索

從表3可以看出,Oracle對不同類型的點云都可以實現無差別的存儲和檢索功能,而影響存儲和檢索效率的主要因素在于點云的密度,也即表3中所列的點間距。點間距越大,密度越小,點云分布越稀疏,創建R-tree索引的時間就越短。機載點云和地面點云相比,點云的數據量相差不大,但是由于機載點云的點間距遠大于地面點云,因此即使在機載點云數據量大的情況下,機載點云的存儲時間較短,檢索時間也較短。地面點云和車載點云相比,有相同的點間距,車載點云比地面點云的數據量大,相應地,存儲時間較長,檢索時間也較長。因而,Oracle對點云數據的存儲和檢索不受點云類型不同的影響,同樣數據量的點云數據的存儲和檢索效率與點云的分布密度成反比,密度越大則效率越低,反之則越高。

3. 分塊大小對點云數據存儲與檢索的影響

blk_capacity是決定SDO_PC存儲對象分塊大小的一個關鍵參數,在函數SDO_PC_PKG.INIT的ptn_params參數中設置,一般設置如 "blk_capacity=100"。下面通過試驗來分析blk_capacity取值不同對創建SDO_PC存儲對象和窗口查詢的影響。試驗選用了數據量為12571243的LAS點云數據,進行了4組試驗,分別給blk_capacity取值5000、10000、50000和100000(Oracle數據庫中限制該參數上限為十萬)。為了確保試驗中blk_capacity為唯一變量,選用該組數據進行重復試驗。在blk_capacity取值不同的情況下,每次導入該組數據后及時記錄存儲時間,然后用同樣大小的窗口去查詢點云數據并記錄檢索時間,最后刪除所導入的數據進行下組試驗。為避免緩存影響試驗的真實性,每次試驗前都清理緩存。試驗結果如圖3所示。

圖3 blk_capacity取值不同對創建SDO_PC存儲對象和窗口查詢的影響

由圖3可知,分塊越小,創建SDO_PC存儲對象的時間就越長。說明分塊越小,對于同樣數據量的點云數據,R-tree的結點越多,層級越深,插入就越復雜。對于查詢而言,查詢的時間隨著分塊的增大先減小后增大。這是由于在分塊大的情況下,雖然可以通過R-tree索引很快找到相關的候選分塊,但是由于分塊過大,當查找窗口邊緣分塊中包含在窗口中的點時,花費的時間就會增長。不過,在分塊太小的情況下,R-tree層級增加,導致查詢變慢,同時需要更多的塊內檢索操作,導致時間變長。因此,為了均衡點云數據存儲和檢索的效率,應該結合點云的數據量為分塊大小選擇合理的取值,該值的選擇由多次導入、檢索的經驗所得,目前無法準確給出參考標準。

4. 多用戶并發在點云窗口查詢方面的應用

Oracle數據庫內部提供并發處理的功能。為了測試Oracle數據庫在點云數據方面的并發性能,筆者進行了點云數據多用戶并發窗口查詢的試驗。試驗選取了兩個相鄰條帶的機載激光LAS點云數據,數據量分別為46526014和46515286,重疊率為50%。為了保證試驗結果不受緩存的影響,每個多用戶試驗前都清理緩存。

試驗過程描述如下:單用戶窗口查詢的范圍是兩個條帶數據的整體范圍;2個用戶的窗口查詢范圍是將單用戶窗口范圍平分;4個用戶的窗口查詢范圍則將單用戶窗口范圍4等份;8用戶、16用戶、32用戶則依次類推。每個窗口查詢的過程由一個BAT文件編寫完成,并發的試驗由BAT文件同時運行實現,同時運行的BAT文件的個數就相當于多用戶并發的個數。試驗結果用吞吐量來評價,見表4。

表4 點云窗口查詢多用戶并發

由表4可以得到,隨著并發數的增多,吞吐量逐漸增大,但是當吞吐量達到某個值時,即使并發數仍在增加,吞吐量也只在該值附近上下浮動。這個值的大小與CPU的配置有關。在高配的CPU情況下,能得到更好的結果。總而言之,在并發的用戶量增多的情況下,CPU的使用效率變高,計算機的吞吐量增大。

五、結束語

針對OracleSDO_PC在組織管理點云數據方面的優勢,本文進行了大量的測試對比試驗。試驗表明,OracleSDO_PC數據類型的使用,為存儲大點集云數據提供了一個可伸縮的平臺,很好地解決了大點集云數據存儲查詢問題,并具有多用戶并發處理的功能,可以成為海量點云存儲管理的工具。不過,由于基于大點集云數據構建R-tree空間索引的復雜性,導致Oracle數據庫的點云數據組織的效率有待提高。另外,本文的研究為海量點云數據的后處理、分析及應用提供了有價值的參考。

參考文獻:

[1]黃先鋒.機載LiDAR點云數據的建筑物重建研究[D].武漢:武漢大學,2006.

[2]張帆, 黃先鋒, 李德仁. 激光掃描與光學影像數據配準的研究進展[J]. 測繪通報, 2008(2): 7-10.

[3]ABRAMSONI.OracleDatabase11g:ABeginner’sGuide[M].[S.l.]:OraclePress, 2009.

[4]GODFRINDA.Oracle’sPointCloudDatatype[EB/OL].2011-11-04.http:∥www.ncg.knaw.nl/Studiedagen/09PointClouds/presentations/PointCloud_14_AlbertGodfrind.pdf.

[5]王云帆.OracleSpatial空間數據存儲管理技術的應用研究[J]. 測繪通報, 2011(6):76-79.

[6]BUTLERH,LOSKOTM,VACHONP,etal.LibLAS:ASPRSLASLiDARDataToolkit[EB/OL].2011-02-15.http:∥www.liblas.org/.

Abstract[7]HOWARD B, MICHAEL G. PDAL-Point Data ion Library [EB/OL].2013-12-31. http:∥www.pointcloud.org/.

[8]LEYDERMANR.OracleC++CallInterfaceProgrammer’sGuide[M].[S.l.]:OraclePress, 2005.

[9]GONGJ,ZHUQ,ZHONGR,etal.AnEfficientPointCloudManagementMethodBasedona3DR-Tree[J].PhotogrammetricEngineeringandRemoteSensing, 2012, 78(4): 373-381.

[10]RAVADAS,HORHAMMERM,BARISMK.PointCloud:Storage,Loading,andVisualization[EB/OL].[2014-02-25].http:∥www.cigi.illinois.edu/cybergis/docs/Kazar_Position_Paper.pdf.

猜你喜歡
存儲
檔案管理中電子文件的存儲探究
條形碼技術在涂裝生產中的應用
云計算與虛擬化
結構化電子病歷的設計及應用
淺敘國產存儲技術之發展
某醫院數據中心虛擬化的設計與實現
煙臺新型自動氣象站數據本地存儲的設計及實現
關于SQL語言及存儲過程
大型機電設備出口包裝防護
基于Hadoop的業務過程模型管理方法研究
主站蜘蛛池模板: 日本免费a视频| 婷婷亚洲最大| 国产主播福利在线观看| 青草国产在线视频| 黄色网址免费在线| 再看日本中文字幕在线观看| 午夜小视频在线| 国产香蕉97碰碰视频VA碰碰看| 亚洲无限乱码一二三四区| 久久黄色一级视频| 午夜欧美理论2019理论| 亚洲熟女偷拍| 香蕉国产精品视频| 国产无码精品在线播放| 伊人久综合| 青草午夜精品视频在线观看| 欧美成人一区午夜福利在线| 国产精品亚洲片在线va| 五月婷婷伊人网| 福利在线不卡| 国产农村妇女精品一二区| 国产一级精品毛片基地| 亚洲无线观看| 亚洲精品男人天堂| 视频国产精品丝袜第一页| 一级爆乳无码av| 丰满的少妇人妻无码区| 日韩第一页在线| 亚洲成综合人影院在院播放| 国产人免费人成免费视频| 亚洲天堂成人| 久久无码免费束人妻| 婷婷综合在线观看丁香| 国产精品粉嫩| 97久久人人超碰国产精品| 中文字幕欧美成人免费| 国产精品久久久久无码网站| 国产女人18毛片水真多1| 国产在线视频导航| 四虎影视国产精品| 久久国产精品娇妻素人| 88国产经典欧美一区二区三区| 99青青青精品视频在线| 欧洲成人在线观看| 精品午夜国产福利观看| 国产迷奸在线看| 久久福利网| 777国产精品永久免费观看| 国产精品自在在线午夜区app| www精品久久| 国产天天色| 18禁色诱爆乳网站| 日本久久网站| 中文字幕在线永久在线视频2020| 日韩a在线观看免费观看| 素人激情视频福利| 国内a级毛片| 青青草国产一区二区三区| 青青草国产在线视频| 国内丰满少妇猛烈精品播| 波多野结衣视频一区二区| 欧美午夜久久| 国产精品30p| 亚洲午夜天堂| 久久香蕉欧美精品| 国产在线精品香蕉麻豆| 亚洲日韩AV无码精品| 亚洲中文字幕在线观看| 为你提供最新久久精品久久综合| 中文成人在线视频| 伊人国产无码高清视频| 欧美日韩成人在线观看| 色综合a怡红院怡红院首页| 国产精品精品视频| 欧美区一区二区三| 亚洲综合天堂网| 久久久久亚洲AV成人人电影软件| 毛片网站免费在线观看| 国产一区二区在线视频观看| 午夜欧美在线| 日韩毛片免费视频| 色综合久久88色综合天天提莫|