Adobe 色彩 系统 RGB 和 CMYK 相互转换原理

为了说明 adobe 的 RGB 转换 CMYK 的过程,不得不先涉及到一些色彩转换 程序 方面的东西。

CMYK_ADOBE_COLORSPACE:
r = (k*c)/maxval;
g = (k*m)/maxval;
b = (k*y)/maxval;

以上是 adobe 的 CMYK 到 RGB转换公式,下面再来看看 RGB 如何 转换为 CMYK

下面的语句是经过改写的适用于 Flash 的 actionscript

// RGB to CMY 色彩转换
function rgbtocmy () {
mycyan = 255 - myred;
mymagenta = 255 - mygreen;
myyellow = 255 - myblue;
correctCMYK();
}

// CMY to RGB 色彩转换
function cmytorgb () {
myred = 255 - mycyan;
mygreen = 255 - mymagenta;
myblue = 255 - myyellow;
correctCMYK();
}

// CMYK 色彩修正
function correctCMYK () {
if (rep_v != "ERR") {
var temp = Math.min(Math.min(mycyan, mymagenta), myyellow);
if (temp != 0) {
temp2 = Math.round((rep_v / 100) * temp);
rep_k = Math.round((temp2 / 255) * 100);
rep_c = Math.round(((mycyan - temp2) / 255) * 100);
rep_m = Math.round(((mymagenta - temp2) / 255) * 100);
rep_y = Math.round(((myyellow - temp2) / 255) * 100);
} else {
rep_c = Math.round((mycyan / 255) * 100);
rep_m = Math.round((mymagenta / 255) * 100);
rep_y = Math.round((myyellow / 255) * 100);
rep_k = 0;
}
}
}

我们知道, RGB 和 CMYK 并不能一一对应,这里面存在的问题是黑色部分的替换值的取值问题。

但是, RGB 所可以全部对应的,是CMY 格式,其最取值范围是0-255。从色轮上我们可以很容易的了解到这其中的补色计算关系。因此,CMY 和 RGB 的对换 可以说是“无损,可逆转”的。

当从RGB 得到相应的CMY 之后,我们若要得到 CMYK 值,就必须定义一个“黑色替换值”,也就是说提取各色通道中的若干成分来形成黑色通道。CMYK 的取值是 0-100。

这个“黑色替换值”的取值不同,得到的CMYK分量分布也就不同。也就是我们在 photoshop 里面可以选择 CMYK 的分色方案为 “UCR”或者“GCR”的不同。

“黑色替换值”越大,CMYK图像在印刷时的偏色几率就越小,但相应的状况是图片彩墨分量在暗黑部位显薄,不够饱和。这种分色方式适用于印刷材质较薄或较粗糙,印刷精度不高的场合。

附注:为什么直接去色和直接转换灰度比 Lab 的 L 通道得到的灰度层次显得差?

我们还是来用色彩转换公式说话来比较:
L = 0.3R+0.59G+0.11B
Gray = (R+G+B)/3

我们很容易就看出区别,平均取值的灰度和根据色彩明度增益比例混合的值是完全不同的。

