是否可以使用ImageMagick命令获取特定通道的位深度?
我可以看到convert :rose -verbose info:
的各个频道深度,但我想知道是否有一个技巧只能打印alpha深度。
我这样做的原因是因为我正在尝试编写一个脚本来判断图像是否为:
我可以使用identify %[opaque] :rose
检查图像是否完全不透明,并且认为我可以通过检查alpha位深度是否大于1来检查透明度类型
答案 0 :(得分:1)
在Imagemagick中获取alpha通道的位深度,请尝试
convert transparent_image -alpha extract -format "%z\n" info:
或
convert transparent_image -alpha extract -format "%[depth]\n" info:
请参阅http://www.imagemagick.org/script/escape.php
例如:
convert logo: -transparent white -alpha extract -format "%z" info:
8
但是,这实际上可能是二进制的,但列为8位。
因此,您可能需要查看直方图或唯一颜色以查看存在多少实际颜色。
convert logo: -transparent white -alpha extract -format "%[colors]\n" info:
2
答案 1 :(得分:1)
通过一些痛苦的搜索和反复试验,我可能已经弄明白了。如果我跑
convert rose: -channel A -separate -format %[fx:z] info:-
我得到alpha通道中的位数。对于PNG,它似乎打印8,对于JPEG和GIF,它打印1。