我报名参加金石计划1期挑战——瓜分10万奖池,这是我的第21篇文章,点击查看活动详情
导读
使用VGG+Conv-LSTM,超越BTBCRL,DeFusionNet和DHDE。
离焦模糊检测的例子
本文综述了中国民航大学的离焦模糊检测方法,该方法采用Conv-LSTM, MsFEN+MsBEN。文章摘要:
- 从同一个图像中提取不同大小的多尺度卷积特征
- 使用Conv-LSTMs将融合后的特征从上到下逐层融合,生成多尺度的模糊估计。
概要
- 多尺度特征抽取子网络 (MsFEN)
- 多尺度模糊检测子网络(MsBEN)
- 实验结果
1. 多尺度特征抽取子网络 (MsFEN)
多尺度特征抽取子网络 (MsFEN) + 多尺度模糊检测子网络(MsBEN)
- 用VGG16作为基础的特征提取器
- 去掉最后的pooling和两个全连接
- 用ImageNet的预训练权重进行初始化
- 剩下的5个卷积block用来抽取多尺度卷积特征,如上图,下面的表格显示了网络的细节
特征提取网络的细节
- 从3个尺度的图像中提取的特征具有不同的空间分辨率。
- I为输入图像,首先将I缩放到3个不同的尺度,记为I1,I2,I3,尺度为 320×320, 256×256和192×192。
- MsFEN用来提取多尺度的卷积特征。
- 在拼接z之前,用双线性差值来做上采样,缩放后的特征为:
- 在上采样之前用1x1的卷积来改变通道数量到64。
- 卷积层上使用Batch normalization (BN)和ReLU。
- F1convl, F2upl, 和 F3upl拼接起来,使用卷积层融合到一起来得到融合后的特征Fconvl:
通过拼接卷积特征,我们可以得到更加鲁棒的特征来克服模糊尺度的不确定性。
2. 多尺度模糊检测子网络(MsBEN)
2.1. MsBEN中使用Conv-LSTM
- 对于融合后的特征Fconv1-5,从上到下组合起来送到Conv-LSTMs中。
- 为了逐步的去细化模糊图,在l+1层中,将上采样后的模糊图和融合的特征Fconvl拼接起来,因为底层的特征包含了更多的结构化的信息。
- 然后,将拼接后的特征送到Conv-LSTM中去预测模糊图Bl。
- 其中, σ 是sigmoid激活函数。
- 使用Conv-LSTM层,顶层的模糊信息逐渐和底层的特征融合起来来产生准确的模糊检测结果。
通过Conv-LSTM5 (a)到Conv-LSTM1 (e)预测出来的模糊图
我们可以看到模糊图是逐渐细化的。
2.2. Conv-LSTM
Conv-LSTM的细节. (a)Conv-LSTM的过程. (b)Conv-LSTM的内部计算
- Conv-LSTM从传统的全连接LSTM设计而来,用来提取空间相关性特征。
- 这个层使用卷积操作来代替点乘来编码空间信息。
- 和LSTM类似,Conv-LSTM有3个门,分别叫做输入门it,输出门ot,遗忘门ft,用来控制信息流。
- Cell状态Ct和隐藏状态Ht通过it, ot 以及 ft的值来更新。
- Xt为Conv-LSTM的每个时间步的输入。
- 如果it被激活,输入被累加到Ct中。
- 如果ft被激活,那么过去的状态Ct-1会被丢掉。
- Ct到Ht的信息的传播是由输出门ot来控制的。
- 时间步t的更新过程:
- 其中 * 是卷积,这里,最大的时间步为3。
- 在最后的时间步上,在隐藏状态中卷积层使用1×1×1的卷积核,得到预测的模糊图。
2.3. 多层损失
- 每个尺度的模糊图都是有监督的。
- 使用交叉熵损失。
- 精确度 LP,召回率 LR,F值LFβ,以及MAE损失LMAE都是损失函数的一部分:
- 其中α1, α2, α3, 和α4 都设置为0.1。
3. 实验结果
3.1. 生成的模糊数据
合成离焦模糊图像的例子及其对应的GT
- 使用了来自Berkeley segmentation dataset (BSDS)、uncompressed color image dataset (UCID)和PASCAL 2008 dataset的2000张图像。
- 高斯模糊核大小7×7,σ = 2,模糊应用于顶部,底部,左,右半边图像区域各5次。
- 这样,每幅图像可以生成20幅模糊图像。
总共生成了40000张模糊图像用于预训练。
- 预训练之后,在真实数据上进行微调。
3.2. 定性分析
不同的模糊检测器上的可视化比较
- 场景1包含了很大的同质化区域。
- SS和DeFusionNet在第一个和第三个图像上对于大的同质化区域效果不好。
- DHDE无法在所有的图像中抑制模糊的背景中的值。
- HiFST对边缘有模糊。
- 我们提出的方法对于同质化区域的结果很准。
- 场景2包含了聚类化的背景。
- 所有参与比较的模糊检测器都将亮点当成了尖锐的区域(非模糊区域),但是我们提出的方法正确的检测出了非模糊区域。
- 在第二张图像上,进行比较的方法对于玩具娃娃的身体检测的不好,而我们提出的方法可以检测出完整的区域。
- 场景3的前景和背景很相似。
- BTBCRL无法从模糊的背景中检测出真实的清晰的区域。
- HiFST将模糊的背景认为是清晰的。
- SS 和 DHDE错误的把模糊的背景分类成清晰的区域。
- 我们提出的方法能够得到正确的结果。
3.3. 定量分析
不同的模糊检测器的F0.3, F1和MAE得分的定量对比
- CUHK1的第一部分和DeFusionNet是一样的。
- CUHK2的第二部分由BTBCRL提出。
- 提出的方法在DUT和CUHK2数据集上到了最高的F-measure值和最低的MAE值。
- 在CUHK1上,提出的方法排第二位,DeFusionNet排第一位。
PR曲线,精确度,召回率和F-measure的对比
- 精确度,召回率和F-meature值都是最高的,由于结果解决二值化的模糊图,所以对于精确度和召回率对于阈值不是很明显。
3.4. 运行时间
使用320x320的尺寸,一张图像上的运行时间的对比
- 提出的方法比DeFusionNet略慢。
- 提出的方法处理一张图像0.06s,比其他的方法都快。
3.5. 消融实验
不同的VGG上的表现
- 使用更深的网络可以提升表现,但是计算量也更多。
- VGG16和VGG19的效果差不多,但是时间会更快。
- VGG16用于我们的基础特征提取器。
不同的图像尺度的组合的效果
- 只使用2个尺度作为输入, 比如Net-S²,在DUT数据集上无法提升效果。
- 但是,Net-S³,使用3个尺度要比Net-S¹和Net-S²更好。
Conv-LSTM的细节,Single-Conv和Multi-Conv
- 第一种变体是将Conv-LSTM替换为一个卷积层,叫做Single-Conv。
- 第二种变体是将Conv-LSTM替换为多个卷积层,叫做Multi-Conv。
Conv-LSTM的效果,Single-Conv和Multi-Conv
- 我们发现,使用Conv-LSTM层的所有评价标准都优于使用卷积层的。