图像传感器架构

文档序号:1836570 发布日期:2021-11-12 浏览:8次 >En<

阅读说明:本技术 图像传感器架构 (Image sensor architecture ) 是由 L.埃恩 V.C.卡尔代伊 C.W.克拉多克 于 2020-03-30 设计创作,主要内容包括:一种图像传感器,包括:第一集成电路层,包括基于位置分组成像素传感器群组的像素传感器;与第一集成电路层电连通的第二集成电路层,该第二集成电路层包括被配置为各自从对应像素传感器群组接收像素信息的图像处理电路群组,图像处理电路群组进一步被配置为在图像传感器的操作期间对像素信息执行图像处理操作以提供经处理像素信息;与第二集成电路层电连通的第三集成电路层,并且第三集成电路层包括被配置为各自从对应图像处理电路群组接收经处理像素信息且在图像传感器的操作期间对经处理像素信息执行对象检测的分析的神经网络电路群组。(An image sensor, comprising: a first integrated circuit layer comprising pixel sensors grouped into groups of pixel sensors based on location; a second integrated circuit layer in electrical communication with the first integrated circuit layer, the second integrated circuit layer including a group of image processing circuits configured to each receive pixel information from a corresponding group of pixel sensors, the group of image processing circuits further configured to perform image processing operations on the pixel information during operation of the image sensor to provide processed pixel information; a third integrated circuit layer in electrical communication with the second integrated circuit layer, and the third integrated circuit layer includes a group of neural network circuits configured to each receive processed pixel information from a corresponding group of image processing circuits and perform analysis of object detection on the processed pixel information during operation of the image sensor.)

图像传感器架构

相关申请的交叉引用

本申请要求2019年4月5日提交的美国专利申请第16/376,634号的优先权,其完整内容以引用的方式并入本文中。

背景技术

本说明书涉及图像传感器及包括图像传感器的系统。

发明内容

本说明书描述与图像传感器相关的技术,图像传感器捕获图像且对图像传感器执行处理以检测对象。本说明书进一步描述用于将数据从图像传感器传输至远程处理器的数据传输协议。

一般而言,本说明书中描述的主题内容的一个新颖方面可以以一种图像传感器体现,该图像传感器包括:第一集成电路层,包括基于位置分组成像素传感器群组的像素传感器;与第一集成电路层电连通的第二集成电路层,第二集成电路层包括被配置为各自从对应像素传感器群组接收像素信息的图像处理电路群组,图像处理电路群组进一步被配置为在图像传感器的操作期间对像素信息执行图像处理操作以提供经处理像素信息;与第二集成电路层电连通的第三集成电路层,第三集成电路层包括被配置为各自从对应图像处理电路群组接收经处理像素信息的神经网络电路群组,神经网络电路群组进一步被配置为在图像传感器的操作期间对经处理像素信息执行对象检测的分析;以及输出指示通过神经网络电路群组的对象检测的分析的结果的信息的电路,其中,第一集成电路层堆叠于第二集成电路层上,并且第二集成电路层堆叠于第三集成电路层上。

此方面的其他实施例包括执行对应于图像传感器的动作且执行动作以形成图像传感器的对应方法。

这些及其他实施例可各自可选地包括以下特征中的一个或多个。在一些方面中,对象检测的分析的结果包括由以下各项组成的组中的至少一个:表示检测的像素的选定所关注区域;包含时间和几何位置信息的元数据;在对象检测之前的中间计算结果;关于网络确定性水平的统计信息;以及检测对象的分类。在某些方面中,神经网络电路群组各自包括被配置为实施卷积神经网络的电路。

在一些方面中,卷积神经网络各自检测由对应于与神经网络电路群组对应的图像处理电路群组的像素传感器群组感测的对象。在一些实施方式中,第三集成电路层包括被配置为实施循环神经网络的电路。在某些方面中,循环神经网络接收关于由全部神经网络电路群组检测的对象的信息,并检测跨像素传感器群组中的多个像素传感器群组感测的对象。

在一些方面中,神经网络电路群组中的每一个定位在将经处理像素信息提供至神经网络电路群组的图像处理电路群组正下方。在某些方面中,图像处理电路群组中的每一个定位在将像素信息提供至图像处理电路群组的像素传感器群组正下方或紧邻将像素信息提供至图像处理电路群组的像素传感器群组。在一些实施方式中,第一集成电路层、第二集成电路层和第三集成电路层集成在单个集成芯片中。

在一些方面中,像素传感器群组中的每一个包括相同数目的像素传感器。在某些方面中,对像素信息执行的图像处理操作包括在处理之前的高动态范围融合。在一些实施方式中,图像处理电路群组中的每一个包括模拟数字转换器。

一般而言,本说明书中描述的主题内容的一个新颖方面可以以一种方法体现,该方法包括动作:获得由图像传感器的像素传感器捕获的多个图像;使用集成在图像传感器中的神经网络电路分析多个图像用于对象检测;针对多个图像中的每一个使用集成在图像传感器中的神经网络电路产生与用于对象检测的多个图像的分析的结果相关的神经网络输出数据;以及从图像传感器传输多个图像中的每一个的神经网络输出数据和多个图像的子集的图像数据而非多个图像中的每一个的图像数据。

此方面的其他实施例包括被配置为执行方法的动作的对应图像传感器。

这些及其他实施例可各自可选地包括以下特征中的一个或多个。在一些方面中,传输多个图像中的每一个的神经网络输出数据和多个图像的子集的图像数据而非多个图像中的每一个的图像数据包括:传输多个图像中的第一图像的图像数据和第一图像的神经网络输出数据,传输第二图像的神经网络输出数据,以及在传输第二图像的图像数据之前以及在未传输第二图像的图像数据的情况下传输多个图像中的第三图像的图像数据和第三图像的神经网络输出数据。

在某些方面中,动作包括在传输多个图像中的第一图像的图像数据和第一图像的神经网络输出数据时分析多个图像中的第二图像用于对象检测。在一些实施方式中,动作包括在捕获第三图像时产生与用于对象检测的多个图像的分析的结果相关的神经网络输出数据。在一些方面中,从图像传感器传输多个图像中的每一个的神经网络输出数据和多个图像的子集的图像数据而非多个图像中的每一个的图像数据包括:以每秒特定数目的帧传输多个图像的子集的图像数据以及在未传输多个图像的子集的图像数据时传输图像的神经网络输出数据。

在某些方面中,多个图像的子集包括由图像传感器捕获的每第N图像,其中N是大于1的整数。在一些实施方式中,图像中的特定图像的图像数据包括指示图像内的每个像素的值的数据。在一些方面中,图像中的特定图像的神经网络输出数据包括以下各项中的一个或多个:表示检测的像素的选定所关注区域;包含时间和几何位置信息的元数据;在对象检测之前的中间计算结果;关于网络确定性水平的统计信息;以及检测对象的分类。

在某些方面中,图像中的特定图像的神经网络输出数据表示提供至处理器用于进一步处理的经部分处理数据。在一些实施方式中,传输神经网络输出数据和图像数据包括将神经网络输出数据和图像数据传输至中央处理单元。

本说明书中描述的主题内容的特定实施例可被实施为实现一个或多个以下优点。此技术的优点可以是,相对于唯独使用远离图像传感器的处理器以便处理图像数据,在图像传感器中包括多个堆叠集成电路层可容许处理分布于层当中,这可容许层的并行处理和/或更多处理出现于图像传感器上。

使用图像传感器的层而非在图像传感器外部执行额外处理可移除对于在图像传感器外部处理特定数据的需要,这可减小用于从图像传感器输出信息的带宽的量。例如,仅可需要输出由图像传感器捕获的帧的子集,这是因为可已经针对帧完成对图像传感器的某一处理。另一优点可以是多个层可被配置为使得信息可在层之间短距离传送,这可容许数据的更快传输。

在本说明书中描述的主题内容的一个或多个实施例的细节在随附图及下文的描述中阐述。从描述、附图和权利要求中将变得明白主题内容的其他特征、方面和优点。

附图说明

图1是具有三个集成电路层的示例图像传感器的框图。

图2是用于使用图像传感器的三个集成电路层检测对象的示例过程的流程图。

图3是具有像素传感器群组的示例集成电路层的框图。

图4是具有图像处理电路群组的示例集成电路层的框图。

图5是具有神经网络电路群组的示例集成电路层的框图。

图6是无神经网络电路的示例图像传感器的时序(timing)的图。

图7是具有神经网络电路的示例图像传感器的时序的图。

图8是用于从具有神经网络电路的图像传感器传输神经网络输出数据和图像数据的示例过程的流程图。

图9是包括由自主车辆使用的图像传感器的示例系统的框图。

图10是包括在单独芯片上的像素传感器群组和神经网络电路的示例系统的框图。

各个图中的相同附图标记和名称指示相同元素。

具体实施方式

图1是具有三个集成电路层的示例图像传感器100的框图。图像传感器100可使用三个集成电路层以检测对象。例如,图像传感器100可捕获包括人的图像且输出“检测到人”的指示。在另一示例中,图像传感器100可捕获图像且输出包括由图像传感器100检测的车辆的图像的部分。

三个集成电路层包括第一集成电路层110、第二集成电路层120和第三集成电路层130。第一集成电路层110堆叠于第二集成电路层120上,且第二集成电路层120堆叠于第三集成电路层130上。例如,第一集成电路层110与第二集成电路层120的顶部直接接触,且第三集成电路层130与第二集成电路层120的底部直接接触。

第一集成电路层110可与第二集成电路层120电连通。例如,第一集成电路层110和第二集成电路层120可使用互连件物理上彼此连接。第二集成电路层120可与第三集成电路层130电连通。例如,第二集成电路层120和第三集成电路层130可使用互连件物理上彼此连接。

第一集成电路层110可具有与第二集成电路层120相同的面积。例如,第一集成电路层110和第二集成电路层120的长度和宽度可相同而高度可不同。第三集成电路层130可具有大于第一集成电路层110和第二集成电路层120的面积。例如,第三集成电路层130可具有比第一集成电路层110和第二集成电路层120的长度和宽度都大20%的长度和宽度。

第一集成电路层110可包括根据位置分组成像素传感器群组(每个像素传感器群组在图1中称为“像素群组”)112A至112C(统称为112)的像素传感器阵列。例如,第一集成电路层110可包括分组成320x 240个像素传感器群组的6400x 4800像素传感器阵列,其中每个像素传感器群组包括20x 20像素传感器阵列。

