CN112204343B - 高清晰地图数据的可视化 - Google Patents

高清晰地图数据的可视化 Download PDF

Info

Publication number
CN112204343B
CN112204343B CN201980029228.4A CN201980029228A CN112204343B CN 112204343 B CN112204343 B CN 112204343B CN 201980029228 A CN201980029228 A CN 201980029228A CN 112204343 B CN112204343 B CN 112204343B
Authority
CN
China
Prior art keywords
vehicle
map
sensor data
image
data
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.)
Active
Application number
CN201980029228.4A
Other languages
English (en)
Other versions
CN112204343A (zh
Inventor
吉尔·科尔盖特
马克·达蒙·惠乐
罗威
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.)
Nvidia Corp
Original Assignee
Nvidia Corp
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 Nvidia Corp filed Critical Nvidia Corp
Publication of CN112204343A publication Critical patent/CN112204343A/zh
Application granted granted Critical
Publication of CN112204343B publication Critical patent/CN112204343B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R1/00Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • B60R1/20Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/3415Dynamic re-routing, e.g. recalculating the route when the user deviates from calculated route or after detecting real-time traffic data or accidents
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3602Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3635Guidance using 3D or perspective road maps
    • G01C21/3638Guidance using 3D or perspective road maps including 3D objects and buildings
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • G01C21/367Details, e.g. road map scale, orientation, zooming, illumination, level of detail, scrolling of road map or positioning of current position marker
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3811Point data, e.g. Point of Interest [POI]
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3841Data obtained from two or more sources, e.g. probe vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3848Data obtained from both position sensors and additional sensors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/387Organisation of map data, e.g. version management or database structures
    • G01C21/3881Tile-based structures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3885Transmission of map data to client devices; Reception of map data by client devices
    • G01C21/3889Transmission of selected map data, e.g. depending on route
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3885Transmission of map data to client devices; Reception of map data by client devices
    • G01C21/3896Transmission of map data from central databases
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • 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
    • 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/40Scenes; Scene-specific elements in video content
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/274Syntactic or semantic context, e.g. balancing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • 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/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/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • 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)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Game Theory and Decision Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)
  • Instructional Devices (AREA)

Abstract

自主车辆通过将HD地图数据覆盖在传感器数据上并渲染覆盖的图像,来生成覆盖图像。当车辆沿着路线行驶时,重复可视化过程。可视化可显示在车辆内的屏幕上或远程设备上。系统基于来自所选点的地图数据来执行场景的反向渲染。对于源自选定点的每个视线,所述系统识别所述地图数据中的最远对象。因此,所述系统消除了从所选择的点观看时阻碍观看HD地图中的最远对象的对象。所述系统还允许使用基于语义标签的过滤准则来过滤对象。所述系统从所选择的点生成视图,使得将匹配所述过滤准则的3D对象从所述视图中消除。

Description

高清晰地图数据的可视化
相关申请的交叉引用
本申请要求2018年3月2日提交的美国临时专利申请号62/637,993的权益,其通过整体引用方式被并入本文。
技术领域
本公开总体上涉及用于自主车辆的高清晰度地图,并且更具体地,涉及高清晰地图数据的可视化,例如,结合自主车辆捕获的传感器数据的高清地图数据可视化。
背景技术
自主车辆(也称为自动驾驶汽车、无人驾驶汽车、汽车或机器人汽车)从源位置驾驶到目的地位置,而不需要人类驾驶员来控制和导航车辆。由于多个原因,驾驶的自动化是困难的。例如,自主车辆使用传感器来在行驶中做出驾驶决定,但是车辆传感器不能一直观察所有的事情。车辆传感器可能被拐角、山丘、其他车辆和其他障碍物遮挡。车辆传感器可能没有足够早地观察到某些事情以做出决定。此外,道路上的车道和标志可能丢失,或被撞倒,或被灌木丛隐藏,因此传感器无法检测到。此外,用于确定交通方向的通行权的道路标志可能不容易看到。
自主车辆可以使用地图数据来辨别部分的上述信息,而不是依赖于传感器数据。然而,常规地图具有使其难以用于自主车辆的多个缺点。例如,地图不提供安全导航所需的精度水平(例如,10cm或更小)。GPS系统提供大约3-5米的精度,但是具有导致超过100m的精度的大误差条件。这使得精确地确定车辆的位置具有挑战性。自主车辆需要使用具有非常高水平的精确度的高清晰度地图,以便能够沿着路线导航。此外,自主车辆需要执行定位以确定其在高清晰度地图中的位置。精确定位对于自主车辆能够导航是重要的。例如,车辆的当前位置的误差可导致自主车辆的计算系统的错误决策,从而导致该自主车辆不正确地行驶,可能导致事故。如果用户对高清晰地图数据的精度以及自主车辆的定位的精度不具有高置信度,则用户不太可能依赖自主车辆。
发明内容
车辆的系统生成使由传感器或车辆捕获的传感器数据可视化的组合图像和车辆所处位置周围的地理区域的地图数据。在一个实施例中,所述车辆是自主车辆,并且所述地图数据表示所述自主车辆用于沿着路线导航的数据。组合可视化允许观看者估计所述自主车辆用于确定其位置的定位过程的精确度。例如,所述地图数据和所述传感器数据之间的密切匹配指示车辆已经准确地确定了其位置。另一方面,所述地图数据和所述传感器数据之间的不匹配指示在确定车辆的位置时的不准确的可能性很高。由于车辆正在移动,所以车辆的当前位置可能与捕获所述传感器数据时的位置不同。所述系统在将所述传感器数据与所述地图数据组合之前补偿车辆运动。
在一个实施例中,所述自主车辆的系统执行以下步骤。所述系统接收表示所述自主车辆周围环境的传感器数据。传感器数据的示例包括由安装在所述自主车辆上的相机捕获的相机图像数据、由安装在所述自主车辆上的激光雷达传感器捕获的激光雷达扫描、或其任意组合。
所述系统基于所述传感器数据执行定位以确定车辆在特定时间的位置。所述系统确定捕获所述传感器数据的时间。所述系统确定表示在捕获所述传感器数据时所述自主车辆的位置的第二位置。所述系统基于第一位置和在捕获所述传感器数据的时间与确定车辆处于所述第一位置的特定时间之间的所述自主车辆的运动的估计来确定所述第二位置。所述系统访问所述自主车辆的所述第二位置周围的地理区域的地图数据。所述系统从车辆的第二位置的视角呈现图像,所述图像包括来自所访问的所述第二位置周围的所述地理区域的地图数据的一个或多个对象。所述系统通过将所述传感器数据覆盖在来自所访问的地图数据的包括一个或多个对象的图像上来生成组合图像。所述系统发送所生成的图像以在客户端设备上显示。
在一个实施例中,基于从所述车辆的惯性测量单元获得的运动参数来确定所述车辆的运动的估计。
在一个实施例中,所述系统将生成的图像发送到远程显示设备以显示视频。视频示出了当所述自主车辆移动时从所述自主车辆的视角观察到的场景。
在一个实施例中,所述系统将与HD地图数据中的对象相对应的渲染视图与所述传感器数据中对象的对应视图进行比较。所述系统确定所述对象的所述渲染视图和所述传感器数据中所述对象的所述对应视图中的误差的估计。如果所述系统确定误差估计指示大于阈值误差,则所述系统执行校正动作。校正动作的示例包括:向设备发送警报消息、改变用于对所述自主车辆执行定位的定位技术、以及记录指示定位中的误差的消息。
在一个实施例中,所述系统渲染不存在于所述地图数据中的对象的第二图像,并且将所述第二图像覆盖在所生成的图像上。所述第二图像可以包括描述所述自主车辆的路线的信息,该信息包括标志、标记、消息或其任意组合。
在一个实施例中,所述系统在所述车辆移动时周期性地生成图像。所生成的图像与相应的地图数据一起形成示出动态更新的传感器数据的视频。
根据一个实施例,一种系统生成包括世界的3D网格表示的地图数据。该系统基于来自参考点的地图数据来渲染场景的图像。对于源自选定点的每个视线,所述系统识别所述地图数据中的最远对象。所述系统呈现所标识对象的点,并且排除位于所述参考点和最远对象之间的对象点。结果,所述系统消除了从所述参考点观察时阻碍观看最远对象的对象。
根据一个实施例,所述系统通过执行这些步骤来执行反向渲染。一种车辆的系统接收包括关于车辆路线的信息的传感器数据。传感器数据的示例包括相机图像和激光雷达扫描。所述系统基于所述传感器数据执行定位以确定车辆的位置。所述系统访问与围绕所确定的车辆位置的区域相对应的地图数据。所述系统识别参考点,例如,在车辆位置上方的阈值高度处的点。所述系统在源自所述参考点的每条视线内选择所遇到的对象上的点。对于源自所述参考点的多个角度中的每个角度,所述系统从所述地图数据中选择对象上沿着线距离所述参考点最远的点。如果有一个或多个对象位于所述最远对象和沿着该线的所述参考点之间,则所述系统排除这些对象。所述系统生成显示所选择的点的图像。因此,所生成的图像包括可能被其他对象阻碍的对象,同时排除造成障碍的对象。所述系统发送所生成的图像以在客户端设备上显示。
在一个实施例中,所述系统在所述车辆移动时移动所述参考点。例如,当所述车辆移动时,所述参考点可被调整为在所述车辆上方的阈值高度处的点。当车辆沿着路线行驶以动态地更新所生成的图像时,可以重复上述步骤。结果,所述系统生成示出当所述车辆移动时从所述参考点观察到的场景的视频。所述系统可以将生成的视频发送到远程显示设备以显示视频。
在一些实施例中,针对多个位置执行上述过程的步骤以生成预渲染图像,当所述车辆经过区域时,该预渲染图像可以被加载和显示。
在一个实施例中,所述系统将生成的图像发送到远程显示设备以显示视频。视频示出了当所述自主车辆移动时从所述自主车辆的视角观察到的场景。
在一个实施例中,所述系统渲染不存在于所述地图数据中的对象的第二图像,并且将所述第二图像覆盖在所生成的图像上。所述第二图像可以包括描述所述自主车辆的路线的信息,该信息包括标志、标记、消息或其任意组合。
根据一个实施例,一种系统存储包括用描述3D对象的元数据注释的三维(3D)对象的表示的地图数据。元数据包括描述3D对象(例如,树、建筑物、交通标志等)的语义标签。所述系统接收标识地理区域中的一个或多个3D对象的过滤准则,并生成所述地理区域的场景的图像,该图像滤出匹配所述过滤准则的3D对象。例如,如果交通标志隐藏在树后面,则用户可以从视图中移除所有树以查看所述交通标志可见的场景。类似地,如果商店在建筑物后面,则用户可以指定过滤准则,该过滤准则标识所述建筑物以看到其中商店可见的视图。
根据一个实施例,所述系统通过执行以下步骤来执行基于语义标签的过滤。车辆的系统接收表示所述车辆周围场景的传感器数据。所述系统基于所述传感器数据执行定位以确定所述车辆的当前位置。所述系统从地图数据库访问围绕所述车辆位置的区域的地图数据。地图数据库存储存储描述具有语义标签的3D对象的元数据,例如,标识诸如树、建筑物、交通标志等的对象类型的语义标签。所述系统接收基于语义标签的过滤准则。对于源自与车辆相关联的原点的多个角度中的每个角度,所述系统从所述地图数据中选择对象上的点。所选择的点表示在不匹配所述过滤准则的对象上沿着以给定角度穿过所述地图数据的线最接近所述原点的点。因此,所述系统从视图中排除与所述过滤准则匹配的所有对象。所述系统基于所选择的点生成图像。所述系统发送所生成的图像以在客户端设备上显示。
附图说明
图1示出了根据一个实施例的与多个车辆计算系统交互的HD地图系统的整体系统环境。
图2示出了根据一个实施例的车辆计算机系统的系统架构。
图3示出了根据一个实施例的车辆计算系统的HD Map API中的指令的各个层。
图4示出了根据一个实施例的HD地图系统的系统架构。
图5示出了根据一个实施例的HD地图的组件。
图6A至图6B示出了根据一个实施例的在HD地图中定义的地理区域。
图7示出了根据一个实施例的HD地图中的车道的表示。
图8A至图8B示出了根据一个实施例的车道元素以及HD地图中的车道元素之间的关系。
图9示出了根据一个实施例的可视化模块290的系统架构。
图10是示出根据一个实施例的用于渲染覆盖在传感器数据上的地图数据的图像的过程的流程图。
图11是根据一个实施例的当定位结果是差质量时通过将地图数据与传感器数据组合而获得的图像的截屏。
图12是根据一个实施例的当定位结果是良好质量时通过将地图数据与传感器数据组合而获得的图像的截屏。
图13是根据一个实施例的示出由车辆的传感器捕获的传感器数据的图像的截图。
图14是根据一个实施例的示出由车辆的传感器捕获的传感器数据与示出附加信息的图像组合的图像的截图。
图15是示出根据一个实施例的用于在HD地图数据中反向渲染对象的过程的流程图。
图16是根据一个实施例的示出从阈值高度以上的点观看的HD地图数据的图像的截图。
图17是根据一个实施例的基于从阈值高度以上的点观看的HD地图数据的反向渲染的图像的截图。
图18是根据一个实施例的示出了从阈值高度以上的点以角度观看的HD地图数据的图像的截图。
图19是根据一个实施例的基于从阈值高度以上的点以角度观看的HD地图数据的反向渲染的图像的截图。
图20是示出根据一个实施例的用于执行基于语义标签的对象过滤的过程的流程图。
图21示出了可以从机器可读介质读取指令并在处理器或控制器中执行指令的计算机器的实施例。
附图仅出于说明的目的描述了本发明的各种实施例。所属领域的技术人员将容易地从以下论述认识到,可在不脱离本文中所描述的本发明的原理的情况下采用本文中所说明的结构和方法的替代实施例。
具体实施方式
概述
本发明的实施例使用高精度来维持包含最新信息的高清晰度(HD)地图。HD地图可由自主车辆使用以安全地导航到其目的地,而无需人工输入或具有有限的人工输入。自主车辆是能够在没有人类输入的情况下感测其环境并导航的车辆。自主车辆在本文中也可称为“无人驾驶汽车”、“自动驾驶汽车”或“机器人汽车”。HD地图是指以非常高的精度(通常为5-10cm)存储数据的地图。实施例生成包含关于自主车辆可以在其上行驶的道路的空间几何信息的HD地图。因此,所生成的HD地图包括自主车辆在没有人工干预的情况下安全导航所必需的信息。代替使用包括装备有高分辨率传感器的车辆的昂贵且耗时的测绘车队过程来收集HD地图的数据,本发明的实施例在自动驾驶车辆自身在其环境中四处行驶时使用来自自动驾驶车辆自身的更低分辨率传感器的数据。车辆可能没有这些路线或甚至该区域的先前地图数据。
HD地图系统生成并保持高清晰度(HD)地图,这些地图是精确的并且包括用于安全导航的最新的道路条件。例如,HD地图足够精确地提供自主车辆相对于道路车道的当前位置,以允许自主车辆在车道中安全地驾驶。
HD地图存储了大量的信息,因此在信息管理方面面临挑战。例如,大地理区域的HD地图可能不适合车辆的本地存储。本发明的实施例向自主车辆提供HD地图的必要部分,其允许车辆确定其在HD地图中的当前位置、确定道路上相对于车辆位置的特征、基于物理约束和法律约束确定移动车辆是否安全等。物理约束的示例包括物理障碍物,例如墙壁,法律约束的示例包括法律允许的车道行驶方向、限速、让行、停车。
系统环境
图1示出了根据一个实施例的与多个车辆交互的HD地图系统的整体系统环境。HD地图系统100包括与多个车辆150交互的在线HD地图系统110。车辆150可以是自主车辆,但不是必须是自主车辆。在线HD地图系统110接收由车辆的传感器捕获的传感器数据,并组合从车辆150接收的数据以生成和维护HD地图。在线HD地图系统110向车辆发送HD地图数据以用于驾驶车辆。在一个实施例中,在线HD地图系统110被实现为分布式计算系统,例如,允许诸如车辆计算系统120的客户端请求信息和服务的基于云的服务。例如,车辆计算机系统120可以请求用于沿着路线驾驶的HD地图数据,并且在线HD地图系统110提供所请求的HD地图数据。
图1和其它附图使用相同的附图标记来标识相同的元件。在诸如“105A”的参考数字之后的字母表示该文本具体地指具有该特定参考数字的元素。文本中没有后续字母的参考数字,例如“105”,是指附图中带有该参考数字的任何或所有元素(例如,文本中的“105”是指附图中的参考数字“105A”和/或“105N”)。
在线HD地图系统110包括车辆接口模块160和HD地图存储器165。在线HD地图系统110使用车辆接口模块160与各种车辆150的车辆计算机系统120交互。在线HD地图系统110将各种地理区域的地图信息存储在HD地图存储器165中。在线HD地图系统110可以包括除了图1所示的模块之外的其他模块,例如,图4所示的各种其它模块并在此进一步描述。
在线HD地图系统110接收115由多个车辆150(例如,数百或数千个汽车)的传感器收集的数据。车辆提供在沿着各种路线行驶时捕获的传感器数据,并将其发送到在线HD地图系统110。在线HD地图系统110使用从车辆150接收的数据来创建和更新描述车辆150正在行驶的区域的HD地图。在线HD地图系统110基于从车辆150接收的集体信息来构建高清地图,并将HD地图信息存储在HD地图存储器165中。
在线HD地图系统110根据车辆150的需要向各个车辆150发送125个HD地图。例如,如果自主车辆需要沿着路线驾驶,则自主车辆的车辆计算系统120将描述正在行驶的路线的信息提供给在线HD地图系统110。作为响应,在线HD地图系统110提供用于沿着路线驾驶所需的HD地图。
在一个实施例中,在线HD地图系统110以压缩格式向车辆发送HD地图数据的部分,使得所发送的数据消耗较少的带宽。在线HD地图系统110从各种车辆接收描述存储在车辆的本地HD地图存储器275处的数据的信息。如果在线HD地图系统110确定车辆不具有本地存储在本地HD地图存储器275中的HD地图的特定部分,则在线HD地图系统110将HD地图的该部分发送到车辆。如果在线HD地图系统110确定车辆先前确实接收到HD地图的该特定部分,但是自车辆最后接收到数据以来相应的数据被在线HD地图系统110更新,则在线HD地图系统110发送对存储在车辆处的HD地图的该部分的更新。这允许在线HD地图系统110最小化与车辆通信的数据量,并且还保持在车辆中本地存储的HD地图数据定期更新。
车辆150包括车辆传感器105、车辆控制器130和车辆计算系统120。车辆传感器105允许车辆150检测车辆的周围环境以及描述车辆的当前状态的信息,例如描述车辆的位置和运动参数的信息。车辆传感器105包括相机、光检测和测距传感器(LIDAR)、全球定位系统(GPS)导航系统、惯性测量单元(IMU)等。车辆具有捕获车辆周围环境的图像的一个或多个相机。LIDAR(还称为激光雷达)通过用激光脉冲照射目标并测量反射脉冲来测量到该目标的距离,从而测量车辆的周围环境。GPS导航系统基于来自卫星的信号确定车辆的位置。IMU是使用加速度计和陀螺仪或其它测量仪器的组合来测量和报告车辆的运动数据(例如,速度、加速度、运动方向、速度、角速度等)的电子设备。
车辆控制器130控制车辆的物理移动,例如,加速、方向改变、起动、停止等。车辆控制器130包括用于控制加速器、制动器、方向盘等的机械。车辆计算系统120连续地向车辆控制器130提供控制信号,从而使自主车辆沿着所选择的路线行驶。
车辆计算系统120执行各种任务,包括处理由传感器收集的数据以及从在线HD地图系统110接收的地图数据。车辆计算系统120还处理用于发送到在线HD地图系统110的数据。车辆计算系统的细节在图2示出,并且结合图2进一步描述。
车辆计算系统120与在线HD地图系统110之间的交互通常经由网络(例如,经由互联网)来执行。网络使得能够在车辆计算系统120和在线HD地图系统110之间进行通信。在一个实施例中,网络使用标准通信技术和/或协议。可以使用包括超文本标记语言(HTML)、可扩展标记语言(XML)等的技术和/或格式来表示通过网络交换的数据。另外,可以使用诸如安全套接字层(SSL)、传输层安全性(TLS)、虚拟专用网络(VPN)、互联网协议安全性(IPsec)等的传统加密技术来加密全部或部分链路。在另一实施方式中,实体可以使用定制和/或专用数据通信技术来代替上述技术或作为上述技术的补充。
车辆计算系统
图2示出了根据一个实施例的车辆计算机系统的系统架构。车辆计算系统120包括感知模块210、预测模块215、规划模块220、控制模块225、本地HD地图存储器275、HD地图系统接口280、和HD地图应用编程接口(API)205。车辆计算系统120的各种模块处理各种类型的数据,包括传感器数据230、行为模型235、路线240和物理约束245。在其它实施例中,车辆计算系统120可具有更多或更少的模块。描述为由特定模块实施的功能性可由其它模块实施。
感知模块210从车辆150的传感器105接收传感器数据230。这包括由汽车的相机、激光雷达(lidar)、IMU、GPS导航系统等收集的数据。传感器数据230可包括RGB图像、激光雷达扫描点云、雷达图像、GPS数据和描述由IMU捕获的车辆运动的数据。RGB图像表示包括从安装在车辆上的相机捕获的视频帧的图像或视频流。激光雷达扫描表示从安装在车辆150上的各种激光雷达收集的点云。感知模块210使用传感器数据来确定车辆周围有什么物体、车辆正在其上行驶的道路的细节等。感知模块210处理传感器数据230以填充存储传感器数据的数据结构,并将信息提供给预测模块215。
预测模块215使用所感知的对象的行为模型来解释由感知模块提供的数据,以确定对象是正在移动还是可能移动。例如,预测模块215可以确定表示道路标志的对象不可能移动,而被识别为车辆、人等的对象正在移动或可能移动。预测模块215使用各种类型的对象的行为模型235来确定它们是否可能移动。预测模块215将各种对象的预测提供给规划模块200,以规划车辆接下来需要采取的后续动作。
规划模块200从预测模块215接收描述车辆周围环境的信息、确定车辆目的地的路线240、以及车辆应当采取以到达目的地的路径。规划模块200使用来自预测模块215的信息和路线240来规划车辆需要在短时间间隔内(例如,在接下来的几秒内)采取的一系列动作。在一个实施例中,规划模块200将一系列动作指定为表示车辆接下来需要驶过的附近位置的一个或多个点。规划模块200向控制模块225提供包括车辆要采取的一系列动作的计划的细节。计划可以确定车辆的后续动作,例如,车辆是否执行车道变换、转弯、通过提高速度或减速的加速度等。
控制模块225基于从规划模块200接收的计划确定用于发送到车辆的控制器130的控制信号。例如,如果车辆当前处于点A并且该计划规定车辆接下来应当行进到附近的点B,则控制模块225确定用于控制器130的控制信号,所述控制信号将使得车辆以安全和平滑的方式从点A行进到点B,例如,不需要任何急转弯或从点A到点B的Z字形路径。车辆从点A到点B的路径可能取决于车辆的当前速度和方向以及点B相对于点A的位置。例如,如果车辆的当前速度较高,则与缓慢行驶的车辆相比,车辆可以进行更宽的转弯。
控制模块225还接收物理约束245作为输入。这些包括该特定车辆的物理能力。例如,具有特定品牌和型号的汽车可能能够安全地进行某些类型的车辆运动,例如加速,并且具有不同品牌和型号的另一汽车可能不能安全地进行的转弯。控制模块225在确定控制信号时结合这些物理约束。控制模块225将控制信号发送到车辆控制器130,车辆控制器130使车辆执行致使车辆按计划移动的指定的一系列动作。每隔几秒就会不断重复上述步骤,使车辆沿着为车辆计划的路线安全行驶。
包括感知模块210、预测模块215和规划模块220的车辆计算系统120的各个模块接收地图信息以执行其各自的计算。车辆100将HD地图数据存储在本地HD地图存储器275中。车辆计算系统120的模块使用HD地图API 205与地图数据交互,HD地图API 205提供可由用于访问地图信息的模块调用的一组应用编程接口(API)。HD地图系统接口280允许车辆计算系统120经由网络(图中未示出)与在线HD地图系统110交互。本地HD地图存储器275以HD地图系统110指定的格式存储地图数据。HD地图API 205能够处理由HD地图系统110提供的地图数据格式。HD地图API 205向车辆计算系统120提供用于与HD地图数据交互的接口。HD地图API 205包括多个API,包括定位API 250、地标地图API 255、路线API 265、3D地图API270、地图更新API 285等。
定位API 250确定车辆的当前位置,例如,当车辆启动时以及当车辆沿着路线移动时。定位API 250包括确定车辆在HD地图内的准确位置的定位API。车辆计算系统120可以使用该位置作为精确的相对定位来进行其他查询,例如,在此进一步描述的特征查询、可导航空间查询和占用地图查询。本地化API接收包括由GPS提供的位置、由IMU提供的车辆运动数据、LIDAR扫描器数据和相机图像中的一个或多个的输入。本地化API返回车辆的准确位置作为纬度和经度坐标。与用作输入的GPS坐标相比,由本地化API返回的坐标更准确,例如,本地化API的输出可以具有5-10cm的精度范围。在一个实施例中,车辆计算系统120调用本地化API以使用例如10Hz频率的扫描仪数据基于LIDAR周期性地确定车辆的位置。如果GPS/IMU数据以较高速率(例如,60Hz)可用,则车辆计算系统120可调用本地化API来以该较高速率(例如,60Hz)确定车辆位置。车辆计算系统120将位置历史记录存储为内部状态,以提高后续本地化调用的准确性。位置历史记录存储从汽车被关掉/停止时的时间点起的位置的历史。本地化API 250包括生成基于HD地图指定车道的精确路线的定位路线API。本地化路线API将经由第三方地图从源到目的地的路线作为输入,并且基于HD地图生成被表示为沿着输入路线的可导航车道的连接图的高精度路线。
地标地图API 255提供车辆周围的世界的几何和语义描述,例如,车辆当前行驶的车道的各个部分的描述。地标地图API 255包括允许基于地标地图的查询的API,例如,提取车道API和提取特征API。提取车道API提供相对于车辆和提取特征API的车道信息。提取车道API接收作为输入的位置,例如,使用车辆的纬度和经度指定的车辆的位置,并返回相对于输入位置的车道信息。提取车道API可以指定距离参数,该距离参数指示相对于为其检索车道信息的输入位置的距离。提取特征API接收标识一个或多个车道元素的信息,并返回相对于指定车道元素的地标特征。对于每个地标,地标特征包括专用于地标类型的空间描述。
3D地图API 265提供对存储在本地HD地图存储器275中的道路和道路周围的各种物理对象的空间3维(3D)表示的有效访问。3D地图API 265包括提取可导航表面API和提取占用网格API。提取可导航表面API接收一个或多个车道元素的标识符作为输入,并返回指定车道元素的可导航边界。提取占用网格API接收位置作为输入,例如车辆的纬度和经度,并且返回描述道路表面的占用的信息以及在该位置附近的HD地图中可用的所有对象。描述占用的信息包括地图中被认为占用的所有位置的分层体积网格。占用网格包括在可导航区域附近(例如,在路边和颠簸处)的高分辨率的信息,以及在较不重要的区域(例如,路边之外的树木和墙壁)中的相对低分辨率的信息。提取占用网格API对于检测障碍物和在必要时改变方向是有用的。
3D地图API还包括地图更新API,例如下载地图更新API和上载地图更新API。下载地图更新API接收规划路线标识符作为输入,并下载与所有规划路线或特定规划路线相关的数据的地图更新。上载地图更新API将由车辆计算系统120收集的数据上载到在线HD地图系统110。这允许在线HD地图系统110基于由沿着各种路线行驶的车辆的传感器观察到的地图数据的变化来保持在线HD地图系统110中存储的HD地图数据是最新的。
当车辆沿着路线行驶时,路线API 270返回包括源和目的地之间的完整路线和路线的部分的路线信息。3D地图API 365允许查询HD地图。路由API 270包括添加规划路线API和提取规划路线API。添加规划路线API向在线HD地图系统110提供描述规划路线的信息,使得描述相关HD地图的信息可由车辆计算系统120下载并保持最新。添加规划路线API接收使用以纬度和经度表示的折线指定的路线以及指定可删除路线数据之后的时间段的存活时间(TTL)参数作为输入。因此,添加规划路线API允许车辆指示车辆在不久的将来计划采取的路线作为自主行程。添加规划路线API将路线与HD地图对准,记录路线及其TTL值,并确保存储在车辆计算系统120中的路线的HD地图数据是最新的。获取规划路线API返回规划路线的列表,并且提供描述由路线标识符标识的路线的信息。
地图更新API 285管理存储在该在线HD地图系统110中的针对本地HD地图存储器275和针对HD地图存储器165的与地图数据的更新有关的操作。因此,车辆计算系统120中的模块调用地图更新API 285以在必要时将数据从在线HD地图系统110下载到车辆计算系统120以存储在本地HD地图存储器275中。地图更新API 285还允许车辆计算系统120确定由车辆传感器105监测的信息是否指示由在线HD地图系统110提供的地图信息中的差异,并将可导致在线HD地图系统110更新存储在HD地图存储器165中的地图数据的数据上载到在线HD地图系统110,该地图数据被提供给其它车辆150。
图4示出了根据一个实施例的车辆计算系统的HD Map API中的指令的各个层。不同的车辆制造商具有用于从车辆传感器105接收信息和用于控制车辆控制器130的不同指令。此外,不同供应商提供具有自主驾驶能力的不同计算平台,例如车辆传感器数据的收集和分析。用于自主车辆的计算平台的示例包括由供应商提供的平台,诸如NVIDIA、QUALCOMM和INTEL。这些平台提供用于自主车辆制造商在制造自主车辆时使用的功能。车辆制造商可以使用用于自主车辆的任何一个或多个计算平台。在线HD地图系统110提供用于基于专用于车辆制造商的指令和专用于车辆供应商特定平台的指令来处理HD地图的库。该库提供对HD地图数据的访问并且允许车辆与在线HD地图系统110交互。
如图3中所示,在一个实施例中,HD地图API被实现为包括车辆制造商适配器310、计算机平台适配器320和公共HD地图API层330的库。公共HD地图API层包括可以跨多个车辆计算平台和车辆制造商使用的通用指令。计算平台适配器320包括专用于每个计算机平台的指令。例如,公共HD Map API层330可以调用计算平台适配器320来从由特定计算平台支持的传感器接收数据。车辆制造商适配器310包括专用于车辆制造商的指令。例如,公共HD地图API层330可以调用由车辆制造商适配器310提供的功能以向车辆控制器130发送特定控制指令。
在线HD地图系统110存储用于多个计算机平台的计算平台适配器320和用于多个车辆制造商的车辆制造商适配器310。在线HD地图系统110确定用于特定自主车辆的特定车辆制造商和特定计算平台。在线HD地图系统110选择用于特定车辆制造商的车辆制造商适配器310和用于该特定车辆的特定计算平台的计算平台适配器320。在线HD地图系统110将所选择的车辆制造商适配器310和所选择的计算平台适配器320的指令发送到该特定自主车辆的车辆计算系统120。该特定自主车辆的车辆计算系统120安装所接收的车辆制造商适配器310和计算平台适配器320。车辆计算系统120周期性地检查在线HD地图系统110是否具有对安装的车辆制造商适配器310和计算平台适配器320的更新。如果与安装在车辆上的版本相比更近的更新可用,则车辆计算系统120请求和接收最新更新并安装该更新。
HD地图系统架构
图4示出了根据一个实施例的HD地图系统的系统架构。在线HD地图系统110包括地图创建模块410、地图更新模块420、地图数据编码模块430、负载平衡模块440、地图精度管理模块、车辆接口模块、和HD地图存储器165。在线HD地图系统110的其他实施例可以包括比图4所示更多或更少的模块。指示为由特定模块执行的功能性可由其它模块实施。在一个实施例中,在线HD地图系统110可以是包括多个处理器的分布式系统。
地图创建模块410根据从沿着各种路线行驶的多个车辆收集的地图数据来创建地图。地图更新模块420通过从最近沿着地图信息改变的路线行驶的车辆接收更近的信息来更新先前计算的地图数据。例如,如果某些道路标志已经改变或者车道信息已经由于区域中的建设而改变,则地图更新模块420相应地更新地图。地图数据编码模块430编码地图数据以能够高效地存储数据并且高效地向车辆150发送所需的地图数据。负载平衡模块440平衡跨车辆的负载,以确保从车辆接收数据的请求在不同车辆上均匀分布。即使从各个车辆接收的信息可能不具有高精度,地图精度管理模块450也使用各种技术来维持地图数据的高精度。
图5示出了根据一个实施例的HD地图的组件。HD地图510包括多个地理区域的地图。地理区域的HD地图510包括地标地图(LMap)520和占用地图(OMap)530。地标地图520包括描述车道的信息,包括车道的空间位置和关于每个车道的语义信息。车道的空间位置包括在高预见下(例如,在10cm精度或以下)在纬度、经度和海拔上的几何位置。车道的语义信息包括诸如方向、速度、车道类型(例如,用于直行的车道、左转车道、右转车道、出口车道等)、对向左交叉的限制、与其他车道的连通性等的限制。地标地图520还可以包括描述停车线、让行线、十字路口的空间位置、安全可导航空间、减速带、路缘和道路标志的空间位置的信息,该信息包括与驾驶限制相关的所有标志的空间位置和类型。HD地图510中描述的道路标志的示例包括停止标志、交通灯、速度限制、单向、禁止进入、让位(车辆、行人、动物)等。
占用地图530包括道路和道路周围的所有物理对象的空间3维(3D)表示。存储在占用地图530中的数据在本文中也被称为占用网格数据。3D表示可以与指示对象存在于该位置处的可能性的置信度分值相关联。占用地图530可以以多种其他方式来表示。在一个实施例中,占用地图530被表示为覆盖表面的3D网格几何形状(三角形的集合)。在另一实施例中,占用地图530被表示为覆盖表面的3D点的集合。在另一实施例中,使用5-10cm分辨率的单元的3D体积网格来表示占用地图530。每个单元指示在该单元处是否存在表面,并且如果该表面存在,则指示该表面定向的方向。
与地标地图520相比,占用地图530可以占用大量的存储空间。例如,1GB/Mile的数据可被占用地图530使用,导致美国地图(包括400万英里的道路)占用4x1015字节或4个字节。因此,在线HD地图系统110和车辆计算系统120使用数据压缩技术,以便能够存储和传送地图数据,从而降低存储和传输成本。因此,本文公开的技术使得自主车辆的自驾驶成为可能。
在一个实施例中,HD地图510不需要或不依赖于通常包括在地图中的数据,例如地址、道路名称、地理编码地址的能力以及计算地名或地址之间的路线的能力。车辆计算系统120或在线HD地图系统110访问其他地图系统,例如,提供地图服务的任何供应商,以获得该信息。因此,车辆计算系统120或在线HD地图系统110接收从诸如地图服务的工具到路线中的导航指令,并且基于HD地图信息将该信息转换成路线。
HD地图中的地理区域
在线HD地图系统110将大的物理区域划分成地理区域并存储每个地理区域的表示。每个地理区域表示由几何形状(例如,矩形或正方形)界定的连续区域。在一个实施例中,在线HD地图系统110将物理区域划分成大小相同的地理区域,而与存储每个地理区域的表示所需的数据量无关。在另一实施例中,在线HD地图系统110将物理区域划分成不同大小的地理区域,其中基于表示该地理区域所需的信息量来确定每个地理区域的大小。例如,与表示具有很少街道的人口稀少区域的地理区域相比,表示具有大量街道的人口密集区域的地理区域表示较小的物理区域。因此,在该实施例中,在线HD地图系统110基于存储与HD地图相关的物理区域的各种元素所需的信息量的估计来确定地理区域的大小。
在一个实施例中,在线HD地图系统110使用对象或数据记录来表示地理区域,该对象或数据记录包括各种属性,包括地理区域的唯一标识符、地理区域的唯一名称、地理区域的边界的描述(例如,使用纬度和经度坐标的边界框)、以及地标特征和占用网格数据的集合。
图6A至图6B示出了根据一个实施例的在HD地图中定义的地理区域。图6A示出了正方形地理区域610a。图6B示出了两个相邻的地理区域610a和610b。在线HD地图系统110将数据存储在地理区域的表示中,该地理区域允许在车辆驶过地理区域边界时从一个地理区域平滑地过渡到另一个地理区域。
根据一个实施例,如图6A和图6B所示,每个地理区域在其周围具有预定宽度的缓冲区。缓冲区包括在地理区域的所有4个边周围的冗余地图数据(在地理区域由矩形界定的情况下)。图6A示出了地理区域610a周围50米缓冲区的边界620和地理区域610a周围100米缓冲区的边界630。当车辆越过该缓冲器内的阈值距离时,车辆计算系统120将车辆的当前地理区域从一个地理区域切换到相邻地理区域。例如,如图6B中所示,车辆在地理区域610a中的位置650a处启动。车辆沿着路线行进以到达位置650b,在位置650b处车辆穿过地理区域610的边界但停留在缓冲区的边界620内。因此,车辆计算系统120继续使用地理区域610a作为车辆的当前地理区域。一旦车辆在位置650c处越过缓冲区的边界620,车辆计算系统120就将车辆的当前地理区域从610a切换到地理区域610b。缓冲区的使用防止了由于车辆沿着紧密跟踪地理区域的边界的路线行驶而导致的车辆的当前地理区域的快速切换。
HD地图中的车道表示
HD地图系统100在HD地图中表示街道的车道信息。尽管本文描述的实施例涉及街道,但所述技术可应用于高速公路、小巷、街道、林荫大道或车辆可在其上行进的任何其它路径。HD地图系统100使用车道作为用于路线选择和用于车辆定位的参照系。由HD地图系统100表示的车道包括明确标记的车道(例如,白色和黄色条纹车道)、隐含的车道(例如,在没有线或路缘但具有两个行驶方向的乡村道路上)以及充当车道的隐含路径(例如,当从另一车道进入车道时转弯的汽车形成的路径)。HD地图系统100还存储与车道相关的信息,例如与车道相关的路标和交通灯等地标特征、与用于障碍物检测的车道相关的占用网格、以及与车道相关的可导航空间,从而当车辆必须做出非规划地移出车道时,车辆可以在紧急情况下有效地规划/反应。因此,HD地图系统100存储车道网络的表示,以允许车辆规划源和目的地之间的合法路径并添加用于车辆的实时感测和控制的参照系。HD地图系统100存储信息并提供API,该API允许车辆确定车辆当前所在的车道、相对于车道几何形状的精确车辆位置、以及相对于车道以及相邻和连接的车道的所有相关特征/数据。
图7示出了根据实施例的HD地图中的车道表示。图7示出了在交通交叉口处的车辆710。HD地图系统100向车辆提供对与车辆的自主驾驶相关的地图数据的访问。这包括例如与车道相关联但可能不是与车辆最接近的特征的特征720a和720b。因此,HD地图系统100存储表示车道与特征的关系的数据的以车道为中心的表示,使得车辆可以有效地提取给定车道的特征。
HD地图系统100将车道的部分表示为车道元素。车道元素指定车道的边界和各种约束,包括车辆可以在车道元素内行驶的合法方向、车辆可以在车道元素内行驶的速度、车道元素是仅用于左转还是仅用于右转等等。HD地图系统100将车道元素表示为单个车辆车道的连续几何部分。HD地图系统100存储表示车道元素的对象或数据结构,车道元素包括表示车道的几何边界的信息;沿着车道的驾驶方向;用于在车道中驾驶的车辆限制,例如速度限制,与包括进入和离开车道的连接车道的关系;终止限制,例如车道是否在停车线、让位标志或减速带处结束;以及与和自主驾驶相关的道路特征(例如,交通灯位置、道路标志位置等)的关系。
由HD地图系统100表示的车道元素的示例包括高速公路上的右车道的一部分、道路上的车道的一部分、左转弯车道、从左转弯车道到另一车道的转弯、从入口匝道到出口匝道上的出口车道的合并车道、以及车道。HD地图系统100表示使用两个车道元素的单车道道路,每个方向一个车道元素。HD地图系统100表示类似于单车道道路共享的中间转向车道。
图8A至图8B示出了根据一个实施例的车道元素以及HD地图中的车道元素之间的关系。图8A示出了道路中的T形交叉点的示例,其示出了经由转向车道810b连接到车道元素810c并且经由转向车道810d连接到车道810e的车道元素810a。图8B示出了道路中的Y形交叉点的示例,其示出直接连接到车道810h且经由车道810g连接到车道810i的标签810f。HD地图系统100将从源位置到目的地位置的路线确定为可横穿以从源位置到达目的地位置的一系列连接车道元素。
可视化模块的系统架构
图9示出了根据一个实施例的可视化模块290的系统架构。可视化模块包括位置确定模块910、图像生成模块920、传感器数据存储器930、传感器数据转换模块970和运动学模块960。在其他实施例中,可视化模块290可包括比图9中所示的模块更多或更少的模块。指示为由特定模块执行的功能性可由除本文所指示的那些模块之外的其他模块执行。
位置确定模块910确定车辆的位置。位置确定模块910执行定位以确定车辆的当前姿态。车辆的姿态包括车辆的位置和定向。位置确定模块910可使用传感器数据执行定位,例如,通过将相机图像和激光雷达扫描与HD地图数据进行比较,以确定车辆的姿态。位置确定模块910可使用其他技术来执行定位,例如,通过使用由运动学模块960处理的运动学方程。例如,位置确定模块910使用在先前时间点确定的先前位置并使用包括由IMU确定的速度和/或加速度的运动参数来确定当前位置。在一个实施例中,位置确定模块910基于多种技术确定车辆的当前姿态,并且例如使用卡尔曼滤波技术来组合结果,以确定车辆姿态的准确估计。在2018年12月3日提交的序列号为16/208,026的专利申请中描述了用于确定车辆姿态的技术,该专利申请的全部内容通过引用并入本文。车辆的姿态在本文中也可称为车辆的位置。
位置确定模块910调用运动学模块960以确定车辆在可能与当前时间点不同的时间点的位置。例如,位置确定模块910可接收指示捕获传感器数据的时间点的时间戳,并确定车辆在该时间点的姿态。位置确定模块910使用由运动学模块960确定的车辆的运动参数来确定车辆在任何指定时间点的姿态。
传感器数据存储器930存储由车辆的传感器捕获的传感器数据。传感器数据存储器930存储传感器数据以及描述传感器数据的元数据。传感器数据可包括由相机捕获的图像、由激光雷达捕获的激光雷达扫描等。元数据描述传感器数据,并且可以包括标识捕获传感器数据的传感器的信息和表示传感器数据捕获时间的时间戳。
运动学模块960接收车辆在时间t1(例如当前时间)的姿态P1,并且确定车辆在另一个时间t2(例如,捕获特定传感器数据的时间)的姿态P2。运动学模块960基于运动学方程执行计算,以确定车辆在特定时间的姿态。在一个实施例中,运动学模块960确定描述车辆速度的速度参数,并使用速度参数确定车辆行驶的距离。在一个实施例中,运动学模块960使用等式(1)来确定车辆的位置,假设恒定加速度:
在等式(1)中,p表示车辆的当前位置,a表示加速度,t表示时间,p0表示车辆在先前时间t=0的位置,v0表示车辆在先前时间t=0的速度。在一个实施例中,运动学模块960接收激光雷达点云中的每列点的时间戳,并确定对应于每个时间戳的车辆位置。可替代地,运动学模块960接收表示相机图像的捕获时间的时间戳,并确定对应于该时间戳的车辆位置。
在一个实施例中,运动学模块960确定具有三个分量的线性速度参数:沿着X轴的分量、沿着Y轴的分量和沿着Z轴的分量。运动学模块960确定具有三个分量的角速度:滚动分量、偏航分量和俯仰分量。因此,对于每个时间点,运动学模块确定六个速度参数。
在一些实施例中,运动学模块960基于在时间跨度(从t0到t2)的持续时间内恒定加速度的假设来执行计算。由于激光雷达通常以相对较高的频率(例如,10Hz)收集数据,因此假设恒定的加速度不会导致在感兴趣的小时间窗口期间精度的显著损失。该模型提供比简单的基于恒速模型的模型更高的精度。由于在单个激光雷达扫描的过程中当转弯、停止或加速时移动车辆的平移速度和旋转速度的显著变化,基于恒定速度模型的模型不满足建立HD图的精度要求。例如,当转弯时,车辆可以在几秒内完成90度转弯。如果系统假定线性转向速度,则计算导致大的角度误差,这对于高范围的激光测量导致大的距离误差(>10cm)。
在一些实施例中,运动学模块960使用更高级的模型,例如加速度的高阶参数化。这些模型具有更高的复杂性并且需要更多的参数。假设平移加速度和角加速度在时间间隔(t0,t1)和(t1,t2),内是恒定的,运动学模块910使用下面的等式6a、6b、6c和6d来经由插值计算在任意时间t处的线速度和角速度。
运动学模块960使用通过分别对等式6a、6b、6c和6d进行积分而获得的以下等式7a、7b、7c和7d来如下计算任意时间戳t处的位置(表示为x(t))和滚转、俯仰、偏航值(表示为R(t))。
运动学模块960使用如下公式(8)表示的4x4变换矩阵M(t)执行积分平移和旋转。
其中,x(t)=[x1,x2,x3]T,R(t)=[γ,β,α],其中γ,β,α是相应的滚转、俯仰、偏航值。
图像生成模块920生成用于显示的图像并将其发送用于显示。图像生成模块920通过将传感器数据与HD地图数据(例如,与来自HD地图的区域的点云表示相组合的相机图像)相组合来生成图像。图像生成模块920可通过组合多种类型的传感器数据来生成图像,例如,与激光雷达扫描组合的照相机图像。图像生成模块920可接收表示不能在HD地图中退出的对象的点云,并将它们添加到传感器数据,例如,相机图像。因此,图像生成模块920生成显示虚拟对象的图像,例如,可能不存在于真实世界中的虚拟广告牌。所生成的图像可以经由车辆内或车辆外的显示设备来显示。例如,图像生成模块920可以生成图像并将其发送到客户端设备,例如,虚拟现实系统的移动设备或头戴式耳机。
图像生成模块包括图像覆盖模块925、语义过滤模块940、反向渲染模块950。图像覆盖模块925覆盖用于生成图像的不同类型的数据。例如,图像覆盖模块925可以例如通过使用点云将HD地图数据中表示的对象覆盖在相机图像上,来将HD地图数据覆盖在相机图像上。图像覆盖模块925可例如通过将激光雷达扫描覆盖在相机图像上,将从一个传感器接收的传感器数据覆盖在从另一传感器接收的传感数据上。图像覆盖模块925可将HD地图数据中可能不存在的对象(例如,虚拟对象)覆盖在传感器数据(例如相机图像)上。
反向渲染模块950基于在此描述的处理生成用于显示的HD地图的自底向上视图。语义过滤模块940基于这里描述的过程从HD图中过滤满足特定标准的对象,并且生成显示剩余场景的图像。在此进一步描述由这些模块执行的过程。
语义标记模块980创建并存储描述用于OMAP中的三维对象的语义标记的元数据。元数据描述具有语义标签的真实世界对象。语义标签的一些示例包括用诸如“植物”或“树”之类的语义标签来标记树。语义标记模块980使用存储的描述对象的元数据以及来自OMap的对象与存储的元数据和相关联的对象的匹配来确定用于来自OMap的所述对象的语义标记。语义标记模块980存储与关联对象相关的语义标记。在一些实施例中,用户指定对象的部分或全部语义标签。例如,用户可以将其房子标记为“家”,或者将其工作场所标记为“办公室”。在一些实施例中,例如经由众包从多个用户接收语义标签并将其收集在数据库中。在一些实施例中,语义标记模块980使用机器学习(例如,神经网络)确定各种对象的标记。在一个实施例中,语义标记模块980使用卷积神经网络,该卷积神经网络被配置为接收与对象相对应的一组3D点,并预测输入对象的一个或多个标记。在给定对象的HD地图表示的情况下,神经网络被训练成预测特定类型的标签,对象包括表示所述对象的一组3D点。由神经网络预测的结果被存储在地图数据存储器中。由神经网络预测的结果可由用户(例如,专家)验证。
基于高清晰度地图的可视化
图10是示出根据一个实施例的用于渲染覆盖在传感器数据230上的地图数据的图像的过程的流程图。流程图中所示的步骤可以以与这里所指示的顺序不同的顺序来执行。此外,这些步骤可以由与这里指示的模块不同的模块来执行。
车辆150的车辆计算系统120接收1010由车辆150的传感器捕获的传感器数据230。传感器数据230表示当车辆150沿路线行驶时车辆150的周围环境。在一些实施例中,传感器数据230是在车辆150沿路线行驶时捕获和处理的实时数据。在其他实施例中,传感器数据230被存储在传感器数据存储930中并被离线处理。捕获传感器数据230的车辆传感器105被校准,使得车辆传感器106上的坐标可被映射到车辆中心或相机中心的坐标系统中的坐标。
车辆计算系统120的位置确定模块910基于传感器数据230执行1020定位,以确定车辆150在特定时间的位置。定位表示确定车辆150相对于HD地图510的姿态的过程。当车辆沿路线行驶时,重复定位过程。在一些实施例中,以预定速率(例如在一秒内多次)周期性地重复定位过程。
车辆计算系统120确定1030传感器数据捕获时间。传感器数据捕获时间表示传感器数据230的捕获时间。对于某些传感器,在时间间隔期间例如通过滚动快门相机或激光雷达来捕获数据。这种传感器的传感器数据捕获时间表示与数据捕获相关联的时间,例如在捕获数据的间隔结束时的时间。在一个实施例中,传感器数据捕获时间是由传感器连同传感器数据一起报告的时间。当车辆捕获传感器数据230时,车辆计算系统120记录时间。传感器数据230被存储在传感器数据存储器中,并且车辆计算系统120访问传感器数据存储器以确定与传感器数据210相关联的时间。
车辆计算系统120确定1040第二位置。第二位置是车辆在传感器数据采集时间的位置。基于车辆的当前位置和运动参数或运动估计,在传感器数据的采集时间与确定车辆处于第一位置的特定时间之间确定第二位置。在一个实施例中,车辆计算系统120从自主车辆的惯性测量单元获得运动参数。由车辆计算系统120使用的运动参数的示例包括速度(包括线速度和角速度)以及加速度(包括线加速度和角加速度)。在其他实施例中,车辆可访问更多或更少的运动参数。作为示例,如果车辆在第一位置以每秒10米的速度行驶并且没有加速,并且车辆在3秒后通过第二位置,则车辆将已经移动大约30米。在一个实施例中,车辆计算系统120使用积分技术将加速度转换成速度参数或速度参数转换成距离参数。车辆计算系统120使用计算出的距离来确定相对于另一位置的位置,例如,从当前时间的预定位置开始在传感器数据捕获时间的位置。
车辆计算系统120访问1050与围绕车辆的第二位置的场景相对应的地图数据。地图数据是HD地图510数据,其包含高分辨率信息,其允许车辆能够精确地导航真实世界并相对于HD地图510定位其自身。车辆计算系统120使用地图数据以基于所访问的地图数据来渲染1060场景的图像。该场景是车辆中的用户将在该位置看到的车辆的第二位置周围的视图。在一些实施例中,场景包括在HD地图中表示的一个或多个对象(也称为特征),例如建筑物、道路标志、交通灯、道路路段和道路标记。
车辆计算系统120通过将传感器数据230覆盖在场景的渲染图像上来生成1070组合图像。传感器数据可包括相机图像或激光雷达扫描。在一个实施例中,车辆计算系统120组合多个传感器数据,例如,相机图像以及图像中的激光雷达扫描。组合图像可示出道路上车道之间的标记或车辆的目的地的位置。在一些实施例中,车辆计算系统120生成组合图像以用与场景中相应对象的颜色不同的颜色来示出对象或特征。
在一些实施例中,组合图像诸如通过向广告牌或其他标志添加信息来示出关于交通或广告的信息。在其他实施例中,覆盖的传感器数据示出关于车辆的统计,诸如平均速度、每加仑平均英里和平均行驶时间。
车辆计算系统120发送1080所生成的图像以在客户端设备上显示。在一些实施例中,在客户端设备上的用户界面上显示所生成的图像。在其他实施例中,所生成的图像在车辆内显示在仪表板或挡风玻璃上的屏幕上。在一些实施例中,用户可以改变图像以移动周围环境的视图。
在一些实施例中,基于从车辆的惯性测量单元获得的运动参数来确定车辆(例如自主车辆)的运动估计。在其他实施例中,运动参数是其他运动参数,例如速度、加速度或其任何组合。
在一些实施例中,传感器数据是由安装在车辆上的相机捕获的相机图像数据。在其他实施例中,传感器数据是由安装在车辆上的激光雷达传感器捕获的一列激光雷达扫描。在其他实施例中,传感器数据可以是相机和激光雷达数据的组合。
在一些实施例中,车辆计算系统120重复在图10的流程图中所示的步骤。当车辆沿着路线行驶时,重复这些步骤以动态地更新所生成的图像。在一些实施例中,存在比在图10的流程图中示出的更多的步骤。
在一些实施例中,所渲染的视图显示一个或多个对象。一个或多个对象对应于传感器数据中所示的一个或多个对象,并且所渲染的视图以与传感器数据中示出的多个对象中的一个对象的颜色不同的颜色来示出所述一个或多个对象。例如,车辆计算系统120可以用橙色示出路缘的边缘或者用蓝色示出车道线。图14中进一步示出了这种情况的一个示例。
在一些实施例中,车辆计算系统120还在渲染不存在于场景中的对象的第二图像之前确定描述场景的信息。然后,车辆计算系统120将第二图像覆盖在所生成的图像上。例如,车辆计算系统120可将指示车辆目的地的点覆盖在所生成的图像上。图14中进一步示出了这种情况的一个示例。
在一些实施例中,第二图像包括描述车辆路线的信息。该信息可以包括标志、标记、消息或其任意组合。例如,第二图像可以示出速度限制标志或关于即将到来的交通延迟的消息。
在一些实施例中,传感器数据表示激光雷达扫描,其显示为代表点(points)的点(dots)。车辆计算系统120将点按与点相对应的点相对于车辆的距离缩放。表示更靠近车辆的点的点比表示更远离车辆的点大。
在一些实施例中,车辆计算系统120还将生成的图像发送到远程显示设备以显示视频。视频显示了当车辆移动时从车辆的视角观察到的场景。
在一些实施例中,车辆计算系统120还将与HD地图数据中的对象相对应的渲染视图与传感器数据中对象的对应视图进行比较。然后,车辆计算系统120确定对象的渲染视图和传感器数据中对象的对应视图中的误差的估计。响应于指示大于阈值误差的误差估计,车辆计算系统120执行校正动作。
在一些实施例中,车辆计算系统120通过向设备发送报警消息来执行校正动作。在其他实施例中,车辆计算系统120通过在位置确定模块910中改变用于对车辆执行定位的定位技术来执行校正动作。在其他实施例中,车辆计算系统120通过记录指示定位误差的消息来执行校正动作。
图11是根据一个实施例的当定位结果是差质量时通过将地图数据与传感器数据组合而获得的图像的截屏。通过将表示HD地图中的对象的图像与传感器数据(例如,由车辆的相机拍摄的图像)组合而获得图像1100。例如,形状1110a和形状1110b表示在HD地图数据(例如,OMap数据)中表示的交通灯。由车辆的相机获得的图像还示出了相应的交通灯1120a和1120b。使用提供低精度的技术来执行车辆的定位,例如使用GPS(全球定位系统)数据。图11示出了来自HD地图的每个对象的表示与相机图像中的对象的对应表示相距至少阈值距离。类似地,表示道路特征(例如,HD地图中的人行横道)的线1130不与图像的对应线1140重叠。类似地,诸如来自HD地图的车道线1150的特征不与相机图像中的车道线1160的表示重叠。这样的图像1100示出了车辆的定位不是非常精确,并且如果使用这样的定位精度来执行自主车辆的导航,则可能导致事故。
图12是根据一个实施例的当定位结果是良好质量时通过将地图数据与传感器数据组合而获得的图像的截屏。该图像使用具有高精度的定位。因此,HD地图的特征或对象在相机图像中其相应表示的阈值距离内。结果,HD地图的特征或对象在相机图像中显著地重叠其相应表示。例如,来自HD地图的交通灯的表示1210a、1210b分别与相机图像中的交通灯的表示1220a、1220b显著重叠。类似地,表示HD地图中的诸如人行横道的道路特征的线1230与图像的对应线1240显著重叠。类似地,诸如来自HD地图的车道线1250之类的特征与相机图像中的车道线1260的表示显著重叠。这样的图像1200示出了车辆的定位是精确的并且将导致自主车辆的正确导航,其中由定位引起的误差的可能性非常小。
图13是根据一个实施例的示出由车辆的传感器捕获的传感器数据的图像的截图。车辆计算机系统可以将来自HD地图数据的对象以及在图像1300上不存在于真实世界中的虚拟对象重叠。
图14是根据一个实施例的示出由车辆的传感器捕获的传感器数据与示出附加信息的图像组合的图像的截图。图像1400示出了具有特征重叠的相机图像1300的数据,例如,来自HD地图的特征,诸如车道线1420或在真实世界中不存在的特征1410,诸如虚拟广告牌。
基于高清晰地图数据的图像反向渲染
图15是示出根据一个实施例的用于在HD地图数据中反向渲染对象的过程的流程图。流程图中所示的步骤可以以与这里所指示的顺序不同的顺序来执行。此外,这些步骤可以由与这里指示的模块不同的模块来执行。
车辆计算系统120从车辆接收1510传感器数据230。传感器数据230包括关于车辆路线的信息。在一些实施例中,传感器数据230是实时数据,这意味着在车辆沿路线行驶时捕获传感器数据时处理传感器数据。在其他实施例中,离线处理存储在传感器数据存储器930中的先前捕获的传感器数据230。捕获传感器数据230的车辆传感器105被校准,使得车辆传感器106上的坐标可被映射到车辆中心或相机中心的坐标系统中的坐标。
车辆计算系统120基于传感器数据执行1520定位以确定车辆的姿态。当车辆沿路线行驶时,重复定位过程。在一些实施例中,以预定速率(例如在一秒内多次)周期性地重复定位过程。
车辆计算系统120访问1530车辆周围区域的HD地图数据,例如,OMap530数据,其是静态世界的三维体积网格表示。车辆计算系统120识别1540地图数据中的参考点。参考点可以选择在高度上的点,该高度至少是车辆的纬度/经度处的地平面之上的阈值。阈值高度大于围绕自主车辆的当前位置的场景中的对象(例如,树木和建筑物)的高度,使得可以在视图中看到所有这些对象。在另一实施例中,参考点更接近地平面,例如,位于车辆上的点。
车辆计算机系统120选择HD地图的对象上的点以在图像中显示。在一个实施例中,车辆计算系统120选择多个角度。对于多个角度中的每个角度,车辆计算机系统120选择1550HD地图中示出的对象上的点。选择对象是以该角度沿着穿过地图数据的线距离参考点最远的对象。一些角度可以与参考点和对象之间的一个或多个附加对象相关联。如果观察者从参考点观察所选择的点,则这些附加的对象将阻碍从参考点对对象上的所选择点的观察,因为它们在参考点的视线内。然而,由于车辆计算系统120具有描述给定地理区域中的所有对象的HD地图数据,所以车辆计算系统120可以渲染最远的对象并且排除阻碍从参考点观看最远对象的附加对象。结果,从图像中的视图中消除了阻碍观察对象的附加对象。
车辆计算系统120生成1560显示选择的点的图像。车辆计算系统120发送1570所生成的图像以在客户端设备上显示。在一些实施例中,在用户界面上显示所生成的图像。
图16是根据一个实施例的示出从阈值高度以上的点观看的HD地图数据的图像的截图。图18中所示的图像1600是通过正常渲染HD地图的数据获得的。场景表示围绕车辆1640的区域的俯视图。该场景示出诸如树木1610和建筑物1630的对象。诸如树木的一些对象具有阴影1630,由于视图是从顶部看的,该阴影可以被对象本身部分地或完全地阻挡。
图17是根据一个实施例的基于从阈值高度以上的点观看的HD地图数据的反向渲染的图像的截图。在图17中,渲染沿任何给定角度在HD地图中最远的对象。例如,街道可以是沿某些角度的HD地图中的最远对象。因此,车辆计算系统在图像中渲染街道并且排除阻碍街道视图的树木。结果,尽管未示出树木,但是在图像中示出了街道上的阴影1710。反向渲染视图允许观看者看到可能被其他对象阻挡的对象。
图18是根据一个实施例的示出了从阈值高度以上的点以角度观看的HD地图数据的图像的截图。图18中示出的图像是通过正常渲染HD地图的数据获得的。在图像中示出车辆1810本身。在图像中存在对象,例如树木1820,其可能阻挡诸如街道的部分之类的其他对象。
图19是根据一个实施例的基于从阈值高度以上的点以角度观看的HD地图数据的反向渲染的图像的截图。在图19中,渲染沿任何给定角度在HD地图中最远的对象。例如,街道是HD地图中沿特定角度最远的对象。因此,车辆计算系统120在图像中渲染街道1920,并排除妨碍观看街道的树木1820。结果,尽管未示出树木1820,但是在图像中示出了街道上的阴影1930。
在一个实施例中,参考点随着车辆移动而移动,并且所生成的图像被动态地更新以在车辆移动时创建场景的可视化。
因此,车辆计算系统120将生成的图像发送到远程显示设备以显示视频。视频显示了当车辆移动时从移动参考点观察到的场景。
基于高清晰地图数据的视图中3D对象的语义过滤
图20是示出根据一个实施例的用于执行基于语义标签的对象过滤的过程的流程图。流程图中所示的步骤可以以与这里所指示的顺序不同的顺序来执行。此外,这些步骤可以由与这里指示的模块不同的模块来执行。
在该实施例中,车辆计算系统120从车辆接收2010传感器数据230。传感器数据230表示车辆周围的场景。在一些实施例中,传感器数据230是实时数据,意味着在车辆计算系统120请求传感器数据230时获取传感器数据。在其他实施例中,从数据存储器收集传感器数据230。
车辆计算系统120基于传感器数据230执行2020定位以确定车辆的当前位置。定位表示确定车辆150相对于HD地图510的姿态的过程。当车辆沿路线行驶时,重复定位过程。在一些实施例中,以预定速率(例如在一秒内多次)周期性地重复定位过程。在一些实施例中,第一位置是车辆的当前位置,或者第一位置可以是该车辆的先前位置。
车辆计算系统120从地图数据库访问2030地图数据。地图数据库存储来自用描述三维对象的元数据注释的OMap 530的地图数据。元数据用语义标签描述现实世界对象。例如,地图数据库可以将树木存储在语义标签“树木”和“植物”下,或者将标志存储在“标志”、“道路标志”和/或“交通标志”下。车辆计算系统120接收2040基于语义标签的过滤准则。例如,过滤准则可以指定语义标签“树木”,以指示车辆计算系统120应当从生成的图像中过滤出树木。尽管树木可通过仅指定标签“树木”而被分类在多个语义标签下,如“树木”和“植物”,但车辆计算系统120将仅过滤出标记有“树木”的对象。如果车辆计算系统120指定了“植物”,则车辆计算系统120可过滤掉除了标记有“植物”的树木之外的树木和植物,诸如灌木或灌木。
对于源自与车辆相关联的原点的多个角度中的每个角度,车辆计算系统120从地图数据中选择2050对象上的点。该点最接近沿着以一定角度穿过地图数据的线的原点。对象的语义标签与过滤准则指定的语义标签不匹配。例如,如果过滤准则指定语义标签“树木”,则具有诸如“建筑物”、“符号”和“信号”之类的标签的对象将不能匹配过滤准则,并且将选择指定这些语义标签的点。不会选择标有“树木”的对象上的点。
车辆计算系统120基于所选择的点生成2060图像。图像从具有匹配过滤准则的语义标签的对象中排除点。结果,在所生成的图像中没有示出这些对象。车辆计算系统120发送2070所生成的图像以在客户端设备上显示。在一些实施例中,在用户界面上显示所生成的图像。
在其他实施例中,系统允许基于对象的任何元数据属性(例如,对象的高度、对象的大小和对象的颜色等)进行语义过滤。在一个实施例中,系统经由用户界面显示对象,并且经由用于过滤的用户界面接收对特定对象的选择。因此,系统示出了没有选定对象的场景。
在一个实施例中,系统显示传感器数据的组合,例如,相机图像和来自HD地图的对象的渲染图像。例如,系统显示示出由车辆的相机看到的多个对象的场景。然而,来自相机图像的一个或多个对象可基于语义过滤而被滤出,并且由来自HD地图的关于参考点在被排除对象之后的对象来替换。
在一个实施例中,系统基于语义过滤器来识别要从场景排除的对象。系统使用图10中所示的过程进行识别,以识别图像中所识别对象的部分。在一个实施例中,系统将所识别的对象投影到与相机图像相对应的2D平面。系统执行边缘检测以识别图像中的边缘,并且将来自图像的边缘与来自HD地图的所识别对象的投影的对应边缘进行匹配。系统从图像中识别最接近来自HD地图的所识别对象的对应投影的对象。系统从图像中移除该对象,并将其替换为移除对象之后的HD地图的3D对象的投影。
替代实施例
此处描述的流程包括图10、图15和图20中所示的流程,确定与参考点相关联的地理区域,例如,车辆的当前位置,并加载HD地图中表示该地理区域的部分。在一个实施例中,HD地图系统使用固定阈值距离并识别参考点的固定阈值距内的地理区域。在一个实施例中,系统根据车辆速度改变阈值距离。例如,系统对于车辆的较高速度使用较高阈值距离值。因此,阈值距离值直接与车辆的速度成比例。这允许系统在预期由以较高速度行驶的车辆到达的较大距离上可视化对象和特征。
计算机器架构
图21是示出能够从机器可读介质读取指令并在处理器(或控制器)中执行指令的示例机器的组件的框图。具体地,图21示出了计算机系统2100的示例形式的机器的图示,在计算机系统1400内可以执行用于使机器执行本文所讨论的任何一个或多个方法的指令2124(例如,软件)。在替代实施例中,机器作为独立设备操作或者可以连接(例如,联网)到其他机器。在联网部署中,机器可以作为服务器-客户端网络环境中的服务器机器或客户端机器来操作,或者作为对等(或分布式)网络环境中的对等机器来操作。
机器可以是服务器计算机、客户端计算机、个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、智能电话、网络设备、网络路由器、交换机或桥、或能够(顺序地或以其他方式)执行指令2124的任何机器,指令1424指定该机器将采取的动作。此外,虽然仅示出了单个机器,但是术语“机器”也应被理解为包括单独地或联合地执行指令2124以执行本文所讨论的任何一个或多个方法的机器的任何集合。
示例性计算机系统2100包括处理器2102(例如,中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、一个或多个专用集成电路(ASIC)、一个或多个射频集成电路(RFIC)或其任意组合)、主存储器2104和静态存储器2106,它们被配置为经由总线2108彼此通信。计算机系统2100还可以包括图形显示单元2110(例如,等离子体显示面板(PDP)、液晶显示器(LCD)、投影仪或阴极射线管(CRT))。计算机系统2100还可以包括字母数字输入设备2112(例如,键盘)、光标控制设备2114(例如,鼠标、轨迹球、操纵杆、运动传感器或其他定点仪器)、存储单元2116、信号生成设备2118(例如,扬声器)和网络接口设备2120,它们也被配置为经由总线2108进行通信。
存储单元2116包括机器可读介质2122,其上存储有实现本文描述的方法或功能中的任何一个或多个的指令2124(例如,软件)。指令2124(例如,软件)还可在其由计算机系统2100执行期间完全或至少部分地驻存于主存储器2104内或处理器2102内(例如,驻存于处理器的高速缓冲存储器内),主存储器2104和处理器2102也构成机器可读介质。指令2124(例如,软件)可经由网络接口设备2120通过网络2126发送或接收。
虽然机器可读介质2122在示例性实施例中被示出为单个介质,但是术语“机器可读介质”应当被认为包括能够存储指令(例如,指令2124)的单个介质或多个介质(例如,集中式或分布式数据库,或相关联的高速缓存和服务器)。术语“机器可读介质”还应被理解为包括能够存储用于由机器执行的指令(例如,指令2124)并且使得机器执行本文公开的任何一个或多个方法的任何介质。术语“机器可读介质”包括但不限于固态存储器、光学介质和磁介质形式的数据储存库。
其他配置考虑因素
本发明的实施例的前述描述是出于说明的目的而呈现的;其并非旨在穷举本发明或将本发明限制于所公开的精确形式。相关领域的技术人员可以理解,根据上述公开内容,许多修改和变化是可能的。
例如,尽管这里描述的技术应用于自主车辆,但是该技术也可以应用于其他应用,例如,用于为具有驾驶员的车辆显示HD地图,用于在诸如移动电话、膝上型电脑、平板电脑或具有显示屏的任何计算设备的客户端设备的显示器上显示HD地图。本文中所显示的技术还可应用于出于计算机模拟(例如,在计算机游戏等中)的目的而显示地图。
本说明书的一些部分根据算法和对信息的操作的符号表示来描述本发明的实施例。数据处理领域的技术人员通常使用这些算法描述和表示来将其工作的实质有效地传达给本领域的其他技术人员。虽然在功能上、计算上或逻辑上描述了这些操作,但是这些操作被理解为由计算机程序或等效电路、微码等来实现。此外,在不丧失一般性的情况下,有时将这些操作布置称为模块也被证明是方便的。所描述的操作及其相关联的模块可体现为软件、固件、硬件或其任何组合。
本文中所描述的步骤、操作或过程中的任何一个可单独地或与其它设备组合地用一个或多个硬件或软件模块来执行或实施。在一个实施例中,用包括包含计算机程序代码的计算机可读介质的计算机程序产品来实现软件模块,计算机程序代码可由计算机处理器执行以用于执行所描述的步骤、操作或过程中的任一个或全部。
本发明的实施例还可以涉及一种用于执行本文中的操作的装置。该装置可以为所需目的而专门构造,和/或它可以包括由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算设备。这样的计算机程序可以存储在有形计算机可读存储介质或适合于存储电子指令并且耦接到计算机系统总线的任何类型的介质中。此外,说明书中提到的任何计算系统可以包括单个处理器,或者可以是采用多处理器设计以提高计算能力的体系结构。
本发明的实施例还可涉及体现在载波中的计算机数据信号,其中计算机数据信号包括本文描述的计算机程序产品或其它数据组合的任何实施例。计算机数据信号是在有形介质或载波中呈现并且在有形载波中调制或以其他方式编码并且根据任何合适的传输方法传输的产物。
最后,本说明书中使用的语言主要是出于可读性和指导性目的而选择的,而可能不是为了描绘或限定本发明主题而选择的。因此,本发明的范围不受该详细描述的限制,而是受基于此提出的申请的任何权利要求的限制。

Claims (11)

1.一种计算机实现的方法,所述方法包括:
当自主车辆沿路线行驶时,由所述自主车辆接收表示所述自主车辆的周围环境的传感器数据,所述传感器数据是在所述自主车辆沿所述路线行驶时被实时捕获的,其中所述传感器数据包括由安装在所述自主车辆上的相机捕获的相机图像数据、由安装在所述自主车辆上的激光雷达传感器捕获的一列激光雷达扫描、或其任意组合;
基于所述传感器数据执行定位以确定所述车辆相对于高清晰度HD地图在所述传感器数据的第一捕获时间的第一位置;
确定发生在所述传感器数据的所述第一捕获时间之后的所述传感器数据的第二捕获时间;
确定第二位置,所述第二位置表示在所述传感器数据的第二捕获时间的所述自主车辆的位置,所述第二位置是相对于所述HD地图的位置,其中,所述第二位置是基于所述第一位置和在所述传感器数据的第二捕获时间与所述车辆被确定为处于所述第一位置的第一时间之间所述自主车辆的运动的估计来确定的;
访问所述HD地图的地图数据,所述地图数据是围绕所述自主车辆的所述第二位置的地理区域的地图数据;
从所访问的地图数据,渲染显示围绕所述第二位置的所述地理区域的一个或多个对象的图像,所渲染的图像集中在所述车辆的所述第二位置周围;
通过将显示所述一个或多个对象的图像覆盖在与所述第二捕获时间相关联的所述传感器数据上,来生成组合图像;以及
基于所述组合图像确定定位结果的质量,其中确定所述定位结果的质量包括:
将与所述地图数据中的对象相对应的所述组合图像中的渲染视图与所述传感器数据中的对象的在所述组合图像中的对应视图进行比较;
确定所述对象的所述渲染视图和所述传感器数据中所述对象的所述对应视图中的误差的估计;以及
响应于指示大于阈值误差的误差估计,执行校正动作。
2.根据权利要求1所述的计算机实现的方法,其中,基于从所述车辆的惯性测量单元获得的运动参数,来确定所述第二捕获时间与所述第一捕获时间之间的车辆运动的估计。
3.根据权利要求1至2中任一项所述的计算机实现的方法,其中,当所述自主车辆沿所述路线行驶时重复所述步骤以动态地更新所生成的图像。
4.根据权利要求1至2中任一项所述的计算机实现的方法,其中,所述渲染视图显示一个或多个对象,所述一个或多个对象对应于所述传感器数据中所表示的一个或多个对象,所述渲染视图以与所述传感器数据中所表示的所述一个或多个对象的颜色不同的颜色来示出所述一个或多个对象。
5.根据权利要求1至2中任一项所述的计算机实现的方法,所述方法还包括:
渲染所述地图数据中不存在的对象的第二图像;以及
将所述第二图像叠加在所生成的图像上。
6.根据权利要求5所述的计算机实现的方法,其中,所述第二图像包括描述所述自主车辆的路线的信息,该信息包括标志、标记、消息或其任意组合。
7.根据权利要求1至2中任一项所述的计算机实现的方法,其中,所述传感器数据表示激光雷达扫描,所述激光雷达扫描示为表示点的点,所述方法还包括:
将所述点按与点相对应的点相对于所述自主车辆的距离按比例缩放,其中,表示更靠近所述车辆的点大于表示更远离所述车辆的点。
8.根据权利要求1至2中任一项所述的计算机实现的方法,所述方法还包括:
将所生成的图像发送到用于显示视频的远程显示设备,该视频示出了在所述自主车辆移动时从所述自主车辆的视角观察到的场景。
9.根据权利要求1所述的计算机实现的方法,其中,所述校正动作包括以下各项中的一个或多个:
向设备发送报警消息;
改变用于对所述自主车辆执行定位的定位技术;或者
记录指示定位误差的消息。
10.一种存储在其上编码的指令的非暂时性计算机可读存储介质,所述指令在由处理器执行时使所述处理器执行根据权利要求1至9中任一项所述的方法的步骤。
11.一种计算机系统,其包括:
计算机处理器;以及
根据权利要求10所述的非暂时性计算机可读存储介质。
CN201980029228.4A 2018-03-02 2019-03-01 高清晰地图数据的可视化 Active CN112204343B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862637993P 2018-03-02 2018-03-02
US62/637,993 2018-03-02
PCT/US2019/020426 WO2019169348A1 (en) 2018-03-02 2019-03-01 Visualization of high definition map data

