计算机视觉特征检测的硬件加速的制作方法

文档序号:11530872阅读:180来源:国知局
计算机视觉特征检测的硬件加速的制造方法与工艺



背景技术:

本发明大体上涉及启用计算机视觉,且更特定来说涉及改进用于使用计算机视觉检测特征的效率。

计算机视觉为包含获取、处理、分析及理解图像以用于应用中的方法的领域。传统地,耦合到传感器的处理器从传感器获取图像数据,并对从传感器接收的信息执行某些计算机视觉(cv)操作以用于检测特征且因此检测与那些特征相关联的对象。特征可包含例如边缘、拐角等的特征。这些特征可用于确定具有较复杂人类特征的宏观特征,例如面部、微笑及示意动作。执行于处理器上的程序可在多种应用中利用所检测的特征,例如平面检测、面部检测、微笑检测、示意动作检测等。

近年来已付出许多努力以使得计算装置能够在计算装置的视野中检测特征及对象。例如移动装置的计算装置经设计以敏感于由移动装置使用的处理资源量及功率量及热消散。然而,传统地,在计算装置的视野中使用照相机检测特征及对象需要大量处理资源,从而在例如移动装置的计算装置中带来较高功率消耗及较低电池寿命。



技术实现要素:

本发明大体上涉及启用计算机视觉,且更特定来说涉及改进用于使用计算机视觉检测特征的效率。

技术描述用于产生用于来自传感器元件的传感器读数的计算机视觉(cv)标记(例如局部二值模式(lbp)标记)的设备及方法。描述用于通过基于传感器读数产生计算结果而检测例如边缘拐角等的特征的设备及方法。传感器设备可包含包含多个传感器元件的传感器元件阵列。在某些实施方案中,传感器元件可布置成例如列及行的2维阵列,即,传感器元件可沿着传感器元件阵列的至少一第一尺寸及第二尺寸布置。传感器元件可能够基于环境条件产生传感器读数,例如基于入射到传感器元件上的光产生信号或电压差分。传感器设备还可包含直接耦合到传感器元件的像素内电路,或耦合到传感器元件阵列且经配置以从传感器元件中的一或多者接收输出的外围电路。像素内电路及/或外围电路可包含至少一个计算结构,所述计算结构经配置以通过比较主体传感器元件的传感器读数与小于产生标记所需的传感器元件数目的相邻传感器元件的传感器读数而产生用于传感器元件读数中的每一者的标记。另外或替代地,可使用专用cv处理实体实施计算结构,所述处理实体例如专用集成电路(asic)、现场可编程门阵列(fpga)、微处理器或任何其它计算逻辑。

一种用于基于传感器读数产生计算结果的实例设备可包含包含多个传感器元件的传感器元件阵列,多个传感器元件沿着传感器元件阵列的至少一第一尺寸及第二尺寸布置。多个传感器元件中的每一者可能够产生基于入射到传感器元件上的光的传感器读数。传感器元件阵列可包含像素阵列,其中每一像素包括传感器元件及像素内电路,且至少一个计算结构为耦合到传感器元件的像素内电路的部分。在一个实施方案中,传感器元件阵列为视觉传感器,且传感器元件中的每一者包括光电二极管。

所述实例设备还可包含一个计算结构,其经配置以通过比较来自多个传感器元件的主体传感器元件的传感器读数与主体传感器元件的多个相邻传感器元件的子集中的每一者的传感器读数而产生用于主体传感器元件的计算机视觉(cv)标记,所述子集小于产生用于主体传感器元件的cv标记的所需的多个相邻传感器元件。在一个实施方案中,至少一个计算结构为耦合到传感器元件阵列且经配置以从包含主体传感器元件及多个相邻传感器元件的多个传感器元件接收输出的外围电路的部分。在一个实例实施方案中,计算结构为数字计算结构。

用于主体传感器元件的cv标记可为局部二值模式(lbp)标记。在本发明的一个方面中,产生lbp标记需要主体传感器元件与相邻传感器元件之间的八个所计算比较,且在产生用于除了主体传感器元件之外的传感器元件的lbp标记时,计算用于产生用于主体传感器元件的lbp标记的主体传感器元件与相邻传感器元件的至少四个比较。主体传感器元件的相邻传感器元件可为主体传感器元件的紧邻传感器元件。

在本发明的某些方面中,计算结构可包含一或多个比较器,其经配置以比较来自主体传感器元件的传感器读数与来自多个相邻传感器元件的子集的传感器读数以相对于主体传感器元件确定用于相应相邻传感器元件的阈值,并检索针对主体传感器元件的产生cv标记所需的剩余相邻传感器元件所产生的阈值,其中产生用于剩余相邻传感器元件的阈值以用于分别确定用于除了主体传感器元件之外的其它传感器元件的cv标记。在一个实施方案中,用于多个相邻传感器元件中的剩余相邻传感器元件的所检索阈值的二进制补码用于产生cv标记。

用于多个传感器元件中的每一者的cv标记可用于产生用于多个传感器元件的子集的传感器读数的一或多个直方图,并通过比较一或多个直方图与先前所存储直方图而检测宏观特征。在本发明的一个方面中,产生用于主体传感器元件的cv标记以用于检测用于cv应用的边缘或cv特征。如本文中所使用,cv标记可指基于主体像素与其相邻像素元素中的一或多者的比较而计算的cv特征。

本发明的各方面进一步揭示方法及设备,其包括用于执行本发明的上文揭示及通篇揭示的各方面的装置。本发明的各方面进一步揭示非暂时性计算机可读存储媒体,其中所述非暂时性计算机可读存储媒体可包含可由专用计算机视觉微处理器执行以用于执行本发明的上文所论述及在整个本说明书中的各方面的指令。

前文已相当广泛地概述了实例的特征及技术优势,以便使以下的具体实施方式可以得到更好理解。将在下文中描述额外特征及优势。所揭示的概念及特定实例可以容易地用作用于修改或设计用于进行本发明的相同目的的其它结构的基础。此类等效构造不脱离所附权利要求书的精神及范围。当结合附图考虑时,关于本发明的组织及操作方法的被认为是本文中所揭示的概念的特性的特征与相关联优势一起将从以下描述得到更好理解。图式中的每一者都仅出于说明及描述的目的提供且并不提供为对权利要求书的限制的界定。

附图说明

以实例的方式说明本发明的方面。参考图式提供以下描述,其中相同的参考标号始终用于指代相同的元件。虽然本文中描述一或多种技术的各种细节,但其它技术也是可能的。在一些情况下,以框图形式展示熟知结构及装置以便促进描述各种技术。

可参考说明书及图式的剩余部分来实现对由本发明提供的实例的本质及优势的进一步理解,其中贯穿若干图式使用相同参考标号来指代类似组件。在一些情况下,子标记与参考标号相关联以表示多个类似组件中的一者。当在无现有子标记详述的情况下对参考标号进行参考时,参考标号是指全部此类类似组件。

