1.一种基于递归解码器的显著性检测方法,其特征在于包括以下步骤:
(1)获取数据集与检测标签:
获取显著性检测公开数据集及对应的检测标签;
(2)构建检测模型,该模型由特征提取器、递归解码器RD‑1和RD‑2、边缘强化模块ER‑1和ER‑2、整体注意力模块HA构成,具体构建过程包括以下步骤:(2‑a)构建特征提取器,以ResNet‑50作为特征提取器的基础网络;所构建的特征提取器共分五层:第一层,即Res1,由单层卷积模块构成;第二层,即Res2,由一个池化层和三层残差模块构成;第三层,即Res3,由四层残差模块构成;第四层包括Res4‑1和Res4‑2,二者拥有相同的结构,都由六层残差模块构成,第五层包括Res5‑1和Res5‑2,二者也拥有相同的结构,都由三层残差模块构成;第四层和第五层为双分支结构,其中第四层的Res4‑1和第五层的Res5‑1串联构成第一个分支,第四层的Res4‑2和第五层的Res5‑2串联构成第二个分支;
输入图像经过Res1处理,获得三维特征图f1_1、f1_2和f1_3,且f1_1=f1_2=f1_3;f1_3输入Res2获得三维特征图f2_1、f2_2和f2_3,且f2_1=f2_2=f2_3;f2_3输入Res3获得三维特征图f3_1、f3_2和f3_3,且f3_1=f3_2=f3_3;f3_3依次经过第一个分支的Res4‑1和Res5‑1处理后分别获得三维特征图f4_1和f5_1;f3_3与整体注意力模块HA的输出结果通过逐像素相乘实现加权,加权结果依次经过第二个分支的Res4‑2和Res5‑2处理后分别获得三维特征图f4_2和f5_2;HA由单层卷积构成,它以递归解码器RD‑1的输出结果作为输入;
(2‑b)构建递归解码器RD‑n,该解码器由长依赖模块LRDM、感受野模块RFB、子解码器1、子解码器2、子解码器3和卷积模块Conv2构成;将步骤(2‑a)获取的特征图f2_n、f3_n、f4_n和f5_n分别作为递归解码器RD‑n的输入1、输入2、输入3和输入4,n=1,2;fi_n依次经过LRDM与RFB处理后得到 其中i=2,3,4,5;将 和 作为子解码器1的输入,得到输出结果mask1_n,将mask1_n和 作为子解码器2的输入,得到输出
结果mask2_n,将mask2_n和 作为子解码器3的输入,得到输出结果
mask3_n,将mask3_n作为卷积模块Conv2的输入,得到粗特征图mapn,即为递归解码器RD‑n的输出结果;
该步骤中的长依赖模块LRDM和子解码器分别构建如下:
(2‑b‑1)构建长依赖模块LRDM;以步骤(2‑a)获得的特征图fi_n作为输入,经该模块的通道维度自适应均值池化层处理并进行特征展开后,获得一维特征,将一维特征输入全连接层后,经过激活函数与特征逆展开处理,再与特征图fi_n进行逐像素相乘操作,得到LRDM的输出;其中i=2,3,4,5,n=1,2;
(2‑b‑2)构建子解码器,三个子解码器都具有相同的结构,由递归池化模块RP、递归上采样模块RU、上采样模块Up、通道注意力模块CA、卷积模块Conv1和拼接层构成;其中递归池化模块RP由池化层、卷积层和激活层构成,递归上采样模块RU由上采样层、卷积层和激活层构成;在子解码器1、2、3中,分别以直接输入到拼接层的特征 为基准特征,RP和RU分别对来自RFB的输入特征进行以基准特征尺寸为参考的尺度归一化;归一化后的特征与基准特征拼接后,再与上采样模块Up的输出结果通过逐像素相乘运算实现加权,加权结果依次输入CA和Conv1后,得到子解码器的输出;
子解码器1中RP的输入为 与 RU和Up的输入都为 子解码器2中RP的输入为
RU的输入为 与 Up的输入为子解码器1的输出;子解码器3中RP的输入为零,RU
的输入为 与 Up的输入为子解码器2的输出;
(2‑c)构建边缘强化模块ER‑n,该模块由卷积块1和卷积块2构成,其中卷积块1由三层残差模块构成,卷积块2由五层卷积构成;将步骤(2‑a)得到的特征图f1_n经卷积块1处理后,与步骤(2‑b)得到的粗特征图mapn进行逐像素相加,再经卷积块2处理后,得到显著性检测图,其中n=1,2;
(3)构建损失函数:
构建如下混合损失函数Lmix:
Lmix=LBCE+LMSSIM+LDice
其中LBCE为二元交叉熵损失,LMSSIM为平均结构相似性损失,LDice为Dice损失,分别定义如下:其中P表示预测图,Gt表示标签图,二者尺寸相同,H表示图的高,W表示图的宽,Pi,j和Gti,j分别表示P和Gt中(i,j)点的像素值,且Pi,j∈(0,1),Gti,j为整数且Gti,j∈[0,1],log表示求自然对数,表示逐像素相加操作, 表示逐像素相乘操作,C1与C2为实数常量,且C1、C2∈(0,0.1);M表示将标签图Gt以及对应的预测图P划分成子图对的个数, 为预测图P第k个子图的均值, 为标签图Gt第k个子图的均值, 为预测图P第k个子图的方差, 为标签图Gt第k个子图的方差, 为预测图P的第k个子图和标签图Gt的第k个子图之间的协方差;|·|表示求取图像中所有像素的和;对模型的两个分支的显著性检测图分别计算混合损失函数,以这两个混合损失函数之和作为模型的总损失函数,定义如下:Ltotal=Lmix‑1+Lmix‑2
其中,Lmix‑1和Lmix‑2分别表示第一和第二分支的显著性检测图与标签之间的混合损失,Ltotal表示模型的总损失函数;
(4)训练检测模型:
利用步骤(1)得到的数据集训练步骤(2)构建的检测模型,模型中的特征提取器使用预训练模型进行参数初始化;使用混合损失函数Lmix‑1和Lmix‑2分别衡量第一和第二分支的显著性检测图与标签之间的相似性;训练过程中使用Adam算法更新模型参数,并通过L‑2正则化作为约束,直到损失值不再下降,得到训练好的显著性检测模型;
(5)推理并获得检测结果:
将测试图像经过归一化处理之后,输入至训练好的显著性检测模型,该模型第二分支得到的显著性检测图即为最终的显著性检测结果。
2.如权利要求1所述的一种基于递归解码器的显著性检测方法,其特征在于,所述步骤(2‑b)中的子解码器,其作用是融合多尺度特征,获得显著性检测结果,具体计算公式为:mapn=Convn(mask3_n)
其中 表示步骤(2‑b)中得到的特征图, 表示中间特征图,i=2,3,4,5,j=3,4,
5,n=1,2,maskm_n表示第n个RD的第m个子解码器的输出结果,m=1,2,3, U(·)表示上采样操作,D(·)表示池化操作,CCm_n(·)表示第n个RD的第m个子解码器中的CA模块和Conv1模块依次执行的操作,Cat(·)表示通道维度拼接, 表示逐像素相乘,Convn(·)表示第n个RD的卷积模块Conv2执行的操作。
3.如权利要求1所述的一种基于递归解码器的显著性检测方法,其特征在于,所述步骤(2‑b‑1)中的长依赖模块LRDM,用于为多尺度特征建立跨空间长依赖关系,消除卷积操作所导致的语义信息的空间割裂,具体计算公式为:Mo=R(AdpAvgPool(fi_n))
Ml=ρ(MLP(Mo))
其中fi_n表示步骤(2‑a)中得到的三维特征图,Mo与Ml为一维中间特征图,AdpAvgPool(·)表示自适应均值池化,将输入的三维特征图通过通道维度池化降维为二维特征图,R‑1(·)表示特征展开,R (·)表示特征逆展开,MLP(·)表示全连接网络,p(·)表示sigmoid激活函数, 表示逐像素相乘。