wolfram-mathematica - Mathematica RGB转灰度的详细计算

标签 wolfram-mathematica rgb grayscale

我试过了

ColorConvert[img, "Grayscale"]

RGB 转换为灰度。 我想知道mathematica的详细计算..

Gray level= square(R^2+G^2+B^2)?

还是别的什么?

最佳答案

我们可以通过用纯红、绿、蓝组成3像素图像并对其进行转换来获得mathematica使用的精确值:

 lvec = First@
         ImageData[
           ColorConvert[Image[{{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}}], 
             "GrayScale"]]

{0.299, 0.587, 0.114}

请注意,这些是 http://en.wikipedia.org/wiki/Luma_%28video%29 中的“Rec. 601 luna 系数”

在真实图像上测试:

 lena = ExampleData[{"TestImage", "Lena"}];
 lenag = ColorConvert[lena, "GrayScale"];
 ImageData@ImageApply[ lvec.# & , lena ] == ImageData@lenag

True

关于wolfram-mathematica - Mathematica RGB转灰度的详细计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27812393/

相关文章:

python - 在 Python 中使灰度数组中的非零元素等于 RGB 数组中 'G' 列中的 1

interface - Mathematica 和 GAP : Is there an interface?

parsing - BNFC 解析器和类似于 Mathematica 的语法

ios - 从 UIColor 中提取 RGB 值

c++ - 有什么方法可以确定 rgb 值数组的宽度和高度?

qt - QML:有什么方法可以使用标准整数 RGB 值吗?

javascript - 更改在 HTML5 canvas 元素上绘制的图像的颜色

wolfram-mathematica - 是否有用于展示证明/推导的 Mathematica 软件包?

matlab - 如何克服数值积分中的奇点(在 Matlab 或 Mathematica 中)

html - 灰度颜色在 IE 11 浏览器中不起作用