一种基于图像的目标检测方法及装置与流程

文档序号:14257092阅读:145来源:国知局

本申请涉及图像处理技术领域,更具体的说是涉及一种基于图像的目标检测方法及装置。



背景技术:

近年来,基于图像的车辆检测成为目标检测的一个重要热点。在智能视频监控、安全辅助驾驶、人工智能以及智能交通中都有重要的应用。

基于机器学习的车辆检测方法是当前的主流方法。其中,基于卷积神经网络的深度学习模型在大规模图像分类任务上获得性能提高。而且,在车辆检测问题上也取得了较好的效果。但是,神经网络模型的参数很多,因此模型非常复杂,而且,训练模型时需要大量的训练数据,训练模型的过程复杂。导致整个检测过程复杂、耗时长等。



技术实现要素:

有鉴于此,本申请提供一种基于图像的目标检测方法及装置,以解决现有的目标检测方法检测过程复杂、耗时长的技术问题。其技术方案如下:

第一方面,本申请提供了一种基于图像的目标检测方法,包括:

根据待检测图像所包含的目标物体的轮廓信息确定目标候选区域;

利用预先训练得到的第一随机森林和第一完全随机树森林,从所述目标候选区域中提取特征向量;

利用预先训练得到的级联森林对所述特征向量进行分类,识别出所述待检测图像中包含的目标物体,所述级联森林的每一级联层包括第一预设数量的第二随机森林和第一预设数量的第二完全随机树森林。

可选地,所述根据待检测图像所包含的目标物体的轮廓信息确定目标候选区域,包括:

利用边缘检测算法得到所述待检测图像中的目标物体的边缘图像;

将所述边缘图像中连通的第二预设数量个边缘像素点划分为一组,得到多个边缘分组;

计算每两个所述边缘分组之间的相似度;

根据所述相似度确定包含所述目标物体轮廓的目标候选区域。

可选地,所述利用所述第一随机森林和所述第一完全随机树森林,从所述目标候选区域中提取特征向量,包括:

利用预设大小的滑动窗口扫描所述目标候选区域得到扫描特征;

将所述扫描特征输入至所述预设大小的滑动窗口对应的第一完全随机树森林,得到第一类特征向量;

将所述扫描特征输入至所述预设大小的滑动窗口对应的第一随机森林,得到第二类特征向量;

将所述第一类特征向量和所述第二类特征向量进行级联,得到第三类特征向量;

将不同大小的滑动窗口对应的所述第三类特征向量进行级联,得到所述目标候选区域的特征向量。

可选地,所述方法还包括:

利用预设大小的滑动窗口从训练样本中提取样例;

利用所述样例训练得到第一随机森林,所述第一随机森林包括第四预设数量棵决策树;

利用所述样例训练得到第一完全随机树森林,所述第一完全随机树森林包括第四预设数量棵决策树。

可选地,所述方法还包括:

将训练样本划分为生长子集和评估子集,所述生长子集与所述评估子集所包含的训练样本的数量比例满足预设比例;

利用所述生长子集逐级训练级联森林的级联层,每一级所述级联层包括两个完全随机树森林和两个随机森林,且每个所述完全随机树森林包括第五预设数量棵决策树,每个所述随机森林包括第五预设数量棵决策树;

当所述级联森林的级联层数增长后,利用所述评估子集验证当前级联森林的准确率是否提升;

如果所述准确率没有提升,则所述级联森林的级联层数停止增加,得到最终的级联森林模型。

第二方面,本申请还提供了一种基于图像的目标检测装置,包括:

确定单元,用于根据待检测图像所包含的目标物体的轮廓信息确定目标候选区域;

特征提取单元,用于利用预先训练得到的第一随机森林和第一完全随机树森林,从所述目标候选区域中提取特征向量;

识别单元,用于利用预先训练得到的级联森林对所述特征向量进行分类,识别出所述待检测图像中包含的目标物体,所述级联森林的每一级联层包括第一预设数量的第二随机森林和第一预设数量的第二完全随机树森林。

