如何从旧的BPG文件中删除Alpha通道以供新的libbpg查看?


0

我有几张旧的BPG编码图片。由于将PNG用作输入格式,因此它们具有一个(空)alpha通道,因此不能被较新的libbpg解码:

0.9.4版:

  • 修改后的Alpha平面编码允许渐进式显示和流式编码。此更改不兼容,因此无法解码包含以前版本格式的alpha图像。

我不需要这个Alpha通道。如何无损地将它们转换为新的BPG格式?

Answers:


0

使用我的工具从其中删除Alpha通道:https : //gist.github.com/vi/9297cd5bf80f0b34e8a2

它从旧的BPG文件中删除了Alpha通道,从而使它们可以被更新的BPG解码器解码。

$ bpgdec -i test.bpg
size=1606x1263 color_space=YCbCr alpha=1 premul=0 format=4:2:0 limited_range=0 bit_depth=8 animation=0
$ bpgdec test.bpg
Could not decode image

$ bpg93_remove_alpha.pl < test.bpg > test.noa.bpg
magic: 425047FB
PixelFormat: 1  alpha: 1  bitdepth: 8
ColorSpace: 0  ExtPresent: 0  Alpha2: 0 LimitedRange: 0 ReservedZero: 0
Width: 1606  Height: 1263
Picture data length: 81969
Alpha data length: 239

$ bpgdec -i test.noa.bpg 
size=1606x1263 color_space=YCbCr format=4:2:0 limited_range=0 bit_depth=8 animation=0
$ bpgdec test.noa.bpg
$
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.