CN115023627A - 用于将世界点投影到滚动快门图像的高效算法 - Google Patents

用于将世界点投影到滚动快门图像的高效算法 Download PDF

Info

Publication number
CN115023627A
CN115023627A CN202080094918.0A CN202080094918A CN115023627A CN 115023627 A CN115023627 A CN 115023627A CN 202080094918 A CN202080094918 A CN 202080094918A CN 115023627 A CN115023627 A CN 115023627A
Authority
CN
China
Prior art keywords
environment
image
camera
estimated time
point
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
Application number
CN202080094918.0A
Other languages
English (en)
Inventor
S.赵
N.L.阿姆斯特朗-克鲁斯
V.格雷博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Waymo LLC
Original Assignee
Waymo LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Waymo LLC filed Critical Waymo LLC
Publication of CN115023627A publication Critical patent/CN115023627A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/481Constructional features, e.g. arrangements of optical elements
    • G01S7/4817Constructional features, e.g. arrangements of optical elements relating to scanning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/689Motion occurring during a rolling shutter mode
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/51Display arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Optical Radar Systems And Details Thereof (AREA)
  • Traffic Control Systems (AREA)

Abstract

提供了一种用于将来自环境的世界点(例如,由自主交通工具的LIDAR传感器生成的点)映射到拍摄的环境的滚动快门图像内的位置(例如,像素)的改进的高效方法。这种改进的方法允许经由在非常少的迭代中收敛的迭代过程在滚动快门图像中准确定位世界点。该方法将定位过程作为用于确定在图像的滚动快门曝光时段内相机对世界点成像的时间的迭代过程。该方法减少了世界点投影到相机图像的归一化空间中的次数,通常在三次或更少次迭代中收敛。

Description