像素传感器群组112中的每一个可包括2x 2像素传感器子群组。例如,20x 20像素传感器的像素传感器群组中的每一个可包括10x 10像素传感器子群组,其中每个像素传感器子群组包括左上的红色像素传感器、右下的绿色像素传感器、左下的第一透明像素传感器和右上的第二透明像素传感器,每个子群组亦称为红色-透明-透明-绿色(RCCG)子群组。

在一些实施方式中,像素传感器群组的大小可被选择以增加硅利用率。例如,像素传感器群组的大小可以是使得更多硅由具有像素传感器的相同图案的像素传感器群组覆盖。

第二集成电路层120可包括图像处理电路群组(每个图像处理电路群组在图1中称为“处理群组”)122A至122C(统称为122)。例如,第二集成电路层120可包括320x 240个图像处理电路群组。

图像处理电路群组122可被配置为各自从对应像素传感器群组接收像素信息且进一步被配置为对像素信息执行图像处理操作以在图像传感器100的操作期间提供经处理像素信息。

在一些实施方式中,每个图像处理电路群组122可从单个对应像素传感器群组112接收像素信息。例如,图像处理电路群组122A可从像素传感器群组112A且不从任何其他像素群组接收像素信息,且图像处理电路群组122B可从像素传感器群组112B且不从任何其他像素群组接收像素信息。

在一些实施方式中,每个图像处理电路群组122可从多个对应像素传感器群组112接收像素信息。例如,图像处理电路群组122A可从像素传感器群组112A和112B两者且不从其他像素群组接收像素信息,且图像处理电路群组122B可从像素群组112C和另一像素群组且不从其他像素群组接收像素信息。

使图像处理电路群组122从对应像素群组接收像素信息可导致像素信息从第一集成电路层110至第二层120的快速传送,这是因为图像处理电路群组122可物理上接近对应像素传感器群组112。信息传送的距离愈远,传送耗时可愈长。例如,像素传感器群组112A可在图像处理电路群组122A正上方,且像素传感器群组112A可不在图像处理电路群组122C正上方,因此若在像素传感器群组112A与图像处理电路群组122C之间存在互连件,则将像素信息从像素传感器群组112A传送至图像处理电路群组122A可快于将像素信息从像素传感器群组112A传送至图像处理电路群组122C。

图像处理电路群组122可被配置为对图像处理电路群组122从像素群组接收的像素信息执行图像处理操作。例如,图像处理电路群组122A可对来自像素传感器群组112A的像素信息执行高动态范围融合,并且图像处理电路群组122B可对来自像素传感器群组112B的像素信息执行高动态范围融合。其他图像处理操作可包括例如模拟到数字信号转换和解马赛克。

使图像处理电路群组122对来自对应像素传感器群组112的像素信息执行图像处理操作可使得能够由图像处理电路群组122以分布式方式并行执行图像处理操作。例如,图像处理电路群组122A可对来自像素传感器群组112A的像素信息执行图像处理操作,同时图像处理电路群组122B对来自像素群组122B的像素信息执行图像处理操作。

第三集成电路层130可包括神经网络电路群组(每个神经网络电路群组在图1中称为“NN群组”)132A至132C(统称为132)和全图像神经网络电路134。例如,第三集成电路层130可包括320x 240个神经网络电路群组。

神经网络电路群组132可被配置为各自从对应图像处理电路群组接收经处理像素信息且进一步被配置为在图像传感器100的操作期间对经处理像素信息执行对象检测的分析。在一些实施方式中,神经网络电路群组132可各自实施卷积神经网络(CNN)。

在一些实施方式中,每个神经网络电路群组132可从单个对应图像处理电路群组122接收经处理像素信息。例如,神经网络电路群组132A可从图像处理电路群组122A且不从任何其他图像处理电路群组接收经处理像素信息,且神经网络电路群组132B可从图像处理电路群组122B且不从任何其他图像处理电路群组接收经处理像素信息。

在一些实施方式中,每个神经网络电路群组132可从多个对应图像处理电路群组122接收经处理像素信息。例如,神经网络电路群组132A可从图像处理电路群组122A和122B两者且不从其他图像处理电路群组接收经处理像素信息,并且神经网络电路群组132B可从图像处理电路群组122C和另一像素群组两者且不从其他像素群组接收经处理像素信息。

使神经网络电路群组132从对应图像处理电路群组接收经处理像素信息可导致经处理像素信息从第二集成电路层120至第三集成电路层130的快速传送,这是因为神经网络电路群组132可物理上接近对应图像处理电路群组122。信息传送的距离愈远,传送耗时可愈长。例如,图像处理电路群组122A可在神经网络电路群组132A正上方,因此若在图像处理电路群组122A与神经网络电路群组132C之间存在互连件,则将经处理像素信息从图像处理电路群组122A传送至神经网络电路群组132A可快于将经处理像素信息从图像处理电路群组122A传送至神经网络电路群组132C。

