我使用Haskell的‘HIP’库(这是一个复杂函数的着色)制作了这个图像:

enter image description here

现在,当我将R包‘Imager’的RGBtoHSI函数应用到这张图像上时,我得到了这个:

enter image description here

我想知道如何用"臀部"制作第一张照片中的第二张照片.在‘HIP’中有"RGB转HSI"功能,但它只是将RGB坐标转换为HSI坐标.我不知道R函数在做什么.我看了一下代码,但它是用C++编写的,它依赖于3MB的头文件.事实上,我想知道它是做什么的,也许我可以把它移植到Haskell.我不认为在‘HIP’中有内置的功能(我在文档中没有找到).

推荐答案

你的R版本只是输入错误和残缺的版本,你在Haskell/HIP中也是如此,toPixelHSI.具体地说,R转换所做的是生成一个Angular (范围0-360)的色调,但其他通道在0-1范围内.如果保存它,它会将色调Angular 映射到红色通道并规格化到Angular ,这意味着其他通道几乎完全被静噪到零-太低而看不到,但我们可以将它们增强(尽管它们当然只量化到两个级别):

R's hsi version with the crippled s and i channels boosted back

这在没有量化的情况下,基本上就是toPixelHSI在臀部给你的东西.

如果你真的想要你在R中得到的东西-好吧,明智的事情是只从HSI像素提取色调通道,并在上面使用你喜欢的任何 colored颜色 贴图.

或者,也许更有洞察力的是,只需从 作为实值函数的复数函数和曲线图.

R相关问答推荐

如何根据包含相同值的某些列获取总额

在通过最大似然估计将ODE模型与数据匹配时,为什么要匹配实际参数的转换值?

如何使用shinyChatR包配置聊天机器人

如何对数据集进行逆向工程?

查找图下的面积

在不安装软件包的情况下测试更新

如何改变x轴比例的列在面

对于变量的每个值,仅 Select 包含列表中所有值的值.R

如何删除最后一个可操作对象

在使用bslb和bootstrap5时,有没有办法更改特定dt行的 colored颜色 ?

如何在PackageStatus()中列出&q;不可用的包&q;?

在GG图中绘制射线的自动程序

使用R中的dist()迭代ID匹配的欧几里德距离

计算直线上点到参考点的总距离

通过初始的shiny 应用更新部署的shiny 应用的数据和参数,其中部署的应用程序显示为URL

ggplot R:X,Y,Z使用固定/等距的X,Y坐标绘制六边形热图

使用列中的值来调用函数调用中应使用的其他列

R中的交叉表

创建由三个单独的shapefile组成的单个 map

如何在R曲线图弹出窗口中更改r和theta标签