一种基于空间索引及相邻点信息的最近邻点搜索方法
文献发布时间:2023-06-19 11:57:35
技术领域
本发明涉及最近邻搜索,尤其是涉及一种基于空间索引及相邻点信息的最近邻点搜索方法。
背景技术
随着互联网和多媒体技术的飞速发展,海量数据的产生和共享在日常生活中已经司空见惯。最近邻搜索是大数据处理中基础的问题之一,它在机器学习、图像处理等领域有广泛的应用。其主要流程是对数据预处理并建立索引,从而可以高效地找到和指定查询最接近的数据对象。
最近邻搜索就是根据数据的相似性,从数据库中寻找与目标数据最相似的项目。这种相似性通常会被量化到空间上数据之间的距离,即数据在空间中的距离越近,则数据之间的相似性越高。
最近邻搜索一般根据其查询的精确度不同可分为精确查询与近似查询两类:精确查询一般应用于维度较低的数据,最简单的方法是线性扫描,也就是平常所说的穷举搜索,在数据库中依次计算样本与所查询数据之间的距离,抽取出所计算出来的距离最小的样本即为所要查找的最近邻;近似查询类似于近似解法,具体的算法基本上都是基于哈希算法,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。简单来说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
在图像插值中,选择距离待插值点距离越近的点作为插值点,图像插值的效果越好,因此最近邻搜索被运用于其中。但当图像上的点坐标为非整数时,一般方法很难实现最近邻搜索。如何在这种情况下实现最近邻搜索,仍然是需要继续研究的一个方向。
发明内容
针对最近邻点搜索在点的坐标为非整数时实现较困难的问题,本发明提出一种基于空间索引及相邻点信息的最近邻点搜索方法。
本发明提出了一种基于空间索引及相邻点信息的最近邻点搜索方法,该方法通过空间索引找到最近的插值点,同时利用先前点的近邻点来加速搜索。本发明所提的方法在保证被搜索到的最近邻的准确性的同时,进一步减少整个过程的耗时。
本发明具体过程包括以下步骤:
为找到当前点G的k个最近邻点,以整张散点图(即图中的点的坐标多为非整数)的中心为原点,用坐标轴网格将整张图分成若干个小正方形区域,用位于每个网格左上角的格点(在直角坐标系中横纵坐标为整数的点称为“格点”)的坐标作为索引来检索该网格区域内的各散点的所有信息(包括x、y坐标信息和其他信息),也即各散点的所有信息被存储在该网格左上角格点中。
(1)如果当前点G是每行的起始点,采用基于坐标空间的搜索:搜索范围是以G为中心的正方形,正方形的半径从1开始不断增加,直到找到k个存有信息的格点后,将它们的坐标记录在格点表中;
提取出k个格点中存储的散点位置信息(x
接着开始精确搜索:在以G为中心、半径为R
计算这些存有信息的散点的位置(x,y)与点G的欧氏距离,并与精确搜索之前找到的k个散点到点G的欧氏距离进行比较,选出k个最近邻点;
(2)如果当前点G为每行的非起始点,则采用其同行左侧网格点G
为提高搜索速度,在当前点G的半径为R
本发明提出的基于空间索引及相邻点信息的最近邻点搜索方法,针对最近邻点搜索在点的坐标为非整数时实现较困难的问题,将近似查询和精确查询相结合。先采用近似查询,找到可能的k个最近邻点集;然后在此基础上得到精确搜索区域,进行精确搜索,选择该区域的所有点中的k个最近邻点。近似搜索降低了需要计算的数据量;精确搜索比较了精确搜索区域中的所有点,保证了最终k个最近邻点的准确性。
附图说明
图1为基于空间索引及相邻点信息的最近邻点搜索方法的系统框图。
图2为双立方插值法、基于多近邻的插值方法和本发明所提方法应用于图像插值时的效果图。
具体实施方式
下面结合实施例对本发明作进一步的详细说明,有必要指出的是,以下的实施案例只用于对本发明应用于图像插值,不能理解为对本发明保护范围的限制,所属领域技术熟悉人员根据上述发明内容,对本发明做出一些非本质的改进和调整进行具体实施,应仍属于本发明的保护范围。
(1)以整张散点图(即图中的点的坐标多为非整数)的中心为原点,用坐标轴网格将整张图分成若干个小正方形区域,用位于每个网格左上角的格点的坐标作为索引来检索该网格区域内的各散点的所有信息(包括x、y坐标信息和像素值信息),也即各散点的所有信息被存储在该网格左上角格点中。本实施方式以4邻域插值为例。
(2)如果当前点G是每行的起始点,采用基于坐标空间的搜索:搜索范围是以G为中心的正方形,正方形的半径从1开始不断增加,直到找到4个存有信息的格点后,将它们的坐标记录在格点表中;提取出4个格点中存储的散点位置信息(x
然后开始精确搜索:在以G为中心、半径为R
计算这些散点的位置(x,y)与点G的欧氏距离,并与精确搜索之前找到的4个散点到点G的欧氏距离进行比较,选出4个最近邻点;
(3)如果当前点G为每行的非起始点,则采用其同行左侧网格点G
提高搜索速度,在当前点G的半径为R
(4)搜索得到精确的4个最近邻点,利用公式(2)和公式(3)计算当前点G插值系数和灰度值,生成最终的校正图像:
其中k=0,1,2,3,d是最近邻点与G的欧氏距离;
其中I
(5)传统插值方法中双立方插值效果最好。在双立方插值法中,校正图像上的点的灰度值通过其在畸变图像上的对应点的周围最近的十六个插值点的灰度值加权平均得到,在这里需要使用两个多项式插值三次函数,每个方向使用一个。2018年,国外提出有一种基于校正图像上多近邻的插值方法(multiple nearest neighbor-based interpolation),它先在畸变图像上找到校正图像上当前点的对应点;然后选择对应点的周围最近的16个点,将这16个点变换到校正图像上;最后在校正图像上计算当前点与变换得到的16个点的欧氏距离,选出最近的4个点作为插值点并计算出当前点的灰度值。但基于多近邻的插值方法中找到的4个插值点并不总是距离当前点最近的4个点。本发明所提方法也是基于校正图像上的散点搜索最近邻点,但峰值信噪比(PSNR)、结构相似性(SSIM)指标都更好,即图像质量更佳。实验原图采用的是柯达无损真彩图集中的24张图片,实验过程中先将24张图片进行畸变处理,然后用三种方法分别生成校正图像。表1展示了24张畸变图片在三种方法下生成的校正图像的最近邻点准确率、平均峰值信噪比和结构相似性的比较。
表1 24张畸变图片在三种方法下生成的校正图像质量比较
本发明与现有技术相比所具有的优点及有益技术效果:
(1)本发明提出的基于空间索引及相邻点信息的最近邻点搜索方法应用于图像校正插值时,与传统插值方法相比,生成的校正图像受到畸变的影响更小,校正图像质量更高;
(2)本发明提出的基于空间索引及相邻点信息的最近邻点搜索方法,通过空间索引找到最近的插值点,同时还利用先前点的近邻点来加速搜索过程,降低计算复杂度;
(3)本发明提出的基于空间索引及相邻点信息的最近邻点搜索方法应用于图像校正插值时,解决了图像校正容易产生图像模糊的问题,能生成清晰的校正图像,提供了良好的人眼视觉体验。
- 一种基于空间索引及相邻点信息的最近邻点搜索方法
- 兴趣点的空间索引的建立、周边搜索方法和装置