一种手语识别和翻译方法与流程

    专利2022-07-08  126


    本发明涉及手语识别和翻译技术领域,尤其涉及一种手语识别和翻译方法。



    背景技术:

    手语是一种聋哑人执行的肢体语言表达方式,由于其本身的局部性、细节性和复杂性,同时又受到光照、背景等影响,使用传统模式识别或机器学习方法所能达到的精度与鲁棒性已达到瓶颈期,往往局限于静态手势识别、单词级手势识别或粗粒度的动态手势识别,而现存的基于深度学习的方法往往模型庞大,必须依托专用物理设备才能运行,且实时性低、易用性差、价格昂贵。

    针对前述问题,我们发明了此款连续型手语翻译程序。这款手语翻译程序可以对较复杂场景下的手语手势实时翻译,不仅保证了翻译的精度,还还可以在安装在手机等轻量型终端中。该手语识别和翻译技术可用于手语翻译、日常交流、研发手语教学机器人,促进手语教学、培训和推广,可以拓宽到其他手势指令相关的领域,如交警手势识别、军事手势识别及智能家电控制等。

    根据手语获取方式的不同,分为基于数据手套和基于视觉的手语识别,前者可以实时采集手势的3维运动信息和时序变化,然后应用识别算法进行处理,识别速度快,准确率高,但是设备复杂,价格昂贵,且对操作者有约束,佩戴不方便,因此基于视觉的手语识别成为主流。

    目前基于视觉的手语识别技术的主流思路一般是先通过卷积网络提取特征,再用rnn(recurrentneuralnetwork,循环神经网络)类神经网络解码序列,最后用ctc(connectionisttemporalclassification,连接主义时间分类器)等作为损失函数对模型训练优化。《手语识别方法、装置、计算机可读存储介质和计算机设备》是深圳腾讯公司在2019年7月申请的一项专利,已经公布的专利号201910650159.0,该方法的流程大致是这样的:获取待识别的手语视频,从手语视频的各帧图像中提取手势特征,提取手语视频的各帧图像的手势变化特征,从手势特征与手语变化特征之间的融合特征中提取手语词信息,按照手语词信息对应的语境信息,将手语词信息组合成手语语句。该方法使用的模型框架:2dcnn 3dcnn、lstm、blstm(bidirectionallongshort-termmemoryrnn)和ctc。《spatial-temporalmulti-cuenetworkforcontinuoussignlanguagerecognition》(用于手语识别的多线索网络)是中国科学技术大学在2020年二月发表的一篇学术论文,该方法的特点是对手语视频的空间和时间特征先后建模,并融合了全帧、手部、位姿和脸部等四个线索的特征,然后利用blstm和ctc进行序列学习。该模型同样达到了不错的效果。但是以上是两个手语识别领域的最新技术,值得注意的是,这两个技术模型相对庞大,对设备的算力要求较高。为此,本发明提出一种手语识别和翻译方法来解决以上问题。



    技术实现要素:

    本发明的目的是为了解决背景技术中存在的缺点,而提出的一种手语识别和翻译方法。

    为了实现上述目的,本发明采用了如下技术方案:

    一种手语识别和翻译方法,包括特征提取模块、序列学习模块、损失优化模块和解码模块,所述特征提取模块主要负责先后提取每个视频帧的静态特征和相邻帧的连续特征,其中提取到的静态特征主要是人体上肢手语相关的8个关键点特征和以手部动作为主、脸部表情为辅的全帧特征,提取到的连续特征主要是若干帧之间的手语词连续性信息,所述序列学习模块主要包含了两层blstm网络,该模块负责学习特征序列的连续性信息,所述损失优化模块包含关键点损失和ctc损失,所述关键点损失函数采用距离回归函数smooth-l1,所述解码模块采用beamsearch解码器,采用prefixbeamdecoder算法;

    手语识别和翻译方法包括以下步骤:

    步骤1,用户打开软件,用手机摄像头对准手语者,软件界面有人形框收集便于用户对准手语者;

    步骤2,摄入录像后,程序对录像采样,并截取为固定大小的图像;

    步骤3,然后将图像送入特征提取模块中提取特征,这一步输出一个特征序列;

    步骤4,将特征序列输入序列学习模块中学习时间维度的序列特征;

    步骤5,将学习到的特征序列输入到解码模块中,得到翻译的句子,将句子输出到软件的语句框中。

    优选的,所述特征提取模块包括骨干网络,所述骨干网络选择resnet18,resnet18检测的输入采用的是第三层基本网络层的输出特征图,在关键点检测部分,采用两层反卷积将特征图上采样后,加入卷积核大小为1*1的二维卷积,来将特征图的维度降为8,并用soft-argmax算法提取出8个关键点:两个手腕、两个肘部、两个肩部、额头和脖子,8个关键点构成一个向量,然后使用全连接层将特征向量扩维,与骨干网络的向量连接。

    优选的,所述序列学习模块采用了两层的blstm网络来学习手语视频的时序特征,时序特征为手语的动态手势。

    优选的,所述解码和损失优化模块中,采用ctc分类器作为优化损失函数,采用smooth-l1函数作为关键点匹配损失函数,所述优化损失函数和关键点匹配损失函数相加作为最终的损失函数。

    优选的,所述序列学习模块采用prefix-beam-search算法对序列学习模块的输出序列进行解码,得到预测的翻译句子,并在软件界面的语句框中实时展现。

    与现有技术相比,本发明的有益效果是:

    本发明添加了关键点特征学习部分选择的关键点有8个,其中额头关键点和脖子关键点用来检测头部运动,提高了特定场景下的手语翻译的精度。

    本发明联合优化损失策略、关键点损失优化函数和ctc损失函数相加作为最终损失函数的损失优化策略,可以直接安装在手机上实时运行,这将不仅仅可以提高产品的易用性,还可以大大减小手语翻译的应用和推广成本。

    附图说明

    图1为本发明提出的特征提取模块的结构示意图。

    图2为本发明的执行流程图。

    图3为本发明提出的网络架构的执行流程图。

    具体实施方式

    下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

    参照图1-3,一种手语识别和翻译方法,包括特征提取模块、序列学习模块、损失优化模块和解码模块,所述特征提取模块主要负责先后提取每个视频帧的静态特征和相邻帧的连续特征,其中提取到的静态特征主要是人体上肢手语相关的8个关键点特征和以手部动作为主、脸部表情为辅的全帧特征,提取到的连续特征主要是若干帧之间的手语词连续性信息,所述序列学习模块主要包含了两层blstm网络,该模块负责学习特征序列的连续性信息,所述损失优化模块包含关键点损失和ctc损失,所述关键点损失函数采用距离回归函数smooth-l1,所述解码模块采用beamsearch解码器,采用prefixbeamdecoder算法;

    手语识别和翻译方法包括以下步骤:

    步骤1,用户打开软件,用手机摄像头对准手语者,软件界面有人形框收集便于用户对准手语者;

    步骤2,摄入录像后,程序对录像采样,并截取为固定大小的图像;

    步骤3,然后将图像送入特征提取模块中提取特征,这一步输出一个特征序列;

    步骤4,将特征序列输入序列学习模块中学习时间维度的序列特征;

    步骤5,将学习到的特征序列输入到解码模块中,得到翻译的句子,将句子输出到软件的语句框中。

    本实施方式中,所述特征提取模块包括骨干网络,所述骨干网络选择resnet18,resnet18检测的输入采用的是第三层基本网络层的输出特征图,在关键点检测部分,采用两层反卷积将特征图上采样后,加入卷积核大小为1*1的二维卷积,来将特征图的维度降为8,并用soft-argmax算法提取出8个关键点:两个手腕、两个肘部、两个肩部、额头和脖子,8个关键点构成一个向量,然后使用全连接层将特征向量扩维,与骨干网络的向量连接。

    本实施方式中,所述序列学习模块采用了两层的blstm网络来学习手语视频的时序特征,时序特征为手语的动态手势。

    本实施方式中,所述解码和损失优化模块中,采用ctc分类器作为优化损失函数,采用smooth-l1函数作为关键点匹配损失函数,所述优化损失函数和关键点匹配损失函数相加作为最终的损失函数。

    本实施方式中,所述序列学习模块采用prefix-beam-search算法对序列学习模块的输出序列进行解码,得到预测的翻译句子,并在软件界面的语句框中实时展现。

    本实施方式中,方法中关键点检测的分支是从第三层基本网路块引出,方法中关键点检测的分支还可以从第四层基本网块中引出。

    本实施方式中,soft-argmax算法提取出8个关键点还可以采用更多的关键点,比如嘴巴。

    本实施方式中,序列学习模块由两个blstm网络组成,还可以更改成lstm网络或blstm和lstm的混合网络。

    本实施方式中,可变更设备除了手机之外,本方法同样可以应用于平板或其它带有摄像头和处理器的设备上。

    本实施方式中,可变更用途除了手语识别和翻译外,本方法同样可以用于手势识别、人体姿态识别等其它有人体特征的动作识别场景中。

    本发明添加了关键点特征学习部分选择的关键点有8个,其中额头关键点和脖子关键点用来检测头部运动,提高了特定场景下的手语翻译的精度。本发明联合优化损失策略、关键点损失优化函数和ctc损失函数相加作为最终损失函数的损失优化策略,可以直接安装在手机上实时运行,这将不仅仅可以提高产品的易用性,还可以大大减小手语翻译的应用和推广成本。

    以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。


    技术特征:

    1.一种手语识别和翻译方法,其特征在于,包括特征提取模块、序列学习模块、损失优化模块和解码模块,所述特征提取模块主要负责先后提取每个视频帧的静态特征和相邻帧的连续特征,其中提取到的静态特征主要是人体上肢手语相关的8个关键点特征和以手部动作为主、脸部表情为辅的全帧特征,提取到的连续特征主要是若干帧之间的手语词连续性信息,所述序列学习模块主要包含了两层blstm网络,该模块负责学习特征序列的连续性信息,所述损失优化模块包含关键点损失和ctc损失,所述关键点损失函数采用距离回归函数smooth-l1,所述解码模块采用beamsearch解码器,采用prefixbeamdecoder算法;

    手语识别和翻译方法包括以下步骤:

    步骤1,用户打开软件,用手机摄像头对准手语者,软件界面有人形框收集便于用户对准手语者;

    步骤2,摄入录像后,程序对录像采样,并截取为固定大小的图像;

    步骤3,然后将图像送入特征提取模块中提取特征,这一步输出一个特征序列;

    步骤4,将特征序列输入序列学习模块中学习时间维度的序列特征;

    步骤5,将学习到的特征序列输入到解码模块中,得到翻译的句子,将句子输出到软件的语句框中。

    2.根据权利要求1所述的一种手语识别和翻译方法,其特征在于,所述特征提取模块包括骨干网络,所述骨干网络选择resnet18,resnet18检测的输入采用的是第三层基本网络层的输出特征图,在关键点检测部分,采用两层反卷积将特征图上采样后,加入卷积核大小为1*1的二维卷积,来将特征图的维度降为8,并用soft-argmax算法提取出8个关键点:两个手腕、两个肘部、两个肩部、额头和脖子,8个关键点构成一个向量,然后使用全连接层将特征向量扩维,与骨干网络的向量连接。

    3.根据权利要求1所述的一种手语识别和翻译方法,其特征在于,所述序列学习模块采用了两层的blstm网络来学习手语视频的时序特征,时序特征为手语的动态手势。

    4.根据权利要求1所述的一种手语识别和翻译方法,其特征在于,所述解码和损失优化模块中,采用ctc分类器作为优化损失函数,采用smooth-l1函数作为关键点匹配损失函数,所述优化损失函数和关键点匹配损失函数相加作为最终的损失函数。

    5.根据权利要求1所述的一种手语识别和翻译方法,其特征在于,所述序列学习模块采用prefix-beam-search算法对序列学习模块的输出序列进行解码,得到预测的翻译句子,并在软件界面的语句框中实时展现。

    技术总结
    本发明属于手语识别和翻译技术领域,尤其公开了一种手语识别和翻译方法,现提出如下方案,包括特征提取模块、序列学习模块、损失优化模块和解码模块,所述特征提取模块主要负责先后提取每个视频帧的静态特征和相邻帧的连续特征。本发明添加了关键点特征学习部分选择的关键点有8个,其中额头关键点和脖子关键点用来检测头部运动,提高了特定场景下的手语翻译的精度。本发明联合优化损失策略、关键点损失优化函数和CTC损失函数相加作为最终损失函数的损失优化策略,可以直接安装在手机上实时运行,这将不仅仅可以提高产品的易用性,还可以大大减小手语翻译的应用和推广成本。

    技术研发人员:尹啟坊;李凌;刘云云;辜嘉
    受保护的技术使用者:深圳市热丽泰和生命科技有限公司
    技术研发日:2020.11.26
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-19671.html

    最新回复(0)