提出了一种特征增强的SSD算法(FESSD),
浅层网络:Conv4_3, FC7;
深层网络:Conv8_2, Conv9_2, Conv10_2, Conv11_2;
Inception
(title: Going deeper with convolutions)操作和残差网络ResNet
(tiltle: Deep residual learning for image recognition)的思想设计浅层特征增强模块(SFE)对Conv4_3
、FC7
层进行特征增强操作;Dual Path Network
(title: Dual path networks)的思想,设计深层特征增强模块(DFE)替换原始SSD算法中的Conv8_2
、Conv9_2
、Conv10_2
、Conv11_2
,并命名为DFE_8
、DFE_9
、DFE_10
;两处改进模块SFE和DFE:
Concate
特征融合操作并与残差分支的 1 × 1 1 \times 1 1×1卷积结果进行Add
特征融合操作。Dual Path Network
的思想,并结合残差网络ResNet
和密集网络DenseNet
对特征提取的特点,不仅深化了整个网络,而且具有从浅层到深层的隐式的特征融合,使得深层网络的特征信息更加丰富,同时使用分组卷积加快模块特征处理效率。为实现对遥感图像中不同尺度的目标进行检测,设计不同纵横比的候选框进行匹配以适应不同尺度大小的遥感图像目标,假设选取 m m m个层的卷积特征用于目标,则第 i i i层的特征图候选框尺寸为
S i = S m i n + S m a x − S m i n m − 1 ( i − 1 ) i ∈ [ 1 , m ] S_i = S_{min} + \frac {S_{max} - S_{min}}{m-1}(i-1) \quad \quad \quad i \in [1, m] Si=Smin+m−1Smax−Smin(i−1)i∈[1,m]
式中, S m i n S_{min} Smin和 S m a x S_{max} Smax分别取值为 0.2 0.2 0.2和 0.95 0.95 0.95,表示浅层和深层的候选框与特征图的尺度系数,候选框的宽和高的比取值为 a r ∈ { 1 , 2 , 3 , 1 / 2 , 1 / 3 } a_r \in \{ 1, 2, 3, 1/2, 1/3 \} ar∈{1,2,3,1/2,1/3},则候选框的宽度为 w i = S i ⋅ a r w_i = S_i \cdot \sqrt{a_r} wi=Si⋅ar,候选框的高为 h i = S i / a r h_i = S_i / \sqrt{a_r} hi=Si/ar,候选框的中心坐标为 ( i + 0.5 ∣ f k ∣ , j + 0.5 ∣ f k ∣ ) (\frac {i+0.5}{|f_k|}, \frac {j+0.5}{|f_k|}) (∣fk∣i+0.5,∣fk∣j+0.5), i , j ∈ [ 0 , ∣ f k ∣ ] i, j \in [0, |f_k|] i,j∈[0,∣fk∣],其中 ∣ f k ∣ |f_k| ∣fk∣表示第 k k k个特征的尺寸。
此外,针对模型训练过程中遥感图像正、负样本划分不平衡导致模型退化的问题,本文在SSD算法损失函数的基础上结合聚焦分类损失函数
对模型进行优化训练,表示为
L ( x , c , p , l , g ) = 1 N [ L f 1 ( x , c , p ) + a L l o c ( x , l , g ) ] L(x, c, p, l, g) = \frac {1}{N} [L_{f1}(x, c, p) + aL_{loc}(x, l, g)] L(x,c,p,l,g)=N1[Lf1(x,c,p)+aLloc(x,l,g)]
式中, N N N表示与真实框相匹配的候选框的个数, x x x为输入图像, c c c为目标类别, p p p为预测类别概率, l l l为候选框, g g g代表真实的标签框, a a a为两者的权重, L f 1 ( x , c , p ) L_{f1}(x, c, p) Lf1(x,c,p)和 L l o c ( x , l , g ) L_{loc}(x, l, g) Lloc(x,l,g)分别为聚焦分类损失和边框回归损失。其中, L l o c ( x , l , g ) L_{loc}(x, l, g) Lloc(x,l,g)借鉴了Faster R-CNN的位置回归函数,表示为
L l o c ( x , l , g ) = ∑ i ∈ P o s N ∑ m ∈ c x , c y , w , h x i j k s m o o t h L 1 ( l i m − g j m ) L_{loc}(x, l, g) = \sum \limits ^{N} _{i \in Pos} \sum \limits _{m \in {c_x, c_y, w, h}} x^{k}_{ij} smooth_{L_1}(l^m _i - g ^m _j) Lloc(x,l,g)=i∈Pos∑Nm∈cx,cy,w,h∑xijksmoothL1(lim−gjm)
式中, x i j k x^{k}_{ij} xijk代表针对类别 k k k,第 i i i个候选框与第 j j j个真实框的结果是否保持一致,若一致则取值为1,否则取值为0. l i m l ^m _i lim表示候选框的值, g j m g ^m _j gjm为真实框的值。
L f 1 ( x , c , p ) L_{f1}(x, c, p) Lf1(x,c,p)结合聚焦分类损失函数采用交叉熵计算损失,表示为
L f 1 ( x , c , p ) = − ∑ i ∈ P o s N x i j k p l o g ( c i k ) − ∑ i ∈ n e g ( 1 − p ) l o g ( c j 0 ) L_{f1}(x, c, p) = - \sum \limits ^N _{i \in Pos} x^k _{ij} p log(c ^k _i) - \sum \limits _{i \in neg}(1-p)log(c ^0 _j) Lf1(x,c,p)=−i∈Pos∑Nxijkplog(cik)−i∈neg∑(1−p)log(cj0)
式中, c j 0 c ^0 _j cj0代表正确且类别为背景预测框的概率, c i k c ^k _i cik为利用Softmax函数计算的概率值。