ArcGIS中地理编码方法的改进_章意锋
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第30卷第3期2007年6月测绘与空间地理信息
GEOMATICS&SPATIALINFORMATION TECHNOLOGY Vol.30,No.3 Jun., 2007 收稿日期:2006- 09- 04
作者简介:章意锋(1980-),男,浙江宁波人,华东师范大学地图学与地理信息系统专业在读研究生,研究方向为地理信息系统的研究与开发。ArcGIS中地理编码方法的改进章意锋1,吴健平1,程怡2,曾春润1 (1.华东师范大学地理信息科学教育部重点实验室,上海200062; 2.华东师范大学城市与区域经济系,上海200062)
摘要:城市管理部门对空间数据与非空间数据共享整合的要求日益迫切,急需利用地理编码技术把空间数据和非空间数据联系起来。但是由于中国的地名、地址体系异常复杂等原因的存在,使得地理编码技术没有国外成熟,应用也没有国外广泛。针对上述问题,笔者提出了解决ArcGIS中组合定位器不支持中文等问题的一种解决方案,并且通过应用于上海市青少年管理系统,提出了关于如何提高地址匹配成功率的几点建议。
关键词: 地理编码;地址定位器;参考主题
中图分类号:P208 文献标识码:B 文章编号:1672- 5867(2007)03- 0116- 04
0引言
随着GIS在我国城市信息化建设中越来越广泛的应用,城市管理部门对空间数据与非空间数据共享整合的要求日益迫切。据专家分析,政府各职能部门拥有的大量业务信息中,80%的信息都与地理空间位置密切相关,但遗憾的是这些信息几乎都没有空间坐标,因此无法与其他信息整合,无法实现可视化的空间分
析[1]。为了将这些空间信息与非空间信息、非空间信息与非空间信息进行集成与融合,真正为公众提供直观、生动的基于空间位置的服务,需要建立空间与非空间信息之间的联系,而地理编码正是建立这两者之间联系的最重要、最实用的手段。
1 ArcGIS中的地理编码
1.1地理编码
地理编码又称地址匹配,是在含地址的表格数据与相关主题之间建立联系,并为表格数据创建一个相应的点图层,即对表格数据进行空间定位[2]。地理编码的过程是先对含地址的每个记录和带有地址属性的要素主题(参考主题)进行比较,如果找到匹配,参考主题上的地理坐标就被分配给相应的记录,这样,一个纯粹的只具有地址信息的表格数据文件就可以同时具有地理坐标信息,从而可以在地理信息系统中作为地图显示并进行进一步的分析。
1.2 ArcGIS中的地理编码
目前常用的GIS软件都具备地理编码功能,如Arc- GIS的Geocoding和MapInfo 的MapMarker等,并且地理编码方式基本相同。在ArcGIS中地理编码前,首先要确定一个参考主题,并建立地理编码索引。地理编码索引是根据编码所用的地址类型确定反映地址信息的相关字段,如选择USStreets则需要确定反映右起始门牌、左起始门牌、右终止门牌、左终止门牌以及路名的字段, ArcGIS中以地址定位器的方式来表现地理编码索引。建立地理编码索引后,就可以对包含地址的数据表格进行地理编码[3]。
在ArcGIS中内置了很多常用的地址定位器,这些地址定位器根据参考主题的不同可以分成两种类型:基于道路的定位器和基于地块的定位器。基于道路
的定位器通过道路名和门牌号码实现地址定位,在参考主题中每一个路段都具有道路名和起止门牌号码信息,在地理编码时,首先根据地址信息中的道路名找到参考主题中的相同名称路段(一般情况下有多个路段),然后根据地址信息中的门牌号及每个路段的起止门牌号码信息找到门牌号所在路段,最后根据门牌号及该路段的起止门牌号码信息进行内插确定该记录在该路段上的位置。基于地块的定位器是通过标识地块惟一性的信息进行地址定位的,在参考主题中每一地块都具有惟一的标识信息,这里的地块可以是行政区、邮政编码区、街坊等,根据地址中的标识信息,查找参考主题中具有相同标识的记录(地块),并定位到该地块中。常用的地址定位器见表1。
表1 ArcGIS内置的常用地址定位器[4]
2 ArcGIS中组合地址定位器存在的问题及解决方法
2.1 国外的软件不完全适合中国
美国是地理编码应用最早、最广泛的国家,早在20 世纪70年代就建立了全国的地理编码标准,并开发了通用的地理编码软件工具,成功地应用于TIGER软件系统,在历次全国人口普查统计中发挥了巨大作用。虽然国外地址编码技术已经很成熟,有了成型的应用产品,但无论是TIGER软件系统,还是MapInfo公司开发的MapMarker,或是ESRI公司的Geocoding都不是十分适合中国的国情。我们不能直接使用国外开发的这些成熟的地理编码软件的主要原因有: 1)中国现有的地名、地址体系异常复杂,地名混乱、无序,缺乏规律性和统一的标准;
2)国外特别是美国公司的产品都是根据美国街道、街区的特色开发出来适合美国的地址匹配技术,而且这些公司开发的地理编码软件中附带大量美国的地址数据库和地图; 3)国外的软件一般对英文的支持很好,但是对中文的支持有时
会不尽如人意,有些功能需要打补丁才能支持中文。
2.2 ArcGIS中地址定位器存在的问题
ArcGIS虽然内置了很多地址定位器,而且其中一些地址定位器的地址模型也基本能符合国内地址定位的要求,但是能够把这些零散的地址定位器组合到一起的组合定位器却不能支持中文。假如需要建立一个地址定位模型,其中需要实现两种类型地址信息的定位,一种是街道+门牌号,另一种117第3期章意锋等:ArcGIS中地理编码方法的改进是小区名。据此首先根据街道主题能够提供的信息创建一个类型是USStreets的地址定位器,然后根据小区主题创建一个类型是SingleField的地址定位器。这样就可以分别使用这两个定位器,来定位这两种类型的地址,但是当两个定位器合在一起创建组合定位器的时候,我们发现不管输入什么地址,定位器给出的结果都是不能匹配的。但是综合使用多种定位器是提高地址匹配准确性的策略之一[5],而且在实际使用中一个地区的地址很少能够用一种形式的定位器全部涵盖。有两种方法来解决这个问题,一种是在程序里面对每个地址循环使用不同的地址定位器匹配,这涉及到匹配拟合度的比较,而且需要设置匹配的域值,然后最后决定匹配的结果,这个过程实现起来比较复杂;另一个方法就是建立一个组合定位器,这需要解决当前版本不能支持中文的问题。既然组合定位器能够支持英文,就设法把中文的地址匹配转化成英文的地址匹配。
2.3 ArcGIS中组合地址定位器不支持中文的解决方法
2.3.1 把中文地址转化成英文编码首先,需要从原始的地址中找出能够确定其具体位置的单个地址要素。通常可以把地址要素分为几类:行政区界、路名、门牌号、楼牌号、住宅小区和突出建筑等, 对于每一类的地址要素,都可以找