有朋友可能会问,CMYK是浮点数,要保存怎么办?可以乘0xFF(255)。

void RGB2CMYK(int red, int green, int blue,
double& c, double& m, double& y, double& k)
{c = (0xFF - red  ) / 255.0;m = (0xFF - green) / 255.0;y = (0xFF - blue ) / 255.0;k = Math.min(c, Math.min(m, y));if (k == 1.0){c = m = y = 0;}else{c = (c - k) / (1 - k);m = (m - k) / (1 - k);y = (y - k) / (1 - k);}
}void CMYK2RGB(double c, double m, double y, double k, int& r, int& g, int& b)
{r = (int)((1.0 - c) * (1.0 - k) * 0xFF);g = (int)((1.0 - m) * (1.0 - k) * 0xFF);b = (int)((1.0 - y) * (1.0 - k) * 0xFF);
}

CMKY与RGB的转换相关推荐

  1. 【DSP开发】【VS开发】YUV与RGB格式转换

    [视频处理]YUV与RGB格式转换 YUV格式具有亮度信息和色彩信息分离的特点,但大多数图像处理操作都是基于RGB格式. 因此当要对图像进行后期处理显示时,需要把YUV格式转换成RGB格式. RGB与 ...

  2. GPU 实现 RGB -- YUV 转换 (OpenGL)

    GPU 实现 RGB -- YUV 转换 前言 RGB --> YUV 转换的公式是现成的,直接在 CPU 端转换的话,只需要遍历每个像素,得到新的 YUV 值,根据其内存分布规律,合理安排分布 ...

  3. 使用Opencv将RGB颜色空间转换到HSV颜色空间/灰度图

    一. 使用cvCvtColor函数将RGB颜色空间转换到HSV颜色空间 所需函数: 1.cvCvtColor 函数功能:颜色空间转换 函数原型: void cvCvtColor( const CvAr ...

  4. YUV420P、YUV420SP、NV12、NV21和RGB互相转换并存储为JPEG以及PNG图片

    音视频实践学习 android全平台编译ffmpeg以及x264与fdk-aac实践 ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务器 android全平台编译ffm ...

  5. C语言运行时变成灰色,C语言实现RGB图像转换成灰(Gray)度图像

    以前实现RGB图像转换成灰度图像都是直接调用OpenCV的库函数RGB2GRAY(IplImage* src);最近老板让我们除了读入输出图像实时用OpenCV的函数,其余的最好都是自己写,所以我自己 ...

  6. 色温(Kelvin)到RGB的转换:算法和样例

                             色温(Kelvin)到RGB的转换:算法和样例 据我所知,还不太可能找到从色温到RGB转换的一个可靠的公式.虽然,有很多算法实现了类似的功能,但是,大 ...

  7. 使用MFC实现将图像的RGB值转换到HSV空间,同时进行调节HSV,再将调节后的HSV值传进去转换到RGB空间实现图像在HSV空间中的色度、饱和度、亮度的调节

    工程上传到了github ,之前有一版忘记推送了,现在这个链接应该是没问题的了 工程的github链接 希望能帮到你. 文章内容: 1.回顾上文 2.实验步骤&要点提示&代码分析 3. ...

  8. rgb 光谱 转换_使用深度学习将RGB图像转换为高光谱

    rgb 光谱 转换 Finding an applicable cost-effective way to convert and use hyperspectral images. 寻找一种适用的具 ...

  9. RGB图像转换到CIELab空间的研究及优化

    第一次写博客,没有太多经验,初入图像处理方向的炒鸡菜鸟,看着大神们都有自己的博客,而且总是学习大神的文章,心里除了满满的敬佩,还有一丝丝的失落,后悔自己当初读本科时没学计算机方向,现在研究僧半路出家学 ...

  10. RGB图像转换成YCbCr图像,rgb2ycbcr的使用,转换参数

    原理 YCbCr到RGB的转换 Y' = 0.257*R' + 0.504*G' + 0.098*B' + 16Cb' = -0.148*R' - 0.291*G' + 0.439*B' + 128C ...

最新文章

  1. LeetCode Maximum XOR of Two Numbers in an Array(贪心、字典树)
  2. 插入排序之Java实现
  3. vue样式绑定与事件处理器的基本使用
  4. 678. 有效的括号字符串
  5. MySQL从5.5升级到5.6,TIMESTAMP的变化
  6. SpringBoot使用ControllerAdvice和ExceptionHandler进行统一异常处理
  7. html烟火源码,HTML5:烟火
  8. Visual Studio自定义调试窗体两个小技巧
  9. Qt之QTreeView的简单使用(含源码+注释)
  10. 行走在崩溃边缘,程序猿“自救”指南!
  11. 金典指纹考勤机安装及使用操作步骤
  12. linux关闭cups服务 关闭631端口 关闭avahi-daemon服务
  13. 数据流图(Data Flow Diagram ,简称DFD)
  14. windows7蓝牙怎么打开_【windows7】IP地址查询方法
  15. mysql 迪卡尔运算_「笛卡尔乘积」mysql笛卡儿积 - seo实验室
  16. docker启动容器发生Error response from daemon故障
  17. DVWA 反射型XSS XSS(Reflected)题解
  18. Eclipse Che安装入门和使用(一)
  19. 论文第一部分引言该如何写(三步秘笈)
  20. 第32节:Java中-构造函数,静态方法,继承,封装,多态,包

热门文章

  1. matlab 时间步 图,MATLAB运行显示输入和目标具有不同的时间步?
  2. CUBA Platform 7.0.3 发布,企业级应用开发平台
  3. ZABBIX 4.0 安装过程记录
  4. 区块链100问:区块链到底能不能篡改?
  5. iOS Unicode转中文(UTF-8)
  6. shell脚本之安装ansible(centos7环境)
  7. [C++/CLI编程宝典][7]基本概念
  8. Funcom Seeking Volunteer Mods - Part 3
  9. 仿微信app项目流程
  10. java中选择排序,冒泡排序和二分法查找学习记录