Publications (2)

Publication Number Publication Date
CN112204343A CN112204343A (zh) 2021-01-08
CN112204343B true CN112204343B (zh) 2024-05-17

Family

ID=67767392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980029228.4A Active CN112204343B (zh) 2018-03-02 2019-03-01 高清晰地图数据的可视化

Country Status (4)

Country Link
US (3) US11041730B2 (zh)
EP (1) EP3759432A4 (zh)
CN (1) CN112204343B (zh)
WO (1) WO2019169348A1 (zh)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014221888A1 (de) * 2014-10-28 2016-04-28 Robert Bosch Gmbh Verfahren und Vorrichtung zur Lokalisierung eines Fahrzeugs in seinem Umfeld
CN109840448A (zh) * 2017-11-24 2019-06-04 百度在线网络技术(北京)有限公司 用于无人驾驶车辆的信息输出方法和装置
US11403816B2 (en) * 2017-11-30 2022-08-02 Mitsubishi Electric Corporation Three-dimensional map generation system, three-dimensional map generation method, and computer readable medium
CN112204349B (zh) * 2018-04-03 2024-10-18 御眼视觉技术有限公司 用于车辆导航的系统和方法
US11036986B2 (en) * 2019-02-08 2021-06-15 Lyft, Inc. Systems and methods for aligning map data
US11162798B2 (en) * 2019-05-13 2021-11-02 GM Cruise Holdings, LLC Map updates based on data captured by an autonomous vehicle
DE102019207303A1 (de) * 2019-05-20 2020-11-26 Robert Bosch Gmbh Verfahren und System zum Erstellen einer Lokalisierungskarte für ein Fahrzeug
US20220319043A1 (en) * 2019-07-19 2022-10-06 Five AI Limited Structure annotation
CN112634371B (zh) * 2019-09-24 2023-12-15 阿波罗智联(北京)科技有限公司 用于输出信息、标定相机的方法和装置
US11550322B1 (en) 2019-09-30 2023-01-10 Aurora Operations, Inc. External environment sensor data prioritization for autonomous vehicle
US11526175B1 (en) * 2019-09-30 2022-12-13 Aurora Operations, Inc. Sensor data prioritization for autonomous vehicle based on vehicle operation data
DE102019128948A1 (de) * 2019-10-28 2021-04-29 Valeo Schalter Und Sensoren Gmbh Bestimmung eines Verkehrsampelleuchtzustands
CN110986969B (zh) * 2019-11-27 2021-12-28 Oppo广东移动通信有限公司 地图融合方法及装置、设备、存储介质
US11455763B2 (en) * 2020-01-21 2022-09-27 Gm Cruise Holdings Llc Bounding box generation for object detection
US11574463B2 (en) 2020-02-24 2023-02-07 Ford Global Technologies, Llc Neural network for localization and object detection
US12001958B2 (en) * 2020-03-19 2024-06-04 Nvidia Corporation Future trajectory predictions in multi-actor environments for autonomous machine
CN111753639B (zh) * 2020-05-06 2024-08-16 上海欧菲智能车联科技有限公司 感知地图生成方法、装置、计算机设备和存储介质
US20210389776A1 (en) * 2020-06-12 2021-12-16 Massachusetts Institute Of Technology Simulation-based training of an autonomous vehicle
WO2022006418A1 (en) 2020-07-01 2022-01-06 May Mobility, Inc. Method and system for dynamically curating autonomous vehicle policies
US11657572B2 (en) 2020-10-21 2023-05-23 Argo AI, LLC Systems and methods for map generation based on ray-casting and semantic class images
FR3117253A1 (fr) 2020-12-03 2022-06-10 Psa Automobiles Sa Procédé et dispositif d’émission d’éléments de guidage par un premier véhicule
FR3117585A1 (fr) 2020-12-15 2022-06-17 Psa Automobiles Sa Procédé d’affichage d’éléments de guidage, à destination d’un conducteur d’un véhicule comprenant un dispositif d’affichage tête haute
US11472436B1 (en) 2021-04-02 2022-10-18 May Mobility, Inc Method and system for operating an autonomous agent with incomplete environmental information
CN113259844B (zh) * 2021-06-16 2021-09-28 北京奇岱松科技有限公司 基于可翻转定位标签的室内人体朝向识别系统
DE102021208192A1 (de) 2021-07-29 2023-02-02 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und System zum Steuern eines Fahrzeugs durch einen Operator
US11885636B2 (en) * 2021-08-23 2024-01-30 Here Global B.V. Method, apparatus, and system for automatically coding and verifying human settlement cartographic features
CN113674287A (zh) * 2021-09-03 2021-11-19 阿波罗智能技术(北京)有限公司 高精地图的绘制方法、装置、设备以及存储介质
US11858420B2 (en) * 2021-11-29 2024-01-02 Texas Instruments Incorporated Below vehicle rendering for surround view systems
US12012123B2 (en) 2021-12-01 2024-06-18 May Mobility, Inc. Method and system for impact-based operation of an autonomous agent
WO2023154568A1 (en) 2022-02-14 2023-08-17 May Mobility, Inc. Method and system for conditional operation of an autonomous agent
US11543264B1 (en) 2022-02-23 2023-01-03 Plusai, Inc. Methods and apparatus for navigating an autonomous vehicle based on a map updated in regions
CN115376109B (zh) * 2022-10-25 2023-03-24 杭州华橙软件技术有限公司 障碍物检测方法、障碍物检测装置以及存储介质
US12027053B1 (en) 2022-12-13 2024-07-02 May Mobility, Inc. Method and system for assessing and mitigating risks encounterable by an autonomous vehicle
US11948227B1 (en) * 2023-04-18 2024-04-02 Toyota Motor Engineering & Manufacturing North America, Inc. Eliminating the appearance of vehicles and/or other objects when operating an autonomous vehicle
CN116804560B (zh) * 2023-08-23 2023-11-03 四川交通职业技术学院 一种管制路段下无人驾驶汽车安全导航方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1779483A (zh) * 2004-11-26 2006-05-31 欧姆龙株式会社 车载用图像处理装置
CN101952688A (zh) * 2008-02-04 2011-01-19 电子地图北美公司 用于与传感器检测到的对象进行地图匹配的方法
US9123152B1 (en) * 2012-05-07 2015-09-01 Google Inc. Map reports from vehicles in the field
KR20160122368A (ko) * 2015-04-14 2016-10-24 백승렬 공간정보를 이용한 차량 네비게이션의 위치정확도 향상을 위한 영상정보 제공방법 및 그 제공장치
CN106441298A (zh) * 2016-08-26 2017-02-22 陈明 一种以机器人视角图像进行地图数据人机交互的方法
US9719801B1 (en) * 2013-07-23 2017-08-01 Waymo Llc Methods and systems for calibrating sensors using road map data
CN107709929A (zh) * 2015-06-26 2018-02-16 日产自动车株式会社 车辆位置判定装置及车辆位置判定方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102006008981A1 (de) * 2006-02-23 2007-08-30 Siemens Ag Assistenzsystem zur Unterstützung eines Fahrers
US9221396B1 (en) * 2012-09-27 2015-12-29 Google Inc. Cross-validating sensors of an autonomous vehicle
KR102001659B1 (ko) 2012-11-19 2019-07-19 한국전자통신연구원 차량용 카메라 캘리브레이션 장치 및 방법
US9523772B2 (en) * 2013-06-14 2016-12-20 Microsoft Technology Licensing, Llc Object removal using lidar-based classification
KR101610502B1 (ko) * 2014-09-02 2016-04-07 현대자동차주식회사 자율주행차량의 주행환경 인식장치 및 방법
US9989969B2 (en) 2015-01-19 2018-06-05 The Regents Of The University Of Michigan Visual localization within LIDAR maps
US10082797B2 (en) * 2015-09-16 2018-09-25 Ford Global Technologies, Llc Vehicle radar perception and localization
WO2017079349A1 (en) 2015-11-04 2017-05-11 Zoox, Inc. System for implementing an active safety system in an autonomous vehicle
US10496766B2 (en) * 2015-11-05 2019-12-03 Zoox, Inc. Simulation system and methods for autonomous vehicles
US9754490B2 (en) 2015-11-04 2017-09-05 Zoox, Inc. Software application to request and control an autonomous vehicle service
US9958864B2 (en) * 2015-11-04 2018-05-01 Zoox, Inc. Coordination of dispatching and maintaining fleet of autonomous vehicles
US10401852B2 (en) * 2015-11-04 2019-09-03 Zoox, Inc. Teleoperation system and method for trajectory modification of autonomous vehicles
US9494940B1 (en) * 2015-11-04 2016-11-15 Zoox, Inc. Quadrant configuration of robotic vehicles
US10373380B2 (en) * 2016-02-18 2019-08-06 Intel Corporation 3-dimensional scene analysis for augmented reality operations
JP6548690B2 (ja) * 2016-10-06 2019-07-24 株式会社アドバンスド・データ・コントロールズ シミュレーションシステム、シミュレーションプログラム及びシミュレーション方法
EP3496033A4 (en) * 2016-10-07 2019-10-23 Aisin Aw Co., Ltd. DISPLACEMENT ASSISTING DEVICE AND COMPUTER PROGRAM
US11010615B2 (en) 2016-11-14 2021-05-18 Lyft, Inc. Rendering a situational-awareness view in an autonomous-vehicle environment
US10338591B2 (en) * 2016-11-22 2019-07-02 Amazon Technologies, Inc. Methods for autonomously navigating across uncontrolled and controlled intersections
US10890915B2 (en) * 2016-12-06 2021-01-12 Nissan North America, Inc. Solution path overlay interfaces for autonomous vehicles
US11761790B2 (en) * 2016-12-09 2023-09-19 Tomtom Global Content B.V. Method and system for image-based positioning and mapping for a road network utilizing object detection
CN111542860B (zh) 2016-12-30 2024-08-27 辉达公司 用于自主车辆的高清地图的标志和车道创建
CN110832417B (zh) 2016-12-30 2023-06-09 辉达公司 使用高清地图为自主车辆生成路线
US10430641B2 (en) * 2017-03-08 2019-10-01 GM Global Technology Operations LLC Methods and systems for object tracking using bounding boxes
US10884409B2 (en) * 2017-05-01 2021-01-05 Mentor Graphics (Deutschland) Gmbh Training of machine learning sensor data classification system
US10452927B2 (en) * 2017-08-09 2019-10-22 Ydrive, Inc. Object localization within a semantic domain
US20190244515A1 (en) * 2017-09-25 2019-08-08 Continental Automotive Systems, Inc. Augmented reality dsrc data visualization
US10748426B2 (en) * 2017-10-18 2020-08-18 Toyota Research Institute, Inc. Systems and methods for detection and presentation of occluded objects
US11548443B2 (en) * 2017-11-10 2023-01-10 Honda Motor Co., Ltd. Display system, display method, and program for indicating a peripheral situation of a vehicle
US20190145765A1 (en) * 2017-11-15 2019-05-16 Uber Technologies, Inc. Three Dimensional Object Detection
US10768304B2 (en) * 2017-12-13 2020-09-08 Luminar Technologies, Inc. Processing point clouds of vehicle sensors having variable scan line distributions using interpolation functions
US10535191B2 (en) * 2017-12-21 2020-01-14 Luminar Technologies, Inc. Object identification and labeling tool for training autonomous vehicle controllers
WO2019125489A1 (en) * 2017-12-22 2019-06-27 Nissan North America, Inc. Solution path overlay interfaces for autonomous vehicles
US10712168B2 (en) 2017-12-28 2020-07-14 Uatc, Llc Submap geographic projections
US10635844B1 (en) * 2018-02-27 2020-04-28 The Mathworks, Inc. Methods and systems for simulating vision sensor detection at medium fidelity

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1779483A (zh) * 2004-11-26 2006-05-31 欧姆龙株式会社 车载用图像处理装置
CN101952688A (zh) * 2008-02-04 2011-01-19 电子地图北美公司 用于与传感器检测到的对象进行地图匹配的方法
US9123152B1 (en) * 2012-05-07 2015-09-01 Google Inc. Map reports from vehicles in the field
US9719801B1 (en) * 2013-07-23 2017-08-01 Waymo Llc Methods and systems for calibrating sensors using road map data
KR20160122368A (ko) * 2015-04-14 2016-10-24 백승렬 공간정보를 이용한 차량 네비게이션의 위치정확도 향상을 위한 영상정보 제공방법 및 그 제공장치
CN107709929A (zh) * 2015-06-26 2018-02-16 日产自动车株式会社 车辆位置判定装置及车辆位置判定方法
CN106441298A (zh) * 2016-08-26 2017-02-22 陈明 一种以机器人视角图像进行地图数据人机交互的方法

