Ваше изображение PNG является изображением RGB, а не изображением серого цвета. Он был сохранен как индексированное изображение, то есть 56 различных значений RGB были сохранены в таблице, и изображение ссылается на эти значения RGB, указав индекс для каждого пикселя.
Изображение, которое вы видите, состоит из индексы в таблицу цветов, а не фактические сохраненные значения RGB.
Вам необходимо прочитать и индексы, и карту цветов следующим образом:
[img,cm] = imread('https://i.stack.imgur.com/rke2o.png');
Далее вы можете восстановить исходный RGB изображения, используя ind2rgb
, или, если вы ищете изображение в оттенках серого, вы можете восстановить значения серого, используя ind2gray
:
img = ind2gray(img,cm);