专利名称:搜索k近邻的方法和装置的利记博彩app
技术领域:
本发明涉及计算机技术领域,特别涉及一种搜索k近邻的方法和装置。
背景技术:
现有技术中,为测试样本搜索k近邻的方法可以包括如下步骤计算测试 样本与全部训练样本之间的距离,并从计算得到的距离中选择最短的前k个训 练样本作为测试样本的k近邻。
一种典型的应用搜索k近邻方法的场景是超分辨率图像重构图像超分辨 率重构是一种将低分辨率图像放大成高分辨率图像,并保持图像中的细节不会 失真、不会出现马赛克等效果的技术。它有着广泛的应用背景,如人脸检测 与识别,低带宽的视频传输,图像恢复,人脸表情分析,数码相机的Digital Zooming (数字变焦)技术等。
目前,图像超分辨率重构可以分为三个主要的范畴基于插值、基于重建 和基于学习的方法。其中,基于学习的图像超分辨率重构是目前热门的研究课 题。基于学习的超分辨率重构的基本假设是高分辨率图像和对应的低分辨率 图像假设在特征空间形成了具有相同局部几何结构的流形。这样,高分辨率图 像可以由一系列优化加权的低分辨率图像估计得到。这种图像的超分辨率重构 无论是在特定领域、或是通用领域的超分辨率重构都取得了非常好的效果。
在实现本发明的过程中,发明人发现上述现有技术至少具有以下缺点
在搜索k近邻的过程中,由于搜索k近邻的处理速度很慢,效率低,不但 浪费执行主体如计算机等的硬件资源,又会浪费时间。
发明内容
为了提高搜索k近邻的速度,本发明实施例提供了一种搜索k近邻的方法 和装置。所述技术方案如下
一种搜索k近邻的方法,包括将图像块训练样本进行采样,得到图像块待搜索样本;
将所述图像块待搜索样本划分到树结构中; 在所述树结构中,为图像块测试样本搜索k近邻。 一种搜索k近邻的装置,包括
釆样模块,用于将图像块训练样本进行采样,得到图像块待搜索样本; 划分模块,用于将所述采样模块中得到的所述图像块待搜索样本划分到树 结构中;
搜索模块,用于在所述树结构中,为图像块测试样本搜索k近邻。 本发明实施例提供的技术方案带来的有益效果是
通过对训练样本进行采样减少搜索样本数,并将采样后得到的搜索样本划 分至树结构中,保证了在尽可能不丢失重要样本的前提下对样本进行选取和划 分,减少了计算量和计算时间,从而加速了 k近邻的搜索速度,使得k近邻的 搜索速度得到了极大的提升。
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需 要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图1是本发明实施例1提供的搜索k近邻的方法流程图; 图2是本发明实施例2提供的搜索k近邻的方法流程图; 图3是本发明实施例2提供的将距离的计算转换为一种变形的矩阵计算的 示意图4是本发明实施例2提供的随机投影树的数据点分布示意图5a至图5d是本发明实施例2提供的应用搜索k.近邻方法的超分辨率图
图6是本发明实施例3提供的搜索k近邻的装置结构示意图7是本发明实施例3提供的搜索k近邻的装置另 一种结构示意图8是本发明实施例3提供的搜索模块的结构示意图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
为了提高搜索k近邻的速度,本发明实施例提供了一种搜索k近邻的方法, 参见图1,该方法包括
101:将图像块训练样本进行采样,得到图像块待搜索样本;
其中,采样的方法可以具体为计算任意两个训练样本之间的距离;当计 算的距离小于预先设定的值时,删除这两个训练样本中的一个。
需要说明的是,训练样本具体可以指预先保存的、具有一定代表性且具有 一定规模数量的样本,训练样本一般是可以通用的。
102:将图像块待搜索样本划分到树结构中;
这里需要说明的是,可以将图像块待搜索样本划分到k-d树、随机投影树等 多种树结构中,由于划分树结构是现有技术,本实施例不做赘述。 103:在树结构中,为图像块测试样本搜索k近邻。
需要说明的是,测试样本是针对训练样本而言的,通常为个体,本实施例
提供的方法即是在训练样本中为测试样本搜索k近邻。 其中,为测试样本3叟索k近邻可以具体为 将图像块测试样本划分到树结构中作为叶节点; 计算图像块测试样本与其所在枝干上的其他叶节点之间的距离; 将全部距离进行排序,选寺奪距离最短的前k个图像块待搜索样本作为该图
像块测试样本的k近邻。
本发明实施例通过对训练样本进行采样减少搜索样本数,并将采样后得到
的待搜索样本划分至树结构中作为叶节点,保证了在尽可能不丟失重要样本的
前提下对样本进行选取和划分,减少了计算量和计算时间,从而加速了 k近邻
的搜索速度,使得k近邻的搜索速度得到了极大的提升。
实施例2超分辨率图像的重构,是一种典型的应用搜索k近邻方法的情况,这里结 合超分辨率图像重构的方法,对搜索k近邻的方法做进一步详细的介绍。参见 图2,本发明实施例提供了一种搜索k近邻的方法,在本实施例中,假设执行主 体(可以为计算机或其他)已经保存了一定规模的知识库,该方法中所应用到
的高分辨率训练图像出自已经保存的知识库。该方法包括
201:根据待重构的低分辨率测试图像x,欲超分辨率的倍数n,将高分辨率 训练图像集r,中的每幅高分辨率训练图像K的像素降低n倍,作为低分辨率训 练图像集X,;
需要说明的是,将高分辨率训练图像乂的像素降低的方法有很多种,可以 通过常用的计算机软件(如photoshop、 picture manager等)实现,由于实现的 方法为现有技术,在此不做赘述。
202:将每一幅得到的低分辨率训练图像x,分割成s x s个重叠的训练图像块 并将高分辨率训练图像乂,按照相同的方式分割成ra x m'个重叠的训练图像 块乂.;
其中,需要说明的是, 一般按照经验和惯例对s进行取值,s为正整数。低 分辨率训练图像x,中的 一个训练图像块,与高分辨率训练图像乂中的w x 个训 练图像块之间具有——对应的关系。
203:使用与步骤202中分割低分辨率训练图像^相同的方式,将待重构的 低分辨率测试图像x,分割成s x s个重叠的测试图像块
需要说明的是,本实施例并不限制步骤202与步骤203之间的先后顺序, 只需要规定低分辨率训练图像a与低分辨率测试图像x,之.间使用相同的分割图 像块的方法即可。
204:对低分辨率训练图像x,中的训练图像块进行采样,减少低分辨率训练 图像集《中训练图像块的总样本数;
其中,可以使用流形采样、典型图像块采样等多种采样方法对训练图像块 进行采样,本发明实施例中以流形采样对训练图像块进行采样为例进行说明
流形采样具体指的是,给定d维的m个训练图像块x', (...…,m), 当任意两个训练图像块x',、.《之间的测地线距离小于一个非常小的数,或者乂5 是;c',的 一个k近邻时,x7,与x;之间的测地线距离就可以用欧式距离近似;而当
X^与JC',之间的测地线距离相对较远时,V,与X'.;.之间的测地线距离就可以用两点间的最短^各径近似
d0/, x/) = min{ d(x/, x/), c/(x/ ,) + d(x/,) } V&, 0 " S m 一旦任意两个训练图像块之间的测地线距离都计算得到后,可以根据近似的
测地线距离对整个低分辨率训练图像集X,中的全部训练图像块进行采样,即当
两个训练图像块之间的距离小于预先设定的流形采样的阀值5时,就删除其中的
一个训练图像块,完成对低分辨率训练图像集中训练图像块的流形采样。
流形采样后的低分辨率训练图像集《中,训练图像块的总样本数减少,为
后续步骤中的k近邻搜索提供了更少但是更有效、更具典型性的总样本数,加
速了 k近邻的搜索。
205:将经过釆样后的低分辨率训练图像块划分到树结构中; 这里需要说明的是,树结构的种类有很多,可以是k-d树,也可以是随机投
影树,其中,随机投影树是优选的树结构,因为,以随机投影树为例。
具体地,随机投影树作为k-d树的一个变种,可以根据数据点的内在维数将
D维空间进行层次划分。但是当实际数据点的分布不均匀时,会导致随机投影
树的不平衡。为了避免随机投影树的不平衡,本发明实施例使用流形采样后的
低分辨率训练图像块作为数据点进行树结构的划分。
随机投影树可以通过一种流处理的方式构建,即每次读入一个数据点,接
着对树结构进行更新,再读入下一个数据点。在每一个新数据点到达时,更新
下列的统计值
A, <--(1 - C)0/i,—' + C!^义、
Of <-(1 - "2)of—, + <22 - /i,)2
其中,//,和《分别表示第i次迭代的均值和方差,《,和《2是加权因子,x
表示第i次读入的新数掂点。这些统计值用于描述随机投影树中的数据点分布是 否合理。
206:在树结构中,为每个测试图像块x',搜索k近邻,即k个距离最近的图 像块;
(1 )将每个测试图像块力作为随机投影树的一个新的数据点,随机投影树 按照既定的规则将该测试图像块x'f划分到树结构的某一枝作为该枝的页节点; (2 )计算该测试图像块x'f与该枝中的每个训练图像块之间的距离; 这里,在计算测试图像块与枝中每个训练图像块之间的距离时,现有技术中是逐个进行计算的。为了加速距离的计算,将测试图像块X',表示为一个d维的
向量"尸[",;,",2,……,aw]T,同时将枝中每个训练图像块都表示为一个d维的
向量6广[~, ……,^]T,那么,测试图像块与枝中训练图像块之间的距离
的平方可以表示为两个向量之间的点乘
从上式的表达中可以看出,这种向量之间求距离的方法与两个矩阵之间的乘
法4艮相似
两个矩阵^( :u和5(^)^之间的乘法定义为
C =爿5, s = Z^^&, 0 < / <附,O < / < w
两个矩阵之间的乘法中结果矩阵中的每个元素是由两个矩阵中的元素相乘 后相加求得的,而向量表示的距离的平方是两个向量中的元素相减后求平方再 相加得到的,除了算法不同之外,计算的方式是很相似的。而两个矩阵的乘法 是一种并行化的计算,也就是说,结果矩阵中的每一个元素都是同时得到的, 相比较于现有技术的逐个计算,可以对计算的速度有很大的提升。
将距离的计算转化为矩阵的并行化计算,具体的实施方式可以参见图3: 将每个低分辨率测试图像块都表示为一个d维的向量a尸[a,;, ai2, ...... , a,』T,
使用全部低分辨率测试图像块表示的向量组成测试图像块矩阵X,( X^ ;将每 个低分辨率训练图像块都表示为一个d维的向量Zr[Z^,......, 并相
应于低分辨率测试图像块矩阵的顺序,将每个低分辨率测试图像块所对应的枝 中的全部训练图像块表示的向量组成训练图像块矩阵Z" )^,那么,第i个 测试图像块与第j个训练图像块之间的距离矩阵ZX《X^可以这样计算得到
其中0表示两个矩阵直接的运算,这种直接的运算定义为
《=x, =y(x, -X' )2.
y 。■ L、,汰 。* 乂
例如,现有技术计算测试图像块[al, a2, a3]T与训练图像块[bl, b2, b3]T、 训练图像块[cl, c2, c3]T之间的距离的方法为逐个计算(U、(al-bl )2+(a2-b2)2+ (a3-b3)2, dac2=(al-cl)2+(a2-c2)2+(a3-c3)2,而本发明实施例不仅可以同时计算出dab2、 dac2,还可以同时计算其他测试图像块与训练图像块之间的距离,节省了大 量的计算时间。
需要说明的是,与现有技术中使用CPU的单线程依次计算每一对像素点之 间的距离然后再求和相比,本发明实施例提供的这种将距离的计算转换为一种
变形的矩阵计算的优点在于使用GPU的多线程同时计算每个测试图像块与其 对应枝中的训练图像块之间的距离,使得k近邻的搜索在速度上得到了大幅度 的提高,加速了k近邻的搜索。
(3 )对计算后的距离进行排序,选择距离最短的前k个训练图像块作为该 测试图像块的k近邻。其中,由于k值通常比较小,对于k近邻搜索后的排 序问题,可以使用插入排序以获得最好的性能,当然,也可以是用其他排序方 式,本实施例中不予以——列举。
207:计算邻域嵌入权重的最优值;
需要说明的是,步骤206中搜索到的待重构的低分辨率测试图像块的k近邻, 需要通过加权嵌入到待重构的低分辨率测试图像块的邻域,实现重构。本步骤 的目的即为计算权值的最优值。
其中,最优权值的计算是通过最小化测试图像块x',的局部重构误差来实现 的,即
£' = mm
eRrf (1)
其中,W《表示测试图像块x'f在低分辨率训练图像x',的k近邻,0',,是;^ 所对应的权值,服从约束条件J^。v 6/,,二1,以及对于每一个;c、gA;,都有
<=0。
基于以上条件,式(1)的解可以转化为约束最小二乘问题。如果为测试图 像块定义局部的Gram矩阵G:
其中,'T,表示一列元素全为1的矩阵,I表示一个由x',的邻域组成其每一 列的一个矩阵,(1)式就可以得到闭式解其中,
由于W的求解需要对Gram矩阵G求逆,在实际的算法中常常通过求解线 性系统方程GW=1,然后将获得的权值标准化使得eA, 0」=1 。
208:使用最优权值和低分辨率训练图像块与高分辨率训练图像块之间的 几何相似性,构建高分辨率测试图像块少,;
其中,高分辨率测试图像块jA的计算方法可以为
— "
其中,乂,表示低分辨率测试图像块ys所对应的高分辨率测试图像块。
这里需要说明的是,为了并行化这个模块,将(2)式重写为矩阵乘以向量 的形式 =
其中,!7是/^l的矩阵,0'是ixi的向量。这时候,每一个乂的元素都可
以由GPU—个独立的线程计算得到,从而可以加速高分辨率测试图像块的重建 速度。
209:为了保证图像的连续性,每个高分辨率测试图像块之间是有重叠的, 可以通过对重叠区域的图像的像素值进行筒单求和平均,计算得到重叠区域的 图像的像素值。
参见表1和表2,表1给出了未使用本实施例提供的搜索k近邻的方法的超 分辨率重构的运行时间表,而表2给出了使用本实施例提供的搜索k近邻的方 法的超分辨率重构的运行时间表,从表1与表2的对比中可以发现,总的运行 时间被均匀地分布在所有的子程序中。
1
运行时间(秒)百分比
前&理0.200.26%
K近邻76.8399.24%邻域嵌入权重计算0.090.12%
邻域嵌入重构计算0.210.27%
后处理0.090.11%
总计77.42100%
表2
运行时间(秒)百分比
n理'一 —一—————0.03—7:32% —
K近邻0.1639.02%
邻域嵌入权重计算0.0921.95%
邻域嵌入重构计算0.0512.20%
后处理0.0819.51%
总计0.41100%
参见图4,图4中显示了随机投影树的数据点分布情况。其中条纹填充的柱 状条表示没有经过流形采样的随机投影树的数据点分布,可以看出,有部分树 节点包含远远大于正常点数的样本数;而经过流形采样后的随机投影树(花紋 填充的柱状条表示)则都集中在一个正常的范围内,没有出现任何"巨大"的 树结点。
参见表3和图5,从表3和图5中可以看出,不同方法在处理不同分辨率图 像时的运行时间。其中,所有带有随机性的实验都运行了 10次,并计算其运行 时间的方差和均值,括号中表示的是超分辨率图像的均方根误差。在恢复质量 基本保持不变的基础上,本实施例提供的方法在运行时间上获得了相当大的提升。
表3
图像分辨率 ——丽.販!T '.——-弱;280*280 4, 624 77:67( 0.036"500*348 10, 455 175.95 (0.0501 )700*467 19, 722 330.06 (0.0343 )1024*768 48, 160 804.86 (0.0561 )
随机投影树]9.16±6.48 (0.0368 )46.38±12.31 (0.0503 )99.40±32.48 (0.0344 )254.19土79.50 (0.0562 )
部分距离搜索 法16.66( 0.0368 )43.38( 0.0503 )75.46(0.0343 )183.62 (0.0562)随机投影树+ 部分距离搜索 法5,96±2.14 (0.0368)10.45±1.74 (0.0503 )21.15±3.46 (0.0344 )66.20±20.79 (0.0562 )
流形采纟羊+暴 力法37.84(0.0369)86.21 (0.0505 )160.99 (0.0344 )393.52 (0.0563 )
流形采样+随 机投影树4.19±0.53 (0.0369)9.26±0.42 (0.0507)15.87±0.97 (0.0345 )47.00±1.68 (0.0563 )
流形采样+部 分距离搜索7.04 (0.0369)18.96( 0.0505 )32.40(0.0344)75.35(0.0562)
流形采样+随 机投影树+部 分距离搜索1.56±0.06 (0.0369 )3.79±0.21 (0.0507)4.12土0.25 (0.0345 )6.75土0.47 (0.0563 )
GPU暴力法0.68 ( 0.0368 )1.17 ( 0.0501 )1.93 (0.0343 )4.35 (0.056)
GPU暴力法十 随机投影树0.72土0.06 (0.0368 )1.04±0.02 (0.0503 )1.55±0.04 (0.0344)3.05土0.07 (0.0562)
流形采样 +GPU暴力法0.43 ( 0.0369)0.81 (0.0505 )1.43 (0.0344)3.30 (0.0563 )
交互式邻域嵌 入超分辨率0.43土0.01 (0,0369 )0.74±0.01 (0.0507)1.23土0.01 (0.0345 )2.62±0.04 (0.0563 )
5口蓬比183230261286
需要说明的是,本发明实施例提供的对于k近邻搜索的加速可以应用在所有 包含该方法的算法中,在保持质量基本不变的前提下,极大地提高了 k近邻搜 索的运行速度。
当然,搜索k近邻的方法不仅可以应用在超分辨率图像重构当中,这种方法 还可以被应用在多种领域当中,例如生物医药领域中的癌细胞的搜索等。
本发明实施例通过对训练样本进行采样减少搜索样本数,并将采样后得到的 搜索样本划分至树结构中作为叶节点,保证了在尽可能不丟失重要样本的前提 下对样本进行选取和划分,减少了计算量和计算时间,从而加速了 k近邻的搜 索速度,使得k近邻的搜索速度得到了极大的提升;同时,在GPU的每个线程 上对图像进行重构,加速了重构的速度,使得超分辨率图像重构的执行效率得 到了极大的提升。
实施例3
参见图6,本发明实施例提供了一种搜索k近邻的装置,参照方法实施例中 的具体描述,该装置包括
采样模块601,用于将图像块训练样本进行采样,得到图像块待搜索样本; 划分模块602,用于将采样模块中601得到的图像块待搜索样本划分到树结构中;
搜索模块603,用于在树结构中,为图像块测试样本搜索k.近邻。
其中,图像块训练样本为低分辨率训练图像块,图像块测试样本为待重构
的低分辨率测试图像块;
相应地,参照方法实施例中的具体描述,参见图7,该装置还可以包括 计算模块604,用于计算所述k近邻嵌入所述待重构的低分辨率测试图像块
的邻域的^L值;
重构模块605,用于根据权值对待重构的低分辨率测试图像块进行超分辨率
重构,得到高分辨率测试图像。
其中,参照方法实施例中的具体描述,采样模块601具体包括 计算单元,用于计算任意两个低分辨率训练图像块之间的距离; 采样单元,用于当计算单元计算的距离小于预先设定的值时,删除两个低
分辨率训练图像块中的 一个。
参照方法实施例中的具体描述,参见图8,搜索模块603具体包括 划分单元603A,用于将待重构的低分辨率测试图像块划分到树结构的枝干
上作为叶节点;
计算单元6()3B,用于计算待重构的低分辨率测试图像块与其所在枝干上的 其他叶节点之间的距离;
排序单元603C,用于将距离进行排序,选择距离最短的前k个低分辨率训 练图像块作为待重构的低分辨率测试图像块的k近邻。
其中,参照方法实施例中的具体描述,计算单元603B具体包括
第一子单元,用于将枝干上的每个低分辨率训练图像块的全部像素点作为
参考点矩阵的一列;
第二子单元,用于将待重构的低分辨率测试图像块的全部像素点作为查询 点矩阵的一列;
第三子单元,用于将参考点矩阵中的每一列与查询点矩阵转置之间直接做 运算,得到待重构的低分辨率测试图像块与枝干中的其他低分辨率训练图像块 之间的距离。
索样本数,并将采样后得到的搜索样本划分至树结构中作为叶节点,保证了在尽可能不丢失重要样本的前提下对样本进行选取和划分,减少了计算量和计算 时间,从而加速了 k近邻的搜索速度,使得k近邻的搜索速度得到了极大的提 升;同时,在GPU的每个线程上对图像进行重构,加速了重构的速度,使得超 分辨率图像重构的执行效率得到了极大的提升。
本领域普通4支术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算 机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。 其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Rcad-Only Memory, ROM)或随机存储记忆体(Random Access Memory, RAM)等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的 精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的 保护范围之内。
权利要求
1、一种搜索k近邻的方法,其特征在于,包括将图像块训练样本进行采样,得到图像块待搜索样本;将所述图像块待搜索样本划分到树结构中;在所述树结构中,为图像块测试样本搜索k近邻。
2、 如权利要求l所述的方法,其特征在于,所述图像块训练样本为低分辨 率训练图像块,所述图像块测试样本为待重构的低分辨率测试图像块;相应地,所述在所述树结构中,为图像块测试样本4叟索k近邻之后,所述 方法还包括计算所述k近邻嵌入所述待重构的低分辨率测试图像块的邻域的权值; 根据所述权值对所述待重构的低分辨率测试图像块进行超分辨率重构,得 到高分辨率测试图像。
3、 如权利要求2所述的方法,其特征在于,所述将图像块训练样本进行采 样,包括计算任意两个低分辨率训练图像块之间的距离;当所述距离小于预先设定的值时,删除所述两个低分辨率训练图像块中的 一个。
4、 如权利要求l所述的方法,其特征在于,所述图像块训练样本为低分辨 率训练图像块,所述图像块测试样本为待重构的低分辨率测试图像块,所述在 所述树结构中,为图像块测试样本搜索k近邻,包括将所述待重构的低分辨率测试图像块作为叶节点划分到所述树结构的枝干上;计算所述待重构的低分辨率测试图像块与其所在枝千上的其他叶节点之间的距离;将所述距离进行排序,选择距离最短的前k个低分辨率训练图像块作为所述 待重构的低分辨率测试图像块的k近邻。
5、 如权利要求4所述的方法,其特征在于,所述计算所述待重构的低分辨率测试图像块与其所在枝干上的其他叶节点之间的距离,包括将所述枝干上的每个低分辨率训练图像块的全部像素点作为参考点矩阵的一列;将所述待重构的低分辨率测试图像块的全部像素点作为查询点矩阵的一列;将所述参考点矩阵中的每一列与所述查询点矩阵转置之间直接做运算,得 到所述待重构的低分辨率测试图像块与所述枝干中的其他低分辨率训练图像块 之间的距离。
6、 一种搜索k近邻的装置,其特征在于,包括采样模块,用于将图像块训练样本进行采样,得到图像块待搜索样本; 划分模块,用于将所述采样模块中得到的所述图像块待搜索样本划分到树结构中;搜索模块,用于在所述树结构中,为图像块测试样本搜索k近邻。
7、 如权利要求6所述的装置,其特征在于,所述训练样本为低分辨率训练 图像块,所述测试样本为待重构的低分辨率测试图像块;相应地,所述装置还包括计算模块,用于计算所述k近邻嵌入所述待重构的低分辨率测试图像块的 邻i或的4又值;重构模块,用于根据所述权值对所述待重构的低分辨率测试图像块进行超 分辨率重构,得到高分辨率测试图像。
8、 如权利要求7所述的装置,其特征在于,所述采样模块具体包括 计算单元,用于计算任意两个低分辨率训练图像块之间的距离; 采样单元,用于当所述计算单元计算的距离小于预先设定的值时,删除所述两个低分辨率训练图像块中的 一个。
9、 如权利要求6所述的装置,其特征在于,所述训练样本为低分辨率训练 图像块,所述测试样本为待重构的低分辨率测试图像块,所述搜索^^莫块具体包 括划分单元,用于将所述待重构的低分辨率测试图像块划分到所述树结构的枝干上作为叶节点;计算单元,用于计算所述待重构的低分辨率测试图像块与其所在枝干上的其 他叶节点之间的距离;排序单元,用于将所述距离进行排序,选择距离最短的前k个低分辨率训练 图像块作为所述待重构的低分辨率测试图像块的k近邻。
10、 如权利要求9所述的装置,其特征在于,所述计算单元具体包括 第一子单元,用于将所述枝干上的每个低分辨率训练图像块的全部像素点作为参考点矩阵的一列;第二子单元,用于将所述待重构的低分辨率测试图像块的全部像素点作为 查询点矩阵的一列;第三子单元,用于将所述参考点矩阵中的每一列与所述查询点矩阵转置之 间直接做运算,得到所述待重构的低分辨率测试图像块与所述枝干中的其他低 分辨率训练图像块之间的距离。
全文摘要
本发明公开了一种搜索k近邻的方法和装置,属于计算机技术领域。搜索k近邻的方法包括将图像块训练样本进行采样,得到图像块待搜索样本;将所述图像块待搜索样本划分到树结构中;在所述树结构中,为图像块测试样本搜索k近邻。装置包括采样模块、划分模块和搜索模块。通过对训练样本进行采样减少搜索样本数,并将采样后得到的搜索样本划分至树结构中作为叶节点,保证了在尽可能不丢失重要样本的前提下对样本进行选取和划分,减少了计算量和计算时间,从而加速了k近邻的搜索速度,使得k近邻的搜索速度得到了极大的提升。
文档编号G06F17/30GK101556601SQ20091007947
公开日2009年10月14日 申请日期2009年3月12日 优先权日2009年3月12日
发明者张军平, 李水平, 柳海波, 剑 浦, 海 陈 申请人:华为技术有限公司