轨迹预测-运动递归函数

定义

\[o(t)=C_1*o(t-1)+c_2*o(t-2)+...+c_f(t-f) \tag{1} \]

事件t的位置点和之前f个位置点具有线性组合的关系,f成为回顾系数。
定义

\[s_0(t) = \{o(t),o(t-1),...,o(t-f+1)\} \tag{2} \]

因此

\[s_0(t)=K_0*s_0(t-1) \tag{3} \]

K_0是维度为\((d*f)*(d*f)\)维度的矩阵。d是数据点的维度,对于二维路径点d = 2。
对于d=2,f=2,写出式(3)的展开形式:

\[\left[ \begin{matrix} o(t).x_1 \\ o(t).x_2 \\ o(t-1).x_1 \\ o(t-1).x_2 \end{matrix} \right] = \left[ \begin{matrix} k_{11} & k_{12} & k_{13} & k_{14} \\ k_{21} & k_{22} & k_{23} & k_{24} \\ 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{matrix} \right] * \left[ \begin{matrix} o(t-1).x_1 \\ o(t-1).x_2 \\ o(t-2).x_1 \\ o(t-2).x_2 \end{matrix} \right] \]

我们可以进一步认识到,对于\(K_0\)矩阵只有前面d行是未知,未知数个数为\(d*(d*f)\)
对于其余行的每个元素,满足:

\[\begin{cases} k_{ij} = 0 \space \text{for i>=d+1 and i!=j+d} \\ \tag{4} k_{ij} = 1 \space \text{for i>=d+1 and i=j+d} \end{cases} \]

抽取式(3)的\(K_0\)矩阵的前d行的某一行的乘法过程,可以写出

\[s_0(t-1)^T*K_{i*} = o(t).x_i \tag{5} \]

其中\(d>=i>=1\),\(K_{i*}\)是K矩阵的第i行向量。

我们需要得到能够最好的描述历史数据的\(K_0\)矩阵,并以此预测将来的路径。

参数估计

设l_0(t)是实际的路径点数据。\(\{l_o(T_c-h+1),l_0(T_c-h+2),...,l_0(T_c)\}\)是距离当前时刻最近的h个路点数据。
h需要大于f。
根据式(5)我们可以写出:

\[\left[ \begin{matrix} s(T_c-1)^T \\ s(T_c-2)^T \\ ... \\ s(T_c-h+f)^T \end{matrix} \right] * k_{i*} = \left[ \begin{matrix} l(T_c).x_i \\ l(T_c-1).x_i \\ ... \\ l(T_c-h+f+1).x_i \end{matrix} \right] \tag{6} \]

\[S = \left[ \begin{matrix} s(T_c-1)^T \\ s(T_c-2)^T \\ ... \\ s(T_c-h+f)^T \end{matrix} \right] \space l = \left[ \begin{matrix} l(T_c).x_i \\ l(T_c-1).x_i \\ ... \\ l(T_c-h+f+1).x_i \end{matrix} \right] \]

式6可以简写为\(S*k_{i*}=l\)
接下来的任务是求解行向量\(k_{i*}\),求解从1到d行的每个行向量可以得到完整的K矩阵。
论文中简单介绍来了将S进行奇异值分解的求解方法。
式(6)中共有h-f个方程,而行向量\(k_{i*}\)中共有d*f个未知数,todo...

posted @ 2019-07-14 16:41  bluebean  阅读(1287)  评论(0编辑  收藏  举报