对于给定的图像,如果我使用imread进行读取,三个通道中的值是否会在[0,255]的范围内?如果我使用rgb2gray传输此图像,该值是否在[0,1]范围内?
基于skimage doc,rgb2gray的计算结果为
Y = 0.2125 R + 0.7154 G + 0.0721 B
在我看来,这不能保证rgb2gray的结果将始终属于[0,1]。这有点困惑。
对于给定的图像,如果我使用imread进行读取,三个通道中的值是否会在[0,255]的范围内?如果我使用rgb2gray传输此图像,该值是否在[0,1]范围内?
基于skimage doc,rgb2gray的计算结果为
Y = 0.2125 R + 0.7154 G + 0.0721 B
在我看来,这不能保证rgb2gray的结果将始终属于[0,1]。这有点困惑。
当scikit-image中的图像转换为浮点(即非整数)类型时,它们将转换为[0,1]范围。因此,rgb2gray中的管道首先要除以255,然后再乘以该公式。有关更多信息,请参阅此页面:
https://scikit-image.org/docs/dev/user_guide/data_types.html