Also Published As

Publication number Publication date
US20190271559A1 (en) 2019-09-05
US11566903B2 (en) 2023-01-31
US20190271554A1 (en) 2019-09-05
US20190271548A1 (en) 2019-09-05
WO2019169348A1 (en) 2019-09-06
US11041730B2 (en) 2021-06-22
US11365976B2 (en) 2022-06-21
CN112204343A (zh) 2021-01-08
EP3759432A1 (en) 2021-01-06
EP3759432A4 (en) 2022-01-26

Similar Documents

Publication Publication Date Title
CN112204343B (zh) 高清晰地图数据的可视化
CN110832348B (zh) 用于自主车辆的高清晰度地图的点云数据丰富
EP3759562B1 (en) Camera based localization for autonomous vehicles
US11353589B2 (en) Iterative closest point process based on lidar with integrated motion estimation for high definition maps
US10498966B2 (en) Rolling shutter correction for images captured by a camera mounted on a moving vehicle
CN110832417B (zh) 使用高清地图为自主车辆生成路线
US11367208B2 (en) Image-based keypoint generation
US11151394B2 (en) Identifying dynamic objects in a point cloud
WO2020257723A1 (en) Lidar-based detection of traffic signs for navigation of autonomous vehicles
CN111402387B (zh) 从用于导航自主车辆的高清晰度地图的点云中移除短时点
WO2021003487A1 (en) Training data generation for dynamic objects using high definition map data
US11593996B2 (en) Synthesizing three-dimensional visualizations from perspectives of onboard sensors of autonomous vehicles
US20230121226A1 (en) Determining weights of points of a point cloud based on geometric features
WO2020264528A1 (en) Calibration of inertial measurement units of vehicles using localization

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
TA01 Transfer of patent application right

Effective date of registration: 20221129

Address after: California, USA

Applicant after: NVIDIA Corp.

Address before: California, USA

Applicant before: Dipup Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant