張濤,胡振,宋銘凱
(1.浙江師范大學(xué),浙江 金華 321004;2.61175 部隊(duì),江蘇 南京 210000)
在參與長江三峽集團(tuán)有限公司的項(xiàng)目“長江生態(tài)格局與關(guān)鍵過程長期演變及效應(yīng)研究”中,經(jīng)常需要涉及大面積圖幅的歷史時(shí)期的紙質(zhì)地形圖數(shù)據(jù)的收集與研究。為和現(xiàn)代遙感影像數(shù)據(jù)格式相統(tǒng)一以及將紙質(zhì)地圖導(dǎo)入計(jì)算機(jī)中進(jìn)行信息化地理學(xué)相關(guān)處理和分析,需要將紙質(zhì)地圖轉(zhuǎn)化成矢量數(shù)據(jù)。
柵格數(shù)據(jù)矢量化的研究已經(jīng)實(shí)現(xiàn)了基于二值化簡單多邊形圖像的自動(dòng)識(shí)別生成矢量數(shù)據(jù),但是對(duì)于復(fù)雜的彩色地圖和大面積的批量矢量化研究尚有欠缺。本文基于Arc Map軟件,對(duì)大型彩色地圖進(jìn)行矢量化,提取其中主要圖斑的地理信息,為之后地理信息從業(yè)人員快速處理類似的歷史地形圖提供一定的經(jīng)驗(yàn)和技術(shù)基礎(chǔ)。
地理信息系統(tǒng)(GIS)是以空間數(shù)據(jù)為基礎(chǔ),采取多種分析方法以提供地理信息,其廣泛的應(yīng)用在不同的領(lǐng)域,是用于輸入、存儲(chǔ)、查詢、分析和顯示地理數(shù)據(jù)的計(jì)算機(jī)系統(tǒng)。因此,在地理學(xué)的相關(guān)研究中,我們經(jīng)常用GIS 來管理和分析地理信息數(shù)據(jù),同時(shí)在GIS 中最常見的兩種信息數(shù)據(jù)形式為矢量數(shù)據(jù)和柵格數(shù)據(jù)。
矢量數(shù)據(jù)是通過記錄坐標(biāo)的方式,盡可能精確地表示點(diǎn)、線、面等地理實(shí)體的位置。其具有“位置明顯,屬性隱含”的特點(diǎn),擁有較強(qiáng)的可編輯能力;數(shù)據(jù)表達(dá)精度高,存儲(chǔ)量??;方便拓?fù)浞治龊蛶缀芜\(yùn)算。矢量數(shù)據(jù)通常通過點(diǎn)、線、面三種抽象幾何要素來表達(dá)空間實(shí)體的相關(guān)關(guān)系。
柵格數(shù)據(jù)是用規(guī)則的陣列來表示空間地物分布的數(shù)據(jù)組織,組織中每個(gè)數(shù)據(jù)表示地物或現(xiàn)象的非幾何屬性特征。相較于矢量數(shù)據(jù),柵格數(shù)據(jù)具有“屬性明顯,位置隱含”的特點(diǎn),其數(shù)據(jù)結(jié)構(gòu)簡單,易用于數(shù)據(jù)交換;但同時(shí)數(shù)據(jù)量大且質(zhì)量低。常用于表示地表形態(tài),如DEM、遙感圖像和土地利用數(shù)據(jù)。
鑒于矢量和柵格數(shù)據(jù)各有各自不同的優(yōu)缺點(diǎn)和運(yùn)用范圍,并且通常需要運(yùn)用對(duì)應(yīng)的軟件進(jìn)行數(shù)據(jù)處理,因此我們應(yīng)該根據(jù)生產(chǎn)需求和工作環(huán)境選擇對(duì)應(yīng)的數(shù)據(jù)形式或者靈活的在二者之間對(duì)其相互轉(zhuǎn)換。
在進(jìn)行長時(shí)間序列的相關(guān)研究中,常用到歷史紙質(zhì)地圖或其他紙質(zhì)圖集,為方便信息的收集、處理和分析,常常通過掃描的方式將紙質(zhì)地圖掃描信息化,其數(shù)據(jù)常以柵格數(shù)據(jù)的格式存儲(chǔ)于電子媒介中,出于幾何分析的需求,通常要將其轉(zhuǎn)換為矢量數(shù)據(jù)。傳統(tǒng)的地圖矢量化采用人工目視解譯,創(chuàng)建矢量數(shù)據(jù)對(duì)地理要素進(jìn)行框選和標(biāo)記的方法。這種方法在操作上十分依賴人力和時(shí)間成本,且成果存在一定的主觀誤差。
一般歷史地圖分為彩色和黑白,圖中常包含信息有經(jīng)緯網(wǎng)、比例尺、圖例、成圖(出版)年份和地類地物等。在與湖泊相關(guān)的歷史地形圖中,湖泊一般呈大面積連續(xù)或河網(wǎng)連接連續(xù)的相同圖例地物、地形出現(xiàn)在地圖上,與周邊的其他地物、地形呈現(xiàn)明顯圖案或色彩的差別,本次研究所選用的數(shù)據(jù)是1930年以來東洞庭湖歷史地形圖,圖中圖形信息包含了水體、濕地、耕地和其他用地地類,包含的文字信息有經(jīng)緯網(wǎng)、比例尺、圖例和坐標(biāo)系以及對(duì)地點(diǎn)的標(biāo)注。
根據(jù)湖泊歷史地圖的特點(diǎn)和最終的矢量數(shù)據(jù)需求,本次研究將結(jié)合Arc Map 的基本工具和其中的Arc Scan 模塊對(duì)矢量化做出以下方法設(shè)計(jì):(1)對(duì)歷史地圖進(jìn)行掃描錄入和配準(zhǔn),獲得具有地理位置屬性的柵格空間數(shù)據(jù)集;(2)調(diào)用重分類工具對(duì)柵格數(shù)據(jù)進(jìn)行二值化處理,以前景值和背景值來區(qū)分湖泊和其他地物,獲得值為1 或0 的柵格數(shù)據(jù)集;(3)調(diào)用Arc Scan 模塊將二值化中的湖泊作為前景值進(jìn)行自動(dòng)矢量化,反復(fù)調(diào)整參數(shù)設(shè)置以優(yōu)化矢量過程和結(jié)果,獲得初步的矢量圖斑;(4)結(jié)合柵格圖像數(shù)據(jù),調(diào)用Arc Map 中相關(guān)工具對(duì)矢量化結(jié)果進(jìn)行優(yōu)化和調(diào)整,去除噪點(diǎn)和其他誤差值,以獲取符合需求的高質(zhì)量矢量化數(shù)據(jù)。
根據(jù)歷史地形圖中的地圖文字信息或者說明文件中的地理坐標(biāo)系、投影和經(jīng)緯度信息等建立相對(duì)應(yīng)的空間數(shù)據(jù)集。首先將地圖以柵格數(shù)據(jù)的形式載入Arc Map 軟件中,在Arc Map 的圖層列表中設(shè)置Layer 的坐標(biāo)系和投影,使其與歷史地形圖中的說明信息一致。運(yùn)行Geo Referencing 配準(zhǔn)工具,依據(jù)地圖上標(biāo)注的經(jīng)緯度選擇合適的經(jīng)緯線交叉點(diǎn)或者選擇其他無經(jīng)緯信息的特殊地標(biāo)點(diǎn)(一幅地圖一般選擇4 個(gè)點(diǎn)),本次樣本中所選擇的配準(zhǔn)點(diǎn)為歷史地形圖中的手繪的4 個(gè)角點(diǎn)(圖1,這4 個(gè)點(diǎn)分布均勻且擁有準(zhǔn)確的坐標(biāo)信息)。當(dāng)配準(zhǔn)的殘差在允許范圍內(nèi)時(shí),選擇保存地理配準(zhǔn),即將無地理信息的柵格數(shù)據(jù)轉(zhuǎn)變?yōu)閾碛凶鴺?biāo)系和投影的地理柵格數(shù)據(jù)。
圖1 地理配準(zhǔn)
一般的柵格圖像可分為多波段組合或者單波段圖像,彩色歷史地形圖一般擁有三個(gè)波段通過RGB 組合成像,對(duì)比柵格圖像的各個(gè)波段的圖像質(zhì)量,依據(jù)水體的顯示效果排序,選擇顯示效果最優(yōu)的一個(gè)波段載入Layer(單波段柵格圖像無需此操作步驟)(如圖2所示),在Layer 下調(diào)用該波段的Layer Properties 中的Symbology 模塊,選擇Classified,將Classes 設(shè)置為2(即分為兩類),調(diào)整合適的閾值對(duì)該波段進(jìn)行二值化處理,在設(shè)置閾值時(shí)需要不斷嘗試調(diào)整,以使得水體和陸地可以很好地區(qū)分開。同時(shí)為避免之后矢量化過程中,柵格地圖中的經(jīng)緯線和注釋造成的矢量圖斑割裂,應(yīng)默認(rèn)將其設(shè)置為前景值范圍內(nèi)與水體合并(之后的優(yōu)化處理過程中,刪除多余部分更加方便)。得到的圖像可以在Layer 中清晰表現(xiàn)為黑色與白色兩個(gè)值,各對(duì)應(yīng)最小值至閾值和閾值至最大值兩類灰度值,將湖泊設(shè)置為前景值(黑色)其余地物為背景值(白色)(如圖3所示)。
圖2 單波段載入圖像
圖3 二值化圖像
通過調(diào)用Arc Scan 模塊矢量化前景值得到湖泊水體初步矢量圖斑。在Arc Map 中打開Catalog 建立Personal Geodatabase 以用來儲(chǔ)存Arc Scan 模塊執(zhí)行生成的矢量數(shù)據(jù),在 Personal Geodatabase 下建立新的Feature Dataset,并設(shè)置成和柵格地圖相同的地理坐標(biāo)系或投影坐標(biāo)系以確保生成的矢量數(shù)據(jù)擁有和柵格地圖相同的地理信息。在新生成的Feature Dataset 下添加New Feature Class,分別為Polyline、Polygon 要素用于存儲(chǔ)矢量線要素和矢量面要素。在Arc Map 中調(diào)用Arc Scan 模塊(調(diào)用前應(yīng)先在Customize中的Extensions 和Customize Model 中勾選Arc Scan 以啟用該模塊功能),在Arc Scan 中調(diào)用Vectorization Settings 對(duì)矢量化過程的參數(shù)進(jìn)行相關(guān)設(shè)置,主要設(shè)置參數(shù)包括調(diào)控連接點(diǎn)處處理,最大線寬(Intersection Solution,Maximum Line Width)等,可以依據(jù)實(shí)際地圖做出相應(yīng)調(diào)整,也可在Styles 中選擇預(yù)設(shè)的常用模型,本次地圖應(yīng)考慮到經(jīng)緯線對(duì)連接點(diǎn)的影響,經(jīng)過多次調(diào)整實(shí)驗(yàn)對(duì)比結(jié)果,最終將節(jié)點(diǎn)處設(shè)置為None,最大線寬設(shè)置為20(如圖4所示)以獲得最好的矢量化結(jié)果,同時(shí)要在Options 中設(shè)置水體的一類Foreground。
圖4 參數(shù)設(shè)置
經(jīng)過之前的步驟,ArcScan 工具可以輸出初步的矢量化成果,如圖5所示,但是一般這樣的矢量數(shù)據(jù)都還存在很多需要進(jìn)一步優(yōu)化的地方。本次研究實(shí)驗(yàn)中總結(jié)了常見的幾個(gè)問題:(1)由于紙質(zhì)地圖的長時(shí)間保存導(dǎo)致紙質(zhì)下降或者掃描時(shí)掃描機(jī)器自身精度不夠或過高將紙質(zhì)紋理掃入等的各種系統(tǒng)誤差原因,柵格數(shù)據(jù)會(huì)存在很多噪點(diǎn)或空缺值,這些誤差直接反映在初步矢量化的結(jié)果中矢量圖斑存在大量的點(diǎn)面空值;(2)由于Arc Scan 工具的局限性,其他地物或地名與水體相連的部分也被矢量化并入水體斑塊,存在很多多余部分(如圖5所示);(3)Arc Scan 追蹤像素點(diǎn)的原理導(dǎo)致矢量圖斑的邊界呈現(xiàn)明顯鋸齒狀,如圖6所示。
圖5 矢量化初步結(jié)果
圖6 鋸齒狀邊界
為優(yōu)化以上問題導(dǎo)致的矢量成果質(zhì)量低,本次實(shí)驗(yàn)研究總結(jié)了一些常用的有效措施來消除這些問題,從而獲取更高質(zhì)量的矢量數(shù)據(jù)。第一步,剔除多余的未連接的像素點(diǎn)生成的冗余矢量圖斑,在Layer 下調(diào)用Polygon 矢量要素集的Table,對(duì)其按面積篩選,因?yàn)樗崛〉乃w面積遠(yuǎn)遠(yuǎn)大于其他地名注釋和其他標(biāo)注,依據(jù)需求的大小設(shè)定閾值,將需要的Polygon 導(dǎo)出即可去除其他不需要的矢量圖形,如圖7所示。
圖7 導(dǎo)出后的圖斑
第二步,將矢量面中的空洞值填補(bǔ)并與相連接的矢量圖斑融合,在Arc Map 中調(diào)用Feature To Polygon,選擇導(dǎo)出矢量要素保存在的Layer,將一個(gè)矢量面和它的空洞值轉(zhuǎn)換成多個(gè)面要素,再調(diào)用該矢量要素所在Layer 的Table,對(duì)所有的矢量面圖形進(jìn)行合并處理,得到一個(gè)完整的矢量面圖形,如圖8所示。
圖8 合并后的面
第三步,對(duì)以追蹤像素點(diǎn)為原理的自動(dòng)矢量化所生成的鋸齒狀邊界進(jìn)行進(jìn)行平滑處理,在Arc Map 中調(diào)用Smooth Polygon 工具,選擇合并后的矢量面所在的Layer,根據(jù)需求和出圖結(jié)果進(jìn)行優(yōu)化調(diào)整設(shè)置平滑值(本次樣本選擇50),平滑后得到對(duì)應(yīng)優(yōu)化后的矢量圖形,如圖9所示。
圖9 平滑處理后的邊
第四步,對(duì)應(yīng)平滑后的矢量圖形,任然存在部分與經(jīng)緯線和地圖注釋相連接的多余面,調(diào)用Arc Map 中的Cut Polygon 工具對(duì)其剪裁,最終獲得符合要求的水體矢量化圖形,如圖10所示。
圖10 優(yōu)化后的自動(dòng)矢量化圖形
本次研究實(shí)驗(yàn)成功實(shí)現(xiàn)了歷史湖泊地圖的一種矢量化方法,通過調(diào)用Arc Map 中的Arc Scan 和其他各種工具提取大面積的湖泊水體,并快速得到高質(zhì)量的矢量化數(shù)據(jù)。方法中的Arc Scan 模塊自動(dòng)矢量化大大減少了傳統(tǒng)矢量化的人力和時(shí)間成本,消除了主觀判斷所存在的人為誤差,提高了矢量化結(jié)果的精度。但是,本次研究實(shí)驗(yàn)也有以下幾個(gè)需要改進(jìn)的點(diǎn):(1)部分Arc Map 中的工具的調(diào)用需要手動(dòng)操作完成,未能實(shí)現(xiàn)全部的自動(dòng)化。(2)最終成果的優(yōu)化仍然需要手動(dòng)結(jié)合原圖識(shí)別修改,還需進(jìn)一步節(jié)省人力成本和時(shí)間成本。
經(jīng)過本次方法實(shí)驗(yàn),Arc Map 軟件是可以提供完整的自動(dòng)矢量化操作的,傳統(tǒng)的矢量化方法因其煩瑣重復(fù)的操作流程和大量人力時(shí)間成本投入必將在不遠(yuǎn)的將來淘汰。本次實(shí)驗(yàn)的結(jié)果與不足也揭示了完整自動(dòng)矢量化所缺失的幾個(gè)重點(diǎn)所需要的進(jìn)一步研究的方向:(1)基于AE(Arc Engine)平臺(tái)編程實(shí)現(xiàn)全程按步驟自動(dòng)調(diào)用Arc Map 中的模塊,方便批量操作;(2)伴隨著當(dāng)今人工智能技術(shù)的發(fā)展和計(jì)算機(jī)算力的提升?;谟?jì)算機(jī)大數(shù)據(jù)學(xué)習(xí)的能力,可以通過大數(shù)據(jù)學(xué)習(xí)實(shí)現(xiàn)自動(dòng)識(shí)別矢量圖斑形狀規(guī)則以達(dá)成自動(dòng)優(yōu)化矢量化結(jié)果。