CN114966647A - 用于三维对象检测和定位的方法和系统 - Google Patents

用于三维对象检测和定位的方法和系统 Download PDF

Info

Publication number
CN114966647A
CN114966647A CN202210130322.2A CN202210130322A CN114966647A CN 114966647 A CN114966647 A CN 114966647A CN 202210130322 A CN202210130322 A CN 202210130322A CN 114966647 A CN114966647 A CN 114966647A
Authority
CN
China
Prior art keywords
vehicle
neural network
distance
radar
image
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
Application number
CN202210130322.2A
Other languages
English (en)
Inventor
X.陈
H.赵
R.余
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Waymo LLC
Original Assignee
Waymo LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Waymo LLC filed Critical Waymo LLC
Publication of CN114966647A publication Critical patent/CN114966647A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • G01S13/06Systems determining position data of a target
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/66Radar-tracking systems; Analogous systems
    • G01S13/72Radar-tracking systems; Analogous systems for two-dimensional tracking, e.g. combination of angle and range tracking, track-while-scan radar
    • G01S13/723Radar-tracking systems; Analogous systems for two-dimensional tracking, e.g. combination of angle and range tracking, track-while-scan radar by using numerical data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • G01S13/06Systems determining position data of a target
    • G01S13/08Systems for measuring distance only
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/867Combination of radar systems with cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/89Radar or analogous systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/02Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00
    • G01S7/41Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • G01S7/417Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S13/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section involving the use of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2554/00Input parameters relating to objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2754/00Output or target parameters relating to objects
    • B60W2754/10Spatial relation or speed relative to objects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • G01S13/865Combination of radar systems with lidar systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9327Sensor installation details
    • G01S2013/93271Sensor installation details in the front of the vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20132Image cropping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Traffic Control Systems (AREA)

Abstract

示例实施例涉及用于三维(3D)对象检测和定位的技术。计算系统可以使雷达单元发射雷达信号并接收相对于车辆环境的雷达反射。基于雷达反射,计算系统可以确定附近对象的走向和距离。计算系统还可以从车辆相机接收描绘包括对象的环境的部分的图像,并移除图像的外围区域以基于对象的走向和距离生成聚焦在对象上的图像块。图像块以及对象的走向和距离可以作为输入被提供到神经网络中,该神经网络提供对应于对象的输出参数,该输出参数可以用于控制车辆。

Description

