時(shí) 斐,邵世星,儲(chǔ)丹華
(1.江蘇省測(cè)繪研究所,江蘇 南京 210013;2.江蘇天地圖地理信息工程技術(shù)公司,江蘇 南京 210013;3.江蘇省地質(zhì)測(cè)繪院,江蘇 南京 210013)
實(shí)景三維作為真實(shí)、立體、時(shí)序化反映人類生產(chǎn)、生活和生態(tài)空間的時(shí)空信息,是一項(xiàng)具有全新性、復(fù)雜性和突破性特點(diǎn)的新型基礎(chǔ)測(cè)繪產(chǎn)品,帶來了傳統(tǒng)測(cè)繪技術(shù)體系的全面改變[1]。2021年,全國地理信息管理工作會(huì)議提出新時(shí)期測(cè)繪工作“兩支撐、一提升”的根本定位,明確要求加快推進(jìn)實(shí)景三維中國建設(shè);同時(shí)也明確指出要進(jìn)行在線系統(tǒng)和支撐環(huán)境的建設(shè),其中就包括了數(shù)據(jù)庫的建設(shè)。為了能夠更好地建設(shè)實(shí)景三維數(shù)據(jù)庫就必須按照統(tǒng)一的標(biāo)準(zhǔn),將離散、多源、異構(gòu)的各類實(shí)景數(shù)據(jù)進(jìn)行匯集、處理、檢查和規(guī)整,形成一套干凈、清晰、規(guī)范的數(shù)據(jù)資源體系;按照事物發(fā)展的規(guī)律,將獨(dú)立的實(shí)景數(shù)據(jù)進(jìn)行關(guān)聯(lián),形成“一數(shù)一源一主體”的數(shù)據(jù)機(jī)理脈絡(luò)。圍繞實(shí)景數(shù)據(jù)的處理,通過信息化工具賦能,能夠極大提高實(shí)景數(shù)據(jù)質(zhì)量,提升治理水平。
將不同比例尺、時(shí)空范圍和分辨率的數(shù)據(jù)進(jìn)行組織管理、處理及有效合理存儲(chǔ),建立高效的時(shí)空索引機(jī)制,構(gòu)建實(shí)景三維地理場(chǎng)景數(shù)據(jù)庫。數(shù)據(jù)以切片方式存儲(chǔ),通過標(biāo)準(zhǔn)的OGC服務(wù)進(jìn)行服務(wù)發(fā)布,以散列文件和數(shù)據(jù)庫形式混合存儲(chǔ),按照標(biāo)準(zhǔn)Rest Web服務(wù)形式發(fā)布。各類數(shù)據(jù)服務(wù)最終以服務(wù)方式被平臺(tái)調(diào)用,為用戶提供靈活的應(yīng)用搭建和數(shù)據(jù)調(diào)閱支撐,保障平臺(tái)使用的靈活性和規(guī)范性。
數(shù)據(jù)處理主要包括三維模型輕量化、時(shí)空索引構(gòu)建、切片與金字塔構(gòu)建等。
數(shù)字正射影像的數(shù)據(jù)處理目前不論是使用ArcGIS、Supermap等商業(yè)軟件還是GDAL、GeoWeb Cache等開源軟件都已形成了完整且成熟的技術(shù)處理流程。采用標(biāo)準(zhǔn)的XYZ地圖瓦片金字塔形式,采用球面墨卡托投影的方式,對(duì)全球球面進(jìn)行平面投影,作為0級(jí)網(wǎng)格并定義為起算網(wǎng)格。起算原點(diǎn)為網(wǎng)格左上角點(diǎn),向東向南行列遞增,X為列號(hào),Y為行號(hào),從0起算,統(tǒng)一瓦片分辨率為256×256像素,保證金字塔葉子瓦片的地面分辨率不低于原始影像地面分辨率,即0.2 m影像切片至第20級(jí),0.5 m影像切片至第19級(jí),1 m影像切片至第18級(jí),2 m影像切片至第17級(jí)。
將切片后的影像數(shù)據(jù)存儲(chǔ)到MongoDB非關(guān)系型數(shù)據(jù)庫中。針對(duì)以上影像數(shù)據(jù)切片結(jié)構(gòu)特點(diǎn),影像時(shí)空索引表需要記錄瓦片的XYZ分級(jí)分塊信息。根據(jù)相同坐標(biāo)范圍和縮放基本瓦片具備唯一的特性,將瓦片數(shù)據(jù)存入MongoDB數(shù)據(jù)庫中,利用PostGIS創(chuàng)建時(shí)空復(fù)合索引,同時(shí)創(chuàng)建數(shù)據(jù)集的時(shí)空索引表,并通過“服務(wù)類型”+“服務(wù)名稱”+“XYZ層級(jí)”+“時(shí)間”+“空間”的復(fù)合方式索引。最后將帶有時(shí)空信息的影像數(shù)據(jù)接口服務(wù)通過tomcat發(fā)布為WMTS影像服務(wù),通過影像時(shí)空查詢服務(wù)接口將數(shù)據(jù)返回進(jìn)行渲染。
數(shù)字高程模型的處理流程與數(shù)字正射影像數(shù)據(jù)類似,但在B/S場(chǎng)景下,由于網(wǎng)絡(luò)環(huán)境和Web瀏覽器計(jì)算能力的限制,柵格瓦片的傳輸和高密度規(guī)則三角網(wǎng)格的實(shí)時(shí)生成會(huì)制約三維場(chǎng)景整體的瀏覽效率和效果。因此,要對(duì)柵格瓦片進(jìn)行優(yōu)化處理,滿足網(wǎng)絡(luò)環(huán)境下流暢瀏覽三維場(chǎng)景的需求。通過數(shù)據(jù)處理工具對(duì)數(shù)字高程模型進(jìn)行重新切片處理,對(duì)切片得到的每一幅瓦片數(shù)據(jù)進(jìn)行柵格-TIN轉(zhuǎn)換,通過壓縮平坦區(qū)域冗余高程點(diǎn)的方式減少數(shù)據(jù)總體容量,按級(jí)別+行號(hào)+列號(hào)的順序結(jié)構(gòu)依次存儲(chǔ)數(shù)字高程模型生成文件,并進(jìn)入MongoDB非關(guān)系型數(shù)據(jù)庫進(jìn)行存儲(chǔ)[2]。利用PostGIS創(chuàng)建時(shí)空復(fù)合索引,通過“服務(wù)類型”+“服務(wù)名稱”+“XYZ層級(jí)”+“時(shí)間”+“空間”的復(fù)合索引方式,創(chuàng)建數(shù)據(jù)集的時(shí)空索引表。最后將帶有時(shí)空信息的數(shù)字高程模型數(shù)據(jù)接口服務(wù)通過Tomcat發(fā)布數(shù)字高程模型Terrain服務(wù),通過數(shù)字高程模型時(shí)空查詢服務(wù)接口將數(shù)據(jù)返回進(jìn)行渲染。
目前,傾斜攝影三維模型大部分以Bentley ContexCapture生產(chǎn)和輸出的OSGB瓦片集為主,這些模型按照文件名規(guī)則定義了多級(jí)瓦片索引結(jié)構(gòu),同時(shí)通過XML文件定義空間參考等描述信息。模型數(shù)據(jù)整體處理流程如圖1所示。
圖1 三維傾斜模型處理流程
(1)解析和轉(zhuǎn)換OSGB原始數(shù)據(jù)的整個(gè)細(xì)節(jié)層次樹,構(gòu)建多細(xì)節(jié)層次組織規(guī)則和OGC3DTiles規(guī)范構(gòu)建三維模型瓦片集以滿足要求。
(2)對(duì)提取的頂層模型進(jìn)行數(shù)據(jù)量判斷,以解決原始瓦片集頂層細(xì)節(jié)層次模型過于細(xì)分的問題。如果模型的數(shù)據(jù)量超過了設(shè)定的閾值,會(huì)按照格網(wǎng)的方式進(jìn)行合并,將其三維凸包計(jì)算出合并后的各塊單個(gè)模型。采用紋理烘烤工藝壓縮紋理,從而獲得全新的頂層模型,直到最終頂層模型的數(shù)據(jù)量低于規(guī)定的閾值,得到簡(jiǎn)化的細(xì)節(jié)層次模型為止。最終的模型瓦片集是通過上述計(jì)算得到的細(xì)節(jié)層次簡(jiǎn)明模型與細(xì)節(jié)層次精細(xì)模型的逐步轉(zhuǎn)換合并而成的。
傾斜攝影三維模型數(shù)據(jù)通過切片處理工具進(jìn)行切片處理,經(jīng)過模型頂層節(jié)點(diǎn)合并以及紋理壓縮等輕量化操作,將OSGB格式的傾斜數(shù)據(jù)處理成.b3dm格式的數(shù)據(jù)文件,進(jìn)入MongoDB非關(guān)系型數(shù)據(jù)庫進(jìn)行存儲(chǔ)。對(duì)符合構(gòu)建時(shí)空索引要求的數(shù)據(jù),利用PostGIS創(chuàng)建數(shù)據(jù)集的時(shí)空索引表,構(gòu)建“服務(wù)類型”+“服務(wù)名稱”+“文件目錄層級(jí)”+“時(shí)間”+“空間”的時(shí)空復(fù)合索引。最后將重新構(gòu)建的新的時(shí)空信息tileset瓦片數(shù)據(jù)集文件的數(shù)據(jù)文件通過Tomcat發(fā)布,地圖加載指定時(shí)空的B3DM+JSON數(shù)據(jù)。
三維單體模型數(shù)據(jù)往往具備以下特點(diǎn):
(1)數(shù)據(jù)結(jié)構(gòu)復(fù)雜,由于缺乏足夠可落地的數(shù)據(jù)標(biāo)準(zhǔn)指導(dǎo),不同軟件、不同作業(yè)團(tuán)隊(duì)所生產(chǎn)的不同場(chǎng)景模型可能結(jié)構(gòu)迥異。
(2)表面幾何細(xì)節(jié)比較有限,模型三角面一般數(shù)量不多,整體數(shù)據(jù)體積比較小,局限于三維數(shù)據(jù)生產(chǎn)效率。因此,結(jié)合適當(dāng)?shù)募?xì)節(jié)層次結(jié)構(gòu)優(yōu)化,頂點(diǎn)數(shù)量整體不會(huì)對(duì)模型渲染效率帶來瓶頸。
(3)數(shù)據(jù)可能會(huì)大量使用高分辨率的紋理,甚至可以占到整個(gè)數(shù)據(jù)容量的90%以上。在表面幾何細(xì)節(jié)有限的情況下,為了盡可能地提升視覺效果,實(shí)時(shí)渲染效率將會(huì)受到很大的制約。
針對(duì)上述特點(diǎn),模型三維切片處理的重點(diǎn)在于紋理壓縮,整體流程如圖2所示。
圖2 三維模型處理流程
模型三維數(shù)據(jù)通過切片處理工具進(jìn)行切片,處理得到.b3dm格式的數(shù)據(jù)文件,存儲(chǔ)于MongoDB非關(guān)系型數(shù)據(jù)庫中。對(duì)符合構(gòu)建時(shí)空索引要求的數(shù)據(jù),利用PostGIS創(chuàng)建數(shù)據(jù)集的時(shí)空索引表,構(gòu)建“服務(wù)類型”+“服務(wù)名稱”+“文件目錄層級(jí)”+“時(shí)間”+“空間”的時(shí)空復(fù)合索引。最后將重新構(gòu)建的新的時(shí)空信息tileset瓦片數(shù)據(jù)集文件的數(shù)據(jù)文件通過Tomcat發(fā)布,地圖加載指定時(shí)空的B3DM+JSON數(shù)據(jù)。
基于符合構(gòu)建時(shí)空索引要求的傾斜攝影三維模型,保持與傾斜模型統(tǒng)一的瓦片組織結(jié)構(gòu)制作得到的模型三維數(shù)據(jù),可以構(gòu)建模型三維時(shí)空索引,否則只能以快照數(shù)據(jù)形式存儲(chǔ)于數(shù)據(jù)庫中。目前,項(xiàng)目中處理的太倉市城區(qū)、泰州市城區(qū)、常州市部分地區(qū)和宿遷市城區(qū)的模型三維數(shù)據(jù)都無法構(gòu)建時(shí)空索引,僅僅做了數(shù)據(jù)轉(zhuǎn)換、入庫和服務(wù)發(fā)布處理。
激光點(diǎn)云數(shù)據(jù)的基本特點(diǎn)是:由于數(shù)據(jù)采集自動(dòng)化程度高,內(nèi)業(yè)處理時(shí)間成本低,導(dǎo)致數(shù)據(jù)體量大;點(diǎn)云數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單,只有坐標(biāo)和屬性中記錄著空間信息,不存在三維模型那種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。
就上述特點(diǎn),激光點(diǎn)云模型的切片處理與模型三維、傾斜攝影三維模型的技術(shù)流程存在一定差異,重點(diǎn)在于對(duì)離散點(diǎn)的空間剖分和分配策略,幾乎沒有幾何計(jì)算,整體流程如圖3所示。
圖3 激光點(diǎn)云處理流程
(1)通過對(duì)原始點(diǎn)云數(shù)據(jù)的處理與分析,獲取點(diǎn)云的數(shù)據(jù)范圍及數(shù)據(jù)量等信息。
(2)對(duì)點(diǎn)云空間范圍使用八叉樹剖分策略進(jìn)行剖分,得到8個(gè)初始子塊點(diǎn)云。再對(duì)每一個(gè)子塊進(jìn)行重新計(jì)算,若點(diǎn)云數(shù)量超出閾值,則利用空間隨機(jī)采樣策略處理該子塊,得到小于閾值的真子塊點(diǎn)云和子塊剩余點(diǎn)云,對(duì)子塊剩余點(diǎn)云繼續(xù)采用上述方法計(jì)算下一級(jí)子塊點(diǎn)云。
對(duì)上述步驟中點(diǎn)云數(shù)據(jù)量小于閾值的各級(jí)子塊點(diǎn)云,按照江蘇省地方標(biāo)準(zhǔn)《三維地理信息數(shù)據(jù)服務(wù)規(guī)范》對(duì)于地物模型的多細(xì)節(jié)層次組織規(guī)則和OGC3DTiles規(guī)范構(gòu)造激光點(diǎn)云模型瓦片集[3]。
激光點(diǎn)云數(shù)據(jù)具有體量大、分布不均的特點(diǎn),若點(diǎn)云嚴(yán)格按照統(tǒng)一的地理空間格網(wǎng)進(jìn)行剖分,不考慮激光點(diǎn)數(shù)據(jù)實(shí)際分布情況,會(huì)導(dǎo)致計(jì)算、存儲(chǔ)資源的浪費(fèi),對(duì)前端渲染也會(huì)造成很大的壓力。因此,為了保證點(diǎn)云數(shù)據(jù)的瀏覽效率,項(xiàng)目采取了八叉樹剖分-隨機(jī)采樣策略對(duì)點(diǎn)云數(shù)據(jù)進(jìn)行剖分。本層級(jí)是否存在數(shù)據(jù)是由上一層級(jí)點(diǎn)云數(shù)據(jù)的數(shù)據(jù)量決定的,因此無法保證每個(gè)層級(jí)的瓦片都有數(shù)據(jù),從而不對(duì)激光點(diǎn)云數(shù)據(jù)構(gòu)建時(shí)空索引,僅僅將處理得到的.pnts格式的數(shù)據(jù)文件存儲(chǔ)于MongoDB非關(guān)系型數(shù)據(jù)庫中,通過Tomcat發(fā)布數(shù)據(jù)服務(wù)。
本文探討了將不同比例尺、時(shí)空范圍和分辨率的數(shù)據(jù)進(jìn)行組織管理、處理及有效合理存儲(chǔ),建立高效的時(shí)空索引機(jī)制,構(gòu)建時(shí)空三維模型。將數(shù)據(jù)以切片方式存儲(chǔ),通過標(biāo)準(zhǔn)的OGC服務(wù)進(jìn)行服務(wù)發(fā)布,以散列文件和數(shù)據(jù)庫形式混合存儲(chǔ),按照標(biāo)準(zhǔn)Rest Web服務(wù)形式發(fā)布。各類數(shù)據(jù)服務(wù)最終以服務(wù)方式被各種平臺(tái)調(diào)用,為用戶提供靈活的應(yīng)用搭建和數(shù)據(jù)調(diào)閱支撐,保障各種平臺(tái)使用的靈活性和規(guī)范性。
通過大范圍海量城市模型數(shù)據(jù)集成建庫,形成完整的三維空間數(shù)據(jù)基礎(chǔ)設(shè)施,能夠?yàn)橹腔鄢鞘薪ㄔO(shè)中各行業(yè)領(lǐng)域提供多源測(cè)繪產(chǎn)品的瀏覽、應(yīng)用和分析支撐。伴隨著城市化進(jìn)程的推進(jìn),基于現(xiàn)有的數(shù)據(jù)更新采集機(jī)制,將形成更為完善的城市數(shù)據(jù)采集、處理、更新鏈條,從而更好地服務(wù)智慧城市建設(shè)[4]。