本文经机器之心(almosthuman2014)授权转载,禁止二次转载。

选自Medium

作者:David Lee

机器之心编译

编辑:魔王、杜伟

计算机视觉可以学习美式手语,进而帮助听力障碍群体吗?数据科学家 David Lee 用一个项目给出了答案。

如果听不到了,你会怎么办?如果只能用手语交流呢?

当对方无法理解你时,即使像订餐、讨论财务事项,甚至和朋友家人对话这样简单的事情也可能令你气馁。

对普通人而言轻轻松松的事情对于听障群体可能是很困难的,他们甚至还会因此遭到歧视。在很多场景下,他们无法获取合格的翻译服务,从而导致失业、社会隔绝和公共卫生问题。

为了让更多人听到听障群体的声音,数据科学家 David Lee 尝试利用数据科学项目来解决这一问题:

计算机视觉可以学习美式手语,进而帮助听力障碍群体吗?

如果通过机器学习应用可以精确地翻译美式手语,即使从最基础的字母表开始,我们也能向着为听力障碍群体提供更多的便利和教育资源前进一步。

数据和项目介绍

出于多种原因,David Lee 决定创建一个原始图像数据集。首先,基于移动设备或摄像头设置想要的环境,需要的分辨率一般是 720p 或 1080p。现有的几个数据集分辨率较低,而且很多不包括字母「J」和「Z」,因为这两个字母需要一些动作才能完成。

为此,David Lee 在社交平台上发送了手语图像数据收集请求,介绍了这个项目和如何提交手语图像的说明,希望借此提高大家的认识并收集数据。

项目地址:https://github.com/insigh1/GA_Data_Science_Capstone

数据变形和过采样

David Lee 为该项目收集了 720 张图片,其中还有几张是他自己的手部图像。由于这个数据集规模较小,于是 David 使用 labelImg 软件手动进行边界框标记,设置变换函数的概率以基于同一张图像创建多个实例,每个实例上的边界框有所不同。

下图展示了数据增强示例:

经过数据增强后,该数据集的规模从 720 张图像扩展到 18,000 张图像

建模

David 选择使用 YOLOv5 进行建模。将数据集中 90% 的图像用作训练数据,10% 的图像用作验证集。使用迁移学习和 YOLOv5m 预训练权重训练 300 个 epoch。

在验证集上成功创建具备标签和预测置信度的新边界框。

由于损失值并未出现增长,表明模型未过拟合,因此该模型或许可以训练更多轮次。

模型最终获得了 85.27% 的 mAP@.5:.95 分数。

图像推断测试

David 额外收集了他儿子的手部图像数据作为测试集。事实上,还没有儿童手部图像用于训练该模型。理想情况下,再多几张图像有助于展示模型的性能,但这只是个开始。

26 个字母中,有 4 个没有预测结果(分别是 G、H、J 和 Z)。

四个没有得到准确预测:

  • D 被预测为 F;

  • E 被预测为 T;

  • P 被预测为 Q;

  • R 被预测为 U。

视频推断测试

即使只有几个手部图像用于训练,模型仍能在如此小的数据集上展现不错的性能,而且还能以一定的速度提供优秀的预测结果,这一结果表现出了很大的潜力。

更多数据有助于创建可在多种新环境中使用的模型。

如以上视频所示,即使字母有一部分出框了,模型仍能给出不错的预测结果。最令人惊讶的是,字母 J 和 Z 也得到了准确识别。

其他测试

David 还执行了其他一些测试,例如:

左手手语测试

几乎所有原始图像都显示的是右手,但 David 惊喜地发现数据增强在这里起到了作用,因为有 50% 的可能性是针对左手用户进行水平翻转。

儿童手语测试

David 儿子的手语数据未被用于训练集,但模型对此仍有不错的预测。

多实例

尽管手语的使用和视频中有所不同,但这个示例表明当多个人出现在屏幕上时,模型可以分辨出不止一个手语实例。

模型局限性

David 发现,该模型还有一些地方有待改进。

距离

许多原始图像是用手机拍摄的,手到摄像头的距离比较近,这对远距离推断有一定负面影响。

新环境

这支视频来自于志愿者,未用于模型训练。尽管模型看到过很多字母,但对此的预测置信度较低,还有一些错误分类。

背景推断

该测试旨在验证不同的背景会影响模型的性能。

结论

这个项目表明:计算机视觉可用于帮助听力障碍群体获取更多便利和教育资源!

该模型在仅使用小型数据集的情况下仍能取得不错的性能。即使对于不同环境中的不同手部,模型也能实现良好的检测结果。而且一些局限性是可以通过更多训练数据得到解决的。经过调整和数据集的扩大,该模型或许可以扩展到美式手语字母表以外的场景。

资源

  • Yolov5 GitHub 项目:https://github.com/ultralytics/yolov5

  • Yolov5 requirements:https://github.com/ultralytics/yolov5/blob/master/requirements.txt

  • Cudnn 安装指南:https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html

  • OpenCV 安装指南:https://www.codegrepper.com/code-examples/python/how+to+install+opencv+in+python+3.8

  • Roboflow 增强流程:https://docs.roboflow.com/image-transformations/image-augmentation

  • 常用图像数据增强技术综述论文:https://journalofbigdata.springeropen.com/articles/10.1186/s40537-019-0197-0#Sec3

  • Pillow 库:https://pillow.readthedocs.io/en/latest/handbook/index.html

  • labelImg:https://github.com/tzutalin/labelImg

  • Albumentations 库:https://github.com/albumentations-team/albumentations

