Pillow JPEG2000格式
2021-07-09 15:43 更新
2.4.0 新版功能。
Pillow 可以读取和写入包含 L
, LA
, RGB
或 RGBA
数据的文件。它还可以读取包含 YCbCr
数据的文件,在读取时转换为 RGB
或 RGBA
取决于是否有alpha
通道。 Pillow 支持jpeg 2000原始代码流( .j2k
文件)以及打包的jpeg 2000文件( .j2p
或 .jpx
文件)。 Pillow 不支持组件采样频率不同的文件。
加载时,如果在调用 load()
方法前设置图像 mode
,就可以要求 Pillow 将图像转换为 RGB
或 RGBA
而不是自己选择。也可以设置 reduce
到要丢弃的分辨率数(每个分辨率将生成的图像的大小减少2倍),以及 layers
指定要加载的质量层的数量。
该save()
方法支持以下选项:
-
offset
图像偏移量,作为整数的元组,例如(16,16) -
tile_offset
图块偏移量,同样是整数的2元组。 -
tile_size
图块大小为2元组。如果未指定,或设置为None
,则图像将不平铺保存。 -
quality_mode
无论是"rates"
或"dB"
取决于您要使用指定的图像质量的单位。 -
quality_layers
一个数字序列,每一个数字代表一个近似的尺寸缩减(如果质量模式是"rates"
)或以分贝为单位的信噪比值。如果未指定,则默认为全质量的单层。 num_resolutions
要存储的不同图像分辨率的数量(对应于离散小波变换分解的数量加一)。-
codeblock_size
代码块大小为2元组。最小尺寸为4 x 4,最大尺寸为1024 x 1024,附加的限制是代码块的系数不得超过4096(即两个数字的乘积不得超过4096)。 -
precinct_size
区域大小为2元组。必须是两个轴上的二次幂,并且必须大于代码块大小。 -
irreversible
如果 True
,使用有损不可逆颜色转换,然后使用DWT 9-7。默认为 False
这意味着要使用与DWT 5-3可逆的颜色转换。 -
progression
控制进展顺序;必须是 "LRCP"
, "RLCP"
,"RPCL"
, "PCRL"
,"CPRL"
. 字母分别代表组件、位置、分辨率和层,并控制编码顺序,例如使用 LRCP 模式编码的图像可以在到达解码器时对其质量层进行解码,而使用 RLCP 模式编码的图像将越来越多的分辨率在到达时被解码,等等。 -
cinema_mode
设置编码器以产生符合数字电影规格的输出。这里的选项是 "no"
(默认), "cinema2k-24"
24FPS 2K, "cinema2k-48"
对于48fps 2K,以及"cinema4k-24"
对于24fps 4K。请注意,对于合规的 2K 文件, 您的图像尺寸至少必须匹配 2048 x 1080,而对于合规的 4K 文件,至少有一个尺寸必须匹配 4096 x 2160。
要启用jpeg 2000支持,您需要在构建Python图像库之前构建并安装OpenJPEG库(2.0.0或更高版本)。Windows 用户可以安装 OpenJPEG 网站上提供的 OpenJPEG 二进制文件,但必须将它们添加到他们的 PATH 中才能使用 Pillow(如果不这样做,您将收到无法加载
_imaging
DLL 的错误)。
以上内容是否对您有帮助:
更多建议: