问题:

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

原因分析:

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

解决办法:

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

添加如下代码:

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

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

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