用于将世界点投影到滚动快门图像的高效算法
通过引用而并入的文本文件
本申请通过引用整体并入了与即时提交的申请一起于2019年12月4日以电子方式提交的、名为“camera_model.txt”(大小为48446字节、创建于2019年12月4日)的ASCII格式文本文件的内容。
背景技术
有源传感器(诸如光检测和测距(LIDAR)传感器、无线电检测和测距(RADAR)传感器以及声音导航和测距(SONAR)传感器等)可以通过朝向环境发射信号并检测所发射信号的反射来扫描环境。无源传感器(诸如图像传感器(例如,相机)和麦克风等)可以检测源自环境中的源的信号。
示例LIDAR传感器可以确定距环境特征的距离,同时扫描通过场景以聚集指示反射表面的“点云”。例如,可以通过发送激光脉冲并检测从环境中的对象反射的返回脉冲(如果有的话)、然后根据发送脉冲与接收其反射之间的时间延迟确定距对象的距离,来确定点云中的单独的点。因此,可以生成指示环境中的反射特征的位置的点的三维地图。
示例图像传感器可以捕获图像传感器可见的场景的图像。例如,图像传感器可以包括互补金属氧化物半导体(CMOS)有源像素传感器或者其他类型的光传感器的阵列。每个CMOS传感器可以接收入射到阵列上的来自场景的一部分光。当CMOS传感器暴露于来自场景的光时,每个CMOS传感器然后可以输出对在曝光时间期间入射在CMOS传感器上的光量的测量值。利用这种布置,可以生成场景的图像,其中图像中的每个像素基于来自CMOS传感器的阵列的输出来指示一个或多个值(例如,颜色等)。
发明内容
在一个示例中,一种方法包括:(i)获得自主交通工具的环境中的点的指示;(ii)获得关于自主交通工具在环境内的位置和运动的信息;(iii)获得自主交通工具的一部分环境的图像,其中该图像包括多行像素,并且其中该图像由以滚动快门模式操作的相机生成,使得每行像素表示相机在相应曝光时间段期间感测到的光;以及(iv)将环境中的点映射到图像内的位置。将环境中的点映射到图像内的位置包括:(a)确定相机从环境中的点感测到光的初始估计时间T0;(b)确定N个更新的估计时间Ti,其中N≥1;以及(c)基于更新的估计时间TN确定图像内与环境中的点相对应的位置。每个更新的估计时间Ti通过更新过程来确定,该更新过程包括:(1)基于关于自主交通工具的位置和运动的信息确定相机在估计时间Ti-1的姿态,(2)基于相机在估计时间Ti-1的姿态将环境中的点投影到图像内的投影位置,(3)评估成本函数,该成本函数包括基于估计时间Ti-1的项和基于从投影位置到相机感测到在图像内投影位置处表示的光的时间的映射的项,以及(4)基于评估的成本函数确定更新的估计时间Ti
在另一示例中,一种其中存储有指令的非暂时性计算机可读介质,该指令可由计算设备执行以使得计算设备执行操作。操作包括:(i)获得自主交通工具的环境中的点的指示;(ii)获得关于自主交通工具在环境内的位置和运动的信息;(iii)获得自主交通工具的一部分环境的图像,其中该图像包括多行像素,并且其中该图像由以滚动快门模式操作的相机生成,使得每行像素表示相机在相应曝光时间段期间感测到的光;以及(iv)将环境中的点映射到图像内的位置。将环境中的点映射到图像内的位置包括:(a)确定相机从环境中的点感测到光的初始估计时间T0;(b)确定N个更新的估计时间Ti,其中N≥1;以及(c)基于更新的估计时间TN确定图像内与环境中的点相对应的位置。每个更新的估计时间Ti通过更新过程来确定,该更新过程包括:(1)基于关于自主交通工具的位置和运动的信息确定相机在估计时间Ti-1的姿态,(2)基于相机在估计时间Ti-1的姿态将环境中的点投影到图像内的投影位置,(3)评估成本函数,该成本函数包括基于估计时间Ti-1的项和基于从投影位置到相机感测到在图像内投影位置处表示的光的时间的映射的项,以及(4)基于评估的成本函数确定更新的估计时间Ti
在又一示例中,一种系统包括:(i)耦合到交通工具的光检测和测距(LIDAR)传感器;(ii)耦合到交通工具的相机,其中该相机被配置为获得指示交通工具的环境的图像数据;以及(iii)控制器,其中该控制器可操作地耦合到LIDAR传感器和相机。该控制器包括被配置为执行操作的一个或多个处理器,该操作包括:(a)操作LIDAR传感器以生成指示距交通工具的环境中的一个或多个对象的距离的多个LIDAR数据点;(b)基于多个LIDAR数据点中的至少一个LIDAR数据点生成环境中的点的指示;(c)以滚动快门模式操作相机以生成交通工具的一部分环境的图像,其中该图像包括多行像素,并且其中每行像素表示相机在相应曝光时间段期间感测到的光;(d)获得关于自主交通工具在环境内的位置和运动的信息;以及(e)将环境中的点映射到图像内的位置。将环境中的点映射到图像内的位置包括:(1)确定相机从环境中的点感测到光的初始估计时间T0;(2)确定N个更新的估计时间Ti,其中N≥1;以及(3)基于更新的估计时间TN确定图像内与环境中的点相对应的位置。每个更新的估计时间Ti通过更新过程来确定,该更新过程包括:(I)基于关于自主交通工具的位置和运动的信息确定相机在估计时间Ti-1的姿态,(II)基于相机在估计时间Ti-1的姿态将环境中的点投影到图像内的投影位置,(III)评估成本函数,该成本函数包括基于估计时间Ti-1的项和基于从投影位置到相机感测到在图像内投影位置处表示的光的时间的映射的项,以及(IV)基于评估的成本函数确定更新的估计时间Ti
通过适当参考附图阅读下面的详细描述,这些以及其他方面、优点和替代方案对于本领域普通技术人员来说将变得显而易见。此外,应当理解,在本发明内容部分和本文档的其他地方提供的描述旨在通过示例而非限制的方式来说明所要求保护的主题。
附图说明
图1是根据示例实施例的系统的简化框图。
图2A示出了根据示例实施例的包括旋转LIDAR传感器和滚动快门相机布置的设备。
图2B是图2A的滚动快门相机布置的横截面视图。
图2C是图2A的设备的操作的概念图示。
图2D示出了图2A的设备的俯视图。
图2E示出了图2A的设备的另一俯视图。
图3示出了根据示例实施例的另一滚动快门相机布置的横截面视图。
图4A示出了相机相对于环境中的点的运动。
图4B示出了图4A所示的点在图4A所示的由相机生成的图像上的投影。
图5是根据示例实施例的方法的流程图。
具体实施方式
本文描述了示例性实施方式。应当理解,本文使用“示例性”一词意味着“用作示例、实例或说明”。本文描述为“示例性”或“说明性”的任何实施方式或特征不一定被解释为比其他实施方式或特征更优选或更有利。在附图中,类似的符号通常标识类似的组件,除非上下文另有指示。本文描述的示例实施方式不意味着限制。将容易理解的是,如本文总体描述的和在附图中示出的本公开的方面可以以各种各样不同的配置来布置、替换、组合、分离和设计。
I.示例传感器
尽管本文描述的示例传感器包括LIDAR传感器和相机(或图像传感器),但是其他类型的传感器也是可能的。在不脱离本公开的范围的情况下,本文可以替代地采用的示例传感器的非穷尽列表包括RADAR传感器、SONAR传感器、声音传感器(例如,麦克风等)、运动传感器、温度传感器、压力传感器等。
为此,本文的示例传感器可以包括有源传感器,该有源传感器基于提供给传感器的调制功率来发射信号(例如,脉冲序列或任何其他调制信号),然后检测所发射信号从周围环境中的对象的反射。替代地或附加地,本文的示例传感器可以包括无源传感器(例如,相机、麦克风、天线、压力传感器等),无源传感器检测源自环境中的(多个)外部源的外部信号(例如,背景信号等)。
现在参考附图,图1是根据示例实施例的包括传感器(例如,同步传感器)的系统100的简化框图。如图所示,系统100包括电源布置102、控制器104、一个或多个传感器106、一个或多个传感器108、旋转平台110、一个或多个致动器112、静止平台114、旋转连杆(rotary link)116、外壳118和显示器140。
在其他实施例中,系统100可以包括更多、更少或不同的组件。此外,所示的组件可以以任何多种方式进行组合或划分。例如,(多个)传感器108可以被实施为单个物理组件(例如,相机环)。替代地,例如,(多个)传感器108可以被实施为分离的物理组件的布置。其他示例也是可能的。因此,图1的功能块仅是为了描述方便而示出的。在不脱离本公开的范围的情况下,其他示例组件、布置和/或配置也是可能的。
电源布置102可以被配置为向系统100的各种组件供应、接收和/或分配电力。为此,电源布置102可以包括电源(例如,电池等)或以其他方式采取电源(例如,电池等)的形式,电源(例如,电池等)被设置在系统100内并以任何可行方式连接到系统100的各种组件以便向这些组件供电。附加地或替代地,电源布置102可以包括电源适配器或以其他方式采取电源适配器的形式,电源适配器被配置为从一个或多个外部电源(例如,从安装有系统100的交通工具中布置的电源等)接收电力,并且将接收到的电力发送到系统100的各种组件。
控制器104可以包括被布置成便于系统100的某些操作的一个或多个电子组件和/或系统。控制器104可以以任何可行方式设置在系统100内。在一个实施例中,控制器104可以至少部分地设置在旋转连杆116的中央空腔区域内。在另一实施例中,控制器104的一个或多个功能可以替代地由各自布置在系统100的相应组件(例如,(多个)传感器106、108等)内的一个或多个物理分离的控制器来执行。
在一些示例中,控制器104可以包括或以其他方式耦合到用于将控制信号传递到系统100的各种组件和/或用于将数据从系统100的各种组件传递到控制器104的布线。通常,控制器104所接收的数据可以包括基于LIDAR106和/或(多个)相机108对光的检测的传感器数据等等。此外,由控制器104发送的控制信号可以操作系统100的各种组件,诸如通过控制(多个)传感器106(例如,LIDAR等)对光或其他信号的发射和/或检测,经由(例如,(多个)传感器108中包括的)相机控制图像像素捕获速率或时间,和/或控制(多个)致动器112以旋转旋转平台110,等等。
为此,在一些示例中,控制器104可以包括一个或多个处理器、数据存储装置和可由一个或多个处理器执行的(存储在数据存储装置中的)程序指令,以使得系统100执行本文描述的各种操作。在一些实例中,控制器104可以与外部控制器等(例如,布置在安装有系统100的交通工具、机器人或其他机械设备中的计算系统)进行通信,以便有助于在外部控制器与系统100的各种组件之间传递控制信号和/或数据。
附加地或替代地,在一些示例中,控制器104可以包括被连线以执行本文描述的各种功能的电路。附加地或替代地,在一些示例中,控制器104可以包括一个或多个专用处理器、伺服系统或其他类型的控制器。例如,控制器104可以包括比例积分微分(PID)控制器或其他控制回路反馈装置,其操作(多个)致动器112以根据特定频率或相位调节旋转平台110的旋转。其他示例也是可能的。
传感器106和108可以可选地包括扫描系统100的周围环境的一个或多个传感器,诸如LIDAR、相机、陀螺仪、加速度计、编码器、麦克风、RADAR、SONAR、温度计等。
(多个)传感器106可以包括被配置为通过发射信号并检测所发射信号的反射来扫描周围环境的任何设备。例如,(多个)传感器106可以包括任何类型的有源传感器。为此,如图所示,传感器106包括发送器120和接收器122。在一些实施方式中,传感器106还可以包括一个或多个光学元件124。
发送器120可以被配置为朝向系统100的环境发送信号。
在第一示例中,在传感器106被配置为LIDAR传感器的情况下,发送器120可以包括发射波长在波长范围内的一个或多个光束和/或脉冲的一个或多个光源(未示出)。取决于光源的配置,波长范围可以例如在电磁频谱的紫外部分、可见部分和/或红外部分。在一些示例中,波长范围可以是(诸如由激光器和/或一些发光二极管提供的)窄波长范围。在一些示例中,发送器120中的(多个)光源可以包括激光二极管、二极管条、发光二极管(LED)、垂直腔面发射激光器(VCSEL)、有机发光二极管(OLED)、聚合物发光二极管(PLED)、发光聚合物(LEP)、液晶显示器(LCD)、微机电系统(MEMS)、光纤激光器和/或被配置为选择性地发送、反射和/或发射光以提供多个所发射的光束和/或脉冲的任何其他设备。
在第二示例中,在传感器106被配置为有源红外(IR)相机的情况下,发送器120可以被配置为发射IR辐射来照亮场景。为此,发送器120可以包括被配置为提供IR辐射的任何类型的设备(例如,光源等)。
在第三示例中,在传感器106被配置为RADAR传感器的情况下,发送器120可以包括被配置为朝向系统100的环境发射调制射频(RF)信号的一个或多个天线。
在第四示例中,在传感器106被配置为SONAR传感器的情况下,发送器120可以包括被配置为朝向系统100的环境发射调制声音信号的一个或多个声学换能器,诸如压电换能器、磁致伸缩换能器、静电换能器等。在一些实施方式中,声学换能器可以被配置为发射特定波长范围(例如,次声、超声等)内的声音信号。其他示例也是可能的。
接收器122可以包括被配置为检测由发送器120发射的信号的反射的一个或多个检测器。
在第一示例中,在传感器106被配置为RADAR传感器的情况下,接收器122可以包括被配置为检测由发送器120发送的RF信号的反射的一个或多个天线。为此,在一些实施方式中,发送器120和接收器122的一个或多个天线可以在物理上被实施为相同的物理天线结构。
在第二示例中,在传感器106被配置为SONAR传感器的情况下,接收器122可以包括被配置为检测由发送器120发射的声音信号的反射的一个或多个声音传感器(例如,麦克风等)。为此,在一些实施方式中,发送器120和接收器122的一个或多个组件可以在物理上被实施为相同的物理结构(例如,相同的压电换能器元件)。
在第三示例中,在传感器106被配置为有源IR相机的情况下,接收器122可以包括被配置为检测由发送器120发送并从场景朝向接收器122反射的IR光的源波长的一个或多个光检测器(例如,有源像素传感器等)。
在第四示例中,在传感器106被配置为LIDAR传感器的情况下,接收器122可以包括被布置成拦截和检测由发送器120发射并且从系统100的周围环境中的一个或多个对象反射的光脉冲的反射的一个或多个光检测器(例如,光电二极管、雪崩光电二极管等)。为此,接收器122可以被配置为检测波长与由发送器120发射的光的波长范围相同的光。以这种方式,例如,传感器106(例如,LIDAR)可以将源自发送器120的反射光脉冲与源自环境中外部光源的其他光区分开。
在一些实例中,接收器122可以包括光电检测器阵列,光电检测器阵列可以包括各自被配置为将检测到的光(例如,在由发送器120发射的光的波长范围内)转换成指示检测到的光的电信号的一个或多个检测器。在实践中,这种光电检测器阵列可以以各种方式中的一种进行布置。例如,检测器可以设置在一个或多个基板(例如,印刷电路板(PCB)、柔性PCB等)上,并且被布置成检测入射光。此外,这种光电检测器阵列可以包括以任何可行方式对准的任何可行数量的检测器。此外,阵列中的检测器可以采取各种形式。例如,检测器可以采取光电二极管、雪崩光电二极管(例如,盖革(Geiger)模式和/或线性模式雪崩光电二极管)、硅光电倍增管(SiPM)、光电晶体管、相机、有源像素传感器(APS)、电荷耦合器件(CCD)、低温检测器和/或被配置为接收波长在发射光的波长范围内的聚焦光的任何其他光传感器的形式。
在一些实施方式中,(例如,LIDAR配置中的)传感器106可以通过改变LIDAR的旋转速率和/或调整由发送器120发射的光脉冲的脉冲速率来选择或调整水平扫描分辨率。作为具体示例,发送器120可以被配置为以每秒15650个光脉冲的脉冲速率发射光脉冲。在该示例中,LIDAR 106可以被配置为以10Hz旋转(即,每秒10次完整的360°旋转)。这样,接收器122可以以0.23°的水平角分辨率来检测光。此外,0.23°的水平角分辨率可以通过改变LIDAR 106的旋转速率或通过调整脉冲速率来调整。例如,如果LIDAR 106改为以20Hz旋转,则水平角分辨率可以变为0.46°。替代地,如果发送器120以每秒31300个光脉冲的速率发射光脉冲,同时维持10Hz的旋转速率,则水平角分辨率可以变为0.115°。其他示例也是可能的。此外,在一些示例中,LIDAR 106可以替代地被配置为在LIDAR 106的小于完整的360°旋转内扫描特定视野范围。
(多个)光学元件124可以可选地被包括在发送器120和/或接收器122中,或者以其他方式耦合到发送器120和/或接收器122。在一个示例中(例如,在传感器106包括LIDAR传感器的情况下),(多个)光学元件124可以被布置成将来自发送器120中的光源的光引导向环境。在另一示例中,(多个)光学元件124可以被布置成将来自环境的光聚焦和/或引导向接收器122。这样,(多个)光学元件124可以包括(多个)反射镜、(多个)波导、滤光器、(多个)镜头或被布置成引导光通过物理空间传播和/或调整某些光特性的任何其他光学组件的任何可行组合。例如,光学元件124可以包括滤光器,滤光器被布置成减少或防止波长在发送器120所发射的光的波长范围之外的光朝向接收器122传播。例如,利用这种布置,滤光器可以降低由于从被扫描的环境传播并且源自与发送器120的光源不同的外部光源的背景光而导致的噪声。
(多个)传感器108可以包括被配置为扫描周围环境的任何类型的传感器。如图所示,传感器108包括感测元件128的阵列。此外,如图所示,传感器108可以可选地包括一个或多个光学元件130。
在一些示例中,(多个)传感器108可以包括发送信号并检测其反射的有源传感器(例如,LIDAR、RADAR、SONAR等)。因此,尽管未示出,但是传感器108可以包括分别类似于发送器120和接收器122的发送器和接收器。在其他示例中,(多个)传感器108可以包括检测源自一个或多个外部源的外部信号的无源传感器(例如,麦克风、相机、图像传感器、温度计等)。
在第一示例中,在传感器108被配置为声音传感器的情况下,感测元件128可以包括麦克风阵列,每个麦克风检测入射在阵列中的相应麦克风上的声音(例如,外部信号)。
在第二示例中,在(多个)传感器108被配置为一个或多个相机的情况下,(多个)相机可以包括被配置为捕获系统100所处环境的图像的任何相机(例如,静态相机、摄像机等)。例如,传感器108的相机可以包括检测并提供指示图像的数据的任何成像设备。例如,感测元件128可以包括光感测元件的一个或多个布置,每个光感测元件提供对入射到其上的光的测量。为此,感测元件128可以包括电荷耦合器件(CCD)、有源像素传感器、互补金属氧化物半导体(CMOS)光电检测器、N型金属氧化物半导体(NMOS)光电检测器等等。
此外,在一些示例中,来自感测元件128的数据可以根据感测元件128的布置来组合以生成图像。在一个示例中,来自感测元件的二维(2D)阵列的数据可以对应于图像中的图像像素的2D阵列。在另一示例中,感测元件(例如,沿着曲面布置的感测元件)的3D布置可以类似地用于生成图像中的图像像素的2D阵列。其他示例也是可能的。
在一些示例中,感测元件可以可选地包括多个相邻的光检测器(或其他类型信号的检测器),其中每个检测器被配置为检测具有特定波长或波长范围的光(或其他信号)。例如,图像像素可以基于来自检测红光强度的第一检测器、检测绿光强度的第二检测器和检测蓝光强度的第三检测器的数据组合来指示颜色信息(例如,红绿蓝或RGB)。其他示例也是可能的。
在一个实施例中,(多个)传感器108可以被配置为检测从场景传播的可见光。此外,在该实施例中,传感器106的接收器122(例如,LIDAR接收器)可以被配置为检测由发送器120发射的光的波长范围内的不可见光(例如,红外光等)。在该实施例中,系统100(或控制器104)然后可以将来自传感器106(例如,LIDAR)的数据与来自传感器108(例如,相机)的数据进行组合,以生成被扫描环境的彩色三维(3D)表示(例如,点云)。
在一些示例中,(多个)传感器108可以包括围绕传感器106(例如,LIDAR)的旋转轴线以圆形布置设置的多个相机(例如,相机环)。例如,第一相机可以被布置成在传感器106围绕该轴线旋转时(或者在由发送器120发送的信号以其他方式被操控到围绕轴线的不同指向方向时),对环境的至少部分地与传感器106的指向方向的范围重叠的第一视场(FOV)进行成像。此外,与第一相机相邻和/或重叠的第二相机可以对与第一相机的第一FOV相邻的第二FOV进行成像,等等。以这种方式,例如,系统100可以被配置为在传感器106围绕该轴线旋转时,在与传感器106对环境的扫描的同时(和/或同步或根据一些其他定时)捕获相应FOV的图像序列。
在一些示例中,(多个)传感器108可以被配置为以滚动快门模式操作。
在第一示例中,在(多个)传感器108包括麦克风阵列的情况下,来自阵列中的麦克风的每个输出可以与相对应的感测元件(例如,麦克风)对入射在传感器108上的外部声音的相应暴露时间段相关联。
在第二示例中,在(多个)传感器108包括一个或多个相机的情况下,由(多个)相机输出的每个像素或每组像素可以与相对应的感测元件或感测元件组对外部光的相应曝光时间段相关联。举例来说,(多个)相机108可以一起提供感测元件128的相邻行的阵列。此外,(多个)相机108可以被配置为输出图像像素序列,该图像像素序列对应于阵列中相对应的感测元件对外部光的测量。例如,(多个)相机108可以基于来自阵列中第一行感测元件的数据来输出第一行图像像素,随后基于来自阵列中相邻的第二行感测元件的数据来输出第二行图像像素,等等。
以此方式,第一图像像素行可以与第一行感测元件暴露于光的第一曝光时间段相关联,第二图像像素行可以与相邻的第二行感测元件暴露于光的第二曝光时间段相关联,等等。第一曝光时间段可以在第二曝光时间段开始之前开始。例如,在从第一曝光时间段的开始时间起的时间延迟之后(并且可选地在第一曝光时间段过去之前),(多个)相机108可以开始曝光相邻的第二行感测元件。此外,第一曝光时间段可以在第二曝光时间段结束之前结束。例如,控制器104可以在第一曝光时间段结束之后并且在第二行感测元件仍然暴露于外部光的同时从第一行感测元件读取输出,然后在第二曝光时间段结束之后并且在第三行感测元件仍然暴露于外部光的同时从第二行感测元件读取输出,等等。
在一些示例中,在传感器106包括图像传感器的情况下,系统100可以被配置为基于发送器120发射光脉冲(或其他信号)的次序来选择在滚动快门模式下从感测元件128获得图像像素序列的次序。例如,感测元件128阵列中的给定行的感测元件可以与LIDAR(例如,传感器106)的旋转轴线对准(例如,平行等)。例如,如果LIDAR的旋转轴线是垂直轴线,则给定行可以对应于感测元件的垂直行(例如,与LIDAR的旋转轴线平行的垂直线性布置)。此外,发送器120可以被配置为在LIDAR(例如,传感器106)围绕该轴线旋转时,以一条或多条垂直线的布置重复地输出多个光束。这样,例如,(多个)传感器108(例如,(多个)相机)可以使用第一行感测元件来输出第一行图像像素,第一行感测元件与由发送器120发射的多个光束的布置类似地(例如,垂直地等)布置。接下来,(多个)相机108然后可以使用在LIDAR(或其他传感器106)的旋转方向上的相邻的第二行感测元件来输出第二行图像像素。因此,例如,第二行图像像素可以与在传感器106朝向第二行感测元件旋转之后由发送器120发射的光束的第二垂直线对准,等等。
例如,通过一个接一个地扫描感测元件的垂直行,从(多个)相机108获得的图像像素序列可以包括在与发送器120(例如,在发送器120围绕垂直轴线旋转时)发射的LIDAR光脉冲(或其他信号)的时间和方向类似的时间(并且从观察方向)捕获的足够数量的像素。然而,例如,如果(多个)相机(例如,(多个)传感器108)改为使用水平的第一行感测元件、随后是水平的第二行感测元件等来捕获图像像素序列,则可以在与LIDAR光脉冲的时间和方向类似的时间(并且从观察方向)捕获更少的图像像素。
(多个)光学元件130可以包括光学组件的任何组合,所述光学组件诸如为(多个)镜头、(多个)反射镜、(多个)波导、(多个)滤光器或类似于(多个)光学元件124的任何其他类型的光学组件。此外,光学元件130可以被布置成聚焦、引导和/或调整入射光的光特性,以朝向感测元件128进行传播。此外,例如,在(多个)传感器108包括多个相机的情况下,(多个)光学元件130可以包括将外部光聚焦到相机的相应图像传感器上的多个相应的相机镜头。
在一些示例中,(多个)光学元件130可以包括选择性地朝向传感器106的一个或多个特定感测元件发送特定波长的光的一个或多个滤光器。
在第一示例中,(多个)光学元件130可以包括使发送器120所发射的光的光波长衰减的一个或多个滤光器。利用这种布置,例如,系统100可以减少与由发送器120发射的高强度光脉冲(或其他信号)相关联的(由(多个)感测元件128进行的)噪声测量。
在第二示例中,(多个)传感器108可以包括被配置为指示入射光的颜色的颜色图像传感器(例如,拜耳滤波器传感器、分层像素传感器阵列等)。在该示例中,(多个)光学元件130可以包括滤色器(color filter)阵列,其中该阵列的每个滤色器将红色、绿色或蓝色光发送到与该滤色器相邻的特定感测元件(并且使其他波长的光衰减)。系统100然后可以(例如,通过组合来自感测具有不同颜色的光的多个感测元件的输出)生成指示颜色信息(例如,红色、绿色和蓝色等)的图像像素。
在第三示例中,(多个)光学元件130可以包括使发送器120所发射的光(或其他信号)的波长衰减的一个或多个滤光器,以及允许这些波长的传输的一个或多个其他滤光器。例如,(多个)光学元件130可以包括滤色器阵列,该滤色器阵列包括绿色滤光器、红色滤光器和蓝色滤光器。在该实例中,相对大数量的滤色器可以被配置为使发送器120的发射光的波长衰减,以减小由发送器120发射的高强度信号的效应。此外,相对较小数量的滤色器(例如,一个或多个绿色滤光器等)可以被配置为(至少部分地)允许由发送器120发射的光(或其他信号)的波长的传输。利用这种布置,发送器120的(从系统100的环境中的对象反射的)高强度光可以用于在黑暗的外部光条件下(例如,夜间)照亮一个或多个感测元件。
旋转平台110可以被配置为围绕轴线旋转。例如,传感器106(和/或其发送器120和接收器122)可以由旋转平台110(直接地或间接地)支撑,使得这些组件中的每一个响应于旋转平台110的旋转而相对于环境移动。具体地,这些组件中的每一个可以相对于轴线(同时)旋转,使得传感器106可以从各个方向获得信息。在一些示例中,旋转平台110的旋转轴线是垂直的,并且可以通过旋转平台110围绕其垂直旋转轴线的旋转来水平调整传感器106的指向方向。旋转平台110可以由适于支撑安装在其上的一个或多个组件(例如,传感器106)的任何固体材料形成。
为了以这种方式来旋转平台110,一个或多个致动器112可以致动旋转平台110。为此,致动器112可以包括马达、气动致动器、液压活塞和/或压电致动器等等。
利用这种布置,控制器104可以操作致动器112以各种方式旋转旋转平台110,以便获得关于环境的信息。在一个示例中,旋转平台110可以在任一方向上旋转。在另一示例中,旋转平台110可以执行完整的旋转,使得传感器106(例如,LIDAR)提供环境的360°水平FOV。此外,旋转平台110可以以各种频率旋转,以便使得传感器106以各种刷新率和/或扫描分辨率来扫描环境。
替代地或附加地,系统100可以被配置为以各种方式调整(由发送器120发射的)发射信号的指向方向。在一些示例中,发送器120的信号源(例如,光源、天线、声学换能器等)可以根据相控阵列配置或其他类型的波束操控配置来操作。
在第一示例中,在传感器106被配置为LIDAR传感器的情况下,发送器120中的光源可以耦合到控制由光源发射的光波的相位的相控阵列光学器件(例如,光学元件124)。例如,控制器104可以被配置为调整相控阵列光学器件(例如,相控阵列波束操控),以改变由发送器120发射的光信号的有效指向方向(例如,即使旋转平台110不旋转)。
在第二示例中,在传感器106被配置为RADAR传感器的情况下,发送器120可以包括天线阵列,并且控制器104可以为阵列中的每个单独的天线提供相应的相移控制信号,以修改来自阵列(例如,相控阵列波束操控)的组合RF信号的指向方向。
在第三示例中,在传感器106被配置为SONAR传感器的情况下,发送器120可以包括声学换能器阵列,并且控制器104可以类似地(例如,经由相移控制信号等)操作声学换能器阵列以实现由阵列发射的组合声音信号的目标指向方向(例如,即使旋转平台110不旋转等)。
在其他示例中,可以使用可响应于来自控制器104的控制信号而变形的变形柔性结构(例如,MEMS等)来控制(多个)传感器106的指向方向,以调整由发送器120发射的信号的操控方向。其他示例也是可能的。
静止平台114可以采取任何形状或形式,并且可以被配置用于耦合到各种结构,诸如耦合到例如交通工具的顶部。此外,静止平台114的耦合可以经由任何可行的连接器布置(例如,螺栓和/或螺钉)来执行。以这种方式,系统100可以耦合到结构,以便用于各种目的,诸如本文描述的那些目的。在一个示例中,(多个)传感器108可以耦合到静止平台114。在该示例中,(多个)传感器108可以相对于(多个)传感器106的旋转运动保持静止(或者以其他方式改变由发送器120发射的信号的波束方向)。在另一示例中,(多个)传感器108可以被安装到不同于静止平台114的另一物理结构。
旋转连杆116直接地或间接地将静止平台114耦合到旋转平台110。为此,旋转连杆116可以采取提供旋转平台110相对于静止平台114围绕轴线旋转的任何形状、形式和材料。在一些示例中,旋转连杆116可以采取基于来自致动器112的致动而旋转的轴等的形式,从而将机械力从致动器112传递到旋转平台110。在一个实施方式中,旋转连杆116可以具有中央空腔,系统100的一个或多个组件可以设置在该中央空腔中。在一些示例中,旋转连杆116还可以提供用于在静止平台114与旋转平台110(和/或其上的组件,诸如(多个)传感器106等)之间传递数据和/或指令的通信链路。
外壳118可以采取任何形状、形式和材料,并且可以被配置为容纳系统100的一个或多个组件。在一个示例中,外壳118可以是圆顶形外壳。此外,在一些示例中,外壳118可以由至少部分不透明的材料构成,这可以允许阻挡至少一些光进入外壳118的内部空间,从而有助于减轻环境光对系统100的一个或多个组件的热效应和噪声效应。外壳118的其他配置也是可能的。在一些实施方式中,外壳118可以耦合到旋转平台110,使得外壳118被配置为基于旋转平台110的旋转而围绕上述轴线旋转。在这种实施方式中,(多个)传感器106可以与外壳118一起旋转。在其他实施方式中,当(多个)传感器106在外壳118内旋转的同时,外壳118可以保持静止。系统100还可以包括用于容纳系统100的某些子系统或组件组合的、类似于外壳118的多个外壳。例如,系统100可以包括用于(多个)传感器106的第一外壳和用于(多个)传感器108的分离的外壳。其他示例也是可能的。
显示器140可以可选地被包括在系统100中,以显示关于系统100的一个或多个组件的信息。例如,控制器104可以操作显示器140来显示使用相机(例如,传感器108)捕获的图像、由来自传感器106的LIDAR数据指示的系统100的环境的表示(例如,3D点云等)、和/或基于来自传感器106和108的数据的组合的环境的表示(例如,彩色点云、具有叠加的温度指示器的图像等)。为此,显示器140可以包括任何类型的显示器(例如,液晶显示器、LED显示器、阴极射线管显示器、投影仪等)。此外,在一些示例中,显示器140可以具有图形用户界面(GUI),用于显示由传感器108捕获的图像、使用传感器106捕获的LIDAR数据和/或关于系统100的各种组件的任何其他信息(例如,经由电源布置102剩余的电力)和/或与之交互。例如,用户可以操纵GUI来调整传感器106和/或108的扫描配置(例如,扫描刷新率、扫描分辨率等)。
注意,系统100的各种组件可以组合或分离成多种不同的布置。例如,尽管传感器106和108被示为分离的组件,但是传感器106和108的一个或多个组件可以替代地在物理上在单个设备内实施。因此,系统100的这种布置仅出于示例性目的而被描述,并不意味着是限制性的。
图2A示出了根据示例实施例的包括旋转LIDAR传感器206和相机环208的设备200。如图所示,设备200包括LIDAR 206、相机环208(例如,滚动快门相机的布置等)、旋转平台210、静止平台214、外壳218、LIDAR镜头224和相机镜头230、232、234,例如,它们可以分别类似于(多个)传感器106、(多个)传感器108、旋转平台110、静止平台114、外壳118、光学元件124和光学元件130。
如图所示,由LIDAR 206发射的光束250从镜头224沿着LIDAR 206的指向方向朝向LIDAR 206的环境传播,并且作为反射光260被环境中的一个或多个对象(未示出)反射。此外,如图所示,LIDAR 206然后可以(例如,通过镜头224)接收反射光290。因此,例如,类似于以上对于传感器106的讨论,LIDAR 206可以基于反射光290的(多个)检测来提供指示一个或多个对象与LIDAR 206之间的距离的数据(例如,数据点云等)。
此外,如图所示,相机环208的每个相机可以接收和检测入射在相应相机上的外部光270的相应部分。为此,外部光270可以包括源自一个或多个外部光源(诸如太阳、路灯等等)的光。例如,外部光270可以包括直接从外部光源朝向相机镜头230、232和/或234传播的光。替代地或附加地,外部光270可以包括源自外部光源并且在朝向镜头230、232和/或234传播之前被设备200的环境中的一个或多个对象(未示出)反射的光。因此,例如,相机环208的相机可以基于外部光270生成环境的一个或多个图像。此外,由特定相机生成的每个图像可以对应于该特定相机相对于设备200的特定FOV。
为此,在一些示例中,相机环208可以包括相对于彼此布置成环形形式(例如,圆形布置、椭圆形布置等)的多个相机。多个相机中的每个相机可以以特定的角度和/或方位来定位(例如,安装到设备200和/或相机环208)。因此,例如,第一相机的FOV可以与两个其他相邻相机的FOV相邻和/或部分重叠。例如,利用这种布置,来自单独的相机的图像可以被组合成设备200的360度FOV的图像。此外,例如,在设备200的组装或校准期间,可以调整每个相机的相应的角度和/或方位,以减少或防止盲点(例如,周围环境的不在相机环208中的任何相机的FOV内的区域)。例如,两个相邻相机的相应FOV可以(例如,通过移动、旋转和/或以其他方式调整两个相机的相对安装位置等)被对准,使得两个相机的FOV之间的环境的区域(例如,“盲点”)小于距设备200的阈值距离。
为了促进这一点,在一个实施方式中,相机环208可以可选地包括具有一个或多个凹口的外壳(例如,环形的等),这种凹口在特定的相应安装位置(例如,角度、方位等)收纳和/或支撑相机。在另一实施方式中,示例系统(例如,系统100、校准系统等)可以被配置为比较由相机捕获的图像,并且基于该比较来确定实现相应相机的相应目标FOV的对准偏移。该示例系统还可以包括和/或操作机械臂、致动器和/或任何其他对准装置,以根据所确定的对准偏移来调整相机环208中的相机的位置。其他示例也是可能的。
在一些示例中,设备200(或与其耦合的另一计算设备)可以操作相机环208的相机和/或处理从其捕获的图像(例如,组合所捕获的图像的部分等)以形成设备200的环境的内聚的圆形视觉。例如,设备200或另一设备的计算系统(未示出)可以匹配由相机环208捕获的图像中的特征,以生成跨越相机的FOV的组合的组合图像。
在一个实施方式中,镜头230可以聚焦来自设备200的第一90度FOV的光,镜头232可以聚焦来自相邻的第二90度FOV的光,等等。第一FOV可以可选地与第一FOV部分重叠。在其他实施方式中,由每个相机成像的FOV可以大于或小于90度。此外,与上面的讨论一致,由相机环208中的任何相机捕获的图像可以指示各种类型的信息,诸如外部光270中不同波长(例如,颜色等)的光强度等等。
在一些示例中,LIDAR 206(和/或外壳218)可以被配置为具有基本上圆柱形的形状,并且基于例如支撑LIDAR 206的旋转平台210的旋转而围绕轴线242旋转。此外,在一些示例中,旋转轴线242可以是基本上垂直的。因此,例如,通过围绕轴线242旋转LIDAR 206,设备200(和/或操作设备200的计算系统)可以基于来自LIDAR 206的数据来确定设备200的环境的360度视野的三维地图。附加地或替代地,在一些示例中,设备200可以被配置为倾斜旋转平台210的旋转轴线(相对于静止平台214),从而调整LIDAR 206的FOV。例如,旋转平台210可以包括在一个或多个方向上倾斜的倾斜平台。
在一些示例中,如图所示,LIDAR镜头224可以具有光焦度,以便既朝向LIDAR 206的环境准直(和/或引导)所发射的光束250,又将从环境接收的反射光260聚焦到LIDAR 206的LIDAR接收器(未示出)上。在一个示例中,镜头224具有大约120mm的焦距。其他示例焦距也是可能的。通过使用相同的镜头224(而不是用于准直的发送镜头和用于聚焦的接收镜头)来执行这两种功能,可以提供关于大小、成本和/或复杂性的优点。然而,替代地,LIDAR206可以包括分离的发送镜头和接收镜头。因此,尽管未示出,但是LIDAR 206可以替代地包括将发射光250引导向环境的发送镜头,以及聚焦反射光260以供LIDAR 206的接收器检测的分离的接收镜头。
注意,设备200可以包括比所示出的更多、更少或不同的组件,并且所示出的一个或多个组件可以以不同的方式组合或分离。在一个示例中,代替多个相机镜头230、232、234,设备200可以替代地包括围绕相机环208的圆周延伸的单个相机镜头。在另一示例中,尽管相机环208被示为耦合到静止平台214,但是相机环208可以替代地被实施为分离的物理结构。在又一示例中,相机环208可以位于LIDAR 206上方,而不被旋转平台214旋转。在又一示例中,相机环208可以包括比所示更多或更少的相机。其他示例也是可能的。
图2B示出了根据示例实施例的相机环208的横截面视图。在图2B的横截面视图中,轴线242(即,LIDAR 206的旋转轴线)延伸穿过页面。如图所示,相机环208包括围绕旋转轴线242布置的四个相机208a、208b、208c、208d。因此,在所示的示例中,每个相机可以被配置为对设备200的环境的相应90度FOV进行成像。然而,在其他实施例中,相机环208可以包括比所示更少或更多的相机。在一个特定实施例中,相机环208可以替代地包括八个相机,其中每个相机耦合到相应的镜头,该镜头将来自环境的(至少)相应的45度FOV的光聚焦到相机的图像传感器上。其他示例是可能的。因此,相机环208可以具有各种各样不同的配置,因此所示的配置包括四个相机只是为了描述方便。
此外,如图所示,相机208a包括将来自设备200的环境的外部光(例如,光270)的第一部分聚焦到相机208a的图像传感器226上的镜头230。此外,如图所示,相机208b包括将外部光的第二部分聚焦到相机232的图像传感器246上的镜头232。类似地,相机208c和208d可以被配置为将外部光的相应部分聚焦到相机的相应图像传感器上。
此外,如图所示,每个图像传感器可以包括例如类似于感测元件128的感测元件阵列。例如,相机208a的图像传感器226可以包括由感测元件228a-228f(例如,其可以类似于感测元件128)例示出的感测元件的相邻行的阵列。举例来说,图像传感器226中的第一行感测元件可以包括感测元件228a和穿过页面垂直布置(例如,平行于轴线242)的一个或多个其他感测元件(未示出)。此外,与第一行相邻的第二行感测元件可以包括感测元件228b和穿过页面垂直布置的一个或多个其它感测元件(未示出),等等。
以这种方式,例如,相机208a、208b、208c、208d可以一起提供围绕轴线242布置的感测元件的相邻行的阵列,以便能够对围绕设备200的360度(水平)FOV的各个相对应的部分进行成像。例如,相机204b的图像传感器246中的给定行的感测元件可以包括感测元件248a(以及穿过页面平行于轴线242而布置的一个或多个其他传感器)。此外,在该实例中,相机208b中的给定行的感测元件也可以与相机208a中包括感测元件228f的一行感测元件相邻。因此,在示例场景中,从相机环208获得的图像像素序列可以包括使用来自包括感测元件228f的一行感测元件的数据而获得的一行图像像素,随后是使用来自包括感测元件248a的一行感测元件的数据而获得的一行图像像素。
注意,每个图像传感器(例如,传感器226、246等)中的感测元件的行数仅是为了描述方便而示出的。然而,在一些实施例中,图像传感器226(和/或246)可以包括比所示更多或更少行的感测元件。在一个特定实施例中,图像传感器226可以替代地包括3000行感测元件,并且每行可以包括1000个感测元件(穿过页面延伸)。在该实施例中,相机208a因此可以被配置为输出3000×1000像素的图像。此外,在该实施例中,相机208a可以被配置为以60Hz的速率捕获图像。其他相机配置参数也是可能的。
注意,设备200的各种组件的大小、形状和位置不一定按比例绘制,而是仅出于描述方便的目的而示出。在一个示例中,图2B中所示的镜头230、232、234、236和传感器226、246等的大小可以不同于所示的大小。在另一示例中,镜头230与图像传感器226之间的距离可以不同于所示的距离。在一个实施例中,从镜头230到传感器226的距离可以对应于镜头230的直径的大约两倍。然而,在其他实施例中,图像传感器226和相机镜头230可以具有其他大小、形状和/或相对于彼此的位置。
图2C是根据示例实施例的设备200的操作的概念图示。在图2C的图示中,相机208a的图像传感器226的感测元件在页面的平面中。注意,为了描述方便,从图2C的图示中省略了设备200的一些组件,诸如相机镜头230和LIDAR 206。
在一些实施方式中,设备200可以被配置为以滚动快门配置来操作相机208a、208b、208c和/或208d,以获得图像像素序列。例如,在图2C的场景中,包括感测元件228a和228g的第一行感测元件可以被配置为测量在第一曝光时间段期间入射到其上的外部光的量。设备200还可以包括模数转换器(未示出),模数转换器读取并转换第一行感测元件的测量值(在第一曝光时间段过去之后)以传输到设备200的控制器(例如,控制器104)。在从第一曝光时间段的开始时间起的时间延迟之后(并且可选地在第一曝光时间段结束之前),设备200可以开始曝光包括感测元件228b和228h的第二行感测元件达第二曝光时间段。因此,在一些示例中,多行感测元件的曝光时间段可以部分重叠(例如,第一曝光时间段和第二曝光时间段的开始时间之间的时间延迟可以小于第一曝光时间段等)。以这种方式,滚动快门配置中的相机可以错开曝光时间段的开始时间,以增加图像刷新率(例如,通过在它们相应的曝光时间段的重叠部分期间同时曝光多行感测元件)。
继续该场景,在第二曝光时间段过去之后,设备200然后可以类似地测量第二行感测元件的测量值并且将其发送到控制器。然后可以重复这个过程,直到所有行的感测元件(即,完整的图像帧)都被扫描。例如,在第二曝光时间段的开始时间之后(并且可选地在第二曝光时间段过去之前),设备200可以开始将(与第二行相邻的)第三行感测元件暴露于外部光270,等等。
此外,如上所述,设备200可以被配置为以与LIDAR 206发射光脉冲的次序类似的次序获得图像像素序列。通过这样做,例如,与以不同的次序获得图像像素序列的实施方式相比,由相机208a-d捕获的更多图像像素可以与LIDAR数据(例如,发射光脉冲的检测到的反射)(在时间和观察方向上都)重叠。
继续图2C的场景,例如,当LIDAR 206处于围绕轴线242的第一指向方向或方位时,光束250a、250b、250c可以对应于图2A中所示的发射光250。在该场景中,设备200可以被配置为在扫描第二(垂直)行中的感测元件(例如,包括元件228b和228h)之前,扫描第一(垂直)行的感测元件(例如,包括元件228a和228g)。通过这样做,使用第一行感测元件捕获的图像像素更有可能在时间和观察方向方面都与光束250a-250c的检测到的反射相匹配。在该场景中,LIDAR 206然后可以围绕轴线242旋转(例如,逆时针)并且发射光束252a-252c。然后,设备200可以使用第二行感测元件(例如,包括感测元件228b和228h)获得第二行图像像素,第二行图像像素更有可能与光束252a-252c的检测到的反射(在时间和观察方向上都)对准,等等。
在一些实施方式中,设备200还可以被配置为根据LIDAR 206发射光脉冲/光束的次序来获得序列中的一行图像像素。作为上述场景的变型,例如,如果LIDAR 206以该次序发射光束250a、250b、250c,则设备200可以被配置为以类似的次序(例如,以感测元件228a开始,以感测元件228g结束)获得与第一行感测元件相关联的图像像素行。然而,例如,如果LIDAR 206以该次序发射光束250c、250b、250a,则设备200可以改为被配置为以相反的次序获得图像像素行(例如,以感测元件228g开始,以感测元件228a结束)。
此外,在一些实施方式中,设备200可以被配置为基于LIDAR 206的旋转速率来调整捕获图像像素序列中的后续图像像素行之间的时间延迟。例如,如果LIDAR 206(例如,经由(多个)致动器112等)增加其旋转速率,则设备200可以减少获得与第一行感测元件(例如,包括感测元件228a和228g)相关联的第一行图像像素与获得与相邻的第二行感测元件相关联的第二行图像像素之间的时间延迟。如上所述,例如,与每行感测元件相关联的曝光开始时间可以取决于获得相对应的图像像素的次序和时间,因此调整时间延迟可以提高匹配图像像素捕获时间(和观察方向)与相对应的LIDAR脉冲发射时间(和/或相对应的反射的检测)的程度。
图2D示出了设备200的俯视图。在图2D的图示中,LIDAR 206可以具有与围绕轴线242的0°角位置相对应的第一指向方向(例如,朝向页面的底部)。例如,在这种配置中,LIDAR 206可以扫描与使用相机208c(包括镜头234)(在图2B中最佳示出)捕获的图像的中心相对应的周围环境的区域。
图2E示出了设备200的另一俯视图。在图2E的图示中,LIDAR 206可以具有与围绕轴线242的180°角位置相对应的第二指向方向(例如,朝向页面的顶部)。例如,在LIDAR 206从图2D的第一指向方向围绕轴线242旋转半整圈之后,LIDAR 206可以具有图2E的第二指向方向。此外,在该配置中,例如,LIDAR 206可以扫描与使用相机208a(包括镜头230)(在图2B中最佳示出)捕获的图像的中心相对应的环境的区域。
在一些场景中,当LIDAR 206围绕轴线242旋转时,LIDAR 206的FOV与相机208a的FOV重叠的时间段可能小于适于使用相机208a捕获图像的曝光时间段(和读出时间段)。
在一个示例场景中,在相机208a在滚动快门配置中操作(例如,相机208a中的多行感测元件根据不同的曝光开始时间而曝光)的情况下,相机208a的图像传感器226可以在60ms的时段内测量并输出图像帧(即,来自图像传感器226的所有感测元件的像素数据)。此外,在该场景中,LIDAR206可以被配置为以10Hz的旋转速率旋转(即,每100ms围绕轴线242一整圈)。因此,LIDAR 206可以在100ms/4=25ms的时间段内(例如,从t=37.5ms到t=62.5ms)扫描与相机208a的FOV重叠的FOV范围。为了解决相机和LIDAR的扫描持续时间之间的差异,在一些实施方式中,设备200可以被配置为将由LIDAR 206发射的LIDAR光脉冲与相机中的一些而非所有图像感测元件所捕获的图像像素同步。
例如,设备200可以被配置为触发特定相机捕获图像,使得当LIDAR 206指向与图像的特定区域对准的特定指向方向时,图像的该特定区域(例如,图像中心处或附近的(多个)垂直行的图像像素等)暴露于外部光。
继续上面的场景,例如(在LIDAR 206以10Hz的频率旋转的情况下),在时间t=0ms,LIDAR 206(如图2D所示)可以具有第一指向方向(例如,围绕轴线242的角位置=0°)。此外,在时间t=50ms,LIDAR 206(如图2E所示)可以具有第二指向方向(例如,围绕轴线242的角位置=180°)。
在该场景中,设备200可以被配置为将(相机208a内部的)图像传感器226的曝光时间段的中心和LIDAR 206的FOV与相机208a的FOV的中心重叠的时间(例如,t=50ms)同步。例如,在图像传感器226的曝光时间段是60ms的情况下,那么在时间t=30ms,图像传感器226中的中心垂直行的感测元件可以暴露于外部光。在该示例中,相机208a可以在时间t=50–30=20ms触发图像捕获,以将图像传感器226的中心附近的(多个)垂直行的感测元件的曝光与当LIDAR 206正在扫描对应于图像的中心的FOV时(例如,在t=50ms)所发射的LIDAR光脉冲(在时域和空域上都)进行对准。
利用这种布置,图像的中心附近的图像像素(例如,使用包括感测元件228c的垂直行或包括感测元件228d的行捕获的)可能与当测量这些图像像素时所发射/检测的LIDAR光脉冲相对地更对准(相对于定时和观察方向)。另一方面,使用远离图像传感器的中心的多行感测元件所捕获的图像像素可能与当测量这些图像像素时所发射/检测的LIDAR光脉冲相对地失准(在时间或观察方向上)。举例来说,旋转LIDAR的FOV可以在时间t=37.5ms与t=62.5ms之间与相机208a的相机FOV重叠。然而,在上述场景中,相机208a可以在时间t=20ms(即,在LIDAR的FOV与相机的FOV重叠的时间范围之外)开始曝光包括感测元件228a(在图2C中最佳示出)的一行感测元件。
为了减轻这种失准,在一些示例中,相机208a、208b、208c、208d可以被配置为具有部分重叠的FOV。例如,相机208d(在图2B中最佳示出)可以被配置为具有与相邻相机208a的FOV部分重叠的FOV。此外,与使用相机208d捕获的图像的中心区域相关联的曝光时间段可以与LIDAR 206指向与使用相机208d捕获的图像的中心相关联的FOV的时间(例如,t=25ms)同步。因此,在这些示例中,设备200(或其他计算机)可以使用来自相机208d的对准的图像像素数据(例如,所捕获的图像的中心附近的图像像素)而不是使用相机208a捕获的失准的图像像素数据(例如,离图像的中心更远的图像像素)来与LIDAR数据进行映射。
图3示出了根据示例实施例的另一滚动快门相机布置308(例如,相机环)的横截面视图。相机环308可以类似于图2B所示的相机环208。如图所示,例如,轴线342可以是与轴线242类似的LIDAR的旋转轴线。此外,例如,图像传感器326可以类似于图像传感器226(和/或246),并且可以包括由感测元件328a-328e例示的、可类似于感测元件228a-228f的感测元件阵列。例如,图像传感器326可以包括第一行感测元件和相邻的第二行感测元件,第一行感测元件包括线性布置(例如,垂直于页面)的感测元件328a和一个或多个其他感测元件(未示出),相邻的第二行感测元件包括线性布置(例如,垂直于页面)的感测元件328b和一个或多个其他感测元件(未示出)。
尽管未示出,相机环308还可以包括将入射在相机环308上的外部光的部分朝向图像传感器326中的相应感测元件聚焦的一个或多个相机镜头(例如,类似于相机镜头230、232、234、236等)。附加地或替代地,相机环308可以包括在系统100和/或设备200的任何一个中示出的一个或多个组件。
如图所示,相机环308包括沿着围绕轴线342的曲面(例如,圆形表面)设置的图像传感器326。在一个示例中,图像传感器326可以在安装了感测元件(包括感测元件328a-328e等)布置的柔性基板(例如,柔性PCB等)上实施。因此,利用这种布置,图像传感器326中的每一行感测元件可以处于距旋转轴线342相同的给定距离处(例如,感测元件的圆形或圆柱形布置)。在另一示例中,图像传感器326可以被实施为围绕旋转轴线342彼此相邻布置的物理分离的多行感测元件。例如,物理分离的每行感测元件可以位于与其他行相同的距旋转轴线的给定距离处。其他示例是可能的。不管实施方式如何,在相机环308的配置中,其上安装有图像传感器326中的每行感测元件的曲面可以改善由感测元件捕获的图像像素与由围绕轴线342旋转的LIDAR传感器发射的光束之间的重叠(例如,在观察方向方面)。
例如,当LIDAR传感器围绕轴线342旋转时,LIDAR设备的视点(例如,LIDAR镜头的位置)可以沿圆形路径移动。因此,利用这种布置,图像传感器326的曲面可以类似于所发射/检测的LIDAR光脉冲的圆形路径,以提高由传感器326收集的图像像素与LIDAR光脉冲(其是沿着LIDAR传感器旋转的水平方向上的类似弯曲路径检测的)匹配的可能性。
II.点到滚动快门图像中的示例映射
在各种应用中,将环境中的一个或多个点(例如,由自主交通工具的LIDAR传感器相对于自主交通工具检测到的点)映射到一部分环境的图像内的(多个)位置(例如,单独的像素)可能是有益的。可以这样做以便生成关于环境的形状、组成、内容或其他属性的信息,以促进在环境中导航、清点环境的内容、操纵环境的内容或者促进其他目标。例如,图像可以用于识别环境的内容(例如,以识别感兴趣的对象)。在这种示例中,将环境中检测到的点(例如,LIDAR点云的点)映射到图像内表示所识别的内容的位置可以允许确定所识别的内容在环境内的位置。
这种用于将环境中的点定位到一部分环境的图像中的位置的方法可以是传感器融合算法的一部分。可以采用传感器融合算法来合并来自多个传感器(诸如例如图像传感器和LIDAR传感器)的数据,以生成被扫描的环境的表示。例如,被扫描的环境的3D表示可以指示与使用LIDAR传感器确定的其他信息(例如,距离、深度、强度、纹理、反射光脉冲长度等)组合的使用图像传感器确定的颜色信息。
可以采用各种方法将环境中的点映射到环境的图像内的位置。这些方法通常使用关于生成图像的相机的环境内的位置和方位或“姿态”的信息。在相机处于相对于环境的运动中的示例中(例如,在相机是汽车、无人驾驶飞行器或一些其他自主的或以其他方式配置的交通工具的一部分的情况下),期望确定在相机生成图像的特定时间段相机在环境内的姿态。
图4A示出了环境中的示例点410(例如,作为通过LIDAR传感器的操作生成的点云的一部分的点)。相机也存在于环境中,并且可操作来对一部分环境(例如,包含示例点410的部分)进行成像。相机处于运动中(运动方向在图4A中由标有“运动”的箭头指示)。在图4A中,由第一相机420a、第二相机420b和第三相机420c示出了相机在第一时间点、第二时间点和第三时间点的位置。
在图4A中,在每个时间点从相机到示例点410的方向由虚线箭头示出。由于相机处于运动中,所以相对于相机的方位的从相机到示例点410的方向随着时间而改变。相应地,示例点410在由相机拍摄的环境图像内的位置将取决于相机生成图像的时间和/或相机生成表示从示例点410处的环境内容接收的光的图像部分的时间。
图4B是图4A所示的运动中的相机的图像传感器426的感测元件428a-h(例如,CMOS光敏元件、CCD传感器的像素)的概念图示。相机的镜头、光圈和/或其他元件将从环境接收的光从不同轨迹投影到图像传感器426上的相应不同位置。相应地,示例点410将在由相机生成的图像内被表示在取决于相机何时感测到来自示例点410的光的位置处。因此,例如,如果相机420a通过在第一时间点感测来自示例点410的光来生成图像,则示例点410将被映射到图像内的第一位置415a(例如,第一像素)。在另一示例中,如果相机420a通过在第二时间点感测来自示例点410的光来生成图像,则示例点410将被映射到图像内的第二位置415b(例如,第二像素)。在又一示例中,如果相机420c通过在第三时间点感测来自示例点410的光来生成图像,则示例点410将被映射到图像内的第三位置415c(例如,第三像素)。
在相机根据“全局快门”模式而行动或以其他方式操作以基本上同时(例如,在单个曝光时段期间)生成整个图像的示例中,在图像帧内定位环境中的点(例如,410)可能相对简单。例如,可以确定当生成图像时相机在(多个)时间点上相对于点的位置和方位,并且将其用于将点投影到图像中。
然而,当在相应的不同时间点生成图像的不同部分时,例如,如果相机以“滚动快门”模式操作,则将点投影到图像中的过程可能更加复杂。在这种操作模式中,每行或每列像素(或相机的其他光敏元件)在相应的不同曝光时间期间操作,以感测来自环境的光。
例如,包括感测元件428a和428g的第一行感测元件可以被配置为测量在第一曝光时间段期间入射到其上的外部光的量。相机还可以包括模数转换器(未示出),模数转换器读取并转换第一行感测元件的测量值(在第一曝光时间段过去之后)以传输到控制器(例如,控制器104)。在从第一曝光时间段的开始时间起的时间延迟之后(并且可选地在第一曝光时间段结束之前),相机可以开始曝光包括感测元件528b和528h的第二行感测元件达第二曝光时间段。
因此,以这种方式生成的图像的不同部分(例如,像素行/列)表示相机在相应的不同时间段期间感测到的光。相应地,在图像的每个部分(行/列)的采集期间,图像采集期间相机的运动将导致相机相对于环境具有不同的姿态。因此,为了将来自环境的点(例如,410)投影到图像内的位置,可能有必要确定使用多个不同姿态中的哪一个。
各种方法可以执行这种投影和/或姿态选择。在一些示例中,可以为每个曝光时间(例如,为每行和/或每列)确定相机姿态,并且将其用于将点投影到图像内相应的潜在位置。基于多个投影,可以选择特定的一个投影作为该点到图像中的估计投影。例如,对于每个潜在位置,可以确定姿态用于生成投影的时间与相机在图像内的投影位置对行/列成像的时间之间的差异。在这种示例中,可以选择与最低幅度差异相对应的投影作为该点到图像中的估计投影。
然而,这种方法包括确定大量相机姿态和使用这些姿态将点投影到图像帧中。这可能在计算上是昂贵的(例如,在处理器周期、内存使用、数据总线使用方面)、在能量上是昂贵的(例如,在用于计算姿态、投影或其他计算的系统能量方面)、在用于生成输出的时间方面是昂贵的、或者以其他方式是不利的。相应地,这种强力方法在诸如自主交通工具映射、定位和/或导航应用之类的应用(这些应用相对于功率、计算资源、时延/时间预算、或者其他因素受到约束)和/或这种映射必须针对大量点(例如,针对由LIDAR传感器生成的点云中的每个点)来执行的应用中可能是不期望的或不可行的。
本文描述的方法允许在一部分环境的图像内对位于环境内相对应的点(例如,来自LIDAR点云的点)的位置进行低成本、低时延的确定。这些方法通过将位置估计问题作为时间估计问题来实现这些改进。具体地,这些方法在生成该点将被投影到其中的环境的图像时,估计相机感测到来自环境中该点的光的时间(例如,滚动快门图像的行/列的特定曝光时间)。
通过将该问题作为一个时间估计问题,可以迭代地应用该方法。可以为每个时间估计确定成本函数,并且将其用于(例如,基于成本函数的幅度和/或符号、成本函数的残差的幅度和/或符号)更新时间估计。这种成本函数可以包括与估计时间相关的第一项(例如,等于相对于参考时间定义的估计时间的第一项)和基于从环境中的点的图像内的投影位置到相机感测到在图像内投影位置处表示的光的时间的映射的第二项之间的差。该第二项可以通过例如以下来确定:(i)使用在估计时间的确定的相机姿态将环境中的点投影到由相机拍摄的图像内的位置,以及(ii)确定相机从环境感测到在图像内的投影位置的光的时间(例如,投影位置处的像素行/列被曝光的时间)。
在实践中,估计的收敛发生在相对较少的迭代中(例如,两到三次迭代),从而导致相对少的姿态外推/内插、点投影或其他计算昂贵的任务的执行。相应地,在与替代(例如,强力)方法相比时,这些方法允许使用相对较少的计算资源、功率和/或时间将环境中的点投影到一部分环境的图像内的相对应的位置。
可以相对于不同的参考时间/时期来定义与估计时间和与相机感测到在图像内投影位置处表示的光的时间相关的项相关的成本函数项。例如,与估计时间相关的第一项可以基于相对于相机的锚定姿态的时间而定义的估计时间,并且与相机感测到在图像内投影位置处表示的光的时间相关的第二项可以基于图像捕获的特性时间(例如,一系列滚动快门曝光时间的第一曝光时间、中间曝光时间或结束曝光时间的定时,图像内主要点的曝光定时)。在这种示例中,成本函数可以包括与成本函数的第一项和第二项的时间参考之间的差之间的偏移相关的附加项。
这种成本函数的一个示例是:
th-IndexToTime(Zn(th))+toffset
th是相对于用于确定在给定估计时间的相机姿态的锚定姿态的时间tpose来定义的、来自环境中的点(例如,410)的光被成像以生成环境图像的相对应的部分的估计时间。Zn(th)是当使用在估计时间th估计的相机姿态时环境中的点的位置被投影到的图像内的位置。函数IndexToTime()将滚动快门图像的帧内的位置作为输入,并且输出相对于图像的特性时间tprincipal_point的、输入位置处的像素行或列所表示的光被感测到的时间(例如,像素行/列的曝光时间)。偏移项toffset表示th和IndexToTime()的不同零点时间/时期之间的时间差。因此,在该示例中,toffset可以是等于tpose-tprincipal_point的静态值。
IndexToTime()可以提供不连续的输出,例如,作为与相机的滚动快门操作的曝光时间集合相对应的列举的输出时间集合之一的输出时间。替代地,IndexToTime()可以提供连续的输出,例如,表示与相机的滚动快门操作的曝光时间集合相对应的列举的输出时间集合的线性化版本的线性化时间。
为了确定估计时间,确定初始估计时间,并且迭代地应用成本函数来生成输出估计时间。这可以包括执行迭代过程设置的次数,例如,在2次和4次之间(包括2次和4次)。替代地,可以(例如,与阈值相比)评估从一次迭代到下一次迭代的成本函数的绝对或相对(例如,相对于最近估计时间的幅度)减少,并且将其用于确定估计时间是否已经收敛。这种基于阈值的更新过程可以被约束为发生不超过设置的阈值次数,例如,更新过程可以由于成本函数收敛(例如,成本函数已经减少的幅度小于阈值量)或者由于更新过程已经执行了阈值次数而终止。一旦迭代过程已经终止,输出估计时间就可以用于确定环境中的点在图像内的投影位置。这可以通过重复迭代时间估计过程中采用的一些过程(例如,使用输出估计时间来确定相机在输出时间的姿态,以及使用所确定的姿态来将环境中的点投影到图像内的位置)来进行。
基于成本函数更新估计时间可以包括将成本函数的输出(例如,通过评估成本函数而确定的残差)应用于估计时间,以便更新估计时间。成本函数的输出可以被直接应用,或者可以被归一化。例如,在应用成本函数的输出来更新估计时间之前,可以使用成本函数相对于估计时间的雅可比矩阵(Jacobian)来归一化成本函数的输出。可以使用成本函数的一个项或多个项的导数和/或通过数值估计的过程来解析地确定这种雅可比矩阵。
可以以各种方式计算当使用在估计时间th估计的相机姿态时环境中的点的位置被投影到的图像内的位置(上面的示例成本函数中的Zn(th))。例如,Zn(t)可以是图像帧内的归一化位置。这种计算的示例是:
Figure BDA0003769440580000281
Figure BDA0003769440580000282
Figure BDA0003769440580000283
是相机在时间t的姿态,
Figure BDA0003769440580000284
是环境中要投影到图像中的点,proj(x,y)将点x投影到姿态的视图的帧中是环境中要被投影到图像中的点,并且proj(x,Y)将点x投影到姿态Y的视图的帧中。
可以根据一个或多个锚定姿态和相应的一个或多个时间点来确定相机在特定时间的姿态。可以基于全球定位数据、磁力计数据、图像数据、车轮旋转数据、LIDAR数据或与相机的位置相关的一些其他信息来确定锚定姿态。这种姿态数据可以针对交通工具整体被确定,然后被转换(例如,通过应用偏移平移和旋转)以得出相机的姿态。在一些示例中,在已知锚定姿态的时间足够接近期望相机姿态的时间的情况下,锚定姿态可以不加修改地被应用。然而,为了提高准确性,可以将锚定姿态外推和/或内插到感兴趣的时间。例如,相机在特定时间t的姿态
Figure BDA0003769440580000285
可以通过从相机在不同时间tpose的已知锚定姿态进行的内插的过程来确定。这种计算的示例是:
Figure BDA0003769440580000286
Figure BDA0003769440580000287
是在锚定姿态时间tpose的相机的姿态信息,该姿态信息包括相机的位置和方位以及关于相机的运动的信息,例如相机的平移速度和/或旋转速度。这种外推可以用各种方式来执行。这种外推的示例是:
Figure BDA0003769440580000291
Figure BDA0003769440580000292
Figure BDA0003769440580000293
是相机在锚定姿态时间tpose的方位,
Figure BDA0003769440580000294
是相机在tpose的位置,
Figure BDA0003769440580000295
是相机在tpose的平移速度,
Figure BDA0003769440580000296
是相机在tpose的旋转速度。在一些示例中,仅基于相机的平移速度来外推姿态可能就足够了,例如,在相机的旋转速度是相对较低幅度的示例中。
附加地或替代地,特定时间的相机姿态可以通过内插在相应的不同已知时间点的多个不同的已知相机姿态来确定。这可以包括两个已知姿态(例如,分别与在期望内插姿态的时间之前和之后的相应时间相对应的两个已知姿态)之间的线性内插、使用多于两个姿态的非线性内插、或者一些其他内插过程。
在一些示例中,所确定和/或检测的环境中的点的位置可以随时间而移动。例如,该点可以是环境中运动对象的检测位置,并且也可以检测平移速度、旋转速度或关于运动对象的其他运动信息。在这种示例中,本文描述的实施例可以被修改以考虑点在环境内随时间的运动。例如,
Figure BDA0003769440580000297
可以表示点在环境中随时间的位置(作为时间t的函数)。这个时间相关的
Figure BDA0003769440580000298
可以代替如上所述的示例实施例中的静态的
Figure BDA0003769440580000299
这种时间相关的位置可以以各种方式来确定,例如,通过从在单个检测时间检测到的点的位置和速度外推该点的位置(例如,基于在时间tdetect检测到的点的位置
Figure BDA00037694405800002910
和速度
Figure BDA00037694405800002911
),通过在两个不同时间检测到的两个不同位置之间内插该点的位置,或者通过使用一些其他方法来估计该点在环境中作为时间的函数的位置。
III.示例方法和计算机可读介质
图5是根据示例实施例的方法500的流程图。方法500呈现了可以与例如系统100、设备200和/或相机环308中的任何一个一起使用的方法的实施例。方法500可以包括如框502-514中的一个或多个框所示的一个或多个操作、功能或动作。尽管这些框是以顺序的次序示出的,但是在一些实例中,这些框可以并行执行,和/或以与本文描述的次序不同的次序执行。此外,基于期望的实施方式,各种框可以被组合成更少的框、被划分成附加的框和/或被移除。
此外,对于方法500和本文公开的其他过程和方法,流程图示出了当前实施例的一个可能实施方式的功能和操作。在这点上,每个框可以表示模块、片段、制造或操作过程的一部分、或程序代码的一部分,其包括可由处理器执行以实施过程中的特定逻辑功能或步骤的一个或多个指令。程序代码可以被存储在任何类型的计算机可读介质上,例如,诸如包括磁盘或硬盘驱动器的存储设备。计算机可读介质可以包括非暂时性计算机可读介质,例如,诸如短期存储数据的计算机可读介质,像寄存器存储器、处理器高速缓存和随机存取存储器(RAM)。计算机可读介质还可以包括非暂时性介质,诸如二级或永久长期存储装置,例如像只读存储器(ROM)、光盘或磁盘、光盘只读存储器(CD-ROM)。计算机可读介质也可以是任何其他易失性或非易失性存储系统。例如,计算机可读介质可以被认为是计算机可读存储介质,或者有形存储设备。此外,对于方法400和本文公开的其他过程和方法,图4中的每个框可以表示被连线以执行过程中的特定逻辑功能的电路。
在框502,方法500涉及获得自主交通工具的环境中的点的指示。例如,LIDAR传感器206可以被操作以生成与关于LIDAR传感器206的环境中的一个或多个对象的位置、形状、大小或其他信息相关的多个LIDAR点,并且可以根据一个或多个LIDAR点确定环境中的点的指示。
在框504,方法500涉及获得关于自主交通工具在环境内的位置和运动的信息。例如,来自GPS、GLONASS或其他导航定位接收器的信息、LIDAR数据、车轮速率/旋转数据、来自一个或多个加速度计和/或陀螺仪的惯性数据、来自磁力计的磁场数据、来自一个或多个相机的关于环境的图像数据、或者与自主交通工具的位置相关的其他信息可以用于生成关于自主交通工具在环境内的位置和运动的信息。这可以包括执行传感器融合、将滤光器(例如,卡尔曼滤光器)应用于自主交通工具的运动/位置的估计、或者确定自主交通工具在环境内的位置和运动的准确估计的其他过程。
在框506,方法500涉及获得自主交通工具的一部分环境的图像。该图像包括多行像素。该图像由以滚动快门模式操作的相机生成,使得每行像素表示相机在相应曝光时间段期间感测到的光。
在框508,方法500涉及将环境中的点映射到图像内的位置。将环境中的点映射到图像内的位置涉及在框510确定相机从环境中的点感测到光的初始估计时间T0。这可以包括根据图像的生成的特性时间(例如,滚动快门过程开始或结束的时间、图像的“中间”像素集合被曝光的时间)来设置初始估计时间。将环境中的点映射到图像内的位置还涉及在框512确定N个更新的估计时间,其中N≥1。将环境中的点映射到图像内的位置还涉及在框514基于更新的估计时间TN确定图像内与环境中的点相对应的位置。
确定N个更新的估计时间涉及通过更新过程来确定每个更新的估计时间Ti,该更新过程包括在框513a基于关于自主交通工具的位置和运动的信息来确定相机在估计时间Ti-1的姿态。该更新过程另外包括在框513b基于相机在估计时间Ti-1的姿态将环境中的点投影到图像内的投影位置。这可以包括通过在自主交通工具的所获得的位置和运动与自主交通工具的一个或多个附加位置和运动之间进行内插,将自主交通工具的所获得的位置和运动外推到估计时间,或者通过执行一些附加或替代过程,来确定相机在估计时间Ti-1的姿态。
更新过程还包括在框513c评估成本函数,该成本函数包括(i)基于估计时间Ti-1的项,以及(ii)基于从投影位置到相机感测到在图像内投影位置处表示的光的时间的映射的项。这些项可以相对于相同或不同的“零点”时间或时期来定义。例如,可以相对于关于自主交通工具的位置和运动的信息的时间来定义基于估计时间的项,并且可以相对于图像的生成的特性时间(例如,滚动快门过程开始或结束的时间,图像的“中间”像素集合被曝光的时间)来定义基于从投影位置到相机感测到在图像内投影位置处表示的光的时间的映射的项。在相对于不同的“零点”时间或时期来定义这些项的这些示例中,成本函数可以另外包括偏移项来补偿这些差异。
更新过程还包括在框513d基于评估的成本函数确定更新的估计时间Ti。更新过程可以被执行预定次数,例如两次、三次或四次。替代地,更新过程可以包括执行更新过程,直到时间估计收敛,例如,直到从一个更新到下一个更新,时间估计的幅度的绝对改变或相对改变小于指定的阈值水平。
在一些实施方式中,方法500涉及基于位置数据(例如,来自LIDAR传感器的数据)和来自图像的图像信息(例如,图像的一个或多个像素)来确定环境的三维(3D)表示。例如,示例系统可以将基于LIDAR的信息(例如,距环境中的一个或多个对象的距离等)与基于相机的信息(例如,颜色等)进行组合,以生成3D表示。基于位置和图像数据的组合的其他类型的表示(例如,2D图像、具有标签的图像、指示阴影或纹理信息的增强图像等)是可能的。因此,在一些实施方式中,方法500涉及基于由图像指示的颜色信息和由例如LIDAR传感器指示的点位置信息(例如,距离、深度、纹理、反射率、吸收率、反射光脉冲长度等)来确定环境的表示。
在第一示例中,方法400的系统可以基于环境中的点来确定图像中的一个或多个图像像素的深度信息。例如,系统可以为图像中的图像像素分配深度值。另外,例如,系统可以(例如,经由显示器140)生成环境中的一个或多个对象的3D对象数据模型(例如,3D渲染)(例如,指示环境中的3D特征的彩色3D模型等)。在另一实例中,图像处理系统可以通过比较相应对象的(由环境中的点的相关联位置指示的)深度信息来识别和区分图像中的多个对象。其他应用是可能的。因此,在一些实施方式中,方法500涉及将使用LIDAR传感器收集的LIDAR数据点映射到使用一个或多个相机收集的图像像素。例如,LIDAR数据可以被映射到由图像传感器或相机输出的图像的坐标系。
在第二示例中,方法500的系统可以(基于来自一个或多个相机的数据)将颜色分配给环境中的点或环境中的其他已知点(例如,分配给LIDAR点云中的单独的点)。示例系统然后可以(例如,经由显示器140)生成被扫描环境的3D渲染,该3D渲染指示距环境中的特征的距离以及由一个或多个相机的(多个)图像传感器指示的颜色(例如,彩色点云等)信息。因此,在一些实施方式中,方法500涉及将来自图像的图像像素映射到相对应的LIDAR或以其他方式生成的位置数据点。例如,图像像素数据可以被映射到由LIDAR传感器输出的LIDAR数据的坐标系。
方法500可以包括附加的或替代的元素。例如,500可以包括基于交通工具的环境中的点到图像内的位置(例如,像素)的映射来操作自动交通工具(例如,操控交通工具,致动交通工具的节气门,控制一个或多个车轮的扭矩和/或旋转输出、马达、发动机或交通工具的其他元件)。这可以包括使用映射来识别和/或定位一个或多个对象或环境的其他内容。附加地或替代地,这可以包括使用映射来确定导航计划和/或确定用于操作自主交通工具的命令。
IV.结论
附图中所示的特定布置不应被视为限制性的。应当理解,其他实施方式可以包括给定附图中所示的更多或更少的每种元件。此外,一些示出的元件可以被组合或省略。此外,示例性实施方式可以包括图中未示出的元件。此外,虽然本文已经公开了各个方面和实施方式,但是其他方面和实施方式对于本领域技术人员来说将是显而易见的。本文公开的各个方面和实施方式是为了说明的目的,而不是为了限制,其真实的范围和精神由所附权利要求指示。在不脱离本文呈现的主题的精神或范围的情况下,可以利用其他实施方式,并且可以进行其他改变。将容易理解的是,如本文总体描述的和在附图中示出的,本公开的方面可以以各种各样不同的配置来布置、替换、组合、分离和设计。
V.示例实施方式
Figure BDA0003769440580000331
Figure BDA0003769440580000341
Figure BDA0003769440580000351
Figure BDA0003769440580000361
Figure BDA0003769440580000371
Figure BDA0003769440580000381
Figure BDA0003769440580000391
Figure BDA0003769440580000401
Figure BDA0003769440580000411
Figure BDA0003769440580000421
Figure BDA0003769440580000431
Figure BDA0003769440580000441
Figure BDA0003769440580000451
Figure BDA0003769440580000461
Figure BDA0003769440580000471
Figure BDA0003769440580000481
Figure BDA0003769440580000491
Figure BDA0003769440580000501
Figure BDA0003769440580000511
Figure BDA0003769440580000521
Figure BDA0003769440580000531
Figure BDA0003769440580000541
Figure BDA0003769440580000551
Figure BDA0003769440580000561
Figure BDA0003769440580000571
Figure BDA0003769440580000581
Figure BDA0003769440580000591
Figure BDA0003769440580000601
Figure BDA0003769440580000611
Figure BDA0003769440580000621
Figure BDA0003769440580000631
Figure BDA0003769440580000641
Figure BDA0003769440580000651
Figure BDA0003769440580000661
Figure BDA0003769440580000671
Figure BDA0003769440580000681
Figure BDA0003769440580000691
Figure BDA0003769440580000701

