文档

rgb2gray

转换RGB图像或彩色映射到灰度

语法

I = rgb2gray (RGB)
newmap = rgb2gray(地图)

描述

例子

= rgb2gray (RGB)转换真彩色图像RGB灰度强度图像。的rgb2gray函数将RGB图像转换为灰度,消除色相和饱和度信息,同时保留亮度。如果您安装了并行计算工具箱™,rgb2gray可以在GPU上执行此转换。

例子

newmap= rgb2gray (地图)返回相当于的灰度颜色映射地图

例子

全部折叠

读取并显示一个RGB图像,然后将其转换为灰度。

读取示例文件,peppers.png,并显示RGB图像。

RGB = imread (“peppers.png”);imshow (RGB)

将RGB图像转换为灰度图像并显示它。

I = rgb2gray (RGB);图imshow(我)

使用RGB颜色映射读取索引图像。然后,将颜色映射转换为灰度。

读取示例文件,corn.tif,它是一个带有RGB颜色映射的索引图像。

[X,地图]= imread (“corn.tif”);

显示图像。

imshow (X,地图)

将RGB颜色映射转换为灰度颜色映射并重新显示图像。

newmap = rgb2gray(地图);imshow (X, newmap)

输入参数

全部折叠

Truecolor图像,指定为三维数字数组。

如果你安装了并行计算工具箱,RGB也可以是gpuArray。

数据类型:||uint8|uint16

颜色映射,指定为3数值数组。

如果你安装了并行计算工具箱,地图也可以是gpuArray。

数据类型:

输出参数

全部折叠

灰度图像,返回为数字数组。

如果您安装了并行计算工具箱,那么也可以是gpuArray。

灰度彩色地图,返回作为一个3数值数组。

如果您安装了并行计算工具箱,那么newmap也可以是gpuArray。

提示

  • rgb2gray万博1manbetx支持生成的C代码使用MATLAB®编码器™

算法

rgb2gray的加权和将RGB值转换为灰度值R,G,B组件:

0.2989 * R + 0.5870 * G + 0.1140 * B

这些是相同的权重rgb2ntsc计算的函数Y组件。

系数用于计算灰度值rgb2gray计算亮度(E’y)的方法与俄联- r BT.601-7中四舍五入至小数点后3位计算亮度的方法相同。

Rec.ITU-R BT.601-7使用以下公式计算E'y:

0.299 * R + 0.587 * G + 0.114 * B

扩展功能

C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。

这个话题有用吗?