Reimplement Deep Joint Source-Channel Coding for Wireless Image Transmission in Pytorch.
Thanks to irdanish11's implemantation and Ahmedest61's implemantation.
Using an AutoEncoder
to compress image from [b, 3, H, W]
to feature maps with shape of[b, c, h, w]
, feed into channels [AWGN, Slow Fading Channel]
after power constraint and recover.
Use Adam
optimizer,batch size
set to 64
, learning rate
set to 1e-3
, and update to 1e-4
after the 640-th epoch
. Train 1000 epochs
in total.
Train with SNR
and compression rate
, whereSNR
varies in [0, 10, 20]
,compression rate
varies in [0.04, 0.09, 0.17, 0.25, 0.33, 0.42, 0.49]
, namely channel width
varies in [2, 4, 8, 12, 16, 20, 24]
.
-
Loss Function:
MSE Loss
-
Performance Metric:
PSNR
-
Computational Cost:
20s * 1000 epochs / 3600 ~= 5.6h
with single4090Ti
Validation loss when training.
Pre-fix "EXP" means the experimental results of this reimplement, "REP" means the performance reported in the lecture.
See Visualization for details.
SNR=0, bw=0.083333, k=3072, n=6144, m=02, PSNR=19.61, SSIM=0.59
SNR=0, bw=0.083333, k=3072, n=6144, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=3072, n=6144, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=3072, n=4608, m=02, PSNR=7.79, SSIM=0.10
SNR=0, bw=0.083333, k=3072, n=4608, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=3072, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=1536, n=4608, m=02, PSNR=19.61, SSIM=0.59
SNR=0, bw=0.083333, k=1536, n=4608, m=04, PSNR=20.09, SSIM=0.62
SNR=0, bw=0.083333, k=1536, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.083333, k=1536, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=3072, n=6144, m=02, PSNR=21.56, SSIM=0.71
SNR=0, bw=0.166667, k=3072, n=6144, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=3072, n=6144, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=3072, n=4608, m=02, PSNR=7.64, SSIM=0.09
SNR=0, bw=0.166667, k=3072, n=4608, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=3072, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=1536, n=4608, m=02, PSNR=20.09, SSIM=0.62
SNR=0, bw=0.166667, k=1536, n=4608, m=04, PSNR=22.40, SSIM=0.75
SNR=0, bw=0.166667, k=1536, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.166667, k=1536, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=3072, n=6144, m=02, PSNR=22.90, SSIM=0.77
SNR=0, bw=0.250000, k=3072, n=6144, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=3072, n=6144, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=3072, n=4608, m=02, PSNR=7.60, SSIM=0.08
SNR=0, bw=0.250000, k=3072, n=4608, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=3072, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=1536, n=4608, m=02, PSNR=21.56, SSIM=0.71
SNR=0, bw=0.250000, k=1536, n=4608, m=04, PSNR=24.17, SSIM=0.82
SNR=0, bw=0.250000, k=1536, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.250000, k=1536, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=3072, n=6144, m=02, PSNR=24.17, SSIM=0.82
SNR=0, bw=0.333333, k=3072, n=6144, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=3072, n=6144, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=3072, n=4608, m=02, PSNR=7.54, SSIM=0.08
SNR=0, bw=0.333333, k=3072, n=4608, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=3072, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=1536, n=4608, m=02, PSNR=22.40, SSIM=0.75
SNR=0, bw=0.333333, k=1536, n=4608, m=04, PSNR=25.49, SSIM=0.86
SNR=0, bw=0.333333, k=1536, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.333333, k=1536, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=3072, n=6144, m=02, PSNR=26.19, SSIM=0.88
SNR=0, bw=0.500000, k=3072, n=6144, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=3072, n=6144, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=3072, n=4608, m=02, PSNR=7.50, SSIM=0.07
SNR=0, bw=0.500000, k=3072, n=4608, m=04, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=3072, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=1536, n=4608, m=02, PSNR=24.17, SSIM=0.82
SNR=0, bw=0.500000, k=1536, n=4608, m=04, PSNR=27.94, SSIM=0.91
SNR=0, bw=0.500000, k=1536, n=4608, m=16, PSNR=6.57, SSIM=0.12
SNR=0, bw=0.500000, k=1536, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.083333, k=3072, n=6144, m=02, PSNR=19.61, SSIM=0.59
SNR=10, bw=0.083333, k=3072, n=6144, m=04, PSNR=21.56, SSIM=0.71
SNR=10, bw=0.083333, k=3072, n=6144, m=16, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.083333, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.083333, k=3072, n=4608, m=02, PSNR=20.09, SSIM=0.62
SNR=10, bw=0.083333, k=3072, n=4608, m=04, PSNR=22.40, SSIM=0.75
SNR=10, bw=0.083333, k=3072, n=4608, m=16, PSNR=25.12, SSIM=0.85
SNR=10, bw=0.083333, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.083333, k=1536, n=4608, m=02, PSNR=19.61, SSIM=0.59
SNR=10, bw=0.083333, k=1536, n=4608, m=04, PSNR=20.09, SSIM=0.62
SNR=10, bw=0.083333, k=1536, n=4608, m=16, PSNR=22.40, SSIM=0.75
SNR=10, bw=0.083333, k=1536, n=4608, m=64, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.166667, k=3072, n=6144, m=02, PSNR=21.56, SSIM=0.71
SNR=10, bw=0.166667, k=3072, n=6144, m=04, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.166667, k=3072, n=6144, m=16, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.166667, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.166667, k=3072, n=4608, m=02, PSNR=22.40, SSIM=0.75
SNR=10, bw=0.166667, k=3072, n=4608, m=04, PSNR=25.49, SSIM=0.86
SNR=10, bw=0.166667, k=3072, n=4608, m=16, PSNR=29.75, SSIM=0.94
SNR=10, bw=0.166667, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.166667, k=1536, n=4608, m=02, PSNR=20.09, SSIM=0.62
SNR=10, bw=0.166667, k=1536, n=4608, m=04, PSNR=22.40, SSIM=0.75
SNR=10, bw=0.166667, k=1536, n=4608, m=16, PSNR=25.49, SSIM=0.86
SNR=10, bw=0.166667, k=1536, n=4608, m=64, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.250000, k=3072, n=6144, m=02, PSNR=22.90, SSIM=0.77
SNR=10, bw=0.250000, k=3072, n=6144, m=04, PSNR=26.19, SSIM=0.88
SNR=10, bw=0.250000, k=3072, n=6144, m=16, PSNR=30.55, SSIM=0.95
SNR=10, bw=0.250000, k=3072, n=6144, m=64, PSNR=6.59, SSIM=0.12
SNR=10, bw=0.250000, k=3072, n=4608, m=02, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.250000, k=3072, n=4608, m=04, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.250000, k=3072, n=4608, m=16, PSNR=32.85, SSIM=0.97
SNR=10, bw=0.250000, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.250000, k=1536, n=4608, m=02, PSNR=21.56, SSIM=0.71
SNR=10, bw=0.250000, k=1536, n=4608, m=04, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.250000, k=1536, n=4608, m=16, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.250000, k=1536, n=4608, m=64, PSNR=30.55, SSIM=0.95
SNR=10, bw=0.333333, k=3072, n=6144, m=02, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.333333, k=3072, n=6144, m=04, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.333333, k=3072, n=6144, m=16, PSNR=32.85, SSIM=0.97
SNR=10, bw=0.333333, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.333333, k=3072, n=4608, m=02, PSNR=25.49, SSIM=0.86
SNR=10, bw=0.333333, k=3072, n=4608, m=04, PSNR=29.75, SSIM=0.94
SNR=10, bw=0.333333, k=3072, n=4608, m=16, PSNR=35.25, SSIM=0.98
SNR=10, bw=0.333333, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.333333, k=1536, n=4608, m=02, PSNR=22.40, SSIM=0.75
SNR=10, bw=0.333333, k=1536, n=4608, m=04, PSNR=25.49, SSIM=0.86
SNR=10, bw=0.333333, k=1536, n=4608, m=16, PSNR=29.75, SSIM=0.94
SNR=10, bw=0.333333, k=1536, n=4608, m=64, PSNR=32.85, SSIM=0.97
SNR=10, bw=0.500000, k=3072, n=6144, m=02, PSNR=26.19, SSIM=0.88
SNR=10, bw=0.500000, k=3072, n=6144, m=04, PSNR=30.55, SSIM=0.95
SNR=10, bw=0.500000, k=3072, n=6144, m=16, PSNR=36.48, SSIM=0.98
SNR=10, bw=0.500000, k=3072, n=6144, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.500000, k=3072, n=4608, m=02, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.500000, k=3072, n=4608, m=04, PSNR=32.85, SSIM=0.97
SNR=10, bw=0.500000, k=3072, n=4608, m=16, PSNR=38.58, SSIM=0.97
SNR=10, bw=0.500000, k=3072, n=4608, m=64, PSNR=6.57, SSIM=0.12
SNR=10, bw=0.500000, k=1536, n=4608, m=02, PSNR=24.17, SSIM=0.82
SNR=10, bw=0.500000, k=1536, n=4608, m=04, PSNR=27.94, SSIM=0.91
SNR=10, bw=0.500000, k=1536, n=4608, m=16, PSNR=32.85, SSIM=0.97
SNR=10, bw=0.500000, k=1536, n=4608, m=64, PSNR=36.48, SSIM=0.98