基于聚类算法改进特征金字塔网络的目标检测方法转让专利

申请号 : CN201910145122.2

文献号 : CN109919215B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李友江罗子娟缪伟鑫郭成昊蒋炜

申请人 : 中国电子科技集团公司第二十八研究所

摘要 :

本发明公开了一种基于聚类算法改进特征金字塔网络的目标检测方法,该方法包含四个关键步骤,一是利用聚类算法分析检测对象的几何特征;二是构建基础的检测网络主体架构;三是根据目标的主要尺寸动态调整特征金字塔网络;四是根据目标的外貌特征动态设置检测候选框尺寸长宽比。本发明在构建检测的网络模型时充分考虑了待检测领域对象的几何特征,这种方法生成的网络既提高了模型的训练效率,缩短了训练时间,也提高了模型的泛化能力,在检测小目标和多尺度目标时准确度也得到了提升。

权利要求 :

1.基于聚类算法改进特征金字塔网络的目标检测方法,其特征在于:包括如下步骤:

1)分析待检测领域目标几何特征模块采用K-means聚类算法分析该领域目标的像素点大小和外形长宽比两个几何特征;

2)在构建基础检测网络主体架构模块中完成目标检测基础网络的主干网络构建;

3)在动态调整特征金字塔网络模块中利用步骤1)中的聚类分析目标像素点大小的聚类结果动态调整特征金字塔网络;

4)在动态设置检测候选框模块中利用步骤1)中的目标像素点大小的聚类结果和目标在图像中的长宽比的聚类结果动态设置候选框,完成目标检测;

所述步骤1)中像素点大小和外形长宽比的分析具体如下:A)聚类分析目标像素点大小

A1)用二维向量(w,h)记录一个目标的像素点大小,其中w表示目标长边的像素点个数,h表示目标短边的像素点个数,遍历训练集中所有图片,读取每张图像所有的对应的标注框信息,计算每个目标的长度和宽度,形成原始的像素点集合S={(wi,hi)|i=1,2,3,…,N},其中i表示训练集中目标序号,N表示训练集的目标的总数;

A2)采用K-means聚类算法对原始点的像素点集合S={(wi,hi)|i=1,2,3,…,N}进行聚类分析,聚类算法中的距离度量采用欧几里得距离,设置像素点类别个数为K,聚类结果为S'={(wj,hj)|j=1,2,3,…,K},其中j表示类别序号,K表示像素点类别总数,(wj,hj)表示第j个类别中所有像素点大小的中心;

A3)比较S'={(wj,hj)|j=1,2,3,…,K}中每类之间的差别,判别相邻两个类的中心对应的面积比是否在3.5:1到5.5:1之间,即3.5≤(wi+1×hi+1)/(wi×hi)≤5.5;如果满足上述条件,完成目标像素点大小的聚类,形成聚类结果:S'={(wj,hj)|j=1,2,3,…,K}否则调整K的取值,重新聚类计算;

B)聚类分析目标在图像中的长宽比

B1)原始点的像素点集合S={(wi,hi)|i=1,2,3,…,N}计算每个目标的长宽比,形成长宽比的集合R={ri|i=1,2,3,…,N},其中ri=wi/hi,i表示训练集中目标序号,N表示训练集的目标的总数;

B2)采用K-means聚类算法对长宽比集合R={ri|i=1,2,3,…,N}进行聚类分析,聚类算法中的距离度量采用欧几里得距离,设置长宽比类别个数为M,聚类结果为R'={rj|i=1,

2,3,…,M},其中j表示类别序号,M表示像素点类别总数,rj表示第j个类别中所有目标长宽比的均值;

所述步骤2)中主干网络构建的具体步骤如下:

2.1)选取网络架构:采用FasterR-CNN的主体架构,该架构包括特征提取网络、候选框生成网络和回归输出层;

2.2)搭建特征提取网络:采用残差网络ResNet101的改进型结构ResNetXt,该架构支持多通道分组计算,实现并行计算,提高特征提取速率;

