如何将JPG格式图片转换为PPM(P3)格式?
如何将JPG转换为PPM3(P3)格式
方法1:使用ImageMagick命令行工具
这是最便捷的方式,ImageMagick支持直接指定生成明文P3格式的PPM:
convert input.jpg -compress none output.ppm
-compress none参数强制工具生成明文存储的P3格式,而非默认的二进制P6格式。
方法2:用Python Pillow库手动生成P3格式
如果需要自定义转换逻辑(比如裁剪、调整像素后再输出),可以用Pillow读取JPG后,手动构建P3格式的内容并写入文件:
from PIL import Image # 读取JPG图片 img = Image.open("input.jpg") width, height = img.size pixels = img.load() # 写入P3格式PPM文件 with open("output.ppm", "w") as f: # 写入PPM头部 f.write("P3\n") f.write(f"{width} {height}\n") f.write("255\n") # 最大颜色值 # 逐行写入像素RGB值 for y in range(height): for x in range(width): r, g, b = pixels[x, y] f.write(f"{r} {g} {b} ") f.write("\n")
这段代码会直接生成标准的P3格式PPM,所有像素值以明文形式存储,完全符合需求。
补充说明
大多数在线转换工具默认输出P6格式,因为它是二进制存储,体积远小于明文的P3格式。要生成P3,必须明确告知工具禁用压缩/使用明文存储。
内容的提问来源于stack exchange,提问作者luka mosiashvili
相关产品推荐
相关产品推荐