神经网络电路群组132可被配置为从神经网络电路群组132自图像处理电路群组122接收的经处理像素信息检测对象。例如,神经网络电路群组132A可从来自图像处理电路群组122A的经处理像素信息检测对象,并且神经网络电路群组132B可从来自图像处理电路群组122B的经处理像素信息检测对象。

使神经网络电路群组132从来自对应图像处理电路群组122的经处理像素信息检测对象使得能够由神经网络电路群组132中的每一个以分布式方式并行执行检测。例如,神经网络电路群组132A可从来自图像处理电路群组122A的经处理像素信息检测对象,同时神经网络电路群组132B可从来自图像处理电路群组122B的经处理像素信息检测对象。

在一些实施方式中,神经网络电路群组132可执行中间处理。因此,图像传感器100可使用三个集成电路层110、120和130以执行某一中间处理且仅输出中间结果。例如,图像传感器100可捕获包括人的图像且在不分类所关注对象(人)的情况下输出“图像的某一区域中的所关注区域”的指示。在图像传感器100外部执行的其他处理可将所关注区域分类为人。

因此,来自图像传感器100的输出可包括表示某卷积神经网络的输出的某一数据。此数据自身可能难以解密,但是一旦其继续在图像传感器100外部处理,数据就可用于将区域分类为包括人。此混合方法可具有减少所需带宽的优点。因此,来自神经网络电路群组132的输出可包括表示检测的像素的选定所关注区域、包含时间和几何位置信息的元数据、在对象检测之前的中间计算结果、关于网络确定性水平的统计信息和检测对象的分类中的一个或多个。

在一些实施方式中,神经网络电路群组132可被配置为以高召回率和低准确率实施CNN。神经网络电路群组132可各自输出其中对象被检测到的检测对象的列表和对象的检测的时序。

全图像神经网络电路134可被配置为从神经网络电路群组132中的每一个接收指示神经网络电路群组132检测到的对象的数据,并且从数据检测对象。例如,神经网络电路群组132可能无法检测由多个像素群组捕获的对象,这是因为每个单独的(individual)神经网络电路群组可仅接收对应于对象的经处理像素信息的部分,但是全图像神经网络电路134可从多个神经网络电路群组132接收数据以便能够检测由多个像素群组感测的对象。在一些实施方式中,全图像神经网络电路134可实施循环神经网络(RNN)。神经网络可关于其架构(层的数目和类型、激活函数等)以及关于神经网络组件的实际值(例如,权重、偏置等)两者是可配置的。

在一些实施方式中,使图像传感器100执行处理可简化处理管线架构,提供更高带宽和更低延时,容许选择性帧速率操作,使用堆叠架构降低成本,提供更高系统可靠性(这是因为集成电路可具有更少潜在故障点)且提供计算资源的显著成本和功率节约。

在一些实施方式中,可使用其中将基板插置于层之间且使用从硅至基板的布线接合实施连接的硅至硅直接接合方法或“覆晶(flip chip)”方法,将第三集成电路层130接合至第二集成电路层120。

图2是用于使用图像传感器的三个集成电路层检测对象的示例处理200的流程图。处理200可由图1的图像传感器100或某一其他图像传感器执行。

处理200可包括由在第一集成电路层中且基于位置分组成像素传感器群组的像素传感器获得像素信息(210)。例如,第一集成电路层110中的像素传感器群组112中的像素传感器中的每一个可产生像素信息(其是表示由像素传感器感测的光的强度的模拟信号)。在一些实施方式中,像素传感器群组中的每一个包括相同数目的像素传感器。例如,像素传感器群组112中的每一个可包括形成20x 20RCCG子群组的四百个像素传感器。

处理200可包括由第二集成电路层中的图像处理电路群组对来自对应像素传感器群组的像素信息执行图像处理操作以提供经处理像素信息(220)。例如,图像处理电路群组122A可从像素传感器群组112A接收像素信息且对来自像素传感器群组112A的像素信息执行图像处理操作,而图像处理电路群组122B从像素传感器群组112B接收像素信息且对来自像素传感器群组112B的像素信息执行图像处理操作。

在一些实施方式中,图像处理电路群组中的每一个定位于将像素信息提供至图像处理电路群组的像素传感器群组正下方。例如,图像处理电路群组122A可定位于像素传感器群组112A正下方且图像处理电路群组122B可定位于像素传感器群组112B正下方。在一些实施方式中,图像处理电路群组中的每一个可定位成紧邻将像素信息提供至图像处理电路群组的像素传感器群组。在一些实施方式中,第二集成电路层可与第一集成电路层电连通。例如,第二集成电路层120可通过由导电材料形成的互连件连接至第一集成电路层110。

处理200可包括由在第三集成电路层中的神经网络电路群组对来自对应图像处理电路群组的经处理像素信息执行对象检测的分析(230)。例如,神经网络电路群组132A可从图像处理电路群组122A接收经处理像素信息且从来自图像处理电路群组122A的经处理像素信息检测对象,而神经网络电路群组132B从图像处理电路群组122B接收像素信息且从来自图像处理电路群组122B的经处理像素信息检测对象。在另一示例中,神经网络电路群组132可从对应图像处理电路群组122接收经处理像素信息且输出表示检测的像素的选定所关注区域、包含时间和几何位置信息的元数据、在对象检测之前的中间计算结果、关于网络确定性水平的统计信息和检测对象的分类中的一个或多个。

在一些实施方式中,神经网络电路群组各自包括被配置为实施CNN的电路。例如,神经网络电路群组132A可包括用于实施第一CNN的电路且神经网络电路群组132B可包括用于实施第二不同CNN的电路。

卷积神经网络可各自检测由对应于图像处理电路群组(其对应于神经网络电路群组)的像素传感器群组感测的对象。例如,神经网络电路群组132A的CNN可检测由像素传感器群组112A中的像素传感器捕获的第一对象,并且神经网络电路群组132B的CNN可检测由像素传感器群组112B中的像素传感器捕获的第二对象。

在一些实施方式中,第三集成电路层包括被配置为实施RNN的电路。例如,第三集成电路层130可包括被配置用于接收关于由全部神经网络电路群组检测的对象的信息且检测跨像素传感器群组中的多个像素传感器群组感测的对象的RNN的电路。

在一些实施方式中,神经网络电路群组中的每一个定位于将经处理像素信息提供至神经网络电路群组的图像处理电路群组正下方。例如,神经网络电路群组132A可定位于图像处理电路群组122A正下方且神经网络电路群组132B可定位于图像处理电路群组122B正下方。

在一些实施方式中,第三集成电路层可与第二集成电路层电连通。例如,第三集成电路层130可通过由导电材料形成的互连件连接至第二集成电路层120。

处理200可包括输出指示通过神经网络电路群组的对象检测的分析的结果的信息(240)。例如,第三集成电路层130可包括被配置为将来自图像传感器100的元数据输出至图像传感器100外部的中央处理单元的电路,其中元数据指定由神经网络电路群组132检测的对象。

在一些实施方式中,处理200可在第一集成电路层堆叠于第二集成电路层上且第二集成电路层堆叠于第三集成电路层上的情况下执行。例如,处理200可由其中第一集成电路层110的底部直接接触第二集成电路层120的顶部且第二集成电路层120的底部直接接触第三集成电路层130的顶部的图像传感器100执行。

在一些实施方式中,处理200可在第一集成电路层、第二集成电路层和第三集成电路层集成为单个集成芯片中的情况下执行。例如,处理200可由作为单个集成芯片的图像传感器100执行。

图3是具有像素传感器群组的示例集成电路层300的框图。在一些实施方式中,集成电路层300可以是图1中示出的第一集成电路层110。集成电路层300包括像素传感器群组310,用于行驱动器、时序和汽车安全完整性水平的电路320和互连件330。如图3所示,像素传感器群组310各自包括RCCG子群组的多个2x 2阵列,且像素传感器群组310中的每一个包括RCCG子群组的相同数目的2x 2阵列。然而,集成电路层300的其他实施方式可包括不同像素传感器群组。例如,每个像素群组可包括RCCG子群组的3x 3阵列。

图4是具有图像处理电路群组的示例集成电路层400的框图。在一些实施方式中,集成电路层400可以是图1中示出的第二集成电路层120。集成电路层400可包括图像处理电路群组410、用于逻辑和汽车安全完整性水平的电路420和互连件430。如图3所示,图像处理电路群组410中的每一个可包括用于高/低模拟到数字转换器(ADCS)的电路、用于高动态范围融合的电路、用于汽车安全完整性水平的电路、用于像素存储器的电路和用于复用器的电路。复用器可容许在层之间作为单一像素(每像素多个位)或在单一链路(连接)上串行化的像素群组朝向具有神经网络电路群组的集成电路层500路由信息的灵活性。图像处理电路群组410中的每一个可覆盖与将像素信息提供至图像处理电路群组410的像素传感器群组310相同的区域。

图5是具有神经网络电路群组的示例集成电路层500的框图。在一些实施方式中,集成电路层500可以是图1中示出的第三集成电路层130。集成电路层400可包括神经网络电路群组510、用于逻辑和汽车安全完整性水平的电路520、互连件530和RNN。

如图5所示,神经网络电路群组510中的每一个可包括用于存储器的电路、CNN和解复用器。解复用器可将位和像素解串行化以复原所捕获的像素配置。神经网络电路群组510中的每一个可覆盖与将经处理像素信息提供至神经网络电路群组410的图像处理电路群组410相同的区域。

图6是无神经网络电路的示例图像传感器的时序的图600。图600可包括表示传送帧的时序的第一行610、表示捕获帧的时序的第二行620和指示与上文的动作相关的示例时间帧的第三行630。

图600示出了图像传感器可如何每一百毫秒捕获帧(亦称为图像)达十毫秒并且然后传送被传送帧达二十毫秒。图像传感器可在一百毫秒的剩余八十毫秒内空闲。图像传感器可仅每一百毫秒传送单一图像,这是因为对帧的处理是在图像传感器外部完成且每帧花费八十毫秒。例如,图像传感器外部的中央处理单元对全图像的对象检测可花费八十毫秒。因此,图600可示出如何每一百毫秒仅使用单一帧。

图7是具有神经网络电路的示例图像传感器的时序的图700。例如,图700可示出图1的图像传感器100的时序。

图700可包括表示传送帧的时序的第一行710、表示产生与帧内的检测对象相关的神经网络输出数据的时序的第二行720、表示捕获帧的时序的第三行730和指示与上文的动作相关的示例时间帧的第四行740。

