目前只在 quality=0 (lambda=256) 配置下得到与预训练权重接近的结果。
| P frame 指标 | DCVC-TCM single 策略 +余弦学习率 |
dcvc_quality_0_psnr (λ = 256) |
|---|---|---|
| bpp | 0.02645 | 0.03060 |
| bpp_mv_y | 0.00629 | 0.00830 |
| bpp_mv_z | 0.00013 | 0.00045 |
| bpp_y | 0.01964 | 0.02082 |
| bpp_z | 0.00038 | 0.00102 |
| psnr | 32.0844 | 32.9327 |
训练中 bpp_mv_z 偏低。
对应 src 文件夹,来自 DCVC24年仓库。
其中需要添加对量化操作的训练时处理,如
def quant(self, x, force_detach=True):
if self.training or force_detach:
n = torch.round(x) - x
n = n.clone().detach()
return x + n
return torch.round(x)或
def add_noise(self, x):
noise = torch.nn.init.uniform_(torch.zeros_like(x), -0.5, 0.5)
noise = noise.clone().detach()
return x + noise使用 DVC 的数据集配置。 训练集使用 test.txt,来自此处。
训练集 Vimeo-90k dataset original training + test set (82GB)
测试集 UVG dataset 1080p/8bit/YUV/RAW