[发明专利]最近邻查询方法及系统有效
申请号: | 201010607741.8 | 申请日: | 2010-12-27 |
公开(公告)号: | CN102043857A | 公开(公告)日: | 2011-05-04 |
发明(设计)人: | 戴娇;韩冀中;周薇 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京泛华伟业知识产权代理有限公司 11280 | 代理人: | 王勇 |
地址: | 100190 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 近邻 查询 方法 系统 | ||
1.一种最近邻查询方法,用于为基础数据集中的至少一个待查找对象在参考数据集中查找与所述待查找对象距离最近的对象;该方法包括:
步骤101)、对基础数据集进行分割,得到多个分片,每个分片中包含有指定范围内的基础数据集的对象;对参考数据集进行分割,得到多个分片,每个分片中包含有指定范围内的参考数据集的对象;
步骤102)、在与所述待查找对象所在的基础数据集分片相对应的参考数据集分片内计算与所述待查找对象距离最近的对象;
步骤103)、根据边界判定条件将步骤102)的计算结果分为确定结果或待定结果;所述边界判定条件为某一待查找对象到分片边界的距离是否小于该待查找对象与步骤102)计算得到的距离最近的对象间的距离,若大于,该待查找对象在步骤102)中的计算结果为确定结果,执行步骤105),否则,该待查找对象在步骤102)中的计算结果为待定结果,执行下一步;
步骤104)、计算所述的待定结果中的待查找对象的最近邻;其中,在待查找对象的可能的最终最近邻所在的参考数据集分片中,计算待查找对象与可能的最终最近邻之间的距离,并将计算结果与待查找对象与步骤102)计算得到的距离最近的对象间的距离进行比较,取最小距离值所对应的参考数据集中的对象作为所述待查找对象的最近邻;
步骤105)、将步骤103)所得到的确定结果与步骤104)所得到的待定结果中的待查找对象的最近邻进行合并,得到所述至少一个待查找对象的最近邻。
2.根据权利要求1所述的最近邻查询方法,其特征在于,在所述的步骤101)中,对所述基础数据集或参考数据集进行分割包括:
步骤101-1)、将所述基础数据集或参考数据集划分成均等的小块;所述小块的数目至少多于所要得到的分片的数目;
步骤101-2)、采用空间填充曲线为步骤101-1)所得到的小块编码并排序;
步骤101-3)、采用轮询的方式将步骤101-2)所得到的小块合并成分片。
3.根据权利要求2所述的最近邻查询方法,其特征在于,所述的空间填充曲线为Z曲线或者Hilbert曲线中的一种。
4.根据权利要求1所述的最近邻查询方法,其特征在于,所述的步骤102)包括:
步骤102-1)、为与待查找对象所在的基础数据集分片相对应的参考数据集分片内的所有对象按照扫描方向排序,并沿着所述扫描方向的垂直方向设立扫描轴;
步骤102-2)、以待查找对象在所述参考数据集分片内的对应位置为中心,将扫描轴向右扫描,计算扫描到的对象与待查找对象间的距离,选取被扫描到的距离最小的对象作为所述待查找对象的右边最近邻;
步骤102-3)、以待查找对象在所述参考数据集分片内的对应位置为中心,将扫描轴向左扫描,计算扫描到的对象与待查找对象间的距离,选取被扫描到的距离最小的对象作为所述待查找对象的左边最近邻;
步骤102-4)、比较步骤102-2)和步骤102-3)的计算结果,选取距离更小的对象作为与所述待查找对象距离最近的对象。
5.根据权利要求4所述的最近邻查询方法,其特征在于,在所述的步骤102-2)之前还包括:
在与待查找对象所在的基础数据集分片相对应的参考数据集分片内,沿着与所述扫描方向平行的方向将所述参考数据集分片分成多个条状区域;在所述的步骤102-2)和步骤102-3)中,只在待查找对象在所述参考数据集分片内的对应位置所位于的条状区域内做扫描操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010607741.8/1.html,转载请声明来源钻瓜专利网。