发明名称 基于视频流的三维动态人脸表情建模方法
摘要 本发明公开了一种基于视频流的三维动态人脸表情建模方法,能根据输入视频恢复出具有真实感的三维人脸表情,属于计算机视觉与图形学的交叉领域。算法步骤为:1)在输入视频首帧手工标注人脸特征点;2)采用仿射矫正的光流法对特征点进行跟踪;3)基于因子分解将二维跟踪数据重建为三维数据;4)使用重建的三维数据对一般人脸模型进行适配,生成个性化人脸以及动态表情运动;5)采用特征脸技术对原始视频进行压缩;6)利用特征脸重建输入视频,并进行动态纹理映射,合成具有真实感的视觉外观。本发明提供的三维人脸表情建模方法具有较高的时间/空间效率,在人机交互、动画制作以及游戏娱乐等方面具有较高实用价值。
申请公布号 CN100416612C 申请公布日期 2008.09.03
申请号 CN200610053393.8 申请日期 2006.09.14
申请人 浙江大学 发明人 庄越挺;张剑;肖俊;王玉顺
分类号 G06T17/00(2006.01);G06T15/00(2006.01) 主分类号 G06T17/00(2006.01)
代理机构 杭州求是专利事务所有限公司 代理人 张法高
主权项 1. 一种基于视频流的三维动态人脸表情建模方法,其特征在于方法的步骤为:1)在输入的单目未标定视频首帧手工标注人脸特征点的位置;2)采用仿射矫正的光流法对首帧标注的特征点进行跟踪,确定这些特征点在视频序列中每帧的位置变化情况;3)采用基于因子分解的方法将二维跟踪数据恢复为三维运动数据;4)将三维运动数据的前3帧取平均值,以这个平均值适配一个一般三维人脸模型从而产生个性化三维人脸模型;5)使用其他三维运动数据驱动此个性化三维人脸模型,生成动态三维人脸表情;6)采用基于特征脸的视频压缩方法对输入视频进行压缩,以较少存储空间;7)使用特征脸重建输入视频,并结合二维跟踪数据对动态三维人脸自动进行动态纹理映射,生成具有真实感的三维人脸表情序列;所述的基于因子分解的方法:用弱透视投影模型模拟视频成像过程;根据此方法,非刚性物体形状看作一组形状基的加权线性组合,形状基是一组基本的三维形状,任意三维形状都可以由这组三维形状基组合而成;给定跟踪数据,每帧中的特征点可用弱透视投影模型描述如下:<maths num="0001"><![CDATA[<math><mrow><msub><mi>P</mi><mi>fn</mi></msub><mo>=</mo><msubsup><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mi>fn</mi><mi>T</mi></msubsup><mo>=</mo><mrow><mo>[</mo><msub><mi>e</mi><mi>f</mi></msub><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><msub><mi>R</mi><mi>f</mi></msub><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>e</mi><mi>f</mi></msub><msub><mi>c</mi><mi>fK</mi></msub><msub><mi>R</mi><mi>f</mi></msub><mo>]</mo></mrow><mo>&CenterDot;</mo><msup><mrow><mo>[</mo><msub><mi>S</mi><mrow><mn>1</mn><mi>n</mi></mrow></msub><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>S</mi><mi>Kn</mi></msub><mo>]</mo></mrow><mi>T</mi></msup><mo>+</mo><msub><mi>t</mi><mi>f</mi></msub><mo>,</mo><mi>f</mi><mo>=</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>F</mi><mo>,</mo><mi>n</mi><mo>=</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>N</mi></mrow></math>]]></maths>其中F和N分别是帧数和特征点的数目,e<sub>f</sub>是非零的弱透视投影缩放因子,S<sub>1n</sub>...S<sub>Kn</sub>是K个形状基,C<sub>f1</sub>...c<sub>fK</sub>是形状基的组合权重,t<sub>f</sub>是平移,R<sub>f</sub>表示第f个相机投影矩阵的前两行,P<sub>fn</sub>表示第f帧中的第n个特征点,则若将每帧中每个特征点的x、y坐标看作一个2×1矩阵,所有跟踪数据形成一个2F×K的矩阵P,并且P=M·S+T,其中M是广义相机投影矩阵,S是K个形状基,T是平移矩阵:<maths num="0002"><![CDATA[<math><mrow><mi>M</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msub><mi>e</mi><mn>1</mn></msub><msub><mi>c</mi><mn>11</mn></msub><msub><mi>R</mi><mn>1</mn></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msub><mi>e</mi><mn>1</mn></msub><msub><mi>c</mi><mrow><mn>1</mn><mi>K</mi></mrow></msub><msub><mi>R</mi><mn>1</mn></msub></mtd></mtr><mtr><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd></mtr><mtr><mtd><msub><mi>e</mi><mi>F</mi></msub><msub><mi>c</mi><mrow><mi>F</mi><mn>1</mn></mrow></msub><msub><mi>R</mi><mi>F</mi></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msub><mi>e</mi><mi>F</mi></msub><msub><mi>c</mi><mi>FK</mi></msub><msub><mi>R</mi><mi>F</mi></msub></mtd></mtr></mtable></mfenced><mo>,</mo></mrow></math>]]></maths><maths num="0003"><![CDATA[<math><mrow><mi>S</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msub><mi>S</mi><mn>11</mn></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msub><mi>S</mi><mrow><mn>1</mn><mi>N</mi></mrow></msub></mtd></mtr><mtr><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd></mtr><mtr><mtd><msub><mi>S</mi><mrow><mi>K</mi><mn>1</mn></mrow></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msub><mi>S</mi><mi>KN</mi></msub></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>减去平移矩阵得到规范形式P=M·S,对R进行奇异值分解,得到P的阶数为3K的近似值<maths num="0004"><![CDATA[<math><mrow><mover><mi>P</mi><mo>~</mo></mover><mo>=</mo><mover><mi>M</mi><mo>~</mo></mover><mo>&CenterDot;</mo><mover><mi>S</mi><mo>~</mo></mover><mo>,</mo></mrow></math>]]></maths>K由rank(P)/3确定,这种分解不是唯一的,给定任意可逆3K×3K矩阵A,<maths num="0005"><![CDATA[<math><mrow><mover><mi>P</mi><mo>~</mo></mover><mo>=</mo><mover><mi>M</mi><mo>~</mo></mover><mi>A</mi><mo>&CenterDot;</mo><msup><mi>A</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mover><mi>S</mi><mo>~</mo></mover></mrow></math>]]></maths>均成立;因此当A为已知时,广义相机投影矩阵和形状基即可表示为<maths num="0006"><![CDATA[<math><mrow><mi>M</mi><mo>=</mo><mover><mi>M</mi><mo>~</mo></mover><mo>&CenterDot;</mo><mi>A</mi><mo>,</mo></mrow></math>]]></maths><maths num="0007"><![CDATA[<math><mrow><mi>S</mi><mo>=</mo><msup><mi>A</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mo>&CenterDot;</mo><mover><mi>S</mi><mo>~</mo></mover><mo>,</mo></mrow></math>]]></maths>为计算A,首先利用投影矩阵的正交特性作为约束条件,令Q=A·A<sup>T</sup>,则<maths num="0008"><![CDATA[<math><mrow><msup><mi>MM</mi><mi>T</mi></msup><mo>=</mo><mover><mi>M</mi><mo>~</mo></mover><mi>Q</mi><msup><mover><mi>M</mi><mo>~</mo></mover><mi>T</mi></msup><mo>,</mo></mrow></math>]]></maths>再令<img file="C2006100533930002C9.GIF" wi="159" he="59" />表示<img file="C2006100533930002C10.GIF" wi="44" he="40" />的第i个2行子矩阵,根据投影矩阵的正交特性可得如下两个正交性约束条件:<maths num="0009"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>Q</mi><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><mo>=</mo><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi></mrow></msub><mi>Q</mi><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi></mrow></msub><mi>T</mi></msup><mo>,</mo></mrow></math>]]></maths><maths num="0010"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>Q</mi><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>0</mn><mo>;</mo></mrow></math>]]></maths>接下来使用形状基约束条件消除正交约束条件的二义性,将A的第k个三列子矩阵表示为a<sub>k</sub>,对于每个Q<sub>k</sub>=a<sub>k</sub>a<sub>k</sub><sup>T</sup>k=1,...,K,根据形状基间的独立关系设定另外一组形状基约束:<maths num="0011"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><msub><mi>Q</mi><mi>k</mi></msub><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>j</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>1</mn><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>&omega;</mi><mn>1</mn></msub></mrow></math>]]></maths><maths num="0012"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><msub><mi>Q</mi><mi>k</mi></msub><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>j</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>0</mn><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>&omega;</mi><mn>2</mn></msub></mrow></math>]]></maths><maths num="0013"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi></mrow></msub><msub><mi>Q</mi><mi>k</mi></msub><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>j</mi></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>1</mn><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>&omega;</mi><mn>1</mn></msub></mrow></math>]]></maths><maths num="0014"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi></mrow></msub><msub><mi>Q</mi><mi>k</mi></msub><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>j</mi></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>0</mn><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>&omega;</mi><mn>2</mn></msub></mrow></math>]]></maths><maths num="0015"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub><msub><mi>Q</mi><mi>k</mi></msub><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>j</mi></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>0</mn><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>&omega;</mi><mn>1</mn></msub><mo>&cup;</mo><msub><mi>&omega;</mi><mn>2</mn></msub></mrow></math>]]></maths><maths num="0016"><![CDATA[<math><mrow><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>i</mi></mrow></msub><msub><mi>Q</mi><mi>k</mi></msub><msup><msub><mover><mi>M</mi><mo>~</mo></mover><mrow><mn>2</mn><mo>&CenterDot;</mo><mi>j</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><mo>=</mo><mn>0</mn><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>&omega;</mi><mn>1</mn></msub><mo>&cup;</mo><msub><mi>&omega;</mi><mn>2</mn></msub></mrow></math>]]></maths>ω<sub>1</sub>={(i,j)|i=j=k}       ω<sub>2</sub>={(i,j)|i=1,...,K,j=1,...,F,i≠k}结合这两类约束条件正确求解Q,再经过奇异值分解得到A,M由<img file="C2006100533930003C7.GIF" wi="102" he="48" />得到,缩放因子e<sub>1</sub>,...,e<sub>F</sub>可看作是常数,因此广义相机投影矩阵可表示为<maths num="0017"><![CDATA[<math><mrow><mi>M</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msup><msub><mi>c</mi><mn>11</mn></msub><mn>1</mn></msup><msub><mi>R</mi><mn>1</mn></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mrow><msup><msub><mi>c</mi><mrow><mn>1</mn><mi>K</mi></mrow></msub><mn>1</mn></msup><msub><mi>R</mi><mn>1</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd></mtr><mtr><mtd><msup><msub><mi>c</mi><mrow><mi>F</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>R</mi><mi>F</mi></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msup><msub><mi>c</mi><mi>FK</mi></msub><mn>1</mn></msup><msub><mi>R</mi><mi>F</mi></msub></mtd></mtr></mtable></mfenced><mo>;</mo></mrow></math>]]></maths>由于<maths num="0018"><![CDATA[<math><mrow><msub><mi>R</mi><mi>f</mi></msub><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msub><mi>r</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>r</mi><mrow><mi>f</mi><mn>2</mn></mrow></msub></mtd><mtd><msub><mi>r</mi><mrow><mi>f</mi><mn>3</mn></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>r</mi><mrow><mi>f</mi><mn>4</mn></mrow></msub></mtd><mtd><msub><mi>r</mi><mrow><mi>f</mi><mn>5</mn></mrow></msub></mtd><mtd><msub><mi>r</mi><mrow><mi>f</mi><mn>6</mn></mrow></msub></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>f=1,...,F是相机旋转矩阵的前两行,将M中表示第f帧的两行展开得到<maths num="0019"><![CDATA[<math><mrow><msub><mi>m</mi><mi>f</mi></msub><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>f</mi><mn>2</mn></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>3</mn></mrow></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>2</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>3</mn></mrow></msub></mtd></mtr><mtr><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>4</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>5</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>6</mn></mrow></msub></mtd><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>4</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>5</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>6</mn></mrow></msub></mtd></mtr></mtable></mfenced><mo>,</mo></mrow></math>]]></maths>调整元素位置得到新矩阵<maths num="0020"><![CDATA[<math><mrow><msup><msub><mi>m</mi><mi>f</mi></msub><mn>1</mn></msup><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>2</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>3</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>4</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>5</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>6</mn></mrow></msub></mtd></mtr><mtr><mtd><mo>.</mo><mo>.</mo><mo>.</mo></mtd><mtd></mtd><mtd></mtd><mtd></mtd><mtd></mtd><mtd></mtd></mtr><mtr><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>1</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>2</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>3</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>4</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>5</mn></mrow></msub></mtd><mtd><msup><msub><mi>c</mi><mi>fK</mi></msub><mn>1</mn></msup><msub><mi>r</mi><mrow><mi>f</mi><mn>6</mn></mrow></msub></mtd></mtr></mtable></mfenced><mo>,</mo></mrow></math>]]></maths>此矩阵是列向量(c<sub>f1</sub><sup>1</sup>…c<sub>fK</sub><sup>1</sup>)<sup>T</sup>与行向量(r<sub>f1</sub> r<sub>f2</sub> r<sub>f3</sub> r<sub>f4</sub> r<sub>f5</sub> r<sub>f6</sub>)的乘积;由此,每帧的相机投影矩阵和形状基组合权重可由m<sub>f</sub><sup>1</sup>经奇异值分解得到,欧氏空间中的三维形状也由此得出,此形状就是特征点三维坐标,计算出每帧特征点在欧氏空间中的三维坐标,就得到了一组三维运动数据。
地址 310027浙江省杭州市浙大路38号