張芬
(上海市測(cè)繪院,上海 200063)
隨著計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)等支撐技術(shù)的深入發(fā)展,GIS 技術(shù)應(yīng)用也逐步拓展?jié)B透到各行各業(yè)。地名地址匹配技術(shù)即地理編碼,是GIS 融入到相關(guān)領(lǐng)域的核心技術(shù),它將其他行業(yè)的非空間專題數(shù)據(jù)與實(shí)際的空間地理坐標(biāo)掛接,實(shí)現(xiàn)各個(gè)行業(yè)專題數(shù)據(jù)的“落地”,在此基礎(chǔ)上,通過在電子地圖上疊合專題數(shù)據(jù),實(shí)現(xiàn)直觀的專題數(shù)據(jù)顯示與查詢、統(tǒng)計(jì)等GIS 功能。近年來,隨著地名地址匹配技術(shù)的逐步完善與深入應(yīng)用,如何實(shí)現(xiàn)地名地址的便捷輸入、高效快速定位成為地名地址匹配應(yīng)用的關(guān)鍵問題。
在消防系統(tǒng)案件處理中,接警員輸入報(bào)案地址,借助地名地址匹配功能獲得匹配坐標(biāo)并在電子地圖上顯示報(bào)案地址。為保證案件接收處理的快速、便捷、準(zhǔn)確,作為接警處警核心功能的地名地址匹配,必須能保證接警員能快速輸入地名地址,快速進(jìn)行地址定位且匹配結(jié)果準(zhǔn)確無誤。如何在特定的應(yīng)用領(lǐng)域?qū)崿F(xiàn)地名地址快速高效定位,筆者認(rèn)為有兩個(gè)方面的問題需要解決,一個(gè)是輸入方式的革新,以保證接警人員的快速便捷輸入;二是定位快速準(zhǔn)確,以保證處理警情的迅速無誤。
基于拼音音頭輸入的地名地址匹配技術(shù),區(qū)別于一般的中文輸入的地名地址匹配功能,它能接收地址的拼音音頭輸入,能正確解析輸入的拼音音頭,并智能進(jìn)行地址定位,輸出中文形式的實(shí)際地址以及與之匹配的地理坐標(biāo)。
本文以應(yīng)用在消防系統(tǒng)中的拼音音頭地址匹配技術(shù)為例,詳細(xì)介紹地名地址數(shù)據(jù)庫(kù)優(yōu)化、地名地址輸入方式優(yōu)化、快速檢索等關(guān)鍵技術(shù)。
數(shù)據(jù)的完備與否決定著地址匹配率的高低。一個(gè)檢索范圍廣,匹配率高的地名地址匹配功能后面,總有一個(gè)龐大的地址數(shù)據(jù)庫(kù)作為后臺(tái)支撐。盡管有Oracle等大型數(shù)據(jù)庫(kù)高效檢索機(jī)制的大力支持,龐大的地名地址數(shù)據(jù)同樣影響著地址匹配的檢索效率。管理好紛繁的地址數(shù)據(jù),將這些數(shù)據(jù)進(jìn)行有效分類,將數(shù)據(jù)庫(kù)的龐大數(shù)據(jù)量“化大為小”,是解決地址匹配效率的有效途徑。
在消防系統(tǒng)中,按照實(shí)際接處警的需要,地名地址匹配功能將地名地址數(shù)據(jù)分為道路門牌、居民區(qū)、鄉(xiāng)鎮(zhèn)、知名區(qū)域等類別,將整個(gè)龐大的地址庫(kù)按地址分類,邏輯上劃分成幾個(gè)小地址庫(kù),在進(jìn)行地址檢索時(shí),按照輸入的地址類別標(biāo)示,有針對(duì)性的檢索小地址庫(kù),縮小檢索范圍,從而大大提高檢索速度。
為支持地名地址拼音音頭輸入,同樣需要后臺(tái)拼音音頭地址庫(kù)的支撐,所以,進(jìn)行地址拼音音頭數(shù)據(jù)處理,建立地址音頭數(shù)據(jù)庫(kù)是首先必須完成的基礎(chǔ)工作。
按照一定的數(shù)據(jù)處理標(biāo)準(zhǔn),將分類地址數(shù)據(jù)庫(kù)中的地址建立對(duì)應(yīng)的拼音音頭地址庫(kù),當(dāng)用戶輸入拼音音頭地址時(shí),地名地址功能能很快檢索到對(duì)應(yīng)的中文地址。以居民區(qū)為例,建立居民區(qū)表與居民區(qū)拼音音頭表之間的關(guān)系如圖1所示。
圖1 數(shù)據(jù)表關(guān)系
(1)建立漢字—拼音音頭對(duì)照表
漢字—拼音音頭對(duì)照表是建立地址音頭數(shù)據(jù)庫(kù)的基礎(chǔ),它是單個(gè)漢字與其拼音音頭的對(duì)照關(guān)系表,比如“樂”對(duì)應(yīng)音頭“L”和“Y”,為保證覆蓋所有的消防接警地址,本項(xiàng)目建立了基本漢字—拼音音頭對(duì)照表(共計(jì)23 088個(gè)漢字),該表涵蓋常用漢字和其讀音音頭。
地址音頭數(shù)據(jù)庫(kù)是以漢字—拼音音頭對(duì)照表為基礎(chǔ)進(jìn)行的。按照對(duì)照表,以一定的音頭數(shù)據(jù)處理標(biāo)準(zhǔn),生產(chǎn)地名地址庫(kù)相對(duì)應(yīng)的地址音頭數(shù)據(jù)庫(kù),同時(shí),可根據(jù)實(shí)際地址情況對(duì)漢字—拼音音頭對(duì)照表進(jìn)行擴(kuò)充,以保證基本漢字—拼音音頭對(duì)照表的可持續(xù)擴(kuò)充。
(2)音頭數(shù)據(jù)處理標(biāo)準(zhǔn)
音頭數(shù)據(jù)生成是將地址詞條拆分為單字進(jìn)行音頭轉(zhuǎn)換,對(duì)于屬于多音字的單字,會(huì)轉(zhuǎn)換出該字所有讀音的音頭,最后將該詞條所有單字的所有音頭進(jìn)行排列組合,輸出結(jié)果。
根據(jù)單字的不同,有以下幾種處理標(biāo)準(zhǔn):
①單音常用字:能在漢字—拼音頭對(duì)照表中找到,能輸出唯一的音頭;
②多音常用字:能在漢字—拼音頭對(duì)照表中找到,能輸出其所有讀音的音頭;
③生僻字:不能在漢字—拼音頭對(duì)照表中找到,需要人工生成音頭,并擴(kuò)充漢字—拼音頭對(duì)照表;
④字符和數(shù)字:不能在漢字—拼音頭對(duì)照表中找到,按源字輸出。
(3)處理流程
音頭數(shù)據(jù)的處理流程為:將詞條拆分為單字,按照處理標(biāo)準(zhǔn)中的分類情況對(duì)單字進(jìn)行處理,最后對(duì)各單字的音頭排列組合輸出結(jié)果。自動(dòng)化處理結(jié)束之后,可根據(jù)處理過程中輸出的標(biāo)識(shí)篩選出漢字—拼音頭表中不存在的漢字,然后將該字?jǐn)U充至漢字—拼音頭表,并用程序自動(dòng)修改存在該字的詞條音頭。
一般來說,輸入拼音音頭要比輸入漢字消耗的時(shí)間少,而且輸入方便。特別對(duì)于有口音干擾的報(bào)警地址,輸入拼音音頭確實(shí)是一個(gè)不錯(cuò)的思路。同時(shí),為了縮小地址檢索范圍,增加輸入地址分類標(biāo)示。
考慮消防系統(tǒng)接警員輸入案發(fā)地址的實(shí)際場(chǎng)景,為提高地址的輸入效率,地名地址輸入由一般的中文地址輸入優(yōu)化為地址拼音音頭輸入,并且滿足拼音頭的模糊輸入。消防接警員可以輸入案發(fā)地址的拼音音頭,比如“中興路”,往往輸入為“zxl”,甚至為了節(jié)省時(shí)間,輸入為“z”。對(duì)于地址“中興路靠近西藏北路”的檢索,輸入為:ZX[靠近]X。下圖為封裝調(diào)用拼音音頭地名地址匹配功能后的實(shí)際接處警輸入與輸出界面。輸入包括道路門牌、居民區(qū)、單位、鄉(xiāng)鎮(zhèn)、知名區(qū)域的分類標(biāo)示以及地址拼音音頭,如圖2所示。
圖2 接處警輸入與輸出界面
確定用戶的輸入方式,處理數(shù)據(jù)分類,建立音頭數(shù)據(jù)庫(kù)之后,拼音音頭地址匹配邏輯基本上形成了。用戶輸入地址拼音頭、地址分類標(biāo)示;地名地址功能根據(jù)輸入條件,首先進(jìn)行輸入解析,之后檢索音頭數(shù)據(jù)庫(kù),將輸入的地址拼音頭轉(zhuǎn)換成中文地址,然后再根據(jù)輸入的地址分類標(biāo)示定位分類地址庫(kù),最后利用中文地址在分類地址庫(kù)中進(jìn)行小范圍檢索。利用音頭輸入法的便捷輸入以及縮小地址檢索范圍的策略,有效提高地址檢索效率。具體地址匹配邏輯如圖3所示:
圖3 拼音音頭地址匹配邏輯圖
本文闡述的基于拼音音頭地名地址匹配功能在輸入方式、數(shù)據(jù)庫(kù)分類存儲(chǔ)方面進(jìn)行了創(chuàng)新,在提高地址輸入速度,加快匹配速度上做出了探索性的研究。目前,上海市測(cè)繪院制作的基于拼音音頭輸入的地名地址定位功能已經(jīng)成功運(yùn)用在上海市消防系統(tǒng)中。基于拼音音頭輸入的地名地址快速定位方法在其他需要快速輸入地址的地址匹配應(yīng)用領(lǐng)域同樣具有很大的應(yīng)用價(jià)值,該技術(shù)的拓展應(yīng)用,將為不同領(lǐng)域,不同系統(tǒng)間的數(shù)據(jù)共享提供強(qiáng)有力的技術(shù)支撐。
[1]夏蘭芳,毛煒青,郭功舉.上海城市地理編碼系統(tǒng)應(yīng)用與研究[J].測(cè)繪通報(bào),2012(1):78 ~80.
[2]張林曼,吳升.地理編碼系統(tǒng)中地址匹配引擎的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)繪信息與工程,2008,33(6):12 ~16.
[3]陳細(xì)謙,遲忠先,金妮.城市地理編碼系統(tǒng)應(yīng)用與研究[J].計(jì)算機(jī)工程,2004,30(23):50 ~52.
[4]江洲,李琦.地理編碼(Geocoding)的應(yīng)用研究[J].地理與地理信息科學(xué),2003,19(3):22 ~25.
[5]趙東保,盛業(yè)華.全局尋優(yōu)的矢量道路網(wǎng)自動(dòng)匹配方法研究[J].測(cè)繪學(xué)報(bào),2010,39(4)416 ~421.