图1说明包括布置成2维阵列的多个传感器元件的实例传感器。

图2说明包括传感器元件及像素内电路的实例像素。

图3说明耦合到传感器阵列的实例外围电路。

图4a说明耦合到专用计算机视觉(cv)处理模块的实例传感器元件阵列。

图4b说明无线地耦合到专用计算机视觉(cv)处理模块的实例传感器元件阵列。

图5说明描绘图像的帧的来自传感器元件阵列的多个传感器读数。

图6a、6b及6c说明用于产生传感器元件读数的局部二值模式(lbp)的实例方法。

图7说明用于产生cv标记的实例相邻传感器元件。

图8说明根据本发明的各方面的在传感器元件处检测到的潜在cv特征的实例表示。

图9a、9b及9c说明使用lbp标记将来自多个传感器元件的传感器读数转换成直方图的过程。

图10a及图10b说明使用四个比较而非八个比较产生lbp标记。

图11a、11b、11c、11d、11e、11f、11g及11h说明用于通过仅执行四个比较产生用于任何给定传感器的lbp标记的实例过程。

图12为根据本发明的某些方面的实例流程图。

图13a为根据本发明的某些方面的实例流程图。

图13b也为根据本发明的某些方面的实例流程图。

图14说明用于执行根据本发明的某些方面的操作的实例像素内电路及/或外围电路。

图15说明在时间处针对九个传感器元件读数的网格执行的实例比较。

图16表示四个连续时钟周期——

图17说明其中可实施一或多个实施例的计算装置的实例。

具体实施方式

现将关于形成其一部分的附图来描述若干说明性实施例。虽然下文描述可实施本发明的一或多个方面的特定实施例,但可使用其它实施例,且可在不脱离本发明的范围或所附权利要求书的精神的情况下进行各种修改。

技术描述用于产生来自传感器元件的传感器读数的cv标记(例如局部二值模式(lbp)标记)的设备及方法。如下文进一步详细描述,此类标记可用于确定例如边缘、拐角等的cv特征。描述用于通过基于传感器读数产生计算结果而检测cv特征的设备及方法。传感器设备可包含包含多个传感器元件的传感器元件阵列。在某些实施方案中,传感器元件可布置成例如列及行的2维阵列,即,传感器元件可沿着传感器元件阵列的至少一第一尺寸及第二尺寸布置。传感器元件可能够基于环境条件产生传感器读数,例如基于入射到传感器元件上的光产生信号或电压差分。传感器设备还可包含直接耦合到传感器元件的像素内电路,或耦合到传感器元件阵列且经配置以从传感器元件中的一或多者接收输出的外围电路。像素内电路及/或外围电路可包含至少一个计算结构,所述计算结构经配置以通过比较主体传感器元件的传感器读数与小于产生标记所需的传感器元件数目的相邻传感器元件的传感器读数而产生用于传感器元件读数中的每一者的标记。另外或替代地,可使用专用cv处理实体实施计算结构,所述处理实体例如专用集成电路(asic)、现场可编程门阵列(fpga)、微处理器或任何其它计算逻辑。

传感器可包含多个传感器元件的传感器元件阵列。传感器元件阵列可为包含以传感器元件阵列的两个尺寸(例如列及行)布置的传感器元件的2维阵列。传感器元件中的每一者可能够基于环境条件产生传感器读数。在某些实施方案中,传感器可为视觉传感器且可基于入射到传感器元件上的光产生传感器读数。图1说明包括布置成2维阵列的多个传感器元件的实例传感器100。在图1中,传感器100的说明表示在传感器元件阵列中的64个(8×8)传感器元件。在各种实施方案中,在不脱离本发明的范围的情况下,传感器元件的形状、传感器元件的数目及传感器元件之间的间隔可极大地变化。传感器元件102表示来自64个传感器元件的网格的实例传感器元件。

在某些实施方案中,传感器元件可具有实施为耦合到传感器元件的像素内电路(计算结构)的专用cv计算硬件。在一些实施方案中,传感器元件及像素内电路一起可被称为像素。由耦合到传感器元件的像素内电路执行的处理可被称为像素内处理。在一些情况下,传感器元件阵列可被称为像素阵列,差异在于像素阵列包含传感器元件及与每一传感器元件相关联的像素内电路两者。图2说明具有传感器元件202及像素内电路204的实例像素200。在某些实施方案中,像素内电路204可为模拟电路、数字电路或其任何组合。

在某些实施方案中,传感器元件阵列可具有实施为耦合到传感器元件群组的外围电路(计算结构)的专用cv计算硬件。此外围电路可被称为芯片上传感器电路。图3说明耦合到传感器元件阵列302的实例外围电路(304及306)。

如本文中所描述,专用cv计算硬件至少部分基于与接近主体传感器元件的多个相邻传感器元件相关联的信号,计算用于主体传感器元件的cv特征或局部化cv特征。在一些实施方案中,计算cv特征或局部化cv特征的专用cv计算硬件(例如,基于硬件的cv计算)不同于常规软件计算技术之处在于软件计算技术在通用处理器上运行基于软件的cv计算算法。接着可针对多个传感器元件中的每一者计算此类cv特征,从而将多个传感器元件中的每一者作为主体传感器元件。应理解,在一些实施方案中,可针对一或多个主体传感器元件的块而非单一主体传感器元件计算局部化cv特征。换句话说,可对并非对应于单一传感器元件而是实际上对应于传感器元件或像素的块的经求和或平均化信号执行cv特征计算。在此类实施方案中,参考主体传感器元件(或与主体传感器元件相关联的信号)及/或相邻传感器元件(或与多个相邻传感器元件相关联的信号)的论述可理解为指代与代替主体传感器元件或相邻传感器元件的主体传感器元件的块相关联的经组合、求和或平均化值。举例来说,可至少部分基于与接近传感器元件块103的多个相邻传感器元件(例如,与传感器元件块104a、104b、104c、104d、104e、104f、104g及/或104h相关联的多个相邻传感器元件)相关联的信号(例如,经组合、求和及/或平均化信号),计算用于传感器元件块103的cv特征。应理解,传感器元件块103、104a、104b、104c、104d、104e、104f、104g及/或104h可包含一乘一个传感器元件(总共一个传感器元件)、一乘二个传感器元件(总共两个传感器元件)、二乘二个传感器元件(总共四个传感器元件)、二乘三个传感器元件(总共六个传感器元件)、三乘三个传感器元件(总共九个传感器元件)等的块。大体来说,传感器元件块可包含任何n乘m块,其中n及m可各自独立地为大于一但小于沿着传感器阵列的两个尺寸中的一者或另一者的传感器元件数目的任何数目。

此外,如图4a中所展示,在某些实施方案中,传感器设备400可具有传感器402、计算机视觉计算硬件404及专用微处理器404。计算机视觉计算硬件404可为用于对所感测信息执行初始处理的如图2、3中所描述的像素内电路或外围电路。专用微处理器406可使用asic、fpga、嵌入式微处理器或用于执行本发明的各方面的任何类似模拟或数字计算逻辑实施。