可选地,所述确定单元,包括:

边缘提取子单元,用于利用边缘检测算法得到所述待检测图像中的目标物体的边缘图像;

分组子单元,用于将所述边缘图像中连通的第二预设数量个边缘像素点划分为一组,得到多个边缘分组;

第一计算子单元,用于计算每两个所述边缘分组之间的相似度;

第一确定子单元,用于根据所述相似度确定包含所述目标物体轮廓的目标候选区域。

可选地,所述特征提取单元,包括:

扫描子单元,用于利用预设大小的滑动窗口扫描所述目标候选区域得到扫描特征;

第一提取子单元,用于将所述扫描特征输入至所述预设大小的滑动窗口对应的第一完全随机树森林,得到第一类特征向量;

第二提取子单元,用于将所述扫描特征输入至所述预设大小的滑动窗口对应的第一随机森林,得到第二类特征向量;

第一级联子单元,用于将所述第一类特征向量和所述第二类特征向量进行级联,得到第三类特征向量;

第二级联子单元,用于将不同大小的滑动窗口对应的所述第三类特征向量进行级联,得到所述目标候选区域的特征向量。

可选地,所述装置还包括:

第一提取单元,用于利用预设大小的滑动窗口从训练样本中提取样例;

第一训练单元,用于利用所述样例训练得到第一随机森林,所述第一随机森林包括第四预设数量棵决策树;

第二训练单元,用于利用所述样例训练得到第一完全随机树森林,所述第一完全随机树森林包括第四预设数量棵决策树。

可选地,所述装置还包括:

样本集划分单元,用于将训练样本划分为生长子集和评估子集,所述生长子集与所述评估子集所包含的训练样本的数量比例满足预设比例;

第三训练单元,用于利用所述生长子集逐级训练级联森林的级联层,每一级所述级联层包括两个完全随机树森林和两个随机森林,且每个所述完全随机树森林包括第五预设数量棵决策树,每个所述随机森林包括第五预设数量棵决策树;

验证单元,用于当所述级联森林的级联层数增长后,利用所述评估子集验证当前级联森林的准确率是否提升,如果所述准确率没有提升,则所述级联森林的级联层数停止增加,得到最终的级联森林模型。

本申请提供的基于图像的目标检测方法,在获得待检测图像之后,利用图像中目标物体的边缘信息,从待检测图像中确定出目标候选区域。然后,利用多粒度扫描技术从目标候选区域中提取特征向量。提取得到的特征向量输入到预先训练好的级联森林进行识别,确定目标候选区域中是否存在目标物体。首先,该方法利用在提取特征向量之前确定出目标候选区域,该目标候选区域的范围小于整个待检测图像的范围,因此,从目标候选区域中提取的特征向量数量,远远小于从整个待检测图像中提取的特征向量数量,从而提高了检测速度。其次,利用多粒度扫描能够更好地得到图像像素点之间的空间信息,提高了检测结果的准确率。与神经网络模型相比,级联森林模型中的参数数量较少,需要的训练数据较少,而且,检测准确率高。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1是本申请实施例一种基于图像的目标检测方法的流程图;

图2是本申请实施例一种确定目标候选区域过程的流程图;

图3是本申请实施例一种提取特征向量的过程的流程图;

图4是本申请实施例另一种基于图像的目标检测方法的流程图;

图5是本申请实施例一种基于图像的目标检测装置的框图;

图6是本申请实施例一种确定单元的框图;

图7是本申请实施例一种特征提取单元的框图;

图8是本申请实施例另一种基于图像的目标检测装置的框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请提供的基于图像的目标检测方法,利用图像中目标物体的边缘信息,从待检测图像中确定出目标候选区域。然后,利用多粒度扫描技术和级联森林,完成对待检测图像中的目标物体的识别。该方法的级联森林模型简单,不需要大量的训练数据;而且,准确率高、鲁棒性高。引入目标候选区域,极大地提升了检测速度。

