CN115943440A - 用于检测对物体识别系统的投影攻击的系统和方法 - Google Patents
用于检测对物体识别系统的投影攻击的系统和方法 Download PDFInfo
- Publication number
- CN115943440A CN115943440A CN202080102440.1A CN202080102440A CN115943440A CN 115943440 A CN115943440 A CN 115943440A CN 202080102440 A CN202080102440 A CN 202080102440A CN 115943440 A CN115943440 A CN 115943440A
- Authority
- CN
- China
- Prior art keywords
- image
- depth
- vehicle
- neural network
- projected
- 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
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/40—Spoof detection, e.g. liveness detection
-
- 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/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- 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
- 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
- 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/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
提供用于车辆的物体检测系统的示例。在一个示例中,一种用于车辆的系统包括:图像传感器;处理器;以及存储装置,所述存储装置存储能够由所述处理器执行以进行以下操作的指令:经由所述图像传感器捕获所述车辆的环境的图像;检测所述车辆的所述环境的所述图像中的物体;确定所述物体是否是所述物体的投影图像;并且如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作。
Description
技术领域
本公开涉及车辆中的物体检测系统,包括使用计算机视觉系统来检测物体。
背景技术
智能交通系统(ITS)是智能城市不断发展的一个组成部分,可用于交通规划和交通管理的决策制定。汽车、交通信号灯、司机、传感器、路边单元和其他公共基础设施构成了多个系统的复杂网络系统。基于ITS的应用可能包括优化交通信号控制、安全交叉路口和紧急警告通知,目标是提高出行效率、公共安全、应急响应,甚至灾难恢复。作为ITS的构成部分,智能交通信号灯、信号和/或标志越来越多地用于交通管理。一些车辆,例如自主或半自主车辆,可能会利用成像系统来检测物体、交通信号灯、信号和/或标志并相应地调整车辆操作。
发明内容
本公开提供用于使用对所检测数据的稳健鉴认和验证来对物体交通信号灯、信号和/或标志执行实时检测和识别以解决数据安全的机构。例如,一些交通标志识别系统可能会采用多种深度学习算法来理解各种图像识别场景下的不同交通标志。然而,发明人认识到,基于计算机视觉的交通标志识别系统面临的一个挑战是能够将原始交通标志信号与伪造或被黑客入侵的信号区分开来,所述伪造或被黑客入侵的信号几乎与合法交通信号相似,但实际上是为一些其他应用而设计的和/或由未经授权的实体修改(例如,通过入侵现有的交通信号控制系统来显示)。现有算法在区分伪造标志信号和原始交通标志信号方面也存在挑战。在一些示例中,本公开的方面提供基于密码学的交通标志验证系统,所述基于密码学的交通标志验证系统补充基于计算机视觉的交通标志识别。在一些公开的系统中,指示交通标志的数据是安全的(例如,加密的和/或有数字签名的)并传输到车辆。车辆使用来自计算机视觉系统的识别标志验证安全数据,以便使用密码鉴认检查基于计算机视觉识别的标志的真实性。
对基于计算机视觉的物体检测系统或物体识别系统的类似攻击包括将物体图像投影到表面上或空气中,例如作为全息图,因此物体检测系统可能会将物体的投影误认为是物体本身。因此,在一些示例中,本公开的方面提供了一种物体检测系统,所述物体检测系统使用卷积神经网络估计由计算机视觉系统检测到的物体的深度,以便确定所述物体是否是真实的物理物体,或者所述物体是否是投影到表面上的物体的二维图像或投影在空气中的物体的三维图像(例如,全息图)。
在一种用于车辆的系统的一个示例中,所述系统包括图像传感器、处理器和存储装置,所述存储装置存储能够由所述处理器执行以进行以下操作的指令:经由所述图像传感器捕获所述车辆的环境的图像;检测所述车辆的所述环境的所述图像中的物体;确定所述物体是否是所述物体的投影图像;并且如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作。
在一种用于车辆的方法的一个示例中,所述方法包括:经由图像传感器捕获所述车辆的环境的图像;用第一神经网络检测所述图像中的物体;用第二神经网络确定所述物体是否是所述物体的投影图像;如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作;以及如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。
在一种用于车辆的方法的另一个示例中,所述方法包括:经由图像传感器捕获所述车辆的环境的图像;用第一神经网络检测所述图像中的物体;用第二神经网络估计所述图像中的所述物体的深度;基于所述物体的所述估计深度来确定所述物体是否是所述物体的投影图像;如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作;以及如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。
附图说明
通过参考附图阅读对非限制性实施方案的以下描述,可更好地理解本公开,在附图中:
图1示意性地示出根据本公开的一个或多个实施方案的可以在其中执行物体检测和验证的示例环境;
图2示出根据本公开的一个或多个实施方案的描绘自动检测到的物体的示例相机图像;
图3示出根据本公开的一个或多个实施方案的描绘对投影物体的检测的示例相机图像;
图4示出说明根据本公开的一个或多个实施方案的包括用于检测投影物体的相机感知电子控制系统(ECU)的示例ECU的框图;
图5示出说明根据本公开的一个或多个实施方案的用于检测和验证相机图像中的物体的示例系统的框图;
图6示出说明根据本公开的一个或多个实施方案的用于验证相机图像中检测到的物体的示例方法的高级流程图;
图7示出说明根据本公开的一个或多个实施方案的用于深度估计神经网络的无监督训练的示例方法的高级流程图;
图8示出说明根据本公开的一个或多个实施方案的用于深度估计神经网络的无监督训练的示例方法的框图;
图9示出根据本公开的一个或多个实施方案的示例车载计算系统的框图。
具体实施方式
一些物体识别系统可以利用机器学习来提高基于计算机视觉的物体识别的准确性。然而,现有的物体识别系统未能完全解决与交通信息的信息和数据安全有关的各种问题,包括例如与交通系统和交通信号的连接性的进步有关的问题。黑客或其他在软件级别或无线拦截级别对交通信号系统进行的网络攻击可能会试图修改交通信号(由自主或半自主车辆使用,或仅由车辆操作者或乘员使用),并且还可能会显示在车辆中的交通标志显示屏上。基于计算机视觉的物体识别系统可能不知道交通信号控制系统中的此类漏洞并且容易受到交通信号控制系统中的此类漏洞的影响,并且可能完全或主要专注于对获得的图像执行图像处理操作。交通信号控制系统中为改变交通标志显示板上的标志而制定的任何变化对于车辆中的其他物体识别系统是不可见的。没有用于验证传入交通信号的合法性的机制,非交通/非法的交通标志信号可能会渗透到交通标志识别系统中,这样可能会导致操作者采取不恰当的动作并且可能会导致车辆不恰当地操作及/或违反既定的交通规则。
此外,物体识别系统还可以被配置为检测除交通信号系统之外的物体,例如行人、车辆、车辆路径中的碎屑等。配置有此类物体识别系统的高级驾驶员辅助系统(ADAS)可以提醒车辆操作者检测到物体的存在及/或响应于检测到的物体而执行自主动作。然而,黑客或对物体识别系统的其他攻击可能会尝试显示将被物体识别系统错误地识别为真实物体的虚假物体。例如,虚假物体的二维图像可以被投影(例如,使用投影仪)、涂刷、粘贴或以其他方式定位或显示在车辆相机的视野内的表面上。作为说明性示例,可以将行人或车辆的图像投影到道路表面上,以欺骗物体识别系统将行人或车辆的图像分类为实际的行人或车辆。类似地,可以将交通标志牌(例如限速标志)的图像投影到表面上以欺骗物体识别系统将交通标志牌的图像分类为实际的交通标志牌。此类虚假物体检测和分类可能会导致操作者采取不恰当的动作,并可能导致车辆不恰当地操作和/或违反既定的交通规则。
本公开通过将用于车辆的物体识别系统扩展到区分真实物体与虚假物体来至少部分地解决物体识别系统中的一个或多个以上问题。例如,图1示出用于在车辆102与可能包括交通标志的物体104之间执行安全交通标志检测的示例环境100。如本文所用,术语“交通标志”可用于表示交通信号、交通信号灯、交通标志和/或可以在交通场景中用于控制道路上的车辆和/或操作者和/或向道路上的车辆和/或操作者告知交通法规、条例、警告、指示等的任何其他指示器。
交通标志检测系统可包括收发器,其中发射器容纳在交通标志104中和/或可通过交通标志104接近。发射器可以使用安装在交通信号杆108上和/或否则安装在交通标志104上或附近的天线发射数字密码信息(由传输信号106表示),并且车辆接收器使用安装在车辆上的天线接收数字信息。数字传输信息可以是显示在相关联的交通信号显示器上的对应交通标志104的密码表示。密码表示使用单独分配给每个交通标志的唯一ID将一个交通标志与另一个区分开来。在非限制性示例中,当停车标志显示在交通标志104的交通显示器上时,发射器发射分配给停车标志的唯一ID的密码表示。
使用发射器发射的交通标志的接收到的密码表示在车辆102处被接收,并且在车辆102的车辆信息娱乐系统/车辆处理器内部验证密码信息。
车辆102还包括具有视野110的相机(未示出)。物体识别系统处理由相机获取的相机图像以检测和分类视野110内的物体,例如所描绘的交通标志104。密码信息的验证可以包括使用接收到的密码表示来验证由车辆的计算机视觉系统识别的交通标志。例如,车辆102可以包括一个或多个相机,所述相机被配置为对车辆周围的环境区域(例如,由视野110表示)进行成像,其中处理所得图像以定位图像数据中的交通标志。图像数据中识别出的任何交通标志都可以与接收到的密码数据一起使用,以验证和/或鉴认计算机视觉识别的交通标志。使用上述非限制性示例,如果车辆102中的基于计算机视觉的物体识别系统将交通标志104识别为停车标志,则车辆使用与计算机视觉识别出的停车标志相关联的停车ID的信息来执行对接收到的信号的密码鉴认。如果使用停车ID的密码鉴认成功,则交通标志被认为是通过鉴认的,否则交通标志被认为是伪/假信号。
基于计算机视觉的物体识别系统除了对交通标志进行检测和分类外,还可以对视野内的其他物体进行检测和分类,例如行人、驾车者、车辆、碎屑等。例如,图2示出描绘多个自动检测到的物体202的示例相机图像200。物体识别系统自动检测和分类相机图像200内的物体,例如包括所描绘的汽车的物体205。如图所示,物体识别系统为每个检测到的物体生成感兴趣区域,例如感兴趣区域210,所述感兴趣区域界定相机图像200中的含有检测到的物体205的区域。物体识别系统还对每个物体进行分类,并且还可以向每个检测到的物体添加分类的标签212。例如,如图所示,多个自动检测到的物体202包括汽车205、第二汽车225和交通信号灯245。本文描述的物体识别系统或物体检测系统可以被配置为生成物体205、225和245的对应感兴趣区域210、230和250。此外,物体识别系统还分别用标签212、232和252对检测到的物体205、225和245进行分类。如图所示,物体识别系统将物体205分类为具有指示物体是汽车的标签212,而第二汽车225被分类为具有指示物体时汽车的标签232,并且交通信号灯245被分类为具有指示物体是交通信号灯的标签252。这样,ADAS系统可以监测此类检测到的物体相对于车辆的行为,使得ADAS系统可以响应于一个或多个检测到的物体执行一个或多个动作(例如,通过调整相对于检测到的车辆205或225中的一个或多个的速度,或响应于交通信号灯245的信号变化)。
然而,如上所述,此类物体识别系统可能错误地将物体的投影(例如,二维图像)检测和分类为物体自身。作为说明性示例,图3示出了描绘对投影物体的检测的示例相机图像300。相机图像300描绘了道路302和建筑物304。此外,如图所示,人的图像320被投影到道路302上。类似地,交通标志的图像330被投影到建筑物304上。如图2中所示的用于检测物体的相同物体识别系统可以检测图像320和330,并且生成分别在相机图像300中界定图像320和330的感兴趣区域322和332。此外,图像320和330可以被准确地分别分类为行人和交通标志。
然而,图像320和330分别被投影到道路302的表面和建筑物304的表面上,并且不对应于实际的行人或实际的交通标志。在所描绘的示例中,图像330描绘了指示可能不正确的速度限制的虚假交通标志。在此类示例中,如果图像330描绘的虚假交通标志被物体识别系统分类为真实交通标志,则在车辆在至少部分自主的操作模式下操作时,车辆可能加速或减速到图像330描绘的不正确速度。类似地,如果行人的图像320被分类为在道路302中间的实际行人,则考虑到行人的图像320,车辆可能生成警告来提醒车辆操作者注意行人和/或可调整操作(例如,通过调整车辆速度)。
图4示出说明根据本公开的一个或多个实施方案的用于车辆402的示例高级驾驶员辅助系统(ADAS)电子控制单元(ECU)系统400的框图,所述ADAS ECU系统包括用于检测相机410获取的图像中的物体的相机感知ECU 415,所述物体包括投影物体405。ADAS ECU系统400帮助车辆402的驾驶员或操作者控制车辆402、识别其他车辆和驾驶危险以及同时管理多个车辆系统。这样,ADAS ECU系统400减轻操作者操作车辆402的负担,并提供操作者原本可能不清楚的关于车辆402的环境的详细信息。作为说明性和非限制性示例,ADAS ECU系统400可以提供自适应巡航控制(ACC)系统和车道保持辅助(LKA)系统,所述ADAS系统在跟随另一车辆时自动调节车速,所述LKA系统将扭矩施加到车辆402的方向盘(未示出)以帮助操作者保持行驶车道。一般而言,ADAS ECU系统400检测车辆402的环境中的物体(例如,其他车辆、行人、车道标记、交通标志、碎屑等)并响应于检测到的物体来控制一个或多个车辆系统(例如,通过执行自适应巡航控制、控制转向和制动系统、执行纠正和/或规避操作、提醒车辆402的操作者注意检测到的物体等等)。
为此,ADAS ECU系统400包括多个ECU,包括被配置为处理由相机410获取的相机图像的相机感知ECU 415。本文中进一步参看图5来描述相机感知ECU 415的示例系统。相机感知ECU 415经由总线417可通信地联接到车辆402的其他ECU,所述总线可以包括发动机控制器局域网(CAN)总线。例如,ADAS ECU系统400包括多个ECU,包括第一ECU(ECU1)421、第二ECU(ECU2)422、第三ECU(ECU3)423和第四ECU(ECU4)424,其中每个ECU可以专用于控制车辆402的不同系统或子系统。例如,ECU 421、422、423、424可以包括发动机控制单元、变速器控制单元、制动控制单元、远程信息处理控制单元、速度控制单元、车门控制单元等。ADAS ECU系统400还包括用于经由ADAS ECU系统400的其他ECU协调对车辆子系统的控制的ADAS主ECU(MECU)428。
ADAS ECU系统400的每个ECU可以包括处理器,例如微处理器,和存储器,例如非暂时性存储器。在一些示例中,ADAS ECU系统400可以包括额外的数字存储装置,所述数字存储装置包括例如经由总线417通信地联接到ADAS ECU系统400的一个或多个ECU的非暂时性存储器。
相机410可以包括ADAS相机,所述ADAS相机被配置为获取车辆402周围的环境的图像以辅助ADAS ECU系统400。作为示例,相机410可以相对于车辆402位于前向位置,使得相机410的视野指向车辆402的前方。ADAS ECU系统400可以包括额外的相机,例如相对于车辆朝向不同方向的相机410,例如后视相机。在一些示例中,相机410可以包括多个相机,所述相机例如被布置为适于确定周围环境的三维表示的立体相机系统。然而,在一些示例中,相机410可以包括单个相机,例如适于获取周围环境的二维图像的图像传感器。
因此,相机410可以包括安装在车辆402上或车辆402中用于对车辆402的环境进行成像的一个或多个图像传感器。相机410可以包括后视相机、前视相机、侧视相机、宽视野相机(例如,具有大于180度的视野的相机)和/或与车辆402相关联的任何其他合适的相机。除了用于对交通标志成像外,一个或多个相机410还可以用于提供障碍物检测、车道识别、用于在车辆内显示的环视成像和/或其他成像任务。
相机410可以获取车辆402外部环境的图像,所述图像可以包括一个或多个物体,包括投影物体405。相机感知ECU 415经由相机410接收或获取投影物体405的图像,并对图像进行处理以检测投影物体405。相机感知ECU415可以将投影物体405分类为例如车辆、行人、交通标志等,以及检测投影物体405相对于车辆402的位置。相机感知ECU 415可以将投影物体405的分类和投影物体405的相对位置输出到总线417,使得ADAS MECU428和/或另一个ECU可以响应于检测到投影物体405来控制一个或多个车辆系统。这样,如果投影物体405是真实物体(即,实际物理物体,而不是物体的虚假投影图像),则ADAS ECU系统400可以控制一个或多个车辆系统响应于物体来执行一个或多个动作。
然而,如果相机感知ECU 415检测到的物体是投影物体405(即,物体的二维或三维图像),则ADAS ECU系统400可能不会执行ADAS ECU系统400在投影物体405是真实物体的情况下将会执行的一个或多个动作。例如,ADAS ECU系统400可以响应于检测到车辆402前面的行人或响应于检测到指示较低限速的交通标志而控制车辆402降低速度,但是如果行人和/或交通标志是投影物体,例如图3中所示,则ADAS ECU系统400可以改为识别物体是投影物体405并且不会控制车辆系统来降低车辆402的速度。
为此,图5示出说明根据本公开的一个或多个实施方案的用于检测和验证相机图像中的物体的示例系统500的框图。作为说明性示例,系统500可以经由相机感知ECU 415来实现。系统500包括:物体检测模块505,所述物体检测模块被配置为检测和分类经由相机410获取的相机图像中的物体;深度估计模块510,所述深度估计模块被配置为估计相机图像中物体的深度;相对姿势模块515,所述相对姿势模块被配置为估计相机图像之间的相对相机姿势;以及标志验证模块520,所述标志验证模块被配置为验证交通标志的真实性。
物体检测模块505被配置为使用一种或多种深度学习计算机视觉算法来检测和分类相机410捕获的图像中存在的物体。作为说明性和非限制性示例,物体检测模块505可以包括和/或利用一种或多种深度学习计算机视觉算法进行物体检测,例如卷积神经网络(CNN)、区域CNN、快速区域CNN、更快区域CNN、只看一次(YOLO)方法、单步检测器(SSD)等。例如,物体检测模块505可以包括卷积神经网络,所述卷积神经网络被配置为对相机410获取的相机图像进行卷积运算,以提取特征并进一步预测物体的边界框(例如图2和图3中所示的边界框或感兴趣区域)。包括CNN的物体检测模块505例如可以经过训练以对物体进行识别和/或分类,包括但不限于交通标志、车辆、行人、驾驶员、碎屑、交通标记等。
检测相机图像中的物体的一个问题是相机410可能不包括能够识别相机图像中物体的三维形状的三维相机系统或立体相机系统。例如,如上所述,物体检测模块505可能无法将投影到表面上的物体的二维图像或投影在空气中的物体的三维全息图与车辆周围环境中的实际物体区分开。值得注意的是,此类虚假物体(即,物体的二维图像或物体的三维全息图)不具有关于从相机410到车辆402的水平距离的可测量深度。深度估计模块510因此估计物体检测模块505检测到的物体的深度以确定物体是真实物体还是虚假物体。深度估计模块510包括深度估计神经网络,在本文中也可互换地称为深度估计网络或深度网,所述深度估计神经网络被配置为接受相机图像作为输入并输出指示例如相机图像的每个像素的估计深度的深度图。由于投影的二维图像的深度是零并且投影的三维物体(例如,全息图)的深度不存在,因此系统500可以基于相机图像内物体的估计深度来确定检测到的物体是真实物体还是虚假物体。例如,如果即使在图像帧的获取之间相机的位置改变(例如,由于车辆移动)而物体的估计深度从一个图像帧到下一图像帧都不改变,则系统500可以确定该物体是虚假物体。
相对姿势模块515包括相对姿势神经网络,在本文中也称为相对姿势网络或姿势网,所述相对姿势神经网络被配置为接受经由相机获取的连续图像帧作为输入并输出图像帧之间的相对姿势。作为说明性和非限制性示例,相对姿势网络可以包括卷积神经网络。相对姿势模块515使深度估计模块510能够基于由相机获取的图像帧中的自我运动以完全无监督的方式学习深度。例如,给定来自相机的两个连续图像帧,深度估计模块510的神经网络为每个帧产生单视图深度估计,而相对姿势模块515估计帧之间的自我运动。深度估计模块510的深度估计网络可以通过优化网络来进行训练,使得来自相邻帧的深度和自我运动估计是一致的,如本文参看图7和图8进一步描述的。
深度估计模块510和相对姿势模块515一起使系统500能够通过使用来自单个图像传感器的图像数据将检测到的二维物体转换为三维结构来获得物体检测模块505检测到的物体的深度信息。这样,不是使用可利用视差来确定物体相对于车辆的深度的立体相机系统或可利用反射光来确定物体距车辆的深度或距离的LiDar系统,而是系统500可以使用单个相机确定物体相对于车辆的深度。
标志验证模块520被配置为验证或鉴认由物体检测模块505检测到的交通标志。例如,由于交通标志牌可能具有零深度,标志验证模块520可以验证由物体检测模块505分类为交通标志的检测到的物体是否是真实的交通标志。作为说明性示例,标志验证模块520包括基于密码学的交通标志验证(CTRV)模块。车辆的天线可以被配置为接收信息,例如被提供来控制交通标志的输出的交通标志信号的密码表示和/或从其他交通标志无线地接收到的交通标志信号的其他密码表示。接收到的信息可以被传递到标志验证模块520来进行处理,以确定与接收到的信息相关联(例如,由所述信息指示)的交通标志。例如,标志验证模块520可以对接收到的数据执行验证(例如,签名验证),解密接收到的信息,并且解析解密的信息以确认与相关联的交通标志相关联的身份。可以将解密的信息与交通标志标识符的数据库(例如,存储在车辆本地和/或在基于云的存储装置中)进行比较以确定传输的数据在传输过程中是否被破坏(例如,如果解密的信息与存储的交通标志标识符匹配,则数据在传输过程中未被破坏)。标志验证模块520可以将基于密码学的交通标志验证的结果提供到经验证的交通标志指示器(未示出),所述交通标志指示器(例如,向一个或多个车辆系统,例如显示控制器、处理器、发动机控制器等)输出指示物体检测模块505识别的交通标志是否有效的信号。例如,如果物体检测模块505识别的交通标志被指示为有效(例如,如果一个或多个车辆系统从经验证的交通标志指示器接收到指示成功解密接收到的密码数据的输出,后面跟着ID与存储在车辆本地的唯一ID的比较),则一个或多个车辆系统可以继续基于识别的交通标志控制车辆操作(例如,提供对交通标志的自动响应,例如输出交通标志的指示符、调整车辆的自主操作以符合交通标志指示的法规和/或交通管制等)。否则,如果物体检测模块505识别的交通标志被指示为无效(例如,如果一个或多个车辆系统从经验证的交通标志指示器接收到指示接收到的密码数据的解密不成功的输出),则一个或多个车辆系统可能不会基于识别的交通标志改变或控制车辆操作,并且任选地可以向驾驶员和/或交通管理局服务输出警告,以指示交通标志可能受损。
图6示出说明根据本公开的一个或多个实施方案的用于验证相机图像中检测到的物体的示例方法600的高级流程图。具体来说,方法600涉及评估经由计算机视觉自动检测到的物体是实际物体还是物体的投影。参看图1、图4、图5和图9的系统和部件来描述方法600,但是应了解,在不脱离本公开的范围的情况下,方法600可以用其他系统和部件来实现。方法600可以实现为ECU系统(例如ADAS ECU系统400)的非暂时性存储器中的可执行指令,并且可以由一个或多个处理器(例如相机感知ECU 415的处理器)执行。
方法600开始于605。在605,方法600例如经由相机410获得相机图像。相机图像包括车辆外部环境的二维图像。在610,方法600检测相机图像中的物体。例如,方法600可以将相机图像输入到物体检测模块505以检测相机图像中的一个或多个物体。物体检测模块505的经过训练的机器学习模型,例如卷积神经网络,接收相机图像作为输入并生成包括含有潜在物体的边界框或感兴趣区域的输出。输出还可以包括潜在物体的分类,例如指示潜在物体是行人、车辆、骑车人、交通信号灯、交通标志牌、碎屑等。
在615,方法600用深度估计神经网络估计检测到的物体的三维深度。例如,方法600可以将相机图像输入到深度估计模块510以估计相机图像中的每个检测到的物体的三维深度。深度估计模块510处理二维相机图像以确定相机图像的每个像素或对应于检测到的物体的至少每个像素的深度或距相机410的相对距离。在一些示例中,检测到的物体的深度可以进一步基于针对先前相机图像中的检测到的物体估计的先前深度来确定。这样,通过逐帧监测投影物体的估计深度,当深度不管自我运动而不改变时,可能看起来具有深度的投影物体可能会被识别为投影物体。
在620,方法600确定物体的深度是否为零或缺失。如果物体的深度不为零或不缺失(“否”),则方法600继续到625。在625,方法600将物体标记为真实物体。通过将物体标记为真实物体并将物体的该标记输出为真实物体,ADAS ECU系统400可以在考虑该物体的情况下控制一个或多个车辆系统。然后方法600返回。
然而,再次参看620,如果物体的深度为零或缺失(“是”),则方法600进行到630。在630,方法600确定检测到的物体是否被分类为标志牌,例如交通标志牌。此类物体可能具有零深度,同时仍包括真实物体。如果检测到的物体没有被分类为标志牌(“否”),则方法600继续到635。在635,方法600将物体标记为投影物体或虚假物体。因此,如果物体不具有深度并且不被分类为二维交通标志,则方法600将物体分类为投影物体。这样,其他ECU可能不会响应于投影物体而控制一个或多个车辆系统。例如,用于执行自适应巡航控制的ECU可能不会响应于投影到道路上的车辆图像而调整速度,尽管该图像最初被物体检测网络分类为车辆。然后方法600返回。
然而,再次参看630,如果检测到的物体是标志牌(“是”),则方法600继续到640。在640,方法600验证标志牌的真实性。例如,方法600可以基于从与标志牌相关联的收发器接收的加密信号经由标志验证模块520以密码方式验证交通标志牌的真实性。作为另一个示例,方法600可以例如基于根据GPS数据确定的车辆和/或检测到的信号牌的当前位置来查询存储有效交通标志和此类有效交通标志的位置的数据库,以验证标志牌为交通标志牌的真实性。
在645,方法600确定标志牌是否被验证为真实的。如果标志牌被验证为真实的(“是”),则方法600继续到650。在650,方法600将物体标记为真实标志牌。然后方法600返回。
然而,再次参看645,如果标志牌未被验证为真实的(“否”),则方法600继续到655。在655,方法600将物体标记为投影物体。这样,方法600可以将有效二维物体(例如交通标志)与无效二维物体(例如物体在表面上或空中的投影)区分开。然后方法600返回。
因此,方法600评估相机图像中的每个检测到的物体以确定该物体是真实物体还是虚假物体。这样,ADAS ECU系统,例如ADAS ECU系统400,可以响应于检测到真实物体而控制一个或多个车辆系统,同时忽略虚假物体。此外,即使物体被确定为虚假物体或投影物体,ADAS ECU系统400仍可以向车辆的操作者生成警报以进一步验证检测到的物体的有效性。
图7示出说明根据本公开的一个或多个实施方案的用于深度估计神经网络的无监督训练的示例方法700的高级流程图。具体来说,方法700涉及深度估计神经网络(诸如深度估计模块510的深度估计神经网络)的连续无监督训练,以改善在单个相机或图像传感器获取的二维图像中描绘的物体的深度估计。方法700例如可以被实现为相机感知ECU 415的非暂时性存储器中的可执行指令,并且可以由相机感知ECU 415的处理器或微处理器执行以执行本文描述的动作。
方法700开始于705。在705,方法700从相机获得连续图像帧,包括第一图像帧I1和第二图像帧I2。每个图像帧包括二维图像。在710,方法700利用深度估计模块510的深度估计神经网络估计第一图像帧的第一深度D1和第二图像帧的第二深度D2。
在715,方法700利用姿势神经网络估计第一图像帧与第二图像帧之间的相对相机姿势P12。为了加强预测结果的几何一致性,在720,方法700基于相对相机姿势P12将第一深度D1扭曲为扭曲深度D2 1,例如通过将第一深度D1转换到三维空间并使用相对相机姿势P12将三维空间中的第一深度D1投影到第二图像I2的图像平面。此外,在725,方法700将第二深度D2内插到内插深度D2’。
在730,方法700确定扭曲深度与内插深度之间的深度不一致性Ddiff。例如,方法700可以通过计算下式来确定深度不一致性:
在735,方法700根据深度不一致性生成权重掩码M,例如通过计算下式:
M=1-Ddiff.
在740,方法700更新深度估计神经网络,其中深度不一致性作为几何一致性损失并且权重掩码用于重新加权光度损失。具体来说,几何一致性损失LGC被定义为从第一图像帧I1成功投影到第二图像帧I2的图像平面的所有有效点的深度不一致性图的平均值。通过训练,一致性可以传播到整个视频序列。此外,权重掩码使深度网能够处理可能损害网络训练的移动物体和遮挡,因为权重掩码为不一致/一致像素分配高/低权重。然后方法700返回。
为了进一步说明方法700,图8示出说明根据本公开的一个或多个实施方案的用于深度估计神经网络的无监督训练的示例方法800的框图。方法800对应于上文描述的方法700。如所描绘的,方法800包括从单个相机获得连续图像,包括第一图像帧802和第二图像帧804。
第一图像帧802和第二图像帧804被连接806,并且所述连接的图像帧被输入到姿势网络816。作为说明性和非限制性示例,目标视图与沿颜色通道的所有源视图连接806。如果在第二图像帧804之前获取第一图像帧802,则第二图像帧804是目标视图。使用连接的图像帧作为输入,姿势网络816预测第一图像帧802与第二图像帧804之间的相对相机姿势826。相对相机姿势826可以包括相机在第一图像帧802与第二图像帧804的获取之间的相对旋转和平移。姿势网络816包括神经网络,例如上文描述的相对姿势网络515。例如,姿势网络816可以包括被布置成预测图像帧之间的相对姿势的卷积层和反卷积层。作为说明性和非限制性示例,第一卷积层可以包括十六个输出通道,前两个卷积层的内核大小可以分别包括七个和五个,最后两个反卷积/预测层的内核大小可以分别包括五个和七个,并且其余层的内核大小可以包括三个。对所有空间位置处的聚合预测应用全局平均池化。此外,除了没有应用非线性激活的最后一层外,所有卷积层后面都跟着修正线性单元(ReLU)。
同时,第一图像帧802被输入到输出第一深度估计822的深度估计网络812,并且第二图像帧804被输入到输出第二深度估计824的深度估计网络814。深度估计网络812和814可以包括相同的深度估计网络、相同深度估计网络的副本或不同的深度估计网络。
为了对预测结果强加几何一致性使得第一图像帧802和第二图像帧804的深度估计符合同一个三维结构,调整第一深度估计822和第二深度估计824。具体来说,通过将第一深度估计822转换为三维空间并投影到第二图像帧804的图像平面,将第一深度估计822扭曲为扭曲深度估计832。此外,基于从第一深度822和相对姿势826获得的投影流828,将第二深度估计824内插到内插深度估计834。如上所述,根据扭曲深度估计832和内插深度估计834之间的深度不一致性来确定损失LGC850。此外,根据深度不一致性计算权重掩码860。
图9示出了配置和/或集成在车辆901内部的车载计算系统900的框图。在一些实施方案中,车载计算系统900可执行上文描述的方法中的一者或多者。在一些示例中,车载计算系统900可以是车辆信息娱乐系统,所述车辆信息娱乐系统被配置为将基于信息的媒体内容(音频和/或视觉媒体内容,包括娱乐内容、导航服务等)提供给车辆用户以增强操作者的车载体验。车辆信息娱乐系统可包括或联接到各种车辆系统、子系统、硬件部件以及集成于或能够集成于车辆901中的软件应用程序和系统,以便增强驾驶员和/或乘客的车载体验。
车载计算系统900可以包括一个或多个处理器,所述一个或多个处理器包括操作系统处理器914和接口处理器920。操作系统处理器914可在车载计算系统上执行操作系统,并且控制车载计算系统的输入/输出、显示、回放和其他操作。接口处理器920可经由车辆内通信模块922与车辆控制系统930介接。
车辆内通信模块922可将数据输出到其他车辆系统931和车辆控制元件961,同时还例如通过车辆控制系统930从其他车辆部件和系统931、961接收数据输入。当输出数据时,车辆内通信模块922可经由总线提供与车辆的任何状态、车辆周围环境(例如,通过安装在车辆上的一个或多个麦克风或相机测量)或连接到车辆的任何其他信息源的输出相对应的信号。车辆数据输出可包括例如模拟信号(例如当前速度)、由单独的信息源(例如时钟、温度计、例如全球定位系统[GPS]传感器等位置传感器)提供的数字信号和通过车辆数据网络(例如可借以传输发动机相关信息的发动机控制器局域网络[CAN]总线和/或可借以传输车辆信息的音频-视频桥接[AVB]网络)传播的数字信号。例如,车载计算系统900可以从发动机CAN总线检索由车轮传感器估计的车辆当前速度、由GPS传感器提供的车辆当前位置以及由一个或多个惯性测量传感器提供的车辆当前轨迹,以便确定车辆的估计深度。另外,在不脱离本公开的范围的情况下,也可以使用其他接口装置,例如以太网。
在车载计算系统900中可以包括非易失性存储装置908以将诸如可由处理器914和920执行的指令等数据以非易失形式存储。存储装置908可存储应用程序数据以使车载计算系统900能够执行任何上述方法和/或运行应用程序以便连接到基于云的服务器和/或收集用于传输到基于云的服务器的信息。与基于云的服务器的连接可以通过车辆外通信模块924进行调解。所述应用程序可检索由车辆系统/传感器、输入装置(例如,用户接口918)、与车载计算系统通信的装置(例如,经由蓝牙链路连接的移动装置)等搜集的信息。车载计算系统900还可以包括易失性存储器916。易失性存储器716可以是随机存取存储器(RAM)。非暂时性存储装置,例如非易失性存储装置908和/或易失性存储器916,可存储指令和/或代码,所述指令和/或代码在由处理器(例如,操作系统处理器914和/或接口处理器920)执行时控制车载计算系统900来执行在本公开中描述的动作中的一者或多者。
在车载计算系统900中可以包括麦克风902以测量车辆中的环境噪声、测量车辆外部的环境噪声等。一个或多个额外传感器可以包括在车载计算系统900的传感器子系统910中和/或通信地联接到所述传感器子系统。例如,传感器子系统910可以包括和/或通信地联接到相机,例如用于帮助用户停放车辆的后视相机、用于识别用户的驾驶室相机和/或用于评估前方路段的质量的前视相机。如上所述,上述相机还可以用于将图像提供到基于计算机视觉的交通标志检测模块。车载计算系统900的传感器子系统910可与各种车辆传感器通信并且从各种车辆传感器接收输入并且还可以接收用户输入。虽然某些车辆系统传感器可单独与传感器子系统910通信,但其他传感器可与传感器子系统910和车辆控制系统930两者通信,或可通过车辆控制系统930间接地与传感器子系统910通信。传感器子系统910可以用作用于接收和/或处理从本公开中描述的一个或多个传感器接收到的信号的接口(例如,硬件接口)和/或处理单元。
车载计算系统900的导航子系统911可生成和/或接收导航信息,例如位置信息(例如,经由GPS传感器和/或来自传感器子系统910的其他传感器)、路线指导、交通信息、关注点(POI)识别,和/或为驾驶员提供其他导航服务。导航子系统911可以包括惯性导航系统,所述惯性导航系统可以经由运动和旋转传感器输入进一步确定车辆的位置、取向和速度。运动传感器的示例包括加速度计,并且旋转传感器的示例包括陀螺仪。导航子系统911可以与传感器子系统910中包括的运动和旋转传感器通信。另选地,导航子系统911可以包括运动和旋转传感器并且基于这些传感器的输出来确定移动和旋转。导航子系统911可以经由车辆外通信模块924向基于云的服务器和/或外部导航服务传输数据并从基于云的服务器和/或外部导航服务接收数据。
车载计算系统900的外部装置接口912可以是能够联接到位于车辆901外部的一个或多个外部装置940和/或与所述一个或多个外部装置通信。虽然所述外部装置被绘示为位于车辆901外部,但将理解,例如当用户在操作车辆901的同时正在操作外部装置时,它们可暂时容纳在车辆901中。换句话说,外部装置940与车辆901未成一体。外部装置940可包括移动装置942(例如,经由蓝牙、NFC、WIFI直连或其他无线连接进行连接)或具有蓝牙功能的另选装置952。移动装置942可以是可经由有线和/或无线通信与车载计算系统通信的移动电话、智能电话、可穿戴装置/传感器,或其他便携式电子装置。其他外部装置包括外部服务946。例如,所述外部装置可包括与车辆分开并且位于车辆外部的车外装置。其他外部装置包括外部存储装置954,例如固态驱动器、笔驱动器、USB驱动器等。在不脱离本公开的范围的情况下,外部装置940可无线地或经由连接器与车载计算系统900通信。例如,外部装置940可通过外部装置接口912经由网络960、通用串行总线(USB)连接、直接有线连接、直接无线连接和/或其他通信链路与车载计算系统900通信。
一个或多个应用程序944可以能够在移动装置942上操作。作为示例,移动装置应用程序944可以被操作以监测车辆的环境(例如,收集车辆环境的音频和/或视觉数据)和/或处理从车辆传感器接收到的音频和/或视觉数据。收集和/或处理的数据可以由应用程序944通过网络960传输到外部装置接口912。同样地,一个或多个应用程序948可以能够在外部服务946上操作。作为示例,可操作外部服务应用程序948以聚合和/或分析来自多个数据源的数据。例如,外部服务应用程序948可以聚合来自车载计算系统的数据(例如,传感器数据、日志文件、用户输入等)等。收集的数据可以传输到另一个装置和/或由应用程序分析以确定紧急车辆的位置和/或确定建议的行动方案以避免干扰紧急车辆。
车辆控制系统930可包括用于控制在不同的车载功能中涉及的各种车辆系统931的各方面的控件。这些控制可以包括例如控制车辆音频系统932的方面以向车辆乘员提供音频输出。音频系统932可包括一个或多个声学重现装置,包括电磁换能器,例如扬声器。在一些示例中,车载计算系统可以是用于声学重现装置的仅有的音频源,或者可能存在连接到音频重现系统(例如,例如移动电话等外部装置)以产生音频输出(例如上述的一个或多个音频提醒)的其他音频源。任何此类外部装置到音频重现装置的连接可以是模拟的、数字的或模拟技术与数字技术的任何组合。
车辆控制系统930还可以包括用于调整与发动机和/或车辆驾驶室内的辅助元件有关的各种车辆控件961(或车辆系统控制元件)的设置的控件,例如转向控件962、制动控件963、照明控件964(例如,驾驶室照明、外部车辆照明、灯光信号)。例如,车辆控制系统930可以包括用于调整车辆控件961以呈现上述提醒中的一者或多者(例如,调整驾驶室照明、根据检测到的交通标志自动地控制转向或制动以执行操纵等)的控件。车辆控件961还可以包括内部发动机和车辆操作控件(例如,发动机控制器模块、致动器、阀门等),所述内部发动机和车辆操作控件被配置为经由车辆的CAN总线接收改变发动机、排气系统、变速箱和/或其他车辆系统(例如,以提供上述提醒)的操作的指令。控制信号还可以控制车辆的音频系统932的一个或多个扬声器处的音频输出(例如,可闻提醒)。
车载计算系统900还可以包括天线906,所述天线可以通信地联接到外部装置接口912和/或车辆外通信模块924。车载计算系统可经由天线906或经由红外线或其他机构通过适当的接收装置接收定位信号例如GPS信号和/或无线命令。
用户可经由用户接口918控制车载计算系统900的一个或多个元件。用户接口918可包括触摸屏上呈现的图形用户界面、和/或用户致动的按钮、开关、旋钮、拨盘、滑块等。用户还可以经由用户接口918与车载计算系统900和移动装置942的一个或多个应用程序交互。可在用户接口的显示器上向用户显示通知和其他消息(例如,提醒)以及导航辅助。可经由传入用户接口的用户输入来执行用户偏好/信息和/或对所呈现提醒的响应。
在一些示例中,可经由用户接口918指示对所投影物体的检测,使得可向车辆的操作者告知投影物体。此外,在此类示例中,用户接口918还可使得操作者能够确认物体是投影物体还是真实物体。这样,可提供额外的反馈以进一步改进上述相机感知ECU的深度估计网络和/或物体检测网络。
本公开提供一种用于车辆的系统,所述系统包括:图像传感器;处理器;以及存储装置,所述存储装置存储能够由所述处理器执行以进行以下操作的指令:经由所述图像传感器捕获所述车辆的环境的图像;检测所述车辆的所述环境的所述图像中的物体;确定所述物体是否是所述物体的投影图像;并且如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作。在所述系统的第一示例中,所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。在任选地包括所述第一示例的所述系统的第二示例中,所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:估计所述图像中的所述物体的深度,并且如果所述估计深度非零,则确定所述物体不是所述物体的所述投影图像。在任选地包括所述第一示例和所述第二示例中的一者或多者的所述系统的第三示例中,所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:将所述图像中的所述物体分类为交通标志牌,并且如果所述估计深度是零,则确定所述物体不是所述物体的所述投影图像。在任选地包括所述第一至第三示例中的一者或多者的所述系统的第四示例中,所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:如果所述估计深度是零,则将所述交通标志牌鉴认为有效交通标志牌以确定所述物体不是所述投影图像。在任选地包括所述第一至第四示例中的一者或多者的所述系统的第五示例中,所述存储装置存储深度估计神经网络,所述深度估计神经网络被配置为接受所述图像作为输入并生成所述估计深度作为输出,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:将所述图像输入到所述深度估计神经网络以估计所述图像中的所述物体的所述深度。在任选地包括所述第一至第五示例中的一者或多者的所述系统的第六示例中,所述存储装置存储相对相机姿势神经网络,所述相对相机姿势神经网络被训练来接受来自所述图像传感器的两个连续图像并输出所述两个连续图像之间的相对相机姿势,所述两个连续图像包括所述图像和第二图像。在任选地包括所述第一至第六示例中的一者或多者的所述系统的第七示例中,所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:用所述深度估计神经网络估计所述第二图像的第二深度;用所述相对相机姿势神经网络估计所述两个连续图像之间的所述相对相机姿势;基于所述相对相机姿势将所述深度变换为扭曲深度;基于所述相对相机姿势将所述第二深度内插到内插深度;以及基于所述扭曲深度与所述内插深度之间的深度不一致性来更新所述深度估计神经网络。在任选地包括所述第一至第七示例中的一者或多者的所述系统的第八示例中,所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:经由用户接口向所述车辆的操作者输出通知,指示如果所述物体是所述投影图像则所述物体是投影物体。
本公开还提供一种用于车辆的方法,所述方法包括:经由图像传感器捕获所述车辆的环境的图像;用第一神经网络检测所述图像中的物体;用第二神经网络确定所述物体是否是所述物体的投影图像;如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作;以及如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。在所述方法的第一示例中,确定所述物体是否是所述物体的所述投影图像包括:用所述第二神经网络估计所述图像中的所述物体的深度;以及如果所述深度非零,则确定所述物体不是所述投影图像。在任选地包括所述第一示例的所述方法的第二示例中,所述方法还包括用所述第一神经网络对所述物体的类型分类,其中确定所述物体是否是所述物体的所述投影图像还包括如果所述深度是零并且所述物体的所述类型不被分类为交通标志牌,则确定所述物体是所述投影图像。在任选地包括所述第一和第二示例中的一者或多者的所述方法的第三示例中,确定所述物体是否是所述物体的所述投影图像还包括如果所述深度是零并且所述物体的所述类型被分类为所述交通标志牌,则确定所述物体不是所述投影图像。在任选地包括所述第一至第三示例中的一者或多者的所述方法的第四示例中,所述方法还包括:用所述图像传感器捕获所述车辆的所述环境的第二图像;用所述第二神经网络估计所述第二图像的深度;用第三神经网络估计所述图像与所述第二图像之间的相对相机姿势;基于所述相对相机姿势来将所述图像的所述深度和所述第二图像的所述深度变换为同一个三维结构;确定所述图像的所述变换深度与所述第二图像的所述变换深度之间的深度不一致性;以及基于所述深度不一致性来更新所述第二神经网络。在任选地包括所述第一至第四示例中的一者或多者的所述方法的第五示例中,所述方法还包括针对经由所述图像传感器获取的后续图像用所述更新的第二神经网络确定所述后续图像中的物体是否是投影图像。
本公开还提供一种用于车辆的方法,所述方法包括:经由图像传感器捕获所述车辆的环境的图像;用第一神经网络检测所述图像中的物体;用第二神经网络估计所述图像中的所述物体的深度;基于所述物体的所述估计深度来确定所述物体是否是所述物体的投影图像;如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作;以及如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。在所述方法的第一示例中,所述方法还包括用所述第一神经网络将所述物体分类为交通标志牌,并且如果所述估计深度是零,则鉴认所述物体作为所述交通标志牌的有效性。在任选地包括所述第一示例的所述方法的第二示例中,所述方法还包括执行对所述第二神经网络的无监督训练以基于所述图像中的所述物体的所述估计深度来几乎实时地更新所述第二神经网络。在任选地包括所述第一和第二示例中的一者或多者的所述方法的第三示例中,执行对所述第二神经网络的无监督训练以基于所述图像中的所述物体的所述估计深度来实时地更新所述第二神
经网络包括:经由所述图像传感器捕获所述车辆的所述环境的第二图像;用所述第二神经网络估计所述第二图像的深度;确定所述图像中的所述物体的深度与所述第二图像的所述深度之间的深度不一致性;以及基于所述深度不一致性来更新所述第二神经网络。在任选地包括所述第一至第三示例中的一者或多者的所述方法的第四示例中,所述方法还包括:用第三神经网络估计所述图像与所述第二图像之间的相对相机姿势;以及基于所述相对相机姿势来将所述图像的所述深度和所述第二图像的所述深度变换为同一个三维结构,其中基于所述图像中的所述物体的所述深度和所述第二图像的所述深度来确定所述深度不一致性包括确定所述图像中的所述物体的所述变换深度与所述第二图像的所述变换深度之间的所述深度不一致性。
已经出于说明和描述的目的呈现对实施方案的描述。可鉴于以上描述来执行对实施方案的合适的修改和改变,或者可通过实践方法来获取所述合适的修改和改变。例如,除非另外指出,否则可通过合适的装置和/或装置组合,例如参看图9所描述的车载计算系统900,来执行所描述方法中的一者或多者。所述方法可通过使用一个或多个逻辑装置(例如,处理器)结合一个或多个额外硬件元件(例如存储装置、存储器、硬件网络接口/天线、开关、致动器、时钟电路等)来执行所存储的指令来执行。还可按照除了在本申请中描述的次序之外的各种次序、并行地和/或同时地执行所描述的方法和相关联的动作。所描述的系统在本质上是示例性的,并且可包括额外元件和/或省略元件。本公开的主题包括所公开的各种系统和配置与其他特征、功能和/或性质的所有新颖和非明显的组合和子组合。
如本申请中所使用,以单数形式叙述并且前面有词语“一个”或“一种”的元件或步骤应理解为不排除多个所述元件或步骤,除非规定此类排除。此外,对本公开的“一个实施方案”或“一个示例”的提及不希望被解释为排除也并入有所叙述的特征的附加实施方案的存在。术语“第一”、“第二”和“第三”等仅用作标记,并且无意对它们的对象强加数值要求或特定位置次序。所附权利要求特别指出来自以上公开内容的被视为新颖且非明显的主题。
Claims (20)
1.一种用于车辆的系统,所述系统包括:
图像传感器;
处理器;以及
存储装置,所述存储装置存储能够由所述处理器执行以进行以下操作的指令:
经由所述图像传感器捕获所述车辆的环境的图像;
检测所述车辆的所述环境的所述图像中的物体;
确定所述物体是否是所述物体的投影图像;以及
如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作。
2.如权利要求1所述的系统,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。
3.如权利要求1所述的系统,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:估计所述图像中的所述物体的深度,并且如果所述估计深度非零,则确定所述物体不是所述物体的所述投影图像。
4.如权利要求3所述的系统,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:将所述图像中的所述物体分类为交通标志牌,并且如果所述估计深度是零,则确定所述物体不是所述物体的所述投影图像。
5.如权利要求5所述的系统,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:如果所述估计深度是零,则将所述交通标志牌鉴认为有效交通标志牌以确定所述物体不是所述投影图像。
6.如权利要求3所述的系统,其中所述存储装置存储深度估计神经网络,所述深度估计神经网络被配置为接受所述图像作为输入并生成所述估计深度作为输出,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:将所述图像输入到所述深度估计神经网络以估计所述图像中的所述物体的所述深度。
7.如权利要求6所述的系统,其中所述存储装置存储相对相机姿势神经网络,所述相对相机姿势神经网络被训练来接受来自所述图像传感器的两个连续图像并输出所述两个连续图像之间的相对相机姿势,所述两个连续图像包括所述图像和第二图像。
8.如权利要求7所述的系统,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:
用所述深度估计神经网络估计所述第二图像的第二深度;
用所述相对相机姿势神经网络估计所述两个连续图像之间的所述相对相机姿势;
基于所述相对相机姿势将所述深度变换为扭曲深度;
基于所述相对相机姿势将所述第二深度内插到内插深度;以及
基于所述扭曲深度与所述内插深度之间的深度不一致性来更新所述深度估计神经网络。
9.如权利要求1所述的系统,其中所述存储装置还存储能够由所述处理器执行以进行以下操作的指令:经由用户接口向所述车辆的操作者输出通知,指示如果所述物体是所述投影图像则所述物体是投影物体。
10.一种用于车辆的方法,所述方法包括:
经由图像传感器捕获所述车辆的环境的图像;
用第一神经网络检测所述图像中的物体;
用第二神经网络确定所述物体是否是所述物体的投影图像;
如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作;以及
如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。
11.如权利要求10所述的方法,其中确定所述物体是否是所述物体的所述投影图像包括:
用所述第二神经网络估计所述图像中的所述物体的深度;以及
如果所述深度非零,则确定所述物体不是所述投影图像。
12.如权利要求11所述的方法,所述方法还包括用所述第一神经网络对所述物体的类型分类,其中确定所述物体是否是所述物体的所述投影图像还包括如果所述深度是零并且所述物体的所述类型不被分类为交通标志牌,则确定所述物体是所述投影图像。
13.如权利要求12所述的方法,其中确定所述物体是否是所述物体的所述投影图像还包括如果所述深度是零并且所述物体的所述类型被分类为所述交通标志牌,则确定所述物体不是所述投影图像。
14.如权利要求11所述的方法,所述方法还包括:
用所述图像传感器捕获所述车辆的所述环境的第二图像;
用所述第二神经网络估计所述第二图像的深度;
用第三神经网络估计所述图像与所述第二图像之间的相对相机姿势;
基于所述相对相机姿势来将所述图像的所述深度和所述第二图像的所述深度变换为同一个三维结构;
确定所述图像的所述变换深度与所述第二图像的所述变换深度之间的深度不一致性;以及
基于所述深度不一致性来更新所述第二神经网络。
15.如权利要求14所述的方法,所述方法还包括针对经由所述图像传感器获取的后续图像用所述更新的第二神经网络确定所述后续图像中的物体是否是投影图像。
16.一种用于车辆的方法,所述方法包括:
经由图像传感器捕获所述车辆的环境的图像;
用第一神经网络检测所述图像中的物体;
用第二神经网络估计所述图像中的所述物体的深度;
基于所述物体的所述估计深度来确定所述物体是否是所述物体的投影图像;
如果所述物体不是所述投影图像,则选择性地控制所述车辆的一个或多个车辆系统执行一个或多个动作;以及
如果所述物体是所述投影图像,则不选择性地控制所述车辆的所述一个或多个车辆系统执行所述一个或多个动作。
17.如权利要求16所述的方法,所述方法还包括用所述第一神经网络将所述物体分类为交通标志牌,并且如果所述估计深度是零,则鉴认所述物体作为所述交通标志牌的有效性。
18.如权利要求16所述的方法,所述方法还包括执行对所述第二神经网络的无监督训练以基于所述图像中的所述物体的所述估计深度来几乎实时地更新所述第二神经网络。
19.如权利要求18所述的方法,其中执行对所述第二神经网络的无监督训练以基于所述图像中的所述物体的所述估计深度来实时地更新所述第二神经网络包括:
经由所述图像传感器捕获所述车辆的所述环境的第二图像;
用所述第二神经网络估计所述第二图像的深度;
确定所述图像中的所述物体的深度与所述第二图像的所述深度之间的深度不一致性;以及
基于所述深度不一致性来更新所述第二神经网络。
20.如权利要求19所述的方法,所述方法还包括:
用第三神经网络估计所述图像与所述第二图像之间的相对相机姿势;以及
基于所述相对相机姿势来将所述图像的所述深度和所述第二图像的所述深度变换为同一个三维结构,
其中基于所述图像中的所述物体的所述深度和所述第二图像的所述深度来确定所述深度不一致性包括确定所述图像中的所述物体的所述变换深度与所述第二图像的所述变换深度之间的所述深度不一致性。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2020/040561 WO2022005478A1 (en) | 2020-07-01 | 2020-07-01 | Systems and methods for detecting projection attacks on object identification systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115943440A true CN115943440A (zh) | 2023-04-07 |
Family
ID=71787187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080102440.1A Pending CN115943440A (zh) | 2020-07-01 | 2020-07-01 | 用于检测对物体识别系统的投影攻击的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230343108A1 (zh) |
EP (1) | EP4176373A1 (zh) |
CN (1) | CN115943440A (zh) |
WO (1) | WO2022005478A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11961310B2 (en) * | 2019-04-24 | 2024-04-16 | Harman International Industries, Incorporated | System and cryptographic hardening method for traffic signal verification |
EP3971821A1 (en) * | 2020-09-22 | 2022-03-23 | Toyota Jidosha Kabushiki Kaisha | Image completion using self-attention and uncertainty |
US20230119634A1 (en) * | 2021-10-20 | 2023-04-20 | Waymo Llc | Identification of real and image sign detections in driving applications |
-
2020
- 2020-07-01 EP EP20746493.4A patent/EP4176373A1/en active Pending
- 2020-07-01 CN CN202080102440.1A patent/CN115943440A/zh active Pending
- 2020-07-01 US US18/002,354 patent/US20230343108A1/en active Pending
- 2020-07-01 WO PCT/US2020/040561 patent/WO2022005478A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
US20230343108A1 (en) | 2023-10-26 |
EP4176373A1 (en) | 2023-05-10 |
WO2022005478A1 (en) | 2022-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11592570B2 (en) | Automated labeling system for autonomous driving vehicle lidar data | |
EP3418947A1 (en) | Computer implemented detecting method, computer implemented learning method, detecting apparatus, learning apparatus, detecting system, and recording medium | |
US20230343108A1 (en) | Systems and methods for detecting projection attacks on object identification systems | |
CN107450529A (zh) | 用于自动驾驶车辆的改进的物体检测 | |
WO2016027270A1 (en) | Recognition and prediction of lane constraints and construction areas in navigation | |
JP6906052B2 (ja) | 車両の方向転換時のバーチャネルカメラの向きを調整するための方法およびシステム | |
KR20210115026A (ko) | 차량 인텔리전트 운전 제어 방법 및 장치, 전자 기기 및 기억 매체 | |
CN112464229B (zh) | 检测针对自动驾驶系统的欺骗攻击的方法和装置 | |
WO2019073920A1 (ja) | 情報処理装置、移動装置、および方法、並びにプログラム | |
CN112543876B (zh) | 用于自动驾驶车辆中的传感器同步性数据分析的系统 | |
US11961310B2 (en) | System and cryptographic hardening method for traffic signal verification | |
WO2020116206A1 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
US11403494B2 (en) | Obstacle recognition assistance device, obstacle recognition assistance method, and storage medium | |
CN106314424A (zh) | 基于汽车的超车辅助方法、装置及汽车 | |
WO2021241189A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US20200047751A1 (en) | Cooperative vehicle safety system and method | |
KR20200076989A (ko) | 라이다를 이용한 어라운드 뷰 모니터링 장치 및 방법 | |
US20230267834A1 (en) | System and method for detecting traffic pole attacks for vehicles | |
US20230251846A1 (en) | Information processing apparatus, information processing method, information processing system, and program | |
US20220092313A1 (en) | Method for deep neural network functional module deduplication | |
WO2023021755A1 (ja) | 情報処理装置、情報処理システム、モデル及びモデルの生成方法 | |
WO2023090001A1 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
US20230410486A1 (en) | Information processing apparatus, information processing method, and program | |
WO2022014327A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2022098397A (ja) | 情報処理装置、および情報処理方法、並びにプログラム |
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 |