本项目开发出基于人脸检测与跟踪算法的远程驾驶系统。驾驶员通过脸部的细微运动即可远程控制车辆的行驶,解放了双手。项目的核心是基于
AdaBoost 算法的人脸检测与跟踪技术以及基于 TCP-SOCKET 的远程通信技术。项目的关键技术难点在于人脸检测的准确性、判别算法的鲁棒性和通信系统的实时性。项目很好地满足了这几点要求。
(2)个项目要实现的功能是通过检测人脸晃动的情况来远程控制智能车移动。服务器首先通过AdaBoost算法识别并检测人脸的晃动情况,进而生成控制智能车的指令。如检测到人脸上抬,则生成“小车前进”的指令;检测到人脸往左晃动,则生成“小车左转”的指令。生成指令后,再通过TCP-SOCKET远程通信模块传递给智能小车。智能小车收到指令后,执行收到的指令。
遇到的问题:
第一,检测的像素区域过大,人脸单次检测的速度缓慢,无法满足实时性要求。解决方法:于是我们引入了一个预检测环节,即开始时先通过预检测,确定人脸出现的大致区域,记录这个区域为 ROI,之后便在区域 ROI 内进行人脸的检测。由于 ROI 区域面积远小于整个屏幕的像素面积,速度便会大大提高,达到了实时检测的要求。
第二,单片机图像处理能力不强,如果用来传输视频的话效率会很低,单片机也不具备上网的能力。解决方法:在智能车上绑上手机,图像通过手机传递给服务器。
第三,采用蓝牙传递指令的话,蓝牙的传输距离有限,达不到远程通信的要求。解决方法:先将指令由服务器传递到手机,然后再由手机传递给蓝牙。