【技术实现步骤摘要】
基于改进的Canny边缘检测算法和SVM的无人驾驶中的小目标检测方法
[0001]本专利技术属于图像处理相关领域,尤其涉及一种基于改进的Canny边缘检测算法和SVM(Support Vector Machine)的无人驾驶中的小目标检测方法。
技术介绍
[0002]在无人驾驶场景中,道路中的小型障碍物,会引起车辆的剧烈振动,这极大地破坏了汽车行驶过程中的平稳性。检测出影响车辆平稳性的小型障碍物,然后无人驾驶的规划层根据检测得到的信息完成决策并且发送相应的指令给控制层。无人驾驶的控制层再根据规划层的指令完成对车辆的方向盘、油门和刹车等方面的控制,实现减速或避开障碍物,从而保证无人驾驶的平稳性。
[0003]近些年来的目标检测算法总体上分为两大类,一类是传统的目标检测算法,另一类是新兴起的基于深度学习的目标检测算法。传统的目标检测算法采用滑动窗口机制遍历整张图像,一方面是计算成本高,另一方面滑动窗口本身的窗口大小大部分情况下并不完全贴合目标尺度。背景、环境、目标形状的差异等多种因素的影响使得传统特征提取方法效果较差。基于深度学习的目标检测方法尽管检测准确率较高,但有着检测模型极为复杂、样本集需求量大以及训练时间长等缺点。
技术实现思路
[0004]为克服上述现有技术的不足,本专利技术提供了一种基于改进的Canny边缘检测算法和SVM分类器的无人驾驶中的小目标检测方法,用于检测石块、减速带和路面坑洼三种影响车辆平稳性的目标障碍物。该方法采用一种改进的Canny边缘检测算法和一种基于新改进的HOG< ...
【技术保护点】
【技术特征摘要】
1.一种基于改进的Canny边缘检测算法和SVM分类器的无人驾驶中的小目标检测方法,其特征在于,包括以下步骤:S1:在车辆上安装相机设备获取高清晰度的道路图像;S2:针对路面的椒盐噪声以及光照的影响,将高斯滤波部分替换为自适应中值滤波,再采用滑动窗口结合OTSU算法自动设置Canny检测的双阀值,利用改进的Canny边缘检测方法获取道路图像内的边缘信息;S3:调用OpenCV函数库中的findContours(image,contours,hierarchy,mode,method,Point offset=Point())函数,对边缘进行轮廓提取;S4:调用OpenCV中的boundingRect(points)函数计算轮廓的最小外接矩形,并将该矩形内的子图像作为待检测区域;S5:计算待检测区域图像的HOG
‑
LBP融合特征向量;S6:使用SVM级联分类器对HOG
‑
LBP融合特征向量进行分类识别;S7:对SVM级联分类器的识别结果进行处理,即若分类器识别为目标障碍物,则使用OpenCV中的cvRectangle(img,Point1,Point2,color)函数将其在原图像中标注出来,否则不进行标注。2.根据权利要求1所述的小目标检测方法,其特征在于,上述步骤S2中,改进的Canny边缘检测方法,具体包括以下步骤:S21:对道路图像进行自适应中值滤波:首先建立一个滑动窗口,定义G
min
、G
max
和G
mid
分别为滑动窗口内所有像素灰度值的最小值、最大值和中值,G(x,y)为滑动窗口中心像素点的灰度值;若G
min
<G
mid
<G
max
,则不需要调整滑动窗口,否则增大滑动窗口的尺寸,直到滑动窗口的尺寸大于图像尺寸或G
min
<G
mid
<G
max
为止;判断如果G
min
<G(x,y)<G
max
不成立,则用G
mid
替换G(x,y),否则不替换;S22:计算图像中像素点的梯度:(x,y)点的梯度幅值A(x,y)和梯度方向θ(x,y)的计算公式如下:其中S(x,y)为自适应滤波后的图像,(x,y)为图像中任一像素点的坐标,S
x
代表S(x,y)在水平方向上的梯度,S
y
代表S(x,y)在垂直方向上的梯度;S23:非极大值抑制:通过获取的梯度幅值和梯度方向对图像边缘进行非极大值抑制操作,判断每个像素点的梯度幅值是否是周围梯度方向相同像素点中的最大值,若是则保留该点,否则将其丢弃;S24:通过滑动窗口结合OTSU算法自动设置Canny检测的双阀值:首先建立一个滑动窗口,并设置其长和宽,以及滑动步长:对于一幅包含G个灰度级的图像,滑动窗口遍历该图
像,并计算窗口内子图像的灰度直方图H(0),H(1),
…
,H(G
‑
1),并除以滑动窗口中的像素个数进行直方图归一化;遍历所有可能...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。