应注意,至少在某些实施方案中,专用微处理器406是补充应用程序处理器408而非代替应用程序处理器408。举例来说,专用微处理器406可接收检测到的计算机视觉特征、对象类别检测及/或与先前存储图像或参考指示符的模式匹配的指示,以确定宏观特征或检测图像中是否存在参考对象(例如微笑、面部、对象等)。如本文中所使用,宏观特征可指使用基于所计算(例如,硬件计算)cv特征的cv计算或操作检测到的对象(例如面部)或对象的部分或方面(肌理、微笑、面部上的表情)。专用微处理器406可将宏观特征检测的指示发送到应用程序处理器408。应用程序处理器408可获得所述信息并基于所述输入执行动作。举例来说,对于移动装置,应用程序处理器408可在检测到用户的脸部之后解锁移动装置屏幕。类似地,对于玩具狗,应用程序处理器408可在检测到微笑时产生友好狗叫音频。在任何状况下,可由包含专用微处理器406的低功率系统(例如传感器设备400)在相对于直接由应用程序处理器408进行的计算机视觉特征计算具有功率节省的情况下计算较高层级计算机视觉特征。在应用程序处理器相比专用微处理器406为较高功率处理器的实施方案中尤其如此。

通常(例如在移动装置上下文中),应用程序处理器408可相对较复杂、计算密集、功率密集且负责执行系统层级操作(例如操作系统操作),且可实施用户接口以用于与用户互动、执行装置的功率管理、管理存储器及其它资源等,而专用微处理器将相对较不如此。应用程序处理器408可类似于图17的处理器1710。

然而,在某些实施方案中,应用程序处理器408较不复杂且功率较低。举例来说,具有照相机及视频能力的玩具可在传感器设备400自身内检测到儿童正微笑,且接着使用来自应用程序处理器408的逻辑执行狗叫动作。

图4a揭示使用有线接口耦合到应用程序处理器408的专用微处理器406。专用微处理器406与应用程序处理器408之间的有线接口的实例可包含串行外围接口(spi)、互连集成电路(i2c)、低电压差分信令(lvds)或关于这点的任何其它合适的有线协议中的一或多者。

然而,如图4b中所展示,在某些实施方案中,专用微处理器406可使用无线接口耦合到应用程序处理器408。为无线地连接到应用程序处理器408,专用微处理器406可连接到耦合到传感器设备400的中间无线模块410(在图4b中被称作传感器无线模块410)。又,传感器无线模块410可与可耦合到应用程序处理器408的应用程序处理器无线模块412无线地通信。无线模块可经配置以使用一或多个合适无线协议以与应用程序处理器408通信,例如紫蜂(ieee802.15.4标准)、人体局域网络(ieee802.15.6)、无线usb、wi-fi(802.11)、z-wave或irda(基于红外线的通信)。

根据本发明的各方面,在某些实施例中,可根据本发明的各方面改进多种不同传感器。实例传感器可包含视觉传感器、嗅觉传感器及/或化学传感器。尽管贯穿本发明论述视觉传感器,但可在不脱离本发明的范围的情况下在其它类型的传感器中利用类似技术。

在一个实施方案中,技术描述用于在将传感器数据发送到应用程序处理器或传感器设备外部的任何其它处理实体之前在像素内电路、外围电路或专用微处理器内计算特征(例如,cv特征及宏观特征)的专用电路或系统。用于计算特征的此专用电路带来功率节省,这是由于(1)所述电路经优化用于计算特定特征(2)相关于处理器指令解码、存储器转移等涉及较少开销。

另外,可从cv特征导出例如面部、微笑等的宏观特征,且也可使用计算机视觉计算硬件404及/或专用微处理器406产生所述宏观特征。

图5说明描绘图像的实例子部分500的来自传感器元件阵列的传感器读数群组。在一些情况下,来自传感器元件阵列的每一传感器读数可被称为图像像素值。可产生用于传感器元件中的每一者或大部分的标记。在图5中,窗口502表示用于产生用于传感器元件504的标记的3×3窗口的传感器读数。在一个实施方案中,可通过使用与来自窗口的每一传感器元件相关联的标记产生窗口的直方图。

对于所展示图像的子部分500,类似窗口502的九个3×3窗口是可能的,且因此对于子部分500,可计算九个标记。标记可接着用于产生直方图。此直方图可表示关于图像的子部分500内的传感器元件的多个传感器读数的某些特征识别信息。可基于统计或试探法分析直方图以用于识别或检测来自图像内的多个传感器读数的特征。在一些实施方案中,可将直方图相比于先前存储的一或多个直方图。

在一个实施方案中,局部二值模式(lbp)可用于产生与每一传感器元件相关联的标记。又,lbp标记可用于产生直方图。图6a到6c说明用于产生用于传感器元件的lbp标记的实例技术。

图6a说明从来自传感器元件阵列的多个传感器元件取样或感测的若干实例传感器读数,其中中心传感器元件值“70”具有八个相邻传感器读数。在图6b中,计算中心传感器元件读数与邻近传感器元件读数之间的差异或进行比较。图6b中所展示的值是通过分别从邻近传感器元件读数中的每一者减去中心图像传感器读数以分别产生用于邻近传感器元件中的每一者的所得差异所产生。在图5c中,产生用于每一邻近传感器元件的阈值二进制值。将来自图5b的所有负所得差值转换成零并将来自图5b的所有正所得差值转换成一。在某些实施方案中,可使用基于一个数目是大于、等于还是小于另一数目而将比较输出为二进制数目的比较器将来自6b及6c的步骤组合成单一步骤。

一旦针对邻近传感器元件中的每一者确定阈值,通过以二进制串接阈值(例如,“00001111”)或将乘以2的传感器元件放置的乘方的二进制值求和来产生用于中心传感器元件的lbp标记。

1*1+1*2+1*4+1*8+0*16+0*32+0*64+0*128=15

如上文所展示,用于中心传感器元件的所得标记(十进制)值为“15”。

上文关于图6a、6b及6c所说明的实施方案提供为产生标记(且更特定来说,lbp标记)的说明。然而,本发明的各方面不受限于关于图6a、6b及6c所提供的说明。举例来说,如图7中所展示,可通过使用来自并不紧邻传感器元件的传感器元件的传感器读数来产生用于主体传感器元件的标记。举例来说,在图7中,待用于产生lbp标记的主体传感器元件702及相邻传感器元件704并不彼此紧邻。此外,尽管图7说明使用来自关于主体传感器元件的八个传感器元件的读数以产生lbp标记,但任何合适数目个传感器读数可用于产生lbp标记。此外,应理解,关于像素层级lbp所说明的本文中所揭示各种实施方案也可适用于多块lbp。在多块lbp中,求和及/或平均化像素块(例如,2乘2的像素块)。接着对这些块总和或平均值而非如由图6a到6c中的上文论述假定的像素层级值执行图6a到6c中所展示的样本、差异及阈值。本文中所揭示的各种实施方案也可适用于lbp的各种扩展,包含(但不限于)局部三值模式(ltp)。其像素值经平均化及/或求和的块的大小可取决于cv应用而变化。在一些实施方案中,块可至多为11像素乘11像素块或甚至更大。

