CMYK圖片轉sRGB時,出現明顯的色差的解決方案


參考資料:

https://imagemagick.org/discourse-server/viewtopic.php?t=36184

https://www.imagemagick.org/discourse-server/viewtopic.php?t=16464

https://www.zhihu.com/question/30419311 (各個 CMYK color profile 之間有哪些區別?)

 

摘自網上的一段話

也許它們是:

1.具有嵌入式配置文件的CMYK。
2. CMYK,沒有嵌入式配置文件。

(1)可以使用“ -profile sRGB.icc”而不是“ -colorspace sRGB”或“ -strip”進行轉換。

(2)需要猜測,例如分配CMYK配置文件,然后與(1)相同。

 

也就是說,CMYK 圖片分兩種情況:

1. 如果這個 CMYK 圖片有配置文件(icc profile),在轉換成 sRGB時,可以通過 -profile sRGB.icc 來進行色彩我轉換。

2. 如果這個 CMYK 圖片不帶配置文件(icc profile),那就只能先給這個 CMYK 圖片指定一個配置文件, 然后再通過  -profile sRGB.icc 來進行色彩我轉換,例如使用下面的這個命令:

convert cmyrk.jpg -profile USWebCoatedSWOP.icc -profile sRGB.icc -colorspace sRGB srgb.jpg

---------------------------------------------------

通過 identify.exe -verbose cmyk.jpg 可以查看一個 cmyk 圖片是否帶有 icc 配置文件。

---------------------------------------------------

注意: 測試的時候發現一個優先級問題:

convert -verbose cmyk3.jpg -profile sRGB.icc -colorspace sRGB rgb3.jpg (這個是想要的效果)

convert -verbose cmyk3.jpg -colorspace sRGB -profile sRGB.icc rgb3.jpg

測試發現, -profile 與 -colorspace 都存在時, -colorspace 需要放在 -profile 后面執行。

---------------------------------------------------

經過查看 ImageMagick 的源代碼,證實 MagickGetImageProfile() 的返回值需要 MagickRelinquishMemory() 釋放。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM