CentOS8环境中使用Graghics Magick将CMYK图片生成适用于chrome、Edge、QQ浏览器浏览的sRGB图片

本文所需软件包下载地址:https://download.csdn.net/download/lixg_cc1/20618945?spm=1001.2014.3001.5503

在使用谷歌浏览器浏览数字报图片时发现原本清晰的图片变模糊,像添加了蒙版的感觉,如下图

图片灰蒙蒙的,从谷歌浏览器换成了Edge、QQ浏览器都是如此,这就很难受。因为是报纸土图片,图片处理小白第一反应就怀疑是CMYK模式惹的祸,原图color space是CMYK模式,经查询,大多数浏览器的color space是sRGB。以下是查到的主流浏览器支持的color space

下面是各个浏览器目前对色彩管理支持程度的简报:

  • ICC V2 读取支持:Chrome,Firefox,Safari,Edge
  • ICC V4 读取支持:Chrome,Firefox,Safari,Edge
  • 转换 Untagged 内容到 sRGB(图片/CSS):Chrome(默认),Firefox(需要自行开启)
  • 转换 Untagged 内容到 Rec. 709(视频):Chrome(默认)
  • 转换 Tagged 内容到相应的色彩空间(图片/CSS):Chrome(支持,默认),Firefox(支持 ICC V2/V4,V2 默认开启,V4 需手动开启)
  • 转换 Tagged 内容到相应的色彩空间(视频):Chrome(支持,默认)

色彩管理能力:Chrome>Firefox(配置)>Firefox(未配置)>Safari>Edge

color space这个信息影响着图像在不同端呈现出来样子,想要在谷歌浏览器浏览报纸图片就要将图片的color space 从CMYK转成sRGB,且尽可能保证图片质量。如果你只有几张图片,工程量不大,那么就在Windows上使用PS直接修改图片模式为RGB,或者直接将推片保存成web模式,PS自动会将图片的color space变成sRGB

 但是我需要在centos8环境下持续大批量的处理图片,所以我选择了Graghics Magick,这是一款功能强大图片处理软件,速度蛮快的。但是在使用过程中遇到了很多问题,中文网站上关于它的介绍,大多数还是如何安装,实例很少。

首先在window 10环境下安装Graghics Magick,查询使用手册,决定使用convert来进行图片的color space转换。说明书上关于color space的转换介绍太过简洁,支持转换的color space里并不包括sRGB,所以用RGB试了试

gm convert -colorspace RGB a.jpg b.jpg

转换后的图片在chrome里确实不发灰了,改过亮了,多看一会都辣眼睛。

直接硬转sRGB更惊悚

gm convert -colorspace sRGB a.jpg b.jpg

确实但是GM本身是支持sRGB的。后经查询,color space还需要icc文件支持。

icc的原理是将色彩特性资料预先保存于色彩描述文档,当发生color space转化时,有预先保留的icc文件在,图片原色彩就能在转化后保存住并正常显示。

下载一份sRGB的icc文件(我稍后上传),放到本机上,再-profile调用一下sRGB的icc文件,再转换colorspace,就齐活啦!(好想吐槽,这些图像处理网上的信息小白好难查询)

gm convert -profile D:\sRGB.icm -colorspace sRGB a.jpg b.jpg

至此,windows10上使用Graghics Magick将CMYK图片转换sRGB图片且尽可能保持原图色彩的任务就大功告成了。

事情还没完,此法用到centos系统上就出问题了,报了个错:

gm convert: LCMS encoding not enabled 

 这个错误我没有找到有用的说明,只能依靠自己猜想,那么一定跟LCMS这个东西有关,win10可以,Linux不行,可能是少东西或少配置,查到头秃后,找到了一小段关于LCMS的介绍

LCMS

Color Space Fixer requires you to have ImageMagick built with LCMS support. LCMS or Little CMS is a color management system library which is required to in order to convert files between different color spaces. LCMS is included by default in most ImageMagick builds.

If LCMS delegate has not been installed, you will get an error message: Color Space Fixer is activated but it’s not doing anything because LCMS delegate for ImageMagick has not been installed.. In this case you might need to build ImageMagick from source using --with-lcms2=yes flag.

 我的理解color space需要LCMS,LCMS没安装或者没配置对的话,color space也无法正常使用,ImageMagick这里需要--with-lcms2=yes来配置一下,Graghics Magick从ImageMagick这个软件发展来的,二者相似。那么继续啃Graghics Magick的说明书,多次碰壁后,我找到了这一段

  • GraphicsMagick requires the lcms library (2.0 or later) available from

    http://www.littlecms.com/

    to perform ICC CMS color management.

通过以上网址,下载LCMS2安装包,解压如果编译安装。

下载Graghics Magick源码包,解压编译时加上 --with-lcms2=yes参数,make && make install后,使用/usr/local/bin/gm version查看版本,如下图,此时LCMS显示yes。GM支持lcms。

将sRGB.icc文件拷入,再次进行图片转换,gm convert -profile /root/sRGB.icc -colorspace sRGB a.jpg b.jpg命令,成功转换。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lixg_cc1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值