发明内容
针对现有技术所存在的上述技术问题,本发明提供了一种面向非刚体三维重建的轨迹基选择方法,能够基于投影误差和频率特性选择出有效的轨迹基数目及其组合形式,从而提高了非刚体三维运动重建算法的效率和精度。
一种面向非刚体三维重建的轨迹基选择方法,包括如下步骤:
(1)接收关于非刚体目标的运动图像序列,通过对运动图像序列进行特征点坐标提取,构建得到非刚体目标的原始测量矩阵;
(2)对m×m维的单位矩阵进行DCT变换(离散余弦变换),得到轨迹基矩阵并选取其中前k个轨迹基;k为自然数且1≤k≤rank(W)/3,m为运动图像序列的图像帧数,rank(W)为原始测量矩阵的秩;
(3)利用所述的k个轨迹基对原始测量矩阵进行三维重建,得到非刚体目标的三维结构和旋转矩阵;
(4)根据所述的三维结构和旋转矩阵进行反投影,得到非刚体目标的反投影测量矩阵;
(5)使所述的原始测量矩阵与反投影测量矩阵进行比较,得到运动图像序列的投影误差;
(6)对所述的投影误差进行DCT变换得到投影误差的频谱,根据预设的误差水平从频谱中选取p个频率点,进而根据p个频率点从轨迹基矩阵中提取对应的p个轨迹基;p为自然数且1≤p≤rank(W)/3。
所述的原始测量矩阵为2m×n维的矩阵,其中第i行第j行以及第i+1行第j行的两个元素值分别对应为运动图像序列第i帧图像中第j个特征点的横纵坐标,i为奇数且1≤i<2m,j为自然数且1≤j≤n,n为运动图像序列每帧图像中的特征点总个数。
所述的步骤(6)中,根据预设的误差水平从频谱中选取p个频率点的具体过程如下:首先,使频谱中各频率点按幅值从大到小排序;然后,满足以下算式选取排列最前的p个频率点:
其中:Hx和Hy分别为排序后频谱中第x个频率点和第y个频率点的幅值,σ为误差水平,x为自然数且1≤x≤m,y为自然数且1≤y≤p。
所述的轨迹基矩阵中轨迹基的个数以及投影误差频谱中频率点的个数与运动图像序列的图像帧数相同。
本发明为了用轨迹及表示时间变化的结构,可以将结构视为轨迹的一组集合T(i)=[Tx(i)T,Ty(i)T,Tz(i)T]T,其中Tx(i)=[X1i,…Xmi]、Ty(i)=[Y1i,…Ymi]、Tz(i)=[Z1i,…Zmi]分别是第i个轨迹的x,y和z的坐标。
将每一个轨迹描述为基轨迹的线性组合:
其中:θl是一种轨迹基矢量,且axl(i)、ayl(i)和azl(i)是对应这些基矢量的系数。
所以非刚体的随时间变化的三维结构可以表示成:
S3m×n=Θ3m×3kA3k×n
其中:Θ和A分别是轨迹基矩阵和系数矩阵。
然后根据因式分解法分解图像序列测量矩阵,采用初始的k个轨迹基分量,构建得到非刚体的三维运动结构。
本发明通过对非刚体的运动图像序列首先进行初始重建,得到初始重建结果的投影误差并对投影误差作频谱分析,然后根据投影误差的频谱和选择标准选择出符合一定误差水平的轨迹基组合,从而确定出轨迹基的数目和组合形式。这种轨迹基选择方法不需要通过大量的重建实验和人为经验来得到轨迹基,从而大大减少了重建过程的计算量,并且选择出的轨迹基更加精确合理,在保证了重建精度的同时提高了算法的效率,实现了轨迹基的自动选择。
具体实施方式
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明轨迹基选择方法进行详细说明。
如图1所示,一种面向非刚体三维重建的轨迹基选择方法,包括如下步骤:
(1)接收关于非刚体目标的运动图像序列,通过对运动图像序列进行特征点坐标提取,构建得到非刚体目标的原始测量矩阵;
原始测量矩阵为2m×n维的矩阵,其中第i行第j行以及第i+1行第j行的两个元素值分别对应为运动图像序列第i帧图像中第j个特征点的横纵坐标;m为运动图像序列的图像帧数,n为运动图像序列中每帧图像的特征点总个数,i为奇数且1≤i<2m,j为自然数且1≤j≤n。
(2)对m×m维的单位矩阵进行DCT变换,得到轨迹基矩阵并选取其中前k个轨迹基;利用k个轨迹基对原始测量矩阵进行三维重建,得到非刚体目标的三维结构和旋转矩阵;具体重建过程如下:
a.预定义轨迹基。由于离散余弦变换基(DCT基)是一种通用轨迹基,本实施方式采用离散余弦变换来预定义轨迹空间。离散余弦变换如下:
输入为一个m×m维的单位矩阵。其中:
b.分解非刚体的运动结构。图像序列对应一个2m×n维的原始测量矩阵W,它包含m帧图像的n个点的坐标位置,即:
测量矩阵可以分解为W=RS,对W进行奇异值分解如下:
c.估计矫正矩阵Q。为了恢复转移结构,需要估计矫正矩阵Q使得如下等式成立:
矩阵Λ的元素如下:
其中:θ为轨迹基分量,Ri是一个2×3的正交投影矩阵。
为了矫正和只需要估计Q的三列而不需要估计整个矩阵Q。定义QIII为矩阵Q的第1、第K+1st、第2K+1st列。用QIII代替Q,可以得到:
特别的,用来表示矩阵的第2i-1和2i行,于是得到:
其中:I2×2是一个2×2的单位矩阵。根据以上约束条件可以估计出QIII。
d.求出非刚体的结构矩阵。计算出QIII后,就可以估计旋转矩阵得到R;然后把它与已知DCT基矩阵Θ相乘来恢复矩阵Λ2m×3k=R2m×3mΘ3m×3k;再通过方程和S3m×n=Θ3m×3kA3k×n最终得到非刚体的三维结构。
(3)根据三维结构和旋转矩阵进行反投影,得到非刚体目标的反投影测量矩阵;使原始测量矩阵与反投影测量矩阵进行比较,得到运动图像序列的投影误差;对投影误差进行DCT变换得到投影误差的频谱。
对于采用轨迹空间中的1到k个轨迹基重建的结构矩阵,结合分解得出的旋转矩阵,反投影得出反投影测量矩阵W′,即:
W′=RS
与初始测量矩阵比较得出每一帧的平均投影误差如下:
然后对投影误差采用下式进行离散余弦变换,并计算出各频率点的幅值:
(4)根据预设的误差水平σ从频谱中选取p个频率点:
首先,使频谱中各频率点按幅值从大到小排序;然后,对于投影误差的频谱,选择出幅度最大的p个频率点,即满足以下算式选取排列最前的p个频率点:
其中:Hx和Hy分别为排序后频谱中第x个频率点和第y个频率点的幅值;
进而根据p个频率点从轨迹基矩阵中提取对应的p个轨迹基。在轨迹空间中进一步确定出最终的轨迹基,从而完成轨迹基数目与组合形式的确定;将选择出的轨迹基应用到重建过程中,能够得到较好的重建结果。
下面以人的拾起动作为例,通过实验来验证本发明方法。具体的参数选取如下:
加载人体拾起动作的图像测量矩阵W,大小为714×41的,包括了41个特征点的357帧连续图像。取初始的轨迹基个数为k=4,在轨迹空间中顺序取前k个DCT基,即位置组合为[1 2 3 4],并将其应用到初始重建中,根据步骤(2)得到旋转矩阵R和结构矩阵S。再根据步骤(3)计算得出投影误差errW,是一个1×357的矩阵,进而求出频谱幅度H。根据步骤(4),取误差水平σ为0.83,选择得出的轨迹基位置组合为[1 2 3 4 6],此时轨迹基数目为p=5。最后在轨迹空间中找到相应位置的轨迹基分量并组合起来,则确定了轨迹基的数目与组合形式,最后将其应用到重建过程中。
图2为采用选择出的轨迹基的重建结果图。表1分析了初始重建、采用前5个轨迹基、前7个轨迹基的重建性能,比较了各自的重建误差的期望水平和所用的重建时间。
表1
由以上实验数据证明,采用轨迹基自动选择方法选择的轨迹基在保证了重建精度的同时,又提升了效率,实现了轨迹基的自动选择,很好地解决了现存的问题。