近期学习了卷积神经网络相关的知识,在课余时间阅读了一篇有关障碍物检测的硕士生论文,不过就阅读的过程而言,感觉硕士论文有些冗杂,容易让读者抓不到重点,而且篇幅较多,耗费时间有些长,以后阅读论文可以直接从核心期刊入手,英文论文对现在的我还有些困难,不过以后会逐步推进,加油!以下是我个人对这篇论文的理解。
《基于卷积神经网络的车行环境多类障碍物检测与识别》
摘要
以 AlexNet网络模型为原型,基于 DeepLearnToolbox 工具的 Caffe 框架,搭建包含障碍物检测与障碍物区域推荐的 15 层网络,采用网络优化策略对深度卷积神经网络进行优化降低网络复杂度。设计出一种最大方差法结合形态学操作自动提取障碍物区域的方法。
绪论
背景及意义
讲述了障碍物识别技术的必要性,以及在无人驾驶领域的重要性。
国内外研究现状
细致描述了深度学习和障碍物检测的发展史,并描述了不同障碍物检测方法的优缺点:
- 基于边缘检测的方法
基于边缘检测的方法能够对差异明显的目标与背景进行适宜的区分,但在如强光这样的场景下,由于周围物体倒影、侧影等的干扰,往往导致检测的准确率降低。 - 基于颜色信息的方法
基于背景和目标色彩差异完成目标辨识,是常用的障碍物检测方法。任何物体之间色度和饱和度都不完全一致,虽然强度分量会受到光照的极大影响,但对于基于颜色的分割扰动不大。
在强光线、正常光线、昏暗光线等不同真实应用场景下,基于颜色信息的障碍物检测方法对障碍物的检测精度不稳定,随环境整体颜色信息变化而变化,普适性不高。 - 基于光流场计算的方法
一种是基于灰度梯度基本不变特性,而另一种则是以亮度恒定为约束假设的方法。
检测方法适用运动特性较为明显的检测场景,光流场不依赖于先验知识,但容易受到环境中存在的光线噪声等变化的影响,同时该方法的计算较为复杂,不适用于实时性要求较高的应用场景。 - 基于机器学习的方法
On-line boosting 的车辆跟踪方法, Adaboost 方法对车辆假设区域进行验证,3D 约束下的多部车辆的实时检测与追踪。
此类方法属于浅层学习算法,需要选择性能优良的特征提取器提取目标特征。但传统的特征提取器并不能适用于应用场景复杂的目标检测,且其提取出的特征单一,不能准确表征目标本质属性;同时传统特征提取器侧重于解决二分类问题,可扩展性不强。
卷积神经网络介绍
输入层
整个网络的输入,一般代表了一张图片的像素矩阵。图 1中最左侧三维矩阵代表一张输入的图片,三维矩阵的长、宽代表了图像的大小,而三维矩阵的深度代表了图像的色彩通道(channel)。黑白图片的深度为 1,RGB 色彩模式下,图片的深度为 3。
卷积层
CNN 中最为重要的部分。与全连接层不同,卷积层中每一个节点的输入只是上一层神经网络中的一小块,这个小块常用的大小有 3×3 或者 5×5。一般来说,通过卷积层处理过的节点矩阵会变的更深。
具体操作:
卷积层结构的前向传播过程就是通过将一个 filter 从神经网络当前层的左上角移动到右下角,并且在移动中计算每一个对应的单位矩阵得到的。由图2得,Filter W0从上层神经网络的左上角移动到左下角,步长为2,各元素对应相乘后相加得到输出矩阵,卷积层输出矩阵的深度(也称为 filter 的深度)是由该卷积层中 filter 的个数决定,如上图