多模态、多技术载具信号检测的制作方法

文档序号:31701501发布日期:2022-10-01 08:29阅读:22来源:国知局
多模态、多技术载具信号检测
1.相关申请的交叉引用本技术要求于2020年2月27日提交的题为“multi-modal, multi-technique vehicle signal detection”的美国专利申请序列号16/803,829以及于2020年2月28日提交的题为“multi-modal, multi-technique vehicle signal detection”的美国专利申请序列号16/804,667的利益和优先权,其全部内容通过引用并入于此。
技术领域
2.本公开一般涉及在来自安装在载具上的一个或多个相机的图像中检测载具信号。


背景技术:

3.一些载具可以使用相机和传感器(例如光检测与测距(lidar)和雷达)来感测它们所驾驶的环境。相机可以捕获环境中对象的图像。lidar和雷达传感器可以检测环境中对象的深度。
4.一些载具是自主载具(av),其在无人监督的情况下在其环境中驾驶。这些av可以包括在来自相机的图像内检测载具的信号灯的系统。在这些系统中,针对信号灯,对从相机获得的整个图像进行搜索。这种搜索计算量大且昂贵,对于以公路速度行进的载具而言,这使得搜索很慢且非常耗时。
附图说明
5.为了提供对本公开及其特征和优点的更完整理解,参考结合附图进行的以下描述,其中相同的附图标记表示相同的部分,其中:图1是示出根据本公开的各种实现的多模态载具信号检测器的框图;图2是示出根据本公开的各种实现的多技术载具信号检测器的框图;图3是示出根据本公开的各种实现的具有多模态和/或多技术载具信号检测的自主载具的功能框图;图4是示出根据本公开的各种实现的与自主载具相关联的自主驾驶系统(ads)的功能框图;图5示出了根据本公开的各种实现的用于多模态和/或多技术载具信号检测的工作流程;图6示出了表示为三维框的载具和载具的灯的映射;图7示出了其中在独立图像中捕获三维对象的左侧和三维对象的右侧的情况;图8示出了根据本公开的各种实现的来自多个载具信号检测器的检测结果的解释;图9示出了根据本公开的各种实现的用于多模态对象投影的方法;图10示出了根据本公开的各种实现的用于多技术载具信号检测的方法;以及图11示出了在本公开的各种实现中使用的计算系统的组件。
具体实施方式
6.介绍安装在载具主体上的深度传感器和/或相机可以检测载具周围环境中的对象的位置。对象追踪器可以将对象表示为多边形或框,所述对象追踪器基于来自深度传感器和/或相机的信息来执行对象检测和追踪。对象追踪器也可以将对象标识为载具。对象追踪器可以确定并提供与对象的位置、对象的取向、和对象的尺寸(例如,表示为三维框)相关的信息。该信息可由对象追踪器在对象追踪器的坐标系中提供。检测到的对象位置可用于标识包括对象的来自相机的图像的子部分。因此,对对象上的载具信号的搜索可以限于图像的子部分。图像的子部分在本文被称为感兴趣区域。通过将搜索限制于感兴趣区域,针对载具信号的搜索可以更高效。此外,当利用来自对象追踪器的信息执行时,针对载具信号的搜索可以更稳健,因为存在更高程度的所标识的载具信号确实是载具上的信号而不是其他类型的对象(例如路灯和交通灯)上的信号的确定性。通过将搜索集中在载具的前面和后面或载具侧面的外部上,可以使搜索更高效。在一些情况下,搜索可以利用来自对象追踪器的信息和关于载具信号可能位于何处的信息来优化在来自相机的图像中的针对载具信号的搜索。
7.在本公开的一些实施例中,系统保持将由相机捕获的图像的像素与对象追踪器的坐标系相关的信息。该信息可以表示为几何矩阵变换,该几何矩阵变换可以将对象追踪器的坐标系中的信息变换到相机的坐标系。具体地,几何矩阵变换可以将对象追踪器的坐标系中的信息变换为由相机捕获的图像的像素。系统从对象追踪器接收载具在相机周围环境中的三维坐标。基于例如对象的三维坐标之类的信息,系统的对象追踪器可以将载具表示为三维框。通过几何矩阵变换,系统可以将框的三维坐标投影到由相机捕获的二维图像上。在一些情况下,系统可以将三维框的面(例如,载具侧)投影到由相机捕获的二维图像上。然后,系统可以基于投影和可选地基于来自对象追踪器的其他信息,在由相机捕获的图像中确定用于载具的感兴趣区域(roi)。然后,系统可以在roi内搜索载具灯。
8.在其中框具有不相等面(与立方体的相等面不同)的实现中,系统的对象追踪器可以保持载具的前面与后面的较小长度和载具侧面的较长长度的感觉。因此,系统利用来自对象追踪器的信息,可以执行更高效和更稳健的针对光的搜索。具有用于载具的框表示并且标识搜索光的感兴趣区域意味着不是载具信号灯的其他光源(例如,路灯、交通灯、载具信号灯的反射等)可以被排除。系统可以有效减少由非载具信号灯的其他光源触发的假阳性。
9.此外,如果针对载具信号只搜索一个图像,则可能会出现问题。例如,如果对象的一部分被另一个对象暂时遮挡,则来自相机的图像将不包括在对象的被遮挡部分内的光。类似地,如果对象的一部分不在相机的视场内,则来自相机的图像将不包括相机视场外的任何光。在不存在任何类型的遮挡问题的情况下,由于给定相机的曝光设置,可能会出现其他问题。载具信号可能从具有固定曝光的一个相机是可见的,但同一载具信号可能从具有自动曝光的另一相机是不可检测的,反之亦然。
10.在一些实施例中,本公开的一个实现中的系统包括多个相机,其从不同位置捕获对象的二维图像,并在图像内检测对象的一个或多个光。因此,系统可以在来自一个相机的图像中检测对象的光,即使该光在来自另一相机的图像中被遮挡或不存在。
11.此外,在一种情况下,相机可能捕获对象的仅左侧灯的图像,而另一个相机可能捕
获对象的仅右侧灯的图像。在这种情况下,融合两个图像的信息可以提供附加信息,该附加信息不能单独从仅一个图像中得到。例如,系统可以在语义上将仅左侧灯的图像或仅右侧灯的图像解释为指示转向信号开启或危险灯开启的可能性。通过融合两个图像的信息,系统可以在语义上确定两个灯都开启,并且因此,危险灯开启而转向信号关闭。因此,系统可以基于更清楚的语义含义来更准确地控制自主载具。
12.在一些实施例中,本公开的一个实现中的系统包括具有不同曝光设置的多个相机,其捕获对象的二维图像。基于来自多个相机的图像,系统可以在图像内检测对象的一个或多个光。因此,系统可以在来自一个相机的图像中检测到对象的光,即使该光在来自另一个相机的图像中是不可检测的。
13.在一些实现中,用于检测载具灯的不同技术可以可能地由相同的或由不同的相机应用于一个或多个图像。对来自不同技术的载具信号检测结果(例如,语义含义)的解释可以提高稳健性,并且比涉及单一技术的系统更准确。
14.选择特征的概述图1是示出根据实现的多模态载具信号检测器的框图。图1的系统包括一个或多个图像传感器110、一个或多个深度传感器120、追踪器130、可选的一个或多个其他传感器135、多模态载具信号检测器140、对象投影仪150和载具信号检测器160。多模态载具信号检测器140可以包括在载具中,例如关于图3讨论的av。
15.一个或多个图像传感器110可以包括安装在载具上的一个或多个相机。一个或多个图像传感器110捕获载具驾驶通过的环境的二维图像。一个或多个图像传感器110向多模态载具信号检测器140输出二维图像中的一个或多个。
16.一个或多个深度传感器120是或包括安装在载具上的一个或多个lidar传感器和/或一个或多个雷达传感器。一个或多个深度传感器120确定一个或多个深度传感器120与载具驾驶通过的环境中的对象之间的距离。一个或多个深度传感器120向追踪器130输出指示从一个或多个深度传感器120到环境中对象的位置的深度的深度图(depth map)。因此,追踪器130可以产生环境中对象的三维坐标。
17.可选的一个或多个其他传感器135可以包括罗盘、速度计、全球定位系统(gps)传感器、加速度计和/或任何其他传感器。可选的其他传感器135向追踪器130输出信息。也就是说,罗盘可以输出载具面对的方向(例如,航向)。速度计可以输出载具的速度。因此,罗盘和速度计可以共同输出速度。gps传感器可以输出载具的当前位置。加速度计可以输出载具的加速度。可选的一个或多个其他传感器135还可以包括在载具间通信中使用的传感器。
18.追踪器130从一个或多个深度传感器120接收深度图。追踪器130还可以从可选的一个或多个其他传感器135接收信息(例如,载具的航向、速率、速度、位置或加速度)。在一些情况下,追踪器130可以接收由一个或多个图像传感器110捕获的图像。追踪器130可以输出与环境中的一个或多个对象相关联的位置信息、取向信息和尺寸信息。追踪器130还可以输出对象的分类,例如对象是载具或特定类型的载具的标识。追踪器130可以为环境中的每个对象分配唯一的标识符(例如,号码)。当载具行进通过环境时,追踪器130可以追踪每个对象随时间的距离,并且如果需要,可以考虑载具的速度或加速度。追踪器130可以确定环境中的对象的位置、速度和加速度。追踪器130可以形成环境中的对象的多边形。追踪器130可以向多模态载具信号检测器140输出被追踪的对象,如由例如它们的唯一标识符、位置、
多边形、速度和/或加速度所表示的。在一些实现中,追踪器130基于信号处理技术来检测对象。在一些实现中,追踪器130可以基于人工智能来检测对象,例如,通过将深度信息和/或图像提供给卷积神经网络(“convnets”),例如googletensorflow。
19.在其中对象是载具(例如,汽车或卡车)的示例中,追踪器130可以基于载具的挡风玻璃、发动机罩、前面罩和/或前保险杠来表示框的前面。追踪器130可以基于载具的后挡风玻璃、行李箱/后挡板、扰流板(在适用的情况下)和/或后保险杠来表示框的后面。追踪器130可以基于载具的窗户、门、侧板和/或轮胎来表示框的侧面。追踪器130可以向对象投影仪150指示将三维框与载具的特定面相关的信息。在一些实现中,追踪器130基于前面罩的三维坐标来定位框的前面,并且基于后挡板的三维坐标来定位框的后面。前面罩和后挡板比例如挡风玻璃和后挡风玻璃更紧密地接近载具灯的位置,其可能向载具灯的位置水平偏移或以其他方式倾斜。类似地,在一些实现中,追踪器130基于载具侧板的三维坐标来定位框的侧面。
20.多模态载具信号检测器140的对象投影仪150接收来自一个或多个图像传感器110的一个或多个图像和来自追踪器130的被追踪对象。在一些实现中,对象投影仪150还接收由一个或多个图像传感器110捕获了二维图像的时间戳。从追踪器130提供给对象投影仪150的信息可以包括与环境中的一个或多个对象(例如,载具)相关联的信息,每个对象表示为三维框。对象投影仪150可以应用变换(例如,几何矩阵变换)以将三维框投影到二维图像上。
21.因此,对象投影仪150可以确定由一个或多个图像传感器110捕获的二维图像内的三维框的二维视图。在一些情况下,对象投影仪150可以确定由一个或多个图像传感器110捕获所捕获的二维图像内的三维框的侧面的二维视图。此外,因为对象投影仪150投影多个对象,所以对象投影仪150还可以通过遮挡推理来确定由于对象中的第二个而导致的对象中的第一个的部分或整体的遮挡。
22.在一些实现中,对象投影仪150可以基于一个或多个图像传感器110的视场来校正三维框的二维视图。考虑到一个或多个图像传感器110的透镜中的缺陷(例如像差),可以执行该校正。
23.因此,基于投影,对象投影仪150在来自一个或多个图像传感器110的图像中确定roi。对象投影仪150可以基于三维框的二维视图来确定roi。因此,roi表示对象投影仪150预期对象在图像中的位置。对象投影仪150输出roi作为输出。在一些实现中,对象投影仪150还可以输出包括roi的图像的时间戳。
24.载具信号检测器160然后高效地在roi内搜索对象的光。
25.图2是示出根据实现的多技术载具信号检测器240的框图。图2的系统包括一个或多个图像传感器210、一个或多个深度传感器220、追踪器230、可选的一个或多个其他传感器235、多技术载具信号检测器240、一个或多个载具信号检测器、以及解释模块275。一个或多个载具信号检测器可以包括第一载具信号检测器245、可选的第二载具信号检测器255、直至可选的第n载具信号检测器265。优选地,多技术载具信号检测器240包括两个或更多个载具信号检测器。
26.一个或多个图像传感器210、一个或多个深度传感器220、追踪器230以及可选的一个或多个其他传感器235在结构和功能上分别与一个或多个图像传感器110、一个或多个深
度传感器120、追踪器130以及可选的一个或多个其他传感器135相似或相同。因此,出于本概述的目的,不提供对一个或多个图像传感器210、一个或多个深度传感器220、追踪器230以及可选的一个或多个其他传感器235的进一步描述。
27.一个或多个载具信号检测器从图像传感器210接收二维图像,从追踪器230接收被追踪对象,并且可选地,从可选的一个或多个传感器235接收信息。在一些实现中,一个或多个载具信号检测器还接收由一个或多个图像传感器210捕获了二维图像的时间戳。
28.一个或多个载具信号检测器可以是一个信号检测器(例如第一载具信号检测器245),并且在来自所有一个或多个图像传感器210的图像中检测信号。替代地,一个或多个载具信号检测器可以包括n个载具信号检测器,其中n个载具信号检测器之一在来自n个图像传感器之一的图像中检测信号。
29.在其中存在多个载具信号检测器的情况下,载具信号检测器可以接收相同的输入,但可以实现涉及几何和/或语义确定的不同技术。载具信号检测器可以单独接收不同的输入,但实现涉及几何和/或语义确定的相同或类似技术。
30.一个或多个载具信号检测器在接收到的(一个或多个)二维图像内搜索光。搜索可以基于例如图像中的光的最小边界框、图像中的光的颜色、以及图像中的光的像素的平均强度。
31.在一个或多个载具信号检测器检测到光之后,一个或多个载具信号检测器基于光,做出几何或语义确定。在几何确定的示例中,一个或多个载具信号检测器确定光在三维框上的位置、光的颜色、光的形状和光的尺寸。在语义确定的示例中,一个或多个载具信号检测器确定光的含义,例如“前灯开启”。
32.一个或多个载具信号检测器向解释模块275输出所确定的几何(例如,位置、颜色、形状、尺寸)或语义(例如,前灯开启)信息。在一些实现中,一个或多个载具信号检测器还输出对象标识符和/或表示对象并包括光的表示的三维框或立方体。
33.解释模块275从一个或多个载具信号检测器接收并融合所确定的信息,并对信号执行(最终)语义确定。解释模块275输出该语义确定作为(最终)检测结果。包括多技术载具信号检测器的载具可以基于该语义含义来控制。
34.根据一些实施例,解释模块275可以融合来自多个载具信号检测器的几何或语义信息,所述多个载具信号检测器对来自多个相机的不同图像进行操作。在一些情况下,解释模块275可以基于对象标识符和/或接收到的三维框或立方体来执行这种融合。因此,即使在来自一个相机的图像中,光被部分遮挡或不存在,系统也可以执行推理以推断语义检测结果。
35.根据一些实施例,解释模块275可以基于由在同一图像上应用不同技术的多个载具信号检测器产生的输出来输出(最终)语义检测结果。因此,即使一种技术无法检测到载具信号灯,另一种载具信号检测器也可以检测到载具信号灯。在一些情况下,来自不同技术的多个结果被融合,例如在投票方案中,以增加多技术载具信号检测器240的稳健性。
36.在一些实现中,图1的多模态载具信号检测器140可以与图2的多技术载具信号检测器240组合。例如,图1的多模态载具信号检测器140可以用作图2的多技术载具信号检测器240内的载具信号检测器。
37.自主载具
图3示出了根据各种实现的功能框图,其示出了具有多模态和/或多技术载具信号检测的av。
38.如图3所示,自主载具10通常包括底盘12、主体14、前轮16和后轮18。主体14布置在底盘12上,并且包围自主载具10的组件。主体14和底盘12可以共同形成框架。前轮16和后轮18在主体14的相应拐角附近旋转地耦合到底盘12。
39.在各种实现中,系统300和/或其组件被并入到自主载具10中。例如,自主载具10是被控制为在无人类干预的情况下将乘客从一个位置载送到另一个位置的载具。自主载具10在图3中被描绘为客车;也可以使用任何其他载具,包括摩托车、卡车、运动型多功能车(suv)、休旅车(rv)、船舶、飞机等。
40.在一个示例中,自主载具10实现自动化驾驶水平的美国汽车工程师学会(sae)“j3016”标准分类下的四级或五级自动化系统。使用该术语,四级系统指示“高度自动化”,是指一种驾驶模式,其中自动驾驶系统执行动态驾驶任务的各方面,即使人类驾驶员没有适当地响应于干预的请求。五级系统指示“完全自动化”,是指一种其中自动驾驶系统在由人类驾驶员管理的极端道路和环境条件下执行动态驾驶任务的各方面的驾驶模式。实现不限于自动化类别的任何分类或标准。此外,根据本公开的系统可以与任何自主或其他载具结合使用,所述任何自主或其他载具利用导航系统和/或其他系统来提供路线引导和/或路线实现。
41.如所示,自主载具10通常包括推进系统20、传动系统22、转向系统24、制动系统26、传感器系统28、致动器系统30、数据存储设备32、至少一个控制器34和通信系统36。在各种实现中,推进系统20可以包括内燃机、例如牵引马达的电机、和/或燃料电池推进系统。传动系统22根据可选择的速度比将动力从推进系统20传送到前轮16和后轮18。根据各种实现,传动系统22可以包括步进比自动变速器、无级变速器、或其他适当的变速器。
42.制动系统26向前轮16和/或后轮18提供制动力矩。在各种实施例中,制动系统26可以包括摩擦制动、线控制动、例如电机的再生制动系统、和/或其他适当的制动系统。
43.转向系统24影响前轮16和/或后轮18的位置。虽然被描绘为包括方向盘25,但是在本公开的一些实现中,转向系统24可以不包括方向盘。
44.传感器系统28包括感测自主载具10的外部环境和/或内部环境的可观察条件的一个或多个感测设备40a-40n。感测设备40a-40n可以包括但不限于雷达、lidar、gps传感器、光学相机、热相机、超声传感器、速度计、罗盘、加速度计和/或其他传感器。致动器系统30包括一个或多个致动器设备42a-42n,其控制一个或多个载具特征,例如但不限于推进系统20、传动系统22、转向系统24和制动系统26。在各种实施例中,自主载具10还可以包括图3中未示出的内部和/或外部载具特征,例如各种门、行李箱和舱室特征,例如空调、音乐播放器、照明、触摸屏显示组件(例如结合导航系统使用的那些组件)等。
45.数据存储设备32存储控制av 10的数据。在各种实施例中,数据存储设备32存储可导航环境的定义地图。在各种实施例中,定义地图由远程系统预定义并从远程系统获得。例如,定义地图可以由远程系统组装并传送到自主载具10(无线地和/或以有线方式)并存储在数据存储设备32中。路线信息也可以存储在数据存储设备32中——即,一起定义了载具从开始位置(例如,载具的当前位置)行进到目标位置可以采取的路线的一组路段(在地理上与一个或多个定义地图相关联)。此外,在各种实现中,数据存储设备32存储载具信号检
测软件38,该软件当由一个或多个处理器执行时,实现本文描述的方法。如将理解的,数据存储设备32可以是控制器34的一部分、与控制器34分离、或者控制器34的一部分和分离系统的一部分。
46.控制器34包括处理器44和计算机可读存储设备或介质46。处理器44可以是任何定制的或市场上可用的处理器、中央处理单元(cpu)、图形处理单元(gpu)、与控制器34相关联的若干处理器中的辅助处理器、基于半导体的微处理器(以微芯片或芯片组的形式)、其任何组合、或通常用于执行指令的任何设备。处理器44可以包括一个或多个处理器44来协作和执行指令。计算机可读存储设备或介质46可以包括例如只读存储器(rom)、随机存取存储器(ram)和保活存储器(kam)中的易失性和非易失性存储。kam是持久或非易失性存储器,其可以在处理器44断电时存储各种操作变量。计算机可读存储设备或介质46可以使用多种已知的存储设备中的任何一种来实现,例如prom(可编程只读存储器)、eprom(电prom)、eeprom(电可擦除prom)、闪速存储器、或由控制器34在控制av 10时使用的用于存储数据(其中一些表示可执行指令)的任何其他电、磁、光、电阻或组合存储设备。
47.指令可以编码/包括一个或多个单独的程序,这些程序包括用于实现逻辑功能的有序列表。当由处理器44执行时,这些指令接收并处理来自传感器系统28的信号,执行用于控制av 10的组件的逻辑、计算、方法和/或算法,并产生控制信号,所述控制信号被发送到致动器系统30以基于这些逻辑、计算、方法和/或算法来控制av 10的组件。尽管图3示出了控制器34,但是av 10的实现可以包括任何数量的控制器34,这些控制器34通过任何合适的通信介质或通信介质的组合进行通信,并且协作以处理传感器信号、执行逻辑、计算、方法和/或算法,并且产生控制信号以控制av 10的特征。在一个实现中,如下文详细讨论的,控制器34可以执行多模态和/或多技术载具信号检测。
48.通信系统36向和从其他实体48(例如但不限于其他载具(“v2v”通信)、基础设施(“v2i”通信)、远程运输系统和/或用户设备)无线地传送信息。在一个示例中,通信系统36是经由使用ieee(电气和电子工程师协会)802.11标准的无线局域网(wlan)或通过使用蜂窝数据通信进行通信的无线通信系统。附加的或替代的通信方法(例如专用短程通信(dsrc)信道)也在本公开的范围内。dsrc信道是指供汽车使用的单向或双向短程至中程无线通信信道以及对应的一组协议和标准。
49.载具信号检测软件38包括用于执行多模态和/或多技术载具信号检测的指令,如前面图1和图2所示。
50.控制器34还包括人工智能模块50,以执行特征检测/分类、障碍物减轻、路线穿越、映射、传感器集成、地面实况确定等。人工智能模块50可以实现例如决策树、概率分类器、朴素贝叶斯分类器、支持向量机、深度学习、神经网络、卷积神经网络、递归神经网络、随机森林、遗传算法和/或强化学习之类的技术。
51.自主驾驶系统根据各种实现,控制器34将关于图3讨论的四级或五级自动化系统实现为如图4所示的自主驾驶系统(ads)70。
52.如图4所示,控制器34的软件和/或硬件组件(例如,处理器44和计算机可读存储设备或介质46)提供ads 70。
53.自主驾驶系统70可以包括载具信号检测系统74、定位系统76、引导系统78和载具
控制系统80。在各种实现中,系统可以被组织成任何数量的系统(例如,组合或进一步划分),因为本公开不限于本示例。
54.如图4所示,传感器系统28可以包括相机424、深度传感器426和任何其他传感器,例如速度计和gps传感器。
55.在本公开及其所附权利要求中,术语“相机”应当被认为覆盖了许多替代方案,例如单个相机或多个相机。单个数字相机可以具有一个图像传感器或多个图像传感器。多个相机可以没有透镜、具有单个透镜或多个透镜。在一些实现中,带有多个透镜的单个相机在相同(或相似)高度处具有360
°
视角(或接近360
°
视角),在av 10周围没有“盲点”。
56.多个相机可以具有多个透镜和/或多个图像传感器。在一些情况下,多个相机可以共享单个透镜和/或单个图像传感器。多个图像传感器可以具有不同的曝光设置。多个相机可以具有不同的视场。多个图像传感器可以具有不同的分辨率。多个图像传感器可以检测不同波长的光。当然,多个相机也可以没有透镜。在一些实现中,多个相机在相同(或相似)高度处具有360
°
视角(或接近360
°
视角),在av 10周围没有“盲点”。
57.类似地,术语“深度传感器”应被认为涵盖许多替代方案,例如一个深度传感器、多个协作的深度传感器、或多个独立的深度传感器。
58.光通过相机424进入,并且相机424的图像传感器将光转换成数字二维图像的信息。相机424重复捕获其周围环境的二维图像。在许多实现中,相机424还记录由图像传感器捕获了二维图像的时间戳。
59.深度传感器426可以是雷达传感器、lidar传感器、飞行时间传感器、或用于确定到av 10周围环境中的对象的距离的其他传感器。在一些情况下,深度传感器426可以用立体相机来实现。
60.在利用lidar传感器实现深度传感器426的示例中,lidar传感器向av 10周围环境中的对象(例如,载具、交通灯)的表面发射激光光的快速脉冲。lidar传感器测量激光从lidar传感器行进到对象、从对象表面反射并返回到lidar传感器的时间量。因为光以恒定的速度移动,所以lidar传感器可以计算对象表面和lidar传感器之间的距离。lidar传感器可以在av 10周围提供激光光的360
°
覆盖。
61.系统使用深度传感器426来获得对象的几何形状和位置的精细细节。载具信号检测系统74(特别是如下所述的追踪器427)可以基于这些细节来确定对象的背部、侧面和顶部在哪里。
62.载具信号检测系统74可以包括追踪器427、与追踪器427协作、或与追踪器427对接,所述追踪器427可以以与图1的追踪器130和图2的追踪器230相同或相似的方式实现。追踪器427通过为对象分配标识(例如,唯一的号码)来追踪该对象。在一个实现中,当对象出现在来自相机424的连续帧中时,追踪器427开始追踪该对象。被追踪的对象可以是任何现实世界的对象。出于本公开的目的,假设对象是具有光(其具有标准含义)的对象(例如交通灯或另一载具)。追踪器427可以将被追踪对象分类为载具或者不是载具。追踪器427可以将被追踪对象分类为特定类型的载具。
63.追踪器427使用深度传感器426和相机424来确定被追踪对象相对于自主载具10的位置。此外,追踪器427可以使用深度传感器426和相机424来确定位置、速度和加速度的变化。因此,载具信号检测系统74可以基于由追踪器427确定的位置、速度和加速度的变化来
确定自主载具10的环境的对象和特征的存在、位置、分类和/或路径。追踪器427可以形成被追踪对象的多边形或框。
64.载具信号检测系统74使用图1和图2所示的机构来在来自传感器系统28的图像内检测对象的光信号。载具信号检测系统74还可以分析检测到的光信号的特性,例如光信号是刹车灯、转向灯、倒车灯、应急灯还是校车灯。也就是说,载具信号检测系统74可以确定另一载具的信号状态,例如另一载具是否正在制动、是否使其危险灯开启、是否使其转向信号开启等等。
65.定位系统76处理来自传感器系统28的传感器数据以及其他数据,以确定位置(例如,相对于地图的局部位置、相对于道路车道的确切位置、载具航向等)和(图3的)自主载具10相对于环境的速度。
66.引导系统78处理来自传感器系统28的传感器数据以及其他数据,以确定(图3的)自主载具10要遵循的到达目的地的路径。
67.载具控制系统80例如根据由引导系统78确定的路径来产生用于控制(图3的)自主载具10的控制信号。
68.因此,载具信号检测系统74可以提供更高效且计算强度更低的方法来寻找载具信号。在一些情况下,载具信号检测系统74可以提供更稳健的方法来寻找载具信号。此外,由载具信号检测系统74的信号状态确定可以改进对靠近av 10的其他载具的追踪,从而改进由载具控制系统80对av 10的控制。
69.图1、2、5-10中示出了载具信号检测系统74的示例性实现。
70.载具信号检测系统架构图5示出了根据本公开的一个实现的用于多模态和/或多技术载具信号检测的工作流程。该工作流程包括变换510、追踪器520、传感器530、对象投影仪540、光检测器550和/或语义分类器560、以及载具信号(vs)融合模块570。
71.对象投影利用将追踪器520的坐标系与相机(具体地,由相机捕获的图像的像素)的坐标系相关的信息。通常,追踪器520的坐标系之间的物理或几何关系相对于相机的坐标系是固定的(因为相机的视场是已知的并且固定在追踪器520的坐标系内)。因此,变换510可以是预定的,并且可以使用一个或多个几何矩阵变换来编码该关系,使得来自追踪器520的坐标可以被变换成由相机捕获的二维图像中的像素位置。
72.追踪器520与前面描述的追踪器427(如图4所示)相同或相似。
73.传感器530通常对应于传感器系统28,并包括相机424和深度传感器426(如图4所示)。
74.对象投影仪540接收变换510、来自追踪器520的对象的三维坐标、以及来自传感器530的图像(以及可选地,时间戳)。对象投影仪540将表示对象的三维框或表示对象的侧面投影到由相机捕获的二维图像上。投影可以从由相机捕获的图像产生三维框或侧面的二维视图。基于二维视图,可以获得来自相机的图像中的感兴趣区域。此外,相对于由相机捕获或由追踪器520感测的遮挡,对象投影仪540在一些情况下可以提供图像中的遮挡推理。此外,对象投影仪540可以将由相机捕获的图像向下裁剪到包括三维对象到图像上的投影的roi。在一些情况下,对象投影仪540可以对图像应用掩模以去除与载具不相关联的像素,或者去除与载具信号灯将存在的可能区域不相关联的像素。
75.尽管在本公开的一些实现中可能不存在对象投影仪540,但是对象投影仪540可以通过将要搜索的像素的量减少到裁剪的roi来使得在图像内对光信号的搜索更高效。
76.如稍后详细描述的,光检测器550和语义分类器560从传感器530的相机接收图像,并从对象投影仪540接收投影的感兴趣区域和遮挡。
77.光检测器550可以使用几何形状来检测由相机提供的图像内的光的坐标。光检测器550可以基于roi裁剪图像的一部分。可以实现一个或多个光检测器550。
78.语义分类器560可以确定在从相机接收的图像中检测到的光的语义含义。可以实现一个或多个语义分类器560。
79.vs融合模块570从光检测器550和/或语义分类器560接收关于检测到的光的信息。
80.此外,vs融合模块570从光检测器550接收光的位置和/或从语义分类器560接收光的语义含义。
81.vs融合模块570包括解释模块,其解释来自光检测器550的位置和/或来自语义分类器560的语义含义,以在组合图像内产生语义标识的载具信号580。
82.对象投影仪更详细地,对象投影仪540接收变换510和来自追踪器520的三维被追踪对象的坐标。基于变换510和来自追踪器520的被追踪对象的三维坐标的坐标,对象投影仪540将表示被追踪对象的三维框投影到由相机捕获的二维图像中。在一些情况下,对象投影仪540单独地投影三维多边形的一个或多个载具侧面。
83.在一个实现中,每个相机存在一个对象投影仪540。更高效的实现采用共享一个对象投影仪540的多个相机(可能包括所有相机)。
84.对象投影仪540可以通过粗略和/或逐像素的分割来确定对象的投影。该分割可以界定三维对象的哪个部分对于传感器530的相机是可见的。
85.因为追踪器520追踪多个对象的信息,所以对象投影仪540可以对被追踪对象执行遮挡推理。例如,如果对象投影仪540确定第一三维对象超出更近的第二三维对象,则对象投影仪540可以确定例如第一三维对象的左侧的一半对于相机是不可见的。
86.因此,对象投影仪540产生来自传感器530的相机的图像中的二维视图,其中对象预期出现在图像中。二维视图或二维视图的衍生物可以在图像中形成roi。对象投影仪540还可以向光检测器550和/或语义分类器560输出被追踪对象的三维框表示。
87.光检测器:几何观察如上所述,系统可以包括光检测器550和/或语义分类器560。光检测器550和语义分类器560可以从传感器530的相机接收图像,并且从对象投影仪540接收所投影的感兴趣区域和遮挡。光检测器550和/或语义分类器560还可以从对象投影仪540接收被追踪对象的三维框表示。如前所述,光检测器550几何地确定由传感器530的相机提供的图像内的光的坐标、尺寸、形状和/或周边。语义分类器560确定在从相机424接收的图像中检测到的光的语义含义。在一些实施例中,光检测器550和语义分类器560的功能可以合并在一起。
88.更详细地,在一些实现中,光检测器550被实现为单帧光检测器。光检测器550从传感器530的相机接收图像,并且可选地,从对象投影仪540接收图像中的roi。光检测器550可以将图像向下裁剪到roi,并在roi内搜索一个或多个光。这种搜索可以通过人工智能来执行,例如机器学习、深度学习、神经网络、卷积神经网络(例如,convnet)、递归神经网络、随
机森林、遗传算法和强化学习。光检测器550可以在光的位置和外观(例如,颜色、尺寸)的图像上训练,例如通过三维框上的光的模型。在一些实现中,可以在那些图像的区域和类别标签上训练人工智能。
89.光检测器550处理图像内的完全或部分可见的对象。例如,光检测器550基于遮挡来确定图像的部分不是被追踪对象的一部分。例如,如上所述,对象投影仪540可以确定由于第二三维对象,从传感器530的相机来看,第一三维对象的左侧的一半被遮挡。在这种情况下,光检测器550可以确定第一三维对象左侧的一半内的任何光不属于第一三维对象。
90.然后,对于对象,光检测器550计算关于光的几何观察。这些几何观察可以包括在二维图像中客观地检测到光的地方、光描述符(例如,类型、尺寸、颜色、形状、周边、嵌入特征)、以及光位于载具上的位置。光检测器550可以将光投影到对象的三维表示(例如从对象投影仪540或单位立方体接收到的三维框)上。
91.图6示出了表示为三维框或多边形602的载具及其灯的映射。载具由相机捕获,并且来自相机的图像由图像像素空间608表示。
92.光检测器550具有关于作为载具侧面(示出为载具侧面604)的三维框或多边形602的表面的信息。三维框或多边形602和载具侧面可以由追踪器提供。因此,尽管对象可以具有多于四个侧面(在该示例中不包括顶部和底部),但是在该示例中,光检测器550将对象可视化为仅具有四个载具侧面604。此外,对于另一载具的每一侧,光检测器550确切地假定四个拐角。
93.在具有改进建模的实现中,每侧拐角的数量可以超过四个。其中光检测器550可以接收将对象建模为具有多于四个侧面(再次,不包括对象的顶部或底部)的信息的实现也是可能的。其中对象具有六个或更多个侧面(包括对象的顶部和底部,在警车车顶上的闪烁灯或者在定制汽车底部上的发光或地面效果的情况下)的进一步实现是可能的。
94.在几何上,光检测器550可以检测如图像像素空间608中所示的光606。当追踪器向光检测器550提供标识载具的特定载具侧面604的信息时,检测到的光可以与图6的相对空间610中的特定载具侧面604相关联(反之亦然)。
95.如图6的光606中所示,光检测器550可以确定位于图像像素空间608中的光的位置(例如,像素位置)、尺寸、形状、平均强度(例如,以流明为单位)和/或颜色(例如,白色、黄色、红色)。关于三维框或多边形602的坐标和/或载具侧面604的坐标的信息可以为光检测器550提供感兴趣区域,以在图像像素空间608中高效地定位载具灯。
96.光检测器550可应用图像处理或信号处理技术来确定位于图像像素空间608中的光的位置(例如,像素位置)、尺寸、形状、平均强度(例如,以流明为单位)和/或颜色(例如,白色、黄色、红色)。在一些情况下,光检测器550可以应用人工智能来确定光的语义含义。这种人工智能可以用例如机器学习、深度学习、神经网络、卷积神经网络(例如,convnet)、递归神经网络、随机森林、遗传算法和强化学习之类的技术来实现。
97.如果需要,光检测器550可以将光映射到单位立方体612的相对空间610的坐标,如图6所示。也就是说,光检测器550可以将光位置信息从图像像素空间608回归到相对空间610。在图6所示的示例中,相对空间610的原点是立方体612的左上拐角。因此,光检测器550的输出的一个示例可以是“[0.9,0.8,0]处的对象12345上的圆形100cm2琥珀色光。”此外,光检测器550可以跳过被确定为被另一对象遮挡的区域中的光检测。
[0098]
语义分类器:语义观察转到语义光配置实现,语义分类器560对被追踪对象执行高级光配置的检测。
[0099]
语义分类器560可以在例如“前灯开启”、“左闪光灯开启”和“无遮挡”之类的光配置的图像上训练。因此,在一个示例中,语义分类器560可以输出特征向量,该特征向量表示“这辆车的制动器和左转信号开启,并且该车的右侧没有被遮挡。”语义分类器560的其他示例性输出包括“左闪光灯开启”、“刹车开启”、“左侧被其他汽车遮挡”、“左侧被图像边界遮挡”、“右侧的灯开启,而对称放置在左侧的灯关闭”和“没有遮挡”。
[0100]
在示例性操作中,语义分类器560从传感器530的相机接收图像,并从对象投影仪540接收图像中的感兴趣区域。语义分类器560还可以裁剪例如图像中的不同载具所对应的图像块。在一些实现中,语义分类器560可以在形成高级光检测时考虑遮挡。
[0101]
语义分类器560可以应用图像处理或信号处理技术来确定光的语义含义。在一些情况下,语义分类器560可以应用人工智能来确定光的语义含义。这种人工智能可以用例如机器学习、深度学习、神经网络、卷积神经网络(例如,convnet)、递归神经网络、随机森林、遗传算法和强化学习之类的技术来实现。
[0102]
vs融合返回参考图5,vs融合模块570比较和/或融合多技术解释,例如载具信号检测器对来自多个相机的图像以及来自一个或多个光检测器550和/或一个或多个语义分类器560的多个观察结果进行操作。一些多技术方法可以包括从在不同数据集上训练的多个光检测器和/或在不同数据集上训练的语义分类器接收信息。因此,vs融合模块570可以融合来自语义分类器560的多个观察结果和语义消息以及来自光检测器550的几何观察结果。这些解释的融合可以减少假阳性,并在具有单个故障点(例如单个相机)的系统中增加冗余。
[0103]
vs融合模块570通常对应于图2。vs融合模块570可以实现为一个融合节点,或者对于冗余系统,实现为若干融合节点。
[0104]
在一些实施例中,vs融合模块570可以从光检测器550接收三维框上的光的坐标,或者从语义分类器560接收语义观察结果。对于被追踪对象,vs融合模块570从传感器530的不同相机接收图像。然后,vs融合模块570将来自多个图像的光融合到单位立方体或三维框上,以用于几何和时间解释(对于几何观察)或语义观察的嵌入(对于语义观察)。
[0105]
vs融合模块570还可以对光应用时间信号解释,以确定例如光是否在闪烁。例如,vs融合模块570可以接收多个图像,其中至少三个图像示出了处于照亮状态(例如,“开启”)的相同光。vs融合模块570可以基于若干图像的时间戳来确定光是否在闪烁。
[0106]
特别地,如果光在闪烁,而不是简单地照亮,那么光将周期性地照亮。因此,vs融合模块570可以标识例如包括光的五个图像。如果光在第一、第三和第五图像中按时间顺序照亮,而在第二和第四图像中按时间顺序不照亮,则vs融合模块570可以确定第一、第三和第五图像的时间戳。如果vs融合模块570确定第一时间戳与第三时间戳的差异量与第三时间戳与第五时间戳的差异量相同,则vs融合模块570可以确定光以近似等于例如第一和第三时间戳的差异的周期进行闪烁。
[0107]
在一些实现中,vs融合模块570可以基于来自一系列图像的几何观察和/或语义观察来确定闪烁的频率或闪烁的周期。
[0108]
vs融合:几何观察融合
如图7所示,如果传感器530的一个相机捕获三维对象(例如,由多边形602表示的载具)的左侧的图像,并且传感器530的另一个相机捕获同一三维对象的右侧的图像,则出现分裂情况。如果一个相机捕获左侧的图像,然后捕获右侧的图像,也会出现类似的情况。技术可用于在几何上关联由同一多边形602表示的同一载具上的光检测。
[0109]
在图7所示的分裂情况中,对象的左侧光出现在来自相机1的二维图像720中,并且对象的右侧光出现在来自相机2的二维图像722中。
[0110]
光检测器550可以检测来自相机1的图像中的左侧光和来自相机2的图像中的右侧光。如上所述,光检测器550可以检测左侧光,并将左侧光与相对空间(或三维框)内的多边形相关联。相同的光检测器550或不同的光检测器可以检测右侧光,并将右侧光与相同的多边形相关联。在一些情况下,vs融合模块570可以将光检测与单位立方体702或三维框相关联。如图7的示例中所示,vs融合模块570可以从光检测器550接收或者将左侧光的位置信息回归到具有特定对象标识符的单位立方体702上并将右侧光的位置信息回归到具有相同对象标识符的单位立方体702上。
[0111]
由于在相同的单位立方体702上检测到左侧光和右侧光,所以vs融合模块570可以确定来自相机1和2的图像是属于相同的三维对象。vs融合模块570可以考虑其他信息,例如基于以下中的一个或多个:例如,三维对象的追踪标识符、三维对象的位置、三维对象的多边形、或来自相机1和2的图像的时间戳。
[0112]
左侧光和右侧光可以在三维对象上处于相同或基本相同的高度(例如,在对象总高度的10%以内)。
[0113]
在几何观察融合的一个示例中,vs融合模块570可以将两个观察结果重新投影到三维模型上,以确定例如三维对象的两个灯被点亮。因此,光检测器550可以在三维对象的三维框表示上建立光的高度。
[0114]
vs融合:语义观察融合与给定时间点处的单个光相关联的语义信息不足以确定载具信号的语义含义。在语义观察融合的一个示例中,vs融合模块570接收指示“左闪光灯开启”的信息和指示“右闪光灯开启”的信息。在语义观察融合的另一示例中,vs融合模块570可以接收指示载具左侧的图像指示“左闪光灯开启”和“右侧被遮挡”而载具右侧的图像指示“右闪光灯开启”和“左侧被遮挡”的信息。该信息可以包括图像自身、来自光检测器的三维坐标、或者来自语义分类器的包括这种语义信息的消息。
[0115]
因此,vs融合模块570产生语义标签或在语义标签上训练的中间表示。vs融合模块570然后从两个中间语义表示产生最终语义标签,例如“危险开启配置”。vs融合模块570将该语义标签提供给例如载具控制系统80以控制自主载具10。
[0116]
因此,在一个实现中,vs融合模块570累积针对被追踪对象和针对相机424的观察结果。然后,对于被追踪对象,vs融合模块570可以基于用于检测闪光危险的特定逻辑来融合观察结果、解释静态灯布局(例如“这些灯一起在载具上”)并且解释动态语义(例如“闪光危险”)。
[0117]
因此,vs融合模块570在语义上产生载具信号580,其可以用作控制载具控制系统80以控制av 10的基础。例如,如果自主载具10前方的载具开启了刹车灯,则可以控制av 10进行制动。例如,如果语义载具信号指示接近的应急车辆,则av 10也可以被转向。在适当的
情况下,自主载具10也可以被加速。
[0118]
使用像素或图像分割的替代设计使用图像分割,代替使用追踪器进行遮挡推理。换句话说,roi和遮挡推理仅基于由相机捕获的图像来确定。
[0119]
在替代设计中,从对象投影仪540去除由追踪器辅助的遮挡推理,并且代之以接收像素或图像分割。这种分割向系统通知光是否被遮挡。例如,分割可以指示光是否在三维对象上、光是背景光(例如,在第一辆车的图像中的第二辆车上)还是反射光、以及光的前面是否有透明度(例如,通过另一辆车的窗户观察的交通灯)。图像分割可以去除背景。
[0120]
选择特征的概述在一个实现中,(图3的)自主载具10的主体包括记录自主载具10周围环境的多个图像的多个相机。自主载具10使用雷达或lidar传感器来执行目标定位。因此,自主载具10可以在三维空间中标识和追踪对象的位置。对象投影仪540接收被追踪对象的身份,并且可以投影三维对象将进入多个相机的视场并且因此将出现在图像中的位置和方式。
[0121]
对象投影仪540可以确定从多个相机接收的图像中的roi。在一个实现中,光检测器550在roi内定位光,从而使得语义标签的处理潜在地不必要。
[0122]
光检测器550将光的位置输出到vs融合模块570。语义分类器560向vs融合模块570输出光的语义信息。vs融合模块570可以通过融合来自一个或多个光检测器550和一个或多个语义分类器560的信息来检测载具信号。
[0123]
因此,可以通过检测附近载具上的信号(例如,无信号、刹车、转向信号(左/右)、危险、倒车灯、闪烁的黄色校车灯(登车前)、闪烁的红色校车灯(登车中)、例如警察、消防车、救护车之类的应急灯、以及例如施工车辆、垃圾车和交警之类的其他载具灯),来改进自主载具10。
[0124]
因此,所公开的架构可以合并跨相机的部分观察,同时允许将不同的技术应用于来自不同相机的图像。在一些实现中,在时间解释之前,vs融合模块570将来自不同相机/技术的观察融合到光配置中。
[0125]
示例性载具信号融合图8示出了根据本公开的各种实现的来自多个载具信号检测器的检测结果的解释。如前所述,例如第一载具信号检测器245、第二载具信号检测器255和第n载具信号检测器265的载具信号检测器可以产生信息,包括光检测结果和光的语义信息中的一个或多个。可以随时间收集光检测结果和/或光的语义信息。每个载具信号检测器可以产生随时间的信息的向量,例如,作为时间序列数据。例如,第一载具信号检测器245可以产生随时间的信息的向量810,第二载具信号检测器255可以产生随时间的信息的向量812,并且第n载具信号检测器265可以产生随时间的信息的向量814。随着时间的推移,所有整理在一起的向量可以形成信息的矩阵802。信息的矩阵802可以作为输入提供给解释模块275。
[0126]
在一些情况下,解释模块275可将(一个或多个)过滤器或特征提取方案应用于矩阵802或矩阵802的一部分,以将信息变换成可有助于来自多个载具信号检测器的信息的融合的特征。例如,解释模块275可以提取频率信息。
[0127]
在一些情况下,解释模块275可以实现用于解释矩阵802中的信息的显式逻辑规则。在一些情况下,解释模块275可以实现人工智能技术,例如决策树、概率分类器、朴素贝
叶斯分类器、支持向量机、深度学习、神经网络、卷积神经网络、递归神经网络、随机森林、遗传算法和/或强化学习。解释模块275可以实现有监督或无监督的学习。
[0128]
示例性方法和修改图9示出了根据本公开的各种实现的用于多模态对象投影的方法。在902中,对象投影仪从主体上的相机接收第一三维对象的二维图像。在904中,对象投影仪接收指示第一三维对象的第一三维坐标的第一信号。在904中,对象投影仪将第一三维坐标投影到二维图像上。在906中,对象投影仪基于投影来确定二维图像中的感兴趣区域。在908中,光检测器或语义分类器在感兴趣区域内搜索三维对象的光。该方法由图1、5和6的描述来说明。
[0129]
图10示出了根据本公开的各种实现的用于多技术载具信号检测的方法。在1002中,载具信号检测器在第一二维图像内搜索三维对象的第一光。在1004中,载具信号检测器在第二二维图像内搜索第二光。第一二维图像和第二二维图像可以是不同的图像。第一二维图像和第二二维图像可以是相同的图像。用于搜索第一光和第二光的技术可以不同。用于搜索第一光和第二光的技术可以相同。在1006中,载具信号检测器确定第二光属于三维对象。在1008中,载具信号检测器确定第一光和第二光的语义含义。该方法由图2、5、7和8的描述来说明。
[0130]
本公开的实现涉及搜索载具信号。本公开的教导不限于此,并且那些教导也可以应用于搜索应急车辆上的紧急信号、交通灯、以及驾驶时遇到的任何其他灯。
[0131]
一旦检测到(一个或多个)载具信号,载具控制系统80就可以基于检测到的(一个或多个)载具信号采取动作。例如,如果三维对象在av之前并且三维对象的制动灯开启,则载具控制系统80可以控制av 10进行制动。如果检测到自主载具10前方的应急车辆的载具信号,则载具控制系统80可以将av 10转向到路边。如果三维对象的前灯垂直于自主载具10的主体接近并且因此将要撞击自主载具10,则载具控制系统80可以加速av 10。
[0132]
计算系统图11示出了在本文描述的实现中使用的计算系统的组件。具体而言,图10的组件可以存在于av 10中。
[0133]
系统1100可以在一个计算设备内实现,或者跨协作执行程序指令的多个计算设备或子系统而分布。在一些实现中,系统1100可以包括一个或多个刀片服务器设备、独立服务器设备、个人计算机、路由器、集线器、交换机、网桥、防火墙设备、入侵检测设备、大型计算机、网络附接存储设备、智能电话和其他移动电话、以及其他类型的计算设备。系统硬件可以根据任何计算机架构进行配置,例如对称多处理(smp)架构或非统一存储器接入(numa)架构。
[0134]
系统1100可以包括一个或多个中央处理器1110,该中央处理器1110可以包括一个或多个硬件处理器和/或从存储1130检索和执行软件1120的其他电路。一个或多个中央处理器1110可以在一个处理设备、芯片或封装内实现,并且也可以跨多个处理设备、芯片、封装或子系统而分布,所述多个处理设备、芯片、封装或子系统协作执行程序指令。在一个实现中,系统1100包括一个或多个中央处理器1110和gpu 1150。gpu 1150可以受益于计算系统1100中的视觉/图像处理。gpu 1150或任何二阶处理元件(其独立于专用于实时或接近实时处理图像和其他感知数据的一个或多个中央处理器1110)可以提供显著的益处。
[0135]
存储1130可以包括一个或多个计算机可读存储介质,该介质可由一个或多个中央
处理器1110读取并且存储软件1120。存储1130可以被实现为一个存储设备,并且也可以跨多个协同定位或分布式存储设备或子系统来实现。存储1130可以包括与一个或多个中央处理器1110通信的附加元件,例如控制器。存储1130还可以包括数据和/或指令被存储在其上的存储设备和/或子系统。系统1100可以接入一个或多个存储资源来存取信息,以执行由软件1120指示的任何过程。
[0136]
软件1120可以在程序指令中实现,所述软件1120包括用于至少部分地执行图中所示的至少一个过程的例程。此外,软件1120在通常由系统1100或一个或多个中央处理器1110执行时,除了其他功能之外,尤其可以指导系统1100或一个或多个中央处理器1110执行本文所述的载具信号检测。
[0137]
在系统1100包括多个计算设备的实现中,系统的服务器或者(在无服务器实现中)对等体可以使用促进计算设备之间的通信的一个或多个通信网络。例如,一个或多个通信网络可以包括或可以是促进计算设备之间的通信的局域网或广域网。计算设备之间可以包括一个或多个直接通信链路。此外,在一些情况下,计算设备可以安装在地理上分布的位置处。在其他情况下,多个计算设备可以安装在一个地理位置处,例如服务器场或办公室。
[0138]
系统1100可以包括提供一个或多个通信连接的通信接口1040和/或允许系统1100和其他计算系统(未示出)通过通信网络或网络集合(未示出)或空中通信的一个或多个设备。
[0139]
如本文所述,本技术的一个方面是收集和使用可从各种源获得的数据以提高质量和体验。本公开设想,在一些情况下,该收集的数据可以包括个人信息。本公开设想,涉及这种个人信息的实体尊重并重视隐私政策和实践。
[0140]
如本文所使用的,术语“存储介质”、“计算机可读存储介质”或“计算机可读存储介质”可以指非暂时性存储介质,例如硬盘驱动器、存储器芯片和高速缓存存储器,以及指暂时性存储介质,例如载波或传播信号。
[0141]
用于自主载具的感知系统的各方面可以以各种方式(例如,作为方法、系统、计算机程序产品、或一个或多个计算机可读存储介质)来实现。因此,本公开的各方面可以采取硬件实现、软件实现(包括固件、驻留软件或微代码)、或组合软件和硬件方面的实现(在此通常可以称为“电路”、“模块”或“系统”)的形式。本公开中描述的功能可以被实现为由一个或多个硬件处理单元(例如,一个或多个计算机的一个或多个微处理器)执行的算法。在各种实施例中,所描述的方法的不同操作和操作部分可以由不同的处理单元来执行。此外,本公开的各方面可以采取包含在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质上包含(例如编码或存储)计算机可读程序代码。在各种实现中,这样的计算机程序可以例如被下载(或更新)到现有设备和系统,或者在制造这些设备和系统时被存储。
[0142]
详细描述呈现了特定实现的各种描述。所描述的创新可以以多种不同的方式实现,例如,如权利要求和/或选择示例所定义和覆盖的。在描述中,参考了附图,其中相同的附图标记可以指示相同或功能相似的元件。附图中所示的元件不一定按比例绘制。此外,某些实施例可以包括比图中所示更多的元件和/或图中所示元件的子集。此外,一些实施例可以包含来自两个或更多个附图的特征的适当组合。
[0143]
本公开描述了用于实现本公开的特征和功能的各种说明性实现和示例。虽然结合
各种示例实现描述了组件、布置和/或特征,但是这些仅仅是简化本公开的示例,而不是意图限制性的。在任何实际实现的开发中,可以做出许多特定于实现的决定来实现开发人员的特定目标,包括遵守系统、业务和/或法律约束,这可能因实现而异。此外,虽然这样的开发工作可能是复杂和耗时的,但是对于受益于本公开的本领域普通技术人员来说,这将是常规的工作。
[0144]
在本说明书中,参考了各种组件之间的空间关系以及附图中所示组件各方面的空间取向。所描述的设备、组件、构件和装置可以定位在任何取向上。因此,使用例如“上”、“下”、“上方”、“下方”、“顶”、“底”或其他类似术语来描述各种组件之间的空间关系或描述这些组件的方面的空间取向分别描述了这些组件之间的相对关系或这种组件的方面的空间取向,因为所描述的组件可以在任何方向上取向。当用于描述元件的尺寸范围或其他特性(例如时间、压力、温度、长度、宽度等)、操作和/或条件时,短语“在x和y之间”表示包括x和y的范围。本公开的系统、方法和设备具有若干创新方面,其中没有一个方面单独负责本文公开的属性。本文描述的实现可能无法实现一些目的或优点。因此,例如,某些实现可以以实现或优化如本文教导的一个优点或一组优点的方式操作,而不是如本文可以教导或建议的其他目的或优点。
[0145]
在一个示例实现中,可以在相关联电子设备的板上实现图中的任何数量的电路。该板可以是通用电路板,其可以容纳电子设备的内部电子系统的各种组件,并且进一步提供用于其他外围设备的连接器。更具体地说,电路板可以提供电气连接,系统的其他组件可以通过这些电气连接进行电气通信。任何处理器(包括数字信号处理器、微处理器、支持芯片组等)和计算机可读非暂时性存储器元件可以基于配置、处理需求、计算机设计等耦合到板。其他组件(例如外部存储、附加传感器、用于音频/视频显示的控制器和外围设备)可以作为插件卡经由电缆附接到电路板,或集成到电路板自身中。在各种实现中,本文描述的功能可以以仿真形式实现为软件或固件,所述软件或固件运行在一个或多个可配置(例如,可编程)元件内,其布置在支持这些功能的结构中。提供仿真的软件或固件可以在一个或多个非暂时性计算机可读存储介质上提供,其包括允许一个或多个处理器执行那些功能的指令。
[0146]
在另一示例实现中,图的电路可以被实现为独立模块(例如,具有被配置成执行特定应用或功能的相关联组件和电路的设备),或者被实现为电子设备的应用特定硬件中的插件模块。本公开的实现可以容易地包括在片上系统(soc)封装中。soc表示将计算机或其他电子系统的组件集成到一个芯片中的集成电路(ic)。soc可以包含数字、模拟、混合信号,通常还有射频功能,其可以在一个芯片基板上提供。其他实施例可以包括多芯片模块(mcm),其中多个单独ic位于一个电子封装内,并通过电子封装进行交互。在各种其他实现中,处理器可以在专用集成电路(asic)、现场可编程门阵列(fpga)和其他半导体芯片中的一个或多个硅内核中实现。
[0147]
本文概述的规格、尺寸和关系(例如,处理器和逻辑运算的数量)已经被提供用于示例和教导的非限制性目的。这种信息可以变化很大。例如,可以对组件的布置进行各种修改和改变。因此,说明书和附图被认为是说明性的,而不是限制性的。
[0148]
利用本文提供的众多示例,为了清楚和示例的目的,就两个、三个、四个或更多个电子组件来描述交互。系统可以以任何方式进行整合。沿着类似的设计替代,图中所示的组
件、模块和元件可以以各种可能的配置进行组合,这些配置显然在本公开的范围内。在某些情况下,通过引用有限数量的电气元件来描述给定流程集的一个或多个功能可能更容易。图和它们的教导的电路是可容易扩展的,并且可以容纳许多组件以及更复杂/精细的布置和配置。因此,所提供的示例不限制潜在地应用于无数其他架构的电路的范围或抑制其教导。
[0149]
在本公开中,对包括在“一个实现”、“示例实现”、“实现”、“另一个实现”、“一些实现”、“各种实现”、“其他实现”、“替代实现”等中的各种特征(例如,元件、结构、模块、组件、步骤、操作、特性等)的引用意在表示任何这样的特征被包括在本公开的一个或多个实现中,并且可以或不一定被组合在相同的实现中。
[0150]
与多模态和/或多技术载具信号检测相关的功能(例如在图中所示的一个或多个过程中总结的那些)示出了可以由图中所示的自主载具执行或在其中执行的一些可能功能。这些操作中的一些可以在适当的情况下被删除或省略,或者这些操作可以被显著地修改或改变。此外,这些操作的定时可以变化很大。前面的操作流程是为了示例和讨论的目的而提供的。本文描述的实现提供了灵活性,因为可以提供任何合适的布置、时序、配置和定时机制。
[0151]
选择示例示例1是一种方法,包括:从主体上的相机接收第一三维对象的二维图像;接收指示第一三维对象的第一三维坐标的第一信号;将第一三维坐标投影到二维图像上;基于所述投影来确定二维图像中的感兴趣区域;以及在感兴趣区域内搜索三维对象的光。
[0152]
在示例2中,示例1的方法可以可选地包括将第一三维坐标投影到二维图像上,包括对三维坐标应用矩阵变换。
[0153]
在示例3中,示例1或2的方法可以可选地包括基于三维对象的光来控制载具,其中所述控制是加速、制动或转向所述载具。
[0154]
在示例4中,示例1-3中任一个的方法可以可选地包括:接收指示第二三维对象的第二三维坐标的第二信号;以及基于第一三维对象的第一三维坐标和第二三维对象的第二三维坐标来确定第一三维对象的一部分在二维图像中被第二三维对象遮挡。
[0155]
在示例5中,示例1-4中任一个的方法可以可选地包括投影第一三维坐标,包括:投影与第一三维对象对应的三维多边形的表面。
[0156]
在示例6中,示例1-5中任一个的方法可以可选地包括:指示第一三维对象的三维坐标的信号包括第一三维对象的多个表面的三维坐标,并且基于第一三维对象的多个表面的三维坐标来确定感兴趣区域。
[0157]
在示例7中,示例1-6中任一个的方法可以可选地包括:将二维图像裁剪到感兴趣区域以产生裁剪图像,其中对裁剪图像执行搜索。
[0158]
示例8是一种系统,包括:包括指令的存储器、执行指令的处理器、以及对象投影仪,其编码在指令中用于:从主体上的相机接收第一三维对象的二维图像;接收指示第一三维对象的第一三维坐标的第一信号;将第一三维坐标投影到二维图像上;基于所述投影来确定二维图像中的感兴趣区域;以及在感兴趣区域内搜索三维对象的光。
[0159]
在示例9中,示例8的系统可以可选地包括将第一三维坐标投影到二维图像上,包括对三维坐标应用矩阵变换。
[0160]
在示例10中,示例8或9的系统可以可选地包括载具控制系统,其基于三维对象的光来加速、制动或转向载具。
[0161]
示例11是一种方法,包括:在由载具上的相机捕获的三维对象的第一二维图像内搜索三维对象的第一光;在第二二维图像内搜索第二光;确定所述第二光属于所述三维对象;以及确定所述第一光和所述第二光的语义含义。
[0162]
在示例12中,示例11的方法可以可选地包括基于第一光和第二光的语义含义来控制载具,其中所述控制是加速、制动或转向所述载具。
[0163]
在示例13中,示例11或12的方法可以可选地包括:确定第一光在三维对象上的第一位置和第一光在第一二维图像中的第一颜色,其中所述语义含义是基于第一位置和第一颜色。
[0164]
在示例14中,示例13的方法可以可选地包括:基于第一位置,将第一光投影到三维对象的三维表示的第一表示位置上;确定第二光在三维对象上的第二位置和第二光在第二二维图像中的第二颜色;以及基于第二位置,将第二光投影到三维对象的三维表示的第二表示位置上,其中所述语义含义是基于第一表示位置、第二表示位置、第一颜色和第二颜色。
[0165]
在示例15中,示例11-14中任一个的方法可以可选地包括:确定第一光的第一语义含义;以及确定第二光的第二语义含义,其中所述语义含义是基于第一语义含义和第二语义含义。
[0166]
在示例16中,示例11-15中任一个的方法可以可选地包括:接收由相机捕获第一二维图像的时间的第一时间戳;接收捕获第二二维图像的时间的第二时间戳;以及基于所述第一时间戳和所述第二时间戳来确定所述三维对象的光在闪烁,其中所述语义含义是基于所述光在闪烁的所述确定。
[0167]
在示例17中,示例11-16中任一个的方法可以可选地包括所述语义含义是基于第一二维图像中的第一光的第一颜色和第二二维图像中的第二光的第二颜色。
[0168]
示例a是一种载具,包括:包括指令的存储器;执行指令的处理器;包括相机的主体;以及载具信号检测器,其编码在指令中用于:实现示例1-7、11-17和本文描述的方法中的任何一个或多个。
[0169]
示例b是编码有指令的一个或多个非暂时性计算机可读介质,所述指令当由一个或多个处理单元执行时,执行根据示例1-7、11-17和本文描述的方法中的任何一个或多个的方法。
[0170]
示例c是一种装置,包括用于实现和/或执行本文的示例中的任何一个的部件。
[0171]
各种实现可以组合本文的示例的特征。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1