Модели изменения яркости в современном программном обеспечении

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

УДК 517.958:535:535.08

С.Н. Безрядин, П.А. Буров, Д.Ю. Ильиных, А.А. Львов

МОДЕЛИ ИЗМЕНЕНИЯ ЯРКОСТИ В СОВРЕМЕННОМ ПРОГРАММНОМ ОБЕСПЕЧЕНИИ

Яркость - одна из наиболее важных характеристик точки цифрового изображения. Она используется во многих алгоритмах обработки цифровых изображений, таких как «контраст», «преобразование в тенях». В данной работе предлагается использовать длину вектора цвета, как способ измерения яркости, а также демонстрируются преимущества предлагаемого нового подхода с использованием новых процедур обработки цифровых изображений.

S.N. Bezryadin, P.A. Burov, D.U. Ilinikh, A.A. L’vov BRIGHTNESS CALCULATION MODELS IN DIGITAL IMAGE PROCESSING

Brightness is one of the most significant pixel characteristics. It is involved in many image-editing algorithms such as contrast or shadow/highlight. This paper suggests using length of a color vector for Brightness and demonstrates with major image editing procedures the advantage of this measure.

Рассматриваемое в данной работе определение яркости является удобным с точки зрения разработки программного обеспечения, так как простота реализации алгоритмов позволяет выполнять только необходимую операцию, то есть обрабатывать только четко определенные параметры данных изображения, без внесения дополнительных искажений в другие параметры данных изображения. В качестве примера можно привести следующую операцию: при выполнении преобразования контраста при редактировании изображения должна изменяться только яркость точек и не должны изменяться хроматические координаты (что зачастую присутствует в методиках, которые используются даже в популярных графических редакторах). Достоинства предлагаемого подхода становятся особенно заметными в случае применения предлагаемого подхода преобразования яркости к изображениям, имеющим широкий динамический диапазон.

Обычно термин «яркость» используется только как неизмеримая физическая характеристика чувственного восприятия цвета. В [1] яркость вводится как параметр визуального ощущения, в соответствии с которым яркость можно представить в виде некоторых стимулов с меньшей или большей интенсивностью. Предлагаемая характеристика бесполезна для обработки цифровых изображений, потому что не дает возможности для редактирования изображений.

Разработчики алгоритмов обработки цифровых изображений должны искать пути для описания яркости как измеримой величины. На сегодняшний день нет единого определения для указанной характеристики стимулов. Данная работа представляет собой обзор и анализ наиболее популярных моделей, используемых для представления яркости в современном программном обеспечении. Для наиболее часто используемых алгоритмов редактирования цифровых изображений, влияющих на яркость, будут проанализированы подходы, которые используются в наиболее популярных графических редакторах, и подход к редактированию яркости, предлагаемый в данной работе.

На развитие понятия «яркость» очень большое влияние оказала телевизионная индустрия. Отчасти из-за этого влияния в колориметрии существуют некоторые мифы (связанные с представлениями о цвете), не имеющие под собой реальных физических или математических оснований. На сегодняшний день в различных графических редакторах используются различные подходы к редактированию яркости. Рассмотрим далее некоторые из них.

Ранее в качестве синонима яркости использовался термин «светлота». Видимо, на базе этого в графическом редакторе Adobe Photoshop алгоритм «приведение к полутонам» хорошо согласуется с понятием «светлота».

Другой моделью понятия яркости является характеристика, описываемая стандартом ITU-R BT.601 (International Telecommunications Union Recommendations). В этом стандарте светлота вычисляется по следующей формуле:

Y' = 0,299-r + 0,587 • g + 0,11-b,

где r, g и b - стимулы в sRGB (standard RGB color space) координатах.

Светлота очень часто используется в алгоритмах обработки изображений, которые имитируют действие ручки телевизора (яркость). Например, Adobe Photoshop использует величину «светлота» при редактировании контрастности для вычисления средней яркости. Существует исторически сложивший миф, что светлота хорошо коррелируется с яркостью. Это далеко не всегда верно. Например, два стимула, характеризующихся одним значением светлоты (Y=29) и имеющих в sRGB координатной системе значения (0, 0, 255) и (38, 21, 45), имеют яркостную характеристику, отличающуюся в 6,4 раза.

Наиболее популярный алгоритм редактирования яркости цифрового изображения основан на модели арифметического среднего:

B =

где B - вычисляемое значение яркости.

Такой подход к преобразованию яркости сильно отличается от подхода, рассмотренного выше. Например, стимулы с (0, 255, 0) и (69, 21, 165) координатами в sRGB характеризуются некоторым значением B=85, при этом имеется разница со значением светлоты примерно в 15,8 раз.

Представленная Аланом Раем Смитом [2] модель HSB (Hue, Saturation, Value), также называемая HSB (Hue, Saturation, Brightness), наиболее часто используется в алгоритмах преобразования тона и насыщенности:

V = max

Исходя из (3), стимулы с координатами в sRGB (255, 255, 255) и (0, 0, 255) соответствуют некоторой характеристике V=255. Однако светлота указанных стимулов отличается в 13,9 раз.

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

Использование длины стимула как меры яркости (4), представленной в модели BCH (Brightness, Chroma, Hue) [2], обеспечивает удобство использования яркости для всех рассмотренных алгоритмов редактирования яркости. Длина вычисляется на основании метрики Кохена [2]:

B = V D2 + E2 + F2

D' " 0.2053 0.7125 0.4670 " "X"

E = 1.8537 -1.2797 - 0.4429 * Y

F - 0.3655 1.0120 - 0.6104 Z

где X, У и 2 - значения координат стандартной системы цветовых измерений.

Главным достоинством данной модели является простота реализации алгоритмов, которые могут выполняться только над запланированными к изменению параметрами цифрового изображения, в то время как остальные параметры останутся неизменными. Например, алгоритмы редактирования яркости и контраста, основанные на ВСН модели, будут модифицировать только яркость точки и не будут изменять хроматические координаты точки.

Предлагаемое определение яркости также существенно отличается от определения светлоты. Стимулы с координатами (0, 0, 255) и (196, 234, 0) имеют практически одинаковую длину, в то время как их светлота отличается в 9,8 раз.

Одним из способов перевода изображения из цветного к полутоновому является фиксирование яркости точки. Это преобразование можно рассматривать как качественную оценку измерения яркости.

В табл. 1 представлены координаты семи стимулов с некоторой светлотой.

Таблица 1

sRGB координаты для стимулов с эквивалентной светлотой

Название цвета Численное значение цветовых каналов

R G B

Красный 157 0 0

Зеленый 0 89 0

Синий 0 0 255

Голубой 0 85 85

Пурпурный 138 0 138

Желтый 79 79 0

Серый 76 76 76

Изображение, представленное своими значениями в табл. 1, можно скачать из сети Интернет по следующей ссылке: www.kweii.com/ref/2007LV.png.

Когда цвета, соответствующие координатам, представленным в табл. 1, отобразятся на мониторе, наблюдателю станет очевидно, что они не являются одинаковыми по яркости. Наиболее ярким, безусловно, кажется синий, но красный и пурпурный также являются более яркими, нежели бирюзовый, зеленый и желтый.

Изображение, представленное в табл. 1, обрабатывается с использованием преобразования «приведение к полутонам». В результате подобного преобразования получаются изображения, на которых присутствуют только однотонные серые цвета. Обработка представленного изображения (а также других изображений) с использованием альтернативных определений яркости позволяет сравнивать рассматриваемые модели.

Значения яркостей для стимулов, приведенных в табл. 1, обработанных с использованием формул (1)-(4), представлены в табл. 2.

Из приведенных в табл. 2 данных очевидно, что яркость синих стимулов является недооцененной для значений светлоты. Значения цветов, представленные на изображении

1, выглядят явно инвертированными, синий и красный кажутся менее яркими, нежели голубой и желтый.

Таблица 2

Вычисленные значения яркостей для рассмотренных моделей

Номер цвета Значения каналов цвета точки Вычисленные яркости

r g b Y' V B

1 157 О О 46.9 157 1О.4

2 О 89 О 52.2 89 5.О

3 О О 255 29.1 255 45.3

4 О 85 85 59.6 85 6.5

5 138 О 138 57.О 138 14.1

6 79 79 О 7О.О 79 4.7

7 76 76 76 76.О 76 5.8

В табл. 3 приводятся значения цветов изображений, приведенных к полутонам с использованием ранее рассмотренных моделей представления информации о цвете.

Оценка параметра «яркость», рассмотренная для HSV модели, кажется более подходящей для модели человеческого восприятия, чем модель Luma, и возможно именно поэтому она является популярной для многих людей, увлекающихся фотографией. Очевидно, что яркость синего стимула больше яркости белого стимула и это вносит существенные искажения.

Таблица 3

Преобразование «приведение к полутонам». Сравнение моделей

Номер цвета Значение цветовых каналов для различных моделей после преобразования «приведение к полутонам»

Исходные Luma Среднее HSV BCH

R G B R G B R G B R G B R G B

1 157 О О 41 41 41 51 51 51 16О 16О 16О 1О2 1О2 1О2

2 О 89 О 51 51 51 28 28 28 85 85 85 66 66 66

3 О О 255 28 28 28 85 85 85 255 255 255 2О4 2О4 2О4

4 О 85 85 57 57 57 51 51 51 85 85 85 77 77 77

5 138 О 138 51 51 51 95 95 95 15О 15О 15О 119 119 119

6 79 79 О 66 66 66 51 51 51 77 77 77 66 66 66

7 76 76 76 77 77 77 77 77 77 77 77 77 77 77 77

В модели ВСН представление синего стимула реализовано лучше, чем в НБУ модели, и, что главное, значения яркости соответствуют восприятию стандартного наблюдателя.

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

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

стимулы для одного способа могут отличаться более чем в 10 раз для другого способа преобразования яркости.

Метод измерения яркости для модели BCH имеет под собой реальные физические основания и удобен для реализации в программном обеспечении. Все, что было рассмотрено в работе по отношению к измерению яркости, не очень хорошо согласуется с человеческими ощущениями, однако в то время, как каждый из рассмотренных алгоритмов имеет преимущества и недостатки при реализации в программном обеспечении, модель BCH замечательно работает во всех рассмотренных случаях преобразования изображений.

ЛИТЕРАТУРА

1. Wyszecki G. Science. Concepts and Methods, Quantitative Data and Formulae / G. Wyszecki, W.S. Stiles. New York: John Wiley & Sons, 2000. 968 p.

2. Cohen J.B. Visual Color and Color Mixture: The Fundamental Color Space / J.B. Cohen // Illinois: University of Illinois press, 2000. 248 p.

Сергей Николаевич Безрядин -

кандидат физико-математических наук, KWE Int. Inc. San Francisco, CA, USA

Буров Павел Александрович -

инженер ОП ООО «ЮникАйСиз», г. Саратов

Ильиных Дмитрий Юрьевич -

аспирант кафедры «Техническая кибернетика и информатика»

Саратовского государственного технического университета

Львов Алексей Арленович -

доктор технических наук, профессор кафедры «Техническая кибернетика и информатика» Саратовского государственного технического университета Статья поступила в редакцию 18.07.07, принята к опубликованию 05.09.07