是否可以将 ppm 文件从 p3 转换为 p6 或使用枕头库打开和读取 ppm p3 文件?

我实际上有 ppm p3 文件并尝试使用枕头 lib 将它们转换为 jpg,但不幸的是,它不能仅读取 p3 文件 p6。

关于如何解决这个问题的任何想法?

from PIL import Image

im = Image.open("sweet_pic.ppm")
im.save("sweet_pic.jpg")

https://stackoverflow.com/a/26937263/8692977

谢谢。

最佳答案

P3 NetPBM 文件是 ASCII(文本的,并且更大),而 P6 文件是二进制的(并且更小)。如果您使用 ImageMagick 则通过指定压缩来区分:

# convert to P6 (binary)
convert image.ppm result.ppm

# convert to P3 (ASCII)
convert image.ppm -compress none result.ppm

与往常一样,默认设置是转到最小的文件类型,即 P6 ,因此您无需为此做任何事情 - 如上面的第一个示例。

关于python - 是否可以将 ppm 文件从 p3 转换为 p6 或使用枕头库打开 ppm p3 文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47087953/

10-14 08:46