读手语图像识别论文笔记_cungudafa的博客-程序员秘密_手语识别

技术标签: # 机器视觉  算法  python  机器学习  计算机视觉  人工智能  

1.手语识别背景

​ 根据世卫组织最近的一项报道表明,在全球有超过10亿的残疾人,就聋哑人占残疾人口的10%。截止2013年末,据第六次全国人口普查我国总人口数,及第二次全国残疾人抽样调查我国的残疾人口达8502万人,其中听力残疾2054万人,语言残疾130万人,这些人中只有少部分只听力或语言障碍,大多数人完全失去了与健康人类正常沟通的能力,手语则是他们唯一的交流方式。手语是聋哑人和听障人群的日常交流中自然发展出来的语言,是聋哑人间的主要沟通媒介。手语是一种肢体语言,它主要以手势表达信息,通过手的手形、位置、朝向和运动轨迹即可以传递一个手语,在个别情况下,表情、眼神、唇动和身体姿态也辅助参与到手语的表达上。

​ 由于手语不是一门大众化的语言,在听觉正常的人中只有极少数人会使用或理解手语,即使在聋哑人群体中,标准化手语的普及率也很低,不同聋哑人群体使用的手语往往有很大区别,存在很严重的方言现象,由于环境差异,可能会有使用不同的表达方式,所以手势通常是一个不太明确的概念,有时手势表达的含义在不同情境下承载的信息是不同的。那么将手语转换成声音和图像并被人们轻易理解就变得很有实用价值,使正常人能通过机器的翻译“看懂”手语,利用相关语音识别合成技术将文字或语音合成出手语,帮助聋哑人“听出”声音。

2.国内外现状

​ 从研究方法与技术应用中将手语识别技术大致分为两大主流:基于数据手套的手语识别和基于视觉的手语识别。基于数据手套的手语识别系统其实是一个多传感器融合系统,通过对手的角度信息、运动轨迹与时序信息融合处理来分类识别的系统。该系统能精确获取手的信息且识别性高,适合种类多的手语识别;但是使用时需要穿戴笨重的传感设备,这严重影响了人机交换的易用性和自然性,并且设备成本高,在实际生产生活中使用非常不便,难以批量使用。相对而言,基于视觉的手语识别是利用摄像头获取手语的二维图像或者视频,然后利用图像处理,机器学习等先关领域的算法进行手语的识别,该系统更加贴近社会的需求,最适合人机交互。但相对的,该模式手语识别系统很难实现手语特征提取的精确性以及很难有统一的手语识别方法等。因此通过视觉的手语识别系统存在识别率低、实时性差、适用性低的缺陷。

​ 对手语识别技术的研究最早产生于国外,1983年,美国电话电报公司的G.J.Grimes取得了“数字数据输入手套接口设备”的专利。该设备能识别72个单字字母,被认定是最早进行手语识别研究的人。1995年,美国麻省理工学院对本国连续手语识别进行研究。提取手语的手形、方向与运动轨迹作为多特征,然后利用隐马尔可夫进行跟踪识别。识别时要求佩戴有色手套。对组成的40个连续句子进行试验验证,正确率为91.3%。随后对句子给予相应语法约束后,识别率达到98%。2010年,日本Morpho公司研究出一项通过人脸寻找附近的手势进行动作识别,并对电视进行控制的人机交互技术。随后推出一款名为3D手势遥控器,利用手势的动作来达到遥控的功能。

​ 目前,国内对基于视觉的手语识别研究还较少,主要集中在对简单的手势识别研究上。1995年,哈尔滨工业大学的吴江琴、高文对手语识别系统进行了分析与研究,提出了利用数据手套采集手语的方向、位置、形状等信息,通过人工神经网络和隐马尔科夫相结合的方法实现手语识别方法,从而实现了对13个静态手势的识别以及简单的动作识别。2009年,西安建筑大学的郭彩龙等人针对如何提高手语识别率,通过研究图像的傅里叶描述子的平移、缩放、旋转不变性的特征,研究出一种基于傅里叶描绘子的中国静态识别算法。采用Sobe检测边缘,随后获取边缘的傅里叶系数作为特征量,最后利用欧式距离的模板匹配算法进行识别,识别率达到96.2%。2013年,西南科技大学的林水强等人针对如何实现自然手语识别交互,提出一种基于几何特征的手势识别方法。采用多序列背景模型、肤色跟踪与几何形状相结合的分割算法提取手势。随后利用动态帧方法获取多个几何特征用于决策树进行分类识别。对规定的6种手势进行测试,合格率达94%。

图中只记录了部分相关研究。

3.关键词

手语类型分类:

​ 静态手语识别、孤立词手语识别、大规模连续动作手语识别

研究方式分类:

