数据结构之KD树
KD 树算法;KD树的应用背景
什么是KD树
KD树的基本操作
KD树的构建
KD树的插入
KD树的删除
KD树的最近邻搜索算法
总结;SIFT算法中做特征点匹配的时候就会利用到k-d树。而特征点匹配实际上就是一个通过距离函数在高维矢量之间进行相似性检索的问题。针对如何快速而准确地找到查询点的近邻,现在提出了很多高维空间索引结构和近似查询的算法,k-d树就是其中一种。
;KD树的应用背景
什么是KD树
KD树的基本操作
KD树的构建
KD树的插入
KD树的删除
KD树的最近邻搜索算法
总结;Kd-树是对数据点在k维空间(如二维(x,y),三维(x,y,z),k维(x1,y,z..))中划分的一种数据结构,主要应用于多维空间关键数据的搜索(如:范围搜索和最近邻搜索)。本质上说,Kd-树就是一种平衡二叉树。
;比如kd树按照一定的划分规则把这个三维空间划分了多个空间,如下图所示:;KD树的应用背景
什么是KD树
KD树的基本操作
KD树的构建
KD树的插入
KD树的删除
KD树的最近邻搜索算法
总结;KD树构建的伪代码如下图所示:
;假设有6个二维数据点{(2,3),(5,4),(9,6),(4,7),(8,1),(7,2)},数据点位于二维空间内,如下图所示。;确定:split域=x。具体是:6个数据点在x,y维度上的数据方差分别为39,28.63,所以在x轴上方差更大,故split域值为x;
确定:Node-data = (7,2)。具体是:根据x维上的值将数据排序,6个数据的中值(所谓中值,即中间大小的值)为7,所以Node-data域位数据点(7,2)。这样,该节点的分割超平面就是通过(7,2)并垂直于:split=x轴的直线x=7;
确定:左子空间和右子空间。具体是:分割超平面x=7将整个空间分为两部分:x=7的部分为左子空间,包含3个节点={(2,3),(5,4),(4,7)};另一部分为右子空间,包含2个节点={(9,6),(8,1)};
如上算法所述,kd树的构建是一个递归过程,我们对左子空间和右子空间内的数据重复根节点的过程就可以得到一级子节点(5,4)和(9,6),同时将空间和数据集进一步细分,如此往复直到空间中只包含一个数据点。
;KD树的构建;KD树的应用背景
什么是KD树
KD树的基本操作
KD树的构建
KD树的插入
KD树的删除
KD树的最近邻搜索算法
总结;元素插入到一个K-D树的方法和二叉检索树类似。本质上,在偶数层比较x坐标值,而在奇数层比较y坐标值。当我们到达了树的底部,(也就是当一个空指针出 现),我们也就找到了结点将要插入的位置。生成的K-D树的形状依赖于结点插入时的顺序。给定N个点,其中一个结点插入和检索的平均代价是 O(log2N)。
;插入顺序为(a) Chicago, (b) Mobile, (c) Toronto, and (d) Buffalo,建立空间K-D树的示例:;KD树的插入;KD树的应用背景
什么是KD树
KD树的基本操作
KD树的构建
KD树的插入
KD树的删除
KD树的最近邻搜索算法
总结;KD树的删除可以用递归程序来实现。我们假设希望从K-D树中删除结点(a,b)。如果(a,b)的两个子树都为空,则用空树来代替(a,b)。否则,在 (a,b)的子树中寻找一个合适的结点来代替它,譬如(c,d),则递归地从K-D树中删除(c,d)。一旦(c,d)已经被删除,则用(c,d)代替 (a,b)。假设(a,b)是一个X识别器,那么,它得替代节点要么是(a,b)左子树中的X坐标最大值的结点,要么是(a,b)右子树中x坐标最小值的结点。
;如下图所示,原始图像及对应的kd树,现在要删除图中的A结点;要删除上图中结点A,选择结点A的右子树中X坐标值最小的结点,这里是C,C成为根,如下图:
;从C的右子树中找出一个结点代替先前C的位置,如下图所示:
;这里是D,并将D的左子树转为它的右子树,D代替先前C的位置,如下图:
;在D的新右子树中,找X坐标最小的结点,这里为H,H代替D的位置,;在D的右子树中找到一个Y坐标最小的值,这里是I,将I代替原先H的位置,从而A结点从图中顺利删除,如下图所示:
;KD树的应用背景
什么是KD树
KD树的基本操作
KD树的构建
KD树的插入
KD树的删除
KD树的最近邻搜索算法
总结;k-d树查询算法的伪代码如下所示:
;查询点(2,4.5),步骤如下:
同样先进行二叉查找,先从 (7,2)查找到(5,4)节点,在进行查找时是由y = 4为分割超平面的,由于查找点为y值为4.5,因此进入右子空间查找到(4,7),形成搜索路径(7,2),(5,4),(4,7),但 (4,7)与目标查找点的距离为3.202,而(5,4)与查找点之间的距离为3.041,所以
您可能关注的文档
最近下载
- 人教版五年级语文(下册)写字表课文同步正楷练字帖.pdf VIP
- 家谱发放仪式上的讲话范文(3篇).docx VIP
- 塔吊拆除作业安全培训内容课件.pptx VIP
- SYT 5328-2019 石油天然气钻采设备 热采井口装置.docx VIP
- 肖邦升C小调幻想即兴曲(Op.66)(原版) 高清钢琴谱五线谱.docx VIP
- 高技术船舶科研项目指南(2024年).pdf VIP
- 全国大学生市场调查与分析大赛调查研究报告.PDF VIP
- 中北大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 产前检查ppt课件图文.pptx VIP
- 精品解析:重庆市万州二中教育集团2025-2026学年八年级上学期期中物理试题(原卷版).docx VIP
原创力文档

文档评论(0)