illumpca

Оцените освещающий анализ главных компонентов (PCA) использования

Описание

пример

illuminant = illumpca(A) оценивает, что освещение сцены в RGB отображает A от больших цветовых различий с помощью анализа главных компонентов (PCA).

illuminant = illumpca(A,percentage) оценивает освещение с помощью заданного процента самых темных и самых ярких пикселей.

illuminant = illumpca(___,Name,Value) оценивает освещение с помощью пар "имя-значение", чтобы управлять дополнительными опциями.

Примеры

свернуть все

Откройте изображение и отобразите его. Задайте дополнительное увеличение, чтобы уменьшить размер отображенного изображения.

A = imread('foosball.jpg');
figure
imshow(A,'InitialMagnification',25)
title('Original Image')

Figure contains an axes. The axes with title Original Image contains an object of type image.

Анализ главных компонентов принимает, что значения RGB линейны. Однако формат файла JPEG сохраняет образы в откорректированном гаммой sRGB цветовом пространстве. Отмените гамма-коррекцию при помощи rgb2lin функция.

A_lin = rgb2lin(A);

Оцените освещение сцены от самого темного и самого яркого 3,5% пикселей (процент по умолчанию). Поскольку входное изображение линейно, illumpca функция возвращает источник света в линейном цветовом пространстве RGB,

illuminant = illumpca(A_lin)
illuminant = 1×3

    0.4074    0.5547    0.7254

Третий коэффициент illuminant является самым большим, который сопоставим с синим оттенком изображения.

Правильные цвета путем обеспечения предполагаемого источника света chromadapt функция.

B_lin = chromadapt(A_lin,illuminant,'ColorSpace','linear-rgb');

Чтобы отобразить белым сбалансированное изображение правильно на экране, примените гамма-коррекцию при помощи lin2rgb функция.

B = lin2rgb(B_lin);

Отобразите откорректированное изображение, установив дополнительное увеличение.

figure
imshow(B,'InitialMagnification',25)
title('White-Balanced Image using Principal Component Analysis')

Figure contains an axes. The axes with title White-Balanced Image using Principal Component Analysis contains an object of type image.

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

свернуть все

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

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

Процент пикселей, чтобы сохранить для освещающей оценки в виде числового скаляра в области значений (0, 50].

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: illuminant = illumpca(I,'Mask',m) оценивает источник света сцены использование подмножества пикселей в изображении I, выбранный согласно бинарной маске, m.

Отобразите маску в виде разделенной запятой пары, состоящей из 'Mask' и m-by-n логический или числовой массив. Маска указывает, какие пиксели входа отображают A использовать при оценке источника света. Расчет исключает пиксели в A это соответствует значению маски 0. По умолчанию маска имеет всю 1 с и все пиксели в A включены в оценку.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

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

свернуть все

Оценка освещения сцены, возвращенного как числовой вектор-строка с 3 элементами. Эти три элемента соответствуют красным, зеленым, и синим значениям источника света.

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

Советы

  • Алгоритм принимает универсальное освещение и линейные значения RGB. Если вы работаете с нелинейным sRGB или изображениями Adobe RGB, используйте rgb2lin функционируйте, чтобы отменить гамма-коррекцию перед использованием illumpca. Кроме того, убедитесь, что преобразовали хроматически адаптированное изображение назад в sRGB или Adobe RGB при помощи lin2rgb функция.

Алгоритмы

Пиксельные цвета представлены как векторы в цветовом пространстве RGB. Цвета порядков алгоритма согласно яркости или норма, их проекции в среднем раскрашивают изображение. Алгоритм сохраняет только самые темные и самые яркие цвета, согласно этому упорядоченному расположению. Анализ главных компонентов (PCA) затем выполняется на подмножестве цветов. Первый компонент PCA указывает на освещающую оценку.

Ссылки

[1] Ченг, Дунлян, Дилип К. Прасад и Майкл С. Браун. "Освещающая Оценка для Цветного Постоянства: Почему пространственно-доменные методы работают и роль цветного распределения". Журнал Оптического Общества Америки A. Издание 31, Номер 5, 2014, стр 1049–1058.

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

| | | |

Введенный в R2017b
Для просмотра документации необходимо авторизоваться на сайте