ESC
输入关键词搜索文章
目录

WITT

无线图像传输 Transformer · 2022
用 Swin Transformer 重新定义语义通信时代的图像传输
背景
为什么图像传输需要新范式?

在无线通信系统中,传输图像面临一个根本矛盾:无线信道是时变的、噪声的、带宽受限的,而图像本身是高维的、语义丰富的。如果沿用传统的「信源压缩 + 信道编码」分离方案——先用 BPG/JPEG 压缩图像,再用 LDPC 编码比特——整个链路在低信噪比(SNR)区域会严重退化。这是因为信源编码器完全不了解信道状态,压缩后的比特流对信道噪声毫无抵抗力。

2019 年,#Bourtsoulatze et al., 2019 提出了一个革命性思路:用深度联合信源信道编码(Deep JSCC)替代分离方案,让一个端到端神经网络同时学图像压缩和信道编码。这样做的好处是:编码器可以感知信道状态,动态调整传输策略,不需要单独的比特层面错误保护。更重要的是,端到端优化意味着网络可以在「压缩什么」和「怎么传输」之间做联合决策,而不是先后优化两个割裂的目标。

然而,早期的 Deep JSCC 构建在 CNN 架构上。CNN 的卷积核有天然的局部感受野限制:当图像分辨率从 32×32 提升到 512×768 再到 2K 时,CNN 的性能会「断崖式」退化——论文原文的说法是"degrades rapidly and falls behind separation-based schemes"。这不是信道编码本身的问题,而是图像特征提取能力到了瓶颈。一个 3×3 卷积核在同一时刻只能看到邻域像素,无论堆多少层,感受野的扩大都是渐进的、有限的。

这个瓶颈在语义通信时代变得尤为突出。语义通信的核心目标是不仅传输比特,而是传输语义——让接收端理解发送端想表达什么。对于图像,这意味着编码器需要理解图像的整体结构:主体在哪里?背景是什么?哪些区域承载了关键视觉信息?在信道条件差时,这些信息应该如何优先编码?CNN 的局部感知让它无法回答这些问题。

核心问题:CNN 的局部感受野无法捕捉图像 patch 之间的长距离依赖,而无线图像传输需要编码器理解整个图像的语义结构——哪些区域重要,哪些可以牺牲。
架构
WITT 整体 Pipeline

WIT(Wireless Image Transmission Transformer)的设计哲学是:用 Transformer 的全局注意力替代 CNN 的局部卷积,同时在信道建模上保留 JSCC 的联合优化思路。具体来说,WITT 由三大组件构成:

  1. 编码器:基于 Swin Transformer 的层级化编码器,将图像 patch 序列逐步下采样并提取语义特征。图像首先被切成 4×4 的不重叠 patches,每个 patch 展平为 token,组成长度为 $l_1 = H/2 \times W/2$ 的序列。
  2. Channel ModNet:插入在编码器中间层的插件模块,根据 SNR 标量动态生成调制向量,对特征做 element-wise 缩放。这是本文最重要的创新——它让同一个模型可以在 [1, 13] dB 的全 SNR 范围内工作,无需针对每个信道条件单独训练。
  3. 解码器:与编码器对称的 Swin Transformer 解码器,从被噪声污染的接收信号中恢复图像。解码器包含 FC 层、Channel ModNet、Patch Division 上采样层和 Swin Transformer blocks。

整个端到端流程用公式表达就是:

$y = f_e(x; \phi)$$\hat{y} = h \odot y + n$$\hat{x} = f_d(\hat{y}; \theta)$

其中 $f_e$ 是编码器,$h$ 是信道状态向量,$n \sim \mathcal{N}(0, \sigma_n^2 I_k)$ 是高斯噪声,$f_d$ 是解码器。训练目标是 MSE:$\mathcal{L} = \mathbb{E}_{x, SNR} \{ \| x - \hat{x} \|^2 \}$

在功率归一化环节,传输前对信号进行归一化:$\bar{y} = \frac{y}{\sqrt{E\{y^Ty\}}}$,确保传输符号满足无线通信的平均功率约束。通道带宽比(Channel Bandwidth Ratio)定义为 $R = \frac{C}{2 \times 3 \times 2^n \times 2^n}$$R$ 越小意味着压缩越狠。

