CN116783620A - 根据点云的高效三维对象检测 - Google Patents
根据点云的高效三维对象检测 Download PDFInfo
- Publication number
- CN116783620A CN116783620A CN202180070671.3A CN202180070671A CN116783620A CN 116783620 A CN116783620 A CN 116783620A CN 202180070671 A CN202180070671 A CN 202180070671A CN 116783620 A CN116783620 A CN 116783620A
- Authority
- CN
- China
- Prior art keywords
- point
- point cloud
- foreground
- neural network
- points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 32
- 238000013528 artificial neural network Methods 0.000 claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 55
- 238000003860 storage Methods 0.000 claims abstract description 13
- 238000013527 convolutional neural network Methods 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 18
- 230000011218 segmentation Effects 0.000 claims description 15
- 238000005259 measurement Methods 0.000 claims description 12
- 230000001131 transforming effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 abstract description 14
- 230000026676 system process Effects 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 22
- 238000012549 training Methods 0.000 description 8
- 239000004973 liquid crystal related substance Substances 0.000 description 7
- 210000002569 neuron Anatomy 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000011143 downstream manufacturing Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 241000009334 Singa Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Abstract
用于执行对象检测的方法、计算机系统和设备,包括在计算机存储介质上编码的计算机程序。系统获得与由一个或多个传感器捕获的点云集合中的每个点云相对应的相应测距图像。系统使用分割神经网络处理每个测距图像以生成测距图像特征和分割输出。系统仅从前景点的特征表示生成点云集合的特征表示。系统使用预测神经网络处理点云集合的特征表示,以生成表征点云集合的预测。
Description
对相关申请的交叉引用
本申请要求于2020年11月16日提交的美国临时专利申请号63/114,506的优先权,其公开内容通过引用整体并入本文。
技术领域
本说明书涉及使用神经网络处理点云以检测环境中的对象。
背景技术
检测环境中的对象是例如由自主载具进行运动规划所需的任务。
自主载具包括自动驾驶汽车、船和飞机。自主载具使用各种车载传感器和计算机系统来检测附近对象,并使用这种检测来做出控制和导航决定。
一些自主载具具有实现神经网络、其他类型的机器学习模型或两者以用于各种预测任务——例如,图像内的对象分类——的车载计算机系统。例如,可以使用神经网络来确定由车载相机捕获的图像可能是附近汽车的图像。神经网络(或为了简洁起见,网络)是采用多层操作来从一个或多个输入预测一个或多个输出的机器学习模型。神经网络通常包括位于输入层和输出层之间的一个或多个隐藏层。每一层的输出被用作网络中的另一层(例如,下一隐藏层或输出层)的输入。
神经网络的每个层指定要对该层的输入执行的一个或多个变换操作。一些神经网络层具有被称为神经元的操作。每个神经元接收一个或多个输入并生成由另一神经网络层接收的输出。通常,每个神经元从其他神经元接收输入,并且每个神经元向一个或多个其他神经元提供输出。
神经网络的架构指定网络中包括哪些层及其性质,以及网络的每一层的神经元如何连接。换句话说,架构指定哪些层将其输出作为输入提供给哪些其他层以及如何提供输出。
每层的转换操作由安装有实现转换操作的软件模块的计算机执行。因此,被描述为执行操作的层意味着实现该层的变换操作的计算机执行操作。
每个层使用该层的一组参数的当前值来生成一个或多个输出。因此,训练神经网络涉及连续地对输入执行前向传递,计算梯度值,并使用计算的梯度值(例如,使用梯度下降)更新每个层的该组参数的当前值。一旦训练了神经网络,就可以使用最终的一组参数值来在生产系统中进行预测。
发明内容
本说明书描述了用于从一个或多个点云的集合执行三维(3D)对象检测的方法、计算机系统和装置,包括在计算机存储介质上编码的计算机程序。
在一个创新方面中,本说明书描述一种用于执行对象检测的方法。该方法由包括一个或多个计算机的系统实现。系统获得与由一个或多个传感器捕获的点云集合中的每个点云相对应的相应测距图像。每个点云包括相应的多个三维点。每个测距图像包括多个像素,其中测距图像中的每个像素:(i)与对应点云中的一个或多个点对应,并且(ii)至少具有测距值,测距值指示对应点云中该像素的对应一个或多个点到一个或多个传感器的距离。系统使用分割神经网络处理每个测距图像,分割神经网络被配置为对于每个测距图像生成(i)测距图像中的像素的测距图像特征和(ii)分割输出,分割输出对于测距图像中的每个像素指示该像素是前景像素还是背景像素。对于点云集合中的每个前景点,系统至少从与前景点对应的像素的测距图像特征生成前景点的特征表示。前景点是与对应分割输出指示为前景像素的像素对应的点。系统仅从前景点的特征表示生成点云集合的特征表示。系统使用预测神经网络处理点云集合的特征表示,以生成表征该点云集合的预测。
在该方法的一些实施方式中,预测是对象检测预测,其识别很可能是对象的测量的点云集合的区域。对象检测预测可以包括(i)点云中的位置上的热图和(ii)多个边界框的参数。
在该方法的一些实施方式中,分割神经网络已经被训练以生成具有高查全率和可接受精度的分割输出。
在该方法的一些实施方式中,分割神经网络被配置为向测距图像特征应用1×1卷积以生成分割输出。
在该方法的一些实施方式中,分割输出包括每个像素的相应前景分数,并且其中被指示为前景像素的像素是具有超过阈值的前景分数的那些像素。
在该方法的一些实施方式中,为了生成点云集合的特征表示,系统执行体素化以将前景点体素化成多个体素,从分配给体素的点的特征表示生成每个体素的相应表示,并使用稀疏卷积神经网络处理体素的表示以生成点云集合的特征表示。体素化可以是柱状体素化,并且稀疏卷积神经网络是2D稀疏卷积神经网络。可替代地,体素化可以是3D体素化,并且稀疏卷积神经网络是3D稀疏卷积神经网络。
在该方法的一些实施方式中,点云集合包括在不同时间点捕获的多个点云,并且在执行体素化之前,系统通过对于除了最近时间点的点云之外的每个点云将点云中的每个前景点变换为最近时间点的点云来生成变换后的点云,并对变换后的点云执行体素化。对于每个点云,系统可以将点云被捕获的时间点的标识符附加到点云中的前景点的特征表示。
本说明书还提供了一种系统,该系统包括一个或多个计算机和存储指令的一个或多个存储设备,指令在由一个或多个计算机执行时使一个或多个计算机执行上述方法。
本说明书还提供了存储指令的一个或多个计算机存储介质,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行上述方法。
本说明书中描述的主题可以在特定实施例中实现,以便实现以下优点中的一个或多个。
检测环境中的对象是例如由自主载具进行运动规划所需的任务。已经开发了用于从传感器测量数据(例如,从LiDAR数据)检测对象(诸如其他载具、行人、骑车者等)的许多技术。
通常,基于网格的方法将3D空间划分为体素或柱。密集卷积可以被应用于网格以提取特征。然而,这种方法对于长距离感测或小对象检测所需的大网格是低效的。稀疏卷积更好地缩放到大的检测范围,但是由于将卷积应用于所有点的效率低下,所以稀疏卷积通常很慢。基于测距图像的方法直接对测距图像执行卷积以便提取点云特征。这样的模型随着距离很好地缩放,但是趋向于在遮挡处理、准确的对象定位和尺寸估计方面表现不太好。
为了解决现有方法的缺点,本说明书描述了一种提高对象预测的效率和准确性的技术。
例如,处理的初始阶段被优化以快速地区分前景点与背景点,从而允许轻量级2D图像主干以全分辨率被应用于测距图像。作为另一示例,下游稀疏卷积处理仅被应用于可能属于前景对象的点,这导致额外的、显著的计算节省。此外,系统可以使用前景分割网络来以流传输方式独立地处理测距图像的时间序列的每个帧,并且融合来自时间窗内的帧的分割的前景点,以进一步提高对象检测的效率和准确性。
在附图和下面的描述中阐述了本说明书的主题的一个或多个实施方式的细节。根据说明书、附图和权利要求,主题的其他特征、方面和优点将变得显而易见。
附图说明
图1A示出示例对象检测系统。
图1B图示出前景分割神经网络的示例。
图1C示出稀疏卷积神经网络的示例。
图2A是图示用于从点云数据执行对象检测的示例过程的流程图。
图2B是图示用于生成点云的特征表示的示例过程的流程图。
各个附图中相同的附图标记和名称指示相同的元件。
具体实施方式
图1A示出对象检测系统100的示例。系统100是在一个或多个位置中的一个或多个计算机上实现为计算机程序的系统的示例,其中可以实现下面描述的系统、组件和技术。
通常,系统100对一个或多个点云的集合执行三维(3D)对象检测。例如,对象检测可以由导航通过环境的自主载具的车载计算机系统执行,并且点云可以由自主载具的一个或多个传感器(例如,Lidar传感器)生成。载具的规划系统可以使用对象检测来做出规划决策以规划载具的未来轨迹,例如,通过生成或修改未来轨迹以避免与任何检测到的对象碰撞。
作为输入,系统100获得点云集合的测距图像数据110。测距图像数据包括与点云集合中的每个点云对应的相应测距图像。
集合中的每个点云包括表示由一个或多个传感器捕获的环境中的场景的传感器测量的多个点。例如,一个或多个传感器可以是机器人代理或自主载具(例如陆地、空中或海上载具)的传感器,例如LiDAR传感器或被认为检测激光反射的其他传感器,并且场景可以是自主载具附近的场景。
当集合中存在多个点云时,点云可以按时间序列布置。该序列被称为时间序列,因为点云根据相应传感器测量被生成的次序来排列。
测距图像是3D点云的密集表示。每个测距图像包括多个像素。测距图像中的每个像素与对应点云中的一个或多个点对应。每个测距图像像素至少具有测距值,测距值指示对应点云中该像素的对应一个或多个点到一个或多个传感器的距离。
每个测距图像中的像素可以被布置在二维(2D)网格中。在一个特定示例中,2D网格的一个维度与点云中的对应点的方位角对应,且2D网格的另一维度与对应点的倾斜度(θ′s)对应。每个测距图像像素至少具有指示对应点的距离r的测距值。测距图像中的像素也可以包括表示由传感器针对对应点捕获的其他属性的每个像素的其他值,例如强度或伸长率或者两者。
由系统100执行的对象检测的目标是生成预测输出170,预测输出170包括指示来自测量数据(例如,来自LiDAR数据)的检测到的对象的数据。
系统100首先应用分割神经网络120(例如,轻量级2D卷积网络)以从测距图像有效地提取特征并执行初步对象分割。在随后的阶段中,系统使用稀疏卷积神经网络150来仅对前景体素(如由分割神经网络120预测的)的图像特征应用稀疏卷积,以便准确地预测3D对象标记。
分割神经网络120被配置为,对于每个测距图像,生成关于测距图像中的像素的测距图像特征132和分割输出134,分割输出134针对测距图像中的每个像素指示像素是前景像素还是背景像素。例如,在一些实施方式中,分割神经网络120被配置为通过向测距图像特征132应用卷积层(例如1×1卷积)以生成分割输出134,来从测距图像特征132生成分割输出134。
在一些实施方式中,分割输出134包括测距图像中的每个像素的相应前景分数。具有超过阈值的前景分数的那些像素可以被指示为测距图像中的前景像素。相应测距图像中的前景像素与对应于相应测距图像的点云中的前景点对应,即,对应于检测到的对象的点。
如上所述,系统100将分割神经网络120应用于测距图像以提取特征并识别前景像素。然后,系统在后续步骤中处理学习的特征和识别的前景像素,以生成表征点云的预测输出,例如,以生成基于点云检测到的对象的对象标签。
在由本说明书提供的技术的一些实施方式中,与传统的语义分割方法不同,在训练分割神经网络120时在高精度上强调查全率(recall),因为可以在后续处理中移除假阳性,但是假阴性不能被容易地恢复。也就是说,分割神经网络120被训练以生成具有高查全率和可接受精度的分割输出134,以确保由分割输出134预测基准真值对象位置的更大可能性。
分割神经网络可以采用任何适当的架构,诸如2D卷积神经网络。参考图1B详细讨论分割神经网络120的示例网络架构。
基于测距图像特征132和分割输出134,系统100可以生成前景特征140,即,点云中的前景点的特征表示。也就是说,对于点云集合中的每个前景点,系统100从与前景点对应的像素的至少测距图像特征生成前景点的特征表示。
对于每个测距图像,系统100可以基于分割输出134——例如,基于测距图像的像素的前景分数——识别测距图像中的前景点。系统100可以将前景分数超过阈值的像素识别为前景像素。前景点是点云中与根据传感器数据在场景中检测到的对象——例如载具、行人、骑车者等——对应的点。
对应前景点的每一特征表示包含由分割神经网络120产生的测距图像特征。在一些实施方式中,当存在点云的时间序列时,特征表示也能够包括帧的时间点信息。在一些实施方式中,特征表示也可以包括点云的统计。
在一些实施方式中,点云集合包括在不同时间点捕获的多个点云,并且点云通过由移动传感器(例如,配置在移动载具上的LiDAR)进行的测量来捕获。系统100可以在下游处理之前从前景点的特征表示中去除传感器自运动的影响。通常,直接从测距图像中去除自运动不是最佳的,因为在不同帧处的距离重建导致非平凡量化误差。相反,本说明书的系统100从点云中的前景点去除自运动的影响。具体地,系统100可以通过对于除了最近时间点处的点云之外的每个点云将点云中的每个前景点变换到最近时间点处的点云来生成变换后的点云。
在一些实施方式中,对象检测系统100包括多个分割神经网络120作为多个并行分支,用于处理在时间窗口内的多个时间点收集的测距图像的多个相应帧的集合。多分割神经网络120共享相同的网络参数集合,并且在神经网络的训练期间被联合训练。在推断期间,仅测距图像的多个帧的集合中的最后一帧由分割神经网络120的单个分支处理,并且系统重新使用集合中的其他帧的先前结果。在分割分支之后,系统100执行变换以从分割的前景点的不同帧中去除传感器自运动,并将来自不同帧的变换后的前景点收集到多点集合。通过使用分割网络来以流传输方式独立地处理测距图像的时间序列的每个帧,并且融合来自时间窗口内的帧的分割前景点,系统可以进一步提高对象检测的效率和准确性。
在一个特定实施方式中,基于提取的特征132和由分割神经网络120生成的分割输出134,系统可以将点收集到多点集合其中δi是帧0(最新的,即最近捕获的点云)和帧i之间的帧时间差。/>中的每个点p的特征表示包括由分割神经网络120提取的特征,并且用p-m、var、p-c和δi增强,其中p是点的位置向量,并且m和var分别是点云中所有点的位置向量的算术平均值和协方差,并且c是点云中的中心点的位置向量。
通过仅为由分割神经网络预测的前景点生成特征表示,系统100将点云数据减少到仅最可能属于对象的点以用于后续处理。
为了准备稀疏卷积,系统可以执行体素化以将前景点体素化成多个体素,并且从分配给体素的点的特征表示生成每个体素的相应表示。
一般来说,体素化将点云映射到体素网格中。在一些实施方式中,体素化是将点云映射到体素的3D网格的3D体素化。例如,系统可以将点云映射到具有体素尺寸Δx,y,z的均匀间隔的体素网格中。
在一些实施方式中,体素化是将点云映射到体素的2D网格的柱状体素化。柱状体素化在“PointPillars:Fast Encoders for Object Detection from Point Clouds”arXiv:1812.05784[cs.LG],2018中描述。对于柱状体素化,z维度的体素大小Δz被设置为+∞。
然后,系统100使用稀疏卷积神经网络150处理体素的表示,以生成点云集合的特征表示。
当体素化是柱状体素化时,稀疏卷积神经网络150可以是2D稀疏卷积神经网络,或者当体素化是3D体素化时,稀疏卷积神经网络150可以是3D稀疏卷积神经网络。
稀疏卷积神经网络150可以采用用于特定应用的任何适当的网络架构。参考图1C详细描述稀疏卷积神经网络的示例。
然后,系统100使用来自稀疏卷积神经网络150的输出特征来准确地生成3D对象标签。特别地,系统使用预测神经网络160处理点云集合的特征表示,以生成表征点云集合的预测输出170。
在一些实施方式中,预测输出170是对象检测预测,其识别很可能是对象的测量的该点云集合的区域。在一个特定示例中,对象检测预测包含点云中的位置上的热图和与检测到的对象的位置和几何形状对应的多个边界框的参数。
在一个特定示例中,基于为点云生成的特征表示,系统可以在体素化坐标上形成特征图,其中d∈{2,3},这取决于是已经执行了2D特征提取还是3D特征提取。系统可以利用预测神经网络150处理作为输入的特征图,以生成点云的热图。热图与在所述位置处检测到诸如载具、行人及骑行者等对象的可能性的空间分布对应。预测神经网络150也可以被配置为生成关于每个预测的边界框的参数,包括例如中心位置{x,y,z}、维度{l,w,h}和航向方向θ。
预测神经网络可以采用任何适当的网络架构。在一个特定示例中,类似于在“Objects as points”arXiv:1904.07850,2019中描述的修改的中心网可以被用作预测神经网络。
系统100或另一系统可以基于训练示例执行分割神经网络120、稀疏卷积神经网络150和预测网络160的训练。在一个示例中,系统可以基于总损失来执行端到端训练:
L=λ1Lseg+λ2Lhm+Lbox
其中,Lseg是在分割神经网络120的输出处计算的分割损失,并且Lhm和Lbox分别是在预测神经网络160的输出处计算的热图和边界框损失。
通过检查对应的像素点是否在任何框中,分割损失可以被计算为具有从3D边界框导出的基准真值标签的Focal损失(focal loss):
P是有效测距图像像素的总数。Li是点的focal损失。选择前景分数si大于阈值γ的点。选择前景阈值γ以实现高查全率和可接受精度。
在一些实施方式中,当在训练示例中仅基准真值边界框可用时,可以例如使用下式为计算基准真值热图:
其中,是包含/>的框的中心的集合。如果/>则h=0。点/>的热图值h是取决于点/>与放置在框中心bc处的圆之间的距离/>来计算的,其中圆的半径是从框中心bc到/>中的最近点的距离。
热图损失Lhm以是focal损失:
其中,和h分别是预测热图值和基准真值热图值。添加∈以为了数值稳定性,并且可以被设置为小值,例如1e-3。
3D边界框可以被参数化为b={dx,du,dz,l,w,h,θ},其中dx,du,dz是相对于体素中心的框中心偏移。如果使用2D稀疏卷积神经网络,则可以将dz设置为绝对框中心z。l,w,h,θ是框长度、宽度、高度和框朝向。bin损失可以被应用于回归航向θ。其他框参数可以在平滑的L1损失下直接回归。可以添加IoU损失以进一步提高框回归准确度。框回归损失仅在具有大于阈值δ1的基准真值热图值的特征图像素上有效:
其中,bi分别是预测框参数和基准真值框参数,/>θi分别是预测框航向和基准真值框航向。hi是在特征地图像素i处计算的基准真值热图值。系统可以对具有大于阈δ2的热图预测的稀疏特征图体素执行稀疏子流形最大池化操作,并选择对应于局部最大热图预测的框。
图1B示出分割神经网络120的示例架构。在该示例中,系统采用U形架构,其具有类似于在“U-Net:Convolutional Networks for Biomedical Image Segmentation”arXiv:1505.04597[cs.CV],2015中描述的一般形状。
如图1B所示,U形分割神经网络120包括收缩路径(左侧)和膨胀路径(右侧)。收缩路径包括下采样块120a。每个下采样块120a(由D(L,C)表示)包括L个ResNet块,每个ResNet块具有C个输出通道。
膨胀路径包括上采样块120b。每个上采样块120b(由U(L,C)表示)包括上采样层和L个ResNet块。在一个特定实施方案中,上采样层包含1×1卷积,随后是双线性内插。
图1C示出稀疏卷积神经网络150的网络架构的示例。具体地,150a示出用于生成用于从前景特征检测行人的特征表示的示例网络架构,并且150b示出用于生成用于从前景特征检测载具的特征表示的示例网络架构。
网络150a和150b二者由块B0和B1构成。B0和B1中的每一个包括若干SC和SSC层。SC层执行步幅为1或2的3×3或3×3×3稀疏卷积。SSC层执行3×3或3×3×3子流形稀疏卷积。“/2”表示步幅2。
图2A是图示用于从点云数据执行对象检测的示例过程200的流程图。为了方便起见,过程200将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的对象检测系统(例如,图1A的对象检测系统100)可以执行过程200。
在步骤210中,系统获得点云集合的测距图像数据。测距图像数据包括与该点云集合中的每个点云对应的相应测距图像。
该集合中的每个点云包括表示由一个或多个传感器捕获的环境中的场景的传感器测量的多个点。例如,一个或多个传感器可以是自主载具(例如,陆地、空中或海上载具)的传感器,例如,LiDAR传感器或被认为检测激光反射的其他传感器,并且场景可以是自主载具附近的场景。
每个测距图像包括多个像素。测距图像中的每个像素与对应点云中的一个或多个点对应。每个测距图像像素至少具有测距值,测距值指示对应点云中像素的对应一个或多个点到一个或多个传感器的距离。
当集合中存在多个点云时,点云可以按时间序列布置。该序列被称为时间序列,因为点云根据相应传感器测量被生成的顺序排列。
测距图像中的像素也可以包括表示由传感器针对对应点捕获的其他属性的每个像素的其他值,例如强度或伸长率或两者。
在步骤220中,系统根据测距图像数据生成图像特征和分割输出。具体地,系统使用分割神经网络处理每个测距图像,分割神经网络被配置为对于每个测距图像生成测距图像中的像素的测距图像特征以及分割输出,分割输出对于测距图像中的每个像素指示该像素是前景像素还是背景像素。
在一些实施方式中,分割神经网络被配置为从测距图像特征生成分割输出,例如,通过对测距图像特征应用1×1卷积以生成分割输出。
在一些实施方式中,分割输出包括测距图像中的每个像素的相应前景分数。具有超过阈值的前景分数的那些像素可以被指示为测距图像中的前景像素。相应测距图像中的前景像素与对应于相应测距图像的点云中的前景点——即,对应于检测到的对象的点——对应。
在步骤230中,系统为点云中的前景点生成特征表示。也就是说,对于点云集合中的每个前景点,系统至少根据对应于前景点的像素的测距图像特征生成前景点的特征表示。
对应前景点的每个特征表示包括由分割神经网络生成的测距图像特征。在一些实施方式中,当存在点云的时间序列时,特征表示也可以包括帧的时间点信息。在一些实施方式中,特征表示也可以包括点云的体素统计。
在步骤240中,系统生成点云集合的特征表示。具体地,系统仅从前景点的特征表示生成点云集合的特征表示。
参考图2B详细描述用于生成点云特征的示例过程。一般来说,系统可以使用神经网络(例如,稀疏卷积神经网络)来基于预测的前景体素及其学习的测距图像特征来处理输入。来自神经网络的输出特征可以被用在下游处理中以准确地生成3D对象标签。
在步骤250中,系统使用预测神经网络处理点云集合的特征表示,以生成表征点云集合的预测。
在一些实施方式中,预测是对象检测预测,其识别很可能是对象的测量的点云集合的区域。在一个特定实例中,对象检测预测包含点云中的位置上的热图和与检测到的对象的位置和几何形状对应的多个边界框的参数。
图2B是示出用于生成点云的特征表示的示例过程240的流程图。为了方便起见,过程240将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,根据本说明书适当编程的对象检测系统(例如,图1A的对象检测系统100)可以执行过程240。
可以基于由移动传感器(例如,配置在移动载具上的LiDAR)进行的测量来生成测距图像。在这些场景中,堆叠多个测距图像而不考虑自运动可能对预测模型的性能产生负面影响。因此,系统可以可选地执行步骤242以从点云中的前景点中去除传感器的自运动的影响。
具体地,在步骤242中,当点云集合包括在不同时间点捕获的多个点云时,系统通过对于除了最近时间点的点云之外的每个点云,将点云中的每个前景点变换为最近时间点的点云来生成变换后的点云。
在步骤244中,系统执行体素化以将前景点体素化成多个体素。在一些实施方式中,体素化是将点云映射到体素的3D网格中的3D体素化。在一些实施方式中,体素化是将点云映射到体素的2D网格的柱状体素化。
在步骤246中,系统从分配给体素的点的特征表示生成每个体素的相应表示。
在步骤248中,系统使用稀疏卷积神经网络处理体素的表示,以生成点云集合的特征表示。
当体素化是柱状体素化时,稀疏卷积神经网络可以是2D稀疏卷积神经网络。当体素化是3D体素化时,它是3D稀疏卷积神经网络。
稀疏卷积神经网络可以采用用于特定应用的任何适当的网络架构。参考图1C详细描述稀疏卷积神经网络的示例。
本说明书结合系统和计算机程序组件使用术语“配置”。对于被配置为执行特定操作或动作的一个或多个计算机的系统,意味着系统已经在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在操作中使得系统执行操作或动作。对于被配置为执行特定操作或动作的一个或多个计算机程序,意味着一个或多个程序包括当由数据处理装置执行时使装置执行操作或动作的指令。本说明书中描述的主题和功能操作的实施例可以在数字电子电路、有形体现的计算机软件或固件、计算机硬件(包括本说明书中公开的结构及其结构等同物)或它们中的一个或多个的组合中实现。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即,在有形非暂时性存储介质上编码的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制数据处理装置的操作。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。可替代地或另外地,程序指令可以被编码在人工生成的传播信号上,例如,机器生成的电、光或电磁信号,其被生成以编码信息以传输到合适的接收器装置以供数据处理装置执行。
术语“数据处理装置”是指数据处理硬件,并且包含用于处理数据的所有种类的装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。该装置还可以是或进一步包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,该装置可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(其也可以被称为或描述为程序、软件、软件应用、app、模块、软件模块、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释语言,或者声明或过程语言;并且它可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适合在计算环境中使用的其他单元。程序可以但不必对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分中,例如,存储在标记语言文档中的一个或多个脚本,存储在专用于所讨论的程序的单个文件中,或者存储在多个协调文件中,例如,存储一个或多个模块、子程序或代码部分的文件。计算机程序可以被部署为在一个计算机上或在位于一个站点或分布在多个站点上并通过数据通信网络互连的多个计算机上执行。
在本说明书中,术语“数据库”广泛地用于指代任何数据集合:数据不需要以任何特定方式结构化,或者根本不需要结构化,并且它可以存储在一个或多个位置中的存储设备上。因此,例如,索引数据库可以包括多个数据集合,每个数据集合可以被不同地组织和访问。
类似地,在本说明书中,术语“引擎”广泛地用于指代被编程为执行一个或多个特定功能的基于软件的系统、子系统或过程。通常,引擎将被实现为安装在一个或多个位置中的一个或多个计算机上的一个或多个软件模块或组件。在一些情况下,一个或多个计算机将专用于特定引擎;在其他情况下,可以在同一台或多台计算机上安装和运行多个引擎。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路(例如,FPGA或ASIC)执行,或者由专用逻辑电路和一个或多个编程计算机的组合执行。
适合于执行计算机程序的计算机可以基于通用或专用微处理器或两者,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如磁盘、磁光盘或光盘),或者可操作地耦合以从其接收数据或向其传输数据或两者。然而,计算机不需要具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备,例如通用串行总线(USB)闪存驱动器,仅举几例。
适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CDROM和DVD-ROM盘。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在具有用于向用户显示信息的显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器)以及用户可以通过其向计算机提供输入的键盘和定点设备(例如,鼠标或轨迹球)的计算机上实现。其他种类的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。另外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从网络浏览器接收的请求将网页发送到用户设备上的网络浏览器。此外,计算机可以通过向个人设备(例如,运行消息传送应用的智能电话)发送文本消息或其他形式的消息并且作为回报从用户接收响应消息来与用户交互。
用于实现机器学习模型的数据处理装置还可以包括例如专用硬件加速器单元,用于处理机器学习训练或生产的公共和计算密集部分,即推理、工作负载。
可以使用机器学习框架(例如,TensorFlow框架、Microsoft认知工具包框架、ApacheSinga框架或ApacheMXNet框架)来实现和部署机器学习模型。
本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器),或者包括中间件组件(例如,应用服务器),或者包括前端组件(例如,具有用户可以通过其与本说明书中描述的主题的实现交互的图形用户界面、web浏览器或app的客户端计算机),或者一个或多个这样的后端、中间件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系借助于在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据(例如,HTML页面)发送到用户设备,例如,用于向与充当客户端的设备交互的用户显示数据和从其接收用户输入的目的。可以在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。
虽然本说明书包含许多具体实施方式细节,但是这些不应被解释为对任何发明的范围或可能要求保护的范围的限制,而是作为可以特定于特定发明的特定实施例的特征的描述。在本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实现。此外,尽管特征可以在上面被描述为以某些组合起作用并且甚至最初如此要求保护,但是来自所要求保护的组合的一个或多个特征在一些情况下可以从组合中删除,并且所要求保护的组合可以针对子组合或子组合的变型。
类似地,虽然在附图中描绘了操作并且在权利要求中以特定顺序叙述了操作,但是这不应被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或封装到多个软件产品中。
已经描述了主题的特定实施例。其它实施例在所附权利要求书的范围内。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定需要所示的特定顺序或相继顺序来实现期望的结果。在一些情况下,多任务和并行处理可能是有利的。
Claims (13)
1.一种由一个或多个计算机执行的方法,所述方法包括:
获得与由一个或多个传感器捕获的点云集合中的每个点云相对应的相应测距图像,其中:
每个点云包括相应的多个三维点,
每个测距图像包括多个像素,其中,测距图像中的每个像素(i)与对应点云中的一个或多个点对应,并且(ii)至少具有测距值,测距值指示对应点云中关于该像素的对应一个或多个点到一个或多个传感器的距离;
使用分割神经网络处理每个测距图像,分割神经网络被配置为,对于每个测距图像,生成(i)测距图像中的像素的测距图像特征和(ii)分割输出,分割输出对于测距图像中的像素中的每一个指示该像素是前景像素还是背景像素;
对于点云集合中的每个前景点,从与前景点对应的像素的至少测距图像特征生成前景点的特征表示,其中,前景点是与对应分割输出指示是前景像素的像素对应的点;
仅从前景点的特征表示生成点云集合的特征表示;以及
使用预测神经网络处理点云集合的特征表示,以生成表征点云集合的预测。
2.根据权利要求1所述的方法,其中,预测是对象检测预测,对象检测预测识别可能是对象的测量的点云集合的区域。
3.根据权利要求2所述的方法,其中,对象检测预测包括(i)点云中的位置上的热图和(ii)多个边界框的参数。
4.根据任一前述权利要求所述的方法,其中,分割神经网络已经被训练以生成具有高查全率和可接受精度的分割输出。
5.根据任一前述权利要求所述的方法,其中,分割神经网络被配置为向测距图像特征应用1×1卷积,以生成分割输出。
6.根据任一前述权利要求所述的方法,其中,分割输出包括像素中的每一个的相应前景分数,并且其中,被指示为前景像素的像素是具有超过阈值的前景分数的那些像素。
7.根据任一前述权利要求所述的方法,其中,仅从前景点的特征表示生成点云集合的特征表示包括:
执行体素化以将前景点体素化成多个体素;
根据分配给体素的点的特征表示生成体素中的每个体素的相应表示;以及
使用稀疏卷积神经网络处理体素的表示,以生成点云集合的特征表示。
8.根据权利要求7所述的方法,其中,体素化是柱状体素化,并且其中,稀疏卷积神经网络是2D稀疏卷积神经网络。
9.根据权利要求7所述的方法,其中,体素化是3D体素化,并且其中,稀疏卷积神经网络是3D稀疏卷积神经网络。
10.根据权利要求7-9中任一项所述的方法,其中,点云集合包括在不同时间点捕获的多个点云,并且其中,仅从前景点的特征表示生成点云集合的特征表示包括:
在执行体素化之前,通过对于除了最近时间点的点云之外的每个点云将点云中的每个前景点变换成最近时间点的点云来生成变换后的点云;以及
对变换后的点云执行体素化。
11.根据权利要求10所述的方法,还包括:
对于每个点云,将该点云被捕获的时间点的标识符附加到该点云中的前景点的特征表示。
12.一种系统,包括:
一个或多个计算机;以及
一个或多个存储设备,存储指令,指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1-11中任一项所述的相应操作。
13.一个或多个计算机可读存储介质,存储指令,指令在由一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1-11中任一项所述的方法的相应操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063114506P | 2020-11-16 | 2020-11-16 | |
US63/114,506 | 2020-11-16 | ||
PCT/US2021/059503 WO2022104254A1 (en) | 2020-11-16 | 2021-11-16 | Efficient three-dimensional object detection from point clouds |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116783620A true CN116783620A (zh) | 2023-09-19 |
Family
ID=81587142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180070671.3A Pending CN116783620A (zh) | 2020-11-16 | 2021-11-16 | 根据点云的高效三维对象检测 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220156483A1 (zh) |
EP (1) | EP4211651A1 (zh) |
JP (1) | JP2023549036A (zh) |
KR (1) | KR20230070253A (zh) |
CN (1) | CN116783620A (zh) |
WO (1) | WO2022104254A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019064062A1 (en) * | 2017-09-26 | 2019-04-04 | Innoviz Technologies Ltd. | SYSTEMS AND METHODS FOR DETECTION AND LOCATION BY LIGHT |
GB2591332B (en) * | 2019-12-19 | 2024-02-14 | Motional Ad Llc | Foreground extraction using surface fitting |
US20220180602A1 (en) * | 2020-12-03 | 2022-06-09 | Nvidia Corporation | Generating images of virtual environments using one or more neural networks |
CN115131562B (zh) * | 2022-07-08 | 2023-06-13 | 北京百度网讯科技有限公司 | 三维场景分割方法、模型训练方法、装置和电子设备 |
CN115937644B (zh) * | 2022-12-15 | 2024-01-02 | 清华大学 | 一种基于全局及局部融合的点云特征提取方法及装置 |
CN116664874B (zh) * | 2023-08-02 | 2023-10-20 | 安徽大学 | 一种单阶段细粒度轻量化点云3d目标检测系统及方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9098754B1 (en) * | 2014-04-25 | 2015-08-04 | Google Inc. | Methods and systems for object detection using laser point clouds |
US10809361B2 (en) * | 2017-05-31 | 2020-10-20 | Uatc, Llc | Hybrid-view LIDAR-based object detection |
US10679351B2 (en) * | 2017-08-18 | 2020-06-09 | Samsung Electronics Co., Ltd. | System and method for semantic segmentation of images |
US10410354B1 (en) * | 2018-03-06 | 2019-09-10 | Mitsubishi Electric Research Laboratories, Inc. | Method and apparatus for multi-model primitive fitting based on deep geometric boundary and instance aware segmentation |
US10921455B2 (en) * | 2018-04-05 | 2021-02-16 | Apex.AI, Inc. | Efficient and scalable three-dimensional point cloud segmentation for navigation in autonomous vehicles |
-
2021
- 2021-11-16 KR KR1020237012853A patent/KR20230070253A/ko unknown
- 2021-11-16 EP EP21893015.4A patent/EP4211651A1/en active Pending
- 2021-11-16 JP JP2023521330A patent/JP2023549036A/ja active Pending
- 2021-11-16 WO PCT/US2021/059503 patent/WO2022104254A1/en active Application Filing
- 2021-11-16 US US17/527,653 patent/US20220156483A1/en active Pending
- 2021-11-16 CN CN202180070671.3A patent/CN116783620A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220156483A1 (en) | 2022-05-19 |
KR20230070253A (ko) | 2023-05-22 |
WO2022104254A1 (en) | 2022-05-19 |
EP4211651A1 (en) | 2023-07-19 |
JP2023549036A (ja) | 2023-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7254823B2 (ja) | 物体の検出および特徴付けのためのニューラルネットワーク | |
CN111666921B (zh) | 车辆控制方法、装置、计算机设备和计算机可读存储介质 | |
CN116783620A (zh) | 根据点云的高效三维对象检测 | |
JP7239703B2 (ja) | 領域外コンテキストを用いたオブジェクト分類 | |
CN113128348B (zh) | 一种融合语义信息的激光雷达目标检测方法及系统 | |
KR102073162B1 (ko) | 딥러닝 기반의 소형 물체 검출 기법 | |
CN111860155A (zh) | 一种车道线的检测方法及相关设备 | |
CN113267761B (zh) | 激光雷达目标检测识别方法、系统及计算机可读存储介质 | |
KR20210098515A (ko) | 표적 검출, 지능형 주행 방법, 장치, 디바이스 및 저장매체 | |
CN115147798A (zh) | 可行驶区域预测方法、模型、装置及车辆 | |
CN114241448A (zh) | 障碍物航向角的获取方法、装置、电子设备及车辆 | |
Aditya et al. | Collision Detection: An Improved Deep Learning Approach Using SENet and ResNext | |
CN114118247A (zh) | 一种基于多传感器融合的无锚框3d目标检测方法 | |
JP7321983B2 (ja) | 情報処理システム、情報処理方法、プログラムおよび車両制御システム | |
CN113536920A (zh) | 一种半监督三维点云目标检测方法 | |
Al Mamun et al. | Efficient lane marking detection using deep learning technique with differential and cross-entropy loss. | |
Aboah et al. | Ai-based framework for understanding car following behaviors of drivers in a naturalistic driving environment | |
Acun et al. | D3net (divide and detect drivable area net): deep learning based drivable area detection and its embedded application | |
CN111144361A (zh) | 一种基于二值化cgan网络的公路车道检测方法 | |
CN114332509B (zh) | 图像处理方法、模型训练方法、电子设备及自动驾驶车辆 | |
CN116246119A (zh) | 3d目标检测方法、电子设备及存储介质 | |
CN116868239A (zh) | 静态占用跟踪 | |
Zhang et al. | An Improved Detection Algorithm For Pre-processing Problem Based On PointPillars | |
Saleh et al. | Perception of 3D scene based on depth estimation and point-cloud generation | |
US20230105331A1 (en) | Methods and systems for semantic scene completion for sparse 3d data |
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 |