一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

车辆传感器操作的制作方法

2022-02-24 20:31:34 来源:中国专利 TAG:


1.本公开总体上涉及车辆传感器。


背景技术:

2.车辆可配备有计算装置、网络、传感器和控制器以获取关于车辆的环境的数据并基于所述数据来操作车辆。车辆传感器可提供关于在车辆环境中要行驶的路线和要避开的对象的数据。车辆的操作可依赖于在车辆正在道路上进行操作时获取关于车辆环境中的对象的准确且及时的数据。车辆可使用计算装置,所述计算装置被配置为从由车辆传感器收集的图像数据识别对象。


技术实现要素:

3.一种系统包括计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以:将测量车辆相机上的机械应变的应变数据和车辆部件的操作数据输入到机器学习程序,所述操作数据描述所述车辆部件的输出或状态中的至少一者,所述机器学习程序基于所述应变数据和所述操作数据输出所述车辆相机相对于中性位置的位移;基于所述车辆相机的所述输出位移,识别将来自所述车辆相机的数据变换到处于所述中性位置的所述车辆相机的坐标系的变换矩阵;将所述变换矩阵应用于由所述车辆相机收集的数据以生成变换后的数据;以及基于所述变换后的数据来致动所述车辆部件或第二车辆部件中的一者。
4.所述操作数据可以包括轮胎压力、悬架长度、轮速或制动压力中的至少一者。
5.所述指令还可包括用于进行以下操作的指令:将包括车辆速度或车辆加速度中的至少一者的另外的数据输入到所述机器学习程序以输出所述车辆相机的所述位移。
6.机器学习程序可以是深度神经网络或梯度提升树中的一者。
7.所述车辆部件可以是多个车辆部件中的一者,并且所述指令还可以包括将来自所述多个车辆部件的所述应变数据和操作数据输入到所述机器学习程序以输出所述车辆相机的所述位移的指令。
8.所述系统还可以包括应变传感器,所述应变传感器用于收集所述应变数据,其中所述应变传感器是应变计、加速度计或应变螺栓中的一者。
9.所述车辆相机可以用所述应变螺栓固定到支座。
10.变换矩阵可以基于车辆相机的焦距来变换来自车辆相机的数据。
11.位移可以包括横向位移、纵向位移和竖直位移。
12.所述指令还可包括用于进行以下操作的指令:将所述操作数据和第二车辆相机的应变数据输入到所述机器学习程序、输出所述第二车辆相机的位移以及识别将来自所述第二车辆相机的数据变换到处于所述中性位置的所述第二车辆相机的坐标系的第二变换矩阵。
13.所述指令还可包括用于进行以下操作的指令:将所述第二变换矩阵应用于来自所
述第二车辆相机的数据以生成第二变换后的数据并基于所述变换后的数据和所述第二变换后的数据生成三维图像。
14.所述指令还可包括用于在三维图像中识别对象的指令。
15.所述指令还可包括用于基于所述三维图像识别从所述车辆相机到所述对象的距离的指令。
16.所述指令还可包括用于将所述变换后的数据的相应像素与所述第二变换后的数据的对应像素组合以生成所述三维图像的指令。
17.一种方法包括:将测量车辆相机上的机械应变的应变数据和车辆部件的操作数据输入到机器学习程序,所述操作数据描述所述车辆部件的输出或状态中的至少一者,所述机器学习程序基于所述应变数据和所述操作数据输出所述车辆相机相对于中性位置的位移;基于所述车辆相机的所述输出位移,识别将来自所述车辆相机的数据变换到处于所述中性位置的所述车辆相机的坐标系的变换矩阵;将所述变换矩阵应用于由所述车辆相机收集的数据;以及基于所述变换后的数据来致动所述车辆部件或第二车辆部件中的一者。
18.所述方法还可包括:将包括车辆速度或车辆加速度中的至少一者的另外的数据输入到所述机器学习程序以输出所述车辆相机的所述位移。
19.所述车辆部件可以是多个车辆部件中的一者,并且所述方法还可以包括将来自所述多个车辆部件的所述应变数据和操作数据输入到所述机器学习程序以输出所述车辆相机的所述位移。
20.所述方法可还包括将所述操作数据和第二车辆相机的应变数据输入到所述机器学习程序、输出所述第二车辆相机的位移以及识别将来自所述第二车辆相机的数据变换到处于所述中性位置的所述第二车辆相机的坐标系的第二变换矩阵。
21.所述方法可还包括将所述第二变换矩阵应用于来自所述第二车辆相机的数据以生成第二变换后的数据并基于所述变换后的数据和所述第二变换后的数据生成三维图像。
22.所述方法可还包括在所述三维图像中识别对象。
23.所述方法可还包括基于所述三维图像识别从所述车辆相机到所述对象的距离。
24.所述方法可还包括将所述变换后的数据的相应像素与所述第二变换后的数据的对应像素组合以生成所述三维图像。
25.还公开了一种计算装置,所述计算装置被编程为执行上述方法步骤中的任一者。还公开了一种包括所述计算装置的车辆。还公开了一种计算机程序产品,所述计算机程序产品包括计算机可读介质,所述计算机可读介质存储指令,所述指令可由计算机处理器执行以执行上述方法步骤中的任一者。
附图说明
26.图1是用于操作车辆的传感器的示例性系统的图示。
27.图2是具有传感器总成的车辆的透视图。
28.图3是传感器总成的前视图。
29.图4是用于处理来自传感器的数据的示例性机器学习程序的图示。
30.图5是用于处理来自传感器的数据的另一个示例性机器学习程序的图示。
31.图6是用于操作车辆的传感器的示例过程的图示。
具体实施方式
32.一种车辆的立体相机总成包括收集图像数据的一对相机。基于由两个相机收集的图像数据,车辆计算机可以生成三维图像以识别车辆周围环境中的对象。当车辆在道路中遇到扰动(例如,砾石、坑洼、振动带等)时,振动可以通过车辆传到立体相机总成。振动可使相机远离中性位置移动,从而导致所收集的图像和从所收集的图像生成的三维图像中出现误差。
33.计算机可以收集来自相机的数据和关于可能引起振动的车辆部件的操作的数据,并且可以使用所述数据来补偿由振动引起的图像中的误差。例如,计算机可以收集指示相机上的机械应变的应变数据,所述应变指示相机从其相应的中性位置的移动。在另一个示例中,计算机可以收集关于可能引起振动的一个或多个部件的操作的数据,例如轮胎压力、节气门位置等。计算机可以将操作数据输入到机器学习程序(例如,神经网络),所述机器学习程序被训练成确定相机相对于中性位置的位移。基于该位移,计算机可以将由相机收集的图像变换到处于中性位置的相机的坐标系,从而减少所述图像和由计算机生成的三维图像中的误差。使用操作数据和应变数据来考虑由振动引起的相机的位移改进了计算机用于生成三维图像的图像数据,从而改进了对三维图像中的对象的检测。
34.图1示出了用于操作车辆101的传感器110的示例性系统100。车辆101中的计算机105被编程为从一个或多个传感器110接收所收集的数据。例如,车辆101的数据可包括车辆101的位置、关于车辆周围的环境的数据、关于车辆外部的对象(诸如另一车辆)的数据等。车辆101的位置通常以常规形式提供,所述形式为例如经由使用全球定位系统(gps)的导航系统获得的地理坐标(诸如纬度和经度坐标)。数据的另外示例可包括车辆101的系统和部件的测量值,例如车辆101的速度、车辆101的轨迹等。
35.计算机105通常被编程为在车辆101网络上进行通信,所述网络例如包括常规车辆101的通信总线(诸如can总线、lin总线等)和/或其他有线和/或无线技术(例如以太网、wifi等)。经由网络、总线和/或其他有线或无线机制(例如车辆101中的有线或无线局域网),计算机105可以向车辆101中的各种装置(例如控制器、致动器、传感器等,包括传感器110)传输消息和/或从所述各种装置接收消息。替代地或另外,在计算机105实际上包括多个装置的情况下,车辆网络可用于在本公开中表示为计算机105的装置之间的通信。例如,计算机105可以是具有如上所述的处理器和存储器的通用计算机,和/或可包括专用电子电路,所述专用电子电路包括为特定操作而制造的asic,例如用于处理传感器数据和/或传送传感器数据的asic。在另一示例中,计算机105可包括fpga(现场可编程门阵列),所述fpga是制造为可由用户配置的集成电路。通常,在电子设计自动化中使用诸如vhdl(超高速集成电路硬件描述语言)之类的硬件描述语言来描述诸如fpga和asic之类的数字和混合信号系统。例如,asic是基于制造前提供的vhdl编程而制造的,而fpga内部的逻辑部件可以基于例如存储在电连接到fpga电路的存储器中的vhdl编程来配置。在一些示例中,处理器、asic和/或fpga电路的组合可包括在计算机105中。
36.另外,计算机105可被编程用于与网络120进行通信,如下所述,所述网络可包括各种有线和/或无线联网技术,例如蜂窝、低功耗(ble)、有线和/或无线分组网络等。
37.存储器可以是任何类型,例如,硬盘驱动器、固态驱动器、服务器或任何易失性或
非易失性介质。存储器可存储从传感器110发送的所收集数据。存储器可以是与计算机105分离的装置,并且计算机105可以经由车辆101中的网络(例如,通过can总线、无线网络等)检索由存储器存储的信息。替代地或另外,存储器可以是计算机105的一部分,例如作为计算机105的存储器。
38.传感器110可以包括多种装置。例如,车辆101中的各种控制器可以充当传感器110以经由车辆101网络或总线提供数据,例如与车辆速度、加速度、位置、子系统和/或部件状态等有关的数据。此外,其他传感器110可以包括相机、运动检测器等,即,用于提供数据以评估部件的位置、评估道路的坡度等的传感器110。传感器110还可以包括但不限于短程雷达、远程雷达、激光雷达和/或超声波传感器。
39.所收集的数据可包括在车辆101中收集的多种数据。上面提供了所收集的数据的示例,并且此外,数据通常使用一个或多个传感器110来收集,并且可另外包括在计算机105中和/或在服务器125处根据其计算出的数据。通常,所收集的数据可包括可由传感器110采集的和/或根据此类数据计算出的任何数据。
40.车辆101可包括多个车辆部件115。在这种上下文中,每个车辆部件115包括适于执行诸如移动车辆101、使车辆101减慢或停止、使车辆101转向等机械功能或操作的一个或多个硬件部件。部件115的非限制性示例包括推进部件(其包括例如内燃发动机和/或电动马达等)、变速器部件、转向部件(例如,其可以包括方向盘、转向齿条等中的一者或多者)、制动部件、驻车辅助部件、自适应巡航控制部件、自适应转向部件、可移动座椅等。部件115可以包括计算装置,例如,电子控制单元(ecu)等和/或诸如以上关于计算机105描述的计算装置,并且它们同样经由车辆101网络进行通信。
41.出于本公开的目的,术语“自主车辆”指代在完全自主模式下操作的车辆101。完全自主模式被定义为其中车辆101的推进(通常经由包括电动马达和/或内燃发动机的动力传动系统进行)、制动和转向中的每一者都由计算机105控制的模式。半自主模式是其中车辆101的推进(通常经由包括电动马达和/或内燃发动机的动力传动系统进行)、制动和转向中的至少一者至少部分地由计算机105而不是人类操作员控制的模式。在非自主模式(即,手动模式)下,车辆101的推进、制动和转向由人类操作员控制。
42.系统100还可包括连接到服务器125的网络120。计算机105还可被编程为经由网络120与诸如服务器125的一个或多个远程站点通信,这种远程站点可能包括处理器和存储器。网络120表示车辆计算机105可借助来与远程服务器125通信的一个或多个机制。因此,网络120可以是各种有线或无线通信机制中的一者或多者,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何所需组合以及任何所需的网络拓扑(或当利用多种通信机制时的多种拓扑)。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用低功耗(ble)、ieee 802.11、车辆对车辆(v2v)诸如专用短程通信(dsrc)等)、局域网(lan)和/或包括互联网的广域网(wan)。
43.图2是示例车辆101的侧视图。车辆101包括传感器总成200(在图2的示例中示出为安装到车辆101的车顶,但是可以另外或替代地安装在车辆101上的其他地方)。传感器总成200包括多个传感器110以收集车辆101的周围环境的数据。计算机105可以致动传感器总成上的传感器110以收集数据,并且可以基于所收集的数据来致动一个或多个部件115。传感器总成200包括立体相机总成205,所述立体相机总成包括两个相机210、215,如下所述。
44.计算机105可以收集一个或多个车辆部件115的操作数据。在这种背景下,“操作数据”是描述车辆101和/或车辆部件115的输出或状态中的至少一者的数据。例如,操作数据可以包括例如轮胎压力、悬架长度、轮速、制动压力、车辆101的速度、车辆101的加速度等。另外,计算机105可以收集来自惯性测量单元(imu)的加速度数据。“惯性测量单元”是检测车辆坐标系中的线性加速度和旋转加速度的一组传感器110。imu传感器110可以包括例如加速度计、陀螺仪、压力传感器、磁力计等。计算机105可以将操作数据和/或imu数据输入到机器学习程序中以确定一个或多个传感器110上的应变。
45.图3是传感器总成200的立体相机总成205的透视图。立体相机总成收集车辆101的周围环境的数据。立体相机总成包括第一相机210和第二相机215。相机210、215各自收集“图像”,即,以二维值阵列(诸如红-绿-蓝或黑-白值)收集的可见光的数据。因为立体相机总成包括两个相机210、215,所以计算机105可以将常规的深度感知算法应用于由相机210、215收集的二维图像以生成周围环境的三维映射。也就是说,虽然单个相机210、215可以收集数据作为三维环境的二维投影,但是计算机105可以使用来自两个相机210、215的图像来确定从车辆101到图像中所识别的对象的距离,即对象的“深度”。
46.每个相机210、215限定具有正交轴x,y,z的相应坐标系,所述正交轴具有在相机210、215处的原点,如图2所示。每个相机210、215在它们相应的坐标系(每个相机210、215的“相机坐标系”)中收集数据。每个相机210、215限定中性位置。在这种背景下,“中性位置”是当车辆101未移动时相机210、215的取向。也就是说,中性位置是没有位移的相机210、215的位置,如下所述。当相机210、215处于中性位置时限定的坐标系是“中性相机坐标系”。中性相机坐标系限定具有在相机210、215处的相应原点的正交轴x',y',z',其中撇号指示处于中性位置的坐标系。也就是说,当每个相机210、215接收到振动时,每个相机210、215可以从中性位置移动,并且相机坐标系x,y,z可以相对于中性相机坐标系x',y',z'旋转,如图3所示。
47.车辆101限定车辆坐标系,所述车辆坐标系具有正交轴x,y,z和车辆101中的指定点(例如,车辆101的中心点)处的原点。因此,中性相机坐标系x',y',z'相对于车辆坐标系x,y,z保持固定,并且计算机105可以使用常规线性代数技术来确定线性变换以将来自中性相机坐标系x',y',z'的数据变换到车辆坐标系x,y,z。相机坐标系x,y,z可相对于中性坐标系x',y',z',旋转,因此当计算机105使用旋转相机坐标系x,y,z中的数据时,相机坐标系x,y,z从中性相机坐标系x',y',z'的旋转可能在数据变换到车辆坐标系x,y,z中时向数据引入误差。
48.每个相机210、215限定相应的焦距f。“焦距”是相机210、215的镜头的光学中心与相机210、215的数据收集器之间的距离。也就是说,焦距限定相机210、215的视野和放大倍率。具有比另一个相机210、215更大的焦距f的相机210、215具有比另一个相机210、215更窄的视野和比另一个相机210、215更高的放大倍率。也就是说,具有较高焦距f的相机210、215可以比具有较小焦距f的相机210、215捕获更远离相机210、215的对象的图像。相机210、215的焦距f可以是例如35毫米(mm)、50mm、75mm等。
49.相机210、215被支撑在支座220上。支座将相机固定到传感器总成200。相机可以彼此相距指定的基线距离b定位在支座220上。计算机105将基线距离b与由相机210、215收集的图像一起使用来确定图像中的对象的深度。可以基于将检测到对象的指定最小深度来确
定基线距离b。也就是说,制造商可以确定相机210、215应检测到对象的指定最小深度,并且制造商可以根据该指定最小深度将相机210、215安装在基线距离b处。可以使用常规视觉算法来确定基线距离b。例如,指定最小深度可以是1米,并且基线距离b可以是0.66米。
50.立体相机总成205包括一个或多个应变传感器225。应变传感器225测量“机械应变”,即由机械应力引起的弹性变形。当车辆101在道路上行驶时,道路的偏差(诸如砾石、坑洼等)可能导致车辆101振动。振动可在相机210、215上引起机械应变,从而使所收集的图像失真。应变传感器225测量相机210、215上的机械应变。例如,应变传感器225可以是包括在施加机械应变时弹性变形的金属线的应变计。弹性变形改变导线的电阻,并且计算机105可以测量电阻的变化以确定施加到应变传感器225的机械应变。替代地或另外地,应变传感器225可以是在施加机械应变时测量加速度的加速度计。计算机105可以基于所测量的加速度来确定施加到应变传感器225的应变。进一步替代地或另外地,应变传感器225可以是应变螺栓,即,包括金属应变计的紧固件,如上所述。相机210、215可以用一个或多个应变螺栓作为应变传感器225固定到支座220。又进一步替代地或另外地,应变传感器225可以是光学应变计,所述光学应变计包括光纤,所述光纤包括多个凹口,所述多个凹口在光纤因机械应变而变形时拉伸。拉伸的凹口改变行进通过光纤的光的速度和/或光的波长,并且计算机105可以基于通过光纤接收的光的速度和/或波长的变化来确定机械应变。
51.基于应变数据和操作数据,计算机105可以识别相机210、215的位移。“位移”是相机210、215从三维坐标系(例如,中性相机坐标系x',y',z')中的中性位置的移动。即,位移包括在x方向上的横向位移,在y方向上的纵向位移和在z方向上的竖直位移。另外,该位移可以限定x和x'轴之间的旋转θ,y和y'轴之间的旋转φ以及z和z'轴之间的旋转γ。相机210、215上的机械应变可使相机210、215远离相应的中性位置移位以引起移位。操作数据可以指示相机210、215的位移。例如,轮胎中的空气压力变化可引起使相机210、215从相应的中性位置移位的振动。
52.计算机105可以将来自相机210、215的图像输入到机器学习程序,所述机器学习程序输出车辆相机210、215相对于中性位置的位移。如下面进一步描述的,机器学习程序可以是例如深度神经网络、梯度提升树等。机器学习程序基于应变数据和操作数据来输出位移。计算机105可以将来自多个车辆部件115的应变数据和操作数据输入到机器学习程序以输出每个车辆相机210、215的位移。计算机105将包括车辆速度或车辆加速度中的至少一者的另外的数据输入到机器学习程序以输出每个车辆相机210、215的位移。也就是说,计算机105可以将操作数据和第一车辆相机210的应变数据输入到机器学习程序以输出第一车辆相机210的位移,并且计算机105可以将操作数据和第二车辆相机215的应变数据输入到机器学习程序以输出第二车辆相机215的位移。机器学习程序的输出可以包括比输入的应变数据更多的位移数据。也就是说,可以特定频率(即,以每秒一定的测量速率)收集应变数据。机器学习程序可以比输入的应变数据更高的频率输出位移数据,从而提供比应变数据的分辨率更精细的位移数据分辨率。位移数据的较高分辨率可以考虑由相机210、215收集的连续图像之间的图像内效果,例如,卷帘快门效果、模糊效果等。
53.基于位移,计算机105可以识别将来自每个车辆相机210、215的数据变换到它们相应的中性相机坐标系x',y',z'的变换矩阵。也就是说,每个相机210、215在移位时收集在其相应的相机坐标系x,y,z中的数据。变换矩阵将来自相机坐标系x,y,z的数据变换到每个车
辆相机210、215的中性相机坐标系x',y',z'。该“变换矩阵”是基于由位移引起的旋转θ,φ,γ和每个车辆相机210、215的焦距f将相机坐标系x,y,z中的数据映射到中性相机坐标系x',y',z'的矩阵。计算机105可以使用变换矩阵和变换矩阵的逆矩阵来将在相机坐标系x,y,z中收集的数据变换到中性相机坐标系x',y',z'。因为每个相机210、215收集二维图像数据,所以每个相机210、215可以仅收集相机坐标系x,y,z的x,y轴上的数据。例如,变换矩阵可以是:
[0054][0055]
其中θ,φ,γ是上述并在图2中示出的旋转角度。
[0056]
计算机105可以将变换矩阵应用于由相机210、215收集的数据以生成变换后的数据。“变换后的数据”表示车辆相机210、215将在中性位置捕获的图像。计算机105可以识别将来自第一车辆相机210的数据变换到第一车辆相机210的中性相机坐标系(即,“第一变换后的数据”)的第一变换矩阵。计算机105可以将第一变换矩阵应用于来自第一车辆相机210的数据以生成第一变换后的数据。计算机105可以识别将来自第二车辆相机215的数据变换到第二车辆相机215的中性相机坐标系(即,“第二变换后的数据”)的第二变换矩阵。计算机105可以将第二变换矩阵应用于来自第二车辆相机215的数据以生成第二变换后的数据。
[0057]
利用第一变换后的数据和第二变换后的数据,计算机105可以生成三维图像。如上所述,计算机105可以使用常规的三维建模算法,所述算法将第一变换后的数据的相应像素与第二变换后的数据的对应像素组合以生成三维图像。例如,三维建模算法可以是例如立体视觉视差图算法、单目立体视觉重建算法的融合、仿射重建算法、欧几里德重建算法等。
[0058]
计算机105可以基于变换后的数据来识别一个或多个对象。例如,计算机105可以识别另一车辆101。在另一个示例中,计算机105可以识别道路上的指示例如车道边界、路肩边界等的标记。计算机105可以识别三维图像中的对象。计算机105可基于三维图像中的深度数据识别从车辆相机210、215到该对象的距离。也就是说,计算机105可以利用来自三维图像的三维数据来使用常规的深度确定算法来确定从车辆101到三维图像中的每个像素的距离。
[0059]
计算机105可以基于变换后的数据来致动一个或多个部件115。也就是说,在识别图像中的一个或多个对象时,计算机105可以基于所识别的对象来致动部件115。例如,计算机105可以致动推进装置、转向总成和/或制动器以避开识别的车辆101。在另一个示例中,计算机105可以致动转向总成以使车辆101在道路标记之间移动。
[0060]
上述示例使用来自两个相机210、215(即,收集图像数据的两个传感器)的数据。替代地,传感器总成200可以包括两个其他传感器110,例如激光雷达、雷达等,并且计算机105可以输入来自其他传感器110的二维数据以生成变换后的数据并识别对象。例如,除了图像数据之外,还可以用激光雷达和/或雷达数据来训练机器学习程序,以输出传感器110的位移。因此,计算机105可以根据来自相机、激光雷达和/或雷达中的任一者的二维数据生成三维图像。
[0061]
图4是示例性机器学习程序400的图示。机器学习程序400可以是深度神经网络
(dnn)400,其可以被训练以识别车辆相机相对于中性位置的位移。例如,dnn 400可以是可以加载到存储器中并由包括在服务器130中的处理器执行的软件程序。dnn 400可以包括n个输入节点405,每个输入节点接受输入i的集合(即,输入i的每个集合可以包括一个或多个输入x)。dnn 400可以包括提供输出o1…
om的集合的m个输出节点(其中m和n可以是但通常不是相同的自然数)。dnn 400包括多个层(包括数目k个隐藏层),每个层包括一个或多个节点405。节点405有时被称为人工神经元405,因为它们被设计成仿真生物(例如,人类)神经元。神经元框410示出了到示例性人工神经元405i的输入以及在其中进行的处理。将到每个神经元405的一个集合的输入x1…
xr各自乘以相应权重w
i1
…wir
,然后在输入函数σ中对加权输入进行求和以提供可能按偏差bi进行了调整的净输入ai,然后将所述净输入提供给激活函数f,所述激活函数继而提供神经元405i输出yi。激活函数f可以是通常基于经验分析来选择的各种合适的函数。如图4中的箭头所示,接着可以提供神经元405的输出以将其包括在到下一层中的一个或多个神经元405的一个集合的输入中。
[0062]
可以训练dnn 400以接受例如来自相机的参考图像作为输入数据,并且输出用于识别位移的一个或多个参数。例如,可以训练dnn400以输出相机相对于中性位置的位移。
[0063]
也就是说,dnn 400可以用地面实况数据(即,关于现实世界状况或状态的数据)进行训练。例如,可以通过使用高斯分布初始化权重w,并且可以将每个节点405的偏差b设置为零。训练dnn 400可以包括经由常规技术(诸如反向传播)加以优化来更新权重和偏差。
[0064]
节点405的一个集合的权重w一起作为节点405的权重向量。dnn 400的同一层中的相应节点405的权重向量可以组合以形成层的权重矩阵。dnn 400的同一层中的相应节点405的偏差值b可以组合以形成层的偏差向量。然后可以在经训练的dnn 400中使用每个层的权重矩阵和每个层的偏差向量。
[0065]
在本上下文中,用于训练dnn 400的地面实况数据可以包括用生成每个图像的车辆相机的相应位移进行注解的图像数据。例如,传感器可以指定位移值收集多个图像,然后可标记所述图像以训练dnn 400,即,可以指定标签,从而识别图像中的位移。然后,可以训练dnn 400以输出与位移相关的数据值,并且可以将输出数据值与注解进行比较以识别差异,即,输出数据值和输入被注解图像的成本函数。可以调整权重w和偏差b以减小成本函数的输出,即,将输出数据值与输入被注解图像之间的差异最小化。当成本函数被最小化时,服务器125可以确定训练了dnn 400。
[0066]
图5是另一个示例性机器学习程序500的图示。机器学习程序500可以是梯度提升树(gbt)算法500。例如,gbt 500可以是可以加载到存储器中并由包括在服务器130中的处理器执行的软件程序。gbt 500可以包括布置在n树510中的一者中的节点505。每个树510定义残差函数hi(x),所述残差函数定义预测模型f的负梯度。也就是说,模型f是被调整以使参考输入数据x与期望的输出y相关的函数。每个节点505表示树510中的决策,在所述决策中将输入x与特定回归值进行比较。输入x基于特定回归值沿着树510随着路径向下以定义残差函数hi(x)。残差函数hi(x)输出每个树510的权重ai,然后将权重ai递归地应用于到残差函数hi(x)以更新模型f。当权重ai的变化下降到低于阈值(即,权重ai收敛)时,服务器125可以确定gbt 500被训练。
[0067]
可以在用捕获图像时车辆相机的位移和操作数据注释的参考图像上训练gbt 500。例如,车辆相机可以指定位移值并以指定机械应变和操作数据收集多个图像,然后可
标记所述图像以训练gbt 500,即,可以指定标签,从而识别图像中的位移、机械应变和操作数据。每个节点505可以是指定回归值(例如,特定操作数据的值、特定机械应变的值、特定位移的值等)的比较。然后可以训练gbt 500以输出与位移相关的数据值,并且可以将输出值与注解进行比较以识别差异。该差异可以用于识别然后被应用于残差函数hi(x)的权重ai。
[0068]
计算机105可以使用gbt 500来确定车辆相机的位移。计算机105可以在每个树510及其相应的残差函数hi(x)之后将图像输入到gbt 500。gbt 500可以输出包括位移的一组值y。因为gbt 500用机械应变和操作数据进行训练,所以残差函数hi(x)提供考虑了机械应变和操作数据的输出。
[0069]
图6是用于操作车辆101的传感器110的示例性过程600的图示。过程600在框605中开始,其中计算机105收集传感器总成200中的立体相机总成205的相机210、215的应变数据和一个或多个部件115的操作数据。如上所述,计算机105可以收集来自一个或多个应变传感器(例如,应变计(诸如光学应变计、机械应变计等)、应变螺栓、加速度计等)的应变数据。计算机105可以收集来自部件115的操作数据,即,描述车辆部件115的输出或状态中的至少一者的数据。例如,操作数据可以包括例如轮胎压力、悬架长度、轮速、制动压力等。另外,计算机105可以收集来自一个或多个imu传感器(例如,加速度计、陀螺仪、压力传感器、磁力计等)的加速度数据。
[0070]
接下来,在框610中,计算机105将应变数据和部件数据输入到机器学习程序以输出每个相机210、215的位移。如上所述,机器学习程序可为深度神经网络400或梯度提升树500。可以基于操作数据和每个相机210、215的相应应变数据来训练机器学习程序以输出相机210、215的位移。例如,可以训练机器学习程序接收轮胎压力数据作为输入并基于应变数据和轮胎压力数据输出位移。
[0071]
接下来,在框615中,计算机105根据每个相机210、215的位移识别相应的变换矩阵。如上所述,变换矩阵将在相机210、215中的一个的坐标系中收集的数据变换到车辆101的坐标系。变换矩阵将相机210收集的图像的每个像素变换到车辆101的坐标系以生成变换后的数据。
[0072]
接下来,在框620中,计算机105在变换后的数据中识别对象。如上所述,利用来自两个相机210、215的变换后的数据,计算机105可以使用常规的深度感知算法来识别三维对象。也就是说,计算机105可以利用深度感知算法和来自两个相机210、215的数据来确定从车辆101到对象的深度。
[0073]
接下来,在框625中,计算机105基于所识别的对象致动一个或多个部件115。如上所述,计算机105可以致动部件115以避免与所识别的对象发生碰撞。例如,计算机105可以致动推进装置、转向总成和/或制动器以避开所识别的对象。在另一个示例中,计算机105可以致动转向总成以使车辆101在道路标记之间移动。
[0074]
接下来,在框630中,计算机105确定是否继续过程600。例如,当所识别的对象不再在相机210、215的视野中时,计算机105可以确定继续过程600。如果计算机105确定继续,则过程600返回到框605。否则,过程600结束。
[0075]
本文所讨论的计算装置(包括计算机105)包括处理器和存储器,所述存储器通常各自包括能够由诸如上面标识的计算装置的一个或多个计算装置执行并用于执行上述过
程的框或步骤的指令。计算机可执行指令可由使用多种编程语言和/或技术创建的计算机程序来编译或解释,所述编程语言和/或技术包括但不限于单独或组合形式的java
tm
、c、c 、visual basic、java script、python、perl、html等。一般来说,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令并且执行这些指令,由此执行一个或多个过程,包括本文所描述的过程中的一者或多者。此类指令和其他数据可使用各种计算机可读介质来存储和传输。计算机105中的文件通常是存储在计算机可读介质(诸如存储介质、随机存取存储器等)上的数据的集合。
[0076]
计算机可读介质包括参与提供可以由计算机读取的数据(例如,指令)的任何介质。这种介质可采用许多形式,包括但不限于非易失性介质、易失性介质等。非易失性介质包括例如光盘或磁盘和其他持久性存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(dram)。计算机可读介质的常见形式包括例如软盘、软磁盘、硬盘、磁带、任何其他磁性介质、cd rom、dvd、任何其他光学介质、纸带、具有孔图案的任何其他物理介质、ram、prom、eprom、快闪eeprom、任何其他存储器芯片或盒式磁带、或计算机可从中读取的任何其他介质。
[0077]
关于本文所描述的介质、过程、系统、方法等,应当理解,尽管已经将此类过程等的步骤描述为按照某个有序序列发生,但是此类过程可以通过以不同于本文描述的顺序的顺序执行所描述的步骤来实践。还应当理解,可以同时执行某些步骤,可以添加其他步骤,或者可以省略本文描述的某些步骤。例如,在过程600中,可以省略步骤中的一者或多者,或者可以按与图6中示出的顺序不同的顺序执行所述步骤。换句话说,本文对系统和/或过程的描述是出于说明某些实施例的目的而提供的,而决不应将其理解为是对所公开的主题进行限制。
[0078]
因此,应理解,包括以上描述和附图以及所附权利要求的本公开意图为说明性的而非限制性的。在阅读了以上描述之后,除了所提供的示例之外的许多实施例和应用对于本领域技术人员而言将是明显的。本发明的范围不应参考以上描述来确定,而应参考所附的和/或基于此包括在非临时专利申请中的权利要求连同此类权利要求所赋予权利的等效物的全部范围来确定。设想并预期未来的发展将在本文讨论的技术中发生,并且所公开的系统和方法将结合到此类未来实施例中。总而言之,应当理解,所公开的主题能够进行修改和变化。
[0079]
除非另有说明或上下文另有要求,否则修饰名词的冠词“一个”应被理解为是指一个或多个。短语“基于”涵盖部分地或完全地基于。
[0080]
根据本发明,提供了一种系统,该系统具有计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由所述处理器执行以:将测量车辆相机上的机械应变的应变数据和车辆部件的操作数据输入到机器学习程序,所述操作数据描述所述车辆部件的输出或状态中的至少一者,所述机器学习程序基于所述应变数据和所述操作数据输出所述车辆相机相对于中性位置的位移;基于所述车辆相机的所述输出位移,识别将来自所述车辆相机的数据变换到处于所述中性位置的所述车辆相机的坐标系的变换矩阵;将所述变换矩阵应用于由所述车辆相机收集的数据以生成变换后的数据;以及基于所述变换后的数据来致动所述车辆部件或第二车辆部件中的一者。
[0081]
根据一个实施例,所述操作数据包括轮胎压力、悬架长度、轮速或制动压力中的至
少一者。
[0082]
根据一个实施例,所述指令还包括用于进行以下操作的指令:将包括车辆速度或车辆加速度中的至少一者的另外的数据输入到所述机器学习程序以输出所述车辆相机的所述位移。
[0083]
根据一个实施例,机器学习程序是深度神经网络或梯度提升树中的一者。
[0084]
根据一个实施例,所述车辆部件是多个车辆部件中的一者,并且所述指令还包括将来自所述多个车辆部件的所述应变数据和操作数据输入到所述机器学习程序以输出所述车辆相机的所述位移的指令。
[0085]
根据一个实施例,本发明的特征还在于应变传感器,所述应变传感器用于收集所述应变数据,其中所述应变传感器是应变计、加速度计或应变螺栓中的一者。
[0086]
根据一个实施例,所述车辆相机用所述应变螺栓固定到支座。
[0087]
根据一个实施例,变换矩阵基于车辆相机的焦距来变换来自车辆相机的数据。
[0088]
根据一个实施例,位移包括横向位移、纵向位移和竖直位移。
[0089]
根据一个实施例,所述指令还包括用于进行以下操作的指令:将所述操作数据和第二车辆相机的应变数据输入到所述机器学习程序、输出所述第二车辆相机的位移以及识别将来自所述第二车辆相机的数据变换到处于所述中性位置的所述第二车辆相机的坐标系的第二变换矩阵。
[0090]
根据一个实施例,所述指令还包括用于进行以下操作的指令:将所述第二变换矩阵应用于来自所述第二车辆相机的数据以生成第二变换后的数据并基于所述变换后的数据和所述第二变换后的数据生成三维图像。
[0091]
根据一个实施例,所述指令还包括用于在三维图像中识别对象的指令。
[0092]
根据一个实施例,所述指令还包括用于基于所述三维图像识别从所述车辆相机到所述对象的距离的指令。
[0093]
根据一个实施例,所述指令还包括用于将所述变换后的数据的相应像素与所述第二变换后的数据的对应像素组合以生成所述三维图像的指令。
[0094]
根据本发明,一种方法包括将测量车辆相机上的机械应变的应变数据和车辆部件的操作数据输入到机器学习程序,所述操作数据描述所述车辆部件的输出或状态中的至少一者,所述机器学习程序基于所述应变数据和所述操作数据输出所述车辆相机相对于中性位置的位移;基于所述车辆相机的所述输出位移,识别将来自所述车辆相机的数据变换到处于所述中性位置的所述车辆相机的坐标系的变换矩阵;将所述变换矩阵应用于由所述车辆相机收集的数据;以及基于所述变换后的数据来致动所述车辆部件或第二车辆部件中的一者。
[0095]
根据一个实施例,所述操作数据包括轮胎压力、悬架长度、轮速或制动压力中的至少一者。
[0096]
根据一个实施例,机器学习程序是深度神经网络或梯度提升树中的一者。
[0097]
根据一个实施例,本发明的特征还在于将所述操作数据和第二车辆相机的应变数据输入到所述机器学习程序、输出所述第二车辆相机的位移以及识别将来自所述第二车辆相机的数据变换到处于所述中性位置的所述第二车辆相机的坐标系的第二变换矩阵。
[0098]
根据一个实施例,本发明的特征还在于:将所述第二变换矩阵应用于来自所述第
二车辆相机的数据以生成第二变换后的数据并基于所述变换后的数据和所述第二变换后的数据生成三维图像。
[0099]
根据一个实施例,本发明的特征还在于将所述变换后的数据的相应像素与所述第二变换后的数据的对应像素组合以生成所述三维图像。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献