CN114445793A - 一种基于人工智能和计算机视觉的智能驾驶辅助系统 - Google Patents
一种基于人工智能和计算机视觉的智能驾驶辅助系统 Download PDFInfo
- Publication number
- CN114445793A CN114445793A CN202111562454.4A CN202111562454A CN114445793A CN 114445793 A CN114445793 A CN 114445793A CN 202111562454 A CN202111562454 A CN 202111562454A CN 114445793 A CN114445793 A CN 114445793A
- Authority
- CN
- China
- Prior art keywords
- network
- artificial intelligence
- camera
- computer vision
- system based
- 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
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 28
- 238000001514 detection method Methods 0.000 claims abstract description 27
- 238000004364 calculation method Methods 0.000 claims abstract description 25
- 238000013528 artificial neural network Methods 0.000 claims description 31
- 230000000007 visual effect Effects 0.000 claims description 5
- 230000001133 acceleration Effects 0.000 abstract description 3
- 238000000034 method Methods 0.000 description 24
- 238000005259 measurement Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 238000003384 imaging method Methods 0.000 description 9
- 210000002569 neuron Anatomy 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 241000282414 Homo sapiens Species 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 4
- 102100034112 Alkyldihydroxyacetonephosphate synthase, peroxisomal Human genes 0.000 description 4
- 101000799143 Homo sapiens Alkyldihydroxyacetonephosphate synthase, peroxisomal Proteins 0.000 description 4
- 230000004913 activation Effects 0.000 description 4
- 238000000848 angular dependent Auger electron spectroscopy Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 206010039203 Road traffic accident Diseases 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000008030 elimination Effects 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 238000012886 linear function Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000017105 transposition Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000004804 winding Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 231100000279 safety data Toxicity 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- 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/80—Geometric correction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/90—Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及人工智能技术领域,尤其涉及一种基于人工智能和计算机视觉的智能驾驶辅助系统,通过安装在汽车前挡风玻璃顶部中央和车身四周的数据采集模组采集汽车周边数据,再将数据送至数据处理终端处理,数据处理终端处理包括GPU和CPU,能够同时处理多个并行任务,使用CUDA和TensorRT对密集计算部分进行并行化加速,使整个系统满足实时性要求,同时采用级联网络实现小目标识别,第一级目标检测网络首先识别出红绿灯、禁令标志、警告标志以及指示标志的位置,然后裁剪下相关区域送入第二级图像分类网络进行分类,识别出具体标志内容,提高了小目标的识别准确率。
Description
技术领域
本发明涉及人工智能和计算机视觉技术领域,尤其涉及一种基于人工智能和计算机视觉的智能驾驶辅助系统。
背景技术
驾驶辅助系统(Advanced DriverAssistance System),简称ADAS,是利用安装于车上的各式各样的传感器,在第一时间收集车内外的环境数据,进行静、动态物体的辨识、侦测与追踪等技术上的处理,从而能够让驾驶者在最快的时间察觉可能发生的危险,以引起注意和提高安全性的主动安全技术。ADAS采用的传感器主要有摄像头、雷达、激光和超声波等,可以探测光、热、压力或其它用于监测汽车状态的变量,通常位于车辆的前后保险杠、侧视镜、驾驶杆内部或者挡风玻璃上。早期的ADAS技术主要以被动式报警为主,当车辆检测到潜在危险时,会发出警报提醒驾车者注意异常的车辆或道路情况。随着科技发展,主动式干预的ADAS也开始广泛应用,尤其是基于神经网络的深度学习的驾驶辅助系统,但由于神经网络推理计算量大,所需计算时间长,而嵌入式设备算力较低,不能满足实时性要求,而且对于小目标识别难以达到准确性要求,对车辆安全数据监测的准确性也不足。
发明内容
本发明的目的在于提供一种基于人工智能和计算机视觉的智能驾驶辅助系统,旨在解决现有的驾驶辅助系统无法满足实时性要求以及车辆安全监测数据不够准确的技术问题。
为实现上述目的,本发明提供了一种基于人工智能和计算机视觉的智能驾驶辅助系统,包括数据采集模组和数据处理终端,所述数据采集模组和所述数据处理终端间通过USB3.0接口传输数据;
所述数据采集模组包括双目摄像头、结构光测距单元和四个鱼眼摄像头,所述双目摄像头和结构光测距单元设置在汽车前挡风玻璃顶部中央,四个所述鱼眼摄像头安装在车身四周。
其中,所述双目摄像头由左右两个摄像机水平放置组成,根据两个摄像机对物体所呈现图像的差异判断物体的距离。
所述双目摄像头的成像原理类似于人眼,通过左右摄像头采集到的图像,计算图像间的视差来测量每一个像素的深度。
其中,所述结构光测距单元包括激光散斑投射器和激光接收摄像头,所述激光散斑投射器负责向被测物体表面投射可控制的光点、光条或光面结构,所述激光接收摄像头负责接收物体表面反射的结构光图案,最后通过系统几何关系,利用三角原理计算得到物体的三维坐标。
结构光是指激光经过柱面透镜后汇聚成宽度很窄的光带或是已知空间方向的投影光线的集合的具有特殊结构的光,结构光测量方法在实际三维轮廓测量中被广泛使用。
其中,每个所述鱼眼摄像头的视角为210°,采集后的图像经过拼接获得车身周围360°的全景图像。
因为需要采集到车身周围360°全景,普通摄像头视角无法满足要求,但所述鱼眼摄像头有非常大的畸变,需要通过算法去除摄像头畸变。
其中,所述数据处理终端包括一个NVIDIA VOLTA结构的GPU和一个6核NVIDIACaarmel ARM v8.264位CPU,GPU负责神经网络推理计算,CPU负责运行双目测距、结构光测距以及全景图像拼接任务。
所述数据处理终端将全部任务分配给CPU和GPU,全部任务同时进行,分别利用CPU和GPU的计算资源,加快了计算速度。
其中,所述GPU运行两个神经网络,分别是用于区分各类目标的目标识别网络和用于分割车道线的车道线识别网络,所述目标识别网络和所述车道线识别网络通过TensorRT加速后序列化存储在磁盘中。
其中,所述目标识别网络为级联网络,包括第一级目标检测网络和第二级图像分类网络,所述第一级目标检测网络负责识别出红绿灯、禁令标志、警告标志的位置,所述第二级图像分类网络负责识别出具体的标志内容。
其中,所述车道线识别网络基于全连接层的分类,将车道线检测定义为寻找车道线在图像中某些行的位置的集合,使用的特征是全局特征。
所述车道线识别网络在检测某一行的车道线位置时,感受野就是全图大小,直接解决了局部感受野的问题。
本发明的一种基于人工智能和计算机视觉的智能驾驶辅助系统,通过安装在汽车前挡风玻璃顶部中央和车身四周的数据采集模组采集汽车周边数据,再将数据送至数据处理终端处理,数据处理终端处理包括GPU和CPU,能够同时处理多个并行任务,使用CUDA和TensorRT对密集计算部分进行并行化加速,使整个系统满足实时性要求,同时采用级联网络实现小目标识别,第一级目标检测网络首先识别出红绿灯、禁令标志、警告标志以及指示标志的位置,然后裁剪下相关区域送入第二级图像分类网络进行分类,识别出具体标志内容,提高了小目标的识别准确率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种基于人工智能和计算机视觉的智能驾驶辅助系统的构成示意图。
图2是本发明的一种基于人工智能和计算机视觉的智能驾驶辅助系统的工作流程图。
图3是常用神经网络层的卷积计算示意图。
图4是本发明的双目摄像头的模型示意图。
图5是成像模型中的像素坐标系与图像坐标系的关系示意图。
图6是成像模型中的摄像机模型和空间坐标系的关系示意图。
图7是本发明的小目标实例示意图。
图8是交通标志分类示意图。
图9是本发明的具体实施例的整体效果示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
请参阅图1,本发明提出了一种基于人工智能和计算机视觉的智能驾驶辅助系统,包括数据采集模组和数据处理终端,所述数据采集模组和所述数据处理终端间通过USB3.0接口传输数据;
所述数据采集模组包括双目摄像头、结构光测距单元和四个鱼眼摄像头,所述双目摄像头和结构光测距单元设置在汽车前挡风玻璃顶部中央,四个所述鱼眼摄像头安装在车身四周。
所述双目摄像头由左右两个摄像机水平放置组成,根据两个摄像机对物体所呈现图像的差异判断物体的距离。
所述结构光测距单元包括激光散斑投射器和激光接收摄像头,所述激光散斑投射器负责向被测物体表面投射可控制的光点、光条或光面结构,所述激光接收摄像头负责接收物体表面反射的结构光图案,最后通过系统几何关系,利用三角原理计算得到物体的三维坐标。
每个所述鱼眼摄像头的视角为210°,采集后的图像经过拼接获得车身周围360°的全景图像。
所述数据处理终端包括一个NVIDIA VOLTA结构的GPU和一个6核NVIDIA CaarmelARM v8.264位CPU,GPU负责神经网络推理计算,CPU负责运行双目测距、结构光测距以及全景图像拼接任务。
所述GPU运行两个神经网络,分别是用于区分各类目标的目标识别网络和用于分割车道线的车道线识别网络,所述目标识别网络和所述车道线识别网络通过TensorRT加速后序列化存储在磁盘中。
所述目标识别网络为级联网络,包括第一级目标检测网络和第二级图像分类网络,所述第一级目标检测网络负责识别出红绿灯、禁令标志、警告标志的位置,所述第二级图像分类网络负责识别出具体的标志内容。
所述车道线识别网络基于全连接层的分类,将车道线检测定义为寻找车道线在图像中某些行的位置的集合,使用的特征是全局特征。
请参阅图2,所述基于人工智能和计算机视觉的智能驾驶辅助系统的详细工作流程如图示。
进一步地,本发明就各个相关位置术语对所述基于人工智能和计算机视觉的智能驾驶辅助系统进行说明:
(1)深度神经网络
近年来,深度学习一直处于人工智能革命的前沿,它在计算机视觉、自然语言处理和语音识别等领域取得的瞩目成绩使人们相信深度学习是人们进入通用人工智能时代的一种途径。深度学习来源于人们对人工神经网络的研究,最初的人工神经网络只能处理简单的逻辑运算和拟合线性函数,随着反向传播(Back Propagation)算法的提出和计算机算力的显著提升,训练更复杂更深的深度神经网络成为可能。
1)数字模型
假设C为一个L层的卷积神经网络,其第i层网络的输出为xi=f(xi-1),其中xi-1表示第i-1层网络的输出,f(·)表示该层网络对前一层输出的映射。对于训练一个N分类模型而言,假设训练样本数量为M个,以平方误差为例计算损失函数L:
在每次迭代过程中,利用梯度下降算法对每层网络的神经元权值进行更新。设Wt为第t次迭代后的权值,则权值更新表示为:
2)常用神经网络层
卷积层
在神经网络中,如果采用全连接的神经网络结构,则对于一副输入图像,需要图像中的每一个像素都需要一个神经元与之连接,即隐含层神经元数量等同于待处理图像的像素数量,因此随着层数增加整个网络的参数规模变得异常庞大,在当前计算机的运算能力下将难以训练。卷积层的提出缓解上述问题。如图3卷积计算示意图所示,一方面,卷积层采用局部连接的方式,使用卷积核按照固定步长扫描图像全局,这样就减少了神经元的数量;另一方面,同一卷积核遍历整幅输入图像时保持权值共享,即属于同一特征图的神经元与输入数据相连后,将会使用相同的权值参数。
池化层
池化层往往紧随卷积层之后,其作用在于过滤冗余特征同时减少参数防止过拟合,本质上是对卷积层所提取到的特征进行聚合统计。池化操作对图像具有平移不变性,即原始图片经过微小平移之后的池化特征仍然保持不变。
激活层
最初的神经网络只能拟合线形函数,即便可以将层数不断累加,但是网络的输出仍然与输入保持着线性关系。引入激活层之后,由于激活函数具有非线性,整个神经网络就相当于一个非线性函数,可以用来求解一些非线性问题。实际使用中,我们需要根据任务的不同选择性质相符的激活函数,常见的激活函数包括:Sigmoid、Relu、Leaky ReLU、Tanh、Maxout等。
反卷积层(转置卷积层)
反卷积又被称为转置卷积,卷积层的前向传播过程就是反卷积层的反向传播过程;卷积层的前向传播是为了将数据由高维向低维转换,从而提取其中的特征,而反卷积则是由低维向高维转换,将特征转换为相应的信息。
全连接层
一般在输出层之前会加全连接层,即输入的所有神经元与输出的所有神经元之间全部连接,有研究表明,全连接层在特征提取上相比其他层而言有最好的效果,同时也有最大的计算复杂度。
输入输出层
输入层是将输入数据转换成网络要求的特殊形状,即将二维或者三维矩阵“拉直”,使其成为一维矩阵;输出层根据网络的特定任务呈现不同的结构,输出特定结构的数据。
3)优化器(Optimizer)
机器学习中,有很多优化方法来试图寻找模型的最优解。比如神经网络中可以采取最基本的梯度下降法。而本发明中使用的为Adam优化器,其算法思想为:首先,Adam中动量直接并入了梯度一阶矩(指数加权)的估计。其次,相比于缺少修正因子导致二阶矩估计可能在训练初期具有很高偏置的RMSProp,Adam包括偏置修正,修正从原点初始化的一阶矩(动量项)和(非中心的)二阶矩估计。
算法描述:
AdaDelta算法策略可以表示为:
其中,mt和vt分别为一阶动量项和二阶动量项。β1,β2为动力值;分别为各自的修正值。Wt表示t时刻即第t迭代模型的参数,gt=ΔJ(Wt)表示t次迭代代价函数关于W的梯度大小;∈是一个取值很小的数为了避免分母为0。Adam对超参数的选择相当鲁棒,尽管学习率有时需要从建议的默认修改。
(2)双目摄像头测距原理
双目立体视觉是计算机视觉中的一个重要分支,而测距是双目立体视觉中的一个简单应用。简要介绍双目立体视觉的组成与测距模型。
1)相机成像模型
相机将三维世界的坐标点映射到二维图像平面的过程可以用一个几何模型进行表示,通常几何模型有多种,常见相机模型有针孔模型、双目相机模型,其中针孔模型是最简单也是最常用的相机模型。
2)针孔相机模型
将一个带孔的板放在墙体和点燃的蜡烛之间,蜡烛的光会透过板上的小孔投影到墙体上,这时墙体就会出现一个倒立的蜡烛图像,如果移动带孔的板,墙体上倒立蜡烛的图像大小也会随之变化。
3)双目相机模型
针孔相机模型描述的是单个相机的成像模型,然而仅根据一个像素是无法确定空间点的具体位置。测量景物深度的方法有很多,譬如人类就可以根据左右眼观测到景物视差来判断景物到人眼之间的距离。双目相机的成像原理类似于人眼,通过左右摄像头采集到的图像,计算图像间的视差来测量每一个像素的深度。本发明所用的便是双目相机模型,图4为双目相机的成像原理。
双目相机一般由左右两个摄像机水平放置组成。OL与OR分别为左右摄像机的光圈中心,由于双目相机是水平放置的,表明两个相机的光圈中心的连线构成一条线段,左右相机的光圈中心OL与OR之间的距离称为双目相机的基线(一般记作b),基线是双目相机的重要参数。
4)成像模型中的四个坐标系
将像素坐标系记为O1-uv,图像坐标系记为O0-xy。像素坐标系下的横坐标u和纵坐标v分别表示图像数组所在的列数与行数,单位为像素,而像素在图像坐标系中并没有物理单位进行度量。像素坐标系下的u轴和v轴分别与图像坐标系下的x轴和y轴平行。像素坐标系与图像坐标系如图5所示。
摄像机光轴与图像平面的交点为O1,O1称为主点,主点的像素坐标为(uo,vo),uo与vo为图像平面的中心,也是摄像机的内部参数,dx与dy分别为像素坐标系中一个像素在x轴和y轴上的物理尺寸,图像坐标系中一个像素点在像素坐标系下的坐标与在图像坐标系下的坐标之间的关系:
用齐次坐标与矩阵表示:
将世界坐标系记为Ow-XwYwZw,摄像机坐标系记为Oc-XcYZc,其中Oc点为摄像机的光心,Zc轴过主点O1且与图像平面垂直,假设摄像机的焦距0c01为f,空间一点P在摄像机坐标系下的坐标(Xc,Yc,Zc),在世界坐标系下的坐标(Xw,Yw,Zw),P点在摄像机成像平面上的对应点为p,p点的像素坐标和图像坐标分别为(u,v)和(x,y)。摄像机模型和空间坐标系可以用图6表示。
空间点P在摄像机坐标系下坐标(Xc,Yc,Zc)与其对应点p的图像坐标(x,y)之间的关系:
矩阵表示二者的关系:
P点在摄像机坐标系下坐标(Xc,Yc,Zc)与在世界坐标系下坐标(Xw,Yw,Zw)之间的转换关系:
由前几式可推出:
双目视觉与人类视觉类似,人类视觉中双眼判断物体的距离是根据双眼对物体所呈现图像的差异决定的,这就是视差。
(3)结构光测距原理
结构光(Structured light)是指激光经过柱面透镜后汇聚成宽度很窄的光带或是已知空间方向的投影光线的集合的具有特殊结构的光。生成结构光的设备是将光点、光缝、光栅、格网或斑纹投影到被测物体上的某种投影设备或仪器,也可以是生成激光束的激光器。
结构光是一种主动式光学测量技术,其基本原理是由结构光投射器向被测物体表面投射可控制的光点、光条或光面结构,并由摄像机接受该物体表面反射的结构光图案,通过系统几何关系,利用三角原理计算得到物体的三维坐标。简单的结构化包括点结构光、线结构光以及简单的面结构光;此外还有编码结构光法和相位法,主要测量原理如下:
1)光点式通过逐点扫描物体进行测量,图像摄取和图像处理需要的时间随着被测物体的增大而急剧增加,难以完成实时测量。
2)光线式通过一维扫描就可以获得物体的深度图,图像获取和图像处理的时间大大减少。
3)光面式将二维的结构光图案投射到物体表面上,这样不需要进行扫描就可以实现三维轮廓测量,测量速度很快,光面结构光中最常用的方法是投影光栅条纹到物体表面。
4)编码结构光法为了确定物体表面点与其图像像素点之间的对应关系,需要对投射的图案进行编码。用于投影的结构光图案比较复杂时。
5)相位法是将光栅图案投射到被测物表面,受物体高度的调制,光棚条纹发生形变,这种变形条纹可解释为相位和振幅均被调制的空间载波信号。采集变形条纹并且对其进行解调可以得到包含高度信息的相位变化,最后根据三角法原理计算出高度。
以面结构光为例阐述测量的具体原理。首先通过计算机编程产生正弦条纹,利用四步移相法将产生的四幅相位相差π/2的正弦条纹通过投影设备分时投影至被测物体上,通过摄像机采集四幅被调制的条纹图和四幅参考面的条纹图;然后由四幅受调制的条纹图计算出被调制的相位,这里缠绕的相位即相位值被限制在[-π,π]之间,所以要进行相位解缠恢复出真实相位,然后将上述两者相减得到相位差,将此相位差带入到已经建立好的相位与高度转化的公式中,计算出高度数据。
结构光测量方法具有计算简单、体积小、价格低、便于安装和维护的特点,在实际三维轮廓测量中被广泛使用。
(4)车道线检测网络原理
车道线检测是辅助驾驶系统中的一个基础模块,早期已有很多基于传统图像处理实现的车道线检测算法。但随着研究的深入,车道线检测任务所应对的场景越来越多样化,逐步已经脱离了对于“白、黄色线条”这种低阶理解。目前更多的方式是寻求对于语义上车道线存在位置的检测,即使它是模糊的、被光照影响的、甚至是完全被遮挡的。
本发明采用了全新的车道线检测方法:将车道线检测定义为寻找车道线在图像中某些行的位置的集合,即基于行方向上的位置选择、分类(row-based classification)。可以解决局部感受野导致的复杂车道线检测困难问题。由于本发明方法是基于全连接层的分类,它所使用的特征是全局特征。这样就直接解决了局部感受野的问题。本发明采用的车道线检测方法,在检测某一行的车道线位置时,感受野就是全图大小。因此也不需要复杂的信息传递机制就可以实现很好的效果。
(5)小目标检测
由于红绿灯、交通标志等在摄像头拍摄的图像中只占极小的面积(如下图所示),这就涉及到业界公认的难点问题——小目标识别;目前无论是以计算速度快著称的YOLO系列目标识别网络还是以精度高著称的R-CNN系列目标识别网络,对小目标的识别和定位,准确率都较低,无法满足本发明的实际使用要求,且R-CNN系列网络计算量大,难以满足实时性要求。
如图7所示的实测图片,可以看到途中交通标志非常小,对于远处的一个交通标志,肉眼已经难以分辨其内容,而这两个交通标志分别表示禁止停车和注意儿童;对于注意儿童的交通指示牌识别距离越远,越可以为驾驶员留出反应时间,最大限度的避免交通事故的发生。
本发明采用级联网络方式识别小目标:即采用目标检测网络和图像分类网络级联。我国的交通标志主要分为三大类,分别为禁令标志、警告标志、指示标志(如图8所示),本发明第一级目标检测网络只识别交通标志属于这三类中的哪一类,因为这三类标志都有自身明显的特点,禁令标志一般为白底,红色圆圈;而警告标志一般为黄底、黑色边框;而指示标志为蓝底。具有较高区分度,可以减小第一级网络压力,使第一级网络能够把重点放在准确标定交通指示标志的位置。然后将目标识别网络识别到的交通标志裁剪下来,送入第二集图像分类网络,进一步识别交通标志的内容。
(6)目标检测网络原理
1)原理
将物体检测(object detection)问题看成回归问题,并将图像分为S×S的网格。如果一个目标的中心落入格子,该格子就负责检测该目标。每个网格都会输出boundingbox,confidence和class probability map。其中:bounding box包含4个值:x,y,w,h。(x,y)代表box的中心,(w,h)代表box的宽和高;confidence表示这个预测框中包含物体的概率,其实也是预测框与真实框之间的IOU值;class probability表示的是该物体的类别概率,在YOLOv3中采用的是二分类的方法。
将尺寸为608×608的RGB输入图片进入BackBone部分和Neck部分后得到了3个分支,这些分支在经过一系列的卷积、上采样以及合并等操作后最终得到了三个尺寸不一的feature map,形状分别为[19,19,255]、[38,38,255]和[76,76,255]。
2)检测方法
多尺度检测和自适应anchor:网络的三个分支输出会被送入decode函数中对Feature Map的通道信息进行解码。bh和bw分别表示预测框的长宽,Ph和Pw分别表示先验框的长和宽,tx和ty表示的是物体中心距离网格左上角位置的偏移量,Cx和Cy则代表网格左上角的坐标。anchor是通过k-means聚类算法得的,这样更贴合实际的训练数据。本发明的网络结构配置预先给出默认的一组anchor,当bpr小于0.98时重新计算anchor,使得网络可以自适应不同的数据分布,从而提高预测的准确率。
非极大值抑制(Non-Maximum Suppression,NMS):即抑制不是极大值的元素,去除掉那些重叠率较高并且score评分较低的边界框。NMS的算法非常简单,迭代流程如下:
①判断边界框的数目是否大于0,如果不是则结束迭代;
②按照socre排序选出评分最大的边界框A并取出;
③计算这个边界框A与剩下所有边界框的IOU并剔除那些IOU值高于阈值的边界框,重复上述步骤。
具体的,本发明传回数据处理终端的RGB图像送入GPU进行神经网络推理计算,识别汽车、行人等目标,同时CPU通过双目摄像头捕捉到的两幅图像计算距离,此时根据环境光照条件选用测距方式,光强度大时使用双目测距,环境光较暗时使用结构光测距(即双目-结构光互补测距),满足不同光照强度下的测距精度要求(因为双目测距在昏暗环境中会丢失大部分特征点,导致测距精度低,或某一区域无法测距;而结构光相反,在强光下,探测器投射的激光散斑会被淹没,导致测距失败),并且同时通过相应神经网络识别车道线位置;完成后从GPU取回神经网络识别结果,然后根据识别到的目标位置比对CPU计算的距离数据,并且通过与目标的相对速度计算预计碰撞时间,当预计时间小于设定阈值时,向驾驶员发出提醒。如果停车后GPU神经网络识别到红灯变绿灯,会提示车主绿灯亮。若识别到车道沿途的速度限制标志会进一步识别数字,提示驾驶员限速值。车身四周鱼眼摄像头拍摄的图像先后通过鱼眼摄像头校正、透射变换、特征点匹配、接缝消除、图像拼接等步骤形成车身周围的360°全景图像,在车辆行驶在狭小通道或倒车时,对驾驶员有较大辅助作用,且在车辆打开转向灯时,本发明会检测相应侧摄像头图像,如果后方有车辆或行人靠近,则会发出警告。摄像头捕捉到的RGB图像会被自动保存为高清视频,实现行车记录仪功能。
本发明以神经网络处理光学图像为基础,而神经网络涉及到大量的计算,对于CPU来说,计算压力过大,特别是对于嵌入式设备这种算力较低的平台,难以满足实时性需求;而作为车辆安全监测系统,有很高的实时性需求,因为交通事故往往是瞬间发生的。并且本发明除了要运行神经网络计算以外还要通过双目视觉计算距离,通过多个语言摄像头拼接全景图像,通过结构光在黑暗条件下测距,这对硬件的计算压力是巨大的,所以本发明采用了如下设计,很好的解决了系统实时性问题。
首先CPU的并行计算能力较低,而GPU有很高的并行计算能力,本发明要运行两个神经网络,分别是用于区分各类目标的目标识别网络和用于分割车道线的车道线识别网络;本发明将两个神经网络通过TensorRT加速后序列化存储在磁盘中,便于快速读取。在运行时通过任务并行处理,将从摄像头读入的每一帧图像分别送入目标识别网络和车道线识别网络,解决了两个网络互相等待的问题,并且经过TensorRT加速后的网络在GPU上的计算速度相比CPU高出一到两个数量级,解决了神经网络计算不满足实时性的问题。
其次将双目测距、结构光测距以及全景图像拼接三个任务并行化在CPU运行,这样全部任务都可以同时进行,并且分别利用CPU和GPU的计算资源,极大地加快了计算速度。
最后是任务调度优化,即确定每种场景下运行的相应任务,不需要所有计算任务同时运行,这样可以极大地避免不必要的计算浪费计算资源,从而保证当前任务运行的实时性。
通过上述软件设计,本发明很好满足了实时性的要求,并且兼顾了多种信息的处理,力求做到车辆安全监测的全面和准确。
进一步地,本发明还通过具体实验进行了验证:
1.神经网络推理测试
1)处理速度:经过测试,本发明处理速度可达到30FPS以上,可满足实时性要求。
2)目标识别网络性能测试数据如下,与目前大规模使用的yolov3目标识别网络相比,本发明采用的网络在准确率相当的情况下大大压缩了网络体积,加快了计算速度。
本发明采用的目标识别网络与yolov3对比数据
网络 | AP<sup>VAL</sup> | AP<sup>test</sup> | AP<sub>50</sub> | TensorRT模型大小 | 推理速度 |
本发明网络 | 47.1 | 47.2 | 66.7 | 120MB | 5ms |
Yolov3-SPP | 45.5 | 45.4 | 65.2 | 16.7MB | 9ms |
2.双目视觉和结构光测距精度测试对比
双目测距与结构光对比数据
3.整体效果测试
本发明整体效果如图9所示,可以准确识别机动车辆、非机动车辆、行人等物体(图中以方框标出),并且同时可以准确检测车道线标记并以绿色标出车道位置。同时可以实现追尾碰撞提醒、意外车道偏离提示、行人和非机动车防碰撞功能、超速提醒、红绿灯状态提醒、车辆全景辅助、转弯和并线辅助。并且完整保存了高清视频,这部分功能展示见作品功能展示视频。
综上所述,本发明具有以下有益效果:
(1)本发明为了能够准确识别交通标志、红绿灯等小目标,采用了级联网络方案;第一级目标检测网络首先识别出红绿灯、禁令标志、警告标志的位置,然后裁剪下相关区域送入第二级图像分类网络,识别出具体的标志内容。通过级联网络本发明对小目标的识别正确率达到了99.2%,超过了正常人眼的识别准确率。
(2)目标识别网络综合采用现有公开技术中的FOCUS、CSPDarkNet、PANet、SPPNet、prediction模块等,压缩了网络的体积,提高了网络的计算速度,满足实时性要求。
(3)本发明将车道线检测定义为寻找车道线在图像中某些行位置的集合,即基于行方向生的位置选择、分类。大大加快了计算速度,且由于有较大的感受野,很好的解决了因车道线被遮挡、光照条件差而难以识别的问题。
(4)通过车身四周的广角鱼眼镜头拍摄车身周围图像,并通过鱼眼图像校正、特征点匹配、图像接缝消除等步骤,生成车辆周围360°全景图像,避免由于驾驶员视觉盲区而造成的交通事故。
(5)使用TensorRT对模型进一步优化,提高模型推理速度,并且将模型序列化,再次使用时反序列化即可使用,缩短启动时间。经过优化后的模型可以达到30FPS以上,可以满足实时性要求。
(6)所有计算子任务并行化,避免顺序执行导致的计算资源闲置浪费,提高了系统整体的运行速度。
(7)采用了双目视觉和结构光互补测距,互相弥补不足,即强光下双目视觉测距精度高、弱光下结构光测距精度高,分别适应白天和夜间测距要求。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (8)
1.一种基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
包括数据采集模组和数据处理终端,所述数据采集模组和所述数据处理终端间通过USB3.0接口传输数据;
所述数据采集模组包括双目摄像头、结构光测距单元和四个鱼眼摄像头,所述双目摄像头和结构光测距单元设置在汽车前挡风玻璃顶部中央,四个所述鱼眼摄像头安装在车身四周。
2.如权利要求1所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
所述双目摄像头由左右两个摄像机水平放置组成,根据两个摄像机对物体所呈现图像的差异判断物体的距离。
3.如权利要求1所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
所述结构光测距单元包括激光散斑投射器和激光接收摄像头,所述激光散斑投射器负责向被测物体表面投射可控制的光点、光条或光面结构,所述激光接收摄像头负责接收物体表面反射的结构光图案,最后通过系统几何关系,利用三角原理计算得到物体的三维坐标。
4.如权利要求1所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
每个所述鱼眼摄像头的视角为210°,采集后的图像经过拼接获得车身周围360°的全景图像。
5.如权利要求1所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
所述数据处理终端包括一个NVIDIA VOLTA结构的GPU和一个6核NVIDIA Caarmel ARMv8.2 64位CPU,GPU负责神经网络推理计算,CPU负责运行双目测距、结构光测距以及全景图像拼接任务。
6.如权利要求5所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
所述GPU运行两个神经网络,分别是用于区分各类目标的目标识别网络和用于分割车道线的车道线识别网络,所述目标识别网络和所述车道线识别网络通过TensorRT加速后序列化存储在磁盘中。
7.如权利要求6所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
所述目标识别网络为级联网络,包括第一级目标检测网络和第二级图像分类网络,所述第一级目标检测网络负责识别出红绿灯、禁令标志、警告标志的位置,所述第二级图像分类网络负责识别出具体的标志内容。
8.如权利要求6所述的基于人工智能和计算机视觉的智能驾驶辅助系统,其特征在于,
所述车道线识别网络基于全连接层的分类,将车道线检测定义为寻找车道线在图像中某些行的位置的集合,使用的特征是全局特征。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111562454.4A CN114445793A (zh) | 2021-12-20 | 2021-12-20 | 一种基于人工智能和计算机视觉的智能驾驶辅助系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111562454.4A CN114445793A (zh) | 2021-12-20 | 2021-12-20 | 一种基于人工智能和计算机视觉的智能驾驶辅助系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114445793A true CN114445793A (zh) | 2022-05-06 |
Family
ID=81364546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111562454.4A Pending CN114445793A (zh) | 2021-12-20 | 2021-12-20 | 一种基于人工智能和计算机视觉的智能驾驶辅助系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114445793A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115120913A (zh) * | 2022-06-24 | 2022-09-30 | 安徽工程大学 | 一种智能消防车视觉感知系统 |
WO2024113363A1 (zh) * | 2022-12-02 | 2024-06-06 | 华为技术有限公司 | 一种图像处理的方法、装置和智能驾驶设备 |
-
2021
- 2021-12-20 CN CN202111562454.4A patent/CN114445793A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115120913A (zh) * | 2022-06-24 | 2022-09-30 | 安徽工程大学 | 一种智能消防车视觉感知系统 |
WO2024113363A1 (zh) * | 2022-12-02 | 2024-06-06 | 华为技术有限公司 | 一种图像处理的方法、装置和智能驾驶设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112581612B (zh) | 基于激光雷达和环视摄像头融合的车载栅格地图生成方法及系统 | |
CN112287860B (zh) | 物体识别模型的训练方法及装置、物体识别方法及系统 | |
CN107891808B (zh) | 行车提醒方法、装置及车辆 | |
CN109919074B (zh) | 一种基于视觉感知技术的车辆感知方法及装置 | |
CN114445793A (zh) | 一种基于人工智能和计算机视觉的智能驾驶辅助系统 | |
CN109426802A (zh) | 雷达和视觉传感器系统的融合 | |
CN116188999B (zh) | 一种基于可见光和红外图像数据融合的小目标检测方法 | |
CN108725318B (zh) | 汽车安全预警方法、装置及计算机可读存储介质 | |
CN115372990A (zh) | 一种高精度语义地图的建图方法、装置和无人车 | |
CN115457358A (zh) | 一种图像与点云的融合的处理方法、装置和无人车 | |
CN112257668A (zh) | 主辅路判断方法、装置、电子设备及存储介质 | |
CN112001272A (zh) | 一种基于深度学习的激光雷达环境感知方法及系统 | |
CN115327572A (zh) | 一种车辆前方障碍物检测方法 | |
CN112990049A (zh) | 用于车辆自动驾驶的aeb紧急制动方法、装置 | |
CN112529011A (zh) | 目标检测方法及相关装置 | |
CN112733678A (zh) | 测距方法、装置、计算机设备和存储介质 | |
CN114005110B (zh) | 3d检测模型训练方法与装置、3d检测方法与装置 | |
CN207115438U (zh) | 用于车载鱼眼相机的图像处理装置 | |
CN113611008B (zh) | 一种车辆行驶场景采集方法、装置、设备及介质 | |
Matthews | Visual collision avoidance | |
CN114677658A (zh) | 十亿像素动态大场景图像采集和多目标检测方法及装置 | |
CN114037976A (zh) | 一种道路交通标志识别方法及装置 | |
Ma et al. | Projective geometry model for lane departure warning system in webots | |
CN112949595A (zh) | 一种基于YOLOv5改进行人车辆安全距离检测算法 | |
Rajavarshini et al. | Comparative analysis of image processing techniques for obstacle avoidance and path deduction |
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 |