ValueError:unknown file extension

先说结论:+“.jpg” 可能是忘记加j字母左下角的点了。
报错位置:在保存图片时候发生报错。

	  pre_color_image = ToPILImage()(pre_colors.squeeze())
      label_name = '/home/Projects/ZQB/RFNet-master/image/'
      pre_color_image.save(os.path.join(label_name,img)+".jpg")

短短的三行代码有数不清的报错方式。
1:首先看第一行,pre_colors是模型的输出,我们知道输出的大小为(B,C,H,W),如果验证时候batch=1,不将batch维度进行压缩,或者pre_colors[0],那么就会报错"except 2/3 dimension but got 4 dimension"。
2:第二行,给出保存图片的路径,如果给出的路径为:label_name = ‘/home/Projects/ZQB/RFNet-master/image’,这样在生成的图片时候只会生成一张图片(后面的图片将前面的图片覆盖了),我们目的是在image文件夹下生成不同的.jpg图片。所以在image后面一定要加/,表示前面的是一个文件夹。
3:第三行,为了防止后面图片将前面图片覆盖掉,那么在循环时候img就不能是一样的。举例来说:
每次读入的cityscapes图片名称是不一样的,**所以可以将.png前面的名称单独拎出来。**通过split函数将前面的路径去除掉。

 image_name=('/home/Projects/Datasets/cityscapes/leftImg8bit/val/frankfurt/frankfurt_000000_000294_leftImg8bit.png',)
 img = image_name[0].split('/')[-1].split('.')[0]

这里的img必须是str或者byte,我之前想通过循环时候的序号i作为img。就会报错:
在这里插入图片描述
所以最好还是按上述的将图片名字单独抠出来。
除此以外我们还要对图片添加后缀,假设后缀是jpg格式。但是又报错了:
在这里插入图片描述
搜了一下,解释什么路径错误等。但是仔细看一下报错内容:未知的文件拓展。就是jpg格式哪里有问题。
看了好一会才发现:+“jpg"忘记加点了,正确的为+”.jpg"。不细心导致的错误,浪费了很多时间。
正确保存后:
在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值