图700可示出图像传感器如何每十毫秒捕获帧,其中每一百毫秒,图像传感器传送一帧达二十毫秒且传送针对由图像传感器捕获的十个帧产生的神经网络输出数据达剩余八十毫秒。因此,图像传感器可提供多达图600中的帧十倍的帧的信息,这是因为虽然每一百毫秒仍仅传送单一帧的图像数据,但在图700中,每一百毫秒亦提供十个帧的神经网络输出数据。

由于来自图像传感器的神经网络输出数据可已经指示在该帧和其他帧中是否检测对象,故使图像传感器传送用于进一步处理的帧连同神经网络输出数据可导致图像传感器外部的更少处理。

如图700所示,一旦捕获帧,就产生帧的神经网络输出数据。例如,一旦捕获帧A,然后可从帧A产生神经网络输出数据。在另一示例中,一旦捕获帧B,然后可从帧B产生神经网络输出数据。

在捕获一帧时产生另一帧的神经网络输出数据。例如,可在产生帧A的神经网络输出数据时捕获帧B。使用图像传感器100,第一集成电路层110捕获帧B,同时第三集成电路层130检测对象且产生指示检测的对象的神经网络输出数据。

如图700所示,在产生帧的神经网络输出数据之后传送该神经网络输出数据。例如,一旦从帧A产生神经网络输出数据且一旦已完成传送帧A,就可以传送该神经网络输出数据。在一些实施方式中,一旦群组完成处理,就可开始神经网络输出数据的传送。针对卷动快门传感器,这可以是有效的。

在一些实施方式中,关于传输,图像传感器100还可以复用图像灰度或色彩数据与神经网络输出数据。例如,可将全图像灰度或色彩数据与经预处理对象和时间信息复用成单一数据流。经复用数据流可具有比全图像流信息远远更低(例如,小三倍以上)的输出带宽要求。复用以具有经复用信息的单一串行链路作为相机输出而非多个链路可大大简化车辆级架构,这是因为物理链路的数目可减小。

图8是用于从具有神经网络电路的图像传感器传输神经网络输出数据和图像数据的示例处理800的流程图。处理800可由图1的图像传感器100或某一其他图像传感器执行。

处理800可包括获得由图像传感器的像素传感器捕获的多个图像(810)。例如,图像传感器100的第一集成电路层110中的像素群组112C的像素传感器可每十毫秒捕获不同帧。

处理800可包括使用集成在图像传感器中的神经网络电路分析多个图像用于对象检测(820)。针对示例,图像传感器100的第三集成电路层130中的神经网络电路群组132可检测神经网络电路群组接收其经处理像素信息的帧的部分中的每一个内的对象。

处理800可包括针对多个图像中的每一个使用集成在图像传感器中的神经网络电路产生与用于对象检测的多个图像的分析的结果相关的神经网络输出数据(830)。例如,第一神经网络电路群组132A可产生指示在帧A的部分中检测第一对象的元数据,并且第二神经网络电路群组132B可产生指示在帧A的另一部分中未检测对象的元数据。

处理800可包括从图像传感器传输多个图像中的每一个的神经网络输出数据和多个图像的子集的图像数据而非多个图像中的每一个的图像数据(840)。例如,图像传感器100可传输对应于由神经网络电路群组中的每一个产生的元数据的指示神经网络电路群组是否在由图像传感器100捕获的每个帧的相应部分中检测到对象的数据、以及仅由图像传感器捕获的每第十帧的图像数据。

在一些实施方式中,传输多个图像中的每一个的神经网络输出数据和多个图像的子集的图像数据而非多个图像中的每一个的图像数据包括:传输多个图像中的第一图像的图像数据和第一图像的神经网络输出数据;传输第二图像的神经网络输出数据;以及在传输第二图像的图像数据之前以及在未传输第二图像的图像数据的情况下传输多个图像中的第三图像的图像数据和第三图像的神经网络输出数据。例如,图像传感器100可传输帧A的图像数据,然后传输帧A至帧I的神经网络输出数据,然后传输帧K的图像数据,并且然后传输帧J至帧T的神经网络输出数据。

在一些实施方式中,从图像传感器传输多个图像中的每一个的神经网络输出数据和多个图像的子集的图像数据而非多个图像中的每一个的图像数据包括以每秒特定数目的帧传输多个图像的子集的图像数据以及在未传输多个图像的子集的图像数据时传输图像的神经网络输出数据。例如,图像传感器100可以每秒十个帧传输图像数据(其中传输每个帧的图像数据达十毫秒)且在未传输图像数据时在每秒的剩余九百毫秒期间传输其他图像的神经网络输出数据。

在一些实施方式中,传输神经网络输出数据和图像数据包括将神经网络输出数据和图像数据传输至中央处理单元。例如,图像传感器100可将帧A的图像数据和帧A至帧I的神经网络输出数据传输至计算机,使得计算机可使用帧A和帧A至帧I的神经网络输出数据执行额外对象检测。

在一些实施方式中,处理800包括在传输多个图像中的第一图像的图像数据和第一图像的神经网络输出数据时分析多个图像中的第二图像用于对象检测。例如,第三集成电路层130的神经网络电路群组132可在从图像传感器100输出针对帧A产生的神经网络输出数据时检测帧B中的对象。

