基于树莓派的行人检测小车设计

2018-03-10 00:45刘鹏程
软件导刊 2018年2期
关键词:树莓派

刘鹏程

摘 要:行人检测设备一般不可移动,多数是在电脑端进行处理。通过树莓派搭建一个视频采集与移动小车,同时结合Faster RCNN(Faster Region Based CNN,更快的基于区域的卷积神经网络)与OpenCV(Open Source Computer Vision Libra)进行行人检测,并且通过树莓派的WiFi(Wireless Fidelity,无线保真技术)将处理好的视频数据回传到电脑。实验证明,基于树莓派的行人检测小车可以满足行人检测要求,同时可以进行移动端的行人检测。

关键词:不可移动性;行人检测;树莓派;无线保真技术

DOIDOI:10.11907/rjdk.172363

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2018)002-0114-03

0 引言

随着Deep Learning(深度学习)[1]与各种小型计算机的研发,图像处理的移动性需求越来越大。文献[2-3]提出了基于深度学习的车辆识别与人脸识别,但是没有做到检测设备的可移动性。文献[4-6]做到了视频处理的整体性,也就是嵌入式视频处理设备,但是没有做到视频采集的可移动性。文献[7-9]做到了视频采集的可移动性,却没有做到视频处理的智能性。文献[10]提出并设计了基于嵌入式的移动智能视频监控系统,但却没有做到基于深度学习的行人检测。本文设计了一款基于树莓派的移动视频采集与处理小车,实现了视频采集的可移动性与视频处理的智能性。

1 相关基础知识

1.1 树莓派

树莓派是一款只有信用卡大小的微型计算机,其系统基于Linux。本文使用的是树莓派3B,它使用了博通2837芯片,1.2GHz,64位处理器,其性能比上一代提高了近一倍,能完全满足本文的图像处理需求。

此外,树莓派3B功能集成度更高,新的BCM43438无线芯片直接将IEEE 802.11n无线和蓝牙4.1 BLE(Bluetooth Low Energy)等功能模块集成,同时还集成了相应无线功能的天线和放大器,可以让基于树莓派3B开发的产品外形更为紧凑、驱动开发更简单,同时满足无线视频传输要求。

树莓派具有丰富的GPIO口,图1为树莓派小车接口示意图。其中,12,16,18,22是控制小车的云台,27,29,31,33是控制小车的电机,摄像头则是通过树莓派的USB接口进行控制。

1.2 树莓派小车

本文的树莓派小车由云台、摄像头和电机组成,云台可以实现360度旋转,摄像头使用的是高清微型720P的USB摄像头,电机使用的是步进电机,作为小车的车轮进行运动。图2为树莓派小车。

小车的工作流程:首先电脑端通过WiFi控制GPIO口进而控制电机模块和云台,然后树莓派通过摄像头采集的视频信息进行实时视频处理,最后通过树莓派的WiFi将处理后的视频回传到电脑端,如图3所示。

2 软件环境搭建

2.1 树莓派的无线传输搭建

虽然树莓派3B上搭载了WiFi[11],但在首次使用时并不会自动连接,而是要通过putty的方式实现树莓派的无线连接。

树莓派可通过putty实现两种方式连接:串口线连接和SSH登录。串口线连接时输入连接串口号和比特速率(115 200 bit/s),SSH登录时输入树莓派的IP地址,并将端口号设为22,如图4所示。

首先通过putty输入IP,进入之后安装VNC包,如图5所示。

之后在PC端用tightVNC客户端启动树莓派的虚拟图形界面,如图6所示。

这种方式能够让树莓派共享电脑的屏幕、键盘、鼠标等资源,同时也方便电脑端和树莓派之间的文件互传。通过VNC进入树莓派虚拟图形界面后,将连接方式改成无线网络连接,如图7所示。

2.2 安装OpenCV

在安装OpenCV之前需要安装摄像头,摄像头正常工作以后才可安装OpenCV。为了调试方便,本文的摄像頭采用免驱动即插即用的USB摄像头,通过编译源代码的方式进行安装。

根据OpenCV的官方说明,首先安装需要的第三方环境:

sudo apt-get install build-essential

sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

安装完成后通过命令makdir opencv建立一个文件夹,然后将下载好的OpenCV源文件拷贝到新建的文件夹中,最后使用cmake在该文件夹中生成makefile文件。如果出现如图8所示的界面,证明编译成功。

2.3 行人检测算法搭建

目前,Faster R-CNN[12]是基于深度学习R-CNN系列目标检测中最好的方法,技术上是将RPN(Region Proposal Networks,生成建议窗口)网络[13]和Fast R-CNN网络结合在一起,Faster R-CNN中的结构如图9所示。

在Faster R-CNN中,一张图片经过前面的5个卷积层,输出256张大小为13*13的特征图。将特征图分别输入到RPN和Fast R-CNN中的卷积神经网络全连接层,通过交替优化学习共享特征,最后分别输出分类、边框回归及检测。分类包含2个元素,用于判别目标和非目标的估计概率。边框回归包含4个坐标元素(x,y,w,h),x,y指当前格子预测的物体边框中心位置的坐标,w,h是边框的宽度和高度。检测反映当前边框是否包含物体以及物体位置的准确性。endprint

2.4 Faster R-CNN实验设计

(1)下载Faster RCNN源代码并安装。

(2)编译caffe和pycaffe。

(3)预训练模型。Faster RCNN提供了3种预训练模型作为基本模型,分别是小型网络ZF、中型网络VGG_CNN_M_1024和大型网络VGG16,本文在树莓派上使用的是小型网络。

(4)测试模型。

3 实验结果与分析

本系统在学校道路上进行测试,在电脑端的控制下,小车能够稳定快速地实现前进转弯等功能,树莓派也能将摄像头采集到的视频信息进行行人检测,并且快速地把识别结果回传到电脑端。设计测试设置的视频流为720p、24帧,因为使用的是树莓派自带的WiFi模块进行视频传输,所以显示十分流畅。实验证明本系统基本实现了行人检测目的。系统能长时间正常稳定运行,可靠性较高。图10所示为行人检测结果。

4 结语

本文通过树莓派搭建了一个可移动的行人检测小车,通过WiFi控制树莓派小车,将树莓派小车处理后的视频流回传到电脑端。实验结果证明,在电脑端的控制下,小车能稳定地完成行人检测,并且将图像回传给电脑端。但该可移动无线视频处理设备还有许多有待改进之处,比如行人检测精度,以及视频回传发生的延迟现象等,这将是笔者后续研究的重点。

参考文献:

[1] YU KAI, JIA LEI, CHEN YU-QIANG, et al. Deep learning: yesterday, today, and tomorrow[J]. Journal of Computer Research and Development,2013,50(9):1799-1804.

[2] TAIGMAN Y,YANG M,RANZATO M A,et al. Web-scale training for face identification[C].Computer Vision and Pattern Recognition(CVPR),IEEE Conference on. Boston,USA:IEEE,2015:2746-2754.

[3] SUN Y, LIANG D, WANG X, et al. DeepID3: face recognition with very deep neural networks[J]. The Chinese University of Hong Kong Technical report,arXiv,2015(1502):873-879.

[4] 李濤.基于OpenCV的嵌入式视频监控系统应用研究[D].荆州:长江大学,2016.

[5] 王晓,踪琳.基于OpenCV视觉库的嵌入式视频处理系统[J].电子质量,2017(3):54-59.

[6] 郝林炜,梁颖.基于树莓派+云服务器的网络监控及家居控制系统的研究与实际应用[J].物联网技术,2016(9):45-50.

[7] 武明利,武奇,骆兴芳.基于无线控制和视频传输的多功能探测车[J].江西师范大学学报:自然科学版,2017(1):73-78.

[8] 张璐,宋秋红.自动巡线小车的图像采集系统开发与优化[J].计算机工程与设计,2010(17):3754-3819.

[9] 王玉成,王庭有,徐丽娟.遥控履带小车视频监控系统设计[J].新技术新工艺,2010(9):39-42.

[10] 徐晓峰.基于嵌入式和OpenCV的移动智能视频监控系统的设计与实现[D].太原:太原科技大学,2014.

[11] 李晓阳.WiFi技术及其应用与发展[J].信息技术,2012(2):196-198.

[12] S REN. Faster R-CNN: towards real-time object detection with region proposal networks[C]. IEEE Transactions on Neural Networks,2015,73:1-24.

[13] JIFENG DAI, YI LI, KAIMING HE, et al. R-FCN:object detection via region-based fully convolutional networks[C]. Conference on Neural Information Processing Systems (NIPS),2016:1884-1893.endprint

猜你喜欢
树莓派
基于Raspberry Pi的智能教室系统
基于树莓派的车载无线视频传输系统
智能安全防盗探测小车
基于嵌入式技术的农村医疗系统设计