Claims (20)

1.一种方法,包括:
获得自主交通工具的环境中的点的指示;
获得关于所述自主交通工具在所述环境内的位置和运动的信息;
获得所述自主交通工具的一部分环境的图像,其中,所述图像包括多行像素,并且其中,所述图像是由以滚动快门模式操作的相机生成的,使得每行像素表示所述相机在相应曝光时间段期间感测到的光;以及
通过以下操作将所述环境中的点映射到所述图像内的位置:
确定所述相机从所述环境中的点感测到光的初始估计时间T0
确定N个更新的估计时间,其中,N≥1,并且其中,每个更新的估计时间Ti通过更新过程来确定,所述更新过程包括:
基于关于所述自主交通工具的位置和运动的信息确定所述相机在估计时间Ti-1的姿态,
基于所述相机在估计时间Ti-1的姿态将所述环境中的点投影到所述图像内的投影位置,
评估成本函数,所述成本函数包括(i)基于估计时间Ti-1的项,以及(ii)基于从所述投影位置到所述相机感测到在所述图像内所述投影位置处表示的光的时间的映射的项,以及
基于评估的成本函数确定更新的估计时间Ti;以及
基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置。
2.根据权利要求1所述的方法,还包括:
基于所述图像内所确定的位置操作所述自主交通工具在所述环境内导航。
3.根据权利要求1所述的方法,其中,获得所述自主交通工具的环境中的点的指示包括:
操作所述自主交通工具的光检测和测距(LIDAR)传感器以生成指示距所述交通工具的环境中的一个或多个对象的距离的多个LIDAR数据点;以及
基于所述多个LIDAR数据点中的至少一个LIDAR数据点生成所述环境中的点的指示。
4.根据权利要求1所述的方法,其中,基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置包括识别所述图像内与所述环境中的点相对应的特定像素。
5.根据权利要求4所述的方法,还包括:
基于所述环境中的点的指示确定所述环境中的点的深度值;以及
将所述深度值分配给所述特定像素。
6.根据权利要求1所述的方法,还包括:
基于所述图像识别出在所述环境中存在特征,其中,所述特征至少部分地由特定像素在所述图像内表示。
7.根据权利要求1所述的方法,还包括:
通过评估的成本函数的雅可比矩阵对评估的成本函数进行归一化,其中,基于评估的成本函数确定更新的估计时间Ti包括基于经归一化的评估的成本函数确定更新的估计时间Ti
8.根据权利要求1所述的方法,其中,获得关于所述自主交通工具在所述环境内的位置和运动的信息包括获得关于所述自主交通工具在第一时间点的第一位置和所述自主交通工具在第二时间点的第二位置的信息,并且其中,确定所述相机在估计时间的姿态包括将关于所述自主交通工具在至少两个不同时间点的位置的信息内插到估计时间。
9.根据权利要求1所述的方法,其中,获得关于所述自主交通工具在所述环境内的位置和运动的信息包括获得关于所述自主交通工具在特定时间点的位置和平移速度的信息,并且其中,确定所述相机在估计时间Ti-1的姿态包括将关于所述自主交通工具在所述特定时间点的位置和平移速度的信息外推到估计时间Ti-1
10.根据权利要求1所述的方法,其中,所述更新过程另外包括确定更新的估计时间Ti与估计时间Ti-1相差是否小于阈值量,其中,响应于以下至少一项,基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置:(i)确定更新的估计时间TN与估计时间TN-1相差小于阈值量,或者(ii)确定所述更新过程已经执行了阈值次数。
11.一种其中存储有指令的非暂时性计算机可读介质,所述指令可由计算设备执行以使得所述计算设备执行操作,其中,所述操作包括:
获得自主交通工具的环境中的点的指示;
获得关于所述自主交通工具在所述环境内的位置和运动的信息;
获得所述自主交通工具的一部分环境的图像,其中,所述图像包括多行像素,并且其中,所述图像是由以滚动快门模式操作的相机生成的,使得每行像素表示所述相机在相应曝光时间段期间感测到的光;以及
通过以下操作将所述环境中的点映射到所述图像内的位置:
确定所述相机从所述环境中的点感测到光的初始估计时间T0
确定N个更新的估计时间,其中,N≥1,并且其中,每个更新的估计时间Ti通过更新过程来确定,所述更新过程包括:
基于关于所述自主交通工具的位置和运动的信息确定所述相机在估计时间Ti-1的姿态,
基于所述相机在估计时间Ti-1的姿态将所述环境中的点投影到所述图像内的投影位置,
评估成本函数,所述成本函数包括:(i)基于估计时间Ti-1的项,以及(ii)基于从所述投影位置到相机感测到在所述图像内所述投影位置处表示的光的时间的映射的项,以及
基于评估的成本函数确定更新的估计时间Ti;以及
基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置。
12.根据权利要求11所述的非暂时性计算机可读介质,其中,所述操作还包括:
基于所述图像内所确定的位置操作所述自主交通工具在所述环境内导航。
13.根据权利要求11所述的非暂时性计算机可读介质,其中,基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置包括识别所述图像内与所述环境中的点相对应的特定像素。
14.根据权利要求13所述的非暂时性计算机可读介质,其中,所述操作还包括:
基于所述环境中的点的指示确定所述环境中的点的深度值;以及
将所述深度值分配给所述特定像素。
15.根据权利要求11所述的非暂时性计算机可读介质,其中,获得关于所述自主交通工具在所述环境内的位置和运动的信息包括获得关于所述自主交通工具在特定时间点的位置和平移速度的信息,并且其中,确定所述相机在估计时间Ti-1的姿态包括将关于所述自主交通工具在所述特定时间点的位置和平移速度的信息外推到估计时间Ti-1
16.一种系统,包括:
光检测和测距(LIDAR)传感器,耦合到交通工具;
相机,耦合到所述交通工具,其中,所述相机被配置为获得指示所述交通工具的环境的图像数据;以及
控制器,其中,所述控制器可操作地耦合到所述LIDAR传感器和所述相机,并且其中,所述控制器包括被配置为执行操作的一个或多个处理器,所述操作包括:
操作所述LIDAR传感器以生成指示距所述交通工具的环境中的一个或多个对象的距离的多个LIDAR数据点;
基于所述多个LIDAR数据点中的至少一个LIDAR数据点生成所述环境中的点的指示;
以滚动快门模式操作所述相机以生成所述交通工具的一部分环境的图像,其中,所述图像包括多行像素,并且其中,每行像素表示所述相机在相应曝光时间段期间感测到的光;
获得关于所述自主交通工具在所述环境内的位置和运动的信息;以及
通过以下操作将所述环境中的点映射到所述图像内的位置:
确定所述相机从所述环境中的点感测到光的初始估计时间T0
确定N个更新的估计时间,其中,N≥1,并且其中,每个更新的估计时间Ti通过更新过程来确定,所述更新过程包括:
基于关于所述自主交通工具的位置和运动的信息确定所述相机在估计时间Ti-1的姿态,
基于所述相机在估计时间Ti-1的姿态将所述环境中的点投影到所述图像内的投影位置,
评估成本函数,所述成本函数包括(i)基于估计时间Ti-1的项,以及(ii)基于从所述投影位置到所述相机感测到在所述图像内所述投影位置处表示的光的时间的映射的项,以及
基于评估的成本函数确定更新的估计时间Ti;以及
基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置。
17.根据权利要求16所述的系统,其中,所述操作还包括:
基于所述图像内所确定的位置操作所述自主交通工具在所述环境内导航。
18.根据权利要求16所述的系统,其中,基于更新的估计时间TN确定所述图像内与所述环境中的点相对应的位置包括识别所述图像内与所述环境中的点相对应的特定像素。
19.根据权利要求18所述的系统,其中,所述操作还包括:
基于所述环境中的点的指示确定所述环境中的点的深度值;以及
将所述深度值分配给所述特定像素。
20.根据权利要求16所述的系统,其中,获得关于所述自主交通工具在所述环境内的位置和运动的信息包括获得关于所述自主交通工具在特定时间点的位置和平移速度的信息,并且其中,确定所述相机在估计时间Ti-1的姿态包括将关于所述自主交通工具在所述特定时间点的位置和平移速度的信息外推到估计时间Ti-1
CN202080094918.0A 2019-12-04 2020-11-25 用于将世界点投影到滚动快门图像的高效算法 Pending CN115023627A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962943688P 2019-12-04 2019-12-04
US62/943,688 2019-12-04
PCT/US2020/062365 WO2021113147A1 (en) 2019-12-04 2020-11-25 Efficient algorithm for projecting world points to a rolling shutter image