RGB 和 CMYK 相互转换相关推荐

  1. VC编程实现色彩空间RGB与XYZ相互转换

    VC编程实现色彩空间RGB与XYZ相互转换 使 用过PhotoShop软件的朋友对色彩空间应该不会感到陌生,在PhotoShop中经常使用有RGB(红色.绿色.蓝色).CMYK(青色.洋红.黄 色.黑 ...

  2. rgb红色范围_UI设计教程分享之RGB与CMYK色彩模式对比

    合理运用色彩是每一个UI设计师都应该具备的基本技能,但对于UI设计新手却是说来容易做来难.怎样才能正确的使用色彩让作品更出众呢?接下来就给大家介绍下UI设计必知技术点之RGB与CMYK色彩模式对比. ...

  3. JS实现RGB,HSL,HSB相互转换

    前言 最近呢,在写色彩选择器小插件的时候需要用到RGB,HSL,HSB相互转换的一些东西,就想着好好整理一下这方面的内容,顺便用js实现一下三者之间的转换,通过对色彩转换的学习,对平时整整ps,摄影也 ...

  4. UI设计教程分享之RGB与CMYK色彩模式对比

    合理运用色彩是每一个UI设计师都应该具备的基本技能,但对于UI设计新手却是说来容易做来难.怎样才能正确的使用色彩让作品更出众呢?接下来就给大家介绍下UI设计必知技术点之RGB与CMYK色彩模式对比. ...

  5. 为什么RGB 与 CMYK的差异,会有所不同?

    RGB 与 CMYK 有什么区别 RGB 颜色模式用于设计网站和电视等数字通信.CMYK 颜色模式用于设计印刷通讯,如名片和海报. 这只是简单的区别.如果您有兴趣了解更多关于为什么这种差异很重要的信息 ...

  6. 图像的模式(RGB和CMYK)、通道(8位、16位、32位)分别有什么作用

    近一段时间虽然很忙,但是有一个疑问一直困惑着我,那就是在制作图像时的RGB和CMYK模式以及分辨率的问题,今天忙里偷闲在网上找到了一些答案,算是明白了一些. 有好东西也不能自己独享,特发上来共赏. P ...

  7. python:实现RGB和HSV相互转换算法(附完整源码)

    python:实现RGB和HSV相互转换算法 def hsv_to_rgb(hue: float, saturation: float, value: float) -> list[int]:i ...

  8. RGB和HSV相互转换

    RGB和HSV相互转换 目录 RGB和HSV相互转换 1. RGB2HSV 像素级转换 图像级转换(调cv库) 图像级转换(调Pillow库) HSV2RGB 像素级转换 图像级转换(调cv库) 图像 ...

  9. HSI、HSV、RGB、CMYK、HSL、HSB、Ycc、XYZ、Lab、YUV颜色模型的区别

    HSI.HSV.RGB.CMYK.HSL.HSB.Ycc.XYZ.Lab.YUV颜色模型的区别 HSV颜色空间 HSV(hue,saturation,value)颜色空间的模型对应于圆柱坐标系中的一个 ...

最新文章

  1. Android 知识点梳理
  2. Spring Boot 系列(五)web开发-Thymeleaf、FreeMarker模板引擎
  3. 《IBM-PC汇编语言程序设计》(第2版)【沈美明 温冬婵】——第十一章——自编解析与答案
  4. 大工13秋《专业英语(计算机英语)》在线测试2,大工13秋《专业英语(计算机英语)》在线测试2答案...
  5. sqlite to mysql_SqliteToMysql
  6. 将NetBeans代码模板弯曲到我的意愿
  7. php将对象转换成数组
  8. 实现当前月记录,下12个月发送提醒。蛋疼的2月.
  9. mysql解释命令,MySQL中EXPLAIN解释命令
  10. 机器学习算法的差异_我们的机器学习算法可放大偏差并永久保留社会差异
  11. 写“博客”页面踩过的坑
  12. 中兴力维动环监控接线图_中兴力维动环监控与智能管理解决方案,让运维管理更高效!...
  13. Mac iOS Simulator录制Gif图
  14. 【学习体会】Lighttools8.4.0:软件基本使用+光度学基本概念+系统初始设置
  15. 小米数据收集利器:AgentSource
  16. 利用E4A编写APP获取安卓手机加速度传感器数据
  17. 在Visual Studio代码内部调试节点应用
  18. 【Prism】MEF版Commanding
  19. [转载]100本名著浓缩成的100句话
  20. 解读scrapy各个组件中的from_crawler()方法

热门文章

  1. 在线制图工具团队版介绍
  2. 2_竞赛无人机基础飞行控制函数——零基础学习竞赛无人机搭积木式编程
  3. 【每日蓝桥】8、一三年省赛Java组真题“打印十字图”
  4. 多年编码经验血泪史总结,你若想学Python,必须看完这几点再做决定
  5. ng-init、ng-bind、ng-model和ng-value区别
  6. 纯CSS实现图片列表悬停放大效果的方法
  7. Box2D 实现不倒翁效果 绘制扇形
  8. 小孩用的台灯什么样的品牌好?2023儿童台灯灯具品牌排行榜
  9. 一球从h米高度自由下落,每次落地后返回原高度的一半,再落下。它在第N次落地时共经过多少米?反弹多高?
  10. 嵌入式开发板如何自动登陆校园网实现上网