本文主要介绍了与图匹配问题非常相似的点配准(Point Registration)问题,分析了二者之间的区别和联系。原文作者没有提点配准问题,而是用了ICP(Iterative Closest Point)的说法,但我个人认为ICP只是求解三维点配准的一种方法,使用点配准这个概念应该更加准确。最后介绍了如何将几何约束引入FGM中来求解可变形图(Deformable Graph)的匹配问题。
与图匹配问题类似,点配准问题是指给定两组点集
P
1
=
[
p
1
1
,
p
2
1
,
.
.
.
p
n
1
1
]
∈
R
d
×
n
1
P_1=[p_1^1,p_2^1,...p_{n_1}^1]\in \mathbb{R}^{d\times n_1}
P1=[p11,p21,...pn11]∈Rd×n1和
P
2
=
[
p
1
2
,
p
2
2
,
.
.
.
p
n
2
2
]
∈
R
d
×
n
2
P_2=[p_1^2,p_2^2,...p_{n_2}^2]\in \mathbb{R}^{d\times n_2}
P2=[p12,p22,...pn22]∈Rd×n2,点配准的目标就是寻找两个点集中点和点之间的对应匹配关系,并获得两个点集之间的几何变换关系。该目标是通过最小化两个点集中点和点之间的距离之和来实现的:
min
X
∈
Π
,
T
∈
Ψ
J
i
c
p
(
X
,
T
)
=
∑
i
1
,
i
2
x
i
1
i
2
∥
p
i
1
1
−
τ
(
p
i
2
2
)
∥
2
2
+
ψ
(
T
)
(
22
)
\min_{X\in \Pi,\mathcal{T}\in\Psi}J_{icp}(X,\mathcal{T})=\sum_{i_1,i_2}x_{i_1i_2}\|p_{i_1}^1-\tau(p_{i_2}^2)\|_2^2+\psi(\mathcal{T})\quad (22)
X∈Π,T∈ΨminJicp(X,T)=i1,i2∑xi1i2∥pi11−τ(pi22)∥22+ψ(T)(22)
X
∈
{
0
,
1
}
n
1
×
n
2
X\in\{0,1\}^{n_1\times n_2}
X∈{0,1}n1×n2表示点和点之间的对应关系。在点配准问题中,点和点之间可以是一对一,也可以是多对一,本文只关注一对一的情况,也就是说
X
X
X与图匹配中的要求一致,仍是一个置换矩阵。
τ
(
⋅
)
\tau(\cdot)
τ(⋅)是一个用参数
T
\mathcal{T}
T描述的几何变换。
ψ
(
⋅
)
\psi(\cdot)
ψ(⋅)是一个用于约束变换参数
T
\mathcal{T}
T的惩罚函数。由上式可以看到,点配准问题和图匹配问题相比,其优化目标都需要寻找点和点之间的对应关系,而不同之处在于点配准中两组点之间存在某种特定的几何变换关系,图匹配中没有这种约束条件。但图匹配除了关注点和点之间的匹配关系,还会关注边和边之间的匹配关系,这一点是点配准问题所不具备的。
为了将点配准与图匹配问题联系起来,我们定义节点关联矩阵
K
p
(
T
)
∈
R
n
1
×
n
2
K_p(\mathcal{T})\in\mathbb{R}^{n_1\times n_2}
Kp(T)∈Rn1×n2,其中的每一个元素为
k
i
1
i
2
p
(
T
)
=
−
∥
p
i
1
1
−
τ
(
p
i
2
2
)
∥
2
2
k_{i_1i_2}^p(\mathcal{T})=-\|p_{i_1}^1-\tau(p_{i_2}^2)\|_2^2
ki1i2p(T)=−∥pi11−τ(pi22)∥22,表示节点之间欧式距离的负值。则原目标函数(公式(21))可以改写为
J
i
c
p
(
X
,
T
)
=
−
t
r
(
K
p
(
T
)
T
X
)
+
ψ
(
T
)
(
23
)
J_{icp}(X,\mathcal{T})=-tr(K_p(\mathcal{T})^TX)+\psi(\mathcal{T})\quad (23)
Jicp(X,T)=−tr(Kp(T)TX)+ψ(T)(23)
给定变换参数
T
\mathcal{T}
T,最小化上述目标函数就等价于最大化公式(7)中的节点相似度,这个优化问题可以看作是线性匹配问题。
因为只关注节点相似性,而不考虑边的相似性,所以是线性匹配问题
如果 X X X是一对一的匹配,可用Hungarian算法求解,如果 X X X是多对一的匹配,可采用赢家通吃策略求解。通常 X X X和 T \mathcal{T} T都是未知的,需要进行联合优化,该问题是一个非凸问题,无法求得闭式解。通常采用迭代的交替最小化算法进行求解,如EM算法。简单来说,就是固定 T \mathcal{T} T,优化 X X X;然后再固定 X X X,优化 T \mathcal{T} T,交替进行直至两者都收敛。
上文中提到,点配准中两组点之间存在特定的几何变换关系,下面简要介绍三种常见的变换:
给定一个点 p ∈ R 2 p\in\mathbb{R}^2 p∈R2或一个点集 P ∈ R 2 × n P\in\mathbb{R}^{2\times n} P∈R2×n,相似变换的计算过程为 τ ( p ) = s R p + t \tau(p)=sRp+t τ(p)=sRp+t或 τ ( P ) = s R P + t 1 n T \tau(P)=sRP+t\mathbf{1}_n^T τ(P)=sRP+t1nT,其中 s , R , t s,R,t s,R,t分别表示放缩系数、旋转矩阵和平移向量。对旋转矩阵 R R R有一个约束条件 Ψ \Psi Ψ: R R R必须是单位正交阵,即 Ψ = { R ∣ R T R = I 2 , ∣ R ∣ = 1 } \Psi=\{R|R^TR=I_2, |R|=1\} Ψ={R∣RTR=I2,∣R∣=1}
给定一个点 p ∈ R 2 p\in\mathbb{R}^2 p∈R2或一个点集 P ∈ R 2 × n P\in\mathbb{R}^{2\times n} P∈R2×n,仿射变换的计算过程为 τ ( p ) = V p + t \tau(p)=Vp+t τ(p)=Vp+t或 τ ( P ) = V P + t 1 n T \tau(P)=VP+t\mathbf{1}_n^T τ(P)=VP+t1nT,其中 V ∈ R 2 × 2 V\in\mathbb{R}^{2\times 2} V∈R2×2, t ∈ R 2 t\in\mathbb{R}^{2} t∈R2分别表示仿射矩阵和平移向量。
RBF非刚性变换的参数化取决于基点的选择,本文选择第二个点集中的点作为基点。给定一个点 p ∈ R 2 p\in\mathbb{R}^2 p∈R2或一个点集 P ∈ R 2 × n P\in\mathbb{R}^{2\times n} P∈R2×n,RBF非刚性变换计算点与其初始位置之间的位移, τ ( p ) = p + W ϕ ( p ) \tau(p)=p+W\phi(p) τ(p)=p+Wϕ(p)或 τ ( P ) = P + W L p \tau(P)=P+WL_p τ(P)=P+WLp,其中 W ∈ R 2 × n 2 W\in\mathbb{R}^{2\times n_2} W∈R2×n2表示权重矩阵, ϕ ( p ) = [ ϕ 1 ( p ) , ϕ 2 ( p ) , . . . ϕ n 2 ( p ) ] T ∈ R n 2 \phi(p)=[\phi_1(p),\phi_2(p),...\phi_{n_2}(p)]^T\in\mathbb{R}^{n_2} ϕ(p)=[ϕ1(p),ϕ2(p),...ϕn2(p)]T∈Rn2表示与基点相对应的 n 2 n_2 n2个位移函数。 ϕ i ( p ) = e x p ( − ∥ p − p i 2 ∥ 2 2 / σ w 2 ) \phi_i(p)=exp(-\|p-p_i^2\|_2^2/\sigma_w^2) ϕi(p)=exp(−∥p−pi2∥22/σw2)表示点 p p p和基点 p i p_i pi之间的位移函数, σ w \sigma_w σw表示带宽。 L p = [ ϕ ( P 1 2 ) , ϕ ( P 2 2 ) , . . . ϕ ( P n 2 2 ) ] T ∈ R n 2 × n 2 L_p=[\phi(P_1^2),\phi(P_2^2),...\phi(P_{n_2}^2)]^T\in\mathbb{R}^{n_2\times n_2} Lp=[ϕ(P12),ϕ(P22),...ϕ(Pn22)]T∈Rn2×n2是定义在所有成对基点上的RBF核函数。本文对位移场的非光滑性进行正则化,即 ψ ( T ) = t r ( W L p W T ) \psi(\mathcal{T})=tr(WL_pW^T) ψ(T)=tr(WLpWT).
上述变换关系整理如下表所示,关于更多有关几何变换的介绍我将单开一篇文章来介绍。

