项目简介
本项目是一个专门为视觉障碍者打造的视觉辅助导航系统,可助力他们完成环境文本识别和常见物体检测等日常任务。项目未来计划拓展在大型环境(如购物中心、机场)中定位个人的功能。项目主要由两部分构成,一是基于C++和OpenCV的文本识别与物体检测工具集,二是面向基于ARM的便携式设备设计的用户界面。
项目的主要特性和功能
文本识别和物体检测工具
- 文本识别:借助
ReadText
类,可从摄像头或图像中检测并识别文本。 - 物体检测:利用
PpDetect
类,能检测特定物体(如电源插座),且支持模板匹配算法。 - 图像标注工具:
ImageLabeler
工具可用于为电源插座图像创建地面实况数据。
便携式设备实施
- 硬件接口:通过GPIO控制硬件设备,支持与Gumstix等ARM设备通信。
- 简单物体检测:
find_blob
程序可检测图像中的蓝色斑点。 - 视频处理:
video
程序通过V4L2驱动访问摄像头,并将帧转换为OpenCV的Mat对象进行处理。
Android实现
目前仅支持从摄像头获取帧,功能尚未完全实现。
安装使用步骤
文本识别和物体检测工具
- 环境准备:确保已安装OpenCV库和CMake工具。
- 编译代码:使用CMake生成Makefile,然后编译C++代码。
bash mkdir build cd build cmake .. make
- 运行程序:运行生成的可执行文件,并通过命令行参数或GUI进行交互。
bash ./ReadText ./PpDetect
便携式设备实施
- 环境准备:在Gumstix设备上安装Linaro Ubuntu系统,并确保已安装OpenCV库。
- 编译代码:针对ARM架构编译代码。
bash mkdir build cd build cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain-arm.cmake .. make
- 部署程序:将编译后的程序部署到Gumstix设备,并进行必要的硬件设置。
bash scp ./ppdetect user@gumstix:/path/to/deploy
Android实现
- 环境准备:确保已安装Android Studio和NDK。
- 编译代码:使用Android Studio导入项目并编译。
- 运行应用:将应用安装到Android设备并运行。
额外说明
项目处于开发阶段,目前只实现了部分功能。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】