2.3)构建基础的特征金字塔网络,该网络的每一层对应特征提取网络的每个卷积阶段,特征金字塔的每一层都与候选框网络相连;

所述步骤3)具体如下:

聚类结果为S'={(wj,hj)|j=1,2,3,…,K},根据最终的类别数量K的取值抑制特征金字塔网络部分层生成候选框的功能,如果K的取值等于或者大于基础网络中特征金字塔网络的层数,则不抑制,需要保留的特征金字塔网络的层序号计算公式如下:其中,Lj表示保留的特征金字塔网络的层序号,j=1,2,3,…,K,C表示特征提取网络的卷积阶段数,也就是特征提取网络中的池化层的数量。

2.根据权利要求1所述的基于聚类算法改进特征金字塔网络的目标检测方法,其特征在于:所述步骤4)中候选框的设置具体如下:

4.1)设置候选框的基础大小

Lj层生成的候选框的基础大小设置为wj×hj,j=1,2,3,…,K;

4.2)设置候选框的长宽比

每一层Lj,j=1,2,3,…,K,生成的候选框的长宽比设置为M种,具体为R'={rj|i=1,2,

3,…,M}。

说明书 :

基于聚类算法改进特征金字塔网络的目标检测方法

技术领域

[0001] 本发明涉及图像目标检测技术领域,具体涉及一种针对小目标、多尺度目标、长宽比变化范围大的目标检测的基于聚类算法改进特征金字塔网络的目标检测方法。

背景技术

[0002] 信息的存在的类型多种多样,特别的,以图像形式存在的信息显得尤为重要,相对于文本、音频等信息,图像显得更加直观,包含更多的信息。充分提取图像的信息是未来信
息处理的一个重要方向,传统的提取图像信息的方式主要是人工判读,效率低下,随着科技
的发展,图像采集能力越来越强,图像数量呈指数级增长,人工的方式已经无法适应时代的
发展和实际情况,亟需开展利用机器智能判读图像的研究。
[0003] 目前大部分学者研究目标检测的方向主要集中在利用主流的检测模型和检测算法,解决本领域的目标识别算法,在各自的领域开展大量试验调整参数,从而训练一个当前
待检测对象集的模型,本质上讲,这些方法都是在研究主流检测模型的参数如何改进,而没
有从模型的结构调整上开展研究。
[0004] 现有的主流检测模型算法在应对小目标和多尺度目标时,尤其是面对一些非常规尺寸目标时,检测效果欠佳。在现实生活中有些目标(比如飞机、车辆)的外形长宽比大都介
于1:1到2:1之间,在检测时用正方形或对正方形进行微调就能很好的定位出目标的位置,
从而成功检测出目标,但对于一些特殊的目标(比如火车、桥梁、跑道等),目标的长宽比往
往非常大,还有一些目标(比如舰船)长宽比是在一个很大范围内波动,可以覆盖1:1到20:1
之间的几乎所有情况,对于这些目标,主流的检测算法很难准确定位目标的具体位置,从而
检测效果欠佳。

发明内容

