我最近完成了光线追踪教程“一周末完成光线追踪”,该教程输出为 PPM。我尝试将其转换为 PNG 以分享我的结果,但我尝试过的所有解决方案都出现错误。
当我使用 FFMPEG 时ffmpeg -i image.ppm out.png
出现以下错误:
[image2 @ 0000020a3ef7a200] 流 0 解码失败
[image2 @ 0000020a3ef7a200] 找不到流 0 的编解码器参数(视频:ppm,无):未指定大小
解码流 #0:0 时出错:处理输入时发现无效数据
无法确定 EOF 之后输入流 0:0 的格式
将过滤器标记为完成时出错
我尝试调整analyzeduration和probesize选项,但没有效果。
当我使用 ImageMagick 时magick image.ppm out.png
出现以下错误:
magick:不正确的图像头“image.ppm”@error/pnm.c/ReadPNMImage/343。
(我也尝试过在线转换器,但它们也都抛出了无用的错误。)
我尝试过的大多数 PPM 查看器在打开输入图像时都没有问题,因此不太可能出现损坏/坏数据。编辑:GIMP 似乎很难打开它,在线查看器也各占一半。图像格式是 P3,有些程序只能执行 P4-P6 吗?
答案1
正如 OP 所揭示的,文件有点“损坏”(至少某些软件无法理解)。OPppm
从 utf-16 编码更改为 utf-8。大小写已解决。您还可以使用 XNview 等软件包,它支持主要桌面操作系统以及许多图形格式。