基于图像的物体检测方法、装置及服务器与流程

文档序号:12272330阅读:246来源:国知局
基于图像的物体检测方法、装置及服务器与流程

本公开涉及图像处理技术领域,尤其涉及一种基于图像的物体检测方法、装置及服务器。



背景技术:

物体检测指的是对图像中的物体进行检测和识别,通过物体检测能够确定图像拍摄的场景,从而为图像分类提供依据,例如,包含办公桌的图像通常被归类为办公室图像。

相关技术中,通过SVM(Support Vector Machine,支持向量机)对图像中的物体进行检测,从而得到图像中的各类物体出现的概率。由于SVM的权重向量的个数较少,赋予SVM的学习能力有限,因而检测精度不高,误检率和漏检率较高。



技术实现要素:

为克服相关技术中存在的问题,本公开提供了一种基于图像的物体检测方法、装置及服务器。

根据本公开实施例的第一方面,提供一种基于图像的物体检测方法,该方法可以包括:

在一实施例中,对图像中的物体进行检测,得到所述图像中包含的各类物体的频次向量;

基于字典学习的方法对所述频次向量进行编码,将得到的编码值作为物体检测的结果。

在一实施例中,所述对图像中的物体进行检测,得到所述图像中包含的各类物体的频次向量,包括:

遍历所述图像,确定包含图像中的物体的多个窗口;

确定各所述多个窗口中出现物体的概率;

基于所述概率对所述多个窗口进行筛除处理,将剩下的窗口确定为目标窗口;

识别所述目标窗口中的物体,确定所述物体的类别;

确定每类物体在所述图像中出现的次数,得到各类物体的频次向量。

在一实施例中,所述遍历所述图像,包括:

通过滑动窗口的方式遍历所述图像。

在一实施例中,所述对所述多个窗口进行筛除处理,包括:

确定各所述多个窗口的概率是否低于设定概率阈值;

将所述多个窗口中概率低于所述设定概率阈值的窗口确定为第一窗口;

去除所述第一窗口。

在一实施例中,所述对所述多个窗口进行筛除处理,包括:

对于所述多个窗口中具有重合的两个窗口,确定所述两个窗口的交集面积和并集面积;

计算所述交集面积和并集面积的比值;

在所述比值大于设定比值阈值时,去除所述两个窗口中概率较低的窗口,保留所述两个窗口中概率较高的窗口;

在所述比值不大于所述设定比值阈值时,保留所述两个窗口。

在一实施例中,所述基于字典学习的方法对所述频次向量进行编码,包括:

确定用于表示至少两类物体在图像中同时出现的关联性的字典值,所述字典值为常量;

基于所述字典值、所述频次向量以及所述编码的编码值确定用于表示编码误差的第一值;

计算使得第一值最小的编码值。

在一实施例中,所述基于字典学习的方法对所述频次向量进行编码,包括:

确定用于表示至少两类物体在图像中同时出现的关联性的字典值;

基于所述字典值、所述频次向量以及所述编码的编码值确定用于表示编码误差的第一值;

设定元参数;

基于所述元参数和所述编码值确定用于表示编码值的稀疏以及用于调节所述编码误差的第二值;

计算使得所述第一值和所述第二值的和最小的编码值。

在一实施例中,所述计算使得所述第一值和所述第二值的和最小的编码值,包括:

通过下式计算使得所述第一值和所述第二值的和最小的编码值:

其中,为所述第一值,λ||xi||1为所述第二值,yi表示对第i个物体进行检测的检测结果,D表示用于表示至少两类物体在图像中同时出现的关联性的字典值,xi表示与各个yi对应的编码值,λ表示元参数。

在一实施例中,所述元参数的取值范围包括10-3-103

根据本公开实施例的第二方面,提供一种基于图像的物体检测装置,包括:

检测模块,被配置为对图像中的物体进行检测,得到所述图像中包含的各类物体的频次向量;

编码模块,被配置为基于字典学习的方法对所述检测模块得到的所述频次向量进行编码,将得到的编码值作为物体检测的结果。

在一实施例中,所述检测模块包括:

遍历子模块,被配置为遍历所述图像,确定包含图像中的物体的多个窗口;

