【解决】OSError: cannot write mode F as PNG

╰半橙微兮° 2024-04-01 09:46 155阅读 0赞

问题:

将图像所表示的矩阵转换为图像并保存为 png 格式时报错: OSError: cannot write mode F as PNG,报错信息如下:

d6f80a51ad37473cb5861ec42a11cf0f.png

原因分析:

这里的 mode F 意思是图像中浮点类型的像素值,原因是我代码中的 img 数组是 float 类型的,而图像中每个像素的值应该是 0-255(uint8 类型)。

解决办法:

将 img 矩阵类型转换为 uint8 类型。

添加如下代码:

  1. import numpy as np
  2. img = img.astype(np.uint8)

f21871bed0f34fd78c022d1bac46f0d8.png

参考链接: python imaging library - PIL cannot write mode F to jpeg - Stack Overflow

发表评论

表情:
评论列表 (有 0 条评论,155人围观)

还没有评论,来说两句吧...

相关阅读