本发明涉及遥感图像目标检测技术领域,尤其涉及一种基于深度学习的遥感图像飞机检测模型及方法。
背景技术:
飞机作为民用生活和军事活动不可或缺的重要物体之一,在航空领域中发挥着重要的作用,因此对飞机的目标检测具有相当大的指导意义。另一方面,遥感图像目标检测的难度与物体所处的背景环境有着很大的关联,处于广阔机场范围领域内的飞机,以机场为背景,检测目标与背景之间存在严重的差异性,会造成背景和检测目标之间的平衡性失调,此外由于飞机的尺寸普遍偏小,给飞机目标检测增加了很大的难度。
传统的目标检测方法(如violap,jonesm.rapidobjectdetectionusingaboostedcascadeofsimplefeatures[c]//proceedingsofthe2001ieeecomputersocietyconferenceoncomputervisionandpatternrecognition.cvpr2001.ieee,2001,1:i-i;violap,jonesmj.robustreal-timefacedetection[j].internationaljournalofcomputervision,2004,57(2):137-154.)通过手动设计的特征,对图像进行特征的提取,然后将提取出来的特征输入到网络模型中,通过滑动窗口的机制进行候选框的选取,最后再将选取的候选框通过分类器进行类别的分类。然而,这种手动提取的特征往往不具备鲁棒性,难以适当地描述图像的特征,并且滑动窗口的提取策略相当复杂和耗时。
技术实现要素:
针对传统目标检测方法存在手动提取特征困难并且提取出来的特征鲁棒性不强的问题,本发明提供一种基于深度学习的遥感图像飞机检测模型及方法,实验证明,本发明在遥感图像飞机检测中precision、recall、f1-score以及map等各项性能指标均有所提高。
一方面,本发明提供一种基于深度学习的遥感图像飞机检测模型,包括下采样单元、上采样单元、特征融合单元和检测单元;所述下采样单元的输出和所述上采样单元的输出作为所述特征融合单元的输入,所述特征融合单元的输出作为检测单元的输入;其中:
所述下采样单元包括依次相连接的cbl模块、resunit*1卷积块、resunit*2卷积块、第一resunit*8卷积块、第二resunit*8卷积块、resunit*4卷积块和cbl*5模块;其中,resunit*1卷积块、resunit*2卷积块、第一resunit*8卷积块、第二resunit*8卷积块、resunit*4卷积块分别对应5次下采样操作,每次下采样操作均使得输入的遥感图像的大小缩小为原来的1/2;
所述上采样单元包括3层结构相同的上采样模块;每层所述上采样模块均包括依次连接的cbl模块和upsample模块;
所述特征融合单元包括3层结构相同的融合模块,每层所述融合模块均包括依次连接的concat模块和cbl*5模块;
所述检测单元包括4层结构相同的检测分支网络;每个所述检测分支网络均包括依次相连接的cbl*5模块、cbl模块和conv模块;
其中,resunit*n卷积块包括1个cbl模块和n个子卷积块;每个所述子卷积块均包括依次相连接的2个cbl模块和1个add模块;所述resunit*n卷积块中的cbl模块分别和每个所述子卷积块中的第一个cbl模块与add模块相连接;n个子卷积块之间并行连接;n=1、2、4和8;
所述cbl模块包括依次相连接的conv层、bn层和leakyrelu函数。
进一步地,将所述下采样单元中的cbl*5模块替换为依次相连接的cbl*3模块、dawm模块和cbl*3模块;所述dawm模块包括相互并行连接的第一分支网络、第二分支网络、第三分支网络和第四分支网络;所述第一分支网络、第二分支网络、第三分支网络和第四分支网络的输出结果共同再经过一个1*1的卷积核后与上一层网络的输出结果相加作为fileconcatenation的输入;其中:
所述第一分支网络包括1个1*1的卷积核;
所述第二分支网络包括依次相连接的1个1*1的卷积核和1个3*3的卷积核;
所述第三分支网络包括依次相连接的1个1*1的卷积核和2个3*3的卷积核;
所述第四分支网络包括依次相连接的1个1*1的卷积核和3个3*3的卷积核。
另一方面,本发明提供一种基于深度学习的遥感图像飞机检测方法,采用上述的遥感图像飞机检测模型,所述方法包括:
将待测遥感图像输入至遥感图像飞机检测模型;
所述下采样单元对所述待测遥感图像连续进行5次下采样操作,并将第五次下采样操作的输出结果作为所述检测单元中的第一层检测分支网络的输入;
所述上采样单元中的第一层上采样模块对第五次下采样操作的输出结果进行第一次上采样操作;
所述特征融合单元中的第一层融合模块对第一次上采样操作的输出结果和第四次下采样操作的输出结果进行特征融合,将第一层融合模块的输出结果分别作为所述上采样单元中的第二层上采样模块的输入和所述检测单元中的第二层检测分支网络的输入;
所述上采样单元中的第二层上采样模块对第一层融合模块的输出结果进行第二次上采样操作;
所述特征融合单元中的第二层融合模块对第二次上采样操作的输出结果和第三次下采样操作的输出结果进行特征融合,将第二层融合模块的输出结果分别作为所述上采样单元中的第三层上采样模块的输入和所述检测单元中的第三层检测分支网络的输入;
所述上采样单元中的第三层上采样模块对第二层融合模块的输出结果进行第三次上采样操作;
所述特征融合单元中的第三层融合模块对第三次上采样操作的输出结果和第二次下采样操作的输出结果进行特征融合,将第三层融合模块的输出结果作为所述检测单元中的第四层检测分支网络的输入。
本发明的有益效果:
(1)本发明引进了多尺度检测模型msdn,通过将图片划分成不同大小的检测网格,增大目标物体掉落在负责检测的网格的位置,从而提高目标物体的检测率。
(2)本发明提出了新的网络模块dawm,通过不同卷积核尺度的堆叠,在加深网络宽度和深度的同时,增强了网络对不同尺度的输出能力,同时引入残差结构,使得网络不会由于过深而导致梯度消失。
(3)本发明将dawm模块引入到msdn网络模型中,经过dawm模块泛化过的特征能够更好地提高网络的非线性化能力,在通过msdn网络模型的特征融合,可以将泛化的特征进行传递并进行特征融合,从而可以提高不同检测尺度的检测效果。
附图说明
图1为本发明实施例提供的基于深度学习的遥感图像飞机检测模型的结构图;
图2为本发明又一实施例提供的基于深度学习的遥感图像飞机检测模型的结构图;
图3为本发明实施例提供的dawm模块的结构图;
图4为本发明实施例提供的算法性能指标对比图;
图5为本发明实施例提供的实验数据对比图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种基于深度学习的遥感图像飞机检测模型,包括下采样单元、上采样单元、特征融合单元和检测单元;所述下采样单元的输出和所述上采样单元的输出作为所述特征融合单元的输入,所述特征融合单元的输出作为检测单元的输入;其中:
所述下采样单元包括依次相连接的cbl模块、resunit*1卷积块、resunit*2卷积块、第一resunit*8卷积块、第二resunit*8卷积块、resunit*4卷积块和cbl*5模块;其中,resunit*1卷积块、resunit*2卷积块、第一resunit*8卷积块、第二resunit*8卷积块、resunit*4卷积块分别对应5次下采样操作,每次下采样操作均使得输入的遥感图像的大小缩小为原来的1/2;
所述上采样单元包括3层结构相同的上采样模块;每层所述上采样模块均包括依次连接的cbl模块和upsample模块;
所述特征融合单元包括3层结构相同的融合模块,每层所述融合模块均包括依次连接的concat模块和cbl*5模块;
所述检测单元包括4层结构相同的检测分支网络;每个所述检测分支网络均包括依次相连接的cbl*5模块、cbl模块和conv模块;
其中,resunit*n卷积块包括1个cbl模块和n个子卷积块;每个所述子卷积块均包括依次相连接的2个cbl模块和1个add模块;所述resunit*n卷积块中的cbl模块分别和每个所述子卷积块中的第一个cbl模块与add模块相连接;n个子卷积块之间并行连接;n=1、2、4和8;
所述cbl模块包括依次相连接的conv层、bn层和leakyrelu函数。
本发明实施例提供的遥感图像飞机检测模型(multi-scaledetectionnetwork,简称为:msdn),通过使用不同的检测尺度进行目标的预测,将输入到网络模型的遥感图像划分成不同大小的网格,使得目标物体可以更大概率地掉落在负责检测的网格中去,达到可以检测不同大小物体的效果,降低目标物体检测的漏检率,从而实现多尺度目标检测的效果。
为了能够进一步提高检测模型的非线性化能力,提高检测模型的泛化能力,在上述实施例的基础上,如图2所示,本发明实施例还提供一种基于深度学习的遥感图像飞机检测模型,与上述实施例的不同之处在于,本发明实施例中,将所述下采样单元中的cbl*5模块替换为依次相连接的cbl*3模块、dawm模块和cbl*3模块;其中,如图3所示,所述dawm模块包括相互并行连接的第一分支网络、第二分支网络、第三分支网络和第四分支网络;
所述第一分支网络、第二分支网络、第三分支网络和第四分支网络的输出结果共同再经过一个1*1的卷积核后与上一层网络的输出结果相加作为fileconcatenation的输入;其中:
所述第一分支网络包括1个1*1的卷积核;所述第二分支网络包括依次相连接的1个1*1的卷积核和1个3*3的卷积核;所述第三分支网络包括依次相连接的1个1*1的卷积核和2个3*3的卷积核;所述第四分支网络包括依次相连接的1个1*1的卷积核和3个3*3的卷积核。
其中,2个3*3的卷积核相当于1个5*5的卷积核,3个3*3的卷积核相当于1个7*7的卷积核。
本发明实施例提供的基于深度学习的遥感图像飞机检测模型,引入新的网络模块dawm(deeperandwidermodule),将之命名为muti-scalerefineddetectionnetwork(msrdn)模型。该检测模型通过dawm模块中的不同卷积核尺度的堆叠,在加深网络宽度和深度的同时,增强了网络对不同尺度的输出能力,同时引入残差结构,使得网络不会由于过深而导致梯度消失。
对应上述的基于深度学习的遥感图像飞机检测模型,本发明实施例还提供一种基于深度学习的遥感图像飞机检测方法,所述方法包括:
将待测遥感图像输入至遥感图像飞机检测模型;
所述下采样单元对所述待测遥感图像连续进行5次下采样操作,并将第五次下采样操作的输出结果作为所述检测单元中的第一层检测分支网络的输入;
所述上采样单元中的第一层上采样模块对第五次下采样操作的输出结果进行第一次上采样操作;
所述特征融合单元中的第一层融合模块对第一次上采样操作的输出结果和第四次下采样操作的输出结果进行特征融合,将第一层融合模块的输出结果分别作为所述上采样单元中的第二层上采样模块的输入和所述检测单元中的第二层检测分支网络的输入;
所述上采样单元中的第二层上采样模块对第一层融合模块的输出结果进行第二次上采样操作;
所述特征融合单元中的第二层融合模块对第二次上采样操作的输出结果和第三次下采样操作的输出结果进行特征融合,将第二层融合模块的输出结果分别作为所述上采样单元中的第三层上采样模块的输入和所述检测单元中的第三层检测分支网络的输入;
所述上采样单元中的第三层上采样模块对第二层融合模块的输出结果进行第三次上采样操作;
所述特征融合单元中的第三层融合模块对第三次上采样操作的输出结果和第二次下采样操作的输出结果进行特征融合,将第三层融合模块的输出结果作为所述检测单元中的第四层检测分支网络的输入。
具体地,结合图1和图2所示的检测模型,将遥感图像输入到检测模型中以后,遥感图像会经过若干层的卷积层进行特征提取,在进行特征提取的过程中,主干网络会对输入的遥感图像进行5次相应的下采样操作,每次下采样操作都会使输入的图像的大小变为原来的1/2,随着不断的下采样操作,图像特征的细节信息会减少,但是图像特征的语义信息会增多,在msdn网络模型中,resunit*1,resunit*2,resunit*8,resunit*8,resunit*4卷积块内部,分别对应着五次下采样操作。例如,若输入的初始遥感图像的大小为416*416,那么连续经过5次下采样操作之后,最终输出的遥感图像的大小为13*13。
为了能够充分地利用上下层的特征,本发明实施例将深层特征与浅层特征进行特征融合,即:将第五次下采样操作之后的结果,进行第一次上采样操作之后,与第四次下采样操作的结果进行特征融合;同理,将第四次下采样操作的结果与第三次下采样操作的结果,将第三次下采样操作的结果与第二次下采样操作的结果以同样的方式进行特征融合,将融合之后的特征进行目标的检测,融合之后的检测尺度分别对应着原图的1/4、1/8、1/16和1/32,分别对应着msdn(或msrdn)检测模型中的predict4(第四层检测分支网络)、predict3(第三层检测分支网络)、predict2(第二层检测分支网络)和predict1(第一层检测分支网络),通过使用不同的检测尺度进行目标的预测,将输入网络的图片划分成不同大小的网格,使得目标物体可以更大概率地掉落在负责检测的网格中去,达到可以检测不同大小物体的效果,降低目标物体检测的漏检率,从而实现多尺度目标检测的效果。
可以理解,在采用msrdn检测模型进行飞机检测时,通过dawm模块中不同的卷积核进行特征提取,对输入的图像进行特征的泛化,可以使得检测模型的感知野进一步扩大,将泛化之后的特征传递到不同的检测尺度当中去,泛化之后的特征可以大幅度地提高检测尺度的准确性,在提高网络模型检测结果的同时,从而降低目标物体的漏检率;同时dawm模块中使用了残差连接,可以避免随着卷积层堆叠太多而网络层数变深所导致的梯度消失或者梯度爆炸问题的出现,从而不会影响网络的反向传播。
为了验证本发明提供的检测模型及方法的有效性,本发明还提供有以下实验,具体如下:
采用遥感图像飞机数据集rsod-dataset上进行训练和测试,其中该数据集包括446张飞机图像,总共包含4993个飞机物体,训练集和测试集按照4比1的比例进行随机划分;
实验平台采用的是操作系统ubuntu16.4.0,处理器为intel(r)xeon(r)silver4114cpu@2.20ghz,显卡为两块8g运行内存的quadrop4000;
通过与yolov3目标检测算法进行对比,采用precision、recall、f1-score、map等性能指标作为评价算法性能的标准,算法性能指标对比图如图4所示。从图4中可以明显看出,本发明提供的检测模型及方法在遥感图像飞机检测中precision、recall、f1-score以及map等各项性能指标均有所提高;
实验数据对比图如图5示,其中方框为算法检测出来的物体,圆框为算法漏检的物体,从图中可以明显地看出来,yolov3算法漏检了部分小目标,并且存在重复的框选,而msdn算法检测出来了这些小目标,msrdn算法在msdn算法的基础上提高了部分小目标的精准率,从而使得小目标检测不出来,漏检率高等问题得到了改善。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。