CN111442776B - 顺序地面场景图像投影合成与复杂场景重构的方法及设备 - Google Patents

顺序地面场景图像投影合成与复杂场景重构的方法及设备 Download PDF

Info

Publication number
CN111442776B
CN111442776B CN202010046027.XA CN202010046027A CN111442776B CN 111442776 B CN111442776 B CN 111442776B CN 202010046027 A CN202010046027 A CN 202010046027A CN 111442776 B CN111442776 B CN 111442776B
Authority
CN
China
Prior art keywords
image data
map
bird
image
eye view
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
CN202010046027.XA
Other languages
English (en)
Other versions
CN111442776A (zh
Inventor
F.白
H.刘
D.A.克雷格
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations 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 GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of CN111442776A publication Critical patent/CN111442776A/zh
Application granted granted Critical
Publication of CN111442776B publication Critical patent/CN111442776B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/3852Data derived from aerial or satellite images
    • 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/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
    • G01C21/30Map- or contour-matching
    • G01C21/32Structuring or formatting of map data
    • 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/3867Geometry of map features, e.g. shape points, polygons or for simplified maps
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • 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
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/38Registration of image sequences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • G06V10/7515Shifting the patterns to accommodate for positional errors
    • 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
    • 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/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)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Graphics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Manufacturing & Machinery (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)

Abstract

提供了一种用于校正HD地图图像的***。该***被配置为:从多个车辆接收由所述车辆采集的地图异常热点的地面视角图像数据;使用单应性将地面视角图像数据转换为鸟瞰视角图像数据;从鸟瞰视角图像数据中去除离群值;应用误差降低算法;在降低误差后,将来自图像数据的连续图像序列拼接在一起以生成高清图像,其中每个连续图像均已经通过使用单应性将地面视角图像数据转换为鸟瞰视角图像数据,从鸟瞰视角图像数据中去除离群值,并应用误差降低算法而生成的;比较所拼接的连续图像序列与热点的高清图像,以确定对高清图像的修改;并提供修改后的高清图像数据用于在地图异常热点附近导航。

Description

