kaira.models.image.Yilmaz2024DeepJSCCWZDecoder

Inheritance diagram for Yilmaz2024DeepJSCCWZDecoder
- class kaira.models.image.Yilmaz2024DeepJSCCWZDecoder(N: int, M: int, *args: Any, **kwargs: Any)[source]
Bases:
BaseModelDeepJSCC-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
Initialize the full-size DeepJSCC-WZ decoder.
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: