CN107430692A - 用于计算机视觉计算的计算层级运算 - Google Patents
用于计算机视觉计算的计算层级运算 Download PDFInfo
- Publication number
- CN107430692A CN107430692A CN201680016216.4A CN201680016216A CN107430692A CN 107430692 A CN107430692 A CN 107430692A CN 201680016216 A CN201680016216 A CN 201680016216A CN 107430692 A CN107430692 A CN 107430692A
- Authority
- CN
- China
- Prior art keywords
- grade
- value
- level
- pixel
- computation levels
- 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
Links
- 230000004438 eyesight Effects 0.000 title claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 230000008859 change Effects 0.000 claims description 39
- 238000001514 detection method Methods 0.000 claims description 18
- 239000012536 storage buffer Substances 0.000 claims description 10
- 230000007613 environmental effect Effects 0.000 claims description 9
- 230000000007 visual effect Effects 0.000 claims description 9
- 235000013399 edible fruits Nutrition 0.000 claims description 2
- 238000007689 inspection Methods 0.000 claims description 2
- 241000208340 Araliaceae Species 0.000 claims 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims 1
- 235000003140 Panax quinquefolius Nutrition 0.000 claims 1
- 235000008434 ginseng Nutrition 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 10
- 238000004891 communication Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 210000001508 eye Anatomy 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical compound C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000005622 photoelectricity Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/446—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering using Haar-like filters, e.g. using integral image techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/70—SSIS architectures; Circuits associated therewith
- H04N25/703—SSIS architectures incorporating pixels for producing signals other than image signals
- H04N25/708—Pixels for edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
呈现用于高效地计算计算机视觉运算的方法、系统、计算机可读存储媒体和设备。在某些方面,揭示用于从来自像素阵列的一或多个像素接收值且表示那些值以促进例如类哈尔特征计算等计算机视觉运算的技术。在一个实施方案中,将所述像素值表示为计算层级;所述计算层级的所述较低等级上方的每一等级包括表示来自所述层级的较低等级的所述值的计算的一或多个值。所述计算可包含所述层级的所述较低等级的所述值的简单和、所述层级的所述较低等级的所述值的加权和、所述层级的所述较低等级的所述值的平均值、基于所述层级的所述较低等级的所述值的局部二值模式、基于所述层级的所述较低等级的所述值的定向梯度的直方图,或基于所述层级的所述较低等级的所述值的其它计算机视觉特征计算。在此实施方案中,可使用所述平均层级来执行所述计算机视觉运算,例如类哈尔特征计算。
Description
背景技术
本发明大体上涉及启用计算机视觉,且更具体来说,涉及使用计算机视觉来改进检测特征的效率。
计算机视觉为包含获取、处理、分析和理解图像以用于应用中的方法的领域。传统地,耦合到传感器的处理器从传感器获取图像数据,并对从传感器接收的信息执行某些计算机视觉(CV)运算以用于检测特征且因此检测与那些特征相关联的对象。特征可包含例如边缘、拐点等特征。在一些情况下,特征还可包含较复杂的特征,例如人类面部、微笑和示意动作。
许多现有计算机视觉算法需要在图像内的指定矩形内计算像素的值的总和或平均值。此类计算机视觉算法可用于(例如)面部检测以及其它类型的基于图像的任务中。一些解决方案并入有积分图像的使用以加速某些计算。
发明内容
描述用于使用计算机视觉来改进检测特征的效率的方法、设备、系统和计算机可读媒体。
在某些方面,揭示用于从来自像素阵列的一或多个像素接收值且表示那些值以促进计算机视觉运算(例如类哈尔特征计算)的技术。在一个实施方案中,将像素值表示为计算层级。所述计算层级的较低等级上方的每一等级可包含表示基于来自所述层级的较低等级的值的计算的一或多个值。
在本发明的某些方面,一种实例方法可包含:将来自像素阵列的两个或更多个像素的值表示为计算层级,所述计算层级的较低等级上方的每一等级包括一或多个值,其表示基于来自所述层级的较低等级的值的计算,且所述计算层级的每一等级与所述像素阵列所捕获的图像中的一区相关联,其中所述像素阵列的每一像素包括感测元件,其能够基于环境条件产生传感器读数;以及仅在像素阵列中的像素的新值与所述像素的先前值相差大于参考阈值的量时,才基于所述像素的新值来更新所述计算层级,且如果所述像素阵列中的像素的值之中没有值已改变大于所述参考阈值,那么不更新所述计算层级。
在某些方面,所述计算可包含所述层级的较低等级的值的简单和、所述层级的所述较低等级的所述值的加权和、所述层级的所述较低等级的所述值的平均值、基于所述层级的较低等级的所述值的局部二值模式(LBP)、基于所述层级的较低等级的所述值的定向梯度的直方图,或基于所述层级的较低等级的所述值的其它计算机视觉特征计算。
实例计算系统,例如移动装置,可确定计算机视觉特征。所述计算机系统可包含:视觉传感器,其包括多个像素,所述像素沿像素阵列的至少一第一维度和一第二维度排列,所述多个像素中的每一者能够基于入射在相应像素上的光而产生信号;层级计算产生硬件,其耦合到所述视觉传感器和存储缓冲器,且经配置以将所述像素阵列的所述多个像素作为计算层级的表示保存在存储缓冲器中,所述计算层级的较低等级上方的每一等级包括一或多个值,其表示基于来自所述层级的较低等级的值的计算,且所述计算层级的每一等级与所述像素阵列所捕获的图像中的区相关联。所述层级计算产生硬件可进一步经配置以仅在新值与先前值相差大于参考阈值的量时,才基于给定等级处的新值来更新所述计算层级的在给定等级上方的等级,且如果给定等级的值之中没有值已改变大于所述参考阈值,那么不更新所述计算层级的在所述给定等级上方的等级。所述实例计算系统还可包含计算机视觉特征计算硬件,其经配置以基于经更新的计算层级来计算计算机视觉特征。
在本发明的某些方面,所述新值可伴有指示给定等级处的一或多个值已改变超出所述参考阈值的事件。所述给定等级可为像素等级,且所述事件包括检测因像素处的感测环境的改变而导致的电压电平的改变超出参考电压阈值。
在本发明的某些方面,计算层级可包含和层级,其中所述和层级的较低等级上方的每一等级包括表示来自所述层级的较低等级的值的经加权求和的一或多个值,且其中所述和层级用于计算图像的样本区的类哈尔特征。可基于对应于和层级中最紧密接近图像的样本区的等级的求和值来计算类哈尔特征。和层级中最紧密接近将求和的图像的样本区的等级包括与由所述图像的所述样本区的子区定界的所述图像中的最大区相关联的等级。
在本发明的某些其它方面,所述计算可基于来自所述层级的较低等级的值,针对所述较低等级上方的等级,是简单和、加权和或平均值中的一者。针对所述层级的较低等级上方的等级的基于来自所述较低等级的值的计算可为计算机视觉计算。在某些实施方案中,更新给定等级上方的计算层级的等级包括仅更新所述给定等级上方的计算层级的等级中的每一者中的值中的一些。
本发明的方面进一步揭示方法和设备,所述设备包括用于执行上文以及本发明通篇所揭示的方面的装置。本发明的各方面进一步揭示一种非暂时性计算机可读存储媒体,其中所述非暂时性计算机可读存储媒体可包含可由专用计算机视觉(CV)微处理器执行以用于执行上文以及贯穿本说明书中所论述的各方面的指令。
前文已经相当广泛地概述了实例的特征和技术优点,以便使以下的具体描述可得到更好理解。将在下文中描述额外特征和优点。所揭示的概念和特定实例可容易地用作用于修改或设计用于实施本发明的相同目的的其它结构的基础。此类等效构造不脱离所附权利要求书的精神和范围。当结合附图考虑时,关于本发明的组织和操作方法的被认为是本文中所揭示的概念的特性的特征与相关联的优点一起将从以下描述得到更好理解。图式中的每一者都仅出于说明和描述的目的提供且并不提供为对权利要求书的限制的界定。
附图说明
以实例的方式说明本发明的方面。在附图中,相同的参考数字指示相似元件。
图1A和1B说明用于使用类哈尔特征来进行面部检测的方法;
图2A和2B说明使用2-D积分图像来高效地计算图像中的任意矩形内的像素值的总和的实例方法;
图3A、3B、3C和3D描述实例和层级;
图4A、4B、4C和4D说明用于在辨识到至少一个像素值中的改变之后确定总和值的求和过程;
图5是说明包括用于检测计算机视觉(CV)特征的视觉传感器的实例系统的方面的框图;
图6是根据本发明的某些方面的实例流程图;
图7是根据本发明的某些方面的另一实例流程图;以及
图8说明可在其中实施一或多个实施例的计算系统的实例。
具体实施方式
现将相对于形成其一部分的附图来描述若干说明性实施例。虽然下文描述可在其中实施本发明的一或多个方面的特定实施例,但可使用其它实施例,且可在不脱离本发明的范围或所附权利要求书的精神的情况下进行各种修改。
图1A和1B说明用于使用类哈尔特征来进行面部检测的实例方法中所使用的求和。参考图1A和1B简要描述的实例方法可使用维奥拉-琼斯(Viola-Jones)算法和类哈尔特征来检测图像内的面部。
典型的类哈尔特征考虑图像内的检测窗中的特定位置处的邻近矩形区,对每一区中的像素强度进行求和,且计算这些总和之间的差。简单的矩形类哈尔特征可定义为矩形内部的区域的像素的总和的差,其在所述原始图像内可在任何位置处且呈任何比例。此差接着用于对图像的子区段进行分类。举例来说,用于面部检测的常见类哈尔特征为处于眼睛和脸颊区上方的两个邻近矩形的集合。这些矩形的位置是相对于如限界框那样对目标对象(在此情况下为面部)起作用的检测窗来定义的。图1A中描绘两个邻近矩形的实例。确定为在左边“黑色”区中的像素值的总和可乘以-1,且确定为在右边“白色”区中的像素值的总和可乘以+1。这两个数字接着可一起进行求和,以获得用于受到含有邻近矩形的窗口限界的图像的区的类哈尔特征的值。可针对窗内(或在一些情况下,窗的子窗内)的每一邻近矩形重复此运算。
在维奥拉-琼斯算法的检测阶段中,在输入图像上方移动目标大小的窗,且针对图像的每一子区段,计算类哈尔特征。接着将差与将非对象与对象分离的习得阈值进行比较。因为此类哈尔特征仅为弱学习者或分类器(其检测质量稍微比随机猜测好),所以大量类哈尔特征对于以充分准确度描述对象来说是必要的。因此,在维奥拉-琼斯算法中,在被称作分类器的某物中组织类哈尔特征以形成强学习者或分类器。
图1B中描绘可由维奥拉-琼斯算法使用的各种邻近矩形。举例来说,邻近矩形可用于检测图像中的边缘特征(例如,1a、1b、1c、1d)。在另一实例中,多个邻近矩形可用于检测图像中的线特征(例如,2a、2b、2c、2d、2e、2f、2g、2h)。在又一实例中,矩形内所含有的矩形可用于检测图像中的环绕中心的特征(例如,3a、3b)。在又一实例中,多个矩形可经布置以检测图像中的特殊对角线线特征(例如,4)。
图2A和2B说明使用2-D积分图像来高效地计算图像中的任意矩形内的像素值的总和的实例方法。归因于所需的大量计算,上文相对于图1A和1B所述的矩形中的像素值的求和可为低效的。使用2-D积分可允许更高效的计算来确定用于受到含有邻近矩形的窗限界的图像的区的像素值的总和。如图2A中所示,对于任何给定x-y坐标,可对从x-y坐标的顶部和左边(左上区)的范围内的所有像素值的总和进行求和(由阴影区说明)。此区中的像素值的总和可保持在存储器中以实现计算效率。所谓的积分图像可被定义为具有原始图像的相同大小的矩阵的形式的二维求和区域查找表。积分图像的每一元件含有位于原始图像的左上区上的所有像素的总和。这允许使用积分图像来快速计算所述图像上方的任意矩形中的像素值的总和。
举例来说,如图2B中所说明,使用积分图像,可通过将x-y坐标2和x-y坐标3的值从x-y坐标4减去,且接着将x-y坐标1与积分图像的x-y坐标4相加,来计算子窗“D”的像素的总和。换句话说:总和(‘D’)=值(‘4’)-值(‘2’)-值(‘3’)+值(‘1’)。因此,仅需要四次查找来确定子窗口“D”的像素的总和。如果将为图像上方的多个不同窗计算像素值总和,那么与使用原始图像值来计算像素值的总和相比,产生积分图像一次可改进计算效率。然而,如果像素值改变,那么积分图像可需要频繁的再计算。举例来说,鉴于积分图像表示图像中的任何x-y坐标处的左上矩形中的像素值的总和,对出现在左上方象限中的像素的改变要求积分图像的许多或大部分重新计算。
与更新积分图像所需的计算的数目相比,和层级可有助于减少所需的计算的数目,以在单个或几个像素改变时更新层级。
图3A到D描述实例和层级,其中图3A说明金字塔的第零等级(例如,与输入图像相关联的像素值),图3B说明金字塔的第一等级,图3C说明金字塔的第二层级,且图3D说明金字塔的第三等级。图3A到D中的各种和可用于代替于使用积分图像来计算类哈尔特征。在其中图像为动态且改变的,但仅很少像素改变预期在相关时间范围内改变的情形中,更新和层级可比更新积分图像更高效。虽然其余描述将借助于实例来描述和层级,但应理解,更一般化地,层级可为计算层级中的一者,其中所述计算层级的较低等级上方的每一等级包括一或多个值,其表示基于来自所述层级的较低等级的值的计算。所述计算可包含所述层级的较低等级的值的简单或加权和、所述层级的较低等级的值的平均值、基于层级的较低等级的值的局部二值模式、基于所述层级的较低等级的值的定向梯度的直方图,或基于所述层级的较低等级的值的其它计算机视觉特征计算。在某一实施方案中,针对每一等级的计算可不同,因此,作为解释性的实例,计算层级中的一个等级可表示基于来自所述一个等级下方的等级的值的总和,而所述计算层级的另一等级可表示基于来自另一等级下方的等级的值的LBP计算。更一般地说,层级中的第一等级可表示基于来自层级中比第一等级低的等级的值的第一计算,而层级中的第二等级可表示基于来自层级中比第二等级低的等级的值的第二计算。在一个实施方案中,第一等级是比第二等级低的等级,且第一计算包含和、加权和或平均值中的一者,而第二计算包含CV特征的计算。
图3A可表示包括64个像素的简化像素阵列300。来自像素阵列的每一像素可包含传感器元件,其能够基于环境条件产生传感器读数。如在图3A中的右下方拐角中可看出,四个像素302a、302b、302c和302d可各自具有与其相关联的像素值,其表示基于环境条件(例如光的强度)的传感器读数。像素阵列300中的所有像素的值可表示图像。
图3B视觉上说明将来自图3A的一组四个单元值(即,像素值)合并或求和成图3B中的单个单元。举例来说,像素阵列的两个或更多个像素可表示为如下文参考图3B、3C和3D所述的和层级。可将来自所述阵列中的所有像素的像素值视为值阵列,且可表示和层级中的最低等级,第零求和等级303。在和层级中,和层级的较低等级(例如303、305、307)上方的每一等级(例如305、307、309)包括一或多个值,其表示来自的层级的较低等级(例如303、305、307)的值的经加权求和。如图3A和3B中所说明,与像素302a、302b、302c和302d相关联的像素值可全部表示为阵列元件中的加权和,作为第一求和等级305中的值304a。值304b、304c和304d还表示来自第零求和等级303的相关联像素值的经加权和。随后,第一求和等级305的值304a、304b、304c和304d可表示为阵列元件中的加权和,作为第二求和等级307的值306a。最后,在所说明的实例中,第二求和等级307的值306a、306b、306c和306d可表示为阵列元件中的加权和,作为第三求和等级309的值308a。在此实例中,第三求和等级309是和层级中的最终求和等级,并且因此表示来自像素阵列300的所有像素值的加权和。并且,和层级的每一等级与像素阵列300所捕获的图像中的区相关联。举例来说,第一求和等级305的值304a与图像的由像素302a、302b、302c和302d表示的区相关联。如所说明,举例来说,第二求和等级307中的值306a与所述图像的由框312所说明的4×4像素区域表示的区相关联。如所说明,举例来说,最终求和等级,第三求和等级309,包含值308a,其与包括整个所说明的图像的区相关联。
如图4A到D中示出,在此类方案中,对于像素值402中的改变,可仅需要九次求和来重新计算整个像素阵列的总和。无需更新表示层级中不受像素值的改变影响的经加权和的值,从而减少计算的数目且降低电力消耗。
金字塔的等级的数目与像素阵列中的像素值的数目成比例。在一个实施方案中,金字塔等级的数目可为对数,且可由|log2[S]|表示,其中S是像素阵列中的像素的数目。对于金字塔中在每一等级处的每一单元,所述单元存储较低等级中在其之下的四个单元的值的总和。最顶端单元(即,图3D)以运载所有像素的总和结束。
应注意,在一些实施例中,来自层级中的较低求和等级的值的加权和为简单和,或在其它实施例中,为来自较低求和等级的值的平均值。取决于特定应用,在其中使用一种加权和优于另一加权和可导致计算、处理或电力节省的实施方案中,简单和、平均值或其它加权方案可为有利的。
可使用大量传感器技术来执行类哈尔特征的检测,包括类似于像素阵列300(图3A)的传感器、例如基于帧的传感器技术或基于事件的传感器技术,或基于混合帧-事件的架构。在此架构中,以给定帧速率(以评价所述像素值的常规时间间隔)评估每一像素处的值;然而,如果新像素值与先前间隔处的先前像素值相差大于某一参考阈值,那么像素将仅输出新像素值。如果像素值尚未改变,或已改变低于参考阈值的量,那么不更新像素值,且仍可使用旧像素值。不管基础传感器技术或架构如何,上文所述的和层级仅在像素值已改变的情况下需要更新,且如果没有像素已使值改变了大于参考阈值的量,那么无需更新。在基于事件或混合帧-事件的技术中,微处理器可接收来自所述传感器的一或多个像素已改变值的指示,且因此可更新和层级中的所实现的和。然而,即使对于基于帧的方法,微处理器也可以算法方式检查,来看和层级是否需要更新。
图4A到D说明用于在辨识到至少一个像素值中的改变之后确定总和值的求和过程。对于4A到D的等级,如果值的改变在像素402处发生,那么仅需要重新计算对应于所述图像的包含改变的像素值的区(像素402)的层级内的单元或子单元。所有其它值(无阴影值)可再用于求和过程,而不进行重新计算。在和层级中,将重新计算对应于加阴影区域408的和(表示整个图像的总和)、加阴影区域406(表示所述图像的一象限的总和,所述象限包含具有改变的像素值的像素402),以及加阴影区域404(表示所述图像在包含像素402的区域中的总和)。
图4A中的加阴影区域(框402)说明像素阵列的在其检测到事件的像素,也就是说,所述像素值在其已改变了超过参考阈值的像素。在图4B中,加阴影区域404说明具有包含像素402的四个像素的像素值的求和值的单元,以及来自图4A的其相邻像素的值。加阴影区域404包含来自图4A的四个子单元的求和,且四个单元的求和需要三次求和。
在图4C中,对于块406,通过对下方等级中的单元(来自图4B的单元)的值进行求和来计算加阴影区域406的值。应注意,图4B中的所有无阴影单元的值均为预计算的,因为在与无阴影单元相关联的像素(来自图4A)中,尚未触发事件。用于确定图4C中的块406的值的求和过程需要针对四个单元的另外三个求和运算。
类似地,在图4D中,可通过对下方等级中的单元的值进行求和来计算整个像素阵列的值。并且,由于图4A中所示的事件,图4C中的无阴影单元的值尚未改变,因为像素402不是无阴影单元中的任一者的子单元,如图4C中所描绘。由此,为了重新计算图4D中的像素阵列的总和,归因于图4A中的像素402处的像素值中的事件或改变,仅需要九次求和。
因此,以上过程通过再用求和层级来优化针对每一x-y坐标处所表示的求和的计算。在下一较高等级处更新给定比例下的所有事件。一旦在给定比例完成更新,就仅通过考虑改变的单元来反复地更新下一较高等级。
可以在某种程度上类似于上文所论述的积分图像的使用的方式来使用和层级。举例来说,如上文所提到,为了计算类哈尔特征,可需要计算给定矩形中的像素值的总和。可参考图4A中的窗414来说明和层级的使用。如果将计算窗414中的所有像素值的总和,那么对应于来自层级中的第一求和等级的单元或块416a和416b(图4B)(以灰视示出)的和值的使用可用以使所述计算比简单地对图4A中的窗414内的所有像素进行求和高效。如可看出,除和值416a和416b之外,还将需要使像素值418a…418n相加。然而,这仍减少为任意窗414计算像素值的总和所需的计算的数目。或者,可通过使用对应于来自层级中的第二求和等级的单元或块420a和420b的总和值来计算窗414(图4C中所示)。在此实例中,为了计算窗414内的像素值的总和,将使对应于420a和420b的总和值相加,减去所有的像素值422a…422n,且使值418i…418n相加。虽然此实例示出某一数目的额外计算,但应理解,来自和层级的总和值的确降低了一些计算复杂性。此外,在其中窗更接近地和与层级中的特定求和等级相关联的区对准的情形中,计算效率将甚至更大。
图5是说明包括用于检测计算机视觉(CV)特征的视觉传感器的实例系统的方面的框图。
视觉传感器可包含多个像素的像素阵列504,类似于图3A和图4A中所论述的像素阵列。像素阵列504可为二维阵列,其包含在像素阵列的两个维度(例如列和行)中排列的像素。所述像素中的每一者可能够基于环境条件而能够产生传感器读数。举例来说,光电二极管可提供用于接收传感器读数的装置。在某些实施方案中,视觉传感器可基于入射到所述像素的光来产生传感器读数。在各种实施方案中,在不脱离本发明的范围的情况下,像素的形状、像素的数目以及像素之间的间距可变化,甚至大大地变化。像素212表示来自像素网格的实例像素。
在某些实施方案中,层级计算产生硬件506模块可实施为耦合到所述像素以用于将CV计算的层级计算值保存在存储缓冲器508的外围电路(计算结构)。在一些情况下,此类外围电路还可被称作芯片上传感器电路。
在某些实施方案中,层级计算产生硬件506可与专用CV计算硬件通信,所述专用CV计算硬件耦合到像素阵列504,且使用专用集成电路(ASIC)、现场可编程门阵列(FPGA)、嵌入式微处理器,或用于执行本发明的方面的任何类似模拟或数字计算逻辑来实施。层级计算产生硬件和CV计算硬件中的一者、另一者或两者的模拟或数字计算逻辑可提供加法器、比较器、多路复用器、多路分用器、移位器和若干其它组件,作为用于执行本文所述的层级或CV计算的装置。
层级计算产生硬件506可将像素阵列的所述多个像素的表示作为计算层级保存在存储缓冲器508中。如先前在图3A到D和4A到D中所论述,计算层级的较低等级上方的每一等级可包含表示基于来自所述层级的较低等级的值的计算的一或多个值,且所述计算层级的每一等级处的一或多个值中的每一者与像素阵列所捕获的图像中的区相关联。根据本发明的某些方面,更新计算层级的在给定等级上方的等级包括仅更新计算层级的在所述给定等级上方的等级中的每一者中的值中的一些。举例来说,在其中像素针对等级分为四个象限的所述等级中,如果在像素网格的四个象限中的一者中检测到事件,那么可仅针对在其中检测到事件的象限执行计算,从而减少所需的计算的数目。
在一些实施方案中,由层级计算产生硬件506保存在存储缓冲器508中的计算层级可包含和层级,其中所述和层级的较低等级上方的每一等级包括表示来自所述层级的较低等级的值的经加权求和的一或多个值。在某些实施方案中,可提供数字、模拟或逻辑多路复用器和多路分用器,作为用于选择和去选择计算层级的某些部分的装置,且数字、模拟或逻辑加法器可用于将来自所述计算层级的某些值相加。
在本发明的某些方面,计算机视觉特征计算硬件510可经配置以从存储缓冲器508读取所述值,且基于所述经更新的计算层级来计算计算机视觉特征。计算机视觉特征计算硬件510可为经配置以在硬件、固件、软件或其任何组合中计算计算机视觉特征的离散处理器或通用处理器。在本发明的一个方面中,针对较低等级上方的等级,计算机视觉计算可基于来自所述层级的较低等级的值。举例来说,和层级可由计算机视觉特征计算硬件510用来为图像中的像素的样本块计算类哈尔特征。样本块可指所述图像的子部分。可基于对应于和层级中最紧密接近所述图像的像素的样本块的等级的求和值来计算类哈尔特征,如参看图4A和窗414所说明。和层级中最紧密接近将求和的将求和的所述图像的样本块的等级可为所述层级中与由所述图像的所述样本块定界的所述图像中的最大区相关联的等级。本文中使用由所述样本块定界的区来指代完全位于所述样本块内的区。或者,和层级中最紧密接近将求和的所述图像的样本区的等级可为所述层级中与所述图像中完全定界所述图像的样本块的最小区相关联的等级。本文中使用定界所述样本块的区来指代完全位于所述区内的块。然而,如图4A和窗414的论述中示出,可存在多种方式,使用所述层级中的不同等级处的不同区来计算像素的样本块内的像素值的总和,所述方式全部比将所述样本块内的像素个别地相加要高效。
在某些实施方案中,逻辑控制502可调用层级计算产生硬件506、存储缓冲器508和计算机视觉特征计算硬件510中的某些功能。举例来说,可在像素阵列504中检测到由于光的变化而产生的光(例如闪烁光,514)和/或电压的改变,且可产生事件。事件可指示光或电压已改变超过预设、预配置或动态地配置的参考阈值,且致使所述事件触发到其它功能块。可提供数字、模拟或逻辑比较器,作为用于执行此类比较的装置。举例来说,事件可触发层级计算产生硬件506来更新计算层级,触发存储缓冲器508来加载或存储信息,且触发计算机视觉特征计算硬件510来计算来自所提供的数据的计算机视觉特征。
此外,可在像素中电路中、外围电路中或专用处理逻辑中或其任何组合中实施本发明的方面。如本文所使用,像素中电路可指代集成到像素阵列504中的电路或逻辑,而外围电路可指代不集成或在像素阵列504外部的电路。并且,本发明的方面可在模拟域和/或数字域或其任何组合中实施。
尽管上文论述视力传感器,但根据本发明的某些方面,多种不同传感器可根据本发明的各方面来改进。实例传感器可包含光传感器、嗅觉传感器和/或化学传感器。虽然贯穿本发明论述光传感器,但在不背离本发明的范围的情况下,可在其它类型的传感器中使用类似技术。
计算机视觉特征计算硬件510可经配置以基于经更新的计算层级来计算计算机视觉特征。
图6是根据本发明的某些方面的实例流程图。过程600中的一些或全部(或本文所描述的任何其它方法,或其变化和/或组合)可由像素阵列上的电路、耦合到所述像素阵列的计算系统或其任何组合来执行。在一些情况下,存储在非瞬时计算机可读媒体上的指令可用于执行下文所描述的一或多个框或框的部分。
在框602处,像素阵列的组件或耦合到所述像素阵列的计算装置接收来自像素阵列的一或多个像素的值,其中每一像素包括能够基于环境条件产生传感器读数的感测元件。
在框604处,像素阵列的组件或耦合到所述像素阵列的计算装置将来自所述像素阵列的值表示为计算层级,所述计算层级的较低等级上方的每一等级包括表示基于来自所述层级的较低等级的值的计算的一或多个值。
在某些方面,所述计算层级包括表示基于来自所述层级的较低等级的值的计算的一或多个值。所述计算可包含所述层级的较低等级的值的简单或加权和、所述层级的较低等级的值的平均值、基于层级的较低等级的值的局部二值模式、基于所述层级的较低等级的值的定向梯度的直方图,或基于所述层级的较低等级的值的其它计算机视觉特征计算。所述计算层级中的不同等级还可表示不同计算。举例来说,所述计算层级的第一等级可表示基于来自所述像素阵列中的像素的值的局部二值模式,且所述层级的较高等级可表示所述第一等级的局部二值模式值的不同计算。作为另一实例,计算层级的第一等级可表示基于来自所述像素阵列中的像素的值的简单或加权和,且所述层级的较高等级可表示局部二值模式、定向梯度的直方图,或基于所述第一等级的其它计算机视觉特征中的一者。所述层级的更加高的等级可表示针对局部二值模式、定向梯度的直方图或其它计算机视觉特征中的一者的不同计算。在一些实施方案中,所述计算层级的至少两个等级涉及对所述较低等级的值执行的不同计算。
在框606处,像素阵列的组件或耦合到所述像素阵列的计算装置为像素辨识新值。举例来说,可响应于或借助于接收至少一个事件来辨识像素的新值。事件可基于检测到因为像素处的感测环境的改变而导致的电压电平的改变超过参考阈值而出现。
在框608处,在某些实施例中,像素阵列的组件,或耦合到所述像素阵列的计算装置仅更新来自所述计算层级的计算的一部分。仅改变与改变的像素相关联的和值,而不重新计算不受影响的和值。
在框610处,像素阵列的组件,或耦合到所述像素阵列的计算装置可使用来自所述计算层级的计算来执行计算机视觉运算。计算机视觉运算可包含检测哈尔或类哈尔特征,如本文针对其中计算层级为和层级的实施方案举例论述。然而,其它计算机视觉方法还使用基于像素值(例如和)的计算,例如LBP或LBP的扩展,且因此其它计算机视觉技术也可得益于计算层级的使用。像素阵列可为一维阵列、二维阵列或三维阵列。
在某些实施例中,将像素阵列中的值表示为计算层级包含将像素阵列中的值表示为平均层级。可使用平均层级来执行计算机视觉运算,例如类哈尔特征计算。
在一个实施方案中,为了求存储值的一组单元的平均值,可将所述组单元分类在一起,以使所述单元中所存储的值达到平均。此技术可允许计算、电力和电路效率,然而也仍可导致破坏性操作,从而毁坏从中产生平均值的数据。
应了解,根据一个实施例,图6中所说明的特定步骤提供更新计算层级以增加后续运算(例如计算机视觉计算和/或运算)的效率的特定方法。在替代实施例中也可执行其它步骤序列。举例来说,替代性实施例可以不同次序执行上文概述的步骤/框。为了说明,用户可选择从第三操作模式变为第一操作模式,从第四模式变为第二模式,或其间的任何组合。此外,图6中说明的个别步骤/框可包含适用于所述个别步骤的以各种序列执行的多个子步骤。此外,可取决于特定应用而添加或去除额外步骤/框。所属领域的一般技术人员将认识到并了解许多变化和修改。
图7是根据本发明的某些方面的实例流程图。过程700中的一些或全部(或本文所描述的任何其它方法,或其变化和/或组合)可由像素阵列上的电路、耦合到所述像素阵列的计算系统或其任何组合来执行。在一些情况下,存储在非瞬时计算机可读媒体上的指令可用于执行下文所描述的一或多个框或框的部分。
在框702处,像素阵列的组件或耦合到像素阵列的计算装置将来自像素阵列的两个或更多个像素的值表示为计算层级,所述计算层级的较低等级上方的每一等级包括表示基于来自所述层级的较低等级的值的计算的一或多个值,且所述计算层级的每一等级与像素阵列所捕获的图像中的区相关联,其中所述像素阵列的每一像素包括能够基于环境条件产生传感器读数的感测元件。
在某些方面,所述计算层级包括表示基于来自所述层级的较低等级的值的计算的一或多个值。所述计算可包含所述层级的较低等级的值的简单或加权和、所述层级的较低等级的值的平均值、基于层级的较低等级的值的局部二值模式、基于所述层级的较低等级的值的定向梯度的直方图,或基于所述层级的较低等级的值的其它计算机视觉特征计算。
在框704处,像素阵列的组件或耦合到像素阵列的计算装置仅在新值与先前值相差大于参考阈值的量时,才基于所述新值来更新计算层级的在给定等级上方的等级,且如果给定等级的值之中不存在已改变大于参考阈值的值,那么不更新计算层级的在所述给定等级上方的等级。举例来说,计算层级的第一等级可表示图像的多个像素的局部二值模式计算。虽然当系统正以给定帧速率捕获图像时,图像中的许多像素值可从图像到图像改变,但局部二值模式的值不能改变。因此,可为示出像素值的高于参考阈值的改变的像素重新计算局部二值模式,但如果局部二值模式值不改变,那么无需重新计算计算层级的较高等级。然而,如果针对此实例的第一等级中的一或多个局部二值模式值检测到改变,那么可更新计算层级的在所述层级的此第一局部二值模式计算等级上方的等级。在此情况下,仅对应于所述图像的与改变的局部二值模式值相同的区的值需要更新,且因此更新计算层级的在给定等级上方的等级可包括仅更新所述计算层级的在所述给定等级上方的等级中的每一者中的值中的一些。对于其中计算层级是和层级的实施方案,像素值的改变将改变对应于显示器的像素存在于其中的区的各种等级中的和的值,而不是每一等级中的所有和值(最高等级除外,其可表示整个图像的总和)。在和层级的情况下,基于给定等级处的新值来更新计算层级的在给定等级上方的等级可包括仅在对应于像素的新值与先前值相差大于参考阈值的量时,才基于像素阵列中的像素的新值,且如果对应于像素阵列中的像素的值之中不存在已改变大于参考阈值的值,那么不更新和层级。
在框706处,计算装置的组件基于经更新的计算层级来计算计算机视觉特征。所述计算层级可包含求和、平均或其它合适的运算。举例来说,计算层级可包含和层级,其中和层级的较低等级上方的每一等级包括表示来自所述层级的较低等级的值的经加权求和。和层级可计算图像的样本区的类哈尔特征。可基于对应于和层级中最紧密接近需要和的区域的等级的求和值来计算类哈尔特征,如上文参看图5所描述。
应了解,根据一个实施例,图7中说明的特定步骤提供更新和/或使用和层级的特定方法。在替代实施例中也可执行其它步骤序列。举例来说,替代性实施例可以不同次序执行上文概述的步骤/框。为了说明,用户可选择从第三操作模式变为第一操作模式,从第四模式变为第二模式,或其间的任何组合。此外,图7中说明的个别步骤/框可包含适用于所述个别步骤的以各种序列执行的多个子步骤。此外,可取决于特定应用而添加或去除额外步骤/框。所属领域的一般技术人员将认识到并了解许多变化和修改。
图8说明可在其中实施一或多个实施例的计算系统的实例。
如图8中所说明的计算系统可作为上文描述的计算机化装置的的一部分而并入。举例来说,计算系统800可表示以下装置的组件中的一些组件:电视机、计算装置、服务器、台式计算机、工作站、汽车中的控制或交互系统、平板计算机、上网本、移动装置或任何其它合适的计算系统。计算装置可为具有图像捕获装置或输入感测单元和用户输出装置的任何计算装置。图像捕获装置或输入感测单元可为相机装置。用户输出装置可为显示单元。计算装置的实例包含但不限于视频游戏控制台、平板计算机、智能电话以及任何其它手持式装置。图8提供计算系统800的一个实施方案的示意性说明,所述计算系统可执行通过各种其它实施例提供的方法(如本文所描述),和/或可充当主机计算系统、远程查询一体机/终端、销售点装置、汽车中的电话或导航或多媒体接口、计算装置、机顶盒、台式计算机和/或计算系统。图8仅希望提供对各种组件的一般化说明,可在适当时利用所述组件中的任一者或全部。因此,图8广泛地说明可以如何以相对分离或相对较集成的方式实施个别系统元件。
计算系统800示出为包括可通过总线802电耦合(或可在适当时以其它方式通信)的硬件元件。硬件元件可包含一或多个处理器804,包含(不限于)一或多个通用处理器、和/或一或多个专用处理器(例如数字信号处理芯片、图形处理单元822、视觉传感器826的专用微处理器824,和/或类似者);一或多个输入装置808,其可包含(不限于)一或多个相机、传感器、鼠标、键盘、麦克风,其经配置以检测超声或其它声音,和/或类似者;以及一或多个输出装置810,其可包含(不限于)显示单元,例如用于本发明的实施方案中的装置、打印机和/或类似者。额外相机820可用于检测用户的肢体和手势。在一些实施方案中,输入装置808可包含一或多个传感器,例如红外线传感器、深度传感器和/或超声波传感器。计算机系统800还可包含视觉传感器826,其可包含像素阵列828和专用微处理器824。专用微处理器824可执行上文所述的计算,例如计算和存储计算层级。类似地,视觉传感器826可包含外围电路,例如模拟或数字计算块、存储块和/或扫描窗,其可参与本文其它地方描述的计算层级的实施方案,且可以电子方式安置于像素阵列828与专用微处理器824之间。计算机视觉特征计算的计算和使用,计算层级可因此驻存在专用微处理器824或外围电路中,或可分布在两者之间。应理解,上文所述的计算还可在计算机系统800的处理器800中执行。
在本发明的实施方案的一些实施方案中,各种输入装置808和输出装置810可嵌入到例如显示装置、桌子、地板、墙壁和窗纱等接口中。此外,耦合到处理器的输入装置808和输出装置810可形成多维跟踪系统。
计算系统800可进一步包括以下各项(和/或与以下各项通信):一或多个非暂时性存储装置806,其可包括(但不限于)本地和/或网络可存取的存储装置,和/或可包括(但不限于)磁盘驱动器、驱动阵列、光学存储装置、固态存储装置,例如随机存取存储器(“RAM”)和/或只读存储器(“ROM”),其可为可编程的、可快闪更新的和/或类似者。此些存储装置可经配置以实施任何适当数据存储装置,包含(但不限于)各种文件系统、数据库结构和/或类似者。
计算系统800可能还包含通信子系统812,其可包含(但不限于)调制解调器、网卡(无线或有线)、红外线通信装置、无线通信装置和/或芯片组(例如,蓝牙装置、802.11装置、WiFi装置、WiMax装置、蜂窝式通信设施等)和/或其类似者。通信子系统812可准许与网络、其它计算机系统和/或本文中所描述的任何其它装置交换数据。在许多实施方案中,计算系统800将进一步包括非暂时性工作存储器818,其可包括RAM或ROM装置,如上文所描述。
计算系统800还可包括软件元件,示出为当前位于工作存储器818内,包含操作系统814、装置驱动器、可执行库和/或其它代码,例如一或多个应用程序816,其可包括各种实施方案所提供的计算机程序,和/或可设计成实施方法和/或配置系统,由其它实施方案提供,如本文所述。仅举例来说,相对于上文所论述的方法而描述的一或多个程序可实施为可由计算机(和/或计算机内的处理器)执行的代码和/或指令;在一方面中,接着,可使用此代码和/或指令来配置和/或调适通用计算机(或其它装置),以根据所描述的方法(例如包含在先前图式中的任一者中描述的方法)来执行一或多个运算。
这些指令和/或代码的集合可存储在计算机可读存储媒体上,例如,上文所描述的存储装置806。在一些情况下,存储媒体可并入于计算系统(例如,计算系统800)内。在其它实施方案中,存储媒体可与计算系统分离(例如,可装卸式媒体(例如,压缩光盘),和/或提供于安装包中,使得存储媒体可用以编程、配置和/或调适其上存储有指令/代码的通用计算机。这些指令可呈可由计算系统800执行的可执行代码形式,和/或可呈源代码和/或可安装代码的形式,所述源代码和/或可安装代码在由计算系统800编译和/或安装于计算系统上后(例如,使用多种通常可用编译程序、安装程序、压缩/解压缩公用程序等中的任一者),接着采取可执行代码的形式。
可根据具体要求作出实质性变化。举例来说,还可使用定制硬件,和/或可将特定元件实施于硬件、软件(包括便携式软件,如小程序等)或两者中。另外,可利用到其它计算装置(例如网络输入/输出装置)的连接。在一些实施方案中,可省略计算系统800的一或多个元件或可将其与所说明系统分开来实施。举例来说,可将处理器804和/或其它元件与输入装置808分开实施。在一个实施方案中,处理器经配置以接收来自分别实施的一或多个相机的图像。在一些实施方案中,除图8中说明的元件之外的元件可包含于计算系统800中。
一些实施方案可使用计算系统(例如计算系统800)来执行根据本发明的方法,例如图5A和5B中所描述的方法,以及参考图3A到3D以及4A到4D所描述的技术。举例来说,可由计算系统800响应于处理器804执行工作存储器818中所含有的一或多个指令(其可能并入到操作系统814和/或如应用程序816的其它代码中)的一或多个序列来执行所描述的方法的程序中的一些或全部。在一些实施方案中,处理器804可执行上文所述的计算,例如计算和存储计算层级。可将此类指令从另一计算机可读媒体(例如存储装置806中的一或多者)读取到工作存储器818中。仅举例来说,包含于工作存储器818中的指令序列的执行可致使处理器804执行本文所描述的方法的一或多个程序。
如本文中所使用,术语“机器可读媒体”和“计算机可读媒体”指代参与提供致使机器以特定方式操作的数据的任何媒体。在使用计算系统800实施的一些实施方案中,各种计算机可读媒体可参与向处理器804提供指令/代码以供执行,和/或可用以存储和/或运载此类指令/代码(例如作为信号)。在许多实施方案中,计算机可读媒体可为物理和/或有形存储媒体。此媒体可采用许多形式,包含但不限于非易失性媒体、易失性媒体和传输媒体。非易失性媒体包含(例如)光盘和/或磁盘,例如存储装置806。易失性媒体包含(但不限于)动态存储器,例如工作存储器818。传输媒体包括但不限于同轴电缆、铜线和光纤,包含包括总线802的导线,以及通信子系统812的各种组件(和/或通信子系统812提供与其它装置的通信所借助于的媒体)。因此,传输媒体还可呈波的形式(包含(但不限于)无线电波、声波和/或光波,例如,在无线电波和红外线数据通信期间产生的那些波)。
举例来说,常见形式的物理和/或有形计算机可读媒体包含软盘、软性磁盘、硬盘、磁带或任何其它磁性媒体、CD-ROM、任何其它光学媒体、打孔卡、纸带、具有孔图案的任何其它物理媒体、RAM、PROM、EPROM、快闪EPROM、任何其它存储器芯片或盒带、如下文所描述的载波,或计算机可从中读取指令和/或代码的任何其它媒体。
各种形式的计算机可读媒体可参与将一或多个指令的一或多个序列运载到处理器804以供执行。仅举例来说,最初可将指令运载于远程计算机的磁盘和/或光盘上。远程计算机可能将指令加载到其动态存储器中,并经由传输媒体将指令作为信号进行发送以由计算系统800接收和/或执行。根据本发明的各种实施方案,可能呈电磁信号、声学信号、光学信号和/或类似者的形式的这些信号是可在其上编码指令的载波的全部实例。
通信子系统812(和/或其组件)通常将接收信号,且总线802可接着将信号(和/或由信号所运载的数据、指令等)运载到处理器804从其中检索并执行指令的工作存储器818。可在由处理器804执行之前或之后任选地将由工作存储器818接收的指令存储在非暂时性存储装置806上。
应理解,所揭示过程中的步骤的特定次序或层级是示范性方法的说明。基于设计偏好,应理解,可重新排列所述过程中的步骤的特定次序或层级。另外,可组合或省略某些步骤。随附的方法主张各种步骤的目前元素呈样本次序,且无意限于所呈现的特定次序或层级。
提供先前描述是为了使所属领域的技术人员能够实践本文中所描述的各种方面。对这些方面的各种修改对于所属领域的技术人员来说将容易显而易见,并且本文中定义的一般原理可适用于其它方面。此外,本文中所揭示的任何内容无意献给公众。
Claims (30)
1.一种用于确定计算机视觉特征的计算系统,其包括:
视觉传感器,其包括多个像素,所述像素沿像素阵列的至少一第一维度和一第二维度排列,所述多个像素中的每一者能够基于入射在所述相应像素上的光产生信号;
层级计算产生硬件,其耦合到所述视觉传感器和存储缓冲器,且经配置以将所述像素阵列的所述多个像素的表示作为计算层级保存在所述存储缓冲器中,所述计算层级的较低等级上方的每一等级包括表示基于来自所述层级的所述较低等级的值的计算的一或多个值,且所述计算层级的每一等级与所述像素阵列所捕获的图像中的区相关联;
所述层级计算产生硬件进一步经配置以仅在给定等级处的新值与先前值相差大于参考阈值的量时,才基于所述新值来更新所述计算层级的在所述给定等级上方的等级,且如果所述给定等级的值之中不存在已改变大于所述参考阈值的值,那么不更新所述计算层级的在所述给定等级上方的所述等级;以及
计算机视觉特征计算硬件,其经配置以基于所述经更新的计算层级来计算计算机视觉特征。
2.根据权利要求1所述的计算系统,其中所述新值伴有指示所述给定等级处的一或多个值已改变超过所述参考阈值的事件。
3.根据权利要求2所述的计算系统,其中所述给定等级是像素等级,且所述事件包括检测因所述像素处的感测环境的改变超过参考电压阈值而导致的电压电平的改变。
4.根据权利要求1所述的计算系统,其中所述计算层级包括和层级,其中所述和层级的所述较低等级上方的每一等级包括表示来自所述层级的所述较低等级的值的经加权求和的一或多个值,且其中所述和层级用于计算图像的样本区的类哈尔特征。
5.根据权利要求4所述的计算系统,其中基于对应于所述和层级中最紧密接近所述图像的所述样本区的等级的求和值来计算所述类哈尔特征。
6.根据权利要求5所述的计算系统,其中所述和层级中最紧密接近将求和的所述图像的所述样本区的所述等级包括与所述图像中由所述图像的所述样本区的所述子区限界的最大区相关联的等级。
7.根据权利要求1所述的计算系统,其中针对所述较低等级上方的所述等级的基于来自所述层级的所述较低等级的所述值的所述计算是简单和、加权和或平均值中的一者。
8.根据权利要求1所述的计算系统,其中针对所述较低等级上方的所述等级的基于来自所述层级的所述较低等级的所述值的所述计算是计算机视觉计算。
9.根据权利要求1所述的计算系统,其中更新所述计算层级的在给定等级上方的所述等级包括仅更新所述计算层级的在所述给定等级上方的所述等级中的每一者中的所述值中的一些值。
10.一种方法,其包括:
将来自像素阵列的两个或更多个像素的值表示为计算层级,所述计算层级的较低等级上方的每一等级包括表示基于来自所述层级的所述较低等级的值的计算的一或多个值,且所述计算层级的每一等级与所述像素阵列所捕获的图像中的区相关联,其中所述像素阵列的每一像素包括能够基于环境条件产生传感器读数的感测元件;
仅在给定等级处的新值与先前值相差大于参考阈值的量时,才基于所述新值来更新所述计算层级的在所述给定等级上方的等级,且如果所述给定等级的值之中不存在已改变大于所述参考阈值的值,那么不更新所述计算层级的在所述给定等级上方的所述等级;以及
基于所述经更新的计算层级来计算计算机视觉特征。
11.根据权利要求10所述的方法,其中所述新值伴有指示所述给定等级处的一或多个值已改变超过所述参考阈值的事件。
12.根据权利要求11所述的方法,其中所述给定等级是像素等级,且所述事件包括检测因所述像素处的感测环境的改变超过参考电压阈值而导致的电压电平的改变。
13.根据权利要求10所述的方法,其中所述计算层级包括和层级,其中所述和层级的所述较低等级上方的每一等级包括表示来自所述层级的所述较低等级的值的经加权求和的一或多个值,且其中所述和层级用于计算图像的样本区的类哈尔特征。
14.根据权利要求13所述的方法,其中基于对应于所述和层级中最紧密接近所述图像的所述样本区的等级的求和值来计算所述类哈尔特征。
15.根据权利要求14所述的方法,其中所述和层级中最紧密接近将求和的区域的等级包括与所述图像中由所述图像的所述样本区的所述子区限界的最大区相关联的所述等级。
16.根据权利要求10所述的方法,其中所述像素阵列是二维阵列。
17.根据权利要求10所述的方法,其中针对所述较低等级上方的所述等级的基于来自所述层级的所述较低等级的所述值的所述计算是简单和、加权和或平均值中的一者。
18.根据权利要求10所述的方法,其中针对所述较低等级上方的所述等级的基于来自所述层级的所述较低等级的所述值的所述计算是计算机视觉计算。
19.根据权利要求10所述的方法,其中更新所述计算层级的在给定等级上方的所述等级包括仅更新所述计算层级的在所述给定等级上方的所述等级中的每一者中的所述值中的一些值。
20.一种设备,其包括:
用于将来自像素阵列的两个或更多个像素的值表示为计算层级的装置,所述计算层级的较低等级上方的每一等级包括表示基于来自所述层级的所述较低等级的值的计算的一或多个值,且所述计算层级的每一等级与所述像素阵列所捕获的图像中的区相关联,其中所述像素阵列的每一像素包括能够基于环境条件产生传感器读数的感测元件;
用于仅在给定等级处的新值与先前值相差大于参考阈值的量时,才基于所述新值来更新所述计算层级的在所述给定等级上方的等级,且如果所述给定等级的值之中不存在已改变大于所述参考阈值的值,那么不更新所述计算层级的在所述给定等级上方的所述等级的装置;以及
用于基于所述经更新的计算层级来计算计算机视觉特征的装置。
21.根据权利要求20所述的设备,其中所述新值伴有指示所述给定等级处的一或多个值已改变超过所述参考阈值的事件。
22.根据权利要求21所述的设备,其中所述给定等级是像素等级,且所述事件包括检测因所述像素处的感测环境的改变超过参考电压阈值而导致的电压电平的改变。
23.根据权利要求20所述的方法,其中所述计算层级包括和层级,其中所述和层级的所述较低等级上方的每一等级包括表示来自所述层级的所述较低等级的值的经加权求和的一或多个值,且其中所述和层级用于计算图像的样本区的类哈尔特征。
24.根据权利要求23所述的设备,其中基于对应于所述和层级中最紧密接近所述图像的所述样本区的等级的求和值来计算所述类哈尔特征。
25.根据权利要求24所述的设备,其中所述和层级中最紧密接近将求和的区域的等级包括与所述图像中由所述图像的所述样本区的所述子区限界的最大区相关联的所述等级。
26.根据权利要求20所述的设备,其中所述像素阵列是二维阵列。
27.根据权利要求20所述的设备,其中针对所述较低等级上方的所述等级的基于来自所述层级的所述较低等级的所述值的所述计算是简单和、加权和或平均值中的一者。
28.一种非暂时性计算机可读存储媒体,其中所述非暂时性计算机可读存储媒体包括可由处理器执行以进行以下操作的指令:
将来自像素阵列的两个或更多个像素的值表示为计算层级,所述计算层级的较低等级上方的每一等级包括表示基于来自所述层级的所述较低等级的值的计算的一或多个值,且所述计算层级的每一等级与所述像素阵列所捕获的图像中的区相关联,其中所述像素阵列的每一像素包括能够基于环境条件产生传感器读数的感测元件;
仅在给定等级处的新值与先前值相差大于参考阈值的量时,才基于所述新值来更新所述计算层级的在所述给定等级上方的等级,且如果所述给定等级的值之中不存在已改变大于所述参考阈值的值,那么不更新所述计算层级的在所述给定等级上方的所述等级;以及
基于所述经更新的计算层级来计算计算机视觉特征。
29.根据权利要求28所述的非暂时性计算机可读存储媒体,其中所述计算层级包括和层级,其中所述和层级的所述较低等级上方的每一等级包括表示来自所述层级的所述较低等级的值的经加权求和的一或多个值,且其中所述和层级用于计算图像的样本区的类哈尔特征。
30.根据权利要求29所述的非暂时性计算机可读存储媒体,其中基于对应于所述和层级中最紧密接近所述图像的所述样本区的等级的求和值来计算所述类哈尔特征。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562142336P | 2015-04-02 | 2015-04-02 | |
US62/142,336 | 2015-04-02 | ||
US14/861,968 US9704056B2 (en) | 2015-04-02 | 2015-09-22 | Computing hierarchical computations for computer vision calculations |
US14/861,968 | 2015-09-22 | ||
PCT/US2016/019657 WO2016160196A1 (en) | 2015-04-02 | 2016-02-25 | Computing hierarchical computations for computer vision calculations |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107430692A true CN107430692A (zh) | 2017-12-01 |
Family
ID=55637446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680016216.4A Pending CN107430692A (zh) | 2015-04-02 | 2016-02-25 | 用于计算机视觉计算的计算层级运算 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9704056B2 (zh) |
EP (1) | EP3278273A1 (zh) |
JP (1) | JP2018514853A (zh) |
CN (1) | CN107430692A (zh) |
WO (1) | WO2016160196A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160042246A1 (en) * | 2013-03-22 | 2016-02-11 | Freescale Semiconductor, Inc. | A haar calculation system, an image classification system, associated methods and associated computer program products |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1959670A (zh) * | 2005-11-02 | 2007-05-09 | 北京灵图软件技术有限公司 | 以金字塔架构存储地形影像数据的方法 |
CN101915913A (zh) * | 2010-07-30 | 2010-12-15 | 中交第二公路勘察设计研究院有限公司 | 一种稳健的高分辨率卫星影像连接点自动匹配方法 |
CN102117494A (zh) * | 2009-12-30 | 2011-07-06 | 新奥特(北京)视频技术有限公司 | 一种三维建模中的数据分层分块方法及装置 |
CN103838548A (zh) * | 2012-11-26 | 2014-06-04 | 辉达公司 | 用于对层次深度图采样的系统、方法和计算机程序产品 |
CN103903295A (zh) * | 2014-04-04 | 2014-07-02 | 四川川大智胜软件股份有限公司 | 一种基于InfiniBand实时调度海量高精度三维场景数据的方法 |
US20140368688A1 (en) * | 2013-06-14 | 2014-12-18 | Qualcomm Incorporated | Computer vision application processing |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5022091A (en) * | 1990-02-28 | 1991-06-04 | Hughes Aircraft Company | Image processing technique |
US5280547A (en) * | 1990-06-08 | 1994-01-18 | Xerox Corporation | Dense aggregative hierarhical techniques for data analysis |
US5543590A (en) | 1992-06-08 | 1996-08-06 | Synaptics, Incorporated | Object position detector with edge motion feature |
US6822563B2 (en) | 1997-09-22 | 2004-11-23 | Donnelly Corporation | Vehicle imaging system with accessory control |
JPH0799646A (ja) | 1993-05-31 | 1995-04-11 | Sony Corp | ディジタル画像信号の階層符号化および復号装置 |
US5808690A (en) * | 1996-01-02 | 1998-09-15 | Integrated Device Technology, Inc. | Image generation system, methods and computer program products using distributed processing |
JP3212874B2 (ja) | 1996-04-19 | 2001-09-25 | 日本電気株式会社 | ボロメータ型赤外線撮像装置 |
US6195463B1 (en) * | 1997-07-03 | 2001-02-27 | Sony Corporation | Multiresolution image processing and storage on a single chip |
US6738424B1 (en) * | 1999-12-27 | 2004-05-18 | Objectvideo, Inc. | Scene model generation from video for use in video processing |
US7010163B1 (en) * | 2001-04-20 | 2006-03-07 | Shell & Slate Software | Method and apparatus for processing image data |
US7151844B2 (en) | 2001-12-06 | 2006-12-19 | General Motors Corporation | Image sensor method and apparatus having hardware implemented edge detection processing |
US7324665B2 (en) * | 2002-09-16 | 2008-01-29 | Massachusetts Institute Of Technology | Method of multi-resolution adaptive correlation processing |
EP1593258B1 (en) | 2003-02-03 | 2009-04-22 | Goodrich Corporation | Random access imaging sensor |
US8902971B2 (en) | 2004-07-30 | 2014-12-02 | Euclid Discoveries, Llc | Video compression repository and model reuse |
US7038185B1 (en) | 2004-12-01 | 2006-05-02 | Mitsubishi Electric Research Laboratories, Inc. | Camera for directly generating a gradient image |
US8385671B1 (en) * | 2006-02-24 | 2013-02-26 | Texas Instruments Incorporated | Digital camera and method |
DE102006023611A1 (de) | 2006-05-19 | 2007-11-22 | Siemens Ag | Verfahren und Vorrichtung zur pixelsynchronen Bildauswertung eines kamerabasierten Systems |
EP2082332B1 (en) * | 2006-10-10 | 2012-08-22 | Zoran (France) | Method and apparatus for spatio-temporal subband video enhancement with small time delay |
US20100226495A1 (en) | 2007-10-29 | 2010-09-09 | Michael Kelly | Digital readout method and apparatus |
JP2008131407A (ja) | 2006-11-22 | 2008-06-05 | Matsushita Electric Ind Co Ltd | 固体撮像素子およびそれを用いた撮像装置 |
AT504582B1 (de) | 2006-11-23 | 2008-12-15 | Arc Austrian Res Centers Gmbh | Verfahren zur generierung eines bildes in elektronischer form, bildelement für einen bildsensor zur generierung eines bildes sowie bildsensor |
CN101271514B (zh) | 2007-03-21 | 2012-10-10 | 株式会社理光 | 一种快速目标检测和目标输出的图像检测方法及装置 |
US8150199B2 (en) * | 2007-03-29 | 2012-04-03 | Texas Instruments Incorporated | Methods and apparatus for image enhancement |
US20090020612A1 (en) | 2007-06-28 | 2009-01-22 | Symbol Technologies, Inc. | Imaging dual window scanner with presentation scanning |
JP4948379B2 (ja) | 2007-12-18 | 2012-06-06 | キヤノン株式会社 | パターン識別器生成方法、情報処理装置、プログラム及び記憶媒体 |
US8462996B2 (en) | 2008-05-19 | 2013-06-11 | Videomining Corporation | Method and system for measuring human response to visual stimulus based on changes in facial expression |
US8250480B2 (en) * | 2008-08-14 | 2012-08-21 | Mastercard International, Inc. | Interactive navigation of a dataflow process image |
DE102008052293A1 (de) | 2008-10-18 | 2010-04-22 | Schubert Maschinen- Und Anlagenbau Gmbh | Warmschere |
FR2939919A1 (fr) | 2008-12-16 | 2010-06-18 | New Imaging Technologies Sas | Capteur matriciel |
JP5721994B2 (ja) | 2009-11-27 | 2015-05-20 | 株式会社ジャパンディスプレイ | 放射線撮像装置 |
WO2011077623A1 (ja) | 2009-12-24 | 2011-06-30 | 株式会社ソニー・コンピュータエンタテインメント | 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造 |
US20120012748A1 (en) | 2010-05-12 | 2012-01-19 | Pelican Imaging Corporation | Architectures for imager arrays and array cameras |
WO2012093381A1 (en) | 2011-01-03 | 2012-07-12 | Vitaly Sheraizin | Camera assembly with an integrated content analyzer |
JP2013003787A (ja) | 2011-06-15 | 2013-01-07 | Panasonic Corp | 対象物検出装置 |
US9299036B2 (en) | 2011-08-31 | 2016-03-29 | Striiv, Inc. | Life pattern detection |
US8748828B2 (en) | 2011-09-21 | 2014-06-10 | Kla-Tencor Corporation | Interposer based imaging sensor for high-speed image acquisition and inspection systems |
US9824296B2 (en) | 2011-11-10 | 2017-11-21 | Canon Kabushiki Kaisha | Event detection apparatus and event detection method |
US9270258B2 (en) | 2011-11-16 | 2016-02-23 | National University Corporation Shizuoka University | Lamp signal generation circuit and CMOS image sensor |
FR2985065B1 (fr) | 2011-12-21 | 2014-01-10 | Univ Paris Curie | Procede d'estimation de flot optique a partir d'un capteur asynchrone de lumiere |
CN102663409B (zh) | 2012-02-28 | 2015-04-22 | 西安电子科技大学 | 一种基于hog-lbp描述的行人跟踪方法 |
US9389229B2 (en) | 2012-07-18 | 2016-07-12 | Theranos, Inc. | Methods for detecting and measuring aggregation |
EP2709066A1 (en) | 2012-09-17 | 2014-03-19 | Lakeside Labs GmbH | Concept for detecting a motion of a moving object |
US9081571B2 (en) | 2012-11-29 | 2015-07-14 | Amazon Technologies, Inc. | Gesture detection management for an electronic device |
US20140169663A1 (en) | 2012-12-19 | 2014-06-19 | Futurewei Technologies, Inc. | System and Method for Video Detection and Tracking |
US10373470B2 (en) | 2013-04-29 | 2019-08-06 | Intelliview Technologies, Inc. | Object detection |
US20140368423A1 (en) | 2013-06-17 | 2014-12-18 | Nvidia Corporation | Method and system for low power gesture recognition for waking up mobile devices |
KR102081087B1 (ko) | 2013-06-17 | 2020-02-25 | 삼성전자주식회사 | 동기적 영상과 비동기적 영상을 위한 영상 정합 장치 및 이미지 센서 |
US20150036942A1 (en) | 2013-07-31 | 2015-02-05 | Lsi Corporation | Object recognition and tracking using a classifier comprising cascaded stages of multiple decision trees |
US9838635B2 (en) | 2014-09-30 | 2017-12-05 | Qualcomm Incorporated | Feature computation in a sensor element array |
-
2015
- 2015-09-22 US US14/861,968 patent/US9704056B2/en not_active Expired - Fee Related
-
2016
- 2016-02-25 WO PCT/US2016/019657 patent/WO2016160196A1/en active Application Filing
- 2016-02-25 JP JP2017550210A patent/JP2018514853A/ja active Pending
- 2016-02-25 EP EP16712119.3A patent/EP3278273A1/en not_active Withdrawn
- 2016-02-25 CN CN201680016216.4A patent/CN107430692A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1959670A (zh) * | 2005-11-02 | 2007-05-09 | 北京灵图软件技术有限公司 | 以金字塔架构存储地形影像数据的方法 |
CN102117494A (zh) * | 2009-12-30 | 2011-07-06 | 新奥特(北京)视频技术有限公司 | 一种三维建模中的数据分层分块方法及装置 |
CN101915913A (zh) * | 2010-07-30 | 2010-12-15 | 中交第二公路勘察设计研究院有限公司 | 一种稳健的高分辨率卫星影像连接点自动匹配方法 |
CN103838548A (zh) * | 2012-11-26 | 2014-06-04 | 辉达公司 | 用于对层次深度图采样的系统、方法和计算机程序产品 |
US20140368688A1 (en) * | 2013-06-14 | 2014-12-18 | Qualcomm Incorporated | Computer vision application processing |
CN103903295A (zh) * | 2014-04-04 | 2014-07-02 | 四川川大智胜软件股份有限公司 | 一种基于InfiniBand实时调度海量高精度三维场景数据的方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160292530A1 (en) | 2016-10-06 |
US9704056B2 (en) | 2017-07-11 |
WO2016160196A1 (en) | 2016-10-06 |
JP2018514853A (ja) | 2018-06-07 |
EP3278273A1 (en) | 2018-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110210571B (zh) | 图像识别方法、装置、计算机设备及计算机可读存储介质 | |
CN110349082B (zh) | 图像区域的裁剪方法和装置、存储介质及电子装置 | |
CN111062981B (zh) | 图像处理方法、装置及存储介质 | |
CN108875537B (zh) | 对象检测方法、装置和系统及存储介质 | |
CN108876804B (zh) | 抠像模型训练和图像抠像方法、装置和系统及存储介质 | |
CN108986152B (zh) | 一种基于差分图像的异物检测方法及装置 | |
CN111723732A (zh) | 一种光学遥感图像变化检测方法、存储介质及计算设备 | |
CN108074237B (zh) | 图像清晰度检测方法、装置、存储介质及电子设备 | |
CN112990053B (zh) | 图像处理方法、装置、设备及存储介质 | |
CN113988271A (zh) | 高分辨率遥感影像变化的检测方法及装置、设备 | |
CN114419322B (zh) | 一种图像实例分割方法、装置、电子设备及存储介质 | |
CN112419342A (zh) | 图像处理方法、装置、电子设备和计算机可读介质 | |
CN112115900A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN116681959A (zh) | 基于机器学习的锋线识别方法、装置、存储介质及终端 | |
CN113052923B (zh) | 色调映射方法、装置、电子设备和存储介质 | |
CN107543507A (zh) | 屏幕轮廓的确定方法及装置 | |
CN116897532A (zh) | 深度图像的修复方法及装置、摄像头组件及电子设备 | |
CN107430692A (zh) | 用于计算机视觉计算的计算层级运算 | |
CN114092771A (zh) | 多传感数据融合方法、目标检测方法、装置和计算机设备 | |
CN115731442A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN116862920A (zh) | 一种人像分割方法、装置、设备及介质 | |
CN113808151A (zh) | 直播图像的弱语义轮廓检测方法、装置、设备及存储介质 | |
CN113808040A (zh) | 直播图像的轮廓矫正方法、装置、设备及存储介质 | |
CN112633158A (zh) | 一种输电线路走廊车辆识别方法、装置、设备和存储介质 | |
CN109241811B (zh) | 基于图像螺旋线的场景分析方法及使用该方法的场景目标监控系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20171201 |