xindongzhang/ECBSR

是否有人尝试,直接将输入变为rgb图,结果如何?

Opened this issue · 6 comments

为了让模型可以输入rgb图,我将下面的两行代码改了,如下:

  # y = self.backbone(x) + x
  # y = self.upsampler(y)

  up_x = F.upsample_bilinear(x, scale_factor=self.scale_factor)
  y = up_x + self.upsampler(self.backbone(x))

模型的参数是一样的,使用的模型是ECBSR-M16C64,
set5上的psnr为30.6(Y通道),相比原文中直接超分Y通道少了1.3db(31.92->30.6),请问这种现象正常吗,按照我的理解,直接超分RGB的结果相比超分Y,结果应该不会差太多?

你好,请问您试了后效果怎么样?可以超分RGB图像吗?

你好,请问您试了后效果怎么样?可以超分RGB图像吗?

我这边实验,M16C64 ,上面代码处理rgb,Y通道比原文直接超分Y通道要少1db以上

少是正常的,毕竟训练不是直接超分y,就是不知道少多少是合理的,有经验的可以给个数值,感谢!

我这边最新的RGB上训练M4C16,最好的结果Y通道上为37.01, 距离文中37.33还是有一定差距

为了让模型可以输入rgb图,我将下面的两行代码改了,如下:

  # y = self.backbone(x) + x
  # y = self.upsampler(y)

  up_x = F.upsample_bilinear(x, scale_factor=self.scale_factor)
  y = up_x + self.upsampler(self.backbone(x))

模型的参数是一样的,使用的模型是ECBSR-M16C64, set5上的psnr为30.6(Y通道),相比原文中直接超分Y通道少了1.3db(31.92->30.6),请问这种现象正常吗,按照我的理解,直接超分RGB的结果相比超分Y,结果应该不会差太多?

你这个改都改错了吧,源代码是backbone与输入相加以后一起unsample,你改成了先upsample再相加

psnr测试那里也改成了测试三个通道取平均值是吧,rgb的psnr降低应该是正常的吧,毕竟y单通道的黑白图像比rgb单通道有更高的psnr