第一确定子模块,被配置为确定各所述多个窗口中出现物体的概率;

处理子模块,被配置为基于所述概率对所述多个窗口进行筛除处理,将剩下的窗口确定为目标窗口;

识别子模块,被配置为识别所述目标窗口中的物体,确定所述物体的类别;

第二确定子模块,被配置为确定每类物体在所述图像中出现的次数,得到各类物体的频次向量。

在一实施例中,所述遍历子模块包括:

第一遍历子模块,被配置为通过滑动窗口的方式遍历所述图像。

在一实施例中,所述处理子模块包括:

第三确定子模块,被配置为确定各所述多个窗口的概率是否低于设定概率阈值;

第四确定子模块,被配置为将所述多个窗口中概率低于所述设定概率阈值的窗口确定为第一窗口;

第一去除子模块,被配置为去除所述第一窗口。

在一实施例中,所述处理子模块包括:

第五确定子模块,被配置为对于所述多个窗口中具有重合的两个窗口,确定所述两个窗口的交集面积和并集面积;

第一计算子模块,被配置为计算所述交集面积和并集面积的比值;

第二去除子模块,被配置为在所述比值大于设定比值阈值时,去除所述两个窗口中概率较低的窗口,保留所述两个窗口中概率较高的窗口;

保留子模块,被配置为在所述比值不大于所述设定比值阈值时,保留所述两个窗口。

在一实施例中,所述编码模块包括:

第六确定子模块,被配置为确定用于表示至少两类物体在图像中同时出现的关联性的字典值,所述字典值为常量;

第七确定子模块,被配置为基于所述字典值、所述频次向量以及所述编码的编码值确定用于表示编码误差的第一值;

第二计算子模块,被配置为计算使得第一值最小的编码值。

在一实施例中,所述编码模块包括:

第八确定子模块,被配置为确定用于表示至少两类物体在图像中同时出现的关联性的字典值;

第九确定子模块,被配置为基于所述字典值、所述频次向量以及所述编码的编码值确定用于表示编码误差的第一值;

设定子模块,被配置为设定元参数;

第十确定子模块,被配置为基于所述元参数和所述编码值确定用于表示编码值的稀疏以及用于调节所述编码误差的第二值;

第三计算子模块,被配置为计算使得所述第一值和所述第二值的和最小的编码值。

在一实施例中,所述第三计算子模块通过下式计算使得所述第一值和所述第二值的和最小的编码值:

其中,为所述第一值,λ||xi||1为所述第二值,yi表示对第i个物体进行检测的检测结果,D表示用于表示至少两类物体在图像中同时出现的关联性的字典值,xi表示与各个yi对应的编码值,λ表示元参数。

在一实施例中,所述元参数的取值范围包括10-3-103

根据本公开实施例的第三方面,提供一种服务器,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:

对图像中的物体进行检测,得到所述图像中包含的各类物体的频次向量;

基于字典学习的方法对所述频次向量进行编码,将得到的编码值作为物体检测的结果。

本公开的实施例提供的技术方案可以包括以下有益效果:

本公开中与相关技术中直接将物体在图像中出现的频率作为检测结果所不同的是,服务器可以通过字典学习的方法,获取图像中各个物体的频次向量,并利用编码对以频次向量所表示的检测结果进行修正,从而降低误检率和漏检率,提高检测准确率和完整性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是本公开根据一示例性实施例示出的一种基于图像的物体检测方法流程图。

图2A是本公开根据一示例性实施例示出的另一种基于图像的物体检测方法流程图。

图2B是本公开根据一示例性实施例示出的一种基于图像的物体检测方法的应用场景示意图。

图2C是本公开根据一示例性实施例示出的另一种基于图像的物体检测方法的应用场景示意图。

图2D是本公开根据一示例性实施例示出的另一种基于图像的物体检测方法的应用场景示意图。

图2E是本公开根据一示例性实施例示出的另一种基于图像的物体检测方法的应用场景示意图。

图3是本公开根据一示例性实施例示出的另一种基于图像的物体检测方法流程图。

图4是本公开根据一示例性实施例示出的一种基于图像的物体检测装置框图。

图5是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图。

图6是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图。

图7是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图。

图8是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图。