用于三维对象检测和定位的方法和系统
技术领域
本发明涉及用于三维对象检测和定位的方法和系统。
背景技术
自动驾驶车辆可以被描述为能够感知周围环境并在很少或没有人为输入的情况下安全行驶的车辆。为了感测环境,车辆可以配备传感器系统,传感器系统可以包括若干种不同类型的传感器,例如图像捕获系统(例如,相机)、雷达和/或光检测和测距(LIDAR或Lidar)系统。先进的控制系统能够解释感测信息,识别合适的导航路径,以及障碍和相关标志。通过在导航期间测量环境,自动驾驶车辆能够执行各种服务,例如客运和货运。
发明内容
示例实施例描述了用于三维(3D)对象检测和定位的技术。辅助自动驾驶或半自动驾驶车辆导航的计算系统可以执行这里的3D对象检测和定位技术,以利用车辆相机和雷达来识别和定位周围环境中的对象。通过执行3D对象检测和定位技术,计算设备可以使车辆能够理解并安全地导航周围环境。
在一个方面,提供了示例方法。该方法包括由计算系统使雷达单元将雷达信号发射到车辆环境中,并在计算系统处接收表示雷达信号的反射的雷达反射。该方法还包括基于雷达反射确定位于环境中的对象的走向和距离。该距离表示对象和车辆之间的距离。该方法还包括在计算系统处从车辆相机接收描绘包括对象的环境的部分的图像,并移除图像的外围区域以基于对象的走向和距离生成聚焦在对象上的图像块。该方法还包括将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数,并基于对应于对象的输出参数控制车辆。
在另一方面,提供了示例系统。该系统包括车辆、耦合到车辆的雷达单元、车辆相机和计算设备。计算设备被配置为使雷达单元将雷达信号发射到车辆的环境中,并接收表示雷达信号的反射的雷达反射。基于雷达反射,计算设备被配置为确定位于环境中的对象的走向和距离。该距离表示对象和车辆之间的距离。计算设备还被配置为从车辆相机接收描绘包括对象的环境的部分的图像,并移除图像的外围区域以基于对象的走向和距离生成聚焦在对象上的图像块。计算设备还被配置为将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数。计算设备还被配置为基于对应于对象的输出参数来控制车辆。
在又一示例中,提供了一种示例性非暂时性计算机可读介质,其中存储有可由计算系统执行以使计算系统执行功能的程序指令。该功能包括使雷达单元将雷达信号发射到车辆的环境中,接收表示雷达信号的反射的雷达反射,以及基于雷达反射确定位于环境中的对象的走向和距离。该距离表示对象和车辆之间的距离。该功能还包括从车辆相机接收描绘包括对象的环境的部分的图像,并移除图像的外围区域以基于对象的走向和距离生成聚焦在对象上的图像块。该功能还包括将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数,并基于对应于对象的输出参数为车辆提供控制指令。
前述概述仅是说明性的,并不旨在以任何方式进行限制。除了上述说明性的方面、实施例和特征,通过参考附图和以下详细描述,进一步的方面、实施例和特征将变得更加清晰。
附图说明
图1是示出根据一个或多个示例实施例的车辆的功能框图。
图2A示出了根据一个或多个示例实施例的车辆的侧视图。
图2B示出了根据一个或多个示例实施例的车辆的俯视图。
图2C示出了根据一个或多个示例实施例的车辆的前视图。
图2D示出了根据一个或多个示例实施例的车辆的后视图。
图2E示出了根据一个或多个示例实施例的车辆的附加视图。
图3是根据一个或多个示例实施例的计算系统的简化框图。
图4A描绘了根据一个或多个示例实施例的人工神经网络(ANN)架构。
图4B描绘了根据一个或多个示例实施例的训练ANN。
图5A描绘了根据一个或多个示例实施例的卷积神经网络(CNN)架构。
图5B描绘了根据一个或多个示例实施例的卷积。
图6描绘了根据一个或多个示例实施例的用于3D对象检测和定位的系统。
图7描绘了根据一个或多个示例实施例的执行3D对象检测和定位的车辆。
图8是根据示例实施例的用于执行3D对象检测和定位的方法的流程图。
图9是根据示例实施方式的计算机程序的示意图。
具体实施方式
在下面的详细描述中,参考了形成本说明书一部分的附图。在附图中,相似的符号通常标识相似的组件,除非上下文中另有规定。在详细的描述、附图以及权利要求中描述的说明性实施例并不意味着限制。在不脱离这里呈现的主题的范围的情况下,可以利用其他实施例,并且可以进行其他改变。将容易理解的是,如这里一般描述的以及在附图中示出的,本公开的各方面可以以各种不同的配置来布置、替换、组合、分离和设计,所有这些都在这里被明确地考虑到。
车辆越来越多地采用传感器系统,该系统包括传感器和计算资源的组合,可用于理解周围环境并自动或半自动地导航通过周围环境。特别地,车辆传感器系统可以使用传感器和处理设备的组合来测量和理解环境,以确定和执行控制策略。传感器系统可以使车辆能够检测到安全驾驶所需的对象和其他信息。在操作过程中,可以处理和分析传感器数据,以开发和导航目的地之间的路径,并产生用于车辆系统执行的控制指令,例如转向、加速和制动。
车辆传感器系统通常包括相机(图像传感器),可以捕获图像和视频,使车辆能够像人类驾驶员用眼睛一样看到和解释道路上的对象。在一些情况下,车辆可以包括多个战略性地定位在车辆上的相机,以使相机系统能够实现车辆周围环境的360度视角,这可以提供车辆周围交通状况的更广阔的画面。相机可以捕获并提供图像,使计算设备能够检测对象,潜在地对对象进行分类,并估计对象和车辆之间的距离。
但是,在一些实例中,由车辆相机单独捕获的图像和/或视频可能无法提供足够的信息用于准确地估计对象和车辆之间的距离。主要依靠相机进行对象检测的传感器系统可能会提供准确的维度信息,而在某些情况下会获得不准确的深度信息。
车辆传感器系统还可以包括雷达系统,能够使用一个或多个天线(辐射元件)发射雷达信号来测量周围环境。在与环境中的表面发生接触时,雷达信号可以向多个方向散射,其中一些雷达信号穿透一些表面,而其他雷达信号从表面反射,并朝着车辆雷达系统的接收天线传播回来。雷达处理系统(例如,计算设备或另一种类型的处理单元)可以处理雷达反射以生成二维(2D)和/或三维(3D)测量,这些测量表示了环境的各个方面,例如附近对象和占据雷达系统附近环境的其他表面的位置、朝向和移动。
由于雷达系统可用于测量附近对象和其他表面的距离和运动,车辆越来越多地结合车辆雷达系统在导航期间生成测量,这可以帮助车辆导航、避障以及以其他方式提高车辆的整体安全性。例如,车辆可以使用雷达来检测和识别附近车辆、自行车、行人和动物的位置、朝向和移动。雷达还可以揭示车辆周围环境中其他特征的信息,例如道路边界的定位、布置和位置、道路状况(例如,光滑或颠簸的表面)、天气状况(例如,湿滑或冰雪的道路)以及交通标志和信号的位置。
这里呈现的示例实施例涉及利用深度学习的3D对象检测和定位技术。特别地,系统可以训练和使用神经网络(或多个网络)来帮助车辆传感器系统进行对象检测和定位。经过训练的神经网络可以通过有效地组合来自不同类型传感器的数据的益处并产生输出来帮助车辆系统在车辆导航时识别、分类和定位环境中的对象,从而增加车辆对周围环境的理解。
一些示例3D对象检测和定位技术涉及使用来自车辆相机的图像和由车辆雷达系统获得的雷达数据的组合。举例来说,与车辆传感器通信的传感器计算设备或另一处理单元最初可以使雷达单元发射雷达信号,这使得能够随后接收从车辆环境中的表面反射的雷达反射。计算设备可以使用这些雷达反射来检测车辆附近的对象,并且还确定关于这些对象的信息,例如对象的走向和距离。该距离(range)可以指定对象和车辆之间的距离(distance),其可以随着车辆导航而改变。走向(heading)可以指示对象相对于车辆的朝向。
除了这些雷达测量之外,计算设备还可以从一个或多个车辆相机获得图像。战略性地定位在车辆上的相机可以捕获图像,这些图像描绘了周围环境中与通过雷达测量的部分重叠的部分。在一些情况下,计算设备可以从相机接收图像,所述图像捕捉了由在雷达测量中检测到的对象、人或另一种类型的表面所占据的环境部分。对于描绘包含检测到的对象的周围环境的区域的图像,计算设备可以使用雷达测量来裁剪(crop)图像以聚焦(focus)在检测到的对象上。例如,计算设备可以使用基于雷达反射为特定对象确定的走向和距离来裁剪图像以隔离(isolate)特定对象。通过裁剪图像,计算设备可以创建聚焦在对象上并且总共包含较少像素的图像块(image patch),这可以减少从相对于完整图像的图像块中提取信息所需的处理时间和计算资源。
计算设备可以将描绘由雷达测量所指示的某个感兴趣表面(例如,对象)以及相同感兴趣表面的走向和距离的图像块输入到神经网络中,神经网络可以被训练成使用这些输入来产生输出参数,输出参数以能够辅助自动驾驶操作的方式描述了感兴趣表面。例如,输出参数可以包括对象的分类,其可以包括为对象分配一个或多个标签,该标签可以被利用来确定考虑(factor)这些标签的车辆的控制技术。示例分类可以指示表面对应于道路元素或边界、标志、另一车辆、骑车人、半卡式拖车和/或行人。在一些实例中,分类可以指示表面是另一种类型的结构。这样,识别和分类可以帮助车辆控制系统确定相对于该对象以及环境中的其他对象如何进行。由神经网络产生的输出参数还可以指示对象的3D参数,例如,从车辆视角的对象的中心和对象的维度。3D参数可用于相对于车辆精确地定位对象,包括指示对象和车辆之间的距离。
当车辆导航时,神经网络可以使用图像块和相应的雷达测量来识别和定位各种表面和对象。通过使用在车辆导航时接收的新图像和雷达测量,迭代地执行该技术,计算设备可以获得表示环境的3D信息,并且帮助开发车辆的导航策略。计算设备或另一控制系统可以使用3D信息来避免潜在的障碍、检测交通信号、道路边界,以及执行能够使车辆在目的地之间安全导航的其他动作。
在一些实施例中,可以利用来自其他类型传感器(例如,激光雷达)的传感器数据来执行示例技术。在一些实例中,雷达可以提供稀少的(sparse)数据,用来比这些传感器更有效地绘制环境地图。具体而言,雷达数据可以提供对于深度和走向估计有用的信息,该信息可以补充从来自相机的一个或多个图像(例如,视频)导出的尺寸和形状信息。因此,系统可以被配置为在雷达不可用时使用其他传感器和/或使用其他传感器来补充雷达。
现在参考附图,图1是示出车辆100的功能框图,车辆100表示能够完全或部分以自动驾驶模式运行的车辆。更具体地,车辆100可以通过从计算系统(例如,车辆控制系统)接收控制指令而在无人交互的自动驾驶模式下操作。作为在自动驾驶模式下操作的一部分,车辆100可以使用传感器(例如,传感器系统104)来检测并可能地识别周围环境的对象,以实现安全导航。在一些示例实施例中,车辆100还可以包括使驾驶员(或远程操作员)能够控制车辆100的操作的子系统。
如图1所示,车辆100包括各种子系统,例如推进系统102、传感器系统104、控制系统106、一个或多个外围设备108、电源110、计算机系统112、数据存储装置114和用户界面116。车辆100的子系统和组件可以以各种方式互连(例如,有线或安全无线连接)。在其他示例中,车辆100可以包括更多或更少的子系统。此外,这里描述的车辆100的功能可以被分成附加的功能或物理组件,或者在实现中被组合成更少的功能或物理组件。
推进系统102可以包括一个或多个可操作的为车辆100提供动力运动的组件,并且可以包括引擎/马达118、能量源119、变速器120和车轮/轮胎121以及其他可能的组件。例如,引擎/马达118可以被配置为将能量源119转换成机械能,并且可以对应于内燃机、一个或多个电动马达、蒸汽机或斯特林引擎以及其他可能的选项中的一个或组合。例如,在一些实施方式中,推进系统102可以包括多种类型的引擎和/或马达,例如汽油引擎和电动马达。
能量源119代表可以全部或部分地为车辆100的一个或多个系统(例如,引擎/马达118)提供动力的能源。例如,能量源119可以对应于汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和/或其他电力源。在一些实施方式中,能量源119可以包括燃料箱、电池、电容器和/或飞轮的组合。
变速器120可以将机械动力从引擎/马达118传递到车轮/轮胎121和/或车辆100的其他可能的系统。这样,变速器120可以包括变速箱、离合器、差速器和驱动轴,以及其他可能的组件。驱动轴可以包括连接到一个或多个车轮/轮胎121的轴。
车辆100的车轮/轮胎121可以具有示例实施方式中的各种配置。例如,除了其他可能的配置之外,车辆100可以以独轮车、自行车/摩托车、三轮车或汽车/卡车四轮的形式存在。这样,车轮/轮胎121可以以各种方式连接到车辆100,并且可以以不同的材料存在,例如金属和橡胶。
传感器系统104可以包括各种类型的传感器,例如全球定位系统(GPS)122、惯性测量单元(IMU)124、一个或多个雷达单元126、激光测距仪/LIDAR单元128、相机130、转向传感器123和油门/刹车传感器125以及其他可能的传感器。在一些实施方式中,传感器系统104还可以包括被配置为监测车辆100的内部系统的传感器(例如,O2监测器、燃料表、引擎油温、制动器状况)。
GPS 122可以包括收发器,该收发器可操作的提供关于车辆100相对于地球的位置的信息。IMU 124可以具有使用一个或多个加速度计和/或陀螺仪的配置,并且可以基于惯性加速度感测车辆100的位置和朝向变化。例如,当车辆100静止或运动时,IMU 124可以检测车辆100的俯仰和偏转。
雷达单元126可以表示一个或多个系统,其被配置为使用无线电信号(例如,雷达信号)来感测车辆100的本地环境内的对象,包括对象的速度和走向。这样,雷达单元126可以包括配备有一个或多个天线的一个或多个雷达单元,该一个或多个天线被配置为如上所述发射和接收雷达信号。在一些实施方式中,雷达单元126可以对应于可安装的雷达系统,该雷达系统被配置为获得车辆100的周围环境的测量。例如,雷达单元126可以包括一个或多个雷达单元,其被配置为耦合到车辆的车身底部。
激光测距仪/LIDAR 128可以包括一个或多个激光源、激光扫描仪和一个或多个检测器以及其他系统组件,并且可以以相干模式(例如,使用外差检测)或非相干检测模式操作。相机130可以包括被配置为捕捉车辆100的环境的图像的一个或多个设备(例如,静态相机或视频相机)。
转向传感器123可以感测车辆100的转向角度,这可以包括测量方向盘的角度或者测量代表方向盘角度的电信号。在一些实施方式中,转向传感器123可以测量车辆100的车轮的角度,例如检测车轮相对于车辆100的前向轴线的角度。转向传感器123还可以被配置为测量方向盘角度、代表方向盘角度的电信号以及车辆100的车轮角度的组合(或子集)。
油门(throttle)/刹车传感器125可以检测车辆100的油门位置或刹车位置。例如,油门/刹车传感器125可以测量油门(gas)踏板(油门)和刹车踏板的角度,或者可以测量代表例如油门踏板(油门)的角度和/或刹车踏板的角度的电信号。油门/制动传感器125还可以测量车辆100的油门体(throttle body)的角度,其可以包括向引擎/马达118(例如,蝶形阀或化油器)提供能量源119的调节的物理机构的一部分。此外,油门/制动传感器125可以测量车辆100的转子(rotor)上的一个或多个刹车片(brake pad)的压力或者油门踏板(油门)和制动踏板的角度、表示油门踏板(油门)和制动踏板的角度的电信号、油门体的角度以及至少一个刹车片施加到车辆100的转子上的压力的组合(或子集)。在其他实施例中,油门/制动传感器125可以被配置为测量施加到车辆踏板上的压力,例如油门或制动踏板。
控制系统106可以包括被配置为辅助导航车辆100的组件,例如转向单元132、油门134、制动单元136、传感器融合算法138、计算机视觉系统140、导航/路径系统142和避障系统144。更具体地,转向单元132可操作以调节车辆100的走向,油门134可控制引擎/马达118的运行速度以控制车辆100的加速度。制动单元136可以使车辆100减速,这可以包括使用摩擦来使车轮/轮胎121减速。在一些实施方式中,制动单元136可以将车轮/轮胎121的动能转换成电流,以供车辆100的一个或多个系统随后使用。
传感器融合算法138可以包括卡尔曼滤波器、贝叶斯网络或可以处理来自传感器系统104的数据的其他算法。在一些实施方式中,传感器融合算法138可以基于输入的传感器数据提供评估,例如对单个对象和/或特征的评估、对特定情况的评估和/或对给定情况下潜在影响的评估。
计算机视觉系统140可以包括可操作来处理和分析图像的硬件和软件,以努力确定对象、环境对象(例如,停车灯、道路边界等),以及障碍。这样,计算机视觉系统140可以使用对象识别、运动恢复结构(Structure From Motion,SFM)、视频跟踪和计算机视觉中使用的其他算法,例如,来识别对象、绘制环境地图、跟踪对象、估计对象的速度等。
导航/路径系统142可以确定车辆100的行驶路径,这可以包括在操作期间动态地调整导航。这样,导航/路径系统142可以使用来自传感器融合算法138、GPS 122和地图以及其他来源的数据来导航车辆100。避障系统144可以基于传感器数据评估潜在的障碍,并使车辆100的系统避开或以其他方式通过潜在的障碍。
如图1所示,车辆100还可以包括外围设备108,例如无线通信系统146、触摸屏148、麦克风150和/或扬声器152。外围设备108可以为用户提供控件或其他元素来与用户界面116交互。例如,触摸屏148可以向车辆100的用户提供信息。用户界面116也可以通过触摸屏148接受来自用户的输入。外围设备108还可以使车辆100能够与诸如其他车辆设备的设备通信。
无线通信系统146可以直接或经由通信网络与一个或多个设备安全地无线通信。例如,无线通信系统146可以使用3G蜂窝通信,例如CDMA、EVDO、GSM/GPRS,或者4G蜂窝通信,例如WiMAX或LTE。可替换地,无线通信系统146可以使用WiFi或其他可能的连接与无线局域网(WLAN)通信。例如,无线通信系统146也可以使用红外链路、Bluetooth或ZigBee直接与设备通信。在本公开的上下文中,诸如各种车辆通信系统的其他无线协议也是可能的。例如,无线通信系统146可以包括一个或多个专用短程通信(DSRC)设备,其可以包括车辆和/或路边站之间的公共和/或私有数据通信。
车辆100可以包括用于给组件供电的电源110。在一些实施方式中,电源110可以包括可充电锂离子电池或铅酸电池。例如,电源110可以包括一个或多个被配置为提供电能的电池。车辆100也可以使用其他类型的电源。在示例实施方式中,电源110和能量源119可以集成到单个能源中。
车辆100还可以包括计算机系统112来执行操作,例如其中描述的操作。这样,计算机系统112可以包括处理器113(其可以包括至少一个微处理器或至少一个处理器),处理器113可操作来执行存储在诸如数据存储装置114的非暂时性计算机可读介质中的指令115。在一些实施方式中,计算机系统112可以代表多个计算设备,这些计算设备可以用于以分布式方式控制车辆100的各个组件或子系统。
在一些实施方式中,数据存储装置114可以包含可由处理器113执行的指令115(例如,程序逻辑),以执行车辆100的各种功能,包括上面结合图1描述的那些功能。数据存储装置114也可以包含附加指令,包括向推进系统102、传感器系统104、控制系统106和外围设备108中的一个或多个传输数据、从其接收数据、与之交互和/或控制它们的指令。
除了指令115之外,数据存储装置114可以存储数据,例如道路地图、路径信息以及其他信息。在车辆100以自动、半自动和/或手动模式运行期间,车辆100和计算机系统112可以使用这样的信息。
车辆100可以包括用户界面116,用于向车辆100的用户提供信息或者从车辆100的用户接收输入。用户界面116可以控制或使得能够控制可以在触摸屏148上显示的内容和/或交互式图像的布局。此外,用户接口116可以包括一组外围设备108内的一个或多个输入/输出设备,例如无线通信系统146、触摸屏148、麦克风150和扬声器152。
计算机系统112可以基于从各种子系统(例如,推进系统102、传感器系统104和控制系统106)以及从用户界面116接收的输入来控制车辆100的功能。例如,计算机系统112可以利用来自传感器系统104的输入来估计由推进系统102和控制系统106产生的输出。根据实施例,计算机系统112可以可操作的监控车辆100及其子系统的许多方面。在一些实施例中,计算机系统112可以基于从传感器系统104接收的信号禁用车辆100的一些或所有功能。
车辆100的组件可以被配置为以相互连接的方式与它们各自系统内部或外部的其他组件一起工作。例如,在示例实施例中,相机130可以捕获多个图像,这些图像可以表示关于以自动驾驶模式操作的车辆100的环境状态的信息。环境状态可以包括车辆行驶的道路的参数。例如,计算机视觉系统140能够基于道路的多个图像来识别斜坡(坡度)或其他特征。另外,GPS 122和计算机视觉系统140识别的特征的组合可以与存储在数据存储装置114中的地图数据一起使用,以确定特定的道路参数。此外,雷达单元126还可以提供关于车辆周围环境的信息。
换句话说,各种传感器(可以被称为输入指示和输出指示传感器)和计算机系统112的组合可以相互作用,以提供用于控制车辆的输入的指示或车辆周围环境的指示。
在一些实施例中,计算机系统112可以基于由除无线电系统之外的系统提供的数据来确定各种对象。例如,车辆100可以具有被配置为感测车辆视场中的对象的激光器或其他光学传感器。计算机系统112可以使用来自各种传感器的输出来确定关于车辆视场中的对象的信息,并且可以确定到各种对象的距离和方向信息。计算机系统112还可以基于来自各种传感器的输出来确定对象是期望的还是不期望的。此外,车辆100还可以包括远程信息处理(telematics)控制单元(TCU)160。TCU 160可以通过一种或多种无线技术实现车辆连接和内部乘客设备连接。
虽然图1示出了车辆100的各种组件,即无线通信系统146、计算机系统112、数据存储装置114和用户接口116,它们被集成到车辆100中,但是这些组件中的一个或多个可以与车辆100分开安装或关联。例如,数据存储装置114可以部分地或全部地与车辆100分开存在。因此,车辆100可以以设备元件的形式提供,这些设备元件可以单独定位或在一起。构成车辆100的设备元件可以以有线和/或无线方式通信地耦合在一起。
图2A、图2B、图2C、图2D和图2E示出了车辆100的物理配置的不同视图。包括各种视图以描绘车辆100上的示例传感器位置202、204、206、208、210。在其他示例中,传感器可以具有在车辆100上或内的不同位置。虽然车辆100在图2A-2E中被描绘为箱型车,但是车辆100在示例内可以具有其他配置,例如卡车、轿车、半挂卡车、摩托车、公共汽车、摆渡车、高尔夫球车、越野车、机器人设备或农用车,以及其他可能的示例。
如上面所讨论的,车辆100可以包括耦合在各种外部定位(诸如传感器位置202-210)处的传感器。车辆传感器包括一种或多种类型的传感器,每个传感器被配置为从周围环境捕获信息或执行其他操作(例如,通信链路,获得整体定位信息)。例如,传感器位置202-210可以用作一个或多个相机、雷达单元、LIDAR单元、测距仪、无线电设备(例如,蓝牙和/或802.11)和声学传感器以及其他可能类型的传感器的任何组合的定位。
当在图2A-图2E中所示的示例传感器位置202-210处耦合时,可以使用各种机械紧固件,包括永久性或非永久性紧固件。例如,可以使用螺栓、螺钉、夹子、闩锁、铆钉、锚和其他类型的紧固件。在一些示例中,传感器可以使用粘合剂耦合到车辆。在另外的示例中,传感器可以被设计和构建为车辆组件的一部分(例如,车镜的一部分)。
在一些实施方式中,一个或多个传感器可以使用可操作以调整一个或多个传感器的朝向的可移动底座(mount)而被定位在传感器位置202-210处。可移动底座可以包括旋转平台,该旋转平台可以旋转传感器以从车辆100四周的多个方向获得信息。例如,位于传感器位置202的传感器可以使用使得能够在特定的角度和/或方位角范围内旋转和扫描的可移动底座。因此,车辆100可以包括使得一个或多个传感器能够安装在车辆100的车顶上的机械结构。此外,在示例中其他安装定位也是可能的。在某些情况下,耦合在这些定位处的传感器可以提供数据,远程操作员可以使用这些数据为车辆100提供协助。
图3是举例说明计算设备300的简化框图,示出了布置成根据本文的实施例操作的计算设备中可能包括的一些组件。车辆可以使用计算设备300来执行3D对象检测和定位以测量周围环境。
计算设备300可以是客户端设备(例如,由用户(例如,远程操作员)主动操作的设备)、服务器设备(例如,向客户端设备提供计算服务的设备)或某一其他类型的计算平台。在一些实施例中,计算设备300可以实现为计算机系统112,其可以位于车辆100上并且执行与车辆操作相关的处理操作。例如,计算设备300可以用于处理从传感器系统104接收的传感器数据、开发控制指令、使得实现与其他设备的无线通信、和/或执行其他操作。替选地,计算设备300可以远离车辆100定位并且经由安全无线通信进行通信。在一些示例中,计算设备300可以作为远程人类操作员可以用来与一个或多个车辆通信的远程定位设备进行操作。
在图3所示的示例实施例中,计算设备300包括处理器302、存储器304、输入/输出单元306和网络接口308,所有这些可以通过系统总线310或类似机构耦合。在一些实施例中,计算设备300可以包括其他组件和/或外围设备(例如,可拆卸存储装置、传感器等)。
处理器302可以是任何类型的计算机处理元件中的一个或多个,诸如中央处理单元(CPU)、协处理器(例如,数学、图形或加密协处理器)、数字信号处理(DSP)、网络处理器和/或执行处理器操作的集成电路或控制器的形式。在一些情况下,处理器302可以是一个或多个单核处理器。在其他情况下,处理器302可以是具有多个独立处理单元的一个或多个多核处理器。处理器302还可以包括用于临时存储正在执行的指令和相关数据的寄存器存储器,以及用于临时存储最近使用的指令和数据的高速缓存存储器。
存储器304可以是任何形式的计算机可用存储器,包括但不限于随机存取存储器(RAM)、只读存储器(ROM)和非易失性存储器。仅作为几个示例,这可以包括闪存、硬盘驱动器、固态驱动器、可重写光盘(CD)、可重写数字视频盘(DVD)和/或磁带存储。计算设备300可以包括固定存储器以及一个或多个可移除存储器单元,后者包括但不限于各种类型的安全数字(SD)卡。因此,存储器304既可以代表主存储单元,也可以代表长期存储装置。其他类型的存储器可以包括生物存储器。
存储器304可以存储程序指令和/或程序指令可以操作的数据。举例来说,存储器304可以将这些程序指令存储在非暂时性计算机可读介质上,使得指令可由处理器302执行以进行本说明书或附图中公开的任何方法、过程或操作。
如图3所示,存储器304可以包括固件314A、内核314B和/或应用314C。固件314A可以是用于引导(boot)或以其他方式启动计算设备300的一些或全部的程序代码。内核314B可以是操作系统,包括用于存储器管理、进程调度和管理、输入/输出和通信的模块。内核314B还可以包括允许操作系统与计算设备300的硬件模块(例如,存储器单元、网络接口、端口和总线)通信的设备驱动器。应用314C可以是一个或多个用户空间软件程序,诸如网页浏览器或电子邮件客户端,以及这些程序使用的任何软件库。在一些示例中,应用314C可以包括一个或多个神经网络应用和其他基于深度学习的应用。存储器304还可以存储由这些和其他程序和应用使用的数据。
输入/输出单元306可以促进用户和外围设备与计算设备300和/或其他计算系统的交互。输入/输出单元306可以包括一种或多种类型的输入设备,诸如键盘、鼠标、一个或多个触摸屏、传感器、生物传感器等。类似地,输入/输出单元306可以包括一种或多种类型的输出设备,例如屏幕、监视器、打印机、扬声器、和/或一个或多个发光二极管(LED)。附加地或替选地,计算设备300可以使用例如通用串行总线(USB)或高清多媒体接口(HDMI)端口接口与其他设备通信。在一些示例中,输入/输出单元306可以被配置为从其他设备接收数据。例如,输入/输出单元306可以从车辆传感器接收传感器数据。
如图3所示,输入/输出单元306包括GUI 312,其可以被配置为向远程操作员或另一用户提供信息。GUI 312可以是可显示的一个或多个显示界面,或用于传送信息和接收输入的另一类型的机构。在一些示例中,GUI 312的表示可以取决于车辆情况而不同。例如,计算设备300可以以特定格式(诸如,具有供远程操作员从中选择的单个可选选项的格式)提供GUI 312。
网络接口308可以采用一个或多个有线接口的形式,诸如以太网(例如,快速以太网、千兆以太网等)。网络接口308还可以支持通过一种或多种非以太网介质(诸如同轴电缆或电力线)或通过广域介质(诸如同步光网络(SONET)或数字用户线(DSL)技术)的通信。网络接口308可以另外采用一个或多个无线接口的形式,诸如IEEE 802.11(Wifi)、
Figure BDA0003502341980000131
全球定位系统(GPS)或广域无线接口。然而,可以在网络接口308上使用其他形式的物理层接口和其他类型的标准或专有通信协议。此外,网络接口308可以包括多个物理接口。例如,计算设备300的一些实施例可以包括以太网、
Figure BDA0003502341980000132
和Wifi接口。
在一些实施例中,可以部署计算设备300的一个或多个实例以支持集群架构。这些计算设备的精确物理定位、连接性和配置对于客户端设备可能是未知的和/或不重要的。因此,计算设备可以被称为“基于云的”设备,其可以容置在各种远程数据中心定位处。
在一些实施例中,计算设备300可以使得深度学习操作能够在本文中被执行。例如,计算设备300可以用于训练神经网络以执行本文呈现的操作。计算设备300还可以使用经训练的神经网络来执行本文呈现的操作。在一些示例中,计算设备300可以包括使得能够开发和/或执行神经网络的多个组件(例如,处理器302)。
为了进一步说明,人工神经网络(ANN)是一种计算模型,在该模型中,单独并行工作且无需中央控制的多个简单单元可以组合以解决复杂问题。ANN被表示为布置成多个层的多个节点,相邻层的节点之间具有连接。
图4A描绘了根据一个或多个示例的ANN 400。ANN 400表示前馈多层神经网络,但是类似的结构和原理用于例如卷积神经网络(CNN)、循环神经网络和递归神经网络。ANN400可以被训练以执行特定任务,诸如图像处理技术(例如,分割、语义分割、图像增强)或本文描述的3D对象检测技术。在另外的示例中,ANN 400可以学习以执行其他任务,诸如计算机视觉、风险评估等。
如图4A所示,ANN 400由四层组成:输入层404、隐藏层406、隐藏层408和输出层410。输入层404的三个节点分别接收X1、X2和X3作为初始输入值402。输出层410的两个节点分别产生Y1和Y2作为最终输出值412。因此,ANN 400是全连接网络,因为除了输入层404之外的每一层的节点接收来自前一层中的所有节点的输入。在一些示例中,初始输入值402可以对应于描绘对象的图像块以及与在雷达测量内所表示的相同的对象的走向和距离,并且最终输出值412可以表示对象的分类和3D参数。
节点对之间的实线箭头表示中间值流经的连接,并且各自与应用于相应中间值的相应权重相关联。每个节点对其输入值及其相关联权重(例如,介于0和1之间的值,包括端值)执行运算以产生输出值。在某些情况下,此运算可以涉及每个输入值和相关联权重的乘积的点积和。激活函数可以应用于点积和的结果以产生输出值。其他运算是可能的。
例如,如果节点在相应权重为{w1,w2,…,wn}的n个连接上接收输入值{x1,x2,…,xn},则点积和d可以被确定为:
Figure BDA0003502341980000151
其中,b是特定于节点或特定于层的偏差。
值得注意的是,ANN 400的全连接性质可以用于通过对一个或多个权重赋予值0来有效地表示部分连接的ANN。类似地,也可以将偏差设置为0以消除b项。
激活函数(诸如逻辑函数)可以用于将d映射到输出值y,该输出值y介于0和1之间,包括端值:
Figure BDA0003502341980000152
替代地,可以使用除逻辑函数之外的函数,诸如sigmoid(s型)或tanh(双曲正切)函数。
然后,可以在节点的输出连接中的每一个上使用y,并将通过其各自的权重进行修改。在ANN 400中,输入值和权重被应用于每一层的节点,从左到右直到产生最终输出值412。如果ANN 400已被完全训练,则最终输出值412是对已训练ANN 400来解决的问题的建议解答。为了获得有意义、有用且相当准确的解答,ANN 400要求至少一定程度的训练。
训练ANN 400可以涉及提供某种形式的监督训练数据,即输入值和期望的或基准真实的(ground truth)输出值的集合。例如,监督训练可以使得ANN执行非语义任务,这可以涉及提供训练数据集以确定期望的表示。对于ANN400,该训练数据可以包括与输出值配对的输入值的m个集合。更正式地说,训练数据可以被表示为:
Figure BDA0003502341980000153
其中i=1…m,并且
Figure BDA0003502341980000154
Figure BDA0003502341980000155
是X1,i、X2,i和X3,i的输入值的期望的输出值。
训练过程涉及将来自这样的集合的输入值应用于ANN 400并产生相关联的输出值。损失函数可用于评估产生的输出值与基准真实输出值之间的误差。在某些实例中,此损失函数可能是差值之和、均方误差或某一其他度量。在某些情况下,为所有m个集合确定误差值,并且误差函数涉及计算这些值的聚合(aggregate)(例如,平均值)。
一旦确定了误差,连接上的权重被更新以尝试减少误差。简单来说,这个更新过程应奖励“好”权重并惩罚“坏”权重。因此,更新应当按照导致训练数据的未来迭代的更低误差的方式通过ANN 400分配对误差的“责任(blame)”。例如,更新过程可以涉及修改ANN 400的至少一个权重,使得ANN 400对训练数据的后续应用生成与对应于训练数据的基准真实掩码更紧密匹配的新输出。
训练过程继续将训练数据应用于ANN 400,直到权重收敛。当误差小于阈值或在连续训练迭代之间误差的变化足够小时,发生收敛。此时,ANN 400被称为“经训练的”并且可以应用于新的输入值集合,以预测未知的输出值。当被训练以执行图像处理技术时,ANN400可以产生与为输入图像创建的基准真实值(ground truths)(即,期望的结果)非常相似的输入图像的输出。在一些实施例中,当被训练以执行3D对象检测和定位时,ANN 400可以生成指示环境中各个对象和表面的分类和3D参数的输出。
ANN的许多训练技术利用某种形式的反向传播。在反向传播期间,输入信号通过网络前向传播到输出,然后关于目标变量计算网络误差并朝输入反向传播该网络误差。具体地,反向传播通过ANN 400从右到左一次一层地分配误差。因此,首先隐藏层408和输出层410之间的连接的权重被更新,其次隐藏层406和隐藏层408之间的连接的权重被更新,以此类推。这种更新基于激活函数的导数。
为了进一步解释误差确定和反向传播,看看在运行的过程的示例是有帮助的。然而,除了最简单的ANN之外,反向传播的表示会变得非常复杂。因此,图4B描绘了非常简单的ANN 430,以便提供反向传播的说明性示例。
权重 节点 权重 节点
w<sub>1</sub> I1,H1 w<sub>5</sub> H1,O1
w<sub>2</sub> I2,H1 w<sub>6</sub> H2,O1
w<sub>3</sub> I1,H2 w<sub>7</sub> H1,O2
w<sub>4</sub> I2,H2 w<sub>8</sub> H2,O2
表1
ANN 430由输入层434、隐藏层436和输出层438这三层组成,每层有两个节点。初始输入值432被提供给输入层434,并且输出层438产生最终输出值440。权重已经分配给每个连接并且在某些示例中偏差(例如,图4B中所示的b1、b2)也可以应用于隐藏层436中每个节点的净输入。为清楚起见,表1将权重映射到具有应用这些权重的连接的节点对。作为示例,w2应用于节点I2和H1之间的连接,w7应用于节点H1和O2之间的连接,依此类推。
训练ANN 430的目标是在一定数量的前馈和反向传播迭代上更新权重,直到最终输出值440足够接近指定的期望输出。注意,使用训练数据的单个集合有效地训练仅针对该集合的ANN 430。如果使用训练数据的多个集合,ANN 430也将根据这些集合进行训练。
为了启动前馈传递(pass),计算到隐藏层436中的每个节点的净输入。从净输入中,可以通过应用激活函数找出这些节点的输出。对于节点H1,净输入netH1为:
netH1=w1X1+w2X2+b1 (4)
对这个输入应用激活函数(这里,逻辑函数)确定节点H1的输出,outH1是:
Figure BDA0003502341980000171
针对节点H2遵照相同过程,也可以确定输出outH2。前馈迭代的下一步是针对输出层438的节点执行相同的计算。例如,到节点O1的净输入,netO1为:
netO1=w5outH1+w6outH2+b2 (6)
因此,节点O1的输出outO1为:
Figure BDA0003502341980000172
针对节点O2遵照相同过程,可以确定输出outO2。此时,可以基于损失函数确定总误差Δ。例如,损失函数可以是输出层408中节点的平方误差之和。换句话说:
Figure BDA0003502341980000173
每一项中的乘法常数
Figure BDA0003502341980000174
用于简化反向传播期间的微分。由于总体结果无论如何都会按学习率进行标定(scale),因此该常数不会负面影响训练。无论如何,此时,前馈迭代完成并开始反向传播。
如上所述,反向传播的目标是使用Δ(即基于损失函数确定的总误差)来更新权重,以便它们在未来的前馈迭代中贡献更少的误差。作为示例,考虑权重w5。目标涉及确定w5的变化对Δ的影响程度。这可以被表示为偏导数
Figure BDA0003502341980000181
使用链式法则,该项可以扩展为:
Figure BDA0003502341980000182
因此,w5变化对Δ的影响等于下述各项的乘积:(i)outO1变化对Δ的影响;(ii)netO1变化对outO1的影响;以及(iii)w5变化对netO1的影响。这些乘法项中的每一个可以独立地确定。直观地说,这个过程可以认为是隔离(isolate)w5对netO1的影响、netO1对outO1的影响以及outO1对Δ的影响。
对于馈送到输出层438的其他权重,可以重复该过程。注意,没有权重被更新,直到在反向传播结束时已经确定对所有权重的更新。然后,在下一个前馈迭代之前更新所有权重。
在计算对剩余权重w1、w2、w3和w4的更新之后,继续向隐藏层436进行反向传播传递。对于馈送到输出层438的其他权重,可以重复此过程。此时,反向传播迭代结束,并且所有权重已更新。ANN 430可以继续通过后续的前馈和反向传播迭代进行训练。在某些实例中,在经过数次前馈和反向传播迭代(例如,数千次迭代)之后,可以减少误差以产生接近原始期望结果的结果。此时,Y1和Y2的值将接近目标值。如图所示,通过使用可微损失函数,与期望结果相比由ANN 430输出的预测的总误差可以被确定并用于相应地修改ANN 430的权重。
在某些情况下,如果调整系统的超参数(例如,偏差b1和b2以及学习率α),则可以用更少的迭代完成等量的训练。例如,将学习率设置为更接近特定值会导致误差率更快地降低。此外,偏差可以作为学习过程的一部分以类似于更新权重的方式进行更新。
无论如何,ANN 430只是一个简化示例。可以通过被调谐以解决特定的问题或目标的每个输入和输出层中的节点数量来开发任意复杂的ANN。此外,可以使用多个隐藏层,并且每个隐藏层中可以有任意数量的节点。
卷积神经网络(CNN)类似于ANN,因为CNN可以由若干节点层组成,它们之间具有加权连接和可能的每层偏差。权重和偏差可以通过上面讨论的前馈和反向传播过程进行更新。损失函数可用于将前馈处理的输出值与期望的输出值进行比较。
另一方面,通常在明确假设初始输入值从一个或多个图像导出的情况下设计CNN。在一些实施例中,图像块中每个像素的每个颜色通道是单独的初始输入值。假设每个像素有三个颜色通道(例如,红色、绿色和蓝色),甚至小的32x 32像素块将会为第一隐藏层中的每个节点产生3072个传入权重。清楚的是,使用朴素ANN进行图像处理可能会导致非常大且复杂的模型,这将花费很长时间来训练。
替代地,CNN被设计为利用几乎所有图像中找到的固有结构。具体地,CNN中的节点仅连接到前一层中的少数节点。这种CNN架构可以被认为是三维的,其中节点被布置在具有宽度、高度和深度的块(block)中。例如,前面提到的具有3个颜色通道的32x 32像素块可以被布置成宽度为32个节点、高度为32个节点且深度为3个节点的输入层。
图5A中示出了示例CNN 500。表示为像素X1…Xm的初始输入值502被提供给输入层504。如上所讨论的,输入层504可以具有基于像素X1…Xm的颜色通道的宽度、高度和数量的三个维度。输入层504将值提供给一组或多组特征提取层,每组包含卷积层506、RELU层508和池化层510的实例。池化层510的输出被提供给一个或多个分类层512。最终输出值514可以被布置在表示初始输入值502的简明表征的特征向量中。
卷积层506可以通过在这些输入值的三维空间布置四周滑动一个或多个滤波器来变换其输入值。滤波器由应用于节点的偏差和它们之间的连接的权重表示,并且通常具有比输入值更小的宽度和高度。每个滤波器的结果可以是输出值的二维块(称为特征图),其中宽度和高度可以具有与输入值相同的大小,或者这些维度中的一个或多个可以具有不同的大小。每个滤波器输出结果的组合导致深度维度的特征图的层,其中每一层代表一个滤波器的输出。
应用滤波器可以涉及计算滤波器中的条目与输入值的二维深度切片之间的点积和。这方面的示例如图5B所示。矩阵520表示到卷积层的输入,因此例如可以是图像数据。卷积运算将滤波器522覆盖(overlay)在矩阵520上以确定输出524。例如,当滤波器522位于矩阵520的左上角,并且计算每个条目的点积和时,结果为4。这放置在输出524的左上角。
回到图5A,CNN在训练期间学习滤波器,使得这些滤波器最终可以识别输入值中特定定位处的某些类型的特征。作为示例,卷积层506可以包括最终能够检测从其导出初始输入值502的图像块中的边缘和/或颜色的滤波器。被称为感受野(receptive field)的超参数确定输入层504和卷积层506中的每个节点之间的连接的数量。这允许每个节点专注于输入值的子集。
RELU层508将激活函数应用于由卷积层506提供的输出。在实践中,已经确定修正线性单元(RELU)函数或其变体表现出在CNN中提供了强结果。RELU函数是简单的阈值函数,定义为f(x)=max(0,x)。因此,当x为负时输出为0,并且当x为非负时输出为x。RELU函数的平滑、可微的近似是softplus函数。它被定义为f(x)=log(1+ex)。尽管如此,可以在该层中使用其他函数。
池化层510通过对来自RELU层508的输出的每个二维深度切片进行下采样来减少数据的空间大小。一种可能的方法是将具有跨步(stride)为2的2x2滤波器应用于深度切片的每个2x2块。这将每个深度切片的宽度和高度减小2倍,从而将数据的整体大小减小75%。
分类层512以特征向量的形式计算最终输出值514。作为示例,在被训练成图像分类器的CNN中,特征向量中的每个条目可以对图像块包含特定类别的项目(例如,人脸、猫、海滩、树等)的可能性进行编码。
在一些实施例中,存在多组特征提取层。因此,池化层510的实例可以向卷积层506的实例提供输出。此外,对于池化层510的每个实例,可以存在卷积层506和RELU层508的多个实例。
CNN 500表示可以用在图像处理中的通用结构。卷积层506和分类层512类似于ANN400中的层来应用权重和偏差,并且这些权重和偏差可以在反向传播期间更新,以便CNN500可以学习。另一方面,RELU层508和池化层510通常应用固定操作,因此可以不学习。
不是与ANN不同,CNN可以包括与本文示例中所示的不同数量的层,并且这些层中的每一个可以包括不同数量的节点。因此,CNN 500仅用于说明目的,并且不应该被认为是限制CNN的结构。
图6示出了根据一个或多个示例实施例的用于执行3D对象检测和定位的系统。在示例实施例中,系统600包括计算设备602、雷达系统604和相机系统606。在其他实施例中,系统600可以包括其他组件,诸如其他类型的传感器(例如,LIDAR)。
系统600可以执行本文描述的3D对象检测和定位技术。在一些应用中,系统600可以用于辅助自动或半自动车辆的导航。例如,系统600可以提供可以用于使车辆能够安全导航通过各种环境的信息。
计算设备602表示系统600内的一个或多个处理单元,其可以执行本文所述的一个或多个操作。例如,计算设备602可以被配置为执行如图8中示出为流程图的方法800。计算设备602可以被实现为图1的计算系统112、图3的计算设备300、或另一种类型的处理设备或设备群组。
在一些实施例中,计算设备602车载地定位于车辆上。通过使计算设备602车载地位于车辆上,可以减少系统600内的组件之间的通信所需的时间。在其他实施例中,计算设备602可以与车辆物理分离地定位。计算设备602可以位于远程并且与车载地位于车辆上的一个或多个计算系统无线通信。
雷达系统604表示一个或多个雷达单元,其可以将雷达信号发射到环境中并且接收从环境中的表面离开的雷达反射。然后可以根据发射和接收之间的时间延迟确定到环境中的无线电反射特征的距离。雷达系统604可以发出频率随时间变化的信号,诸如具有时变频率斜坡的信号,然后将发出信号和反射信号之间的频率差与距离估计相关。在一些示例中,雷达系统604还可以基于接收的反射信号中的多普勒频移来估计反射对象的相对运动。
雷达系统604可以使用定向天线来发射和/或接收信号以将每个距离估计与方位(bearing)相关联。更一般地,定向天线也可以用于将辐射能量聚焦于给定的感兴趣视场上。将测量的距离和方向信息(directional information)结合允许了将周围环境特征绘图。
雷达系统604可以包括具有一个或多个天线阵列的一个或多个雷达单元,其可以采取单输入单输出、单输入多输出(SIMO)、多输入单输出(MISO)、多输入多输出(MIMO)和/或合成孔径雷达(SAR)雷达天线架构的形式。在一些实施例中,示例雷达单元架构可以包括多个“双端开放波导”(DOEWG)天线。术语“DOEWG”可以指水平波导通道的一短段加上分裂成两部分的垂直通道。垂直通道的两个部分中的每一个可以包括输出端口,该输出端口被配置为辐射进入雷达单元的至少一部分电磁波。另外,在一些情况下,多个DOEWG天线可以布置成一个或多个天线阵列。
在一些实施例中,雷达系统604可以被配置为在W频段中的电磁波频率处(例如,77千兆赫兹(GHz))操作。W频段可以对应于毫米量级上的电磁波(例如,1毫米或4毫米)。雷达系统604可以使用可以将辐射能量聚焦成紧密的波束来以高准确度测量环境的一个或多个天线。这样的天线可以是紧凑的(典型地具有矩形形状因子)、高效的(即,很少有77GHz的能量损失到天线中的热量或反射回发射器电子设备)、低成本且易于制造(即,具有这些天线的雷达系统可以大批量制造)。
本文呈现的技术可以涉及使用各种类型的雷达单元和系统。一些雷达系统可以提供有关环境中的表面的距离、多普勒和方位角信息。其他雷达系统可以另外地提供用于表面的仰角(elevation angle)信息。
相机系统606表示被配置为捕获车辆环境的图像的一个或多个相机。相机是可以用于捕获图像的光学仪器。相机系统606可以包括在车辆中或车辆上的各种布置中的一个或多个相机。此外,可以在相机系统606内使用不同类型的相机。相机系统606可以包括产生不同分辨率的相机。此外,相机系统606内的相机的视场可以与来自雷达系统604的雷达单元的视场重叠。这样,相机和雷达单元可以配对在一起以用于执行本文描述的技术。
在一些示例中,多个相机可以与一个或多个雷达单元重叠。例如,可以获得从不同的相机角度描绘环境的部分的多个图像,并可以将多个图像与雷达数据组合。
计算设备602可以接收和处理由雷达系统604和相机系统606分别提供的雷达数据以及图像和/或视频。例如,计算设备602可以利用通信接口610来获得雷达数据和图像并将雷达数据和图像作为输入提供到神经网络608中。图像可以与覆盖环境的重叠部分的雷达配对。在一些示例中,计算设备602可以在将数据作为输入提供到神经网络608中之前对图像和/或雷达数据执行预处理技术。例如,计算设备602可以使用雷达测量来将图像或图像系列裁剪成隔离特定的一个或多个对象的图像块。裁剪可以涉及将图像块的大小调整为专用于输入到神经网络608的统一大小(uniform size)。
可以训练神经网络608以执行与3D对象检测相关的操作。计算设备602可以将来自相机系统606的图像数据和来自雷达系统604的雷达数据作为输入提供到神经网络608中。神经网络608可以使用这些输入来提供传送关于周围环境中的对象的信息的输出参数612。
在一些实施例中,计算设备602可以使雷达单元将雷达信号发射到车辆的环境中并接收表示雷达信号的反射的雷达反射。计算设备602可以使用雷达反射来确定关于环境中的表面的信息,诸如各种对象的走向和距离。距离(range)可以表示对象与雷达单元(或车辆)之间的距离(distance)。计算设备602还可以从相机系统606接收描绘环境的各方面的图像。对于给定对象,计算设备602可以将包括对象的图像裁剪成通过对象四周的外围区域被移除来聚焦于对象上的图像块。为对象确定的图像块和雷达测量(例如,相对于车辆的走向和距离)可以作为输入提供到神经网络608中,该神经网络可以被训练以使用这些输入来执行3D对象检测和定位技术。
神经网络608可以使用图像数据和雷达数据提供表示关于车辆的环境中的对象的信息的输出参数612。在其他示例中,神经网络608可以使用其他类型的传感器信息。其他传感器信息可以补充或替代图像数据和/或雷达数据。例如,可以训练神经网络608以进一步使用LIDAR数据。
在图6中所示的示例实施例中,输出参数612包括分类614和3D参数616,它们共同提供关于车辆的环境中的一个或多个对象的信息。在其他实施例中,可以训练神经网络608以与关于车辆的环境的其他信息一起提供输出参数612。分类614可以涉及将类别标签分配给环境中的对象或表面。可以训练神经网络608以基于这些对象共享的相似性来识别描述对象的标签。分类(classification)和归类(categorization)可以使神经网络608能够组织车辆导航时遇到的表面和对象,并简化控制系统对环境的理解。归类基于对类别的成员和非成员进行区分的特征。车辆的环境中的对象在特征上可能相差很大,这使得能够可以根据不同的类别进行分类。一些示例类别可以包括车辆、行人、交通标志和道路元素,以及其他可能性。每个类别还可以包括子类别。例如,车辆类别还可以包括基于车辆的附加特征的子类别,诸如按照车辆大小、车轮数量和车辆类型等。类似地,交通标志可以包括不同的子类别。信息的组织是以使得车辆控制系统能够快速确定和执行导航决策的方式。
3D参数616可以使得能够进行对象定位,这可以涉及确定一个或多个对象周围的边界框。3D参数616可以包括车辆环境中一个或多个对象的维度(dimension)的指示。对象的维度可以指定对象的覆盖属性的大小的拓扑量度。维度可以指示指定对象上的点所需的坐标数(the number of coordinates)。在一些示例中,维度可以指示车辆的环境中的对象的长度、宽度和高度。分类614和3D参数316可以基于相似的特征来确定。例如,可以训练神经网络608以基于对象的维度和/或从雷达系统604和相机系统606获得的其他信息来执行分类614。
计算设备602或另一个计算系统(例如,车辆控制系统)可以使用输出参数612来确定和执行车辆的控制策略。在一些示例中,计算设备602可以基于输出参数612向控制系统提供控制指令。控制策略可以取决于环境和环境的改变。因此,可以迭代地执行3D对象检测技术以持续地更新车辆对周围环境的理解。
可以执行示例3D对象检测技术来测量周围环境的多个部分。例如,系统600可以使用雷达单元和相机单元配对来执行类似的技术,以使得能够对车辆周围360度环境进行透彻理解。
图7示出了涉及执行3D对象检测的车辆雷达系统的场景。车辆700可以执行本文描述的3D对象检测技术以检测环境中的各种对象。从执行3D对象检测获得的信息可以用于安全地导航通过环境。在一些实施例中,车辆700可以在运输乘客时使用3D对象检测来理解环境。
在示例实施例中,车辆700正在使用本文描述的技术来检测和确定关于道路边界702、停止标志704、车辆706和车辆708的信息。对于这些对象以及环境中的其他表面,控制系统可以使用分类和3D参数来安全地导航车辆700。通过检测环境中的对象和相对于车辆700定位环境中的对象,控制系统可以确定将道路边界702、停止标志704、车辆706-708和关于这些对象导出的信息作为因素考虑的导航策略。导航策略可以指定相对于道路边界702导航车辆700,同时还根据停车标志704进行预期和停止。神经网络可以提供使得能够对停止标志704进行分类和定位的输出,这进而使控制系统预期和执行在交叉路口处的恰当的停止。控制系统还可以基于来自帮助处理传感器数据(诸如图像和雷达数据)的一个或多个神经网络的输出来检测、识别车辆706-708并且相对于车辆706-708导航。
图8是根据一个或多个实施例的用于执行3D对象检测和定位的方法800的流程图。方法800可以包括如框802、804、806、808、810、812和814中的一个或多个所描绘的一个或多个操作、功能或动作,其中每一个可以由在先前的附图中示出的系统以及其他可能的系统中的任何一个来执行。
本领域技术人员将理解,本文描述的流程图示出了本公开的某些实施方式的功能和操作。就这方面,流程图的每个框可以表示模块、段或程序代码的一部分,其包括可由一个或多个处理器执行的用于实现过程中的特定逻辑功能或步骤的一个或多个指令。程序代码可以被存储在任何类型的计算机可读介质上,例如,像包括磁盘或硬盘驱动器的存储设备。
此外,每个框可以表示被接线以执行过程中的特定逻辑功能的电路。在本申请的示例实施方式的范围内包括替选实施方式,其中,如本领域合理的技术人员所将理解的,取决于涉及的功能,可以不按照示出或讨论的顺序执行(包括基本上同时执行或以相反的顺序执行)功能。
在框802处,方法800涉及使雷达单元将雷达信号发射到车辆的环境中。例如,计算设备可以与车辆雷达系统通信并使得一个或多个雷达单元在车辆导航时将雷达信号发射到环境中。在一些示例中,计算设备可以作为与车辆相关联的传感器系统的一部分来操作。
在框804处,方法800涉及接收表示雷达信号的反射的雷达反射。来自车辆雷达系统的一个或多个接收天线可以获得从车辆的环境中的各个表面反弹的雷达信号的反射。
在框806处,方法800涉及基于雷达反射确定位于车辆的环境中的对象的走向和距离。计算设备或另一个处理单元可以处理雷达反射内的测量,以确定位于车辆环境中的一个或多个对象的走向和距离。距离可以表示对象和车辆之间的距离。
在一些实施例中,计算设备可以使雷达单元发射具有脉冲多普勒拉伸线性调频(LFM)波形的雷达信号。例如,雷达可以使用天线阵列(例如,一个或多个2D阵列)发射雷达信号。因此,计算设备或另一个处理单元可以使用基于脉冲多普勒拉伸LFM波形的混合过程来处理雷达反射,以确定位于在环境中的对象的走向和距离。处理雷达反射以提取环境的测量可以涉及示例中的其他技术。
在框808处,方法800涉及接收描绘包括对象的车辆环境的部分的图像。例如,计算设备可以从耦合到车辆的车辆相机接收图像。相机可以被配置为捕获与雷达测量重叠的环境部分的图像(或视频)。结果,相机可以捕获包括也在雷达测量内检测到的对象的图像。
在一些实施例中,计算设备可以使雷达单元在第一时间发射雷达信号并且基于车辆相机在第二时间捕获图像来接收图像。具体地,第二时间可以是第一时间之后的阈值持续时间。结果,当车辆处于与获得雷达测量时车辆的位置基本相似的位置时,图像可以描绘对象。在某些情况下,阈值持续时间可以取决于车辆的速度。例如,阈值持续时间可以在车辆正在以较高速度行驶时减少,并且可以在车辆正在以较慢速度行驶时增加。
在框810处,方法800涉及移除图像的外围区域以生成聚焦于对象上的图像块。计算设备可以移除图像中的外围区域以将图像裁剪成图像块,该图像块基于如在雷达测量中表示的对象的走向和距离来隔离对象。
在一些示例中,计算设备(或另一处理单元)可以基于对象的走向和距离来识别图像中的对象并且基于识别对象来确定对象的轮廓。然后,计算设备可以移除图像的外围区域,该外围区域表示位于对象的轮廓之外的环境部分。
在一些示例中,计算设备可以执行裁剪过程以从具有不同分辨率的图像生成图像块。计算设备可以被配置为在输入到一个或多个神经网络以用于进一步分析之前裁剪图像并将这些图像块的大小调整为统一大小。
在框812处,方法800涉及将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数。神经网络产生的输出参数可以在示例内变化。例如,输出参数可以包括对象的分类和/或指示从车辆视角的对象的维度集合和对象的中心的3D参数。
在一些实施例中,计算设备可以基于图像块内的像素确定具有红色像素通道、绿色像素通道和蓝色像素通道的第一组通道,并且基于对象的走向和距离确定具有走向通道和距离通道的第二组通道。然后计算设备可以将第一组通道和第二组通道作为输入提供到神经网络中。神经网络可以使用五个通道来生成输出通道,诸如指示对象的分类的通道、指示从车辆视角的对象的中心的一个或多个通道(例如,指定空间中的X、Y和Z的三个通道)、以及指示基于车辆视角的对象的维度的一个或多个通道。
在框814处,方法800涉及基于对应于对象的输出参数来控制车辆。计算设备可以确定使得车辆能够在随后的导航期间避开对象的控制策略。控制策略可以包括与至少取决于对象的分类的避开对象相关联的缓冲器(buffer)。因此,可以基于控制策略来控制车辆。
在一些示例中,计算设备可以基于对象的分类来确定对象是潜在乘客。例如,计算设备可以基于图像识别潜在乘客并使用来自神经网络的输出来确认该识别。响应于确定对象是潜在乘客,计算设备可以基于从车辆视角的对象的维度集合和对象的中心来确定作为神经网络的输出的、潜在乘客相对于车辆的朝向和位置。因此,计算设备然后可以使车辆基于潜在乘客相对于车辆的位置和朝向以特定速度向潜在乘客导航,并且将车辆停在潜在乘客附近以使潜在乘客能够进入车辆。
图9是示出了根据本文呈现的至少一些实施例布置的示例计算机程序产品的概念部分视图的示意图,示例计算机程序产品包括用于在计算设备上执行计算机进程的计算机程序。在一些实施例中,所公开的方法可以实现为以机器可读格式编码在非暂时性计算机可读存储介质上,或者编码在其他非暂时性介质或制品上的计算机程序指令。
在一个实施例中,示例计算机程序产品900是使用可以包括一个或多个编程指令904的信号承载介质902来提供的,当由一个或多个处理器执行时,可以提供上述关于图1-图8的功能或功能部分。在一些示例中,信号承载介质902可以涵盖非暂时性计算机可读介质906,诸如但不限于硬盘驱动器、光盘(CD)、数字视频盘(DVD)、数字磁带、存储器等。在一些实施方式中,信号承载介质902可以涵盖计算机可记录介质908,诸如但不限于存储器、读/写(R/W)CD、R/W DVD等。在一些实施方式中,信号承载介质902可以涵盖通信介质910,诸如但不限于数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路等)。因此,例如,信号承载介质902可以由通信介质910的无线形式传送。
一个或多个编程指令904可以是例如计算机可执行和/或逻辑实现的指令。在一些示例中,诸如图1的计算机系统112或图3的计算设备300的计算设备可以被配置为响应于由计算机可读介质906、计算机可记录介质908、和/或通信介质910中的一个或多个传送到计算机系统112的编程指令904来提供各种操作、功能或动作。其他设备可以执行本文描述的操作、功能或动作。
非暂时性计算机可读介质906也可以分布在多个数据存储元件之间,多个数据存储元件可以彼此远离定位。执行存储的指令中的一些或全部的计算设备可以是车辆,诸如图1-图2E中所示的车辆100。替选地,执行存储的指令中的一些或全部的计算设备可以是另一个计算设备,诸如服务器。
上面详细的描述参考附图描述了所公开的系统、设备和方法的各种特征和功能。尽管本文已经公开了各个方面和实施例,但其他方面和实施例将是清晰的。本文所公开的各个方面和实施例是出于说明的目的而不旨在限制,其真实范围由所附权利要求指示。
应当理解,本文描述的布置仅用于示例的目的。因此,本领域的技术人员将理解,可以替代地使用其他布置和其他元素(例如,机器、装置、接口、功能、命令和功能群组等),并且可以根据期望的结果完全省略一些元素。此外,所描述的许多元素是功能实体,所述功能实体可以实现为离散或分布式组件或以任何适当的组合和定位而与其他组件的结合实现。

