图像目标检测方法及装置
技术领域
本发明涉及图像处理技术领域,尤其涉及一种动态图像目标检测方法及装置。
背景技术
现有的针对运动相机的目标检测跟踪算法,主要采用前景检测或者机器学习算法进行目标检测。对于前景检测算法,由于相机是运动的,一般采用运动补偿进行背景估计或者采用光流算法进行运动目标的提取,这两者都只能针对运动的目标有效,而且计算量十分繁重,不能达到实时视频处理的目的。针对机器学习算法的目标检测算法,由于机器学习的检测算法复杂度较高,对于低分辨图像可以达到实时检测分析,对于高分辨率图像一般采用降维的方法进行处理,但是对于高分辨率图像降维后,便会丢失原图像中的小目标的特征信息,从而不能进行准确的检测。
发明内容
本发明的主要目的在于提出一种图像目标检测方法及装置,旨在实现动态环境下高分辨率图像中目标准确实时的检测分析。
为实现上述目的,本发明提供的一种图像目标检测方法,包括:
S1,获取动态采集的第一帧的高分辨率图像;
S2,对所述高分辨率图像进行自适应实时检测变换;
S3,采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测。
优选地,所述S2,对所述高分辨率图像进行自适应实时检测变换的步骤之后还包括:
S4,对自适应实时检测变换后的图像进行预处理;
所述S3,采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测的步骤包括:
S31,采用预设的级联分类器,对预处理后的图像进行目标检测。
优选地,所述对所述高分辨率图像进行自适应实时检测变换的步骤包括:
根据预设的目标对象尺寸以及目标对象大小判断准则,判断所述高分辨率图像中的目标对象为大目标还是小目标;
若判断所述高分辨率图像中的目标对象为大目标,则按照插值算法对所述高分辨率图像进行缩小处理,以缩小后的图像构造出检测框;
若判断所述高分辨率图像中的目标对象为小目标,则对所述高分辨率图像进行局部裁剪以形成一个窗口,所述窗口位于所述高分辨率图像的中心,以该窗口构造出检测框;
对所述检测框进行缩放以得到一个缩小检测框以及一个放大检测框。
优选地,所述采用预设的级联分类器,对预处理后的图像进行目标检测的步骤包括:
读取预先训练好的分类器中的特征矩阵,所述特征矩阵至少包括方差值;
根据构造的所述检测框、缩小检测框以及放大检测框,对所述预处理后的图像进行分割,得到若干个等比例缩小的目标对象大小的图格;
获取第一个图格的方差值;
对比第一个图格的方差值与所述分类器的方差值;
若符合分类器的方差值,则判定所述预处理后的图像中有目标存在。
优选地,所述特征矩阵还包括:直方图向量;所述采用预设的级联分类器,对预处理后的图像进行目标检测的步骤还包括:
获取符合分类器的方差值的图格的直方图向量;
对比所述图格的直方图向量与分类器的直方图向量;
若符合分类器的直方图向量,则判定所述预处理后的图像中有目标存在。
优选地,所述特征矩阵还包括:集合分类器矩阵;所述采用预设的级联分类器,对预处理后的图像进行目标检测的步骤还包括:
获取符合分类器的直方图向量的图格的集合分类器矩阵;
对比所述图格的集合分类器矩阵与分类器的集合分类器矩阵;
若符合分类器的集合分类器矩阵,则判定所述预处理后的图像中有目标存在。
优选地,所述特征矩阵还包括:最近邻分类矩阵;所述采用预设的级联分类器,对预处理后的图像进行目标检测的步骤还包括:
获取符合所述分类器的集合分类器矩阵的图格的最近邻分类矩阵;
对比所述图格的最近邻分类矩阵与分类器的最近邻分类矩阵;
若符合分类器的最近邻分类矩阵,则判定所述预处理后的图像中有目标存在。
优选地,所述采用预设的级联分类器,对预处理后的图像进行目标检测的步骤还包括:
若当前图格不符合分类器的方差值,或者不符合分类器的直方图向量,或者不符合分类器的集合分类器矩阵,或者不符合分类器的最近邻分类矩阵,则获取下一个图格,直至所有图格均处理完毕。
优选地,若判断所述高分辨率图像中的目标对象为小目标,则所述采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测的步骤之后还包括:
S5,对所述高分辨率图像中的目标对象进行窗口位置变换。
优选地,所述方法还包括:
获取第二帧及其后的高分辨率图像;
若第一帧的高分辨率图像中的目标对象为大目标,则对第二帧及其后的高分辨率图像进行缩小处理,然后依次执行步骤S4、S31;
若第一帧的高分辨率图像中的目标对象为小目标,则根据上一帧的高分辨率图像中目标对象的目标位置进行窗口位置变换,然后依次执行步骤S4、S31和S5。
本发明实施例还提出一种图像目标检测装置,包括:
图像获取模块,用于获取动态采集的第一帧的高分辨率图像;
自适应变换模块,用于对所述高分辨率图像进行自适应实时检测变换;
目标检测模块,用于采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测。
优选地,所述装置还包括:
预处理模块,用于对自适应实时检测变换后的图像进行预处理;
所述目标检测模块,还用于采用预设的级联分类器,对预处理后的图像进行目标检测。
优选地,所述自适应变换模块,还用于根据预设的目标对象尺寸以及目标对象大小判断准则,判断所述高分辨率图像中的目标对象为大目标还是小目标;若判断所述高分辨率图像中的目标对象为大目标,则按照插值算法对所述高分辨率图像进行缩小处理,以缩小后的图像构造出检测框;若判断所述高分辨率图像中的目标对象为小目标,则对所述高分辨率图像进行局部裁剪以形成一个窗口,所述窗口位于所述高分辨率图像的中心,以该窗口构造出检测框;对所述检测框进行缩放以得到一个缩小检测框以及一个放大检测框。
优选地,所述目标检测模块,还用于读取预先训练好的分类器中的特征矩阵,所述特征矩阵至少包括方差值;根据构造的所述检测框、缩小检测框以及放大检测框,对所述预处理后的图像进行分割,得到若干个等比例缩小的目标对象大小的图格;获取第一个图格的方差值;对比第一个图格的方差值与所述分类器的方差值;若符合分类器的方差值,则判定所述预处理后的图像中有目标存在。
优选地,所述特征矩阵还包括:直方图向量;所述目标检测模块,还用于获取符合分类器的方差值的图格的直方图向量;对比所述图格的直方图向量与分类器的直方图向量;若符合分类器的直方图向量,则判定所述预处理后的图像中有目标存在;
进一步,所述特征矩阵还包括:集合分类器矩阵;所述目标检测模块,还用于获取符合分类器的直方图向量的图格的集合分类器矩阵;对比所述图格的集合分类器矩阵与分类器的集合分类器矩阵;若符合分类器的集合分类器矩阵,则判定所述预处理后的图像中有目标存在;
进一步,所述特征矩阵还包括:最近邻分类矩阵;所述目标检测模块,还用于获取符合所述分类器的集合分类器矩阵的图格的最近邻分类矩阵;对比所述图格的最近邻分类矩阵与分类器的最近邻分类矩阵;若符合分类器的最近邻分类矩阵,则判定所述预处理后的图像中有目标存在。
优选地,所述目标检测模块,还用于若当前图格不符合分类器的方差值,或者不符合分类器的直方图向量,或者不符合分类器的集合分类器矩阵,或者不符合分类器的最近邻分类矩阵,则获取下一个图格,直至所有图格均处理完毕。
优选地,若判断所述高分辨率图像中的目标对象为小目标,则所述装置还包括:
窗口位置变换模块,用于对所述高分辨率图像中的目标对象进行窗口位置变换。
优选地,所述图像获取模块,还用于获取第二帧及其后的高分辨率图像;若第一帧的高分辨率图像中的目标对象为大目标,则由所述自适应变换模块对第二帧及其后的高分辨率图像进行缩小处理,然后依次由所述预处理模块对自适应实时检测变换后的图像进行预处理,由所述目标检测模块采用预设的级联分类器,对预处理后的图像进行目标检测;若第一帧的高分辨率图像中的目标对象为小目标,则由窗口位置变换模块所述根据上一帧的高分辨率图像中目标对象的目标位置进行窗口位置变换,并依次由所述预处理模块对自适应实时检测变换后的图像进行预处理,由所述目标检测模块采用预设的级联分类器,对预处理后的图像进行目标检测,由所述窗口位置变换模块对所述高分辨率图像中的目标对象进行窗口位置变换。
本发明提出的一种图像目标检测方法及装置,通过获取动态采集的第一帧的高分辨率图像;对高分辨率图像进行自适应实时检测变换;采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测,解决了现有技术中运动相机等动态背景下不能准确及长时间进行目标检测的问题,实现了动态环境下对高分辨率图像中目标的实时准确检测。
附图说明
图1是本发明图像目标检测方法第一实施例的流程示意图;
图2是本发明图像目标检测方法第二实施例的流程示意图;
图3是本发明图像目标检测方法第三实施例的流程示意图;
图4是本发明图像目标检测装置第一实施例的功能模块示意图;
图5是本发明图像目标检测装置第二实施例的功能模块示意图;
图6是本发明图像目标检测装置第三实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:通过获取动态采集的第一帧的高分辨率图像;对高分辨率图像进行自适应实时检测变换;采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测,实现动态环境下对高分辨率图像中目标的实时准确检测。
本发明实施例考虑到:现有技术中针对运动相机的目标检测算法,不能达到实时视频处理的目的或者不能进行准确的检测。
本发明实施例方案可以解决现有技术中运动相机等动态背景下不能准确及长时间进行目标检测的问题,实现动态环境下对高分辨率图像中目标的实时准确检测。
具体地,如图1所示,本发明第一实施例提出一种图像目标检测方法,包括:
S1,获取动态采集的第一帧的高分辨率图像;
其中,高分辨率图像为动态背景下采集的图像,本实施例以运动相机采集的图像为例,该运动相机可以安装在无人机上。本实施例方案可以实现运动相机高清摄像头采集的高分辨率图像中目标的实时准确检测。
S2,对所述高分辨率图像进行自适应实时检测变换;
其中,自适应实时检测变换是为了处理高分辨率图像实时检测的问题。通过自适应目标大小和原始图像,在保持高分辨率图像中有效特征的前提下,减少目标检测的计算复杂度,使得实时检测得以实现。
具体地,在对高分辨率图像进行自适应实时检测变换时,可以采用如下方案:
首先,根据预设的目标对象尺寸以及目标对象大小判断准则,判断高分辨率图像中的目标对象为大目标还是小目标。
其中,目标对象大小判断准则为:输入的目标对象尺寸与所获取的高分辨率图像的尺寸的比值是否大于一预值,若大于该预值,则判断该高分辨率图像中的目标对象为大目标,若小于或等于该预值,则判断该高分辨率图像中的目标对象为小目标。
若判断所获取的高分辨率图像中的目标对象为大目标,则按照插值算法对高分辨率图像进行缩小处理,以缩小后的图像构造出检测框,其中缩小的比例为上述判断高分辨率图像中的目标对象为大目标还是小目标时所参考的预值。
若判断所获取的高分辨率图像中的目标对象为小目标,则对高分辨率图像进行局部裁剪以形成一个窗口,该窗口位于所述高分辨率图像的中心,以该窗口构造出检测框,后续对图像的处理,均以窗口中的图像为处理对象。
其中,作为一种优选方案,在对高分辨率图像进行局部裁剪时,在所获取的高分辨率图像的中心进行裁剪,以使该窗口位于高分辨率图像的中心,裁剪的窗口的长为目标对象的长的7到13倍,窗口的宽为目标对象的宽的6到12倍。
由此,通过自适应目标大小和原始图像,在保持高分辨率图像中有效特征的前提下,减少了目标检测的计算复杂度,提高了目标检测的速度,从而使得目标实时快速检测得以实现。
上述检测框的构造过程如下:根据目标对象尺寸的大小以及高分辨率图像的尺寸的大小构造出一个以目标对象尺寸为小格的布满所获取的高分辨率图像的检测框。
之后,对该检测框进行缩放以得到一个缩小检测框(如0.8倍检测框)以及一个放大检测框(如1.2倍检测框)。
该步骤的目的是为了适应后续镜头的缩放或相机的远近拍摄而导致目标对象尺寸的改变,可通过不同的检测框来检测到目标对象。
S3,采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测。
其中,本实施例采用级联分类器设计,比普通的单一分类器,如HOG+SVM,检测效率更快,比一般的级联分类器,如harr+adaboost,检测效果更准确。
级联分类器中已训练好相应的特征矩阵,该特征矩阵包括但不限于:方差值、直方图向量、集合分类器矩阵和最近邻分类矩阵。
用以进行匹配检测的级联分类器的特征矩阵可以选择上述特征矩阵中的一种或多种。本实施例以方差值、直方图向量、集合分类器矩阵和最近邻分类矩阵这四种特征矩阵构成的四层级联分类器的检测进行举例。
具体的目标检测过程如下:
1、读取预先训练好的分类器中的特征矩阵;
2、根据上述得到的缩小检测框、检测框和放大检测框对获取的高分辨率图像进行分割,以得到若干个等比例缩小的目标对象大小的图格。
3、获取当前图格(初始时为第一个图格)的方差值;
4、对比第一个图格的方差值与分类器的方差值;
其中,对比的方法为:当前图像方差Si大于1/2分类器训练得到的方差S0,则认为有目标存在(即符合分类器的方差值)。
若不符合分类器的方差值,则转到第3步,获取第二个图格的方差值;若符合分类器的方差值,则进入第5步;
5、获取符合分类器的方差值的图格的直方图向量;
6、对比该图格的直方图向量与分类器的直方图向量;
其中,对比的方法为:训练得到的直方图向量H(p)乘当前图像的直方图向量H(x)小于训练得到的判断阈值T,则认为有目标存在。
若不符合分类器的直方图向量,则转到第3步,获取第二个图格的方差值;若符合分类器的直方图向量,则进入第7步;
7、获取符合分类器的直方图向量的图格的集合分类器矩阵;
8、对比该图格的集合分类器矩阵与分类器的集合分类器矩阵;
其中,对比的方法为:将获取的高分辨率图像乘训练后的集合分类器特征矩阵得到特征值矩阵,将特征值矩阵求和与训练后的集合分类器特征阈值比较,大于则认为有目标存在。
若不符合分类器的集合分类器矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的集合分类器矩阵,则进入第9步;
9、获取符合分类器的集合分类器矩阵的图格的最近邻分类矩阵;
10、对比该图格的最近邻分类矩阵与分类器的最近邻分类矩阵;
其中,对比的方法为:用当前图像与训练得到的正样本矩阵集合进行模板匹配,找到最小的匹配值dN;用当前图像与训练得到的负样本矩阵集合进行模板匹配,找到最小的匹配值dp;对比dN/(dN+dp)与训练后的最近邻分类阈值的大小,大于则认为为真正的目标。
若不符合分类器的最近邻分类矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的最近邻分类矩阵,则进入第11步;
11、判断该图格为真正的目标,则获取目标位置,并对下一图格进行处理。
通过上述流程处理方式,直至所有图格均处理完毕。
12、若所有图格都没有被判断为真正的目标,则获取下一帧高分辨率图像。
对第二帧及其后的高分辨率图像的处理过程如下:
根据第一帧的判断,如果是大目标,则直接对下一帧图像进行降维处理,即进行缩小处理;然后执行S3。
如果是小目标,则根据上一帧的目标位置进行窗口位置变换,然后执行S3,并需要进行小目标的窗口位置变换(后续第三实施例将作详述)。
本实施例通过上述方案,具体通过获取动态采集的第一帧的高分辨率图像;对高分辨率图像进行自适应实时检测变换;采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测,解决了现有技术中运动相机等动态背景下不能准确及长时间进行目标检测的问题,实现了动态环境下对高分辨率图像中目标的实时准确检测。
如图2所示,本发明第二实施例提出一种图像目标检测方法,基于上述图1所示的实施例,在所述步骤S2,对所述高分辨率图像进行自适应实时检测变换之后还包括:
步骤S4,对自适应实时检测变换后的图像进行预处理;
所述步骤S3,采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测的步骤包括:
步骤S31,采用预设的级联分类器,对预处理后的图像进行目标检测。
相比上述图1所示的实施例,本实施例方案还包括对自适应实时检测变换后的图像进行预处理。
其中,预处理的主要过程是:通过高斯模糊算法对上述输出的图像进行去噪处理,以提高图像的处理精度。
如图3所示,本发明第三实施例提出一种图像目标检测方法,基于上述图2所示的实施例,若判断所述高分辨率图像中的目标对象为小目标,则在上述步骤S31:采用预设的级联分类器,对预处理后的图像进行目标检测之后还包括:
S5,对所述高分辨率图像中的目标对象进行窗口位置变换。
相比上述实施例,本实施例针对高分辨率图像中的目标对象为小目标时,还包括对高分辨率图像中的目标对象进行窗口位置变换的方案,以使动态目标位于窗口的中心,保证目标准确实时定位。
其中,小目标的窗口位置变换是指:根据获取真正的目标的位置,换算出具有目标的窗口位置并实时记录。
对第二帧及其后的高分辨率图像的处理过程如下:
根据第一帧的判断,如果是大目标,则直接对下一帧图像进行降维处理,即进行缩小处理;然后依次执行S4、S31。
如果是小目标,则根据上一帧的目标位置进行窗口位置变换,然后依次执行S4、S31、S5。
本实施例的目标检测过程如下:
1、读取预先训练好的分类器中的特征矩阵;
2、根据上述得到的缩小检测框、检测框和放大检测框对获取的预处理后的图像进行分割,以得到若干个等比例缩小的目标对象大小的图格。
3、获取当前图格(初始时为第一个图格)的方差值;
4、对比第一个图格的方差值与分类器的方差值;
其中,对比的方法为:当前图像方差Si大于1/2分类器训练得到的方差S0,则认为有目标存在(即符合分类器的方差值)。
若不符合分类器的方差值,则转到第3步,获取第二个图格的方差值;若符合分类器的方差值,则进入第5步;
5、获取符合分类器的方差值的图格的直方图向量;
6、对比该图格的直方图向量与分类器的直方图向量;
其中,对比的方法为:训练得到的直方图向量H(p)乘当前图像的直方图向量H(x)小于训练得到的判断阈值T,则认为有目标存在。
若不符合分类器的直方图向量,则转到第3步,获取第二个图格的方差值;若符合分类器的直方图向量,则进入第7步;
7、获取符合分类器的直方图向量的图格的集合分类器矩阵;
8、对比该图格的集合分类器矩阵与分类器的集合分类器矩阵;
其中,对比的方法为:将当前预处理后的图像乘训练后的集合分类器特征矩阵得到特征值矩阵,将特征值矩阵求和与训练后的集合分类器特征阈值比较,大于则认为有目标存在。
若不符合分类器的集合分类器矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的集合分类器矩阵,则进入第9步;
9、获取符合分类器的集合分类器矩阵的图格的最近邻分类矩阵;
10、对比该图格的最近邻分类矩阵与分类器的最近邻分类矩阵;
其中,对比的方法为:用当前图像与训练得到的正样本矩阵集合进行模板匹配,找到最小的匹配值dN;用当前图像与训练得到的负样本矩阵集合进行模板匹配,找到最小的匹配值dp;对比dN/(dN+dp)与训练后的最近邻分类阈值的大小,大于则认为为真正的目标。
若不符合分类器的最近邻分类矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的最近邻分类矩阵,则进入第11步;
11、判断该图格为真正的目标,则获取目标位置,并对下一图格进行处理。
通过上述流程处理方式,直至所有图格均处理完毕,然后获取下一帧高分辨率图像进行处理。
12、若所有图格都没有被判断为真正的目标,则获取下一帧高分辨率图像。
如前所述,对第二帧及其后的高分辨率图像的处理过程如下:
根据第一帧的判断,如果是大目标,则直接对下一帧图像进行降维处理,即进行缩小处理;然后依次执行S4、S31。
如果是小目标,则根据上一帧的目标位置进行窗口位置变换,然后依次执行S4、S31、S5。
本实施例通过上述方案,具体通过获取动态采集的第一帧的高分辨率图像;对高分辨率图像进行自适应实时检测变换;对自适应实时检测变换后的图像进行预处理,采用预设的级联分类器,对预处理后的图像进行目标检测,对于高分辨率图像中的目标对象为小目标的情形,还对目标对象进行窗口位置变换,由此解决了现有技术中运动相机等动态背景下不能准确及长时间进行目标检测的问题,实现了动态环境下对高分辨率图像中目标的实时准确检测。
如图4所示,本发明第一实施例提出一种图像目标检测装置,包括:图像获取模块201、自适应变换模块202及目标检测模块203,其中:
图像获取模块201,用于获取动态采集的第一帧的高分辨率图像;
自适应变换模块202,用于对所述高分辨率图像进行自适应实时检测变换;
目标检测模块203,用于采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测。
具体地,首先获取动态采集的第一帧的高分辨率图像,以便对该高分辨率图像进行目标检测,后续依次对第二帧及其后所有高分辨率图像进行检测。
其中,高分辨率图像为动态背景下采集的图像,本实施例以运动相机采集的图像为例,该运动相机可以安装在无人机上。本实施例方案可以实现运动相机高清摄像头采集的高分辨率图像中目标的实时准确检测。
在获取到动态采集的第一帧的高分辨率图像后,对该高分辨率图像进行自适应实时检测变换。
其中,自适应实时检测变换是为了处理高分辨率图像实时检测的问题。通过自适应目标大小和原始图像,在保持高分辨率图像中有效特征的前提下,减少目标检测的计算复杂度,使得实时检测得以实现。
具体地,在对高分辨率图像进行自适应实时检测变换时,可以采用如下方案:
首先,根据预设的目标对象尺寸以及目标对象大小判断准则,判断高分辨率图像中的目标对象为大目标还是小目标。
其中,目标对象大小判断准则为:输入的目标对象尺寸与所获取的高分辨率图像的尺寸的比值是否大于一预值,若大于该预值,则判断该高分辨率图像中的目标对象为大目标,若小于或等于该预值,则判断该高分辨率图像中的目标对象为小目标。
若判断所获取的高分辨率图像中的目标对象为大目标,则按照插值算法对高分辨率图像进行缩小处理,以缩小后的图像构造出检测框,其中缩小的比例为上述判断高分辨率图像中的目标对象为大目标还是小目标时所参考的预值。
若判断所获取的高分辨率图像中的目标对象为小目标,则对高分辨率图像进行局部裁剪以形成一个窗口,该窗口位于所述高分辨率图像的中心,以该窗口构造出检测框,后续对图像的处理,均以窗口中的图像为处理对象。
其中,作为一种优选方案,在对高分辨率图像进行局部裁剪时,在所获取的高分辨率图像的中心进行裁剪,以使该窗口位于高分辨率图像的中心,裁剪的窗口的长为目标对象的长的7到13倍,窗口的宽为目标对象的宽的6到12倍。
由此,通过自适应目标大小和原始图像,在保持高分辨率图像中有效特征的前提下,减少了目标检测的计算复杂度,提高了目标检测的速度,从而使得目标实时快速检测得以实现。
上述检测框的构造过程如下:根据目标对象尺寸的大小以及高分辨率图像的尺寸的大小构造出一个以目标对象尺寸为小格的布满所获取的高分辨率图像的检测框。
之后,对该检测框进行缩放以得到一个缩小检测框(如0.8倍检测框)以及一个放大检测框(如1.2倍检测框)。该处理的目的是为了适应后续镜头的缩放或相机的远近拍摄而导致目标对象尺寸的改变,可通过不同的检测框来检测到目标对象。
之后,采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测。本实施例采用级联分类器设计,比普通的单一分类器,如HOG+SVM,检测效率更快,比一般的级联分类器,如harr+adaboost,检测效果更准确。
级联分类器中已训练好相应的特征矩阵,该特征矩阵包括但不限于:方差值、直方图向量、集合分类器矩阵和最近邻分类矩阵。
用以进行匹配检测的级联分类器的特征矩阵可以选择上述特征矩阵中的一种或多种。本实施例以方差值、直方图向量、集合分类器矩阵和最近邻分类矩阵这四种特征矩阵构成的四层级联分类器的检测进行举例。
具体的目标检测过程如下:
1、读取预先训练好的分类器中的特征矩阵;
2、根据上述得到的缩小检测框、检测框和放大检测框对获取的高分辨率图像进行分割,以得到若干个等比例缩小的目标对象大小的图格。
3、获取当前图格(初始时为第一个图格)的方差值;
4、对比第一个图格的方差值与分类器的方差值;
其中,对比的方法为:当前图像方差Si大于1/2分类器训练得到的方差S0,则认为有目标存在(即符合分类器的方差值)。
若不符合分类器的方差值,则转到第3步,获取第二个图格的方差值;若符合分类器的方差值,则进入第5步;
5、获取符合分类器的方差值的图格的直方图向量;
6、对比该图格的直方图向量与分类器的直方图向量;
其中,对比的方法为:训练得到的直方图向量H(p)乘当前图像的直方图向量H(x)小于训练得到的判断阈值T,则认为有目标存在。
若不符合分类器的直方图向量,则转到第3步,获取第二个图格的方差值;若符合分类器的直方图向量,则进入第7步;
7、获取符合分类器的直方图向量的图格的集合分类器矩阵;
8、对比该图格的集合分类器矩阵与分类器的集合分类器矩阵;
其中,对比的方法为:将获取的高分辨率图像乘训练后的集合分类器特征矩阵得到特征值矩阵,将特征值矩阵求和与训练后的集合分类器特征阈值比较,大于则认为有目标存在。
若不符合分类器的集合分类器矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的集合分类器矩阵,则进入第9步;
9、获取符合分类器的集合分类器矩阵的图格的最近邻分类矩阵;
10、对比该图格的最近邻分类矩阵与分类器的最近邻分类矩阵;
其中,对比的方法为:用当前图像与训练得到的正样本矩阵集合进行模板匹配,找到最小的匹配值dN;用当前图像与训练得到的负样本矩阵集合进行模板匹配,找到最小的匹配值dp;对比dN/(dN+dp)与训练后的最近邻分类阈值的大小,大于则认为为真正的目标。
若不符合分类器的最近邻分类矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的最近邻分类矩阵,则进入第11步;
11、判断该图格为真正的目标,则获取目标位置,并对下一图格进行处理。
通过上述流程处理方式,直至所有图格均处理完毕。
12、若所有图格都没有被判断为真正的目标,则获取下一帧高分辨率图像。
对第二帧及其后的高分辨率图像的处理过程如下:
根据第一帧的判断,如果是大目标,则直接对下一帧图像进行降维处理,即进行缩小处理;然后由目标检测模块203采用预设的级联分类器,对图像进行目标检测。
如果是小目标,则根据上一帧的目标位置进行窗口位置变换,然后由目标检测模块203采用预设的级联分类器,对图像进行目标检测,并需要进行小目标的窗口位置变换(后续第三实施例将作详述)。
本实施例通过上述方案,具体通过获取动态采集的第一帧的高分辨率图像;对高分辨率图像进行自适应实时检测变换;采用预设的级联分类器,对自适应实时检测变换后的图像进行目标检测,解决了现有技术中运动相机等动态背景下不能准确及长时间进行目标检测的问题,实现了动态环境下对高分辨率图像中目标的实时准确检测。
如图5所示,本发明第二实施例提出一种图像目标检测装置,基于上述图4所示的实施例,该装置还包括:
预处理模块204,用于对自适应实时检测变换后的图像进行预处理;
所述目标检测模块,还用于采用预设的级联分类器,对预处理后的图像进行目标检测。
相比上述图4所示的实施例,本实施例方案还包括对自适应实时检测变换后的图像进行预处理。
其中,预处理的主要过程是:通过高斯模糊算法对上述输出的图像进行去噪处理,以提高图像的处理精度。
如图6所示,本发明第三实施例提出一种图像目标检测装置,基于上述图5所示的实施例,若判断所述高分辨率图像中的目标对象为小目标,则所述装置还包括:
窗口位置变换模块205,用于对所述高分辨率图像中的目标对象进行窗口位置变换。
相比上述实施例,本实施例针对高分辨率图像中的目标对象为小目标时,还包括对高分辨率图像中的目标对象进行窗口位置变换的方案,以使动态目标位于窗口的中心,保证目标准确实时定位。
其中,小目标的窗口位置变换是指:根据获取真正的目标的位置,换算出具有目标的窗口位置并实时记录。
对第二帧及其后的高分辨率图像的处理过程如下:
根据第一帧的判断,如果是大目标,则直接对下一帧图像进行降维处理,即进行缩小处理;然后依次由预处理模块204对自适应实时检测变换后的图像进行预处理,由目标检测模块203采用预设的级联分类器,对预处理后的图像进行目标检测。
如果是小目标,则根据上一帧的目标位置进行窗口位置变换,然后依次由预处理模块204对自适应实时检测变换后的图像进行预处理,由目标检测模块203采用预设的级联分类器,对预处理后的图像进行目标检测,由窗口位置变换模块205对高分辨率图像中的目标对象进行窗口位置变换。
本实施例的目标检测过程如下:
1、读取预先训练好的分类器中的特征矩阵;
2、根据上述得到的缩小检测框、检测框和放大检测框对获取的预处理后的图像进行分割,以得到若干个等比例缩小的目标对象大小的图格。
3、获取当前图格(初始时为第一个图格)的方差值;
4、对比第一个图格的方差值与分类器的方差值;
其中,对比的方法为:当前图像方差Si大于1/2分类器训练得到的方差S0,则认为有目标存在(即符合分类器的方差值)。
若不符合分类器的方差值,则转到第3步,获取第二个图格的方差值;若符合分类器的方差值,则进入第5步;
5、获取符合分类器的方差值的图格的直方图向量;
6、对比该图格的直方图向量与分类器的直方图向量;
其中,对比的方法为:训练得到的直方图向量H(p)乘当前图像的直方图向量H(x)小于训练得到的判断阈值T,则认为有目标存在。
若不符合分类器的直方图向量,则转到第3步,获取第二个图格的方差值;若符合分类器的直方图向量,则进入第7步;
7、获取符合分类器的直方图向量的图格的集合分类器矩阵;
8、对比该图格的集合分类器矩阵与分类器的集合分类器矩阵;
其中,对比的方法为:将当前预处理后的图像乘训练后的集合分类器特征矩阵得到特征值矩阵,将特征值矩阵求和与训练后的集合分类器特征阈值比较,大于则认为有目标存在。
若不符合分类器的集合分类器矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的集合分类器矩阵,则进入第9步;
9、获取符合分类器的集合分类器矩阵的图格的最近邻分类矩阵;
10、对比该图格的最近邻分类矩阵与分类器的最近邻分类矩阵;
其中,对比的方法为:用当前图像与训练得到的正样本矩阵集合进行模板匹配,找到最小的匹配值dN;用当前图像与训练得到的负样本矩阵集合进行模板匹配,找到最小的匹配值dp;对比dN/(dN+dp)与训练后的最近邻分类阈值的大小,大于则认为为真正的目标。
若不符合分类器的最近邻分类矩阵,则转到第3步,获取第二个图格的方差值;若符合分类器的最近邻分类矩阵,则进入第11步;
11、判断该图格为真正的目标,则获取目标位置,并对下一图格进行处理。
通过上述流程处理方式,直至所有图格均处理完毕,然后获取下一帧高分辨率图像进行处理。
12、若所有图格都没有被判断为真正的目标,则获取下一帧高分辨率图像。
本实施例通过上述方案,具体通过获取动态采集的第一帧的高分辨率图像;对高分辨率图像进行自适应实时检测变换;对自适应实时检测变换后的图像进行预处理,采用预设的级联分类器,对预处理后的图像进行目标检测,对于高分辨率图像中的目标对象为小目标的情形,还对目标对象进行窗口位置变换,由此解决了现有技术中运动相机等动态背景下不能准确及长时间进行目标检测的问题,实现了动态环境下对高分辨率图像中目标的实时准确检测。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。