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

时间:2015-05-15 08:52:30

标签: imagemagick

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

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

convert input.bmp output.pfm

此输出文件由Big endian制作。但我想转换成小端。

那么在ImageMagick上有从Big endian转换为Little endian的方法吗?

由于

1 个答案:

答案 0 :(得分:3)

可以使用-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

您可以通过翻译标题来确认小端。

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

用big endian重复上面。

$ 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|