Отобразите различные типы изображения

Если вы нуждаетесь в помощи, определяя, с каким изображением вы работаете, смотрите Типы изображения в Тулбоксе.

Отобразите индексируемые изображения

Отобразить индексируемое изображение с помощью также 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',[]);

Image Viewer app displaying an image of data type double with a nonstandard display range of [-631, 765]

Отобразите бинарные изображения

В MATLAB бинарное изображение имеет тип данных logical. Бинарные изображения содержат только 0 и 1's. Пиксели со значением 0 отображены как черные; пиксели со значением 1 отображены как белые.

Примечание

Для тулбокса, чтобы интерпретировать изображение как двоичный файл, это должен иметь тип данных logical. Полутоновые изображения, которые, оказывается, содержат только 0 и 1's, не являются бинарными изображениями.

Чтобы отобразить бинарное изображение, вызовите imshow функционируйте или откройте приложение Image Viewer. Например, этот код читает бинарное изображение в рабочее пространство MATLAB и затем отображает изображение. Пример кода использует имя переменной BW представлять бинарное изображение в рабочей области.

BW = imread('circles.png');
imshow(BW)

Binary image displayed as a black background and white region of interest.

Измените цвета отображения бинарного изображения

Вы можете предпочесть инвертировать бинарные изображения, когда вы отображаете их, так, чтобы 0 значений были отображены столь же белые, и 1 значение отображено как черное. Для этого используйте НЕ (~) оператор в MATLAB. (В этом рисунке поле чертится вокруг изображения, чтобы показать границу изображения.), Например:

imshow(~BW)

Binary image displayed as a white background and black region of interest.

Можно также отобразить бинарное изображение с помощью индексируемого синтаксиса палитры изображений. Например, следующая команда задает палитру 2D строки, которая отображает 0, столь же красный и 1's как синий.

imshow(BW,[1 0 0; 0 0 1])

Binary image displayed as a red background and blue region of interest.

Отобразите изображения истинного цвета

Изображения истинного цвета, также названные изображениями RGB, представляют значения цвета непосредственно, а не через палитру. Изображением истинного цвета является m-by-n-by-3 массив. Для каждого пикселя (r,c) в изображении цвет представлен триплетом (r,c,1:3).

Чтобы отобразить изображение истинного цвета, вызовите imshow функционируйте или откройте приложение Image Viewer. Например, этот код читает изображение истинного цвета в рабочее пространство MATLAB и затем отображает изображение. Этот пример кода использует имя переменной RGB представлять изображение истинного цвета в рабочей области.

RGB = imread('peppers.png');
imshow(RGB)

RGB image

Системы, которые используют пиксель 24 битов за экран, могут отобразить изображения истинного цвета непосредственно, потому что они выделяют 8 битов (256 уровней) каждый к красным, зеленым, и синим цветным плоскостям. В системах с меньшим количеством цветов, imshow отображает изображение с помощью комбинации цветного приближения и размывания. Смотрите цвета отображения для получения дополнительной информации.

Примечание

Если вы отображаете цветное изображение, и это появляется в черно-белых тонах, проверяйте, является ли изображение индексируемым изображением. С индексируемыми изображениями необходимо задать палитру, сопоставленную с изображением. Для получения дополнительной информации смотрите Отображение Индексируемые Изображения.