有谁知道如何从 ImageMagic 转换为小端 .pfm 文件?

Does anyone know how to convert to little endian .pfm file from ImageMagic?

我正在寻找从 imageMagick 转换小 endian.pfm 文件的方法。

据我所知,我们可以获得这样的 pfm 文件。

convert input.bmp output.pfm

这个输出文件是由Big endian制作的。但我想转换为 Little endian。

那么有什么方法可以在ImageMagick上将大端转换为小端吗?

谢谢

Endian 可以通过 -endian 选项控制。

例子。使用小端创建一个 2x2 红色 PFM 图像,并写入 hexdump.

$ convert -size 2x2 xc:red -endian LSB PFM:- | hexdump

0000000 50 46 0a 32 20 32 0a 2d 31 2e 30 0a 00 00 80 3f
0000010 00 00 00 00 00 00 00 00 00 00 80 3f 00 00 00 00
0000020 00 00 00 00 00 00 80 3f 00 00 00 00 00 00 00 00
0000030 00 00 80 3f 00 00 00 00 00 00 00 00            
000003c

您可以通过翻译 header 来确认小端字节序。

50 46 0a 32 20 32 0a 2d 31 2e 30 0a 00 00 80 3f
                     |         |    |         |
little endian -------| "-1.0"  |    | LSM data|

使用大端重复上述操作。

$ convert -size 2x2 xc:red -endian MSB PFM:- | hexdump

0000000 50 46 0a 32 20 32 0a 31 2e 30 0a 3f 80 00 00 00
0000010 00 00 00 00 00 00 00 3f 80 00 00 00 00 00 00 00
0000020 00 00 00 3f 80 00 00 00 00 00 00 00 00 00 00 3f
0000030 80 00 00 00 00 00 00 00 00 00 00               
000003b

并观察...

50 46 0a 32 20 32 0a 31 2e 30 0a 3f 80 00 00 00
                     |      |    |         |
big endian ----------| "1.0"|    | MSB data|