CN105706144B - 基于支持向量机的对象检测系统及相关方法 - Google Patents

基于支持向量机的对象检测系统及相关方法 Download PDF

Info

Publication number
CN105706144B
CN105706144B CN201480061014.2A CN201480061014A CN105706144B CN 105706144 B CN105706144 B CN 105706144B CN 201480061014 A CN201480061014 A CN 201480061014A CN 105706144 B CN105706144 B CN 105706144B
Authority
CN
China
Prior art keywords
detection window
dot product
detection
characteristic block
picture frame
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.)
Active
Application number
CN201480061014.2A
Other languages
English (en)
Other versions
CN105706144A (zh
Inventor
V·纳加拉詹
P·B·蒂鲁马莱什沃拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Analog Devices Global ULC
Analog Devices International ULC
Original Assignee
Analog Devices Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Analog Devices Technology filed Critical Analog Devices Technology
Publication of CN105706144A publication Critical patent/CN105706144A/zh
Application granted granted Critical
Publication of CN105706144B publication Critical patent/CN105706144B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/50Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

示例性的对象检测方法包括:生成表征图像帧的特征块组件,以及利用特征块组件来分析图像帧。对于图像帧的每个特征块行,与特征块行相关联的特征块组件被评估以对于与图像帧的包括特征块行的部分重叠的检测窗来确定部分向量点积,使得每个检测窗具有关联的一组部分向量点积。该方法可以包括:基于相关联的一组部分向量点积来确定与每个检测窗相关联的向量点积,以及基于向量点积来将与每个检测窗对应的图像帧部分分类为对象或非对象。每个特征块组件能够从外存储器移到内存储器一次,实现示例性的对象检测方法。

Description

基于支持向量机的对象检测系统及相关方法
相关申请的交叉引用
本申请要求2013年11月8日提交的美国专利申请序号14/076,030的优先权,该申请被认为通过引用方式合并于本申请的公开中。
技术领域
本公开一般涉及对象检测系统及相关方法,并且更特别地涉及基于支持向量机(SVM)的对象检测系统和相关方法。
背景技术
对象检测系统和方法,诸如行人检测系统和方法,能够实现在自动驾驶辅助系统中以提供路线检测、障碍物检测、交通标志识别、行人检测和/或其它类型的检测。这些对象检测系统和方法经常实现支持向量机(SVM)分类器来辅助将分析后图像分类成对象类或非对象类。当今的基于SVM的对象检测系统和方法趋于计算密集,要求相当大的数据带宽,对实时实现提出了挑战。因此,虽然现有的基于SVM的对象检测系统和相关方法对于它们预期目的通常是足够的,但是它们并不是在所有方面都完全令人满意。
发明内容
示例性的对象检测方法包括:生成表征图像帧的特征块组件,以及利用特征块组件来分析图像帧。对于图像帧的每个特征块行,与特征块行相关联的特征块组件被评估以对于与图像帧的包括特征块行的部分重叠的检测窗来确定部分向量点积,使得每个检测窗具有关联的一组部分向量点积。该方法可以包括:基于相关联的一组部分向量点积来确定与每个检测窗相关联的向量点积,以及基于向量点积将与每个检测窗相对应的图像帧分类为对象或非对象。每个特征块组件能够从外存储器移到内存储器一次,实现示例性的对象检测方法。在各实现中,装置包括与内存储器和外存储器耦合的处理器,其中所述处理器包括对象检测模块,该对象检测模块配置为执行最小化内存储器与外存储器之间的数据传输的对象检测与分类过程。对象检测模块能够配置为执行示例性的对象检测方法。
附图说明
通过下面结合附图理解下面的发明详述,能够最好的理解本公开。应强调的是,根据行业的标准惯例,各特征不是按比例绘制,仅用于示例的目的。实际上,为了论述清晰的原因,各特征的尺寸可任意增大或减小。
图1示出了根据本公开的各方面的用于检测图像帧中的对象的示例性的方法。
图2是根据本公开的各方面的用于检测图像帧中的对象的示例性的方法的流程图,诸如与参考图1所描绘和所描述的示例性方法相关联的流程图。
图3示出了根据本公开的各方面的用于检测图像帧中的对象的另一示例性方法。
图4是根据本公开的各方面的用于检测图像帧中的对象的示例性方法的流程图,诸如与参考图3所描绘和描述的示例性方法相关联的流程图。
图5是根据本公开的各方面的用于实现对象检测和分类过程的示例性处理器的示意性框图,诸如参考图1-4所描绘和所描述的对象检测和分类方法。
图6是根据本公开的各方面的诸如图5的处理器的具有对象检测模块的处理器的示例性的存储器方案以及实现诸如参考图3和图4所描绘和所描述的实现对象检测与分类过程的示例性的存储器方案的示意性框图。
具体实施方式
下面的公开提供了多个不同的实施方案或实施例,用于实现本公开的不同的特征。下面描述组件和布置的具体实施例以简化本公开。当然,这些仅为实施例,而不意在限制。此外,本公开可以在各实施例中重复附图标记和/或字母。该重复是为了简化和清晰的目的,本身不规定所论述的各实施方案和/或配置之间的关系。
图1示出了根据本公开的各个方面的用于检测图像帧10中的对象的示例性的方法。在各实现中,示例性的方法检测图像帧10中的行人。为了清晰目的,已经简化了图1,以便更好的理解本公开的发明构思。附加的特征能够添加到示例性的方法和关联的图像帧10中,并且在示例性的方法的其它实施方案和关联的图像帧10中,下面描述的一些特征能够被取代或消除。
在图1中,图像帧10被分割成特征块FB1,FB2,FB3,...FBx,其中x是图像帧10的特征块的总数。特征块FB1,FB2,FB3,...FBx能够分组成特征块行(在图像帧10的水平方向上的特征块组)以及特征块列(在图像帧10的垂直方向上的特征块组)。例如,在所描绘的实施方案中,图像帧10包括特征块行H1,H2,H3,...HR和特征块列V1,V2,V3,...VC,其中R是图像帧10的特征块行的总数,C是图像帧10的特征块列的总数。每个特征块行H1,H2,H3,...HR包括在图像帧10的水平方向上的多个特征块N;并且每个特征块列V1,V2,V3,...VC包括在图像帧10的垂直方向上的多个特征块M。
每个特征块FB1,FB2,FB3,...FBx具有关联的特征块组件,诸如方向梯度(HOG)特征块组件的关联直方图。例如,在各实现中,图像帧10能够分割成单元(图像帧10的各个空间区域),其中每个单元包括图像帧10的一个或多个像素。每个像素具有边缘(梯度)强度值和边缘角度(方向)值。对于每个单元,边缘强度加权边缘角直方图能够通过对于每个边缘角仓库累积边缘强度值来确定。该直方图提供了用于单元的HOG描述符。单元随后能够分组成块(此处,特征块FB1,FB2,FB3,...FBx),其中每个单元能够形成多于一个块的部分。对于每个块,强度度量(“能量”能够累积在块内的单元上且用于标准化该块内的各单元的HOG特征描述符,使得块具有关联的HOG特征块组件。在各实现中,关联的HOG特征块组件因此可以包括块内的单元的标准化单元直方图的HOG特征描述符的向量。
利用HOG特征块组件,图像帧10能够被分析以检测图像帧10中的对象。例如,检测窗能够被限定且与图像帧10的部分对准,使得检测窗重叠(跨越)图像帧10的部分;并且与图像帧10的通过检测窗重叠的部分对应的HOG特征块组件能够被评估以识别图像帧10的部分中的对象。检测窗能够移到图像帧10内的各位置以评估图像帧10的各部分,用于对象检测。在各实现中,检测窗能够在图像帧10内垂直地以及水平地移动以评估图像帧10的感兴趣区域,该图像帧10的感兴趣区域可以包括全部的图像帧10或者图像帧10的选定部分。在各实现中,图像帧10能够利用具有各种尺寸——多个检测窗标度L——的检测窗来评估。例如,在一些实施方案中,三个检测窗标度(L=3)能够应用于图像帧10以检测对象,诸如具有48x 80像素尺寸的第一检测窗,具有64x128像素尺寸的第二检测窗,以及具有80x 160像素尺寸的第三检测窗。通过具有不同尺寸的检测窗来评估图像帧10能够增强对象检测可靠性。
在图1中,检测窗20重叠图像帧10的部分21,并且因此,重叠与图像帧部分21对应的特征块FB1,FB2,FB3,...FBx的部分。特别地,检测窗20重叠多个特征块行P,以及多个特征块列Q。例如,检测窗20重叠八个特征块行(P=8)以及四个特征块列(Q=4)。在图像帧10内的每个位置,检测窗20(更特别地,通过检测窗20重叠的图像部分)具有关联的HOG特征向量,其由与通过检测窗20重叠的图像部分对应的特征块的HOG特征块组件来表征。例如,在描绘的实施方案中,检测窗20具有由与通过检测窗20重叠的图像部分21对应的特征块的HOG特征块组件表征的关联的HOG特征向量。换言之,在每个位置处,与检测窗20相关联的HOG特征向量能够通过对通过检测窗20重叠的特征块的标准化单元直方图(HOG描述符)分组来形成。
分类器能够将HOG特征向量评估且分类为肯定(表明HOG特征向量表示对象)或否定(表明HOG特性向量不表示对象),从而对图像帧10的被检测窗20重叠(与其对应)的部分提供对象/非对象分类。在各实现中,分类器是支持向量机(SVM)分类器,诸如线性SVM,其能够被训练以针对各种尺寸的检测窗来检测对象。例如,SVM分类器可以是二进制分类器,其使用训练数据来构建用于最优地将HOG特征向量分成两类——此处是对象或非对象——的超平面。在各实现中,SVM分类器通过图像集来训练,图像集划分成行人类图像和非行人类图像,其中SVM分类器已经过进一步训练以利用不同尺寸的检测窗对图像进行分类。
在所描绘的实施方案中,SVM分类器构建超平面30,超平面能够用于将与检测窗20(以及因此表征图像帧10中的图像的HOG特征向量)相关联的HOG特征向量识别为落入对象(行人)类或非对象(非行人)类。超平面30具有与用于对象检测和分类的检测窗的尺寸对应的尺寸。例如,此处,超平面30还跨越多个特征块行P和多个特征块列Q。SVM分类器利用向量点积40将与检测窗20相关联的HOG特征向量与超平面30(换言之,HOG特征描述符的加权和)组合,并且然后评估向量点积40以将HOG特征向量(以及因此对应的图像部分21)分类为对象或非对象。能够对图像帧10内的各位置处与检测窗20相关联的HOG特征向量执行该分类过程,使得图像帧10的各个部分能够被分类为对象或非对象。
典型地,当实现图1所描绘的示例性方法时,与图像帧10对应的所有的HOG特征块组件(此处,与特征块FB1,FB2,FB3,...FBx相关联的HOG特征块组件)不能放置在内存储器中用于对象检测与分类过程。因此,HOG特征块组件被放置在外存储器中,并且随着检测窗在图像帧10内移动,对于图像帧10内的检测窗的每个位置,关联的HOG特征向量(以及因此关联的HOG特征块组件)从外存储器移动到内存储器用于分类。例如,一旦检测窗20移动到跨越如图1所描绘的图像部分21的位置,与图像部分21对应且因此形成关联的HOG特征向量的HOG特征块组件从外存储器移到内存储器,其中关联的HOG特征向量随后与超平面30组合以确定向量点积40,以及因此将相关联的HOG特征向量(以及因此,图像帧10的与检测窗20对应的部分)分类为对象或非对象。对于图像帧10内检测窗20的每个位置,以及类似地对于用于评估图像帧10的其它检测窗的每个位置,实现该特征块组件(数据)从外存储器到内存储器的移动。
图2是根据本公开的各个方面的用于检测图像帧内的对象的示例性的方法50的流程图,诸如与参考图1所描绘和描述的示例性方法相关联的。方法50开始于框52,将表征图像帧(与图像帧对应)的特征块组件存储在外存储器中。例如,参考图1以及对应的描述,图像帧10能够被分析以限定表征图像帧10的特征块组件,诸如HOG特征块组件。在后续处理期间能够用于对图像帧10的部分分类的HOG特征块组件能够存储在外存储器中。在框54中,检测窗定位成重叠(跨越)图像帧的部分。例如,参考图1,检测窗20重叠图像帧10的部分21。在框56,与检测窗相关联的特征向量从外存储器移到内存储器。例如,参考图1,与图像帧10内检测窗20的位置相关联的HOG特征向量从外存储器移到内存储器。换言之,与通过检测窗20重叠的图像部分21对应的一组HOG特征块组件从外存储器移到内存储器。在框58处,方法50进行以确定超平面和特征向量的向量点积。例如,参考图1,与检测窗20相关联的HOG特征向量(定位在图像帧10内)与超平面30组合以确定向量点积40。在框60处,在各实现中图像帧的部分被分类成两类之一。例如,参考图1,基于向量点积40,通过检测窗30重叠的图像帧部分21被分类为对象或非对象。步骤54至步骤60能够重复,直到检测窗已经定位成重叠图像帧的各部分。例如,在各实现中,步骤54至步骤60重复,直到检测窗20已经覆盖了图像帧10的全部。本公开还构思了这样的实现方式:图像帧10的选定部分被评估,而不是整个图像帧10。此外,在各个检测窗标度被实现的情况下,能够对于每个检测窗标度的检测窗重复步骤54至步骤60。在方法50之前、期间和之后,可以提供额外的步骤,并且对于方法50的其它实施例,所描述的一些步骤能够被取代或去除。
参考图1和图2所描述的对象分类过程实现通过移动与每个检测窗相关联的数据(在所描绘的实施例中,在图像帧10内的每个位置处与检测窗20相关联的特征块组件(特征向量),以及对于用来分析图像帧10的每个其它检测窗)而在内存储器与外存储器之间交换相当大的数据量,使得对象分类过程所消耗的总带宽非期望地较大,尤其对于实时实现方式。例如,例如,参考图1和图2所描述的对象分类过程实现所使用的总数据带宽(Bt)能够由等式(1)来表示:
Bt=Bf×Fr
其中Bf是用于评估图像帧的全部检测窗标度的每帧带宽,Fr是帧率。在各实现方式中,对于全部检测窗标度的每帧带宽能够由等式(2)来表示:
其中Sb是以字计的特征块的尺寸,L是用于分析图像帧的检测窗标度的数量,N是在图像帧的水平方向上的特征块的数量(例如,在图像帧的每个特征块行中的特征块的数量),M是图像帧的垂直方向上的特征块的数量(例如,图像帧的每个特征块列中的特征块的数量),Pi是第i个标度的检测窗中的特征块行的数量,并且Qi是第i个标度的检测窗中的特征块列的数量。注意的是,第i标度的检测窗的特征尺寸能够由等式(3)来表示:
第i个标度的检测窗的特征尺寸=Sb×Pi×Qi
第i标度的检测窗的数量能够由等式(4)来表示:
第i个标度的检测窗的数量=(M-Pi+1)×(N-Qi+1);以及
第i个标度的带宽能够由等式(5)来表示:
第i个标度的带宽=(Sb×Pi×Qi)×(M-Pi+1)×(N-Qi+1)。
因此,在示例性的典型对象分类情况下,其中:
●图像帧被分割成在水平方向上的79个特征块(N=79)以及在垂直方向上的44个特征块(M=44)(使得每个特征块行包括79个特征块并且每个特征块列包括44个特征块),
●具有不同尺寸的三个检测窗应用于图像帧用于对象分类(L=标度数量=3):
检测窗1(i=0)=(P0,Q0)=(9,5)
检测窗2(i=1)=(P1,Q1)=(15,7)
检测窗3(i=2)=(P2,Q2)=(19,9)
(在每个位置,检测窗1跨越9个特征块行(P0=9)以及5个特征块列(Q0=5),检测窗2跨越15个特征块行(P1=15)以及7个特征块列(Q1=7),并且检测窗3跨越19个特征块行(P2=19)以及9个特征块列(Q2=9)),
●每个特征块的尺寸是32个字(Sb=32),以及
●图像能够以每秒30帧进行处理以进行对象分类(帧率=Ft=30),下面的带宽数字能够实现:
带宽检测窗标度0(i=0)(BDW0)=3.888M字
=(Sb×P0×Q0)×(M-P0+1)×(N-Q0+1)
=(32×9×5)×(44-9+1)×(79-5+1)
带宽检测窗标度1(i=1)(BDW1)=7.358M字
=(Sb×P1×Q1)×(M-P1+1)×(N-Q1+1)
=(32×15×7)×(44-15+1)×(79-7+1)
带宽检测窗标度2(i=2)(BDW2)=10.101M字
=(Sb×P2×Q2)×(M-P2+1)×(N-Q2+1)
=(32×19×9)×(44-19+1)×(79-9+1)
每帧的总带宽(Bf)=21.34M字
=BDW0+BDW1+BDW2=3.888M字+7.358M字+10.101M字
总带宽字(Bt)=640.41M字
=Bf×Fr=21.347×30
这些带宽数字对于对象检测与分类过程而言,尤其对于实时对象检测与分类而言,不期望地大。实际上,在一些情形下,这些带宽数字对于实时实现是不可接受的。
从图1和图2中显然地,由于在对象检测与分类过程中每个特征块FB1,FB2,FB3,...FBxis被多于一个的检测窗覆盖,所以在任一方向(水平方向和垂直方向)上发生大量的数据冗余。更具体地,由于对于图像帧10内的检测窗20的每个位置与检测窗20相关联的HOG特性向量从外存储器移到内存储器,所以每个特征块FB1,FB2,FB3,...FBx的HOG特征块组件可以多次从外存储器移到内存储器。这些重叠的发生是因为特征块(以及因此其对应的HOG特征块组件)通过超平面30根据其在检测窗20中的相对位置被不同地加权。
如下面描述的本公开提出了能够减小或消除这些冗余的用于对象检测与分离的示例性的方法。例如,图3示出了根据本公开的各方面的用于检测图像帧100中的对象的示例性的方法。在各实现中,示例性的方法检测图像帧100中的行人。为清晰起见已经简化了图3以便更好的理解本公开的发明构思。额外的特征能够添加到示例性的方法和关联的图像帧100中,并且在示例性方法和关联的图像帧100的示例性方法中下面描述的一些特征能够被取代或消除。
在图3中,类似于图像帧10,图像帧100被分割成特征块FB1,FB2,FB3,...FBy,其中y是图像帧100的特征块的总数。特征块FB1,FB2,FB3,...FBy能够分组成特征块行(在图像帧100的水平方向上的特征块组)以及特征块列(在图像帧100的垂直方向上的特征块组)。例如,在所描绘的实施例中,图像帧100包括特征块行H1,H2,H3,...HR以及特征块列V1,V2,V3,...VC,其中R是图像帧100的特征块行的总数并且C是图像帧100的特征块列的总数。每个特征块行H1,H2,H3,...HR包括在图像帧100的水平方向上的特征块数量N;并且每个特征块列V1,V2,V3,...VC包括在图像帧100的垂直方向上的特征块数量M。
类似图像帧10的特征块FB1,FB2,FB3,...FBx,图像帧10的每个特征块FB1,FB2,FB3,...FBy具有关联的特征块组件,诸如关联的HOG特征块组件。例如,在各实现中,图像帧100能够分割成单元(图像帧100的各个空间区域),其中每个单元包括图像帧100的一个或多个像素。每个像素具有边缘(梯度)强度值以及边缘角(方向)值。对于每个单元,一维边缘强度直方图能够累积单元内的像素的边缘强度值来生成,一维边缘角直方图能够通过累积单元内的像素的边缘角值来生成,并且一维直方图能够通过将边缘强度直方图和边缘角直方图组合而生成,其中一维直方图提供单元的HOG描述符。然后,将单元分组成块(此处,特征块FB1,FB2,FB3,...FBy),其中每个单元能够形成多于一个块的部分。对于每个块,强度的度量(“能量”)能够在块内的单元内累积并且用于标准化块内各单元的HOG特征描述符,使得块具有关联的HOG特征块组件。在各实现中,关联的HOG特征块组件可因此包括块内各单元的标准化单元直方图的HOG特征描述符的向量。
利用HOG特征块组件,图像帧100能够被分析以检测图像帧100中的对象。例如,检测窗能够被限定且与图像帧100的部分对准,使得检测窗重叠(跨越)图像帧100的部分;并且与通过检测窗重叠的图像帧100的部分对应的HOG特征块组件能够被评估与识别图像帧100的部分中的对象。检测窗能够移动到图像帧100内的各位置以评估图像帧100的各部分用于对象检测。在各个实现方式中,检测窗能够在图像帧100内沿垂直向和水平向移动以评估图像帧100的感兴趣区域,其可以包括全部图像帧100或图像帧100的选定部分。在各实现中,能够利用具有各种尺寸——多个检测窗标度L——的检测窗来评估图像帧100。例如,在一些实施方案中,三个检测窗标度(L=3)能够应用于图像帧100以检测对象,诸如具有48x80像素尺寸的第一检测窗,具有64x 128像素尺寸的第二检测窗,以及具有80x 160像素尺寸的第三检测窗。使用具有不同尺寸的检测窗评估图像帧100能够增强对象检测可靠性。
检测窗120与图像帧100的各个部分121A,121B和121C重叠,以及因此与特征块FB1,FB2,FB3,...FBy的与图像帧部分121A,121B和121C对应的部分重叠。特别地,检测窗120与特征块行数量P和特征块列数量Q重叠。例如,检测窗20在图像帧100内的如下三个不同的位置处与八个特征块行(P=8)以及四个特征块列(Q=4)重叠:位置122A(重叠的图像帧部分121A),位置122B(其中检测窗120已经从位置122A顺着三个特征块行垂直地下移以重叠图像帧部分121B),以及位置122C(其中检测窗120已经从位置122B顺着三个行垂直地下移以重叠图像帧部分121C)。在图像帧100内的每个位置处,检测窗120(以及更特别地,由检测窗120重叠的图像部分)具有关联的HOG特征向量,该关联的HOG特征向量由特征块的与通过检测窗120重叠的图像部分对应的HOG特征块组件来表示。例如,在描绘的实施方案中,检测窗120具有:在位置122A处由特征块的与通过检测窗120重叠的图像部分121A对应的HOG特征块组件表示的关联的HOG特征向量,在位置122B处由特征块的与通过检测窗120重叠的图像部分121B对应的HOG特性块组件表示的关联的HOG特征向量,以及在位置122C处由特征块的与通过检测窗120重叠的图像部分121C对应的HOG特征块组件表示的关联的HOG特征向量。换言之,在每个位置处,与检测窗120相关联的HOG特性向量能够通过将检测窗120重叠的特征块的标准化单元直方图(HOG描述符)分组来形成。
分类器能够将HOG特征向量评估和分类为肯定(指示HOG特性向量表示对象),或者否定(指示HOG特性向量不表示对象),从而对于图像帧100的通过检测窗120重叠(与检测窗120对应)的部分来提供对象/非对象分类。在各实现中,分类器是支持向量机(SVM)分类器,诸如线性SVM,其能够被训练以针对各种尺寸的检测窗来检测对象。例如,SVM分类器可以是二进制分类器,其使用训练数据来构建超平面,用于最优地将HOG特征向量分成两个类别,此处为对象或非对象。在各实现中,SVM分类器通过分成行人类图像和非行人类图像的图像集来训练,其中SVM分类器已经过进一步训练以利用不同尺寸的检测窗来对图像分类。
在所描绘的实施方案中,SVM分类器构建超平面130,该超平面能够用于识别与检测窗120相关联的HOG特征向量(以及因此表示图像帧100中的图像的HOG特征向量)为落入对象(行人)类或非对象(非行人)类。超平面130具有与用于对象检测与分类的检测窗的尺寸对应的尺寸。例如,此处,超平面130还跨越特征块行的数量P以及特征块列的数量Q。在图3中,与图1所描绘的示例性方法相对比,以及如下面进一步描述的,SVM分类器利用部分向量点积135将与检测窗120相关联的部分HOG特征向量与和超平面130相关联的部分超平面向量组合(换言之,HOG特性描述符的加权和)。与检测窗120相关联的部分向量点积然后组合以提供向量点积140,并且SVM分类器评估向量点积140以将HOG特征向量(以及因此通过检测窗120重叠的图像部分)分类为对象或非对象。该分类过程能够针对在图像帧100内的各个位置(包括位置122A,位置122B和位置122C)处与检测窗120相关联的HOG特征向量来执行,使得图像帧100的各个部分能够分类为对象或非对象。
从图3中显然可知,图像帧100的特征块可以是对象检测与分类过程中多于一个检测窗的部分。例如,在描绘的实施方案中,在位置122A,位置122B和位置122C处,检测窗120与同一特征块组124重叠,具体是图像帧100的特征块行H9和特征块行H10中的一组特征块。在位置122A,特征块组142与检测窗120的第七个特征块行和第八个特征块行对应;在位置122B,特征块组142与检测窗120的第四个特征块行和第五个特征块行对应;以及在位置122C处,特征块组142与检测窗120的第一个特征块行和第二个特征块行对应。图3所描绘的示例性方法利用在图像帧100内的各位置与特征块组142重叠(以及因此,与图像帧100的同一组的特征块组件重叠)的检测窗120来减小在对象检测与分类过程中内存储器与外存储器之间的数据交换。
例如,虽然图1和图3所描绘的示例性的方法均将与图像帧对应的HOG特征块组件置于外存储器中,与图1所描绘的示例性方法相对比(其将HOG特征块组件从外存储器移到内存储器多次),图3所描绘的示例性的方法能够在对象检测与分类过程中将HOG特征块组件从外存储器移到内存储器单次。更具体地,通过实现图1的示例性的方法,特征块组142的HOG特征块组件从外存储器移到内存储器至少三次——当在位置122A处移动与检测窗120相关联的HOG特征向量时,当在位置122B处移动与检测窗120相关联的HOG特征向量时,以及当在位置122C处移动与检测窗120相关联的HOG特征向量时——并且可以从外存储器移到内存储器其它次数,取决于检测窗120的其它位置以及实现以评估图像帧100的其它检测窗。对比而言,图3所描绘的方法将特征块行的HOG特征块组件从外存储器移到内存储器并且然后对于与特征块行的HOG特征块组件重叠的每个检测窗确定部分向量点积。例如,在图3中,与特征块行H9相关联的HOG特征块组件从外存储器移到内存储器。在位置122A,与检测窗120相关联的部分特征向量——特征块行H9的通过检测窗120重叠的特征块组件——能够与和检测窗120的第七行对应的部分超平面向量组合,以确定部分向量点积。类似地,在位置122B,与检测窗120相关联的部分特征向量——特征块行H9的通过检测窗120充当的特征块组件——能够与和检测窗120的第四行对应的部分超平面向量组合,以确定部分向量点积;以及在位置122C,与检测窗120相关联的部分特征向量——特征块行H9的通过检测窗120重叠的特征块组件——能够与和检测窗120的第一行对应的部分超平面向量组合,以确定部分向量点积。
一旦对于与特征块行H9重叠的全部检测窗确定了部分向量点积以用于对象检测与分类,另一特征块行诸如特征块行H10的HOG特征块组件从外存储器移到内存储器。例如,在图3中,与特征块行H10相关联的HOG特征块组件从外存储器移到内存储器。在位置122A,与检测窗120相关联的部分特征向量——特征块行H10的通过检测窗120重叠的特征块组件——能够与和检测窗120的第八行对应的部分超平面向量组合,以确定部分向量点积。类似地,在位置122B,与检测窗120相关联的部分特征向量——特征块行H10的通过检测窗120重叠的特征块组件——能够与和检测窗120的第五行对应的部分超平面向量组合,以确定部分向量点积;以及在位置122C,与检测窗120相关联的部分特征向量——特征块行H10的通过检测窗120重叠的特征块组件——能够与和检测窗120的第二行对应的部分超平面向量组合,以确定部分向量点积。对于图像帧100的每个特征块行(此处,特征块行H1,H2,H3,...HR)执行该过程,直到每个特征块行的HOG特征块组件已经从外存储器移到内存储器,并且已经对于重叠每个特征块行的检测窗确定了部分向量点积。
值得注意的是,在各实现中,多于一个特征块行的特征块组件能够在确定部分向量点积时从外存储器移到内存储器。例如,在本实施例中,特征块行H9和特征块行H10的特征块组件能够从外存储器移到内存储器,能够对于与特征块行H9和/或特征块行H10重叠的检测窗确定部分向量点积,然后另一组特征块行(例如,特征块行H11和特征块行H12)的特征块组件直至每个特征块行的特征块组件已经从外存储器移到内存储器,并且对于与每个特征块行重叠的检测窗,已经确定部分向量点积。
如上所述,图3所描绘的示例性方法将与检测窗相关联的部分向量点积135组合以确定与检测窗相关联的向量点积140(其表示在图像帧100内的某位置与检测窗充当的图像帧部分),SVM能够将与检测窗相关联的向量点积140分类为对象或非对象。例如,在描绘的实施方案中,与位置122A处的检测窗120的第七行相关联的部分点积和与位置122A处的检测窗120的第八行相关联的部分点积组合,其进一步与位置122A处的检测窗120的第一行至第六行相关联的部分点积组合,以得到能够用于对被检测窗120重叠的图像部分121A进行分类的向量点积。类似地,与位置122B处的检测窗120的第四行相关联的部分点积和与位置122B处的检测窗120的第五行相关联的部分点积组合,其进一步与位置122B处的检测窗120的第一行至第三行以及第六行至第八行相关联的部分点积组合,以得到能够用于对被检测窗120重叠的图像部分121B分类的向量点积;并且与位置122C处的检测窗120的第一行相关联的部分点积和与位置122C处的检测窗120的第二行相关联的部分点积组合,其进一步与位置122C处的检测窗120的第三行至第八行相关联的部分点积组合,以得到能够用于对被检测窗120覆盖的图像部分121C分类的向量点积。该过程能够对于图像帧100内的每个位置处的检测窗120来执行。在各实现方式中,该过程也对也实现以在对象检测与分类期间评估图像帧100的、具有不同于检测窗120的标度的检测窗来执行。
部分向量点积能够存储在点积表中,点积表能够设置在内存储器中。例如,图3的示例性方法能够限定检测窗120的点积表,其中点积表包括图像帧100内的检测窗120沿着水平方向和垂直方向的每个位置的条目。点积表可以包括位置122A处的检测窗120的部分向量点积的条目,位置122B处的检测窗120的部分向量点积的条目、位置122C处的检测窗120的部分向量点积的条目,以及在图像帧100内的其它各位置处检测窗120的部分向量点积的条目。在所描绘的实施方案中,检测窗120的部分向量点积的条目可以包括在位置122A处的检测窗120的第一行至第六行的部分向量点积的组合。当特定块行H9的特征块组件从外存储器移到内存储器时,条目能够由与位置122A处的检测窗120的第七行相关联的部分向量点积来更新,然后接着,当特征块行H10的特征块组件从外存储器移到内存储器时,条目能够由与位置122A处的检测窗120的第八行相关联的部分向量点积来更新。在对象检测与分类过程中,能够类似地更新检测窗120的部分向量点积的条目。
在各实现中,对于具有限定标度的检测窗,图3所描绘的示例性方法能够限定向量点积表,向量点积表具有沿着待由检测窗评估的图像帧的水平方向和垂直方向的每个检测窗位置的一个条目。例如,使T(i,j)表示第(i,j)个检测窗的点积条目,其中i表示图像帧的特征块行,i表示图像帧的特征块列,P表示被第(i,j)个位置处的检测窗重叠的特征块行的数量,Q表示第(i,j)个位置处的检测窗的列数,M表示图像帧的垂直方向上的特征块的数量,以及N表示图像帧的水平方向上的特征块的数量。对于对象检测与分类过程,示例性的方法能够将向量点积表初始化为零(其能够称为步骤1),由等式(6)来表示:
其中i是特征块行数。然后,图像帧的第i个特征块行的特征块组件能够从外存储器移到内存储器(其能够称为步骤2),其中表示与第j个列(其中j是特征块列数)对应的部分特征向量,并且其中表示对应于检测窗的第k行的部分超平面向量(其中k=0...P)。示例性的方法能够对于与第i个特征块行重叠的检测窗的每个位置来计算部分向量点积(其能够称为步骤3),由等式(7)来表示:
对于从0到N-Q的全部j
对于从0到P-1的全部k
结束
结束
步骤2和步骤3能够对于全部的行进行重复(其称为步骤4),由等式(8)来表示:
i=i+1
IF(i<M)进行到步骤2
注意的是,与上述的步骤1至步骤4相关联的过程考虑了一个标度(尺寸)的检测窗。该过程能够对于应用于图像帧的对象检测与分类过程的检测窗的每个标度来重复,其中将限定用于每个标度的单独的向量点积表。
图4是根据本公开的各方面的用于检测图像帧中的对象的示例性的方法150的流程图,诸如与参考图3所描绘和描述的示例性的方法相关联。方法150开始于框152,将表示图像帧(与图像帧对应)的特征块组件存储在外存储器中。例如,参考图3以及对应的描述,图像帧100能够被分析以限定表示图像帧100的特征块组件,诸如HOG特征块组件。能够在后续处理中用于对图像帧100的部分进行分类的HOG特征块组件能够存储在外存储器中。在框154处,与图像帧对应的特征块行的特征块组件从外存储器移到内存储器。例如,参考图3,图像帧100的特征块行诸如特征块行H9的特征块组件从外存储器移到内存储器。在框156处,方法150进行以确定与特征块行重叠的检测窗的部分向量点积。更具体地,与重叠特征块行的检测窗相关联的部分超平面向量和部分特征向量能够组合以确定部分向量点积。在各实现方式中,框156能够重复,直至在对象检测与分类过程中对于重叠特征块行的检测窗的全部位置确定了部分向量点积,并且能够进一步重复,直到在对象检测与分类过程中对于重叠特征块行的全部检测窗确定部分向量点积。例如,参考图3,对于与特征块行H9重叠的检测窗120的全部位置(例如,位置122A,位置122B和位置122C)确定部分向量点积。一旦对于与用于对象检测分类的特征块行H9重叠的全部检测窗确定了部分向量点积,方法150返回步骤154,其中另一特征块行诸如特征块行H10的HOG特性块组件从外存储器移到内存储器,并且重复步骤156,直到对于与用于对象检测与分类的特征块行H9重叠的全部检测窗确定了部分向量点积。该过程继续,直到与图像帧对应的每个特征块行的特征块组件已经从外存储器移到内存储器。方法150然后进行到框158,确定与检测窗相关联的向量点积。例如,参考图3,对于位置122A处的检测窗120所确定的部分向量点积组合以确定与位置122A处的检测窗120相关联的向量点积。在框160,方法150对与检测窗对应的图像帧的部分进行分类。例如,参考图3,基于如上所述的向量点积来确定与位置122A处的检测窗120对应的图像帧的部分。框158和框160能够重复,直到与图像帧内每个位置处的全部检测窗对应的图像帧的部分已经被分类为对象或非对象。在方法150之前,期间和之后可以提供附加的步骤,并且对于方法150的其它实施例,能够取代或去除上述步骤中的一些步骤。
通过将与图像帧的特征块相关联的特征块组件移动单次,参考图3和图4所描述的对象分类过程实现方式能够显著地减少内存储器与外存储器之间的数据交换。例如,通过实现图3和图4的方法,总数据带宽(Bt’)独立于用于对象分类过程的检测窗标度数量和/或检测窗数量,使得总带宽能够简化为由等式(9)表示:
Bt′=每帧带宽×Fr=(Sb×M×N)×Fr其中,Sb是以字计的特征块的尺寸,N是图像帧的水平方向上的特征块的数量(例如,图像帧的每个特征块行中的特征块的数量),M是图像帧的垂直方向上的特征块的数量(例如,图像帧的每个特征块列中的特征块的数量),并且Fr是帧率。因此,图3和图4所描绘的方法能够实现显著的带宽减小。例如,考虑上述的示例性的典型对象分类情况,其中:
●图像帧被分割成在水平方向上的79个特征块(N=79)以及在垂直方向上的44个特征块(M=44)(使得每个特征块行包括79个特征块并且每个特征块列包括44个特征块),
●具有不同尺寸的三个检测窗应用于图像帧以用于对象分类(L=标度数=3):
检测窗1(i=0)=(P0,Q0)=(9,5)
检测窗2(i=1)=(P1,Q1)=(15,7)
检测窗3(i=2)=(P2,Q2)=(19,9)
(在每个位置,检测窗1跨越9个特征块行(P0=9)以及5个特征块列(Q0=5);检测窗2跨越15个特征块行(P1=15)以及7个特征块列(Q1=7);以及检测窗3跨越19个特征块行(P2=19)以及9个特征块列(Q2=9)),
●每个特征块的尺寸是32个字(Sb=32),以及
●以每秒30帧处理图像以进行对象分类(帧率=Fr=30),
图3和图4所描绘的方法能够实现以下带宽数字:
带宽(Bt′)=3.336M字
Bt′=每帧带宽×Fr=(Sb×M×N)×Fr=32×79×44×30
如上所述,总带宽独立于检测窗标度的数量和/或检测窗的数量,其能够显著地减小对象分类处理所需的带宽。当通过实现图1和图2的方法来实现的总带宽(Bt)相比时,通过实现图3和图4所描绘的方法所实现的总带宽(Bt’)明显地改善了对象分类处理的带宽效率。例如,带宽的比较(C)能够由等式(10)来表示:
在本文描述的实施例中,图3和图4所描绘的示例性方法相比于图1和图2所描绘的示例性方法能够将总带宽提高192倍。
为减少处理,以及进一步增强对象检测与分类效率,示例性的方法能够实现连续分析的图像帧之间的时间冗余性。例如,在各实现中,向量点积表用于多个图像帧的对象检测与分类。对于给定的图像帧,在给定图像帧内滑动以重叠图像的各部分用于对象检测与分类的检测窗能够跳过例如垂直方向和/或水平方向上的向量点积表。在各实现中,在两个连续的图像帧之间,改变滑动检测窗的起始位置,使得检测窗将覆盖多个帧中的全部感兴趣区域(ROI),其中每个图像帧分类包括先前图像帧的组合向量点积分类结果。
例如,使R表示被处理而用于对象检测与分类的图像帧的数量;C表示水平跳过计数;D表示垂直跳过计数;T(i,j)表示第(i,j)个检测窗的点积条目,其中i表示图像帧的特征块行且i表示图像帧的特征块列;以及(X,Y)表示分别沿着水平方向和垂直方向的起始位置。示例性的方法能够初始化用于将滑动检测窗的起始坐标存储在一组连续CxD图像帧内的阵列A(具有尺寸[C][D]),使得整个感兴趣区域(ROI)被覆盖。对于给定的向量点积表,示例性的方法能够对于每个图像帧R来执行由等式(11)所表示的以下(其能够称为步骤1):
b=R%(C*D)
(X,Y)=A(b);
然后选择性地更新向量点积表(其能够称为步骤2),由等式(12)表示:
对于从0到M-1的全部i
对于从0到N-1的全部i
更新T(i,j)如果{(j%C==X)且(i%D==Y)}
结束
结束
其中更新是指实现如本文所描述的示例性方法所得到的部分向量点积确定。在每个图像帧的向量点积分类随后能够与前一‘(C*D)-1’帧的向量点积分类结果组合。注意的是,C,D的值以及检测窗的起始位置(在阵列A中)的顺序取决于实现以评估图像帧的对象检测与分类过程的应用要求。
图5是根据本公开的各方面的能够实现对象检测与分类过程的示例性的处理器200的示意性框图,诸如参考图1-4所描绘和描述的对象检测与分类方法。在描绘的实施方案中,处理器200是数字信号处理器,包括核心处理器210、存储器系统(例如,L1存储器220、L2存储器230和L3存储器240)、直接存储器访问(DMA)系统250、外围设备块260以及硬件处理块270。在各实现中,数字信号处理器是Analog Devices,公司(ADI)处理器,例如来自处理器的ADI型号ADSP-BF60x系列。为清晰的目的,已经简化了图5,以便更好的理解本公开的发明构思。附加的特征能够添加到处理器200中,在处理器200的其它实施方案中,下面描述的一些特征能够被取代或去除。
核心处理器210能够执行数字信号处理器的计算与数据处理功能。在各实现中,核心处理器210可以包括利于程序执行的控制单元,以及执行计算与数据处理功能的计算单元。控制单元可以包括算术逻辑单元和数据地址生成(ALU-DAG)单元、程序定序器、和/或其它组件,取决于处理器200的设计要求。ALU-DAG单元能够支持通用整数计算并且供给用于存储器取的抵制,并且程序定序器能够控制指令执行流。计算单元可以包括算术逻辑单元(ALU)、乘法器-累加器(MAC)、移位器、寄存器文件、其它组件或其组合,取决于处理器200的设计要求。ALU能够执行算术与逻辑运算,诸如加、减、否定、增量、减量、绝对值、与、或、异或、非、除基元、其它算术运算、其它逻辑运算或其组合。MAC能够执行乘法运算以及乘法与累加运算,诸如单循环乘法、乘法/加法、乘法/减法、其它运算或其组合。移位器能够执行逻辑与算术移位、位操纵、标准化、解标准化、取指数运算、其它运算或其组合。能够对固定点格式和浮点格式执行各种算术运算、逻辑运算以及其它运算。在各实施方案中,ALU、MAC和/或移位器包括与其相关联的寄存器。寄存器文件可以包括通用寄存器,具有取决于处理器200的设计要求的宽度,诸如32位通用寄存器、40位通用寄存器、64位通用寄存器、128位通用寄存器、其它宽度的通用寄存器或其组合。
存储器系统包括内存储器和外存储器,它们能够存储待由处理器200处理的信息/数据(数据存储器)、由处理器200实现以处理信息/数据的程序(程序存储器)、或它们的组合。在所描绘的实施方案中,内存储器包括L1存储器220和L2存储器230(也称为辅助存储器),其中核心处理器210包括L1存储器;并且外存储器包括L3存储器240。L1存储器220、L2存储器230和L3存储器240能够配置为任意类型的易失性或非易失性存储器,取决于处理器200的设计要求。例如,在各实现中,L1存储器220配置为随机存取存储器,诸如静态随机存取存储器(SRAM);L2存储器230配置成包括只读存储器(ROM)和随机存取存储器,诸如SRAM;并且L3存储器配置成包括随机存取存储器,诸如SRAM、动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)或铁电随机存取存储器(FRAM)、或其它类型的随机存取存储器。在各实现中,L1存储器220、L2存储器220和/或L3存储器230的一部分能够配置为高速缓冲存储器。
DMA系统250配置成利于处理器200中的数据传输,尤其是在存储器与外围设备块260之间和/或存储器之间传输(移动)数据。这些数据传输能够在核心处理器210不干预的情况下实现。在各实现中,DMA控制器250能够在处理器200的内存储器与外存储器之间传输(移动)数据。例如,DMA控制器250能够移动数据自/到L1存储器220、L2存储器230和/或L3存储器240。
处理器200可以包括对象检测模块,其配置成执行最小化内存储器与外存储器之间的数据传输的对象检测与分类处理。在所描绘的实施方案中,对象检测模块实现上文参考图3和图4所描述的示例性的对象检测与分类模块。在各实现中,核心处理器210或硬件处理块270可以包括对象检测模块。在各实现中,核心处理器210和硬件处理块270可以包括对象检测模块的部分。
图6是根据本公开的各方面的用于诸如图5的处理器200的具有对象检测模块的处理器的示例性的存储器方案300的示意性框图,其实现对象检测与分类处理,诸如参考图3和图4所描绘和描述的。例如,在各实现中,特征块组件存储在L3存储器中,诸如处理器200的L3存储器240;向量点积表存储在L1存储器和/或L2存储器中,诸如处理器200的L1存储器220和/或L2存储器230;并且超平面存储在L1存储器和/或L3存储器中,诸如处理器200的L1存储器220和/或L3存储器240。图像帧的特征块行的特征块组件能够通过DMA系统250从L3存储器传输到L1存储器,例如,从L1存储器220传输到L3存储器240。然后,处理器200能够利用超平面和特征块行的特征块组件来确定部分向量点积,并且将部分向量点积存储在点积表中,如上文详细描述的。为清晰的原因,已经简化了图6,以便更好的理解本公开的发明构思。附加的特征能够添加到存储器方案300中,在存储器方案300的其它实施方案中,下面描述的一些特征能够被取代或去除。
本文所列的各功能可以通过编码到一个或多个非暂态和/或有形介质中的逻辑(例如,在专用集成电路(ASIC)中提供的嵌入式逻辑、作为数字信号处理器(DSP)指令、待由处理器执行的软件(可能包含目标码和源码)、或其它类似的机器等)来实现。在这些实例中的一些实例中,存储器元件能够存储用于本文所描述的运算的数据。这包括能够存储由处理器执行以实施本文所描述的活动的逻辑(例如,软件、代码、处理器指令)的存储器元件。处理器能够执行与数据相关联的任意类型的指令以实现本文详述的操作。在各实现中,处理器能够将元素或物品(诸如数据)从一种状态或事物变换成另一状态或事物。在另一实施例中,本文所列的活动可以通过固定逻辑或可编程逻辑(诸如由处理器执行的软件/计算机指令)来实现,并且在本文所标识的元素可以是某类型的可编程处理器(诸如DSP)、可编程数字逻辑(例如,FPGA、可擦除可编程只读存储器(EPROM)、电可擦除可编程ROM(EEPROM)、或包含数字逻辑、软件、代码、电子指令的ASIC,或它们的任何适合的组合。
在各实现中,图中所示的系统和/或各种电路和/或组件能够实现在关联电子设备板上。该板可以是通用电路板,其能够保持电子设备的内部电子系统的各种组件,并且进一步提供用于其它外围设备的连接器。该板能够提供电连接,通过该电连接系统的其它组件能够进行电通信。任何适合的处理器(包含数字信号处理器、微处理器、支持芯片组等)、存储器元件等可以基于特定的配置需要、处理需求、计算机设计、其它考虑或它们的组合而适当地与板耦合。其它组件,诸如外部存储设备、传感器、用于音频/视频显示的控制器以及外围设备可以作为插入卡、经由电缆附接到板上,或者集成到板本身中。
在各实现中,图中所示的系统和/或各电路和/或组件能够实现为独立模块(例如,具有配置为执行特定应用或功能的关联组件和电路系统的设备)或者实现为电子设备的专用硬件的插入模块。注意,本公开的特定实施方案可易于部分地或者整体地包含在片上系统(SOC)封装中。SOC代表了将计算机或其它电子系统的组件集成到单个芯片中的集成电路。其可以包含数字信号、模拟信号、混合信号,以及通常包含射频功能:全部可提供在单个芯片基板上。其它实施方案可包含多片模块(MCM),多个单独的IC定位在单个电子封装内并且配置为彼此通过电子封装紧密地交互。在其它各实施方案中,本文所描述的各功能可以实现在专用集成电路(ASIC)、现场可编程门阵列(FPGA)、其它半导体芯片或它们的组合中的一个或多个半导体核(诸如硅核)中。
注意的是,上文参考附图所论述的活动能够应用于包含信号处理(例如,姿势信号处理)的任何集成电路,尤其是那些能够执行特定软件程序或算法的集成电路,其中一些可以与处理数字化实时数据相关联。一些实施方案可涉及到多DSP信号处理,浮点处理、信号/控制处理、固定函数处理、微控制器应用等。在一些背景下,本文论述的特征能够应用于医疗系统、科学仪器、无线和有线通信、雷达、工业过程控制、音频与视频装备、电流感测、仪器(可能是高度精确的)以及其它数字处理系统。而且,上述的一些实施方案能够提供在用于医疗成像、患者监控、医疗器械和家庭健康护理的数字信号处理技术中。这可以包含肺监控器、加速度计、心率监控器、起搏器等、其它应用可涉及到用于安全系统(例如,稳定控制系统、驾驶辅助系统、制动系统、任何类型的信息娱乐和内部应用)的汽车技术。此外,动力系系统(例如,在混合动力车辆和电动车辆中)能够电池监控、控制系统、报告控制、维护活动等中使用高精度数据转换产品。在另外的实施例方案中,本公开的教导能够应用于包括帮助驱动生产力、能量效率和可靠性的过程控制系统的工业市场中。在消费电子设备应用中,上述的信号处理电路的教导能够用于图像处理、自动聚焦和图像文档(例如,用于数字静像照相机、摄像录像机等)。其它消费电子设备应用可包括用于家庭影院系统、DVD记录仪和高清电视机的音频和视频处理器。还有其它的消费电子设备应用可涉及到先进触摸屏控制器(例如,用于任何类型的便携式媒体设备)。因此,该技术可以容易地作为智能手机、平板设备、安全系统、PC、游戏技术、虚拟现实、模拟训练等的部分。
本文列出的规格、尺寸和关系仅为了示例以及仅为了教导的目的而提供。这些中的每一个可以大幅地改变,而不偏离本公开的精神或随附权利要求书的范围。规格仅适用于非限制实施例,并且因此,它们应当这样解释。在前面的说明中,已经参考特定的布置描述了示例性的实施方案。可以对这些实施方案做出各种修改和改变,而不偏离随附权利要求的范围。因此,说明书和附图在示例性而不是限制的含义上考量。进一步,上文参考前述附图所描述的操作和步骤仅示出了一些可能的可通过本文所述的各种装置、处理器、设备和/或系统执行或者在各种装置、处理器、设备和/或系统内执行的方案。这些操作中的一些操作可适当地删除或去除,或者这些步骤可被进行相当大的修改或改变,而不偏离所论述的构思的范围。另外,这些操作的定时可以进行相当大的改动且仍实现该公开内容所教导的结果。已经为了实施例和论述的目的而提供了前面的操作流程。实质的灵活性由设备和/或系统来提供,因为任何适合的布置、时间顺序、配置和定时机制可被提供,而不偏离所论述的构思的教导。
注意,通过本文提供的若干实施例,根据两个、三个、四个、或更多的组件描述了相互作用。然而,这仅为了清晰且仅为了示例的目的而做出。应当理解,本文所描述的设备和系统能够按任何适合的方式进行结合。沿着类似的设计替选项,图中的任何图示的特征可以组合在各种可能的构造中,全部都明确在本说明书的宽泛范围内。在一些情况下,通过仅参考有限数量的设备和/或系统特征,可能更容易描述给定流程集合的一个以上的功能。应当理解,图中所示的特征及其关联的教导易于进行缩放并且能够容纳大量的特征以及更加复杂/精细化的布置和配置。因此,提供的实施例不应限制范围或抑制可能应用于许多其它体系结构的设备和/或系统的宽泛教导。
此外,注意的是,提到包含在“一个实施方案”、“示例性实施方案”、“实施方案”、“另一实施方案”、“一些实施方案”、“各实施方案”、“其它实施方案”、“替选实施方案”等中的各种特征(例如,元件、结构、模块、组件、步骤、操作、特性等)旨在表示任何这样的特征包含在本公开的一个或多个实施方案内,但是可以或者可以不一定组合在同一实施方案中。
本领域技术人员可以确定若干其它改变、替代、变型例、改动以及修改,并且意在本公开涵盖落入随附权利要求书的范围内的所有这样的改变、替代、变型例、改动以及修改。为了辅助美国专利商标局(USPTO),以及另外地在该申请中发布的任何专利的任何读者解释随附的权利要求书,申请人希望提请注意的是,申请人:(a)不意在任何随附权利要求书在其递交日时存在时援引35U.S.C.部分1110的第六(6)段,除非在特定权利要求书中具体使用了用语“用于...的手段”或“用于...的步骤”;以及(b)不意在说明书中的任何陈述以没有反映在随附权利要求书中的任何方式限制本公开。
示例性实施方案的实现
一个特定的实施例实现可以包括具有用于控制具有非接触姿态控制系统的设备的基于非接触姿态用户接口状态的手段的装置。各实现可进一步包括用于生成表征图像帧的特征块组件的手段,其中图像帧分割成特征块行,使得每个特征块行具有关联的特征块组件;以及利用特征块组件来分析图像帧以检测对象。各种实现可进一步包括如下手段:对于每个特征块行评估与特定块行相关联的特征块组件以确定用于与图像帧的包括特征块行的部分重叠的每个检测窗的部分向量点积,使得每个检测窗具有关联的一组部分向量点积;以及对于每个检测窗,基于关联的一组部分向量点积来确定与检测窗相关联的向量点积,以及基于向量点积将与检测窗对应的图像帧部分分类为对象或非对象。在这些实例中的“用于...的手段”可以包括(但不限于)使用本文所论述的任何适合的组件,以及任何适合的软件、电路系统、集线器、计算机代码、逻辑、算法、硬件、控制器、接口、链路、总线、通信通路等。

Claims (21)

1.一种检测对象的由处理器执行的方法,所述方法包括:
生成表征图像帧的特征块组件,其中所述图像帧被分割成特征块行,使得每个特征块行具有关联的特征块组件;
利用所述特征块组件来分析所述图像帧以检测对象,其中所述分析包括:
对于每个特征块行,评估与所述特征块行相关联的特征块组件以确定与所述图像帧的包括所述特征块行的部分重叠的每个检测窗的部分向量点积,使得每个检测窗具有一组关联的部分向量点积;以及
对于每个检测窗:
基于所述一组关联的部分向量点积来确定与所述检测窗相关联的向量点积,以及
基于所述向量点积来将与所述检测窗对应的图像帧部分分类为对象或非对象。
2.如权利要求1所述的方法,进一步包括将表征所述图像帧的所述特征块组件存储在外存储器中,其中评估与所述特征块行相关联的特征块组件包括将与所述特征块行相关联的特征块组件从外存储器移到内存储器。
3.如权利要求2所述的方法,其中表征所述图像帧的每个特征块组件从外存储器移到内存储器一次。
4.如权利要求1所述的方法,其中确定所述部分向量点积包括,对于与所述图像帧的包括所述特征块行的部分重叠的每个检测窗:
从所述特征块行的与所述检测窗重叠的特征块组件来确定与所述检测窗相关联的部分特征向量;以及
将所述部分特征向量与和所述检测窗相关联的超平面的部分超平面向量组合。
5.如权利要求1所述的方法,进一步包括:对于每个检测窗,限定包括所述图像帧内的检测窗的每个位置的条目的向量点积表。
6.如权利要求5所述的方法,进一步包括:每当对于所述检测窗确定部分向量点积时,更新所述条目。
7.如权利要求5所述的方法,其中限定向量点积表包括将所述向量点积表存储在内存储器中。
8.如权利要求5所述的方法,进一步包括使用所述向量点积表来分析多个图像帧。
9.如权利要求1所述的方法,其中生成所述特征块组件包括生成表征所述图像帧的方向梯度描述符直方图。
10.如权利要求1所述的方法,其中基于向量点积来分类与所述检测窗对应的所述图像帧部分包括:组合连续分析的图像帧中的与所述检测窗相关联的向量点积。
11.一种编码有逻辑的非暂态介质,所述逻辑包括用于执行的代码,并且所述代码在由执行对象检测的处理器执行时能够操作以执行包括如下的操作:
生成表征图像帧的特征块组件,其中所述图像帧被分割成特征块行,使得每个特征块行具有关联的特征块组件;
利用所述特征块组件分析所述图像帧以检测对象,其中所述分析包括:
对于每个特征块行,评估与所述特征块行相关联的特征块组件以确定与所述图像帧的包括所述特征块行的部分重叠的每个检测窗的部分向量点积,使得每个检测窗具有一组关联的部分向量点积;以及
对于每个检测窗:
基于所述一组关联的部分向量点积来确定与所述检测窗相关联的向量点积,以及
基于所述向量点积来将与所述检测窗对应的图像帧部分分类为对象或非对象。
12.如权利要求11所述的非暂态介质,进一步包括将表征所述图像帧的所述特征块组件存储在外存储器中,其中评估与所述特征块行相关联的特征块组件包括将与所述特征块行相关联的特征块组件从外存储器移到内存储器。
13.如权利要求12所述的非暂态介质,其中表征所述图像帧的每个特征块组件从外存储器移到内存储器一次。
14.如权利要求11所述的非暂态介质,其中确定所述部分向量点积包括对于与所述图像帧的包括所述特征块行的部分重叠的每个检测窗:
从所述特征块行的与所述检测窗重叠的特征块组件来确定与所述检测窗相关联的部分特征向量;以及
将所述部分特征向量与和所述检测窗相关联的超平面的部分超平面向量组合。
15.如权利要求12所述的非暂态介质,进一步包括:对于每个检测窗,限定包括所述图像帧内的检测窗的每个位置的条目的向量点积表。
16.如权利要求15所述的非暂态介质,进一步包括:每当对于所述检测窗确定部分向量点积时,更新所述条目。
17.一种用于执行对象检测的装置,所述装置包括:
处理器,其与内存储器和外存储器耦合,其中所述处理器包括对象检测模块,所述对象检测模块配置为执行最小化所述内存储器与所述外存储器之间的数据传输的对象检测与分类过程,其中所述对象检测模块配置为:
生成表征图像帧的特征块组件,其中所述图像帧被分割成特征块行,使得每个特征块行具有关联的特征块组件;
利用所述特征块组件分析所述图像帧来检测对象,其中所述分析包括:
对于每个特征块行,评估与所述特征块行相关联的特征块组件以确定与所述图像帧的包括所述特征块行的部分重叠的每个检测窗的部分向量点积,使得每个检测窗具有一组关联的部分向量点积;以及
对于每个检测窗:
基于所述一组关联的部分向量点积来确定与所述检测窗相关联的向量点积,以及
基于所述向量点积来将与所述检测窗对应的图像帧部分分类为对象或非对象。
18.如权利要求17所述的装置,其中所述对象检测模块包括执行分类的支持向量机分类器。
19.如权利要求17所述的装置,配置为将表征所述图像帧的特征块组件存储在外存储器中,以及将与所述特征块行相关联的特征块组件从外存储器移到内存储器。
20.如权利要求19所述的装置,配置为将表征所述图像帧的每个特征块组件从外存储器移到内存储器一次。
21.如权利要求19所述的装置,其中所述处理器包括将所述特征块组件从所述内存储器移到外存储器的直接存储器访问系统。
CN201480061014.2A 2013-11-08 2014-11-07 基于支持向量机的对象检测系统及相关方法 Active CN105706144B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/076,030 2013-11-08
US14/076,030 US9298988B2 (en) 2013-11-08 2013-11-08 Support vector machine based object detection system and associated method
PCT/US2014/064684 WO2015070098A1 (en) 2013-11-08 2014-11-07 Support vector machine based object detection system and associated method

Publications (2)

Publication Number Publication Date
CN105706144A CN105706144A (zh) 2016-06-22
CN105706144B true CN105706144B (zh) 2018-11-20

Family

ID=53042167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480061014.2A Active CN105706144B (zh) 2013-11-08 2014-11-07 基于支持向量机的对象检测系统及相关方法

Country Status (4)

Country Link
US (1) US9298988B2 (zh)
CN (1) CN105706144B (zh)
DE (1) DE112014005109T5 (zh)
WO (1) WO2015070098A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9589184B1 (en) * 2012-08-16 2017-03-07 Groupon, Inc. Method, apparatus, and computer program product for classification of documents
JP6193779B2 (ja) * 2013-06-03 2017-09-06 株式会社デンソーアイティーラボラトリ 特徴量変換装置、学習装置、認識装置、及び特徴量変換プログラム
US9503747B2 (en) 2015-01-28 2016-11-22 Intel Corporation Threshold filtering of compressed domain data using steering vector
US20170213081A1 (en) * 2015-11-19 2017-07-27 Intelli-Vision Methods and systems for automatically and accurately detecting human bodies in videos and/or images
GB2556908B (en) * 2016-11-24 2021-10-13 Emdalo Tech Limited Ie System and method for determining the presence of objects in an image
DE102017128297A1 (de) * 2016-12-29 2018-07-05 Intel Corporation Technologie zur Merkmalserkennung und -verfolgung
EP3404497B1 (en) * 2017-05-15 2021-11-10 Siemens Aktiengesellschaft A method and system for providing an optimized control of a complex dynamical system
CN107300698B (zh) * 2017-08-21 2020-04-24 哈尔滨工业大学 一种基于支持向量机的雷达目标航迹起始方法
US11080864B2 (en) * 2018-01-08 2021-08-03 Intel Corporation Feature detection, sorting, and tracking in images using a circular buffer
DE102018200226A1 (de) * 2018-01-09 2019-07-11 Robert Bosch Gmbh Verfahren zur Verwaltung und Erkennung von Baumaterial, insbesondere bei der Errichtung von Gebäuden
CN109429047B (zh) * 2018-02-27 2019-12-03 深圳市中擎创科技有限公司 平板电脑投影颜色控制方法
CN109307159A (zh) * 2018-08-21 2019-02-05 湖南大学 一种基于用水量优化预测模型的管网漏损报警方法
TWI696958B (zh) * 2018-11-19 2020-06-21 國家中山科學研究院 影像適應性特徵提取法及其應用
US10748033B2 (en) 2018-12-11 2020-08-18 Industrial Technology Research Institute Object detection method using CNN model and object detection apparatus using the same
US11468266B2 (en) * 2019-09-27 2022-10-11 Raytheon Company Target identification in large image data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1599917A (zh) * 2001-12-03 2005-03-23 本田技研工业株式会社 使用Kernel Fisherfaces的面部识别
KR20130038085A (ko) * 2011-10-07 2013-04-17 전자부품연구원 통합형 서포트 벡터 머신 회로 장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003295318A1 (en) 2002-06-14 2004-04-19 Honda Giken Kogyo Kabushiki Kaisha Pedestrian detection and tracking with night vision
US7336803B2 (en) * 2002-10-17 2008-02-26 Siemens Corporate Research, Inc. Method for scene modeling and change detection
US7899253B2 (en) * 2006-09-08 2011-03-01 Mitsubishi Electric Research Laboratories, Inc. Detecting moving objects in video by classifying on riemannian manifolds
EP1993060A1 (en) 2007-05-15 2008-11-19 Continental Automotive GmbH Device for object detection in an image, and method thereof
WO2009026965A1 (en) 2007-08-31 2009-03-05 Siemens Building Technologies Fire & Security Products Gmbh & Co.Ohg Image classification system and method
EP2286347A4 (en) 2008-06-04 2012-03-07 Nec Lab America Inc SYSTEM AND METHOD FOR PARALLELIZING AND ACCELERATING A LEARNING MACHINE TRAINING AND CLASSIFICATION THEREOF BY MEANS OF A MASSIVELY PARALLEL ACCELERATOR
US8792722B2 (en) 2010-08-02 2014-07-29 Sony Corporation Hand gesture detection
KR101725126B1 (ko) * 2011-12-14 2017-04-12 한국전자통신연구원 특징 벡터 분류기 및 이를 이용하는 인식 장치
US9460354B2 (en) * 2012-11-09 2016-10-04 Analog Devices Global Object detection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1599917A (zh) * 2001-12-03 2005-03-23 本田技研工业株式会社 使用Kernel Fisherfaces的面部识别
KR20130038085A (ko) * 2011-10-07 2013-04-17 전자부품연구원 통합형 서포트 벡터 머신 회로 장치

Also Published As

Publication number Publication date
DE112014005109T5 (de) 2016-09-08
CN105706144A (zh) 2016-06-22
US9298988B2 (en) 2016-03-29
US20150131848A1 (en) 2015-05-14
WO2015070098A1 (en) 2015-05-14

Similar Documents

Publication Publication Date Title
CN105706144B (zh) 基于支持向量机的对象检测系统及相关方法
Engelcke et al. Vote3deep: Fast object detection in 3d point clouds using efficient convolutional neural networks
US20200019794A1 (en) A neural network and method of using a neural network to detect objects in an environment
CN111192293B (zh) 一种运动目标位姿跟踪方法及装置
CN112528831A (zh) 多目标姿态估计方法、多目标姿态估计装置及终端设备
CN109344801A (zh) 一种物体检测方法及装置
CN101187984A (zh) 一种图像检测方法及装置
CN109074497A (zh) 使用深度信息识别视频图像序列中的活动
CN115082968B (zh) 基于红外光和可见光融合的行为识别方法及终端设备
CN108229494A (zh) 网络训练方法、处理方法、装置、存储介质和电子设备
CN115631344A (zh) 一种基于特征自适应聚合的目标检测方法
CN115457364A (zh) 一种目标检测知识蒸馏方法、装置、终端设备和存储介质
CN113239227A (zh) 图像数据结构化方法、装置、电子设备及计算机可读介质
CN111612000A (zh) 一种商品分类方法、装置、电子设备及存储介质
CN112241736A (zh) 一种文本检测的方法及装置
CN112037174B (zh) 染色体异常检测方法、装置、设备及计算机可读存储介质
CN116958873A (zh) 行人跟踪方法、装置、电子设备及可读存储介质
CN110633630B (zh) 一种行为识别方法、装置及终端设备
Cambuim et al. Fpga-based pedestrian detection for collision prediction system
CN114708230B (zh) 基于图像分析的车架质量检测方法、装置、设备及介质
CN110781223A (zh) 数据处理方法及装置、处理器、电子设备及存储介质
CN113239915B (zh) 一种课堂行为的识别方法、装置、设备及存储介质
JP7239002B2 (ja) 物体数推定装置、制御方法、及びプログラム
CN112101139B (zh) 人形检测方法、装置、设备及存储介质
CN114881096A (zh) 多标签的类均衡方法及其装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Limerick

Patentee after: Analog Devices Global Unlimited Co.

Address before: Limerick

Patentee before: Analog Devices Global

CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: Limerick

Patentee after: Analog Devices Global

Address before: Bermuda (UK) Hamilton

Patentee before: Analog Devices Global

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210702

Address after: Limerick

Patentee after: ANALOG DEVICES INTERNATIONAL UNLIMITED Co.

Address before: Limerick

Patentee before: Analog Devices Global Unlimited Co.