图8说明根据本发明的某些方面的针对主体传感器元件检测到的潜在cv特征的实例表示。cv特征或局部化cv特征可指低层级cv标示物或指示符,例如与每一传感器元件或传感器的像素相关联的标记。黑方框表示阈值零且白方框表示阈值一。如图8中所展示,可在产生用于来自传感器的传感器读数的lbp标记的过程中检测到若干cv特征(例如斑点、平面、线端、边缘及拐角)。lbp标记可指示来自传感器元件的参考的cv特征是否表示边缘、拐角、曲线、斑点等。可在不脱离本发明的范围的情况下使用例如直方图符号梯度(histogramofsignedgradients,hsg)或lbp的其它合适变化的其它技术以用于检测cv特征。

图9a、9b及9c说明使用lbp标记将来自多个传感器元件的传感器读数转换成直方图的过程。图9a说明考虑用于产生直方图及检测特征的来自图5的多个传感器读数的传感器读数群组(窗口502)。

图9b说明使用图6a到c中所描述的过程产生用于中心传感器元件504的二进制阈值的过程。针对中心传感器元件所产生的标记可由二进制值1111000表示。类似地,可产生用于不同于图5中所展示一者的窗口502及中心传感器元件504的lbp标记以产生(例如)类似图9c中所展示的直方图。每一标记可从主体传感器元件的角度提供cv特征的指示。

图9c说明使用针对来自整个图像或图像的部分(例如,图5的子部分500)的传感器元件中的每一者所产生的标记的直方图。如图9c中所展示,用于来自窗口502的传感器读数的lbp标记中的每一者可在具有255个槽的直方图上的任何位置处。

此直方图可表示关于来自实例子部分500的多个传感器读数的某些特征识别信息。可基于统计或试探法分析直方图以用于识别或检测来自图像内的多个传感器读数的特征。在一些实施方案中,可将直方图与先前存储的直方图进行比较。

然而,应注意,来自图9c的直方图并不按比例绘制或基于所计算值,且简单地表示直方图的视觉说明。所产生直方图可用于检测用于计算机视觉的宏观特征。举例来说,某些直方图模式可表示微笑、面部、对象等。

如图6a到c及图9a到c中所说明,至少在一个实施方案中,产生用于传感器读数的lbp标记引起主体传感器读数与邻近或相邻传感器读数之间的八个单独比较。此类比较是在来自主体传感器元件的传感器读数与来自传感器元件群组的其它传感器读数之间执行以用于产生标记。在一些实施方案中,这些比较是使用类似于图17中所展示的比较器的一或多个比较器执行。在这些大体上微型传感器上执行这些比较消耗功率、时间及电路。

本文中所描述的实施例描述用于通过减少比较数目更高效地产生用于主体传感器元件的传感器读数的标记的技术。如图10a中所展示,为产生用于“5”的中心传感器读数的lbp标记,本发明的各方面描述将中心传感器读数与来自相邻传感器元件的仅四个传感器读数比较,而非进行八个传感器读数比较。图10b说明用于产生lbp值的传感器元件的传感器读数之间的四个比较。举例来说,在第一时钟周期中将“5”相比于“7”,在第二时钟周期中将“5”相比于“8”,在第三时钟周期中将“5”相比于“6”及在第四周期中将“5”相比于“9”。

图11a到h说明用于通过仅执行四个比较产生用于任何给定传感器的lbp标记的实例过程。剩余四个比较执行为计算用于其它传感器元件的lbp标记的部分。应注意,图11a到h提供用于产生标记的实例表示,且实施方案可在何像素被视为相邻像素或总共需要多少阈值以用于产生用于主体传感器元件的标记方面不同。

图11a说明“5”(r2c2)与经遮蔽传感器元件读数之间的四个比较(加粗箭头)。图11b说明“3”(r2c3)与经遮蔽传感器元件读数之间的四个比较(加粗箭头)。图11c说明“7”(r2c4)与经遮蔽传感器元件读数之间的四个比较(加粗箭头)。图11d说明“6”(r2c5)与经遮蔽传感器元件读数之间的三个比较(加粗箭头)。

类似地,图11e说明“4”(r3c2)与经遮蔽传感器元件读数之间的四个比较(加粗箭头)。图11f说明“2”(r3c3)与经遮蔽传感器元件读数之间的四个比较(加粗箭头)。在11f处,即使在图11a中仅针对r2c2(具有读数值“5”的传感器元件)执行四个比较,但r2c2与其所有相邻者的比较现在已完成,且计算用于r2c2的lbp标记所需要的比较值现在可用。图11g说明“4”(r3c4)与经遮蔽传感器元件读数之间的四个比较(加粗箭头)。

如具有传感器元件r2c3的图11h中所说明,即使在图11b中仅针对r2c3(具有读数值“3”的传感器元件)执行四个比较,但r2c3与其所有八个相邻传感器元件的比较可在图11h中用于r2c3传感器元件。根据本发明的某些方面,在产生用于r2c3的lbp标记时再使用用于产生用于其它传感器元件读数的lbp标记所执行的比较(在执行所存储阈值的二的补码或二进制补码之后)。举例来说,图11b中的比较为用于r2c3的lbp标记产生提供仅四个阈值(经遮蔽传感器元件读数)。此时,r2c3与r2c4、r3c2、r3c3及r3c4之间的比较保持用于产生相应阈值。

图11c提供r2c3与r2c4之间的比较。图11e提供r2c3与r3c2之间的比较。图11f提供r2c3与r3c3之间的比较。图11g提供r2c3与r3c4之间的比较。因此,如图11h中所展示,尽管在图11b中仅针对r2c3执行四个比较,但传感器元件读数r2c3的所有八个比较以及其八个相邻传感器元件读数可用于计算阈值且接着产生lbp标记。尽管所说明实施方案提供使用仅四个比较计算lbp标记的能力,但应理解比较数目减少可仅是部分的,从而使得在一些实施方案中比较数目为大于四个但小于八个。因此,在此类实施方案中,比较数目可至少为四个。应注意,如图11a到11g中所展示,任何两个传感器元件读数之间的每一比较仅执行一次,从而带来功率节省、时间节省及电路节省。

还应注意,图11a到11h中所描述的实例仅仅说明用于减少比较器操作数目及用于产生lbp标记的时间的实例技术。在不脱离本发明的范围的情况下也设想到可能进行若干改进。举例来说,可使用多个重复的像素内电路、外围电路或专用cv处理资源同时或并行地执行若干行操作。举例来说,可并行地执行来自图11a及11b的操作,其中在第一时钟周期期间,比较r2c2(“5”)与r1c1(“7”)连同r2c3(“3”)与r1c2(“9”)。

