有什么方法可以将RGB / CIElab值转换为R中的图像?

时间:2020-08-09 21:15:44

标签: r

我有一个数据帧,其中包含像素坐标以及每个像素的RGB和CIElab值。

这些值是从某个图像中抽象出来的。在此数据帧中更改了一些RGB / CIElab值之后,我想让“数据”回到“图像”。

我包括一个具有变量r,g,b,x和y的样本。 r,g和b包含每个像素的RGB值。x和y表示像素的坐标。

因此,基本上,我想使用此数据帧创建具有三个颜色通道(rgb)的图片。但是我不知道如何执行该过程。从图像中提取RGB值很容易。但是,反转过程非常困难。

           r      g       b     x   y
    1   0.91373 0.72157 0.45098 1   1
    2   0.86275 0.59216 0.21961 2   1
    3   0.84314 0.56471 0.18039 3   1
    4   0.83922 0.56078 0.17647 4   1
    5   0.84314 0.56471 0.18039 5   1
    6   0.84706 0.56863 0.18431 6   1
    7   0.85098 0.57255 0.18824 7   1
    8   0.85490 0.57647 0.19216 8   1
    9   0.85490 0.57647 0.19216 9   1
    10  0.85098 0.57255 0.18824 10  1

更新:

我尝试使用as.cimg函数

my_cimg <- as.cimg(unlist(rgb_image[1:3]), x=length(unique(rgb_image$x)), y=length(unique(rgb_image$y)),cc = 3)

它有效!!

谢谢!

0 个答案:

没有答案