摘要
本文使用HWD改进下采样,在YoloV8的测试中实现涨点。
论文解读
在卷积神经网络(CNNs)中,极大池化或跨行卷积等下采样操作被广泛用于聚合局部特征、扩大感受野和最小化计算开销。然而,对于语义分割任务,在局部邻域上汇集特征可能会导致重要空间信息的丢失,这对于逐像素预测至关重要。为了解决这个问题,作者引入了一个简单而有效的下采样操作,称为基于Haar小波的下采样(HWD)模块。该模块可以很容易地集成到CNN中,以增强语义分割模型的性能。HWD的核心思想是利用Haar小波变换降低特征图的空间分辨率,同时尽可能多地保留信息。所提出的HWD模块能够(1)有效地提高不同CNN架构下不同模态图像数据集的分割性能;(2)与传统下采样方法相比,可以有效降低信息的不确定性。
亮点:
• 为卷积神经网络(CNNs)提出了一种新颖的基于小波的下采样模块(HWD)。首次尝试探索在深度卷积神经网络(DCNNs)的下采样阶段禁止(或阻碍)信息丢失的可行性,以改善语义分割任务的性能。
• 探索了卷积神经网络中信息不确定性的度量方法,并提出了一种新的指标,即特征熵指数(FEI),用于评估下采样特征图与预测结果之间的信息不确定性或特征重要性。
• 提出的HWD模块可以直接替换跨行卷积或池化层,而不会显著增加计算开销,并且可以轻松地集成到当前的分割架构中。与七种最先进的分割方法相比,综合实验证明了HWD模块的有效性。
过大量的实验证明,本研究提出的下采样新方法可以轻松的整合到目前主流的深度学习语义分割模型中,在多个公开及私有数据集中都获得分割性能的显著提升,且整体计算效率没有显著区别。此外,对采样后的特征图质量进行独立评估表明,相对于传统的下采样操作,本研究提出的无损下采样技术在分割模型中保留了目标物体的更多的上下文信息,从而间接证明了下采样操作中最大限度保留特征信息对于深度学习语义分割任务的重要性。
YoloV8官方结果
YOLOv8l summary (fused): 268 layers, 43631280 parameters, 0 gradients, 165.0 GFLOPsClass Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 29/29 [all 230 1412 0.922 0.957 0.986 0.737c17 230 131 0.973 0.992 0.995 0.825c5 230 68 0.945 1 0.995 0.836helicopter 230 43 0.96 0.907 0.951 0.607c130 230 85 0.984 1 0.995 0.655f16 230 57 0.955 0.965 0.985 0.669b2 230 2 0.704 1 0.995 0.722other 230 86 0.903 0.942 0.963 0.534b52 230 70 0.96 0.971 0.978 0.831kc10 230 62 0.999 0.984 0.99 0.847command 230 40 0.97 1 0.995 0.811f15 230 123 0.891 1 0.992 0.701kc135 230 91 0.971 0.989 0.986 0.712a10 230 27 1 0.555 0.899 0.456b1 230 20 0.972 1 0.995 0.793aew 230 25 0.945 1 0.99 0.784f22 230 17 0.913 1 0.995 0.725p3 230 105 0.99 1 0.995 0.801p8 230 1 0.637 1 0.995 0.597f35 230 32 0.939 0.938 0.978 0.574f18 230 125 0.985 0.992 0.987 0.817v22 230 41 0.983 1 0.995 0.69su-27 230 31 0.925 1 0.995 0.859il-38 230 27 0.972 1 0.995 0.811tu-134 230 1 0.663 1 0.995 0.895su-33 230 2 1 0.611 0.995 0.796an-70 230 2 0.766 1 0.995 0.73tu-22 230 98 0.984 1 0.995 0.831
Speed: 0.2ms preprocess, 3.8ms inference, 0.0ms loss, 0.8ms postprocess per image
改进方法
安装pytorch_wavelets,执行命令:
pip install pytorch_wavelets -i https://pypi.tuna.tsinghua.edu.cn/simple
安装
pip install pywavelets -i https://pypi.tuna.tsinghua.edu.cn/simple
修改lowlevel.py