CN116547559A - 使用三维飞行时间成像的z平面识别和盒子尺寸确定 - Google Patents
使用三维飞行时间成像的z平面识别和盒子尺寸确定 Download PDFInfo
- Publication number
- CN116547559A CN116547559A CN202180077936.2A CN202180077936A CN116547559A CN 116547559 A CN116547559 A CN 116547559A CN 202180077936 A CN202180077936 A CN 202180077936A CN 116547559 A CN116547559 A CN 116547559A
- Authority
- CN
- China
- Prior art keywords
- sensor
- box
- point cloud
- distance data
- plane
- 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
- 238000003384 imaging method Methods 0.000 title claims description 13
- 238000004513 sizing Methods 0.000 title description 11
- 238000000034 method Methods 0.000 claims abstract description 119
- 239000013598 vector Substances 0.000 claims description 107
- 238000001914 filtration Methods 0.000 claims description 15
- 230000000007 visual effect Effects 0.000 claims description 13
- 230000001131 transforming effect Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 4
- 230000005855 radiation Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 24
- 238000012545 processing Methods 0.000 description 18
- 238000005259 measurement Methods 0.000 description 16
- 230000010363 phase shift Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000005484 gravity Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 241000282412 Homo Species 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004806 packaging method and process Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000014616 translation Effects 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000002310 reflectometry Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
提供了一种获得并处理在任意方向上获得的飞行时间数据(TOF)的传感器系统。TOF传感器获得描述各种表面的距离数据。处理器识别环境中的水平Z平面,并转换数据以与Z平面对齐。在一些实施例中,环境包括盒子,并且处理器在变换的数据中识别盒子的底部和顶部。处理器可以进一步确定盒子的尺寸,例如,盒子顶部和底部之间的高度,以及盒子顶部的长度和宽度。
Description
相关申请的交叉引用
本申请要求2020年9月22日提交的、名称为“使用三维飞行时间成像的盒子尺寸确定”的美国临时专利申请第63/081742号和2020年9日22日提交的、名称为“飞行时间成像中的世界Z平面识别”的63/081,775的优先权,其全部内容通过引用合并于此。
背景技术
人造环境通常被赋予与地球重力场的局部方向相对应的优选方向。简单来说,“向上”和“向下”定义了室内环境(如房间)和室外环境(如街道)的自然工程方向。楼板、墙和天花板受到局部重力方向的强烈约束。特别是,人造环境通常由水平Z平面构成(例如,桌面、座椅、地板、人行道)。
当一个人手持3D飞行时间(TOF)成像系统在人造环境中行走时,传感器相对于自然“上”和“下”方向的角度方向通常是未知的。人类无法将成像系统与环境可靠地对齐,让用户对齐和重新对齐传感器以匹配环境可能是一个耗时且令人沮丧的过程。
TOF成像系统的一个潜在应用是确定盒子的尺寸。测量实物的体积是各种工业和消费市场的一个基本问题,如物品的包装、运输和储存。在典型的包装和运输环境中,人类使用卷尺来测量盒子的尺寸,这是一个耗时的过程。现有的技术解决方案往往是脆弱的、昂贵的,和/或只能在某些环境中使用。例如,一些尺寸确定解决方案依赖于固定的参考帧,例如,从相机在相对于指定表面的固定位置拍摄的图像中导出放置在指定表面上的盒子的体积。
附图说明
为了提供对本公开及其特征和优点的更完整的理解,结合附图参考以下描述,其中相同的附图标记表示相同的部分,其中:
图1是根据本公开的一些实施例的TOF传感器系统的框图。
图2示出了根据本公开的一些实施例的TOF传感器的像素的光线方向。
图3是示出根据本公开的一些实施例的用于识别在任意参考帧中获得的TOF数据中的Z平面的过程的流程图。
图4是示出根据本公开的一些实施例的用于基于TOF数据识别基向量的过程的流程图。
图5是示出根据本公开的一些实施例的用于识别基于所识别的基向量变换的点云中的Z平面的过程的流程图。
图6是示出根据本公开的一些实施例的用于基于TOF数据确定和输出盒子尺寸的过程的流程图。
图7是示出根据本公开的一些实施例的用于识别盒子顶部和盒子底部的过程的流程图。
图8是示出根据本公开的一些实施例的用于计算盒子顶部的长度和宽度的过程的流程图。
图9是示出根据本公开的一些实施例的放置在桌面上的盒子的示例图像。
图10示出了根据本公开的一些实施例的由TOF传感器获得的距离数据的示例。
图11示出了根据本公开的一些实施例的根据距离数据计算的示例点云。
图12A和12B示出了根据本公开的一些实施例的点云中的点的表面法线的示例角坐标。
图13是根据本公开的一些实施例的对表面法线的角坐标进行分类的示例直方图。
图14示出了根据本公开的一些实施例的被转换为所识别的基向量的参考坐标系的点云的示例。
图15是根据本公开的一些实施例的从变换的点云获得的示例高度图。
图16是根据本公开的一些实施例的具有指示各种水平表面的峰值的高度图的示例Z轮廓。
图17示出了根据本公开的一些实施例的从高度图识别的四个示例Z平面切片。
图18A-18B示出了根据本公开的一些实施例的用于两个不同Z平面切片的两组连接分量。
图19A-19B示出了根据本公开的一些实施例的在所连接分量中识别的两个候选盒子顶部。
图20示出了根据本公开的一些实施例的与被标识为盒子顶部的连接分量相对应的一组点。
图21是根据本公开的一些实施例的沿着x轴和y轴投影的盒子顶部的示例轮廓。
图22示出了根据本公开的一些实施例的基于图21中的轮廓旋转的轴线对齐的盒子顶部。
图23A和23B示出了根据本公开的一些实施例的示例盒子顶部宽度和长度轮廓。
图24示出了根据本公开的一些实施例的重叠在由TOF传感器获得的图像上的识别的盒子边缘。
图25示出了根据本公开的一些实施例的叠加在由相机获得的图像上的识别的盒子边缘和确定的盒子尺寸。
具体实施方式
综述
本公开的系统、方法和装置每个都具有几个创新方面,其中没有一个单独负责本文公开的所有期望属性。本说明书中描述的主题的一个或多个实现方式的细节在下面的描述和附图中阐述。
在许多二维和三维图像处理应用中,环境中Z平面(例如,地板、街道、桌面)的可靠识别是有用的。特别地,确定飞行时间传感器相对于Z平面的滚转角和俯仰角以及传感器在其环境中相对于Z平面高度是有用的。如本文所使用的,Z平面是现实世界环境中在特定环境中与地面平行的平面。Z平面包括地面或楼板,以及与地面或楼板平行的曲面。在许多情况下,Z平面垂直于重力的方向。在某些情况下,例如,在山丘或其他倾斜表面上,Z平面(例如,地面、放在地面上的桌子)可能相对于重力方向稍微倾斜。
基本Z平面是捕捉环境的图像中最低的Z平面。例如,在包括放置在地板上的桌子上的盒子的环境的图像中,盒子的顶部、桌面和地板都是Z平面,而地板是基本Z平面。如果另一个图像包括盒子和桌面,但不包括地板,则桌面是该图像的基本Z平面。
本文描述了用于识别环境中的Z平面以及在某些情况下识别环境中基本Z平面的方法和系统。该方法包括提取相对于Z平面的滚转和俯仰旋转角度的参数。在一些实施例中,该方法还从单个输入TOF深度帧中提取传感器相对于基准Z平面的高度的参数。一旦提取了这两个旋转参数和平移参数,先验未知的外部相机校准参数的数量就从六个(3个平移+3个旋转角)减少到三个(2个平移+1个旋转角)。当以这种方式减少未知传感器自由度的数量时,飞行时间应用对于处理系统来说变得更容易和更快。此外,将坐标系轴与Z平面对齐简化了飞行时间图像在多种应用中的利用,如盒子尺寸、物体尺寸、盒子包装或障碍物检测。
本文还描述了用于测量盒子的尺寸的方法和系统。一种方法包括接收从飞行时间数据获得的三维点云,并识别点云中的盒子。特别地,该方法包括识别点云中的盒子顶部,然后识别盒子所在的表面,例如桌面或地板。然后,该方法包括将盒子的高度计算为盒子顶部和盒子所在表面之间的距离,并识别盒子顶部的边缘。然后,该方法包括计算边缘的宽度和长度轮廓,并基于宽度和长度轮廓确定盒子的宽度和宽度。定量的高度、宽度和长度值,例如以厘米为单位测量,可以例如在TOF测量设备的显示器上报告给用户。在一些示例中,该设备还生成叠加在盒子的图像上的识别盒子的可视化,使得用户可以定性地确认所计算的尺寸。
现有的盒子尺寸确定解决方案通常非常容易受到阳光的影响,因为阳光会在TOF数据或图像数据中产生显著的噪声。先前的盒子尺寸系统仅适用于室内使用或在特定的照明条件下使用。在本文所述的一些实施例中,对TOF测量数据进行滤波以减少视觉噪声的影响,使得TOF传感器系统能够在各种环境照明条件下使用,包括室内和室外。在一个示例中,在第一阶段对测量数据进行滤波,以识别观测环境中的Z平面。因为Z平面相对较大,所以可以使用激进的滤波器(例如,大的滤波器窗口)。如上所述,在使用Z平面识别盒子之后,识别盒子边缘。由于在这个阶段需要更高的精度,因此可以使用更精细的滤波器(例如,更小的滤波器窗口)来对测量数据进行滤波以找到盒子边缘。
一个实施例提供一种用于识别Z平面的方法。该方法包括:接收描述捕获所述距离数据的传感器与所述传感器的环境中的多个表面之间的距离的距离数据,其中所述表面中的至少一个是Z平面;基于所述距离数据生成点云,所述点云在所述传感器的参考帧中;识别表示跨越所述点云的峰值方向的基向量;将所述点云变换为所述基向量的参考帧;和识别所述变换的点云中的Z平面。
另一个实施例提供了一种包括TOF深度传感器和处理器的成像系统。TOF深度传感器获得描述TOF深度传感器与TOF深度传感器的环境中的多个表面之间的距离的距离数据。处理器接收来自TOF深度传感器的距离数据;基于所述距离数据生成点云,所述点云在所述TOF深度传感器的参考帧中;识别表示跨越所述点云的峰值方向的基向量;将所述点云变换为所述基向量的参考帧;并且识别变换后的点云中的Z平面。
又一实施例提供一种用于确定物理盒子的尺寸的方法。该方法包括:接收描述传感器与所述传感器的环境中的多个表面之间的距离的距离数据,所述表面的至少一部分对应于待测量的盒子;将所述距离数据转换为所述传感器的环境中的表面之一的参考帧;从所述传感器环境中的多个表面中选择对应于盒子顶部的第一表面和盒子放置在其上的表面相对应的第二表面;计算所述第一表面和所述第二表面之间的高度;和基于所选择的与所述盒子顶部相对应的第一表面来计算长度和宽度。
另一个实施例提供了一种包括TOF深度传感器和处理器的成像系统。TOF深度传感器获得描述TOF深度传感器与TOF深度传感器的环境中的多个表面之间的距离的距离数据。处理器接收来自TOF深度传感器的距离数据;将所述距离数据转换为所述传感器的环境中的所述表面之一的参考帧;选择与盒子顶部相对应的第一表面和与盒子放置在其上的表面相对应的第二表面;计算所述第一表面和所述第二表面之间的高度;并基于所选择的与盒子顶部相对应的第一表面来计算长度和宽度。
如本领域技术人员将理解的,本公开的各方面,特别是在此描述的基于TOF图像识别Z平面和确定盒子尺寸的各方面可以以各种方式(例如,作为方法、系统、计算机程序产品或计算机可读存储介质)来体现。因此,本公开的各方面可以采取硬件实施例、软件实施例(包括固件、驻留软件、微代码等)或结合软件和硬件方面的实施例的形式,这些方面在本文中通常可以被称为“电路”、“模块”或“系统”。本公开中描述的功能可以被实现为由一个或多个计算机的一个或更多个硬件处理单元(例如一个或更少个微处理器)执行的算法。在各种实施例中,本文描述的每个方法的不同步骤和步骤的部分可以由不同的处理单元执行。此外,本公开的各方面可以采取计算机程序产品的形式,该计算机程序产品体现在一个或多个计算机可读介质中,优选地是非暂时性的,其上体现(例如存储)计算机可读程序代码。在各种实施例中,例如,这样的计算机程序可以被下载(更新)到现有的设备和系统(例如,到现有的感知系统设备和/或它们的控制器等),或者在制造这些设备和系统时被存储。
以下详细描述呈现了特定特定实施例的各种描述。然而,本文所描述的创新可以以多种不同的方式来体现,例如,如权利要求和/或选择的示例所定义和涵盖的。在以下描述中,参考附图,其中相似的附图标记可以指示相同或功能相似的元件。应当理解,附图中所示的元件不一定按比例绘制。此外,将理解的是,某些实施例可以包括比图中所示的更多的元件和/或图中所述的元件的子集。此外,一些实施例可以结合来自两个或多个附图的特征的任何适当组合。
以下公开描述了用于实现本公开的特征和功能的各种说明性实施例和示例。尽管以下结合各种示例性实施例描述了特定的组件、布置和/或特征,但这些仅仅是用于简化本公开的示例,并不旨在进行限制。当然,应该理解,在任何实际实施例的开发中,必须做出许多特定于实现的决策,以实现开发人员的特定目标,包括遵守系统、业务和/或法律约束,这些约束可能因实施方式而异。此外,应该意识到,尽管这种开发工作可能复杂而耗时;然而,对于受益于本公开的本领域普通技术人员来说,这将是一项常规任务。
在说明书中,可以参考附图中所示的各种部件之间的空间关系以及部件的各个方面的空间定向。然而,如本领域技术人员在完全阅读本公开之后将认识到的,本文所述的装置、组件、构件、装置等可以定位在任何期望的方向上。因此,使用诸如“以上”、“以下”、“上部”、“下部”、“顶部”、“底部”之类的术语或其他类似术语来描述各种组件之间的空间关系或描述这些组件的各方面的空间取向,应被理解为描述这些组件之间的相对关系或这些组件的各个方面的空间定向,因为本文所描述的组件可以在任何期望的方向上定向。当用于描述元件、操作和/或条件的尺寸范围或其他特性(例如,时间、压力、温度、长度、宽度等)时,短语“X和Y之间”表示包括X和Y的范围。
本公开的其他特征和优点将从以下描述和权利要求中显而易见。
TOF系统综述
图1是根据本公开的一些实施例的示例传感器系统100的框图。传感器系统100包括TOF传感器110、处理器120、相机130、显示设备140和存储器150。在替代配置中,TOF传感器系统中可以包括与图1中所示的组件不同的、更少的和/或附加的组件。此外,结合图1所示的一个或多个组件描述的功能可以以与所描述的不同的方式分布在组件之间。在一些实施例中,部件110-150中的一些或全部可以集成到单个单元中,例如,具有TOF传感器110的手持式单元、用于处理TOF数据的处理器120、本地存储器150、以及用于向用户显示处理器120的输出的显示设备140。在一些实施例中,一些部件可以位于不同的设备中,例如,手持式TOF传感器110可以将TOF数据传输到外部处理系统(例如,计算机或平板电脑),该外部处理系统存储和处理TOF数据并向用户提供一个或多个显示器。不同的设备可以通过无线或有线连接进行通信。
TOF传感器110收集距离数据,该距离数据描述TOF传感器110与TOF传感器110的环境中的各种表面之间的距离。TOF传感器110可以包含光源,例如激光器,以及用于捕获从表面反射的光的图像传感器。在一些实施例中,TOF传感器110发射光脉冲并在不同时间捕获多个图像帧,以确定光脉冲行进到表面并返回到图像传感器的时间量。在其他实施例中,TOF传感器110检测所捕获的光中的相移,并且相移指示TOF传感器110与各种表面之间的距离。在一些实施例中,TOF传感器110可以产生并捕获多个不同频率的光。如果TOF传感器110发射和捕获多个频率的光,这可以帮助解决不明确的距离,并帮助TOF传感器110在更大的距离范围内工作。例如,如果对于第一频率,第一观测到的相位可以对应于0.5米、1.5米或2.5米外的表面,并且对于第二频率,第二观测到的相位可以对应于0.75米、1.5米或2.25米外的表面,通过组合这两个观测,TOF传感器110可以确定该表面在1.5米外。无论使用相移还是脉冲返回时间来测量距离,使用多个频率也可以提高对由环境光的特定频率引起的噪声的鲁棒性。在替代实施例中,可以使用不同类型的传感器来代替和/或除了TOF传感器110之外,以获得距离数据。
处理器120从TOF传感器110接收距离数据,并处理该距离数据以识别TOF传感器的环境中的各种特征,如本文中详细描述的,例如,关于图3-8。在一些实施例中,距离数据包括由TOF传感器110使用例如上述相移或脉冲返回时间方法测量的到各种表面的观测距离。在一些实施例中,如果TOF传感器110测量相移,则处理器120从TOF传感器110接收的距离数据是相移数据,并且处理器120根据相移数据计算到表面的距离。
相机130可以捕捉环境的图像帧。相机130可以是捕捉可见范围内的环境的图像的可见光相机。在其他实施例中,相机130是红外(IR)相机,其捕获传感器系统的环境中的表面的IR强度。相机130和TOF传感器110的视场部分或完全重叠,例如,相机130的视场可以略大于TOF传感器110的视场。相机130可以将捕捉到的图像传递给处理器120。在一些实施例中,可以包括两个处理器或处理单元,例如,用于执行本文所述的Z平面识别和盒子尺寸确定算法的第一处理单元,以及从相机130接收图像并基于来自第一处理单元的图像和数据生成显示的第二图形处理单元。在一些实施例中,来自相机130的图像数据可以用于确定TOF传感器110的环境中的阳光水平。在替代实施例中,传感器系统100可以包括单独的光传感器,用于检测TOF传感器110的环境中的阳光或其他环境光条件。
显示设备140为传感器系统100的用户提供视觉输出。例如,显示设备140可以显示由处理器120基于来自TOF传感器110的距离数据计算的盒子尺寸和/或盒子体积。在一些实施例中,显示设备140显示由相机130获得的图像,并基于距离数据叠加指示在相机130和TOF传感器110的视场中识别的一个或多个特征的视觉图像。例如,处理器120可以指示显示设备140在由相机130获得的盒子的图像上显示盒子的轮廓。用户可以使用该显示器来确定传感器系统100是否已经正确地识别盒子和盒子的边缘。传感器系统100可以包括附加的或替代的输入和/或输出设备,例如按钮、扬声器、触摸屏等。
存储器150存储用于传感器系统100的数据。例如,存储器150存储处理器120用于识别TOF传感器110的环境中的特征的处理指令,例如,用于识别一个或多个Z平面和/或用于计算观察到的盒子的盒子尺寸的指令。存储器150可以临时存储由相机130和/或TOF传感器110获得并由处理器120访问的数据和图像。存储器150可以进一步存储由显示设备140访问的图像数据以生成输出显示。
图2示出了根据本公开的一些实施例的TOF传感器110的像素的光线方向。由TOF传感器110获得的距离数据可以被布置为图像帧(例如,图像帧220)内的一组像素,例如,像素210a和210b。每个像素210具有相关联的射线方向215,其中射线方向215从TOF传感器110向外指向。射线方向215被朝向图像帧220投影。虽然在图2中示出了25条射线和像素,但是应当理解,TOF传感器110可以具有更多的像素。虽然在图2所示的示例中图像帧220具有正方形形状,但是在其他实施例中图像帧220可以具有其他形状。在一些示例中,某些像素,例如图像帧220的边缘附近的像素,可能不被认为是有效的(例如,不足够可靠),并且从距离数据中去除。
例如,第一像素210a具有从TOF传感器110笔直延伸出的光线方向215a;像素210a位于图像帧220的中心。图像帧220的角处的第二像素210b与射线方向215b相关联,该射线方向从TOF传感器110以例如在x方向和y方向上从图像帧220中心以30°角延伸出,其中图像帧220是TOF传感器110的参考帧中的x-y平面。TOF传感器110沿着每个有效像素的射线将距离数据(例如,距离、一个或多个相移)返回到表面。在一个示例中,第一像素210a可以具有1米的测量距离,该测量距离表示到盒子上的特定点的距离,并且第二像素210b可以具有2米的测量距,该测量距表示到盒子后面的墙上的特定点。
识别Z平面的示例过程
图3是示出根据本公开的一些实施例的用于识别在任意参考帧中获得的TOF数据中的Z平面的过程300的流程图。TOF传感器110捕获310环境的距离数据,包括环境中的各种表面。可以假设所述表面中的至少一个是Z平面。TOF传感器110将距离数据传递给处理器120。在一些示例中,相机130捕捉环境的图像,例如,在TOF传感器110捕捉距离数据的同时,相机130将图像传递给处理器120。
图9和图10示出了来自相机130和TOF传感器110的输入的两个示例视觉表示。图9是示出根据本公开的一些实施例的放置在桌面上的盒子的示例图像。在该示例中,图9示出了IR强度图像,其示出了放置在桌子920上的盒子910,桌子左侧有椅子930和地板940。IR强度图像可以在可视化期间使用(例如,用于可视化提取的世界Z平面的位置,或者用于其他应用的可视化,例如盒子尺寸)。
图10示出了根据本公开的一些实施例的由TOF传感器获得的距离数据的示例。图10所示的TOF传感器110的视场对应于图9所示的IR强度图像的视场。距离数据由阴影表示,其中不同的阴影表示从TOF传感器110到TOF传感器110的环境中的各种表面的不同距离,例如,盒子910比地板940更靠近TOF传感器110。如关于图2所描述的,距离数据包括具有图2中所示的射线方向215的各种像素。
在一些实施例中,处理器120对接收到的距离数据进行滤波320。TOF传感器110的环境中的环境光可以在距离数据中产生噪声。为了减少噪声的影响,在执行进一步分析之前,可以将滤波器(例如,积分滤波器)应用于距离数据。如果TOF传感器110由于阳光引起的噪声而在室外环境中捕获数据,则以这种方式过滤噪声可能特别有用。为了过滤距离数据,处理器120可以针对每个像素基于像素周围区域中的像素值来计算平均像素值。例如,给定像素的滤波像素值可以是以给定像素为中心的11x11或21x21平方像素的平均值。在一些实施例中,处理器120对从TOF传感器110接收的相位测量数据执行滤波,例如,处理器120首先对多个相位测量进行滤波(如上所述,针对不同的频率),然后处理滤波后的相位数据以确定每个像素的距离测量。或者,处理器120可以对距离测量进行滤波,例如,如果使用脉冲返回方法来获得距离数据。
在一些实施例中,可以省略滤波步骤,例如,如果TOF传感器110旨在用于具有相对低噪声水平的环境中,例如,TOF传感器110仅设计用于室内使用。在一些情况下,处理器120可以响应于确定在TOF传感器110的环境中存在阈值水平的阳光而执行滤波。此外,在一些实施例中,处理器120可以基于TOF传感器110的环境中的环境光的类型或水平来执行自适应滤波,例如,当检测到更亮的阳光时使用更大的滤波器窗口,当在环境光中检测到更大的频率分布时使用较大的滤波器窗口,或者当在环境光中检测到已知与TOF传感器110相互作用的特定频率时使用更大的滤波器窗口。
处理器120基于距离数据和像素射线方向215生成330点云。例如,对于每个单独的像素,处理器120将该像素的光线方向215乘以该像素到表面的测量距离,例如,图10所示的测量距离。处理器120可以从存储器150中检索光线方向215。
点云在TOF传感器110的参考帧中,也被称为ego帧。例如,如果用户在环境中以相对于地面的微小角度握住TOF传感器110,则TOF传感器的参考帧中的Z方向与环境中的Z平面不对齐(例如,如果Z平面垂直于重力方向,则参考帧中Z方向相对于重力方向成角度)。
图11示出了根据本公开的一些实施例的根据距离数据计算的示例点云。因为当捕获距离数据时,TOF传感器110相对于环境中的Z平面处于任意角度,所以在TOF传感器110的参考帧中产生的点云对于人类来说很难解释。对于在利用TOF数据的各种应用中使用计算机算法来说,这种点云也具有挑战性。
处理器120为环境中的表面的参考帧(也称为“世界”参考帧)识别340个基向量。第一基向量对应于由TOF传感器110观察到的环境中垂直于Z平面的方向。第二和第三基向量各自与第一基向量正交。基向量定义“世界”坐标系,即Z平面为水平的坐标系。
图4是示出根据本公开的一些实施例的用于基于TOF距离数据识别基向量的示例过程的流程图。根据ego帧中的三维点云(例如,图11中所示的点云),处理器120计算410点云中的点的表面法线向量(也称为表面法线)。为了计算给定点的表面法线,处理器120可以将平面拟合到围绕单个点的区域中的一组点,然后处理器120计算拟合平面的表面法线。对于平面(例如,地板、长方体曲面、墙),与点云关联的表面法线是相当均匀的,并有一些噪波变化。如上所述,滤波320可以减少表面法线中的噪声变化。表面法线可以由极坐标系中的极角和方位角来表示。在其他实施例中,笛卡尔坐标系可以用于表示表面法线向量。
图12A和12B示出了根据本公开的一些实施例的图11中所示的点云中的点的表面法线的示例角坐标。特别地,图12A示出了每个计算的表面法线的极角,并且图12B示出了每一个计算的表面常态的方位角。如这些图所示,与盒子910、桌子920和椅子930的顶部相对应的Z平面在其表面上具有一致的表面法线,由于距离数据中的噪声而存在一些变化。此外,由于这些对象中的每一个都沿着Z平面是平坦的,因此它们每个都具有相似的表面法线(由两个图像中的每幅图像中这些Z平面上的相似阴影表示)。相反,盒子910的正面具有相对于Z平面的正交表面法线,如图12B中盒子910的前面中较暗的阴影所示。
在计算了表面法线之后,处理器120基于计算的表面法线提取一个或多个基向量。为了提取第一基向量,处理器120可以对表面法线的坐标进行装仓420,例如,处理器120对每个计算的表面法线的极角和方位角进行装仓。这种装仓的结果是二维分布。可以通过直方图(例如,对图13中所示的表面法线的角坐标进行分类的二维直方图)在视觉上表示分类。图13中所示的二维直方图具有与TOF传感器110的ego帧中的Z平面方向矢量相对应的强峰值1310(由深色阴影表示)。处理器120识别430装仓坐标的二维分布中的峰值坐标,例如峰值方位角和峰值极角。处理器120将第一基向量定义440为与点云上的表面法线的峰值方向(例如,峰值方位角和峰值极角)相对应的方向向量,该点云是TOF传感器110的环境中的Z平面的表面法线。
在选择了第一基向量之后,处理器120选择450第二和第三基向量。第二和第三基矢量与第一基矢量正交(即,与垂直于Z平面的表面正交)。第二和第三基向量也彼此正交。第一、第二和第三基向量定义了世界参考帧。
在一些实施例中,处理器120计算TOF传感器的指向方向(例如,从TOF传感器110笔直延伸出的射线方向215b)到Z平面(例如,与第一基向量正交的平面)的投影,并且处理器120选择该投影作为第二基向量。处理器120选择与第一和第二基向量正交的向量作为第三基向量;处理器120可以将第三基向量计算为第一基向量和第二基向量的叉积。在其他实施例中,可以以其他方式选择第二和第三基向量。
返回图3,在识别了基向量之后,处理器120将点云变换350为基向量的参考帧。例如,未变换的点云中的每个点可以被定义为矢量(例如,射线方向和测量距离的乘积,其中射线方向是TOF传感器110的参考帧中的矢量,如上所述)。在变换的点云中,每个点可以被定义为基向量的线性组合。特别地,处理器120可以将每个点定义为基向量的和,每个基向量乘以标量,其中处理器120通过计算未变换的点云中的点(以向量表示法)与基向量的内积来确定标量中的每个标量。图14示出了根据本公开的一些实施例的被转换为所识别的基向量的参考坐标系的点云的示例。变换的点云对于人类来说更容易解释为图11中所示的点云。盒子910、桌子920、椅子930和地板940在变换的点云中是可见的。此外,对于处理器120来说,变换的点云比ego帧中的未变换的点云更容易用于进一步的计算(例如,识别Z平面、识别盒子和确定盒子尺寸,如下文进一步描述的)。例如,将点云与Z平面的参照帧对齐简化了识别和隔离Z平面的步骤。
处理器120接下来识别360变换的点云中的Z平面。图5是示出根据本公开的一些实施例的用于识别基于所识别的基向量变换的点云中的Z平面的示例过程的流程图。首先,处理器120从变换的点云生成510高度图。例如,处理器120将变换的点云的点分布成正方形的“烟囱”,并随后为每个烟囱选择代表性的高度。每个烟囱可以是相同尺寸的形状,例如(0.75厘米)2平方米。可以使用其他尺寸或形状来构建高度图。代表性高度可以是,例如,烟囱的顶部点(最大高度)、平均高度、中间高度、或从落在烟囱内的点的高度选择或计算的另一高度。将三维点云缩减为二维高度图简化了数据处理并提高了计算速度。
图15是根据本公开的一些实施例的从变换的点云获得的高度图的示例视觉表示。图15中的阴影表示每个烟囱的高度。例如,在盒子910的顶部处的较亮的阴影表示比桌子920的较暗的阴影更大的高度。
处理器120然后生成520高度图的轮廓表示。例如,处理器120在x方向和y方向上集成高度图以获得高度图的Z轮廓。该轮廓表示高度图中高度的概率密度。轮廓内的峰值对应于各种平面,即与第一基向量正交的表面。
图16是根据本公开的一些实施例的具有指示各种水平表面的峰值的高度图的示例Z轮廓。图16包括四个峰值1610、1620、1630和1640。在该示例中,在最低高度处的峰1610对应于地板940。下一个峰1620对应于椅子930。下一个峰值1630也是最高峰(指示高度图内的大多数点落在该峰值),对应于桌子920。最后,最后一个峰值1640对应于盒子910的顶部。
处理器120将高度图的轮廓表示中的峰值识别530为Z平面。例如,对于概率密度下降到给定阈值(例如,0.01)以上的Z轮廓的每个部分,处理器120识别Z平面。在一些实施例中,处理器120将一个或多个其他规则或启发式应用于Z轮廓,以识别Z平面,例如,去除伪噪声峰值,同时保留真正的弱信号,例如第9页所示的底峰。例如,处理器120可以识别具有至少阈值数量的关联点的峰值,或者高度落在彼此的给定范围内的峰值。
处理器120可以选择给定峰值内的特定高度点(例如,最高点或中心点)作为该峰值的Z平面高度。在一些实施例中,处理器120选择最低的Z值峰值作为基本Z平面的高度。处理器120可以将基本Z平面的高度设置为零,并且基于其他Z平面相对于基本Z平面所具有的高度来确定其他Z平面的高度。例如,处理器120将地板峰1610的高度设置为0,并且处理器120确定椅子峰1620具有0.569米的高度,桌子峰1630具有0.815米的高度并且盒子顶峰1640具有0.871米的高度。
在识别了Z平面及其相关联的高度之后,处理器120将点云中的各个点与识别的Z平面相关联540。例如,如果点的高度在所识别的Z平面的高度范围内,则处理器120可以将点云中的特定点与所识别的Z-平面相关联。例如,如果特定点的高度在峰值的FWHM(最大值一半时的全宽)的两倍以内,则该点与对应于该峰值的Z平面相关联。在其他示例中,Z平面高度周围的其他范围用于将点云中的点与Z平面相关联。
图17示出了根据本公开的一些实施例的从高度图识别的点云中的四个示例Z切片。处理器120与特定Z平面相关联的每组点可以被称为Z平面切片,或者简单地称为Z切片。每个Z切片都用不同的着色表示,其中不同着色的Z切片对应于不同高度的Z平面。
变换的点云和识别的Z平面可以用于对点云数据的各种进一步处理。在一些示例中,处理器120可以继续在TOF传感器110的环境中定位盒子,并确定盒子的尺寸和/或体积,如下所述。在其他示例中,处理器120可以对TOF传感器110的环境中的其他类型的对象执行其他类型的识别或分析。
在一些实施例中,传感器系统100向用户显示Z平面识别过程的输出。例如,处理器120可以将所识别的Z平面与相机130获得的图像中的各种像素相关联,并且生成具有所识别的Z-平面的视觉指示的显示。例如,可以在由显示设备140输出的显示器中对Z平面进行轮廓或颜色编码。显示设备140可以替代地或附加地输出所确定的Z平面的高度。
盒子尺寸确定示例流程
图6是示出根据本公开的一些实施例的用于基于TOF数据确定并输出盒子尺寸的过程600的流程图。诸如传感器系统100之类的传感器系统接收610描述传感器系统100的环境中的各种表面的距离数据。例如,如关于图3中的步骤310-330所描述的,TOF传感器110捕获距离数据,处理器120可选地过滤距离数据,并且处理器120基于距离数据生成点云。
对于盒子尺寸确定过程,处理器120可以假设TOF传感器110的环境中的表面的至少一部分对应于要测量的盒子。可以对正在测量的盒子做出几个额外的假设。这样的假设可以提高盒子尺寸确定过程的速度和准确性,特别是在盒子的快速检测和测量很重要的应用中,例如,如果当用户将TOF传感器110指向盒子时,盒子尺寸被实时或接近实时地计算并提供给用户。这些假设可包括盒子相邻表面之间的角度合理地接近90°(例如,在85°和95°之间,或在一些其他范围内);盒子位于TOF传感器110的特定距离内(例如3米内或5米内);每个盒子尺寸都在特定范围内(例如,至少3厘米,或至少10厘米;不超过2米,或不超过3米);盒子已关闭;盒子的顶面对于TOF传感器110是可见的;并且盒子放置在TOF传感器110也可见的平坦的水平表面(即Z平面)上。
应当理解,在一些实施例中,这些假设中的一个或多个可以被放宽或去除。例如,传感器和盒子之间的范围以及最小和最大盒子尺寸仅仅是示例性的,并且在其他实施例中,可以使用不同的范围和尺寸。在一些实施例中,范围可以根据传感器系统100的预期用途或目标用户而变化。例如,如果传感器系统100用于测量装载到移动卡车中的盒子(例如,包括衣柜黑盒子和盒装家具),则可以使用更大的距离范围和更大的盒子尺寸。在一些实施例中,用户可以能够输入距离范围和/或最大和最小盒子尺寸。
处理器120将距离数据(例如,基于来自TOF传感器110的距离数据计算的点云)转换620为TOF传感器的环境中的表面的参考帧。例如,如关于图3中的步骤340和350所描述的,处理器120识别TOF传感器110的环境中的表面的参考帧的基向量,并且处理器120将距离数据(例如,点云)转换为基向量的参考帧。关于图4更详细地描述了将点云转换为基向量的参考帧的过程。处理器120可以进一步识别变换后的距离数据中的Z平面,如关于图3的步骤360以及关于图5更详细地描述的。
如关于图5和图17所指出的,每个Z平面可以表示为高度图数据的Z切片。处理器120基于高度图数据选择630对应于盒子顶部的表面和对应于盒子底部的表面。例如,处理器120将Z切片中的一个识别为包含盒子顶部,并且将Z切片的另一个识别为由盒子放置的表面(例如,地板或桌子),其对应于盒子底部。
图7是示出根据本公开的一些实施例的用于识别盒子顶部和盒子底部的示例过程的流程图。处理器120基于距离数据生成710高度图。例如,处理器120可以生成如关于图5的步骤510所描述的高度图。处理器120然后在高度图中识别720Z切片。例如,处理器120生成高度图的轮廓表示,将Z平面识别为高度图的剖面表示中的峰值,并将距离数据中的各个点(例如,点云中的点)与Z平面相关联,如关于图5的步骤520-540所述。如上所述,与特定Z平面相关联的每组点被称为Z切片。
处理器120识别730至少一些Z切片内的连接分量。连接分量中的每一个可以是候选盒子顶部。为了识别连接分量,处理器120在Z切片内找到附近或连接点的簇。处理器120可以通过在Z切片中找到可以通过在该Z切片上移动而到达的像素集合来识别连接分量,例如,彼此在阈值距离内的像素。例如,处理器120可以选择Z切片中的特定像素,并递归地将同样在Z片中的相邻像素添加到连接分量。每个连接分量在基向量的参考帧中沿着Z轴具有各自的高度;该高度对应于Z切片的高度。
图18A-18B示出了根据本公开的一些实施例的用于两个不同Z平面切片的两组连接分量。特别地,图18A示出了81.5cm的Z切片内的连接分量,而图18B示出了87.1cm的Z切片中的连接分量。每个相应的连接分量都被指定了不同的着色。如果TOF传感器110获得的距离数据中存在方框,则预期连接分量之一对应于盒子顶部。
在一些实施例中,在识别Z切片中的连接分量之前,处理器120可以应用一个或多个规则来从作为盒子顶部的考虑中移除一个或更多个Z切片。例如,处理器120可以将最低或基本Z切片消除为潜在地包含盒子顶部,因为假设盒子顶部在最低表面之上。处理器120还可以移除在高度图内(在x方向和y方向上)没有足够靠近某个其他较低Z切片(即,用于放置盒子的潜在表面)的Z切片。例如,对于图17中所示的Z平面切片,处理器120可以将Z=56.9cm的切片从考虑中移除,因为它没有足够接近低于它的唯一Z切片,即Z=0cm的切片。相比之下,56.9cm的Z切片与Z=81.5cm的Z片足够接近,使得Z=81.5cm的Z切片不能被排除为潜在地包含盒子顶部,其中56.9cm Z切片是保持盒子底部的表面。
在识别出表示候选盒子顶部的连接分量之后,处理器120选择740连接分量中的一个作为盒子顶部。处理器120可以将各种规则应用于连接分量以识别盒子顶部。例如,处理器120可以移除非常小的连接分量(例如,具有低于上述阈值最小盒子尺寸的宽度和/或长度)。处理器120可以移除高度细长或非紧凑的连接分量(例如,与连接分量的面积的平方根相比,连接分量具有大的周长)。处理器120可以移除不能从高度图中导出盒子底部(即,盒子所在的表面)的连接分量,例如,因为在x和y方向上没有其他连接分量或Z切片足够靠近高度图中的连接分量。
在将这些规则应用于图18A和18B中所示的连接分量之后,图19A和19B中所显示的两个连接分量保留为候选盒子顶部。图19A和19B示出了在连接分量中标识的两个候选盒子顶部。特别地,图19A示出了在Z=81.5cm切片中的连接分量1910a,并且图19B示出了Z=87.1cm切片中的连接分量1910b。为了选择剩余的连接分量中的一个作为盒子顶部,处理器120应用额外的规则,该规则考虑包围连接分量的凸包多边形的形状,例如,凸包多边形与期望的矩形形状的匹配程度。凸包多边形1920a和1920b是围绕图19A和19B中的每个连接分量绘制的。图19A中的凸包多边形1920a强烈偏离矩形形状,而图19B中的凸包多边形1920b非常接近矩形,例如,凸包多边形1920b偏离预期的矩形形状小于阈值偏差。因此,在该示例中,处理器120选择87.1cm Z切片中的矩形连接分量作为盒子顶部。
尽管上面讨论了用于识别盒子顶部的几个示例规则,但是在不同的实施例中,处理器120可以将附加的、更少的或不同的规则应用于连接分量以识别盒子顶部。在一些实施例中,如果多个候选通过上述规则中的每一个,则处理器120可以使用一个或多个附加规则来在可能的盒子顶部之间进行选择。例如,处理器120可以选择最靠近TOF传感器110的候选盒子顶部。
在识别盒子顶部之后,处理器120识别750盒子放置在其上的表面,该表面对应于盒子底部。例如,处理器120在高度图中选择具有比盒子顶部更低的高度并且在横向范围上最靠近盒子顶部的Z切片,例如,在高度图的x和y方向上最靠近所识别的盒子顶部的Z-切片。在图17所示的示例高度图中,所识别的盒子顶部位于Z=81.5cm的切片上。这也对应于盒子底部的高度。
返回图6,在识别了盒子顶部和盒子底部之后,处理器120计算640从盒子顶部到盒子底部的盒子高度。盒子高度是盒子顶部和底部各自Z切片高度之间的差异,例如87.1cm–81.5cm=5.6cm。
处理器120进一步650基于所选择的盒子顶部来计算盒子的长度和宽度。例如,在识别出盒子顶部之后,处理器120计算盒子顶部的长度和宽度。因为盒子顶部的距离数据是以一定角度获取的并且可能具有噪声,所以处理器120可以滤波盒子顶部数据,旋转盒子顶部使其与x轴和y轴对齐,并且计算边缘的水平和垂直轮廓以确定长度和宽度。例如,盒子的后缘(即,离TOF传感器110最远的盒子的边缘)可能是模糊的,这可能使得处理器120难以在不执行额外数据处理的情况下识别后缘。
图8是示出根据本公开的一些实施例的用于计算盒子顶部的长度和宽度的示例过程的流程图。在一些实施例中,处理器120滤波盒子顶部数据,例如,至少对应于距离数据中对应于所识别的盒子顶部的点的距离数据。在一些实施例中,处理器120滤波所有的距离数据。如关于图3所描述的,TOF传感器110的环境中的环境光可以在距离数据中产生噪声。为了减少噪声的影响,在计算盒子的长度和宽度之前,可以对距离数据应用滤波器,例如积分滤波器。如果TOF传感器110由于阳光引起的噪声而在室外环境中捕获数据,则以这种方式过滤噪声可能特别有用。
为了过滤距离数据,处理器120可以针对距离数据中的每个像素,基于像素周围区域中的像素值来计算平均像素值。处理器可以使用与关于步骤320描述的滤波器不同的滤波器。特别地,处理器120可以使用比用于识别Z平面的滤波器更小的滤波器窗口。例如,给定像素的滤波像素值可以是以给定像素为中心的5x5或7x7平方像素的平均值。如关于图3所描述的,处理器120可以对从TOF传感器110接收的相位测量数据执行滤波,例如,处理器120首先对多个相位测量进行滤波(对于不同的频率,如上所述),然后处理滤波后的相位数据以确定每个像素的距离测量。或者,处理器120可以对距离测量进行滤波,例如,如果使用脉冲返回方法来获得距离数据。
在一些实施例中,可以省略滤波步骤,例如,如果TOF传感器110旨在用于具有相对低噪声水平的环境中,例如,TOF传感器110仅设计用于室内使用。在一些情况下,处理器120可以响应于确定在TOF传感器110的环境中存在阈值水平的阳光而执行滤波。此外,在一些实施例中,处理器120可以基于TOF传感器110的环境中的环境光的类型或水平来执行自适应滤波,例如,当检测到更亮的阳光时使用更大的滤波器窗口,当在环境光中检测到更大的频率分布时使用较大的滤波器窗口,或者当在环境光中检测到已知与TOF传感器110相互作用的特定频率时使用更大的滤波器窗口。
处理器120在步骤740提取820变换后的距离数据内对应于盒子顶部的点的子集,例如,被选择为盒子顶部的连接分量。如果执行滤波810,则处理器820可以基于滤波后的数据计算第二点云(遵循图3中的步骤330中所描述的过程),变换第二点云中(遵循关于图3中步骤340-350和关于图4所描述的处理),并提取与第二点云和连接分量相对应的点。处理器120可以使用在Z平面识别阶段期间选择的相同基向量来基于新过滤的数据来变换点云。
图20示出了根据本公开的一些实施例的与被标识为盒子顶部的连接分量相对应的一组点。这组提取的点也被称为盒子顶部子云。为了简化对盒子顶部的处理和理解,处理器120可以确定所提取的盒子顶部子簇的旋转角度,并将盒子顶部子簇旋转830该旋转角度,使得盒子顶部的边缘与x轴和y轴对齐。例如,处理器120将盒子顶部子云中的点投影到x轴和y轴上,作为子云围绕其中心的旋转角度的函数。处理器120然后计算作为旋转角度的函数的x和y投影的总和,以生成轮廓。图21是根据本公开的一些实施例的沿着x轴和y轴投影的盒子顶部子云的示例轮廓。处理器120识别盒子顶部投影的总和被最小化的方位角旋转角度。更具体地,所选择的旋转角度使盒顶部的边缘在先前确定的参考帧(例如,基向量的参考帧)的一组轴上的投影的总和最小化。处理器120将盒子顶部子云旋转通过所识别的方位角,使得盒子顶部子云是轴对准的。图22示出了根据本公开的一些实施例的基于图21中的轮廓旋转的轴线对准的盒子顶部。
在旋转了盒子顶部子簇之后,处理器120计算840盒子顶部的宽度轮廓和长度轮廓。对于许多TOF传感器,虽然最靠近传感器的盒子的前缘是尖锐的,并且人类和计算机都很容易识别,但飞行体素可能会模糊位于TOF传感器110下游的盒子的后缘。这导致后缘的位置更加模糊,并且难以从距离数据中识别。处理器120通过将旋转的盒子顶部子云的点投影到水平轴和垂直轴上来生成盒子顶部宽度和长度轮廓。图23A和23B分别示出了根据本公开的一些实施例的示例盒子顶部部宽度和长度轮廓。
处理器120识别850宽度和长度轮廓中的前缘和后缘。例如,处理器120应用一个或多个规则来从轮廓中识别边缘。处理器120可以将线拟合到轮廓中的每一个的内部,并且将前缘定义为轮廓等于线性拟合值的设定百分比(例如,线性拟合值40%)的位置。处理器120可以通过轮廓等于线性拟合值的相同百分比或不同百分比的位置来定义后缘,例如,在25%到85%的范围内的特定值。处理器120可以进一步应用一个或多个规则来确定后缘分数。例如,后缘百分比阈值可能随着盒子的高度而变化。或者,对于两个盒子顶部边缘中较短和较长的一个,百分比阈值可以不同。图23A和23B示出了基于宽度和长度轮廓识别的后缘和前缘的示例。
处理器120基于所确定的前缘和后缘来计算860盒子顶部的宽度和长度。特别地,宽度是宽度投影中的前缘和后缘之间的距离,长度是长度投影中的前缘和后缘之间的距离。图23A和23B分别表示后缘和前缘之间的宽度和长度。
返回图6,传感器系统100(例如,处理器120和显示设备140)可以向用户显示660所确定的盒子尺寸。例如,处理器120可以生成用于在显示设备140上输出的显示,该显示包括盒子的视觉表示以及高度、宽度和长度。例如,显示器可以示出投影到由相机130捕获的图像上的识别的边缘和/或尺寸,或者基于来自TOF传感器110的距离数据创建的图像。在一个实施例中,处理器120生成由所识别的前缘和后缘、所识别的盒子顶部和底部表面、和/或所计算的高度、宽度和长度定义的三维盒子的图像。处理器120还可以计算体积(长度x宽度x高度)并在显示设备140上输出体积。
处理器120可以将三维盒子的图像投影到相机130的二维图像平面上,以生成覆盖图像,例如,覆盖盒子的图像的轮廓。计算出的宽度、长度和高度尺寸也可以沿着边缘或在单独的区域中报告在图形显示中。用户可以查看显示设备140中的图形显示,以定性地确认传感器系统100已经正确识别了盒子并且正确识别了边缘和表面。
图24示出了根据本公开的一些实施例的叠加在基于来自TOF传感器的数据获得的图像上的识别的盒子边缘。图24中的图像可以是由处理器120基于从来自TOF传感器110的距离数据生成的点云生成的图像。图24还包括叠加在点云图像上的盒子边缘的轮廓。
图25示出了根据本公开的一些实施例的叠加在由相机获得的图像上的识别的盒子边缘和确定的框尺寸。在该示例中,图像可以是由IR相机获得的IR图像。图24还包括叠加在IR图像上的盒子边缘的轮廓,并且在显示器的左上角显示计算出的盒子的宽度、长度和高度。图24还显示并集交集(IoU)分数。在一些实施例中,处理器120计算IoU分数,该IoU分数测量盒子顶部和出现在TOF传感器110的视场中心的预定义圆2510之间的重叠。较大的IoU分数与较高精度的尺寸确定结果相关,并且用户可以调整TOF传感器110的视图以获得较高的IoU得分。在一些实施例中,传感器系统100可以设置用于报告盒子尺寸的IoU下限,例如,如果IoU分数大于0.40或另一阈值,则处理器120显示盒子尺寸,并且如果IoU得分低于阈值,则向用户显示移动TOF传感器110的请求。确保用户以足够高的IoU相对于盒子定向TOF传感器110可以减少传感器系统100报告的盒子尺寸中的误差。
在一些实施例中,传感器系统100可以附加地或替代地报告强度指示符,该强度指示符指示由TOF传感器110收集的距离数据中在特定像素处或在一组像素上测量的强度和/或由相机130收集的对应像素或一组像素中测量的强度。在一些情况下,如果在图像帧220中的感兴趣区域中测量的强度太低,则处理器120可能难以找到Z平面、确定盒子顶部尺寸或执行TOF距离数据的其他处理。处理器120可以分析传感器系统的视场的至少一部分的强度,并向用户报告强度。基于报告的强度,用户可以确定是否调整环境,例如,通过改变照明条件,通过改变TOF传感器110相对于盒子或其他感兴趣区域的角度,通过将盒子移动到不同的位置(例如,在不同的Z平面上,进入另一个房间)等,以增加强度。在一些实施例中,如果处理器120确定强度太低(例如,强度低于给定阈值和/或处理器120难以找到Z平面或盒子,例如,所识别的连接分量中没有一个满足用于识别盒子顶部的规则),则处理器120可以向用户输出指令以改变环境,传感器位置或盒子的位置来增加强度。
例如,如果相机130是IR相机,则处理器120可以确定相机视场的至少一部分的IR强度,例如,在相机130的图像帧的中心处或附近。如果相机130是可见光相机,则处理器120可以确定在图像帧的中心处或附近的可见光的强度或亮度。强度测量可以与给定区域中的材料的反射率相关联,例如,盒子材料的反射率。由于用户通常将TOF传感器110指向盒子、Z平面或其他感兴趣区域,并且可以鼓励用户通过IoU将盒子顶部包括在图像帧的中心(如上所述),因此相机130的图像帧的中央通常对应于盒子顶部、盒子的其他部分、Z平面、或其他感兴趣区域。
作为特定示例,相机130捕获具有与图像帧220相对应的区域的图像帧。处理器120可以在由相机130捕获的图像帧中识别图像帧的中心附近的强度,例如,在与TOF传感器110的图像帧220的中心中的像素215a相对应的位置处的强度,或者包括图像帧的中央的一组像素的平均强度。例如,处理器120可以确定与图25中所示的圆圈2510相对应的一组像素的平均强度。
选择示例
以下段落提供了本文公开的实施例的各种示例。
示例1提供一种用于识别Z平面的方法,,该方法包括:接收描述捕获所述距离数据的传感器与所述传感器的环境中的多个表面之间的距离的距离数据,其中所述表面中的至少一个是Z平面;基于所述距离数据生成点云,所述点云在所述传感器的参考帧中;识别表示跨越所述点云的峰值方向的基向量;将所述点云变换为所述基向量的参考帧;和识别所述变换的点云中的Z平面。
示例2提供示例1的方法,其中传感器是包括光源和图像传感器的TOF传感器。
示例3提供示例1的方法,其中所述距离数据被布置在所述传感器的图像帧内的多个像素中。
示例4提供示例3的方法,其中单个像素具有到传感器环境中的多个表面中的一个表面的距离,并且该单个像素具有描述从传感器到表面的方向的相关联的光线方向。
示例5提供示例4的方法,其中生成点云包括将单个像素的光线方向乘以到单个像素的多个表面中的一个表面的距离。
示例6提供示例1的方法,其中所述距离数据被布置为多个像素,所述方法还包括通过针对单个像素基于所述单个像素周围的区域中的像素值来计算平均像素值来滤波所述距离数据。
示例7提供示例1的方法,其中识别基向量包括计算所述点云中的点的表面法线;和基于计算的表面法线提取所述基向量,所述基向量表示所述点云上的表面法线的峰值方向。
示例8提供示例7的方法,其中为点云中的点计算表面法线包括计算点云中的这些点的表面法线的角坐标。
示例9提供示例8的方法,其中提取基向量包括对所述表面法线的角坐标进行装仓;识别每个角度坐标的峰值角度;和基于所识别的峰值角度来识别所述基向量。
示例10提供示例7的方法,其中计算点云中单个点的表面法线包括将平面拟合到该单个点周围的区域中的一组点。
示例11提供示例1的方法,其中所述基向量是第一基向量,所述方法还包括选择与所述第一基向量正交的第二基向量以及与所述第一基向量和所述第二基向量正交的第三基向量,其中所述基向量的参考帧是所述第一基向量、所述第二基向量和所述第三基向量的参考帧。
示例12提供示例11的方法,其中所述第二基向量被选择为所述传感器的指向方向到Z平面的投影,并且所述第三基向量被设置为等于所述第一基向量和所述第二基向量的叉积。
示例13提供示例1的方法,其中识别变换的点云中的Z平面包括生成变换的点云的高度图;生成所述高度图的轮廓表示,所述轮廓表示具有对应于多个Z平面中的每一个的峰值;和识别所述轮廓表示中的Z平面。
示例14提供示例13的方法,其中所识别的Z平面是基本Z平面,该方法还包括将基本Z平面的高度设置为零。
示例15提供示例13的方法,还包括基于确定所述点的高度在与所述识别的Z平面相关联的高度范围内,将所述变换的点云中的点与所述识别的Z平面相关联。
示例16提供一种成像系统,包括:TOF深度传感器,获得描述TOF深度传感器与TOF深度传感器的环境中的多个表面之间的距离的距离数据;和处理器,用于从所述TOF深度传感器接收所述距离数据;基于所述距离数据生成点云,所述点云在所述TOF深度传感器的参考帧中;识别表示跨越所述点云的峰值方向的基向量;将所述点云变换为所述基向量的参考帧;和在变换的点云中识别Z平面。
示例17提供示例16的系统,其中TOF深度传感器包括用于照明TOF深度传感器的环境的光源和用于感测反射光的图像传感器。
示例18提供示例16的系统,其中所述TOF深度传感器具有图像帧,并且所述距离数据被布置在所述图像帧内的多个像素中。
示例19提供示例18的系统,其中单个像素在TOF深度传感器的环境中具有到多个表面中的一个表面的距离,并且该单个像素具有描述从TOF深度传感器到表面的方向的相关联的射线方向。
示例20提供示例19的系统,其中为了生成所述点云,所述处理器将所述单个像素的射线方向乘以到所述单个像素的多个表面中的一个表面的距离。
示例21提供示例16的系统,还包括用于捕获所述TOF深度传感器的环境的图像的相机。
示例22提供示例21的系统,还包括显示屏,所述处理器在所述显示屏上显示由所述相机捕获的图像和识别的Z平面的视觉指示。
示例23提供示例16的系统,还包括用于检测所述TOF深度传感器的环境中的阳光的光传感器,其中所述处理器响应于检测到至少阈值水平的阳光而将滤波器应用于所述距离数据。
示例24提供一种用于确定物理盒子的尺寸的方法,该方法包括:接收描述传感器与所述传感器的环境中的多个表面之间的距离的距离数据,所述表面的至少一部分对应于待测量的盒子;将所述距离数据转换为所述传感器的环境中的表面之一的参考帧;从所述传感器环境中的多个表面中选择对应于盒子顶部的第一表面和盒子放置在其上的表面相对应的第二表面;计算所述第一表面和所述第二表面之间的高度;和基于所选择的与所述盒子顶部相对应的第一表面来计算长度和宽度。
示例25提供示例24的方法,其中距离数据是传感器的参考帧中的点云。
示例26提供示例25的方法,其中将距离数据转换为传感器环境中的一个表面的参考帧包括识别表示跨越所述点云的峰值方向的基向量;和将所述点云变换为所述基向量的参考帧。
示例27提供示例26的方法,其中识别基向量包括计算所述点云中的点的表面法线的角坐标;和基于计算的所述表面法线的角坐标来提取所述基向量,所述基向量表示所述点云上的表面法线的峰值方向。
示例28提供示例24的方法,其中传感器是包括光源和图像传感器的TOF传感器。
示例29提供示例24的方法,其中用作变换所述距离数据的参考帧的所述表面中的一个是Z平面。
示例30提供示例24的方法,其中选择第一表面包括:识别所述变换的距离数据内的多个连接分量,每个连接分量在所述表面中的一个表面的参考帧中沿着Z轴具有各自的高度;和通过将一组规则应用于所述多个连接分量来选择所述多个连接分量中的一个作为所述第一表面。
示例31提供示例30的方法,其中识别所述多个连接分量包括识别所述变换的距离数据的多个Z切片,所述多个Z切片中的每一个具有沿着所述Z轴的相应高度;和在所述多个Z切片中的每个Z切片内识别高度图像素的至少一个连接分量。
示例32提供示例31的方法,其中识别所述多个Z切片包括生成所述距离数据的高度图;生成所述高度图的轮廓表示,所述轮廓表示具有对应于每个Z切片的峰值;和从所述轮廓表示识别所述多个Z切片。
示例33提供示例31的方法,其中选择与盒子放置的表面相对应的第二表面包括在所选择的第一表面的横向范围内选择多个Z切片中的Z切片。
示例34提供示例30的方法,其中应用于所述多个连接分量的规则集合包括移除宽度或长度小于阈值最小宽度或长度的连接分量;从另一个连接分量移除至少阈值距离的连接分量;和移除具有与期望矩形形状偏离至少阈值偏差的封闭凸包多边形的连接分量。
示例35提供示例24的方法,其中基于所选择的第一表面计算长度和宽度包括:提取与所选择的第一表面相对应的变换的距离数据的子集;计算所述子集的长度轮廓和宽度轮廓;在所述宽度轮廓内识别所述盒子的第一前缘和第一后缘;在所述长度轮廓内识别所述盒子的第二前缘和第二后缘;和计算所述第一前缘和所述第二前缘之间的所述盒子宽度,以及计算所述第二前缘和所述第二后缘之间的所述盒子长度。
示例36提供示例24的方法,还包括:确定与所述第一选择的表面相对应的提取的子集的旋转角度,所述确定的角度被选择为最小化所述传感器的环境中的所述表面中的一个表面的参考帧的轴集合上的第一选择的表面的边缘的投影的和;和将与所述第一选择的表面相对应的所提取的子集旋转所述确定的角度。
示例37提供示例24的方法,其中变换的距离数据包括多个像素,并且基于所选择的对应于盒子顶部的第一表面来计算长度和宽度包括,对于所选择的第一表面中的至少像素,通过针对单个像素基于所述单个像素周围的区域中的像素值来计算平均像素值来对所述像素进行滤波;和基于所选择的第一表面中的滤波像素来计算所述长度和宽度。
示例38提供示例24的方法,还包括产生所述盒子的视觉表示,所述视觉表示指示所述盒子的高度、宽度和长度。
示例39提供示例24的方法,还包括基于与所述盒子的顶部相对应的所述第一表面与所述传感器的视场中的圆之间的重叠来计算IoU分数;和生成包括所计算的IoU分数的显示。
示例40提供示例24的方法,还包括从相机接收相机数据,所述相机具有与所述传感器的视场至少部分重叠的相机视场;基于所述相机数据确定所述相机视场的至少一部分的强度;和生成包括所确定的强度的显示。
示例41提供一种成像系统,包括:TOF深度传感器,以获得描述TOF深度传感器与TOF深度传感器的环境中的多个表面之间的距离的距离数据;和处理器,用于从所述TOF深度传感器接收所述距离数据;将所述距离数据转换为所述传感器的环境中的所述表面之一的参考帧;选择与盒子顶部相对应的第一表面和与盒子放置在其上的表面相对应的第二表面;计算所述第一表面和所述第二表面之间的高度;和基于所选择的与所述盒子顶部相对应的第一表面来计算长度和宽度。
示例42提供示例41的系统,其中TOF深度传感器包括用于照明深度传感器的环境的光源和用于感测反射光的图像传感器。
示例43提供示例41的系统,其中所述TOF传感器具有图像帧,并且所述距离数据被布置在所述图像帧内的多个像素中。
示例44提供示例43的系统,其中单个像素与TOF深度传感器的环境中的多个表面中的一个表面具有距离,并且该单个像素具有描述从传感器到TOF深度表面的方向的关联光线方向。
示例45提供示例41的系统,还包括用于捕获所述TOF深度传感器的环境的图像的相机。
示例46提供示例45的系统,还包括显示屏,所述处理器在所述显示屏上显示由所述相机捕获的图像以及所计算的宽度、长度和高度。
示例47提供示例45的系统,还包括显示屏,所述处理器在所述显示屏上显示由所述相机捕获的图像和所选择的第一表面的叠加描绘。
示例48提供示例47的系统,所述处理器进一步在所述显示屏上显示所述选择的第一表面下方的多个盒子边缘。
其他实施说明、变更和应用
应当理解,并非所有的目的或优点都可以根据本文所描述的任何特定实施例来实现。因此,例如,本领域技术人员将认识到,某些实施例可以被配置为以实现或优化本文所教导的一个优点或一组优点的方式操作,而不必实现本文所教导或建议的其他目的或优点。
在一个示例实施例中,图中的任意数量的电路可以在相关联的电子设备的板上实现。该板可以是通用电路板,该通用电路板可以容纳电子设备的内部电子系统的各种组件,并且进一步提供用于其他外围设备的连接器。更具体地,板可以提供电连接,通过该电连接,系统的其他组件可以电通信。任何合适的处理器(包括数字信号处理器、微处理器、支持芯片组等)、计算机可读非瞬态存储元件等都可以基于特定的配置需求、处理需求、计算机设计等适当地耦合到板上。其他组件,如外接存储器、附加传感器、音频/视频显示控制器,并且外围设备可以通过电缆作为插入卡连接到板上,或者集成到板本身中。在各种实施例中,本文所描述的功能可以以仿真形式实现为在一个或多个可配置(例如,可编程)元件内运行的软件或固件,所述一个或更多个可配置元件布置在支持这些功能的结构中。提供仿真的软件或固件可以在包括允许处理器执行这些功能的指令的非暂时性计算机可读存储介质上提供。
还必须注意的是,本文概述的所有规范、尺寸和关系(例如,处理器的数量、逻辑运算等)仅用于示例和教学目的。在不脱离本公开的精神或所附权利要求的范围的情况下,可以显著地改变这样的信息。本规范仅适用于一个非限制性示例,因此,应将其解释为非限制性实例。在前面的描述中,已经参考部件的特定布置描述了示例实施例。在不脱离所附权利要求的范围的情况下,可以对这样的实施例进行各种修改和改变。因此,说明书和附图应被视为说明性的,而不是限制性的。
注意,对于本文提供的众多示例,可以根据两个、三个、四个或更多个组件来描述交互。然而,这样做只是为了清楚和举例说明。应当理解,该系统可以以任何合适的方式进行合并。根据类似的设计替代方案,图中所示的任何组件、模块和元件都可以以各种可能的配置进行组合,所有这些都清楚地在本说明书的广泛范围内。
请注意,在本说明书中,对包括在“一个实施例”、“示例性实施例”,“实施例”和“另一实施例”中的各种特征(例如,元件、结构、模块、组件、步骤、操作、特性等)的引用,等等旨在意味着任何这样的特征被包括在本公开的一个或多个实施例中,但可以或不一定被组合在相同的实施例中。
本领域技术人员可以确定许多其他的改变、替换、变化、改变和修改,并且本公开包括落入所附权利要求范围内的所有这样的改变、替代、变化、修改和修改。注意,上述系统和方法的所有可选特征也可以相对于本文所述的方法或系统来实现,并且示例中的细节可以在一个或多个实施例中的任何地方使用。
为了协助美国专利商标局(USPTO)以及本申请中任何专利的读者解释本申请所附的权利要求,申请人希望注意,申请人:(a)不打算援引《美国法典》第35卷第(f)段。第112条在本协议提交之日存在,除非在特定权利要求中特别使用了“构件”或“步骤”;以及(b)不打算通过说明书中的任何陈述,以未在所附权利要求中反映的任何方式限制本公开。
Claims (48)
1.一种用于识别Z平面的方法,该方法包括:
接收描述捕获所述距离数据的传感器与所述传感器的环境中的多个表面之间的距离的距离数据,其中所述表面中的至少一个是Z平面;
基于所述距离数据生成点云,所述点云在所述传感器的参考帧中;
识别表示跨越所述点云的峰值方向的基向量;
将所述点云变换为所述基向量的参考帧;和
识别所述变换的点云中的Z平面。
2.根据权利要求1所述的方法,其中所述传感器是包括光源和图像传感器的飞行时间(TOF)传感器。
3.根据权利要求1所述的方法,其中所述距离数据被布置在所述传感器的图像帧内的多个像素中。
4.根据权利要求3所述的方法,其中单个像素包括到所述传感器的环境中的所述多个表面中的一个表面的距离,并且所述单个像素具有描述从所述传感器到所述表面的方向的相关联的射线方向。
5.根据权利要求4所述的方法,其中生成所述点云包括将所述单个像素的所述射线方向乘以到所述单个像素的多个表面中的一个表面的距离。
6.根据权利要求1所述的方法,其中所述距离数据被布置为多个像素,所述方法还包括:
通过针对单个像素基于所述单个像素周围的区域中的像素值来计算平均像素值来滤波所述距离数据。
7.根据权利要求1所述的方法,其中识别所述基向量包括:
计算所述点云中的点的表面法线;和
基于计算的表面法线提取所述基向量,所述基向量表示所述点云上的表面法线的峰值方向。
8.根据权利要求7所述的方法,其中计算所述点云中的点的表面法线包括计算所述点云中的点的所述表面法线的角坐标。
9.根据权利要求8所述的方法,其中提取所述基向量包括:
对所述表面法线的角坐标进行装仓;
识别每个角度坐标的峰值角度;和
基于所识别的峰值角度来识别所述基向量。
10.根据权利要求7所述的方法,其中计算所述点云中的单个点的表面法线包括将平面拟合到所述单个点周围的区域中的一组点。
11.根据权利要求1所述的方法,其中所述基向量是第一基向量,所述方法还包括:
选择与所述第一基向量正交的第二基向量以及与所述第一基向量和所述第二基向量正交的第三基向量,其中所述基向量的参考帧是所述第一基向量、所述第二基向量和所述第三基向量的参考帧。
12.根据权利要求11所述的方法,其中所述第二基向量被选择为所述传感器的指向方向到Z平面的投影,并且所述第三基向量被设置为等于所述第一基向量和所述第二基向量的叉积。
13.根据权利要求1所述的方法,其中识别所述变换的点云中的Z平面包括:
生成变换的点云的高度图;
生成所述高度图的轮廓表示,所述轮廓表示具有对应于多个Z平面中的每一个的峰值;和
识别所述轮廓表示中的Z平面。
14.根据权利要求13所述的方法,其中识别的Z平面是基本Z平面,所述方法还包括将所述基本Z平面的高度设置为零。
15.根据权利要求13所述的方法,还包括基于确定所述点的高度在与所述识别的Z平面相关联的高度范围内,将所述变换的点云中的点与所述识别的Z平面相关联。
16.一种成像系统,包括:
飞行时间(TOF)深度传感器,用于获得描述所述TOF深度传感器与所述TOF深度传感器的环境中的多个表面之间的距离的距离数据;和
处理器,用于:
从所述TOF深度传感器接收所述距离数据;
基于所述距离数据生成点云,所述点云在所述TOF深度传感器的参考帧中;
识别表示跨越所述点云的峰值方向的基向量;
将所述点云变换为所述基向量的参考帧;和
在变换的点云中识别Z平面。
17.根据权利要求16所述的系统,其中所述TOF深度传感器包括用于照明所述TOF深度传感器的环境的光源和用于感测反射光的图像传感器。
18.根据权利要求16所述的系统,其中所述TOF深度传感器具有图像帧,并且所述距离数据被布置在所述图像帧内的多个像素中。
19.根据权利要求18所述的系统,其中单个像素包括到所述TOF深度传感器的环境中的所述多个表面中的一个表面的距离,并且所述单个像素具有相关联的射线方向,所述相关联的射线方向描述从所述TOF深度传感器到所述表面的方向。
20.根据权利要求19所述的系统,其中为了生成所述点云,所述处理器将所述单个像素的射线方向乘以到所述单个像素的多个表面中的一个表面的距离。
21.根据权利要求16所述的系统,还包括用于捕获所述TOF深度传感器的环境的图像的相机。
22.根据权利要求21所述的系统,还包括显示屏,所述处理器在所述显示屏上显示由所述相机捕获的图像和识别的Z平面的视觉指示。
23.根据权利要求16所述的系统,还包括用于检测所述TOF深度传感器的环境中的阳光的光传感器,其中所述处理器响应于检测到至少阈值水平的阳光而将滤波器应用于所述距离数据。
24.一种用于确定物理盒子的尺寸的方法,该方法包括:
接收描述传感器与所述传感器的环境中的多个表面之间的距离的距离数据,所述表面的至少一部分对应于待测量的盒子;
将所述距离数据转换为所述传感器的环境中的表面之一的参考帧;
从所述传感器环境中的多个表面中选择对应于盒子顶部的第一表面和盒子放置在其上的表面相对应的第二表面
计算所述第一表面和所述第二表面之间的高度;和
基于所选择的与所述盒子顶部相对应的第一表面来计算长度和宽度。
25.根据权利要求24所述的方法,其中所述距离数据包括所述传感器的参考帧中的点云。
26.根据权利要求25所述的方法,其中将所述距离数据转换为所述传感器的环境中的表面之一的参考帧包括:
识别表示跨越所述点云的峰值方向的基向量;和
将所述点云变换为所述基向量的参考帧。
27.根据权利要求26所述的方法,其中识别所述基向量包括:
计算所述点云中的点的表面法线的角坐标;和
基于计算的所述表面法线的角坐标来提取所述基向量,所述基向量表示所述点云上的表面法线的峰值方向。
28.根据权利要求24所述的方法,其中所述传感器是包括光源和图像传感器的飞行时间(TOF)传感器。
29.根据权利要求24所述的方法,其中用作变换所述距离数据的参考帧的所述表面中的一个是Z平面。
30.根据权利要求24所述的方法,其中选择所述第一表面包括:
识别所述变换的距离数据内的多个连接分量,每个连接分量在所述表面中的一个表面的参考帧中沿着Z轴具有各自的高度;和
通过将一组规则应用于所述多个连接分量来选择所述多个连接分量中的一个作为所述第一表面。
31.根据权利要求30所述的方法,其中识别所述多个连接分量包括:
识别所述变换的距离数据的多个Z切片,所述多个Z切片中的每一个具有沿着所述Z轴的相应高度;和
在所述多个Z切片中的每个Z切片内识别高度图像素的至少一个连接分量。
32.根据权利要求31所述的方法,其中识别所述多个Z切片包括:
生成所述距离数据的高度图;
生成所述高度图的轮廓表示,所述轮廓表示具有对应于每个Z切片的峰值;和
从所述轮廓表示识别所述多个Z切片。
33.根据权利要求31所述的方法,其中选择与所述盒子放置的表面相对应的所述第二表面包括在所选择的第一表面的横向范围内选择所述多个Z切片中的Z切片。
34.根据权利要求30所述的方法,其中应用于所述多个连接分量的规则组包括:
移除宽度或长度小于阈值最小宽度或长度的连接分量;
从另一个连接分量移除至少阈值距离的连接分量;和
移除具有与期望矩形形状偏离至少阈值偏差的封闭凸包多边形的连接分量。
35.根据权利要求24所述的方法,其中基于所选择的第一表面来计算所述长度和所述宽度包括:
提取与所选择的第一表面相对应的变换的距离数据的子集;
计算所述子集的长度轮廓和宽度轮廓;
在所述宽度轮廓内识别所述盒子的第一前缘和第一后缘;
在所述长度轮廓内识别所述盒子的第二前缘和第二后缘;和
计算所述第一前缘和所述第二前缘之间的所述盒子宽度,以及计算所述第二前缘和所述第二后缘之间的所述盒子长度。
36.根据权利要求24所述的方法,进一步包括:
确定与所述第一选择的表面相对应的提取的子集的旋转角度,所述确定的角度被选择为最小化所述传感器的环境中的所述表面中的一个表面的参考帧的轴集合上的第一选择的表面的边缘的投影的和;和
将与所述第一选择的表面相对应的所提取的子集旋转所述确定的角度。
37.根据权利要求24所述的方法,其中所述变换的距离数据包括多个像素,并且基于对应于所述盒子的顶部的所选择的第一表面来计算所述长度和所述宽度包括:
对于所选择的第一表面中的至少像素,通过针对单个像素基于所述单个像素周围的区域中的像素值来计算平均像素值来对所述像素进行滤波;和
基于所选择的第一表面中的滤波像素来计算所述长度和宽度。
38.根据权利要求24所述的方法,进一步包括产生所述盒子的视觉表示,所述视觉表示指示所述盒子的高度、宽度和长度。
39.根据权利要求24所述的方法,进一步包括:
基于与所述盒子的顶部相对应的所述第一表面与所述传感器的视场中的圆之间的重叠来计算并集交集(IoU)分数;和
生成包括所计算的IoU分数的显示。
40.根据权利要求24所述的方法,进一步包括:
从相机接收相机数据,所述相机具有与所述传感器的视场至少部分重叠的相机视场;
基于所述相机数据确定所述相机视场的至少一部分的强度;和
生成包括所确定的强度的显示。
41.一种成像系统,包括:
飞行时间(TOF)深度传感器,用于获得描述所述TOF深度传感器与所述TOF深度传感器的环境中的多个表面之间的距离的距离数据;和
处理器,用于:
从所述TOF深度传感器接收所述距离数据;
将所述距离数据转换为所述传感器的环境中的所述表面之一的参考帧;
选择与盒子顶部相对应的第一表面和与盒子放置在其上的表面相对应的第二表面;
计算所述第一表面和所述第二表面之间的高度;和
基于所选择的与所述盒子顶部相对应的第一表面来计算长度和宽度。
42.根据权利要求41所述的系统,其中所述TOF深度传感器包括用于照明所述深度传感器的环境的光源和用于感测反射光的图像传感器。
43.根据权利要求41所述的系统,其中所述TOF传感器具有图像帧,并且所述距离数据被布置在所述图像帧内的多个像素中。
44.根据权利要求43所述的系统,其中单个像素包括到所述TOF深度传感器的环境中的所述多个表面中的一个表面的距离,并且所述单个像素具有描述从所述传感器到TOF深度表面的方向的相关联的射线方向。
45.根据权利要求41所述的系统,进一步包括用于捕获所述TOF深度传感器的环境的图像的相机。
46.根据权利要求45所述的系统,还包括显示屏,所述处理器在所述显示屏上显示由所述相机捕获的图像以及所计算的宽度、长度和高度。
47.根据权利要求45所述的系统,还包括显示屏,所述处理器在所述显示屏上显示由所述相机捕获的图像和所选择的第一表面的叠加描绘。
48.根据权利要求47所述的系统,所述处理器进一步在所述显示屏上显示所述选择的第一表面下方的多个盒子边缘。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063081775P | 2020-09-22 | 2020-09-22 | |
US63/081,775 | 2020-09-22 | ||
US63/081,742 | 2020-09-22 | ||
PCT/US2021/051238 WO2022066611A1 (en) | 2020-09-22 | 2021-09-21 | Z-plane identification and box dimensioning using three-dimensional time of flight imaging |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116547559A true CN116547559A (zh) | 2023-08-04 |
Family
ID=87445723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180077936.2A Pending CN116547559A (zh) | 2020-09-22 | 2021-09-21 | 使用三维飞行时间成像的z平面识别和盒子尺寸确定 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116547559A (zh) |
-
2021
- 2021-09-21 CN CN202180077936.2A patent/CN116547559A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11652965B2 (en) | Method of and system for projecting digital information on a real object in a real environment | |
US9117281B2 (en) | Surface segmentation from RGB and depth images | |
US10430961B2 (en) | Using satellite imagery to enhance a 3D surface model of a real world cityscape | |
US20200043186A1 (en) | Apparatus, method, and system for alignment of 3d datasets | |
Brunner et al. | Building height retrieval from VHR SAR imagery based on an iterative simulation and matching technique | |
US9811714B2 (en) | Building datum extraction from laser scanning data | |
US7616817B2 (en) | Three dimensional shape correlator | |
JP6621836B2 (ja) | 光パターンの強度変動を利用した体積内の物体の深さマッピング | |
JP5343042B2 (ja) | 点群データ処理装置および点群データ処理プログラム | |
JP5465128B2 (ja) | 点群位置データ処理装置、点群位置データ処理システム、点群位置データ処理方法、および点群位置データ処理プログラム | |
WO2011070927A1 (ja) | 点群データ処理装置、点群データ処理方法、および点群データ処理プログラム | |
EP3007129A1 (en) | Modeling device, three-dimensional model generation device, modeling method, program, and layout simulator | |
US10127709B2 (en) | Modeling device, three-dimensional model generating device, modeling method, and program | |
CN107025663A (zh) | 视觉系统中用于3d点云匹配的杂波评分系统及方法 | |
TWI696906B (zh) | 處理地板之方法 | |
WO2015049853A1 (ja) | 寸法計測装置、寸法計測方法、寸法計測システム、プログラム | |
WO2013061976A1 (ja) | 形状検査方法およびその装置 | |
US9171393B2 (en) | Three-dimensional texture reprojection | |
US10462450B2 (en) | Combining two-dimensional images with depth data to detect junctions or edges | |
CN107765257A (zh) | 一种基于反射强度辅助外部校准的激光探测与测量方法 | |
EP3989169A1 (en) | Hybrid photogrammetry | |
JP2015206654A (ja) | 情報処理装置、情報処理方法、プログラム | |
CN116547559A (zh) | 使用三维飞行时间成像的z平面识别和盒子尺寸确定 | |
US20230367017A1 (en) | Z-plane identification and box dimensioning using three-dimensional time-of-flight imaging | |
Thiele et al. | Building reconstruction from multi-aspect InSAR 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 |