​ 基于数据手套和传感器识别系统、基于视觉图像处理识别系统

上述涉及相关算法:

隐形马尔科夫算法(HMM)、人工神经网络、傅里叶描述子算法、Sobe边缘检测、欧式距离、决策树、肤色聚类算法与Harr特征检测算法、人体骨骼匹配算法、KNN临近算法

3.1特征值

  • 隐形马尔科夫算法(HMM)

    隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。是在被建模的系统被认为是一个马尔可夫过程与未观测到的(隐藏的)的状态的统计马尔可夫模型。

  • 傅里叶描述子算法

    傅立叶描述子是分析和识别物体形状的重要方法之一。利用基于曲线多边形近似的连续傅立叶变换方法 计算傅立叶描述子,并通过形状的主方向消除边界起始点相位影响的方法,定义了新的具有旋转、平移和尺度不变 性的归一化傅立叶描述子。与使用离散傅立叶变换和模归一化的传统傅立叶描述子相比,新的归一化傅立叶描述 子同时保留了模与相位特性,因此能够更好地识别物体的形状。

    图片源文链接:OpenCV-python提取特征(批量处理数据)

  • Sobe边缘检测

    索贝尔算子(Sobel operator)是图像处理中的算子之一,主要用于边缘检测。在技术上,它是一离散型差分算子,用来运算图像亮度函数的梯度之近似值 。在图像的任何一点使用此算子,将会产生对应的梯度矢量或是其法矢量。

    opencv sobe 边缘检测算子

  • 肤色聚类算法与Harr特征检测算法

    肤色检测算法:RGB、Ycrcb之cr分量+otsu阈值化、YCrCb、HSV、基于椭圆皮肤模型的皮肤检测
    opencv自带肤色检测类AdaptiveSkinDetector等都是设定皮肤颜色的范围,再将其过滤出来,不同的是过滤的过程在不同的颜色空间下进行的。

    Haar分类器实际上是Boosting算法的一个应用,Haar分类器用到了Boosting算法中的AdaBoost算法,只是把AdaBoost算法训练出的强分类器进行了级联,并且在底层的特征提取中采用了高效率的矩形特征和积分图方法

  • 人体骨骼匹配算法

    基于骨架匹配的轮廓线提取方法可以生成静态图像中人体的轮廓线图。在图像中找到可以表征人体骨架的骨架关键点,通过骨架关键点,利用图像中各像素点所包含的边缘信息,结合人体形态学先验知识,构建了隐马尔科夫模型来匹配人体上对应骨架关键点的边缘关键点,少量的边缘关键点即可生成人体大致轮廓。

3.2分类决策

  • 欧式距离

    欧式距离也称欧几里得距离,是最常见的距离度量,衡量的是多维空间中两个点之间的绝对距离。也可以理解为:m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。

    这里引用是用保存的已知手势特征点和预测手势图像特征点求取欧式距离再取均值,欧式距离越小,手势匹配度越高。

  • 人工神经网络

    人工神经网络,也就是ANN(Artificial Neural Network),它是模拟人类大脑处理信息的生物神经网络所产生出来的一种计算模型。而它主要用于机器学习的研究与调用,例如语音识别,计算机图像处理,NLP等。

    通过前面不同手势保存的特征点,对不同手势进行学习,由已知手势预测新的手势。

  • 决策树

    决策树是一种机器学习的方法。决策树的生成算法有ID3, C4.5和C5.0等。决策树是一种树形结构,其中每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果。

  • KNN临近算法

    近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。


引用:

[1] 江勇军. 基于Kinect的孤立词手语识别系统研究[D]. 2015.

[2] 刘伟康. 基于Kinect的静态数字手语识别研究及系统实现[D]. 2016.

[3] 孙丽娟. 基于边缘梯度方向直方图的中国静态手语识别[D]. 2009.

[4] 武红娇. 复杂背景下的静态手语识别技术研究[D].

[5] 丽娟. 基于边缘梯度方向直方图的中国静态手语识别[D]. 2009.

[6] 韩宁江. 基于深度学习的手语识别方法研究[D].

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cungudafa/article/details/104717307

智能推荐

PHP生成带二维码的分享图片_ZhiHuaWei的博客-程序员秘密

