一种基于语音、表情与姿态的三模态情感识别方法与流程

文档序号:12551373阅读:来源:国知局

技术特征:

1.一种基于语音、表情与姿态的三模态情感识别方法,其特征在于,包括如下步骤:

步骤1,获取不同情感分类的语音、表情与姿态三种模态的图像,并将各个模态的图像与各自的情感类别标签一一对应,建立三模态情感数据库,将库中不同情感分类各个模态的图像分为训练样本和测试样本;

步骤2,分别对各个模态的训练样本和测试样本进行情感特征提取,然后进行降维处理,构建各个模态训练样本和测试样本的特征矩阵;并对训练样本、测试样本各个模态的特征矩阵分别进行归一化;

步骤3,将训练样本、测试样本各个模态归一化后的特征矩阵相互融合起来,得到训练样本、测试样本融合后的特征矩阵;

步骤4,利用训练样本融合后的特征矩阵识别测试样本融合后的特征矩阵中各测试样本的类别,得到各测试样本的分类结果。

2.根据权利要求1所述基于语音、表情与姿态的三模态情感识别方法,其特征在于,步骤1所述不同情感分类包括:悲伤、高兴、厌恶、恐惧、惊吓、中性。

3.根据权利要求1所述基于语音、表情与姿态的三模态情感识别方法,其特征在于,步骤2所述对训练样本、测试样本各个模态的特征矩阵分别进行归一化,具体步骤如下:

以语音特征矩阵为例,降维处理后的训练样本和测试样本的语音特征矩阵分别记为Vtr(d1行n列)和Vte(d1行m列),n、m分别为训练样本、测试样本的数目,d1为语音情感特征降维后的维数;

在所有n个训练样本的d1维特征向量中,求出每一维特征的最大值,即

