Pillow JPEG2000格式

2021-07-09 15:43 更新

2.4.0 新版功能。

Pillow 可以讀取和寫入包含 ??, ?LA ?, ?RGB ?或 ?RGBA ?數(shù)據(jù)的文件。它還可以讀取包含 ?YCbCr ?數(shù)據(jù)的文件,在讀取時轉(zhuǎn)換為 ?RGB ?或 ?RGBA ?取決于是否有?alpha?通道。 Pillow 支持jpeg 2000原始代碼流(? .j2k? 文件)以及打包的jpeg 2000文件( ?.j2p ?或? .jpx ?文件)。 Pillow 不支持組件采樣頻率不同的文件。

加載時,如果在調(diào)用 ?load()? 方法前設(shè)置圖像 ?mode ?,就可以要求 Pillow 將圖像轉(zhuǎn)換為 ?RGB ?或 ?RGBA ?而不是自己選擇。也可以設(shè)置 ?reduce ?到要丟棄的分辨率數(shù)(每個分辨率將生成的圖像的大小減少2倍),以及 ?layers ?指定要加載的質(zhì)量層的數(shù)量。

該?save()?方法支持以下選項:

  • ?offset? 圖像偏移量,作為整數(shù)的元組,例如(16,16)
  • ?tile_offset 圖塊偏移量,同樣是整數(shù)的2元組。
  • ?tile_size ?圖塊大小為2元組。如果未指定,或設(shè)置為?None?,則圖像將不平鋪保存。
  • ?quality_mode ? 無論是?"rates"?或?"dB"?取決于您要使用指定的圖像質(zhì)量的單位。
  • ?quality_layers ? 一個數(shù)字序列,每一個數(shù)字代表一個近似的尺寸縮減(如果質(zhì)量模式是? "rates"? )或以分貝為單位的信噪比值。如果未指定,則默認為全質(zhì)量的單層。
  • num_resolutions ? 要存儲的不同圖像分辨率的數(shù)量(對應(yīng)于離散小波變換分解的數(shù)量加一)。
  • ?codeblock_size ? 代碼塊大小為2元組。最小尺寸為4 x 4,最大尺寸為1024 x 1024,附加的限制是代碼塊的系數(shù)不得超過4096(即兩個數(shù)字的乘積不得超過4096)。
  • ?precinct_size? 區(qū)域大小為2元組。必須是兩個軸上的二次冪,并且必須大于代碼塊大小。
  • ?irreversible ? 如果 ?True ?,使用有損不可逆顏色轉(zhuǎn)換,然后使用DWT 9-7。默認為 ?False ?這意味著要使用與DWT 5-3可逆的顏色轉(zhuǎn)換。
  • ?progression ? 控制進展順序;必須是 ?"LRCP"? , ?"RLCP"? ,? "RPCL"? , ?"PCRL"? ,? "CPRL"? . 字母分別代表組件、位置、分辨率和層,并控制編碼順序,例如使用 LRCP 模式編碼的圖像可以在到達解碼器時對其質(zhì)量層進行解碼,而使用 RLCP 模式編碼的圖像將越來越多的分辨率在到達時被解碼,等等。
  • ?cinema_mode ? 設(shè)置編碼器以產(chǎn)生符合數(shù)字電影規(guī)格的輸出。這里的選項是 ?"no" ?(默認), ?"cinema2k-24"? 24FPS 2K, ?"cinema2k-48"? 對于48fps 2K,以及? "cinema4k-24" ?對于24fps 4K。請注意,對于合規(guī)的 2K 文件, 您的圖像尺寸至少必須匹配 2048 x 1080,而對于合規(guī)的 4K 文件,至少有一個尺寸必須匹配 4096 x 2160。

要啟用jpeg 2000支持,您需要在構(gòu)建Python圖像庫之前構(gòu)建并安裝OpenJPEG庫(2.0.0或更高版本)。

Windows 用戶可以安裝 OpenJPEG 網(wǎng)站上提供的 OpenJPEG 二進制文件,但必須將它們添加到他們的 PATH 中才能使用 Pillow(如果不這樣做,您將收到無法加載? _imaging?DLL 的錯誤)。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號