请参见图1,示出了本申请实施例一种基于图像的目标检测方法的流程图,该方法应用于服务器或终端中,本实施例以检测车辆为例进行说明,在其它实施例中,该方法可以用于检测其它轮廓规则的其它物体。

如图1所示,该方法可以包括以下步骤:

s110,根据待检测图像所包含的目标物体的轮廓信息确定目标候选区域。

本实施例中,确定目标候选区域时,先利用检测出待检测图像中的目标物体的边缘信息,再利用边缘信息确定出包含目标物体轮廓的目标候选区域。

如图2所示,确定目标候选区域的过程可以包括以下步骤:

s111,利用边缘检测算法得到所述待检测图像中的目标物体的边缘图像。

利用结构化边缘检测算法获得待检测图像包含的边缘图像,然后,采用非极大值抑制算法进一步处理所述边缘图像,得到一个相对稀疏的边缘图像。

其中,结构化边缘算法的原理是对一幅图像微分得到梯度图像,边缘正好对应梯度图像中的山脊线,边缘检测就是寻找山脊线的过程。

非极大值抑制算法的本质是搜索局部极大值,抑制非极大值元素。物体检测中应用该算法的主要目的是消除冗余的元素,找到最佳的边缘图像。

s112,将边缘图像中连通的第二预设数量个边缘像素点划分为一组,得到多个边缘分组。

得到边缘图像后,搜索预设数量连通的边缘,其中,第二预设数量可以根据算法需求确定。

例如,本实施例可以利用贪心算法搜索8连通的边缘,具体的搜索过程如下:对于一个边缘点(例如,a点)在它的8领域内找到方向角相差最小的边缘点(例如,b点),然后,获得a点与b点之间的最小角度差值。然后,再利用同样的方法,在b点的8领域上搜索除a点之外的最小角度差值对应的边缘点(例如,c点),获得b点和c点之间的最小方向角差值。并将b点和c点的最小方向角差值与a点和b点的最小方向角差值进行累加。依次类推,直到最小方向角差值的累加和大于π/2停止搜索,至此得到一个边缘分组。

s113,计算每两个边缘分组之间的相似度。

得到多个边缘分组后,计算每两个边缘分组之间的相似度,其中计算相似度的公式如下:

a(si,sj)=|cos(θi-θij)cos(θj-θij)|(公式1)

其中,公式1中,a(si,sj)为si和sj之间的相似度,si和sj为两个边缘分组,其平均位置分别为xi和xj,平均方向角分别为θi和θj,θij是xi和xj之间的角度,γ为调整相似度敏感度的参数,通常设置为2。

s114,根据相似度确定包含目标物体轮廓的目标候选区域。

定义ωb(si)∈[0,1],当si完全在区域b内时,ωb(si)=1;当si不在区域b内时,ωb(si)=0;ωb(si)计算公式如下:

其中,|t|是长度,例如,一个边缘分组则该长度值为1,两个边缘分则,则该长度值为2。起点为t1∈sb,终点为t|t|∈si的有序边缘分组路径。

根据ωb按照公式3计算得到每个候选区域的得分,其中,公式3如下:

其中,公式3中,mi为si中所有像素值大小之和,bω和bh分别为候选区域的宽和高,κ为补偿系数。

在实际应用中,为了提高计算效率,公式3所示的得分函数可以采用公式4所示的计算方式:

为中心在b且在b内的候选区域对应的得分,原理为将公式3中si具有且ωb(si)<1(即,si不在区域b内),(1-ωb(si))mi剔除掉。因此,进一步提高了计算效率。

按照得分从高到低进行排序,选取前预设数量个候选区域作为目标候选区域。

s120,利用预先训练得到的第一随机森林和第一完全随机树森林,从目标候选区域中提取特征向量。

为了更好地得到图像像素点之间的空间信息,采用滑动窗口的方法对图像的目标候选区域进行多粒度扫描(即,采用不同大小的滑动窗口进行扫描),从而提高了检测准确率。

