imadjust

Настройте значения интенсивности изображения или карту цвета

Описание

пример

J = imadjust(I) отображает значения интенсивности в полутоновом изображении I к новым значениям в J. По умолчанию imadjust насыщает нижние 1% и верхние 1% от всех значений пикселей. Эта операция увеличивает контрастность выходного изображения J.

Этот синтаксис эквивалентен imadjust (I,stretchlim(I)).

J = imadjust(I,[low_in high_in]) отображает значения интенсивности в I к новым значениям в J таким образом, что значения между low_in и high_in сопоставить со значениями от 0 до 1.

пример

J = imadjust(I,[low_in high_in],[low_out high_out]) отображает значения интенсивности в I к новым значениям в J таким образом, что значения между low_in и high_in сопоставить со значениями между low_out и high_out.

J = imadjust(I,[low_in high_in],[low_out high_out],gamma) отображает значения интенсивности в I к новым значениям в J, где gamma задает форму кривой, описывающей отношение между значениями в I и J.

пример

J = imadjust(RGB,[low_in high_in],___) отображает значения в изображении truecolor RGB к новым значениям в J. Для каждого цветового канала можно применить одно и то же отображение или уникальные отображения.

newmap = imadjust(cmap,[low_in high_in],___) отображает значения в цветовой карте cmap к новым значениям в newmap. Для каждого цветового канала можно применить одно и то же отображение или уникальные отображения.

Примеры

свернуть все

Прочтите низкоконтрастное полутоновое изображение в рабочую область и отобразите его.

I = imread('pout.tif');
imshow(I)

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

Отрегулируйте контрастность изображения так, чтобы 1% данных было насыщено при низкой и высокой интенсивности, и отобразите его.

J = imadjust(I);
figure
imshow(J)

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

Прочтите низкоконтрастное полутоновое изображение в рабочую область и отобразите его.

I = imread('pout.tif');
imshow(I);

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

Настройте контрастность изображения, задавая пределы контрастности.

K = imadjust(I,[0.3 0.7],[]);
figure
imshow(K)

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

Прочтите изображение RGB в рабочую область и отобразите его.

RGB = imread('football.jpg');
imshow(RGB)

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

Настройте контрастность изображения RGB, задавая пределы контрастности.

RGB2 = imadjust(RGB,[.2 .3 0; .6 .7 1],[]);
figure
imshow(RGB2)

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

Прочтите изображение в рабочую область и отобразите его.

I = imread('pout.tif');
imshow(I)

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

Вычислите стандартное отклонение и среднее значение изображения для растяжения.

n = 2;  
Idouble = im2double(I); 
avg = mean2(Idouble);
sigma = std2(Idouble);

Настройте контрастность на основе стандартного отклонения.

J = imadjust(I,[avg-n*sigma avg+n*sigma],[]);

Отобразите скорректированное изображение.

imshow(J)

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

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

свернуть все

Полутоновое изображение, заданное как m -by n числовая матрица.

Типы данных: single | double | int16 | uint8 | uint16

Изображение Труколора, заданное как m -by- n -by-3 числовой массив.

Типы данных: single | double | int16 | uint8 | uint16

Карта цвета связала индексированное изображение, заданное как числовая матрица c -на 3 со значениями в области значений [0, 1]. Каждая строка является трехэлементным триплетом RGB, который задает красный, зеленый и синий компоненты одного цвета цветовой карты.

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

Пределы контрастности для входа изображения, заданные в одной из следующих форм:

Входной типЗначениеОписание
Полутоновое изображениеВектор 1 на 2 вида [low_in high_in]Задает пределы контрастности во входном полутоновом изображении, которые вы хотите сопоставить со значениями в выходном изображении. Значения должны быть в области значений [0 1.0]. Значение low_in должно быть меньше значения high_in.
Изображение RGB или карта цветаМатрица 2 на 3 вида [low_RGB_triplet; high_RGB_triplet]Задает пределы контрастности во входном изображении RGB или цветовой карте, которые вы хотите сопоставить со значениями в выходном изображении или цветовой карте. Каждая строка массива представляет собой триплет цветов RGB. Значения должны быть в области значений [0 1]. Значение low_RGB_triplet должно быть меньше значения high_RGB_triplet.
Изображение RGB или карта цветаВектор 1 на 2 вида [low_in high_in]Задает пределы контрастности во входном изображении RGB, которые вы хотите сопоставить со значениями в выходном изображении. Каждое значение должно быть в области значений [0 1.0]. Значение low_in должно быть меньше значения high_in. Если вы задаете вектор 1 на 2 с изображением RGB или цветовой картой, то imadjust применяет ту же регулировку к каждой цветовой плоскости или каналу.
Все типы[] Если вы задаете пустую матрицу ([]), затем imadjust использует пределы по умолчанию [0 1].

imadjust значение клипов ниже low_in и выше high_in: Значения ниже low_in сопоставить с low_out и значения выше high_in сопоставить с high_out.

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

Пределы контрастности для выходного изображения, заданные в одной из следующих форм:

Входной типЗначениеОписание
Полутоновое изображениеВектор 1 на 2 вида [low_out high_out]Задает пределы контрастности выходного полутонового изображения. Каждое значение должно быть в области значений [0 1].
Изображение RGB или карта цветаМатрица 2 на 3 вида [low_RGB_triplet; high_RGB_triplet]Задает пределы контрастности выходного изображения RGB или цветовой карты. Каждая строка массива представляет собой триплет цветов RGB. Значения должны быть в области значений [0 1].
Изображение RGB или карта цветаВектор 1 на 2 вида [low_out high_out]Задает пределы контрастности в выходном изображении. Каждое значение должно быть в области значений [0 1]. Если вы задаете вектор 1 на 2 с изображением RGB или цветовой картой, то imadjust применяет ту же регулировку к каждой плоскости или каналу.
Все типы[] Если вы задаете пустую матрицу ([]), затем imadjust использует пределы по умолчанию [0 1].

Если high_out меньше low_out, затем imadjust меняет выходное изображение на противоположное, как в фотографическом негативе.

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

Форма кривой, описывающая отношение входа и выхода значений, заданная в виде неотрицательного скаляра или числового вектора 1 на 3.

  • Если gamma меньше 1, тогда imadjust взвешивает отображение к более высоким (ярким) выходным значениям.

  • Если gamma больше 1, тогда imadjust взвешивает отображение к более низким (более темным) выходным значениям.

  • Если gamma вектор 1 на 3, затем imadjust применяет уникальную гамму к каждому цветовому компоненту или каналу.

  • Если вы опускаете аргумент, то gamma по умолчанию является 1 (линейное отображение).

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

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

свернуть все

Скорректированное изображение, возвращаемое в полутоновом или RGB изображении. J имеет тот же размер и класс, что и вход полутоновое изображение I или изображение truecolor RGB.

Типы данных: single | double | int16 | uint8 | uint16

Скорректированная карта цветов, возвращенная как c-на-3 числовая матрица того же класса, что и вход цветов, map.

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

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

..

См. также

| |

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