APP下载

改良HOG 结合SVM 的快速障碍识别

2023-11-07赵柏山荣子航

微处理机 2023年5期
关键词:梯度方向对角线降维

赵柏山,荣子航

(沈阳工业大学信息科学与工程学院,沈阳 110870)

1 引 言

近年来,随着经济的发展,各类车辆的保有量日渐上升,特别是一些特大型车辆的保有量已经达到了一个很高的水平[1]。综合运用障碍识别技术可以有效降低交通事故的发生概率,加强行车安全[2]。目前,车辆行驶中的障碍识别方法主要包括超声波传感器探测识别、激光雷达探测识别以及计算机视觉探测识别等方法[3]。何勇[4]针对这三种不同的方法进行了汇总分析,得出了超声波传感器操作简单但是准确度较低、激光雷达准确度较高但成本更高、计算机视觉技术成熟且成本合理的结论。基于上述因素,为了在不明显降低检测精度的前提下更快地完成障碍物检测,在此提出一种主成分分析(PCA)降维改良的梯度直方图(HOG)结合支持向量机(SVM)分类的快速障碍识别方法。为了使HOG 特征具有更丰富的边缘信息,增添主、副对角线两方向上的像素的灰度信息,并利用PCA 进行降维,以提升运算速度。使用SVM 对降维后的HOG 特征进行训练,得到SVM 分类模型,并使用训练出来的SVM 分类模型对待识别图像进行识别,最终达到道路障碍物提取与识别的目的。

2 改良HOG 特征的物体特征提取

传统的HOG 特征,仅会提取每个像素的水平方向以及垂直方向上的梯度值以及梯度方向,因此会丢失一定的主副对角线上的梯度信息,进而丢失一定的图像边缘信息。针对这一问题,为了最大程度保存图像原有的特征、提高后续的识别成功率,在提取HOG 特征时,同时也对主副对角线上的梯度信息进行提取,具体过程如下:

首先要遍历每个像素,求出每个像素四个方向上的梯度Gx(x,y)、Gy(x,y)、Gxx(x,y)、Gyy(x,y);接着,根据水平与垂直方向上的梯度求解正交叉梯度,并根据主对角线与副对角线方向上的梯度求解斜交叉梯度,求解公式如下:

得到正交叉梯度与斜交叉梯度之后,即可利用这两个梯度值对该像素点的总体梯度值与梯度方向进行求解,求解梯度值的公式为:

求解梯度方向的公式为:

在得到总的梯度方向之后,将长宽均为8 个像素的区域划为一个细胞(cell),并将cell 的梯度方向平均分为9 个区间,对cell 之中的各个像素进行加权投影,以映射到固定的角度范围,即可得出该cell中的梯度方向直方图。最后,将横竖各两个cell 组合成一个块(block)。为了进一步减少光线带来的影响,需要对每一个block 里面的直方图进行归一化,将所有的block 组合起来,即可得到该图像的改良HOG 特征。

为了快速地对图像特征进行识别,还需要进行PCA 降维[5],其主要原理是利用线性变换,将最初的n 维数据矩阵由高维空间映射到低维空间之中[6]。

3 实验数据分析

3.1 样本图像的选取

实验以停车指示牌为例,验证本方法所达到的效果。所使用的编程语言为Python;计算机系统为64 位Windows 10 系统;硬件配置为Intel Core i5-7200U CPU@2.5GHz,8GB 运行内存。

本实验所需的训练集包含300 张目标样本图像与300 张非目标样本图像,分别编成正、负训练集。识别集由200 张目标样本图像与200 张非目标样本图像构成,同样分别编成正、负识别集。训练集与识别集的图像均源自COCO 数据集。

3.2 确定特征维度

为了使不同尺寸的图像具有相同维度的HOG特征,需要对各幅图像进行归一化处理。利用上文所提到的改良HOG 特征的方法,提取出各幅图像的改良HOG 特征,并利用PCA 对改良HOG 特征进行降维处理。在PCA 中,所降到的特征维度的维数选取对后续识别效果有很大的影响。一方面,越小的维数可以提供的处理速度更快,但是过低的特征维度会降低SVM 的识别效果;另一方面,虽然较高的特征维度可以保存更多的细节,但是一旦特征维度过高,就会造成过拟合现象,同样会降低SVM 的识别效果[7]。因此,本实验通过步进法得到一个合适的特征维数。