在一些实施方式中,处理800包括在捕获第三图像时产生与用于对象检测的多个图像的分析的结果相关的神经网络输出数据。例如,第三集成电路层130的神经网络电路群组132可在第一集成电路层110中的像素群组捕获帧C时产生与帧B内的对象检测相关的神经网络输出数据。

在一些实施方式中,在处理800中,传送其图像数据的多个图像的子集包括由图像传感器捕获的每第N图像,其中N是大于1的整数。例如,多个图像的子集可以是由图像传感器100捕获的每第十图像。在一些实施方式中,在处理800中,图像中的特定图像的图像数据包括指示图像内的每个像素的值的数据。例如,图像数据可以是图像中的每个像素的红-绿-蓝(RGB)强度值。

在一些实施方式中,在处理800中,图像中的特定图像的神经网络输出数据包括表示检测的像素的选定所关注区域、包含时间和几何位置信息的元数据、在对象检测之前的中间计算结果、关于网络确定性水平的统计信息和检测对象的分类中的一个或多个。例如,帧A的神经网络输出数据可指示在帧A的特定坐标处检测人。在一些实施方式中,在处理800中,图像中的特定图像的神经网络输出数据表示提供至处理器用于进一步处理的经部分处理数据。例如,代替表示检测对象,神经网络输出数据可表示要在图像传感器100外部进一步处理以检测对象的经部分处理数据。

图9是包括由自主车辆910使用的图像传感器100的示例系统900的框图。自主车辆910可以是捕获图像、检测图像中的对象并且然后基于自主车辆910检测的对象驾驶的自驾驶车辆。例如,自主车辆910可检测在自主车辆910前方移动的另一车辆,且紧跟在该车辆之后。在另一示例中,自主车辆910可检测在自主车辆910前方的人并停止。

自主车辆910可包括相机光学器件920、图像传感器100和计算机处理模块940。相机光学器件920可包括改变光的透镜。例如,相机光学器件920可包括全景透镜。图像传感器100可接收由相机光学器件920改变的光且基于落在图像传感器100上的光捕获图像。

图像传感器100然后可以跨将图像传感器100和计算机处理模块940电耦合的数据传输电缆将数据传输至计算机处理模块940。例如,图像传感器100可每一百毫秒捕获一帧达十毫秒,且跨数据传输电缆向计算机处理模块940传输每第十捕获帧的图像数据和由图像传感器100捕获的全部帧的神经网络输出数据。计算机处理模块940可从图像传感器100接收图像数据和神经网络输出数据,可选地使用图像数据和神经网络输出数据执行进一步对象检测,并基于检测的对象来确定自主车辆910应如何移动。

因此,使用图像传感器100(在图像传感器100上执行至少某一处理用于对象检测),计算机处理模块940可基于每十毫秒获得的图像确定如何移动,而使用另一图像传感器,计算机处理模块940可仅基于每一百毫秒获得的图像确定如何移动。因此,通过使用图像传感器100而非另一图像传感器,自主车辆940可更快速地检测对象且响应于那些对象而移动。

图10是包括在单独芯片上的像素传感器群组和神经网络电路的示例系统1000的框图。系统1000可以是包括第一芯片1110(其包括像素传感器群组)和第二芯片1120(其包括神经网络电路)的相机。像素传感器群组和神经网络电路可类似于上述像素传感器群组和神经网络电路,除了它们不包括在单个集成芯片内的不同层中而代替地包括在第一芯片1110和第二芯片1120中之外。例如,第一芯片1110和第二芯片1120可定位于系统1000中彼此的顶部上且由导电材料连接,使得数据可在对应像素传感器群组与神经网络电路之间传送。

可在数字电子电路,或在计算机软件、固件或硬件中实施本说明书中描述的操作和主题内容的实施例,包括本说明书中公开的结构和其等结构等效物或它们中的一个或多个的组合。可将本说明书中描述的主题内容的实施例实施为一个或多个计算机程序,即,编码于计算机存储介质上用于由数据处理装置执行或控制数据处理装置的操作的计算机程序指令的一个或多个模块。

计算机存储介质可以是计算机可读存储设备、计算机可读存储基板、随机或串行存取存储器阵列或设备、或它们中的一个或多个的组合,或包括在计算机可读存储设备、计算机可读存储基板、随机或串行存取存储器阵列或设备、或它们中的一个或多个的组合中。再者,虽然计算机存储介质不是传播信号,但计算机存储介质可以是编码于人为产生的传播信号中的计算机程序指令的源或目的地。计算机存储介质也可以是一个或多个单独实体组件或介质(例如,多个CD、磁盘或其他存储设备)或包括在一个或多个单独实体组件或介质(例如,多个CD、磁盘或其他存储设备)中。

本说明书中描述的操作可实施为由数据处理装置对存储于一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。

术语“数据处理装置”涵盖用于处理数据的全部种类的装置、设备和机器,包括(通过示例)可编程处理器、计算机、片上系统、或前述的多个或组合。装置可包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。除了硬件之外,装置也可包括针对所关注计算机程序创建执行环境的代码,例如,构成处理器固件、协议堆栈、数据库管理系统、操作系统、跨平台运行时间环境、虚拟机或它们中的一个或多个的组合的代码。装置和执行环境可实现各种不同计算模型基础设施,诸如网页服务、分布式计算和网格计算基础设施。