顺序地面场景图像投影合成与复杂场景重构的方法及设备
技术领域
本公开总体上涉及用于校正地图的***和方法,并且更具体地涉及用于校正用于自主车辆地图的地图创建数据的***和方法。
背景技术
导航级别的地图(例如OpenStreetMap(OSM)和Google地图)不适用于自主车辆(AV)驾驶。为了导航,自主车辆可能需要车辆将行驶于其中的区域的高清地图。高清地图可能需要是三维的,并标记有该区域中的永久固定对象,并包括将导航的区域中的每条道路,以及每个停车标志、所有车道标记、每个出口匝道和每个交通信号灯的精确位置。
创建AV地图可能很复杂。在美国有超过四百万英里的道路,与GPS和导航***使用的地图相比,AV地图的精确度要高得多。导航地图通常在几码内定位车辆的位置。在某些情况下,AV地图可能需要能够在大约四英寸内定位车辆、路缘石和其他对象的位置。
以自主模式运行的自主车辆依赖于在过去某时收集的地图创建数据。地图创建数据可能并不总是反映其意图描绘的实际环境。由于环境变化(例如道路建设),地图创建数据可能包含错误或过时。
自主车辆和非自主车辆具有可用于感测实际环境的各种传感器。例如,车辆可以配备有包含诸如雷达、激光雷达、图像传感器等的传感装置的感知***。感知***和其他感测***可用于提供感测数据,用于验证用于AV地图的地图创建数据的准确性。
因此,期望提供用于校正AV地图创建数据的***和方法。此外,结合附图以及前述技术领域和背景技术,根据随后的详细描述和所附权利要求,本发明的其他期望特征和特性将变得显而易见。
发明内容
提供了一种用于使用群智(crowd)感测技术识别地图异常热点并提供更详细的图像信息(例如,二维鸟瞰视图或三维场景重建)的***和方法。详细的图像信息是通过合成来自地图异常热点处的大量车辆的大量收集的顺序地面视图视角图像而获得的。
在一个实施例中,提供了一种用于校正高清地图图像的***。该***包括一个或多个处理器,该处理器被配置为对在非瞬态计算机可读介质上编码的指令进行编程。该***被配置为:通过基于云的处理器从多个车辆接收由所述车辆采集的地图异常热点的地面图像数据,其中,所述地图异常热点是由高清地图描述的区域,在该区域处由所述车辆观察到的热点的物理特性与由高清地图所提供的针对该区域的描述不一致;使用单应性将地面视角图像数据转换为鸟瞰视角图像数据;从鸟瞰视角图像数据中去除离群值;将用于降低误差的误差降低算法应用于去除了离群值的鸟瞰视角图像数据;在降低误差后,将鸟瞰视角图像数据中的连续图像序列拼接在一起,以生成高清鸟瞰视角图像,其中,所述连续图像中的每一个已经通过使用单应性将地面视角图像数据转换为鸟瞰视角图像数据、从鸟瞰视角图像数据去除离群值、以及应用用于降低误差的误差降低算法而产生;比较拼接的连续图像序列与热点的高清图像,以确定对高清图像的修改;并将修改后的高清图像数据提供给自主汽车,用于在地图异常热点附近的区域中导航。
在一实施例中,该***还被配置为:从车辆接收地图异常热点的报告,该报告包括在该地图异常热点处的地面图像数据;指示所述地图异常热点附近区域内的多个车辆上传在所述地图异常热点处的地面视角图像数据;以及接收由所述多个车辆采集的所述地图异常热点的地面视角图像数据。
在一个实施例中,为了使用单应性将地面视角图像数据转换成鸟瞰视角图像数据,该***被配置为:从4对对应的角点计算透视变换;用变换矩阵M表示透视变换;以及将估计的透视变换矩阵M应用于地面视角图像数据。
在一个实施例中,为了从鸟瞰视角图像数据中去除离群值,该***被配置为应用RANSAC(随机样本一致性)算法或实现相同目的的类似算法,以从鸟瞰视角图像数据中去除离群值。
在一个实施例中,为了应用误差降低算法,该***被配置为通过将鸟瞰视角图像中的特征与高清图像中的特征进行匹配,或使用直接对齐方法来搜索使重叠像素之间的绝对差之和最小的图像对齐来执行图像配准。
在一个实施例中,为了应用误差降低算法,该***被配置为应用迭代最近点(ICP)算法来迭代地修改单应性变换,其用于降低去除了离群点的鸟瞰视角图像和去除了离群点的卫星图像之间的误差度量。
在一个实施例中,为了将连续图像序列拼接在一起,该***被配置为:确定将一个图像中的像素坐标与另一图像中的像素坐标相关联的适当的数学模型;估计与图像的集合相关的正确对齐方式;匹配每个图像中的独特特征以建立图像之间的对应关系;以及合并重叠的图像。
在一个实施例中,为了对比拼接的连续图像序列与热点的卫星图像以确定对卫星图像的修改,该***被配置为:当确定一特征存在与拼接图像中但不存在于卫星图像中,则将拼接图像中的该特征添加到卫星图像;当确定一特征不存在于拼接图像中但存在于卫星图像中,则从卫星图像中去除该特征。
在一个实施例中,该***还被配置为根据连续地面视角图像序列构造热点区域的三维(3D)图像,其中,为了构造热点区域的三维(3D)图像,该***被配置为:识别连续图像序列中的图像之间的关键点匹配;使用从自运动到结构(SFM)范围成像算法从与局部运动信号耦合的连续图像的二维序列估计三维结构的基本矩阵;利用对极几何找到三维结构之间的密集匹配;使用三角测量确定三维结构的密集点云;以及向自主汽车(AV)提供3D密集点云。
在一个实施例中,该***还被配置为使用基于补丁的多视角立体(PMVS)算法从密集点云生成更密集点云,并且其中,为了提供3D密集点云,***被配置为提供所述更密集点云到自主车辆(AV)。
在一个实施例中,该***还被配置为通过建立扩展的强化学习区域来请求附加数据以用于确定所报告的异常是否是由于数字地图数据的差异而引起的,其中位于该扩展的强化学习区域中的每个车辆均被正确地装备,并旨在将地图异常热点的地面视角图像报告给***。
在另一个实施例中,提供了一种用于校正高分辨率地图图像的处理器实现的方法。该方法包括:通过基于云的处理器从多个车辆中接收由所述车辆采集的地图异常热点的地面图像数据,其中,地图异常热点是由高清地图描述的区域,在该区域处由车辆观察到的热点的物理特征与由高清地图所提供的针对该区域的描述不一致;使用单应性将地面视角图像数据转换为鸟瞰视角图像数据;从鸟瞰视角图像数据中去除离群值;将用于降低误差的误差降低算法应用于去除了离群值的鸟瞰视角图像数据;在降低误差后将鸟瞰视角图像数据中的连续图像序列拼接在一起,以生成高清鸟瞰视角图像,其中,连续图像序列中的每一个已经通过使用单应性将地面视角图像数据转换为鸟瞰视角图像数据、从鸟瞰视角图像数据去除离群值、应用用于降低误差的误差降低算法而生成;比较拼接的连续图像序列与热点的高清图像,以确定对高清图像的修改;并向自主车辆提供修改后的高清图像数据,用于在地图异常热点附近的区域中导航。
在一个实施例中,使用单应性将地面视角图像数据转换为鸟瞰视角图像数据包括:从4对对应的角点计算透视变换;通过变换矩阵M表示透视变换;将估计的透视变换矩阵M应用于图像数据。
在一个实施例中,从鸟瞰视角图像数据中去除离群值包括应用RANSAC(随机样本一致性)算法或实现相同目标的类似算法来从鸟瞰视角图像数据中去除离群值。
在一个实施例中,应用误差降低算法包括通过将鸟瞰视角图像中的特征与高清图像中的特征进行匹配或使用直接对齐方法来搜索使重叠像素之间的绝对差之和最小的图像对准来执行图像配准。
在一个实施例中,应用误差降低算法包括应用迭代最近点(ICP)算法来迭代地修改用于单应性变换,其用于降低去除了离群值的鸟瞰视角图像与去除了离群值的卫星图像之间的误差度量。
在一个实施例中,将连续图像序列拼接在一起包括:确定使一个图像中的像素坐标与另一图像中的像素坐标相关的适当数学模型;估计与图像的集合相关的正确对齐方式;匹配每个图像中的独特特征以建立图像之间的对应关系;并合并重叠的图像。
在一个实施例中,该方法还包括在误差降低之后从来自鸟瞰视角图像数据的连续图像序列构建热点区域的三维(3D)图像,其中,构建热点区域的三维(3D)图像包括:识别连续图像序列中图像之间的关键点匹配;使用从运动到结构(SFM)范围成像算法从与局部运动信号耦合的连续图像的二维序列估计三维结构的基本矩阵;使用对极几何在三维结构之间找到密集匹配;使用三角测量确定三维结构的密集点云;并向自主车辆(AV)提供3D密集点云。
在一个实施例中,该方法还包括使用基于补丁的多视角立体(PMVS)算法从密集点云生成更密集点云,并且其中提供3D密集点云包括向自主车辆(AV)提供所述更密集点云。
在另一个实施例中,提供了一种用于确定数字地图差异的车辆。该车辆包括洞察模块(insight module),该洞察模块包括一个或多个处理器,这些处理器被配置为对在非瞬态计算机可读介质上编码的指令进行编程。洞察模块被配置为:由车辆中的处理器从所述车辆中的导航模块接收预先计划的轨迹数据;由处理器从一个或多个车辆感测***检索传感器数据;由处理器分析传感器数据和预先计划的轨迹数据;由处理器从分析中识别出第一地图异常热点;将关于第一地图异常热点的地面视角图像数据发送到车辆外部的基于云的服务器;从基于云的服务器接收请求以在第二异常热点处发送地面视角图像数据;并且响应于所述请求,将关于第二地图异常热点的地面视角图像数据发送到基于云的服务器。
附图说明
在下文中将结合附图描述示例性实施例,其中,相同的标记表示相同的元件,并且其中:
图1是示出了根据各种实施例的有助于理解本主题的示例场景的自上向下视角的示图;
图2是根据各种实施例的可以使用导航模块和洞察模块的示例性车辆的框图;
图3是描绘根据各种实施例的示例地图差异检测和校正***的示例组件的框图;
图4是描绘根据各种实施例的示例图像修改模块的框图;
图5是描绘根据各种实施例的示例图像修订模块中的示例过程的过程流程图;
图6A、图6B和图6C是示出根据各种实施例的用于使用单应性(homography)将地面视角图像数据转换成鸟瞰视角图像数据的示例技术的示图;
图7是根据各种实施例的示例***中的流程图,该***使用用于移除离群值的RANSAC离群值检测器和消除器模块以及用于错误检测的ICP模块;
图8A、图8B和图8C是示出根据各种实施例的将地面视角图像序列转换成拼接的鸟瞰视角图像的示例性转换的示图;以及
图9是描绘根据各种实施例的用于从图像序列生成3D图像的示例过程的过程流程图。
具体实施方式
以下详细描述本质上仅是示例性的,并不旨在限制应用和使用。此外,无意受在前述技术领域、背景技术、发明内容或以下详细描述中呈现的任何明示或暗示的理论的约束。如本文所使用,术语“模块”是指任何硬件、软件、固件、电子控制组件、处理逻辑和/或处理器设备中的单个或任何组合,其包括但不限于:专用集成电路(ASIC)、现场可编程门阵列(FPGA)、电子电路、执行一个或多个软件或固件程序的处理器(共用的、专用的或成组的)和存储器、组合逻辑电路和/或提供所描述功能的其他合适组件。
本文可根据功能和/或逻辑块组件以及各种处理步骤来描述本公开的实施例。应当理解,可以通过被配置为执行指定功能的任何数量的硬件、软件和/或固件组件来实现这样的块组件。例如,本公开的实施例可以采用各种集成电路组件,例如存储器元件、数字信号处理元件、逻辑元件、查找表等,其可以在一个或多个微处理器或其他控制设备的控制下执行各种功能。另外,本领域技术人员将认识到,可以结合任何数量的***来实践本公开的实施例,并且本文描述的***仅仅是本公开的示例性实施例。
为了简洁起见,与信号处理、数据传输、信令、控制、机器学习模型、雷达、激光雷达、图像分析和***的其他功能方面(以及***的各个操作组件)有关的常规技术在本文可能不会详细描述。此外,本文包含的各个附图中所示的连接线旨在表示各个元件之间的示例性功能关系和/或物理联接。应当注意,在本公开的实施例中可以存在许多替代或附加的功能关系或物理连接。
本文描述的主题公开用于提供更详细的图像信息(例如,更详细的二维(2D)鸟瞰视角图像或三维(3D)场景重建图像)以包含在高清晰度(HD)地图创建数据中。所描述的设备、***、技术和物件可以利用群智感测技术来识别地图异常热点,并且通过合成在地图异常热点处从大批车辆的大量收集的顺序地面视角图像来生成更详细的图像信息。所描述的设备、***、技术和物件可以提供基于车辆的***,其用于捕获地面视角图像;及基于云的***,其用于通过合成在地图异常热点处从基于车辆的***收集的顺序地面视角图像来生成更详细的图像信息。
所描述的设备、***、技术和物件可以提供一种方法,用于限制上传到基于云的***的图像的数量,其中仅地图异常热点区域内的图像被上传到基于云的***。所描述的设备、***、技术和物件可以提供一种算法,用于通过合成多个地面视角图像而将地面视角图像转换为鸟瞰视角图像,并将所生成的鸟瞰视角图像与预先存在的高清图像(例如,卫星地图)比较以更新高清地图数据。所描述的设备、***、技术和物件可以提供一种算法,用于通过合成多个地面视角图像来完全重建3D场景梗概,以为远处的自主驶车(AV)操作员提供更丰富的背景/语义(semantic)。所描述的设备、***、技术和物件可以提供一种方法,其可以经由控制器局域网(CAN)总线和/或GPS信息来识别地图异常热点区域。所描述的设备、***、技术和物件可以提供一种用于时新地图和改进精度的地图的低成本方法。
用于自主驾驶的高清(HD)地图可能会遇到质量问题(例如,几何形状漂移,缺乏道路属性)和地图更新问题(例如,可能不会根据需要频繁更新)。手动验证、错误检测和地图校正可能是昂贵、低效且不及时的。基于卫星的道路地图可能是基线HD地图的主流解决方案,但是由于更新频率不足(例如,每年或每季度),例如由于成本,以及准确性不足,例如由于空中遮挡,因而可能存在质量问题。蛮力车内图像群智感测HD地图(brute-force in-vehicle image crowd-sensing HD map)可以提供更好的准确性和更新频率,但是由于蜂窝上传费用而可能会非常昂贵。
所描述的设备、***、技术和物件可以提供一种用于时新地图和更好精度地图的低成本解决方案。所描述的设备、***、技术和物件可以识别地图异常热点区域,仅将地图异常热点区域内的图像上传到基于云的地图产生***,通过合成一系列地面视角图像来生成鸟瞰视角图像,并将所生成的鸟瞰视角图像与原始HD地图(例如,卫星地图)比较以更新原始HD地图。
图1呈现了有助于理解本主题的示例场景的自上向下的视图,其中可以实现地图差异检测和校正***。示例性地图差异检测和校正***可以实时或接近实时地检测HD地图创建数据(HD mapping data)中的差异,并且以更新的HD图像的形式提供对HD地图创建数据的更新。
在示例场景中,在道路104上描绘了多个车辆102,其可以使用导航应用(未示出)来获得行驶方向。导航应用可以利用各种类型的数据,例如道路拓扑和道路属性数据、道路几何形状数据、导航引导数据、以及地址和邮局信息(POI)来执行其功能。道路拓扑和道路属性数据可以包括关于道路连通性、道路类型/功能道路等级、转弯和转弯限制、交叉路口、交通标志调节器、速度限制、道路属性(例如,人行道、分车道、风景区等)的数据以及其他类似类型的数据。道路几何形状数据可以包括关于路段几何形状、路段前进方向、道路曲率、道路斜度/坡度、坡度角/道路倾斜的数据以及其他类似类型的数据。导航引导数据可以包括关于交通调节器标志、交通调节器位置、扩展车道信息、车道数量、车道类型、车道合并/车道分开、车道标记、车道注释、车道规则/指南、自然引导的数据以及其他类似类型的数据。地址和POI数据可以包括关于家庭/工作地址、重要的频繁拜访、核心POI(例如,商业POI)、停车/收费/加油站的数据以及其他类似类型的数据。
在该示例中,两个车辆106、108是自报告车辆。自报告车辆106、108被配置为识别地图属性异常(例如,基于CAN总线和/或GPS数据),并且将地图属性异常报告(107、109)给基于云的服务器处的地图差异检测器110。自报告车辆106、108可以例如经由在蜂窝网络上的蜂窝通信信道与地图差异检测器110通信,蜂窝网络诸如5G、4G LTE或4G LTE-V2X、公共网络和专用网络。自报告车辆106、108包括用于与地图差异检测器110通信的洞察应用(insight application)(未示出)。
示例性自报告车辆106、108中的洞察应用可以在导航应用的操作期间识别与地图数据有关的异常,并将该异常传达给地图差异检测器110。地图差异检测器110可以调查该异常,以确定导航应用所利用的地图数据中是否确实存在差异,确定差异的性质,并提出对地图数据的校正。示例地图差异检测器110被配置为从异常报告车辆106、108中的洞察应用接收图像数据,可以指导该洞察应用提供附加的传感器数据,并且可以指导在报告的异常(地图异常热点)附近的其他车辆,以提供可用于进一步评估异常的图像数据。
当示例地图差异检测器110从相同区域接收到足够数量的报告时,地图差异检测器110被配置为向驶来的车辆发出审查警告(scrutiny advisory)。示例地图差异检测器110被配置为主动请求附加数据,以用于确定异常是否确实由地图异常热点区域处的地图数据差异引起。在该示例场景中,地图差异检测器110可能已经从在特定位置(地图异常热点区域)报告类似的异常的车辆接收到一个或多个异常消息。为了进一步调查该异常,示例地图差异检测器110可以建立扩展强化学习区域112。示例地图差异检测器110被配置为请求(111)在扩展强化学习区域112中的每个配备有事件洞察模块(event insight module)的车辆报告(109)详细的传感器数据(例如,GPS、CAN、图像、雷达、激光雷达信息),其包括地面视角图像数据,给地图差异检测器110,以用于确定在地图异常热点区域处是否确实存在地图差异。在该示例中,扩展强化学习区域112中的至少一个车辆108配备有事件洞察模块,以将更详细的传感器数据报告(109)给地图差异检测器110。
示例地图差异检测器110还被配置为通过多个地面视角图像的合成将地面视角图像的序列转换为鸟瞰视角图像,并且被配置为将所生成的鸟瞰视角图像与预先存在的HD图像(例如,卫星地图)比较,以识别对于预先存在的HD图像的校正,用于高清地图数据更新。示例地图差异检测器110还被配置为通过顺序地面视角图像的合成来重建异常热点处的3D场景梗概。
图2是可以同时使用导航模块和洞察模块210二者的示例性车辆200的框图。示例车辆200通常包括底盘12、车身14、前轮16和后轮18。车身14布置在底盘12上并且基本上包围车辆200的部件。车身14和底盘12可一起形成框架。车轮16-18每个在车身14的相应角部附近旋转地联接至底盘12。
示例车辆200可以是自主车辆(例如,被自动控制以将乘客从一个位置运送到另一位置的车辆),半自主车辆或乘客驾驶的车辆。在任何情况下,洞察应用程序210包括在示例车辆200中。示例车辆200被描述为乘用车,但是也可以是另一种车辆类型,例如摩托车、卡车、运动型多用途车(SUV)、休闲车(RV)、船舶、飞机等。
如图所示,示例车辆200包括推进***20、传动***22、转向***24、制动***26、传感器***28、致动器***30、至少一个数据存储装置32、至少一个控制器34和通信***36。在各种实施例中,推进***20可包括内燃发动机、诸如牵引电动机这样的电机和/或燃料电池推进***。传动***22被构造成根据可选择的速度比将动力从推进***20传递至车轮16和18。
制动***26被构造成向车轮16和18提供制动扭矩。在各种实施例中,制动***26可以包括摩擦制动器、线制动器、诸如电机的再生制动***和/或其他合适的制动***。
转向***24影响车轮16和/或18的位置。尽管出于示意目的被描绘为包括方向盘25,但是在本公开的范围内预期的一些实施例中,转向***24可以不包括方向盘。
传感器***28包括一个或多个感测设备40a-40n,其感测车辆200的外部环境和/或内部环境的可观测的状况(例如,一个或多个乘客的状态),并产生与之相关的传感器数据。感测设备40a-40n可以包括但不限于雷达(例如,远程、中程、短程)、激光雷达、全球定位***、光学相机(例如,前向、360度、后向、侧向、立体等),热(例如,红外)相仪、超声传感器、测距传感器(例如,编码器)和/或可以与根据本主题的***和方法结合使用的其它传感器。
致动器***30包括一个或多个致动器装置42a-42n,其控制一个或多个车辆特征,例如但不限于推进***20、传动***22、转向***24和制动***26。在各种实施例中,车辆200还可包括在图2中未示出的内部和/或外部车辆特征,例如各种门、行李箱和舱室特征,例如空气、音乐、照明、触摸屏显示组件(例如与导航***结合使用的那些)等。
数据存储设备32存储用于在车辆200中使用的数据。在各种实施例中,数据存储设备32存储可导航环境的定义的地图。在各种实施例中,定义的地图可以由远程***预定义并从远程***获得。例如,所定义的地图可以由远程***组装,并且(无线地和/或以有线方式)通信至车辆200,并且存储在数据存储装置32中。路线信息也可以存储在数据存储设备32中——即,一组路段(在地理上与一个或多个定义的地图相关联)共同定义了用户可以采取以从起始位置(例如,用户的当前位置)行驶到目标位置的路线。可以理解,数据存储设备32可以是控制器34的一部分,与控制器34分离,或者是控制器34的一部分并且是单独***的一部分。
控制器34包括至少一个处理器44和计算机可读存储设备或介质46。处理器44可以是任何客户定制的或可商购的处理器、中央处理器(CPU)、图形处理单元(GPU)、专用集成电路(ASIC)(例如,实现神经网络的定制ASIC)、现场可编程门阵列(FPGA)、与控制器34相关联的几个处理器中的辅助处理器、基于半导体的微处理器(微芯片或芯片组的形式)、其任何组合或用于执行指令的任何一般设备。例如计算机可读存储设备或介质46可以包括在只读存储器(ROM)、随机存取存储器(RAM)和保持活动存储器(KAM)中的易失性和非易失性存储器。KAM是持久性或非易失性存储器,其可以在处理器44掉电时用于存储各种操作变量。可以使用许多已知的存储设备中的任何一种来实现计算机可读存储设备或介质46,例如PROM(可编程只读存储器)、EPROM(电PROM)、EEPROM(电可擦除PROM)、闪存或能够存储数据的任何其他电、磁、光或组合存储设备,其中一些表示可执行指令,由控制器34在控制车辆200中使用。在各个实施例中,控制器34被配置为实现洞察模块,如下面详细讨论的。
控制器34可以实现导航模块和洞察模块210。即,控制器34的合适的软件和/或硬件部件(例如,处理器44和计算机可读存储设备46)用于提供与车辆200结合使用的导航模块和洞察模块。
指令可以包括一个或多个分离的程序,每个程序包括用于实现逻辑功能的可执行指令的有序列表。指令在由处理器44执行时接收并处理来自传感器***28的信号,执行用于控制车辆200的部件的逻辑、计算、方法和/或算法,并生成传送至致动器***30的控制信号,以基于逻辑、计算、方法和/或算法自动控制车辆200的部件。尽管在图2中仅示出了一个控制器34,但车辆200的实施例可以包括任何数量的控制器34,其通过合适的通信介质或通信介质的组合进行通信,并且协作以处理传感器信号,执行逻辑、计算、方法和/或算法,并生成控制信号以自动控制车辆200的特征。
通信***36被配置为与其他实体48进行无线通信,例如但不限于,其他车辆(“V2V”通信)、基础设施(“V2I”通信)、网络(“V2N”通信)、行人(“V2P”通信)、远程交通***和/或用户设备。在示例性实施例中,通信***36是被配置为经由使用IEEE 802.11标准的无线局域网(WLAN)或通过使用蜂窝数据通信进行通信的无线通信***。然而,在本公开的范围内也考虑诸如专用短程通信(DSRC)信道之类的附加或替代通信方法。DSRC信道是指专门为汽车使用而设计的单向或双向短程至中程无线通信通道以及一组相应的协议和标准。
车辆200还可包括感知***和定位***。感知***合成并处理获取的传感器数据,并预测车辆200的环境中的对象和特征的存在、位置、分类和/或路径。在各个实施例中,感知***可以合并来自多个传感器(例如,传感器***38)的信息,所述传感器包括但不限于相机、激光雷达、雷达和/或任何其他类型的传感器。
定位***将传感器数据与其他数据一起处理以确定车辆200相对于环境的位置(例如,相对于地图的局部位置、相对于道路车道的精确位置、车辆行驶方向等)。可以理解,可以采用多种技术来完成该定位,包括例如同时定位和地图创建(simultaneouslocalization and mapping:SLAM)、颗粒滤波器、卡尔曼滤波器,贝叶斯滤波器等。
在各种实施例中,控制器34实现机器学习技术以辅助控制器34的功能,例如特征检测/分类、障碍物避让、路线穿越、地图创建、传感器集成、地面真相确定等。
图3是描绘示例地图差异检测和校正***300的示例组件的框图。该示例***包括一个或多个车辆302和计算机实现的地图差异检测器304。
示例车辆302包括可利用GPS传感器的位置确定模块306和控制器局域网(CAN)308,各种车辆控制器可在该控制器局域网上传递消息,这些消息包含例如车辆性能数据,例如速度、加速度和偏航。示例车辆302还可以包括各种感知传感器310,诸如激光雷达、雷达和相机。示例车辆302包括导航模块312和事件洞察模块314,事件洞察模块被配置为在导航模块312的操作期间识别与地图数据有关的异常,并将该异常传达给地图差异检测器304。
示例事件洞察模块314被配置为检索来自导航模块312的预先计划的轨迹数据和来自一个或多个车辆感测***的传感器数据(例如,316a、316b、316c、316d)。在该示例中,传感器数据包括车辆性能数据、车辆感知数据和车辆位置数据。从感知传感器(例如,雷达、激光雷达、相机)检索示例车辆感知数据,从位置确定模块306检索示例车辆位置数据,如GPS数据316a,并从CAN 308上的消息检索示例车辆性能数据。示例车辆性能数据包括车辆速度数据316b、车辆加速度数据316c和车辆偏航数据316d。
示例事件洞察模块314被配置为分析传感器数据和预先计划的轨迹数据,并从分析中识别相对于地图数据的异常。示例事件洞察模块314可以被配置为从非正常驾驶行为、不服从导航操纵指令、地图和传感器数据之间的矛盾等中识别异常。示例事件洞察模块314可以被配置为执行许多不同的分析和识别操作以识别异常。
在一示例中,事件洞察模块314被配置为通过将由车辆感测数据确定的实际车辆行为与基于预先计划的轨迹数据的预期车辆行为进行比较来分析车辆感测数据和预先计划的轨迹数据。在该示例中,事件洞察模块314还可被配置为通过识别由车辆感测数据确定的实际车辆行为与基于路径计划数据的预期车辆行为之间的差异而从分析中识别异常。
在另一个示例中,事件洞察模块314被配置为通过从传感器数据确定实际车辆轨迹数据,并将实际轨迹数据与预先计划的轨迹数据进行比较来分析车辆感测数据和预先计划的轨迹数据。在该示例中,事件洞察模块314还可被配置为通过识别非正常驾驶行为(例如突然改变车道,突然离开道路或在地图路径上沿相反方向驾驶)而从分析中识别异常。
在另一示例中,事件洞察模块314被配置为通过在导航模块中将实际车辆行驶与预先计划的轨迹进行比较来分析车辆感测数据和预先计划的轨迹数据。在该示例中,事件洞察模块314还被配置为通过从导航模块接收到表明车辆偏离了由导航模块提供的导航操纵指令的通知而从分析中识别异常。
在另一个示例中,事件洞察模块314被配置为通过将识别了预先计划的车辆路径上的结构特征的地图数据与预期存在该结构特征的实际区域的感知数据(例如,激光雷达和/或相机数据)进行比较,来分析车辆感测数据和预先计划的轨迹数据。在该示例中,事件洞察模块314可以进一步被配置为通过识别关于结构特征的存在的感知数据与地图数据之间的不同来从分析中识别异常。作为示例,当地图数据指示应当存在护栏时,感知传感器可能未检测到护栏。示例事件洞察模块可以检测地图数据与车辆经历之间的不一致,并且将该不一致识别为异常。
示例事件洞察模块314包括数据过滤模块318,事件洞察模块314可以使用该数据过滤模块318来分析传感器数据和预先计划的轨迹数据,以从分析中相对于地图数据识别异常。在数据过滤模块318的一种示例使用中,示例事件洞察模块314被配置为,通过向数据过滤模块318应用容限阈值来对传感器数据的变化进行分类,从而分析车辆感测数据和预先计划的轨迹数据。在该示例中,从分析中识别异常包括识别传感器数据中的突然变化超过所述容限阈值。
在数据过滤模块318的另一示例使用中,示例事件洞察模块314被配置为通过将数据过滤模块318用作传感器数据的关联函数来分析车辆感测数据和预先计划的轨迹数据。在该示例中,从分析中识别异常包括当传感器数据之间的关联性偏离预定水平时识别一种情况。
示例事件洞察模块314还包括地图异常合成模块320,其被配置为生成异常消息,该异常消息包含传感器数据(包括地图异常热点处的地面视角图像)和与所识别的异常有关的预先计划的轨迹数据,并将异常消息发送到与地图差异检测器304相关联的中央存储库。
通过使用示例事件洞察模块314,示例车辆302被配置为由车辆中的处理器从车辆中的导航模块312接收预先计划的轨迹数据;由处理器从一个或多个车辆感测***(例如,306、308和/或310)检索传感器数据(例如316a、316b、316c和/或316d);由处理器分析传感器数据和预定轨迹数据;由处理器从分析中识别异常(例如,经由地图异常合成模块320);并将有关异常的图像数据发送到车辆外部的基于云的服务器304;其中,基于云的服务器304被配置为分析关于异常的信息,以确定导航地图属性是否不正确。通过使用示例事件洞察模块314,示例车辆302被配置为通过识别地图和传感器数据之间的矛盾来识别地图异常热点,该异常来自自主驾驶期间的人为干预、违背导航指令,通过感测非正常驾驶行为或其他方式。
示例地图差异检测器304是计算机实现的组件,其例如由基于云的服务器在包含事件洞察模块314的任何车辆外部的位置处实现。示例地图差异检测器304可以包括:事件摄取模块(event ingestion module)322,其被配置为将来自事件洞察模块的异常信息存储在中央存储库330中;地图差异确定模块324,其被配置为确定所报告的异常是否由数字地图数据中的差异引起;以及图像修改模块326,其配置为分析来自车辆302的图像数据,以确定是否需要更新高清地图图像。
示例地图差异检测器304可以被配置为仅在大量实体报告了相同地理区域中的相似异常之后才分析某些异常信息。这可以允许地图差异检测器304滤除与地图差异无关的异常。作为示例,这可以允许地图差异检测器304滤除由于与地图差异不相关的驾驶员行为而报告的异常(例如,特定驾驶员可能不喜欢遵循导航指令,由于其他实体未报告类似异常,因此可以拒绝基于偏离导航指令的经报告异常)。
图4是描绘示例图像修改模块402的框图。示例图像修改模块402被配置为将地图异常热点处的地面视角图像序列转换为鸟瞰视角(即,自上向下的视角的)图像,将鸟瞰视角图像与和自主车辆地图创建数据关联的高清图像(例如,卫星图像)比较,如果鸟瞰视角图像指示需要进行调整,则调整该高清图像。示例图像修改模块402包括鸟瞰视角转换模块404、离群值去除模块406、误差降低模块408、图像拼接模块410和图像比较/更新模块412。示例图像修改模块402包括一个或多个处理器,其通过在计算机可读介质上编程指令而配置为实现鸟瞰视角转换模块404、离群值去除模块406、误差降低模块408、图像拼接模块410和图像比较/更新模块412。将参照图5描述鸟瞰视角转换模块404、离群值去除模块406、误差降低模块408、图像拼接模块410和图像比较/更新模块412的操作。
图5是描绘了示例图像修改模块402中的示例过程500的过程流程图,该过程用于将地图异常热点处的地面视角图像序列转换为鸟瞰视角图像,将鸟瞰视角图像与和自主车辆地图创建数据相关联的高清图像进行比较,如果鸟瞰视角图像指示需要调整,则调整高清图像。
示例过程500包括将地面视角图像502的序列转换为鸟瞰视角图像(操作504)。示例鸟瞰视角转换模块404被配置为执行鸟瞰视角转换(操作504)。具体地,示例鸟瞰视角转换模块404被配置为从多个车辆接收由车辆采集的地图异常热点的地面视角图像数据502,其中地图异常热点是由高清地图(例如,卫星地图)描述的区域,其中车辆所观察到的热点的物理特性与高清地图所提供区域的描述不一致。接收地面视角图像数据可包括:从车辆接收包括地图异常位置处的地面视角图像数据的地图异常热点报告,指示地图异常热点附近的区域中的多个车辆上传地面异常位置处的地面视角图像数据,并接收由多个车辆采集的地图异常热点的地面视角图像数据。
示例鸟瞰视角转换模块404被配置为使用单应性(homography)将地面视角图像数据转换为鸟瞰视角图像数据。使用单应性将地面视角图像数据转换成鸟瞰视角数据可包括:从4对对应的角点(corner point)计算透视变换,将该透视变换表示由3乘3变换矩阵M;将估计的透视变换矩阵M应用于地面视角图像数据。
示例过程500包括从鸟瞰视角图像数据中去除离群值(操作506)。示例离群值去除模块406被配置为从鸟瞰视角图像数据中去除离群值。示例离群值去除模块406被配置为通过应用RANSAC(随机样本一致性)算法从鸟瞰视角图像数据中去除离群值。示例的RANSAC算法对稳健的参数估计应用迭代过程,以从可包含离群值的观测数据点集拟合数学模型。在仅以一定概率产生合理结果的意义上,示例算法是不确定的,随着执行更多迭代,这一概率增加。示例RANSAC算法尝试使用一些点对拟合多个模型,然后检查模型是否能够关联大多数点。然后,由示例RANSAC算法选择最佳模型-单应性,其产生最大数量的正确匹配,以作为问题的答案。示例离群值去除模块406被配置为通过将RANSAC算法应用于鸟瞰视角图像的特征描述符和鸟瞰视角图像与之比较的高清图像的特征描述符,从鸟瞰视角图像数据中去除离群值。
示例过程500包括在离群值去除之后的误差降低(操作508)。示例误差降低模块508被配置为执行误差降低。示例误差降低模块408被配置为将误差降低算法(例如,迭代最近点(ICP)算法)应用于去除了离群值的鸟瞰视角图像数据,以降低鸟瞰视角图像数据中的误差。示例误差降低模块408被配置为通过匹配一组图像中的特征(例如,在鸟瞰视角图像和高清图像之间匹配特征)而执行图像配准,或使用直接对齐方法来搜索图像对齐,其使得重叠像素之间的绝对差之和最小,由此应用迭代最近点(ICP)算法来降低误差。特征匹配可以涉及应用ICP算法迭代地修改单应性变换,其对于(例如,使用RANSAC)使得去除了离群值的鸟瞰视角图像和(例如,使用RANSAC)去除了离群值的卫星图像之间的误差度量最小化来说是需要的。
示例过程500包括图像拼接(操作510)。示例图像拼接模块410被配置为执行图像拼接操作510。示例图像拼接模块410被配置为在误差降低后将来自鸟瞰视角图像数据的一系列连续图像拼接在一起,以产生高分辨率的图像(例如,将具有重叠视场的多个摄影图像组合在一起,以产生分段的全景图像或高分辨率图像)。通过使用单应性将地面视角图像数据转换为鸟瞰视角图像数据,应用RANSAC算法从鸟瞰视角图像数据中去除离群值,以及应用ICP算法来降低误差,可以生成在拼接操作中使用的每个连续图像。示例图像拼接模块410被配置为通过确定将一个图像中的像素坐标与另一图像中的像素坐标相关的适当数学模型,将一系列连续图像拼接在一起;估计与图像集合有关的正确对齐方式;匹配每个图像中的独特特征,以建立图像之间的对应关系;以及合并重叠的图像。
下面列出的是可用于拼接操作的示例数学模型。在此示例中,有两组方程式:
(A)运动方程式:
(B)变形(投影)方程:
Kt-1*M=Lt-1 (3)
Kt*M=Lt (4)
将公式3和公式4合并到公式2中,得出:
如果是*:
则:M*Bt=At*M
因此:Bt=M-1*At*M
·给定M是根据实验推导的,At是根据实验测得的,则可以得出Bt
·当与高清地图(例如,最终卫星图像)进行比较时,使用Bt将一系列连续图像叠加/拼接在一起
示例过程500包括将拼接的鸟瞰视角图像与高清图像514进行比较,并且如果必要则修改高清图像(操作512),以生成经修改的高清图像516。示例图像比较/更新模块412被配置为执行比较和更新操作。示例图像比较/更新模块412被配置为将拼接的连续图像序列与热点处的高清图像514进行比较,以确定对高清图像514的修改。示例图像比较/更新模块412被配置为,当确定特征存在于拼接图像中但不存在于卫星图像中时,将来自拼接图像的该特征添加到高清图像514。示例图像比较/更新模块412被配置为,当确定特征不存在于拼接图像中但存在与卫星图像中时,从卫星图像去除该特征。
示例图像修改模块402还被配置为将修改后的高清图像数据提供给自主车辆,以用于在地图异常热点附近的区域中导航。
图6A、6B和6C示出了用于使用单应性将地面视角图像数据转换成鸟瞰视角图像数据的示例技术。图6A是描绘箭头符号604的示例性地面视角图像602的图。图6B是描绘示例梯形形状612被变换为矩形形状614的图,其用于在从箭头符号的地面视角图像转换为箭头符号的鸟瞰视角图像时用于使箭头符号604变形(warp)。图6C是示出了通过变形将地面视角图622中的箭头形状624转换为鸟瞰视角图632中的箭头形状634的图。
如图6B所示,示例鸟瞰视角转换模块(例如,鸟瞰视角转换模块404)被配置为从4对对应的角点计算透视变换:
其中i=1、2、3、4
透视变换由3x3矩阵M表示:
/>
单应性矩阵M可被计算
因此,在每个要变形的图像中,将估计的透视变换矩阵M应用于图像,并将原始像素(x,y)投影到(X_dst,Y_dst):
鸟瞰视角(变形的)图像原始地面视角图像
图6C示出了梯形区域626,其用于识别地面视角图像622(其将被变形以产生箭头符号634的鸟瞰视角图像632)中的箭头符号624周围的像素。梯形区域626的四个角(628a、628b、628c和628d)分别平移到变形的鸟瞰视角图像中的四个角(638a、6368、638c和638d)。
图7是示例***700中的流程图,该***使用RANSAC离群值检测和消除模块702用于离群值的去除,以及ICP模块704用于误差检测。在示例***700中,经由特征描述模块706识别鸟瞰视角图像701的特征,并且经由特征描述模块708识别高清图像703(例如,卫星图像)的特征。鸟瞰视角图像701的识别出的特征[f1,f2,...,fn]和高清图像703的识别出的特征[g1,g2,...,gn]被输入到RANSAC模块702。可以使用包括SIFT/SURF/ORB/FAST等的不同特征提取方法来生成鸟瞰视角图像701和高清图像703的特征。
示例RANSAC模块702被配置为随机选择点的最小子集;假设一个模型;计算误差函数;选择与模型一致的点;并重复假设-验证循环。这样做是为了从鸟瞰视角图像中去除离群值。
示例***700包括特征匹配710,其中来自去除了离群值的鸟瞰视角图像的特征与高清图像的特征匹配。在特征匹配之后,经由执行ICP过程的ICP模块704,在鸟瞰视角图像和高清图像之间进行成像配准。
ICP可以用公式表示为最小化问题,其中是缩放/旋转系数:
图8A、图8B和图8C是示出将地面视角图像序列转换为拼接的鸟瞰视角图像的示例转换的图。图8A描绘了四个地面视角图像的序列。图8B描绘了鸟瞰视角图像的序列,其中每个鸟瞰视角图像对应于一个地面视角图像。图8C描绘了在拼接顺序的鸟瞰视角图像之后的示例鸟瞰视角图像。
图9是描绘用于从图像序列中生成3D图像的示例过程900的过程流程图。示例图像修改模型502可以被配置为从连续地面视角图像的序列构造热点区域的三维(3D)图像。示例过程900包括识别地面视角图像902的序列之间的关键点匹配(操作904)。示例过程900包括使用运动恢复结构(structure from motion,SFM)范围成像算法从与局部运动信号耦合的连续图像的二维序列估计用于三维结构的基本矩阵(操作906)。示例过程900包括使用对极(epipolar)几何结构找到三维结构之间的密集匹配(操作908)。示例过程900包括使用三角测量(三角测量是通过从已知点形成到点的三角形来确定该点的位置的过程)针对三维结构确定密集点云(点云是空间中的一组数据点)(操作910)。3D密集点云914可被提供给自主汽车(AV)用于更丰富的背景/含义以用于远程AV操作。示例过程900可以可选地包括:使用基于补丁的多视角立体(PMVS)算法从密集点云构建更密集的点云(操作912),以及将所述更密集的点云而不是所述密集点云提供给自主车辆(AV)。
示例过程900可以使用RANSAC来估计基本矩阵。下面讨论的是使用RANSAC估算基本矩阵的示例过程:
多次:
1.选择8个点(在此示例中,基本矩阵是秩为2的3x3矩阵,因为此处的比例无关紧要,因此8对点对应关系足以估计基本矩阵F。)
2.在SVD(奇异值分解)的帮助下使用这8个点计算针对F的解决方案
3.计数接近0的非离群值(inlier)
4.选择具有最大数量的非离群值的一个
尽管在前面的详细描述中已经呈现了至少一个示例性实施例,但是应当理解存在大量的变型。还应当理解,一个或多个示例性实施方式仅是示例,并且无意以任何方式限制本公开的范围、适用或配置。相反,前述详细描述将为本领域技术人员提供实施一个或多个示例性实施方式的便利的路线图。应当理解,在不脱离如所附权利要求及其合法等同所阐述的本公开的范围的情况下,可以对元件的功能和布置进行各种改变。