在一些情况下,针对每一比较所产生的阈值存储于存储器缓冲器中,从而使得阈值可再使用(检索)于产生用于相邻传感器元件的lbp标记。应注意,所检索阈值可存储为互补值(例如,使用二的补码),从而使得“零”经存储用于阈值“一”且反之亦然(二的补码)。在其它实施方案中,可在检索所存储值时执行二的补码。互补值可经存储以解释比较(减法)操作中的反向。参考图11a,为产生用于r2c2的标记,从“3”减去“5”以产生所得差异且因此产生阈值。然而,为产生用于r2c3的标记,从“5”减去“3”从而带来相反阈值。

图12为根据本发明的某些方面的实例流程图。可由电路或逻辑执行过程1200(或本文中所描述的任何其它过程或其变化及/或组合)中的一些或全部。电路或逻辑可实施于像素内电路、外围电路或专用cv处理逻辑或其任何组合中。在一些情况下,可使用执行于数字电路上且存储在非暂时性计算机可读存储媒体上的指令实施逻辑的全部或部分。

在框1202处,与传感器元件阵列相关联的组件可比较第一主体传感器元件的传感器读数与第一主体传感器元件的相邻传感器元件的第一子集的传感器读数。在框1204处,与传感器元件阵列相关联的组件可比较第n主体传感器元件的传感器读数与第n主体传感器元件的相邻传感器元件的第n子集的传感器读数,传感器元件的第n子集包含第一主体传感器元件。在框1206处,传感器的组件可针对不同主体传感器元件(其中n为递增值)重复框1204中所描述的过程,直至针对第一主体传感器元件的相邻传感器元件的全部集合执行比较为止。在框1208处,传感器元件阵列的组件可使用针对第一主体传感器元件的相邻传感器元件的全部集合的比较计算用于第一主体传感器元件的计算机视觉特征。在一个实施方案中,通过产生lbp标记计算cv特征。所述比较中的至少一些的二的补码或二进制补码可用于产生lbp标记。

应了解,图12中所说明的特定步骤提供根据一个实施例计算或产生计算机视觉特征或标记的特定方法。在替代性实施例中也可执行其它步骤序列。举例来说,替代性实施例可以不同次序执行上文概述的步骤/框。举例来说,用户可选择从第三操作模式变为第一操作模式,从第四模式变为第二模式,或其间的任何组合。此外,尽管框1202参考“第一主体传感器元件”,但应理解术语“第一”的使用并不意图暗示图12中的步骤的次序,而是可充当区分第一主体传感器元件与第n主体传感器元件的标记。类似地,在某一实施方案中,有可能可继续重复如框1206中所描述的过程,直至已将第一主体传感器元件的相邻传感器元件的全部集合相比于第一主体传感器元件为止,且框1202中的比较可充当导致比较将第一主体传感器元件与第一主体传感器元件的相邻传感器元件的全部集合的过程完成的比较。此外,图12中所说明的个别步骤/框可包含可以个别步骤适合的各种序列执行的多个子步骤。此外,可取决于特定应用添加或移除额外步骤/框。所属领域的一般技术人员将认识并了解所述过程的许多变化、修改及替代例。

图13a为根据本发明的某些方面的另一实例流程图。可由电路或逻辑执行过程1300(或本文中所描述的任何其它过程或其变化及/或组合)中的一些或全部。电路或逻辑可实施于像素内电路、外围电路、专用cv处理逻辑或其任何组合中。在一些情况下,可使用执行于数字电路上且存储在非暂时性计算机可读媒体上的指令实施逻辑的全部或部分。

在框1302处,例如主体传感器元件的组件接收基于入射到主体传感器元件上的光的传感器读数,其中主体传感器元件包含光电二极管。传感器元件可具有提供用于接收基于入射到主体传感器元件上的光的传感器读数的装置的光电二极管。在一个实施方案中,传感器读数为由传感器元件上的入射光所引起的电压读数。在另一实施方案中,传感器读数为超出来自缓冲器或电容器中的先前所存储电压值达阈值的电压改变。

主体传感器元件可为来自形成传感器元件阵列的多个传感器元件的一个传感器元件。多个传感器元件可沿着传感器元件阵列的至少一第一尺寸及第二尺寸布置,类似于图1中所展示的传感器元件阵列的说明。

在框1304处,例如计算结构的组件可比较主体传感器元件的传感器读数与来自多个相邻传感器元件的子集中的每一者的传感器读数以产生当前所计算比较。计算结构可具有如图14中所论述的提供用于比较主体传感器元件的传感器读数与来自多个相邻传感器元件的子集中的每一者的传感器读数的装置的比较器。多个相邻传感器元件中的传感器元件的数目可为用以产生cv标记的所需比较数目。此外,多个相邻传感器元件的子集小于多个相邻传感器元件。计算结构可为模拟计算结构且包含模拟比较器,或计算结构可为数字计算结构且包含用于在传感器读数彼此当中进行比较的数字逻辑。如参考图15所论述,在计算结构处比较主体传感器元件的传感器读数与来自多个相邻传感器元件的子集中的每一者的传感器读数可包含在并行计算结构处同时比较多个主体传感器元件中的每一者的传感器读数与相邻多个主体传感器元件中的每一者的传感器元件的传感器读数。

在框1306处,例如计算结构的组件可存取主体传感器元件与来自计算cv标记所需的多个相邻传感器元件的剩余相邻传感器元件之间的先前所计算比较。如本文中所使用,剩余相邻传感器元件可包含计算cv标记所需的多个相邻传感器元件,但不包含于相邻传感器元件的子集中。暂时缓冲器或存储器可提供用于存储由计算结构存取的先前所计算比较的值的装置。在某些实施方案中,用于剩余相邻传感器元件的所检索阈值的二进制补码或二的补码可用于产生cv标记。数目的二进制补码或二的补码在大部分算术中类似于原始数目的负数,且正数与负数可以自然方式共存。如图11a到h中所展示,执行针对剩余传感器元件的所计算比较以用于产生用于除了主体传感器元件之外的传感器元件的cv标记。可从存储预先计算结果的缓冲器或从并行地计算其它传感器元件的比较的对应计算结构(例如,经由锁存器)检索或存取先前所计算比较。在替代性实施方案中,例如计算结构的组件可随后存取主体传感器元件与来自计算cv标记所需的多个相邻传感器元件的剩余相邻传感器元件之间的所计算比较。

在框1308处,一旦计算结构具有针对来自多个相邻传感器元件的所有相邻传感器元件的比较,计算结构可产生cv标记。因此,计算结构可基于当前所计算比较及先前所计算比较产生用于主体传感器元件的cv标记,先前所计算比较已在计算用于除了主体传感器元件之外的传感器元件的cv标记时产生。如上文参考框1306所提到,在一些实施方案中,计算结构可基于当前所计算比较及随后所计算比较产生用于主体传感器元件的cv标记,其中随后所计算比较是在计算用于除了主体传感器元件之外的传感器元件的cv标记时在当前所计算比较之后执行。计算结构可具有用于提供用于产生cv标记的装置的如参考图14所论述的数字及/或模拟逻辑。在某些实施方案中,使用二进制阈值“一”及“零”进一步分类比较,如描述于图6c及9b中。

