k-d树
- 首先它是一颗树、然后是二叉树,再然后是一颗带权的二叉树。
- 每个树节点的权拥有多维信息。
- 建立一套规则对不同维度信息进行左右空间的划分,比如信息为二维坐标(x,y),我们规定冀奇数层节点的左子树的所有x都要小于当前节点的x,右子树的所有x都要小于当前节点的x。偶数层的左子树的y都要小于当前节点的y,右子树的y都要大于当前节点的y。
基于k-d树的特征点匹配方法
如上图,右边k-d树建立的几何意义如左图。当我去匹配最近似的特征点时,先对x坐标找到合适的空间,如果比根节点的x小那么就去找左边的空间、否则去右边。找到空间位置后,我们需要匹配的特征点跟当前空间的父节点做连线为半径,去搜索圆内是否存在其他可能的近似点,如果存在更近的就把这个更近的作为父节点,重复之前的步骤去继续搜索匹配。