摄像师图像在matlab和octave中读取为彩色和灰度

时间:2017-07-21 06:57:35

标签: matlab octave

我从互联网上获得了摄像师图像。我尝试在八度音程中运行以下命令

 I=imread('original_cameraman.jpg');
 original = im2double(rgb2gray((I))); 

它显示以下错误:

错误:rgb2gray:输入必须是RGB图像或色彩图

我在matlab中尝试了相同的代码并且它正常工作。 Matlab将图像读取为彩色,而倍频程将其读取为灰度。是什么原因?如何在八度音程中正确运行代码?

我使用的摄影师图像如下:enter image description here

1 个答案:

答案 0 :(得分:2)

您的嵌入图片已经是灰度图片:

$ gm identify -verbose original_cameraman.jpg.jpg
Format: JPEG (Joint Photographic Experts Group JFIF format)
  Geometry: 512x512
  Class: DirectClass
  Type: grayscale
  Depth: 8 bits-per-pixel component
  Channel Depths:
    Gray:     8 bits
  Channel Statistics:
    Gray:
      Minimum:                     0.00 (0.0000)
      Maximum:                 65535.00 (1.0000)
      Mean:                    30296.32 (0.4623)
      Standard Deviation:      15987.34 (0.2440)

所以无需致电rgb2gray