对象检测方法及对象检测设备与流程

文档序号:11831652阅读:269来源:国知局
对象检测方法及对象检测设备与流程
本发明涉及用于图像中的对象检测的方法和设备。更具体而言,本发明涉及用于基于阈值可被更新的分类器来识别图像中的对象的方法和设备。
背景技术
:近年来,图像中的对象检测/识别在图像处理、计算机视觉和图案识别领域中正获得广泛和重要的应用,并且在其中起到了重要的作用。对象可以是人的脸部、手部、身体等中的任一种。自然图像和视频中的可靠的实时对象检测是计算机视觉的长久梦想[对比文件1]。就检测质量而言,通用的对象检测器在过去已经获得长足的进步。但是,这种进步部分地是由于使用更好的分类器函数、更多的训练图像以及多个特征集合导致的,而所有这些都导致了方法的运行时间增加。现有技术的任意类别的对象检测的实时系统因此仍未研究[对比文件2、3]。在相关技术中,对象检测器还可被称为分类器,该分类器执行分类并由此检测图像中的对象。一般而言,分类器(还可被称为对象检测器,因此在本说明书上下文中可互换地使用)通常涉及一类对象(诸如人、动物、植物等),并且被用于检测在要被检测的图像中是否存在这一类对象。在近期实践中,用于同一类对象的至少一种分类器通常被级联以被一起使用,这样的级联分类器还可等同于包含通常级联的用于同一类对象的至少一个子分类器的分类器。因此,除非另外指出,否则本文中给出的涉及分类器的描述还可等同地应用于单个分类器、级联分类器以及具有至少一个级联的子分类器的分类器。通常,在对象检测期间,分类器需要阈值来确定输入(诸如要被检测的图像或者其一部分)是真还是假。分类器的阈值在对象检测期间通常是固定的,并且总是根据统计数据和经验被预先设定,或者通过向学习程序供给大量的训练样本(对象样本和非对象样本)而离线学习。在至少一个分类器被级联以被使用或者具有至少一个子分类器的分类器被使用的情况下,级联的分类器或子分类器各自的阈值也是固定的。在分类器的训练集合大得足以能够覆盖不同背景和对象外观的大多数变化时,固定阈值的使用是没问题的。但是,当训练集合小(在极端情况下,仅被给定一个对象样本)时,将难以预先设定可以在大多数状况下良好工作的合适的阈值。此外,为了适合于大多数情况,分类器的阈值必须被设定为更松散的值。因此,固定的且预先设定的阈值可能不够准确以至于无法对于实际的和特定的输入图像有效地工作。现有技术中已经提出了一种在线更新分类器的提升级联(boostedcascade)的方法,该方法通过使用在线学习来在线更新级联的分类器各自的阈值[对比文件4、5],并且这样的方法可被应用于场景的视觉图像或者被应用于具有多个视频帧的视频序列。更具体而言,对于视频帧的序列,可从上一视频帧获得多个否定样本和肯定样本以更新分类器的增幅级联,然后使用更新后的分类器来在下一帧中跟踪目标。这意味着,该方法需要固定的背景以在线提供否定样本,并且需要初始分类器来提供肯定样本。然后,该方法可使用来自上一帧的正样本和负样本在线更新分类器以在下一帧中检测对象。从上文描述可见,当前技术的分类器阈值的在线更新可在具有与要被检测的图像不同的场景的固定视觉图像的固定状况中使用,以从先前图像帧来更新分类器的阈值,而不考虑要被检测的图像本身。此外,对于视频帧序列的情况,这样的方法可仅使用目标以及其在第一帧中的位置来预测目标在下一帧中的位置。视频序列之间的以及基于先前帧的许多信息可被用于更新分类器的阈值。即,当前的更新方法 是使用不同于要被检测的图像的信息的其它信息来更新分类器的阈值。因此,尽管这样的方法可被用于一组连续的和相关的图像,但是其不能准确地被应用于孤立的图像或者一组不连续的且不相关的图像,因为在这样的情况中,分类器的阈值无法利用相关的和在前的图像帧被有效地更新,甚至可能无法利用相关的和在前的图像帧的信息。如上所述,仍需要如下的方法,该方法能够基于分类器的被自适应更新的阈值准确检测孤立图像中的或者一组不连续的且不相关的图像中的每一个中的对象。[引文列表]1.Gonzalez,RafaelC.;RichardEugeneWoods(2007).DigitalImageProcessing.PrenticeHall.pp.407-413.ISBN013168728X,9780131687288.2.YichenWei,LitianTao,EfficientHistogram-BasedSlidingWindow,CVPR2010;3.C.H.Lampert.Detectingobjectsinlargeimagecollectionsandvideosbyefficientsubimageretrieval.InICCV,2009.4.H.Grabner,H.Bischof.On-lineboostingandvision.CVPR20065.H.Grabner,M.Grabner,andH.Bischof.Real-timetrackingviaon-lineboosting.BMVC2006技术实现要素:本发明是针对图像中的对象的识别被开发的,并且旨在解决上述问题。在一个方面,提供了一种用于图像中的对象检测的设备,并且该设备包括判断单元,被配置用于利用分类器判断图像中包含的多个子窗口中的每一个是否含有要被检测的对象;阈值更新单元,被配置用于基于已被判断为含有对象的预定数量的子窗口更新分类器的阈值, 并且更新后的阈值可随后被判断单元应用于剩余的子窗口;以及收集单元,被配置用于收集多个子窗口中的已被判断为含有对象的所有子窗口作为候选子窗口,以便基于候选子窗口来检测图像中的对象。在一种实现中,该判断单元可包括被配置用于计算该分类器对于该子窗口的分类结果;以及被配置用于通过比较分类结果与分类器的阈值来确定该子窗口中是否含有该对象。在一种实现中,阈值更新单元可包括被配置用于将已被判断为含有对象的预定数量的子窗口的分类结果进行排序的单元;以及被配置用于从排序的分类结果中选择满足预定条件的值以基于所选择的值来更新分类器的阈值的单元。在一种实现中,选择满足预定条件的值可包括选择排序的分类结果中的处于固定位置的结果。在另一种实现中,选择满足预定条件的值可包括选择排序的分类结果的平均值。在一种实现中,排序的分类结果中的固定位置可以是排序的分类结果中的中间位置。在一种实现中,收集单元可进一步包括子窗口去除单元,被配置用于去除图像中的其分类结果比更新后的阈值差的子窗口,从而剩余的子窗口将成为候选子窗口。在一种实现中,收集单元可进一步包括被配置用于组合具有相似位置的候选子窗口以确定最终的对象位置的单元。在一种实现中,该设备可进一步包括子窗口选择单元,被配置用于从图像中选择子窗口,并且子窗口选择单元可包括大小确定单元,被配置用于按照越来越大或者越来越小的顺序来确定子窗口的大小;标记单元,用于通过由大小确定单元所确定的大小来标记输入图像中的每个位置是否可能含有所指定的对象;以及子窗口生成单元,被配置用于根据标记信息和所确定的大小来获得所述图像的一部分作为子窗口。在一种实现中,更新分类器的阈值可包括更新该分类器中包括的前预定数量的子分类器的阈值。在另一种实现中,更新分类器的阈值 可包括更新该分类器中包含的所有子分类器的阈值。在一种实现中,在该设备中,当预定数量的子窗口已被判断为含有对象并且分类器的阈值已经基于该预定数量的子窗口被更新时,当剩余子窗口中的另一预定数量的子窗口已被具有更新后的阈值的分类器判断为含有对象时,该预定数量的子窗口以及该另一预定数量的子窗口的全部分类结果被排序,并且排序后的子窗口之中的预定数量的子窗口可被使用作为用于更新分类器的阈值的新的预定数量的子窗口。在另一种实现中,在该设备中,当预定数量的子窗口已被判断为含有对象并且分类器的阈值已经基于该预定的数量子窗口被更新时,将从中去除一些子窗口,并且当其余子窗口中的另一预定数量的子窗口已被具有更新后的阈值的分类器判断为含有对象并且该预定数量的子窗口中的除了被去除的子窗口之外的子窗口与该另一预定数量的子窗口的总数量为该预定数量时,该预定数量的子窗口中的除了被去除的子窗口之外的子窗口和该另一固定数量的子窗口将全部作为用于更新分类器的阈值的新的预定数量的子窗口。在另一方面中,提供了一种用于图像中的对象检测的方法,该方法包括判断步骤,用于利用分类器判断图像中包含的多个子窗口中的每一个是否含有要被检测的对象;阈值更新步骤,用于基于已被判断为含有对象的预定数量的子窗口更新分类器的阈值,并且更新后的阈值可随后在判断步骤中被用于剩余的子窗口;以及收集步骤,被配置用于收集多个子窗口中的已被判断为含有对象的所有子窗口作为候选子窗口,以便基于候选子窗口来检测图像中的对象,其中该判断步骤和阈值更新步骤依次对于该多个子窗口进行操作,直到该多个子窗口全部都被进行判断为止。[技术效果]本发明的解决方案可有效地解决与一组不连续且不相关的图像中的每一个中的对象检测或者仅仅一个图像中的对象检测有关的问题。更特别地,本发明的解决方案可在对象检测处理期间自适应地更 新分类器的阈值,并且使得阈值对于特定检测状况更加准确和有效。在本发明中,在通过子窗口扫描和检测来进行图像的对象检测期间,用于对象检测的分类器的阈值参照要被检测的图像本身被在线更新,而不使用来自任何其他图像的信息,因此在线更新的阈值将被有效地用于当前图像。即,根据本发明,分类器的阈值的更新可专用于要被检测的图像本身,并且可通过该图像的先前检测结果来实现,从而更新后的阈值可被更有效地应用于图像,并且识别准确度可被有效地提高。此外,由于分类器的阈值的更新是在执行图像检测的同时被执行,因此分类器不需要额外学习其他样本,并且检测过程可被进一步加速。从参照附图的示例性实施例的以下描述,本发明的其它特征将变得清晰。附图说明并入说明书中并且构成说明书的一部分的附图示出了本发明的实施例,并且与描述一起用于解释本发明的原理。在附图中,相似的附图标记指示相似的项目。图1示出了现有技术中的对象检测的典型过程。图2是示出可实现本发明的实施例的计算机系统的示例性硬件配置的框图。图3是示出根据实施例的对象检测方法的流程图。图4是示出根据实施例的判断步骤中的处理的流程图。图5是示出根据实施例的子窗口选择处理中的处理的流程图。图6是示出根据实施例的阈值更新步骤中的处理的流程图。图7是示出根据实施例的收集步骤中的处理的流程图。图8是示出根据实施例的对象检测设备的框图。具体实施例描述下文将参照附图详细描述本发明的实施例。应注意,在附图中相似的附图标记和字母指示相似的项目,并且因此一旦一个项目在一个附图中被定义,则对于随后的附图无需再对其进行论述。为了有助于透彻地并且适当地理解本发明,下文将首先解释本公开的上下文中所使用的术语的含义。在本公开的上下文中,图像可指的是多种图像中的任一种,诸如彩色图像、灰度图像等,并且通常在其中可包含至少一个对象。应指出,在本说明书的上下文中,图像的类型未被具体限制,只要这样的图像可在分类器中经受处理以便可检测该图像是否含有对象即可。在本说明书的上下文中,图像含有对象指的是图像中含有该对象的图像。在本说明书的上下文中,子窗口通常对应于当子窗口被放置在图像上时图像中的在该子窗口下面的与该子窗口对应的子图像区域,并且为了清楚起见,在本说明书的上下文中,子窗口将与图像中的子图像区域可交换地使用,因此图像中包括的子窗口等同于图像中包括的子图像区域,并且分类器中的对于该子窗口的处理可指的是分类器中的对于该子图像区域的处理。在说明书的上下文中,术语“在线”基本指的是分类器的阈值的更新处理可在对象检测处理期间被实行。在说明书的上下文中,术语“自适应”基本指的是分类器的阈值的更新是基于要被检测的图像自身的。在本公开中,术语“第一”、“第二”等仅仅用于区分元素或者步骤,而不是要指示时间顺序、优先选择或者重要性。图2是示出可实施本发明的实施例的计算机系统1000的示例性硬件配置的框图。如图2所示,计算机系统包括计算机1110。计算机1110包括处理单元1120、系统存储器1130、不可移除非易失性存储器接口1140、可移除非易失性存储器接口1150、用户输入接口1160、网络接口1170、视频接口1190、和输出外围接口1195,它们通过系统总线1121连接。系统存储器1130包括ROM(只读存储器)1131和RAM(随机 存取存储器)1132。BIOS(基本输入输出系统)1133驻留在ROM1131中。操作系统1134、应用程序1135、其它程序模块1136和一些程序数据1137驻留在RAM1132中。不可移除非易失性存储器1141(诸如硬盘)连接到不可移除非易失性存储器接口1140。不可移除非易失性存储器1141可存储诸如操作系统1144、应用程序1145、其它程序模块1146以及一些程序数据1147。可移除非易失性存储器(例如软盘驱动器1151和CD-ROM驱动器1155)连接到可移除非易失性存储器接口1150。例如,软盘1152可插入软盘驱动器1151,并且CD(光盘)1156可插入CD-ROM驱动器1155。诸如鼠标1161和键盘1162的输入设备连接到用户输入接口1160。计算机1110可通过网络接口1170连接到远程计算机1180。例如,网络接口1170可经局域网1171连接到远程计算机1180。可替换地,网络接口1170可连接到调制解调器(调制器-解调器)1172,并且调制解调器1172经广域网1173连接到远程计算机1180。远程计算机1180可包括诸如硬盘的存储器1181,其存储远程应用程序1185。视频接口1190连接到监视器1191。输出外围接口1195连接到打印机1196和扬声器1197。图2所示的计算机系统仅是说明性的,并且决不打算限制本发明、其应用或者使用。图2所示的计算机系统可对于任一实施例被实现为孤立计算机,或者设备中的处理系统,其中可去除一个或多个不必要的组件或者可添加一个或多个附加的组件。下文将参照附图描述根据本发明的基本实施例的对象检测方法,该附图示出了根据本发明的基本实施例的方法中的处理。在本发明中,提出了新颖的用于通过自适应地在线更新对象检测器的阈值来进行对象检测的方法,该方法可在小的训练集合上甚至单个待检测的图像上 被有效和准确地实施。在本发明中,对象检测器一开始被给予松散的阈值,该阈值可检测处于各种背景的对象(但是具有许多虚警)。这样的松散阈值可依照经验或者根据小的训练集合(其远小于目前使用的训练集合)被设定。在利用这样的对象检测器检测对象期间,本方法利用图像中包含的先前部分的检测结果自适应地调整对象检测器的阈值,以随同检测操作的进行一起快速且准确地确定最优阈值,从而获得图像中包含的对象的准确检测结果。上文所述的这样的更新处理还可等同地应用于级联分类器或者具有级联的子分类器的分类器,并且在这样的情况中,级联分类器或者级联的子分类器中的每一个可如上所述在对象检测期间被自适应地更新。接下来,将参照图3描述根据本发明的实施例的对象检测方法,图3示出了这种方法的流程图。在本发明的步骤S301(还被称为判断步骤),利用分类器依次判断图像中包含的多个子窗口中的每一个是否含有要被检测的对象。在本发明的步骤S302(还被称为阈值更新步骤)中,每当预定数量的子窗口通过了该分类器时就更新分类器的阈值,并且更新后的阈值可随后被在判断步骤中被用于剩余的子窗口在本发明的步骤S303(还被称为收集步骤)中,收集该多个子窗口中的通过了分类器的所有子窗口作为候选子窗口,以便基于候选子窗口来识别图像中的对象。应指出,对于要被检测的图像中的多个子窗口,从多个子窗口中的第一子窗口起,该判断步骤和阈值更新步骤将对于多个子窗口依次执行,直到所述多个子窗口全部被进行判断为止。然后,将对于已经被判断为含有对象的子窗口执行该收集步骤,以完成对象检测。通常,根据本实施例的方法按照特定顺序依次检测图像的多个子窗口中的每一个(例如,该特定顺序是从右上角的子窗口到左下角的子窗口,但是该检测序列不被特别限制,只要可遍历整个图像即可),当预定数量的子窗口已经被判断为含有对象,则用于检测的分类器的 阈值将被更新,然后被用于随后的子窗口的检测。这样的阈值更新和子窗口检测可被重复进行,直到图像中包含的所有子窗口已被进行判断。然后,被判断为含有对象的所有子窗口将被收集,从而图像中包含的对象将被最终检测到。通过这样的方法,对象检测中使用的对象检测器的阈值可随着检测操作的进行一起被更新,并且具体地对于要被检测的图像本身被更新,从而与现有技术中的技术相比,本发明的方法不仅提高了对象检测精度,而且还加速了检测处理。应指出,本发明的方法的步骤中描述的术语“分类器”应被看做单个分类器、分类器的级联以及具有级联的子分类器的分类器中的任一种,并且可获得类似的技术效果。下文,为了便于理解本发明的思想,将详细描述该实施例的各个步骤中的处理。通常,根据该实施例的方法的判断步骤可对于待检测的图像中包含的多个子窗口中的每一个被执行,直到图像中包含的所有子窗口已被处理为止,并且主要旨在判断每个子窗口中是否含有指定的对象。判断步骤可被以多种方式实现,并且通常通过对象检测器(即,分类器)被执行。下文将参照图4描述根据该实施例的方法的判断步骤中的示例处理。应指出,如图4所示的处理仅是示例性的,并且任何其他的基于阈值的判断处理也可被使用。如图4所示,对于图像中包含的每个子窗口,首先计算通过分类器处理该子窗口的分类结果(步骤S401),然后,通过比较分类结果与分类器的阈值来确定对象是否被包含在该子窗口中(步骤S402)。分类器结果可被以多种方式计算,因此可表现为多种形式。例如,诸如通过根据分类器的特征定义从所述子窗口提取特征,并且计算该子窗口的特征与分类器的特征之间的差值,可计算子窗口与分类器的特征之间的差值作为使用分类器对于子窗口的分类结果。特征提取和计算在本领域中是已知的,因此为了清楚起见在此被省略。当然,分类结果可被以任何其他方式实现,并且可以是本领域中已知的任何其 他形式,只要其可与分类器的阈值进行比较即可。在已经计算出分类器对于对象的分类结果之后,这样的分类结果将与分类器的对于该对象的阈值进行比较以确定该子窗口是否含有该对象。通常,如果分类结果比对应的阈值差(通常是大于该对应阈值,当然如果需要的话也可以是其他形式),判断所述子窗口中不含有指定的对象,即,分类器的确定将获得为假的结果,或者子窗口未能通过该分类器;如果分类结果比对应阈值好(通常是小于该对应阈值,当然,如果需要的话也可以是其他形式),判断所述子窗口中含有指定的对象,即,分类器的确定将获得为真的结果,或者子窗口通过了该分类器。实际上,多个分类器的级联通常被用于检测子窗口是否包含对象,其中每个分类器具有其自己的对应阈值,因此该级联中包含的每个分类器的对于该子窗口的分类结果将被相应地计算。应指出,级联中包含的不同分类器可具有不同的特征定义和特征提取方法,甚至是不同的计算方法。因此,对于子窗口的分类器结果与阈值之间的这种比较将对于级联的分类器中的每个从第一个分类器开始执行。当对于一个分类器,分类结果比对应阈值差,则将判断子窗口中不含有指定的对象,然后将直接确定子窗口未能通过分类器的级联,对于该级联中的剩余分类器的处理将不再执行。即,只要该级联中包含的一个分类器获得假结果,将判断子窗口中未含有该对象。另一方面,当对于一个分类器,分类结果比对应阈值好,则处理将进行至级联中包含的下一分类器,然后对于随后级联的分类器重复进行如上所述的计算和比较。直到该级联中包含的所有分类器的每个分类结果都比对应阈值好,则将判断所述子窗口中含有指定的对象。即指定的对象已经通过了分类器的级联。即,只有当级联中包含的所有分类器都获得真结果,才判断子窗口中包含该对象。考虑到在本说明书的上下文中,分类器的级联等同于包含具有各自阈值的至少一个子分类器的分类器,因此上述描述还可适合于包含 至少一个子分类器的分类器,更具体而言,当分类器中包括的所有子分类器对于该子窗口都获得真结果,则将判断该子窗口含有对象,即对象通过了该分类器,而只要分类器中包含的一个子分类器对于该子窗口获得假结果,则将判断子窗口不含有对象,即对象未能通过该分类器。当子窗口已经通过了所述级联中的所有分类器时,该子窗口将被认为是候选子窗口,并且将被根据该实施例的方法进一步处理。对于利用分类器的判断处理,首先在整个图像中获得/选择多个子窗口,并且可将该多个子窗口排序为子窗口序列,然后从所获得的/选择的子窗口序列中的第一子窗口开始,使得该多个子窗口中的每一个经受分类器中的处理以确定该子窗口是否含有对象。所获得的子窗口序列将以多种方式遍历要被检测的图像,诸如从左上角到右下角自上而下地遍历,从左上角到右下角自左到右地遍历等,因此所获得的多个子窗口可相应地被排序。所获得的子窗口的序列不被这样限制,只要整个图像可被子窗口遍历即可。从图像获得的子窗口的形式可被以多种方式实现。通常,所获得的子窗口可以是矩形形状、方形形状、圆形形状等中的任一种。子窗口的形状未被特别限制,只要由此获得的所有子图像区域可完全覆盖图像即可。通常,子窗口的大小在从图像获得这样的子窗口期间是固定的。例如,从图像的左上点开始,将从图像依次选择固定大小的子图像区域,从而子图像区域将作为子窗口经受分类器中的处理。当然,子窗口的获得还可从图像的其他位置开始,只要整个图像可被子窗口遍历即可。图像中选择的相邻的子窗口通常相互重叠,而重叠比未被特别限制,只要相邻子窗口未完全重叠即可。在另一种实现中,相邻的子窗口可不相互重叠,而是彼此紧邻以使得在相邻子窗口之间不存在任何空白部。通常,子窗口的数目越大,则速度越慢,但是图像检测的精度越高。在优选实现中,为了进一步改进图像中的对象检测,子窗口可被以改进方式选择。更具体而言,根据该实施例的改进的子窗口的选择的思路在于,通过基于子窗口的分类结果自适应地改变子窗口的大小以在这样的选择期间自适应地设定子窗口的大小,从而对于图像的不同部分可设定适当的子窗口大小。下文将参照图5描述这种改进的子窗口的选择。首先,按照越来越大或者越来越小的顺序来确定子窗口的大小(步骤S501)。通常,子窗口的大小越小,所选择的子窗口的数量越大。因此,按照越来越大或者越来越小的顺序来选择子窗口的方法可使得阈值更新单元更加有效。然后,关于从所述大小确定步骤获得的特定大小,标记所述图像中的位置是否可能包含所指定的对象(步骤S502)。如果一个子窗口通过分类单元判断含有所指定的对象,则对应的位置将被标记为真;否则,对应的位置将被标记为假。在此处理中,每个位置的对于特定的子窗口大小的结果可被保留用于子窗口生成单元中的对于下一子窗口大小的处理操作。然后,根据标记信息以及确定的大小生成所述图像的一部分作为子窗口(步骤S503)。当通过大小确定单元确定子窗口的大小时,该设备总是首先选择被标记为真的位置。当被标记为真的所有位置都被以相同子窗口大小选择时,其他被标记为假的位置将被选择。该方法还可使得阈值更新单元更加有效。在这样的子窗口选择的一种实现中,从第一子窗口起,子窗口的大小将基于这样的子窗口中的对象检测结果被设定。当结果为假时,这样的子窗口中可能不含有对象,子窗口的大小将保持用于后续的子窗口中,直到接下来的子窗口被确定为含有指定的对象。当预定数量的连续的子窗口的对象检测结果为真时,即认为在这样的由子窗口构成的区域中可含有指定的对象时,将对于这样的区域执行子窗口选择处理以对于这样的区域重新设定适当的子窗口大小(从较大向较小改变)以更准确地确定对象的位置,然后改变的子窗口大小被保持用于 后续窗口。然后,当对于预定数量的连续的子窗口,对象检测结果为假时,即认为在这样的由子窗口构成的区域中可能不含有指定的对象时,将对于这样的区域执行子窗口选择处理以对于这样的区域重新设定适当的子窗口大小(从较小向较大改变)以加速子窗口选择,然后改变的子窗口大小被保持用于后续窗口。这样的子窗口大小改变将重复进行,直到整个图像可被选择的子窗口覆盖为止。通过这样的处理,子窗口的大小/数量可对于图像的不同部分被适当地设定,从而对于可能包含指定的对象的部分,在这样的部分中可选择更加密集的子窗口,而对于可能不包含指定的对象的部分,在这样的部分中可选择更加稀疏的子窗口。通过这样改进的子窗口获得方法,对于要被检测的图像可自适应地选择更加有效和适当的子窗口,从而所选择的子窗口序列可使得对象检测更加准确,同时进一步加速对象检测。下文,将参照图6描述阈值更新步骤中的处理。原则上,更新处理在于在对于图像中的多个子窗口的对象检测期间,基于已经通过了分类器的预定数量的子窗口更新该分类器的阈值,从而具有更新后的阈值的分类器可被用于图像中的该多个子窗口中的除了该预定数量的子窗口之外的剩余子窗口。子窗口的预定数量可被操作员根据经验任意设定,例如可以是100。换句话说,从图像中的多个子窗口中的第一子窗口开始,随着依次对于每个子窗口执行对象检测,当要被检测的图像中的该多个子窗口中包含的预定数量的子窗口已经通过了分类器(即,被分类器判断为含有对象),则分类器的阈值将被从对应于该预定数量的子窗口的分类结果确定的最优阈值替代,然后具有最优阈值的分类器将被用于处理剩余子窗口。在更新处理的步骤S601中,可将已经通过了分类器的预定数量的子窗口各自的分类结果进行排序。通常,已经通过了分类器的预定数量的子窗口各自的分类结果可 被以多种方式进行排序,优选地被按照从较好结果到较差结果的顺序进行排序,其中较好指的是子窗口更有可能含有图像中的对象,而较差指的是子窗口不太可能含有图像中的对象。例如,当分类结果例如是如上所述的差值时,差值越小,则分类结果越好,并且分类结果将按照差值的升序排序。当然,较好和较差的含义还可以是不同于上文的含义,并且分类结果可相应地被排序。应指出,这样的排序处理不必须被包含于阈值更新步骤中,只要分类结果在阈值更新之前已被排序即可。当使用单个分类器时,预定数量的子窗口的分类结果将以列表的形式被排序,而当使用多个分类器的级联时,预定数量的子窗口的分类结果将以矩阵的形式被排序,在这种情况中,排序将基于级联中的第一分类器的分类结果,而当第一分类器的分类结果相同时,将按照级联中的第二分类器的分类结果进行排序,诸如此类。在更新处理的步骤S602中,从经排序的分类结果确定最优值,以便根据该最优值更新分类器的阈值。优选地,将从经排序的分类结果中选择某一分类结果作为最优值,并且参照所选择的分类结果,相应地更新分类器的对应阈值。例如,当分类结果是例如如上确定的差值时,所选择的最优差值将被确定为分类器的更新后的阈值。这样的某一分类结果的选择可被以多种方式执行。在一个方面,选择经排序的分类结果中的预定位置处的结果。优选地,这样的预定位置可以是经排序的分类结果中的中间位置,或者经排序的分类结果中的最后位置。例如,预定位置是经排序的分类结果中的第100个位置。经排序的序列中的第100个分类结果将被选择作为最优值以更新分类器的阈值。如果经排序的序列的总数少于100个,则将不生成最优阈值。当然,用户可参照经验利用经排序的分类结果中的任何其它位置。在另一方面,这样的最优值可从经排序的分类结果中以数学方式获得。例如,这样的最优值可以是预定数量的分类结果的数学统计值, 例如均值等。当实际上使用多个分类器的级联执行对象检测时,级联的分类器的阈值的更新可被以多种方式执行。在一个方面中,分类器中包含的前预定数量的子分类器的阈值可被更新。例如,当分类器包括五个级联的子分类器时,前三个子分类器的阈值可被更新。在另一方面中,分类器中包含的全部子分类器的全部阈值可被更新。应指出,预定数量的子窗口已经通过了分类器是这样的阈值更新的触发器。更具体而言,从要被检测的图像中的第一子窗口起,对于每一子窗口依次执行对象检测,并且一旦这样的预定数量的子窗口已经获得肯定的分类结果,就执行这样的阈值更新处理。在阈值更新之后,对于图像中的在该预定数量的子窗口之后的子窗口,可继续进行阈值更新处理。在一种实现中,在分类器的阈值已经基于所述预定数量的子窗口被更新之后,这样的预定数量的分类结果可保留。当具有更新后的阈值的分类器被用于剩余子窗口的对象检测,并且至少一个新的子窗口已经通过了具有更新后的最优阈值的分类器时,这样的阈值更新将被再次执行。在这样的情况中,所述至少一个新的子窗口可被添加到先前的预定数量的子窗口中。此时,至少一个新加入的子窗口和先前的预定数量的子窗口的全部分类结果将进一步被以先前方式排序,诸如按升序方式排序,并且优选地,这样的分类处理可在阈值更新步骤中被执行。在这样的添加和排序之后的子窗口中的前预定数量的子窗口的分类结果可被用于获得分类器的用以处理剩余的子窗口的新最优阈值,并且在这样的情况中,如前文描述的阈值更新步骤中的用于预定数量的子窗口的排序步骤可被省略。阈值的这种更新将依次进行,直到所有子窗口已被处理。应指出,该至少一个新的子窗口的数量可由用户根据经验设定,例如为1、5等。在另一种实现中,在分类器的阈值已经基于这样的预定数量的子窗口被更新之后,这样的预定数量的分类结果可被进一步处理以去除 其中的一部分。例如,对应于该预定数量的子窗口的分类结果中的比最优值差的那些分类结果可被去除。优选地,这样的去除处理可在阈值更新步骤中执行。然后,当已经通过了具有更新后的最优阈值的分类器的一些新的子窗口被添加从而使得候选子窗口的数量再次达到该预定数量时,再次执行这样的阈值更新。在这样的情况中,该预定数量的子窗口中除了被去除的子窗口之外的子窗口和该新添加的子窗口全部作为获得分类器的用于处理剩余的子窗口的新最优阈值的基础。这样的阈值更新可依次进行,直到所有的子窗口已被处理。此外,这样的更新处理可按多种方式与上述改进的子窗口选择处理相结合。例如,这样的更新处理可在图像中的子窗口已通过可能基于初始阈值的上述改进的子窗口选择处理被全部选择之后被执行,从而可对于改进的被选择的子窗口执行阈值更新,并且对象检测的速度和精度可被提高。作为替代,这样的更新处理可在正在通过上文所述的改进的子窗口选择处理选择图像中的子窗口的同时被执行。即,子窗口的选择可随着阈值更新一起进行。例如,在要被检测的图像可被划分成预定数量的区域的情况下,对于每个区域,子窗口可如上所述地基于阈值被改进地选择,并且阈值可随后基于这样选择的子窗口被更新。这样的选择和更新处理可从第一区域到最后的区域依次执行。因此,子窗口选择和阈值更新可关于要被检测的图像被更适当地执行,并且对象检测的速度和精度可进一步提高。下文,将参照图7描述收集步骤中的处理。在这样的收集步骤的处理中,该多个子窗口中的通过了具有更新后的最优阈值的分类器的所有子窗口被收集,从而可确定指定对象的最终位置并且可从该图像检测到对象。优选地,在这样的收集处理中可执行子窗口去除步骤(S701)以加速对象检测。更具体而言,在确定分类器的最优阈值同时利用分类器处理了图像中的所有子窗口之后,分类器的最终的最优阈值可被 用于去除分类结果中的比该更新后的最终阈值差的那些子窗口,并且作为结果的子窗口被组合以检测图像中的对象。在一种实现中,在确定分类器的最优阈值的同时利用分类器处理了图像中的所有子窗口之后,将使用最终的最优阈值来在分类器中对于图像中的所有子窗口再次进行处理以重新确定每个子窗口是否含有指定的对象,类似于如前文所述的判断步骤中的处理。因此,最终确定为不含有指定的对象的那些子窗口将被去除。在另一种实现中,这样的去除处理还可仅针对在阈值的更新期间被确定为通过了分类器的那些子窗口,即,将从在阈值更新期间被确定为通过了分类器的那些子窗口中去除比最终的最优阈值差的子窗口,并且这样的去除处理将进一步加速对象检测。当然,当如上所述的阈值更新步骤中的去除处理已在阈值更新处理期间执行时,该子窗口去除处理可不再次执行。应指出,这样的去除步骤不必须被包含在收集处理中,并且即使不包含这样的去除步骤,这样的收集处理仍可准确地检测图像中的指定的对象。这样的情况由用于步骤S701的虚线框被说明。然后,在去除之后得到的子窗口可被组合(S702)。这样的组合可被以多种方式执行。在一种实现中,剩余的具有相似位置的候选子窗口可被组合以便确定指定对象的最终位置。许多最终的子窗口可处于相似位置,然后可将它们的平均位置和大小确定为最终的指定位置和大小。另一方面,当可能存在具有不同位置的多个子窗口时,这可能意味着图像中存其他指定的对象,然后可如上所述地确定其他对象的位置。通过上述处理,可最终准确地确定图像中的对象。图8是示出了根据该实施例的对象检测设备的框图。对象检测设备以及其中包含的单元可被硬件、固件、软件中的任一种或者它们的任何组合实现,只要对象检测设备中的单元可实现上述对象检测方法的对应步骤的功能即可。对象检测设备800可包括判断单元801,被配置用于利用分类器判断图像中包含的多个子窗口中的每一个是否含有要被检测的对象;阈值更新单元802,被配置用于基于已被判断为含有该对象的预定数量的子窗口更新分类器的阈值,并且更新后的阈值可随后被该判断单元用于剩余的子窗口;以及收集单元803,被配置用于收集该多个子窗口中的已被判断为含有该对象的所有子窗口作为候选子窗口,以便基于候选子窗口来检测图像中的对象。优选地,该判断单元801可包括被配置用于计算通过该分类器对于子窗口的分类结果的单元801-1,以及被配置用于通过比较分类结果与分类器的阈值来确定对象是否被包含在该子窗口中的单元801-2。优选地,阈值更新单元802可包括被配置用于将已被判断为含有该对象的预定数量的子窗口的分类结果进行排序的单元802-1;和被配置用于从排序的分类结果中选择满足预定条件的值以基于所选择的值来更新分类器的阈值的单元802-2。优选地,收集单元802可包括子窗口去除单元803-1,被配置用于去除图像中的其分类结果比更新后的阈值差的子窗口,从而剩余的子窗口将成为候选子窗口,和子窗口组合单元803-2,被配置用于组合具有相似位置的候选窗口以确定最终对象位置。应指出,如在收集步骤中那样,这样的子窗口去除单元对于收集单元也不是必须的,并且可从收集单元中省去。这样的情况由用于单元803-1的虚线框说明。优选地,该对象检测设备800可进一步包括子窗口选择单元804,被配置用于从图像中选择子窗口,并且子窗口选择单元804可包括大小确定单元804-1,被配置用于按照越来越大或者越来越小的顺序来确定子窗口的大小;标记单元804-2,被配置用于通过从大小确定单元得到的大小来标记所述输入图像中的每个位置是否可能包含所指定的对象;以及子窗口生成单元804-3,被配置用于根据标记信息和所确定的大小来获得所述图像的一部分作为子窗口。应指出,这样的子窗口选择单元对于对象检测设备也不是必须的,并且即使其不包含在对象检测设备中,这样的对象检测设备仍可实现足够改进的技术效果。 这样的情况由用于单元804以及单元804-1、804-2和804-3的虚线框说明。应指出,上述所述的单元可代表可表现为多种形式(诸如固件、硬件、软件或者它们的任意组合)的并且实现前文已经描述的方法中的对应步骤的功能的任何组件。[有利效果]在本发明中,用于对象检测的分类器的阈值参照要被检测的图像本身在该图像的对象检测期间被在线更新,从而更新后的阈值可被更有效地应用于该图像,并且识别精度可被有效地提高。此外,由于在执行图像检测的同时执行分类器的阈值的更新,因此分类器不需要额外地学习其他样本,并且检测处理可进一步加速。[实验结果]为了说明本发明的进步,进行了一些实验来示出根据本发明的方法的性能。●通过教练机检测视频教练机(Gibbon\SDC10452_capWin_458.bmp);视频(Gibbon\SDC10453.avi)方法分类次数速度常规的滑动子窗口搜索方法多于120,000次0.24fps根据本发明的方法小于10,000次3.93fps从上文可见,很明显根据本发明的方法可显著加速图像中的对象检测。进一步在用户注册对象检测(UROD)系统环境中评估本发明的性能。本发明的指定对象检测方法被用于用户给定的指定对象的一次样本(one-shotsample),采样器的级联被创建以自适应地检测用户注册对象;并且用户注册对象将被使用所述分类器的级联和所述对象检测装置从输入视频帧定位。在所述UROD系统中在分类器的级联中存在两个分类器。具有或者不具有所述对象检测设备的UROD系统的 性能已被评估。比较本发明与3/E中的版本(其他方面没有修改)方法查全率速度拒绝率速度旧方法90.83%1.12fps5.09%2.13fps本发明的方法92.35%2.76fps2.1%5.52fps测试结果显示:●本发明的新方法可将计算加速约1.5倍,而精度没有损失●本发明的新方法在UROD中比旧方法更好。[工业应用性]本发明可被用于许多应用。例如,本发明可被用于检测和跟踪图像中的对象,诸如照相机中的笑容检测,观众响应系统或者自动照片注释。利用本发明,这样的应用可被准确和快速地实现。应指出,文中所述的方法和设备可被实现为软件、固件、硬件或它们的任何组合。有些组件可例如被实现为在数字信号处理器或者微处理器上运行的软件。其他组件可例如实现为硬件和/或专用集成电路。另外,可采用多种方式来实行本发明的方法和系统。例如,可通过软件、硬件、固件或它们的任何组合来实行本发明的方法和系统。上文所述的该方法的步骤的顺序仅是说明性的,并且除非另外具体说明,否则本发明的方法的步骤不限于上文具体描述的顺序。此外,在一些实施例中,本发明还可具体化为记录介质中记录的程序,包括用于实施根据本发明的方法的机器可读指令。因此,本发明还涵盖了存储用于实施根据本发明的方法的程序的记录介质。虽然已经参考示例实施例描述了本发明,应当理解,本发明不限于公开的示例实施例。下面的权利要求的范围将被给予最宽泛的解释,以便包含所有这些修改以及等同结构和功能。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1