图9是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图。

图10是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图。

图11是本公开根据一示例性实施例示出的一种用于基于图像的物体检测装置的一结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

如图1所示,图1是根据一示例性实施例示出的一种基于图像的物体检测方法流程图,该方法可以用于终端中,本公开中的终端可以是任何具有上网功能的智能终端,例如,可以具体为手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)等。其中,终端可以通过无线局域网接入路由器,并通过路由器访问公网上的服务器。该方法可以包括以下步骤:

在步骤101中、对图像中的物体进行检测,得到图像中包含的各类物体的频次向量。

本申请实施例中,图像可以为任意包含物体的图像,例如,在办公室图像中,包含显示器、鼠标、键盘、电脑桌、杯子、椅子、笔筒等多类物体,而且有些物体可能具有多个,例如电脑桌上放置有两个水杯,三支笔。

其中,物体的频次向量指的是物体在图像中出现的次数。

在步骤102中、基于字典学习的方法对频次向量进行编码,将得到的编码值作为物体检测的结果。

本申请实施例中,与相关技术中直接将物体在图像中出现的频率作为检测结果所不同的是,通过字典学习的方法,获取图像中各个物体的频次向量,并利用编码对以频次向量所表示的检测结果进行修正,从而降低误检率和漏检率,提高检测准确率和完整性。

下面以具体实施例来说明本公开实施例提供的技术方案。

如图2A所示,图2A是根据一示例性实施例示出的另一种基于图像的物体检测方法流程图,图2B-2E是根据一示例性实施例示出的另一种基于图像的物体检测方法的应用场景图,在图2B所示的场景中,包括作为终端的智能手机和通过网络与智能手机连接的服务器,该方法可以包括步骤201-208:

在步骤201中、遍历图像,确定包含图像中的物体的多个窗口。

在一实施例中,如图2B所示,服务器接收终端上传的图像,并以设定的区域为单位,通过滑动窗口的方式遍历该图像,以进行物体检测,从而保证图像中的所有物体都能够被检测到,避免漏检。

在步骤202中、通过SVM计算各个窗口中物体出现的概率。

在一实施例中,可以以像素为单位遍历图像,像素的个数可以预先设置,例如,在100*100像素的图像中,以横向和竖向都是10个像素为单位对整个图像进行分割,得到10个区域。对于每个区域,以滑动窗口的方式,如图2C所示,滑动窗口从位置11到位置12,确定多个不同大小的窗口,并通过SVM的方法,计算各类物体在各个窗口出现的概率。

在步骤203中、基于所计算的概率对多个窗口进行筛除处理,将剩下的窗口确定为目标窗口。

在一个实施例中,在每个区域的多个窗口中,有的窗口可能与所包含的物体的大小一致,有的窗口可能与所包含的物体的大小不一致,甚至有的窗口中可能不包含物体。因而可以设置概率阈值,例如将概率大于0.3的窗口确认为包含物体,物体大小与窗口大小的一致度较高的窗口,将概率小于0.3的窗口确认为不包含物体的窗口。因而可以去除不包含物体的窗口。

在一个实施例中,有些窗口的重合度较高,相差较小,为了提高检测效率,可以仅保留重合度较高的窗口中的一个窗口。

在一实施例中,可以采用非极大抑制算法去除多个窗口中重合度高的窗口。

对于面积上有交集的两个窗口,计算其面积交集和面积并集的比,若该比值大于设定阈值,则认为重合度较高,去除两个窗口中概率较小的窗口,仅保留两个窗口中概率较大的窗口;如果该比值小于设定阈值,则认为重合度较低,两个窗口都可以保留。在一实施例中,该设定阈值可以为0.7。通过去重处理,去除重合度较高的窗口,得到目标窗口。如图2D所示的多个窗口重合度较高,经过非极大抑制算法进行去重处理之后,得到的如图2E所示的图中仅保留一个窗口。

在步骤204中,识别目标窗口中的物体,确定物体的类别。

在一实施例中,终端中可以存储各种物体的图片及对应的类别,为了能够精确识别物体,可以存储每类物体的各个角度的图片。那么在对目标窗口中的物体进行识别时,可以将窗口中的物体图像与预先存储的图像进行一一比对,从而确定物体的类别。