[0005] 发明目的:为了克服现有技术中针对上述小目标、多尺度目标、长宽比变化范围大的目标检测方法中存在的不足和问题,提供一种基于聚类算法改进特征金字塔网络的目标
检测方法。
[0006] 技术方案:为实现上述目的,本发明提供一种基于聚类算法改进特征金字塔网络的目标检测方法,包括如下步骤:
[0007] 1)分析待检测领域目标几何特征模块采用K-means聚类算法分析该领域目标的像素点大小和外形长宽比两个几何特征;
[0008] 2)在构建基础检测网络主体架构模块中完成目标检测基础网络的主干网络构建;
[0009] 3)在动态调整特征金字塔网络模块中利用步骤1中的聚类分析目标像素点大小的聚类结果动态调整特征金字塔网络;
[0010] 4)在动态设置检测候选框模块中利用步骤1中的目标像素点大小的聚类结果和目标在图像中的长宽比的聚类结果动态设置候选框,完成目标检测。
[0011] 进一步地,所述步骤1中像素点大小和外形长宽比的分析具体如下:
[0012] A)聚类分析目标像素点大小
[0013] A1)用二维向量(w,h)记录一个目标的像素点大小,其中w表示目标长边的像素点个数,h表示目标短边的像素点个数,遍历训练集中所有图片,读取每张图像所有的对应的
标注框信息,计算每个目标的长度和宽度,形成原始的像素点集合S={(wi,hi)|i=1,2,
3,…,N},其中i表示训练集中目标序号,N表示训练集的目标的总数;
[0014] A2)采用K-means聚类算法对原始点的像素点集合S={(wi,hi)|i=1,2,3,…,N}进行聚类分析,聚类算法中的距离度量采用欧几里得距离,设置像素点类别个数为K(一般小
于5),聚类结果为S'={(wj,hj)|j=1,2,3,…,K},其中j表示类别序号,K表示像素点类别总
数,(wj,hj)表示第j个类别中所有像素点大小的中心;
[0015] A3)比较S'={(wj,hj)|j=1,2,3,…,K}中每类之间的差别,判别相邻两个类的中心对应的面积比是否在3.5:1到5.5:1之间,即3.5≤(wi+1×hi+1)/(wi×hi)≤5.5;如果满足
上述条件,完成目标像素点大小的聚类,形成聚类结果:
[0016] S'={(wj,hj)|j=1,2,3,…,K}
[0017] 否则调整K的取值,重新聚类计算;
[0018] B)聚类分析目标在图像中的长宽比
[0019] B1)原始点的像素点集合S={(wi,hi)|i=1,2,3,…,N}计算每个目标的长宽比,形成长宽比的集合R={ri|i=1,2,3,…,N},其中ri=wi/hi,i表示训练集中目标序号,N表示
训练集的目标的总数;
[0020] B2)采用K-means聚类算法对长宽比集合R={ri|i=1,2,3,…,N}进行聚类分析,聚类算法中的距离度量采用欧几里得距离,设置长宽比类别个数为M,聚类结果为R'={rj|
i=1,2,3,…,M},其中j表示类别序号,M表示像素点类别总数,rj表示第j个类别中所有目
标长宽比的均值。
[0021] 进一步地,所述步骤2中主干网络构建的具体步骤如下:
[0022] 2.1)选取网络架构:采用FasterR-CNN的主体架构,该架构包括特征提取网络、候选框生成网络(RPN)和回归输出层;
[0023] 2.2)搭建特征提取网络:采用残差网络ResNet101的改进型结构ResNetXt,该架构支持多通道分组计算,实现并行计算,提高特征提取速率;
[0024] 2.3)构建基础的特征金字塔网络(FPN),该网络的每一层对应特征提取网络的每个卷积阶段,特征金字塔的每一层都与候选框网络相连。
[0025] 进一步地,所述步骤3具体如下:
[0026] 聚类结果为S'={(wj,hj)|j=1,2,3,…,K},根据最终的类别数量K的取值抑制特征金字塔网络部分层生成候选框的功能,如果K的取值等于或者大于基础网络中特征金字
塔网络的层数,则不抑制,需要保留的特征金字塔网络的层序号计算公式如下:
[0027]
[0028] 其中,Lj表示保留的特征金字塔网络的层序号,j=1,2,3,…,K,C表示特征提取网络的卷积阶段数,也就是特征提取网络中的池化层的数量。
[0029] 进一步地,所述步骤4中候选框的设置具体如下:
[0030] 4.1)设置候选框的基础大小
[0031] Lj层生成的候选框的基础大小设置为wj×hj,j=1,2,3,…,K;
[0032] 4.2)设置候选框的长宽比
[0033] 每一层Lj,j=1,2,3,…,K,生成的候选框的长宽比设置为M种,具体为R'={rj|i=1,2,3,…,M}。
[0034] 本发明方法中包括分析待检测领域目标几何特征、构建基础检测网络主体架构、动态调整特征金字塔网络、动态设置检测候选框四个模块,本发明方法在构建检测的网络
模型时充分考虑了待检测领域对象的几何特征,动态设置网络结构,既提高了模型的训练
效率,缩短了训练时间,也提高了模型的泛化能力,提高了检测小目标和多尺度目标的准确
度。
[0035] 有益效果:本发明与现有技术相比,基于聚类算法改进特征金字塔网络的目标检测算法,在构建检测网络模型之前利用聚类算法对待检测领域目标几何特征进行分析,实
现动态构建网络模型,其优点如下:
[0036] 1、根据目标的像素点大小,动态构建特征金字塔网络,可以根据实际情况降低网络的复杂度,减少模型的参数,提高训练的速度和模型的精度;
[0037] 2、根据待检测目标的外貌几何特征,动态设置候选框的长宽比,降低候选框回归的复杂度和难度,提高检测定位的精度;
[0038] 3、该方法给出了一种动态构建检测网络模型的机制,可以适用于不同的目标领域,在面对新领域时可以快速构建合适的模型;
[0039] 4、在模型在检测小目标、多尺度目标、长宽比变化范围大的目标,检测效果较主流的检测方法有明显的提升。

