无损PNG转PGM转换

4

我有一个像下面这个例子的PNG图像文件,需要将其转换为PGM格式。

enter image description here

我正在使用Ubuntu和Python,因此终端或Python工具都可以。有很多方法可以实现这一点:使用ImageMagick的convert命令、pngtopam软件包或Python PIL库等等。
但是问题是,在我的情况下,图像的质量至关重要,而所有这些方法在保持图像质量方面都失败了,最终结果总是:

enter image description here

不需要提及这完全不是我想看到的。有趣的是,当我尝试使用GIMP手动将相同的图像转换为PGM时,它表现得非常好,看起来与PNG图像完全相同,这意味着终究可以得到高质量的PGM图像,现在我真的很希望有人告诉我如何使用终端/Python工具做到这一点。我猜应该有一些ImageMagick选项可以解决这个问题,只是我不知道有哪些。
1个回答

15

你失去了抗锯齿效果,这是通过alpha通道传递的。为了保留它,请使用:

convert in.png -flatten out.pgm

-flatten选项可以将输入图像与白色背景颜色合成,而不是仅删除alpha通道。

以下是结果,放大10倍以便查看:

未合成:not flattened 已合成:flattened


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接