YOLOv5 的妙用:学习手语,帮助听力障碍群体
本文经机器之心(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 的妙用:学习手语,帮助听力障碍群体相关推荐
- YOLOv5的妙用:学习手语,帮助听力障碍群体
选自Medium 作者:David Lee 机器之心编译 编辑:魔王.杜伟 计算机视觉可以学习美式手语,进而帮助听力障碍群体吗?数据科学家 David Lee 用一个项目给出了答案. 如果听不到了,你 ...
- 超赞!YOLOv5的妙用:学习手语,帮助听力障碍群体
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:计算机视觉联盟 计算机视觉可以学习美式手语,进而帮助听力 ...
- yolov5论文_YOLOv5的妙用:学习手语,帮助听力障碍群体
编辑:魔王.杜伟 计算机视觉可以学习美式手语,进而帮助听力障碍群体吗?数据科学家 David Lee 用一个项目给出了答案. 如果听不到了,你会怎么办?如果只能用手语交流呢? 当对方无法理解你时,即使 ...
- 奔四的听力障碍码农,被开除15次,面试被拒200+次,还要继续干下去吗?
丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 都说码农这个职业,到了35岁就得思考出路. 而今天思考这个问题的码农比较特殊,他不仅年龄已经超过35岁,还患有听力障碍. 这就意味着他在某些 ...
- GeneDock协助诊断基层地区的听力障碍儿童 #科技有温度#
基因诊断 让先天性耳聋的孩子聆听世界 耳聋是一大类遗传性疾病,先天性耳聋不仅严重影响患者生活质量,且治疗与康复训练成本昂贵,我国作为世界人口大国,所面临的聋病问题尤为突出.GeneDock与西南医院合 ...
- 论文学习|基于少镜头学习的毛果杨群体叶片性状分析
关于原文 Few-Shot Learning Enables Population-Scale Analysis of Leaf Traits in Populus trichocarpa 基于少镜头 ...
- 奔四的听力障碍码农,被开除15次
本文转载自量子位 都说码农这个职业,到了35岁就得思考出路. 而今天思考这个问题的码农比较特殊,他不仅年龄已经超过35岁,还患有听力障碍. 这就意味着他在某些场景下的沟通会受到严重影响. 也正因如此, ...
- 【b站雅思笔记】Charlie有好好学习 - 雅思听力
〇.前情提要 最近备考雅思,学习一下前人经验. 参考: 手把手教你做地图题 | 雅思听力地图题 https://www.bilibili.com/video/BV1Pp4y167sM?t=1331 手 ...
- yolov5模型ncnn转换学习
教程1 NCNN Yolov5 Android apk开发记录 https://zhuanlan.zhihu.com/p/266130778 pytorch代码: 运行测试: python detec ...
最新文章
- POJ 2226 Muddy Fields 最小点覆盖+加建图(好题)
- python 字符串前加r和f
- Android系统匿名共享内存Ashmem(Anonymous Shared Memory)驱动程序源代码分析
- HDOJ2072解题报告【字典树】
- Gitlab添加SSH密钥的解决办法
- C++ STL 容器之queue
- vue实现监听滚动条
- 计算机程序制作的小作品,义乌市中小学生电脑作品制作比赛201203
- linux一键安装python_Linux下,一键安装python3;适用于Centos、Debian、Ubuntu等
- USACO 之 Section 2.3 (已解决)
- 彻底删除0KB顽固文件或文件夹的方法
- [转]wxParse-微信小程序富文本解析组件
- vs附加其它计算机应用到进程,如何将VS代码附加到在docker容器中运行的节点进程...
- OpenStack Orchestration service (编排服务Heat)
- fastreport调用frf文件直接打印_打印日志时 Logback 内部都做了些什么
- JavaScript实现拖动滑块拼图验证(html5、canvas)
- linux 下 packet_mmap 前篇 (抓包实现)
- windows上qt5.9下载安装教程
- android 最火框架,一个牛逼哄哄的Android框架One,秒杀最火的Xutils
- css3缓慢出现,让CSS3旋转开始缓慢然后结束缓慢?
热门文章
- Matlab--获取300dpi或600dpi图形插入word2010中
- Opencv--从CalibrateCamera到SolvePnp(二)
- VC++ 6.0(英文正版)安装及其编译注意事项
- 知识图谱入门2-1:实践——基于医疗知识图谱的问答系统
- JavaEE 搜索解决问题集合---会不断更新的
- 内存管理检查方法和工具
- mysql 内部安全性_MySQL数据库的内部以及外部安全性简介
- 计算机游戏无法运行程序包,一体电脑显示或声音不正常,某些软件或游戏无法正常运行怎么办...
- 2 找图像连通域_MATLAB--数字图像处理 简单人脸识别
- access订单明细表怎么做_图书销售订单明细表 (4)