发明名称 一种多维加权的3D动态手势识别方法
摘要 本发明公开了一种多维加权的3D动态手势识别方法,在训练阶段,首先对标准手势进行分割,获得标准手势的特征向量,然后进行坐标系转换、归一化处理、平滑处理、降采样以及差分处理,得到一个标准手势的特征向量集以及其中各关节点的权值和元素各维的权值,这样构建出标准手势样本库。在识别阶段,采用多维加权动态时间规整算法计算待识别手势的特征向量集<img file="DDA0000545437280000011.GIF" wi="78" he="79" />分别与标准手势样本库中的各个标准手势的特征向量集<img file="DDA0000545437280000012.GIF" wi="81" he="80" />c=1,2,…,C的动态规整距离,在计算代价矩阵C第(m,n)个元素s(m,n)时,考虑关节点的权值以及元素中各维的权值,去掉了对手势识别无贡献的关节点和坐标维数,有效去掉了关节抖动、人体误动作对手势识别造成的干扰,提高了算法的抗干扰能力,最终提高的手势识别的正确率和实时性。
申请公布号 CN104123007B 申请公布日期 2017.01.11
申请号 CN201410366945.5 申请日期 2014.07.29
申请人 电子科技大学 发明人 康波;李云霞;孙琴;蔡会祥
分类号 G06F3/01(2006.01)I 主分类号 G06F3/01(2006.01)I
代理机构 成都行之专利代理事务所(普通合伙) 51220 代理人 温利平
主权项 一种多维加权的3D动态手势识别方法,其特征在于,包括以下步骤:(1)、训练阶段1.1)、手势分割从图像输入设备提供的连续人体动作视频中获取标准手势的关节点数据,并跟踪左右手、左右手腕、左右手肘这6个关节点的位置,当检测到手处于伸出状态即手的Z坐标值在跟踪的六个关节点的Z坐标值中最小时,并且手的移动速度在接下来的连续的若干帧图像中由0增加到某一阈值,认为手势开始;当该手部的移动速度在连续的若干帧图像中逐渐减小到某一阈值,则认为手势结束;1.2)、获取手势特征向量手势分割结束后,根据跟踪的6个关节点的连续坐标信息,得到描述该标准手势的运动轨迹;对于每一帧图像,6个关节点的位置信息:<maths num="0001"><math><![CDATA[<mrow><msubsup><mi>f</mi><mi>t</mi><mi>c</mi></msubsup><mo>=</mo><mo>{</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>1</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>1</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>z</mi><mn>1</mn><mi>t</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>2</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>2</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>z</mi><mn>2</mn><mi>t</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>3</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>3</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>z</mi><mn>3</mn><mi>t</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>4</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>4</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>z</mi><mn>4</mn><mi>t</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>5</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>5</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>z</mi><mn>5</mn><mi>t</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mn>6</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>y</mi><mn>6</mn><mi>t</mi></msubsup><mo>,</mo><msubsup><mi>z</mi><mn>6</mn><mi>t</mi></msubsup><mo>)</mo></mrow><mo>}</mo></mrow>]]></math><img file="FDA0001068695220000011.GIF" wi="1454" he="71" /></maths>其中,t为图像帧序号,<img file="FDA0001068695220000012.GIF" wi="365" he="63" />为第t帧图像中第i个关节点的三维坐标,这些关节点分别为右手、右手腕、右手肘、左手腕、左手肘、左手;<img file="FDA0001068695220000013.GIF" wi="53" he="59" />看成是一个包含6个元素的特征向量,而其中的每个元素是三维的,c表示这个特征向量所属的标准手势类别;一个标准手势就是上述特征向量的集合,一个标准手势需要N帧的时间完成,则它对应的特征向量集为:<img file="FDA0001068695220000014.GIF" wi="493" he="55" />N为标准手势持续的帧数;1.3)、坐标系转换以肩部中心这一关节点为基准,把每一帧获取的关节点的坐标系转换为以肩部中心为原点的用户坐标系:肩部中心的坐标为(C<sub>x</sub>,C<sub>y</sub>,C<sub>z</sub>),第t帧图像中关节点i的坐标为<img file="FDA0001068695220000015.GIF" wi="227" he="63" />i∈[1,6]转换完之后的坐标为<img file="FDA0001068695220000016.GIF" wi="259" he="63" />则<maths num="0002"><math><![CDATA[<mrow><msubsup><mi>x</mi><mi>i</mi><mrow><mo>&prime;</mo><mi>t</mi></mrow></msubsup><mo>=</mo><msubsup><mi>x</mi><mi>i</mi><mi>t</mi></msubsup><mo>-</mo><msub><mi>C</mi><mi>x</mi></msub><mo>,</mo><mo>,</mo></mrow>]]></math><img file="FDA0001068695220000017.GIF" wi="278" he="87" /></maths><maths num="0003"><math><![CDATA[<mrow><msubsup><mi>y</mi><mi>i</mi><mrow><mo>&prime;</mo><mi>t</mi></mrow></msubsup><mo>=</mo><msubsup><mi>y</mi><mi>i</mi><mi>t</mi></msubsup><mo>-</mo><msub><mi>C</mi><mi>y</mi></msub><mo>,</mo></mrow>]]></math><img file="FDA0001068695220000018.GIF" wi="276" he="70" /></maths><maths num="0004"><math><![CDATA[<mrow><msubsup><mi>z</mi><mi>i</mi><mrow><mo>&prime;</mo><mi>t</mi></mrow></msubsup><mo>=</mo><msubsup><mi>z</mi><mi>i</mi><mi>t</mi></msubsup><mo>-</mo><msub><mi>C</mi><mi>z</mi></msub><mo>;</mo></mrow>]]></math><img file="FDA0001068695220000019.GIF" wi="262" he="63" /></maths>经过处理之后,关节点所参考的坐标系就变成了以肩部中心这个关节点为原点的用户坐标系;这样对应的特征向量具有平移不变性,不受手离图像输入设备的距离以及手势起始位置的影响;1.4)、归一化处理记特征向量集合F<sub>c</sub>中,x,y,z三个坐标分量的最大值、最小值分别为X<sub>Max</sub>,X<sub>Min</sub>,Y<sub>Max</sub>,Y<sub>Min</sub>,Z<sub>Max</sub>,Z<sub>Min</sub>,对每一维坐标采用线性函数进行如下处理:<maths num="0005"><math><![CDATA[<mrow><msubsup><mover><mi>x</mi><mo>^</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mi>x</mi><mi>i</mi><mrow><mo>&prime;</mo><mi>t</mi></mrow></msubsup><mo>-</mo><msub><mi>X</mi><mrow><mi>M</mi><mi>i</mi><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>/</mo><mrow><mo>(</mo><msub><mi>X</mi><mrow><mi>M</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>X</mi><mrow><mi>M</mi><mi>i</mi><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0001068695220000021.GIF" wi="638" he="55" /></maths><maths num="0006"><math><![CDATA[<mrow><msubsup><mover><mi>y</mi><mo>^</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mi>y</mi><mi>i</mi><mrow><mo>&prime;</mo><mi>t</mi></mrow></msubsup><mo>-</mo><msub><mi>Y</mi><mrow><mi>M</mi><mi>i</mi><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>/</mo><mrow><mo>(</mo><msub><mi>Y</mi><mrow><mi>M</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>Y</mi><mrow><mi>M</mi><mi>i</mi><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0001068695220000022.GIF" wi="590" he="63" /></maths><maths num="0007"><math><![CDATA[<mrow><msubsup><mover><mi>z</mi><mo>^</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mi>z</mi><mi>i</mi><mrow><mo>&prime;</mo><mi>t</mi></mrow></msubsup><mo>-</mo><msub><mi>Z</mi><mrow><mi>M</mi><mi>i</mi><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>/</mo><mrow><mo>(</mo><msub><mi>Z</mi><mrow><mi>M</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>Z</mi><mrow><mi>M</mi><mi>i</mi><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0001068695220000023.GIF" wi="606" he="63" /></maths>则:<img file="FDA0001068695220000024.GIF" wi="1478" he="79" />第c类标准手势经过预处理之后的特征向量集为:<maths num="0008"><math><![CDATA[<mrow><msub><mover><mi>F</mi><mo>^</mo></mover><mi>c</mi></msub><mo>=</mo><mo>{</mo><msubsup><mover><mi>f</mi><mo>^</mo></mover><mn>1</mn><mi>c</mi></msubsup><mo>,</mo><msubsup><mover><mi>f</mi><mo>^</mo></mover><mn>2</mn><mi>c</mi></msubsup><mo>,</mo><msubsup><mover><mi>f</mi><mo>^</mo></mover><mn>3</mn><mi>c</mi></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mover><mi>f</mi><mo>^</mo></mover><mi>N</mi><mi>c</mi></msubsup><mo>}</mo></mrow>]]></math><img file="FDA0001068695220000025.GIF" wi="462" he="71" /></maths>经过归一化之后的特征向量具有尺度不变性;1.5)、对特征向量集<img file="FDA0001068695220000026.GIF" wi="48" he="70" />进行平滑处理考虑到本方法时间序列相邻帧变化缓慢的特点,最终选择移动平均滤波器对关节点的每一维数据进行平滑滤波;移动平均滤波基于统计规律,将连续的图像帧看成一个长度固定为N的队列,然后对这个队列进行算术运算,并将其结果作为本次滤波的结果;平滑处理的步骤为:将特征向量集<img file="FDA0001068695220000027.GIF" wi="48" he="77" />中,第一个关节点的第一维坐标按帧进行平滑滤波,滤波的窗口宽度为5,即:<maths num="0009"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mn>1</mn></msubsup><mo>=</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>1</mn></msubsup></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mn>2</mn></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>1</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>2</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>3</mn></msubsup><mo>)</mo></mrow><mo>/</mo><mn>3</mn></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mn>3</mn></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>1</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>2</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>3</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>4</mi></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>5</mi></msubsup><mo>)</mo></mrow><mo>/</mo><mi>5</mi></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mi>4</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>2</mi></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>3</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>4</mi></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>5</mi></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>6</mn></msubsup><mo>)</mo></mrow><mo>/</mo><mi>5</mi></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mi>4</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>3</mn></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>4</mi></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>5</mi></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mn>6</mn></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>7</mi></msubsup><mo>)</mo></mrow><mo>/</mo><mi>5</mi></mrow></mtd></mtr><mtr><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>2</mn></mrow></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>4</mn></mrow></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>3</mn></mrow></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>2</mn></mrow></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>N</mi></msubsup><mo>)</mo></mrow><mo>/</mo><mi>5</mi></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>2</mn></mrow></msubsup><mo>+</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mi>+</mi><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>N</mi></msubsup><mo>)</mo></mrow><mo>/</mo><mn>3</mn></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>1</mn><mi>N</mi></msubsup><mo>=</mo><msubsup><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn><mi>N</mi></msubsup></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0001068695220000028.GIF" wi="822" he="718" /></maths>每一个关节点的每一维坐标都按上述方法进行平滑处理,经平滑处理之后,关节点的抖动被很好的处理了;1.6)、降采样为了降低手势特征向量集<img file="FDA0001068695220000031.GIF" wi="50" he="70" />的元素数,对特征向量集<img file="FDA0001068695220000032.GIF" wi="50" he="70" />进行二元采样,每隔一个元素提取一个元素,从而得到一个降采样特征向量集<img file="FDA0001068695220000033.GIF" wi="75" he="70" />1.7)、差分处理对降采样之后的特征向量集<img file="FDA00010686952200000318.GIF" wi="49" he="66" />的每一个特性向量的每一维进行一阶差分处理,用一阶差分的结果替换坐标值来描述手势随时间变化的位置特征趋势,差分如下:<maths num="0010"><math><![CDATA[<mrow><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>=</mo><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mi>i</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>-</mo><msubsup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mi>i</mi><mi>t</mi></msubsup></mrow>]]></math><img file="FDA0001068695220000034.GIF" wi="253" he="67" /></maths><maths num="0011"><math><![CDATA[<mrow><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>=</mo><msubsup><mover><mi>y</mi><mo>&OverBar;</mo></mover><mi>i</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>-</mo><msubsup><mover><mi>y</mi><mo>&OverBar;</mo></mover><mi>i</mi><mi>t</mi></msubsup></mrow>]]></math><img file="FDA0001068695220000035.GIF" wi="261" he="70" /></maths><maths num="0012"><math><![CDATA[<mrow><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>=</mo><msubsup><mover><mi>z</mi><mo>&OverBar;</mo></mover><mi>i</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>-</mo><msubsup><mover><mi>z</mi><mo>&OverBar;</mo></mover><mi>i</mi><mi>t</mi></msubsup></mrow>]]></math><img file="FDA0001068695220000036.GIF" wi="253" he="63" /></maths>式中,<img file="FDA0001068695220000037.GIF" wi="255" he="63" />分别表示经过前面七步处理之后的特征向量集第t帧<img file="FDA0001068695220000038.GIF" wi="58" he="69" />的第i个关节点的x,y,z坐标;第c类标准手势经过预处理之后的特征向量集为:<maths num="0013"><math><![CDATA[<mrow><msub><mover><mi>F</mi><mo>&CenterDot;</mo></mover><mi>c</mi></msub><mo>=</mo><mo>{</mo><msubsup><mover><mi>f</mi><mo>&CenterDot;</mo></mover><mn>1</mn><mi>c</mi></msubsup><mo>,</mo><msubsup><mover><mi>f</mi><mo>&CenterDot;</mo></mover><mn>2</mn><mi>c</mi></msubsup><mo>,</mo><msubsup><mover><mi>f</mi><mo>&CenterDot;</mo></mover><mn>3</mn><mi>c</mi></msubsup><mo>,</mo><mo>...</mo><mo>,</mo><msubsup><mover><mi>f</mi><mo>&CenterDot;</mo></mover><mi>M</mi><mi>c</mi></msubsup><mo>}</mo><mo>;</mo></mrow>]]></math><img file="FDA0001068695220000039.GIF" wi="494" he="67" /></maths>1.8)、计算特征向量集<img file="FDA00010686952200000310.GIF" wi="47" he="69" />中各关节的权值选择逻辑斯蒂函数来为每个关节点计算它在标准手势中的权值:<maths num="0014"><math><![CDATA[<mrow><msubsup><mi>w</mi><mi>i</mi><mi>c</mi></msubsup><mo>=</mo><mfrac><mn>2</mn><mrow><mn>1</mn><mo>+</mo><msup><mi>e</mi><mrow><mo>-</mo><mrow><mo>(</mo><msubsup><mi>D</mi><mi>i</mi><mi>c</mi></msubsup><mo>-</mo><msubsup><mi>D</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow><mi>c</mi></msubsup><mo>)</mo></mrow><mo>/</mo><mi>h</mi></mrow></msup></mrow></mfrac><mo>,</mo><mi>i</mi><mo>&Element;</mo><mo>&lsqb;</mo><mn>1</mn><mo>,</mo><mn>6</mn><mo>&rsqb;</mo><mo>;</mo></mrow>]]></math><img file="FDA00010686952200000311.GIF" wi="806" he="142" /></maths>其中,<img file="FDA00010686952200000312.GIF" wi="70" he="63" />为关节点i的位移:<maths num="0015"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msubsup><mi>D</mi><mi>i</mi><mi>c</mi></msubsup><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>2</mn></mrow><mi>M</mi></munderover><msup><mi>S</mi><mi>i</mi></msup><mrow><mo>(</mo><msubsup><mi>f</mi><mi>t</mi><mi>c</mi></msubsup><mo>,</mo><msubsup><mi>f</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mi>c</mi></msubsup><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msup><mi>S</mi><mi>i</mi></msup><mrow><mo>(</mo><msubsup><mi>f</mi><mi>t</mi><mi>c</mi></msubsup><mo>,</mo><msubsup><mi>f</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mi>c</mi></msubsup><mo>)</mo></mrow><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>-</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>-</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mi>t</mi></msubsup><mo>-</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>i</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt></mrow></mtd></mtr></mtable><mo>,</mo></mrow>]]></math><img file="FDA00010686952200000313.GIF" wi="1190" he="219" /></maths><img file="FDA00010686952200000314.GIF" wi="126" he="86" />为关节点位移<img file="FDA00010686952200000315.GIF" wi="99" he="70" />i∈[1,6]中的最大值,h为单位距离,根据实际情况确定;1.9)、计算特征向量集<img file="FDA00010686952200000316.GIF" wi="47" he="70" />中元素各维的权值选取特征向量集<img file="FDA00010686952200000317.GIF" wi="48" he="70" />中权值最大的三个关节点α,β,γ各帧对应的三维坐标组成一个新的特征向量集:<maths num="0016"><math><![CDATA[<mrow><msub><mi>T</mi><mi>c</mi></msub><mo>=</mo><mo>{</mo><mo>{</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mn>1</mn></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&beta;</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>&beta;</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mi>z</mi><mi>&beta;</mi><mn>1</mn></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mn>1</mn></msubsup><mo>,</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mn>1</mn></msubsup><mo>)</mo></mrow><mo>}</mo><mo>,</mo><mo>...</mo><mo>{</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mi>M</mi></msubsup><mo>,</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mi>M</mi></msubsup><mo>,</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mi>M</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&beta;</mi><mi>M</mi></msubsup><mo>,</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>&beta;</mi><mi>M</mi></msubsup><mo>,</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>&beta;</mi><mi>M</mi></msubsup><mo>)</mo></mrow><mo>,</mo><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mi>M</mi></msubsup><mo>,</mo><msubsup><mover><mi>y</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mi>M</mi></msubsup><mo>,</mo><msubsup><mover><mi>z</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mi>M</mi></msubsup><mo>)</mo></mrow><mo>}</mo><mo>}</mo><mo>;</mo></mrow>]]></math><img file="FDA0001068695220000041.GIF" wi="1669" he="71" /></maths>分别计算特征向量集合T<sub>c</sub>里每个关节点对应的x,y,z三维坐标的方差,其中,关节点α,β,γ的x维坐标的方差为:<maths num="0017"><math><![CDATA[<mrow><msubsup><mi>D</mi><mi>&alpha;</mi><mi>c</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><msqrt><mrow><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msup><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&alpha;</mi><mi>t</mi></msubsup><mo>-</mo><msub><mover><mi>X</mi><mo>&OverBar;</mo></mover><mi>&alpha;</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt></mrow>]]></math><img file="FDA0001068695220000042.GIF" wi="550" he="146" /></maths><maths num="0018"><math><![CDATA[<mrow><msubsup><mi>D</mi><mi>&beta;</mi><mi>c</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><msqrt><mrow><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msup><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&beta;</mi><mi>t</mi></msubsup><mo>-</mo><msub><mover><mi>X</mi><mo>&OverBar;</mo></mover><mi>&beta;</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt></mrow>]]></math><img file="FDA0001068695220000043.GIF" wi="558" he="151" /></maths><maths num="0019"><math><![CDATA[<mrow><msubsup><mi>D</mi><mi>&gamma;</mi><mi>c</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>=</mo><msqrt><mrow><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msup><mrow><mo>(</mo><msubsup><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>&gamma;</mi><mi>t</mi></msubsup><mo>-</mo><msub><mover><mi>X</mi><mo>&OverBar;</mo></mover><mi>&gamma;</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt></mrow>]]></math><img file="FDA0001068695220000044.GIF" wi="549" he="150" /></maths><img file="FDA0001068695220000045.GIF" wi="174" he="71" />表示关节点α,β,γ在第t帧坐标的x维数据,<img file="FDA0001068695220000046.GIF" wi="226" he="71" />表示特征向量集合T<sub>c</sub>中关节点α,β,γ各自对应的所有x维坐标的平均值;当<img file="FDA0001068695220000047.GIF" wi="403" he="63" />均小于阈值时,表示在标准手势中x维坐标是次要的,权值<img file="FDA0001068695220000048.GIF" wi="51" he="55" />为0;当<img file="FDA0001068695220000049.GIF" wi="398" he="62" />中有大于阈值的情况时,表示在标准手势中x维坐标是主要的,权值<img file="FDA00010686952200000410.GIF" wi="56" he="62" />为1;对于y、z维坐标,采用同样的方法,得到其权值<img file="FDA00010686952200000411.GIF" wi="203" he="62" />1.10)、构建标准手势样本库按照步骤1.1)~1.9)的方法,构造每个标准手势的特征向量集以及其中各关节点的权值、元素各维坐标的权值,生成标准手势样本库;(2)、识别阶段2.1)、采用步骤1.1)~1.7)的方法,从待识别视频中获取待识别手势的特征向量集<img file="FDA00010686952200000412.GIF" wi="107" he="70" />2.2)、采用多维加权动态时间规整(MDW‑DTW)算法,计算出待识别手势的特征向量集<img file="FDA00010686952200000413.GIF" wi="75" he="71" />分别与标准手势样本库中的各个标准手势的特征向量集<img file="FDA00010686952200000414.GIF" wi="75" he="71" />c=1,2,…,C的动态规整距离(相似度),并进行比较,与待识别手势的特征向量集合动态规整距离<img file="FDA00010686952200000415.GIF" wi="298" he="64" />最短(相似度最高)的特征向量集<img file="FDA00010686952200000416.GIF" wi="51" he="68" />对应的标准手势类别即为待识别手势的类别,C标准手势类别总数;其中,多维加权动态时间规整算法中,代价矩阵C第(m,n)个元素s(m,n)的计算公式为:<maths num="0020"><math><![CDATA[<mrow><mi>s</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mn>6</mn></munderover><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mn>3</mn></munderover><msqrt><msup><mrow><mo>(</mo><mo>(</mo><msubsup><mover><mi>f</mi><mo>&CenterDot;</mo></mover><mi>m</mi><mrow><mi>t</mi><mi>e</mi><mi>s</mi><mi>t</mi></mrow></msubsup><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo><mo>-</mo><msubsup><mover><mi>f</mi><mo>&CenterDot;</mo></mover><mi>n</mi><mi>c</mi></msubsup><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo><mo>)</mo><mo>&times;</mo><msubsup><mi>w</mi><mi>i</mi><mi>c</mi></msubsup><mo>&times;</mo><msubsup><mover><mi>w</mi><mo>^</mo></mover><mi>j</mi><mi>c</mi></msubsup><mo>)</mo></mrow><mn>2</mn></msup></msqrt><mo>;</mo></mrow>]]></math><img file="FDA00010686952200000417.GIF" wi="1022" he="151" /></maths><img file="FDA0001068695220000051.GIF" wi="182" he="68" />为待识别手势特征向量集中第m帧图像中第i个关节点对应坐标的第j维坐标,<img file="FDA0001068695220000052.GIF" wi="158" he="71" />为标准手势样本库中标准手势c的特征向量集中第n帧图像中第i个关节点对应坐标的第j维坐标,j=1,2,3分别代表x,y,z;其中,动态规整距离<img file="FDA0001068695220000053.GIF" wi="299" he="63" />为:<maths num="0021"><math><![CDATA[<mrow><mi>D</mi><mi>T</mi><mi>W</mi><mrow><mo>(</mo><msub><mover><mi>F</mi><mo>&CenterDot;</mo></mover><mrow><mi>t</mi><mi>e</mi><mi>s</mi><mi>t</mi></mrow></msub><mo>,</mo><msub><mover><mi>F</mi><mo>&CenterDot;</mo></mover><mi>c</mi></msub><mo>)</mo></mrow><mo>=</mo><mi>m</mi><mi>i</mi><mi>n</mi><mo>{</mo><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>L</mi></munderover><mi>s</mi><mrow><mo>(</mo><msub><mi>m</mi><mi>k</mi></msub><mo>,</mo><msub><mi>n</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>}</mo><mo>;</mo></mrow>]]></math><img file="FDA0001068695220000054.GIF" wi="726" he="127" /></maths>其中,L为规整路径的长度,﹙m<sub>k</sub>,n<sub>k</sub>﹚为代价矩阵C中规整路径上的第k个元素坐标,分别代表待识别手势特征向量集中第m<sub>k</sub>帧,标准手势样本库中标准手势c的特征向量集中第n<sub>k</sub>帧。
地址 611731 四川省成都市高新区(西区)西源大道2006号