用于改进的相机颜色校准的系统和方法与流程

文档序号:29704949发布日期:2022-04-16 15:26阅读:318来源:国知局
用于改进的相机颜色校准的系统和方法与流程

1.本公开总体上涉及相机校准,并且更具体地,涉及用于相机颜色校准的 系统和方法。


背景技术:

2.在一些情况下,相机能够捕获特定颜色的对象并输出与已知颜色数据紧 密对应或相同的颜色数据可能是重要的。作为其非限制性示例,如果被车辆 用于半自主或自主功能的相机能够输出与已知对象(诸如路标、交通灯、道 路车道标记等)相关的更准确的颜色数据,那么相机可以更有效地发挥作用。 也就是说,对于给定对象,输出与已知rgb颜色接近或相同的rgb值对于 相机来说可能是重要的。为了确保相机在这方面尽可能有效地操作,可以针 对某些颜色对相机进行校准。在一些情况下,这种校准可以涉及使用放置在 相机前面并且包括要针对其来校准相机的颜色的物理测试目标。在一些情况 下,测试目标可以采用麦克白色卡(macbeth colorchecker)或麦克白图表的 形式。在其典型的形式中,麦克白图表可以是包括24个色块的物理图表,每 个块是不同的颜色或颜色的阴影。测试者可以已知麦克白图表上的块的红蓝 绿(rgb)值。也就是说,麦克白图表中包括的颜色的rgb值可以在它们被 添加之前就已经是已知的。相机可以捕获麦克白图表(或麦克白图表上的各 个块)的图像、视频或实时馈送,并且由相机为麦克白图表上的一个或多个 块产生的结果rgb值可以与已知的rgb值进行比较,以便确定颜色的真实 rgb值与相机产生的rgb值之间是否存在差异。由于相机的硬件和/或软件 特性,这两个值可以存在差异。基于这种比较,可以更改相机本身的特性, 使其产生与已知rgb值相同(或更相似)的rgb值,或者后端信号处理可 以基于确定的差异调整相机的rgb输出。例如,可以在后端信号处理中采用 颜色校正矩阵(ccm)以应对这些差异。但是,考虑到麦克白图表通常仅限 于24种不同的颜色,麦克白图表在其可以用于校准目的的颜色广度方面可能 存在某些限制。
3.此外,在交通灯颜色的特定情况下,如红色和黄色(或橙色)的颜色之 间的区别可能具有挑战性,这是因为这些颜色的光谱可能是接近的(例如, 可能包括一些相似的波长),而传统的ccm可能无法考虑交通灯的实际光谱 颜色。也就是说,两个色谱(诸如红色和黄色)之间可以存在一些重叠,这 可能使ccm难以区分这两个色谱。例如,有时可以将红光检测为黄光。此 外,一些相机可以包括滤波器阵列,该滤波器阵列也会使得光的频率被分离, 这是因为空间分离可能必须被重新内插。这种分离也可能是困难的,因为两 个不同的色谱(诸如红色和黄色交通灯颜色)之间可以存在重叠。


技术实现要素:

