1.一種n維點集的增量式k近鄰查詢方法,其特征在于步驟依次為:一、為n維點集X構(gòu)建R樹索引結(jié)構(gòu);二、對于要進行k近鄰查詢的目標點p,通過R樹的點查詢方法獲得p所在的葉索引層結(jié)點L;三、以p為中心、為半徑,構(gòu)建球形空間S,其中m為結(jié)點L所包含的數(shù)據(jù)點個數(shù),r為結(jié)點L包圍盒的外接包圍球半徑;四、通過R樹的范圍查詢方法獲取落入S內(nèi)的點集Q,;五、若Q內(nèi)的點數(shù)k*>k,則只保留距離p最近的k個點作為k近鄰查詢結(jié)果并終止k近鄰查詢過程,否則執(zhí)行以下過程:a) 以球形空間S為查詢目標,獲取距離S最近的數(shù)據(jù)點,將其加入Q,并使得k*增1;b) 擴展球形空間S,使其恰好包含Q;c) 若k*>k,則目標點p的k近鄰查詢過程結(jié)束,返回點集Q,否則,執(zhí)行步驟a)。
2.根據(jù)權(quán)利要求1所述的一種n維點集的增量式k近鄰查詢方法,其特征在于步驟三中,利用R樹的k近鄰查詢方法實現(xiàn)球形空間S半徑的設(shè)定,其步驟具體為:(1) 從n維海量點云中選取t個數(shù)據(jù)點;(2) 利用R樹的k近鄰查詢方法分別為這t個數(shù)據(jù)點查詢k近鄰點集;(3) 計算每個數(shù)據(jù)點到其k近鄰點集中最遠點的距離ri,得到集合{ri|i=1,2,…,t};(4) 選取{ri}中的最大值rmax作為球形空間S半徑。
3.根據(jù)權(quán)利要求1所述的n維點集的增量式k近鄰查詢方法,其特征在于步驟五中的步驟a)中的,獲取距離S最近的數(shù)據(jù)點,其步驟具體為:(1) 從根結(jié)點開始深度優(yōu)先遍歷n維點云X的R樹索引結(jié)構(gòu),在的葉索引結(jié)點層搜索距離S最近的結(jié)點包圍盒B;(2) 獲取B所包含的數(shù)據(jù)點集{pi};(3) 將{pi}中距離搜索球S中心最近且位于搜索球S之外的數(shù)據(jù)點pi作為距離S最近的數(shù)據(jù)點。