2016-08-09 2 views
5

イメージをpythonでCMYKからRGBに変換する必要があります。私は、このように枕を使用:ピローのCMYKからRGBへの変換はPhotoshopのものとは異なります

img = Image.open('in.jpg') 
img = img.convert('RGB') 
img.save('out.jpg') 

コードは動作しますが、私はフォトショップで同じ画像を変換する場合、以下のように私は別の結果を持っている: -

a

のみ操作が行われPhotoshopでCMYKからRGBにメソッドを変更することです。 2つのRGB画像にこのような違いがあるのはなぜですか?それはカラープロファイルの問題になりますか?

+0

Jgegの画像は、[カラーフォーマット](https://en.wi)として[YCbCr](https://en.wikipedia.org/wiki/YCbCr)を常に使用します。この変換は余分です - これはPhotoshopがこれを知っていて画像に触れていないように見えますが、枕は画像を普通に保存します(圧縮アーチファクトを追加する) – janbrohl

+2

枕も埋め込まれない可能性があります[ICCプロファイル](https://en.wikipedia.org/wiki/ICC_profile)に、画像の色を少し変えることを考慮してください。 – janbrohl

答えて

6

を解決した問題は、Photoshopがデフォルトとして1セットを持っていた枕は、入力されたICCプロファイルを知らないということです。

のためのPhotoshopの使用CMYKは:USウェブコーティングされた(SWOP)v2の

RGB:sRGBのIEC61966-2.1

だから私はこの方法で解決しました:

img = Image.open('in.jpg') 
img = ImageCms.profileToProfile(img, 'USWebCoatedSWOP.icc', 'sRGB Color Space Profile.icm', renderingIntent=0, outputMode='RGB') 
img.save('out.jpg', quality=100) 
関連する問題