原文链接:https://daviddaeshinlee.medium.com/using-computer-vision-in-helping-the-deaf-and-hard-of-hearing-communities-with-yolov5-7d764c2eb614

END

备注:目标检测

目标检测交流群

2D、3D目标检测等最新资讯,若已为CV君其他账号好友请直接私信。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到  

YOLOv5 的妙用:学习手语,帮助听力障碍群体相关推荐

  1. YOLOv5的妙用:学习手语,帮助听力障碍群体

    选自Medium 作者:David Lee 机器之心编译 编辑:魔王.杜伟 计算机视觉可以学习美式手语,进而帮助听力障碍群体吗?数据科学家 David Lee 用一个项目给出了答案. 如果听不到了,你 ...

  2. 超赞!YOLOv5的妙用:学习手语,帮助听力障碍群体

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:计算机视觉联盟 计算机视觉可以学习美式手语,进而帮助听力 ...

  3. yolov5论文_YOLOv5的妙用:学习手语,帮助听力障碍群体

    编辑:魔王.杜伟 计算机视觉可以学习美式手语,进而帮助听力障碍群体吗?数据科学家 David Lee 用一个项目给出了答案. 如果听不到了,你会怎么办?如果只能用手语交流呢? 当对方无法理解你时,即使 ...

  4. 奔四的听力障碍码农,被开除15次,面试被拒200+次,还要继续干下去吗?

    丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 都说码农这个职业,到了35岁就得思考出路. 而今天思考这个问题的码农比较特殊,他不仅年龄已经超过35岁,还患有听力障碍. 这就意味着他在某些 ...

  5. GeneDock协助诊断基层地区的听力障碍儿童 #科技有温度#

    基因诊断 让先天性耳聋的孩子聆听世界 耳聋是一大类遗传性疾病,先天性耳聋不仅严重影响患者生活质量,且治疗与康复训练成本昂贵,我国作为世界人口大国,所面临的聋病问题尤为突出.GeneDock与西南医院合 ...

  6. 论文学习|基于少镜头学习的毛果杨群体叶片性状分析

    关于原文 Few-Shot Learning Enables Population-Scale Analysis of Leaf Traits in Populus trichocarpa 基于少镜头 ...

  7. 奔四的听力障碍码农,被开除15次

    本文转载自量子位 都说码农这个职业,到了35岁就得思考出路. 而今天思考这个问题的码农比较特殊,他不仅年龄已经超过35岁,还患有听力障碍. 这就意味着他在某些场景下的沟通会受到严重影响. 也正因如此, ...

  8. 【b站雅思笔记】Charlie有好好学习 - 雅思听力

    〇.前情提要 最近备考雅思,学习一下前人经验. 参考: 手把手教你做地图题 | 雅思听力地图题 https://www.bilibili.com/video/BV1Pp4y167sM?t=1331 手 ...

  9. yolov5模型ncnn转换学习

    教程1 NCNN Yolov5 Android apk开发记录 https://zhuanlan.zhihu.com/p/266130778 pytorch代码: 运行测试: python detec ...

最新文章

  1. POJ 2226 Muddy Fields 最小点覆盖+加建图(好题)
  2. python 字符串前加r和f
  3. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)驱动程序源代码分析
  4. HDOJ2072解题报告【字典树】
  5. Gitlab添加SSH密钥的解决办法
  6. C++ STL 容器之queue
  7. vue实现监听滚动条
  8. 计算机程序制作的小作品,义乌市中小学生电脑作品制作比赛201203
  9. linux一键安装python_Linux下,一键安装python3;适用于Centos、Debian、Ubuntu等
  10. USACO 之 Section 2.3 (已解决)
  11. 彻底删除0KB顽固文件或文件夹的方法
  12. [转]wxParse-微信小程序富文本解析组件
  13. vs附加其它计算机应用到进程,如何将VS代码附加到在docker容器中运行的节点进程...
  14. OpenStack Orchestration service (编排服务Heat)
  15. fastreport调用frf文件直接打印_打印日志时 Logback 内部都做了些什么
  16. JavaScript实现拖动滑块拼图验证(html5、canvas)
  17. linux 下 packet_mmap 前篇 (抓包实现)
  18. windows上qt5.9下载安装教程
  19. android 最火框架,一个牛逼哄哄的Android框架One,秒杀最火的Xutils
  20. css3缓慢出现,让CSS3旋转开始缓慢然后结束缓慢?

热门文章

  1. Matlab--获取300dpi或600dpi图形插入word2010中
  2. Opencv--从CalibrateCamera到SolvePnp(二)
  3. VC++ 6.0(英文正版)安装及其编译注意事项
  4. 知识图谱入门2-1:实践——基于医疗知识图谱的问答系统
  5. JavaEE 搜索解决问题集合---会不断更新的
  6. 内存管理检查方法和工具
  7. mysql 内部安全性_MySQL数据库的内部以及外部安全性简介
  8. 计算机游戏无法运行程序包,一体电脑显示或声音不正常,某些软件或游戏无法正常运行怎么办...
  9. 2 找图像连通域_MATLAB--数字图像处理 简单人脸识别
  10. access订单明细表怎么做_图书销售订单明细表 (4)