CN117292352A - 面向开放世界目标检测的障碍识别与避障方法及小车系统 - Google Patents
面向开放世界目标检测的障碍识别与避障方法及小车系统 Download PDFInfo
- Publication number
- CN117292352A CN117292352A CN202311161444.9A CN202311161444A CN117292352A CN 117292352 A CN117292352 A CN 117292352A CN 202311161444 A CN202311161444 A CN 202311161444A CN 117292352 A CN117292352 A CN 117292352A
- Authority
- CN
- China
- Prior art keywords
- obstacle
- class
- module
- detection
- trolley
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 118
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000012549 training Methods 0.000 claims abstract description 19
- 230000000007 visual effect Effects 0.000 claims description 34
- 238000011161 development Methods 0.000 claims description 21
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 230000003993 interaction Effects 0.000 claims description 7
- 238000002372 labelling Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 5
- 238000005259 measurement Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 3
- 238000002360 preparation method Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 15
- 230000000875 corresponding effect Effects 0.000 description 14
- 230000001276 controlling effect Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000006872 improvement Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 235000019878 cocoa butter replacer Nutrition 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 102100030148 Integrator complex subunit 8 Human genes 0.000 description 1
- 101710092891 Integrator complex subunit 8 Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/0098—Details of control systems ensuring comfort, safety or stability not otherwise provided for
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2552/00—Input parameters relating to infrastructure
- B60W2552/50—Barriers
-
- 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)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种面向开放世界目标检测的障碍识别与避障方法及小车系统,首先预训练具有开放世界目标检测能力的目标检测器,利用预训练的Omnidata模型提取RGB图像中物体的几何特征,每一张RGB图像分别生成一张基于深度信息的图像和基于法线信息的图像;利用已知类的Bounding Box作为监督信号,指导深度图像和法线图像,生成类别无关的伪框;再对所有伪框,使用开放词汇目标检测模型Detic,通过提供检测词汇表完成对已知类别和未知新类别的分类,完成具有开放世界目标检测能力的目标检测器的训练;完成行径设备运行路径Route的预设后,得到障碍物位置标签Obstaclei和Bboxi,根据物体标签classi的类别执行不同操作,完成障碍识别及避障,具有较好的可应用性和拓展性,更加符合实际需求。
Description
技术领域
本发明属于人工智能自动驾驶与目标检测技术领域,主要涉及了一种面向开放世界目标检测的障碍识别与避障方法及小车系统。
背景技术
人类通常能够正确识别其环境中未知物体,但计算机在处理未知实例时难以下手。在实际的驾驶场景中,未知实例的出现虽是偶然,但会对自动驾驶的安全造成不可忽视的影响。基于这类问题,2021年K.J.Joseph等人提出了开放世界目标检测的概念,形式化定义为:在t时刻,已知的目标类别为 其中N+为所有正整数,未知的类别为/> 的训练集为/>其中,X={I1,…,IM}和Y={Y1,…,YM}分别为图片和标注信息,其中每张图片Yi={y1,y2,…,yK}包含了多个目标实例,每个实例都有其标签和位置。开放世界目标检测在该条件下学得模型MC+n。开放世界目标检测要求模型具有开集检测的能力,即能够识别训练集中未出现的类或出现次数较少的物体种类,传统的模型不具有此项功能或实现效果较差。
此外,自动驾驶中的视觉检测模块的交互与实际应用问题也关系着自动驾驶的安全问题。具体而言,需要解决如何基于视觉目标检测,辅以其他技术如控制技术、传感及技术,将目标检测得到的信息与车辆实际避障进行结合。
发明内容
本发明正是针对现有技术自动驾驶中的视觉检测模块开放世界目标检测能力不足以及视觉检测模块的交互与实际应用的问题,提供一种面向开放世界目标检测的障碍识别与避障方法及小车系统,首先预训练具有开放世界目标检测能力的目标检测器,再利用预训练的Omnidata模型提取RGB图像中物体的几何特征,每一张RGB图像分别生成一张基于深度信息的图像和基于法线信息的图像;利用已知类的Bounding Box作为监督信号,指导深度图像和法线图像,生成类别无关的伪框;再对所有伪框,使用开放词汇目标检测模型Detic,通过提供检测词汇表完成对已知类别和未知新类别的分类,完成具有开放世界目标检测能力的目标检测器的训练;完成行径设备运行路径Route的预设后,利用测距模块得到障碍物位置标签Obstaclei,利用视觉检测模块得到Bboxi,根据物体标签classi的类别执行不同操作,完成障碍识别及执行避障,具有较好的可应用性和拓展性,更加符合实际需求。
为了实现上述目的,本发明采取的技术方案是:面向开放世界目标检测的障碍识别与避障方法,包括如下步骤:
S1:利用CODA、SODA10M自动驾驶数据集的RGB图像,预训练具有开放世界目标检测能力的目标检测器,所述目标检测器生成已知类的Bounding Box;
S2:利用预训练的Omnidata模型提取RGB图像中物体的几何特征,所述几何特征包括深度和法线,每一张RGB图像分别生成一张基于深度信息的图像和基于法线信息的图像;
S3:利用步骤S1生成的已知类的Bounding Box作为监督信号,指导步骤S2中得到的深度图像和法线图像,生成类别无关的伪框;
S4:对于步骤S3生成的所有伪框,使用开放词汇目标检测模型Detic,通过提供检测词汇表完成对已知类别和未知新类别的分类,完成具有开放世界目标检测能力的目标检测器的训练;
S5:行径设备运行准备,完成行径设备运行路径Route的预设;
S6:利用测距模块得到障碍物位置标签Obstaclei,利用视觉检测模块得到Bboxi,根据物体标签classi的类别执行不同操作,所述标签类别包括已知类别Cc与非已知类别CU,若物体标签classi∈Cc,则执行避障操作;若classi∈CU,则记录下障碍物并手动识别标注类别后,执行避障操作;
S7:根据行径设备运行一轮的运行结果,扩充已知类别Cc,重复执行步骤S1-S4重新训练,并在步骤S5中调整路径Route。
作为本发明的一种改进,所述步骤S3中的损失函数为:
其中,K是预先定义的已知类别列表,Bk是已知类的anchor候选集合,Nreg是集合Bk的大小,Lreg是回归损失,Lobj是物体得分预测损失,ti和ti *分别是预测的Bounding box的位置坐标及其相应的真实坐标值,oi和oi *分别是预测物体类别的得分和anchor i的真实标签。
作为本发明的一种改进,所述步骤S4中Detic模型使用的损失函数为:
Lmax-size=BCE(Wfj,c),j=argmaxj(size(bj))
其中,Lrpn是RPN网络的损失,Lreg是回归损失,Lcls是分类损失,I是一张图片,Ddet是用于目标检测任务的数据集,Dcls是用于图像分类任务的数据集,λ为权重,Lmax-size表示使用RPN网络的替代算法max-size生成建议框的损失,W是分类器的权重,fj是候选区域对应的ROI特征,c代表最大的候选区域对应的类别,bj是Bounding box,j是尺寸最大的Boundingbox对应的下标索引,BCE表示二元交叉熵损失:
其中s是物体分类预测得分,c是物体类别,σ是sigmoid激活函数,sc是c类别的分类预测得分,sk是k类别的分类预测得分。
为了实现上述目的,本发明还采取的技术方案是:面向开放世界目标检测的障碍识别与避障小车系统,其特征在于:至少包括主控板、开发板、视觉检测模块、测距模块、传感器模块、控制模块、云台与摄像头模块,
所述主控板为Jetson Nano开发板,执行视觉检测模块任务;
所述开发板为测距模块的控制板,采用Arduino开发板;Arduino开发板通过USB串口连接到Jetson Nano主控板,并将距离测定结果实时推送到Jetson Nano主控板中;
所述视觉检测模块通过物体的几何信息辅助特征提取与目标检测,在训练目标检测器时,提取物体的深度信息和法线信息,连同RGB图像特征提取图像中存在的障碍物区域,并用类别无关的Bounding Box将物体框选出来,再利用开放词汇目标检测分类头对物体框进行分类,完成视觉检测;
所述测距模块用于获取障碍物的位置标签;
所述传感器模块用于和视觉检测模块进行信息交互,互通避障数据;
所述控制模块用于控制小车运动,指导小车系统避障或正常行径;
所述云台与摄像头模块用于检测小车系统行径中不同角度的目标图像,并将图像传送给测距模块及视觉检测模块。
作为本发明的一种改进,所述云台及摄像头模块中的摄像头,其坐标系和测距模块坐标系仅有z轴上的偏移;所述视觉检测模块和传感器模块之间进行数据交互,具体为:Bboxi=(x1i,y1i,x2i,y2i,classi),Obstaclei=(disi,θi),当需要规避障碍物Obstaclei时,将当前的方向调整至dirt=diri+θsafe,行径一定时间后返回原路径;若classi∈CU,调整云台在不同角度对障碍物进行拍摄并手动识别标注类别。
作为本发明的另一种改进,所述控制模块为小车底部安装4个电机分别控制4个轮子,电机连接到JetsonNano开发板并由其控制,所述小车前进速度由电机的功率控制,通过小车左右轮的速度差控制小车完成转向。
作为本发明的又一种改进,所述云台及摄像头模块中,云台为二维舵机云台,包括两个舵机,分别用于控制云台左右转动及上下转动,所述左右转向的最大角度均为90°,上下转动的最大仰角为150°;所述摄像头位于云台顶部,与云台均连接到Jetson Nano开发板并由其统一控制。
与现有技术相比,本发明具有的有益效果:
1.本发明实现了这种分布式的边缘计算方案,使得JetsonNano和Arduino两个边缘计算设备能够专注于各自的任务,减少主控板的计算负荷,进而提高目标检测算法的推理速度,符合真实驾驶场景的要求。
2.本发明实现了开放世界目标检测器,传统的同时进行分类和定位的目标检测算法在封闭场景下表现较好,但在开放场景中的表现欠佳,主要缺陷在于目标检测的召回率较低,漏检现象较为严重,同时没有办法对训练集中没有出现过的新类别进行检测。本发明的目标检测器具有开放世界目标检测的能力,相比于传统的目标检测器,召回率较好,具有对开放世界目标检测的能力,显著提高了自动驾驶中关于视觉检测的安全性。
3.本发明实现了视觉检测与传感器之间的交互,能够较好地将视觉检测模块运用于自动驾驶,在此基础上提出的小车识别与避障方法及系统具有较好的可应用性与拓展性。
附图说明
图1是本发明实现的小车障碍识别与避障方法及系统步骤流程图;
图2是本发明实现的视觉检测模块的流程示意图;
图3为本发明使用的Jetson Nano开发板的示意图;
图4为本发明使用的Arduino与超声波模块的连接示意图。
具体实施方式
下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
实施例1
面向开放世界目标检测的障碍识别与避障方法,如图1所示,包括如下步骤:
步骤S1:利用CODA、SODA10M自动驾驶数据集的RGB图像,预训练具有开放世界目标检测能力的目标检测器。基于mmdetection目标检测框架用Faster-RCNN模型初步训练一个目标检测器,该检测器可以生成已知类的Bbox。
步骤S2:利用预训练的Omnidata模型提取RGB图像中物体的几何特征,包括“深度”和“法线”两个特征,对于每一张RGB图像分别生成一张基于“深度”信息的图像和基于“法线”信息的图像。
步骤S3:利用步骤S1生成的已知类的Bounding Box作为监督信号指导步骤S2中得到的“深度”图像和“法线”图像生成类别无关的伪框;
使用的损失函数为:
其中,K是预先定义的已知类别列表,Bk是已知类的anchor候选集合,Nreg是集合Bk的大小,Lreg是回归损失,Lobj是物体得分预测损失,ti和ti *分别是预测的Bounding box的位置坐标及其相应的真实坐标值,oi和oi *分别是预测物体类别的得分和anchor i的真实标签。这样一来,只有pi *=1的anchor才会被加入到训练中,完全去除了对于背景类的任何预测。
步骤S4:对于步骤S3生成的所有伪框,使用开放词汇目标检测模型Detic,通过提供检测词汇表完成对已知类别和未知新类别的分类,至此完成具有开放世界目标检测能力的目标检测器的训练;
使用的损失函数为:
Lmax-size=BCE(Wfj,c),j=argmaxj(size(bj))
其中,Lrpn是RPN网络的损失,Lreg是回归损失,Lcls是分类损失,I是一张图片,Ddet是用于目标检测任务的数据集,Dcls是用于图像分类任务的数据集,权重λ设置为固定值0.1。Lmax-size表示使用RPN网络的替代算法max-size生成建议框的损失,W是分类器的权重,fj是候选区域对应的ROI特征,c代表最大的候选区域对应的类别,bj是Bounding box,j是尺寸最大的Bounding box对应的下标索引,BCE表示二元交叉熵损失:
其中s是物体分类预测得分,c是物体类别,σ是sigmoid激活函数,sc是c类别的分类预测得分,sk是k类别的分类预测得分。
所述步骤S1-S4将目标检测中的“定位”和“分类”两大问题拆分开,同时将物体几何特征和开放词汇目标检测的方法进行结合。发明在进行目标检测定位时生成的是类别无关的伪框,仅优化伪框中是否存在物体而不关注物体的类别,这可以很大程度上提高目标检测的召回率。
步骤S5:行径设备运行准备,完成行径设备运行路径Route的预设;
本实施例中的行径设备为小车,初始化Arduino开发板、Jetson Nano主控板及其余模块。完成小车运行路径Route的预设,并通过对极约束求解并调整摄像头位姿,使得摄像头坐标系和测距模块坐标系仅有z轴上的偏移;
使用Jetson Nano和Arduino两个边缘计算设备进行计算,减少主控板的计算负荷,进而提高目标检测算法的推理速度,符合真实驾驶场景的要求。所述步骤S5中,JetsonNano和Arduino两个边缘计算设备利用USB串口连接,Jetson Nano执行视觉检测模块,Arduino执行其余模块。
步骤S6:利用测距模块得到障碍物位置标签Obstaclei,利用视觉检测模块得到Bboxi。根据物体标签classi的不同执行不同操作。标签类别分为两类:已知类别Cc与非已知类别CU,具体而言,若classi∈Cc,则调用控制模块执行避障操作;若classi∈CU,则要求操作监控人员调整云台在不同角度对障碍物进行拍摄并手动识别标注类别后,调用控制模块执行避障操作;
利用视觉检测模块和传感器模块得到的信息进行交互处理,为执行避障提供可靠数据。具体而言,两模块得到的数据为分别为:
Bboxi=(x1i,y1i,x2i,y2i,classi),Obstaclei=(disi,θi)
对于需要规避的障碍物Obstaclei,将当前的方向调整至dirt=diri+θsafe。在运行一定时间后返回原路径。若classi∈CU,还需要求操作监控人员调整云台在不同角度对障碍物进行拍摄并手动识别标注类别
步骤S7:利用小车一轮的运行结果,扩充Cc,执行步骤S1-S4重新训练,并调整路径Route。
实施例2
一种面向开放世界目标检测的障碍识别与避障小车系统,如图4所示,包括JetsonNano主控板,通过接口J38为主控板提供7.4V的稳定供电,NVIDIA GPU即散热风扇安装在J18处,摄像头数据线插在J13槽处,Arduino数据线与J32或J33的USB接口相连,以此给Arduino提供电源供应以及串口传输通道。超声波测距模块通过杜邦线与Arduino的2号和3号引脚相连。
本发明使用视觉检测模块完成S1-S4步骤中的视觉检测模型训练及S6步骤中的部分功能,其中,视觉检测模块流程示意图见图2。
在本发明提出的模型中,标签类别分为两类:已知类别Cc与非已知类别CU。传统的基于真实世界RGB图像训练出来的目标检测模型容易带来过拟合问题,使得模型学习到训练集类别更细化的特征,而对于新的未知类别往往就不能很好地检测出来。基于RGB图像训练的开放世界目标检测器仅仅依赖于物体表明的相似性去检测新的未知类别物体,还容易过度拟合纹理等捷径线索,这将极大限制模型检测开放世界场景中的物体的能力。本发明使用了物体的几何信息辅助特征提取与目标检测,在训练目标检测器时经历了两个阶段,分别完成定位和分类任务。第一个阶段先提取物体的“深度”信息和“法线”信息,这两个信息可作为描述物体的几何特征,连同RGB图像特征去提取图像中可能存在物体的区域,并用类别无关的Bounding Box将物体框选出来。第二个阶段利用开放词汇目标检测分类头对第一阶段框选出的物体进行分类。具体实施方式如下:
1.利用CODA自动驾驶数据集的RGB图像基于mmdetection目标检测框架先初步训练一个目标检测器,生成一些已知类的Bounding Box;
2.利用预训练的Omnidata模型提取RGB图像中物体的几何特征,包括“深度”和“法线”两个特征,对于每一张RGB图像分别生成一张基于“深度”信息的图像和基于“法线”信息的图像。“深度”信息表征了物体的相对空间差异性,可以提取出物体表面的抽象细节信息;“法线”信息表征了物体的方向差异性,有助于检测棱角特征;
3.利用步骤1生成的已知类的Bounding Box作为监督信号指导步骤2中得到的“深度”图像和“法线”图像生成类别无关的伪框,模型的优化机制是尽可能使得伪框中存在感兴趣的物体。该阶段使用的损失函数为:
其中,K是预先定义的已知类别列表,Bk是已知类的anchor候选集合,Nreg是集合Bk的大小,Lreg是回归损失,Lobj是物体得分预测损失,ti和ti *分别是预测的Bounding box的位置坐标及其相应的真实坐标值,oi和oi *分别是预测物体类别的得分和anchor i的真实标签。这样一来,只有pi *=1的anchor才会被加入到训练中,完全去除了对于背景类的任何预测。
4.对于步骤3生成的所有伪框,使用开放词汇目标检测模型Detic,通过提供检测词汇表完成对已知类别和未知新类别的分类。Detic除了使用检测监督信号外,还使用了图像级别的监督信号去训练图像分类头,扩充目标检测器的“词汇量”。由于定位任务已经在步骤3完成了,因此本步骤只需要完成开放世界图像的分类任务,我们将问题定义为:给定一个图像I∈R3*h*w,给第j个物体赋予一个标签cj∈Ctest这里的Ctest是测试阶段用户给定的类别词汇表集合。在训练Detic过程中,使用了带有词汇表Cdet的自动驾驶数据集BDD100K作为目标检测数据集使用带有词汇表Ccls的长尾数据集LVIS作为图像分类数据集/>对于一个传统两阶段目标检测模型而言,第一阶段模型的输入是一幅图片I,通过RPN网络产生一个目标候选框集合{(b,f,o)j},其中fj∈RD是一个D维的区域特征,o∈R是目标得分;第二阶段给模型输入提取到的目标特征,输出分类置信度分数并修正每个目标Bounding Box的定位结果,sj=Wfj,/>其中和B∈R4*D分别是学习到的分类层和回归层的权重对于一个开放词汇的目标检测器而言,允许Ctest≠Cdet,为了实现开放词汇检测未知新类别的功能,需要将分类权重W替换为一个固定的类别名称语言嵌入层,语言嵌入层是通过预训练好的大型自然语言语料库和文本编码器实现的。然后区域特征可以被用来训练,从而去拟合固定的类别名称语言嵌入层,通过计算相似度分数从而确定目标所属的类别,该类别不一定在训练集中出现过,但是模型仍能够将其检测出来并成功对其进行分类,实现了开放世界目标检测中检测未知新类别的功能。Detic模型使用的损失函数为:
Lmax-size=BCE(Wfj,c),j=argmaxj(size(bj))
其中,Lrpn是RPN网络的损失,Lreg是回归损失,Lcls是分类损失,I是一张图片,Ddet是用于目标检测任务的数据集,Dcls是用于图像分类任务的数据集,权重λ设置为固定值0.1。Lmax-size表示使用RPN网络的替代算法max-size生成建议框的损失,W是分类器的权重,fj是候选区域对应的ROI特征,c代表最大的候选区域对应的类别,bj是Bounding box,j是尺寸最大的Bounding box对应的下标索引,BCE表示二元交叉熵损失:
其中s是物体分类预测得分,c是物体类别,σ是sigmoid激活函数,sc是c类别的分类预测得分,sk是k类别的分类预测得分。
本发明使用TensorRT技术对神经网络模型进行优化,以适应边缘计算设备的硬件特性,与CUDA算子更好地实现匹配以提高目标检测算法在边缘计算设备上的推理性能。TensorRT技术使用了权重与激活精度校准、层与张量融合、内核自动调整、动态张量显存、多流执行等机制提高了神经网络模型在边缘设备上的推理能力,首先对网络结构进行垂直整合,即将目前主流神经网络的conv、bias、ReLU三个层融合为了一个层,称为CBR,然后对网络结构进行水平组合,水平组合是指将输入为相同张量和执行相同操作的层融合一起。将三个相连的1×1的CBR组合为一个大的1×1的CBR。最后处理concat层,将contact层的输入直接送入下面的操作中,不用单独进行concat后在输入计算,相当于减少了一次传输吞吐。TensorRT中支持FP32,FP16,INT8三种精度,混合精度的方案也使得神经网络在进行正向推理预测时的计算量得到减小,提高推理速度。为了使用TensorRT技术优化已经训练好的神经网络,需要先把模型权重文件转换为通用的模型文件格式onnx,然后根据JetsonNano硬件的参数特性,利用CUDA算子实现onnx格式模型到TensorRT模型的转换。下一步编译已经转换为TensorRT格式的模型,生成engine文件,即可调用摄像头进行实时目标检测。本发明的视觉检测模块优势在于:使用的模型在前向推理对伪框中的目标进行分类之前并没有看到过该数据集下的任何一张图片,但仍能将其检测出来,这对于自动驾驶场景中层出不穷的新类别和新场景的检测来说至关重要。
本发明使用测距模块进行S6步骤中的障碍物辅助检测。在测距模块中,本实施例使用HC-SR04超声波模块进行测距,如图3所示。超声波模块检测原理及过程如下:
1.HC-SR04超声波模块采用IO口TRIG触发测距,产生最少10us的高电平信号,模块自动发送8个40kHZ的方波,自动检测是否有信号返回,如果有信号返回,通过I/O接口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。由于空气中声速约为343米/秒,等价于0.0343厘米/微秒,相当于29.15微秒/厘米从发送到接收回波,声音走过两倍距离,因此每厘米对应58.3微秒,由此可以实现厘米级别的精确距离测量。
2.超声波模块通过USB串口将数据实时传输到Jetson Nano平台,在该平台上运行编写好的python脚本,该脚本使用pyserial库解析串口数据,得到距离值。运行编写好的二维舵机云台控制代码控制舵机带动摄像头和超声波模块一起转动并记录转动的角度,由此得到了物体的完整相对位置信息。
本发明使用控制模块控制小车的运动。小车底部安装4个电机分别控制4个轮子,电机连接到JetsonNano开发板并由它控制。可以通过电机编程控制电机的功率从而控制小车前进的速度。当小车遇到障碍物需要避障时,可以利用左右轮的速度差控制小车进行转向,例如,左轮以40%的速度转动,右轮以60%的速度转动,过程持续1秒,则小车可以左转向30°。
本发明使用二维舵机云台控制摄像头检测不同角度的目标。在小车底板上方安装二维舵机云台,该装置包含两个舵机,一个用于控制云台左右转动,左右转向的最大角度均为90°,另一个用于控制云台调整俯仰角度,最大仰角为150°。在云台顶部固定安装单目摄像头,使得摄像头可通过云台调整拍摄的朝向以及角度,舵机云台和摄像头都连接到JetsonNano开发板并由其统一进行控制。在小车前部固定安装Arduino开发板,在舵机云台顶部和摄像头同一高度的地方平行安装超声波测距模块,将该模块与Arduino开发板相连并由其控制。Arduino获得的数据最终通过串口传输到JetsonNano处进行统一分析与决策。在小车尾部固定安装wifi模块以及天线,小车系统可通过wifi与PC端进行信息交互。整个小车系统由固定在小车底板下方的电池组供电。
基于以上所述视觉检测模块、测距模块与控制模块,本发明设计了用以模拟现实场景下自动驾驶场景的小车避障模块,能够实现对路线的微调以达到避障目的,具体实施方法如下:
1.在小车运动前通过对极约束求解并调整摄像头位姿,使得摄像头坐标系和测距模块坐标系仅有z轴上的偏移,并能够将测距与视觉检测模块进行对应。同时,避障模块预设运行场景的路线该路线能够描述为小车坐标系下坐标、运动方向与时间的函数。
2.小车调用控制模块按照预设路线行驶,并同时调用测距模块和视觉检测模块进行实时避障检测。视觉检测模块反馈物体检测框信息Bboxi=(x1i,y1i,x2i,y2i,classi),其中,两组坐标分别表示小车摄像头得到的障碍物位置(当前摄像头坐标系),测距模块反馈位置障碍物距离及相对小车测距硬件(位于小车前部中央)的方向角Obstaclei=(disi,θi),其中,方向角为相对小车前进方向的水平夹角。
3.设定小车运动避障所需的安全距离rsafe及安全角度θsafe。对于某个障碍物Obstaclei,若其存在:disi<rsafe且θi∈(diri-θsafe,diri+θsafe),则依据Bboxi的classi字段决定相应动作。
4.若classi∈Cc,记录障碍物位置在真实坐标系中位置(/>为当前障碍物角度方向的单位向量),并正常执行避障操作。对于需要规避的障碍物Obstaclei,将当前的方向调整至dirt=diri+θsafe。在经过一定时间(本实例假设为5秒)后,小车转向原路线中位置/>方向前进。
5.若classi∈CU,则将小车停下,要求操作监控人员调整云台在不同角度对障碍物进行拍摄并手动识别标注类别。然后执行4.中操作。
6.当小车完成既定路线行驶后,利用得到的障碍物位置进行路径调整,并扩充CC范围,重新训练模型。
综上,本发明提出的一种面向开放世界目标检测的障碍识别与避障方法及小车系统,实现了开放世界中的目标检测,目标检测模型经过量化部署后在Jetson Nano小车上实测其检测效果,模型能较好地完成未知新类别的检测并对其进行全方位的测量以扩充现有数据集。开放世界目标检测模型配合小车的测距、控制、舵机云台模块和预先实现好的避障逻辑可以使得小车在真实场景中完成避障功能。本发明完整实现了开放世界目标检测方法和小车系统的模型部署与搭载。
需要说明的是,以上内容仅仅说明了本发明的技术思想,不能以此限定本发明的保护范围,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰均落入本发明权利要求书的保护范围之内。
Claims (7)
1.面向开放世界目标检测的障碍识别与避障方法,其特征在于,包括如下步骤:
S1:利用CODA、SODA10M自动驾驶数据集的RGB图像,预训练具有开放世界目标检测能力的目标检测器,所述目标检测器生成已知类的Bounding Box;
S2:利用预训练的Omnidata模型提取RGB图像中物体的几何特征,所述几何特征包括深度和法线,每一张RGB图像分别生成一张基于深度信息的图像和基于法线信息的图像;
S3:利用步骤S1生成的已知类的Bounding Box作为监督信号,指导步骤S2中得到的深度图像和法线图像,生成类别无关的伪框;
S4:对于步骤S3生成的所有伪框,使用开放词汇目标检测模型Detic,通过提供检测词汇表完成对已知类别和未知新类别的分类,完成具有开放世界目标检测能力的目标检测器的训练;
S5:行径设备运行准备,完成行径设备运行路径Route的预设;
S6:利用测距模块得到障碍物位置标签Obstaclei,利用视觉检测模块得到Bboxi,根据物体标签classi的类别执行不同操作,所述标签类别包括已知类别Cc与非已知类别CU,若物体标签classi∈Cc,则执行避障操作;若classi∈CU,则记录下障碍物并手动识别标注类别后,执行避障操作;
S7:根据行径设备运行一轮的运行结果,扩充已知类别Cc,重复执行步骤S1-S4重新训练,并在步骤S5中调整路径Route。
2.如权利要求1所述的面向开放世界目标检测的障碍识别与避障方法,其特征在于:所述步骤S3中的损失函数为:
其中,K是预先定义的已知类别列表,Bk是已知类的anchor候选集合,Nreg是集合Bk的大小,Lreg是回归损失,Lobj是物体得分预测损失,ti和ti *分别是预测的Bounding box的位置坐标及其相应的真实坐标值,oi和oi *分别是预测物体类别的得分和anchor i的真实标签。
3.如权利要求1或2所述的面向开放世界目标检测的障碍识别与避障方法,其特征在于:所述步骤S4中Detic模型使用的损失函数为:
Lmax-size=BCE(Wfj,c),j=argmaxj(size(bj))
其中,Lrpn是RPN网络的损失,Lreg是回归损失,Lcls是分类损失,I是一张图片,Ddet是用于目标检测任务的数据集,Dcls是用于图像分类任务的数据集,λ为权重,Lmax-size表示使用RPN网络的替代算法max-size生成建议框的损失,W是分类器的权重,fj是候选区域对应的ROI特征,c代表最大的候选区域对应的类别,bj是Bounding box,j是尺寸最大的Bounding box对应的下标索引,BCE表示二元交叉熵损失:
其中s是物体分类预测得分,c是物体类别,σ是sigmoid激活函数,sc是c类别的分类预测得分,sk是k类别的分类预测得分。
4.使用如权利要求1所述方法的面向开放世界目标检测的障碍识别与避障小车系统,其特征在于:至少包括主控板、开发板、视觉检测模块、测距模块、传感器模块、控制模块、云台与摄像头模块,
所述主控板为Jetson Nano开发板,执行视觉检测模块任务;
所述开发板为测距模块的控制板,采用Arduino开发板;Arduino开发板通过USB串口连接到Jetson Nano主控板,并将距离测定结果实时推送到Jetson Nano主控板中;
所述视觉检测模块通过物体的几何信息辅助特征提取与目标检测,在训练目标检测器时,提取物体的深度信息和法线信息,连同RGB图像特征提取图像中存在的障碍物区域,并用类别无关的Bounding Box将物体框选出来,再利用开放词汇目标检测分类头对物体框进行分类,完成视觉检测;
所述测距模块用于获取障碍物的位置标签;
所述传感器模块用于和视觉检测模块进行信息交互,互通避障数据;
所述控制模块用于控制小车运动,指导小车系统避障或正常行径;
所述云台与摄像头模块用于检测小车系统行径中不同角度的目标图像,并将图像传送给测距模块及视觉检测模块。
5.如权利要求4所述的面向开放世界目标检测的障碍识别与避障小车系统,其特征在于:所述云台及摄像头模块中的摄像头,其坐标系和测距模块坐标系仅有z轴上的偏移;所述视觉检测模块和传感器模块之间进行数据交互,具体为:Bboxi=(x1i,y1i,x2i,y2i,classi),Obstaclei=(disi,θi),当需要规避障碍物Obstaclei时,将当前的方向调整至dirt=diri+θsafe,行径一定时间后返回原路径;若classi∈CU,调整云台在不同角度对障碍物进行拍摄并手动识别标注类别。
6.如权利要求4所述的面向开放世界目标检测的障碍识别与避障小车系统,其特征在于:所述控制模块为小车底部安装4个电机分别控制4个轮子,电机连接到JetsonNano开发板并由其控制,所述小车前进速度由电机的功率控制,通过小车左右轮的速度差控制小车完成转向。
7.如权利要求4所述的面向开放世界目标检测的障碍识别与避障小车系统,其特征在于:所述云台及摄像头模块中,云台为二维舵机云台,包括两个舵机,分别用于控制云台左右转动及上下转动,所述左右转向的最大角度均为90°,上下转动的最大仰角为150°;所述摄像头位于云台顶部,与云台均连接到Jetson Nano开发板并由其统一控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311161444.9A CN117292352B (zh) | 2023-09-11 | 2023-09-11 | 面向开放世界目标检测的障碍识别与避障方法及小车系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311161444.9A CN117292352B (zh) | 2023-09-11 | 2023-09-11 | 面向开放世界目标检测的障碍识别与避障方法及小车系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117292352A true CN117292352A (zh) | 2023-12-26 |
CN117292352B CN117292352B (zh) | 2024-05-31 |
Family
ID=89256269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311161444.9A Active CN117292352B (zh) | 2023-09-11 | 2023-09-11 | 面向开放世界目标检测的障碍识别与避障方法及小车系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117292352B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118097625A (zh) * | 2024-04-24 | 2024-05-28 | 广汽埃安新能源汽车股份有限公司 | 一种障碍物识别方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021139069A1 (zh) * | 2020-01-09 | 2021-07-15 | 南京信息工程大学 | 自适应注意力指导机制的一般性目标检测方法 |
CN114241260A (zh) * | 2021-12-14 | 2022-03-25 | 四川大学 | 一种基于深度神经网络的开集目标检测与识别方法 |
CN114581831A (zh) * | 2022-03-04 | 2022-06-03 | 广东工业大学 | 基于图像和点云的无人机障碍物检测和避障方法及系统 |
WO2023273572A1 (zh) * | 2021-06-28 | 2023-01-05 | 北京有竹居网络技术有限公司 | 一种特征提取模型构建方法、目标检测方法及其设备 |
CN116665018A (zh) * | 2023-07-28 | 2023-08-29 | 华南理工大学 | 一种开放世界未知类识别的目标检测方法 |
-
2023
- 2023-09-11 CN CN202311161444.9A patent/CN117292352B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021139069A1 (zh) * | 2020-01-09 | 2021-07-15 | 南京信息工程大学 | 自适应注意力指导机制的一般性目标检测方法 |
WO2023273572A1 (zh) * | 2021-06-28 | 2023-01-05 | 北京有竹居网络技术有限公司 | 一种特征提取模型构建方法、目标检测方法及其设备 |
CN114241260A (zh) * | 2021-12-14 | 2022-03-25 | 四川大学 | 一种基于深度神经网络的开集目标检测与识别方法 |
CN114581831A (zh) * | 2022-03-04 | 2022-06-03 | 广东工业大学 | 基于图像和点云的无人机障碍物检测和避障方法及系统 |
CN116665018A (zh) * | 2023-07-28 | 2023-08-29 | 华南理工大学 | 一种开放世界未知类识别的目标检测方法 |
Non-Patent Citations (4)
Title |
---|
MINGYANG ZHANG: "Transfer Learning From Speech Synthesis to Voice Conversion With Non-Parallel Training Data", 《IEEE》, 31 December 2021 (2021-12-31) * |
ORR ZOHAR, KUAN-CHIEH WANG, SERENA YEUNG: "PROB: Probabilistic Objectness for Open World Object Detection", 《IEEE》, 22 August 2023 (2023-08-22) * |
张舜;郝泳涛;: "基于深度学习的障碍物检测研究", 电脑知识与技术, no. 34, 5 December 2019 (2019-12-05) * |
郑宝玉;王雨;吴锦雯;周全;: "基于深度卷积神经网络的弱监督图像语义分割", 南京邮电大学学报(自然科学版), no. 05, 13 November 2018 (2018-11-13) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118097625A (zh) * | 2024-04-24 | 2024-05-28 | 广汽埃安新能源汽车股份有限公司 | 一种障碍物识别方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117292352B (zh) | 2024-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110344621B (zh) | 一种面向智能车库的车轮点云检测方法 | |
US11423938B2 (en) | Detecting errors in sensor data | |
EP3852064B1 (en) | Object labeling method and apparatus, movement control method and apparatus, device, and storage medium | |
US11783568B2 (en) | Object classification using extra-regional context | |
Martinez et al. | Towards autonomous detection and tracking of electric towers for aerial power line inspection | |
Yan et al. | Multisensor online transfer learning for 3d lidar-based human detection with a mobile robot | |
EP4058984A1 (en) | Geometry-aware instance segmentation in stereo image capture processes | |
CN117292352B (zh) | 面向开放世界目标检测的障碍识别与避障方法及小车系统 | |
CN114200471B (zh) | 基于无人机的森林火源检测系统、方法、存储介质、设备 | |
CN112784814B (zh) | 车辆倒车入库的姿态识别方法及输送车倒车入库引导系统 | |
KR20220120908A (ko) | 이동 로봇 및 이동 로봇의 제어 방법 | |
Zhao et al. | Dynamic object tracking for self-driving cars using monocular camera and lidar | |
Le Saux et al. | Rapid semantic mapping: Learn environment classifiers on the fly | |
US20220156517A1 (en) | Method for Generating Training Data for a Recognition Model for Recognizing Objects in Sensor Data from a Surroundings Sensor System of a Vehicle, Method for Generating a Recognition Model of this kind, and Method for Controlling an Actuator System of a Vehicle | |
US20210390419A1 (en) | Device and Method for Training and Testing a Classifier | |
Shi et al. | Obstacle type recognition in visual images via dilated convolutional neural network for unmanned surface vehicles | |
Gupta et al. | 3D Bounding Boxes for Road Vehicles: A One-Stage, Localization Prioritized Approach using Single Monocular Images. | |
Nikdel et al. | Recognizing and tracking high-level, human-meaningful navigation features of occupancy grid maps | |
JP2023513385A (ja) | 画像分類器を評価するための方法及び装置 | |
Liu et al. | Research on security of key algorithms in intelligent driving system | |
NL2019877B1 (en) | Obstacle detection using horizon-based learning | |
Nowak et al. | Leveraging object recognition in reliable vehicle localization from monocular images | |
US20230334692A1 (en) | Device and method for tracking an object | |
Chen et al. | Object Detection for UAV Grasping: Solution and Analysis | |
US20230419650A1 (en) | Image localization using a digital twin representation of an environment |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |