mat2gray

Преобразуйте матрицу в полутоновое изображение

Описание

I = mat2gray(A,[amin amax]) преобразует матричный A к полутоновому изображению I это содержит значения в области значений 0 (черных цветов) 1 (белому). amin и amax значения в A это соответствует 0 и 1 в I. Значения меньше, чем amin отсекаются к 0, и значения, больше, чем amax отсекаются к 1.

пример

I = mat2gray(A) устанавливает значения amin и amax к минимальным и максимальным значениям в A.

Примеры

свернуть все

Считайте изображение и отобразите его.

I = imread('rice.png');
figure
imshow(I)

Figure contains an axes object. The axes object contains an object of type image.

Выполните операцию, которая возвращает числовую матрицу. Эта операция ищет ребра.

J = filter2(fspecial('sobel'),I);
min_matrix = min(J(:))
min_matrix = -779
max_matrix = max(J(:))
max_matrix = 560

Обратите внимание на то, что матрица имеет тип данных double со значениями за пределами области значений [0,1], включая отрицательные величины.

Отобразите результат операции. Поскольку область значений данных матрицы находится вне области значений отображения по умолчанию imshow, каждый пиксель с положительным значением отображается столь же белый, и каждый пиксель с отрицательной величиной или отображениями нулевого значения как черный. Это сложно, чтобы видеть ребра мелких частиц риса.

figure
imshow(J)

Figure contains an axes object. The axes object contains an object of type image.

Преобразуйте матрицу в изображение. Отобразите максимальные и минимальные значения изображения.

K = mat2gray(J);
min_image = min(K(:))
min_image = 0
max_image = max(K(:))
max_image = 1

Обратите внимание на то, что значения являются все еще типом данных double, но что все значения находятся в области значений [0, 1].

Отобразите результат преобразования. Пиксели показывают область значений полутоновых цветов, которая делает местоположение ребер более очевидным.

figure
imshow(K)

Figure contains an axes object. The axes object contains an object of type image.

Входные параметры

свернуть все

Введите изображение в виде числовой матрицы.

Введите черные и белые значения в виде числового вектора с 2 элементами.

  • Значения во входе отображают A это меньше чем или равно amin сопоставлены со значением 0 в изображении интенсивности, I.

  • Значения в A это больше или равно amax сопоставлены со значением 1 в I.

Выходные аргументы

свернуть все

Выведите изображение интенсивности, возвращенное как числовая матрица со значениями в области значений [0, 1].

Типы данных: double

Расширенные возможности

Смотрите также

| | |

Представлено до R2006a