Claims (20)

1.一种方法,包括:
由计算系统使雷达单元将雷达信号发射到车辆的环境中;
在计算系统处接收表示雷达信号的反射的雷达反射;
基于雷达反射,确定位于环境中的对象的走向和距离,其中,所述距离表示对象和车辆之间的距离;
在计算系统处从车辆相机接收描绘包括对象的环境的部分的图像;
基于对象的走向和距离,移除图像的外围区域以生成聚焦在对象上的图像块;
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数;以及
基于对应于对象的输出参数控制车辆。
2.根据权利要求1所述的方法,其中,使雷达单元将雷达信号发射到车辆的环境中包括:
使雷达单元发射具有脉冲多普勒拉伸线性调频(LFM)波形的雷达信号,其中,所述雷达单元被配置为使用天线阵列来发射雷达信号;并且
其中,确定位于环境中的对象的走向和距离包括:
使用基于脉冲多普勒拉伸LFM波形的混合过程来处理雷达反射,以确定位于环境中的对象的走向和距离。
3.根据权利要求1所述的方法,其中,使雷达单元将雷达信号发射到车辆的环境中包括:
使雷达单元在第一时间发射雷达信号;并且
其中,接收描绘包括对象的环境的部分的图像包括:
基于车辆相机在第二时间捕获图像来接收图像,其中,第二时间是第一时间之后的阈值持续时间。
4.根据权利要求1所述的方法,其中,移除图像的外围区域以生成聚焦在对象上的图像块包括:
基于对象的走向和距离来识别图像中的对象;
基于识别对象,确定对象的轮廓;以及
移除代表在对象的轮廓之外的环境部分的图像的外围区域。
5.根据权利要求1所述的方法,其中,将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络产生对应于对象的输出参数包括:
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对象的分类。
6.根据权利要求5所述的方法,其中,将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对象的分类还包括:
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络还提供三维(3D)参数,其指示从车辆视角的对象的中心和对象的维度集合。
7.根据权利要求6所述的方法,其中,基于对应于对象的参数控制车辆包括:
基于对象的分类、从车辆视角的对象的中心以及对象的维度集合,确定控制策略,该控制策略使得车辆能够在随后的导航期间避开对象,并且其中,该控制策略包括与至少取决于对象的分类的避开对象相关联的缓冲器;以及
基于控制策略控制车辆。
8.根据权利要求6所述的方法,还包括:
基于对象的分类,确定对象是潜在乘客;
响应于确定对象是潜在乘客,基于从车辆视角的对象的中心和对象的维度集合确定潜在乘客相对于车辆的朝向和位置;并且
其中,基于对应于对象的参数控制车辆还包括:
基于潜在乘客相对于车辆的朝向和位置,使车辆以特定速度向潜在乘客导航;以及
将车辆停在潜在乘客附近,以使潜在乘客能够进入车辆。
9.根据权利要求1所述的方法,其中,将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数包括:
基于图像块内的像素,确定具有红色像素通道、绿色像素通道和蓝色像素通道的第一组通道;
基于对象的走向和距离,确定具有走向通道和距离通道的第二组通道;以及
将第一组通道和第二组通道作为输入提供到神经网络中。
10.根据权利要求1所述的方法,其中,将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数包括:
将图像块和位于环境中的对象的走向和距离作为输入提供到卷积神经网络中。
11.一种系统,包括
车辆;
雷达单元,耦合到车辆;
车辆相机;
计算设备,被配置为:
使雷达单元将雷达信号发射到车辆的环境中;
接收代表雷达信号的反射的雷达反射;
基于雷达反射,确定位于环境中的对象的走向和距离,其中,所述距离表示对象和车辆之间的距离;
从车辆相机接收描绘包括对象的环境的部分的图像;
基于对象的走向和距离,移除图像的外围区域以生成聚焦在对象上的图像块;
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数;并且
基于对应于对象的输出参数控制车辆。
12.根据权利要求11所述的系统,其中,所述计算设备还被配置为:
使雷达单元在第一时间发射雷达信号;以及
基于车辆相机在第二时间捕获图像来接收图像,其中第二时间是第一时间之后的阈值持续时间。
13.根据权利要求11所述的系统,其中,所述计算设备还被配置为:
基于对象的走向和距离来识别图像中的对象;
基于识别对象,确定对象的轮廓;以及
移除代表对象的轮廓之外的环境部分的图像的外围区域。
14.根据权利要求11所述的系统,其中,所述计算设备还被配置为:
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对象的分类。
15.根据权利要求14所述的系统,其中,所述计算设备还被配置为:
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络还提供三维(3D)参数,其指示从车辆视角的对象的中心和对象的维度集合。
16.根据权利要求15所述的系统,其中,所述计算设备还被配置为:
基于对象的分类、从车辆视角的对象的中心以及对象的维度集合,确定控制策略,该控制策略使得车辆能够在随后的导航期间避开对象,并且其中,该控制策略包括与至少取决于对象的分类的避开对象相关联的缓冲器;以及
基于控制策略控制车辆。
17.根据权利要求16所述的系统,其中,所述计算设备还被配置为:
基于对象的分类,确定对象是潜在乘客;
响应于确定对象是潜在乘客,基于从车辆视角的对象的中心和对象的维度集合确定潜在乘客相对于车辆的朝向和位置;
基于潜在乘客相对于车辆的朝向和位置,使车辆以特定速度向潜在乘客导航;以及
将车辆停在潜在乘客附近,以使潜在乘客能够进入车辆。
18.根据权利要求11所述的系统,其中,所述神经网络是卷积神经网络。
19.一种被配置为存储指令的非暂时性计算机可读介质,当指令被包括一个或多个处理器的计算系统执行时,使得计算系统执行操作,所述操作包括:
使雷达单元将雷达信号发射到车辆的环境中;
接收代表雷达信号的反射的雷达反射;
基于雷达反射,确定位于环境中的对象的走向和距离,其中,所述距离表示对象和车辆之间的距离;
从车辆相机接收描绘包括对象的环境的部分的图像;
基于对象的走向和距离,移除图像的外围区域以生成聚焦在对象上的图像块;
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数;和
基于对应于对象的输出参数为车辆提供控制指令。
20.根据权利要求19所述的非暂时性计算机可读介质,其中,将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对应于对象的输出参数包括:
将图像块以及对象的走向和距离作为输入提供到神经网络中,使得神经网络提供对象的分类、相对于车辆视角的中心和维度集合。
CN202210130322.2A 2021-02-11 2022-02-11 用于三维对象检测和定位的方法和系统 Pending CN114966647A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/173,818 US11733369B2 (en) 2021-02-11 2021-02-11 Methods and systems for three dimensional object detection and localization
US17/173,818 2021-02-11