WITT 整体架构
图 1:(a) WITT 整体架构;(b) 两个连续的 Swin Transformer Block(W-MSA 与 SW-MSA 交替)。(来源:WIT, arXiv 2211.00937, Fig.1)
方法一
Swin Transformer:层级化视觉骨干

为什么选 Swin 而非 vanilla ViT?论文的考量很实际。ViT 将图像切成 16×16 的 patches 后直接送入全局自注意力——对高分辨率图像,全局注意力的复杂度 $O(H^2W^2)$ 会让计算量爆炸。而 Swin 通过窗口分区(Window Partition)把自注意力限制在局部窗口内(默认 8×8 像素),同时用移位窗口(Shifted Windows)在相邻层的窗口之间建立跨窗口连接,既获得了远距离建模能力,又把复杂度压到 $O(HW)$

维度ViTSwin Transformer
输出分辨率单一分辨率(16×16 patch)层级化(4 stages,输出多尺度)
计算复杂度$O(H^2 W^2)$(全局注意力)$O(HW)$(窗口注意力)
跨 patch 信息传递直接全局 attend通过移位窗口间接传递
适用场景分类、特征提取多尺度密集预测(分割、检测、传输)

移位窗口机制(Shifted Windows)是 Swin 的灵魂。Stage 内连续两个 Block:Block $k_i$ 使用常规窗口分区,Block $k_i+1$ 将窗口向右向上各偏移半个窗口宽度。这使得相邻层的 token 可以 attend 到对方的窗口,实现了跨窗口信息传递,同时保持线性复杂度。

$\hat{y}^{(k_i)}_i = W\text{-}MSA\big(LN(y^{(k_{i-1})}_i)\big) + y^{(k_{i-1})}_i$

$y^{(k_i)}_i = MLP\big(LN(\hat{y}^{(k_i)}_i)\big) + \hat{y}^{(k_i)}_i$

高分辨率图像(256×256 以上)需要 4 stages 配置:$[N_1, N_2, N_3, N_4] = [1, 1, 2, 6]$$[C_1, C_2, C_3, C_4] = [128, 192, 256, 320]$,窗口大小为 8。分辨率越高,Transformer 的优势越明显——因为全局注意力可以从一开始就在高分辨率特征上建立长距离建模,而 CNN 需要堆叠很多层才能扩大感受野。

层级结构的优势

4-stage 的层级结构天然适合图像传输任务:Stage 1 保持高分辨率但通道少(128),Stage 4 分辨率最低但通道最多(320),包含最强的语义信息。解码器逆向操作,让最终重建同时受益于精细空间信息和高层语义特征。

方法二
Channel ModNet:让单模型「感知」信道

这是 WITT 最重要的创新。传统的 Deep JSCC 在训练时固定 SNR,部署时如果信道条件变了,就需要重新训练或微调。Channel ModNet 解决的是这个问题:让同一个模型自适应任意 SNR 条件,训练范围 [1, 13] dB,部署时任何中间值都行。

Channel ModNet 架构
图 2:Channel ModNet 架构,由 8 层 FC 与 7 个 SNR 调制(SM)模块级联构成。(来源:WIT, arXiv 2211.00937, Fig.2)

ModNet 的输入只有一个标量:当前 SNR 值。它的输出是一个 $M$ 维调制向量 $sm_j$,对中间特征做 element-wise 缩放:

$sm_j^{(1)} = ReLU\big(W^{(1)}_{sm} \cdot SNR_j + b^{(1)}_{sm}\big)$

$\vdots$

$sm_j^{(M)} = Sigmoid\big(W^{(M)}_{sm} \cdot sm_j^{(M-1)} + b^{(M)}_{sm}\big)$

$\text{output} = \text{input} \odot sm_j$

直觉解释:在低 SNR(信道噪声强)时,ModNet 学习生成什么样的调制向量,使编码器把更多「能量」分配给语义上更重要的特征,使解码器更关注这些特征——相当于让模型在资源受限条件下学会「优先级调度」。

两阶段训练策略

Stage 1:冻结 ModNet(设为恒等映射 $sm_j=1$),训练 Swin backbone 学图像编解码基础能力。Stage 2:解冻 ModNet,联合训练全部模块。这避免了 ModNet 初始阶段「破坏」已学到的特征表示。

