基于OpenCV的视障人士实时目标检测

小白学视觉

共 1730字,需浏览 4分钟

 ·

2021-07-05 07:47

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达


一、概述


计算机视觉领域一直是一个活跃的研究领域,在本文中,我们让设备实时与其应用程序(对象检测)相结合并运行。



二、硬件



设备:程序将在其上运行,由于该设备将安装在手杖上,并且可以实时工作,因此可以使用智能手机或 Raspberry-Pi。在本文实现中,使用了Raspberry-Pi 4。


相机:相机将用于打开图像流(视频),并处理帧以识别对象。在本文中,使用了 Raspberry-Pi 4摄像头。


距离传感器:红外或超声波传感器可用于测量距离。在本文中,使用了超声波传感器。


反馈组件:可以使用各种反馈机制,例如使用耳机或振动电机的文本到语音。在该实施方式中,使用振动电机。



三、软件


为了开发这个项目,使用了Python编程语言和OpenCV库。OpenCV 是一个开源的编程函数库,主要针对实时计算机视觉,可以按照此链接中提到的步骤将 OpenCV 安装到 Raspberry-Pi 上。使用线程,其中代码的不同部分可以同时运行,这允许距离传感器在对象检测工作时工作。


四、物体检测模型


由于项目设备的处理能力有限,我们需要轻量级的对象检测模型才能实时检测。可用的轻型模型有TinyYOLO和SSD MobileNet。在本文中,我们使用 SSD MobileNet。


该模型获取每一帧并尝试对该帧上的对象进行分类,它最多可以对 100 个对象进行分类,并返回对象名称以及模型对其分类的置信度。


五、实践


为了利用模型返回的信息,机器不断测量用户的危险等级,这是通过划分三个危险等级(高、中、低)来完成的,并根据检测到的物体,可以得出危险等级改变。例如,如果检测到汽车,则危险级别高于检测到手机。此外,危险等级可以根据距离而变化。例如,如果传感器检测到物体在 1 米以内,则会导致更高的危险级别。



六、不足之处


本文使用了上面提到的最新的光物体检测模型,这些模型速度快,精度合理,随着计算机视觉领域的快速发展和研究,模型与使用的模型一样快(甚至更快),精度更高希望出现。使用这些新模型将改进项目实施。此外,虽然计算能力可以产生好的结果,但更大的计算能力会带来更流畅的体验和更好的相机帧率。


可以开发移动应用程序以与机器一起使用,这可以向用户(或用户的监护人)提供有关设备的信息,例如电池健康状况,并允许进一步的功能。反馈机制可以改为无线方式,比如蓝牙控制的无线频段,或者其他任何合理的想法。此外,为实现而编写的代码可以更高效,并且可以进行更好的线程化实现。



下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


浏览 30
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报