CN113095125A - 基于场景连续性来诊断感知*** - Google Patents
基于场景连续性来诊断感知*** Download PDFInfo
- Publication number
- CN113095125A CN113095125A CN202011502756.8A CN202011502756A CN113095125A CN 113095125 A CN113095125 A CN 113095125A CN 202011502756 A CN202011502756 A CN 202011502756A CN 113095125 A CN113095125 A CN 113095125A
- Authority
- CN
- China
- Prior art keywords
- frames
- module
- score
- proposals
- perception
- 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
- 230000008447 perception Effects 0.000 title claims abstract description 101
- 238000001514 detection method Methods 0.000 claims abstract description 105
- 238000000034 method Methods 0.000 claims abstract description 70
- 230000004044 response Effects 0.000 claims abstract description 23
- 238000013528 artificial neural network Methods 0.000 claims description 28
- 230000000116 mitigating effect Effects 0.000 claims description 27
- 238000001914 filtration Methods 0.000 claims description 15
- 230000004913 activation Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 15
- 238000012549 training Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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/02—Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
- B60W50/0205—Diagnosing or detecting failures; Failure detection models
-
- 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/08—Interaction between the driver and the control system
- B60W50/14—Means for informing the driver, warning the driver or prompting a driver intervention
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/255—Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
-
- 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/768—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using context analysis, e.g. recognition aided by known co-occurring patterns
-
- 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/778—Active pattern-learning, e.g. online learning of image or video features
- G06V10/7784—Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors
- G06V10/7788—Active pattern-learning, e.g. online learning of image or video features based on feedback from supervisors the supervisor being a human, e.g. interactive learning with a human teacher
-
- 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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/98—Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
-
- 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
-
- 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
-
- 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
- G06V20/582—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of traffic signs
-
- 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/08—Interaction between the driver and the control system
- B60W50/14—Means for informing the driver, warning the driver or prompting a driver intervention
- B60W2050/143—Alarm means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Automation & Control Theory (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Quality & Reliability (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明涉及一种基于场景连续性来诊断感知***的***和方法。感知模块从车辆的车载传感器接收数据帧,并基于该数据识别车辆周围的对象。故障检测模块确定与数据相关联的语义信息、基于每个所识别的对象与语义信息的相关性为每个所识别的对象生成分数、并且基于所识别的对象的分数为帧生成分数。故障检测模块:响应于帧的分数小于第一阈值而确定感知模块正在正常操作;响应于帧的分数大于第二阈值而确定感知模块有故障;以及响应于分数在第一和第二阈值之间而需要检查。
Description
引言
本节中提供的信息旨在概括介绍本公开的背景。在本节中描述的范围内,当前署名的发明人的工作,以及在提交时可能不符合现有技术的描述方面,既不明确也不隐含地被认为是针对本公开的现有技术。
技术领域
本公开总体上涉及在自主车辆中使用的感知***,并且更特别地,涉及用于基于场景连续性来诊断感知***的***和方法。
背景技术
自主车辆中使用的感知***利用各种传感器来感测车辆的周围环境。感知***从这些传感器接收关于车辆周围环境的数据。例如,这些传感器包括摄像机和位于车辆内和车辆外部各种位置处的其他(例如,雷达、激光雷达、声纳等)传感器,传感器向感知***提供数据。感知***处理从这些传感器接收的数据,并确定车辆的周围环境。例如,周围环境可包括其他车辆、行人、路标、交通标志、建筑物、地标等。自主车辆的子***可以基于这些确定来控制车辆。这些确定也可以用于通知和警告驾驶员车辆周围的情况。
发明内容
***包括感知模块和故障检测模块。感知模块被配置成从车辆的车载传感器接收关于车辆周围环境的一个或多个帧的数据,并基于来自所述一个或多个帧的数据识别车辆周围的对象。故障检测模块被配置成:确定与来自所述一个或多个帧的数据相关联的语义信息;基于每个所识别的对象与语义信息的相关性来为每个所识别的对象生成分数;以及基于所识别的对象的分数来为所述一个或多个帧生成分数。故障检测模块被配置成:响应于所述一个或多个帧的分数小于第一阈值,确定感知模块正在正常操作;响应于所述一个或多个帧的分数大于第二阈值,确定感知模块具有故障;以及响应于分数在第一和第二阈值之间,确定感知模块需要检查。
在其他特征中,故障检测模块被配置成基于所识别的对象的分数来确定感知模块是否误识别了对象中的一个。误识别的对象或者不存在于所述一个或多个帧中,或者被识别为与存在于所述一个或多个帧中的对象不同的对象。
在其他特征中,感知模块包括第一神经网络和第一滤波器。第一神经网络被配置成输出用于从来自所述一个或多个帧的数据中识别对象的提议。每个提议都包括对象类别、坐标和概率。第一滤波器被配置成从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集,并且在从提议中过滤提议的子集之后输出所识别的对象。
在其他特征中,故障检测模块包括第二神经网络和第二滤波器。第二神经网络被配置成接收提议,并基于每个提议与语义信息的相关性将分数分配给提议。第二滤波器被配置成从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集,并且在从提议中过滤提议的子集之后输出具有分数的所识别的对象。
在其他特征中,故障检测模块包括第一神经网络和第二神经网络。第一神经网络被配置成从来自所述一个或多个帧的数据中提取特征。这些特征表示与来自所述一个或多个帧的数据相关联的语义信息。第二神经网络被配置成接收所识别的对象和特征,并输出所识别的对象的分数。
在另一个特征中,第二神经网络被配置成一次一个地接收所识别的对象,并且一次一个地输出分数。
在另一个特征中,故障检测模块还被配置成基于所识别的对象的分数的加权平均值来确定所述一个或多个帧的分数。
在另一个特征中,该***还包括故障缓解模块,该故障缓解模块被配置成响应于故障检测模块确定感知模块具有故障而执行缓解程序。
在另一个特征中,缓解程序包括警告车辆驾驶员和解除自动驾驶特征。
在另一个特征中,该***还包括激活模块,该激活模块被配置成根据车辆的周围环境来激活或停用故障检测模块。
在又其他特征中,方法包括从车辆的车载传感器接收关于车辆周围环境的一个或多个帧的数据。该方法包括使用感知模块基于来自所述一个或多个帧的数据识别车辆周围的对象。该方法包括确定与来自所述一个或多个帧的数据相关联的语义信息。该方法包括基于每个识别的对象与语义信息的相关性,为每个识别的对象生成分数。该方法包括基于所识别的对象的分数为所述一个或多个帧生成分数。该方法包括:响应于所述一个或多个帧的分数小于第一阈值,确定感知模块正在正常操作;响应于所述一个或多个帧的分数大于第二阈值,确定感知模块具有故障;以及响应于分数在第一和第二阈值之间,确定感知模块需要检查。
在其他特征中,该方法还包括基于所识别的对象的分数来确定感知模块是否已误识别了对象中的一个。误识别的对象或者不存在于所述一个或多个帧中,或者被识别为与存在于所述一个或多个帧中的对象不同的对象。
在其他特征中,该方法还包括基于来自所述一个或多个帧的数据输出用于识别对象的提议。每个提议都包括对象类别、坐标和概率。该方法还包括从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集。该方法还包括在从提议中过滤提议的子集之后输出所识别的对象。
在其他特征中,该方法还包括基于每个提议与语义信息的相关性将分数分配给提议。该方法还包括从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集。该方法还包括在从提议中过滤提议的子集之后,输出具有分数的所识别的对象。
在其他特征中,该方法还包括从来自所述一个或多个帧的数据中提取特征。这些特征表示与来自所述一个或多个帧的数据相关联的语义信息。该方法还包括基于特征和所识别的对象输出所识别的对象的分数。
在另一个特征中,该方法还包括一次一个地接收所识别的对象,并且一次一个地输出分数。
在另一个特征中,该方法还包括基于所识别的对象的分数的加权平均值来确定所述一个或多个帧的分数。
在另一个特征中,该方法还包括响应于确定感知模块具有故障而执行缓解程序。
在另一个特征中,缓解程序包括警告车辆驾驶员和解除自动驾驶特征。
在另一个特征中,该方法还包括根据车辆的周围环境来激活或停用故障检测模块。
本发明提供了以下技术方案:
1. 一种***,包括:
感知模块,其被配置成从车辆的车载传感器接收关于所述车辆的周围环境的一个或多个帧的数据,并基于来自所述一个或多个帧的数据识别所述车辆周围的对象;和
故障检测模块,其被配置成:
确定与来自所述一个或多个帧的数据相关联的语义信息;
基于每个所识别的对象与所述语义信息的相关性,为每个所识别的对象生成分数;
基于所识别的对象的分数为所述一个或多个帧生成分数;和
确定:
响应于所述一个或多个帧的分数小于第一阈值,所述感知模块正在正常操作;
响应于所述一个或多个帧的分数大于第二阈值,所述感知模块具有故障;以及
响应于所述分数在所述第一阈值和所述第二阈值之间,所述感知模块需要检查。
2. 根据技术方案1所述的***,其中,所述故障检测模块被配置成基于所识别的对象的分数来确定所述感知模块是否已经误识别了所述对象中的一个,其中,误识别的对象或者不存在于所述一个或多个帧中,或者被识别为与存在于所述一个或多个帧中的对象不同的对象。
3. 根据技术方案1所述的***,其中,所述感知模块包括:
第一神经网络,其被配置成输出用于从来自所述一个或多个帧的数据识别对象的提议,其中,每个所述提议包括对象类别、坐标和概率;和
第一滤波器,其被配置成从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集,并且在从所述提议中过滤所述提议的子集之后输出所识别的对象。
4. 根据技术方案3所述的***,其中,所述故障检测模块包括:
第二神经网络,其被配置成接收提议,并基于每个所述提议与所述语义信息的相关性将分数分配给所述提议;和
第二滤波器,其被配置成从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集,并且在从提议中过滤所述提议的子集之后输出具有分数的所识别的对象。
5. 根据技术方案1所述的***,其中,所述故障检测模块包括:
第一神经网络,其被配置成从来自所述一个或多个帧的数据中提取特征,其中,所述特征表示与来自所述一个或多个帧的数据相关联的语义信息;和
第二神经网络,其被配置成接收所识别的对象和特征,并输出所述所识别的对象的分数。
6. 根据技术方案5所述的***,其中,所述第二神经网络被配置成一次一个地接收所识别的对象,并且一次一个地输出分数。
7. 根据技术方案1所述的***,其中,所述故障检测模块还被配置成基于所识别的对象的分数的加权平均值来确定所述一个或多个帧的分数。
8. 根据技术方案1所述的***,还包括故障缓解模块,所述故障缓解模块被配置成响应于所述故障检测模块确定所述感知模块具有故障而执行缓解程序。
9. 根据技术方案8所述的***,其中,所述缓解程序包括警告所述车辆的驾驶员并解除自动驾驶特征。
10. 根据技术方案1所述的***,还包括激活模块,所述激活模块被配置成根据车辆的周围环境来激活或停用所述故障检测模块。
11. 一种方法,包括:
从车辆的车载传感器接收关于车辆周围环境的一个或多个帧的数据;
基于来自所述一个或多个帧的数据,使用感知模块来识别车辆周围的对象;
确定与来自所述一个或多个帧的数据相关联的语义信息;
基于每个识别的对象与所述语义信息的相关性,为每个识别的对象生成分数;
基于所识别的对象的分数为所述一个或多个帧生成分数;和
确定:
响应于所述一个或多个帧的分数小于第一阈值,所述感知模块正在正常操作;
响应于所述一个或多个帧的分数大于第二阈值,所述感知模块具有故障;以及
响应于所述分数在所述第一阈值和所述第二阈值之间,所述感知模块需要检查。
12. 根据技术方案11所述的方法,还包括基于所识别的对象的分数来确定所述感知模块是否误识别了所述对象中的一个,其中,所述误识别的对象或者不存在于所述一个或多个帧中,或者被识别为与存在于所述一个或多个帧中的对象不同的对象。
13. 根据技术方案11所述的方法,进一步包括:
基于来自一个或多个帧的数据输出用于识别对象的提议,其中,每个提议包括对象类别、坐标和概率;
从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集;以及
在从所述提议中过滤所述提议的子集之后,输出所识别的对象。
14. 根据技术方案13所述的方法,进一步包括:
基于每个所述提议与所述语义信息的相关性,将分数分配给所述提议;
从所述提议中过滤具有小于或等于所述第三阈值的重叠坐标和概率的提议的子集;以及
在从所述提议中过滤所述提议的子集之后,输出具有分数的所识别的对象。
15. 根据技术方案11所述的方法,进一步包括:
从来自所述一个或多个帧的数据中提取特征,其中,所述特征表示与来自所述一个或多个帧的数据相关联的语义信息;和
基于所述特征和所识别的对象输出所识别的对象的分数。
16. 根据技术方案15所述的方法,还包括一次一个地接收所识别的对象,并且一次一个地输出分数。
17. 根据技术方案11所述的方法,还包括基于所识别的对象的分数的加权平均值来确定所述一个或多个帧的分数。
18. 根据技术方案11所述的方法,还包括响应于确定所述感知模块具有故障而执行缓解程序。
19. 根据技术方案18所述的方法,其中,所述缓解程序包括警告所述车辆的驾驶员并解除自动驾驶特征。
20. 根据技术方案11所述的方法,还包括根据车辆的周围环境来激活或停用所述故障检测模块。
从详细描述、权利要求和附图中,本公开的其他应用领域将变得显而易见。详细描述和具体示例仅旨在说明的目的,并且不旨在限制本公开的范围。
附图说明
从详细描述和随附附图将会更全面地理解本公开,其中:
图1示出了检测结果、地面实况结果、边界框和表格,该表格示出了由车辆周围的感知***检测到的对象的多个检测结果及其类别、边界框坐标和概率;
图2示出了用于检测感知***中的故障的第一***;
图3示出了用于检测感知***中的故障的第二***;
图4示出了用以缓解由第一或第二***检测到的故障的故障缓解***的示例;
图5示出了用于检测感知***中的故障的第一方法;
图6示出了用于检测感知***中的故障的第二方法;
图7A示出了可以实施图1-6所示的***和方法的分布式计算***的简化示例;和
图7B示出了图7A的分布式计算***的服务器的简化示例。
在附图中,附图标记可以重复使用来标识相似和/或相同的元件。
具体实施方式
用于确定车辆周围环境的感知***会经受故障,这些故障需要被检测到。感知***的在线诊断会是有挑战性的,因为当车辆在道路上行驶时,难以实时确定地面实况,其中地面实况是由直接观察提供的参考信息(即实证证据),而不是由推断提供的信息。本公开提供了在没有地面实况的情况下诊断感知***的***和方法。该***和方法通过计算感知结果的场景连续性来诊断感知***,并基于不连续性来确定故障。该***和方法可以在运行时间期间在运行中动态地检测、识别和缓解感知***中的故障。
场景连续性表示感知结果在多大程度上适合(即,与在其中检测到的其他对象一致)基于由各种传感器捕获的关于车辆周围环境的数据生成的当前场景或图像。如下文详细解释的,使用诸如深度神经网络(仅在整个公开中使用)的特定模型来计算场景连续性。将计算的场景连续性与阈值进行比较,以检测错误。可以基于检测到的错误来执行故障缓解。例如,该***和方法可以解除自动驾驶特征,向驾驶员发送警报,平稳地靠边停车,和/或忽略融合中的故障感知通道(即,当通道冗余可用时,隔离并忽略故障通道)。该***和方法通过提供故障警报和优化车队管理来改善用户体验。该***和方法提高了感知***的可靠性,并增强了车辆的感知质量,而无需额外的硬件。
更具体地,场景连续性是基于图像的语义信息或由车辆的车载传感器捕获的原始数据来确定的。基于原始数据生成的感知结果提供关于在帧或图像中检测到的对象的信息。场景连续性表示在一帧或一小批帧中识别的对象之间的相关性。注意,相关性不在时间序列中的帧之间,并且因此连续性不是时间连续性。相反,相关性是一个对象与一个或多个帧中的其他对象的相关性。因此,场景连续性表示一个或多个帧中不同对象之间的相关性。如下所述,一个或多个帧中的对象相关性或场景连续性可以用于隔离感知***中的故障。
例如,当车辆在道路上行驶时,感知***可识别帧或图像中的N个对象,其中N是大于1的整数。感知***可能错误地识别这N个对象中的一个。例如,错误识别的对象实际上可能不存在(例如,高速公路车道上的行人或自行车)。作为另一个示例,实际存在的对象可能被误识别为另一个对象(例如,摩托车可能被识别为汽车)。本公开的故障检测***的目标是通过感知***来识别这种故障或异常对象检测。
对于由感知***在帧中检测到的每个对象,故障检测***从感知***接收对象信息,诸如对象ID(例如,分配给帧中的对象的编号)、对象类别(例如,汽车、卡车、船等)、边界框数据(解释如下)和概率分数(也解释如下)。故障检测***基于帧中对象的语义信息来计算每个对象的连续性分数。
例如,在特定的帧中,当车辆在城市街道上行驶时,故障检测***可以将场景连续性分数1分配给帧中识别的大多数汽车,因为汽车基于帧中检测到的对象的语义信息“适合”帧中的场景,其中大多数可能是汽车。然而,感知***还可识别帧中的船,其在帧中的城市街道上被意外地检测到,并且也被感知模块分配了高概率分数。故障检测***可以将场景连续性分数0分配给船,因为船不“适合”帧中基于帧中检测到的对象的语义信息的场景,大多数帧中检测到的对象是汽车。因此,故障检测***可以识别感知***的故障,在该示例中,该故障是当实际上船不存在时对帧中的船的错误识别。类似的方法可以用于检测感知***错误地识别实际存在于帧中的对象的故障(例如,当感知***将自行车误识别为摩托车时,等等)。
在感知***中,当车辆的车载传感器捕获来自车辆周围的对象的数据时,来自传感器的原始数据被发送到感知***以进行处理。例如,感知***可使用深度神经网络(DNN)来实施。对于从原始数据生成的给定图像,神经网络输出针对图像中检测到的每个对象的信息,包括类别、边界框和概率。感知***在有界框中提供对象的表示,其中,对象的位置坐标指示在感测对象时对象的位置。感知***进一步对对象进行分类(例如,提供关于对象的类型或类别的指示,对象是否是车辆、交通标志、地标、行人等等)。感知***然后给检测到的对象分配概率。该概率指示感知***(例如,DNN)检测对象的置信度水平。例如,如果一辆汽车在图像中有点模糊,但仍然被神经网络捕获,那么它可具有低概率。反过来说,如果一辆汽车在图像中是清晰的,那么它可具有高概率。
图1示出了当检测到的对象是汽车时的检测结果或感知结果的示例。图1还示出了针对被检测对象(该示例中为汽车)的地面实况。图1进一步示出了针对被检测对象的边界框的示例。因此,感知***可以输出如图1中的表格所示的多个检测结果,其中该表格包括每个识别的对象、ID、类别、边界框坐标和概率分数。本公开添加了场景连续性分数,该分数如下文详细描述的那样生成。
本公开提供了用于检测车辆感知***中的故障的故障检测***的两种实施方式。在第一实施方式中,故障检测***确定白盒感知模块的场景连续性;也就是说,当感知***及其操作已知或可知且故障检测***因此可以访问感知***的元件或部件时。在第二实施方式中,故障检测***确定黑盒感知***的场景连续性;也就是说,当感知***及其操作未知或不可知且故障检测***因此不能访问感知***的元件或部件时。
图2示出了第一实施方式,其中,感知***100是白盒。感知***100包括感知模块102,其从车辆的车载传感器104接收一帧或一批帧的数据Dk。例如,该批帧可包括一个或多个图像。一批中的帧可优选是连续的(即,连贯的),但不需要是连续的。感知模块102使用训练好的模型(诸如深度神经网络(DNN))生成提议Pk,其是接收到的帧中的对象的可能候选。从一帧移动到另一帧的对象可具有两种提议:一种是当在第一帧检测到时,且另一种是当在下一帧检测到时。感知***100包括滤波器106,滤波器106过滤提议并生成指示在接收到的帧中识别的对象的检测结果Rk。
根据感知模块102使用的模型,提议可以呈固定大小(诸如N×6)的矩阵形式,其中N表示构成矩阵行的提议或候选的数量;并且作为示例,数字6表示每个候选的信息类型(例如,类别(1列)、边界框坐标(4列)和概率分数(1列))。数字N可以相对地高(例如,数百)。例如,参见图1所示的表格。给定感知模块的提议数量可以是固定的,而不管是单个帧还是一批帧被输入到感知模块。这个示例中的场景是N个提议的集合。
感知模块102为每个候选分配概率分数,概率分数指示在接收到的帧中被正确检测为对象的可能性。然而,这些N个候选中的许多可能具有相对低的概率分数,并且可能需要被过滤掉。例如,这些N个候选对象中的许多可能具有相对低的概率分数,因为这些候选可包括诸如交通标志、树之类的对象,以及小的、远的、模糊的和/或具有重叠边界框且因此不可识别或无效的候选。
滤波器106过滤提议,以去除这些具有相对低概率分数的候选,并生成检测结果Rk,该检测结果Rk指示在接收到的帧中具有相对高概率分数的识别的对象。滤波器106还过滤具有高重叠坐标的提议。例如,检测结果可以呈诸如M×6的矩阵形式,其中M是与N相比相对小的整数(例如,近似小于10)。
故障检测***110,也称为故障检测模块110,包括连续性确定模块112,其包括第二DNN,该第二DNN被训练为生成由感知模块102生成的提议Pk的场景连续性分数。因为感知模块102是白盒,所以提议Pk的格式(例如,矩阵的大小)可以是已知的。因此,第二DNN(即,连续性确定模块112)接收由感知模块102生成的提议Pk,并将场景连续性分数分配给提议Pk。例如,第二DNN的输出(即,连续性确定模块112)呈大小为N×1的矩阵Sk ~的形式,其中一列包括N个候选或提议Pk中的每一者的场景连续性分数。
故障检测模块110包括类似于感知***100的滤波器106的滤波器114,其使用与由感知***100使用的滤波器相同的滤波器来过滤第二DNN(即,连续性确定模块112)的输出。再次,可以使用相同的滤波器,因为感知模块102是白盒,并且因此滤波器106是已知的或可知的。滤波器114的输出呈大小为M×1的矩阵Sk的形式,其中M表示由感知模块102在其滤波器106的输出中(即,在检测结果Rk中)识别的相同对象。滤波器114的输出中的一列包括由感知模块102在其滤波器106的输出中(即,在检测结果Rk中)识别的M个对象中的每一者的场景连续性分数。
如果M个对象中的一个具有相对低的场景连续性分数,则故障检测模块110可以确定感知模块102在检测结果Rk中错误地识别了该对象。这样,感知模块102中的错误可以被故障检测模块110检测到。
训练模块120用于在将故障检测模块110部署在车辆中以检测运行时间期间感知模块102中的错误(即,当具有感知模块102的车辆正在道路上行驶时,在运行中)之前,在工厂处对第二DNN如下进行训练。运行时间期间不使用训练模块120。训练模块120包括相关模块122,相关模块122接收由感知模块102的DNN为一批帧生成的N个提议Pk。可以改变Pk来添加正确或不正确的检测,以扩充训练数据集。关于帧中实际的已知对象的地面实况(即,标记的)数据Lk被输入到相关模块122。相关模块122将每个提议Pk与地面实况数据Lk相关联。相关模块122将地面实况连续性分数分配给每个提议Pk。如果提议中的对象与地面实况数据中的对象一致(或语义匹配),则分数为1;并且如果提议中的对象与地面实况数据中的对象不一致(或语义不匹配),则分数为0。无论不一致的对象是在没有实际存在的情况下被识别的(例如,不存在的船),还是存在但被误识别的(例如,被识别为汽车的摩托车),分数都为零。分数可以是0到1之间的任何数字。因此,相关模块122生成N个提议及其地面实况连续性分数的矩阵Sk ^。矩阵Sk ^的大小为N×1。
在训练期间,输入到相关模块122的相同提议也被输入到故障检测模块110的第二DNN(即,连续性确定模块112)。第二DNN(即,连续性确定模块112)也如上所述生成大小为N×1的连续性分数矩阵Sk ~。训练模块120包括损失函数模块124,其使用L2范数来计算两个矩阵Sk ^和Sk ~的损失函数,这包括基于两个矩阵Sk ^和Sk ~之间的元素比较来确定错误,并且然后合计错误。
在上面的等式中,下标2表示L2范数,并且上标2指示使用L2范数获得的逐元素(element-wise)的平方错误。如果两个矩阵相同,则损失函数为零。如果损失函数非零,则递归训练第二DNN,直到损失函数最小化。
图3示出了第二实施方式,其中感知模块200是黑盒。因此,只有由感知模块200生成的最终检测结果Rk可用。同样,单个帧或一批帧(连续或不连续的)被输入到感知模块200。场景是由感知模块200生成的检测结果Rk的集合。在检测结果Rk中,当每组帧中的数据Dk变化时,被识别对象的数量M可以变化。
在第二实施方式中,在任何给定时间处,感知模块200输出M个检测结果,M是任何非负整数。如果M等于零,则可跳过故障检测过程,因为没有要诊断的检测结果。故障检测***202,也称为故障检测模块202,包括选择模块204,其一次选择M个检测结果,并且故障检测模块202的剩余部分通过依次选择M个检测结果中的每一个来迭代地执行下面描述的处理。因此,选择模块204的输出rk是固定大小1×6的矩阵,例如,其中一行表示从M个检测结果中选择的单个对象或检测结果。选择模块204的输出rk被输入到连续性确定模块206,连续性确定模块206包括第一DNN以确定场景连续性分数,如下所述。
故障检测模块202还包括特征提取模块208,其包括从接收到的帧的原始数据Dk提取特征Fk的附加第二DNN。特征Fk表示与接收到的帧相关联的整个图像的语义信息。第一DNN(即,连续性确定模块206)将所选择的对象或检测结果rk与表示整个图像的语义信息的特征Fk进行比较,并且将场景连续性分数sk分配给对象rk。对象rk的场景连续性分数sk是1×1大小的矩阵,其中一列表示对象rk的场景连续性分数sk。
为下一个对象rk重复上述生成场景连续性分数的上述过程,直到为所有M个对象生成场景连续性分数sk。注意,在为所有M个对象生成场景连续性分数期间,特征信息Fk保持相同。故障检测模块还包括组合模块210,该组合模块210将所有M个对象的场景连续性分数sk组合并输出为场景连续性分数Sk,该场景连续性分数Sk呈M×1大小的矩阵Sk的形式。
在将故障检测模块202部署在车辆中以检测运行时间期间感知模块200中的错误之前(即,当具有感知模块200的车辆正在道路上行驶时,在运行中),训练模块220用于在工厂处对第一DNN如下进行训练。运行时间期间不使用训练模块220。训练模块220包括相关模块222,其接收一批帧的所选对象或检测结果rk。rk可以被改变以添加正确或不正确的检测来扩充训练数据集。关于帧中实际的已知对象的地面实况(即,标记的)数据Lk被输入到相关模块222。相关模块222将所选对象rk与地面实况数据Lk相关联。相关模块222将地面实况连续性分数分配给所选对象rk。如果所选对象rk中的对象与地面实况数据中的对象一致(或语义匹配),则分数为1,并且如果所选对象rk中的对象与地面实况数据中的对象不一致(或语义不匹配),则分数为0。分数可以是0到1之间的任何数字。因此,相关模块222生成所选对象rk的矩阵sk ^及其地面实况连续性分数。矩阵sk ^的大小是1x1。
在训练期间,输入到相关模块222的相同的所选对象rk也被输入到第一DNN(即,连续性确定模块206)。如上所述,第一DNN(即,连续性确定模块206)还生成大小为1×1的连续性分数矩阵sk。训练模块220包括损失函数模块224,其使用L2范数来计算两个矩阵sk ^和sk的损失函数,这包括基于两个矩阵sk ^和sk之间的逐元素的比较来确定错误,且然后合计错误。
同样,在上面的等式中,下标2表示L2范数,并且上标2指示使用L2范数获得的逐元素的平方错误。如果两个矩阵相同,则损失函数为零。如果损失函数非零,则递归训练第一DNN,直到损失函数最小化。对每个所选对象rk重复上述训练过程,直到对所有M个检测到的对象的训练完成。
注意,在任一实施方式中,场景连续性分数不是二进制值0或1。相反,场景连续性分数是0到1之间的任何值;即大于或等于0且小于或等于1。虽然该信息在感知***是否已经识别出不存在的对象或者已经错误地识别出存在的对象之间进行区分时可能是有用的,但是故障检测***检测场景连续性分数是更接近0还是更接近1,基于此,故障检测***检测感知***中的故障。
还要注意,在第一实施方式中,已知的感知模块也可以被认为(即,被处理)为黑盒,如在第二实施方式中所解释的。因此,第二实施方式也可以与已知的感知模块一起使用。
图4示出了诊断模块250和缓解模块252,它们可以与任一实施方式的故障检测模块110或202结合使用或集成。也就是说,这些模块是图2和3所示的故障检测***的一部分。一旦故障检测模块110、202基于场景连续性分数检测到感知***100或200检测到故障条件或异常对象的可能性,诊断模块250如下对检测到的对象的场景连续性分数进行分析。基于这些分析,诊断模块250诊断感知***100或200是否有故障、感知***100或200是否正在正常操作(即没有故障),或者感知***100或200是否需要检查。
诊断模块250将一组场景连续性分数Sk中由感知模块(白盒或黑盒)识别的所有对象的场景连续性分数sk分为三组:具有低、中或高场景连续性分数的组。例如,诊断模块250将小于第一阈值θ1的场景连续性分数sk l分组到第一集合{sk l}中;诊断模块250将大于或等于第一阈值θ1但小于或等于第二阈值θ2的场景连续性分数sk m分组到第二集合{sk m}中;并且诊断模块250将大于第二阈值θ2的场景连续性分数sk h分组到第三集合{sk h}中。
然后,诊断模块250使用以下等式使用权重来计算整个帧或整批帧的场景不连续性分数。以下等式中的权重可以是1或者可以被调整(例如,校准)以强调一个或多个组来改善故障识别。
如果场景不连续性分数大于第三阈值θ3,则诊断模块250检测感知***中的故障。如果场景不连续性分数小于第四阈值θ4,则诊断模块250确定感知***正在正常操作(即,没有任何故障)。诊断模块250确定感知***是可疑的,并且如果场景不连续性分数在第三和第四阈值之间;也就是说,如果场景不连续性分数大于或等于第四阈值θ4但小于或等于第三阈值θ3,则建议检查感知***。
当故障检测***(例如,诊断模块250)检测到感知***中的故障时,缓解模块252缓解故障。由缓解模块252执行的缓解程序的非限制性示例包括以下内容。例如,如果故障检测***指示传感器故障(例如,其中一个摄像机正在不正常地工作),则缓解程序可以包括忽略该传感器并使用另一个传感器(例如,另一个摄像机)来代替。例如,如果故障检测***指示感知***中的故障(即,如果感知***结果不正确),则缓解程序可以包括警告乘客立即控制车辆并解除自动驾驶特征。例如,这样的警告消息可以经由车辆的信息娱乐子***视听输出。根据故障的严重程度,缓解程序还可以包括将车辆停在路边(例如,使用车辆的自主子***)。还考虑了缓解程序的附加示例。
故障检测***(例如,缓解模块252)可与车辆的各种子***260通信。例如,子***260可以包括但不限于信息娱乐子***(例如,提供警报)、自主或自动驾驶子***(例如,控制车辆、缓解故障等)、制动子***、速度控制子***、导航子***、通信子***(例如,与图7A和7B所示的基于云的后端***通信)等。
故障检测***可以基于许多不同的条件被触发。这种条件的非限制性示例包括如下内容。例如,可以周期性地执行故障检测(例如,每隔N分钟、在每次点火之后、在每次点火之后的X分钟之后、在车辆在停止之后开始移动之后的Y分钟之后(诸如在交通灯或标志处),等等)。例如,故障检测可以在车辆每次接近或经过可能存在感知错误的特定十字路口或位置(例如,在市区)时触发。例如,故障检测可以在高速公路上比在城市中更不频繁地被触发。
用户可以基于自己的喜好触发(即开启)故障检测。车队经理可根据车队中车辆正在行驶的情况来触发故障检测。例如,与当出租车正从机场驶往城市时相比,当出租车正从机场驶往高速公路旁的停车场和乘车场时,出租车中的故障检测***可能更少地被触发。替代的,故障检测可以连续执行,而不考虑任何触发条件。可以考虑可以触发故障检测的附加因素或考虑(基础)的其他示例。
图5示出了根据本公开的用于故障检测的第一方法300。例如,图2和4中所示的一个或多个元件可以实施第一方法300的一个或多个步骤。在302处,控制从她车辆的车载传感器接收一个或多个帧的数据。在304处,控制使用诸如深度神经网络的模型基于数据来生成用于检测对象的提议。在306处,控制基于数据过滤提议,以为检测到的对象生成检测结果。
在308处,控制为提议分配场景连续性分数。在310处,如上面参考图2所述,控制用场景连续性分数过滤提议。在312处,控制使用分组、加权和阈值,基于具有场景连续性分数的过滤提议,确定检测结果中的一个是否有故障,如上面参考图4所述。
在314处,基于在312处执行的分析,控制确定感知***是否正在正常操作(即,没有任何故障)。如果感知***正在正常操作,则该方法结束。然而,如果感知***没有正常操作,则在316处,控制基于在312处执行的分析来确定在感知***中是否检测到故障。在318处,如果在感知***中检测到故障,则控制如上所述缓解故障。然而,如果没有检测到故障,但是感知***也没有正常操作(如通过在上述分析期间与各种阈值的比较所指示的),则在320处控制建议对感知***进行检查。
图6示出了根据本公开的用于故障检测的第二方法350。例如,图3和4中所示的一个或多个元件可以实施第一方法350的一个或多个步骤。在352处,控制从她车辆的车载传感器接收一个或多个帧的数据。在354处,控制基于数据为检测到的对象生成检测结果。在356处,控制使用诸如深度神经网络的模型基于数据生成特征。
在358处,控制选择第一检测结果。在360处,控制将特征和所选的检测结果输入到第二深度神经网络。在362处,控制使用第二深度神经网络基于特征将场景连续性分数分配给所选的检测结果。在364处,控制确定是否处理了所有检测结果。如果没有处理所有的检测结果,则在366处,控制选择下一个检测结果并进行到360。在368处,在处理完所有检测结果之后,控制将检测结果与它们相应的场景连续性分数相结合,如上面参考图3所述。
在370处,控制基于使用分组、加权和阈值的场景连续性分数的检测结果来确定检测结果中的一个是否有故障,如上文参考图4所述。在372处,基于在370处执行的分析,控制确定感知***是否正在正常操作(即,没有任何故障)。如果感知***正在正常操作,则该方法结束。然而,如果感知***没有正常操作,则在374处,控制基于在370处执行的分析来确定在感知***中是否检测到故障。在376处,如果在感知***中检测到故障,则控制如上所述缓解故障。然而,如果没有检测到故障但是感知***也没有正常操作(如通过在上述分析期间与各种阈值的比较所指示的),则在378处控制建议对感知***进行检查。
下面是分布式计算环境的简单示例,在分布式计算环境中可以实施本公开的***和方法。在整个描述中,对诸如服务器、客户端装置、应用等术语的引用仅仅是为了说明的目的。术语服务器和客户端装置应被广义地理解为表示具有一个或多个处理器和被配置成执行机器可读指令的存储器的计算装置。术语应用和计算机程序应被广义地理解为表示可由计算装置执行的机器可读指令。
图7A示出了分布式计算***400的简化示例。分布式计算***400包括分布式通信***410、一个或多个车辆420-1、420-2、…、和420-M(统称为车辆420)、以及一个或多个服务器430-1、430-2、…、和430-N(统称为服务器430)。M和N是大于或等于1的整数。
分布式通信***410可包括局域网(LAN)、诸如因特网的广域网(WAN)或其他类型的网络。车辆420和服务器430可位于不同的地理位置处,并且可经由分布式通信***410彼此通信。例如,服务器430可位于云中的数据中心中。车辆420和服务器430可使用无线和/或有线连接来连接到分布式通信***410。
车辆420可包括上文参照图1-6所示和所述的***,其可执行软件应用,诸如上文参照图1-6所述的各种方法。服务器430可向客户端装置420提供多种服务。例如,服务器430可执行由一个或多个供应商开发的软件应用(例如,用于检测和缓解故障的后端***)。服务器430可托管软件应用在向车辆420的用户提供服务时所依赖的多个数据库。
图7B示出了服务器430-1的简化示例。服务器430-1通常包括一个或多个CPU或处理器470、网络接口478、存储器480和大容量存储器482。在一些实施方式中,服务器430-1可以是通用服务器,并且包括一个或多个输入装置472(例如,键盘、触摸板、鼠标等)和包括显示器476的显示子***474。
网络接口478将服务器430-1连接到分布式通信***410。例如,网络接口478可包括有线接口(例如,以太网接口)和/或无线接口(例如,Wi-Fi、蓝牙、近场通信(NFC)或其他无线接口)。存储器480可包括易失性或非易失性存储器、高速缓存或其他类型的存储器。大容量存储器482可包括闪存、一个或多个磁性硬盘驱动器(HDD)或其他大容量存储装置。
服务器430-1的处理器470执行操作***(OS)484和一个或多个服务器应用程序486(例如,用于检测和缓解故障和/或用于进一步分析次要或非关键故障的后端***),其可被容纳在虚拟机管理程序或容器化架构中。大容量存储器482可存储一个或多个数据库488,数据库488存储由服务器应用程序486用来执行相应功能的数据结构。
以上描述本质上仅是说明性的并且决不旨在限制本公开、其应用或用途。本公开的广泛教导可以多种形式实施。因此,虽然本公开包括特定示例,但是本公开的真正范围不应该限制于此,因为当研究附图、说明书、和以下权利要求书之后其它修改将变得显而易见。应当理解的是,在方法内的一个或多个步骤可以不同次序(或同时)执行而不改变本公开的原理。另外,虽然以上将实施例中的每一者描述为具有某些特征,但是关于本公开的任何实施例描述的那些特征中的任何一个或多个均可在任何其它实施例的特征中实施和/或结合任何其它实施例的特征实施,即使该接合没有明确描述。换句话来说,所描述实施例不是相互排斥的,并且一个或多个实施例彼此的置换仍保留在本公开的范围内。
使用各种术语描述了在元件之间(例如,在模块、电路元件、半导体层等之间)的空间和功能关系,这些术语包括“连接”、“接合”、“联接”、“相邻”、“紧靠”、“在……顶上”、“在……上方”、“在……下方”和“设置”。除非明确描述为“直接”,否则当在以上公开中描述在第一元件与第二元件之间的关系时,该关系可为其中在第一元件与第二元件之间不存在其它介入元件的直接关系,但是也可为其中在第一元件与第二元件之间(不论空间上或功能上)存在一个或多个介入元件的间接关系。如在本文中使用的,短语A、B、和C中的至少一个应被解释为意味着使用非排它性逻辑“或”的逻辑(A或B或C),且不应被解释为“A中的至少一个、B中的至少一个、和C中的至少一个”。
在视图中,由箭头指示的箭头方向大体表示说明所关注的信息(诸如数据或指令)的流。例如,当元件A和元件B交换多种信息,但从元件A传输到元件B的信息与图示相关时,则箭头可从元件A指向元件B。该单向箭头并不暗示不存在从元件B传输到元件A的其它信息。此外,对于从元件A发送到元件B的信息,元件B可向元件A发送该信息的请求或者该信息的接收确认。
在包括以下定义的本申请中,术语“模块”或术语“控制器”可以用术语“电路”代替。术语“模块”可指代以下项、是以下项的一部分、或包括以下项:专用集成电路(ASIC);数字、模拟、或混合式模拟/数字离散电路;数字、模拟、或混合式模拟/数字集成电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器电路(共享、专用或成组);存储由处理器电路执行的代码的存储器电路(共享、专用或成组);提供所描述功能的其它合适的硬件部件;或上述中的一些或所有的组合,诸如在***芯片中。
模块可包括一个或多个接口电路。在一些示例中,接口电路可包括连接到局域网(LAN)、因特网、广域网(WAN)、或其组合的有线或无线接口。本公开的任何给定模块的功能都可在经由接口电路连接的多个模块中分布。例如,多个模块可允许负载平衡。在进一步的示例中,服务器(又称为远程服务器、或云服务器)模块可代表客户端模块完成某些功能。
如上文使用的,术语代码可包括软件、固件、和/或微代码,并且可指代程序、例程、功能、类别、数据结构、和/或对象。术语共享处理器电路涵盖执行来自多个模块的一些或所有代码的单个处理器电路。术语成组处理器电路涵盖结合另外的处理器电路来执行来自一个或多个模块的一些或所有代码的处理器电路。对多个处理器电路的指代涵盖离散裸片上的多个处理器电路、单个裸片上的多个处理器电路、单个处理器电路的多个核、单个处理器电路的多个线程、或上述的组合。术语共享存储器电路涵盖存储来自多个模块的一些或所有代码的单个存储器电路。术语成组存储器电路涵盖结合另外的存储器来存储来自一个或多个模块的一些或所有代码的存储器电路。
术语存储器电路是术语计算机可读介质的子集。如在本文中使用的,术语计算机可读介质并不涵盖(诸如在载波上)通过介质传播的暂时性电或电磁信号;术语计算机可读介质可因此视为是有形且非暂时性的。非暂时性的有形计算机可读介质的非限制示例为:非易失性存储器电路(诸如快闪存储器电路、可擦除可编程只读存储器电路、或掩码只读存储器电路)、易失性存储器电路(诸如静态随机存取存储器电路或动态随机存取存储器电路)、磁性存储介质(诸如模拟或数字磁带或硬盘驱动)、以及光学存储介质(诸如CD、DVD、或蓝光光盘)。
在本申请中描述的设备和方法可部分地或完全地由专用计算机实施,该计算机是通过配置通用计算机以执行在计算机程序中体现的一个或多个特定功能而创建的。上文描述的功能块、流程图部件、和其它元件用作为软件规范,其可以通过本领域技术人员或程序员的常规作业而转译为计算机程序。
计算机程序包括存储在至少一个非暂时性、有形计算机可读介质上的处理器可执行指令。计算机程序还可包括或依赖于所存储的数据。计算机程序可涵盖与专用计算机的硬件交互的基本输入/输出***(BIOS)、与专用计算机的特定装置交互的装置驱动器、一个或多个操作***、用户应用程序、背景服务、背景应用程序等。
计算机程序可包括:(i)待解析的描述性文本,诸如HTML(超文本标记语言)、XML(可扩展标记语言)、或JSON(JavaScript对象表示法),(ii)汇编代码,(iii)由编译器从源代码生成的目标代码,(iv)用于由解释器执行的源代码,(v)用于由即时编译器编译和执行的源代码等。仅作为示例,源代码可使用来自以下语言的语法编写,所述语言包括:C、C++、C#、Objective-C、Swift、Haskell、Go、SQL、R、Lisp、Java®、Fortran、Perl、Pascal、Curl、OCaml、Javascript®、HTML5(超文本标记语言第五版)、Ada、ASP(动态服务器网页)、PHP(PHP:超文本预处理器)、Scala、Eiffel、Smalltalk、Erlang、Ruby、Flash®、Visual Basic®、Lua、MATLAB、SIMULINK、和Python®。
Claims (10)
1.一种***,包括:
感知模块,其被配置成从车辆的车载传感器接收关于所述车辆的周围环境的一个或多个帧的数据,并基于来自所述一个或多个帧的数据识别所述车辆周围的对象;和
故障检测模块,其被配置成:
确定与来自所述一个或多个帧的数据相关联的语义信息;
基于每个所识别的对象与所述语义信息的相关性,为每个所识别的对象生成分数;
基于所识别的对象的分数为所述一个或多个帧生成分数;和
确定:
响应于所述一个或多个帧的分数小于第一阈值,所述感知模块正在正常操作;
响应于所述一个或多个帧的分数大于第二阈值,所述感知模块具有故障;以及
响应于所述分数在所述第一阈值和所述第二阈值之间,所述感知模块需要检查。
2.根据权利要求1所述的***,其中,所述故障检测模块被配置成基于所识别的对象的分数来确定所述感知模块是否已经误识别了所述对象中的一个,其中,误识别的对象或者不存在于所述一个或多个帧中,或者被识别为与存在于所述一个或多个帧中的对象不同的对象。
3.根据权利要求1所述的***,其中,所述感知模块包括:
第一神经网络,其被配置成输出用于从来自所述一个或多个帧的数据识别对象的提议,其中,每个所述提议包括对象类别、坐标和概率;和
第一滤波器,其被配置成从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集,并且在从所述提议中过滤所述提议的子集之后输出所识别的对象。
4.根据权利要求3所述的***,其中,所述故障检测模块包括:
第二神经网络,其被配置成接收提议,并基于每个所述提议与所述语义信息的相关性将分数分配给所述提议;和
第二滤波器,其被配置成从提议中过滤具有小于或等于第三阈值的重叠坐标和概率的提议的子集,并且在从提议中过滤所述提议的子集之后输出具有分数的所识别的对象。
5.根据权利要求1所述的***,其中,所述故障检测模块包括:
第一神经网络,其被配置成从来自所述一个或多个帧的数据中提取特征,其中,所述特征表示与来自所述一个或多个帧的数据相关联的语义信息;和
第二神经网络,其被配置成接收所识别的对象和特征,并输出所述所识别的对象的分数。
6.根据权利要求5所述的***,其中,所述第二神经网络被配置成一次一个地接收所识别的对象,并且一次一个地输出分数。
7.根据权利要求1所述的***,其中,所述故障检测模块还被配置成基于所识别的对象的分数的加权平均值来确定所述一个或多个帧的分数。
8.根据权利要求1所述的***,还包括故障缓解模块,所述故障缓解模块被配置成响应于所述故障检测模块确定所述感知模块具有故障而执行缓解程序。
9.根据权利要求8所述的***,其中,所述缓解程序包括警告所述车辆的驾驶员并解除自动驾驶特征。
10.根据权利要求1所述的***,还包括激活模块,所述激活模块被配置成根据车辆的周围环境来激活或停用所述故障检测模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/720096 | 2019-12-19 | ||
US16/720,096 US10981577B1 (en) | 2019-12-19 | 2019-12-19 | Diagnosing perception system based on scene continuity |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113095125A true CN113095125A (zh) | 2021-07-09 |
CN113095125B CN113095125B (zh) | 2023-11-24 |
Family
ID=75494975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011502756.8A Active CN113095125B (zh) | 2019-12-19 | 2020-12-18 | 基于场景连续性来诊断感知*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US10981577B1 (zh) |
CN (1) | CN113095125B (zh) |
DE (1) | DE102020131657A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11436876B2 (en) * | 2019-11-01 | 2022-09-06 | GM Global Technology Operations LLC | Systems and methods for diagnosing perception systems of vehicles based on temporal continuity of sensor data |
CN113788023A (zh) * | 2021-09-28 | 2021-12-14 | 广州杰赛科技股份有限公司 | 车辆驾驶故障检测方法、装置、设备及存储介质 |
CN114641028B (zh) * | 2022-03-21 | 2024-07-19 | 中国联合网络通信集团有限公司 | 用户感知数据确定方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9201421B1 (en) * | 2013-11-27 | 2015-12-01 | Google Inc. | Assisted perception for autonomous vehicles |
US20180365835A1 (en) * | 2017-06-14 | 2018-12-20 | TuSimple | System and method for actively selecting and labeling images for semantic segmentation |
CN109255341A (zh) * | 2018-10-30 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 障碍物感知错误数据的提取方法、装置、设备及介质 |
CN109344903A (zh) * | 2018-10-12 | 2019-02-15 | 苏交科华东(浙江)工程设计有限公司 | 基于车载感知数据的城市道路路面故障实时检测方法 |
CN109421738A (zh) * | 2017-08-28 | 2019-03-05 | 通用汽车环球科技运作有限责任公司 | 用于监视自主车辆的方法和装置 |
DE102019112038A1 (de) * | 2018-05-24 | 2019-11-28 | GM Global Technology Operations LLC | Steuerungssysteme, steuerungsverfahren und steuerungen für ein autonomes fahrzeug |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3113037B1 (en) * | 2015-07-03 | 2019-01-02 | Sap Se | Adaptive adjustment of network responses to client requests in digital networks |
KR20180060784A (ko) * | 2016-11-29 | 2018-06-07 | 삼성전자주식회사 | 비정상 객체 판단 방법 및 장치 |
KR102541559B1 (ko) * | 2017-08-04 | 2023-06-08 | 삼성전자주식회사 | 관심 객체를 검출하는 방법 및 장치 |
DE112019000049T5 (de) * | 2018-02-18 | 2020-01-23 | Nvidia Corporation | Für autonomes fahren geeignete objekterfassung und erfassungssicherheit |
-
2019
- 2019-12-19 US US16/720,096 patent/US10981577B1/en active Active
-
2020
- 2020-11-30 DE DE102020131657.7A patent/DE102020131657A1/de active Pending
- 2020-12-18 CN CN202011502756.8A patent/CN113095125B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9201421B1 (en) * | 2013-11-27 | 2015-12-01 | Google Inc. | Assisted perception for autonomous vehicles |
US20180365835A1 (en) * | 2017-06-14 | 2018-12-20 | TuSimple | System and method for actively selecting and labeling images for semantic segmentation |
CN109421738A (zh) * | 2017-08-28 | 2019-03-05 | 通用汽车环球科技运作有限责任公司 | 用于监视自主车辆的方法和装置 |
DE102019112038A1 (de) * | 2018-05-24 | 2019-11-28 | GM Global Technology Operations LLC | Steuerungssysteme, steuerungsverfahren und steuerungen für ein autonomes fahrzeug |
CN109344903A (zh) * | 2018-10-12 | 2019-02-15 | 苏交科华东(浙江)工程设计有限公司 | 基于车载感知数据的城市道路路面故障实时检测方法 |
CN109255341A (zh) * | 2018-10-30 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 障碍物感知错误数据的提取方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
US10981577B1 (en) | 2021-04-20 |
DE102020131657A1 (de) | 2021-06-24 |
CN113095125B (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107430591B (zh) | 车辆驾驶员辅助*** | |
CN113095125B (zh) | 基于场景连续性来诊断感知*** | |
CN111506980B (zh) | 对虚拟驾驶环境生成交通场景的方法及装置 | |
US10885777B2 (en) | Multiple exposure event determination | |
US11900663B2 (en) | Computer-assisted or autonomous driving traffic sign recognition method and apparatus | |
CN112783135B (zh) | 诊断车辆的感知***的***和方法 | |
JP6418574B2 (ja) | 危険度推定装置、危険度推定方法及び危険度推定用コンピュータプログラム | |
KR102073929B1 (ko) | 블록체인망을 이용한 차량의 비상 상황 로그 시스템 | |
CN111507160B (zh) | 集成从执行协同驾驶的车辆获取的行驶图像的方法及装置 | |
US9536157B2 (en) | Method for identification of a projected symbol on a street in a vehicle, apparatus and vehicle | |
US11553363B1 (en) | Systems and methods for assessing vehicle data transmission capabilities | |
JP7380616B2 (ja) | 自動運転制御装置、自動運転制御方法、及び自動運転制御プログラム | |
JP2017194949A (ja) | 対象物検出システム及び対象物検出方法 | |
US10783389B2 (en) | Systems and methods for avoiding misrecognition of traffic signs and signals by hacking | |
JP2022172444A (ja) | 原動機付き車両の走行動作を補助する方法及びアシスト装置並びに原動機付き車両 | |
US20200174488A1 (en) | False target removal device and method for vehicles and vehicle including the device | |
CN110386088A (zh) | 用于执行车辆差异分析的***和方法 | |
KR102105007B1 (ko) | 커넥티드 카 데이터 수집 및 돌발 상황 정보 제공을 위한 엣지-클라우드 시스템 | |
CN115017967A (zh) | 检测和收集事故相关驾驶体验事件数据 | |
US11851073B2 (en) | Fault isolation and mitigation upon lane marking misdetection on roadways | |
US20240124002A1 (en) | Method and apparatus for changing route when error occurs in autonomous driving artificial intelligence | |
EP4177849A1 (en) | Method and device for determining a color of a lane marking | |
WO2023228722A1 (ja) | 画像認識システム | |
KR20240051805A (ko) | 자율주행 인공지능 오류 발생 시 경로 변경 방법 및 장치 | |
US20200377122A1 (en) | Safety architecture for control of autonomous vehicle |
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 |