图匹配是一种广泛应用于具备相似结构点集匹配的工具。但在很多计算机视觉任务中,匹配的两个点集之间需要满足一定的几何约束。目前尚不清楚如何将几何约束统一到图匹配的方法中。本文介绍了一种可变形图匹配(Deformable Graph Matching, DGM)方法能够将刚性和非刚性变换引入到图匹配中。
根据前文中对于图的定义,
G
=
{
P
,
Q
,
G
,
H
}
\mathcal{G}=\{P,Q,G,H\}
G={P,Q,G,H},为了简化问题并且尽量与点配准问题保持一致,此处选择节点的坐标作为节点特征
P
=
[
p
1
,
.
.
.
,
p
n
]
P=[p_1,...,p_n]
P=[p1,...,pn],选择边所连接的两个节点的坐标差值
q
c
=
p
i
−
p
j
q_c=p_i-p_j
qc=pi−pj作为边的特征
Q
=
[
q
1
,
.
.
.
,
q
m
]
Q=[q_1,...,q_m]
Q=[q1,...,qm]。在这种情况下,边的特征可以用矩阵形式计算
Q
=
P
(
G
−
H
)
Q=P(G-H)
Q=P(G−H)。给定两幅图
G
1
=
{
P
1
,
Q
1
,
G
1
,
H
1
}
,
G
2
=
{
P
2
,
Q
2
,
G
2
,
H
2
}
\mathcal{G}_1=\{P_1,Q_1,G_1,H_1\},\mathcal{G}_2=\{P_2,Q_2,G_2,H_2\}
G1={P1,Q1,G1,H1},G2={P2,Q2,G2,H2},两组点之间的几何变换为
τ
(
⋅
)
\tau(\cdot)
τ(⋅),计算节点关联矩阵
K
p
(
T
)
K_p(\mathcal{T})
Kp(T)和边关联矩阵
K
q
(
T
)
K_q(\mathcal{T})
Kq(T)
k
i
1
i
2
p
(
T
)
=
−
∥
p
i
1
1
−
τ
(
p
i
2
2
)
∥
2
2
(
24
)
k_{i_1i_2}^p(\mathcal{T})=-\|p_{i_1}^1-\tau(p_{i_2}^2)\|_2^2\quad (24)
ki1i2p(T)=−∥pi11−τ(pi22)∥22(24)
k
c
1
c
2
q
(
T
)
=
β
−
∥
(
p
i
1
1
−
p
j
1
1
)
−
(
τ
(
p
i
2
2
)
−
τ
(
p
j
2
2
)
)
∥
2
2
(
25
)
k_{c_1c_2}^q(\mathcal{T})=\beta-\|(p_{i_1}^1-p_{j_1}^1)-(\tau(p_{i_2}^2)-\tau(p_{j_2}^2))\|_2^2\quad (25)
kc1c2q(T)=β−∥(pi11−pj11)−(τ(pi22)−τ(pj22))∥22(25)
β
\beta
β选择一个较大的数以保证边的相似性为非负值。与点配准问题相似,为了让图匹配对于几何变换更加鲁棒,DGM不仅要找到最优的对应关系
X
X
X还要找到最优的变换参数
T
\mathcal{T}
T,则优化的目标函数为
max
X
∈
Π
,
T
∈
Ψ
J
d
g
m
(
X
,
T
)
=
t
r
(
K
p
(
T
)
T
X
)
+
λ
t
r
(
K
q
(
T
)
T
Y
)
−
ψ
(
T
)
(
26
)
\max_{X\in\Pi,\mathcal{T}\in\Psi}J_{dgm}(X,\mathcal{T})=tr(K_p(\mathcal{T})^TX)+\lambda tr(K_q(\mathcal{T})^TY)-\psi(\mathcal{T})\quad (26)
X∈Π,T∈ΨmaxJdgm(X,T)=tr(Kp(T)TX)+λtr(Kq(T)TY)−ψ(T)(26)
λ
>
0
\lambda>0
λ>0用于平衡节点和边的重要性。当
λ
=
0
\lambda=0
λ=0时,上述目标函数等价为点配准问题,当
λ
>
0
\lambda>0
λ>0但
T
\mathcal{T}
T已知时,上述目标由等价为图匹配问题。
由于目标函数的非凸属性,本文采用与点配准相似的优化策略,交替优化 X X X和 T \mathcal{T} T。对DGM问题而言,初始化非常重要,但如何选择一个好的初始化参数已经超过本文的范畴。本文简单地将变换参数初始化为同等变换,即 τ ( p ) = p \tau(p)=p τ(p)=p。给定 T \mathcal{T} T时,上述优化问题变成图匹配问题,可以采用前文介绍的路径跟随算法求解最优的 X X X。给定 X X X时,可参考点配准方法求解最优的 T \mathcal{T} T。针对上文所述的几种常见几何变换,均可求得闭式解。
根据公式(25),边特征的相似变换为
τ
(
q
)
=
s
R
q
\tau(q)=sRq
τ(q)=sRq或
τ
(
Q
)
=
s
R
Q
\tau(Q)=sRQ
τ(Q)=sRQ,由于平移变换
t
t
t只会影响节点特征,不会影响边的特征,因此当最优旋转矩阵
R
∗
R^*
R∗和最优放缩系数
s
∗
s^*
s∗已知时,最优平移向量
t
∗
t^*
t∗可得
t
∗
=
p
ˉ
1
−
s
∗
R
∗
p
ˉ
2
,
p
ˉ
1
=
P
1
X
1
n
2
1
n
1
T
X
1
n
2
,
p
ˉ
2
=
P
2
X
1
n
1
1
n
1
T
X
1
n
2
(
27
)
t^*=\bar{p}_1-s^*R^*\bar{p}_2,\quad \bar{p}_1=\frac{P_1X\mathbf{1}_{n_2}}{\mathbf{1}_{n_1}^TX\mathbf{1}_{n_2}}, \quad \bar{p}_2=\frac{P_2X\mathbf{1}_{n_1}}{\mathbf{1}_{n_1}^TX\mathbf{1}_{n_2}}\quad(27)
t∗=pˉ1−s∗R∗pˉ2,pˉ1=1n1TX1n2P1X1n2,pˉ2=1n1TX1n2P2X1n1(27)
经过数据中心化操作
P
ˉ
1
=
P
1
−
p
ˉ
1
1
n
1
T
\bar{P}_1=P_1-\bar{p}_1\mathbf{1}_{n_1}^T
Pˉ1=P1−pˉ11n1T,
P
ˉ
2
=
P
2
−
p
ˉ
2
1
n
2
T
\bar{P}_2=P_2-\bar{p}_2\mathbf{1}_{n_2}^T
Pˉ2=P2−pˉ21n2T,最优的旋转矩阵
R
∗
R^*
R∗和最优放缩系数
s
∗
s^*
s∗为
R
∗
=
U
d
i
a
g
(
1
,
.
.
.
,
∣
U
V
T
∣
)
V
T
(
28
)
R^*=Udiag(1,...,|UV^T|)V^T\quad (28)
R∗=Udiag(1,...,∣UVT∣)VT(28)
s
∗
=
t
r
(
Σ
)
t
r
(
1
n
1
×
2
(
P
ˉ
2
∘
P
ˉ
2
)
X
T
+
λ
q
t
r
(
1
m
1
×
2
(
Q
ˉ
2
∘
Q
ˉ
2
)
Y
T
)
)
(
29
)
s^*=\frac{tr(\Sigma)}{tr(\mathbf{1}_{n_1\times 2}(\bar{P}_2\circ\bar{P}_2)X^T+\lambda_qtr(\mathbf{1}_{m_1\times 2}(\bar{Q}_2\circ\bar{Q}_2)Y^T))}\quad(29)
s∗=tr(1n1×2(Pˉ2∘Pˉ2)XT+λqtr(1m1×2(Qˉ2∘Qˉ2)YT))tr(Σ)(29)
其中
U
Σ
V
T
=
P
ˉ
1
X
P
ˉ
2
T
+
λ
q
Q
1
Y
Q
2
T
U\Sigma V^T=\bar{P}_1X\bar{P}_2^T+\lambda_q{Q}_1Y{Q}_2^T
UΣVT=Pˉ1XPˉ2T+λqQ1YQ2T
与相似变换接近,边特征的仿射变换为
τ
(
q
)
=
V
q
\tau(q)=Vq
τ(q)=Vq或
τ
(
Q
)
=
V
Q
\tau(Q)=VQ
τ(Q)=VQ。最优平移向量为
t
∗
=
p
ˉ
1
−
V
∗
p
ˉ
2
,
p
ˉ
1
=
P
1
X
1
n
2
1
n
1
T
X
1
n
2
,
p
ˉ
2
=
P
2
X
1
n
1
1
n
1
T
X
1
n
2
(
30
)
t^*=\bar{p}_1-V^*\bar{p}_2,\quad \bar{p}_1=\frac{P_1X\mathbf{1}_{n_2}}{\mathbf{1}_{n_1}^TX\mathbf{1}_{n_2}}, \quad \bar{p}_2=\frac{P_2X\mathbf{1}_{n_1}}{\mathbf{1}_{n_1}^TX\mathbf{1}_{n_2}}\quad(30)
t∗=pˉ1−V∗pˉ2,pˉ1=1n1TX1n2P1X1n2,pˉ2=1n1TX1n2P2X1n1(30)
最优的仿射变换为
V
∗
=
A
B
−
1
,
A
=
P
ˉ
1
X
P
ˉ
2
T
+
λ
q
Q
1
Y
Q
2
T
B
=
P
ˉ
2
d
i
a
g
(
X
T
1
n
1
)
P
ˉ
2
T
+
λ
Q
2
d
i
a
g
(
Y
T
1
m
1
)
Q
2
T
(
31
)
V^*=AB^{-1},\quad A=\bar{P}_1X\bar{P}_2^T+\lambda_q{Q}_1Y{Q}_2^T\\ B=\bar{P}_2diag(X^T\mathbf{1}_{n_1})\bar{P}_2^T+\lambda Q_2diag(Y^T\mathbf{1}_{m_1})Q_2^T \quad(31)
V∗=AB−1,A=Pˉ1XPˉ2T+λqQ1YQ2TB=Pˉ2diag(XT1n1)Pˉ2T+λQ2diag(YT1m1)Q2T(31)
边特征的非刚性变换为
τ
(
q
c
)
=
q
c
+
W
(
ϕ
(
p
i
)
−
ϕ
(
p
j
)
)
\tau(q_c)=q_c+W(\phi(p_i)-\phi(p_j))
τ(qc)=qc+W(ϕ(pi)−ϕ(pj))或
τ
(
Q
)
=
Q
+
W
L
q
,
L
q
=
L
p
(
G
−
H
)
\tau(Q)=Q+WL_q,L_q=L_p(G-H)
τ(Q)=Q+WLq,Lq=Lp(G−H),最优的权重矩阵
W
∗
=
A
B
−
1
W^*=AB^-1
W∗=AB−1
A
=
P
1
X
−
P
2
d
i
a
g
(
X
T
1
n
1
)
+
λ
q
Q
1
Y
(
G
2
−
H
2
)
T
−
λ
q
Q
2
d
i
a
g
(
Y
T
1
m
1
)
(
G
2
−
H
2
)
T
B
=
L
p
d
i
a
g
(
X
T
1
n
1
)
+
λ
w
I
n
2
+
λ
q
L
q
d
i
a
g
(
Y
T
1
m
1
)
(
G
2
−
H
2
)
T
(
32
)
A=P_1X-P_2diag(X^T\mathbf{1}_{n_1})+\lambda_qQ_1Y(G_2-H_2)^T-\lambda_qQ_2diag(Y^T\mathbf{1}_{m_1})(G_2-H_2)^T\\B=L_pdiag(X^T\mathbf{1}_{n_1})+\lambda_wI_{n_2}+\lambda_qL_qdiag(Y^T\mathbf{1}_{m_1})(G_2-H_2)^T\quad (32)
A=P1X−P2diag(XT1n1)+λqQ1Y(G2−H2)T−λqQ2diag(YT1m1)(G2−H2)TB=Lpdiag(XT1n1)+λwIn2+λqLqdiag(YT1m1)(G2−H2)T(32)

图(a)中展示了三种不同程度的相似变换(由蓝色到红色),图(b)中展示了ICP算法在迭代24次时,在不同程度的变换作用下,目标函数值得情况。目标函数值越接近于0,表示匹配效果越好,可以看到在旋转角度为
1
3
π
\frac{1}{3}\pi
31π时,ICP算法陷入了局部最优,无法得到最优得匹配结果。图( c)中展示了DGM算法在不同迭代次数下,不同程度得变换作用下,目标函数值得情况。可以看到虽然在迭代初期,在大部分得变换条件下,匹配效果不尽人意。但随着迭代次数增加,匹配效果越来越好,当迭代24次时,在所有得变换条件下均能达到最优匹配。
本文是图匹配(Graph Matching)入门学习笔记——以《Factorized Graph Matching》为例系列文章的最后一篇,总结了图匹配和点配准问题之间区别与联系,介绍了三种常见的几何变换,并几何变换引入图匹配构成可变形图匹配问题。最后提出了在三种变换条件下,如何优化求解DGM问题。关于图匹配的研究和应用都浩如烟海,这系列文章只是对图匹配问题有一个初步的介绍,更多更新的算法还需要进一步的学习与探索。