Publications (1)

Publication Number Publication Date
CN114966647A true CN114966647A (zh) 2022-08-30

Family

ID=80447348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210130322.2A Pending CN114966647A (zh) 2021-02-11 2022-02-11 用于三维对象检测和定位的方法和系统

Country Status (3)

Country Link
US (2) US11733369B2 (zh)
EP (1) EP4043923A1 (zh)
CN (1) CN114966647A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021206854A1 (de) * 2021-06-30 2023-01-05 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Steuerung einer Annäherung eines Fahrzeugs, Abstandsregler, Computerprogramm und Speichereinheit

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7979173B2 (en) * 1997-10-22 2011-07-12 Intelligent Technologies International, Inc. Autonomous vehicle travel control systems and methods
JP4308381B2 (ja) * 1999-09-29 2009-08-05 富士通テン株式会社 周辺監視センサ
US8050863B2 (en) 2006-03-16 2011-11-01 Gray & Company, Inc. Navigation and control system for autonomous vehicles
US8139109B2 (en) * 2006-06-19 2012-03-20 Oshkosh Corporation Vision system for an autonomous vehicle
JP4211809B2 (ja) * 2006-06-30 2009-01-21 トヨタ自動車株式会社 物体検出装置
JP4404103B2 (ja) * 2007-03-22 2010-01-27 株式会社デンソー 車両外部撮影表示システムおよび画像表示制御装置
US8126642B2 (en) 2008-10-24 2012-02-28 Gray & Company, Inc. Control and systems for autonomously driven vehicles
US8948501B1 (en) 2009-12-22 2015-02-03 Hrl Laboratories, Llc Three-dimensional (3D) object detection and multi-agent behavior recognition using 3D motion data
US20200064444A1 (en) * 2015-07-17 2020-02-27 Origin Wireless, Inc. Method, apparatus, and system for human identification based on human radio biometric information
CN106461774B (zh) 2014-02-20 2019-04-23 御眼视觉技术有限公司 基于雷达提示视觉成像的高级驾驶员辅助系统
US9720072B2 (en) 2014-08-28 2017-08-01 Waymo Llc Methods and systems for vehicle radar coordination and interference reduction
US9494935B2 (en) * 2014-11-13 2016-11-15 Toyota Motor Engineering & Manufacturing North America, Inc. Remote operation of autonomous vehicle in unexpected environment
US9720415B2 (en) 2015-11-04 2017-08-01 Zoox, Inc. Sensor-based object-detection optimization for autonomous vehicles
EP3430427B1 (en) 2016-03-14 2021-07-21 IMRA Europe S.A.S. Processing method of a 3d point cloud
US9672446B1 (en) 2016-05-06 2017-06-06 Uber Technologies, Inc. Object detection for an autonomous vehicle
CN115343947A (zh) * 2016-09-23 2022-11-15 苹果公司 自主车辆的运动控制决策
US9989964B2 (en) * 2016-11-03 2018-06-05 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling vehicle using neural network
WO2018207303A1 (ja) * 2017-05-11 2018-11-15 三菱電機株式会社 車載用監視カメラ装置
JP6565967B2 (ja) * 2017-05-12 2019-08-28 トヨタ自動車株式会社 路上障害物検出装置,方法,およびプログラム
US10438371B2 (en) * 2017-09-22 2019-10-08 Zoox, Inc. Three-dimensional bounding box from two-dimensional image and point cloud data
JP6651062B2 (ja) * 2017-11-15 2020-02-19 三菱電機株式会社 車外コミュニケーション装置、車外コミュニケーション方法、情報処理装置、及び車外コミュニケーションプログラム
US10935650B2 (en) 2017-12-22 2021-03-02 Waymo Llc Radar based three dimensional point cloud for autonomous vehicles
WO2019161300A1 (en) * 2018-02-18 2019-08-22 Nvidia Corporation Detecting objects and determining confidence scores
GB2571733B (en) * 2018-03-06 2020-08-12 Univ Cape Town Object identification in data relating to signals that are not human perceptible
CN111278704B (zh) 2018-03-20 2023-07-28 御眼视觉技术有限公司 用于导航车辆的系统和方法
WO2020014683A1 (en) * 2018-07-13 2020-01-16 Kache.AI Systems and methods for autonomous object detection and vehicle following
US11173921B2 (en) * 2018-11-19 2021-11-16 Micron Technology, Inc. Sensor fusion to determine reliability of autonomous vehicle operation
WO2020116195A1 (ja) * 2018-12-07 2020-06-11 ソニーセミコンダクタソリューションズ株式会社 情報処理装置、情報処理方法、プログラム、移動体制御装置、及び、移動体
US10867210B2 (en) * 2018-12-21 2020-12-15 Waymo Llc Neural networks for coarse- and fine-object classifications
US11126179B2 (en) * 2019-02-21 2021-09-21 Zoox, Inc. Motion prediction based on appearance
US20200302662A1 (en) * 2019-03-23 2020-09-24 Uatc, Llc System and Methods for Generating High Definition Maps Using Machine-Learned Models to Analyze Topology Data Gathered From Sensors
JP2021006011A (ja) * 2019-06-27 2021-01-21 株式会社クボタ 農作業車のための障害物検出システム
US11462054B2 (en) * 2019-10-21 2022-10-04 Analog Devices International Unlimited Company Radar-based indoor localization and tracking system
US11361554B2 (en) * 2019-10-22 2022-06-14 Robert Bosch Gmbh Performing object and activity recognition based on data from a camera and a radar sensor
US11966673B2 (en) * 2020-03-13 2024-04-23 Nvidia Corporation Sensor simulation and learning sensor models with generative machine learning methods
US11960025B2 (en) * 2020-10-22 2024-04-16 Micron Technology, Inc. Intelligent radar having deep learning accelerator and random access memory
US11995157B2 (en) * 2020-12-04 2024-05-28 Caterpillar Inc. Intelligent LiDAR scanning