利用预设大小的滑动窗口按照预设步长扫描目标候选区域,得到扫描特征,然后将这些扫描特征输入到预先训练得到的第一随机森林和第一完全随机树森林进行判断,输出要选择的候选特征向量。然后,将第一随机树森林输出的候选特征向量和第一完全随机树森林输出的候选特征向量进行级联;再将不同滑动窗口对应的级联后的特征向量进行再次级联,得到最终要输入至级联森林的特征向量。

随机森林顾名思义,是用随机的方式建立一个森林,森林里面有很多的决策树组成。随机森林的任意两棵棵决策树之间没有关联。

其中,完全随机树森林和随机森林是两种不同类型的森林,构成完全随机树森林的第一类决策树随机选取1个候选特征作为训练特征;构成随机森林的第二类决策树随机选取个候选特征作为训练特征,其中,d为输入的候选特征的数量。利用这两种类型的随机森林能够提高提取特征向量的准确率。

请参见图3,示出了本申请实施例一种提取特征向量的过程的流程图,该流程图可以包括:

s121,利用预设大小的滑动窗口扫描目标候选区域,得到扫描特征。

滑动窗口的大小需要根据待检测图像的大小确定,而且,滑动窗口的大小与待检测图像的大小正相关;即,待检测图像越大,滑动窗口也越大;待检测图像越小,则滑动窗口也越小。例如,根据待检测图像确定三个滑动窗口大小分别40×40,80×80和160×160。

s122,将该扫描特征输入到该滑动窗口对应的第一完全随机树森林,得到第一类特征向量。

每种滑动窗口对应一种第一完全随机树森林和一种第一随机森林。例如,40×40的滑动窗口对应一个第一完全随机树森林和一个第一随机森林;80×80的滑动窗口对应一个第一完全随机树森林和一个第一随机森林。

扫描特征输入至第一完全随机树森林进行判断后,输出第一类特征向量。

s123,将该扫描特征输入到该滑动窗口对应的第一随机森林,得到第二类特征向量。

将上述扫描特征输入到该滑动窗口对应的第一随机森林进行判断后,输出第二类特征向量。

s124,将第一类特征向量和第二类特征向量进行级联,得到第三类特征向量。

将同一滑动窗口对应的第一类特征向量和第二类特征向量进行级联,得到第三类特征向量。

s125,将不同大小的滑动窗口对应的第三类特征向量进行级联,得到目标候选区域的特征向量。

最后,将不同大小的滑动窗口对应的第三类特征向量进行级联,得到最终的特征向量。

例如,将40×40的滑动窗口对应的第一类特征向量和第二类特征向量进行级联,得到40×40的滑动窗口对应的第三类特征向量;同理,得到80×80滑动窗口对应的第三类特征向量,以及160×160的滑动窗口对应的第三类特征向量;最后,将这三个滑动窗口对应的第三类特征向量进行级联,得到最终的特征向量。

s130,利用预先训练得到的级联森林对所述特征向量进行分类,识别出所述待检测图像中包含的目标物体。

为了更好地挖掘出图像数据中的深层信息,采用一种基于决策树的多层级联结构,构成级联森林,特征向量通过级联森林的不断挖掘信息,得到最终的分类结果。

所述级联森林的每一级联层包括第一预设数量的第二随机森林和第一预设数量的第二完全随机树森林。其中,理论上第一数量越大,准确率越高,但是,森林的数量越多计算量也就越大,因此,通常选取一个能够兼顾准确率和计算量的平衡点对应的数量,例如,1200棵。

第二完全随机树森林与上述的第一完全随机树森林的类型相同,但是所包含的决策树的数量不同;同理,第二随机森林与第一随机森林的决策树数量也不同。

级联森林也需要根据训练样本训练得到,其中,级联森林的训练过程如下:

将训练样本划分成生长子集和评估子集,利用生长子集训练得到一个级联层结构,在生长一个级联层之后,利用评估子集验证当前得到的级联森林的准确率;如果生长一个级联层之后,与生长该级联层之前相比,准确率没有明显提升,则停止生长,从而得到最终的级联森林模型。