综述项目开发中需求,要求在APP中进行分享的时候可以分享图片,图片由美工进行设计,其上带有二维码,分享给别人可以直接长按图片进行识别。这种方式在分享中用户体验更好,首先图片由美工设计很好看,其次这种方式比单单的分享出去一个链接更能吸引人。总之将实现过程进行记录。准备首先要美工设计的分享海报效果图,根据海报效果图标注获取图片模板(如下所示)。代码<?php/** ...

1..NET 编程语言C#_sj2017的博客-程序员秘密

1.什么是.net? *.net,首先是一个开发平台,它定义了一种公用语言子集,这是一种为符合其规范的语言与类库之间提供无缝集成的混合语。.net统一了编程类库,提供了对下一代网络通信标准,可扩展标记语言的完全支持,使应用程序的开发变得更容易、更简单; 简而言之,.net是一种面向网络、支持各种用户终端的开发平台环境。* 2.简要说明.net的战略意义

cesium事件简单全面描述_曹天骄的博客-程序员秘密_cesium事件机制

我在开发中,需要一个功能,时时获取经纬度和相机角度。需要对cesium中对事件实现监听。cesium事件主要几大类类型:1、鼠标事件:ScreenSpaceEventType2、键盘事件:KeyboardEventModifier3、相机事件:CameraEventType事件之间可以通过组合形成复杂事件,比如下面代码// 监听拖拽export function monitorD...

jquery/ajax in jsp_jifengjifeng1988513的博客-程序员秘密

jQuery/AJAX in JSP  (last updated: Oct 5, 2009) — printSelect font size:    8pt   9pt   10pt   11pt   12pt   14pt   16pt  --- select a section --- JavaScript Toolkits & AJAX Test

Resnet 残差神经网络代码解读_chenshuiyan的博客-程序员秘密_残差神经网络代码详解

Resnet 残差神经网络代码解读代码根据torchvision.models中的源码Resnet结构resnet由building block和bottleneck组成,building block的结构如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mX685LFt-1573127450871)(D:\csy\学习\笔记\assets\image-2...

随便推点

Anti防御和高防服务器的区别在哪里?_扣2885630933防的博客-程序员秘密

一:Anti防御是什么?Anti是针对客户端在遭受大量的DDOS后不可用的情况下推出的付费增值服务 用户可通过自行配置Anti防御 将攻击的量引流到Anti防御的节点上 保障游戏的稳定性二:和高防服务器的区别在哪?高防服务器是默认的防御机制Anti防御是根据不同的攻击类型和攻击大小做出相对应的防御方案三:怎么防御攻击?使用Anti防御可以隐藏服务器IP 无论是攻击还是玩家都必须先经过A...

java生成大素数_重复造轮子之RSA算法(一) 大素数生成_樱红蕉绿的博客-程序员秘密

出于无聊, 打算从头实现一遍RSA算法第一步, 大素数生成Java的BigInteger里, 有个现成的方法public static BigInteger probablePrime(int bitLength, Random rnd) {bitLength是期望生成的素数的二进制位数, rnd是随机数发生器函数注释表明, 这个方法的返回值为合数的概率为2^-100生成100个1024位的素数,...

U3D Distortion_songchao_xx的博客-程序员秘密

我们的美术希望游戏可以更炫一点,想在刀光特效上加上空气扭曲的效果,就是类似燃烧的火焰上方空气扰动的那种效果。这个效果其实很多游戏都有。网络上流传的有一个叫heat_distortion的shader,这个shader使用grabTexture实现的,实现方法很多人都讲过,这里就不细说了。grabTexture比较坑爹,在移动设备上效率很成问题,而且有些机型也不支持,所以我们需要用其他办法实现。

format函数使用matlab,Matlab基本函数-format函数_weixin_39612677的博客-程序员秘密

1、format函数:控制输出、显示格式2、用法说明format 缺省格式,同short。Matlab中常用的显示格式有:(1)format short表示5位近似定点数(2)format long 15位近似定点数(3)format hex 十六进制表示(4)format bank 银行格式,固定元和分(5)format rat 最小证书比例(分数)表示3、用法举例>> pians ...

php实现mpg自动提取音轨,视频如何导出音轨 怎么将双音轨mpg提取其中一个音轨保存..._自然语言处理老白的博客-程序员秘密

前段时间有小伙伴问小编怎么提取分离双音轨mpg视频文件,嗯,这个问题问得好,小编得好好研究一下!毕竟小编平时时间都花在视频画面效果的操作上了,于是通过查找了解到双音轨视频就是在视频中封装了两条音轨,像我们在网上下载的一些视频中,可以通过切换音轨达到中英文音频切换,或者是原声伴奏切换等的效果。既然是在一个视频文件中有两条音轨,那么肯定是有办法把它们提取出来的。小编这里有一个mpg格式的双音轨视频,接...

洛谷P4779_qq_38589820的博客-程序员秘密

洛谷P4779Dijskra算法+堆优化,但是数据有点大,不能用邻接矩阵储存,用邻接表。好了,其他也没什么可说的了。这篇题解呢,是大量利用STL的,要是看不懂STL的请移步至其他题解//根据数据范围(以P4779为准,这个代码两题通用),我决定采用Dijskra的堆优化 #include<iostream>#include<cstdio>#include<...

推荐文章

热门文章

相关标签