kaira.models.image.Yilmaz2024DeepJSCCWZDecoder

Inheritance diagram of Yilmaz2024DeepJSCCWZDecoder

Inheritance diagram for Yilmaz2024DeepJSCCWZDecoder

class kaira.models.image.Yilmaz2024DeepJSCCWZDecoder(N: int, M: int, *args: Any, **kwargs: Any)[source]

Bases: BaseModel

DeepJSCC-WZ Decoder Module [Yilmaz et al., 2024].

The full-size decoder for the DeepJSCC-WZ model that reconstructs the original image from the received noisy representation and side information. It follows a symmetric structure to the encoder with progressive upsampling and feature fusion mechanisms.

Unlike the small variant, this decoder uses a dedicated set of parameters for processing side information, potentially allowing for more specialized feature extraction at the cost of increased parameter count.

Key features: - Multi-scale feature fusion with side information at 5 different resolution levels - Progressive spatial resolution recovery (4 upsampling stages, H/16×W/16 → H×W) - Attention-based feature refinement - Channel-adaptive processing through AFModule layers - Sophisticated feature reconstruction with residual connections

Methods

__init__

Initialize the full-size DeepJSCC-WZ decoder.

forward

Decode the received representation into a reconstructed image.

__init__(N: int, M: int, *args: Any, **kwargs: Any) None[source]

Initialize the full-size DeepJSCC-WZ decoder.

Parameters:
  • N (int) – Number of intermediate channels in the residual blocks. Controls the network capacity and feature dimension.

  • M (int) – Number of input channels from the encoded representation. Matches the encoder’s output channel count.

  • *args – Variable positional arguments passed to the base class.

  • **kwargs – Variable keyword arguments passed to the base class.

forward(x: Tensor, x_side: Tensor, csi: Tensor, *args: Any, **kwargs: Any) Tensor[source]

Decode the received representation into a reconstructed image.

This method first processes the side information through the g_a2 encoder path, then progressively decodes the received signal while fusing with side information features at multiple scales.

Parameters:
  • x (torch.Tensor) – Received noisy encoded representation of shape [B, M, H/16, W/16].

  • x_side (torch.Tensor) – Side information tensor of shape [B, 3, H, W] to assist in decoding.

  • csi (torch.Tensor) – Channel state information tensor of shape [B, 1, 1, 1].

  • *args – Additional positional arguments (passed to internal layers).

  • **kwargs – Additional keyword arguments (passed to internal layers).

Returns:

Reconstructed image tensor of shape [B, 3, H, W].

Return type:

torch.Tensor