4.根据本发明的一方面,提供了一种用于相机颜色校准的方法,包括:捕 获由第一类型交通灯发射的第一波长;基于所述第一波长,识别与由所述第 一类型交通灯发射的波长相关联的第一颜色值;由第一相机捕获测试目标的 第一部分的第一图像、视频或实时馈送,所述测试目标的第一部分包括基于 所述第一颜色值的第一光颜色;基于所述测试目标
的第一部分的第一图像、 视频或实时馈送,识别由所述第一相机输出的第二颜色值;基于所述第一颜 色值与所述第二颜色值之间的比较,检测所述第一颜色值与所述第二颜色值 之间存在差异;以及基于检测到所述第一颜色值与所述第二颜色值之间存在 差异,调整以下中的至少一个:所述第一相机的特性或与所述第一相机相关 联的信号处理。
5.根据本发明的另一方面,提供了一种用于相机颜色校准的系统,包括: 处理器;以及存储器,其存储计算机可执行指令,所述计算机可执行指令在 由处理器执行时使所述处理器:捕获由第一类型交通灯发射的第一波长;基 于所述第一波长,识别与由第一类型交通灯发射的波长相关联的第一颜色值; 由第一相机捕获测试目标的第一部分的第一图像、视频或实时馈送,所述测 试目标的第一部分包括基于所述第一颜色值的第一光颜色;基于所述测试目 标的第一部分的第一图像、视频或实时馈送,识别由所述第一相机输出的第 二颜色值;基于所述第一颜色值与所述第二颜色值之间的比较,检测所述第 一颜色值与所述第二颜色值之间存在差异;以及基于检测到所述第一颜色值 与所述第二颜色值之间存在差异,调整以下中的至少一个:所述第一相机的 特性或与所述第一相机相关联的信号处理。
6.根据本发明的另一方面,提供了一种包括存储在其上的计算机可执行指 令的非暂时性计算机可读介质,所述计算机可执行指令在由无线接入点的一 个或多个处理器执行时使所述一个或多个处理器执行以下操作:捕获由第一 类型对象发射的第一波长;基于所述第一波长,识别与由第一类型对象发射 的波长相关联的第一颜色值;由第一相机捕获测试目标的第一部分的第一图 像、视频或实时馈送,所述测试目标的第一部分包括基于所述第一颜色值的 第一光颜色;基于所述测试目标的第一部分的第一图像、视频或实时馈送, 识别由所述第一相机输出的第二颜色值;基于所述第一颜色值与所述第二颜 色值之间的比较,检测所述第一颜色值与所述第二颜色值之间存在差异;以 及基于检测到所述第一颜色值与所述第二颜色值之间存在差异,调整以下中 的至少一个:所述第一相机的特性或与所述第一相机相关联的信号处理。
附图说明
7.参考附图阐述详细描述。提供附图仅用于说明的目的并且仅描绘本公开 的示例实施例。提供附图以促进对本公开的理解,并且附图不应被视为限制 本公开的广度、范围或适用性。在附图中,附图标记的(一个或多个)最左 边数字可以识别附图标记第一次在其中出现的附图。使用相同的附图标记指 示相似但不一定相同或完全相同的组件。但是,也可以使用不同的附图标记 来识别相似的组件。各种实施例可以利用不同于附图中所示的元件或组件, 并且一些元件和/或组件可以不存在于各种实施例中。取决于上下文,使用单 数术语来描述的组件或元件可以涵盖多个此类组件或元件,并且反之亦然。
8.图1描绘了根据本公开的一个或多个示例实施例的示例系统的示意图。
9.图2描绘了根据本公开的一个或多个示例实施例的示例方法的示意图。
10.图3描绘了根据本公开的一个或多个示例实施例的示例计算设备体系架 构的示意图。
具体实施方式
11.概述
12.除其它之外,本公开尤其涉及用于改进的相机颜色校准的系统和方法。 在一些实施例中,系统和方法可以更具体地涉及用于相机的改进的颜色校准。 用于相机的颜色校准可以指校准相机或与相机相关联的后处理元件,以产生 与由相机捕获的对象的颜色的已知或实际颜色值更接近或确切对准的输出颜 色值(例如,rgb值)。也就是说,在不执行本文描述的校准的情况下,相 机可以捕获具有已知rgb值的颜色的对象,但是可以输出可以不同于这个已 知rgb值的rgb值。这可以是由于可以与特定相机相关联的不同类型的硬 件和/或软件造成的。例如,由相机使用的传感器可以与人眼具有不同的光谱 响应。这对于要求准确的数据以便最有效地运行的系统(诸如下面提到的半 自主或自主车辆功能)可能是潜在的问题。如上面所提到的,可以在从相机 输出的数据的后处理中采用ccm,以便校正从相机输出的颜色数据与和特定 颜色相关联的已知颜色数据之间的上述差异中的一些差异。但是,如红色与 黄色(或橙色)的相似颜色之间的区分可能具有挑战性,因为这些颜色的光 谱可以是接近的,并且传统ccm无法应对交通灯的实际光谱颜色。也就是 说,两个色谱(诸如红色和黄色)之间可能存在某种重叠,这可能使ccm难 以区分这两个色谱。例如,有时可能将红光检测为黄光。此外,一些相机可 以包括滤波器阵列,该滤波器阵列也可能导致光的频率被分离,这是因为空 间分离可能必须被重新内插。这种分离也可能是困难的,因为两个不同色谱 (诸如红色和黄色交通灯颜色)之间可能存在重叠。此外,在一些情况下, 物理目标(诸如麦克白图表)可以被用于针对特定颜色来校准相机,但这些 测试目标可能受限于对所包括的颜色的选择,并且可能不包括对于特定的相 机应用可能重要的颜色(诸如在协助具有半自主或自主车辆功能的车辆时相 机可能遇到的对象的颜色)。应当注意的是,虽然本文可以参考确定交通灯颜 色,但是可以使用相同的系统和方法对具有任何其它颜色的任何其它类型的 对象执行校准。例如,系统和方法可以被用于对道路上的车道标记执行校准。
13.在一些实施例中,改进的颜色校准可以涉及使用物理测试目标(诸如麦 克白图表)针对更多种不同类型的颜色来校准相机。麦克白图表可以是物理 目标,它包括以网格状配置布置的24个不同颜色的方形(“块”)。麦克白图 表可以被放置在相机前,并被用于针对图表上的块内包括的颜色来校准相机。 但是,麦克白图表可能受限于其可以包括的用于相机校准的颜色的数量。因 此,本文描述的测试目标可以是麦克白图表的形式,除了通常可以被包括在 麦克白图表中的24个色块之外,其可以补充有附加的色块。添加到麦克白图 表的附加颜色可以与在特定上下文中期望为特定相机校准的附加颜色对应, 并且添加到补充麦克白图表的颜色可以取决于在其中使用相机的特定上下文 而改变。作为这种改进的颜色校准的示例实施方式,半自主或自主车辆可以 包括一个或多个可以用于辅助车辆的半自主或自主功能的相机。例如,相机 可以被用于识别交通灯的颜色,使得车辆可以在接近交通灯时能够确定要采 取的适当动作(例如,继续驾驶、减速和/或停止等各种动作)。车辆能够准 确地识别交通灯的正确颜色可以是重要的,因为车辆采取的动作可以取决于 识别出的颜色。在期望针对交通灯的颜色来校准车辆相机的这个特定示例中, 可以将已知的交通灯颜色添加到麦克白图表,并且可以使用麦克白图表来确 保随后对于那些特定的颜色来校准相机,使得相机可以在实时操作期间准确 地检测那些颜色。应当注意的是,虽
然本文中为了一致性可能描述了针对不 同交通灯颜色的相机的校准,但是本文描述的系统和方法可以类似地用于针 对具有任何不同类型颜色的任何其它类型的对象的相机的校准。此外,还应 当注意的是,虽然本文参考麦克白图表的使用,但是本文描述的系统和方法 也可以类似地应用于任何其它类型的物理(或数字)颜色校准目标。例如, 可以以任何其它形状来呈现颜色,可以在单个目标上提供不同的颜色,可以 在分离的目标上提供颜色的组,和/或目标可能不是物理目标而是可以以与可 以使用物理目标类似的方式用作目标的、颜色的数字表示。
14.在一些实施例中,要添加到补充麦克白图表的特定色块可以基于期望为 相机校准的各个颜色的预定rgb值。继续上面的示例,从不同类型交通灯(例 如,白炽交通灯或led交通灯等各种类型的交通灯之外)发射的不同深浅的 红色、黄色和绿色的rgb值可以是已知的,并且这些rgb值可以被用于生 成要添加到麦克白图表的色块,以用于期望被校准的每种颜色。例如,白炽 交通灯发射的红光可以不同于发光二极管(led)交通灯发射的红光。因此, 这两种深浅的红色都可以被包括在补充麦克白图表中,使得不管交通灯的类 型如何,相机都可以能够准确地检测到红色交通灯。但是,在一些情况下, rgb值也可以通过从发射不同颜色的不同类型交通灯实时捕获数据来确定。 在一些情况下,光谱仪可以被用于捕获从特定类型的交通灯发射的光,以便 确定与从交通灯发射的光相关联的rgb值。例如,光谱仪可以放置在白炽交 通灯的前面并且可以在交通灯正在发射红光、黄光和/或绿光时捕获从白炽交 通灯发射的光。光谱仪可以能够确定特定光的一个或多个波长(例如,其可 以是色谱的形式)。例如,这个波长(或特定颜色的色谱)然后可以被用于使 用包括波长(或其它光谱信息)和相关联的rgb值的查找表来确定与特定颜 色相关联的rgb值。然后可以使用rgb值创建色块以添加到麦克白图表, 以便用于针对交通灯的颜色来校准相机的目的。光谱仪也可以类似地用于以 类似方式确定其它类型交通灯的rgb值。在这些情况下,由光谱仪捕获的 rgb值可以被用于生成色块以添加到麦克白图表,而不是使用预先确定的值。 此外,可以对与要添加到麦克白图表的各个块相关联的确定的rgb值进行存 储以用于校准目的,如下所述。这些rgb值可以本地存储到相机或远程位置 (诸如在用于执行校准的计算元件中或网络上的服务器,仅举几个示例)。当 不知道特定类型对象颜色的预定rgb值时,也可以使用这个方法。
15.在一些实施例中,本文描述的校准系统和方法也可以在相机的实时操作 期间而不是在测试环境中应用。也就是说,代替在实时操作中使用相机捕获 图像、视频和/或实时馈送之前预先校准相机(或作为其补充),还可以针对 相机正在实时捕获的对象的颜色来校准相机。例如,如果在具有半自主或自 主功能的车辆中或车辆上实现相机,那么当车辆穿越环境时,相机可以正在 捕获被包括在环境内的对象的图像、视频和/或实时馈送。虽然相机捕获的一 些类型的对象可以不与标准化颜色关联,但其中一些对象实际上可以与这些 标准化颜色相关联(例如,路标、道路车道标记以及在道路附近发现的其它 类型的标准化的对象可以包括标准化颜色)。与车辆相关联的计算系统可以能 够基于其它信息(诸如对象的形状或尺寸)或通过使用其它更复杂的计算机 视觉技术来对相机捕获的对象进行分类,仅举几个示例。一旦对象被分类, 就可以获得与对象相关联的已知rgb值。例如,车辆可以维护对象类型及其 相关联的rgb值的数据库。也可以远离车辆对这个数据库进行维护(例如, 在关于图2描述的远程计算设备214中)。如上所述,一旦获得了这个已知的 rgb值,
就可以以类似于如果使用测试目标则将比较rgb值的方式将相机 产生的输出rgb值与这个已知的rgb值进行比较。然后可以在相机穿越环 境的同时实时执行对相机或与相机相关联的信号处理的相同调整。例如,调 整可以是更新后的ccm的形式,其可以在信号处理中使用以应对由相机产 生的确定的rgb值与已知的rgb值之间的差异。
16.在一些实施例中,调整可以涉及通过首先将rgb值转换成hsv(色调、 饱和度、亮度)颜色表示来调整与特定颜色相关联的rgb值,hsv颜色表 示可以是颜色到rgb值的替代表示。可以在对颜色进行任何调整之前执行从 rgb到hsv的这种转换,因为可能难以使用rgb值从一种颜色调整到另一 种类似的颜色,这是因为在一些情况下rgb值的改变可以是非线性的。例如, 仅通过调整rgb值可能难以从蓝色转变到更浅的蓝色。为了缓解这种困难, rgb值可以转换成hsv,然后可以通过更改颜色的色调值(或类似地,在一 些情况下,也可以调整其饱和度和/或亮度值)在hsv表示中调整颜色。然 后可以将颜色转换回rgb值。使用hsv执行颜色调整而不是使用rgb值执 行调整可以允许更容易地执行不同类型颜色(例如,诸如红色和黄色)的色 谱之间的距离,并且可以导致每种颜色的更优化的ccm。
17.在一些实施例中,实时校准和测试环境校准也可以协同工作。例如,具 有第一相机的第一车辆可能正在实时地穿越环境,捕获关于环境中包括的对 象的数据。基于捕获的关于对象的数据,第一车辆可以向测试环境(例如, 测试环境可以是其中相机可以使用其来进行颜色校准的测试目标可以定位的 任何位置)提供应当将特定颜色添加到颜色测试目标以校准位于测试环境中 的第二相机的指示。这可以基于第一车辆识别出新类型的对象或具有新颜色 配置的已知对象,或可以有助于针对特定颜色执行其它相机的校准的任何其 它类型的数据。此外,各个相机可以不一定都需要使用本文描述的测试目标 进行校准。例如,可以在测试环境中校准第一相机,然后可以将基于校准对 第一相机进行的调整的信息发送到其它相机,以便其它相机可以进行相同的 调整而无需经过完整的校准过程。作为一个示例,可以在测试环境中校准测 试环境中的相机,然后可以将基于该校准做出的调整传送到实时操作(例如, 在穿越环境的车辆上)的相机。反之亦然,例如,可以将基于实时执行的校 准进行的调整通信到位于测试设施中的相机,或者类似地,也可以在一个或 多个实时操作的相机之间通信调整。这种通信可以通过任何合适类型的有线 或无线网络连接来执行。例如,使用无线协议,诸如4g、5g、长期演进(lte)、 lte-advanced、5g、ieee 802.11、ieee 802.16、蓝牙、zigbee、近场通信(nfc) 等。在车辆上实现的相机的具体示例中,车辆可以使用诸如车辆到车辆(v2v) 之类的通信协议或任何其它相似类型的通信协议来彼此传送信息。车辆也可 以使用任何其它类型的有线或无线通信方法进行通信。
18.说明性系统体系架构
19.图1描绘了根据本公开的一个或多个示例实施例的示例系统100的示意 图。在一些实施例中,系统100可以包括一个或多个相机,这些相机可以集 成到系统100的另一个元素中,或者可以是独立相机。例如,系统100可以 描绘集成到车辆103中的第一相机102和作为独立相机的第二相机104。系 统100还可以包括颜色测试目标106和/或远程计算设备114。虽然第一相机 102被描述为集成到车辆103中,但它可以类似地是系统100的环境中的任 何其它元素(诸如人,或住宅或商业住宅,举几个非限制性的示例)的一部 分或与其相关联。
20.在一些实施例中,一个或多个相机可以包括要使用本文描述的系统和方 法校准
的任何相机。也就是说,可以校准一个或多个相机以检测某些类型的 颜色。相机可以包括任何类型的相机,诸如互补金属氧化物半导体(cmos) 相机、具有红外功能的相机、电荷耦合器件(ccd)相机或任何其它类型的 相机。如上所述,可以以独立方式使用相机(例如,示为第二相机104)和/ 或使用集成到另一个元素(诸如车辆)中的相机(诸如,示为与车辆103集 成在一起的第一相机102)来执行此类相机的校准。一个或多个相机可以放 置在测试环境105内(但是,相机可能不一定需要在测试环境中进行校准, 并且也可以类似地在任何其它位置进行校准)并且可以被用于捕获也可以被 包括在测试环境105内的颜色测试目标106的一个或多个图像、视频和/或实 时实况馈送。更具体而言,一个或多个相机可以被用于捕获被包括在颜色测 试目标106内的至少一个或多个单独色块的一个或多个图像、视频和/或实时 实况馈送。如本文更详细地描述的,基于颜色测试目标106的一个或多个捕 获的图像、视频和/或实时实况馈送由一个或多个相机输出的rgb值可以与 已知的rgb值进行比较。基于比较,可以校准相机以减少或消除相机的输出 与已知颜色值之间的差异。一个或多个相机还可以包括至少一个或多个处理 器(例如,示为用于第一相机102的(一个或多个)处理器116和用于第二 相机104的(一个或多个)处理器119)、存储器(例如,示为用于第一相机 102的存储器117和用于第二相机104的存储器120)、数据存储装置118(例 如,示为用于第一相机102的数据存储装置118和用于第二相机104的数据 存储装置121),和/或者一个或多个相机颜色校准模块(例如,示为用于第一 相机102的(一个或多个)相机颜色校准模块125和用于第二相机104的(一 个或多个)相机颜色校准模块126)。数据存储装置可以被用于存储用于本文 描述的颜色校准目的的任何数据,诸如与特定颜色类型相关联的已知rgb值、 为交通灯捕获的光谱信息、图像、视频和ccm信息,以及其它类型的信息。 在一些情况下,存储在数据存储装置中的任何信息也可以存储在存储器中。 一个或多个相机颜色校准模块125可以被配置为执行本文描述的任何操作, 诸如与相机颜色校准相关联的任何操作(例如,关于图3描述的操作)。应当 注意的是,虽然某些(一个或多个)处理器116、存储器117、数据存储装置 118和(一个或多个)相机校准模块125被描述为与第一相机本身102相关 联,但在一些情况下,(一个或多个)处理器116、存储器117、数据存储装 置118和(一个或多个)相机校准模块125也可以类似地结合到其中集成有 第一相机的元素102中。例如,(一个或多个)处理器116、存储器117、数 据存储装置118和(一个或多个)相机校准模块125可以与车辆103相关联, 而不是与第一相机102本身相关联。也就是说,车辆103可以包括(一个或 多个)处理器116、存储器117、数据存储装置118和(一个或多个)相机校 准模块125,并且第一相机102可以简单地用于捕获关于颜色测试目标106 的输入数据。一个或多个相机还可以包括任何其它元件,诸如关于图3的计 算设备300描述的。此外,也可以关于图3更详细地描述(一个或多个)处 理器、存储器、数据存储装置和/或相机颜色校准模块中的任何一个。
21.在一些实施例中,颜色测试目标106可以是包括一种或多种颜色的目标, 并且可以被用于针对颜色测试目标106中包括的任何颜色来校准相机(例如, 一个或多个相机)。在一些情况下,颜色测试目标106可以是物理目标,诸如 可以放置在真实环境中的纸板目标(纸板只是可以用于目标的材料类型的示 例,并且也可以使用任何其它合适的材料)。物理目标可以包括一个或多个色 块。例如,一个或多个色块在形状上可以是方形并且以网格形式布置,诸如 可以在麦克白图表中找到的。但是,代替仅包括通常在麦克白图表中找到
的 24种颜色,颜色测试目标106也可以包括任何数量的附加补充颜色。如本文 所述,补充颜色可以与相机在实时操作期间可能需要识别的对象的颜色对应。 例如,如果相机将用在车辆上以帮助车辆执行半自主或自主功能,那么补充 颜色可以包括与交通灯信号对应的颜色(例如,特定深浅的红色、黄色,或 绿色)。颜色测试目标106可以被用于校准车辆的相机,以使其可以准确地识 别交通灯信号颜色。这可以是重要的,因为车辆在接近交通灯时可以自主采 取的动作可以取决于车辆检测交通灯当前发射的颜色的能力。在一些情况下, 颜色测试目标106中包括的块也可以以任何其它形状和/或尺寸布置。也就是 说,色块可能不一定以它们将出现在麦克白图表中的方式呈现在颜色测试目 标106上。此外,可以采用多个颜色测试目标106,该颜色测试目标106可 以包括要针对其校准相机的整个颜色组的一个或多个子集。此外,在一些情 况下,颜色测试目标106可能不一定以物理形式呈现,而是可以数字地呈现。 例如,代替物理地打印包括色块的颜色测试目标106,色块可以被显示在发 光二极管(led)屏幕或任何其它类型的屏幕上、或者可以使用投影仪被投 影到表面上、或者可以以任何其它合适的方式数字地呈现。
22.在一些实施例中,远程计算设备114可以包括远离系统100的其它元件 定位的任何设备,并且可以替代或结合被包括在系统100内的任何其它元件 来使用。例如,远程计算设备114可以是远程服务器,并且可以用于执行与 使用颜色测试目标106校准一个或多个相机相关联的任何处理。远程计算设 备114还可以用于远程存储与校准过程相关联的任何数据。例如,远程计算 设备114可以存储与特定类型的对象相关联的各种颜色的已知rgb值。远程 计算设备114还可以包括被描绘为与一个或多个相机相关联的任何元件,诸 如一个或多个处理器122、存储器113、数据存储装置224和/或(一个或多 个)相机颜色校准模块124。也就是说,本文描述的关于一个或多个相机的 颜色校准的任何操作可以在一个或多个相机处本地执行,或者可替代地在远 程计算设备114处或结合远程计算设备114执行。远程计算设备114还可以 包括任何其它元件,诸如关于图3的计算设备300描述的。此外,(一个或多 个)处理器、存储器、数据存储装置和/或相机颜色校准模块中的任一个也可 以关于图3更详细地描述。
23.在一些实施例中,一个或多个相机、颜色测试目标106和/或远程计算设 备114以及如本文描述的系统100的任何其它元件可以被配置为经由通信网 络115进行通信。通信网络115可以包括但不限于不同类型的合适通信网络 的组合中的任何一种,诸如例如广播网络、有线网络、公共网络(例如,互 联网)、私有网络、无线网络、蜂窝网络或任何其它合适的私有和/或公共网 络。另外,通信网络115可以具有与其相关联的任何合适的通信范围并且可 以包括例如全球网络(例如,互联网)、城域网(man)、广域网(wan)、 局域网(lan)或个域网(pan)。此外,通信网络115可以包括可以其上携 带网络流量的任何类型的介质,包括但不限于同轴电缆、双绞线、光纤、混 合光纤同轴(hfc)介质、微波地面收发器、射频通信介质、空白空间通信 介质、超高频通信介质、卫星通信介质或其任何组合。
24.说明性过程
25.图2是根据本公开的一个或多个示例实施例的示例方法200。在图2中 的方法200的方框202处,该方法可以包括捕获由第一类型交通灯发射的第 一波长。方法200的方框204可以包括基于第一波长识别与由第一类型交通 灯发射的波长相关联的第一颜色值。在一些情况下,波长可以更具体地指形 成特定颜色的色谱的一个或多个波长。在一些情况下
可以预先确定一个或多 个波长。也就是说,某些颜色可以被标准化,诸如不同区域中的不同类型交 通灯的颜色。在一些情况下,与特定颜色的特定对象相关联的一个或多个波 长(例如,色谱)也可以实时地被捕获而不依赖于预先确定的颜色值(或者 如果对象不与任何预先确定的颜色值相关联)。为了捕获对象的色谱,可以使 用光谱仪来捕获从特定类型的对象发射的光,以便确定与从对象发射的光相 关联的rgb值。例如,光谱仪可以放置在白炽交通灯的前面并且可以在交通 灯发射红光、黄光和/或绿光时捕获从白炽交通灯发射的光。光谱仪可以能够 确定特定光的一个或多个波长(例如,其可以是色谱的形式)。这个波长(或 特定颜色的色谱)然后可以被用于使用例如包括波长(或其它光谱信息)和 相关联的rgb值的查找表来确定与特定颜色相关联的rgb值。然后可以使 用rgb值创建色块以添加到麦克白图表,以用于针对交通灯的颜色来校准相 机目的。光谱仪也可以类似地被用于以类似方式确定其它类型的交通灯(以 及其它对象,诸如车道标记等)的rgb值。
26.方法200的方框206可以包括由第一相机捕获测试目标的第一部分的第 一图像、视频或实时馈送,测试目标的第一部分包括基于第一颜色值的第一 光颜色。也就是说,针对特定颜色的特定对象获得的色谱可以被用于创建色 块,该色块被添加到测试目标以用于校准相机(例如,在半自主或自主车辆 上使用的相机)的目的。如上所述,可以基于预先确定的颜色值或(例如, 使用光谱仪)确定的颜色值来创建色块。例如,可以基于与特定对象的特定 颜色相关联的已知或确定的rgb值来创建色块。
27.方法200的方框208可以包括基于测试目标的第一部分的第一图像、视 频或实时馈送来识别由相机输出的第二颜色值。方法200的方框210可以包 括基于第一颜色值与第二颜色值之间的比较来检测第一颜色值与第二颜色值 之间存在差异。在一些情况下,第二颜色值可以指捕获测试目标中的色块的 相机的颜色输出。由于特定于相机的硬件和/或软件,相机输出的颜色可能不 一定是与测试目标的实际颜色值相同的颜色值。例如,色块的rgb值与由相 机输出的对应rgb值可以不同。在此类情况下,可以要求校准相机以确保相 机针对特定颜色输出正确的颜色值。这在涉及半自主或自主车辆功能的场景 中可能是重要的,例如,因为车辆可以要求准确的颜色信息来对某些对象进 行分类。
28.方法200的方框212可以包括基于检测到第一颜色值与第二颜色值之间 存在差异来调整以下至少一个:相机的特性或与相机相关联的信号处理。例 如,调整可以是更新后的ccm的形式,其可以在信号处理中用于应对由相 机产生的确定的rgb值与已知的rgb值之间的差异。如果相机的输出不同 于该颜色的已知值(例如,rgb值),那么可以将ccm应用于相机的颜色输 出以将颜色输出更改为正确的颜色值。在一些实施例中,调整可以涉及通过 首先将rgb值转换成hsv(色调、饱和度、亮度)颜色表示来调整与特定 颜色相关联的rgb值,hsv颜色表示可以是颜色到rgb值的替代表示。可 以在对颜色进行任何调整之前执行从rgb到hsv的这种转换,这是因为可 能难以使用rgb值从一种颜色调整到另一种相似的颜色,因为在一些情况下 rgb值的改变可以是非线性的。例如,仅通过调整rgb值可能难以从蓝色 转变到更浅的蓝色。为了缓解这种困难,可以将rgb值转换成hsv,然后 可以通过更改颜色的色调值(或类似地,在一些情况下,也可以调整其饱和 度和/或亮度值)在hsv表示中调整颜色。然后可以将颜色转换回rgb值。 使用hsv执行颜色调整而不是使用rgb值执行调整可以允许更容易地执行 不同类型颜色(例如,诸如红色和黄色)的色谱之间的距离,并且可以导致 每种颜色的更优化的ccm。
29.在图2的说明性过程流程中描述和描绘的操作可以按照本公开的各种示 例实施例中的期望以任何合适的次序来执行或执行。此外,在某些示例实施 例中,操作的至少一部分可以并行执行。此外,在某些示例实施例中,可以 执行比图2中描绘的操作更少、更多或不同的操作。
30.虽然已经描述了本公开的具体实施例,但是本领域普通技术人员将认识 到,许多其它修改和替代实施例在本公开的范围内。例如,相对于特定设备 或组件描述的任何功能和/或处理能力可以由任何其它设备或组件执行。另外, 虽然已经根据本公开的实施例描述了各种说明性实施方式和体系架构,但是 本领域的普通技术人员将认识到的是,对本文描述的说明性实施方式和体系 架构的许多其它修改也在本公开的范围内。
31.上面参考根据示例实施例的系统、方法、装置和/或计算机程序产品的框 图和流程图描述了本公开的某些方面。将理解的是,框图和流程图中的一个 或多个方框以及框图和流程图中的方框的组合分别可以通过计算机可执行程 序指令的执行来实现。同样,根据一些实施例,框图和流程图中的一些方框 可能不一定需要按照所呈现的次序执行,或者可能根本不需要执行。另外, 在某些实施例中可以存在超出框图和/或流程图的方框中所描绘的那些的附 加组件和/或操作。
32.因而,框图和流程图的方框支持用于执行指定功能的部件的组合、用于 执行指定功能的元件或步骤的组合以及用于执行指定功能的程序指令部件。 还将理解的是,框图和流程图的每个方框,以及框图和流程图中的方框的组 合,可以由执行指定功能、元件或步骤的专用的、基于硬件的计算机系统来 实现,或由专用硬件和计算机指令的组合来实现。
33.说明性计算元素
34.图3图示了根据本公开的一个或多个实施例的示例计算设备300。计算 设备300可以是用于执行本文描述的任何操作的设备。例如,计算设备300 可以代表相对于图1描述的控制器104,或者本文描述的任何其它控制器。 计算设备300可以包括至少一个处理器302,其执行存储在一个或多个存储 器设备(称为存储器304)中的指令。指令可以是例如用于实现被描述为由 上面公开的一个或多个模块和系统执行的功能的指令或者用于实现上面公开 的方法中的一个或多个的指令。(一个或多个)处理器302可以实施在例如 cpu、多个cpu、gpu、多个gpu、tpu、多个tpu、多核处理器、它们的 组合等中。在一些实施例中,(一个或多个)处理器302可以布置在单个处理 设备中。在其它实施例中,(一个或多个)处理器302可以分布在两个或更多 个处理设备上(例如,多个cpu;多个gpu;它们的组合;等等)。处理器 可以被实现为处理电路或计算处理单元的组合(诸如多个cpu、多个gpu, 或两者的组合)。因此,为了便于说明,处理器可以指:单核处理器;具有软 件多线程执行能力的单个处理器;多核处理器;具有软件多线程执行能力的 多核处理器;利用硬件多线程技术的多核处理器;并行处理(或计算)平台; 以及具有分布式共享存储器的并行计算平台。此外,或者作为另一个示例, 处理器可以指被设计为或以其它方式配置(例如,制造)为执行本文所述的 功能的集成电路(ic)、asic、数字信号处理器(dsp)、fpga、plc、复杂 可编程逻辑器件(cpld)、分立门或晶体管逻辑、分立硬件组件,或其任何 组合。
35.(一个或多个)处理器302可以借助于通信体系架构306(例如,系统 总线)访问存储器304。通信体系架构306可以适于(一个或多个)处理器 302的特定布置(局部或分布式)和类型。在一些实施例中,通信体系架构 306可以包括一种或多种总线体系架构,诸如存储
器总线或存储器控制器; 外围总线;加速图形端口;处理器或本地总线;其组合;等等。作为说明, 此类体系架构可以包括工业标准体系架构(isa)总线、微通道体系架构(mca) 总线、增强型isa(eisa)总线、视频电子标准协会(vesa)本地总线、 加速图形端口(agp)总线、外围组件互连(pci)总线、pci-express总线、 个人计算机存储卡国际协会(pcmcia)总线、通用串行总线(usb)等。
36.本文公开的存储器组件或存储器设备可以实施在易失性存储器或者非易 失性存储器中,或者可以包括易失性和非易失性存储器两者。此外,存储器 组件或存储器设备可以是可移除的或不可移除的,和/或在计算设备或组件的 内部或外部。各种类型的非暂时性存储介质的示例可以包括硬盘驱动器、压 缩文件(zip)驱动器、cd-rom、数字多功能光盘(dvd)或其它光存储装 置、盒式磁带、磁带、磁盘存储装置或其它磁存储设备,闪存卡或其它类型 的存储卡、盒式磁带或任何其它适合保留期望信息且可以由计算设备访问的 非暂时性介质。
37.作为说明,非易失性存储器可以包括只读存储器(rom)、可编程rom (prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom) 或闪存。易失性存储器可以包括随机存取存储器(ram),它充当外部高速 缓存存储器。作为说明而非限制,ram有多种形式可用,诸如同步ram (sram)、动态ram(dram)、同步dram(sdram)、双倍数据速率 sdram(ddr sdram)、增强型sdram(esdram))、synchlink dram (sldram)和直接rambus ram(drram)。本文描述的操作或计算环 境的所公开的存储器设备或存储器旨在包括这些和/或任何其它合适类型的 存储器中的一种或多种。
38.除了存储可执行指令之外,存储器304还可以保留数据,诸如任何分类 账156信息,以及其它数据。
39.每个计算设备300还可以包括可由(一个或多个)处理器302借助于通 信体系架构306访问的大容量存储装置308。大容量存储装置308可以包括 机器可访问指令(例如,计算机可读指令和/或计算机可执行指令)。在一些 实施例中,机器可访问指令可以被编码在大容量存储装置308中并且可以被 布置在可以被构建(例如,链接和编译)并以计算机可执行形式保留在大容 量存储装置308中或者包括在计算设备300中的一个或多个其它机器可访问 的非暂时性存储介质中。此类组件可以实施或可以构成本文公开的各种模块 中的一个或多个。此类模块被示为(一个或多个)相机颜色校准模块314(其 可以与转换模块120相同)。
40.由(一个或多个)处理器302中的至少一个单独地或组合地执行(一个 或多个)相机颜色校准模块314可以使计算设备300执行本文描述的任何操 作(例如,关于图2描述的操作,以及任何其它操作)。
41.每个计算设备300还可以包括一个或多个输入/输出接口设备310(称为 i/o接口310),其可以允许或以其它方式促进外部设备与计算设备300通信。 例如,i/o接口310可以被用于从外部计算设备接收数据和/或指令以及向外 部计算设备发送数据和/或指令。计算设备300还包括一个或多个网络接口设 备312(称为(一个或多个)网络接口312),其可以允许或以其它方式促进 将计算设备300与一个或多个外部设备在功能上耦合。在功能上将计算设备 300耦合到外部设备可以包括在计算设备300和外部设备之间建立有线连接 或无线连接。网络接口设备312可以包括一个或多个天线以及可以允许车辆 与另一个车辆或
者外部设备之间的无线通信的通信处理设备。另一个车辆可 以是例如包括在网络110中的车辆或网络外车辆之一。例如,外部设备可以 是网络110中包括的移动设备之一。这种通信处理设备可以根据一种或几种 无线电技术的既定协议来处理数据。无线电技术可以包括例如4g、5g、长期 演进(lte)、lte-advanced、5g、ieee 802.11、ieee 802.16、蓝牙、zigbee、 近场通信(nfc)等。
42.在一些实施例中,计算设备300可以与成像设备316通信(例如,通过 如图3中所示的计算设备的i/o接口310)。成像设备316可以与本文描述的 任何成像设备相同(例如,基于成像设备捕获的一个或多个图像确定其耀斑 伪影分数的成像设备)。
43.如在本技术中使用的,术语“环境”、“系统”、“单元”、“模块”、“体系 架构”、“接口”、“组件”等是指与计算机相关的实体或与具有一个或多个既 定功能的操作装置相关的实体。术语“环境”、“系统”、“模块”、“组件”、“体 系架构”、“接口”和“单元”可以互换使用,并且可以统称为功能元素。此 类实体可以是硬件、硬件和软件的组合、软件或执行中的软件。作为示例, 模块可以实施在运行在处理器上的进程、处理器、对象、软件的可执行部分、 执行线程、程序和/或计算设备中。作为另一个示例,在计算设备上执行的软 件应用和计算设备都可以实施模块。作为又一个示例,一个或多个模块可以 驻留在进程和/或执行线程内。模块可以位于一个计算设备上或分布在两个或 更多个计算设备之间。如本文所公开的,模块可以从其上存储有各种数据结 构的各种计算机可读非暂时性存储介质执行。模块可以根据例如具有一个或 多个数据分组(例如,来自一个组件与本地系统、分布式系统中的另一组件 和/或经由信号与其它系统跨网络(诸如广域网)交互的数据)的信号(或者 模拟或者数字)经由本地和/或远程进程进行通信。
44.作为又一个示例,模块可以实施在具有由机械部分提供的既定功能的装 置中或可以包括该装置,所述机械部分由处理器执行的软件应用或固件应用 控制的电气或电子电路所操作。这种处理器可以在装置内部或外部,并且可 以执行软件或固件应用的至少一部分。在另一个示例中,模块可以实施在通 过电子组件提供既定功能而无需机械部分的装置中或可以包括该装置。电子 组件可以包括处理器以执行软件或固件,该软件或固件至少部分地允许或以 其它方式促进电子组件的功能。
45.在一些实施例中,模块可以根据例如具有一个或多个数据分组(例如, 来自与本地系统、分布式系统中的另一组件和/或经由信号与其它系统跨网络 (诸如广域网)交互的一个组件的数据)的信号(模拟或者数字)经由本地 和/或远程进程进行通信。此外,或在其它实施例中,模块可以经由热、机械、 电和/或机电耦合机制(诸如导管、连接器、其组合等)进行通信或以其它方 式耦合。接口可以包括输入/输出(i/o)组件以及相关联的处理器、应用和/ 或其它编程组件。
46.另外,在本说明书和附图中,诸如“存储库”、“存储装置”、“数据存储 库”、“数据存储装置”、“存储器”、“储存库”等术语以及基本上任何其它与 本公开的组件的操作和功能相关的信息存储组件是指存储器组件、实施在一 个或若干个存储器设备中的实体,或形成存储器设备的组件。注意的是,本 文描述的存储器组件或存储器设备实施或包括计算设备可读取或以其它方式 可访问的非暂时性计算机存储介质。这种介质可以以用于存储信息的任何方 法或技术来实现,诸如机器可访问指令(例如,计算机可读指令)、信息结构、 程序模块或其它信息对象。
47.除非另有特别说明,或在所使用的上下文中以其它方式理解,否则条件 语言(诸如“可以(can)”、“可以(could)”、“可能(might)”或“may(可 能)”等等)一般旨在传达某些实施方式可以包括,而其它实施方式不包括, 某些特征、元素和/或操作。因此,这种条件语言一般不旨在暗示特征、元素 和/或操作以任何方式对于一个或多个实施方式是必需的,或者一个或多个实 施方式必然包括用于在具有或没有用户输入或提示的情况下决定这些特征、 元素和/或操作是否包括或将在任何特定实施方式中执行的逻辑。
48.在本说明书和附图中已经描述的内容包括系统、设备、技术和计算机程 序产品的示例,它们单独地和组合地允许自动提供车辆简档包的更新。当然, 为了描述本公开的各种要素的目的,不可能描述组件和/或方法的每一种可能 的组合,但是可以认识到的是,所公开的要素的许多进一步组合和排列是可 能的。因而,在不脱离其范围或精神的情况下,可以对本公开进行各种修改 是显而易见的。此外,或作为替代,本公开的其它实施例可以通过考虑说明 书和附图以及如本文所呈现的本公开的实践而变得显而易见。说明书和附图 中提出的示例在所有方面都旨在被视为说明性而非限制性的。虽然本文采用 了特定术语,但它们仅用于一般和描述性意义,而不是出于限制的目的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1