【Block总结】HWD,小波下采样,适用分类、分割、目标检测等任务|即插即用

论文信息

Haar wavelet downsampling (HWD) 是一项针对语义分割的创新模块,旨在通过减少特征图的空间分辨率来提高深度卷积神经网络(DCNNs)的性能。该论文的主要贡献在于提出了一种新的下采样方法,能够在下采样阶段有效地减少信息损失。论文的详细信息如下:

  • 标题: Haar Wavelet Downsampling: A Simple but Effective Downsampling Module for Semantic Segmentation
  • 作者: Guoping Xu, Wentao Liao, Xuan Zhang, Chang Li, Xinwei He, Xinglong Wu
  • 发表年份: 2023
  • 期刊: Pattern Recognition
  • DOI : 10.1016/j.patcog.2023.109819

创新点

HWD 模块的核心创新在于:

  • 信息保留: 通过使用 Haar 小波变换,HWD 能够在下采样过程中最大限度地保留信息,避免传统下采样方法中常见的信息损失。

  • 特征熵指数: 论文中提出了一种新的度量标准,称为特征熵指数(Feature Entropy Index, FEI),用于评估下采样特征图与预测结果之间的信息不确定性。

  • 易于集成: HWD 模块可以直接替代现有的池化层或带步幅的卷积层,而不会显著增加计算开销。

方法

HWD 模块的实现方法包括以下几个步骤:

  1. Haar 小波变换: 该模块利用 Haar 小波变换对特征图进行下采样,降低空间分辨率的同时保留重要信息。

  2. 特征图编码: 在下采样过程中,部分空间信息被编码到通道维度,以便后续的卷积层能够提取判别性特征。

  3. 集成到 CNN 中: HWD 模块可以无缝集成到现有的卷积神经网络架构中,增强其语义分割能力。

HWD模块与传统下采样方法相比有哪些优势?

Haar Wavelet Downsampling (HWD) 模块相较于传统下采样方法(如最大池化和步幅卷积)具有多项显著优势:

优势

  1. 信息保留能力:

    • HWD 模块通过 Haar 小波变换进行下采样,能够在降低特征图的空间分辨率时最大限度地保留重要信息。这种方法有效减少了传统下采样过程中常见的信息损失,尤其是在语义分割任务中,保持空间信息对于像素级预测至关重要[2][5]。
  2. 特征熵指数(FEI):

    • HWD 引入了一种新的度量标准,称为特征熵指数(Feature Entropy Index, FEI),用于评估下采样后特征图与预测结果之间的信息不确定性。FEI 可以帮助量化下采样方法在保留关键信息方面的能力,从而为模型的性能提供更深入的理解[2][5]。
  3. 计算开销低:

    • HWD 模块可以直接替代现有的池化层或带步幅的卷积层,而不会显著增加计算开销。这使得 HWD 易于集成到现有的卷积神经网络架构中,提升了模型的灵活性和适应性[2][3][5]。
  4. 广泛的适用性:

    • 实验表明,HWD 模块在不同模态的图像数据集和多种 CNN 架构中均能有效提高分割性能。这种广泛的适用性使得 HWD 成为一种通用的下采样解决方案,适合多种应用场景[4][6]。
  5. 减少信息不确定性:

    • HWD 模块在下采样过程中有效减少了信息不确定性,相比传统方法,能够更好地保留特征的判别性,从而提升模型的整体表现[5][6]。

效果与实验结果

论文通过一系列综合实验验证了 HWD 模块的有效性,结果显示:

  • HWD 模块在与七种最先进的分割方法进行比较时,表现出更优的性能。

  • 实验结果表明,HWD 在保持高精度的同时,显著减少了信息损失,提升了模型的整体表现。

总结

Haar wavelet downsampling 模块为语义分割任务提供了一种简单而有效的下采样解决方案。通过引入 Haar 小波变换,该模块不仅提高了信息保留能力,还通过特征熵指数的引入,为特征重要性评估提供了新的视角。综合实验结果表明,HWD 模块在多种语义分割任务中均表现出色,具有广泛的应用潜力。

代码

python 复制代码
from pytorch_wavelets import DWTForward
import torch
from torch import nn
class HWD(nn.Module):
    def __init__(self, in_ch, out_ch):
        super(HWD, self).__init__()
        self.wt = DWTForward(J=1, mode='zero', wave='haar')
        self.conv_bn_relu = nn.Sequential(
            nn.Conv2d(in_ch * 4, out_ch, kernel_size=1, stride=1),
            nn.BatchNorm2d(out_ch),
            nn.ReLU(inplace=True),
        )

    def forward(self, x):
        yL, yH = self.wt(x)
        y_HL = yH[0][:, :, 0, ::]
        y_LH = yH[0][:, :, 1, ::]
        y_HH = yH[0][:, :, 2, ::]
        x = torch.cat([yL, y_HL, y_LH, y_HH], dim=1)
        x = self.conv_bn_relu(x)
        return x




if __name__ == "__main__":
    # 如果GPU可用,将模块移动到 GPU
    device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
    # 输入张量 (batch_size, height, width,channels)
    x = torch.randn(1,32,40,40).to(device)
    # 初始化 HWD 模块
    dim=32
    block = HWD(dim,dim)
    print(block)
    block = block.to(device)
    # 前向传播
    output = block(x)
    print("输入:", x.shape)
    print("输出:", output.shape)
相关推荐
中國龍在廣州9 分钟前
现在人工智能的研究路径可能走反了
人工智能·算法·搜索引擎·chatgpt·机器人
攻城狮7号18 分钟前
小米具身大模型 MiMo-Embodied 发布并全面开源:统一机器人与自动驾驶
人工智能·机器人·自动驾驶·开源大模型·mimo-embodied·小米具身大模型
搜移IT科技23 分钟前
【无标题】2025ARCE亚洲机器人大会暨展览会将带来哪些新技术与新体验?
人工智能
信也科技布道师FTE42 分钟前
当AMIS遇见AI智能体:如何为低代码开发装上“智慧大脑”?
人工智能·低代码·llm
青瓷程序设计43 分钟前
植物识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
AI即插即用1 小时前
即插即用系列 | CVPR 2025 WPFormer:用于表面缺陷检测的查询式Transformer
人工智能·深度学习·yolo·目标检测·cnn·视觉检测·transformer
大数据魔法师1 小时前
分类与回归算法(六)- 集成学习(随机森林、梯度提升决策树、Stacking分类)相关理论
分类·回归·集成学习
唐兴通个人1 小时前
数字化AI大客户营销TOB营销客户开发专业销售技巧培训讲师培训师唐兴通老师分享AI销冠人工智能销售AI赋能销售医药金融工业品制造业
人工智能·金融
人机与认知实验室2 小时前
国内主流大语言模型之比较
人工智能·语言模型·自然语言处理
T0uken2 小时前
【Python】UV:境内的深度学习环境搭建
人工智能·深度学习·uv