3

我正在开发一种工具,该工具通过 Python 使用 ImageMagick 将大图像切割成较小的图块。而且我需要所有图块都采用相同的格式(png,8 或 16 位)。

在大多数情况下,它工作得很好,但在单色瓷砖上 ImageMagick 会在写入文件时压缩图片。例如,纯黑色图块被压缩为 1 位图片。

如文档中所述,我使用普通保存方法。

我没有找到有关此自动压缩功能的文档,也没有找到任何避免这种情况的方法。

是否有解决方法或避免这种情况发生的方法?

编辑:

例如,如果我使用此代码导入 24 位 rgb 图片:

from wand.image import Image

img = Image(filename ='http://upload.wikimedia.org/wikipedia/commons/6/68/Solid_black.png')

print img.type

我把它当作类型

   bilevel

如果我添加这个,

img.type = 'grayscale'

print img.type

我再一次得到

bilevel

如果我尝试像这样强制像素深度,

img.depth = 16

print img.type
print img.depth

我得到:

bilevel
16

我想也许它实际上改变了深度,但是一旦我保存图像,它又变成了 1 位深度。

所以在我看来,ImageMagick 只是自动压缩图片,我无法控制它。它甚至拒绝更改图像类型。

有什么想法可以避免这种情况吗?有什么方法可以强制像素深度?

4

0 回答 0