<mrow> <msub> <mi>&lambda;</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> </msub> <mo>=</mo> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mi>p</mi> </munder> <mrow> <mo>(</mo> <msub> <mi>V</mi> <mrow> <mi>t</mi> <mi>r</mi> <mi>j</mi> <mo>,</mo> <mi>p</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>;</mo> <mi>p</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>n</mi> </mrow>

其中,λj,max表示Vtr中第j行的最大元素值,Vtrj,p表示Vtr的第j行第p列元素;

用λj,max对特征矩阵Vtr的第j行作归一化处理,即

<mrow> <msub> <mover> <mi>V</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>r</mi> <mi>j</mi> <mo>,</mo> <mi>p</mi> </mrow> </msub> <mo>=</mo> <mfrac> <msub> <mi>V</mi> <mrow> <mi>t</mi> <mi>r</mi> <mi>j</mi> <mo>,</mo> <mi>p</mi> </mrow> </msub> <msub> <mi>&lambda;</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>max</mi> </mrow> </msub> </mfrac> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>;</mo> <mi>p</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>n</mi> </mrow>

其中,表示归一化的特征矩阵Vtr的第j行第p列元素;

依据每一维特征的最大元素值,同样对测试样本的特征矩阵Vte的每一维特征作归一化处理,得到表示归一化的Vtej,q,Vtej,q表示Vte的第j行第q列元素;

对降维处理后的表情、姿态特征矩阵进行同样的处理,将归一化后的语音、表情和姿态对应的训练样本和测试样本的特征矩阵分别表示为

4.根据权利要求1所述基于语音、表情与姿态的三模态情感识别方法,其特征在于,所述步骤3的具体步骤如下:

31、求解如下最优化问题,得到三个映射变换ω123,使得经过映射后的特征矩阵中的类内相关性最大并且类间相关性最小;最优化问题为:

<mrow> <mi>arg</mi> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <msub> <mi>&omega;</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>&omega;</mi> <mn>2</mn> </msub> <mo>,</mo> <msub> <mi>&omega;</mi> <mn>3</mn> </msub> </mrow> </munder> <mi>&rho;</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mn>3</mn> <mo>&CenterDot;</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </mfrac> <munder> <munderover> <mo>&Sigma;</mo> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mn>3</mn> </munderover> <mrow> <mi>k</mi> <mo>&NotEqual;</mo> <mi>l</mi> </mrow> </munder> <msubsup> <mi>&omega;</mi> <mi>k</mi> <mi>T</mi> </msubsup> <msub> <msup> <mi>C</mi> <mo>~</mo> </msup> <mrow> <msub> <mi>X</mi> <mi>k</mi> </msub> <msub> <mi>X</mi> <mi>l</mi> </msub> </mrow> </msub> <msub> <mi>&omega;</mi> <mi>l</mi> </msub> </mrow>

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> </mrow> </mtd> <mtd> <mrow> <munderover> <mo>&Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mn>3</mn> </munderover> <msubsup> <mi>&omega;</mi> <mi>k</mi> <mi>T</mi> </msubsup> <msub> <mi>C</mi> <mrow> <msub> <mi>X</mi> <mi>k</mi> </msub> <msub> <mi>X</mi> <mi>l</mi> </msub> </mrow> </msub> <msub> <mi>&omega;</mi> <mi>k</mi> </msub> <mo>=</mo> <mn>3</mn> </mrow> </mtd> </mtr> </mtable> </mfenced>

其中,分别表示归一化后的语音、表情和姿态对应的训练样本的特征矩阵,Cw,Cb分别表示类内相关矩阵、类间相关矩阵,且

其中,I=[1,1,…,1]T,nrc表示第r个模态中第c类表情的样本个数,s表示类别总数;

上述最优化问题的解表示为:

<mrow> <mfrac> <mn>1</mn> <mrow> <mn>3</mn> <mo>-</mo> <mn>1</mn> </mrow> </mfrac> <mrow> <mo>(</mo> <mi>C</mi> <mo>-</mo> <mi>D</mi> <mo>)</mo> </mrow> <msup> <mi>&omega;</mi> <mo>~</mo> </msup> <mo>=</mo> <msup> <mi>&rho;D&omega;</mi> <mo>~</mo> </msup> </mrow>

其中,

ω=[ω1T2T3T]T,上式求解得到的ρ值中选择最大的ρ值ρmax所对应的ω

32、将训练样本和测试样本经过归一化后的各个模态特征矩阵的特征向量首尾串接起来,用Futr和Fute来表示,其中,

<mrow> <msub> <mi>Fu</mi> <mrow> <mi>t</mi> <mi>r</mi> </mrow> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mover> <mi>V</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>r</mi> </mrow> </msub> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mover> <mi>F</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>r</mi> </mrow> </msub> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mover> <mi>E</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>r</mi> </mrow> </msub> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>,</mo> <msub> <mi>Fu</mi> <mrow> <mi>t</mi> <mi>e</mi> </mrow> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <msub> <mover> <mi>V</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>e</mi> </mrow> </msub> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mover> <mi>F</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>e</mi> </mrow> </msub> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <msup> <msub> <mover> <mi>E</mi> <mo>&OverBar;</mo> </mover> <mrow> <mi>t</mi> <mi>e</mi> </mrow> </msub> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

33、将训练样本融合后的特征矩阵表示为Fitr=ω~TFutr,同样的,测试样本融合后的特征矩阵表示为Fite

5.根据权利要求1所述基于语音、表情与姿态的三模态情感识别方法,其特征在于,所述步骤4的具体步骤如下:

在得到训练样本融合后的特征矩阵Fitr后,利用训练样本的类别标签组成的列向量T=[T1,T2,…,Tn]T(Tp∈{1,2,…,s},p=1,2,…,n),求解下列优化问题:

<mrow> <mi>arg</mi> <munder> <mrow> <mi>m</mi> <mi>i</mi> <mi>n</mi> </mrow> <mrow> <msup> <mi>&psi;</mi> <mi>c</mi> </msup> <mo>,</mo> <msup> <mi>b</mi> <mi>c</mi> </msup> <mo>,</mo> <msup> <msub> <mi>&xi;</mi> <mi>p</mi> </msub> <mi>c</mi> </msup> </mrow> </munder> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <msup> <mrow> <mo>(</mo> <msup> <mi>&psi;</mi> <mi>c</mi> </msup> <mo>)</mo> </mrow> <mi>T</mi> </msup> <msup> <mi>&psi;</mi> <mi>c</mi> </msup> <mo>+</mo> <mi>&lambda;</mi> <munderover> <mo>&Sigma;</mo> <mrow> <mi>p</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msup> <msub> <mi>&xi;</mi> <mi>p</mi> </msub> <mi>c</mi> </msup> </mrow>

<mrow> <mi>s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <msup> <mrow> <mo>(</mo> <msup> <mi>&psi;</mi> <mi>c</mi> </msup> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mi>&phi;</mi> <mrow> <mo>(</mo> <msub> <mi>Fi</mi> <mrow> <mi>t</mi> <mi>r</mi> <mi>p</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <msup> <mi>b</mi> <mi>c</mi> </msup> <mo>&GreaterEqual;</mo> <mn>1</mn> <mo>-</mo> <msup> <msub> <mi>&xi;</mi> <mi>p</mi> </msub> <mi>c</mi> </msup> <mo>,</mo> <mrow> <mo>(</mo> <msub> <mi>T</mi> <mi>p</mi> </msub> <mo>=</mo> <mi>c</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <mrow> <mo>(</mo> <msup> <mi>&psi;</mi> <mi>c</mi> </msup> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mi>&phi;</mi> <mrow> <mo>(</mo> <msub> <mi>Fi</mi> <mrow> <mi>t</mi> <mi>r</mi> <mi>p</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>+</mo> <msup> <mi>b</mi> <mi>c</mi> </msup> <mo>&le;</mo> <mo>-</mo> <mn>1</mn> <mo>+</mo> <msup> <msub> <mi>&xi;</mi> <mi>p</mi> </msub> <mi>c</mi> </msup> <mo>,</mo> <mrow> <mo>(</mo> <msub> <mi>T</mi> <mi>p</mi> </msub> <mo>&NotEqual;</mo> <mi>c</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <msub> <mi>&xi;</mi> <mi>p</mi> </msub> <mi>c</mi> </msup> <mo>&GreaterEqual;</mo> <mn>0</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

其中,c∈{1,2,…,s},s表示类别总数,n为训练样本数目,为惩罚因子,Fitr p为Fitr的第p行的数据,φ(Fitr p)表示将Fitr p向高维空间进行映射,解上述优化问题,得到s个不同的参数ψ和b,判定测试样本类别的判决函数为:

<mrow> <mi>i</mi> <mi>d</mi> <mi>e</mi> <mi>n</mi> <mi>t</mi> <mi>i</mi> <mi>t</mi> <mi>y</mi> <mrow> <mo>(</mo> <msub> <mi>Fi</mi> <mrow> <mi>t</mi> <mi>e</mi> <mi>q</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mi>arg</mi> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mi>c</mi> </munder> <mrow> <mo>(</mo> <msup> <mrow> <mo>(</mo> <msup> <mi>&psi;</mi> <mi>c</mi> </msup> <mo>)</mo> </mrow> <mi>T</mi> </msup> <mi>&phi;</mi> <mo>(</mo> <mrow> <msub> <mi>Fi</mi> <mrow> <mi>t</mi> <mi>e</mi> <mi>q</mi> </mrow> </msub> </mrow> <mo>)</mo> <mo>+</mo> <msup> <mi>b</mi> <mi>c</mi> </msup> <mo>)</mo> </mrow> </mrow>

其中,Fiteq为Fite的第q行的数据,q∈{1,2,…,m},Fite为测试样本融合后的特征矩阵,φ(Fitep)表示将Fitep向高维空间进行映射,将判决函数的值最大的c所对应的类别作为测试样本的分类结果,用identity(Fiteq)表示。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1