附图说明

[0040] 图1为基础的基于特征金字塔网络的目标检测网络架构图;
[0041] 图2为本实施例中舰船目标检测结果示意图。

具体实施方式

[0042] 下面结合附图和具体实施例,进一步阐明本发明。
[0043] 本发明提供一种基于聚类算法改进特征金字塔网络的目标检测方法,下面结合武汉大学发布的DOTA数据集(DOTA:A Large-scale Dataset for Object Detection in 
Aerial Images)中的舰船目标为例详细阐述本方面的实施步骤,包括如下步骤:
[0044] 1)分析待检测领域目标几何特征模块采用K-means聚类算法分析该领域目标的像素点大小和外形长宽比两个几何特征,像素点大小和外形长宽比的分析具体如下:
[0045] A)聚类分析目标像素点大小
[0046] A1)用二维向量(w,h)记录一个目标的像素点大小,其中w表示目标长边的像素点个数,h表示目标短边的像素点个数,遍历训练集中所有图片,读取每张图像所有的对应的
标注框信息,计算每个目标的长度和宽度,形成原始的像素点集合S={(wi,hi)|i=1,2,
3,…,N},其中i表示训练集中目标序号,N表示训练集的目标的总数。本实施例中从DOTA数
据集中提取出包含舰船目标的影像图片,随机选取大约80%的图片作为训练集,共选取320
张,然后根据标注信息计算每张图片上的舰船目标的长宽像素点,这里舰船目标总数为
18256,即N=18256;
[0047] A2)采用K-means聚类算法对原始点的像素点集合S={(wi,hi)|i=1,2,3,…,N}进行聚类分析,聚类算法中的距离度量采用欧几里得距离,设置像素点类别个数为K(一般小
于5),聚类结果为S'={(wj,hj)|j=1,2,3,…,K},其中j表示类别序号,K表示像素点类别总
数,(wj,hj)表示第j个类别中所有像素点大小的中心;
[0048] A3)比较S'={(wj,hj)|j=1,2,3,…,K}中每类之间的差别,判别相邻两个类的中心对应的面积比是否在3.5:1到5.5:1之间,即3.5≤(wi+1×hi+1)/(wi×hi)≤5.5;如果满足
上述条件,完成目标像素点大小的聚类,形成聚类结果:
[0049] S'={(wj,hj)|j=1,2,3,…,K}
[0050] 否则调整K的取值,重新聚类计算,在本实施案例里,首先设置K=5,开始进行聚类计算,最终的计算结果是K=3,聚类结果是S'={(50,17),(107,39),(226,71)};
[0051] B)聚类分析目标在图像中的长宽比
[0052] B1)原始点的像素点集合S={(wi,hi)|i=1,2,3,…,N}计算每个目标的长宽比,形成长宽比的集合R={ri|i=1,2,3,…,N},其中ri=wi/hi,i表示训练集中目标序号,N=
18256,表示训练集的舰船目标的总数;
[0053] B2)采用K-means聚类算法对长宽比集合R={ri|i=1,2,3,…,N}进行聚类分析,聚类算法中的距离度量采用欧几里得距离,设置长宽比类别个数为M,聚类结果为R'={rj|
i=1,2,3,…,M},其中j表示类别序号,M表示像素点类别总数,rj表示第j个类别中所有目
标长宽比的均值,在本实施案例中,设置M=3,开始聚类计算,聚类初始结果是{r1=2.1,r2
=3.3,r3=4.2},四舍五入后的结果为R'={2,3,4}。
[0054] 2)在构建基础检测网络主体架构模块中完成目标检测基础网络的主干网络构建,主干网络构建的具体步骤如下:
[0055] 2.1)选取网络架构:采用FasterR-CNN的主体架构,该架构包括特征提取网络、候选框生成网络(RPN)和回归输出层;
[0056] 2.2)搭建特征提取网络:采用残差网络ResNet101的改进型结构ResNetXt,该架构支持多通道分组计算,实现并行计算,提高特征提取速率;
[0057] 2.3)构建基础的特征金字塔网络(FPN),该网络的每一层对应特征提取网络的每个卷积阶段,特征金字塔的每一层都与候选框网络相连。
[0058] 本实施例中经过此步骤后,得到如图1所示的基础的基于特征金字塔网络的目标检测网络架构图。
[0059] 3)在动态调整特征金字塔网络模块中利用步骤1中的聚类分析目标像素点大小的聚类结果动态调整特征金字塔网络,具体如下:
[0060] 聚类结果为S'={(wj,hj)|j=1,2,3,…,K},根据最终的类别数量K的取值抑制特征金字塔网络部分层生成候选框的功能,如果K的取值等于或者大于基础网络中特征金字
塔网络的层数,则不抑制,需要保留的特征金字塔网络的层序号计算公式如下:
[0061]
[0062] 其中,Lj表示保留的特征金字塔网络的层序号,j=1,2,3,…,K,C表示特征提取网络的卷积阶段数,也就是特征提取网络中的池化层的数量,本实施例中ResNet101的变形网
络ResNetXt中C=5,舰船目标像素点聚类结果为S'={(50,17),(107,39),(226,71)},K=
3,计算特征金字塔网络应保留的层数为L1=1,L2=2,L3=3。
[0063] 5)在动态设置检测候选框模块中利用步骤1中的目标像素点大小的聚类结果和目标在图像中的长宽比的聚类结果动态设置候选框,完成目标检测。
[0064] 其中,候选框的设置具体如下:
[0065] 4.1)设置候选框的基础大小
[0066] Lj层生成的候选框的基础大小设置为wj×hj,j=1,2,3,…,K,在本实施案例中,K=3,候选框的基础大小为32x32,64x64,128x128;
[0067] 4.2)设置候选框的长宽比
[0068] 每一层Lj,j=1,2,3,…,K,生成的候选框的长宽比设置为M种,具体为R'={rj|i=1,2,3,…,M}。在本实施案例中,R'={2,3,4},最终候选框的长宽比为{0.25,0.33,0.5,1,
2,3,4},共计7中,其中0.25与4是成对出现的,对应R'中的4,0.33与3对应R'中的3,0.5与2
对应R'中的2。
[0069] DOTA数据集上的舰船目标排布密集、目标外形的长宽比变化大、舰船目标像素点大小覆盖范围广、影像分辨率低,一般的检测模型在该数据集上的检测准确率不高,按照本
实施例上述步骤构建和设置的模型经过训练后形成最终用于检测的模型,该模型在DOTA的
舰船数据集上对舰船目标的检测准确度达到了94%以上,比改进前的模型在检测准确度方
面提高了3.2%,具体的检测结果如附图2所示。