相对于相对接近于主体传感器元件的传感器读数,cv标记识别主体传感器元件在任何给定时间点处的传感器读数的特征或提供与主体传感器元件的传感器读数相关联的属性。相对接近于主体传感器元件的传感器元件可被称为相邻传感器元件。在本发明的某些方面中,相邻传感器元件可包含紧邻主体传感器元件的传感器元件。在本发明的某些其它方面中,相邻传感器元件还可包含相对接近于主体传感器元件但不紧邻的传感器元件。举例来说,在某些情况下,当数个传感器的宽度或高度为六十四个传感器元件时,离主体传感器元件达三个传感器元件内的传感器元件可仍被视为相邻传感器元件。在本发明的某些实施方案中,cv标记可为lbp标记。

这些lbp标记可用于产生直方图并识别特征,如图9a到c中更详细描述。在产生lbp标记的某些实施方案中,产生lbp标记可需要主体传感器元件之间的八个所计算比较。在产生lbp标记的某些实施方案中,在产生用于除了主体传感器元件之外的传感器元件的lbp标记时预先计算至少四个比较以用于产生用于主体传感器元件的lbp标记。

然而,可在不脱离本发明的范围的情况下实践产生lbp标记或类似lbp标记的标记的若干不同变化。举例来说,产生标记的某些实施方案可在产生标记时使用主体传感器元件与相邻参考元件之间的大于八个比较或小于八个比较。此外,在某些实施方案中,可使用紧邻的相邻传感器元件、几个传感器元件远的相邻传感器元件或其任何组合产生标记。

应了解,图13a中所说明的特定步骤提供根据一个实施例计算或产生计算机视觉特征或标记的特定方法。在替代性实施例中也可执行其它步骤序列。举例来说,替代性实施例可以不同次序执行上文概述的步骤/框。举例来说,用户可选择从第三操作模式变为第一操作模式,从第四模式变为第二模式,或其间的任何组合。此外,图13a中所说明的个别步骤/框可包含可以个别步骤适合的各种序列执行的多个子步骤。此外,可取决于特定应用添加或移除额外步骤/框。所属领域的一般技术人员将认识并了解所述过程的许多变化、修改及替代例。

图13b为根据本发明的某些方面的另一实例流程图。可由电路或逻辑执行过程1301(或本文中所描述的任何其它过程或其变化及/或组合)中的一些或全部。电路或逻辑可实施于像素内电路、外围电路、专用cv处理逻辑或其任何组合中。在一些情况下,可使用执行于数字电路上且存储在非暂时性计算机可读媒体上的指令实施逻辑的全部或部分。

在框1310处,传感器接收主体传感器元件或主体传感器元件的块的传感器读数。主体传感器元件可具有作为感测元件的光电二极管。传感器读数可包含使用光电二极管检测光。在一个实施方案中,传感器读数为由传感器元件上的入射光所引起的电压读数。在另一实施方案中,传感器读数为超出来自缓冲器或电容器中的先前所存储电压值达阈值的电压改变。

在框1312处,组件比较传感器读数与来自多个相邻传感器元件的子集中的每一者的传感器读数以产生当前所计算比较。多个相邻传感器元件的子集小于多个相邻传感器元件。

在框1314处,组件存取主体传感器元件与剩余相邻传感器元件之间的先前所计算比较。如图11a到h中所展示,针对剩余传感器元件的先前所计算比较是在产生用于除了主体传感器元件之外的传感器元件的cv标记时计算。可从存储预先计算结果的缓冲器或从并行地计算其它传感器元件的比较的对应计算结构(例如,经由锁存器)检索或存取先前所计算比较。

在框1316处,组件产生用于主体传感器元件或传感器元件的块的cv标记。可基于当前比较及先前所计算比较产生cv标记,如本文中在别处所揭示。

相对于相对接近于主体传感器元件的传感器读数,cv标记识别主体传感器元件在任何给定时间点处的传感器读数的特征或提供与主体传感器元件的传感器读数相关联的属性。相对接近于主体传感器元件的传感器元件可被称为相邻传感器元件。

应了解,图13b中所说明的特定步骤提供根据一个实施例计算或产生计算机视觉特征或标记的特定方法。在替代性实施例中也可执行其它步骤序列。举例来说,替代性实施例可以不同次序执行上文概述的步骤/框。举例来说,用户可选择从第三操作模式变为第一操作模式,从第四模式变为第二模式,或其间的任何组合。此外,图13b中所说明的个别步骤/框可包含可以个别步骤适合的各种序列执行的多个子步骤。此外,可取决于特定应用添加或移除额外步骤/框。所属领域的一般技术人员将认识并了解所述过程的许多变化、修改及替代例。

图14说明用于执行根据本发明的某些方面的操作的实例像素内电路或外围电路。举例来说,图9中所展示的多路复用器可经配置以从四个不同相邻传感器元件读数一次一个地选择值以与中心传感器元件读数进行比较,如先前在图10a到b及图11a到h中所描述。图17中展示比较器(“comp”)的实例实施方案。尽管如所说明的图14提供模拟域中的比较实例,但应理解相邻像素之间的比较可在数字域中进行。在此实施方案中,应理解图14中所展示的电路可包含模数转换电路(未示出)。此外,无论比较是在模拟域还是数字域中进行,应理解在外围电路实施方案中,电路及/或功能块(未示出)可插入于vpx与比较器comp之间以及来自相邻单元的vpx与多路复用器1402之间。

图15说明在时间处针对九个传感器元件读数的网格执行的实例比较。在一个说明中,可并行地执行针对若干主体传感器元件的比较,例如可并行地比较针对给定行中的所有像素元素的比较以使得给定行中的所有像素各自同时为主体传感器元件。九个传感器元件读数的顶部四个网格说明传感器元件值,且底部四个网格说明用于在时间中的每一者处所产生的不同主体传感器元件的lbp阈值,其中在所述时间中的每一者中,将多个主体传感器元件中的每一者同时相比于其相邻传感器元件中的一者(或在的状况下,比较相邻传感器元件中的两者)。在图15中,为简单起见,x放置于其中归因于九个传感器元件的所说明网格中未说明比较相邻传感器元件而比较值未知的像素中。图15中的双箭头说明仅在任何两个传感器元件之间执行一次比较。取决于比较是当前所计算比较还是先前所计算比较而使用所存储比较的二的补码。