本实施例提供的基于图像的目标检测方法,在获得待检测图像之后,利用图像中目标物体的边缘信息,从待检测图像中确定出目标候选区域。然后,利用多粒度扫描技术从目标候选区域中提取特征向量。提取得到的特征向量输入到预先训练好的级联森林进行识别,确定目标候选区域中是否存在目标物体。首先,该方法利用在提取特征向量之前确定出目标候选区域,该目标候选区域的范围小于整个待检测图像的范围,因此,从目标候选区域中提取的特征向量数量,远远小于从整个待检测图像中提取的特征向量数量,从而提高了检测速度。其次,利用多粒度扫描能够更好地得到图像像素点之间的空间信息,提高了检测结果的准确率。与神经网络模型相比,级联森林模型中的参数数量较少,需要的训练数据较少,而且,检测准确率高。

请参见图4,示出了本申请实施例另一种基于图像的目标检测方法的流程图。本实施例将着重介绍训练多粒度扫描的第一完全随机树森林和第一随机森林,以及训练级联森林的过程。训练过程只需要进行一次,训练完成后,可以直接使用训练得到的模型。

如图4所示,该方法在图1所示实施例的基础上还包括:

s210,利用预设大小的滑动窗口从训练样本中提取样例。

预设大小可以预先根据样本图像的大小确定。例如,利用40×40的滑动窗口从训练样本中提取样例,从正样本中提取的是正样例,从负样本中提取的是负样例。其中,正样本是包含目标物体的样本图像,负样本是不包含目标物体的样本图像。

s220,利用所述样例分别训练得到第一随机森林和第一完全随机树森林。

用于特征提取的第一完全随机森林和第一随机森林只进行特征的粗略筛选,因此,每个层级包含的森林数量比较少(例如,每个层级包括一个第一完全随机树森林和一个第一随机森林),而且每个森林里包含的决策树的数量也比较少(例如,每个森林只包括40棵决策树)。

提取到样例后,利用样例分别训练得到第一完全随机树森林和第一随机森林。例如,第一完全随机树森林可以包括40棵第一类决策树,第一随机森林可以包括40棵第二类决策树。

训练得到第一随机森林和第一完全随机树森林后,可以在s120中直接利用这两个森林提取目标候选区域中的特征向量,然后将两个森林提取到的特征向量进行级联。

如果存在不同大小的滑动窗口对应的第一随机森林和第一完全随机树森林,则需要将各个不同大小的滑动窗口对应的特征向量进行级联,得到最终的特征向量。

s230,将训练样本划分为生长子集和评估子集;其中,所述生长子集与所述评估子集所包含的训练样本的数量比例满足预设比例。

利用训练样本训练级联森林,首先将训练样本集中的一部分作为生长子集,剩余部分作为评估子集。例如,生长子集和评估子集之间的比例可以为3:1,即,样本集中75%的样本作为生长子集,剩余25%的样本作为评估子集。其中,生长子集用来训练级联森林,评估子集用来检验当前训练得到的级联森林的准确率。

s240,利用生长子集逐级训练级联森林的级联层。

每一级所述级联层包括第六预设数量个完全随机树森林和第六数量个随机森林,且每个所述完全随机树森林和每个随机森林均包括第五预设数量棵决策树。

用于特征识别分类的级联森林需要进行准确的对特征向量进行判断和分类,因此,此类级联森林的每个层级所包含的随机森林的数量越多,识别结果的准确率越高。但是,森林的数量越多,计算量越大,计算速度越慢,选取准确率和计算速度的平衡点对应的森林数量。例如,2个,即每个级联层包括两个第二完全随机树森林和第二随机森林。同理,每个森林所包含的决策树也根据准确率和计算速度的平衡点来确定。

例如,每一个级联层可以包括两个第二完全随机树森林和两个第二随机森林,其中,第二完全随机树森林和第二随机森林均包括1200棵决策树。