Publications (1)

Publication Number Publication Date
CN115023627A true CN115023627A (zh) 2022-09-06

Family

ID=76221003

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080094918.0A Pending CN115023627A (zh) 2019-12-04 2020-11-25 用于将世界点投影到滚动快门图像的高效算法

Country Status (4)

Country Link
US (1) US11977167B2 (zh)
EP (1) EP4070130A4 (zh)
CN (1) CN115023627A (zh)
WO (1) WO2021113147A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11650058B2 (en) * 2017-08-28 2023-05-16 Intel Corporation Pose estimation for mobile autonomous apparatus at fractional time periods of a complete sensor sweep
KR102218120B1 (ko) * 2020-09-21 2021-02-22 주식회사 폴라리스쓰리디 자율 주행 모듈, 이를 포함하는 이동 로봇 및 이의 위치 추정 방법
US11977150B2 (en) * 2021-03-05 2024-05-07 Black Sesame Technologies Inc. Vehicle localization precision enhancement via multi-sensor fusion
CN112671499B (zh) * 2021-03-16 2022-04-01 深圳安途智行科技有限公司 多传感器同步方法及系统、以及主控制设备
US11405557B1 (en) * 2021-07-20 2022-08-02 Locus Robotics Corp. Rolling shutter compensation for moving digital optical camera sensors
WO2024081330A1 (en) * 2022-10-14 2024-04-18 Motional Ad Llc Rolling shutter compensation

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9488492B2 (en) * 2014-03-18 2016-11-08 Sri International Real-time system for multi-modal 3D geospatial mapping, object recognition, scene annotation and analytics
WO2016130719A2 (en) * 2015-02-10 2016-08-18 Amnon Shashua Sparse map for autonomous vehicle navigation
US10048058B2 (en) * 2015-07-29 2018-08-14 Microsoft Technology Licensing, Llc Data capture system for texture and geometry acquisition
US9973696B1 (en) * 2015-11-23 2018-05-15 Gopro, Inc. Apparatus and methods for image alignment
US9792709B1 (en) * 2015-11-23 2017-10-17 Gopro, Inc. Apparatus and methods for image alignment
US10962647B2 (en) * 2016-11-30 2021-03-30 Yujin Robot Co., Ltd. Lidar apparatus based on time of flight and moving object
US11802965B2 (en) 2016-11-30 2023-10-31 Blackmore Sensors & Analytics Llc Method and system for doppler detection and doppler correction of optical chirped range detection
US11953599B2 (en) * 2017-01-26 2024-04-09 Mobileye Vision Technologies Ltd. Vehicle navigation based on aligned image and LIDAR information
US20180288320A1 (en) * 2017-04-03 2018-10-04 Uber Technologies, Inc. Camera Fields of View for Object Detection
US10108867B1 (en) * 2017-04-25 2018-10-23 Uber Technologies, Inc. Image-based pedestrian detection
US10523880B2 (en) 2017-09-28 2019-12-31 Waymo Llc Synchronized spinning LIDAR and rolling shutter camera system
CN111492403A (zh) 2017-10-19 2020-08-04 迪普迈普有限公司 用于生成高清晰度地图的激光雷达到相机校准
EP3636507A1 (en) * 2018-03-20 2020-04-15 Mobileye Vision Technologies Ltd. Comfort responsibility sensitivity safety model
JP7422747B2 (ja) * 2018-09-26 2024-01-26 ズークス インコーポレイテッド 画像スキャンラインのタイムスタンプ
US12046006B2 (en) * 2019-07-05 2024-07-23 Nvidia Corporation LIDAR-to-camera transformation during sensor calibration for autonomous vehicles
EP3891474B1 (en) * 2019-08-30 2023-12-20 Baidu.com Times Technology (Beijing) Co., Ltd. Synchronizing sensors of autonomous driving vehicles
US11681032B2 (en) * 2020-01-30 2023-06-20 Pony Ai Inc. Sensor triggering based on sensor simulation
US11964762B2 (en) * 2020-02-11 2024-04-23 Raytheon Company Collaborative 3D mapping and surface registration
US11430224B2 (en) * 2020-10-23 2022-08-30 Argo AI, LLC Systems and methods for camera-LiDAR fused object detection with segment filtering

Also Published As

Publication number Publication date
US11977167B2 (en) 2024-05-07
EP4070130A4 (en) 2023-12-27
EP4070130A1 (en) 2022-10-12
US20210208283A1 (en) 2021-07-08
WO2021113147A1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
JP7146004B2 (ja) 同期スピニングlidarおよびローリングシャッターカメラシステム
US20210208283A1 (en) Efficient algorithm for projecting world points to a rolling shutter image
US11754721B2 (en) Visualization and semantic monitoring using lidar data
US10401872B2 (en) Method and system for collision avoidance
JP7321246B2 (ja) ハイブリッド飛行時間型イメージャモジュール
WO2007031248A3 (en) Surveying instrument and method of providing survey data using a surveying instrument
US12055632B2 (en) LIDAR based stereo camera correction
CN114296057A (zh) 一种计算测距系统相对外参的方法、装置和存储介质
CN113780349A (zh) 训练样本集的获取方法、模型训练方法及相关装置
Stanèiæ et al. A novel low-cost adaptive scanner concept for mobile robots
US20240219542A1 (en) Auto-level step for extrinsic calibration

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