Claims (9)

1.一种用于校正高清鸟瞰视角地图图像的***,该***包括一个或多个处理器,所述一个或多个处理器被配置为对在非瞬态计算机可读介质上编码的指令进行编程,该***被配置为:
通过基于云的处理器从多个车辆接收由所述车辆采集的地图异常热点的地面视角图像数据,其中所述地图异常热点是由高清鸟瞰视角地图描述的区域,在该区域处由所述车辆观察到的所述地图异常热点的物理特性与高清鸟瞰视角地图所提供的对所述区域的描述不一致;
使用单应性将所述地面视角图像数据转换为鸟瞰视角图像数据;
从所述鸟瞰视角图像数据中去除离群值;
将用于降低误差的误差降低算法应用于去除了离群值的鸟瞰视角图像数据;
在降低误差后将来自所述鸟瞰视角图像数据的连续图像序列拼接在一起,以生成高清鸟瞰视角图像,其中,所述连续图像中的每一个已经通过使用单应性将地面视角图像数据转换为鸟瞰视角图像数据、从鸟瞰视角图像数据去除离群值并应用用于降低误差的误差降低算法而产生;
比较拼接的连续图像序列与所述地图异常热点的预先存在的高清图像,以确定对所述预先存在的高清图像的修改;以及
向自主汽车提供修改后的高清图像数据,用于在所述地图异常热点附近的区域中导航;
从拼接的连续图像序列构建所述地图异常热点的三维图像,其中,为了构建所述地图异常热点的三维图像,所述***被配置为:
识别所述拼接的连续图像序列中图像之间的关键点匹配;
使用运动恢复结构范围成像算法,从与局部运动信号耦合的拼接的连续图像序列中估计三维结构的基本矩阵;
利用对极几何结构找到三维结构之间的密集匹配;
使用三角测量确定三维结构的密集点云;以及
向自主汽车提供三维密集点云。
2.根据权利要求1所述的***,还被配置为:
从车辆接收地图异常热点的报告,该报告包括所述地图异常热点处的地面视角图像数据;
指示所述地图异常热点附近区域中的多个车辆上传在所述地图异常热点处的地面视角图像数据;以及
接收由所述多个车辆采集的所述地图异常热点的地面视角图像数据。
3.根据权利要求1所述的***,其中,为了使用单应性将所述地面视角图像数据转换为鸟瞰视角图像数据,所述***被配置为:
从4对对应的角点计算透视变换;
用变换矩阵M表示透视变换;以及
将变换矩阵M应用于所述地面视角图像数据。
4.根据权利要求1所述的***,其中,为了从所述鸟瞰视角图像数据中去除离群值,所述***被配置为应用随机样本一致性算法,以从所述鸟瞰视角图像数据中去除离群值。
5.根据权利要求1所述的***,其中,为了应用误差降低算法,所述***被配置为,通过将所述鸟瞰视角图像中的特征与所述预先存在的高清图像中的特征匹配或者使用直接对齐方法来搜索使得重叠的像素之间的绝对差之和最小化的图像对齐而执行图像配准。
6.根据权利要求5所述的***,其中,为了应用误差降低算法,所述***被配置为应用迭代最近点算法来迭代地修改单应性变换,该单应性变换用于降低去除了离群值的鸟瞰视角图像和去除了离群值的所述预先存在的高清图像之间的误差度量。
7.根据权利要求1所述的***,其中,为了从所述鸟瞰视角图像数据将连续图像序列拼接在一起,所述***被配置为:
确定将一个图像中的像素坐标与另一图像中的像素坐标相关联的适当数学模型;
估计与图像的集合相关的正确的对齐方式;
匹配每个图像中的独特特征,以建立图像之间的对应关系;以及
合并重叠的图像。
8.根据权利要求1所述的***,其中,为了将拼接的连续图像序列与所述地图异常热点的预先存在的高清图像比较以确定对所述预先存在的高清图像的修改,所述***被配置为:
当确定一特征存在于拼接的连续图像序列中但不存在于预先存在的高清图像中时,将该特征从拼接的连续图像序列添加至预先存在的高清图像;以及
当确定一特征不存在于拼接的连续图像序列中但存在于预先存在的高清图像中时,从预先存在的高清图像中去除该特征。
9.一种用于校正高清鸟瞰视角地图图像的方法,该方法包括:
通过基于云的处理器从多个车辆接收由所述车辆采集的地图异常热点的地面视角图像数据,其中,所述地图异常热点是由高清鸟瞰视角地图描述的区域,在该区域处由所述车辆观察的所述地图异常热点的物理特性与由所述高清鸟瞰视角地图提供的对于所述区域的描述不一致;
使用单应性将地面视角图像数据转换为鸟瞰视角图像数据;
从鸟瞰视角图像数据中去除离群值;
将用于降低误差的误差降低算法应用于去除了离群值的鸟瞰视角图像数据;
在降低误差后将来自鸟瞰视角图像数据的连续图像序列拼接在一起,以生成一高清鸟瞰视角图像,其中,所述连续图像中的每一个已经通过使用单应性将地面视角图像数据转换为鸟瞰视角图像数据、从鸟瞰视角图像数据去除离群值、并应用用于降低误差的误差降低算法而产生;
比较拼接的连续图像序列与所述地图异常热点的预先存在的高清图像,以确定对所述预先存在的高清图像的修改;以及
向自主汽车提供修改后的高清图像数据,用于在地图异常热点附近的区域中导航;
所述方法还包括:
从拼接的连续图像序列构建所述地图异常热点的三维图像,其中,为了构建所述地图异常热点的三维图像,具体包括:
识别所述拼接的连续图像序列中图像之间的关键点匹配;
使用运动恢复结构范围成像算法,从与局部运动信号耦合的拼接的连续图像序列中估计三维结构的基本矩阵;
利用对极几何结构找到三维结构之间的密集匹配;
使用三角测量确定三维结构的密集点云;以及
向自主汽车提供三维密集点云。
CN202010046027.XA 2019-01-17 2020-01-16 顺序地面场景图像投影合成与复杂场景重构的方法及设备 Active CN111442776B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/249,969 US11143514B2 (en) 2019-01-17 2019-01-17 System and method for correcting high-definition map images
US16/249,969 2019-01-17

