self.psnrs += torch.mean(10 * torch.log10(1 / (torch.mean(torch.square(hr_image - sr_image), (1, 2, 3))))) RuntimeError: The size of tensor a (138) must match the size of tensor b (135) at non-singleton dimension 3
时间: 2024-04-18 07:23:44 浏览: 122
这个错误是由于张量的维度不匹配引起的。在计算 `torch.mean(torch.square(hr_image - sr_image), (1, 2, 3))` 时,张量 `hr_image` 和 `sr_image` 的维度在某个维度上不匹配。
要解决这个问题,你可以检查 `hr_image` 和 `sr_image` 张量的形状,确保它们在所有维度上是一致的。你可以使用 `print(hr_image.shape)` 和 `print(sr_image.shape)` 来打印张量的形状,并检查它们是否匹配。
另外,你可以尝试使用 `torch.mean()` 函数的 `dim` 参数来指定计算平均值时沿着哪个维度进行操作。根据你的需求,可能需要调整 `(1, 2, 3)` 这个参数以匹配张量的维度。
阅读全文