前言:想要寫出一篇引人入勝的文章?我們特意為您整理了古建筑三維模型數據庫系統設計探究范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:古建筑作為研究經濟、文化、政治、科技發展的實物資料具有重要的價值,其三維數字化成果的留存是當前古建筑數字化保護的一個重要手段。針對古建筑數字化多源數據數據庫系統建設,本文設計了多源數據結構化和非結構數據庫存儲總體設計方案,并提出了古建筑基于不規則三角網、線框、表面和實體三維模型的數據關系表達方法與數據庫存儲結構,為古建筑數字化保護提供技術支持。
關鍵詞:古建筑;數據庫;三角網模型;線框模型;表面模型
1概述
古代建筑是中國古代辛勤勞動人民集體智慧的結晶。許多古代建筑都是文化考察與旅游的重要場所,它是研究我國古代經濟、文化、政治、科技發展的重要實物資料。中國古建筑不僅是現代建筑文化傳承、技術創新的重要借鑒,更是中華五千年文明發展的重要載體,同時也因其特有的藝術風格,在世界各國建筑風格中脫穎而出,成為一種獨特的建筑體系。然而伴隨著現代社會的快速發展、全球氣候日益變暖、極端天氣日益增多等多方面因素影響,許多具有高藝術價值的古建筑正面臨被人為或環境破壞的危險,而這些急需保護的古建筑,有些僅是擁有文字、圖片等不易反應古建筑真實樣貌的簡單資料,有些甚至有些沒有任何資料保存,僅有的那些資料也是在紙上以文字記載的形式進行記錄,沒有完整的數字形式的數據資料妥善保存,隨著時光的流逝他們很可能被損毀或丟失,一旦這些古建筑被破壞,無法得到有效的修復,可能將永遠消失于人類的視野中,這對于中華文明乃至世界文明都是不可彌補的巨大損失[1]。通過探索多元化的古建筑保護途徑,高效、直觀并且完整的保存古建筑各類數據信息已成為國內外古建筑保護單位急需解決的問題。傳統古建筑保護單位對于古建筑的數字化保護方式為擁有該古建筑的影像照片、尺寸大小等圖文資料,且這些資料均以文件型的存儲方式散亂的存儲于硬盤等各類存儲設備中。通過文字資料保存古建筑數據的方法比較抽象,無法真實的反應古建筑的樣貌,且數據量龐大,查找困難;利用影像照片存儲古建數據的方法雖然比較直觀形象,但很難達到古建筑修復時所需要的精度,無法滿足科學研究以及古建筑修復、重建的要求。并且古建筑數據信息以文件型的存儲方式存儲于各類存儲設備也面臨著數據冗余過大、查找困難、無法共享等一系列問題。針對古建筑數字化多源數據存儲的問題,建立基于數據庫存儲技術的古建筑數字化數據庫系統是當前研究的熱點。
2數據庫系統總體設計
古建筑數據庫后臺管理系統主要依托關系數據庫系統、分布式文件系統兩種關鍵技術,對古建筑三維點云、古建筑三維模型、古建筑構件、古建筑影像、電子檔案、屬性等數據進行管理。關系型數據系統采用Postgresql+postGIS方式,基于多分辨率金字塔中的關系模型構建二維行列關系表格,依托于SQL語言實現數據的查詢、更新、添加、刪除等處理操作。分布式文件系統主要通過非關系型HDFS文件系統存儲文件數據,支持存儲節點的動態增添、海量數據的讀寫、高并發訪問等。PostGIS數據庫子系統和HDGS分布式文件子系統來設計一個適于大規模空間數據的存儲與管理系統,其具體體現如下:
2.1對于點云、模型等基礎數據,構建分層分塊的多分辨率金字塔,從而方便數據的更新、重組與刪除。
2.2基于PostGIS關系型數據庫,實現多分辨率金字塔數據的快速索引、查詢、編輯等。
2.3基于HDFS(HadoopDistributedFileSystem)實現對大文件、松散型文件的處理以及分布式存儲,并將其作為數據的底層存儲系統。
2.4基于MapReduce并行編程模型,實現數據的并行處理。
2.5基于HBase分布式數據庫,實現非結構化數據的存儲管理(圖1)。古建筑數據庫管理系統將分為數據庫維護(權限管理和系統數據備份與恢復)數據管理通用模塊、點云數據存儲模塊、三維模型數據存儲與管理、古建筑構件[2~3]數據存儲與管理模塊、影像數據存儲與管理模塊、電子檔案數據存儲與管理模塊、屬性數據存儲與管理模塊等6大模塊。本子系統將提供上述的大文件、松散型文件處理,保存與提取,文件分布式存儲,支持高效的局部更新和全局更新,數據檢查、入庫和,數據并行處理6個工具分別對應這9個模塊(圖2)。根據業務需求可以將子系統的各種功能劃分到不同模塊中實現,以提供相互之間的合作。子系統主要的模塊功能主要有如下功能:(1)數據管理通用模塊,主要包括,提供數據管理的用戶界面和實現與各類數據管理模塊的對接。(2)點云與影像數據存儲與管理,支持結構化點云存儲,非結構化影像存儲,分布式存儲,單瓦片點云數據編輯、保存與提取;高效的局部更新和全局更新;對接數據處理工具,提供數據檢查、入庫和等一攬子流程化功能;數據并行處理。(3)三維模型數據存儲與管理,支持OBJ、3DS等主流格式的模型存儲;模型LOD形式存儲;單瓦片模型數據編輯、保存與提取;BIM模型數據存儲(4)古建筑構件數據存儲與管理,支持大文件、松散型文件處理;構件分類管理;構件檢索;構件上傳下載。(5)檔案資料數據存儲與管理,支持檔案多文件管理;檔案按編碼、按類型存儲;數據全局與局部更新;對接數據處理工具,提供數據檢查、入庫和。(6)數據庫安全,支持用戶管理權限設置;支持數據備份與數據恢復;支持多節點數據調取。(7)滿足C/S、B/S交互訪問。
3古建筑三維模型數據庫設計
古建筑三維模型數據模型總的關系圖以三維線框、表面、實體模型[4~5]為例進行說明,三維體的基本要素可以抽象為點、邊、線、面、實體和復雜體,呈現出由簡單到復雜的遞進關系。其中,根據線框的特性,建立了線框模型(WireFrame),包含一系列頂點以及由頂點連接的棱邊;表面模型(surface)是在線框的基礎上,加入環邊的信息及邊的連接關系;僅僅依靠表面模型,無法判別實體與表面的位置關系,實體模型(正則形體)主要是明確定義了表面的哪一側存在實體,具體做法是,在表面模型的基礎上增加了每個表面的外法矢量信息。這幾種模型可作為復雜體(Compound)的三種表達方式,下面具體討論古建筑復雜體的數據庫存儲結構。
3.1不規則三角網(TIN)模型
TIN模型是利用點云進行三維重構生成的三維模型,是多源空間數據應用最多的數據之一。一個場景對象一個或多個TIN模型構成,TIN模型主要由頂點列表、子集結構、材質、矩陣參數以及組件名稱組成。TIN模型中,頂點列表包括位置信息、法線、紋理坐標組成;子集信息(如圖3所示)包含頂點列表、材質名稱、材質對應的資源視圖、子集對應的索引緩存的開始位置、子集對應的頂點數目以及材質對應的影像數據、光照模型,因此設計如圖4所示的TIN數據模型。以下TIN模型中數據結構說明:StructModelVertex存儲頂點數據結構,包含頂點坐標、紋理和法向;StructModelSubMesh存儲子集結構,包含對應材質索引、子集對應的索引及索引數目;StructModelSubMaterial子集材質結構,包含影像、材質反射率;StructTriModelMesh模型構件結構,包含頂點集合、面片索引集合、子集索引集合、材質集合、矩陣集合、組件。
3.2線框、表面、實體模型
表示線框、表面、實體模型[6~7]的數據結構,如圖5具體如下:
3.2.1復雜體(Compound)表包含一個標識信息CompoundID,一些屬性信息Attribute1、Attribute2…,PartID對應WireFrame、SurfaceModel、RugularShapeSolid三張表的里標識信息,SolidTypeID對應SolidType表里的標識信息,SolidType表主要用于確定SolidTypeID對應的是WireFrame、SurfaceModel、RugularShapeSolid中哪一種模型,如表1所示。
3.2.2WireFrame、SurfaceModel、RugularShapeSolid三張表分別存儲線框模型、表面模型和正則形體模型;
3.2.3線框模型使用頂點和鄰邊來表示形體,可以作為多面體的一種表達方式,用來確定多面體的形狀和位置,這種方式被廣泛用于工程圖。WireFrame表使用二進制格式存儲頂點(BVertex)和鄰邊(VertexIndex),鄰邊是使用頂點的序列來構成,另外使用了一個標識(WireFrameID)來表示該線框模型;
3.2.4表面模型是通過有向棱邊圍成的部分來定義形體便面,由面的幾何來定義形體,它基于線框模型的基礎上,增加了有關(環)信息、棱邊的連接方向等內容,使用表SurfaceModel來存儲,該表包含一個標識SurfaceModelID和在面標識序列SurfaceIndex,其中SurfaceIndex是標識在表Surface里面存儲的面的ID集合,表Surface就存儲形體的各個面信息,該表包含面標識SurfaceID和線框標識WireFrameID以及棱邊的序列索引;
3.2.5正則實體模型,主要是明確定義了表面的哪一側存在實體,在表面模型的基礎上增加了每個表面的外法矢。因此表RugularShapeSolid中包含標識RegShID,表面模型標識SurfaceModelID,以及使用二進制存儲的各個面外法矢向量的集合OuterVector。
4結論
本文主要針對古建筑數據庫系統建設,提出了基于三維激光掃描儀獲取的三維激光點云數據、高分辨率影像照片、三維模型以及屬性數據等多源數據的古建筑綜合數據庫系統的存儲模型,重點研究了古建筑不規則三角網模型,線框、表面和實體模型的實體表達方法,并進一步闡述了維模型數據庫存儲的數據結構。本文的古建筑數據庫存儲技術與方法為古建筑數字化保護提供技術支持。
參考文獻
[1]秦強.古建筑海量二三維空間數據存儲與管理[D].北京:北京建筑大學,2016.
[2]“故宮古建筑木構件樹種數據庫”課題組,陳勇平,李華.故宮古建筑木構件樹種數據庫的設計與實現[J].故宮博物院院刊,2011,(5):105-117,162.
[3]陳勇平,石志敏,夏榮祥,劉秀英,李華.故宮古建筑木構件樹種數據庫的設計與進展[C].故宮古建筑研究中心、中國紫禁城學會.中國紫禁城學會論文集(第七輯).故宮古建筑研究中心、中國紫禁城學會:中國紫禁城學會,2010:561-567.
[4]吳曉紅.淺談三維建模技術的研究現狀[J].科學技術創新,2020(23):133-134.
[5]王星捷,衛守林.面向規則的三維古城虛擬技術的研究[J].計算機應用與軟件,2019,36(5):7-14.
[6]王星捷,衛守林.面向規則的三維古城虛擬技術的研究[J].計算機應用與軟件,2019,36(5):7-14.
[7]臧宇哲,肖揚.基于多源數據的三維建模方法研究[J].吉林建筑大學學報,2017,34(05):41-45.
作者:吳志群 單位:北京北建大科技有限公司