Если вы нуждаетесь в помощи, определяя, с каким изображением вы работаете, смотрите Типы изображения в Тулбоксе.
Отобразить индексируемое изображение с помощью также imshow
функционируйте или приложение Image Viewer, задайте и матрицу изображений и палитру. Этот пример кода использует имя переменной X
представлять индексируемое изображение в рабочей области и map
представлять палитру.
imshow(X,map)
или
imtool(X,map)
Для каждого пикселя в X
, эти функции отображают цвет, сохраненный в соответствующей строке map
. Если данные о матрице изображений имеют тип данных double
, значение 1 точка к первой строке в палитре, значение 2 точки к второй строке, и так далее. Однако, если данные о матрице изображений имеют тип данных uint8
или uint16
, значение 0 (нулей) указывает на первую строку в палитре, значение 1 точка к второй строке, и так далее. Это смещение обработано автоматически приложением Image Viewer и imshow
функция.
Если палитра содержит большее количество цветов, чем изображение, функции игнорируют дополнительные цвета в палитре. Если палитра содержит меньше цветов, чем изображение требует, функции устанавливают все пиксели изображения по пределам способности палитры к последнему цвету в палитре. Например, если изображение типа данных uint8
содержит 256 цветов, и вы отображаете его с палитрой, которая содержит только 16 цветов, все пиксели со значением 15 или выше отображена с последним цветом в палитре.
Чтобы отобразить полутоновое изображение, вызовите imshow
функционируйте или откройте приложение Image Viewer. Эта документация использует имя переменной I
представлять полутоновое изображение в рабочей области.
Обе функции отображают изображение путем масштабирования значений интенсивности, чтобы служить индексами в полутоновую палитру.
Если I
double
, пиксельное значение 0,0 отображено столь же черное, пиксельное значение 1,0 отображено, столь же белые, и промежуточные пиксельные значения отображены как оттенки серого. Если I
uint8
, затем пиксельное значение 255 отображено как белое. Если я - uint16
, затем пиксельное значение 65 535 отображено как белое.
Полутоновые изображения похожи на индексируемые изображения, в которых каждый использует m-by-3 палитра RGB, но вы обычно не задаете палитру для полутонового изображения. MATLAB® полутоновые изображения отображений при помощи полутоновой системной палитры (где R=G=B). По умолчанию количество уровней серого цвета в палитре 256 в системах с 24-битным цветом, и 64 или 32 в других системах. (См. цвета отображения для подробного объяснения.)
В некоторых случаях данные изображения, которые вы хотите отобразить как полутоновое изображение, могли иметь область значений отображения, которая находится вне обычной области значений тулбокса (то есть, [0, 1] для single
или double
массивы, [0, 255] для uint8
массивы, [0, 65535] для uint16
массивы, или [-32767, 32768] для int16
массивы). Например, если вы фильтруете полутоновое изображение, некоторые выходные данные могли бы выйти за пределы области значений исходных данных.
Чтобы отобразить нетрадиционные данные об области значений как изображение, можно указать диапазон отображения непосредственно, с помощью этого синтаксиса для обоих imshow
и imtool
функции.
imshow(I,'DisplayRange',[low high])
или
imtool(I,'DisplayRange',[low high])
Если вы используете пустую матрицу ([]
) для области значений отображения эти функции масштабируют данные автоматически, установку low
и high
к минимальным и максимальным значениям в массиве.
Следующий пример фильтрует полутоновое изображение, создавая нетрадиционные данные об области значений. Пример вызывает imtool
отобразить изображение в Image Viewer, с помощью опции автоматического масштабирования. Если вы выполняете этот пример, отметьте диапазон отображения, указанный в правом нижнем углу окна Image Viewer.
I = imread('testpat1.png'); J = filter2([1 2;-1 -2],I); imtool(J,'DisplayRange',[]);
В MATLAB бинарное изображение имеет тип данных logical
. Бинарные изображения содержат только 0 и 1's. Пиксели со значением 0 отображены как черные; пиксели со значением 1 отображены как белые.
Примечание
Для тулбокса, чтобы интерпретировать изображение как двоичный файл, это должен иметь тип данных logical
. Полутоновые изображения, которые, оказывается, содержат только 0 и 1's, не являются бинарными изображениями.
Чтобы отобразить бинарное изображение, вызовите imshow
функционируйте или откройте приложение Image Viewer. Например, этот код читает бинарное изображение в рабочее пространство MATLAB и затем отображает изображение. Пример кода использует имя переменной BW
представлять бинарное изображение в рабочей области.
BW = imread('circles.png');
imshow(BW)
Вы можете предпочесть инвертировать бинарные изображения, когда вы отображаете их, так, чтобы 0 значений были отображены столь же белые, и 1 значение отображено как черное. Для этого используйте НЕ (~) оператор в MATLAB. (В этом рисунке поле чертится вокруг изображения, чтобы показать границу изображения.), Например:
imshow(~BW)
Можно также отобразить бинарное изображение с помощью индексируемого синтаксиса палитры изображений. Например, следующая команда задает палитру 2D строки, которая отображает 0, столь же красный и 1's как синий.
imshow(BW,[1 0 0; 0 0 1])
Изображения истинного цвета, также названные изображениями RGB, представляют значения цвета непосредственно, а не через палитру. Изображением истинного цвета является m-by-n-by-3 массив. Для каждого пикселя (r,c
) в изображении цвет представлен триплетом (r,c,1:3
).
Чтобы отобразить изображение истинного цвета, вызовите imshow
функционируйте или откройте приложение Image Viewer. Например, этот код читает изображение истинного цвета в рабочее пространство MATLAB и затем отображает изображение. Этот пример кода использует имя переменной RGB
представлять изображение истинного цвета в рабочей области.
RGB = imread('peppers.png');
imshow(RGB)
Системы, которые используют пиксель 24 битов за экран, могут отобразить изображения истинного цвета непосредственно, потому что они выделяют 8 битов (256 уровней) каждый к красным, зеленым, и синим цветным плоскостям. В системах с меньшим количеством цветов, imshow
отображает изображение с помощью комбинации цветного приближения и размывания. Смотрите цвета отображения для получения дополнительной информации.
Примечание
Если вы отображаете цветное изображение, и это появляется в черно-белых тонах, проверяйте, является ли изображение индексируемым изображением. С индексируемыми изображениями необходимо задать палитру, сопоставленную с изображением. Для получения дополнительной информации смотрите Отображение Индексируемые Изображения.