s250,当级联森林的级联层数增长后,利用评估子集验证当前级联森林的准确率是否提升;如果没有提升,则执行s260;如果有提升,则返回执行s240。

在训练过程中,每增加一个级联层,都需要利用评估子集验证当前训练得到的级联森林的验证准确率是否比增加当前级联层之前的级联森林的准确率有明显提高。

其中,评估子集中样本类型已经确定,包括目标物体的样本是正样本,不包括目标物体的样本是负样本。分别将评估子集中的样本的特征向量输入到当前训练得到的级联森林中,在该级联森林的输出端得到这些样本的分类结果;再将该分类结果分别与样本的已知结果进行比较,得到该级联森林的检测准确率。

最后,将当前级联森林对应的准确率与比当前级联森林少一个级联层的级联森林的准确率进行比较,判断生长了一个级联层之后,级联森林的准确率是否有明显提升。

s260,级联森林的级联层数停止增加,得到最终的级联森林模型。

如果生长了一个级联层之后,级联森林的准确率并没有明显提升,则停止生长,即,停止增加级联森林的级联层数。

本实施例提供的基于图像的目标检测方法,在获得待检测图像之后,利用图像中目标物体的边缘信息,从待检测图像中确定出目标候选区域。然后,利用多粒度扫描技术从目标候选区域中提取特征向量。提取得到的特征向量输入到预先训练好的级联森林进行识别,确定目标候选区域中是否存在目标物体。首先,该方法利用在提取特征向量之前确定出目标候选区域,该目标候选区域的范围小于整个待检测图像的范围,因此,从目标候选区域中提取的特征向量数量,远远小于从整个待检测图像中提取的特征向量数量,从而提高了检测速度。其次,利用多粒度扫描能够更好地得到图像像素点之间的空间信息,提高了检测结果的准确率。与神经网络模型相比,级联森林模型中的参数数量较少,需要的训练数据较少,而且,检测准确率高。

对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

相应于上述的基于图像的目标检测方法实施例,本申请还提供了基于图像的目标检测装置实施例。

请参见图5,示出了本申请实施例一种基于图像的目标检测装置的框图,该装置可以应用于服务器或终端中,用于从图像中识别出目标物体。如图5所示,该装置包括:确定单元110、特征提取单元120和识别单元130。

确定单元110,用于根据待检测图像所包含的目标物体的轮廓信息确定目标候选区域。

本实施例中,确定单元在确定目标候选区域时,先利用检测出待检测图像中的目标物体的边缘信息,再利用边缘信息确定出包含目标物体轮廓的目标候选区域。

如图6所示,该确定单元可以包括:边缘提取子单元111、分组子单元112、第一计算子单元113和第一确定子单元114。

边缘提取子单元111,用于利用边缘检测算法得到该待检测图像中的目标物体的边缘图像。

利用结构化边缘检测算法获得待检测图像包含的边缘图像,然后,采用非极大值抑制算法进一步处理所述边缘图像,得到一个相对稀疏的边缘图像。

分组子单元112,用于将边缘图像中连通的第二预设数量个边缘像素点划分为一组,得到多个边缘分组。

例如,本实施例可以利用贪心算法搜索8连通的边缘,具体的搜索过程如下:对于一个边缘点(例如,a点)在它的8领域内找到方向角相差最小的边缘点(例如,b点),然后,获得a点与b点之间的最小角度差值。然后,再利用同样的方法,在b点的8领域上搜索除a点之外的最小角度差值对应的边缘点(例如,c点),获得b点和c点之间的最小方向角差值。并将b点和c点的最小方向角差值与a点和b点的最小方向角差值进行累加。依次类推,直到最小方向角差值的累加和大于π/2停止搜索,至此得到一个边缘分组。

第一计算子单元113,用于计算每两个边缘分组之间的相似度。

可以利用公式1计算两个边缘分组的相似度,此处不再赘述。

第一确定子单元114,用于根据该相似度确定包含目标物体轮廓的目标候选区域。

利用上述的公式2-公式4计算得到每个候选区域的得分,得分越高越可能作为目标候选区域。

特征提取单元120,用于利用预先训练得到的第一随机森林和第一完全随机树森林,从目标候选区域中提取特征向量。

为了更好地得到图像像素点之间的空间信息,采用滑动窗口的方法对图像的目标候选区域进行多粒度扫描(即,采用不同大小的滑动窗口进行扫描),从而提高了检测准确率。

如图7所示,特征提取单元120可以包括:扫描子单元121、第一提取子单元122、第二提取子单元123、第一级联子单元124和第二级联子单元125。

扫描子单元121,用于利用预设大小的滑动窗口扫描目标候选区域得到扫描特征。

滑动窗口的大小与待检测图像的大小正相关;即,待检测图像越大,滑动窗口也越大;待检测图像越小,则滑动窗口也越小。

第一提取子单元122,用于将扫描特征输入至预设大小的滑动窗口对应的第一完全随机树森林,得到第一类特征向量。

例如,滑动窗口是80×80,则将利用该滑动窗口扫描得到的扫描特征输入到第一完全随机树森林得到第一类特征向量。

第二提取子单元123,用于将扫描特征输入至预设大小的滑动窗口对应的第一随机森林,得到第二类特征向量。

例如,将80×80的滑动窗口获得的扫描特征输入至第一随机森林得到第二类特征向量。

随机森林是用随机的方式建立一个森林,森林里面有很多的决策树组成。随机森林的任意两棵棵决策树之间没有关联。

其中,完全随机树森林和随机森林是两种不同类型的森林,构成完全随机树森林的第一类决策树随机选取1个候选特征作为训练特征;构成随机森林的第二类决策树随机选取个候选特征作为训练特征,其中,d为输入的候选特征的数量。利用这两种类型的随机森林能够提高提取特征向量的准确率。

第一级联子单元124,用于将所述第一类特征向量和所述第二类特征向量进行级联,得到第三类特征向量。

然后,将80×80的滑动窗口对应的第一类特征向量和第二类特征向量进行级联得到第三类特征向量。同理,可以得到其它大小的滑动窗口对应的第三类特征向量。

第二级联子单元125,用于将不同大小的滑动窗口对应的所述第三类特征向量进行级联,得到所述目标候选区域的特征向量。

例如,将40×40、80×80及160×160这三种大小的滑动窗口对应的第三类特征向量进行级联,作为目标候选区域的特征向量。

识别单元130,用于利用预先训练得到的级联森林对该特征向量进行分类,识别出待检测图像中包含的目标物体。

为了更好地挖掘出图像数据中的深层信息,采用一种基于决策树的多层级联结构,构成级联森林,特征向量通过级联森林的不断挖掘信息,得到最终的分类结果。

所述级联森林的每一级联层包括第一预设数量的第二随机森林和第一预设数量的第二完全随机树森林。其中,理论上第一数量越大,准确率越高,但是,森林的数量越多计算量也就越大,因此,通常选取一个能够兼顾准确率和计算量的平衡点对应的数量,例如,1200棵。

第二完全随机树森林与上述的第一完全随机树森林的类型相同,但是所包含的决策树的数量不同;同理,第二随机森林与第一随机森林的决策树数量也不同。

本实施例提供的基于图像的目标检测装置,在获得待检测图像之后,利用图像中目标物体的边缘信息,从待检测图像中确定出目标候选区域。然后,利用多粒度扫描技术从目标候选区域中提取特征向量。提取得到的特征向量输入到预先训练好的级联森林进行识别,确定目标候选区域中是否存在目标物体。首先,该方法利用在提取特征向量之前确定出目标候选区域,该目标候选区域的范围小于整个待检测图像的范围,因此,从目标候选区域中提取的特征向量数量,远远小于从整个待检测图像中提取的特征向量数量,从而提高了检测速度。其次,利用多粒度扫描能够更好地得到图像像素点之间的空间信息,提高了检测结果的准确率。与神经网络模型相比,级联森林模型中的参数数量较少,需要的训练数据较少,而且,检测准确率高。

请参见图8,示出了本申请实施例另一种基于图像的目标检测装置的框图。本实施例将着重介绍训练多粒度扫描的第一完全随机树森林和第一随机森林,以及训练级联森林的过程。

如图8所示,该装置在图5所示实施例的基础上还包括:

第一提取单元210,用于利用预设大小的滑动窗口从训练样本中提取样例。

预设大小可以预先根据样本图像的大小确定。然后,利用滑动窗口从训练样本中提取样例,从正样本中提取的是正样例,从负样本中提取的是负样例。其中,正样本是包含目标物体的样本图像,负样本是不包含目标物体的样本图像。

第一训练单元220,用于利用样例训练得到第一随机森林。

用于特征提取的第一完全随机森林和第一随机森林只进行特征的粗略筛选,因此,每个层级包含的森林数量比较少(例如,每个层级包括一个第一完全随机树森林和一个第一随机森林),而且每个森林里包含的决策树的数量也比较少(例如,每个森林只包括40棵决策树)。

提取到样例后,利用样例分别训练得到第一随机森林。例如,第一随机森林可以包括40棵第二类决策树。

第二训练单元230,用于利用所述样例训练得到第一完全随机树森林。

第一完全随机树森林包括第四预设数量棵决策树。

提取到样例后,利用样例分别训练得到第一完全随机树森林,其中,第一完全随机树森林可以包括40棵第一类决策树。

第一训练单元和第二训练单元训练得到的两个森林,用来提取目标候选区域中的特征向量。

样本集划分单元240,用于将训练样本划分为生长子集和评估子集。

生长子集与评估子集所包含的训练样本的数量比例满足预设比例。

将训练样本集中的一部分作为生长子集,剩余部分作为评估子集。例如,生长子集和评估子集之间的比例可以为3:1

第三训练单元250,用于利用生长子集逐级训练级联森林的级联层。

每一级所述级联层包括第六预设数量个完全随机树森林和第六预设数量个随机森林,且每个完全随机树森林包括第五预设数量棵决策树,每个随机森林包括第五预设数量棵决策树。

例如,每一个级联层可以包括两个第二完全随机树森林和两个第二随机森林,其中,第二完全随机树森林和第二随机森林均包括1200棵决策树。

验证单元260,用于当所述级联森林的级联层数增长后,利用所述评估子集验证当前级联森林的准确率是否提升,如果所述准确率没有提升,则所述级联森林的级联层数停止增加,得到最终的级联森林模型。

在训练过程中,每增加一个级联层,都需要利用评估子集验证当前训练得到的级联森林的验证准确率是否比增加当前级联层之前的级联森林的准确率有明显提高。

其中,评估子集中样本类型已经确定,包括目标物体的样本是正样本,不包括目标物体的样本是负样本。分别将评估子集中的样本的特征向量输入到当前训练得到的级联森林中,在该级联森林的输出端得到这些样本的分类结果;再将该分类结果分别与样本的已知结果进行比较,得到该级联森林的检测准确率。

本实施例提供的基于图像的目标检测装置,首先,利用样本集训练用于特征响铃提取的第一完全随机树森林和第一随机森林;然后,继续利用样本集训练用于识别目标物体的级联森林。训练过程只需要进行一次,训练完成后直接使用训练结果即可。首先,该方法利用在提取特征向量之前确定出目标候选区域,该目标候选区域的范围小于整个待检测图像的范围,因此,从目标候选区域中提取的特征向量数量,远远小于从整个待检测图像中提取的特征向量数量,从而提高了检测速度。其次,利用多粒度扫描能够更好地得到图像像素点之间的空间信息,提高了检测结果的准确率。与神经网络模型相比,级联森林模型中的参数数量较少,需要的训练数据较少,而且,检测准确率高。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

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