因为降低特征维度的作用就是减少处理时间,未经PCA 处理的一幅图像平均处理时间为1.34 s,而经过PCA 处理的一幅图像平均处理时间与1.34s相近的特征维数为138。基于此,大于138 维的PCA处理无法有效地提供减少处理时间的效果,所以只需要在1 至138 之间寻找出合适的维数即可。基于此,以10 维为一步,逐步分析不同维数下的识别效果,实验结果如图1 所示。

图1 特征维度与识别率关系图

由图1 可见,当特征维数为40 维时,识别准确率达到最高。接下来再具体分析特征维数为40 维左右的识别准确率分布情况,步骤基本一致。最终确定的特征维度为39 维。

3.3 SVM 训练与识别

在进行SVM 训练之前,首先需要确定使用哪一种核函数。常用的核函数有线性核函数、多项式核函数、径向基核函数和sigmoid 核函数[8]等。根据研究,线性核函数相较于另外三种核函数具有识别准确率高、复杂度较低等优点,因此在训练中采用线性核函数作为核函数。其次,为了获取更高的识别成功率,需要确定惩罚因子C。本实验中也同样利用步进法确定惩罚因子,特征维度取上文所确定的39 维,以0.2 为最小步进,逐步分析不同惩罚因子下的识别效果。当惩罚因子为1.1 时,识别准确率达到最高。随后,再具体分析惩罚因子为1.1 左右的识别准确率分布情况,步骤基本一致,最终确定的惩罚因子为1.2。

3.4 数据分析

将本方法与常用的HOG 特征识别方法、HOG+PCA 识别方法以及改良后的HOG 特征识别方法进行对比,可以得出本方法在识别性能与时间开销方面上提升的效果。由于HOG 与改良后的HOG 特征识别方法不进行降维,最终的识别效果不受所降到的特征维度的影响,分别为91.5%以及95.25%,由此可证明改良后的HOG 特征补充了主副对角线上的特征信息,对于识别结果有积极的影响。另外,由于有更丰富的特征信息,本方法相比于HOG+PCA的特征识别方法达到最佳识别效果时所需的特征维度更低,在提供更好的识别效果的同时需要更少的识别时间。识别性能与时间开销的对比结果具体如表1 所示。

表1 识别性能与时间开销对比

由表中数据可见,本方法相较于目前较为常用的HOG+PCA 的特征识别方法在识别准确度上提升了3.5%,同时在每幅图像的处理时间上平均提升0.12 s,整体时间减少了26.67%。虽然相较于不使用降维的改良HOG 方法,识别准确度下降了1.5%,但是在识别速度上有了极大的提升,整体时间减少了77.55%。基于此,所提出的方法能够在有效提高识别准确度的同时减少识别所需的时间,从而更有效地达到障碍识别的效果。

4 结 束 语

基于PCA 降维,将改良HOG 特征与SVM 分类相结合,形成了一种更快速的障碍识别方法。以停车指示牌为例验证其障碍识别的效果。该方法对传统SVM 使用的HOG 特征进行改良,在其中加入了对角线像素梯度信息,成功提升了障碍识别准确率;利用PCA 进行降维也确实有助于提升识别速度。与传统的特征识别方法相比,本方法更为理想地做到了识别准确度与识别所需时间的平衡,可以运用于视频障碍识别之中,在交通安全领域内有一定的应用价值。

猜你喜欢

梯度方向对角线降维
用活平行四边形对角线的性质
混动成为降维打击的实力 东风风神皓极
基于机器视觉的钢轨接触疲劳裂纹检测方法
降维打击
基于梯度方向一致性引导的边缘检测研究
基于光谱上下文特征的多光谱舰船ROI鉴别方法
基于支持向量机的分类器训练研究
边、角、对角线与平行四边形的关系
看四边形对角线的“气质”
母鸡下蛋