CN102004549B - 一种适用于中文的自动唇语识别*** - Google Patents
一种适用于中文的自动唇语识别*** Download PDFInfo
- Publication number
- CN102004549B CN102004549B CN2010105582532A CN201010558253A CN102004549B CN 102004549 B CN102004549 B CN 102004549B CN 2010105582532 A CN2010105582532 A CN 2010105582532A CN 201010558253 A CN201010558253 A CN 201010558253A CN 102004549 B CN102004549 B CN 102004549B
- Authority
- CN
- China
- Prior art keywords
- lip
- chinese character
- matrix
- image sequence
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
一种自动唇语识别***,包括:头戴式摄像头、人机交互模块、唇部轮廓定位模块、几何向量获取模块、运动向量获取模块、特征矩阵构造模块、变换矩阵T获取模块、转换特征矩阵获取模块、存储器A、存储器B、典型相关判别分析模块。头戴式摄像头用来录制汉字发音图像序列,通过人机交互模块传输至唇部轮廓定位模块,其使用卷积虚拟静电场Snake模型从中检测及跟踪唇部轮廓;几何向量获取模块和运动向量获取模块从唇部轮廓中分别提取出几何和运动特征,并将它们联合起来作为典型相关判别分析模块的输入特征矩阵;典型相关判别分析模块计算特征矩阵间的相似度,处理后获取识别结果。本发明***与已有唇语识别***相比较,具有更高的识别准确率。
Description
技术领域
本发明涉及一种自动唇语识别***,特别涉及一种适用于中文的自动唇语识别***,属于自动唇语识别技术领域。
背景技术
唇语识别或唇读是人机交互(Human-Computer Interaction,HCI)中很引人注目的领域,它在自动语言识别(Automatic Speech Recognition,ASR)***中起着重要作用。人类语言感知是一个很自然的多模态过程。听力受损的人群会充分利用唇语的提示,即使正常人也可以利用视觉信息来增强对语言的理解,特别是在嘈杂环境中。利用视觉通道的信息会有效地提高现代自动语言识别***的性能和鲁棒性。
唇语识别任务一般包含三个主要步骤:①在发音图像序列中检测脸部及唇部区域;②从唇部区域提取适合分类的特征;③使用唇部区域特征进行唇语识别。
针对第①步,已有方法中主要使用图像处理的算法来定位脸部及唇部区域,此类方法容易受到光照、角度、旋转、遮挡等影响,会产生一定误差。
第②步中提到的唇语特征,在已有的文献中分为三大类:(1)低层的基于纹理的特征;(2)高层的基于轮廓的特征;(3)前二者的组合。这些特征中,基于轮廓的特征中的唇部几何特征(如唇的高度、宽度、角度)以及唇部运动特征被认为是最可用的视觉信息。关于唇形轮廓线分割的大量近期工作都使用了可变形模板(deformable model),其中一种有效方法就是使用Snake模型和改进的Snake模型,如梯度矢量流(Gradient Vector Flow,GVF)Snake模型、虚拟静电场(Virtual Electric Field,VEF)Snake模型、卷积虚拟静电场(Convolutional Virtual Electric Field,Convolutional VEF)Snake模型。相比较而言,卷积虚拟静电场Snake模型通过使用虚拟静电场(virtualelectric field,VEF)作为外力(external force),以及使用卷积(convolution)机制,该模型可以更快速准确地定位唇部轮廓。
在第③步使用唇部区域特征进行唇语识别中,广泛使用的分类方法是隐马尔科夫模型(hidden markov model(HMM))。隐马尔科夫模型在语言识别中很有用,因为它可以自然地对语言的时域特性进行建模。但是考虑到语言的本质属性,隐马尔科夫模型的分段式静态以及依赖性的假设(the piece-wisestationary and independence assumptions)是该模型的两个局限。
本发明中使用到的一项重要的已有技术是:基于卷积虚拟静电场Snake模型的唇形跟踪算法。
吕坤等人在文献《基于卷积虚拟静电场Snake模型的唇形跟踪算法》(第六届和谐人机环境联合学术会议,2010)中公开了基于卷积虚拟静电场Snake模型的唇形跟踪算法的详细设计。
本发明使用到的另外一项重要的已有技术是:典型相关判别分析(Discriminative Analysis of Canonical Correlation,DCC)方法。
T.-K.Kim等人在文献《Discriminative Learning and Recognition ofImage Set Classes Using Canonical Correlations》(IEEE Transactions OnPattern Analysis And Machine Intelligence,Vol.29,No.6(2007))中公开了典型相关判别分析方法的操作步骤。该方法中通过引入一个变换矩阵T来最大化同类数据集(within-class sets)的相似度(用典型相关系数和表示),最小化异类数据集(between-class sets)的相似度,以达到更好的识别效果。
近年来典型相关判别分析方法已被成功地应用于图像集匹配、人脸或物体识别等领域,因此将典型相关判别分析方法用于解决唇语识别问题从理论上讲是一个简单而有效的方法。但是,目前为止,还未查找到将典型相关判别分析方法用于自动唇语识别识别中的相关文献及实际应用。
发明内容
本发明的目的是为了克服已有技术存在的不足,提出了一种适用于中文的自动唇语识别***。
本发明的目的是通过下述技术方案实现的。
一种适用于中文的自动唇语识别***,包括:头戴式摄像头、人机交互模块、唇部轮廓定位模块、几何向量获取模块、运动向量获取模块、特征矩阵构造模块、变换矩阵T获取模块、转换特征矩阵获取模块、存储器A、存储器B、典型相关判别分析模块。
其连接关系为:头戴式摄像头的输出端与人机交互模块的输入端连接;人机交互模块的输出端与唇部轮廓定位模块的输入端连接;唇部轮廓定位模块的输出端与几何向量获取模块的输入端连接;几何向量获取模块的输出端与运动向量获取模块和特征矩阵构造模块的输入端连接;运动向量获取模块的输出端与特征矩阵构造模块的输入端连接;特征矩阵构造模块的输出端与变换矩阵T获取模块和转换特征矩阵获取模块的输入端连接;变换矩阵T获取模块与存储器A连接;转换特征矩阵获取模块与存储器A和存储器B连接;存储器A和存储器B还与典型相关判别分析模块的输入端连接;典型相关判别分析模块的输出端与人机交互模块的输入端连接。
各模块及设备的主要功能是:
头戴式摄像头的主要功能是:获取被试者发出的汉字发音图像序列;头戴式摄像头还获取被试者的唇部区域。
人机交互模块的主要功能是:①提供一个闭合轮廓曲线,以供被试者调整头戴式摄像头的位置,使得头戴式摄像头获取的被试者的唇部区域被包含在该闭合轮廓曲线中。②获取头戴式摄像头拍摄的汉字发音图像序列;③对典型相关判别分析模块的结果进行输出。
唇部轮廓定位模块的主要功能是:使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块。
所述唇形跟踪算法为基于卷积虚拟静电场外力的Snake模型,该模型使用卷积虚拟静电场(CONvolutional Virtual Electric Field,CONVEF)代替Snake模型中的外部能量;Snake模型通过曲线c(s)来定义,c(s)=(x(s),y(s)),其中,s是归一化弧长,s∈[0,1];它通过极小化如下的能量泛函来确定目标轮廓:
其中,E(c)为能量泛函,α和β为参数变量,分别用于调整c′(s)和c″(s)对曲线影响的大小;一阶导数项c′(s)刻画了曲线的连续性,是曲线的弹性能量,二阶导数项c″(s)刻画了曲线的光滑性,是曲线的刚性能量,这两项构成Snake模型的内部能量;Eext(c)是Snake模型的外部能量,它吸引Snake轮廓朝目标运动;
根据变分法原理,公式(1)中能量泛函E(c)的最小化可以通过求解公式(2)中的Euler方程ct(s,t)得到:
其中,s为归一化弧长,s∈[0,1];t为时间变量;α和β为参数变量,αc″(s,t)-βc″″(s,t)为Snake模型的内力;c″(s,t)是c(s,t)的二阶导数,c″″(s,t)是c(s,t)的四阶导数;为Snake模型的外力,用卷积虚拟静电场外力FCONVEF来替代得到基于卷积虚拟静电场外力的Snake模型;其中,卷积虚拟静电场外力FCONVEF如公式(3)所示:
其中,FCONVEF(x0,y0)表示图像中当前点(x0,y0)处的卷积虚拟静电场外力;x0和y0分别为图像中当前点的横坐标和纵坐标;x和y分别为图像中某一点的横坐标和纵坐标;h为常数因子,h越大,结果越平滑;幂指数η是可调的参数,η越大,电势随距离增大下降越快;q为图像中某一点(x,y)处的电荷强度;
当公式(2)的解收敛时,就得到了目标轮廓曲线,即唇部轮廓曲线。
几何向量获取模块的主要功能是:从唇部轮廓定位模块输出的汉字发音图像序列中的每帧图像的唇部轮廓曲线中获取唇部几何特征向量;并且为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量做归一化操作,得到归一化操作后的唇部几何特征向量,并输出至运动向量获取模块和特征矩阵构造模块。
运动向量获取模块的主要功能是:以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量,然后将唇部运动特征向量输出至特征矩阵构造模块。
特征矩阵构造模块的主要功能是:构造汉字发音图像序列的特征矩阵,然后将汉字发音图像序列的特征矩阵输出至变换矩阵T获取模块和转换特征矩阵获取模块。
变换矩阵T获取模块的主要功能是:针对训练数据的汉字发音图像序列的特征矩阵,采用典型相关判别分析方法进行处理,得到变换矩阵T,并将其存储到存储器A。
所述使用典型相关判别分析方法获取变换矩阵T的方法为:
设定需要处理的汉字发音图像序列的特征矩阵的数量为M,用Zk表示第k个汉字发音图像序列的特征矩阵,其中M、k为正整数,且1≤k≤M,则获取变换矩阵T的具体步骤为:
步骤1:针对每个汉字发音图像序列的特征矩阵Zk,求的特征向量矩阵,用Pk表示,Pk∈RN×d,R表示实数;N为正整数,表示一帧图像的特征向量的维度;Pk由的d个最大特征值所对应的特征向量组成.d为正整数;
步骤2:将变换矩阵T初始化为单位矩阵IN;
步骤3:针对每个特征向量矩阵Pk,计算TTPk,并对TTPk执行矩阵的QR分解:TTPk=ФkΔk,得到Фk和Δk;其中Фk∈RN×d,是规格化正交矩阵,R表示实数;Δk∈Rd×d,是可逆上三角矩阵;然后,对特征向量矩阵Pk进行规格化,得到矩阵P′k,使得TTP′k是规格化正交基矩阵;
步骤4:从步骤3中得到的矩阵P′k中任取2个,分别用P′k和P′a表示,1≤k≤M,1≤a≤M,且a≠k,对于每一对P′k和P′a,计算P′k TTTTP′a,并对P′k TTTTP′a执行矩阵的SVD分解:得到Qka、Λ、Qak,其中,Λ∈Rd×d,是奇异矩阵;Qka、Qak∈Rd×d,是正交旋转矩阵;
步骤5:用符号Ck表示第k个汉字发音图像序列的特征矩阵Zk对应的汉字,符号Bk和Wk表示2个集合,其中,集合集合Wk={k′|Zk′∈Ck,1≤k′≤M};然后通过公式(4)计算总类间散布矩阵,用符号Sb表示,用公式(5)计算总类内散布矩阵,用符号Sw表示;
步骤6:计算矩阵(Sw)-1Sb的特征向量t1,t2,...,tN,本轮迭代得到的变换矩阵T=[t1,t2,...,tN];重复以上步骤3到步骤6的迭代过程,直至变换矩阵T趋向于稳定值,取稳定后的变换矩阵T的前r列作为最终的变换矩阵T,即T=[t1,t2,...,tr]∈RN×r,r<N,且r为正整数;
通过上述步骤,即可得到变换矩阵T。
转换特征矩阵获取模块的主要功能是:使用变换矩阵T依次对训练数据的汉字发音图像序列的特征矩阵进行转换,得到转换特征矩阵,并将训练数据的汉字发音图像序列的转换特征矩阵存储到存储器A。
存储器A:存储变换矩阵T以及训练数据的汉字发音图像序列的转换特征矩阵。
存储器B:存储测试数据的汉字发音图像序列的转换特征矩阵。
典型相关判别分析模块:从存储器B中获取当前测试数据的转换特征矩阵,从存储器A中获取每个训练数据的转换特征矩阵,并计算两者的典型相关系数和,然后进一步对这些典型相关系数和进行处理,获得当前测试数据的识别结果,并将该识别结果输出到人机交互模块。
所述自动唇语识别***的工作过程分为***训练过程和***测试过程:
***训练过程的工作流程包括步骤1.1到步骤1.11,具体为:
步骤1.1:选取m个汉字作为训练数据,m≥5且m为正整数;
步骤1.2:人机交互模块显示一个闭合轮廓曲线。
步骤1.3:被试人将头戴式摄像头固定在头部;被试人调整头戴式摄像头的位置,使其直接拍摄被试脸的下半部分,拍摄图像发送至人机交互模块显示;被试人再次调整头戴式摄像头的位置,使得被试者的唇部区域被包含在步骤1.2中所述的闭合轮廓曲线中。
步骤1.4:被试者以每秒钟1个汉字的语速对步骤1.1中所述的m个汉字进行发音,同时头戴式摄像头的拍摄速度为每秒n帧,n≥25且n为正整数;因此每个汉字发音的视频流由n帧图像序列组成;将一个汉字的n帧图像序列称为一个汉字发音图像序列;头戴式摄像头将拍摄的汉字发音图像序列发送至人机交互模块。
步骤1.5:人机交互模块将步骤1.2中所述闭合轮廓曲线和步骤1.4中所述的头戴式摄像头拍摄的汉字发音图像序列发送至唇部轮廓定位模块。
步骤1.6:唇部轮廓定位模块使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块。其中对每个汉字发音图像序列中的第一个图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用人机交互模块提供的闭合轮廓曲线;对该汉字发音图像序列中的其它图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用该图像的前一图像的唇部定位结果曲线。
步骤1.7:几何向量获取模块依次从汉字发音图像序列中每帧图像的唇部轮廓曲线中获取唇部几何特征向量,用gi表示,i表示一个汉字发音图像序列中各帧图像的顺序号,1≤i≤n且i为正整数;并且为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量gi做归一化操作,得到归一化操作后的唇部几何特征向量,用gi′表示;然后将归一化操作后的唇部几何特征向量输出至运动向量获取模块和特征矩阵构造模块。所述得到归一化操作后的唇部几何特征向量的操作步骤包括步骤1.7.1到步骤1.7.5,具体为:
步骤1.7.1:计算唇部轮廓曲线水平方向的极值,得到左右嘴角的点坐标。
步骤1.7.2:将左右嘴角两点用一条直线相连,以左右嘴角点的中点为圆心,称该圆心为点O,按顺时针方向旋转该直线5次,每次旋转30度;每旋转一次将会得到直线与唇形曲线相交的两条线段,总共得到12条线段,从左嘴角开始按顺时针顺序分别用L1~L12表示这12条线段的长度,称该12条线段的长度L1~L12为辐射向量;将左右嘴角两点间的直线旋转90度时,与唇形曲线相交的上交点和下交点分别成为点A和点B。
步骤1.7.3:从左右嘴角两点中任选一点,称该点为点Q,将点Q分别与点A和点B用直线相连;∠AQO用θ1表示,∠BQO用θ2表示,可根据L1~L12,得到θ1和θ2的角度,进而得到θ1和θ2的余弦值;
步骤1.7.4:L1~L12以及θ1和θ2的余弦值就构成了一帧图像中的唇部几何特征向量;由于L1和L7是连接左右嘴角线段长度的一半,所以它们的值相等,因此在唇部几何特征向量中去掉L7,即一帧图像中的唇部几何特征向量gi=[L1,…,L6,L8,…,L12,cosθ1,cosθ2]t;
步骤1.7.5:为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量gi做归一化操作,得到归一化操作后的唇部几何特征向量,用gi′表示;gi′是一个13维横向量,gi′=[L1′,…,L6′,L8′,…,L12′,cosθ1,cosθ2];其中,j=1,2,…6,8,…,12,是一个汉字发音图像序列的第一帧图像中左右嘴角间距离。
步骤1.8:运动向量获取模块以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量(用pi表示),pi是一个13维横向量,pi=(gi′-gi-1′)/Δt,其中,g0′=g1′,Δt是两个连续帧的时间间隔;然后将唇部运动特征向量pi输出至特征矩阵构造模块;
步骤1.9:特征矩阵构造模块构造训练数据的汉字发音图像序列的特征矩阵(用Zf表示,其中f表示训练数据的汉字发音图像序列的顺序号,1≤f≤m且f为正整数),然后将训练数据的汉字发音图像序列的特征矩阵Zf分别输出至变换矩阵T获取模块和转换特征矩阵获取模块。所述构造训练数据的汉字发音图像序列的特征矩阵的操作步骤包括步骤1.9.1到步骤1.9.2,具体为:
步骤1.9.2:汉字发音图像序列的特征矩阵由该汉字发音图像序列中的每帧图像的联合特征向量vi组合而成,因此训练数据的汉字发音图像序列的特征矩阵Zf={v1,v2,...,vn}∈R26×n。
步骤1.10:变换矩阵T获取模块针对m个训练数据的汉字发音图像序列的特征矩阵Zf,采用典型相关判别分析方法进行处理,得到变换矩阵T∈R26×r,r<26,且r为正整数,R表示实数,并将变换矩阵T存储到存储器A。
步骤1.11:转换特征矩阵获取模块从存储器A中读取变换矩阵T,并使用变换矩阵T依次对训练数据的汉字发音图像序列的特征矩阵Zf进行转换,得到转换特征矩阵Zf′=TTZf,并将训练数据的汉字发音图像序列的转换特征箱阵Zf′存储到存储器A。
经过上述步骤的操作,即可完成对所述自动唇语识别***的训练。
***测试过程的工作流程为:
步骤2.1:从m个训练数据中选取m′个汉字作为测试数据,m′≤m且m′为正整数。
步骤2.2:人机交互模块显示一个闭合轮廓曲线。
步骤2.3:被试人将头戴式摄像头固定在头部;被试人调整头戴式摄像头的位置,使其直接拍摄被试脸的下半部分,拍摄图像发送至人机交互模块显示;被试人再次调整头戴式摄像头的位置,使得被试者的唇部区域被包含在步骤2.2中所述的闭合轮廓曲线中。
步骤2.4:被试者以每秒钟1个汉字的语速对步骤2.1中所述的m′个汉字进行发音,同时头戴式摄像头的拍摄速度为每秒n帧,n≥25且n为正整数;因此每个汉字发音的视频流由n帧图像序列组成;将一个汉字的n帧图像序列称为一个汉字发音图像序列;头戴式摄像头将拍摄的汉字发音图像序列发送至人机交互模块。
步骤2.5:人机交互模块将步骤2.2中所述闭合轮廓曲线和步骤2.4中所述的汉字发音图像序列发送至唇部轮廓定位模块。
步骤2.6:与***训练过程中的步骤1.6的操作相同。
步骤2.7:与***训练过程中的步骤1.7的操作相同。
步骤2.8:与***训练过程中的步骤1.8的操作相同。
步骤2.9:特征矩阵构造模块构造测试数据的汉字发音图像序列的特征矩阵(用Ze表示,其中e表示测试数据的汉字发音图像序列的顺序号,1≤e≤m′且e为正整数),然后将测试数据的汉字发音图像序列的特征矩阵Ze输出至转换特征矩阵获取模块。
所述构造测试数据的汉字发音图像序列的特征矩阵的操作步骤包括步骤2.9.1到步骤2.9.2,具体为:
步骤2.9.1:依次对汉字发音图像序列中的每帧图像作如下操作:将唇部几何特征向量与唇部运动特征向量相连接,形成联合特征向量vi,vi是一个26维列向量,
步骤2.9.2:汉字发音图像序列的特征矩阵由该汉字发音图像序列中的每帧图像的联合特征向量vi组合而成,因此测试数据的汉字发音图像序列的特征矩阵Ze={v1,v2,...,vn}∈R26×n。
步骤2.10:转换特征矩阵获取模块从存储器A中读取变换矩阵T,并使用变换矩阵T对测试数据的汉字发音图像序列的特征矩阵Ze进行转换,得到转换特征矩阵Ze′=TTZe,并将测试数据的汉字发音图像序列的转换特征矩阵Ze′存储到存储器B。
步骤2.11:典型相关判别分析模块从存储器A中读取全部训练数据的转换特征矩阵Zf′,从存储器B中读取当前测试数据的汉字发音图像序列的转换特征矩阵Ze′,然后采用典型相关判别分析方法计算该测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和;由于训练数据中可能存在重复的汉字,因此同一个汉字对应的典型相关系数和有1个以上,所以进一步计算出训练数据中的每个汉字对应的典型相关系数和的平均值,并从这些平均值中取出最大值,将该最大值在训练数据中对应的汉字输出到人机交互模块。
所述采用典型相关判别分析方法计算该测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和的操作步骤包括步骤2.11.1到步骤2.11.6,具体为:
步骤2.11.1:针对测试数据的转换特征矩阵Z′e,计算Z′eZ′e T并对Z′eZ′e T进行公式分解,Z′eZ′e T≈(TTPe)Λe(TTPe)T,进而可以得到矩阵Pe、Λe,其中:Pe为矩阵ZeZe T的特征向量矩阵;Λe∈Rd×d,是矩阵ZeZe T的特征值矩阵;
步骤2.11.2:对步骤2.11.1中所述TTPe执行矩阵的QR分解:TTPe=ФeΔe,得到Фe和Δe;其中Фe∈R26×d,是规格化正交矩阵,R表示实数;Δe∈Rd×d,是可逆上三角矩阵;然后,对矩阵Pe进行规格化,得到矩阵P′e,
步骤2.11.3:针对每个训练数据的转换特征矩阵Z′f,计算Z′fZ′f T并对Z′fZ′f T进行公式分解,Z′fZ′f T≈(TTPf)Λf(TTPf)T,进而可以得到矩阵Pf、Λf,其中:Pf为矩阵ZfZf T的特征向量矩阵;Λf∈Rd×d,是矩阵ZfZf T的特征值矩阵;
步骤2.11.4:对步骤2.11.3中所述TTPf执行矩阵的QR分解:TTPf=ФfΔf,得到Фf和Δf.其中Фf∈R26×d,是规格化正交矩阵,R表示实数;Δf∈Rd×d,是可逆上三角矩阵;然后,对矩阵Pf进行规格化,得到矩阵P′f,
步骤2.11.5:使用步骤2.11.2得到的矩阵P′e和步骤2.11.4得到的矩阵P′f,计算P′e TTTTP′f,并对P′e TTTTP′f执行矩阵的SVD分解:得到Qef、Λ、Qfe,其中,Λ∈Rd×d,是奇异矩阵;Qef、Qfe∈Rd×d,是正交旋转矩阵;
步骤2.11.6:通过公式(6)得到测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和,用Fef表示;
步骤2.12:人机交互模块显示典型相关判别分析模块传输过来的汉字。
经过上述步骤,即可完成对测试数据的自动识别。
有益效果
与已有中文自动唇语识别***相比,本发明具有以下优点:
①本发明中使用头戴式摄像头来直接获取唇部图像序列,每次实验开始时被试使用人机交互的方式来调整头戴式摄像头的位置,实验过程中摄像头和人脸的相对位置是固定的,被试可以自然地进行汉字发音,不用刻意去保持头部姿势和位置。相比前人方法,本文可以非常准确地获取唇部图像序列,前期运算量大大减少,且可以减少对被试的约束,使实验过程更加自然。
②本发明使用卷积虚拟静电场Snake模型定位唇部轮廓,更快速准确。
③本发明提取的唇语特征结合了唇部几何特征和唇部运动特征,使分析更准确。
④本发明首次将典型相关判别分析方法成功的运用到唇语自动识别领域,克服了隐马尔科夫模型在语言识别中的局限性。
附图说明
图1为本发明具体实施方式中的适用于中文的自动唇语识别***的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
一种适用于中文的自动唇语识别***,其***结构如图1所示,包括:头戴式摄像头、人机交互模块、唇部轮廓定位模块、几何向量获取模块、运动向量获取模块、特征矩阵构造模块、变换矩阵T获取模块、转换特征矩阵获取模块、存储器A、存储器B、典型相关判别分析模块。
其连接关系为:头戴式摄像头的输出端与人机交互模块的输入端连接;人机交互模块的输出端与唇部轮廓定位模块的输入端连接;唇部轮廓定位模块的输出端与几何向量获取模块的输入端连接;几何向量获取模块的输出端与运动向量获取模块和特征矩阵构造模块的输入端连接;运动向量获取模块的输出端与特征矩阵构造模块的输入端连接;特征矩阵构造模块的输出端与变换矩阵T获取模块和转换特征矩阵获取模块的输入端连接;变换矩阵T获取模块与存储器A连接;转换特征矩阵获取模块与存储器A和存储器B连接;存储器A和存储器B还与典型相关判别分析模块的输入端连接;典型相关判别分析模块的输出端与人机交互模块的输入端连接。
各模块及设备的主要功能是:
头戴式摄像头的主要功能是:获取被试者发出的汉字发音图像序列。
人机交互模块的主要功能是:①提供一个闭合轮廓曲线,以供被试者调整头戴式摄像头的位置,使得头戴式摄像头获取的被试者的唇部区域被包含在该闭合轮廓曲线中。②获取头戴式摄像头拍摄的汉字发音图像序列;③对典型相关判别分析模块的结果进行输出。
唇部轮廓定位模块的主要功能是:使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块。
几何向量获取模块的主要功能是:从唇部轮廓定位模块输出的汉字发音图像序列中的每帧图像的唇部轮廓曲线中获取唇部几何特征向量;并且为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量做归一化操作,得到归一化操作后的唇部几何特征向量,并输出至运动向量获取模块和特征矩阵构造模块。
运动向量获取模块的主要功能是:以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量,然后将唇部运动特征向量输出至特征矩阵构造模块。
特征矩阵构造模块的主要功能是:构造汉字发音图像序列的特征矩阵,然后将汉字发音图像序列的特征矩阵输出至变换矩阵T获取模块和转换特征矩阵获取模块。
变换矩阵T获取模块的主要功能是:针对训练数据的汉字发音图像序列的特征矩阵,采用典型相关判别分析方法进行处理,得到变换矩阵T,并将其存储到存储器A。
转换特征矩阵获取模块的主要功能是:使用变换矩阵T依次对训练数据的汉字发音图像序列的特征矩阵进行转换,得到转换特征矩阵,并将训练数据的汉字发音图像序列的转换特征矩阵存储到存储器A。
存储器A:存储变换矩阵T以及训练数据的汉字发音图像序列的转换特征矩阵。
存储器B:存储测试数据的汉字发音图像序列的转换特征矩阵。
典型相关判别分析模块:从存储器B中获取当前测试数据的转换特征矩阵与存储器A中的每个训练数据的转换特征矩阵的典型相关系数和,然后进一步对这些典型相关系数和进行处理,获得当前测试数据的识别结果,并将该识别结果输出到人机交互模块。
使用上述***进行实验,试验中选择10名被试者(4名男性和6名女性),然后让他们每人对”零、一、二、三、四、五、我、爱、北、京”10个汉字发音20次,每个汉字得到200个汉字发音图像序列;然后,对于每个汉字,从其对应的200个汉字发音图像序列中随机选取80%(160个)作为训练数据,剩下的20%(40个)的汉字发音图像序列作为测试数据;因此训练数据有1600个,测试数据有400个。
2000个汉字发音图像序列获取的步骤如下:
步骤1:人机交互模块显示一个闭合轮廓曲线。
步骤2:10名被试人依次将头戴式摄像头固定在头部;被试人调整头戴式摄像头的位置,使其直接拍摄被试脸的下半部分,拍摄图像发送至人机交互模块显示;被试人再次调整头戴式摄像头的位置,使得被试者的唇部区域被包含在步骤1中所述的闭合轮廓曲线中。
步骤3:被试者以每秒钟1个汉字的语速对”零、一、二、三、四、五、我、爱、北、京”10个汉字进行发音,每个汉字发音20次,同时头戴式摄像头的拍摄速度为每秒30帧,因此每个汉字发音的视频流由30帧图像序列组成;将一个汉字的30帧图像序列称为一个汉字发音图像序列。
经过上述步骤的操作,即可获取10个汉字的2000个汉字发音图像序列。
然后,实验人员使用随机选取的1600个汉字发音图像序列作为训练数据对***进行训练,过程如下:
步骤1:将人机交互模块中出现的闭合轮廓曲线和1600个汉字发音图像序列发送至唇部轮廓定位模块。
步骤2:唇部轮廓定位模块使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块。其中对每个汉字发音图像序列中的第一个图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用人机交互模块提供的闭合轮廓曲线;对该汉字发音图像序列中的其它图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用该图像的前一图像的唇部定位结果曲线。
步骤3:几何向量获取模块依次从汉字发音图像序列中每帧图像的唇部轮廓曲线中获取唇部几何特征向量g1~g30表示,;并且为了弥补不同被试间的唇形差异以及图像缩放比例差异,对唇部几何特征向量g1~g30做归一化操作1得到归一化操作后的唇部几何特征向量g1′~g30′;然后将归一化操作后的唇部几何特征向量输出至运动向量获取模块和特征矩阵构造模块。获取经过归一化操作后的唇部几何特征向量的具体操作步骤为:
步骤3.1:计算唇部轮廓曲线水平方向的极值,得到左右嘴角的点坐标。
步骤3.2:将左右嘴角两点用一条直线相连,以左右嘴角点的中点为圆心,称该圆心为点O,按顺时针方向旋转该直线5次,每次旋转30度;每旋转一次将会得到直线与唇形曲线相交的两条线段,总共得到12条线段,从左嘴角开始按顺时针顺序分别用L1~L12表示这12条线段的长度,称该12条线段的长度L1~L12为辐射向量;将左右嘴角两点间的直线旋转90度时,与唇形曲线相交的上交点和下交点分别成为点A和点B。
步骤3.3:将左嘴角称为点Q,将点Q分别与点A和点B用直线相连;∠AQO用θ1表示,∠BQO用θ2表示,可根据L1~L12,得到θ1和θ2的角度,进而得到θ1和θ2的余弦值;
步骤3.4:L1~L12以及θ1和θ2的余弦值就构成了一帧图像中的唇部几何特征向量;由于L1和L7是连接左右嘴角线段长度的一半,所以它们的值相等,因此在唇部几何特征向量中去掉L7,即一帧图像中的唇部几何特征向量gi=[L1,…,L6,L8,…,L12,cosθ1,cosθ2]t,i=1,2,…,30;
步骤3.5:为了弥补不同被试间的唇形差异以及图像缩放比例差异,对唇部几何特征向量gi做归一化操作,得到归一化操作后的唇部几何特征向量gi′;gi′是一个13维横向量,gi′=[L1′,…,L6′,L8′,…,L12′,cosθ1,cosθ2];其中,j=1,2,…6,8,…,12,是一个汉字发音图像序列的第一帧图像中左右嘴角间距离。
步骤4:运动向量获取模块以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量pi,pi是一个13维横向量,pi=(gi′-gi-1′)/Δt,其中,g0′=g1′,Δt是两个连续帧的时间间隔;然后将唇部运动特征向量pi输出至特征矩阵构造模块;
步骤5:特征矩阵构造模块构造训练数据的汉字发音图像序列的特征矩阵Zf,f=1,2,…,1600,然后将训练数据的汉字发音图像序列的特征矩阵Zf分别输出至变换矩阵T获取模块和转换特征矩阵获取模块。构造汉字发音图像序列的特征矩阵的具体操作步骤为:
步骤5.1:依次对汉字发音图像序列中的每帧图像作如下操作:将唇部几何特征向量与唇部运动特征向量相连接,形成联合特征向量vi,vi是一个26维列向量,
步骤5.2:汉字发音图像序列的特征矩阵由该汉字发音图像序列中的每帧图像的联合特征向量vi组合而成,因此训练数据的汉字发音图像序列的特征矩阵Zf={v1,v2,...,vn}∈R26×30。
步骤1.6:变换矩阵T获取模块针对1600个训练数据的汉字发音图像序列的特征矩阵Zf,采用T.-K.Kim等人提出的典型相关判别分析方法进行处理,得到变换矩阵T,并将变换矩阵T存储到存储器A。
步骤1.7:转换特征矩阵获取模块从存储器A中读取变换矩阵T,并使用变换矩阵T依次对训练数据的汉字发音图像序列的特征矩阵Zf进行转换,得到转换特征矩阵Zf′=TTZf,并训练数据的汉字发音图像序列的转换特征矩阵Zf′存储到存储器A。
经过上述步骤的操作,即可完成对所述自动唇语识别***的训练。
将自动唇语识别***训练好以后,实验人员使用400条测试数据对该***进行测试,过程如下:
步骤1:将人机交互模块中出现的闭合轮廓曲线和400个汉字发音图像序列发送至唇部轮廓定位模块。
步骤2:唇部轮廓定位模块使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块。其中对每个汉字发音图像序列中的第一个图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用人机交互模块提供的闭合轮廓曲线;对该汉字发音图像序列中的其它图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用该图像的前一图像的唇部定位结果曲线。
步骤3:几何向量获取模块依次从汉字发音图像序列中每帧图像的唇部轮廓曲线中获取唇部几何特征向量g1~g30表示,;并且为了弥补不同被试间的唇形差异以及图像缩放比例差异,对唇部几何特征向量g1~g30做归一化操作,得到归一化操作后的唇部几何特征向量g1′~g30′;然后将归一化操作后的唇部几何特征向量输出至运动向量获取模块和特征矩阵构造模块。获取经过归一化操作后的唇部几何特征向量的具体操作步骤为:
步骤3.1:计算唇部轮廓曲线水平方向的极值,得到左右嘴角的点坐标。
步骤3.2:将左右嘴角两点用一条直线相连,以左右嘴角点的中点为圆心,称该圆心为点O,按顺时针方向旋转该直线5次,每次旋转30度;每旋转一次将会得到直线与唇形曲线相交的两条线段,总共得到12条线段,从左嘴角开始按顺时针顺序分别用L1~L12表示这12条线段的长度,称该12条线段的长度L1~L12为辐射向量;将左右嘴角两点间的直线旋转90度时,与唇形曲线相交的上交点和下交点分别成为点A和点B。
步骤3.3:将左嘴角称为点Q,将点Q分别与点A和点B用直线相连;∠AQO用θ1表示,∠BQO用θ2表示,可根据L1~L12,得到θ1和θ2的角度,进而得到θ1和θ2的余弦值;
步骤3.4:L1~L12以及θ1和θ2的余弦值就构成了一帧图像中的唇部几何特征向量;由于L1和L7是连接左右嘴角线段长度的一半,所以它们的值相等,因此在唇部几何特征向量中去掉L7,即一帧图像中的唇部几何特征向量gi=[L1,…,L6,L8,…L12,cosθ1,cosθ2]t,i=1,2,…,30;
步骤3.5:为了弥补不同被试间的唇形差异以及图像缩放比例差异,对唇部几何特征向量gi做归一化操作,得到归一化操作后的唇部几何特征向量gi;gi′是一个13维横向量,gi′=[L1′,…,L6′,L8′,…L12′,cosθ1,cosθ2];其中,j=1,2,…6,8,…,12,是一个汉字发音图像序列的第一帧图像中左右嘴角间距离。
步骤4:运动向量获取模块以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量pi,pi是一个13维横向量,pi=(gi′-gi-1′)/Δt,其中,g0′=g1′,Δt是两个连续帧的时间间隔;然后将唇部运动特征向量pi输出至特征矩阵构造模块;
步骤4:特征矩阵构造模块构造测试数据的汉字发音图像序列的特征矩阵Ze,e=1,2,…,400,然后将测试数据的汉字发音图像序列的特征矩阵Ze输出至转换特征矩阵获取模块。构造汉字发音图像序列的特征矩阵的具体操作步骤为:
步骤4.1:依次对汉字发音图像序列中的每帧图像作如下操作:将唇部几何特征向量与唇部运动特征向量相连接,形成联合特征向量vi,vi是一个26维列向量,
步骤4.2:汉字发音图像序列的特征矩阵由该汉字发音图像序列中的每帧图像的联合特征向量vi组合而成,因此测试数据的汉字发音图像序列的特征矩阵Ze={v1,v2,...,vn}∈R26×30。
步骤5:转换特征矩阵获取模块从存储器A中读取变换矩阵T,并使用变换矩阵T对测试数据的汉字发音图像序列的特征矩阵Ze进行转换,得到转换特征矩阵Ze′=TTZe,并将测试数据的汉字发音图像序列的转换特征矩阵Ze′存储到存储器B。
步骤6:典型相关判别分析模块从存储器A中读取全部训练数据的转换特征矩阵Zf′,从存储器B中读取当前测试数据的汉字发音图像序列的转换特征矩阵Ze′,然后采用T.-K.Kim等人提出的典型相关判别分析方法计算该测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和;由于训练数据中可能存在重复的汉字,因此同一个汉字对应的典型相关系数和有1个或1个以上,所以进一步计算出训练数据中的每个汉字对应的典型相关系数和的平均值,并从这些平均值中取出最大值,将该最大值在训练数据中对应的汉字输出到人机交互模块。
步骤7:人机交互模块显示典型相关判别分析模块传输过来的汉字。
经过上述步骤,即可完成对测试数据的自动识别,该***的识别准确率如表1中的第2列所示;同时为了说明本发明的效果,还进行了2项实验:
1.在相同的实验环境、训练数据、测试数据的情况下,将本发明中使用的卷积虚拟静电场Snake模型换成传统Snake模型、其它功能不变,得到的识别准确率如表1中的第3列所示;
2.在相同的实验环境、训练数据、测试数据的情况下,将本发明中使用的典型相关分析方法换成连续隐马尔科夫模型(Continuous Hidden Markov Model,CHMM)、其它功能不变,得到的识别准确率如表1中的第4列所示。
表1不同方法的识别准确率比较结果(%)
(1) | (2) | (3) | |
“零” | 90.0 | 73.5 | 88.5 |
“一” | 92.0 | 75.0 | 90.5 |
“二” | 86.5 | 76.0 | 83.0 |
“三” | 93.0 | 81.5 | 92.5 |
“四” | 95.0 | 83.0 | 95.5 |
“五” | 89.5 | 73.0 | 91.0 |
“我” | 96.0 | 82.0 | 95.0 |
“爱” | 97.0 | 82.5 | 95.5 |
“北” | 93.5 | 81.5 | 94.0 |
“京” | 90.0 | 75.5 | 88.0 |
实验表明本发明提出的***具有更高的识别准确率。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,或者对其中部分技术特征进行等同替换,这些改进和替换也应视为本发明的保护范围。
Claims (1)
1.一种适用于中文的自动唇语识别***,包括:头戴式摄像头、人机交互模块、唇部轮廓定位模块、几何向量获取模块、运动向量获取模块、特征矩阵构造模块、变换矩阵T获取模块、转换特征矩阵获取模块、存储器A、存储器B、典型相关判别分析模块;
其连接关系为:头戴式摄像头的输出端与人机交互模块的输入端连接;人机交互模块的输出端与唇部轮廓定位模块的输入端连接;唇部轮廓定位模块的输出端与几何向量获取模块的输入端连接;几何向量获取模块的输出端与运动向量获取模块和特征矩阵构造模块的输入端连接;运动向量获取模块的输出端与特征矩阵构造模块的输入端连接;特征矩阵构造模块的输出端与变换矩阵T获取模块和转换特征矩阵获取模块的输入端连接;变换矩阵T获取模块与存储器A连接;转换特征矩阵获取模块与存储器A和存储器B连接;存储器A和存储器B还与典型相关判别分析模块的输入端连接;典型相关判别分析模块的输出端与人机交互模块的输入端连接;
各模块及设备的主要功能是:
头戴式摄像头的主要功能是:获取被试者发出的汉字发音图像序列;头戴式摄像头还获取被试者的唇部区域;
人机交互模块的主要功能是:①提供一个闭合轮廓曲线,以供被试者调整头戴式摄像头的位置,使得头戴式摄像头获取的被试者的唇部区域被包含在该闭合轮廓曲线中;②获取头戴式摄像头拍摄的汉字发音图像序列;③对典型相关判别分析模块的结果进行输出;
唇部轮廓定位模块的主要功能是:使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块;
所述唇形跟踪算法为基于卷积虚拟静电场外力的Snake模型,该模型使用卷积虚拟静电场(CONvolutional Virtual Electric Field,CONVEF)代替Snake模型中的外部能量;Snake模型通过曲线c(s)来定义,c(s)=(x(s),y(s)),其中,s是归一化弧长,s∈[0,1];它通过极小化如下的能量泛函来确定目标轮廓:
其中,E(c)为能量泛函,α和β为参数变量,分别用于调整c′(s)和c″(s)对曲线影响的大小;一阶导数项c′(s)刻画了曲线的连续性,是曲线的弹性能量,二阶导数项c″(s)刻画了曲线的光滑性,是曲线的刚性能量,这两项构成Snake模型的内部能量;Eext(c)是Snake模型的外部能量,它吸引Snake轮廓朝目标运动;
根据变分法原理,公式(1)中能量泛函E(c)的最小化可以通过求解公式(2)中的Euler方程ct(s,t)得到:
其中,s为归一化弧长,s∈[0,1];t为时间变量;α和β为参数变量,αc″(s,t)-βc″″(s,t)为Snake模型的内力;c″(s,t)是c(s,t)的二阶导数,c″″(s,t)是c(s,t)的四阶导数;为Snake模型的外力,用卷积虚拟静电场外力FCONVEF来替代得到基于卷积虚拟静电场外力的Snake模型;其中,卷积虚拟静电场外力FCONVEF如公式(3)所示:
其中,FCONVEF(x0,y0)表示图像中当前点(x0,y0)处的卷积虚拟静电场外力;x0和y0分别为图像中当前点的横坐标和纵坐标;x和y分别为图像中某一点的横坐标和纵坐标;h为常数因子,h越大,结果越平滑;幂指数η是可调的参数,η越大,电势随距离增大下降越快;q为图像中某一点(x,y)处的电荷强度;
当公式(2)的解收敛时,就得到了目标轮廓曲线,即唇部轮廓曲线;
几何向量获取模块的主要功能是:从唇部轮廓定位模块输出的汉字发音图像序列中的每帧图像的唇部轮廓曲线中获取唇部几何特征向量;并且为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量做归一化操作,得到归一化操作后的唇部几何特征向量,并输出至运动向量获取模块和特征矩阵构造模块;
运动向量获取模块的主要功能是:以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量,然后将唇部运动特征向量输出至特征矩阵构造模块;
特征矩阵构造模块的主要功能是:构造汉字发音图像序列的特征矩阵,然后将汉字发音图像序列的特征矩阵输出至变换矩阵T获取模块和转换特征矩阵获取模块;
变换矩阵T获取模块的主要功能是:针对训练数据的汉字发音图像序列的特征矩阵,采用典型相关判别分析方法进行处理,得到变换矩阵T,并将其存储到存储器A;
所述使用典型相关判别分析方法获取变换矩阵T的方法为:
设定需要处理的汉字发音图像序列的特征矩阵的数量为M,用Zk表示第k个汉字发音图像序列的特征矩阵,其中M、k为正整数,且1≤k≤M,则获取变换矩阵T的具体步骤为:
步骤1:针对每个汉字发音图像序列的特征矩阵Zk,求的特征向量矩阵,用Pk表示,Pk∈RN×d,R表示实数;N为正整数,表示一帧图像的特征向量的维度;Pk由的d个最大特征值所对应的特征向量组成,d为正整数;
步骤2:将变换矩阵T初始化为单位矩阵IN;
步骤3:针对每个特征向量矩阵Pk,计算TTPk,并对TTPk执行矩阵的QR分解:TTPk=ФkΔk,得到Фk和Δk;其中Фk∈RN×d,是规格化正交矩阵,R表示实数;Δk∈Rd×d,是可逆上三角矩阵;然后,对特征向量矩阵Pk进行规格化,得到矩阵P′k,使得TTP′k是规格化正交基矩阵;
步骤4:从步骤3中得到的矩阵P′k中任取2个,分别用P′k和P′a表示,1≤k≤M,1≤a≤M,且a≠k,对于每一对P′k和P′a,计算P′k TTTTP′a,并对P′k TTTTP′a执行矩阵的SVD分解:得到Qka、Λ、Qak,其中,Λ∈Rd×d,是奇异矩阵;Qka、Qak∈Rd×d,是正交旋转矩阵;
步骤5:用符号Ck表示第k个汉字发音图像序列的特征矩阵Zk对应的汉字,符号Bk和Wk表示2个集合,其中,集合集合Wk={k′|Zk′∈Ck,1≤k′≤M};然后通过公式(4)计算总类间散布矩阵,用符号Sb表示,用公式(5)计算总类内散布矩阵,用符号Sw表示;
步骤6:计算矩阵(Sw)-1Sb的特征向量t1,t2,...,tN,本轮迭代得到的变换矩阵T=[t1,t2,...,tN];重复以上步骤3到步骤6的迭代过程,直至变换矩阵T趋向于稳定值,取稳定后的变换矩阵T的前r列作为最终的变换矩阵T,即T=[t1,t2,...,tr]∈RN×r,r<N,且r为正整数;
通过上述步骤,即可得到变换矩阵T;
转换特征矩阵获取模块的主要功能是:使用变换矩阵T依次对训练数据的汉字发音图像序列的特征矩阵进行转换,得到转换特征矩阵,并将训练数据的汉字发音图像序列的转换特征矩阵存储到存储器A;
存储器A:存储变换矩阵T以及训练数据的汉字发音图像序列的转换特征矩阵;
存储器B:存储测试数据的汉字发音图像序列的转换特征矩阵;
典型相关判别分析模块:从存储器B中获取当前测试数据的转换特征矩阵,从存储器A中获取每个训练数据的转换特征矩阵,并计算两者的典型相关系数和,然后进一步对这些典型相关系数和进行处理,获得当前测试数据的识别结果,并将该识别结果输出到人机交互模块;
所述自动唇语识别***的工作过程分为***训练过程和***测试过程:
***训练过程的工作流程包括步骤1.1到步骤1.11,具体为:
步骤1.1:选取m个汉字作为训练数据,m≥5且m为正整数;
步骤1.2:人机交互模块显示一个闭合轮廓曲线;
步骤1.3:被试人将头戴式摄像头固定在头部;被试人调整头戴式摄像头的位置,使其直接拍摄被试脸的下半部分,拍摄图像发送至人机交互模块显示;被试人再次调整头戴式摄像头的位置,使得被试者的唇部区域被包含在步骤1.2中所述的闭合轮廓曲线中;
步骤1.4:被试者以每秒钟1个汉字的语速对步骤1.1中所述的m个汉字进行发音,同时头戴式摄像头的拍摄速度为每秒n帧,n≥25且n为正整数;因此每个汉字发音的视频流由n帧图像序列组成;将一个汉字的n帧图像序列称为一个汉字发音图像序列;头戴式摄像头将拍摄的汉字发音图像序列发送至人机交互模块;
步骤1.5:人机交互模块将步骤1.2中所述闭合轮廓曲线和步骤1.4中所述的头戴式摄像头拍摄的汉字发音图像序列发送至唇部轮廓定位模块;
步骤1.6:唇部轮廓定位模块使用唇形跟踪算法依次对汉字发音图像序列中的每帧图像上的唇部轮廓进行定位,得到唇部轮廓曲线,并将其输出至几何向量获取模块;其中对每个汉字发音图像序列中的第一个图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用人机交互模块提供的闭合轮廓曲线;对该汉字发音图像序列中的其它图像的唇部轮廓进行定位时,卷积虚拟静电场Snake模型的初始曲线采用该图像的前一图像的唇部定位结果曲线;
步骤1.7:几何向量获取模块依次从汉字发音图像序列中每帧图像的唇部轮廓曲线中获取唇部几何特征向量,用gi表示,i表示一个汉字发音图像序列中各帧图像的顺序号,1≤i≤n且i为正整数;并且为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量gi做归一化操作,得到归一化操作后的唇部几何特征向量,用gi′表示;然后将归一化操作后的唇部几何特征向量输出至运动向量获取模块和特征矩阵构造模块;所述得到归一化操作后的唇部几何特征向量的操作步骤包括步骤1.7.1到步骤1.7.5,具体为:
步骤1.7.1:计算唇部轮廓曲线水平方向的极值,得到左右嘴角的点坐标;
步骤1.7.2:将左右嘴角两点用一条直线相连,以左右嘴角点的中点为圆心,称该圆心为点O,按顺时针方向旋转该直线5次,每次旋转30度;每旋转一次将会得到直线与唇形曲线相交的两条线段,总共得到12条线段,从左嘴角开始按顺时针顺序分别用L1~L12表示这12条线段的长度,称该12条线段的长度L1~L12为辐射向量;将左右嘴角两点间的直线旋转90度时,与唇形曲线相交的上交点和下交点分别成为点A和点B;
步骤1.7.3:从左右嘴角两点中任选一点,称该点为点Q,将点Q分别与点A和点B用直线相连;∠AQO用θ1表示,∠BQO用θ2表示,可根据L1~L12,得到θ1和θ2的角度,进而得到θ1和θ2的余弦值;
步骤1.7.4:L1~L12以及θ1和θ2的余弦值就构成了一帧图像中的唇部几何特征向量;由于L1和L7是连接左右嘴角线段长度的一半,所以它们的值相等,因此在唇部几何特征向量中去掉L7,即一帧图像中的唇部几何特征向量gi=[L1,…,L6,L8,…,L12,cosθ1,cosθ2]t;
步骤1.7.5:为了弥补不同被试者之间的唇形差异以及图像缩放比例差异,对唇部几何特征向量gi做归一化操作,得到归一化操作后的唇部几何特征向量,用gi′表示;gi′是一个13维横向量,gi′=[L1′,…,L6′,L8′,…,L12′,cosθ1,cosθ2];其中,j=1,2,…6,8,…,12,是一个汉字发音图像序列的第一帧图像中左右嘴角间距离;
步骤1.8:运动向量获取模块以经过归一化操作的唇部几何特征向量为基础,构造每帧图像的唇部运动特征向量,用pi表示,pi是一个13维横向量,pi=(gi′-gi-1′)/Δt,其中,g0′=g1′,Δt是两个连续帧的时间间隔;然后将唇部运动特征向量pi输出至特征矩阵构造模块;
步骤1.9:特征矩阵构造模块构造训练数据的汉字发音图像序列的特征矩阵,用Zf表示,其中f表示训练数据的汉字发音图像序列的顺序号,1≤f≤m且f为正整数;然后将训练数据的汉字发音图像序列的特征矩阵Zf分别输出至变换矩阵T获取模块和转换特征矩阵获取模块;所述构造训练数据的汉字发音图像序列的特征矩阵的操作步骤包括步骤1.9.1到步骤1.9.2,具体为:
步骤1.9.2:汉字发音图像序列的特征矩阵由该汉字发音图像序列中的每帧图像的联合特征向量vi组合而成,因此训练数据的汉字发音图像序列的特征矩阵Zf={v1,v2,...,vn}∈R26×n;
步骤1.10:变换矩阵T获取模块针对m个训练数据的汉字发音图像序列的特征矩阵Zf,采用典型相关判别分析方法进行处理,得到变换矩阵T∈R26×r,r<26,且r为正整数,R表示实数,并将变换矩阵T存储到存储器A;
步骤1.11:转换特征矩阵获取模块从存储器A中读取变换矩阵T,并使用变换矩阵T依次对训练数据的汉字发音图像序列的特征矩阵Zf进行转换,得到转换特征矩阵Zf′=TTZf,并将训练数据的汉字发音图像序列的转换特征矩阵Zf′存储到存储器A;
经过上述步骤的操作,即可完成对所述自动唇语识别***的训练;
***测试过程的工作流程包括步骤2.1到步骤2.12,具体为:
步骤2.1:从m个训练数据中选取m′个汉字作为测试数据,m′≤m且m′为正整数;
步骤2.2:人机交互模块显示一个闭合轮廓曲线;
步骤2.3:被试人将头戴式摄像头固定在头部;被试人调整头戴式摄像头的位置,使其直接拍摄被试脸的下半部分,拍摄图像发送至人机交互模块显示;被试人再次调整头戴式摄像头的位置,使得被试者的唇部区域被包含在步骤2.2中所述的闭合轮廓曲线中;
步骤2.4:被试者以每秒钟1个汉字的语速对步骤2.1中所述的m′个汉字进行发音,同时头戴式摄像头的拍摄速度为每秒n帧,n≥25且n为正整数;因此每个汉字发音的视频流由n帧图像序列组成;将一个汉字的n帧图像序列称为一个汉字发音图像序列;头戴式摄像头将拍摄的汉字发音图像序列发送至人机交互模块;
步骤2.5:人机交互模块将步骤2.2中所述闭合轮廓曲线和步骤2.4中所述的汉字发音图像序列发送至唇部轮廓定位模块;
步骤2.6:与***训练过程中的步骤1.6的操作相同;
步骤2.7:与***训练过程中的步骤1.7的操作相同;
步骤2.8:与***训练过程中的步骤1.8的操作相同;
步骤2.9:特征矩阵构造模块构造测试数据的汉字发音图像序列的特征矩阵,用Ze表示,其中e表示测试数据的汉字发音图像序列的顺序号,1≤e≤m′且e为正整数;然后将测试数据的汉字发音图像序列的特征矩阵Ze输出至转换特征矩阵获取模块;
所述构造测试数据的汉字发音图像序列的特征矩阵的操作步骤包括步骤2.9.1到步骤2.9.2,具体为:
步骤2.9.1:依次对汉字发音图像序列中的每帧图像作如下操作:将唇部几何特征向量与唇部运动特征向量相连接,形成联合特征向量vi,vi是一个26维列向量,
步骤2.9.2:汉字发音图像序列的特征矩阵由该汉字发音图像序列中的每帧图像的联合特征向量vi组合而成,因此测试数据的汉字发音图像序列的特征矩阵Ze={v1,v2,...,vn}∈R26×n;
步骤2.10:转换特征矩阵获取模块从存储器A中读取变换矩阵T,并使用变换矩阵T对测试数据的汉字发音图像序列的特征矩阵Ze进行转换,得到转换特征矩阵Ze′=TTZe,并将测试数据的汉字发音图像序列的转换特征矩阵Ze′存储到存储器B;
步骤2.11:典型相关判别分析模块从存储器A中读取全部训练数据的转换特征矩阵Zf′,从存储器B中读取当前测试数据的汉字发音图像序列的转换特征矩阵Ze′,然后采用典型相关判别分析方法计算该测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和;由于训练数据中可能存在重复的汉字,因此同一个汉字对应的典型相关系数和有1个以上,所以进一步计算出训练数据中的每个汉字对应的典型相关系数和的平均值,并从这些平均值中取出最大值,将该最大值在训练数据中对应的汉字输出到人机交互模块;
所述采用典型相关判别分析方法计算该测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和的操作步骤包括步骤2.11.1到步骤2.11.6,具体为:
步骤2.11.1:针对测试数据的转换特征矩阵Z′e,计算Z′eZ′e T并对Z′eZ′e T进行公式分解,Z′eZ′e T≈(TTPe)Λe(TTPe)T,进而可以得到矩阵Pe、Λe,其中:Pe为矩阵ZeZe T的特征向量矩阵;Λe∈Rd×d,是矩阵ZeZe T的特征值矩阵;
步骤2.11.2:对步骤2.11.1中所述TTPe执行矩阵的QR分解:TTPe=ФeΔe,得到Фe和Δe;其中Фe∈R26×d,是规格化正交矩阵,R表示实数;Δe∈Rd×d,是可逆上三角矩阵;然后,对矩阵Pe进行规格化,得到矩阵P′e,
步骤2.11.3:针对每个训练数据的转换特征矩阵Z′f,计算Z′fZ′f T并对Z′fZ′f T进行公式分解,Z′fZ′f T≈(TTPf)Λf(TTPf)T,进而可以得到矩阵Pf、Λf,其中:Pf为矩阵ZfZf T的特征向量矩阵;Λf∈Rd×d,是矩阵ZfZf T的特征值矩阵;
步骤2.11.4:对步骤2.11.3中所述TTPf执行矩阵的QR分解:TTPf=ФfΔf,得到Фf和Δf;其中Фf∈R26×d,是规格化正交矩阵,R表示实数;Δf∈Rd×d,是可逆上三角矩阵;然后,对矩阵Pf进行规格化,得到矩阵P′f,
步骤2.11.5:使用步骤2.11.2得到的矩阵P′e和步骤2.11.4得到的矩阵P′f,计算P′e TTTTP′f,并对P′e TTTTP′f执行矩阵的SVD分解:得到Qef、Λ、Qfe,其中,Λ∈Rd×d,是奇异矩阵;Qef、Qfe∈Rd×d,是正交旋转矩阵;
步骤2.11.6:通过公式(6)得到测试数据的转换特征矩阵Ze′与每个训练数据的转换特征矩阵Zf′的典型相关系数和,用Fef表示;
步骤2.12:人机交互模块显示典型相关判别分析模块传输过来的汉字;
经过上述步骤,即可完成对测试数据的自动分类识别。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105582532A CN102004549B (zh) | 2010-11-22 | 2010-11-22 | 一种适用于中文的自动唇语识别*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105582532A CN102004549B (zh) | 2010-11-22 | 2010-11-22 | 一种适用于中文的自动唇语识别*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102004549A CN102004549A (zh) | 2011-04-06 |
CN102004549B true CN102004549B (zh) | 2012-05-09 |
Family
ID=43811953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105582532A Expired - Fee Related CN102004549B (zh) | 2010-11-22 | 2010-11-22 | 一种适用于中文的自动唇语识别*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102004549B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105898667A (zh) | 2014-12-22 | 2016-08-24 | 杜比实验室特许公司 | 从音频内容基于投影提取音频对象 |
CN104808794B (zh) * | 2015-04-24 | 2019-12-10 | 北京旷视科技有限公司 | 一种唇语输入方法和*** |
CN105787428A (zh) * | 2016-01-08 | 2016-07-20 | 上海交通大学 | 基于稀疏编码的唇语特征身份认证方法 |
CN106250829A (zh) * | 2016-07-22 | 2016-12-21 | 中国科学院自动化研究所 | 基于唇部纹理结构的数字识别方法 |
CN107025439B (zh) * | 2017-03-22 | 2020-04-24 | 天津大学 | 基于深度数据的唇部区域特征提取和规范化方法 |
CN107122646A (zh) * | 2017-04-26 | 2017-09-01 | 大连理工大学 | 一种实现唇语解锁的方法 |
CN107992812A (zh) * | 2017-11-27 | 2018-05-04 | 北京搜狗科技发展有限公司 | 一种唇语识别方法及装置 |
CN108596107A (zh) * | 2018-04-26 | 2018-09-28 | 京东方科技集团股份有限公司 | 基于ar设备的唇语识别方法及其装置、ar设备 |
CN110580336B (zh) * | 2018-06-08 | 2022-03-01 | 北京得意音通技术有限责任公司 | 唇语的分词方法、装置、存储介质和电子设备 |
CN109389098B (zh) * | 2018-11-01 | 2020-04-28 | 重庆中科云从科技有限公司 | 一种基于唇语识别的验证方法以及*** |
CN111326152A (zh) * | 2018-12-17 | 2020-06-23 | 南京人工智能高等研究院有限公司 | 语音控制方法及装置 |
CN109682676A (zh) * | 2018-12-29 | 2019-04-26 | 上海工程技术大学 | 一种纤维拉伸断裂的声发射信号的特征提取方法 |
CN110738126A (zh) * | 2019-09-19 | 2020-01-31 | 平安科技(深圳)有限公司 | 基于坐标变换的嘴唇剪切方法、装置、设备及存储介质 |
CN111898420A (zh) * | 2020-06-17 | 2020-11-06 | 北方工业大学 | 一种唇语识别*** |
CN112053160B (zh) * | 2020-09-03 | 2024-04-23 | 中国银行股份有限公司 | 一种用于唇语识别的智能手环、唇语识别***及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101101752B (zh) * | 2007-07-19 | 2010-12-01 | 华中科技大学 | 基于视觉特征的单音节语言唇读识别*** |
-
2010
- 2010-11-22 CN CN2010105582532A patent/CN102004549B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN102004549A (zh) | 2011-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102004549B (zh) | 一种适用于中文的自动唇语识别*** | |
CN107784293B (zh) | 一种基于全局特征和稀疏表示分类的人体行为识别方法 | |
CN101964064B (zh) | 一种人脸比对方法 | |
Ko et al. | Sign language recognition with recurrent neural network using human keypoint detection | |
CN106127139B (zh) | 一种mooc课程中学生面部表情的动态识别方法 | |
Basu et al. | 3D modeling and tracking of human lip motions | |
US20210233299A1 (en) | Speech-driven facial animation generation method | |
Wang et al. | Learning-based cursive handwriting synthesis | |
CN103258340B (zh) | 富有情感表达能力的三维可视化中文普通话发音词典的发音方法 | |
CN112581569B (zh) | 自适应情感表达的说话人面部动画生成方法及电子装置 | |
CN111243065B (zh) | 一种语音信号驱动的脸部动画生成方法 | |
CN103092329A (zh) | 一种基于唇读技术的唇语输入方法 | |
CN103778661B (zh) | 一种生成说话人三维运动模型的方法、***及计算机 | |
Zhang et al. | BoMW: Bag of manifold words for one-shot learning gesture recognition from kinect | |
CN113838174B (zh) | 一种音频驱动人脸动画生成方法、装置、设备与介质 | |
CN105787428A (zh) | 基于稀疏编码的唇语特征身份认证方法 | |
CN103714331A (zh) | 一种基于点分布模型面部表情特征的提取方法 | |
CN106980825A (zh) | 一种基于归一化像素差特征的人脸姿势分类方法 | |
Nayak et al. | Automated extraction of signs from continuous sign language sentences using iterated conditional modes | |
CN110096987B (zh) | 一种基于双路3dcnn模型的哑语动作识别方法 | |
CN112085105B (zh) | 一种基于人体形状与姿态估计的动作相似度评价方法 | |
Gao et al. | Learning and synthesizing MPEG-4 compatible 3-D face animation from video sequence | |
Zheng et al. | Review of lip-reading recognition | |
Chen et al. | Learning shape priors for single view reconstruction | |
CN102663453A (zh) | 基于第二代条带波变换和极速学习机的人体运动跟踪方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120509 Termination date: 20171122 |
|
CF01 | Termination of patent right due to non-payment of annual fee |