如何在matlab中将L*a*b*转换为灰度
我已经将如何在matlab中将L*a*b*转换为灰度,matlab,image-processing,colors,color-space,lab-color-space,Matlab,Image Processing,Colors,Color Space,Lab Color Space,我已经将RGB图像转换为La*b*颜色空间,但我想将其转换为灰度。我不确定是否可以使用rgb2gray 有什么想法吗?颜色空间的L通道是灰度部分。照原样用就行了。使用rgb2gray将不能像预期的那样工作,因为它期望您作为输入提供给它的三个通道来自RGB颜色空间。如果您有CIELa*b*颜色空间表示中的图像,您可以使用Lab2RGB将其转换回RGB(可以找到)然后使用函数rgb2gray将图像转换为灰度 请注意,由rgb2gray生成的灰度图像与由RGB2Lab生成的L通道存在差异 在Matla
RGB
图像转换为La*b*
颜色空间,但我想将其转换为灰度。我不确定是否可以使用rgb2gray
有什么想法吗?颜色空间的
L
通道是灰度部分。照原样用就行了。使用rgb2gray
将不能像预期的那样工作,因为它期望您作为输入提供给它的三个通道来自RGB
颜色空间。如果您有CIELa*b*颜色空间表示中的图像,您可以使用Lab2RGB
将其转换回RGB(可以找到)然后使用函数rgb2gray
将图像转换为灰度
请注意,由rgb2gray
生成的灰度图像与由RGB2Lab
生成的L
通道存在差异
在Matlab中,灰度是通过简单的
0.2989 * R + 0.5870 * G + 0.1140 * B
其中,L
是通过更复杂的方式()实现的,因此给出了不同的结果
因此,根据您的需要或要求明智地选择