【发布时间】:2015-11-23 23:00:52
【问题描述】:
我们正在编程的光线追踪器会生成简单的 PPM 图像文件。我们写了一些东西来为我们生成场景定义,以便我们可以使用这些文件创建动画。
最初的工作流程是通过文件 > 脚本 > 将文件加载到堆栈中 在 Photoshop 中打开所有文件并将结果导出为 gif。这很好用,尽管工作流程很坎坷。质量很好,文件很大。
现在,当使用 ImageMagick 从 PPM 转换为 GIF 时,生成的图像质量非常糟糕。也就是说,ImageMagick 生成的单个 GIF 文件的质量已经很差了。将它们组合成 GIF 当然不会改变这一点。
原始文件(用 Photoshop 保存为 PNG):
GIF(使用 ImageMagick 从 PPM 转换而来):
(特别注意发光点周围的斑点)
我刚刚使用mogrify -path ../gif -format gif 006.ppm 来获得该结果。我真的不知道从哪里开始调整这个(尽管我尝试了来自reference 的几个选项)。
补充说明:
- 作为参考,这里有一些示例文件(original ppm file,ImageMagick gif,...):https://github.com/kleinfreund/raytracer/tree/master/assets
- 通过 Photoshop 导出单个图像时质量非常好(选择性、100% 漫反射抖动、无透明度、256 色、无元数据)
- 使用 ImageMagick 将 PPM 文件批量转换为 PNG 时,质量也非常好
- 我对其他工作流程持开放态度,所以如果您也可以提供替代解决方案,我很好
(两个文件之间差异的小动画,以便更容易看到问题。作者:Mark Setchell)
【问题讨论】:
-
对不起,我觉得你的问题很混乱。你是说当你使用 ImageMagick 将 PPM 转换为 GIF 时质量很差 - 如果是这样,请给我们你得到的 PPM 和 GIF。或者您是说当您将 多个 PPM 组合成一个 GIF 时,质量会很差 - 如果是这样,请给我们多个 PPM 和 GIF。我真的不明白 Photoshop 或 PNG 与它有什么关系。
-
@MarkSetchell 感谢您的反馈。我稍后会更新问题并提供相关的 ppm 文件。因此,目前转换为单个 GIF 文件已经很糟糕了。还没有谈论我想要制作的动画。另外,我提供 png 文件的原因是 ppm 文件不能那么容易显示。
-
@MarkSetchell 我在我们的存储库中添加了一些示例文件(包括 ppm 文件):github.com/kleinfreund/raytracer/blob/master/assets
标签: imagemagick gif imagemagick-convert