总的来说P-NAPSAC类似于对每个点p_i
单独使用了一个PROSAC。PROSAC里需要使用质量函数进行排序,而这里的质量函数就是其他点到p_i
的距离。
P-NAPSAC采样过程大致如下:
总共有n
个点,对于每个点有命中数t_i
,邻域大小k_i
(初始值为m
,m
为估计转换模型所需要的最少点数),会重复以下过程直到终止条件:
-
使用PROSAC选择初始点
p_i
(如果没有合适的质量函数则使用RANSAC?),使其对应的命中数t_i
增加,如果命中数t_i
大于一定值,k_i
增加(即根据命中数决定k_i
):
T k i + 1 ′ = T k i ′ + ⌈ m − 1 k i + 2 − m T k i ⌉ T'_{k_i+1}=T'_{k_i} + \lceil \frac{m-1}{k_i+2-m}T_{k_i} \rceil T