
Tengo un par de imágenes antiguas codificadas en BPG. Como se usó PNG como formato de entrada, obtuvieron un canal alfa (vacío), por lo que no se puede decodificar con el nuevo libbpg:
versión 0.9.4:
- Codificación del plano alfa modificada para permitir la visualización progresiva y la codificación de transmisión. Este cambio es incompatible, por lo que las imágenes que contengan alfa de versiones anteriores del formato no se pueden decodificar.
No necesito este canal alfa. ¿Cómo los convierto sin pérdidas al nuevo formato BPG?
Respuesta1
Utilice mi herramienta para eliminarles el canal alfa:https://gist.github.com/vi/9297cd5bf80f0b34e8a2
Elimina el canal alfa de los archivos BPG antiguos, haciéndolos decodificables con decodificadores BPG más nuevos.
$ 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
$