小尺度噪声主要是指混合在主体点云中的噪声点,该噪声的存在会干扰三维模型重建曲面的光滑性,使重建的三维模型存在一定程度上的失真。假设删除大尺度噪声后的点云为 P′ ,接下来,采用特征加权FCM算法对其进行小尺度去噪。该特征加权FCM算法基于FCM算法,通过在目标函数中引入曲率因子和密度因子来实现点云小尺度噪声的删除。
FCM
算法利用隶属度来确定每个数据点属于某个类别的程度,把包含
n
个
l
维向量
的集合
分为
m
组,每组对应一个聚类中心
O=
{
o
1
,
o
2
,…,
o
m
},计算每个聚类中心
o
j
(
j=
1,2,…,
m
),使目标函数达到最小。
目标函数 F 定义为:
式(3.3)中,
U
为隶属度矩阵,
μ
ij
∈
U
表示每个向量属于各个聚类分组的程度,并且满足
表示模糊控制参数,
o
j
)表示向量
和聚类中心
o
j
的Euclid距离,定义式为:
式(3.4)中,
特征加权FCM算法通过在FCM算法中加入曲率因子和密度因子实现聚类。对点云 P′ 中的任意一个数据点, p′ i ( x p′ i , y p′ i , z p′ i ),( x p′ i , y p′ i , z p′ i )表示点 p′ i 的三维坐标,定义其曲率因子 α H i 为:
式(3.5)中,
H
i
表示点
的平均曲率,1≤
i
≤
n
。
平均曲率 H i 的定义式为:
式(3.6)中,
λ
0
,
λ
1
,
λ
2
表示点
的
k
邻域点集构造的关于点
的3
×
3协方差矩阵
C
的特征值,并且
λ
0
≤
λ
1
≤
λ
2
,协方差矩阵
C=
,
表示点
及其
k
邻域点的质心。
曲率因子
α
H
i
表示点
的平均曲率
H
i
对聚类的影响程度。
H
i
的值越小,
α
H
i
的值越小,点
包含的特征也就越小;
H
i
的值越大,
α
H
i
的值越大,点
包含的特征也就越大。
定义点
的密度
ρ
i
为:
定义密度因子 α ρ i 为:
式(3.8)中,1≤ i ≤ n 。
密度因子
α
ρ
i
表示点
p′
i
的周围点密度对聚类的影响程度。点
周围点的密度越大,
α
ρ
i
的值越大,点
对聚类的影响也就越大;点
周围点的密度越小,
α
ρ
i
的值越小,点
对聚类的影响也就越小。
基于FCM算法以及对曲率因子 α H i 和密度因子 α ρ i 的定义,接下来通过对 α H i 和 α ρ i 加权的方式来构造新的FCM目标函数 F′ ,定义 F′ 为:
式(3.9)中, λ H i 是曲率系数, λ ρ i 是密度系数,并且满足 λ H i +λ ρ i = 1。
基于该特征加权FCM算法,删除点云 P′ 的小尺度噪声的具体步骤如下:
步骤1:对点云
P′
中的任意一点
,采用特征加权FCM算法对其
r
包围球内的点进行聚类,并统计其
r
包围球内近邻点的个数。
步骤2:判断点
的
r
包围球内近邻点数目,若大于给定阈值,则将点
向
移动,若小于等于给定阈值,则点
为噪声点,将其删除。其中,
表示聚类中心
o
j
相对于隶属度
μ
ij
的加权平均值,定义式为:
步骤3:取下一个未聚类过的点,重复执行步骤1到步骤3,直到点云 P′ 中的所有点都判断完为止,从而实现点云 P′ 的小尺度噪声删除。