如图11a到11d中所先前论述,图15进一步说明执行减少数目个比较以用于在减少的时间周期内产生cv特征。可在相同时钟周期期间并行地执行使用重复且并行硬件的若干比较。因此,多个并行计算结构可经配置以同时比较与多个主体传感器元件中的每一者相关联的值与相关联于相邻多个主体传感器元件中的每一者的传感器元件的值,如下文所解释。举例来说,可用适当硬件在几个周期中评估针对整行(例如图15中的r1)中的所有像素的相邻者的子集的比较。因此作为一实例,将r1作为当前正评估的行,r1中的所有像素与定位于下一行r2中但向右一列的所有像素之间的比较(使用行列记法,亦即将与传感器元件r1cj相关联的值相比于与传感器元件r2cj+1相关联的值,其中对于所说明三乘三网格,j=1、2及3)可皆在第一时钟周期中执行;r1中的所有传感器元件与定位于下一行r2中但在相同列中的所有传感器元件之间的比较(亦即将与传感器元件r1cj相关联的值相比于与传感器元件r2cj相关联的值)可皆在第二时钟周期中执行;且接着r1中的所有传感器元件与定位于下一行中但向左一列的所有传感器元件之间的比较(亦即将与传感器元件r1cj相关联的值相比于相关联传感器元件r2cj-1的值)可皆在第三时钟周期处执行。最后,在第四时钟周期中,可执行r1中的像素与定位于相同行r1中的相邻像素之间的比较(亦即将与传感器元件r1cj相关联的值相比于与传感器元件r1cj-1及r1cj+1相关联的值)。因此,在此实例中,在四个周期内,可通过比较所述行中的所有传感器元件的传感器读数与来自所述行中的传感器元件中的每一者的多个相邻传感器元件的子集中的每一者的传感器读数来执行对整行主体传感器元件的评估。如所展示,在处,用于比较主体传感器元件r1c1与r2c2的lbp阈值为“0”。在r2c2为主体传感器元件时(例如,当在类似此处展示的周期的后续四个周期中评估行r2中的所有像素时),并不再现r2c2与r1c1的比较,且二进制补码“1”可用作阈值而无需再次执行或计算所述比较。类似地,在处,用于比较主体传感器元件r1c2与r2c3的lbp阈值也为“0”,如所展示。在r2c3为主体传感器元件时,也不重复此比较。实际上,在计算用于行r2中的主体传感器元件的lbp标记时,这些比较结果可用作先前所计算比较。在处,用于分别比较主体传感器元件r1c1、r1c2及r1c3与其相邻者r2c1、r2c2及r2c3的lbp阈值皆展示为“1”、“0”及“0”。在处,用于分别比较主体传感器元件r1c2及r1c3与其相邻者r2c1及r2c2的lbp阈值展示为“1”及“0”。最后,在处,用于比较主体传感器元件r1c2与其两个r1相邻者r1c1及r1c3的lbp阈值展示为“0”。在r1c1作为主体传感器元件的情况下,二进制补码“1”可用于比较r1c1与其r1相邻者r1c2的lbp阈值而无需执行另一比较。以此方式,到为止,计算出用于r1中的所有传感器元件的lbp标记现在是可能的。对于取决于行r1中的传感器元件与其上一行中的相邻者之间的比较的lbp标记的部分,可使用在评估先前行时执行的先前所计算比较(适当时采用二进制补码)。因此,大体来说,可称可使用类似于上文在时间处所说明的比较的来自先前行评估的先前所计算比较,连同类似于上文在处所说明的比较的来自当前行评估的当前所计算比较来计算用于一行中的所有传感器元件的lbp标记。

图16表示四个连续时钟周期如图15中所展示,在一些情况下,可在四个时钟周期中完成基于与任何给定行的相邻者的子集的比较的用于产生阈值的比较。在四个时钟周期中的每一者期间,同时按行比较整行中的单元。对于每一读出,可将阈值存储于例如静态随机存取存储器(sram)的暂时存储器中。在一些实施方案中,再使用来自sram的值可需要计算所存储值的二的补码且可需要之后的额外时钟周期。

根据一或多个方面,本文中在图1到16中所描述的方法及/或方法步骤中的任一者及/或全部可由例如光传感器设备的传感器设备实施及/或实施于所述传感器设备中。在一些实施例中,传感器元件阵列为光传感器元件阵列,且传感器元件中的每一者包括光电二极管。在一个实施例中,所论述方法步骤中的一或多者可由传感器设备的感测元件及处理逻辑(例如像素内电路及/或外围电路)实施。另外或替代地,本文中所描述的方法及/或方法步骤中的任一者及/或全部可实施在计算机可读指令中,例如存储在计算机可读媒体(例如存储器、存储装置或另一计算机可读媒体)上的计算机可读指令。

图17说明并入在实践本发明的实施例时利用的装置及传感器100的部分的实例计算装置。举例来说,计算装置1700可表示移动装置或任何其它计算装置的组件中的一些。计算装置1700的实例包含(但不限于)桌上型计算机、工作站、个人计算机、超级计算机、视频游戏控制台、平板计算机、智能电话、膝上型计算机、上网本或其它便携式装置。图17提供计算装置1700的一个实施例的示意性说明,所述计算装置可执行如本文中所描述的各种其它实施例提供的方法及/或可充当主机计算装置、远程查询一体机/终端、销售点装置、移动多功能装置、机顶盒及/或计算装置。图17仅意图提供对各种组件的一般化说明,可按需要利用所述组件中的任一者或全部。因此,图17概括地说明可如何以相对分离或相对较集成的方式实施个别系统元件。

展示计算装置1700,其包括可经由总线1705电耦合(或可按需要以其它方式通信)的硬件元件。硬件元件可包含:一或多个处理器1710,包含(但不限于)一或多个通用处理器及/或一或多个专用处理器(例如数字信号处理芯片、图形加速处理器及/或其类似者);一或多个输入装置1715,其可包含(但不限于)一或多个照相机传感器1750、鼠标、键盘及/或其类似者;及一或多个输出装置1720,其可包含(但不限于)显示单元、打印机及/或其类似者。传感器1750模块可包含光传感器、嗅觉传感器及/或化学传感器。图1中描述实例传感器100。在某些方面中,基于帧及/或基于事件的传感器可并入计算装置1700中。本发明的各方面提供使用这些传感器1750有效地计算计算机视觉特征的方法。

计算装置1700可进一步包含一或多个非暂时性存储装置1725(及/或与所述非暂时性存储装置通信),所述非暂时性存储装置可包括(但不限于)本地及/或网络可存取的存储装置,及/或可包含(但不限于)磁盘驱动器、驱动阵列、光学存储装置、例如随机存取存储器(“ram”)及/或只读存储器(“rom”)的固态存储装置,其可为可编程的、可快闪更新的及/或其类似者。此类存储装置可经配置以实施任何适当数据存储装置,包含(但不限于)各种文件系统、数据库结构及/或其类似者。

