本文内容与截图主要参考[A Computational Framework for Segmentation and Grouping,Gérard Medioni, Mi-Suen Lee and Chi-Keung Tang]
(http://download.csdn.net/detail/u010658879/8476737 A Computational Framework for Segmentation and Grouping)
和A Perceptual Organization Approach to Computer Vision and Machine Learning
每个输入***点***都对应一个***张量***,产生一个***张量场***,对邻域的不同点有不同的场强影响。二维棒张量场和球张量场如下图左,下右图表示 O O O点产生的棒张量场可作用到领域点 P P P张量上。
现讨论二维张量的投票过程:先设棒张量对邻域点 p p p作用的张量算子 F S ( p ) F_S(p) FS(p),球张量对邻域点 p p p作用的张量算子 F B ( p ) F_B(p) FB(p),后面会具体提到几种张量算子的具体形式;
假设输入只有两点 p 1 , p 2 p_1,p_2 p1,p2(可推广到无数个点),分别编码为
S 0 , i = ( λ i , 1 − λ i , 2 ) e ^ 1 e ^ 1 T + λ i , 2 ( e ^ 1 e ^ 1 T + e ^ 2 e ^ 2 T ) = S 0 , i S + S 0 , i B , S_{0,i}=(\lambda_{i,1}-\lambda_{i,2}) \hat e_1 \hat e_1^T+\lambda_{i,2}( \hat e_1 \hat e_1^T+\hat e_2 \hat e_2^T)=S_{0,i}^S+S_{0,i}^B, S0,i=(λi,1−λi,2)e^1e^1T+λi,2(e^1e^1T+e^2e^2T)=S0,iS+S0,iB,下标0表示第0次投票后, i i i取值为 p 1 , p 2 p_1,p_2 p1,p2。
Stick vote.点 p 1 p_1 p1收集到的棒投票张量就是点 p 2 p_2 p2投出的棒投票张量,即 F S ( p 1 ) F_S(p_1) FS(p1),一次棒张量投票后点 p 1 p_1 p1的张量变为
S 1 , p 1 S = S 0 , p 1 S + ( λ p 2 , 1 − λ p 2 , 2 ) F S ( p 1 ) S_{1,p_1}^S=S_{0,p_1}^S+(\lambda_{p_2,1}-\lambda_{p_2,2})F_S(p_1) S1,p1S=S0,p1S+(λp2,1−λp2,2)FS(p1)
Ball vote.同理有点 p 1 p_1 p1收集到的球投票张量 F B ( p 1 ) F_B(p_1) FB(p1),一次球张量投票后点 p 1 p_1 p1的张量变为 S 1 , p 1 B = S 0 , p 1 B + λ p 2 , 2 F B ( p 1 ) S_{1,p_1}^B=S_{0,p_1}^B+\lambda_{p_2,2}F_B(p_1) S1,p1B=S0,p1B+λp2,2FB(p1)
最后汇总一次投票后的各个点的张量 S 1 , i = S 1 , i S + S 1 , i B S_{1,i}=S_{1,i}^S+S_{1,i}^B S1,i=S1,iS+S1,iB
三维张量场如下图,三维场!!
Tensor Decomposition:由于任一张量可分解为球张量、板张量、棒张量的线性组合,一次投票后,各点张量信息得到改善,再次进行张量分解为下图的形式
然后进行二次张量投票,与第一次不同的是,这一次球张量不再有投票权(加速算法的目的)。
几种张量算子(Tensor kernel)
把二维棒张量作为张量投票基本算子,因为其他几类张量算子都可由棒张量算子推导获得。
显著性衰减函数
s s s-曲线长度, κ κ κ-曲率, c c c-控制曲率衰减程度, σ σ σ-投票邻域范围, l l l-两点间的距离
基本算子中唯一的变量就是 σ σ σ,只要 O , P O,P O,P两点定了其他量也恒定了。
二维球张量算子
R ( θ ) R(\theta) R(θ)-旋转 θ \theta θ角度的二维矩阵。为求方便,会用累加求和
B S O ( P ) = ∑ i = 1 K v → i v → i T B_{SO}(P)=\sum_{i=1}^K \overrightarrow v_i \overrightarrow v_i ^T BSO(P)=i=1∑KviviT
KaTeX parse error: Unexpected character: '' at position 2: v̲_i are the stick votes tensors with angle 2 π K i \frac {2\pi} K i K2πi
三维球张量算子
三维板张量算子
~~~~~~~~~~华丽分割线~~~~~~~~~~
MATLAB代码仿真:可从github上找到,也可以从[https://download.csdn.net/download/u010658879/8515907]下载
后来找到更好的tensor voting相关资料(包含伪代码实现,见附录2),下载地址[https://download.csdn.net/download/u010658879/8514365]