在步骤205中、确定每类物体在图像中出现的次数,得到各类物体的频次向量。

在步骤206中、确定用于表示至少两类物体在图像中同时出现的关联性的字典值。

在字典学习方法中,使用字典值来表示至少两类物体在同一图像中同时出现的关联性,例如,办公桌和显示器同时出现在同一图像中的关联性。字典值为常量,可以通过对大量图像样本进行训练学习获得。字典学习方法用于对频次向量进行编码,得到编码值。

在一个实施例中,字典值可以用于表示某类物体的出现次数最多的值。举例而言,图像的检测结果为y=[y1,y2,...,y100],将其分为10等份,并对每一份求取平均值,得到10个平均值,将该10个平均值构成对角矩阵,就得到字典值D。

在步骤207中,基于字典值、频次向量以及编码的编码值确定用于表示编码误差的第一值。

在一实施例中,该第一值可以通过下述式(1)来表示:

假设给定图像集合其中N表示图像集合中的图像数量,假设通过物体检测器例如SVM对第i个图像Ii的检测结果为yi=[yi1,yi2,...,yiM],其中yi1表示第1类物体在第i个图像中出现的频次向量,yi2表示第2类物体在第i个图像中出现的频次向量,共有M类物体,以此类推,那么图像集合的检测结果可以表示为Y=[y1,...,yN];xi表示与各个yi对应的编码值;D表示字典值,用于表示至少两类物体在图像中同时出现的关联性。

在步骤208中,确定使得第一值最小的编码值。

在式(1)中,yi表示通过SVM对物体进行检测的检测结果;Dxi用于对检测结果进行修正和微调,因而yi和Dxi之间的误差不能太大。因而在一实施例中,可以通过计算第一值的最小值来计算编码值。

至此,本公开实施例提供的上述方法,通过字典值来修正基于SVM的物体检测结果的正确性,能够有效降低误检率和错检率。

如图3所示,图3是根据一示例性实施例示出的另一种基于图像的物体检测方法流程图,该方法在上述步骤201-208的基础上,在步骤207之后,还可以包括步骤301-303:

在步骤301中,设定元参数。

其中,元参数的设置范围可以为10-3~103

在步骤302中,基于元参数和编码值确定用于表示编码值的稀疏以及用于调节编码误差的第二值。

在一实施例中,第二值可以通过下述式(2)来表示:

λ||xi||1 (2)

在一实施例中,第二值用于保证编码值的稀疏性,并用于调节编码误差。举例而言,在λ=0时,xi的值绝大多数不为0,那么xi并不稀疏,这种情况下的修正效果就并不好,因而需要λ取较为适中的值,以保证xi的稀疏性。

在步骤303中,计算使得第一值和第二值的和最小的编码值。

在一实施例中,计算使得下式(3)成立的编码值:

至此,本公开实施例提供的上述方法,采用字典学习方法对物体频次向量进行编码,利用了物体频次向量低秩稀疏的特性,使得编码结果具有错误恢复功能,并基于元参数调整编码值的稀疏性,降低编码误差,从而降低了误检率和漏检率,提高物体检测的准确性。

与前述基于图像的物体检测方法实施例相对应,本公开还提供了基于图像的物体检测装置及其所应用的服务器的实施例。

如图4所示,图4是本公开根据一示例性实施例示出的一种基于图像的物体检测装置框图,该装置可以应用在服务器中,并用于执行图1所示实施例的方法,所述装置可以包括:检测模块410和编码模块420。

检测模块410,被配置为对图像中的物体进行检测,得到所述图像中包含的各类物体的频次向量;

编码模块420,被配置为基于字典学习的方法对所述检测模块得到的所述频次向量进行编码,将得到的编码值作为物体检测的结果。

如图5所示,图5是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图,该实施例在前述图4所示实施例的基础上,检测模块410可以包括:遍历子模块411、第一确定子模块412、处理子模块413、识别子模块414和第二确定子模块415。

遍历子模块411,被配置为遍历所述图像,确定包含图像中的物体的多个窗口;

第一确定子模块412,被配置为确定各所述多个窗口中出现物体的概率;

处理子模块413,被配置为基于所述概率对所述多个窗口进行筛除处理,将剩下的窗口确定为目标窗口;

识别子模块414,被配置为识别所述目标窗口中的物体,确定所述物体的类别;

第二确定子模块415,被配置为确定每类物体在所述图像中出现的次数,得到各类物体的频次向量。

如图6所示,图6是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图,该实施例在前述图5所示实施例的基础上,遍历子模块411可以包括:第一遍历子模块416。

第一遍历子模块416,被配置为通过滑动窗口的方式遍历所述图像。

如图7所示,图7是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图,该实施例在前述图5所示实施例的基础上,处理子模块413可以包括:第三确定子模块417、第四确定子模块418和第一去除子模块419。

第三确定子模块417,被配置为确定各所述多个窗口的概率是否低于设定概率阈值;

第四确定子模块418,被配置为将所述多个窗口中概率低于所述设定概率阈值的窗口确定为第一窗口;

第一去除子模块419,被配置为去除所述第一窗口。

如图8所示,图8是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图,该实施例在前述图5所示实施例的基础上,处理子模块413可以包括:第五确定子模块4110、第一计算子模块4111、第二去除子模块4112和保留子模块4113。

第五确定子模块4110,被配置为对于所述多个窗口中具有重合的两个窗口,确定所述两个窗口的交集面积和并集面积;

第一计算子模块4111,被配置为计算所述交集面积和并集面积的比值;

第二去除子模块4112,被配置为在所述比值大于设定比值阈值时,去除所述两个窗口中概率较低的窗口,保留所述两个窗口中概率较高的窗口;

保留子模块4113,被配置为在所述比值不大于所述设定比值阈值时,保留所述两个窗口。

如图9所示,图9是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图,该实施例在前述图5所示实施例的基础上,编码模块420可以包括:第六确定子模块421、第七确定子模块422和第二计算子模块423。

第六确定子模块421,被配置为确定用于表示至少两类物体在图像中同时出现的关联性的字典值,所述字典值为常量;

第七确定子模块422,被配置为基于所述字典值、所述频次向量以及所述编码的编码值确定用于表示编码误差的第一值;

第二计算子模块423,被配置为计算使得第一值最小的编码值。

如图10所示,图10是本公开根据一示例性实施例示出的另一种基于图像的物体检测装置框图,该实施例在前述图5所示实施例的基础上,编码模块420可以包括:第八确定子模块424、第九确定子模块425、设定子模块426、第十确定子模块427和第三计算子模块428。

第八确定子模块424,被配置为确定用于表示至少两类物体在图像中同时出现的关联性的字典值;

第九确定子模块425,被配置为基于所述字典值、所述频次向量以及所述编码的编码值确定用于表示编码误差的第一值;

设定子模块426,被配置为设定元参数;

第十确定子模块427,被配置为基于所述元参数和所述编码值确定用于表示编码值的稀疏以及用于调节所述编码误差的第二值;

第三计算子模块428,被配置为计算使得第一值和第二值的和最小的编码值。

其中,元参数的取值范围包括10-3-103

其中,第三计算子模块428通过下式计算使得所述第一值和所述第二值的和最小的编码值:

其中,为所述第一值,λ||xi||1为所述第二值,yi表示对第i个物体进行检测的检测结果,D表示用于表示至少两类物体在图像中同时出现的关联性的字典值,xi表示与各个yi对应的编码值,λ表示元参数。上述图4至图10示出的基于图像的物体检测装置实施例可以应用在服务器中。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

如图11所示,图11是根据一示例性实施例示出的一种用于基于图像的物体检测装置1100的一结构示意图。例如,装置1100可以被提供为一服务器。参照图11,装置1100包括处理组件1122,其进一步包括一个或多个处理器,以及由存储器1132所代表的存储器资源,用于存储可由处理部件1122的执行的指令,例如应用程序。存储器1132中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1122被配置为执行指令,以执行上述基于图像的物体检测方法。

其中,处理组件1122中的其中一个处理器可以被配置为:

对图像中的物体进行检测,得到所述图像中包含的各类物体的频次向量;

基于字典学习的方法对所述频次向量进行编码,将得到的编码值作为物体检测的结果。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。

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