计算装置1700还可包含通信子系统1730。通信子系统1730可包含用于接收及发射数据的收发器或有线及/或无线媒体。通信子系统1730还可包含(但不限于)调制解调器、网卡(无线或有线)、红外线通信装置、无线通信装置及/或芯片组(例如,bluetoothtm装置、802.11装置、wifi装置、wimax装置、蜂窝式通信设施等)及/或其类似者。通信子系统1730可准许与网络(例如,作为一个实例,下文所描述的网络)、其它计算装置及/或本文中所描述的任何其它装置交换数据。在许多实施例中,计算装置1700将进一步包括非暂时性工作存储器1735,其可包含ram或rom装置,如上文所描述。

计算装置1700可包括展示为当前位于工作存储器1735内的软件元件,包含操作系统1740、装置驱动器、可执行库及/或例如一或多个应用程序1745的其它代码,所述代码可包括由各种实施例所提供及/或可经设计以实施方法及/或配置系统、由其它实施例所提供的计算机程序,如本文中所描述。仅仅作为实例,关于上文所论述的方法描述的一或多个程序可实施为可由计算机(及/或计算机内的处理器)执行的代码及/或指令;接着,在一方面中,此类代码及/或指令可用以配置及/或调适通用计算机(或其它装置)以根据所描述方法执行一或多个操作。

这些指令及/或代码的集合可存储在计算机可读存储媒体(例如,上文所描述的存储装置1725)上。在一些情况下,存储媒体可并入例如计算装置1700的计算装置内。在其它实施例中,存储媒体可与计算装置分离(例如,可装卸式媒体,例如压缩光盘),及/或提供于安装包中,使得存储媒体可用以编程、配置及/或调适上面存储有指令/代码的通用计算机。这些指令可呈可由计算装置1700执行的可执行代码的形式,及/或可呈源及/或可安装代码的形式,所述源及/或可安装代码在计算装置1700上编译及/或安装于所述计算装置上(例如,使用多种通常可用编译程序、安装程序、压缩/解压缩公用程序等中的任一者)之后,接着呈可执行代码的形式。

可根据特定要求作出实质性变化。举例来说,还可使用定制硬件,及/或可将特定元件实施于硬件、软件(包含便携式软件,例如小程序等)或这两者中。此外,可利用到其它计算装置(例如网络输入/输出装置)的连接。

一些实施例可利用计算装置(例如计算装置1700)来执行根据本发明的方法。举例来说,响应于处理器1710执行工作存储器1735中所含有的一或多个指令的一或多个序列(其可并入到操作系统1740及/或例如一或多个应用程序1745的其它代码中),可由计算装置1700执行所描述方法的程序中的一些或全部。可将此类指令从另一计算机可读媒体(例如,存储装置1725中的一或多者)读取到工作存储器1735中。仅仅作为实例,执行工作存储器1735中所含有的指令序列可致使处理器1710执行本文中所描述的方法的一或多个程序。

如本文中所使用,术语“机器可读媒体”及“计算机可读媒体”指代参与提供致使机器以特定方式操作的数据的任何媒体。在使用计算装置1700所实施的实施例中,各种计算机可读媒体可涉及将指令/代码提供到处理器1710以用于执行及/或可用于存储及/或携载此类指令/代码(例如,作为信号)。在许多实施方案中,计算机可读媒体为物理及/或有形存储媒体。此媒体可呈许多形式,包含(但不限于)非易失性媒体、易失性媒体及发射媒体。非易失性媒体包含(例如)光盘及/或磁盘,例如存储装置1725。易失性媒体包含(但不限于)例如工作存储器1735的动态存储器。发射媒体包含(但不限于)同轴缆线、铜线及光纤,包含包括总线1705的电线,以及通信子系统1730的各种组件(及/或通信子系统1730借以提供与其它装置的通信的媒体)。因此,发射媒体还可呈波的形式(包含但不限于无线电、声波及/或光波,例如在无线电波及红外线数据通信期间产生的那些波)。在替代性实施例中,可使用事件驱动组件及装置(例如照相机),其中可在模拟域中执行一些处理。

物理及/或有形计算机可读媒体的常见形式包含(例如)软盘、软磁盘、硬盘、磁带或任何其它磁性媒体、只读光盘(cd-rom)、任何其它光学媒体、穿孔卡、纸带、具有穿孔模式的任何其它物理媒体、随机存取存储器(ram)、可编程只读存储器(prom)、可抹除可编程只读存储器(eprom)、快闪eprom、任何其它存储器芯片或卡盘、如下文中所描述的载波,或计算机可从其读取指令及/或代码的任何其它媒体。

各种形式的计算机可读媒体可涉及将一或多个指令的一或多个序列携载到处理器1710以用于执行。仅仅作为实例,最初可将指令携载于远程计算机的磁盘及/或光盘上。远程计算机可将指令加载到其动态存储器中并将指令作为信号经由发射媒体来发送以由计算装置1700接收及/或执行。根据本发明的各种实施例,可呈电磁信号、声学信号、光信号及/或其类似者的形式的这些信号皆是可在上面对指令进行编码的载波的实例。

通信子系统1730(及/或其组件)大体上将接收信号,且总线1705可接着将信号(及/或由信号所携载的数据、指令等)携载到处理器1710从其检索并执行指令的工作存储器1735。可任选地在由处理器1710执行之前或之后,将由工作存储器1735接收的指令存储在非暂时性存储装置1725上。

上文所论述的方法、系统及装置是实例。各种实施例可在适当时省略、取代或添加各种程序或组件。举例来说,在替代性配置中,所描述的方法可以不同于所描述的次序来执行,及/或可添加、省略及/或组合各种阶段。并且,可在各种其它实施例中组合关于某些实施例所描述的特征。可以类似方式组合实施例的不同方面及元件。并且,技术发展且因此许多元件为实例,其并不将本发明的范围限于那些特定实例。

在描述中给出特定细节以提供对实施例的透彻理解。然而,可在没有这些特定细节的情况下实践实施例。举例来说,并不不必要的详细展示众所周知的电路、过程、算法、结构及技术以免混淆实施例。此描述仅提供实例实施例,且并不旨在限制本发明的范围、适用性或配置。实际上,实施例的前述描述将为所属领域的技术人员提供用于实施本发明的实施例的启迪性描述。可在不脱离本发明的精神及范围的情况下对元件的功能及配置作出各种改变。

并且,将一些实施例描述为以流程图或框图形式描绘的过程。尽管每一流程图或框图可将操作描述为依序过程,但许多操作可并行地或同时执行。另外,操作的次序可重新布置。过程可具有图中未包含的额外步骤。此外,可由硬件、软件、固件、中间件、微码、硬件描述语言或其任何组合来实施所述方法的实施例。当以软件、固件、中间件或微码实施时,用以执行相关联任务的程序代码或代码段可存储在例如存储媒体的计算机可读媒体中。处理器可执行相关联的任务。

已描述若干实施例,可在不脱离本发明的精神的情况下使用各种修改、替代构造及等效物。举例来说,上文元件可仅仅为较大系统的组件,其中其它规则可优先于本发明的应用或以其它方式修改本发明的应用。并且,可在考虑上文元件之前、期间或之后进行数个步骤。因此,上文描述并不限制本发明的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1