Publications (2)

Publication Number Publication Date
CN111442776A CN111442776A (zh) 2020-07-24
CN111442776B true CN111442776B (zh) 2024-01-09

Family

ID=71402845

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010046027.XA Active CN111442776B (zh) 2019-01-17 2020-01-16 顺序地面场景图像投影合成与复杂场景重构的方法及设备

Country Status (3)

Country Link
US (1) US11143514B2 (zh)
CN (1) CN111442776B (zh)
DE (1) DE102019133536A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11215987B2 (en) * 2019-05-31 2022-01-04 Nissan North America, Inc. Exception situation playback for tele-operators
US11340624B2 (en) * 2019-08-29 2022-05-24 Ford Global Technologies, Llc Vehicle neural network
US11680804B2 (en) * 2019-12-02 2023-06-20 Toyota Motor North America, Inc. System and method for verifying roads
US11340081B2 (en) * 2020-04-08 2022-05-24 Pony Ai Inc. System and method for updating map
US20220126853A1 (en) * 2020-10-26 2022-04-28 GM Global Technology Operations LLC Methods and systems for stiching of images into a virtual image
CN112484746B (zh) * 2020-11-26 2023-04-28 上海电力大学 一种基于地平面的单目视觉辅助激光雷达里程计方法
CN112652045A (zh) * 2020-12-30 2021-04-13 哈尔滨工业大学(威海) 一种面向自动驾驶虚实融合测试的点云融合方法及其应用
US11747164B2 (en) * 2021-01-13 2023-09-05 GM Global Technology Operations LLC Methods for multi-dimensional lane matching for autonomous vehicle localization
US20220341750A1 (en) * 2021-04-21 2022-10-27 Nvidia Corporation Map health monitoring for autonomous systems and applications
CN113449687B (zh) * 2021-07-19 2023-08-01 北京百度网讯科技有限公司 兴趣点出入口的识别方法、装置及电子设备
DE102021208525A1 (de) 2021-08-05 2023-02-09 Volkswagen Aktiengesellschaft Verfahren und Kartenerzeugungseinrichtung für ein Fahrzeug zur Erzeugung einer hochauflösenden Karte einer Bodenfläche in einem Fahrzeugumfeld
US11842504B2 (en) * 2021-08-13 2023-12-12 Mitsubishi Electric Research Laboratories, Inc. Systems and methods for image processing based on optimal transport and epipolar geometry
CN114217277A (zh) * 2021-12-09 2022-03-22 联陆智能交通科技(上海)有限公司 雷达摄像头标定质量评价方法及***
CN114494618B (zh) * 2021-12-30 2023-05-16 广州小鹏自动驾驶科技有限公司 地图的生成方法、装置、电子设备及存储介质
CN114371485B (zh) * 2022-03-21 2022-06-10 中汽研(天津)汽车工程研究院有限公司 一种基于icp与多特征数据关联的障碍物预测与跟踪方法
CN114782300B (zh) * 2022-04-29 2023-04-07 苏州华兴源创科技股份有限公司 产品图像重构方法、产品重构模型训练方法、装置
WO2024073033A1 (en) * 2022-09-30 2024-04-04 Tesla, Inc. Labeling training data using high-volume navigation data
DE102022004338B3 (de) 2022-11-21 2023-12-28 Mercedes-Benz Group AG Verfahren zur Ermittlung eines Straßenzustandes
CN117292394B (zh) * 2023-09-27 2024-04-30 自然资源部地图技术审查中心 地图审核方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102721420A (zh) * 2012-06-28 2012-10-10 宇龙计算机通信科技(深圳)有限公司 一种基于云计算的导航纠错提示***及方法
CN104870288A (zh) * 2012-11-06 2015-08-26 谷歌公司 辅助自主车辆行驶经过车道合并的方法和***
CN107465890A (zh) * 2016-06-06 2017-12-12 爱信精机株式会社 车辆的图像处理装置
WO2018225446A1 (ja) * 2017-06-09 2018-12-13 株式会社デンソー 地図変化点検出装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10019002B2 (en) * 2016-10-13 2018-07-10 Navico Holding As Unmanned vehicle control and operation in a marine environment
WO2019109082A1 (en) * 2017-12-01 2019-06-06 DeepMap Inc. High definition map based localization optimization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102721420A (zh) * 2012-06-28 2012-10-10 宇龙计算机通信科技(深圳)有限公司 一种基于云计算的导航纠错提示***及方法
CN104870288A (zh) * 2012-11-06 2015-08-26 谷歌公司 辅助自主车辆行驶经过车道合并的方法和***
CN107465890A (zh) * 2016-06-06 2017-12-12 爱信精机株式会社 车辆的图像处理装置
WO2018225446A1 (ja) * 2017-06-09 2018-12-13 株式会社デンソー 地図変化点検出装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于鱼眼相机的实时视频拼接技术研究;孙炬辉;《中国优秀硕士学位论文全文数据库 信息科技辑》(第09期);5-39页 *

Also Published As

Publication number Publication date
CN111442776A (zh) 2020-07-24
DE102019133536A1 (de) 2020-07-23
US11143514B2 (en) 2021-10-12
US20200232800A1 (en) 2020-07-23

Similar Documents

Publication Publication Date Title
CN111442776B (zh) 顺序地面场景图像投影合成与复杂场景重构的方法及设备
US12032067B2 (en) System and method for identifying travel way features for autonomous vehicle motion control
US10853670B2 (en) Road surface characterization using pose observations of adjacent vehicles
US11436743B2 (en) Systems and methods for semi-supervised depth estimation according to an arbitrary camera
CN108073170B (zh) 用于自主车辆的自动化协同驾驶控制
US10345822B1 (en) Cognitive mapping for vehicles
US11250576B2 (en) Systems and methods for estimating dynamics of objects using temporal changes encoded in a difference map
US9443309B2 (en) System and method for image based mapping, localization, and pose correction of a vehicle with landmark transform estimation
US20210004646A1 (en) Systems and methods for weakly supervised training of a model for monocular depth estimation
Furgale et al. Toward automated driving in cities using close-to-market sensors: An overview of the v-charge project
CN111918053A (zh) 车辆图像验证
US20200149896A1 (en) System to derive an autonomous vehicle enabling drivable map
CN115552200A (zh) 用于生成重要性占据栅格地图的方法和***
CN110726399A (zh) 姿态估计
CN111986128A (zh) 偏心图像融合
CN117576652B (zh) 道路对象的识别方法、装置和存储介质及电子设备
CN114821517A (zh) 用于学习神经网络以确定环境中车辆姿态的方法和***
RU2767838C1 (ru) Способы и системы для формирования обучающих данных для обнаружения горизонта и плоскости дороги
CN114341939A (zh) 作为数据增强方法的真实世界图像道路曲率生成
Thomas et al. Sensor-based road model estimation for autonomous driving
DE102023102645A1 (de) Lokalisierung von fahrzeugen
Chipka et al. Estimation and navigation methods with limited information for autonomous urban driving
EP4230960A2 (en) Method for generating high definition maps, and cloud server and vehicle
EP4266261A1 (en) 3d road surface estimation for automated driving systems
US20240127603A1 (en) Unified framework and tooling for lane boundary annotation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant