一种异构地址标准转换及匹配方法与流程

文档序号:12719931阅读:269来源:国知局
一种异构地址标准转换及匹配方法与流程

本发明属于地理信息领域,涉及一种异构地址标准转换及匹配方法。



背景技术:

随着大数据的发展,地址云平台是基于空间标准地址的对外应用、服务平台,实现了业务数据的实时抽取、清洗、匹配、上图,系统通过正向、反向匹配,实现了业务数据全上图,并对上图后的业务数据进行专题制图与发布,服务于各行各业对地图的个性化需求,打造各行业的专属地图。地址匹配是将文字性的描述地址与其空间的地理位置坐标建立起对应关系的过程。地址匹配服务按照特定的步骤为地址查找匹配对象。首先要将地址标准化;然后服务器搜索地址匹配参考数据,查找潜在的位置;根据与地址的接近程度为每个候选位置指定分值,最后用分值最高的来匹配这个地址。

CN 105005577公开了一种地址匹配方法,其采取分层渐进式的匹配方法,具体包括快速匹配、经纬度匹配、模糊匹配和人工判定四个步骤,快速匹配对高质量目标地址进行精确匹配,运用链式补充机制适当补充匹配;经纬度匹配依据地图服务提供商提供的经纬度信息对目标地址和其邻近小区进行匹配;模糊匹配运用模糊索引对目标地址和相似小区进行匹配;人工判定机制对匹配的结果进行检验和把关。该发明其还包括地址分词技术和地址匹配准确性的信心指数机制。该发明虽然运用了多重地址匹配技术复合运用问题,但为对地址进行标准化处理,因此难以适应不同领域对地址的需求。



技术实现要素:

本发明提供了一种异构地址标准转换及匹配方法,以解决地址难以标准化、适应性不强、准确率不高的不足。

为实现上述目的,本发明提供了一种异构地址标准转换及匹配方法,包括如下步骤:

步骤1:验证数据合法性:若数据合法则执行步骤S2,否则,直接抛出异常,执行结束;

步骤2:判断数据正向匹配,若是则得到匹配行政区划信息标识,并进行正向匹配;若数据不满足正向匹配,则进行反向匹配;

步骤3:判断步骤2中的正向匹配或反向匹配的结果是否为空,若匹配结果为空则抛出异常,执行结束;若匹配结果不为空,则得到匹配结果信息数据;

步骤4:根据步骤3中的匹配结果信息数据判断是否匹配管理辖区,若满足则进行归属匹配再返回结果;否则直接返回结果,执行结束。

优选的,所述正向匹配的具体步骤依次为:

S11:根据传入的数据详址信息、省市区县信息验证数据的合法性,若数据合法则进行步骤S12;若数据不合法,直接抛出异常,执行结束;

S12:将数据进行划分为信息点、详址信息数据、省市区县等其他条件的信息数据;若数据为省市区县的信息数据则进行行政区划补全和标准化字段处理;

S13:根据步骤S12判断传入的数据是否同时没有信息点和详址;若传入的数据同时没有信息点和详址,则执行没有详址和信息点处理并返回结果;若传入的数据为信息点或详址信息,则相应地执行信息点匹配和详址匹配。

进一步的,所述行政区划补全和标准化字段处理的步骤依次为:

S121:将传入数据进行拼接组装查询地址,所述地址包括省市区县、乡镇、居委会、街路巷;

S122:拆分所述拼接的地址,得到对应词组;

S123:以所选行政区划为准,解决行政区划冲突问题;

S124:执行Solr地址查询,对省市区县字段补全,得到分词后标准化的词组列表。

更进一步地,所述行政区划补全和标准化字段处理的步骤还包括重新标准化地址,依次为:

首先,获取标准地址SolrBean;

接着根据词类型标准化行政区划地址,并返回标准地址Solr对象;若所述Solr对象不存在或存在多条,查询上一级地址,如果未找到,继续查询上一级地址直至Solr对象唯一;

最后,判断标准地址是否存在以及是否匹配最近地址,若是则匹配最近的地址,专门针对门牌、单元、房间进行匹配;若不存在最近地址,则返回得到的标准值SolrBean。

优选的,所述步骤S13中的没有详址和信息点的具体步骤为:

S131:重新标准化地址,设置并返回最小级别的行政区域标准地址;

S132:判断返回的标准地址是否存在:若存在,设置匹配率得分,接着获取最小级别行政区划的标准地址信息,得到最终标准地址信息;若不存在,抛出异常处理,执行结束。

优选的,所述信息点匹配的步骤依次为:

首先判断信息点标准地址是否存在,若存在,则执行根据信息点的标准地址信息,若不存在,执行详址匹配;

接着根据得到的标准地址信息,设置行政区划代码和名称;

最后进行匹配率转转,得到最终返回结果对象数据。

7.根据权利要求2或4所述的一种异构地址标准转换及匹配方法,其特征在于,所述详址匹配的步骤依次为:

首先解决行政区划冲突问题;

接着根据地址扩展对象补全词组列表;

其次进行重新标准化地址,设置并返回最小级别的行政区划标准地址;

然后判断返回的标准地址是否存在,若未找到行政区划标准地址,则抛出异常处理,若存在标准地址则判断经纬度是否都为零:若经纬度坐标都为零,则往上找上一级标准地址直至得到标准地址数据;若经纬度坐标不为零,得到标准地址数据;

接着判断标准地址数据是否只需匹配一条记录,若是则设置匹配率,设置返回结果对象,得到匹配结果对象数据;若不需匹配一条记录,则执行solr查询,匹配多条结果,得到匹配结果对象数据;

最后根据匹配结果对象数据设置所述行政区划代码和名称,返回结果。

优选的,所述反向匹配的步骤为:

首先输入经纬度XY坐标、搜索半径;

接着根据经纬度XY坐标、搜索半径搜索距离最近的信息点;

最后搜索半径内是否有信息点,若存在则返回距离最近的信息点地址信息,然后返回结果;若不存在,设置得到匹配状态为未匹配到适当地址的结果对象再返回结果。

优选的,所述归属匹配的具体步骤依次为:

传入地址片段对象相关信息,包含行政区划代码、管理辖区代码、经纬度;

判断是否需要“归属匹配”,若无需归属匹配则设置返回结果对象并返回结果,若需要归属匹配,则判断是否有管理辖区代码:若有管理辖区代码,则根据管理辖区代码查找管理辖区相关信息,设置返回结果对象并返回结果,若未查找到管理辖区信息,则进行管理辖区信息查询。

进一步的,所述管理辖区查询的具体步骤为:

首先根据地址片段对象组装行政编码列表,以行政区划从小到大排列顺序,判断行政区划代码列表大小是否大于1:若政区划代码列表不大于1,则根据传入的经纬度坐标进行solr空间查询,得到匹配的最小管理辖区信息,将得到的最小管理辖区信息设置为返回结果对象并返回结果;若行政区划代码列表大于1,则执行“根据传入的行政编码列表取第1个,进行管理辖区关联关系查询”;

接着判断根管理辖区关联关系查询是否有结果:若没有结果,则执行“从行政区划代码列中移除当前行政区划代码,得到新的行政区划列表”,然后返回所述“判断判断行政区划代码列表大小是否大于1”步骤;若查询有结果,则判断是否唯一;

若查询结果唯一则得到管理辖区信息,将管理辖区信息设置为返回结果对象并返回结果;若查询结果不唯一,则判断管理辖区关联关系是否为街路巷级别:若为街路巷级别,则逐次向下判断行政编码直至匹配到最小的管理辖区信息,将得到的最小管理辖区信息设置为返回结果对象并返回结果;若不为街路巷级别,则返回所述“行政区划代码列中移除当前行政区划代码”步骤。

本发明的有益效果是:

1、通过工具方便配置业务数据(数据库、表、或其他形式数据),指定匹配项及匹配输出项;

2、通过服务可实现地址的正、反向匹配,对匹配结果评价;归属匹配可以提高常规正向匹配的精确度。

3、行政区划补全和标准化字段处理的可满足不同领域对地址的要求,提高地址的适应性,可将匹配结果输出成专题地图表;。

4、多级的匹配方法和设置了返回流程,对单一关联和多种关联的结果进行有效区分,容错率更高,提高了匹配的精确度。

附图说明

图1是本发明的地址匹配方法的总流程图;

图2是本发明的正向匹配方法的流程图;

图3是本发明的行政区划补全和标准化字段处理的流程图;

图4是本发明的重新标准化地址的流程图;

图5是本发明的没有详址和信息点的流程图;

图6是本发明的信息点匹配的流程图;

图7是本发明的详址匹配的流程图;

图8是本发明的反向匹配的流程图;

图9是本发明的归属匹配的流程图。

具体实施方式

为了更好的理解本发明所提出的技术方案,下面结合附图和具体的实施例对本发明作进一步阐述。

如图1所示,一种异构地址标准转换及匹配方法,其特征在于,依次包括如下步骤:

步骤1:验证数据合法性:若即验证传入的信息是否未包含地址信息,如果数据合法则执行步骤S2,否则,直接抛出异常,执行结束;

步骤2:判断数据正向匹配,若是则得到匹配行政区划信息标识,并进行正向匹配;若数据不满足正向匹配,则进行反向匹配;

步骤3:判断S2中的正向匹配或方向匹配的结果是否为空,若匹配结果为空则抛出异常,执行结束;若匹配结果不为空,则得到匹配结果信息数据;

步骤4:根据S3中的匹配结果信息数据判断是否匹配管理辖区,若满足则进行归属匹配再返回结果;否则直接返回结果,执行结束。

1、正向匹配

如图2所示,所述正向匹配的具体步骤依次为:

S11:根据传入的数据详址信息、省市区县等其他条件信息验证数据的合法性,若数据合法则进行步骤S12;若数据不合法,直接抛出异常,执行结束;

S12:将数据进行划分为信息点、详址信息数据、省市区县等其他条件的信息数据;若数据为省市区县等其他条件的信息数据则进行行政区划补全和标准化字段处理;