实验
性能验证:分辨率越高,优势越显著

论文在三个数据集上验证:CIFAR10(32×32)、Kodak(512×768)、CLIC2021(2K)。核心结论就一句话——分辨率越高,WITT 相对 CNN-JSCC 的优势越明显

指标WITT(本文)ADJSCC(CNN+Attention)改善幅度
推理时间(Kodak)116 ms155 ms快 25%
FLOPs(Kodak)198 G511 G降低 61%
参数量28.2 M16.2 M+75%
PSNR(Kodak, SNR=10dB)~29 dB~27 dB+2 dB
CIFAR10 PSNR vs SNR
图 3:PSNR 随 SNR 变化曲线(CIFAR10 数据集,AWGN 信道,CBR=1/3)。(来源:WIT, arXiv 2211.00937, Fig.3a)

值得注意的是:参数量更大的模型反而 FLOPs 更低。原因在于 Swin 的窗口注意力比 CNN 的密集卷积更高效——即使参数矩阵更大,每次前向传播的实际运算量也少得多。这在计算资源受限的边缘设备上是关键优势。

Kodak PSNR vs CBR
图 4:PSNR 随通道带宽比(CBR)变化曲线(Kodak 数据集,AWGN 信道,SNR=10dB)。(来源:WIT, arXiv 2211.00937, Fig.4a)

从图 4 可以看到,在 Kodak(高分辨率)上:WITT 在所有 CBR 下系统性超越 CNN-JSCC,与 BPG+LDPC 方案相当。但论文坦诚承认——在高 SNR + 高 CBR 区域,WITT 的性能曲线斜率放缓,与「BPG + 理想容量可达」方案存在差距。这是模拟调制(analog transmission)的理论极限,不是架构问题。

视觉质量对比
图 5:AWGN 信道(SNR=10dB)下的视觉重建质量对比,红色数字表示相比 WITT 额外消耗的带宽成本。(来源:WIT, arXiv 2211.00937, Fig.5a)

视觉上,WITT 避免了传统压缩方案的块效应(block artifacts),重建出纹理和细节更丰富的高保真图像——这正是端到端联合优化带来的感知质量优势。

机制
完整信号流程图

用 Mermaid 整理 WITT 的端到端数据流,帮助建立系统直觉:

graph LR
    A["RGB 图像
x ∈ R^{H×W×3}"] --> B["Patch Embedding
l₁ = H/2 × W/2 tokens"] B --> C["Stage 1: N₁ Swin Blocks"] C --> D["Patch Merging"] D --> E["Stage 2: N₂ Swin Blocks"] E --> F["Patch Merging"] F --> G["Stage 3: N₃ Swin Blocks"] G --> H["Patch Merging"] H --> I["Stage 4: N₄ Swin Blocks"] I --> J["Channel ModNet
sm = f(SNR)"] J --> K["FC Layer
投影至 C 维"] K --> L["功率归一化
ȳ = y / √E{yᵀy}"] L --> M["无线信道
ŷ = h ⊙ y + n"] M --> N["FC Layer
接收端投影"] N --> O["Channel ModNet
解码端调制"] O --> P["Patch Division + Stage 4 Swin"] P --> Q["Stage 3 Swin"] Q --> R["Stage 2 Swin"] R --> S["Stage 1 Swin"] S --> T["图像重建
x̂ ∈ R^{H×W×3}"] style A fill:#e1f5fe style M fill:#fff3e0 style T fill:#e8f5e9

注意 decoder 侧完全对称:每个 Stage 4-3-2-1 的 Swin Block 后接 Patch Division 上采样,最后恢复原图尺寸。整个系统用 MSE 端到端训练,无需预训练 ImageNet。

分析
为什么 Swin 优于 CNN?一张图讲清楚

要理解这个问题,需要回到感受野的本质。CNN 的卷积核在局部窗口内提取特征——一个 3×3 卷积核的感受野只有 3×3(除非叠加多层)。即使堆叠 20 层卷积,感受野也只有几十个像素量级。高分辨率图像(如 512×768)中,相隔 200 像素的两个区域在 CNN 看来毫无关系。

Swin Transformer 则不同:它的自注意力机制让每个 patch 可以直接 attend 到图像中任意其他 patch——理论上全局建模能力等价于 ViT,但通过窗口分区把复杂度从 $O(H^2W^2)$ 压到 $O(HW)$。对于无线图像传输,这意味着:

  1. 语义优先编码:编码器可以识别图像中的「主体」(如人脸、物体轮廓),在信道条件差时优先传输这些区域的特征
  2. 跨尺度特征融合:Stage 4 的特征有最强的语义信息,Stage 1 有最精细的空间信息,层级结构让解码器同时利用两者
  3. 自适应压缩粒度:Patch Merging 的下采样策略允许模型在高 CBR(压缩比大)时更激进地丢弃低频细节
关键洞察:CNN 在低分辨率图像(32×32 CIFAR10)上与 WITT 差距不大,但分辨率提升后性能差距急剧扩大——这说明 Transformer 的优势只有在「需要全局建模」时才显现,而这正是高分辨率无线传输的核心需求。
复现
训练配置与复现要点
参数CIFAR10(低分辨率)DIV2K(高分辨率)
Stage 数24
Blocks per stage[2, 4][1, 1, 2, 6]
Channels per stage[128, 256][128, 192, 256, 320]
Window size28
Batch size12816
Learning rate$1 \times 10^{-4}$(Adam)
训练 SNR 范围[1 dB, 13 dB] 均匀分布
信道模型AWGN / Rayleigh 快衰落

训练图像预处理:对高分辨率数据集,随机裁剪为 256×256 patches。信道模拟在每个 batch 随机采样 SNR,让模型接触多样的信道条件,而非过拟合到特定 SNR 值——这是 Channel ModNet「泛化到未见 SNR」的关键。

通道带宽比(Channel Bandwidth Ratio)

$R = \frac{C}{2 \times 3 \times 2^n \times 2^n}$

其中分子 $C$ 是编码后的复数符号维度(×2 因为 I/Q 两路),分母是原始图像的采样点数(RGB 3通道,$2^n \times 2^n$ 是每 stage 下采样后的分辨率)。$R$ 越小意味着压缩越狠。

展望
局限性与后续研究方向

论文坦诚指出了三个主要局限:

  1. 高 SNR 性能放缓:在高信道质量(>13 dB)+ 高 CBR 时,性能曲线斜率降低,与「BPG + 容量可达」方案有差距。这是模拟调制的理论约束,而非架构缺陷。
  2. 信道模型局限:仅验证了 AWGN 和 Rayleigh 快衰落,尚未覆盖城市信道(3GPP 模型)或卫星通信场景。
  3. 无反馈机制:对比 #Kurka & Gündüz, 2020 的 DeepJSCC-f,WITT 没有利用信道反馈,这在时变信道中可能影响性能。

技术演进脉络

  • 2018:Farsad 等首次将 DNN 用于文本 JSCC
  • 2019:Bourtsoulatze 等提出 CNN-based 图像 JSCC
  • 2020:Kurka 引入反馈机制(DeepJSCC-f)
  • 2021:Xu 等提出 Attention JSCC(ADJSCC),支持多 SNR
  • 2021:Liu 等提出 Swin Transformer(ICCV Best Paper)
  • 2022:WIT = Swin + JSCC + ModNet(本文)

后续研究方向包括:用扩散模型(Diffusion)替代 MSE 损失提升感知质量、引入信道反馈的 attention 机制、面向下游机器视觉任务的语义通信,以及将框架扩展到视频传输。

总结

WITT 的核心贡献是三件事:用 Swin Transformer 替代 CNN backbone、用 Channel ModNet 实现单模型多信道适应、用两阶段训练避免特征破坏。最终结果是在高分辨率图像上比 CNN-JSCC 高 3-5 dB PSNR,同时 FLOPs 降低 61%、推理速度快 25%。这个「更大参数、更高效率」的悖论,正是 Transformer 架构带来的计算密度优势。

对于实际应用,WITT 特别适合:高分辨率图像(256×256 以上)的无线传输、移动终端等多变信道条件、带宽受限的 XR 和自动驾驶场景。代码已在 GitHub 开源:KeYang8/WITT