Also Published As

Publication number Publication date
US20230350051A1 (en) 2023-11-02
EP4043923A1 (en) 2022-08-17
US20230143433A1 (en) 2023-05-11
US11733369B2 (en) 2023-08-22

Similar Documents

Publication Publication Date Title
US11776135B2 (en) Object velocity from images
US12019443B2 (en) Use of detected objects for image processing
US9607226B2 (en) Methods and systems for object detection using multiple sensors
US9014905B1 (en) Cyclist hand signal detection by an autonomous vehicle
US9081385B1 (en) Lane boundary detection using images
US11361449B2 (en) Neural network for object detection and tracking
US9063548B1 (en) Use of previous detections for lane marker detection
US8989944B1 (en) Methods and devices for determining movements of an object in an environment
JP2017152049A (ja) レーザー点クラウドを用いる物体検出のための方法及びシステム
US11699237B2 (en) Bounding box embedding for object identifying
CN116324661A (zh) 基于激光雷达数据的地面高度估计
US11774583B2 (en) Methods and systems for filtering vehicle self-reflections in radar
US10972638B1 (en) Glare correction in sensors
US20230350051A1 (en) Methods and Systems for Three Dimensional Object Detection and Localization
US11803977B2 (en) LIDAR point cloud alignment validator in HD mapping
US20240098245A1 (en) Sensor calibration validation
US12033334B2 (en) Neural network for object detection and tracking
US11194027B1 (en) Reducing noise in sensor data
EP4296975A1 (en) Joint detection and grouping of road objects using machine learning
US20230017983A1 (en) Methods and Systems for Radar Reflection Filtering During Vehicle Navigation
US20230384419A1 (en) Radar-based ground plane characteristic determination

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