kaira.models.image.Yilmaz2024DeepJSCCWZEncoder

Inheritance diagram for Yilmaz2024DeepJSCCWZEncoder
- class kaira.models.image.Yilmaz2024DeepJSCCWZEncoder(N: int, M: int, *args: Any, **kwargs: Any)[source]
Bases:
BaseModelDeepJSCC-WZ Encoder Module [Yilmaz et al., 2024].
The full-size encoder for the DeepJSCC-WZ model that compresses input images into a compact latent representation. It includes two parallel encoding paths: g_a for processing the main input and g_a2 for potential preprocessing of side information.
Unlike the small variant, this encoder uses separate parameters for the main signal and side information processing paths, potentially allowing for more specialized feature extraction at the cost of increased parameter count.
Architecture highlights: - 4 stages of downsampling through residual blocks (16× spatial reduction) - Channel state information adaptation via AFModule - Attention mechanisms for feature refinement - Sophisticated feature extraction with residual connections - Progressive compression: 3×H×W → M×(H/16)×(W/16)
Methods
Initialize the full-size DeepJSCC-WZ encoder.
Encode the input image into a compact representation.
- __init__(N: int, M: int, *args: Any, **kwargs: Any) None[source]
Initialize the full-size DeepJSCC-WZ encoder.
- Parameters:
N (int) – Number of intermediate channels in the residual blocks. Controls the network capacity and feature dimension.
M (int) – Number of output channels in the final latent representation. Determines the compression rate and bandwidth usage.
*args – Variable positional arguments passed to the base class.
**kwargs – Variable keyword arguments passed to the base class.
- forward(x: Tensor, csi: Tensor, *args: Any, **kwargs: Any) Tensor[source]
Encode the input image into a compact representation.
- Parameters:
x (torch.Tensor) – Input image tensor of shape [B, 3, H, W].
csi (torch.Tensor) – Channel state information tensor of shape [B, 1, 1, 1]. Contains SNR or other channel quality indicators.
*args – Additional positional arguments (passed to internal layers).
**kwargs – Additional keyword arguments (passed to internal layers).
- Returns:
- Encoded representation ready for transmission.
Shape: [B, M, H/16, W/16], where M is the number of channels specified during initialization.
- Return type: