python基于深度学习的唇语识别系统的设计与实现

收藏和点赞,您的关注是我创作的动力

概要

   人工智能作为三大工程之一,从上个世纪至今仍然活跃于各个行业的研究与应用之中,应时代的热潮方向,本 课题主要针对深度学习技术应用于唇语识别当中,实现词语唇语的翻译功能。唇语识别在图像处理中一直是一个富 有挑战性的课题,对于唇语识别方法的实现都各有不同,目前来看,使用深度学习的方法提取特征训练效果基本高 于传统实现方法。本文主要使用opencv对视频进行切帧,并采用Yolov5算法对数据中的人脸唇部位置进行检测和切 割,再使用3DResnet结合GRU的复合式网络对唇语图像特征提取,最后用softmax分类器将特征矩阵进行分类。为了 体现系统的完整性,本文使用Flask框架实现唇语识别的功能化,达到了网页操作下的端到端唇语识别效果。
【关键词】:深度学习; Yolo算法; 残差网络; 唇语识别; Flask框架

一、研究背景与意义

  人工智能,作为世纪三大技术之一,从上个世纪至今依然没有被替代,就可以得出结论说明人工智能技术拥有 着无与伦比的技术创新潜力。尤其是这几年深度学习技术发展迅速,AI视觉算法呈现直线式的上升,再加上硬件技 术不断成熟,目标检测、图像处理、自然语言处理和语音识别等多项技术在实际应用当中取得了优异成绩,而唇语 识别则正是图像、语音以及自然语言处理技术的结合体现。   
  唇读[1],即唇语识别,也称视觉上的语言识别,它是通过人说话时的动态唇形,来解析出具体说话的内容。在 人工智能的视觉领域中,唇语识别一直是研究者们重要的研究课题,它在许多方面有着广泛的应用价值,例如公共 安防、语音处理和影视行业等。唇语识别在过去难以研究是因为技术上一直存在着许多问题,但是在近十年,随着 神经网络等深度学习技术的不断发展,唇语识别技术研究进展得到了质的飞跃。自1976年McGurk等人提出麦格克效 应[2]后,国内外就出现了大量的研究者展开了对唇语识别技术的研究。在这40多年的研究过程中,各种唇语识别技 术可谓是遍地开花。但是在早期的人工智能技术中,对于唇语识别的研究可以说是寸步难行,尤其是早期的存在数 据集限制条件非常多、数据量低等问题,使得唇语识别技术研究很难找到突破口去进行,导致识别的准确率非常 低。然而这种情况在近几年有了好转,深度学习的热潮同样也冲击了唇语识别研究话题,为唇语识别带来了许多新 的技术,吸引着研究者们不断的向往,随之就出现了许多基于深度学习的唇语识别技术研究。唇语识别也取得了非 常大的进展,逐渐的从限定条件的化境走向非限定甚至是自然环境中研究,让唇语识别技术焕然一新。   
  唇语识别具有开阔的应用场景,在当今社会,存在许多听力残疾患者,而唇语识别配合语音识别正是解决此问 题的关键,利用先进的人工智能技术实现人机唇语翻译识别,来帮助他们进行日常生活交流。还有在公共场合下, 想要进行秘密交流,亦可以使用唇语识别技术,实现无声交流,保护个人隐私。不仅如此,在嘈杂的环境下,当说 话声音完全被其他噪声所覆盖,这时候就需要唇语识别来辅助人们进行沟通交流,方便高噪声场合下的人交谈。综 上所述,唇语识别应用广泛,研究唇语识别技术所具有的意义也重大非凡。

二、项目技术理论

2.1 残差网络ResNet

   神经网络到目前为止技术发展的相当成熟,随着深度学习的热度飙升,科研人员一直在不断的尝试创造新的算 法来优化神经网络,为智能化时代持续地推进着。而卷积神经网络CNN则是当今最主流的神经网络之一,它依靠卷积 层和池化层对数据进行下采样提取特征,很大程度的使网络学习到了更重要的参数,至今依然适用于图像、语音、 文字处理等领域。

  ResNet[21](Residual Neural Network)由微软研究院的Kaiming He等人提出,并在ILSVRC2015比赛中取得冠 军。ResNet作为CNN中的经典网络模型,它是通过一个又一个子网络经过堆叠可以构成一个很深的残差网络。实验结 果表明,网络越深它获取的信息越多,学习到的特征也就越多。但是神经网络往往随着层数的加深,优化效果反而 越差,测试数据和训练数据的准确率反而降低了。这很大程度是因为网络的加深会造成梯度爆炸或者梯度消失的问 题,而残差网络就是解决此问题而诞生的。其核心就是利用残差模块,通过子网络跳连的方式构造出一个多层的神 经网络,如图2-1所示。
  在这里插入图片描述

图2-1 残差块结构   
   通过这中跳连模块,可以将前一层输入与输出进行维度上升后再相加,一般升维操作使用的是全0填充或者1×1 卷积。此操作能够保证下一层网络仍然是目前最优状态,巧妙地解决了网络退化问题。在ResNet网络的构建当中, 大量使用这种残差模块,构建深度达到几十层甚至上百层网络,其规模大到一定程度的时候,网络所具有的表达能 力就越强。一般来说,ResNet深层网络往往比浅层效果更好,但有时候出于计算成本考虑,选用合适的网络层数有 时候对于整个神经网络而言才是最优抉择。
  通过这中跳连模块,可以将前一层输入与输出进行维度上升后再相加,一般升维操作使用的是全0填充或者1×1
卷积。此操作能够保证下一层网络仍然是目前最优状态,巧妙地解决了网络退化问题。在ResNet网络的构建当中,
大量使用这种残差模块,构建深度达到几十层甚至上百层网络,其规模大到一定程度的时候,网络所具有的表达能
力就越强。一般来说,ResNet深层网络往往比浅层效果更好,但有时候出于计算成本考虑,选用合适的网络层数有
时候对于整个神经网络而言才是最优抉择。

2.2 门控循环单元GRU

  GRU[22](Ga

【资源说明】 基于python实现面部表情动作迁移及形同步源码+操作说明.zip 使用 First Order Motion 进行人脸表情/动作迁移 First Order Motion 的任务是图像动画/Image Animation,即输入为一张源图片和一个驱动视频, 源图片中的人物则会做出驱动视频中的动作。如下图所示,源图像通常包含一个主体,驱动视频包含一系列动作。 使用 Wav2Lip 形合成 Wav2Lip 实现的是视频人物根据输入音频生成音同步的人物形,使得生成的视频人物口型输入音同步。 Wav2Lip 不仅可以基于静态图像来输出目标音匹配的形同步视频,还可以直接将动态的视频进行形转换,输出目标音匹配的视频。 Wav2Lip 实现音精准同步突破的关键在于,它采用了形同步判别器,以强制生成器持续产生准确而逼真的部运动。 此外,它通过在鉴别器中使用多个连续帧而不是单个帧,并使用视觉质量损失(而不仅仅是对比损失)来考虑时间相关性,从而改善了视觉质量。 Wav2Lip适用于任何人脸、任何言,对任意视频都能达到很高都准确率,可以无缝地原始视频融合,还可以用于转换动画人脸。 1. 假设用户已经熟悉 docker 并且已经正确安装 docker,执行以下步骤,开箱即用(浏览器输入:http://localhost:8899) ``` # 1. pull image & run container ./start_dev.sh # 2. 进入 container 运行时环境 docker exec -it dev bash # 3. 启动 notebook ./start_jupyterlab.sh ``` 2. 在浏览器中打开 `jupyterlab` 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载,沟通交流,互相学习,共同进步!
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值