一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于目标概率密度图的端到端目标检测方法与流程

2022-11-13 11:52:47 来源:中国专利 TAG:


1.本发明涉及目标检测技术领域,特别是一种基于目标概率密度图的端到端目标检测方法。


背景技术:

2.近年来,计算机视觉中的目标检测在越来越多的工程和学术领域被使用,使得目标检测获得高速发展。通常检测的目标往往是肉眼清晰可见的大目标,随着应用场景的不断丰富和多元,小目标检测变得越来越重要。业界对小目标界定主要有两种方式:一种是相对大小界定,例如目标的长宽是图像长宽的0.1倍可认为是小目标;另外一种是绝对大小界定,将目标尺寸小于32
×
32像素的界定为小目标。
3.目前目标检测大多是基于数据驱动的神经网络方法。该方法需首先制作大量的目标检测标签,然后将标签作为真值输入神经网络进行训练,最后使用训练好的网络去检测特定场景下的目标。目前存在很多基于神经网络的目标检测方法可以快速有效的将大目标检测出来,但小目标往往存在漏检和误检的情况,因此开发针对小目标的检测方法变得十分重要。
4.现有的基于神经网络的小目标检测方法的主要思想就是将小目标变成大目标,主要有两种方式:一种是相对变大,常用的是将图像分割为多个小的图像,这样小目标相对小的图像就成了大目标,利用训练好的神经网络分别对每个小图像进行小目标检测;另一种方式是对小目标进行特征加强使其具有同大目标类似的更清晰的特征。小目标作为输入在神经网络中会经历缩放、池化等操作,其特征会逐渐被“稀释”,所以很多学者利用金字塔等方式在各个维度获取小目标的特征进行特征融合加强。
5.前一种方法又分为两种方法,第一种采用图像均匀分割的方式,其主要缺点是会消耗大量的计算资源,是一种粗暴的全图搜索模式;第二种方式首先对目标区域进行初定位,然后截取该区域送入到目标检测器种进行目标检测,该方法将神经网络的训练割裂开来,无法做到端到端的训练。除此之外,对小目标进行特征加强的方法检测的效果十分有限。


技术实现要素:

6.鉴于此,本发明提供一种基于目标概率密度图的端到端目标检测方法,以实现在不降低大目标检测准确率的前提下,降低小目标的漏检率和误检率。
7.本发明公开了一种基于目标概率密度图的端到端目标检测方法,包括以下步骤:
8.步骤1:生成待检测图像的目标概率密度图;
9.步骤2:基于所述目标概率密度图,获取所述待检测图像中的小目标区域的中心点和宽高;
10.步骤3:基于所述小目标区域的中心点和宽高,通过仿射变换,截取小目标区域;
11.步骤4:对所述小目标区域进行目标检测,输出目标类型和位置。
12.进一步地,若所述步骤2中待检测图像中没有小目标,则输入新的图像作为待检测图像,重新执行步骤1至步骤2,直至待检测图像中存在小目标;
13.所述步骤4还包括:
14.用单阶段检测网络对所述待检测图像进行目标检测,输出检测到的目标类型和位置。
15.进一步地,所述目标概率密度图为:
[0016][0017][0018]
其中,σi为高斯函数标准差,xk是目标的中心,δ(x-xk)表示密度点,表示高斯核,δ(x-xk)与卷积得到目标概率密度图d(x), k=1,2,

,n表示目标的序号;i,j分别表示第i个种类及第i个种类中的第j个目标,hi和wi分别表示第i个种类目标的平均高和宽,h
ij
和w
ij
分别表示第i个种类第j个目标的平均高和宽,η用来平衡种类的总体尺寸和个体尺寸对滤波参数σ的贡献度。
[0019]
进一步地,所述步骤1通过损失函数对待检测图像中的背景区域进行惩罚:
[0020][0021]
and
[0022]
其中,loss
density
为神经网络的损失函数,i=1,2,

,n表示输入图像的序号,j=0,1,

,mi表示输入的第i张图像的背景像素点序号,d(xi;θ)表示输入xi的目标概率密度图,θ表示目标概率密度图生成模型的参数,di(j)=0 表示生成的第i张目标概率密度图的第j个像素点为背景点,β是惩罚项系数,w和h表示目标概率密度图的宽和高,因此背景点越多,惩罚系数β越大。
[0023]
进一步地,所述步骤2包括:
[0024]
步骤21:使用滑动窗口对目标概率密度图进行不重叠遍历,将滑动窗口中的像素值与预设阈值进行比较,基于比较的结果对滑动窗口中的像素值进行赋值;
[0025]
步骤22:对经过赋值后的目标概率密度图进行聚类;
[0026]
步骤23:采用重心法,计算聚类后的每个目标区域的重心。
[0027]
进一步地,所述步骤21包括:
[0028]
在训练过程中滑动窗口的尺寸取所有目标尺寸的平均值,将每个滑动窗口中的像素平均值m与预先设置的阈值threshold比较,m若小于 threshold则该滑动窗口中的所有像素值置0,否则置为m。
[0029]
进一步地,所述步骤22包括:
[0030]
使用dbscan算法对阈值处理之后的目标概率密度图中不为0的区域进行聚类,若滑动窗口的尺寸为ws×hs
,则聚类扫描的半径为 2
×
max(ws,hs),聚类后归为一类的区域表
示一个待分割的目标区域;
[0031]
所述步骤23包括:
[0032]
对聚类后的每个目标区域r使用重心法计算出重心(xc,yc)。
[0033]
进一步地,所述重心(xc,yc)的计算公式为:
[0034][0035][0036]
其中,d
ij
表示r中的概率密度值,即目标概率密度图的像素值;若目标区域r的尺寸为w
×
h,则计算公式为:
[0037][0038][0039]
重心(xc,yc)变成新区域的中心,最后得出待裁剪的区域r= (xc,yc,w,h),r中的参数对d
ij
可导。
[0040]
进一步地,所述步骤3包括:
[0041]
采用仿射变换进行目标区域截取,待截取的区域r的坐标表示为(xo,yo), 截取后的目标区域坐标表示为(x
t
,y
t
),仿射变换为:
[0042][0043]
在仿射变换中,只有(xo,yo)是未知的,目标区域的坐标和变换矩阵都是已知的,能够通过仿射变换建立起目标概率密度图待裁剪区域与裁剪之后的目标区域的解析表示,从而使得训练过程的可导变得连续。
[0044]
进一步地,(x
t
,y
t
)均是整数坐标,进行逆变换得到的(xo,yo)并非都是整数,需要通过双线性插值来获得逆变换后的待检测图像的坐标对应的像素值。
[0045]
由于采用了上述技术方案,本发明具有如下的优点:本发明提出了一种针对一种基于目标概率密度图目标区域定位的小目标检测,可定位出目标存在的区域,在不降低大目标检测准确率的前提下,减少小目标的漏检率和误检率;本发明利用仿射变换进行目标区域的截取,可实现神经网络的端到端训练,大大简化了网络训练的流程和网络的结构,端到端的网络可使模型从原始输入到最终输出,给模型更多可以根据数据自动调节的空间,增加模型的整体契合度;本发明可与其他神经网络进行无缝连接,包括不同的检测网络,以及包括目标识别、分类等其他任务的神经网络;本发明可在军事、民用等多领域找到应用的
场景。
附图说明
[0046]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0047]
图1为本发明实施例的一种小目标检测方法的流程示意图;
[0048]
图2(a)为本发明实施例的原始输入图像示意图;
[0049]
图2(b)为图2(a)对应的目标概率密度图示意图;
[0050]
图3为本发明实施例的一种目标区域定位流程示意图;
[0051]
图4(a)为图2(b)进行阈值处理后的效果示意图;
[0052]
图4(b)为对图4(a)进行聚类后的效果示意图;
[0053]
图5为本发明实施例的一种基于目标概率密度图的端到端目标检测方法的流程示意图。
具体实施方式
[0054]
结合附图和实施例对本发明作进一步说明,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
[0055]
本发明提供了一种基于目标概率密度图的端到端目标检测方法的实施例,其包括目标概率密度图生成、目标区域定位、目标区域截取、目标检测等部分。其流程图如1所示。
[0056]
目标概率密度图生成:用来生成目标的目标概率密度图,图越亮的地方表示小目标存在的概率越大。左图为输入的原图,如图2(a)所示,右图为生成的目标概率密度图,如图2(b)所示,右图越亮的地方表示小目标(人) 存在的概率越大。
[0057]
目标区域定位:基于生成的目标概率密度图,通过阈值过滤、聚类将小目标区域定位出来,获得小目标区域的中心点和宽高。
[0058]
目标区域截取:基于定位的小目标区域,通过仿射变换截取小目标区域送入目标检测器。
[0059]
目标检测:对输入的小目标区域进行目标检测,输出检测到的目标类型和位置。
[0060]
s1、目标概率密度图生成
[0061]
目标概率密度图的生成首先需要经过网络的训练,借鉴csrnet方法。 csrnet用来生成人群分布密度图。csrnet网络主要分为前端和后端网络,前端网络采用剔除了全连接层的vgg-16,卷积层的数量增加会导致输出的图像尺寸变小,导致生成密度图的难度增加。所以csrnet采用空洞卷积神经网络作为后端网络,在保持分辨率的同时扩大感知域,生成高质量的人群分布密度图。
[0062]
在训练过程中目标概率密度图会在原始的密度图上对每个密度点进行高斯模糊,以提高预测目标的鲁棒性,其公式如下:
[0063]
[0064]
其中,xk是目标的中心,δ(x-xk)表示密度点,表示高斯核,δ(x-xk)与卷积得到概率密度图d(x)。k=1,2,

