如何使用Python和Wand获得正确的图像深度?

2024-06-26 02:38:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我不是一个图像压缩专家,但我正在寻找图像的深度。下面的Python代码片段显示了8的图像深度,但是其他(更可靠的)方法表明深度实际上是32。在

url="http://lesschwab.com/images/product-wizard-ad-tires.png"
width=177, height=177, depth=8, type=truecolormatte, colorspace=srgb

我怀疑是基于通道数、色彩空间或其他因素的乘数。如何找到或计算实际的图像深度?在

^{pr2}$

编辑:附加信息:

我使用相同的py代码来读取可能出现在web上的每种可能的图像类型,所以我必须在语法上做到这一点。对于这个特定的图像,我可以看到8英寸的值图像通道深度【红色】,图像通道深度[绿色],图像通道深度[“蓝色”]&;图像通道深度['alpha']但是还有15个通道深度键,它们都有值。我猜“sRGB”的颜色空间意味着映射到alpha、red、green和blue通道深度。不幸的是,似乎有34种颜色空间类型:

('undefined', 'rgb', 'gray', 'transparent', 'ohta', 
 'lab', 'xyz', 'ycbcr', 'ycc', 'yiq', 'ypbpr', 'yuv', 'cmyk', 
 'srgb', 'hsb', 'hsl', 'hwb', 'rec601luma', 'rec601ycbcr', 
 'rec709luma', 'rec709ycbcr', 'log', 'cmy', 'luv', 'hcl', 
 'lch', 'lms', 'lchab', 'lchuv', 'scrgb', 'hsi', 'hsv', 
 'hclp', 'ydbdr') 

和19个可能的通道深度键:

['opacity', 'true_alpha', 'gray', 'rgb_channels', 
'yellow', 'sync_channels', 'default_channels', 'alpha', 
'cyan', 'magenta', 'undefined', 'blue', 'index', 
'gray_channels', 'composite_channels', 'green', 
'all_channels', 'black', 'red']

我希望在压缩类型/颜色空间和它们相关的通道深度之间找到一个映射表(或者可能只是每个颜色空间的深度乘数)。在


Tags: 代码图像alpha类型颜色空间greenblue
1条回答
网友
1楼 · 发布于 2024-06-26 02:38:42

如果像这样从命令行运行ImageMagick,您将看到它有4个通道(RGB和Alpha),每个通道都是8位的,因此它实际上是一个32位的图像。在

identify -verbose http://lesschwab.com/images/product-wizard-ad-tires.png

输出

^{pr2}$

相关问题 更多 >