这是我们用来将 RGB 转换为相应 CMY 格式的公式:
C = 1 - ( R / 255 )
M = 1 - ( G / 255 )
Y = 1 - ( B / 255 )
我试图在将此公式应用于原始图像的 RGB 值后显示 CMY 图像,但我得到的结果值介于 0 和 1 之间。我认为这个范围不能用于显示图像.
如何将 CMY 值存储为数组,以便它们可用于显示图像? 我是否必须为此调整范围 0-1 到 0-255?
如果非要缩放的话,为什么要用这个公式,我可以直接用:
C = 255 - R
M = 255 - G
Y = 255 - B
最佳答案
#include <iostream>
using namespace std;
int main() {
float C = 1.0f - (R / 255.0f);
float M = 1.0f - (G / 255.0f);
float Y = 1.0f - (B / 255.0f);
float cmyArray[3] = {C, M, Y};
return 0;
}
此代码将存储 C
, M
, Y
变量为 floating points
然后为 3 floating points
创建一个数组被插入。在这种情况下,它以值 C
开始。 , M
, 和 Y
已经初始化到数组中。
关于c++ - 使用 C++ 的 RGB 到 CMY 颜色模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15871981/