一种基于深度学习的公交客流检测系统及方法
技术领域
本发明涉及公共交通调度领域,特别涉及一种基于深度学习的公交客流检测系统及方法。
背景技术
在智能交通研究领域,公交客流检测已经成为机器学习领域中极为重要的研究方向。公交客流信息统计方法不一,当前主要使用的统计技术有IC卡技术、主动红 外线检测技术、被动红外线检测技术、压力检测技术、视频图像处理技术等。其中 IC卡技术由于第三方支付人数较多,无法统计出准确的信息,主动红外技术、被动 红外技术及压力检测技术,针对车内乘客拥挤和遮挡现象严重时都会产生较大的紊 乱统计。基于视频图像处理技术的公交客流检测因不受特征和拥挤的限制,能依托 现有车载监控等优点,是当下公交客流检测的热点。例如专利文献:CN106548451 通过图像融合方式,通过对采集到的图像进行拼接形成车辆内的全景图像,针对所 述全景图像进行人体识别和计数。专利文献:CN107145819通过卷积神经网络识别 公交车上下门的乘客人数以及运动斑块识别来判断拥挤度。专利文献:CN107622254 通过三个车顶摄像头,识别区域不重复来考虑过道和座位特征点,以此判断拥挤度。
上述思路虽有创新,但图像融合方式运算复杂,SIFT算法无法达到高速运行; 通过卷积神经网络识别在上下门采集乘客人数,该系统预设上车行为10s-30s,公交 客流具有实时性,不能达到理想效果;三个摄像头识别车内特征点,客观而言识别 区域不重复,必然会丢失视域交界点乘客信息。
发明内容
为了解决以上技术问题,本发明的目的在于提供一种基于深度学习的公交客流检测系统及方法,结合图像处理和深度学习方法,具有技术前沿、实时性强及准确 率高的特点。
为了实现上述目的,本发明采用的技术方案是:
一种基于深度学习的公交客流检测系统,包括公交车身主体1,位于公交车身主体1的车厢前端、中端及末端上侧分别设置有点阵红外摄像机2,所述的点阵红外摄 像机2通过串口线6连接主控制器3,所述的主控制器3的输出端分别连接LCD车 载显示屏4和调度中心5,主控制器3与调度中心5之间通过通讯模块NB-lot7进行 信息的传递。
所述的主控制器3为树莓派Raspberry Pi 3B+,所述的树莓派Raspberry Pi 3B+中移植TensorFlow深度学习框架搭建卷积神经网络CNN的识别模型,用于提取出车 厢内乘客头部特征。
所述的卷积神经网络CNN序贯模型中搭建不同的网络层,通过测试网络层的现 行堆叠在TensorFlow框架下搭建CNN模型,该模型设计由四部分组成,一层输入, 三层卷积,三层池化,一层全连接。
所述一层输入层为经过预处理后提取的公交乘客头部图像,图像大小均为64*64像。
所述三层卷积层使用ReLU函数作为激活函数计算出右侧单位矩阵中节点,在 5*5矩阵上使用3*3过滤器进行卷积层前向传播,得到结构矩阵大小为3*3矩阵,在 此过程中,3*3过滤器的移动轨迹为,以步长为3,从左至右,逐行循环。
所述三层池化层使用的过滤器只影响其一个深度节点,通过2*2的过滤器进行 池化层的前向传播,丢弃冗余节点。
所述一层全连接层将卷积输出的二维特征图(feature map)转化成(N*1)一维 的一个向量,并将饱含高度图像特征的向量通过Softmax进行判断。
所述卷积神经网络CNN中模型参数优化算法汲取梯度下降法优势,结合随机梯 度下降算法进行算法优化,在训练神经网络时,读取总样本数据中的小部分样本数 据作为当前训练数据,执行反向传播算法后计算损失函数,进行迭代参数更新,经 过N轮后完成总样本的数据的训练(N*小部分样本数据=总样本数据,N根据总样 本数据大小和设备计算能力酌情选择),在完成一轮的小部分样本训练后,将总样本 数据随机打乱后再进行下一代小部分样本的训练,每轮更新使用了多个小部分样本, 使得损失函数的计算和参数更新更加具有代表性。(这个是训练神经网络的方法,通 过这种方式得到符合公交车场景的神经网络模型,成熟模型的前期需要用大量的数 据进行训练)
一种基于深度学习的公交客流检测方法,包括以下步骤;
前中后设置的红外摄像机2获取实时的车内图像信息,再放入训练好后的模型中;
点阵红外摄像机2用于统计三通道车厢内乘客人数并进行对比,在0.125m2面积内核定站立乘客1人,实现对车内拥挤程度的判断,大于等于一人即为拥堵;
将公交车前中后分为三个区域,区域与区域之间以交叉视域点为界限,以前区 域为例,计算好该区域平面面积,其中单通道识别出的空间特征值以映射点的方式 投射到该区域平面空间作为公交该区域的映射点,按照核定站立人数标准完成拥挤 度测试;
三组通道拥挤度测试相互独立,三组通道数据作为融合的基础数据,为一轮拥 挤度数据叠加;
为避免采集到重复乘客,通过检测中心点将目标划分为非交叉视域和交叉视域,因中通道有前后两通道交叉视域且图像质量较好,在一轮拥挤度的基础上减去前通 道和后通道交叉视域的人数,完成二轮主辅拥挤度数据融合,并对映射平面进行区 域密度分析;
在进行三通道拥挤度阈值分析时,因考虑中通道有乘客下车行为,故将前后通 道特征值作为主拥挤度研究对象共占阈值分析70%比例,中通道作为辅拥挤度研究 对象占阈值分析30%。
本发明的有益效果:
本发明通过检测中心点将目标划分为非交叉视域和交叉视域,很好的避免重复采集到乘客,结合图像处理和深度学习方法,具有技术前沿、实时性强及准确率高 的特点。
现有公交客流统计方法只有当行人越过上下车门方向检测线时才会计数,从侧面角度判断车内人数且需要在PC端进行计算,本方法可直面判断及在嵌入式设备中 进行计算,更具有说服性。
附图说明
图1是本发明搭建CNN模型示意图。
图2是本发明数据部分正负样本示意图。
图3是本发明卷积层特征提取示意图。
图4是本发明池化层前向传播示意图。
图5是本发明三种算法测试示意图。
图6是本发明前中后通道与传统算法识别效果图。
图7是本发明拥挤度判别示意图。
图8是本发明结构示意图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
本发明采用在Raspberry Pi树莓派中移植TensorFlow深度学习框架并搭建卷积神经网络CNN的模型,以提取车厢内乘客头部特征,将三通道数据融合技术判断车 内拥挤情况,通过识别目标作为公交不同区域的映射点进行该通道映射平面区域密 度分析,完成了拥挤度测试。
如图8所示,一种基于深度学习的公交客流检测系统,包括公交车身主体1、分 别置于车厢前端、中端及末端上侧的点阵红外摄像机2、主控制器树莓派Raspberry Pi 3B+3、LCD车载显示屏4、调度中心5、串口线6以及通讯模块NB-lot7。
结合实际应用情况,在卷积神经网络CNN序贯模型中搭建不同的网络层,通过 测试网络层的现行堆叠在TensorFlow框架下搭建效果优良的CNN模型。该模型设计 由四部分组成,一层输入,三层卷积,三层池化,一层全连接。如图1所示。
一层输入层为经过预处理后提取的公交乘客头部图像,图像大小均为64*64像素。实验所用训练正样本来源于西安某公交公司视频数据、INRIA静态行人检测数 据集、USC直立行人数据集以及SmartCity腾讯优图数据集,所用训练负样本数据来 源于网络中和公交车内部不包含人头的图片,样本总数为1072,训练样本为804,剩 余四分之一(268)样本作为测试样本。如图2所示。
三层卷积层使用ReLU函数作为激活函数计算出右侧单位矩阵中节点,在5*5 矩阵上使用3*3过滤器进行卷积层前向传播,得到结构矩阵大小为3*3矩阵。在此 过程中,3*3过滤器的移动轨迹为,以步长为3,从左至右,逐行循环。如图3所示。
三层池化层使用的过滤器只影响其一个深度节点,通过2*2的过滤器进行池化 层的前向传播,丢弃冗余节点。如图4所示。
结合图5,验证了本发明所搭建的CNN卷积神经网络具有迭代次数少和训练误 差小的特点。
其中所述点阵红外摄像机2分别置于车厢前端、中端及末端上侧的可完整获得 车内乘客三通道图像。
通过统计三通道车厢内乘客人数,与中华人民共和国国家质量监督检验检疫总局、中国国家标准化管理委员会发布的《机动车运行安全技术条件》进行对比,在 0.125m2面积内核定站立乘客1人,实现对车内拥挤程度的判断。
先进行单独通道的特征值叠加,其中单通道识别出的特征值将作为公交该区域的映射点,完成拥挤度测试。
所述三组通道拥挤度测试相互独立,三组通道数据作为融合的基础数据,为一 轮拥挤度数据叠加。
为避免采集到重复乘客,通过检测中心点将目标划分为非交叉视域和交叉视域,因中通道有前后两通道交叉视域且图像质量较好,在一轮拥挤度的基础上减去前通 道和后通道交叉视域的人数,完成二轮主辅拥挤度数据融合,并对映射平面进行区 域密度分析。
从客观角度出发,在进行三通道拥挤度阈值分析时,因考虑中通道有乘客下车 行为,故将前后通道特征值作为主拥挤度研究对象共占阈值分析70%比例,中通道 作为辅拥挤度研究对象占阈值分析30%。如图6图7所示。
以上所述,仅为本发明较佳实施例,并不用以限制本发明,凡是依据本发明的 技术实质对以上实施例所作的任何细微修改、等同替换和改进,均应包含在本发明 技术方案的保护范围之内。