亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種地形圖建筑物屬性的提取方法及實現(xiàn)

        2022-01-08 08:14:36謝年
        城市勘測 2021年6期
        關(guān)鍵詞:樓層高程建筑物

        謝年

        (重慶市勘測院,重慶 400000)

        1 引 言

        在地形圖中,圖形是地物的幾何抽象表達,同時為了便于讀圖判圖,文字注記同樣是不可缺少的,是地物語義級別的表達[1]。以建筑物為例,建筑物輪廓幾何形狀表達了建筑物的幾何位置、空間形態(tài)等屬性,建筑物的結(jié)構(gòu)注記、樓層注記、高程注記等則表達了建筑物的結(jié)構(gòu)、樓層和各種高程等屬性。隨著地理信息技術(shù)的快速發(fā)展和應(yīng)用場景的不同需求,通常需要對地形圖進行GIS建庫處理,注記內(nèi)容成為GIS屬性數(shù)據(jù)的重要來源和依據(jù)。如何準確快速地將建筑物注記轉(zhuǎn)換到屬性值是建庫工作中一項重要的任務(wù),如果全部由人工來判讀并附加屬性,會產(chǎn)生巨大的工作量。因此本文提出了一種利用正則表達式規(guī)則提取建筑物屬性的方法,通過基于ArcGIS Addin開發(fā)插件工具嵌入到ArcMap中,能高效快速地進行地形圖建筑物的屬性提取工作。

        2 正則表達式

        正則表達式是一種功能強大的文本處理語言,具有強大的模式表達功能,通過使用一系列特殊字符構(gòu)建匹配模式(pattern),具有匹配、過濾、提取等基本功能,其靈活性和邏輯性極強,能用極其簡單的方式實現(xiàn)對字符串的復(fù)雜操作,在目前主流的開發(fā)語言(C++、C#、VB、Java、Python等)均支持正則表達[2],本文正是基于這些特點,采用正則表達式識別、提取建筑物屬性。

        一個正則表達式是由普通字符和元字符組成的文字模式。元字符表示特殊的含義(均為半角字符),包括“”“^”“$”“*”“+”“?”“.”“(”“)”“{”“}”“[”“]”“|”。元字符前加“”轉(zhuǎn)義為符號自身,普通字符是除元字符外的所有字符[3]。

        構(gòu)造正則表達式就是將元字符與普通字符通過各種方式組合在一起,得到需要的匹配或捕獲。字符的組合存在先后法則,元字符的優(yōu)先級從高到低如表1所示。

        元字符的優(yōu)先級順序 表1

        3 原理分析

        根據(jù)地形圖相關(guān)制圖規(guī)范,建筑物注記一般以建筑物輪廓中心點為定位基準,以單點注記的方式依次將不同的注記對象從上而下依次放置,以 1∶500地形圖為例,建筑物圖形與注記的制圖表達如圖1所示。

        圖1 1∶500地形圖建筑物制圖表達樣例

        通過對數(shù)據(jù)進行分析不難發(fā)現(xiàn),一是注記中心點的位置一般位于建筑物空間形狀的內(nèi)部;二是不同類型的注記表達方式會遵循一定標(biāo)準,比如建筑物的結(jié)構(gòu)與樓層是組合表達,地上樓層與地下樓層之間用“/”進行分隔,標(biāo)高的注記前部有標(biāo)高類型說明等。因此可以通過注記與建筑物的空間關(guān)系來確定注記轉(zhuǎn)屬性的歸屬問題,然后再建立一套可以對注記內(nèi)容進行識別和提取的規(guī)則,就能自動將建筑物注記轉(zhuǎn)換到相應(yīng)屬性值中。

        4 提取流程和方法

        4.1 注記的預(yù)處理

        注記的預(yù)處理主要處理兩種問題。第一種,利用關(guān)鍵字查詢的方法,剔除與需要提取的建筑物屬性無關(guān)的注記,如“壩”“空”“平臺”等。第二種,合并分散的注記。根據(jù)地形圖成圖規(guī)范,一個完整的建筑物屬性表達應(yīng)作為一個注記對象存在。通過實際數(shù)據(jù)分析,發(fā)現(xiàn)存在部分建筑物注記不規(guī)范,沒有將完整的屬性內(nèi)容作為一個獨立的注記對象,而是分為多個組成,如建筑物結(jié)構(gòu)與樓層、標(biāo)高類型與高程值等分別作為一個獨立的對象表示等,需要對此部分注記進行合并處理。

        4.2 空間運算

        通過建筑物與處理后的注記均進行空間運算,建立每個建筑物對象與落在建筑物內(nèi)的注記對象之間的關(guān)聯(lián)關(guān)系。原則上位于建筑物內(nèi)的注記均可認為是此建筑物的屬性內(nèi)容。

        4.3 注記內(nèi)容識別

        對屬于建筑物的注記內(nèi)容分別進行識別。先要建立識別規(guī)則,通過正則表達式的匹配方法來識別注記內(nèi)容,如果識別返回結(jié)果為真,則可以標(biāo)記為該規(guī)則對應(yīng)的類別。以 1∶500地形圖為例,定義的部分識別規(guī)則如表2所示。

        部分識別規(guī)則 表2

        部分不同注記內(nèi)容的匹配結(jié)果如表3所示。

        部分注記匹配結(jié)果 表3

        4.4 屬性提取

        建立提取規(guī)則,根據(jù)識別結(jié)果匹配對應(yīng)的提取規(guī)則,通過正則表達式提取方法將屬性信息提取出來,然后寫入建筑物對應(yīng)的屬性字段中。同樣以 1∶500地形圖為例,部分屬性信息的提取規(guī)則和結(jié)果如表4所示。

        部分屬性提取規(guī)則和結(jié)果 表4

        5 實例分析

        為驗證本文提出的方法的效率和可用性,本文結(jié)合重慶市某區(qū)域地理框架要素數(shù)據(jù)建庫項目進行了生產(chǎn)性試驗。在C#平臺下,通過基于ArcGIS Addin開發(fā)插件工具嵌入到ArcMap中,實現(xiàn)建筑物屬性的自動識別和提取。

        5.1 ArcGIS Addin簡介

        ArcGIS Addin是ArcGIS 10開始引入的新桌面定制開發(fā)技術(shù),可以在ArcMap中更加方便地進行功能的自定義和擴展[4]。其支持的功能類型廣泛、文件結(jié)構(gòu)簡單、安裝部署方便,能快速地進行開發(fā)投入應(yīng)用。Addin支持的對象類型主要有交互類和容器類兩種[5],具體如圖2所示,通過這些對象,可以定制開發(fā)需要的插件。

        圖2 Addin支持的功能類型

        在開發(fā)過程中,根據(jù)開發(fā)的語言不同,可將Addin開發(fā)方式分為兩種[6]:基于Python腳本語言的Addin技術(shù)和面向.Net(包含C#、VB、C++等)及Java高級編程語言的Addin技術(shù)。

        同Python Addin技術(shù)相比,面向.Net及Java高級編程語言的開發(fā)方式可支持更多的擴展元素,它是基于AO組件的擴展開發(fā),可實現(xiàn)細粒度地控制ArcGIS的各種操作[7],因此本文選取的是基于C#的Addin開發(fā)模式。

        5.2 主要代碼

        (1)通過IfeatureCursor接口來實現(xiàn)對象的遍歷,主要代碼如下:

        IfeatureCursor JzwFeaturecursor;

        IFeature pfeature;

        IQueryFilter pfilter;

        pfilter=null;

        JzwFeaturecursor=建筑物圖層.Search(pfilter,false);

        pfeature=JzwFeaturecursor.NextFeature();

        while(pfeature !=null)

        {

        pfeature=JzwFeaturecursor.NextFeature();

        }

        (2)空間運算可以通過IspatialFilter接口來實現(xiàn),主要代碼如下:

        ISpatialFilter pSpatialFilter=new SpatialFilterClass();

        pSpatialFilter.SpatialRel=esriSpatialRelEnum. esriSpatialRelContains;

        pSpatialFilter.Geometry=(IGeometry)建筑物對象.Shape;

        IFeatureCursor ZjFeatureCursor;

        ZjFeatureCursor=注記圖層.Search(pSpatialFilter,false);

        (3)注記內(nèi)容匹配的主要方法如下:

        Bool Ragex. IsMatch(注記內(nèi)容,識別規(guī)則);

        (4)注記內(nèi)容提取的主要方法如下:

        Regex. Match(注記內(nèi)容,提取規(guī)則);

        (5)屬性字段寫入的主要代碼如下:

        建筑物對象.set_Value(建筑物對象.Fields.FindField(字段),屬性值);

        5.3 結(jié)果分析

        通過該方法對1 400 km2范圍內(nèi)的110萬個建筑物對象進行了自動化的屬性提取,耗時約3個小時,數(shù)據(jù)成果經(jīng)抽檢,準確率高達98%,只有少量的特殊情況需要人工干預(yù)處理,該項目自動提取的屬性字段如表5所示。

        自動提取的屬性字段表結(jié)構(gòu) 表5

        地下樓層Int頂層Int架空層Int夾層IntH頂高程DoubleH地高程DoubleH0高程DoubleH制高程DoubleH女兒墻高程DoubleH吊高程Double

        提取完成后建筑物數(shù)據(jù)的屬性結(jié)果如圖3所示。

        圖3 建筑物屬性提取結(jié)果

        由于注記內(nèi)容具有多樣化和不可預(yù)見性,定義的規(guī)則只是根據(jù)大多數(shù)情況來制定的,因此要對提取的過程進行異常捕捉監(jiān)控,對出現(xiàn)異常的情況進行分析,進一步完善相應(yīng)的規(guī)則,從而提高屬性提取的準確度。

        6 結(jié) 語

        本文利用正則表達式規(guī)則的優(yōu)勢,將其用于建筑物屬性的識別與提取,并在C#環(huán)境下基于ArcGIS Addin開發(fā)了地形圖建筑物屬性提取插件工具,通過實際案例測試與分析,能快速地將地形圖建筑物的注記內(nèi)容提取到建筑物的屬性字段中,準確率和自動化程度高,能有效地節(jié)約生產(chǎn)成本,提高生產(chǎn)效率,在實際的項目應(yīng)用中取得了比較好的效果。

        同時也發(fā)現(xiàn),該方法對地形圖的質(zhì)量要求較高,受注記內(nèi)容的規(guī)范性,不可能完全正確,針對特殊情況,還需要一定程度上的人工干預(yù),接下來將進一步研究算法和正則表達式規(guī)則,提高成功率。

        猜你喜歡
        樓層高程建筑物
        利用樓層廢水勢能的發(fā)電裝置
        鄰近既有建筑物全套管回轉(zhuǎn)鉆機拔樁技術(shù)
        8848.86m珠峰新高程
        描寫建筑物的詞語
        電梯的升與降
        讀者(2019年2期)2019-01-05 09:09:44
        自動扶梯樓層板周邊環(huán)境的安全防護
        GPS控制網(wǎng)的高程異常擬合與應(yīng)用
        火柴游戲
        SDCORS高程代替等級水準測量的研究
        回歸支持向量機在區(qū)域高程異常擬合中的應(yīng)用
        无码精品国产va在线观看| 高清高速无码一区二区| 国产精品亚洲av网站| 日产一区二区三区的精品| 国产不卡av一区二区三区 | av在线不卡一区二区三区| 19款日产奇骏车怎么样| 在线精品首页中文字幕亚洲| 国产激情无码视频在线播放性色| 亚洲无线一二三四区手机| 色先锋av影音先锋在线| 无码欧美毛片一区二区三| 久久久av精品波多野结衣| 人与禽交av在线播放| 欧美成人免费看片一区| 97无码人妻一区二区三区蜜臀 | 中文字幕日本人妻久久久免费| 福利视频一二三在线观看| 国产精品久久久久免费a∨不卡| 亚洲一区二区三区高清视频| 中文字幕本久久精品一区| 精品国内在视频线2019| 人妻少妇边接电话边娇喘| 亚洲国产无套无码av电影| 久久国产精品久久精品国产| 国产精品不卡无码AV在线播放| 暴露的熟女好爽好爽好爽| 亚洲国产精品成人天堂| 日本高清视频wwww色| 边喂奶边中出的人妻| 激情综合色五月丁香六月亚洲| 国产精品揄拍100视频| 激情文学人妻中文字幕| 九九精品国产亚洲av日韩| 国产日韩厂亚洲字幕中文| 国语自产视频在线| 蜜臀av性久久久久蜜臀aⅴ| 一区五码在线| 久草精品手机视频在线观看| 激情五月天色婷婷久久| 不卡的av网站在线观看|