張壽雨,徐慧珺
(1.江蘇省基礎(chǔ)地理信息中心,江蘇 南京 210013)
第三次全國(guó)國(guó)土調(diào)查(以下簡(jiǎn)稱“三調(diào)”)是在第二次全國(guó)土地調(diào)查(以下簡(jiǎn)稱“二調(diào)”)成果的基礎(chǔ)上進(jìn)行的全國(guó)性土地普查工作。為了掌握翔實(shí)準(zhǔn)確的全國(guó)國(guó)土利用現(xiàn)狀和國(guó)土資源變化情況,進(jìn)一步完善國(guó)土調(diào)查、監(jiān)測(cè)和統(tǒng)計(jì)制度,實(shí)現(xiàn)成果信息化管理和共享,滿足生態(tài)環(huán)境修復(fù)、空間規(guī)劃編制和自然資源管理等各項(xiàng)工作的需要[1],“三調(diào)”進(jìn)行了全國(guó)土地利用基礎(chǔ)數(shù)據(jù)的全面細(xì)化和完善。而統(tǒng)計(jì)分析是“三調(diào)”的一項(xiàng)重要工作,其中流量分析是統(tǒng)計(jì)分析工作的重要內(nèi)容。通過(guò)流量分析能夠了解不同時(shí)期土地利用現(xiàn)狀之間的動(dòng)態(tài)變化情況,并作為政府部門決策分析的重要依據(jù)。流量分析的結(jié)果在一定程度上能夠?qū)θ{(diào)數(shù)據(jù)進(jìn)行質(zhì)量檢查,對(duì)流量分析結(jié)果的異常值研究,在以增量數(shù)據(jù)包更新的時(shí)點(diǎn)更新階段尤為重要。
傳統(tǒng)的流量分析主要是使用ArcMap軟件調(diào)用Arc-ToolBox 中工具進(jìn)行數(shù)據(jù)處理,需要依次有序的調(diào)用多個(gè)工具,流程繁瑣,耗時(shí)較長(zhǎng),當(dāng)數(shù)據(jù)量較大時(shí),數(shù)據(jù)處理容易出錯(cuò)。而基于ArcGIS ModleBuilder 編寫的模型和基于ArcGISArcPy 編寫的Python 腳本雖然能夠?qū)⒍鄠€(gè)工具連接起來(lái),實(shí)現(xiàn)自動(dòng)化操作,但是依然存在耗時(shí)較長(zhǎng)的情況。“三調(diào)”建庫(kù)軟件雖然可以實(shí)現(xiàn)流量分析,但是對(duì)數(shù)據(jù)的質(zhì)量、格式、組織結(jié)構(gòu)和完整性要求較高,需在數(shù)據(jù)建庫(kù)完成后才能進(jìn)行流量分析,無(wú)法對(duì)階段性數(shù)據(jù)進(jìn)行分析[2-6]。
基于流量分析流程復(fù)雜、涉及步驟較多、耗時(shí)較長(zhǎng)的情況,本文使用Visual Studio 2010工具,基于ArcEngine,使用C#語(yǔ)言設(shè)計(jì)并編寫出便于操作的圖形用戶界面工具。以江蘇省徐州市某縣“二調(diào)”數(shù)據(jù)、“三調(diào)”初始調(diào)查數(shù)據(jù)和“三調(diào)”時(shí)點(diǎn)更新階段性數(shù)據(jù)展開(kāi)了測(cè)試。結(jié)果表明該工具的耗時(shí)僅為手動(dòng)操作的五分之一,并且分析結(jié)果準(zhǔn)確、操作方便,能夠滿足對(duì)“三調(diào)”不同階段的數(shù)據(jù)進(jìn)行流量分析的要求。
流量分析指政府部門主要關(guān)注的三大類之間的流量變化,將農(nóng)用地分為耕地與其他農(nóng)用地(不含耕地的農(nóng)用地),分析耕地與三大類之間的流量變化。依據(jù)“二調(diào)”與“三調(diào)”規(guī)程[1,7],地類編碼與三大類對(duì)照情況如表1所示。
通過(guò)表1可知,農(nóng)用地劃分為耕地和其他農(nóng)用地,是為了分析耕地的流量變化情況。對(duì)比同一類別的“二調(diào)”地類編碼和“三調(diào)”地類編碼,“三調(diào)”的地類比“二調(diào)”更加細(xì)化,尤其在其他農(nóng)用地和建設(shè)用地類別中。其中水庫(kù)水面在“二調(diào)”中代碼為113屬于建設(shè)用地,而在“三調(diào)”中代碼為1103,屬于農(nóng)用地。
表1 地類編碼與三大類對(duì)照表
工具對(duì)ESRI 的Shapefile,Personal Geodatabase 和File Geodatabase3 種格式的輸入數(shù)據(jù)均支持。文中設(shè)計(jì)開(kāi)發(fā)工具的輸入數(shù)據(jù)分為3 種,包括“二調(diào)”數(shù)據(jù)、“三調(diào)”初始調(diào)查數(shù)據(jù)和“三調(diào)”時(shí)點(diǎn)更新數(shù)據(jù)。3 種數(shù)據(jù)的標(biāo)準(zhǔn)目錄均有VCT 和MDB2 種格式,mdb數(shù)據(jù)可直接讀取。其中“三調(diào)”初始調(diào)查數(shù)據(jù)無(wú)需進(jìn)行任何處理,mdb 數(shù)據(jù)中的DLTB 層可直接作為輸入數(shù)據(jù)?!叭{(diào)”時(shí)點(diǎn)更新數(shù)據(jù)MDB 中的DLTB 層為增量數(shù)據(jù),需要融合進(jìn)本底數(shù)據(jù),形成更新后的全量DLTB 數(shù)據(jù)作為輸入數(shù)據(jù)。工具要求輸入的數(shù)據(jù)屬性上DLBM 字段值正確且不為空,圖形上拓?fù)湔_,即無(wú)縫隙和無(wú)重疊。
對(duì)于“二調(diào)”數(shù)據(jù)存在線狀地物作為獨(dú)立圖層無(wú)法直接獲取面積的問(wèn)題,處理方式分為2 種:第一種是不考慮線狀地物,直接將二調(diào)數(shù)據(jù)庫(kù)中的DLTB 層作為輸入數(shù)據(jù)進(jìn)行流量分析;第二種是考慮線狀地物,將線狀地物按照寬度字段值做緩沖區(qū)形成面數(shù)據(jù),融合進(jìn)DLTB層,并保證DLTB層拓?fù)湔_,再進(jìn)行流量分析。由于線狀地物均為其他農(nóng)用地(不含耕地的農(nóng)用地),因此融合進(jìn)去的圖斑賦值117。本文工具對(duì)2種方式均適用。
3種輸入數(shù)據(jù)組合形成3個(gè)時(shí)間段的流量分析,即“二調(diào)”—“三調(diào)”初始調(diào)查、“二調(diào)”—“三調(diào)”時(shí)點(diǎn)更新和“三調(diào)”初始調(diào)查—“三調(diào)”時(shí)點(diǎn)更新。
工具分析模型為exe 格式文件,在Windows 操作系統(tǒng)下直接運(yùn)行,無(wú)需依賴ArcGIS Desktop 產(chǎn)品。工具分析類型有3 種選項(xiàng),分別為“二調(diào)數(shù)據(jù)-初始調(diào)查”、“二調(diào)數(shù)據(jù)-時(shí)點(diǎn)更新”和“初始調(diào)查-時(shí)點(diǎn)更新”。3 種分析類型選項(xiàng)分別對(duì)應(yīng)“二調(diào)”-“三調(diào)”初始調(diào)查、“二調(diào)”-“三調(diào)”時(shí)點(diǎn)更新和“三調(diào)”初始調(diào)查-“三調(diào)”時(shí)點(diǎn)更新的流量分析。
使用工具時(shí),首先選擇流量分析的類型。確定分析類型后,分別設(shè)置輸入數(shù)據(jù)和輸出文件夾,工具即可運(yùn)行。
程序運(yùn)行流程如圖1 所示,首先對(duì)2 個(gè)輸入數(shù)據(jù)的DLBM 字段進(jìn)行檢查,如果DLBM 錯(cuò)誤或者為空,則報(bào)錯(cuò)并退出程序。在DLBM 正確的情況下,對(duì)2 個(gè)輸入數(shù)據(jù)分別新建標(biāo)記字段,按照表1 的分類,依據(jù)DLBM 的屬性值,對(duì)標(biāo)記字段進(jìn)行賦值操作,分別標(biāo)記耕地和三大類。
圖1 流量分析工具設(shè)計(jì)流程圖
對(duì)標(biāo)記字段進(jìn)行賦值是流量分析的基礎(chǔ),當(dāng)面對(duì)大數(shù)據(jù)量時(shí)非常耗時(shí),甚至?xí)霈F(xiàn)卡死現(xiàn)象,因此縮短運(yùn)行時(shí)間、提高運(yùn)行時(shí)間是關(guān)鍵,一般分為屬性掛接和編程2 種實(shí)現(xiàn)方法。使用屬性掛接方式對(duì)標(biāo)記字段進(jìn)行賦值是最簡(jiǎn)單的方式,對(duì)作業(yè)人員要求較低,通常是將字段對(duì)應(yīng)關(guān)系存入表格,然后進(jìn)行掛接操作。大數(shù)據(jù)量進(jìn)行屬性掛接時(shí),耗時(shí)且卡死的概率較高,因此當(dāng)數(shù)據(jù)量較大時(shí),不建議采用屬性掛接方式。編程方式實(shí)現(xiàn)標(biāo)記字段賦值對(duì)作業(yè)人員要求較高,但是耗時(shí)短、效率高,尤其適用于大數(shù)據(jù)量的情況,其中ArcEngine的效率高于ArcPy。
標(biāo)記字段賦值完成后,對(duì)標(biāo)記后的2 個(gè)輸入數(shù)據(jù)執(zhí)行相交操作,以獲取統(tǒng)計(jì)分析的基礎(chǔ)數(shù)據(jù)。相交完成后,對(duì)相交后的數(shù)據(jù),按照標(biāo)記字段進(jìn)行面積統(tǒng)計(jì)。統(tǒng)計(jì)完成后,進(jìn)行面積單位轉(zhuǎn)換,將面積由m2換算為萬(wàn)畝。最后將表格轉(zhuǎn)換為Excel 格式后輸出。
以面積為1 590 km2,“二調(diào)”和“三調(diào)”數(shù)據(jù)圖斑數(shù)量均超過(guò)15萬(wàn)的江蘇省某縣為測(cè)試數(shù)據(jù),進(jìn)行流量分析,本文工具僅耗時(shí)6 min,運(yùn)行效率較高。
本文工具的輸出數(shù)據(jù)為2 個(gè)Excel 格式的表格和1 個(gè)ESRI File Geodatabase數(shù)據(jù)。2個(gè)Excel格式的表格是以“二調(diào)”—“三調(diào)”時(shí)點(diǎn)更新流量分析類型為例輸出的,其他2 種流量分析的輸出表格結(jié)構(gòu)與之相同,只是首行和首列的數(shù)據(jù)名稱有所不同。
橫向均為“三調(diào)”時(shí)點(diǎn)更新的分類,縱向?yàn)椤岸{(diào)”的分類。橫向和縱向的總計(jì)對(duì)應(yīng)的數(shù)字表示“三調(diào)”時(shí)點(diǎn)更新和“二調(diào)”各個(gè)類別的面積情況,是靜態(tài)的。除了總計(jì)之外的行列數(shù)值表示某一地類流入另一地類的面積情況,是各個(gè)地類面積具體變化數(shù)量,是動(dòng)態(tài)的。
通過(guò)Excel 表可以直接求得兩期數(shù)據(jù)中三大類面積的數(shù)值,以及三大類之間的流入和流出面積的數(shù)值。并直接得出兩期數(shù)據(jù)中耕地與其他農(nóng)用地面積的數(shù)值,以及耕地與三大類間的流入和流出面積的數(shù)值。表格存儲(chǔ)在Excel 中,通過(guò)簡(jiǎn)單的計(jì)算,即可獲取耕地與三大類、三大類內(nèi)部之間的凈流入流出量的面積值和百分百數(shù)據(jù)。在Excel 中基于表格中的數(shù)據(jù),可以進(jìn)一步挖掘潛在的信息,以滿足不同的需求。如果表格中的數(shù)據(jù)不能滿足需求,可以使用File Geodatabase 里的數(shù)據(jù)。輸出的ESRI File Geodatabase數(shù)據(jù)是相交后的數(shù)據(jù),是為了滿足用戶在耕地和三大類流量分析基礎(chǔ)上做進(jìn)一步深入分析的需求。當(dāng)有進(jìn)一步需求時(shí),比如統(tǒng)計(jì)出即可恢復(fù)的變化情況,用戶可以使用File Geodatabase數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,能夠節(jié)省一定的時(shí)間,提高工作效率。
對(duì)于結(jié)果中出現(xiàn)的異常值,應(yīng)進(jìn)行檢查和分析。檢查分析后,如果異常值是作業(yè)過(guò)程中的誤操作所導(dǎo)致,應(yīng)對(duì)數(shù)據(jù)庫(kù)進(jìn)行修改,以提高數(shù)據(jù)質(zhì)量。如果異常值確實(shí)是該區(qū)域的實(shí)際變化情況,則增加了作業(yè)單位和政府部門對(duì)當(dāng)?shù)氐恼J(rèn)識(shí)和了解,有助于今后更好地進(jìn)行相關(guān)土地調(diào)查和管理。
本文基于ArcEngine,使用C#語(yǔ)言開(kāi)發(fā)了流量分析工具,能夠?qū)Χ鄠€(gè)階段的數(shù)據(jù)進(jìn)行流量分析。文章分別從三大類劃分、輸入數(shù)據(jù)、用戶界面、數(shù)據(jù)處理和輸出數(shù)據(jù)等方面對(duì)“三調(diào)”流量分析工具進(jìn)行介紹。本文的“三調(diào)”流量分析工具不僅能夠提供直接可用的表格數(shù)據(jù),而且提供了處理后的數(shù)據(jù),以滿足深入分析的需求。通過(guò)實(shí)際數(shù)據(jù)處理對(duì)該工具進(jìn)行了驗(yàn)證,結(jié)果表明該工具能夠方便、高效、準(zhǔn)確地進(jìn)行流量分析,有助于提高“三調(diào)”項(xiàng)目的作業(yè)效率。