CN114972276A - 一种车辆自动驾驶距离判断算法 - Google Patents
一种车辆自动驾驶距离判断算法 Download PDFInfo
- Publication number
- CN114972276A CN114972276A CN202210626817.4A CN202210626817A CN114972276A CN 114972276 A CN114972276 A CN 114972276A CN 202210626817 A CN202210626817 A CN 202210626817A CN 114972276 A CN114972276 A CN 114972276A
- Authority
- CN
- China
- Prior art keywords
- image
- value
- automatic driving
- driving distance
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000001914 filtration Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000000605 extraction Methods 0.000 claims abstract description 8
- 238000003708 edge detection Methods 0.000 claims abstract description 7
- 238000007781 pre-processing Methods 0.000 claims abstract description 4
- 230000006870 function Effects 0.000 claims description 28
- 210000002569 neuron Anatomy 0.000 claims description 18
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 7
- 238000003062 neural network model Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 238000005260 corrosion Methods 0.000 claims description 3
- 230000007797 corrosion Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000003384 imaging method Methods 0.000 description 9
- 238000005259 measurement Methods 0.000 description 8
- 230000000644 propagated effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000002087 whitening effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20104—Interactive definition of region of interest [ROI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Processing (AREA)
Abstract
本发明公开一种车辆自动驾驶距离判断算法,其特征在于,包括以下步骤:步骤一:获取到的前方车辆图像进行图像预处理,对图像进行高斯滤波处理,即高斯模糊,去除图像的噪声;步骤二:高斯滤波后的图像进行灰度化处理,得到图像灰度图,去除图像的彩色信息,减少计算量;步骤三:通过边缘检测sobel算子对图像进行竖直方向的边缘特征提取操作;步骤四:通过二值化将图像转化成二值图,即像素值只有0或者1的图像。本发明涉及自动驾驶距离判断方法领域,具体地讲,涉及一种车辆自动驾驶距离判断算法。本发明要解决的技术问题是提供一种车辆自动驾驶距离判断算法,方便自动驾驶距离判断。
Description
技术领域
本发明涉及自动驾驶距离判断方法领域,具体地讲,涉及一种车辆自动驾驶距离判断算法。
背景技术
自动驾驶车辆测距通常有激光雷达、红外线等传感器测量距离,还有一些车企通过单目、双目摄像头模仿视觉进行测距,例如华为通过CN113091694A一种测距方法以及测距装置通过两个摄像头的视差计算得到距离,测距装置获取来自第一摄像单元的目标物体的第一成像尺寸h以及来自第二摄像单元的该目标物体的第一视差z。然后,该测距装置根据第一关系确定目标物体的第二物理尺寸H’和第二基线长度b’。然后,该测距装置基于该第二物理尺寸H’和该第二基线长度b’中的至少一个,以及该第一成像尺寸h和该第一视差z确定该目标物体与该第一摄像单元或第二摄像单元之间的目标距离。由于,来自第一摄像单元的第一成像尺寸h、第二物理尺寸H’、来自第二摄像单元的第一视差z和第一基线长度b之间满足预先设定的第一关系;并且,第一摄像单元的第一成像尺寸h、第一物理尺寸H、第二摄像单元的第一视差z以及第二基线长度b’之间满足第一关系。因此,基于第一成像尺寸h、第二物理尺寸H’、第一视差z和第一基线长度b计算的目标距离或基于第一成像尺寸h、第一物理尺寸H、第一视差z和第二基线长度b’计算的目标距离均参考了基于单目测距原理的数据和基于双目测距原理的数据。
例如特斯拉认为人可以靠双眼观察周围环境开车,那么自动驾驶系统也可以用同样的逻辑靠摄像头做到,所以特斯拉的摄像头就是在仿造人类的眼睛。摄像头能将最真实的路面图像传递给处理器,然后将这些图像转换成数据,这其中最难的不是如何还原真实的图像,而是如何将图像转换成数据,这就对数据的处理和存储能力有着非常之高的要求。
视觉方案对样本数据的依赖度比较高,需要用大量的数据进行训练,不断优化,不断学习,所以特斯拉很早就构建了一整数据采集与学习的闭环框架,通过摄像头收集各种行驶场景数据,并上传到特斯拉云端,构成真实而庞大的数据池。
这种云端数据库能够对特斯拉的智能算法提供学习模版,赋予了算法不断升级的能力。基于收集到的行驶数据,特斯拉会通过“影子模式”不断优化算法,最后对每一辆特斯拉的FSD自动驾驶进行OTA升级。激光雷达传感器激光雷达通过激光束进行探测和测距,由激光发射器、光学接收器、和信息处理系统三部分组成。激光雷达可以通过发射和接受激光束,分析激光遇到目标对象后的折返时间,计算出目标对象与车的相对距离,并利用收集的目标对象表面大量的密集点的三维坐标、反射率等信息,快速复建出目标的三维模型及各种图件数据,建立三维点云图,绘制出环境地图,以达到环境感知的目的。
我们研究发现在白天可以观察到汽车的车体下部黑色部分、两侧轮胎和太阳照射下汽车在地上的影子会形成一个长方形的黑色区域,中间会形成一个长方形的亮的区域,两者使用摄像头捕捉会分层明显,随着车距离变化该清晰的长方形发生变形,根据数据库计算可以辅助激光雷达或摄像头判断车距车速车道等信息。
发明内容
本发明要解决的技术问题是提供一种车辆自动驾驶距离判断算法,方便自动驾驶距离判断。
本发明采用如下技术方案实现发明目的:
一种车辆自动驾驶距离判断算法,其特征在于,包括以下步骤:
步骤一:获取到的前方车辆图像进行图像预处理,对图像进行高斯滤波处理,即高斯模糊,去除图像的噪声;
步骤二:高斯滤波后的图像进行灰度化处理,得到图像灰度图,去除图像的彩色信息,减少计算量;
步骤三:通过边缘检测sobel算子对图像进行竖直方向的边缘特征提取操作;
步骤四:通过二值化将图像转化成二值图,即像素值只有0或者1的图像;
步骤五:通过对二值图进行闭操作处理,得到若干个矩形框;
步骤六:通过对图像进行求轮廓操作,得到图像中所有的轮廓,其中包含感兴趣区域,即长方形亮区域和黑色区域;
所述步骤六中长方形亮区域和黑色区域划分依据:
晴天时,汽车后保险杠、两侧车轮在太阳照射下在地上的影子会形成一个长方形的黑色区域,汽车后保险杠、两侧车轮与地面在竖直平面内形成长方形亮区域
步骤七:通过对轮廓求最小外接矩形,根据感兴趣区域ROI的长宽比进行筛选,确定长方形亮区域和黑色区域
步骤八:根据灰度值大小从而分别确定出长方形亮区域和黑色区域;
黑色区域的灰度值小,而亮色区域的灰度值大,根据这个确定出黑色区域和亮色区域。
作为本技术方案的进一步限定,还包括步骤九:通过收集大量的长方形亮区域和黑色区域不同大小、时间的样本图像,以这些样本图像作为输入、每个图像所对应的车距作为输出,进行BP神经网络训练,得到图像对应的车距判断的BP神经网络模型。
作为本技术方案的进一步限定,还包括步骤十:采集图像数据对模型进行测试,根据模型对图像所判断的距离与实际测量到的距离进行比对,纠正,不断增加新的样本数据,不断迭代升级模型,提升模型的判断精度。
作为本技术方案的进一步限定,所述步骤一中高斯滤波的具体操作是:
用一个模板扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值,对均值滤波和方框滤波来说,其邻域内每个像素的权重是相等的;而在高斯滤波中,会将中心点的权重值加大,远离中心点的权重值减小,在此基础上计算邻域内各个像素值不同权重的和;
一维高斯分布公式如下:
二维高斯分布公式如下:
以模板的中心位置为坐标原点进行取样,将各个位置的坐标带入到高斯函数G中,得到的每个值按照位置排列,得到模板。
作为本技术方案的进一步限定,所述步骤二中图像进行灰度化处理的方式为:
f(x,y)=0.3R(x,y)+0.59G(x,y)+0.11B(x,y) (2-1)
其中:f(x,y)是灰度化后像素点的值;
R(x,y)、G(x,y)、B(x,y)分别是红、绿、蓝三个颜色通道的像素值;
红、绿、蓝三个颜色通道的像素值乘以对应的系数,最后计算得到这个像素点的灰度值。
所述步骤三中sobel算子主要用于获得数字图像的一阶梯度,常见的应用是对图像进行边缘检测提取;
sobel算子使用两个3*3的矩阵算子去和原始图像作卷积,分别得到横向G(x)和纵向G(y)的梯度值,如果梯度值大于某一个阈值,则认为该点为边缘点;
Sobel算子在x,y两个方向求导:
最后的结果为:
只需要提取竖直方向的边缘,因此只需计算Gy即可,就可提取得到图像的竖直边缘。
作为本技术方案的进一步限定,所述步骤四中图像二值化就是将图像上像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程;
二值图像每个像素只有两种取值:要么纯黑即0,要么纯白即1;
其中:f(i)是图像;
i是像素点的像素值;
T是判断阈值;
图像二值化的方法选择最大类间方差法OTSU,找到一个阈值使得大于该阈值和小于该阈值的两部分像素的方差和最大,目的是为了去掉尽可能多的信息,只保留最基本的信息;
对于图像I(x,y)属于前景的像素点数占整幅图像的比例记为ω0,其平均灰度μ0,背景像素点数占整幅图像的比例为ω1,其平均灰度为μ1,图像的总平均灰度记为μ,类间方差记为g;
假设图像的背景较暗,并且图像的大小为M×N,图像中像素的灰度值小于阈值T的像素个数记作N0,像素灰度大于阈值T的像素个数记作N1,则有:
ω0=N0/M×N
ω1=N1/M×N
N0+N1=M×N
ω0+ω1=1
μ=ω0*μ0+ω1*μ1 (4-2)
g=ω0(μ0-μ)^2+ω1(μ1-μ)^2 (4-3)
将式(4-2)代入式(4-3),得到等价公式:
g=ω0ω1(μ0-μ1)^2 (4-4)
采用遍历的方法得到使类间方差g最大的阈值T,即为所求。
作为本技术方案的进一步限定,所述步骤五的具体步骤如下:对图像先膨胀后腐蚀的过程称为闭运算,先进行膨胀以填充连通域内的小型空洞,扩大连通域的边界,连接邻近的两个连通域,之后通过腐蚀运算减少由膨胀运算引起的连通域边界的扩大及面积的增加。具有填充物体内细小空洞,连接邻近物体和平滑边界的作用,其数学表达式如下:
dst=close(src,element)=erode(dilate(src,element)) (5-1)。
作为本技术方案的进一步限定,所述步骤九中BP神经网络训练具体步骤如下:
BP网络采用的传递函数是非线性变换函数——Sigmoid函数,其特点是函数本身及其导数都是连续的,因而在处理上十分方便,单极性S型函数定义如下:
f(x)=1/(1+e-x) (9-1)
使用S型激活函数时,输入:
net=x1w1+x2w2+Λ+xnwn
输出为:
y=f(net)=1/(1+e-net) (9-2)则,输出y的导数为:
F′(net)=1/(1+e-net)-1/(1+e-net)2=y(1-y) (9-3)
第一步,网络初始化,给各个连接权值赋一个区间(-1,1)内的随机数,设定误差函数e,给定计算精度ε ε和学习次数M;
第二步,算计选取第k个输入样本以及对应的期望输出:
x(k)=(x1k,x2k,K,xnk)
d(k)=(d1k,d2k,K,dqk)
第三步,计算隐含层各神经元的输入和输出:
koh(k)=f(hih(k))h=1,2,...p
yoo(k)=f(yio(k))o=1,2,...p
第四步,利用网络期望输出和实际输出,计算误差函数对输出层的各神经元的偏导数:
第五步,利用输出层各神经元的δo(k)和隐含层各神经元的输出来修正连接权值who(k)
第六步,利用隐含层各神经元的δh(k)和输入层各神经元的输入来修正连接权值:
第七步,计算全局误差
第八步,判断网络误差是否满足要求,当误差大道预设精度或者学习次数大于设定的最大值,则结束算法,否则,选取下一个学习样本及对应的期望输出,返回到第三步,进入下一轮学习。
作为本技术方案的进一步限定,。
作为本技术方案的进一步限定,。
作为本技术方案的进一步限定,。
作为本技术方案的进一步限定,。
作为本技术方案的进一步限定,。
作为本技术方案的进一步限定,。
作为本技术方案的进一步限定,。
与现有技术相比,本发明的优点和积极效果是:
本方法通过划分周围的黑色区域和中间长方形的亮的区域,两者使用摄像头捕捉会分层明显便于摄像头捕捉,信息量较小方便构建数据库不需要庞大的数据池,简单的测距不便于确定车道车辆姿态等信息,通过清晰的长方形亮的区域发生变形可以方便测量。
附图说明
图1为本发明的。
图2为本发明的长方形亮区域和黑色区域示意图。
具体实施方式
下面结合附图,对本发明的一个具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
实施例一:
本发明包括以下步骤:
步骤一:获取到的前方车辆图像进行图像预处理,对图像进行高斯滤波处理,即高斯模糊,去除图像的噪声;
步骤二:高斯滤波后的图像进行灰度化处理,得到图像灰度图,去除图像的彩色信息,减少计算量;
步骤三:通过边缘检测sobel算子对图像进行竖直方向的边缘特征提取操作;
步骤四:通过二值化将图像转化成二值图,即像素值只有0或者1的图像;
步骤五:通过对二值图进行闭操作处理,得到若干个矩形框;
步骤六:通过对图像进行求轮廓操作,得到图像中所有的轮廓,其中包含感兴趣区域,即长方形亮区域和黑色区域;
所述步骤六中长方形亮区域和黑色区域划分依据:
晴天时,汽车后保险杠、两侧车轮在太阳照射下在地上的影子会形成一个长方形的黑色区域,汽车后保险杠、两侧车轮与地面在竖直平面内形成长方形亮区域
步骤七:通过对轮廓求最小外接矩形,根据感兴趣区域ROI的长宽比进行筛选,确定长方形亮区域和黑色区域
步骤八:根据灰度值大小从而分别确定出长方形亮区域和黑色区域;
黑色区域的灰度值小,而亮色区域的灰度值大,根据这个确定出黑色区域和亮色区域。
实施例二,是在实施例一基础上的进一步阐述:
还包括步骤九:通过收集大量的长方形亮区域和黑色区域不同大小、时间的样本图像,以这些样本图像作为输入、每个图像所对应的车距作为输出,进行BP神经网络训练,得到图像对应的车距判断的BP神经网络模型。
实施例三,是在实施例二基础上的进一步阐述:
还包括步骤十:采集图像数据对模型进行测试,根据模型对图像所判断的距离与实际测量到的距离进行比对,纠正,不断增加新的样本数据,不断迭代升级模型,提升模型的判断精度。
高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的去噪过程。高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。
所述步骤一中高斯滤波的具体操作是:
用一个模板扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值,对均值滤波和方框滤波来说,其邻域内每个像素的权重是相等的;而在高斯滤波中,会将中心点的权重值加大,远离中心点的权重值减小,在此基础上计算邻域内各个像素值不同权重的和;
一维高斯分布公式如下:
二维高斯分布公式如下:
以模板的中心位置为坐标原点进行取样,将各个位置的坐标带入到高斯函数G中,得到的每个值按照位置排列,得到模板。
这样输出的模板有两种形式:
(1)小数类型:直接计算得到的值,没有经过任何处理。
(2)整数类型:将得到的值进行归一化处理,即将左上角的值归一化为1,其他每个系数都除以左上角的系数,然后取整。在使用整数模板时,则需要在模板的前面加一个系数,该系数为模板系数之和的倒数。
例如:生成高斯核为3*3,σ=0.8的模板
小数模板:
0.057118 | 0.12476 | 0.057118 |
0.12476 | 0.2725 | 0.12476 |
0.057118 | 0.12476 | 0.057118 |
整数模板:
1 | 2.1842 | 1 |
2.1842 | 4.7707 | 2.1842 |
1 | 2.1842 | 1 |
再经过四舍五入和添加系数得到最终结果:
在实际使用中,高斯滤波使用的可能是不同大小的卷积核。可以分别是3×3、5×5、7×7大小的卷积核。在高斯滤波中,核的宽度和高度可以不相同,但是它们都必须是奇数。
图像灰度化,就是图像没有色彩信息。举个例子,原本的彩色图片是有RGB三种颜色组成的(也就是每个像素点有三个值),现在对图像进行灰度化处理,每个像素点只有一个值(0-255)表示颜色的深度。
彩色图片,颜色是在一个三维坐标下(也就是RGB模型)确定的,而灰度图的坐标是在一维坐标下确定的,取值范围为0-255。
所述步骤二中图像进行灰度化处理的方式为:
f(x,y)=0.3R(x,y)+0.59G(x,y)+0.11B(x,y) (2-1)
其中:f(x,y)是灰度化后像素点的值;
R(x,y)、G(x,y)、B(x,y)分别是红、绿、蓝三个颜色通道的像素值;
红、绿、蓝三个颜色通道的像素值乘以对应的系数,最后计算得到这个像素点的灰度值。
所述步骤三中sobel算子主要用于获得数字图像的一阶梯度,常见的应用是对图像进行边缘检测提取;
sobel算子使用两个3*3的矩阵算子去和原始图像作卷积,分别得到横向G(x)和纵向G(y)的梯度值,如果梯度值大于某一个阈值,则认为该点为边缘点;
Sobel算子在x,y两个方向求导:
最后的结果为:
只需要提取竖直方向的边缘,因此只需计算Gy即可,就可提取得到图像的竖直边缘。
所述步骤四中图像二值化就是将图像上像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程;
二值图像每个像素只有两种取值:要么纯黑即0,要么纯白即1;
其中:f(i)是图像;
i是像素点的像素值;
T是判断阈值;
图像二值化的方法选择最大类间方差法OTSU,找到一个阈值使得大于该阈值和小于该阈值的两部分像素的方差和最大,目的是为了去掉尽可能多的信息,只保留最基本的信息;
对于图像I(x,y)属于前景的像素点数占整幅图像的比例记为ω0,其平均灰度μ0,背景像素点数占整幅图像的比例为ω1,其平均灰度为μ1,图像的总平均灰度记为μ,类间方差记为g;
假设图像的背景较暗,并且图像的大小为M×N,图像中像素的灰度值小于阈值T的像素个数记作N0,像素灰度大于阈值T的像素个数记作N1,则有:
ω0=N0/M×N
ω1=N1/M×N
N0+N1=M×N
ω0+ω1=1
μ=ω0*μ0+ω1*μ1 (4-2)
g=ω0(μ0-μ)^2+ω1(μ1-μ)^2 (4-3)
将式(4-2)代入式(4-3),得到等价公式:
g=ω0ω1(μ0-μ1)^2 (4-4)
采用遍历的方法得到使类间方差g最大的阈值T,即为所求。
所述步骤五的具体步骤如下:对图像先膨胀后腐蚀的过程称为闭运算,先进行膨胀以填充连通域内的小型空洞,扩大连通域的边界,连接邻近的两个连通域,之后通过腐蚀运算减少由膨胀运算引起的连通域边界的扩大及面积的增加。具有填充物体内细小空洞,连接邻近物体和平滑边界的作用,其数学表达式如下:
dst=close(src,element)=erode(dilate(src,element)) (5-1)。
图像轮廓是图像局部特性不连续性的反映,轮廓提取采用掏空内部点的方法。对闭操作处理后的图像中目标像素为黑,且与它相邻的8个像素点都为黑,则将该目标像素点删除(置白),遍历除去边界的每一个像素,得到新的目标图像。
对获取的轮廓求凸包,凸包就是将给定二维平面上的点集最外层的点连接起来构成的凸多边形,它能包含点集中所有的点;对获取的凸包点计算凸包线的角度;将凸包点按照计算的凸包线角度进行旋转;
获取旋转后的点在x,y两方向上各自的最大最小值;利用获取的最大最小值计算此时最小外接矩形的面积。从而确定最小外接矩形的四个点坐标。
根据ROI的长宽比对矩形框进行筛选,首先去除带角度的各种矩形框,然后根据长宽比确定最终的ROI区域。
BP神经网络是一种多层的前馈神经网络,其主要的特点是:信号是前向传播的,而误差是反向传播的。具体来说,对于如下的只含一个隐层的神经网络模型:BP神经网络的过程主要分为两个阶段,第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置,输入层到隐含层的权重和偏置。
所述步骤九中BP神经网络训练具体步骤如下:
BP网络采用的传递函数是非线性变换函数——Sigmoid函数,其特点是函数本身及其导数都是连续的,因而在处理上十分方便,单极性S型函数定义如下:
f(x)=1/(1+e-x) (9-1)
使用S型激活函数时,输入:
net=x1w1+x2w2+Λ+xnwn
输出为:
y=f(net)=1/(1+e-net) (9-2)则,输出y的导数为:
F′(net)=1/(1+e-net)-1/(1+e-net)2=y(1-y) (9-3)
第一步,网络初始化,给各个连接权值赋一个区间(-1,1)内的随机数,设定误差函数e,给定计算精度ε ε和学习次数M;
第二步,算计选取第k个输入样本以及对应的期望输出:
x(k)=(x1k,x2k,K,xnk)
d(k)=(d1k,d2k,K,dqk)
第三步,计算隐含层各神经元的输入和输出:
hoh(k)=f(hih(k))h=1,2,...p
yoo(k)=f(yio(k))o=1,2,...p
第四步,利用网络期望输出和实际输出,计算误差函数对输出层的各神经元的偏导数:
第五步,利用输出层各神经元的δo(k)和隐含层各神经元的输出来修正连接权值who(k)
第六步,利用隐含层各神经元的δh(k)和输入层各神经元的输入来修正连接权值:
第七步,计算全局误差
第八步,判断网络误差是否满足要求,当误差大道预设精度或者学习次数大于设定的最大值,则结束算法,否则,选取下一个学习样本及对应的期望输出,返回到第三步,进入下一轮学习。
本方法通过划分周围的黑色区域和中间长方形的亮的区域,两者使用摄像头捕捉会分层明显便于摄像头捕捉,信息量较小方便构建数据库不需要庞大的数据池,简单的测距不便于确定车道车辆姿态等信息,通过清晰的长方形亮的区域发生变形可以方便测量。
以上公开的仅为本发明的具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (9)
1.一种车辆自动驾驶距离判断算法,其特征在于,包括以下步骤:
步骤一:获取到的前方车辆图像进行图像预处理,对图像进行高斯滤波处理,即高斯模糊,去除图像的噪声;
步骤二:高斯滤波后的图像进行灰度化处理,得到图像灰度图,去除图像的彩色信息,减少计算量;
步骤三:通过边缘检测sobel算子对图像进行竖直方向的边缘特征提取操作;
步骤四:通过二值化将图像转化成二值图,即像素值只有0或者1的图像;
步骤五:通过对二值图进行闭操作处理,得到若干个矩形框;
步骤六:通过对图像进行求轮廓操作,得到图像中所有的轮廓,其中包含感兴趣区域,即长方形亮区域和黑色区域;
所述步骤六中长方形亮区域和黑色区域划分依据:
晴天时,汽车后保险杠、两侧车轮在太阳照射下在地上的影子会形成一个长方形的黑色区域,汽车后保险杠、两侧车轮与地面在竖直平面内形成长方形亮区域;
步骤七:通过对轮廓求最小外接矩形,根据感兴趣区域ROI的长宽比进行筛选,确定长方形亮区域和黑色区域;
步骤八:根据灰度值大小从而分别确定出长方形亮区域和黑色区域;
黑色区域的灰度值小,而亮色区域的灰度值大,根据这个确定出黑色区域和亮色区域。
2.根据权利要求1所述的车辆自动驾驶距离判断算法,其特征在于:还包括步骤九:通过收集大量的长方形亮区域和黑色区域不同大小、时间的样本图像,以这些样本图像作为输入、每个图像所对应的车距作为输出,进行BP神经网络训练,得到图像对应的车距判断的BP神经网络模型。
3.根据权利要求2所述的车辆自动驾驶距离判断算法,其特征在于:还包括步骤十:采集图像数据对模型进行测试,根据模型对图像所判断的距离与实际测量到的距离进行比对,纠正,不断增加新的样本数据,不断迭代升级模型,提升模型的判断精度。
5.根据权利要求1所述的车辆自动驾驶距离判断算法,其特征在于:所述步骤二中图像进行灰度化处理的方式为:
f(x,y)=0.3R(x,y)+0.59G(x,y)+0.11B(x,y) (2-1)
其中:f(x,y)是灰度化后像素点的值;
R(x,y)、G(x,y)、B(x,y)分别是红、绿、蓝三个颜色通道的像素值;
红、绿、蓝三个颜色通道的像素值乘以对应的系数,最后计算得到这个像素点的灰度值。
7.根据权利要求1所述的车辆自动驾驶距离判断算法,其特征在于:所述步骤四中图像二值化就是将图像上像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程;
二值图像每个像素只有两种取值:要么纯黑即0,要么纯白即1;
其中:f(i)是图像;
i是像素点的像素值;
T是判断阈值;
图像二值化的方法选择最大类间方差法OTSU,找到一个阈值使得大于该阈值和小于该阈值的两部分像素的方差和最大,目的是为了去掉尽可能多的信息,只保留最基本的信息;
对于图像I(x,y)属于前景的像素点数占整幅图像的比例记为ω0,其平均灰度μ0,背景像素点数占整幅图像的比例为ω1,其平均灰度为μ1,图像的总平均灰度记为μ,类间方差记为g;
假设图像的背景较暗,并且图像的大小为M×N,图像中像素的灰度值小于阈值T的像素个数记作N0,像素灰度大于阈值T的像素个数记作N1,则有:
ω0=N0/M×N
ω1=N1/M×N
N0+N1=M×N
ω0+ω1=1
μ=ω0*μ0+ω1*μ1 (4-2)
g=ω0(μ0-μ)^2+ω1(μ1-μ)^2 (4-3)
将式(4-2)代入式(4-3),得到等价公式:
g=ω0ω1(μ0-μ1)^2 (4-4)
采用遍历的方法得到使类间方差g最大的阈值T,即为所求。
8.根据权利要求1所述的车辆自动驾驶距离判断算法,其特征在于:所述步骤五的具体步骤如下:对图像先膨胀后腐蚀的过程称为闭运算,先进行膨胀以填充连通域内的小型空洞,扩大连通域的边界,连接邻近的两个连通域,之后通过腐蚀运算减少由膨胀运算引起的连通域边界的扩大及面积的增加。具有填充物体内细小空洞,连接邻近物体和平滑边界的作用,其数学表达式如下:
dst=close(src,element)=erode(dilate(src,element)) (5-1)。
9.根据权利要求2所述的车辆自动驾驶距离判断算法,其特征在于:所述步骤九中BP神经网络训练具体步骤如下:
BP网络采用的传递函数是非线性变换函数——Sigmoid函数,其特点是函数本身及其导数都是连续的,因而在处理上十分方便,单极性S型函数定义如下:
f(x)=1/(1+e-x) (9-1)
使用S型激活函数时,输入:
net=x1w1+x2w2+Λ+xnwn
输出为:
y=f(net)=1/(1+e-net) (9-2)
则,输出y的导数为:
F′(net)=1/(1+e-net)-1/(1+e-net)2=y(1-y) (9-3)
第一步,网络初始化,给各个连接权值赋一个区间(-1,1)内的随机数,设定误差函数e,给定计算精度εε和学习次数M;
第二步,算计选取第k个输入样本以及对应的期望输出:
x(k)=(x1k,x2k,K,xnk)
d(k)=(d1k,d2k,K,dqk)
第三步,计算隐含层各神经元的输入和输出:
hoh(k)=f(hih(k)) h1,2,...p
yoo(k)=f(yio(k)) o=1,2,...p
第四步,利用网络期望输出和实际输出,计算误差函数对输出层的各神经元的偏导数:
第五步,利用输出层各神经元的δo(k)和隐含层各神经元的输出来修正连接权值who(k)
第六步,利用隐含层各神经元的δh(k)和输入层各神经元的输入来修正连接权值:
第七步,计算全局误差
第八步,判断网络误差是否满足要求,当误差大道预设精度或者学习次数大于设定的最大值,则结束算法,否则,选取下一个学习样本及对应的期望输出,返回到第三步,进入下一轮学习。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210626817.4A CN114972276A (zh) | 2022-06-05 | 2022-06-05 | 一种车辆自动驾驶距离判断算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210626817.4A CN114972276A (zh) | 2022-06-05 | 2022-06-05 | 一种车辆自动驾驶距离判断算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114972276A true CN114972276A (zh) | 2022-08-30 |
Family
ID=82960590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210626817.4A Pending CN114972276A (zh) | 2022-06-05 | 2022-06-05 | 一种车辆自动驾驶距离判断算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114972276A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115593375A (zh) * | 2022-12-16 | 2023-01-13 | 广汽埃安新能源汽车股份有限公司(Cn) | 车辆紧急制动方法、装置、设备和计算机可读介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398894A (zh) * | 2008-06-17 | 2009-04-01 | 浙江师范大学 | 机动车车牌自动识别方法及其实现装置 |
CN103927526A (zh) * | 2014-04-30 | 2014-07-16 | 长安大学 | 一种基于高斯差分多尺度边缘融合的车辆检测方法 |
CN104063882A (zh) * | 2014-06-27 | 2014-09-24 | 四川大学 | 一种基于双目的车辆视频测速方法 |
CN107784661A (zh) * | 2017-09-08 | 2018-03-09 | 上海电力学院 | 基于区域生长法的变电站设备红外图像分类识别方法 |
CN110008932A (zh) * | 2019-04-17 | 2019-07-12 | 四川九洲视讯科技有限责任公司 | 一种基于计算机视觉的车辆违章压线检测方法 |
CN111145161A (zh) * | 2019-12-28 | 2020-05-12 | 北京工业大学 | 一种路面裂缝数字图像处理和识别的方法 |
CN111429462A (zh) * | 2020-02-26 | 2020-07-17 | 重庆邮电大学 | 一种基于边缘检测和数学形态学的车牌定位方法 |
CN112001216A (zh) * | 2020-06-05 | 2020-11-27 | 商洛学院 | 一种基于计算机的汽车行驶车道检测系统 |
CN112115889A (zh) * | 2020-09-23 | 2020-12-22 | 成都信息工程大学 | 基于视觉的智能车运动目标检测方法 |
CN113362375A (zh) * | 2021-06-16 | 2021-09-07 | 江铃汽车股份有限公司 | 用于车辆的运动目标检测方法 |
CN113378690A (zh) * | 2021-06-08 | 2021-09-10 | 盐城工学院 | 一种基于视频数据的路内不规范停车识别方法 |
CN114565525A (zh) * | 2022-02-21 | 2022-05-31 | 秦延宁 | 一种基于树叶图片辨别树种的方法 |
-
2022
- 2022-06-05 CN CN202210626817.4A patent/CN114972276A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101398894A (zh) * | 2008-06-17 | 2009-04-01 | 浙江师范大学 | 机动车车牌自动识别方法及其实现装置 |
CN103927526A (zh) * | 2014-04-30 | 2014-07-16 | 长安大学 | 一种基于高斯差分多尺度边缘融合的车辆检测方法 |
CN104063882A (zh) * | 2014-06-27 | 2014-09-24 | 四川大学 | 一种基于双目的车辆视频测速方法 |
CN107784661A (zh) * | 2017-09-08 | 2018-03-09 | 上海电力学院 | 基于区域生长法的变电站设备红外图像分类识别方法 |
CN110008932A (zh) * | 2019-04-17 | 2019-07-12 | 四川九洲视讯科技有限责任公司 | 一种基于计算机视觉的车辆违章压线检测方法 |
CN111145161A (zh) * | 2019-12-28 | 2020-05-12 | 北京工业大学 | 一种路面裂缝数字图像处理和识别的方法 |
CN111429462A (zh) * | 2020-02-26 | 2020-07-17 | 重庆邮电大学 | 一种基于边缘检测和数学形态学的车牌定位方法 |
CN112001216A (zh) * | 2020-06-05 | 2020-11-27 | 商洛学院 | 一种基于计算机的汽车行驶车道检测系统 |
CN112115889A (zh) * | 2020-09-23 | 2020-12-22 | 成都信息工程大学 | 基于视觉的智能车运动目标检测方法 |
CN113378690A (zh) * | 2021-06-08 | 2021-09-10 | 盐城工学院 | 一种基于视频数据的路内不规范停车识别方法 |
CN113362375A (zh) * | 2021-06-16 | 2021-09-07 | 江铃汽车股份有限公司 | 用于车辆的运动目标检测方法 |
CN114565525A (zh) * | 2022-02-21 | 2022-05-31 | 秦延宁 | 一种基于树叶图片辨别树种的方法 |
Non-Patent Citations (2)
Title |
---|
CHIFENG WU: ""Applying a Functional Neurofuzzy Network to Real-Time Lane Detection and Front-Vehicle Distance Measurement"", 《IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS》, 31 July 2012 (2012-07-31), pages 3 * |
唐甜: ""基于毫米波雷达与视觉信息融合的前方车辆检测"", 《中国优秀硕士学位论文全文数据库 工程科技1辑》, 15 January 2022 (2022-01-15), pages 3 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115593375A (zh) * | 2022-12-16 | 2023-01-13 | 广汽埃安新能源汽车股份有限公司(Cn) | 车辆紧急制动方法、装置、设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111553859B (zh) | 一种激光雷达点云反射强度补全方法及系统 | |
CN112270249B (zh) | 一种融合rgb-d视觉特征的目标位姿估计方法 | |
CN110569704B (zh) | 一种基于立体视觉的多策略自适应车道线检测方法 | |
CN107680054B (zh) | 雾霾环境下多源图像融合方法 | |
Hamzah et al. | Improvement of stereo matching algorithm for 3D surface reconstruction | |
CN104318548B (zh) | 一种基于空间稀疏度和sift特征提取的快速图像配准实现方法 | |
CN109615653B (zh) | 基于深度学习与视场投影模型的渗漏水面积检测与识别方法 | |
CN110246151B (zh) | 一种基于深度学习和单目视觉的水下机器人目标跟踪方法 | |
CN111563878B (zh) | 一种空间目标定位方法 | |
CN107330376A (zh) | 一种车道线识别方法及系统 | |
CN109961417B (zh) | 图像处理方法、装置及移动装置控制方法 | |
CN110766669B (zh) | 一种基于多目视觉的管线测量方法 | |
CN110232389A (zh) | 一种基于绿色作物特征提取不变性的立体视觉导航方法 | |
CN111768452B (zh) | 一种基于深度学习的非接触式自动贴图方法 | |
CN106096604A (zh) | 基于无人平台的多波段融合探测方法 | |
CN109559324A (zh) | 一种线阵图像中的目标轮廓检测方法 | |
CN109060838B (zh) | 一种基于机器视觉的产品表面划痕检测方法 | |
CN113570658A (zh) | 基于深度卷积网络的单目视频深度估计方法 | |
CN113971669A (zh) | 应用于管道损伤识别的三维检测系统 | |
CN116279592A (zh) | 一种用于无人物流车的可行驶区域划分方法 | |
CN114677479A (zh) | 一种基于深度学习的自然景观多视图三维重建方法 | |
CN114549669B (zh) | 一种基于图像融合技术的彩色三维点云获取方法 | |
CN114972276A (zh) | 一种车辆自动驾驶距离判断算法 | |
Peng et al. | Simultaneous perimeter measurement for 3D object with a binocular stereo vision measurement system | |
CN117764983A (zh) | 一种用于智能制造产线的双目识别的视觉检测的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |