CN112912920A - 用于2d卷积神经网络的点云数据转换方法和系统 - Google Patents

用于2d卷积神经网络的点云数据转换方法和系统 Download PDF

Info

Publication number
CN112912920A
CN112912920A CN201980070698.5A CN201980070698A CN112912920A CN 112912920 A CN112912920 A CN 112912920A CN 201980070698 A CN201980070698 A CN 201980070698A CN 112912920 A CN112912920 A CN 112912920A
Authority
CN
China
Prior art keywords
data
arrays
processing unit
virtual camera
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201980070698.5A
Other languages
English (en)
Other versions
CN112912920B (zh
Inventor
爱德华多·R·科拉尔·索托
埃赫桑·内扎达里亚
刘冰冰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN112912920A publication Critical patent/CN112912920A/zh
Application granted granted Critical
Publication of CN112912920B publication Critical patent/CN112912920B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • 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/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/251Fusion techniques of input or preprocessed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/803Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of input or preprocessed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Image Analysis (AREA)

Abstract

描述了用于2D卷积神经网络(convolutional neural network,CNN)的3D数据编码方法和系统。将3D数据集编码为一个或多个阵列的集合。通过将3D点的3D坐标投影到由已定义虚拟摄像头参数集定义的2D图像平面上,计算阵列的2D索引。虚拟摄像头参数包括定义2D图像平面的摄像头投影矩阵。根据计算得到的2D索引,将点的每个3D坐标存储在阵列中。提供编码得到的阵列集合,用于输入到2D CNN中进行训练或推理。

Description

用于2D卷积神经网络的点云数据转换方法和系统
技术领域
本公开涉及将3D点云数据编码为可适用于2D卷积神经网络的2D数据阵列集合,例如用于进行对象检测、分类和分段。
背景技术
自动驾驶车辆可以使用不同的传感器来感知其周围环境,可以处理传感器数据以在空间中生成数据点集,并且可以使用计算机视觉系统来处理数据点集,以便检测和识别周围环境中的感兴趣对象(例如行人或其他汽车)。传感器例如激光雷达和摄像头(例如光学摄像头)经常用于自动驾驶车辆,以感知车辆周围环境中的对象。激光雷达和摄像头具有不同的特点和优势。例如,光学摄像头感知环境中的对象,捕获感知到的对象的图像,并生成表示所捕获图像的2D图像数据。然而,光学摄像头在极端光照变化下(例如夜间或非常明亮的环境中)可能无法感知对象,并且可能仅限于捕获二维(two-dimensional,2D)图像。然而,光学摄像头可能能够感知距离光学摄像头较远的对象的图像。激光雷达可以捕获周围环境的三维(three-dimensional,3D)信息,并在空间中生成表示所捕获3D信息的数据点集。本领域中通常将三维空间中的数据点集称为点云,并由激光雷达作为3D数据提供。尽管激光雷达可能能够捕获较宽区域的3D信息,但激光雷达可能无法检测远离激光雷达的小和/或窄的对象,并且可能具有有限的传感分辨率,特别是在垂直方向上。因此,计算机视觉系统可以有益地同时使用从激光雷达接收的3D数据和从摄像头接收的2D图像。
已尝试将激光雷达和2D图像数据一起作为计算机视觉系统的输入,并训练这种系统学习如何进行对象检测、分类和分段。计算机视觉系统实现了特征金字塔网络聚合视图对象检测(Aggregate View Object Detection with Feature Pyramid Network,AVOD-FPN)算法,该算法对2D图像数据和激光雷达数据分别进行特征提取,然后对用于对象检测和分类的投影对应区域特征进行早期融合。然而,实现AVOD-FPN算法的计算机视觉系统需要为每个对象类别单独训练网络(例如,一个网络训练用于检测汽车,另一个网络单独训练用于检测行人),在实践中,通常需要多个并行运行的计算设备来检测多个对象类别。在其他计算机视觉系统中,多视点3D(Multi-View 3D,MV3D)算法将激光雷达数据投影到圆柱面,SqueezeSeg算法将激光雷达数据投影到球面。然而,这些算法中的投影几何形状可能难以与设计用于分析2D平面图像的现有卷积神经网络(convolved neural network,CNN)一起使用,并且可能难以将这些投影几何形状与2D光学图像进行空间配准,且成本高昂。已开发出包括区域CNN(regional CNN,R-CNN)(例如掩码R-CNN)的高精度计算机视觉系统,用于对从摄像头接收的2D、平面、RGB图像数据进行对象检测、分类和分段。
期望能够使用包括CNN的计算机视觉系统分析3D点云数据,其中CNN设计用于对2D图像数据(例如表示2D RGB图像的2D图像数据)进行对象检测、分类和分段。
发明内容
本公开提供了将3D点云数据编码为阵列集合(例如3个2D阵列的集合)的方法和系统,所述阵列集合可以与2D CNN兼容,并可作为所述2D CNN(例如2D掩码区域CNN(RegionalCNN,R-CNN)的输入。所述阵列集合可以与2D图像数据(例如RGB阵列的形式)相组合,所述组合数据可以用于训练和/或作为2D CNN的输入,所述2D CNN进行2D对象检测、分类、回归和分段。所述阵列集合也可以单独用于训练和/或作为2D CNN的输入。在一些示例中,除了2D对象检测、分类、回归和分段,还可以进行3D语义分段和/或回归。
在一些示例性方面中,本公开描述了一种方法,包括:接收点云形式的3D数据集;针对所述3D数据的每个数据点,通过以下方式将所述3D数据集编码为一个或多个阵列的集合:通过将所述点的3D坐标投影到由已定义虚拟摄像头参数集定义的二维(2D)图像平面上,计算所述一个或多个阵列的2D索引,其中所述虚拟摄像头参数集包括定义所述2D图像平面的摄像头投影矩阵;根据所述计算得到的2D索引,将所述数据点的每个3D坐标存储在所述一个或多个阵列中。所述方法还包括:输出所述一个或多个阵列的集合,用于输入到2D卷积神经网络(convolved neural network,CNN)中进行训练或推理。
在上述任一方面/实施例中,所述方法还可以包括:根据预定义的一个或多个参数对所述3D数据进行调整,生成调整后的3D数据集。所述调整可以是以下至少一项:对所述3D坐标进行缩放、移位、归一化或量化。所述一个或多个阵列的集合可以由所述调整后的3D数据生成。
在上述任一方面/实施例中,所述一个或多个阵列的集合可以包含经调整可识别为图像数据的值。
在上述任一方面/实施例中,所述虚拟摄像头参数包括感兴趣区域(region ofinterest,ROI)的定义。所述方法还可以包括:定义对应于所述ROI的所述3D数据的子集;将所述3D数据的子集编码为所述一个或多个阵列的集合。
在上述任一方面/实施例中,所述方法还可以包括:通过扩张填充所述一个或多个阵列的集合中的任何空洞。
在上述任一方面/实施例中,所述方法还可以包括:使用定义第二2D图像平面的第二虚拟摄像头参数集,将所述3D数据编码为一个或多个阵列的第二集合。
在上述任一方面/实施例中,所述虚拟摄像头参数集对应于光学摄像头的参数。
在上述任一方面/实施例中,所述方法还可以包括:将所述一个或多个阵列的集合与所述光学摄像头获得的2D图像数据集相组合,以生成组合数据集;将所述组合数据集作为所述2D CNN的输入来进行对象检测;输出2D对象限界框集和2D对象掩码集。
在上述任一方面/实施例中,所述组合可以包括:在所述一个或多个阵列的集合和所述2D图像数据集之间进行空间配准;将所述一个或多个阵列的集合与所述2D图像数据集进行级联。
在一些方面中,本公开描述了一种方法,包括:接收点云形式的3D数据集。所述方法还包括:针对所述3D数据的每个数据点,通过以下方式将所述3D数据集编码为一个或多个阵列的集合:通过将所述点的3D坐标投影到由已定义虚拟摄像头参数集定义的二维(2D)图像平面上,计算所述一个或多个阵列的2D索引,其中所述虚拟摄像头参数集包括定义所述2D图像平面的摄像头投影矩阵;根据所述计算得到的2D索引,将所述数据点的每个3D坐标存储在所述一个或多个阵列中。所述方法还包括:将所述一个或多个阵列的集合作为2D卷积神经网络(convolutional neural network,CNN)的输入来进行对象检测,其中所述2DCNN用于输出检测对象集。所述方法还包括:将所述检测对象集作为2D分段和回归单元的输入来进行对象分类、回归和分段,其中所述2D分段和回归单元用于为所述检测对象集添加感兴趣类别标签,并针对所述检测对象集输出2D对象限界框集和2D对象掩码集。
在上述任一方面/实施例中,可以存储映射索引以将每个计算得到的2D索引与所述3D数据中的相应点相关联。所述方法还可以包括:通过使用所述映射索引将每个2D对象掩码与所述3D数据中的相应点集群相关联来进行3D语义分段;输出3D对象掩码集。
在上述任一方面/实施例中,所述方法还可以包括:使用3D回归网络进行3D回归,以输出3D对象限界框集,其中所述3D回归网络被训练以回归所述一个或多个阵列的集合中的数据点子集所对应的3D限界框的参数。
在一些方面中,本公开描述了用于实现数据分析系统的处理单元。所述数据分析系统实现以下操作:接收点云形式的3D数据集;将所述3D数据编码为一个或多个阵列的集合。所述编码针对所述3D数据的每个数据点通过以下方式执行:通过将所述点的3D坐标投影到由已定义虚拟摄像头参数集定义的2D图像平面上,计算所述一个或多个阵列的2D索引,其中所述虚拟摄像头参数集包括定义所述2D图像平面的摄像头投影矩阵;根据所述计算得到的2D索引,将所述数据点的每个3D坐标存储在所述一个或多个阵列中。所述数据分析系统还实现以下操作:输出所述一个或多个阵列的集合,用于输入到所述数据分析系统的2D卷积神经网络(convolved neural network,CNN)中进行训练或推理。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统实现以下操作:根据预定义的一个或多个参数对所述3D数据进行调整,生成调整后的3D数据集。可以通过执行以下至少一项调整所述3D数据:对所述3D坐标进行缩放、移位、归一化或量化。所述一个或多个阵列的集合可以由所述调整后的3D数据生成。
在上述任一方面/实施例中,所述调整后的3D数据包含经调整可识别为图像数据的值。
在上述任一方面/实施例中,所述虚拟摄像头参数包括感兴趣区域(region ofinterest,ROI)的定义。所述处理单元还可以用于所述数据分析系统实现以下操作:定义对应于所述ROI的所述3D数据的子集;将所述3D数据的子集编码为所述一个或多个阵列的集合。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统实现以下操作:通过扩张填充所述一个或多个阵列的集合中的任何空洞。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统实现以下操作:使用定义第二2D图像平面的第二虚拟摄像头参数集,将所述3D数据编码为一个或多个阵列的第二集合。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统实现以下操作:将所述一个或多个阵列的集合作为所述2D CNN的输入来进行对象检测;输出2D对象限界框集和2D对象掩码集。
在上述任一方面/实施例中,可以存储映射索引以将每个计算得到的2D索引映射到所述3D数据中的相应点。所述处理单元还可以用于所述数据分析系统实现以下操作:通过使用所述映射索引将每个2D对象掩码与所述3D数据中的相应点集群相关联来进行3D语义分段;输出3D对象掩码集。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统实现以下操作:使用3D回归网络进行3D回归,以输出3D对象限界框集,其中所述3D回归网络被训练以回归所述一个或多个阵列的集合中的数据点子集所对应的3D限界框的参数。
在上述任一方面/实施例中,所述虚拟摄像头参数集对应于光学摄像头的参数。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统实现以下操作:将所述一个或多个阵列的集合与所述光学摄像头获得的2D图像数据集相组合,以生成组合数据集;将所述组合数据集作为所述2D CNN的输入来进行对象检测;输出2D对象限界框集和2D对象掩码集。
在上述任一方面/实施例中,所述处理单元还可以用于所述数据分析系统通过以下方式执行所述组合:在所述一个或多个阵列的集合和所述2D图像数据集之间进行空间配准;将所述一个或多个阵列的集合与所述2D图像数据集进行级联。
附图说明
现在将通过示例参考示出本申请的示例实施例的附图,其中:
图1示出了示例性自动驾驶车辆的部分组件的框图。
图2示出了一组2D摄像头图像与2D CNN一起使用的示例性示意图。
图3示出了用于将3D点云数据编码为2D阵列集合的示例性方法的流程图。
图4概念性地示出了图3的示例性方法。
图5A示出了2D摄像头数据和3D数据与2D CNN一起使用的示例性示意图。
图5B示出了已编码为2D阵列的3D数据与2D CNN一起使用的示例性示意图。
图6示出了利用3D数据和2D CNN进行对象检测的示例性方法的流程图。
图7示出了示例性2D摄像头图像和相应的编码3D数据的示例性2D阵列。
在不同的附图中,可以使用类似的附图标记来表示类似的组件。
具体实施方式
本公开的一些示例在自动驾驶车辆环境中进行描述。然而,本文所公开的方法和系统也可以适用于在自动设备以外的设备中实现,例如非车载设备和非自动设备。例如,对所捕获的2D和3D数据进行对象检测、分类和/或分段的任何系统或设备均可受益于本文中所描述的示例。此外,本公开的示例可以在图像处理设备中实现,例如工作站或与自动机器无关的其他计算设备(例如用于分析雷达数据或超声波数据的图像处理工作站)。
尽管本文中所描述的示例将汽车称为自动驾驶车辆,但本公开的指导可以通过其他形式的自动驾驶或半自动驾驶车辆来实现,例如包括电车、地铁、卡车、公共汽车、水上交通工具、飞机、船舶、无人机(也称为无人机(unmanned aerial vehicles,UAV)、仓储设备、建筑设备或农场设备,并且可以包括非载客车辆和载客车辆。本文所公开的方法和系统也可以适用于在非车载设备中实现,例如自动真空吸尘器和自动割草机。
图1示出了示例性自动驾驶车辆100的某些组件的框图。尽管车辆100描述为自动,但可以在全自动、半自动或全用户控制模式下操作。在本公开中,车辆100在汽车的实施例中描述,然而,本公开可以在其他车载或非车载机器中实现,如上所述。
例如,车辆100包括传感器系统110、数据分析系统120、路径规划系统130、车辆控制系统140和机电系统150。其他系统和组件可适当包括在车辆100中。车辆的各种系统和组件可以相互通信,例如有线或无线通信。例如,传感器系统110可以与数据分析系统120、路径规划系统130和车辆控制系统140通信;数据分析系统120可以与路径规划系统130和车辆控制系统140通信;路径规划系统130可以与车辆控制系统140通信;车辆控制系统140可以与机械系统150通信。
传感器系统110包括各种传感单元,用于收集车辆100的内部和/或外部环境信息。在所示的示例中,传感器系统110包括雷达单元112、激光雷达单元114、摄像头单元116和全球定位系统(global positioning system,GPS)单元118,用于收集车辆的外部环境信息。传感器系统110可以包括其他传感器单元,例如温度传感器、降水传感器、麦克风或其他可能的传感器。
摄像头单元116可以捕获例如静态图像和/或由一组图像组成的视频,并生成表示所捕获的静态图像和/或视频图像的图像数据。图像数据可以是二维(two-dimensional,2D)图像数据,其可以通过3个2D阵列的形式编码,所述3个2D阵列分别编码特定视场(field-of-view,FOV)中所捕获的2D图像的红色、绿色和蓝色(red,green and blue,RGB)强度值。3个2D阵列具有相同的高度和宽度尺寸(例如h×w),每个阵元处的强度值表示所捕获的2D图像中对应像素的RGB值。尽管本文描述为3个2D阵列的集合,但2D图像数据也可以编码在具有相同高度和宽度尺寸且深度为3(例如h×w×3)的3D阵列中,其中每个深度对应于红、绿、蓝三种强度值之一。应理解,即使2D图像数据通过深度为3的3D阵列的形式进行编码,其中编码的数据是未捕获深度信息的2D数据(也就是说,这种3D阵列的“深度”分别对应于红色、绿色和蓝色强度值,而不是对应于实际深度)。
激光雷达单元114可以在大视场(例如360°视角)中捕获车辆100的信息。激光雷达单元114可以捕获外部环境的三维(three-dimensional,3D)信息,并且可以采用3D空间(例如3D点云)中的数据点集的形式进行编码,且作为3D数据提供,其中3D数据的每个数据点表示3D空间中感知对象(例如光线从对象反射回来的起点)的3D坐标(例如x、y、z的测量值)。根据外部环境,3D点云中的数据点可以不规则地间隔。在一些示例中,除了3D坐标,3D数据的每个数据点也可以包含其他信息,例如反射光的强度或检测时间。
通过各传感单元112、114、116、118,传感系统110可以收集车辆100的局部外部环境的信息(例如周围的障碍物)以及附近的信息(例如雷达单元112和激光雷达单元114可以从车辆100周围半径100米或更远的区域收集信息)。传感器系统110还可以收集车辆100相对于参照系的位置和方向信息(例如通过GPS单元118)。传感器系统110还可以收集车辆100本身的信息。在这种情况下,车辆100本身可以视为感知环境的一部分。例如,传感器系统110可以从感知单元(例如加速度计、速度计、里程计和/或惯性测量单元)收集信息,其可以是或者不是传感器系统110的一部分,以确定车辆100的状态,例如车辆100的线性速度、角速度、加速度和轮胎抓地力。传感器系统110可以重复地(例如按照固定的时间间隔)实时接收其传感单元的信息。传感器系统110反过来可以向车辆100的其他组件提供实时或近实时的传感器数据。
传感器系统110与数据分析系统120通信以向数据分析系统120提供传感器数据,包括2D图像数据和3D数据,数据分析系统120用于检测和识别外部环境中的对象,例如检测和识别行人或其他汽车。数据分析系统120可以是任何合适的计算机视觉系统,其实现机器学习算法以检测和识别外部环境中的对象,例如检测和识别行人或其他汽车。本示例中的数据分析系统120包括3D数据编码器122、2D CNN 124、2D分段和回归单元126以及可选的3D分段和回归单元128。数据分析系统120可以通过软件实现,软件可以包括任意数量的独立或互连的模块或功能,例如用于实现任何合适的机器学习算法和CNN。例如,尽管在图3中示出为单独的块,但3D数据编码器122、2D CNN 124、2D分段和回归单元126以及3D分段和回归单元128可以实现为数据分析系统120的整体对象检测功能的一部分。下文将进一步讨论对象检测的细节。数据分析系统120的软件可以通过专用图像处理单元执行,或者可以通过车辆100的车辆控制器(未示出)的一个或多个通用处理单元执行。数据分析系统120可以重复地(例如按照固定的时间间隔)从传感器系统110接收传感器数据,并实时或近实时地进行对象检测和识别。数据分析系统120的输出可以包括,例如,在2D和可选的3D空间中识别对象(包括对象类别、对象位置和对象边界)的数据。
尽管图1所示的数据分析单元120的示例性实施例中将3D回归和分段单元描述为可选,但在替代性实施例中,数据分析系统120包括3D数据编码器122、2D CNN 124、2D分段和回归单元126和3D分段和回归单元128中的全部。
来自传感器系统110的传感器数据以及数据分析系统120的输出可以提供给路径规划系统130。路径规划系统130对车辆100进行路径规划。例如,路径规划系统130可以使用来自GPS单元118的信息来规划车辆100从起始点到对象目的地的行驶路径。路径规划系统130可以实现为一个或多个软件模块或控制块,由车辆100中的一个或多个处理单元执行。在一些示例中,路径规划系统130可以按不同的细节级别执行路径规划,例如在任务规划级别、行为规划级别和运动规划级别执行路径规划。路径规划系统130的输出可以包括定义车辆100行驶的一个或多个规划路径的数据。路径规划系统130实时或近实时地执行路径规划,以使车辆100能够响应于感知环境中的实时变化。路径规划系统130的输出可以提供给车辆控制系统140。
车辆控制系统140用于控制车辆100的操作。车辆控制系统140可以用于提供对车辆100的完全、部分或辅助控制。车辆控制系统140可以基于来自路径规划系统130的规划路径,在车辆100自动或半自动操作时,用于完全或部分控制机电系统150的操作。从传感器系统110和/或数据分析系统120接收的数据也可以供车辆控制系统140使用。在本示例中,车辆控制单元140包括转向单元142、制动单元144和节流单元146。这些单元142、144、146中的每一个单元都可以实现为车辆控制系统140内的单独或集成的软件模块或控制块。单元142、144、146分别生成控制信号以控制车辆100的转向、制动和节流。车辆控制系统140可以包括用于控制车辆100的其他方面的附加组件,例如控制转向信号和制动灯。
机电系统150从车辆控制系统140接收控制信号以操作车辆100的机械组件。机械系统150影响车辆100的物理操作。在所示的示例中,机电系统150包括引擎152、传动装置154和轮子156。例如,引擎152可以是汽油动力引擎、电力动力引擎或汽油/电力混合动力引擎。其他组件可以包括在机电系统150中,例如包括转向信号、制动灯、风扇和窗户。
车辆100可以包括未示出的其他组件,例如包括用户界面系统和无线通信系统(例如包括天线)。这些其他组件还可以向上述系统提供输入和/或从上述系统接收输出。车辆100可以与外部系统通信,例如外部地图数据库。车辆100还可以与网络通信,例如车辆网络,该网络支持自动驾驶车辆、半自动驾驶车辆或非自动驾驶车辆之间的通信。
传感器系统110、数据分析系统120、路径规划系统130和车辆控制系统140可以单独或相结合地至少部分地在车辆100的一个或多个处理单元中实现。例如,车辆100可以包括具有一个或多个物理处理器(例如微处理器、微控制器、数字信号处理器、现场可编程门阵列或专用集成电路)的处理单元,该一个或多个物理处理器耦合到一个或多个有形的存储器(未示出)。处理单元也可以称为计算单元或控制器。存储器可以存储由处理单元执行的指令、数据和/或软件模块,以执行本文中所描述的系统的功能。存储器可以存储用于实现车辆100的其他操作的其他软件指令和数据。每个存储器可以包括任何合适的易失性和/或非易失性存储和检索设备。可以使用任何合适类型的存储器,例如随机存取存储器(random access memory,RAM)、只读存储器(read only memory,ROM)、硬盘、光盘、用户识别模块(subscriber identity module,SIM)卡、记忆棒、安全数码(secure digital,SD)存储卡等。
如上所述,摄像头单元116输出的数据可以是2D图像数据的形式,例如2D RGB图像数据。设计实现机器学习算法的各种计算机视觉系统,以分析2D图像数据,例如2D RGB图像数据,提供可用于控制自动驾驶车辆100的信息。图2示出了2D计算机视觉系统的示例,该2D计算机视觉系统使用表示摄像头单元116捕获的图像的2D图像数据202来实现用于对象检测的机器学习算法。在本示例中,2D图像数据202采用3个2D阵列202r、202g、202b的形式,分别表示摄像头单元116捕获的2D图像中的红色、绿色和蓝色强度。提供2D图像数据202作为2D CNN 124的输入。2D CNN 124可以是任何CNN或其他深度神经网络,其可以训练以学习检测2D图像数据中的对象。2D CNN 124可以基于2D CNN 124所支持的任何形式的数据来训练。例如,区域CNN(regional CNN,R-CNN)已被用于对象检测和分段。用于对象检测的示例性R-CNN包括,例如,Fast R-CNN、Faster R-CNN和Mask R-CNN。特别地,掩码R-CNN已用于提供像素级的对象检测和分段。通常,2D计算机视觉系统包括2D CNN 124和2D分段和回归单元。2D CNN 124可以计算对应于2D图像数据中检测到的对象的特征,并以特征阵列的形式输出检测到的对象,该特征阵列可以由2D分段和回归单元126进一步处理。本示例中的2D分段和回归单元126包括子网,该子网包括对象分类子网212,用于为检测对象添加兴趣类别标签(例如自动驾驶车辆环境中的汽车、卡车和行人);2D回归子网214,用于执行2D限界框回归并生成2D限界框;2D掩码子网216,用于对检测对象的掩码执行2D掩码分段。可以使用其他子网。掩码R-CNN可以用于结合2D CNN 124的功能和2D分段和回归单元126的功能,下文将进一步讨论。发现掩码R-CNN在2D图像数据中能产生相对准确的对象检测、分类和定位,可以适用于自动驾驶车辆。通常,输入到时计算机视觉系统的2D图像数据可以用于训练计算机视觉系统,或者训练得到的计算机视觉系统可以对输入的2D图像数据进行对象检测。例如,训练得到的计算机视觉系统可以通过对输入的2D图像数据的推理来进行对象检测。
然而,为分析2D图像数据而设计的2D计算机视觉系统可能无法用于分析3D数据。在本文中所描述的示例中,3D数据(例如从激光雷达单元114或雷达传感器112等其他传感器、摄像头单元116的立体摄像头或超声波单元(未示出)接收的3D数据)可以转换为一个或多个阵列的集合,该一个或多个阵列可以作为输入和/或用于训练2D计算机视觉系统。
图3示出了用于将3D数据编码为一个或多个阵列的集合的示例性方法300的流程图,该一个或多个阵列的集合例如为3个2D阵列的集合(例如编码X、Y、Z 3D坐标),适合输入到2D计算机视觉系统。图4概念性地示出了示例性方法300。在图1的自动驾驶车辆100的环境中,方法300可以由数据分析单元的3D数据编码器122执行,例如使用车辆100的图像处理单元或通用处理单元。当从激光雷达单元114等传感器接收3D数据时,可以实时或近实时地执行方法300。
在302处,接收3D数据集。在本文所讨论的一些示例中,从激光雷达单元114接收3D数据,但是方法300也可以应用于从其他传感器(例如雷达单元、立体摄像头或超声单元)接收的其他3D数据。在自动驾驶车辆100中,3D数据可以是从传感器系统110的激光雷达单元114等传感器接收并实时或近实时地提供给数据分析系统120的数据。在其他示例中,3D数据可以是先前存储的数据(例如先前从其他传感器(例如雷达单元、立体摄像头或超声波单元)接收的数据),从数据库或其他存储器中检索。
在304处,确定虚拟摄像头参数。虚拟摄像头参数定义了一个2D图像平面,用于执行2D编码。虚拟摄像头参数包括摄像头投影矩阵(通常为3×4摄像头投影矩阵),定义了如何将3D点投影或映射到2D图像平面中的2D位置。虚拟摄像头参数还可以定义对应于2D图像平面FOV的3D感兴趣区域(region ofinterest,ROI)。ROI可以定义为x、y、z坐标的范围(例如由可选值Xmin、Xmax、Ymin、Ymax、Zmin、Zmax表示),定义了要转换为阵列集合的3D数据的子集。
虚拟摄像头参数集可以在概念上由具有一定方向和位置(由虚拟参考坐标系412表示)以及一定聚焦深度的虚拟摄像头410表示,如图4所示。摄像头投影矩阵定义了虚拟摄像头410的2D图像平面。在一些示例中,虚拟摄像头410的一定视场角414可以由虚拟摄像头参数中定义的ROI来定义。使用虚拟摄像头参数,可以将3D数据402中的数据点投影到2D图像平面上并在阵列集合404中进行编码,下文将进一步讨论。
需要说明的是,为了将3D数据402映射到不同的2D图像平面,虚拟摄像头参数可以有所变化。例如,图4示出了虚拟摄像头410b所表示的不同的虚拟摄像头参数集。通过改变摄像头投影矩阵,虚拟摄像头410b具有不同的虚拟参考坐标系412b和虚拟视角414b。因此,3D数据402的投影导致不同的阵列404b集合。因此,通过改变虚拟摄像头参数,可以将3D数据402投影到具有任何选定方向、位置和/或大小的2D图像平面上。
虚拟摄像头参数可以是预定义的(例如由自动驾驶车辆100中的数据分析系统120预定义)。虚拟摄像头参数也可以基于用户输入来定义。例如,可以定义虚拟摄像头参数为复制车辆100中实际摄像头单元116捕获的2D图像。可以是以下情况:一个或多个阵列的集合意在与所捕获的2D图像数据一起使用。也可以选择虚拟摄像头参数来生成没有对应实际摄像头的阵列集合。也就是说,可以选择虚拟摄像头参数,将3D数据投影到与实际摄像头的FOV不重合的2D图像平面上。这样,可以使用3D数据来人为地生成没有实际摄像头的2D数据(例如由于物理限制、成本考虑或其他原因)。
需要说明的是,可以针对使用多个虚拟摄像头参数集的3D数据集执行方法300。因此,可以使用单组3D数据生成多个阵列集合,对应于多个虚拟2D图像平面。当3D数据覆盖的FOV比实际光学摄像头捕获的2D图像数据更宽时(例如,从激光雷达单元114接收的3D数据可以捕获360°视场),这可能会有用。这样,可以利用3D数据模拟360°光学摄像头。
返回图3,在306处,将3D数据中每个数据点的3D坐标投影到由虚拟摄像头参数定义的2D图像平面上,以生成一个或多个转换后的阵列的集合。利用3×4摄像头投影矩阵P进行投影,其定义为:
P=[KR|t]
其中,K为摄像头内参矩阵,R为旋转矩阵,t为摄像头平移矢量,K、R、t共同表示所定义的虚拟摄像头参数。Geiger等人在2012年的计算机视觉与模式识别会议(Conferenceon Computer Vision and Pattern Recognition,CVPR)中描述了这些矩阵和向量的示例,以及如何初始化它们。
利用摄像头投影矩阵P,将3D数据的每个数据点投影到2D图像平面上。对于定义为Xw=[X,Y,Z,1]T的3D数据点中的给定数据点,投影生成一个2D位置:
x=[xh[0]/xh[3],xh[1]/xh[3]]T=[xc,yc]T
其中,xh=PXw。可选地,可以对x四舍五入(例如,确保xc和yc为整数值)。
3D数据中给定数据点的x、y、z值分别存储在具有索引(xc,yc)的阵元(为了简洁,也称为元素(xc,yc))的相应2D阵列中。投影结果存储在3个不同的2D阵列中(一个2D阵列存储x值,一个2D阵列存储y值,一个2D阵列存储z值)。这在图4概念性地示出。将3D数据402中具有3D坐标(x1、y1、z1)的数据点映射到阵列404集合中的索引(xc、yc)。本示例中的阵列404集合包括3个阵列:第一阵列404x存储x值,第二阵列404y存储y值,第三阵列404z存储z值。在所示的示例中,x1值存储在第一阵列404x的元素(xc,yc)中。类似地,y1值存储在第二阵列404y的元素(xc,yc)中,z1值存储在第三阵列404z的元素(xc,yc)中。3个2D阵列404x、404y、404z具有相同的高度和宽度尺寸(例如h×w)。在一些示例中,3个2D阵列404x、404y、404z可以在具有相同高度和宽度尺寸且深度为3(例如h×w×3)的3D阵列(即一个阵列的集合,而不是3个阵列的集合)中编码,其中每个深度层对应于x、y、z中的一个值。
应理解,如果使用不同的虚拟摄像头参数集,则给定数据点可以映射到不同的索引。例如,针对表示虚拟摄像头410b的不同虚拟摄像头参数集,将3D数据402中的给定数据点(x1,y1,z1)映射到404b阵列集合中的不同索引(xc’,yc’),并且x1值显示为存储在元素(xc’,yc’)中。
在一些示例中,编码到2D阵列中的每个数据点与3D数据中的对应数据点之间的关系可以存储为映射索引。映射索引指示每个条目在2D阵列中的原始3D位置。映射索引提供可用于利用2D掩码进行3D分段的信息,下文将进一步讨论。
针对3D数据402中的每个数据点或针对已定义ROI的3D数据子集中的每个数据点,将3D数据402的数据点投影到阵列集合。
完成投影后,可选地,在308处,可以根据一个或多个预定义参数调整(例如移位、缩放、归一化和/或量化)已编码到2D阵列中的3D数据的数据点。用于调整3D数据的数据点的预定义参数可以包括虚拟摄像头参数和其他参数。以这种方式调整3D数据的数据点可以有助于确保编码得到的阵列中包含的值与2D图像的格式相匹配,这对于输入到2D计算机视觉系统可能是必需的。例如,典型2D图像数据可以包含【0,255】范围内的整数值,而从传感器(例如激光雷达单元114)接收的3D数据402中的典型数据点可以包含【–400,400】范围内的数值。因此,调整3D数据的已编码数据点可能涉及对3D数据的数据点进行移位和缩放,以匹配典型2D图像数据的数值范围。如果虚拟摄像头参数针对x、y、z坐标中的每个坐标定义了具有最大和最小值的ROI,则调整已编码3D数据可以包括将已编码3D数据限制为ROI的定义范围内的子集,并根据定义范围对数据子集进行归一化。调整已编码3D数据还可以包括量化,例如在缩放3D数据的数据点导致非整数值的情况下。以下等式提供了如何对3D数据的给定数据点的x、y、z坐标(x1、y1、z1)进行移位、缩放、归一化和量化的示例:
Figure BDA0003038772100000091
其中,
Figure BDA0003038772100000092
为缩放到【0,255】范围后的调整值,分别归一化到x、y、z值的【Xmin,Xmax】、【Ymin,Ymax】、【Zmin,Zmax】范围,并通过取整进行量化。
用于调整z值的替代性公式为:
Figure BDA0003038772100000093
调整后的已编码3D数据存储在2D阵列的集合中。可以使用其他等式和其他用于调整已编码3D数据的方法。例如,在计算机视觉系统支持非整数输入(例如支持浮点型输入)的情况下,可能不需要量化(或四舍五入)已编码3D数据的已编码数据点的x、y、z值。此外,在计算机视觉系统支持其他形式的输入数据的情况下,可能不需要对已编码3D数据的已编码数据点的x、y、z值进行移位和缩放以匹配典型2D RGB图像数据的范围。
在一些示例中,308可以完全省略。例如,计算机视觉系统可以支持在3D数据中编码的值的范围;或者,已编码3D数据可能已在计算机视觉系统支持的范围内。
在一些示例中,如果执行调整,则投影和调整可以作为单个步骤或通过单个计算同时执行。也就是说,306和308可以同时执行。在一些示例中,可以在投影之前或之后执行调整。在一些示例中,在执行投影之前可以调整3D数据,并且可以在投影之后执行附加调整。例如,在投影3D数据之前,可以通过选择3D数据的数据点子集并根据定义的ROI对3D数据子集的数据点的x、y、z值进行归一化来调整3D数据。投影之后,可以量化阵列中的元素。其他变化是可能的。
可选地,在310处,可以填充阵列集合中的任何空洞。由投影的3D数据编码得到的2D阵列可以具有没有投影相应3D数据的元素。这些元素包含的值可以设置为零或NULL,并且这些空元素在本公开中可以称为阵列中的空洞。填充2D阵列中的任何空洞会得到更完整的2D数据集,以便输入到2D计算机视觉系统,这有助于获得更准确的对象识别输出。
任何合适的方法都可以用于填充这些空洞。例如,可以使用扩张或闭合等数学形态学操作。一种方法可以是使用空洞填充算法,以保留基于5×5 2D扩展内核的3D到2D映射和按照因子2的近邻扩张。其他方法可以包括执行插值。在一些示例中,填充阵列中的空孔可能不需要填充所有空洞。例如,可以只在感兴趣区域填充空洞(例如,仅针对z值较低的元素周围的特定区域,即距离最近的对象)。
在312处,输出和/或存储阵列集合。例如,阵列集合可以采用2D摄像头图像的存储格式进行输出和/或存储,例如RGB或PNG文件。如果存储了映射索引,则还可以存储映射索引并与阵列集合相关联。此外,阵列集合可以与原始3D数据集相关联。在一些示例中,定义了虚拟摄像头参数以复制实际摄像头,阵列集合也可以与实际摄像头所捕获的2D图像数据相关联。
方法300生成的阵列集合可以用作计算机视觉系统的输入,例如深度卷积神经网络,计算机视觉系统用于例如使用掩码R-CNN来分析2D图像数据。阵列集合可以用于训练2D计算机视觉系统学习如何进行对象检测,或者可以输入到训练得到的2D计算机视觉系统以进行对象检测。例如,阵列集合可以输入到训练得到的2D计算机视觉系统以进行推理。在图1的车辆100中,使用示例性方法300生成的阵列集合可以由3D数据编码器122输出,并作为输入提供给2D CNN 124以及随后提供给2D分段和回归单元126。然后,可以使用阵列集合对2D CNN 124以及2D分段和回归单元126进行训练,使得2D CNN 124以及2D分段和回归单元126学习如何从3D数据中识别行人或其他汽车等感兴趣对象。因此,2D CNN 124以及2D分段和回归单元126可以用于使用3D数据和2D图像数据。在一些示例中,2D CNN124的输出可以供3D分段和回归单元128使用,下文将进一步讨论。
图5A示意性地示出了通过计算机视觉系统使用2D图像数据(从摄像头单元116接收)和3D数据(例如从激光雷达单元114接收)进行对象检测的示例性方法。
例如,3D数据编码器122通过上述方法300利用虚拟摄像头参数集将3D数据402编码为2D阵列集合404。
组合器502对阵列集合404和2D图像数据202进行数据融合,从而得到组合数据集504。在一些示例中,可以将阵列集合404与2D图像数据202进行级联(也称为数据融合)来执行所述组合,在这种情况下,组合数据504可以称为级联数据集。执行数据融合可以包括在阵列集合404和2D图像数据202之间进行空间配准。由用于捕获2D图像数据202的实际摄像头参数相对应的虚拟摄像头参数生成阵列集合404的情况下,可以不进行空间配准。然而,即使在不需要空间配准的情况下,进行空间配准预期有助于改进2D图像数据202和阵列集合404的组合,并且可以有助于改进计算机视觉系统的性能。
然后,将2D CNN 124应用于组合数据集504。与图2类似,2D分段和回归单元126可以利用2D CNN 124的输出来进行对象分类(使用对象分类子网212),生成2D限界框(使用2D回归子网214)以及进行2D掩码分段(使用2D掩码子网216)。2D CNN 124与2D分段和回归单元126一起形成掩码区域卷积神经网络(mask regional convolution neural network,mask R-CNN),其包括子网,实现用于对象检测、分类、回归和分段的机器学习算法。可以对掩码R-CNN进行一些修改,以便考虑在组合数据504中增加转换得到的阵列集合。例如,可以修改掩码R-CNN使其支持2D RGB图像数据(例如,深度为3个阵列)、从3D数据编码得到的2D阵列集合(例如,深度为3个阵列)或组合数据(例如,深度为6个阵列)。
2D CNN 124以及2D分段和回归单元126可能需要进行训练以识别在2D阵列中编码的3D坐标,以便成功对从3D数据编码得到的2D阵列集合进行对象检测、分类、回归和分段。2D CNN 124以及2D分段和回归单元126可以使用2D阵列集合进行训练,例如在真实世界中使用之前的训练阶段。2D CNN 124以及2D分段和回归单元126可以在自动驾驶车辆的环境外进行训练,例如,可以在工作站中进行训练。然后,训练得到的2D CNN 124以及2D分段和回归单元126可以在自动驾驶车辆车辆中实现,以便在真实世界中操作。
可选地,3D分段和回归单元128可以应用于2D CNN 124的输出。例如,3D分段和回归单元128可以包括3D回归子网512,用于估计对象的3D限界框参数(例如宽度、高度、长度和x、y、z坐标等)。可以训练3D回归子网512以回归对应于2D阵列集合404中的数据点子集的3D限界框的参数,从而输出3D对象限界框集合。3D点语义分段可以由3D掩码子单元514执行,利用存储的映射索引将2D掩码与相应的3D数据点集群相关联,从而生成3D掩码。可以使用任何合适的方法来执行3D回归。3D掩码子单元514不使用神经网络实现。尽管本公开涉及3D分段和回归单元128,但在一些示例中,可以只进行3D分段而不进行回归,或者可以只进行3D回归而不进行分段。
因此,2D计算机视觉系统可以同时针对2D图像数据和3D数据进行训练并进行对象检测、分类、回归和分段,以提供2D输出(例如对象类别、2D限界框和2D掩码)和可选的3D输出(例如3D限界框和3D掩码)。
图5B示意性地示出了通过计算机视觉系统使用3D数据(例如从激光雷达单元114接收)进行对象检测的另一示例性方法。该示例与图5A的示例类似。然而,2D计算机视觉系统仅支持编码得到的阵列集合作为输入,不包含任何2D图像数据。
采用图5B所示的示例性方法,可以通过2D计算机视觉系统进行对象检测,而无需从摄像头(例如光学摄像头)接收2D图像数据。例如,可以使用虚拟摄像头参数集将3D数据编码为阵列集合,其中虚拟摄像头参数模拟未被实际光学摄像头捕获的FOV。可以训练2D计算机视觉系统以对已编码3D数据进行对象检测。以这种方式训练得到的2D计算机视觉系统从已编码3D数据中学习新的权重集合。这样,2D计算机视觉系统经训练可以使用3D数据(例如从激光雷达单元114接收的点云)。这种将传统上训练用于处理2D RGB图像数据的2D计算机视觉系统扩展到3D数据可以称为学习迁移或领域自适应。
与图5A的示例类似,例如,3D数据编码器122根据上述方法300利用虚拟摄像头参数集将3D数据402编码为阵列集合404。然后,将2D CNN 124应用于阵列集合404。例如,2DCNN 124可以包括在掩码R-CNN中。2D CNN 124与2D分段和回归单元126(包括对象分类子网212、2D限界框子网214和2D掩码子网216)一起可以生成输出,包括对象类别、2D限界框和2D掩码。
可选的,3D分段和回归单元128(可以包括3D限界框子网512和3D掩码子单元514)可以应用于2D CNN 124的输出,类似于图5A的示例,用于生成输出,包括3D限界框和3D掩码。
编码得到的阵列集合(结合或不结合2D图像数据)可以用于训练计算机视觉系统。例如,编码得到的阵列集合可以用于训练掩码R-CNN以检测多个感兴趣对象类别。在一些示例中,可以使用组合数据来训练掩码R-CNN,以便在输入为2D图像数据结合编码得到的阵列集合时进行对象检测、分类、回归和分段。
在一些示例中,2D计算机视觉系统(例如包括掩码R-CNN)的初始训练可以使用2D图像数据作为输入,来输出2D掩码作为弱标签,以及限界框、掩码和对象类别。这可以作为训练计算机视觉系统的起始点,使用编码得到的阵列集合作为进一步的训练输入,以训练计算机视觉系统用于从3D数据编码得到的阵列。
图6示出了将2D计算机视觉系统应用于从3D数据编码得到的阵列集合的示例性方法600的流程图。所述方法中的2D计算机视觉系统可以经训练用于3D数据,如上所述,并且2D计算机视觉系统可以支持阵列集合作为输入来通过推理进行对象检测。方法600的示例可用于实现图5A和图5B的示例。在图1的自动驾驶车辆100中,方法600可以由数据分析系统120的组件执行,包括2D CNN 124、2D分段和回归单元126以及可选的3D分段和回归单元128,例如,使用车辆100的图像处理单元或通用处理单元。在一些示例中,可以在方法300之后执行方法600。
在602处,可选地,可以从例如摄像头单元116接收2D图像数据。2D图像数据可以采用RGB阵列集合的形式。
在604处,从3D数据编码器122获取从3D数据编码得到的阵列集合。如上所述,阵列集合可以是包含投影到2D图像平面的3个2D阵列的集合。
如果在602处接收到2D图像数据,则在606处,使用例如组合器502,将2D图像数据和从3D数据编码得到的阵列集合组合成组合数据集。例如,可以将包含2D图像数据的RGB阵列与从3D数据编码得到的阵列集合进行级联。可以进行空间配准以组合数据。
在608处,将2D计算机视觉系统应用于数据。如果存在组合数据,则可以将2D计算机视觉系统应用于组合数据。否则,将2D计算机视觉系统应用于编码得到的阵列集合。可以使用任何合适的2D计算机视觉系统,例如上述2D CNN 214和子网212、214、216。例如,2D计算机视觉系统的输出可以包括每个检测对象的对象类别(例如自动驾驶车辆环境中的汽车、卡车和行人)、2D限界框和2D掩码。当计算机视觉系统应用于组合数据时,可以通过2D图像数据和编码得到的阵列集合之间的相对加权或缩放来调整2D图像数据相对于3D数据的贡献。
可选地,在610处,3D分段和回归单元128可以对存储的映射索引进行3D分段和/或回归。3D掩码子单元514可以使用存储的映射索引来确定对应于各个2D掩码的3D数据点集群,该映射索引通过计算3D数据到2D图像平面的投影得到。对应于2D掩码的3D数据点集群称为3D掩码。可以利用3D回归子网512进行3D回归,以生成和输出3D限界框。
在612处,输出来自计算机视觉系统的结果,包括3D分段和/或回归(如果执行)的输出。在自动驾驶车辆100的示例中,数据分析系统120可以向路径规划系统130和车辆控制系统140提供输出。
因为捕获的是3D数据和2D图像数据,方法300和600可以实时或近实时地执行,以便实时或近实时地检测和识别周围环境中的对象,特别是用于自动驾驶车辆时。
图7示出了如何将3D数据编码到与实际捕获的2D图像相对应的2D阵列集合的示例。图7示出了光学摄像头捕获的示例性2D图像702。尽管示出为单个图像702,但应理解,2D图像702由2D图像数据表示,2D图像数据可以存储为RBG阵列集合。利用与光学摄像头FOV对应的虚拟摄像头参数集,将3D激光雷达点云数据编码为与2D图像702相对应的3个2D阵列的集合。第一阵列704x存储3D数据的x值,第二阵列704y存储3D数据的y值,第三阵列704z存储3D数据的z值。在本示例中,x、y、z值已调整为与典型RGB图像数据格式相匹配。
本公开提供了编码得到的2D阵列可以与RGB阵列形式(例如,包含使用3个通道的图像数据的阵列,对应于红色、绿色和蓝色)的2D图像数据一起使用的示例。在其他示例中,编码得到的2D阵列可以与其他形式的2D图像数据一起使用,例如,灰度阵列形式(例如,包含使用1个通道的图像数据的阵列,对应明/暗)的2D图像数据,或包括透明度信息的阵列形式(例如,包含图像数据的阵列,其中图像数据采用附加的透明度/不透明度阿尔法通道)的2D图像数据。
本公开可以将激光雷达点云数据等3D数据转换并编码为2D阵列,2D阵列可以存储为2D图像数据格式(例如PNG或JPG文件)。编码得到的阵列可以和设计为支持2D阵列作为输入的2D计算机视觉系统一起使用。因此,可以将2D计算机视觉系统(例如基于掩码R-CNN和其他CNN的2D计算机视觉系统)用于3D数据,使得可以利用3D数据检测和识别多个对象类别(例如包括汽车、货车和行人),而无需针对每个不同的对象类别分别训练计算机视觉系统。通过将3D回归和分段单元添加到2D计算机视觉系统中,可以进行3D对象检测,而无需针对每个不同的对象类别分别训练计算机视觉系统。可以利用3D数据投影到2D阵列时生成的映射索引将2D掩码映射到3D空间。
在一些示例中,即使仅使用2D图像数据作为输入,将3D回归用于2D CNN的输出(单个端到端网络内部)也可能是有益的。可以使用任何合适的方法执行3D回归以得到3D限界框。
其他计算机视觉系统,例如特征金字塔网络聚合视图对象检测(Aggregate ViewObject Detection with Feature Pyramid Network,AVOD-FPN)系统,可以同时支持2D图像数据和3D数据作为输入。本公开可以简化AVOD-FPN系统。3D数据可以编码为一个或多个2D阵列的集合,2D阵列可以与2D图像数据相组合(例如级联在一起)。组合数据集可以作为AVOD-FPN的输入提供,从而可以通过去除鸟瞰图的特征计算阶段来简化所实现的AVOD-FPN算法。
本公开的示例可以用于将3D数据投影到任何选定的2D图像平面上(例如不同视角、不同旋转角度和/或不同仰角)。
本公开的示例已在自动驾驶车辆的实施环境中进行描述。应理解,所公开的方法和系统可以在自动驾驶车辆以外的设备中实现。例如,所公开的方法可以实现为任何合适的处理单元中的软件,例如计算设备、工作站或非车载设备。
尽管本公开按特定顺序描述方法和过程的步骤,但方法和过程的一个或多个步骤可适当省略或更改。在适当情况下,一个或多个步骤可以按所描述的顺序以外的顺序执行。
尽管至少部分地从方法角度描述了本公开,但本领域普通技术人员将理解,本公开还涉及用于执行所述方法的至少部分方面和特征的各种组件,其可以是硬件部件、软件或两者的任意组合。相应地,本公开的技术方案可通过软件产品的形式体现。合适的软件产品可以存储在预录存储设备或其他类似的非易失性或非瞬时性计算机可读介质中,例如包括DVD、CD-ROM、U盘、移动硬盘或其他存储介质。软件产品包括有形地存储在其上的指令,这些指令使得处理设备(例如个人计算机、服务器或网络设备)执行本文中所公开的方法的示例。
本公开可以在不脱离权利要求的标的物的情况下以其他特定形式体现。所描述的示例性实施例在各方面都仅仅是示意性的,而不是限制性的。可以组合上述实施例中的一个或多个的选定特征以创建未明确描述的替代性实施例,适用于此类组合的特征在本公开的范围内是可理解的。
还公开了所公开范围内的所有值和子范围。此外,尽管本文中所公开和示出的系统、设备和过程可以包括特定数量的元件/组件,但可以修改系统、设备和组件以包括更多或更少的此类元件/组件。例如,尽管所公开的任何元件/组件可以指单个,但可以修改本文所公开的实施例以包括多个此类元件/组件。本文中所描述的标的物旨在涵盖和包括技术中的所有适当变化。

Claims (23)

1.一种方法,其特征在于,包括:
接收点云形式的3D数据集;
将所述3D数据集编码为一个或多个阵列的集合,针对所述3D数据的每个数据点:
通过将所述数据点的3D坐标投影到由已定义虚拟摄像头参数集定义的2D图像平面上,计算所述一个或多个阵列的2D索引,其中所述虚拟摄像头参数集包括定义所述2D图像平面的摄像头投影矩阵;
根据所述计算得到的2D索引,将所述数据点的每个3D坐标存储在所述一个或多个阵列中;
输出所述一个或多个阵列的集合,用于输入到2D卷积神经网络(convolved neuralnetwork,CNN)中进行训练或推理。
2.根据权利要求1所述的方法,其特征在于,还包括:
根据预定义的一个或多个参数对所述3D数据进行调整,生成调整后的3D数据集,其中
所述调整为以下至少一项:对所述3D坐标进行缩放、移位、归一化或量化;
所述一个或多个阵列的集合由所述调整后的3D数据生成。
3.根据权利要求1或2所述的方法,其特征在于,所述一个或多个阵列的集合包括经调整可识别为图像数据的值。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述虚拟摄像头参数包括感兴趣区域(region of interest,ROI)的定义,所述方法还包括:
定义对应于所述ROI的所述3D数据的子集;
将所述3D数据的子集编码为所述一个或多个阵列的集合。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括:通过扩张填充所述一个或多个阵列的集合中的任何空洞。
6.根据权利要求1至5中任一项所述的方法,其特征在于,还包括:
使用定义第二2D图像平面的第二虚拟摄像头参数集,将所述3D数据编码为一个或多个阵列的第二集合。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述虚拟摄像头参数集对应于光学摄像头的参数。
8.根据权利要求7所述的方法,其特征在于,还包括:
将所述一个或多个阵列的集合与所述光学摄像头获得的2D图像数据集相组合,以生成组合数据集;
将所述组合数据集作为所述2D CNN的输入来进行对象检测;
输出2D对象限界框集和2D对象掩码集。
9.根据权利要求8所述的方法,其特征在于,所述组合包括:
在所述一个或多个阵列的集合和所述2D图像数据集之间进行空间配准;
将所述一个或多个阵列的集合与所述2D图像数据集进行级联。
10.一种方法,其特征在于,包括:
接收点云形式的3D数据集;
将所述3D数据集编码为一个或多个阵列的集合,针对所述3D数据的每个数据点:
通过将所述数据点的3D坐标投影到由已定义虚拟摄像头参数集定义的2D图像平面上,计算所述一个或多个阵列的2D索引,其中所述虚拟摄像头参数集包括定义所述2D图像平面的摄像头投影矩阵;
根据所述计算得到的2D索引,将所述数据点的每个3D坐标存储在所述一个或多个阵列中;
将所述一个或多个阵列的集合作为2D卷积神经网络(convolutional neuralnetwork,CNN)的输入来进行对象检测,其中所述2D CNN用于输出检测对象集;
将所述检测对象集作为2D分段和回归单元的输入来进行对象分类、回归和分段,其中所述2D分段和回归单元用于为所述检测对象集添加感兴趣类别标签,并针对所述检测对象集输出2D对象限界框集和2D对象掩码集。
11.根据权利要求10所述的方法,其特征在于,存储映射索引以将每个计算得到的2D索引与所述3D数据中的相应点相关联,所述方法还包括:
通过使用所述映射索引将每个2D对象掩码与所述3D数据中的相应点集群相关联来进行3D语义分段;
输出3D对象掩码集。
12.根据权利要求10或11所述的方法,其特征在于,还包括:
使用3D回归网络进行3D回归,以生成并输出3D对象限界框集,其中所述3D回归网络被训练以回归所述一个或多个阵列的集合中的数据点子集所对应的3D限界框的参数。
13.一种处理单元,其特征在于,用于数据分析系统实现以下操作:
接收点云形式的3D数据集;
将所述3D数据编码为一个或多个阵列的集合,针对所述3D数据的每个数据点:
通过将所述点的3D坐标投影到由已定义虚拟摄像头参数集定义的2D图像平面上,计算所述一个或多个阵列的2D索引,其中所述虚拟摄像头参数集包括定义所述2D图像平面的摄像头投影矩阵;
根据所述计算得到的2D索引,将所述点的每个3D坐标存储在所述一个或多个阵列中;
输出所述一个或多个阵列的集合,用于输入到所述数据分析系统的2D卷积神经网络(convolved neural network,CNN)中进行训练或推理。
14.根据权利要求13所述的处理单元,其特征在于,所述处理单元还用于所述数据分析系统实现以下操作:
根据预定义的一个或多个参数对所述3D数据进行调整,生成调整后的3D数据集,其中
通过执行以下至少一项调整所述3D数据:对所述3D坐标进行缩放、移位、归一化或量化;
所述一个或多个阵列的集合由所述调整后的3D数据生成。
15.根据权利要求13或14所述的处理单元,其特征在于,所述调整后的3D数据包含经调整可识别为图像数据的值。
16.根据权利要求13至15中任一项所述的处理单元,其特征在于,所述虚拟摄像头参数包括感兴趣区域(region of interest,ROI)的定义,所述处理单元还用于所述数据分析系统实现以下操作:
定义对应于所述ROI的所述3D数据的子集;
将所述3D数据的子集编码为所述一个或多个阵列的集合。
17.根据权利要求13至16中任一项所述的处理单元,其特征在于,所述处理单元还用于所述数据分析系统实现以下操作:通过扩张填充所述一个或多个阵列的集合中的任何空洞。
18.根据权利要求13至17中任一项所述的处理单元,其特征在于,所述处理单元还用于所述数据分析系统实现以下操作:
使用定义第二2D图像平面的第二虚拟摄像头参数集,将所述3D数据编码为一个或多个阵列的第二集合。
19.根据权利要求13至18中任一项所述的处理单元,其特征在于,所述处理单元还用于所述数据分析系统实现以下操作:
将所述一个或多个阵列的集合作为所述2D CNN的输入来进行对象检测;
输出2D对象限界框集和2D对象掩码集。
20.根据权利要求18所述的处理单元,其特征在于,存储映射索引以将每个计算得到的2D索引映射到所述3D数据中的相应点,所述处理单元还用于所述数据分析系统实现以下操作:
通过使用所述映射索引将每个2D对象掩码与所述3D数据中的相应点集群相关联来进行3D语义分段;
输出3D对象掩码集。
21.根据权利要求13至20中任一项所述的处理单元,其特征在于,所述处理单元还用于所述数据分析系统实现以下操作:
将所述一个或多个阵列的集合与所述光学摄像头获得的2D图像数据集相组合,以生成组合数据集;
将所述组合数据集作为所述2D CNN的输入来进行对象检测;
输出2D对象限界框集和2D对象掩码集。
22.一种计算机可读介质,其特征在于,包括指令,当所述指令由处理单元执行时,使得所述处理单元执行权利要求1至9中任一项所述的方法。
23.一种计算机可读介质,其特征在于,包括指令,当所述指令由处理单元执行时,使得所述处理单元执行权利要求10至12中任一项所述的方法。
CN201980070698.5A 2018-11-08 2019-11-06 用于2d卷积神经网络的点云数据转换方法和系统 Active CN112912920B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/184,570 US10915793B2 (en) 2018-11-08 2018-11-08 Method and system for converting point cloud data for use with 2D convolutional neural networks
US16/184,570 2018-11-08
PCT/CN2019/115881 WO2020094033A1 (en) 2018-11-08 2019-11-06 Method and system for converting point cloud data for use with 2d convolutional neural networks

Publications (2)

Publication Number Publication Date
CN112912920A true CN112912920A (zh) 2021-06-04
CN112912920B CN112912920B (zh) 2023-11-10

Family

ID=70550266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980070698.5A Active CN112912920B (zh) 2018-11-08 2019-11-06 用于2d卷积神经网络的点云数据转换方法和系统

Country Status (4)

Country Link
US (1) US10915793B2 (zh)
EP (1) EP3867862A4 (zh)
CN (1) CN112912920B (zh)
WO (1) WO2020094033A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI786002B (zh) * 2022-03-10 2022-12-01 國立臺中科技大學 二維影像生成點雲與零件切割之整合模型的建立方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018199958A1 (en) * 2017-04-27 2018-11-01 Hewlett-Packard Development Company, L.P. Object recognition
CN110163863B (zh) * 2018-11-06 2022-11-04 腾讯科技(深圳)有限公司 三维物体分割方法、设备和介质
US10991156B2 (en) * 2018-12-05 2021-04-27 Sri International Multi-modal data fusion for enhanced 3D perception for platforms
JP7086111B2 (ja) * 2019-01-30 2022-06-17 バイドゥドットコム タイムズ テクノロジー (ベイジン) カンパニー リミテッド 自動運転車のlidar測位に用いられるディープラーニングに基づく特徴抽出方法
US11227398B2 (en) * 2019-01-30 2022-01-18 Baidu Usa Llc RGB point clouds based map generation system for autonomous vehicles
US11062454B1 (en) * 2019-04-16 2021-07-13 Zoox, Inc. Multi-modal sensor data association architecture
CN110084840B (zh) * 2019-04-24 2022-05-13 阿波罗智能技术(北京)有限公司 点云配准方法、装置、服务器和计算机可读介质
KR102166835B1 (ko) * 2019-10-28 2020-10-16 주식회사 루닛 신경망 학습 방법 및 그 장치
US11532168B2 (en) * 2019-11-15 2022-12-20 Nvidia Corporation Multi-view deep neural network for LiDAR perception
US11885907B2 (en) 2019-11-21 2024-01-30 Nvidia Corporation Deep neural network for detecting obstacle instances using radar sensors in autonomous machine applications
US11531088B2 (en) 2019-11-21 2022-12-20 Nvidia Corporation Deep neural network for detecting obstacle instances using radar sensors in autonomous machine applications
US11543534B2 (en) * 2019-11-22 2023-01-03 Samsung Electronics Co., Ltd. System and method for three-dimensional object detection
WO2022150978A1 (en) * 2021-01-12 2022-07-21 Nvidia Corporation Neighboring bounding box aggregation for neural networks
US11625846B2 (en) * 2021-03-25 2023-04-11 Toyota Research Institute, Inc. Systems and methods for training a machine-learning-based monocular depth estimator
CN112990050B (zh) * 2021-03-26 2021-10-08 清华大学 一种基于轻量级特征金字塔结构的单目3d目标检测方法
US20230062313A1 (en) * 2021-08-24 2023-03-02 International Business Machines Corporation Generating 2d mapping using 3d data
EP4361961A1 (en) * 2022-10-28 2024-05-01 Aptiv Technologies AG Method of determining information related to road user

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130057653A1 (en) * 2011-09-06 2013-03-07 Electronics And Telecommunications Research Institute Apparatus and method for rendering point cloud using voxel grid
CN107392947A (zh) * 2017-06-28 2017-11-24 西安电子科技大学 基于轮廓共面四点集的2d‑3d图像配准方法
CN108198145A (zh) * 2017-12-29 2018-06-22 百度在线网络技术(北京)有限公司 用于点云数据修复的方法和装置
WO2018156224A1 (en) * 2017-02-22 2018-08-30 Faro Technologies, Inc. Three-dimensional imager

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8300574B2 (en) * 2005-07-06 2012-10-30 Zte Corporation Method of uplink synchronization establishment based on the united transmission technology
US9613298B2 (en) * 2014-06-02 2017-04-04 Microsoft Technology Licensing, Llc Tracking using sensor data
JP2018514748A (ja) * 2015-02-06 2018-06-07 ザ ユニバーシティ オブ アクロンThe University of Akron 光学撮像システムおよびその方法
EP3500911B1 (en) * 2016-08-22 2023-09-27 Magic Leap, Inc. Augmented reality display device with deep learning sensors
US10373369B2 (en) * 2017-03-16 2019-08-06 Qualcomm Technologies, Inc. Three-dimensional pose estimation of symmetrical objects
US10659773B2 (en) * 2017-04-13 2020-05-19 Facebook, Inc. Panoramic camera systems
US10438371B2 (en) * 2017-09-22 2019-10-08 Zoox, Inc. Three-dimensional bounding box from two-dimensional image and point cloud data
US10699165B2 (en) * 2017-10-30 2020-06-30 Palo Alto Research Center Incorporated System and method using augmented reality for efficient collection of training data for machine learning
US11500099B2 (en) * 2018-03-14 2022-11-15 Uatc, Llc Three-dimensional object detection
US10580164B2 (en) * 2018-04-05 2020-03-03 Microsoft Technology Licensing, Llc Automatic camera calibration
US10671855B2 (en) * 2018-04-10 2020-06-02 Adobe Inc. Video object segmentation by reference-guided mask propagation
US10572770B2 (en) * 2018-06-15 2020-02-25 Intel Corporation Tangent convolution for 3D data
US10282852B1 (en) * 2018-07-16 2019-05-07 Accel Robotics Corporation Autonomous store tracking system
CA3109571A1 (en) * 2018-07-16 2020-01-23 Accel Robotics Corporation Autonomous store tracking system
WO2020056041A1 (en) * 2018-09-11 2020-03-19 Pointivo, Inc. Improvements in data acquistion, processing, and output generation for use in analysis of one or a collection of physical assets of interest
US10269125B1 (en) * 2018-10-05 2019-04-23 StradVision, Inc. Method for tracking object by using convolutional neural network including tracking network and computing device using the same
US10387752B1 (en) * 2019-01-22 2019-08-20 StradVision, Inc. Learning method and learning device for object detector with hardware optimization based on CNN for detection at distance or military purpose using image concatenation, and testing method and testing device using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130057653A1 (en) * 2011-09-06 2013-03-07 Electronics And Telecommunications Research Institute Apparatus and method for rendering point cloud using voxel grid
WO2018156224A1 (en) * 2017-02-22 2018-08-30 Faro Technologies, Inc. Three-dimensional imager
CN107392947A (zh) * 2017-06-28 2017-11-24 西安电子科技大学 基于轮廓共面四点集的2d‑3d图像配准方法
CN108198145A (zh) * 2017-12-29 2018-06-22 百度在线网络技术(北京)有限公司 用于点云数据修复的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
敦宏丽;袁晔;: "基于卷积神经网络的3D服用人体特征识别", 北京服装学院学报(自然科学版), no. 03 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI786002B (zh) * 2022-03-10 2022-12-01 國立臺中科技大學 二維影像生成點雲與零件切割之整合模型的建立方法

Also Published As

Publication number Publication date
WO2020094033A1 (en) 2020-05-14
EP3867862A1 (en) 2021-08-25
CN112912920B (zh) 2023-11-10
US10915793B2 (en) 2021-02-09
EP3867862A4 (en) 2021-12-15
US20200151512A1 (en) 2020-05-14

Similar Documents

Publication Publication Date Title
CN112912920B (zh) 用于2d卷积神经网络的点云数据转换方法和系统
US11436743B2 (en) Systems and methods for semi-supervised depth estimation according to an arbitrary camera
US11386567B2 (en) Systems and methods for weakly supervised training of a model for monocular depth estimation
US11176709B2 (en) Systems and methods for self-supervised scale-aware training of a model for monocular depth estimation
CN111448478B (zh) 用于基于障碍物检测校正高清地图的系统和方法
US11734918B2 (en) Object identification apparatus, moving body system, object identification method, object identification model learning method, and object identification model learning apparatus
US20230316742A1 (en) Image processing method, apparatus and device, and computer-readable storage medium
US20210150227A1 (en) Geometry-aware instance segmentation in stereo image capture processes
CN112184844A (zh) 车辆图像生成
US11144818B2 (en) Network architecture for ego-motion estimation
US11663729B2 (en) Network architecture for the joint learning of monocular depth prediction and completion
US11145074B2 (en) Systems and methods for depth estimation using monocular images
US11321863B2 (en) Systems and methods for depth estimation using semantic features
CN117576652B (zh) 道路对象的识别方法、装置和存储介质及电子设备
US20210365697A1 (en) System and method for generating feature space data
CN117015792A (zh) 有凹图像放大用于自动驾驶生成物体检测标签的系统和方法
CN112257668A (zh) 主辅路判断方法、装置、电子设备及存储介质
CN115439339A (zh) 图像矫正
US11652972B2 (en) Systems and methods for self-supervised depth estimation according to an arbitrary camera
US20210407117A1 (en) System and method for self-supervised monocular ground-plane extraction
Golovnin et al. Video processing method for high-definition maps generation
US20210090277A1 (en) Systems and methods for conditioning training data to avoid learned aberrations
US20240005540A1 (en) Photometric Cost Volumes For Self-Supervised Depth Estimation
US20230386060A1 (en) Using Histograms For Self-Supervised Depth Estimation
KR102559936B1 (ko) 단안 카메라를 이용하여 깊이 정보를 추정하는 방법 및 장치

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