,n表示目标的序号。
[0065]
σ的取值根据目标的尺寸动态变化,其赋值的公式如下:
[0066][0067]
其中,i,j分别表示第i个种类及第i个种类中的第j个目标,hi和wi分别表示第i个种类目标的平均高和宽,h
ij
和w
ij
分别表示第i个种类第j个目标的平均高和宽,η用来平衡种类的中提尺寸和个体尺寸对滤波参数σ的贡献度,试验得出取0.7较为合适。如此一来,当目标尺寸较小时,可通过该种类的总体尺寸增大高斯滤波后小目标的区域范围,当目标尺寸较大时也可相对地降低高斯滤波后的区域范围,起到平衡的作用。通过滤波核尺寸的动态变化,得到滤波后的概率密度图的值越大的地方意味着存在小目标的概率越大。
[0068]
csrnet方法解决的问题是密集目标计数,本方法解决的问题是小目标检测,面临的问题是无目标的背景区域占比巨大,因此损失函数将对背景区域进行惩罚,如下所示:
[0069][0070]
and
[0071]
其中,i=1,2,

,n表示输入图像的序号,j=0,1,

,mi表示输入的第i 张图像的背景像素点序号。d(xi;θ)表示输入xi的概率密度图,θ表示概率密度图生成模型的参数,di(j)=0表示生成的第i张概率密度图的第j个像素点为背景点。β是惩罚项系数,w和h表示概率密度图的宽和高,因此背景点越多,惩罚系数β越大。
[0072]
s2、目标区域定位
[0073]
该步骤将基于s1中的生成的目标概率密度图进行目标区域定位。由图2(b)可见,目标概率密度图越亮的区域表示存在目标的概率越大。为了进一步降低背景和噪声对目标检测的影响,将采取一些列措施对目标概率密度图进行处理得到目标区域。首先使用滑动窗口对密度图进行不重叠遍历,在训练过程中滑动窗口的尺寸取所有目标尺寸的平均值,将每个滑动窗口中的像素平均值m与预先设置的阈值threshold比较,m若小于threshold则该滑动窗口中的所有像素值置0,否则置为m。然后使用dbscan算法对阈值处理之后的密度图中不为0的区域进行聚类,若滑动窗口的尺寸为 ws×hs
,则聚类扫描的半径为2
×
max(ws,hs),聚类后归为一类的区域表示一个待分割的目标区域。接着对聚类后的每个目标区域r使用重心法计算出重心(xc,yc),公式如下:
[0074][0075][0076]
其中,d
ij
表示r中的概率密度值,即目标概率密度图的像素值。若目标区域r的尺寸
为w
×
h,则计算公式为:
[0077][0078][0079]
这样重心(xc,yc)变成了新区域的中心,最后得出待裁剪的区域 r=(xc,yc,w,h),r中的参数对d
ij
可导。目标区域定位如图3所示,目标区域定位效果图如图4(a)和4(b)所示。
[0080]
s3、目标区域截取
[0081]
s2中已经得到目标区域,需将其裁剪出来送入目标检测器进行目标检测。传统的区域截取是使用模板截取,该方法将导致整个网络的训练不可导,因此本方法采用仿射变换进行目标区域截取。待截取的区域r的坐标表示为(xo,yo),截取后的目标区域坐标表示为(x
t
,y
t
),仿射变换为:
[0082][0083]
仿射变换种只有(xo,yo)是未知的,目标区域的坐标和变换矩阵都是已知的,因此可通过仿射变换建立起目标概率密度图待裁剪区域与裁剪之后的目标区域的解析表示,从而使得训练过程的可导变得连续。
[0084]
已知(x
t
,y
t
)均是整数坐标,进行逆变换得到的(xo,yo)并非都是整数,因此需要通过双线性插值来获得逆变换后的原始图像的坐标对应的像素值。
[0085]
s4、目标检测
[0086]
目标检测分为两个分支,如图5所示,其中上面一路分支是采用单阶段检测网络对原始输入图像进行目标检测,该检测往往会漏检或者误检部分小目标,但是对非小目标的检测可以得到很好的检测结果。下面一路分支是专门针对小目标进行检测,使用同样的单阶段检测网络即可。最后将两路检测结果进行综合得到最终的检测结果。
[0087]
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献