基于实体匹配技术的点状城区要素融合更新
2022-10-31张大骞刘善磊
张大骞,刘善磊,杨 锦
(1.江苏省基础地理信息中心,江苏 南京 210013)
网络电子地图中含有大量有价值的POI信息,这些POI数据对于人们的日常生活与工作具有重大参考意义。将现势性较强的POI数据作为基础地理信息更新参考数据,可在一定程度上减少人工核实工作量,简化部分基础地理信息要素更新的作业流程[1-4]。针对高德数据与地理国情监测数据两类异源矢量空间数据,本文在对数据进行预处理和质量检查的基础上,研究了一种基于多特征组合的点实体匹配技术,实现部分城市点状要素数据的融合更新。
1 方法
为实现与地理国情监测中点状要素数据的融合更新,需将POI数据通过相关技术从互联网爬取。本文基于FME搭建模板实现高德POI数据的爬取,针对获取的POI数据,经数据预处理后进行实体匹配操作,最后对匹配结果进行验证与分析评价,具体技术流程见图1。
图1 技术流程图
2 POI数据获取与预处理
2.1 数据获取
利用FME研究基于API接口,解析JSON数据,分割提取数据的属性和位置信息,转换成空间数据。利用该技术可以零代码快速爬取互联网POI数据,具体的实现方法如下[5]:①前期准备。准备目标范围矢量文件、获取网站的密钥、API密钥列表文件等。②提取格网。由于单次仅可爬取400条记录,需要对过大区域进行格网分割,用分割后的区域范围循环发起爬取请求。读取目标范围矢量文件,构建合适大小格网,提取与目标范围相交的格网。③构建搜索范围参数。逐一将格网图形转换为JSON数据,提取JSON中格网图形的左下角与右上角经纬度坐标,按照API中boundary参数要求拼接参数。④构建随机API key参数。读取存储API key的文件,给格网数据增加APIkey数据列,平均分配赋值。⑤获取数据并解析。构建HTTP请求获取数据,提取有用数据部分,解析数据。⑥创建地理要素与输出。构建图形,将图形和属性写入矢量文件。
2.2 坐标纠偏
针对爬取获得的POI数据,需进行坐标纠偏,本文采取了一种网格逼近方法[6],通过FME的Python-Caller编写坐标纠偏算法,将高德的GCJ-02纠偏为CGCS2000经纬度数据。
2.3 数据清洗
数据清洗主要包括对数据的完整性、唯一性、合法性等进行检查与处理。通过多种转换器组合一次性实现数据的多方面检查与处理。
数据完整性的检查与处理:利用AttributeCreator、AttributeManager等转换器进行属性创建与设置;利用AttributeValidator转换器进行属性验证;利用AttributeSplitter转换器进行属性分离;利用AttributeRemover、BulkAttributeRemover等转换器实现属性删除;利用AttributeRenamer、BulkAttributeRenamer等转换器实现属性重命名;利用FeatureMerger、FeatureReader、NeighborFinder等转化器实现属性的挂接补充。
数据唯一性与合法性的检查与处理:Tester转换器可以实现单一条件过滤;TestFilter转换器可以实现多个条件过滤;AttributeFilter转换器可以实现属性过滤;GeometryFilter转换器可以实现几何过滤;Geometry Validator转换器可以实现几何验证;SpatialRelactor、SpatialFilter等转换器可以实现空间关系判断等。
3 基于多特征组合的点实体匹配
本文综合利用实体的位置、属性(语义)及环境特征,提出了基于距离、属性(语义)与环境等多个相似特征组合的匹配方法来解决点实体匹配问题[7-15]。
当匹配数据集覆盖程度很弱时,距离参数无法作为匹配依据,此时基于要素属性进行点实体匹配,但不同点实体可能具有相似属性,难以保证匹配的查准率。
数据整体呈现为强覆盖,数据密集的局部区域(单位面积内实体数目较多)出现弱覆盖现象(因为误差大于该区域的点之间的平均距离),或由于点实体的重复数字化(两次采集的点位可能不一样)、点实体自重叠等(但只有一个实体含有属性)错误,导致相互接近的两个点实体不一定是同名实体。对于这些情况下的点实体匹配问题,本文综合考虑点实体的距离、属性及环境等多个相似特征来解决匹配问题(前提是至少存在部分属性项匹配),有效地提高了匹配的查全率和查准率。
采用基于距离、属性与环境等多个相似特征的点实体匹配方法对点实体数据集进行实验,基本过程是:先用统计的方法计算出匹配的距离阈值,然后针对其中一个点数据集中的每个实体,利用其缓冲区在另一个点数据集中搜索在缓冲区内的候选匹配实体(缓冲区半径为距离阈值);若只搜索到一个实体,则将其视为当前实体的匹配实体,如果存在多个候选匹配实体,则根据式(1)计算相似度,将相似度值最大的候选匹配实体视为当前实体的最佳匹配实体。
式中,d为候选匹配实体与当前实体之间的距离;r为搜索目标实体缓冲区半径;MSa,b为源实体a与目标实体b的属性相似度;pEa,b为源实体a与目标实体b的环境相似度;A、β、γ为权重,可根据具体情况设定,但必须满足A+β+γ=1。
本文选择样本数据遵循了以下2个原则:①尽可能选择点分布均匀的区域范围;②选择范围内的源数据与目标数据具有较大的重叠度,即源数据中的实体几乎都能在目标数据中找到同名实体。
1)为保证点实体质量,利用DuplicateFilter转换器去除重名的点实体,同时利用Tester转换器去除不符合命名规则要求的点实体。
2)针对其中一个点数据集,利用Bufferer转换器建立缓冲区,利用PointOnAreaOverlayer转换器在另一个点数据集缓冲区内搜索候选匹配实体。
3)通过Tester转换器将初始匹配结果分离出,接着通过PythonCaller编写代码计算它们的属性相似度,将相似度值最大的候选匹配要素视为当前点实体的最佳匹配要素。
4)输出点实体的最终匹配结果,根据匹配类型,设计了“完全匹配”、“属性不匹配”(空间同一而属性不匹配)、“高德有”和“国情有”字段,“完全匹配”、“属性不匹配”通过PythonCaller输出,“高德有”和“国情有”则通过AttributeCreator输出。
3.1 数据验证
本文通过内外业结合的核查方式来验证各类高德数据对国情数据更新的补充作用,主要是针对匹配结果中带“属性不匹配”、“高德有”字段的不确定要素的核查,采用先内后外的顺序进行数据的验证。
街景地图作为一种全新的地图服务方式,目前已经广泛嵌入到各大地图网站,除了360°高分辨率、高质量的实景照片能够给用户带来身临其境的场景体验之外,作为一种全新的测绘成果,全景地图,能够以所见即所得的方式应用于地理空间数据采集与更新。本文主要借助智慧江苏时空云平台矢量数据、百度地图的街景成果[16]对不确定要素进行内业核查。
在内业核查验证基础上开展外业核查验证工作,进行实地资料收集与整理。主要基于清华山维Eps、清华山维EpsField等内外业一体化平台核查数据的位置与名称。内外业一体化进行地理信息更新一般包含3个步骤:数据准备、外业调绘以及数据处理和整理,主要内容如下[17]:
1)数据准备主要包括正射影像和地图切片的制作,矢量数据主要包括专题要素提取和格式转换。
2)在文件加密的基础上,将栅格数据和矢量数据导入与内外业平台相同的调绘软件,进行外业调绘。
3)将外业调绘得到的轨迹数据、草绘数据、矢量数据和拍照摄像等数据进行处理,最终形成成果数据。
3.2 实验分析
以溧阳市为实验样区,基于地理国情的行政区划和监测数据,获取高德POI数据和国情监测数据。提取出溧阳城区学校、居民小区、医院、村居委会四类城市要素的高德POI数据及国情数据(图2),利用多特征组合的点实体匹配技术进行融合匹配,最后进行内外业验证,分析结果如表1所示。
图2 实验数据样例
表1 点状要素数据融合分析
分析表1可知,网络获取的POI数据对于地理国情监测中典型城市点状要素更新有一定的参考意义,如学校和小区数据具有较高的利用价值。但由于商业网络电子地图数据更多的是为位置导航做数据支撑,所提供的数据内容与测绘地理信息部门采集的数据可能存在较大差异(如村居委会数据利用价值较低)。因此,应综合考虑数据实用价值,有效筛选对目标任务有价值的匹配数据。
4 结语
本文面向部分典型居民地要素,提出了一种基于网络爬取与多特征点实体匹配的点状要素更新方法,借助FME模板可以快速实现本文设计的技术流程,免去了大量代码的编写和调试工作,节省了时间和人力成本。通过FME模板实现网络地图POI数据与地理国情相关要素的融合,在一定程度上减少了内外业工作量。后期将结合自然资源调查监测工作中城市要素监测需求,进一步提升多源实体匹配融合更新技术研究深度。