win_size exceeds image extent. Either ensure that your images are at least 7x7; or pass win_size ex

在进行超分辨率重建后想计算SSIM和PSNR,最开始发现导入compare_psnr,compare_ssim居然报错了,

bug1

ImportError: cannot import name ‘compare_psnr’ from ‘skimage.measure’

上网一查发现版本更新换成了structural_similarity和peak_signal_noise_ratio。

解决

之后又发现 

bug2

报错ValueError: win_size exceeds image extent. Either ensure that your images are at least 7x7; or pass win_size explicitly in the function call, with an odd value less than or equal to the smaller side of your images. If your images are multichannel (with color channels), set channel_axis to the axis number corresponding to the channels.
 

好家伙,这么一大段话,我估计 multichannel=True也已经不用了,报错中说

set channel_axis to the axis number corresponding to the channels

将你的通道维度告诉channel_axis

解决

续:后来我完成了我的模型训练等等一切,最后计算全部数据的SSIM和PSNR时的代码我会放在下一篇文章中,但在这时又遇到了一个巨坑的错。

bug3

报错ValueError: image_true has intensity values outside the range expected for its data type. Please manually specify the data_range.

字面翻译:ValueError:image_true的强度值超出了其数据类型的预期范围。请手动指定data_range。

由于我的fake_img和hr_img是经过transforms.ToTensor()出来的,因此他们都在[0,1]的范围内,只用用一个data_range值为255就ok了,虽然我并不是很理解,但是代码就这么通了 0。0

修改前

修改后

 

 

 

  • 32
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值