Оценка освещенности с помощью анализа основных компонентов (PCA)
оценивает освещенность сцены в изображении RGB illuminant = illumpca(A)A от больших цветовых различий с использованием анализа основных компонентов (PCA).
оценивает освещенность с использованием заданного процента самых темных и ярких пикселей.illuminant = illumpca(A,percentage)
оценивает освещенность с помощью пар "имя-значение" для управления дополнительными опциями.illuminant = illumpca(___,Name,Value)
Алгоритм принимает равномерное освещение и линейные значения RGB. Если вы работаете с нелинейными изображениями sRGB или Adobe RGB, используйте rgb2lin функция для отмены гамма- коррекции перед использованием illumpca. Кроме того, убедитесь, что преобразовали хроматически адаптированное изображение обратно в sRGB или Adobe RGB при помощи lin2rgb функция.
Пиксельные цвета представлены в виде векторов в цветовом пространстве RGB. Алгоритм упорядочивает цвета в соответствии с яркостью, или нормой, их проекции на средний цвет в изображении. Алгоритм сохраняет только самые темные и самые яркие цвета, согласно этому упорядоченному расположению. Анализ основного компонента (PCA) затем выполняется на подмножестве цветов. Первый компонент PCA указывает оценку освещения.
[1] Cheng, Dongliang, Dilip K. Prasad, and Michael S. Brown. «Оценка освещенности для постоянства цвета: почему методы пространственной области работают и роль цветового распределения». Журнал Оптического общества Америки А. Т. 31, № 5, 2014, стр. 1049-1058.
chromadapt | illumgray | illumwhite | lin2rgb | rgb2lin