S13:根据步骤12判断传入的数据是否同时没有信息点和详址;若传入的数据同时没有信息点和详址,则执行没有详址和信息点处理并返回结果;若传入的数据为信息点或详址信息,则相应地执行信息点匹配和详址匹配。

1.1行政区划补全和标准化字段处理

如图3所示,行政区划补全和标准化字段处理的步骤依次为:

S121:将传入数据进行拼接组装查询地址,所述地址包括省市区县、乡镇、居委会、街路巷;

S122:拆分所述拼接的地址,得到对应词组;

S123:以所选行政区划为准,解决行政区划冲突问题;

S124:执行Solr地址查询,对省市区县字段补全,得到分词后标准化的词组列表。

1.2重新标准化地址

如图4所示,重新标准化地址的步骤为:

首先,获取标准地址SolrBean;

接着根据词类型标准化行政区划地址,并返回标准地址Solr对象;若所述Solr对象不存在或存在多条,查询上一级地址,如果未找到,继续查询上一级地址直至Solr对象唯一;最后,判断标准地址是否存在以及是否匹配最近地址,若是则匹配最近的地址,专门针对门牌、单元、房间进行匹配;若不存在最近地址,则返回得到的标准值SolrBean。

1.3没有详址和信息点

如图5所示,没有详址和信息点的具体步骤为:

S131:重新标准化地址,设置并返回最小级别的行政区域标准地址;

S132:判断返回的标准地址是否存在:若存在,设置匹配率得分,接着获取最小级别行政区划的标准地址信息,得到最终标准地址信息;若不存在,抛出异常处理,执行结束。

1.4信息点匹配

如图6所示,信息点匹配的具体步骤为:

首先判断信息点标准地址是否存在,若存在,则执行根据信息点的标准地址信息,若不存在,执行详址匹配;

接着根据得到的标准地址信息,设置行政区划代码和名称;

最后进行匹配率转转,得到最终返回结果对象数据。

1.5详址匹配

如图7所示,详址匹配的步骤依次为:

首先解决行政区划冲突问题;接着根据地址扩展对象补全词组列表;其次进行重新标准化地址,设置并返回最小级别的行政区划标准地址;然后判断返回的标准地址是否存在,若未找到行政区划标准地址,则抛出异常处理,若存在标准地址则判断经纬度是否都为零:若经纬度坐标都为零,则往上找上一级标准地址直至得到标准地址数据;若经纬度坐标不为零,得到标准地址数据;

接着判断标准地址数据是否只需匹配一条记录,若是则设置匹配率,设置返回结果对象,得到匹配结果对象数据;若不需匹配一条记录,则执行solr查询,匹配多条结果,得到匹配结果对象数据;

最后根据匹配结果对象数据设置所述行政区划代码和名称,返回结果。

2、反向匹配:

如图8所示,反向匹配的具体步骤为:

首先输入经纬度XY坐标、搜索半径;

接着搜索距离最近的信息点;可通过solr空间查询方法搜索缓冲区内距离最近的信息点。其次,搜索半径内是否有信息点,若存在则返回距离最近的信息点地址信息并返回结果,若不存在,设置得到匹配状态为未匹配到适当地址的结果对象再返回结果。

3、归属匹配

如图9所示,归属匹配的具体步骤依次为:

传入地址片段对象相关信息,包含行政区划代码、管理辖区代码、经纬度;

判断是否需要“归属匹配”,若无需归属匹配则设置返回结果对象并返回结果,若需要归属匹配,则判断是否有管理辖区代码:若有管理辖区代码,则根据管理辖区代码查找管理辖区相关信息,设置返回结果对象并返回结果,若未查找到管理辖区信息,则进行管理辖区信息查询。

3.1管理辖区信息查询

具体步骤为:

首先根据地址片段对象组装行政编码列表,以行政区划从小到大排列顺序,判断行政区划代码列表大小是否大于1:若政区划代码列表不大于1,则根据传入的经纬度坐标进行solr空间查询,得到匹配的最小管理辖区信息,将得到的最小管理辖区信息设置为返回结果对象并返回结果;若行政区划代码列表大于1,则执行“根据传入的行政编码列表取第1个,进行管理辖区关联关系查询”;

接着判断根管理辖区关联关系查询是否有结果:若没有结果,则执行“从行政区划代码列中移除当前行政区划代码,得到新的行政区划列表”,然后返回所述“判断判断行政区划代码列表大小是否大于1”步骤;若查询有结果,则判断是否唯一;

若查询结果唯一则得到管理辖区信息,将管理辖区信息设置为返回结果对象并返回结果;若查询结果不唯一,则判断管理辖区关联关系是否为街路巷级别:若为街路巷级别,则逐次向下判断行政编码直至匹配到最小的管理辖区信息,将得到的最小管理辖区信息设置为返回结果对象并返回结果;若不为街路巷级别,则返回所述“行政区划代码列中移除当前行政区划代码”步骤。

根据上述说明书的揭示和教导,本发明所属领域的技术人员还可以对上述实施方式的相关模块和软件架构做适应性变更和修改。因此,本发明并不局限于上面揭示和描述的具体实施方式,对发明的一些修改和变更也应当落入本发明的权利要求的保护范围内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1