计算机程序(也称为程序、软件、软件应用、脚本或代码)可以任何形式的编程语言(包括编译或解译语言,声明或程序语言)编写,且其可以任何形式部署,包括作为独立程序或作为模块、组件、子例程、对象或适用于计算环境中的其他单元。计算机程序可以(但无需)对应于文件系统中的文件。程序可存储于保存其他程序或数据(例如,存储于标记语言文档中的一个或多个脚本)的文件的部分中,存储于专用于所关注程序的单个文件中,或存储于多个协调文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中。计算机程序可被部署以在一个计算机上或在定位于一个站点或跨多个站点分布且由通信网络互连的多个计算机上执行。

本说明书中描述的处理和逻辑流程可由一个或多个可编程处理器执行,该一或多个可编程处理器执行一个或多个计算机程序以通过操作输入数据且产生输出而执行动作。处理和逻辑流程也可由专用逻辑电路(例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路))执行,且装置也可实施为专用逻辑电路(例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路))。

适于执行计算机程序的处理器包括(通过示例)通用微处理器和专用微处理器两者、以及任何种类的数字计算机的任何一个或多个处理器。一般而言,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的主要组件是用于根据指令执行动作的处理器和用于存储指令和数据的一个或多个存储器设备。一般而言,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或可操作地耦合以从该一个或多个大容量存储设备接收数据或将数据传送至该一个或多个大容量存储设备或两者。然而,计算机无需具有此类设备。再者,计算机可嵌入另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动器)等。适于存储计算机程序指令和数据的设备包括全部形式的非易失性存储器、介质和存储器设备,包括(通过示例):半导体存储器设备,例如,EPROM、EEPROM和闪存设备;磁盘,例如,内部硬盘或可移除磁盘;磁光盘;和CD-ROM和DVD-ROM光盘。处理器和存储器可辅以专用逻辑电路或并入专用逻辑电路中。

为提供与用户的交互,本说明书中描述的主题内容的实施例可实施于计算机上,该计算机具有:用于将信息显示给用户的显示设备,例如,CRT(阴极射线管)或LCD(液晶显示器)监视器;和键盘和指向设备,例如,鼠标或轨迹球,通过其用户可将输入提供至计算机。也可使用其他种类的设备来提供与用户的交互;例如,提供给用户的反馈可为任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;且可以任何形式接收来自用户的输入,包括声音、语音或触觉输入。另外,计算机可通过将文档发送至由用户使用的设备以及从该设备接收文档而与用户交互;例如,通过响应于从用户的用户设备上的网页浏览器接收的请求而将网页发送至该网页浏览器。

本说明书中描述的主题内容的实施例可实施于计算系统中,该计算系统包括后端组件(例如,作为数据服务器),或包括中间件组件(例如,应用服务器),或包括前端组件(例如,具有用户可通过其与本说明书中描述的主题内容的实施方式交互的图形用户接口或网页浏览器的用户计算机),或一个或多个此类后端组件、中间件组件或前端组件的任何组合。系统的组件可由任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网络(“LAN”)和广域网(“WAN”)、网间网络(例如,因特网)和自组织对等(peer-to-peer)网络(例如,自组织(ad hoc)对等网络)。

计算系统可包括用户和服务器。用户和服务器通常彼此远离且通常通过通信网络交互。用户和服务器的关系凭借运行于各自计算机上且彼此具有用户-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据(例如,HTML页)传输至用户设备(例如,用于将数据显示给与用户设备交互的用户且自该用户接收用户输入的目的)。可在服务器处从用户设备接收在用户设备处(例如,用户交互的结果)产生的数据。

虽然本说明书包含许多具体实施细节,但不应将此类细节理解为对任何特征或可要求保护的内容的范围的限制,而是应理解为特定于特定实施例的特征的描述。也可在单个实施例中组合实施本说明书中在单独实施例的背景中描述的特定特征。相反地,也可在多个实施例中单独地或以任何适合子组合实施在单个实施例的背景中描述的各种特征。此外,尽管上文可将特征描述为以特定组合作用且甚至最初如此要求保护,但是在一些情况中,来自所要求保护的组合的一个或多个特征可从该组合去除,且该所要求保护的组合可以针对子组合或子组合的变型。

类似地,虽然在图中以特定顺序描绘操作,但不应将此理解为要求依所示出的特定次序或依顺序次序执行此类操作,或执行全部所示的操作以达成期望的结果。在某些境况中,多任务处理和并行处理可以是有利的。再者,不应将上文描述的实施例中的各种系统组件的分离理解为在全部实施例中要求此分离,且应将此理解为所描述的处理组件和系统通常可一起集成在单一软件产品中或封装至多个软件产品中。

因此,已描述主题内容的特定实施例。其他实施例在所附权利要求的范围内。在一些情况中,在权利要求中叙述的动作可依不同次序执行且仍达成期望的结果。另外,附图中描绘的处理不一定要求所示出的特定次序或顺序次序以达成期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。

29页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:遗留物检测装置及遗留物检测方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类