一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

视觉语言识别方法以及相关设备与流程

2022-06-08 23:38:03 来源:中国专利 TAG:


1.本技术涉及工业互联网智能监控和深度学习领域,尤其涉及一种视觉语言识别方法以及相关设备。


背景技术:

2.随着工业互联网技术的发展,视觉语言识别变得越来越重要。视觉语言识别是融合了计算机视觉、自然语言识别等多种领域的一个技术,目的是根据人们讲话时嘴唇的运动视觉信息,解码出讲话者的话语文本内容。视觉语言识别技术具有广阔的应用空间,如工业互联网智能监控中对无声视频的说话内容进行识别,嘈杂环境中的语音识别、公共场所的静默听写、无声影视资料处理等。近年来,虽然视觉语言识别模型只能从有限词汇量的数据库中进行建模和学习,但是,其优异的识别性能已经超过了人工读唇的唇语识别精度。
3.现有的的视觉语言识别方法也存在一些弊端,一方面是识别过程中容易受到唇形、唇色、发音习惯、发音速度和发音时唇部角度变化等多发面的负面影响,另一方面是传统的视觉语言识别方法中对于唇部特征提取的技术不够成熟,在识别过程中无法将时间和空间的唇部特征紧密结合。


技术实现要素:

4.有鉴于此,本技术的目的在于提出一种视觉语言识别方法以及相关设备。
5.基于上述目的,本技术提供了一种视觉语言识别方法,包括:
6.获取唇部区域帧序列图片集;
7.对所述唇部区域帧序列图片集中的唇部区域帧序列图片进行随机调整,得到多样唇部区域帧序列图片集;
8.将所述多样唇部区域帧序列图片集输入到预先搭建的视觉语言识别模型,得到强化唇部向量数据集;
9.对所述强化唇部向量数据集进行序列解码,得到最优解序列,将所述最优解序列翻译成相应文字,得到视觉语言识别结果。
10.基于同一发明构思,本技术提供了一种视觉语言识别装置,包括:
11.获取模块,被配置为获取唇部区域帧序列图片集;
12.调整模块,被配置为对所述唇部区域帧序列图片集中的唇部区域帧序列图片进行随机调整,得到多样唇部区域帧序列图片集;
13.强化模块,被配置为将所述多样唇部区域帧序列图片集输入到预先搭建的视觉语言识别模型,得到强化唇部向量数据集;
14.识别模块,被配置为对所述强化唇部向量数据集进行序列解码,得到最优解序列,将所述最优解序列翻译成相应文字,得到视觉语言识别结果。
15.基于同一发明构思,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意
一项所述的视觉语言识别方法。
16.从上面所述可以看出,本技术提供的一种视觉语言识别方法以及相关设备,通过获取唇部区域帧序列图片集,并对唇部区域帧序列图片集中的唇部区域帧序列图片进行随机调整,得到多样唇部区域帧序列图片集。将多样唇部区域帧序列图片集输入到预先搭建的视觉语言识别模型,得到强化唇部向量数据集。对强化唇部向量数据集进行序列解码,得到最优解序列,将最优解序列翻译成相应文字,得到视觉语言识别结果。
17.本技术提供的视觉语言识别方法,可以根据包含唇部定位的唇部区域帧序列图片集,以及通过预先搭建的视觉语言识别模型,来自动识别和加强唇部区域在时间维度和空间维度的唇部特征,并能将时间维度和空间维度的唇部特征进行融合,得到强化唇部向量数据集。其中,向量的维数就是整个数据集包含的所有汉字的个数,向量中的每一个元素是其对应位置汉字的概率。本技术提供的视觉语言识别方法,有效解决了识别过程中容易受到唇形、唇色、发音习惯、发音速度和发音时唇部角度变化等多发面的负面影响,提高视觉语言识别的准确性和实用性。
附图说明
18.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1为本技术实施例的视觉语言识别方法的流程示意图。
20.图2为本技术实施例的视觉语言识别方法的唇部区域切割示意图。
21.图3为本传统的视觉语言识别基线模型示意图。
22.图4为本技术实施例的视觉语言识别方法的视觉语言识别模型示意图。
23.图5为本技术实施例的视觉语言识别方法的伪三维卷积残差网络结构示意图。
24.图6为本技术实施例的视觉语言识别方法的局部特征增强模块示意图。
25.图7为本技术实施例的视觉语言识别方法的集数搜索方法示意图。
26.图8为本技术实施例的视觉语言识别装置示意图。
27.图9为本技术实施例的电子设备结构示意图。
具体实施方式
28.为使本技术目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
29.需要说明的是,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位
置改变后,则该相对位置关系也可能相应地改变。
30.如背景技术部分所述,通常,人们在讲话时,唇部也会做出相应的幅度变化,这种唇动是话语在视觉上的体现,唇语使用者可以根据人们唇形的变化来识别讲话的内容。在工业互联网智能监控领域,需要更优异的视觉语言识别方法对嘈杂环境中的语音进行识别、在公共场所进行静默听写、无声影视资料处理等。
31.针对于此,本技术提供的一种视觉语言识别方法,通过获取唇部区域帧序列图片集,并对唇部区域帧序列图片集中的唇部区域帧序列图片进行随机调整,得到多样唇部区域帧序列图片集。通过以上操作可以丰富唇部区域帧序列图片集的多样性,提高其识别过程的抗干扰能力。多样唇部区域帧序列图片集输入到预先搭建的视觉语言识别模型,得到强化唇部向量数据集。通过预先搭建的视觉语言识别模型,可以自动识别和加强唇部区域在时间维度和空间维度的唇部特征,并对唇部特征向量数据集建模,建立更长时间序列上的依赖性。对强化唇部向量数据集进行序列解码,得到最优解序列,将最优解序列翻译成相应文字,得到视觉语言识别结果。唇语发音由各肌肉群协同作用,在空间上表现出更强的相关性。本技术提供的视觉语言识别方法,可以很好地发掘出这一特性,视觉语言识别在序列上受困于前后唇形影响、多音字影响,本技术可以通过预先构建的视觉语言识别模型,借助光流信息增强时序上的相关性,最终使得本技术提供的视觉语言识别方法可以更好的应用于工业互联网智能监控领域。
32.以下,通过具体的实施例进一步详细说明本技术的技术方案。
33.参考图1,本技术实施例的视觉语言识别方法,包括:
34.步骤s101,获取唇部区域帧序列图片集。
35.本公开应用于工业互联网智能监控相关领域,实现视觉语言识别的设备通常外接或者内置有二维摄像头,这些二维摄像头通常具有能够捕捉目标人脸面部画面的传感器,人脸面部画面捕捉设备通过二维摄像头实时获取包含目标人脸面部画面的图像帧序列,获取多帧目标人脸面部画面的图像,例如,通过python-cv2开源包将17712个视频分解成相应的唇部区域帧序列。
36.在一些实施方式中,获取到的包含目标人脸面部画面的图像中可能存在缺乏唇部区域画面情况,在这种情况下,可以通过dlib库来检测所有包含目标人脸面部画面的图像,去除不包含目标人脸面部画面的图像。
37.进一步地,在一些实施方式中,参考图2,在步骤s201中,可以对包含目标人脸唇部画面的图像进行唇部定位,切割出固定大小、固定位置的包含唇部关键点的唇部区域帧序列图片集。
38.在一些实施方式中,可以根据唇部区域的特殊位置来对包含目标人脸面部画面的图像进行唇部关键点的标识,例如目标人脸唇部与其它无关的分界点。参考图2,在步骤s202中,根据目标人脸唇部与其它五官的分界点进行标识,从而得到目标人脸唇部的关键点图例,具体包括:通过dlib库检测包含目标人脸面部画面的图像中的68个点,作为基准点来裁剪唇部区域,例如,以第51点、53点、57点、59点的唇部中心点作为基准点,以第4点、第9点、第34点、第14点的面部定位点作为完整唇部区域基准点,可以准确将唇部区域从面部五官区域切割分离出来。
39.需要说明的是,每个定位点都可以根据其编号对应唯一的基准点。
40.步骤s102,对所述唇部区域帧序列图片集中的唇部区域帧序列图片进行随机调整,得到多样唇部区域帧序列图片集。
41.例如,在确定唇部区域帧序列图片集后,使用python开源包image对象对唇部区域帧序列图片集中的唇部区域帧序列图片进行水平翻转和随机亮度调整,以强化唇部区域帧序列图片的视觉效果,需要说明的是,优选在0.2-0.5的范围内进行随机亮度调整。对唇部区域帧序列图片集中的唇部区域帧序列图片进行随机像素点位移,使用随机函数来选择并随机删除唇部区域帧序列图片中的某1帧,随机位移唇部区域帧序列图片集的整体帧序列,以丰富唇部区域帧序列图片集的多样性,提高其识别过程的抗干扰能力。
42.步骤s103,将所述多样唇部区域帧序列图片集输入到预先搭建的视觉语言识别模型,得到强化唇部向量数据集。
43.对于现有的视觉语言识别基线模型,其视觉语言识别过程如图3所示,包括:
44.步骤1,将唇部区域帧序列图片集输入到伪三维卷积残差网络进行唇部特征提取,得到唇部特征向量。
45.步骤2,将唇部特征向量输入到双向循环神经网络,对唇部特征向量进行时序建模,得到时序唇部特征向量。
46.步骤3,利用集束搜索,对时序唇部特征向量进行解码,得到唇语识别结果。
47.参考图4,为本技术实施例的视觉语言识别方法的视觉语言识别模型示意图。本技术实施例的视觉语言识别模型采用了伪三维卷积残差网络模块401(pseudo-3d residual networks),其中,如图5所示,每个残差网络层之间通过3
×3×
1和1
×1×
3的伪三维卷积层来进行特征提取,伴随着bn(批量归一化层)和relu(非线性激活层)来减少模型参数,更好地学习特征。每一个大层采用不同数量的网络结构连接,可以在不同尺寸之下学习特征。
48.进一步地,对所述多样唇部区域帧序列图片集进行若干次全局特征和局部特征叠加,以加强所述多样唇部区域帧序列图片集的全局特征与局部特征的关联性,得到第一唇部特征向量数据集。
49.在一些实施方式中,如图4所示,在视觉语言识别基线模型的基础上,引入局部特征增强模块402,提取局部特征和全局特征,全局特征是所有局部特征凝练之后的特征,通过每一层全局特征和局部特征之间的相互影响,让模型在学习的过程中能够更加考虑到全局性,从而通过增强局部特征的方式来实现了整体特征空间上更强的表征能力。如图6所示,为本技术实施例的视觉语言识别方法的局部特征增强模块示意图。多样唇部区域帧序列图片集通过平均全局池化形成了全局特征。在后续的每一个lgd层(local and global duffision,全局和局部相互传播)中,对多样唇部区域帧序列图片集进行若干次全局特征和局部特征叠加,得到第一唇部特征向量数据集。具体地:
50.下一层的全局特征由上一层的全局特征和上一层的局部特征组合而成。
51.传播方式为:
[0052][0053]
其中,代表第n层的全局特征,1d-conv代表一维卷积,代表第n-1层的全局特征,gap为全局平均池化,conv代表卷积,代表第n-1层的局部特征。
[0054]
上一层的全局特征采用了1
×
1卷积核来加强全局特征之间联系,加上全局平均池化之后凝练的上一层的各局部特征,可以很好地达到局部特征到全局特征的传播过程。
[0055]
下一层的局部特征由上一层的局部特征和这一层的全局特征组合而成,传播方式为:
[0056][0057]
其中,其中代表第n层的局部特征,resnet_conv代表原resnet内部的卷积方式,upsampling代表上采样操作,代表第n层的全局特征。
[0058]
上一层的局部特征通过resnetblock之后,进一步提取信息。这一层的全局特征综合了这一层的全局信息,经过上采样操作之后添加到这一层的局部特征之中。这样的设计完成了全局特征到局部特征的传播过程,利用每一层的全局特征来影响对应层的局部特征图。
[0059]
进一步地,对所述多样唇部区域帧序列图片集进行光流时序特征提取,得到第二唇部特征向量数据集。
[0060]
在一些实施方式中,如图4所示,在视觉语言识别基线模型的基础上,引入光流提取时序特征模块403,光流(opticalflow)是空间运动物体在观察成像平面上的像素运动的瞬时速度。引入光流提取时序特征模块是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。通常将二维图像平面特定坐标点上的灰度瞬时变化率定义为光流矢量,进而得到光流特征矩阵。具体地:
[0061]
光流提取时序特征模块的主要结构是flowc结构。公式为:
[0062]
c(x1,(d1,d2))=∑f(x1,(0,0))
·
f(x1,(d1,d2))
[0063]
(d1,d2)∈[-k,k]
×
[-k,k]
[0064]
其中x1代表某点,c(x1,(d1,d2))代表x1到(x1 d1,x1 d2)的光流特征值。f(x1,(0,0))代表x1点的局部特征图,[-k,k]
×
[-k,k]代表(d1,d2)的活动范围。
[0065]
当局部特征较小位移、保持不变、能够被有效分解的情况下,相邻特征的局部光流特征矩阵通过点乘之后达到最大值,得到光流特征向量数据集。从而用于表征光流,体现出特征运动的时序性。
[0066]
进一步地,将第一唇部特征向量数据集与第二唇部特征向量数据集进行特征融合,得到第三唇部特征向量数据集。
[0067]
进一步地,对第三唇部特征向量数据集进行时序建模,加强第三唇部特征向量数据集中的每一个数据与其前一数据和后一数据的时间联系,得到强化唇部向量数据集。
[0068]
在一些实施方式中,采用隐藏层单元个数为256、层数为2的双向循环神经网络模块404(bi-gru),对第三唇部特征向量数据集进行建模,学习时间序列上的依赖关系,加强第三唇部特征向量数据集中的每一个数据与其前一数据和后一数据在的时间联系。
[0069]
步骤s104,对强化唇部向量数据集进行序列解码,得到最优解序列,将最优解序列翻译成相应文字,得到视觉语言识别结果。
[0070]
在本步骤中,集束搜索在广度优先的基础上对搜索空间进行了优化。利用集数搜索对强化唇部向量数据集进行编码和解码,具体地,在集束搜索中,需要设定一个集束大小
(beam size)b,其表示在每一步的候选项数量,即取概率最大的b个建模单元作为候选序列。
[0071]
在一些实施方式中,假设当前强化唇部向量数据集的建模单元为字母,字母表中包含a、b、c三个元素,b为2,则集集束搜索编码和解码的过程为:
[0072]
如图7所示,为本技术实施例的视觉语言识别方法的集数搜索方法示意图。
[0073]
编码:步骤s701,输入为《s》(起始标志符);
[0074]
步骤s702,输出为三个字母的概率,其中选取2(b)个概率最大的字母作为当前序列候选序列,即{a}与{b};
[0075]
解码:步骤s703,将当前候选序列{a}与{b}分别与所有字母组合并计算概率,共有6组概率,选取概率最大的2(b)组序列作为当前候选序列,即{ab}与{bb};
[0076]
步骤s704,响应于预测出结束符《/s》,最终得到2(b)个最优解序列。
[0077]
在具体实施中,会出现预测候选序列和输出候选序列长度不一样的问题,可以利用损失函数来解决:
[0078]
在编码时,将强化唇部向量数据集作为样本,样本的标签为由基本建模单元组成的变长序列,其优化目标为序列中每一帧的交叉熵之和,即在序列中的每一帧完成一次分类任务,损失函数为:
[0079][0080]
其中n表示样本数,ti表示第i个样本的序列长度,k表示建模单元总个数,y
i,t,k
和p
i,t,k
分别表示第i个样本的第t帧为第k个建模单元的真实概率和预测概率。
[0081]
基于序列到序列的损失函数,反向传播可以更新视觉语言识别模型中所有参数的梯度。对于视觉语言识别基线模型来说,rnn(循环神经网络)采用teacher forcing(教师强迫)的模式来逐级更新参数。
[0082]
进一步地,消除最优解序列的结尾标识符,将消除结尾标识符后的最优序列解翻译成对应的词或字,得到视觉语言识别结果。
[0083]
在具体实施中,采用cer(字符错误率)来判断最优序列解与原始文字序列之间的差异性。计算公式为:
[0084][0085]
其中,cer代表着候选序列通过修改(m)、删除(d)、增加(i)三种方式来变成最优序列解的最少次数。可以看出,cer越低,最优序列解和原始序列之间越相近。
[0086]
需要说明的是,本技术实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
[0087]
需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定
要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0088]
基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种视觉语言识别装置。
[0089]
参考图8,所述视觉语言识别装置,包括:获取模块801、调整模块802、强化模块803以及识别模块804;其中,
[0090]
获取模块801,被配置为获取唇部区域帧序列图片集。
[0091]
调整模块802,被配置为对所述唇部区域帧序列图片集中的唇部区域帧序列图片进行随机调整,得到多样唇部区域帧序列图片集。
[0092]
强化模块803,被配置为将所述多样唇部区域帧序列图片集输入到预先搭建的视觉语言识别模型,得到强化唇部向量数据集。
[0093]
识别模块804,被配置为对所述强化唇部向量数据集进行序列解码,得到最优解序列,将所述最优解序列翻译成相应文字,得到视觉语言识别结果。
[0094]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0095]
上述实施例的装置用于实现前述任一实施例中相应的视觉语言识别方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0096]
基于同一发明构思,本技术实施例还提供了一种电子设备。该电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一实施例所述的视觉语言识别方法。图9示出了本技术实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器910、存储器920、输入/输出接口930、通信接口940和总线950。其中处理器910、存储器920、输入/输出接口930和通信接口940通过总线950实现彼此之间在设备内部的通信连接。
[0097]
处理器910可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
[0098]
存储器920可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器920可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器920中,并由处理器910来调用执行。
[0099]
输入/输出接口930用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
[0100]
通信接口940用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0101]
总线950包括一通路,在设备的各个组件(例如处理器910、存储器920、输入/输出接口930和通信接口940)之间传输信息。
[0102]
需要说明的是,尽管上述设备仅示出了处理器910、存储器920、输入/输出接口930、通信接口940以及总线950,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
[0103]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0104]
另外,为简化说明和讨论,并且为了不会使本技术实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术实施例。因此,这些描述应被认为是说明性的而不是限制性的。
[0105]
尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
[0106]
本技术实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献