ЦВЕТОВАЯ КОРРЕКЦИЯ БЛИКОВ НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ
Бибиков С.А.1,2, Минаев Е.Ю.1, Никоноров А.В.1, Фурсов В.А.1'2 1 Самарский государственный аэрокосмический университет имени академика С.П. Королёва, 2 Учреждение Российской академии наук Институт систем обработки изображений РАН
Аннотация
В работе предложена общая модель бликов на цифровых изображениях и рассмотрены частные случаи бликов: точечные, протяжённые, матовые. Построены алгоритмы локализации и цветовой коррекции бликов. Приведены примеры, иллюстрирующие работоспособность предложенных алгоритмов на реальных изображениях.
Ключевые слова: цифровая обработка изображений, модель блика, матовый блик, точечный блик, цветовая коррекция, идентификация.
Введение
В последние годы растёт спрос на разработку новых информационных технологий цветовой коррекции цифровых изображений в различных приложениях, например, цветовая коррекция цифровых изображений репродукций произведений живописи на этапе предпечатной обработки, цветовая коррекция видео в Интернет-телевещании и др. В частности, в работах [1, 2] рассматривалась технология цветовой коррекции тени от рамки, возникающей вследствие того, что в момент съёмки разные области полотна находятся на различных расстояниях от осветителей.
Одним из наиболее распространённых видов искажений на изображениях являются блики. Бликом будем называть область повышенной светлости, возникающую при регистрации изображений из-за зеркального или диффузного отражения света от поверхности регистрируемого объекта. Иногда блики придают изображению изящество и неповторимость и специально формируются для этой цели. Однако чаще блики оказываются мешающими и/или недопустимыми. Например, блики существенно уменьшают динамический диапазон и контраст свободной от бликов части изображения в системах видеонаблюдения, что снижает надёжность распознавания, а присутствие бликов на цифровых изображениях репродукций произведений живописи вообще неприемлемо. Поэтому решение задачи обнаружения и коррекции бликов является важным этапом работы многих приложений, связанных с обработкой и анализом изображений.
Задачу устранения бликов в процессе предпечат-ной подготовки цифровых изображений репродукций обычно решают профессиональные корректоры с использованием стандартных средств, например, инструментальной среды обработки изображений Adobe Photoshop. К сожалению, технологические и вычислительные возможности этих систем ограничены, и коррекция цветных изображений может занимать длительное время. Например, «ручная» обработка изображения объёмом около 30 мегапикселей (в зависимости от характера и интенсивности искажений) может занимать до 10 часов. Даже для предпечатных процессов такие временные затраты
являются существенными, а в системах видеоконтроля и видеонаблюдения просто недопустимы, т.к. решения должны приниматься в реальном времени. Поэтому актуальна задача построения информационной технологии обнаружения и устранения бликов, отличающейся высокой степенью автоматизации процесса цветовой коррекции бликов.
Одна из важнейших задач, которую при этом необходимо решать, - это выбор системы признаков и построение процедур распознавания бликов на изображениях. В данном случае трудности решения этой задачи связаны как с большим разнообразием видов бликов, так и с априорной неопределённостью характеристик бликов определённого типа. В частности, как правило, отсутствуют статистически устойчивые характеристики геометрических параметров бликов. Они могут изменяться в широких пределах в зависимости от условий возникновения бликов. Поэтому, с одной стороны, для каждого типа блика необходимо строить особые процедуры обнаружения и цветовой коррекции, с другой стороны, должна быть предусмотрена адаптация параметров этих процедур в рамках однотипных моделей. Основные различия типов бликов связаны с их размерами, характером границ и распределения яркости в области блика. В настоящей работе предпринимается попытка выработать общий подход к построению решающих правил и процедур локализации и цветовой коррекции бликов в различных приложениях.
1. Общая модель бликов, формулировка задачи
Для построения общей модели бликов рассмотрим некоторые основные схемы их возникновения. При фотографировании произведений живописи распространённым типом искажения является матовый блик. Он возникает вследствие неравномерного освещения полотна картины при съёмке. В частности, в точке падения центрального луча образуется более яркое световое пятно, а по мере удаления от него интенсивность освещения убывает. Матовый блик обычно характеризуется достаточно большими размерами, превышающими изобразительные элементы на картине.
При подготовке репродукций на цифровых изображениях часто имеют место также так называемые множественные точечные блики в виде ярких пятен, возникающих вследствие отражения от небольших участков, образованных неровностями при
нанесении краски. Они отличаются небольшими размерами, контрастными границами и высокой яркостью, полностью маскирующей детали изображения в области блика.
При регистрации реальных сцен часто возникают блики вследствие отражения от зеркальных поверхностей, например, от стёкол в окнах зданий и автомобилей. Эти артефакты также полностью маскируют изображение в области блика и имеют резкие границы. В отличие от множественных бликов они, как правило, имеют большие размеры и характерную «звездообразную» форму. Такие блики от стекол автомобилей существенно затрудняют работу автоматических систем видеонаблюдения, т.к. воспринимаются системой как неожиданное появление постороннего предмета.
Описанные выше три типа бликов (матовый, множественный и звездообразный) оказываются наиболее типичными во многих приложениях. Поэтому как при теоретическом обосновании методов обнаружения и коррекции бликов, так и при подборе конкретных примеров, мы ограничимся рассмотрением указанных типов бликов. В соответствии с описанными схемами формирования бликовых эффектов на изображении бликом будем называть артефакт, размеры которого меньше размеров самого изображения, а яркость превышает яркость фрагментов изображения в его окрестности и маскирует реальное (скрытое бликом) поле яркости исходного изображения. В зависимости от условий возникновения блика он может иметь либо гладкую функцию распределения яркости и размытые границы, либо ограниченную чёткими границами область произвольной или некоторой характерной, например «звездообразной», формы.
Заметим, что поле яркости блика можно считать искажающим лишь в смысле недопустимости бликов на изображении. В действительности блики дают объективную картину неравномерности отражательной способности объектов и фактически являются изображениями источника. Вследствие различий формы и размеров источников света и отражающих поверхностей, формы и размеры бликов также могут существенно различаться. Тем не менее, при формировании любого блика имеют место общие закономерности, которые позволяют придать понятию блика математическое содержание.
Пусть I* (х, у) - двумерная (эталонная) функция яркости некоторой цветовой компоненты изображения, свободная от искажений, вносимых освещающей системой. Вследствие наличия участков с более высокой отражательной способностью реальное поле яркости I (х, у) (компонент) зарегистрированного изображения отличается от эталонного изображения:
(1)
I (х, у) = I * (х, у )+Д1 (х, у) :
где Д! (х, у) - дополнительное поле яркости, вносимое бликами. С учётом представления (1) в общем случае задачу коррекции бликов можно сформулировать следующим образом.
Зададим критерий качества коррекции изображений в виде
Q(Д(х,у)) = |¡I(х,у)-1*(х,у)||,
где ||* - некоторая заданная норма. Необходимо для двумерной функции искажений Д (х, у), вносимых бликами, построить оценку
Д%у): 0 (ДЯх,у)) = "ШЩ)0(Д(х,у)). (2)
Решение этой задачи в общем случае представляется достаточно серьёзной проблемой вследствие сложности построения моделей преобразования цветовых координат для каждой точки изображения в пространственной области.
Можно упростить задачу, опираясь на тот факт, что при более ярком освещении цветовые координаты соответствующих точек на регистрируемом изображении смещаются в область цвета осветителя. Пусть ¥( I (х, у)) - функция, обеспечивающая преобразование эталонных значений цветовых координат к их реальным значениям в областях блика с максимальной яркостью. Тогда поле Д (х, у),
сформированное изображениями бликов, можно представить в виде:
. . \Р(х,у)•¥(I(х,у)), (х,у)е Е;
Д(х,у) = \ У ' У У " У ' (3)
^ ^ 1 0, (х,у)й Е;
где Р (х, у) - весовая двумерная функция, значения которой принадлежат [0,1], характеризующая распределение яркости отражённого изображения источника в области блика - Е . При этом в соответствии с (1)
I(х,у)= I*(х,у) + Р(х,у)-¥(х,у) . (4)
Функция Р(х, у) представляет собой нормированную функцию яркости блика Д/(х, у) в предположении, что минимальное значение яркости блика равно нулю:
Д/ (х, у)
Р (х, у ) =
тах Д/ (х, у)
(5)
Под яркостью блика понимается значение
Д/ (х, у ) = / * (х, у)-/(х, у) ,
где /(х, у) - значения яркости точек реального изображения, /* (х, у) - яркость эталонного изображения.
В данном случае двумерное поле яркости бликов представляется с помощью двух более простых функций (4), формируемых в различных пространствах. Предпосылкой для указанного представления является известный факт, что информация о светло-
сти содержится в яркостных компонентах некоторых цветовых пространств, например, CIE Lab [3, 4]. Поскольку наибольшие цветовые искажения возникают в области блика с максимальной яркостью, ошибки цветовой коррекции в областях, близких к границам блика, при таком представлении будут невелики.
В рамках предложенной модели
Al( х, y )= J®( х, y (x, y),
поэтому задача естественным образом распадается на две в значительной степени независимые задачи: обнаружение и локализация бликов и их цветовая коррекция. Задача обнаружения и локализации бликов заключается в нахождении двумерной функции
P€(х, y), задающей распределение яркости блика
в пространственных координатах. Задача цветовой
коррекции сводится к построению оценки Y (a, b)
функции преобразования цветовых координат для локальной области яркого пятна сравнительно небольших размеров при фиксированной функции f€(х, y).
Для решения каждой из указанных частных более простых задач могут использоваться конкретные параметрические модели. Ряд предложенных авторами моделей рассматривается ниже. Далее последовательно рассматриваются модели и алгоритмы обнаружения и локализации множественных точечных и матовых бликов, а затем методы построения функции цветовой коррекции.
2. Обнаружение и локализация точечных бликов
Блики, возникающие в результате отражения от локальных, малых по сравнению со всем изображением областей, называют точечными. Как правило, на изображении количество таких бликов высоко, и в данном случае одна из основных задач - локализация, т.е. определение местоположения всех бликов. Процедуры обнаружения и локализации множественных бликов строятся в предположении о том, что для цветного изображения функция яркости f (х, y) может быть легко определена: задана
в явном виде в пространстве Lab, вычислена при использовании RGB согласно выражению
f ( ^ y ) = aRfR ( ^ y )+ aGfG ( ^ y )+ aBfB ( ^ y ) , (6)
где fR (х, y), fG (х, y), fB (х, y) - три функции яркости каналов. Для решения задачи обнаружения и локализации отдельного блика предлагается использовать так называемую оконную модель.
Оконная модель представляется в виде двух вложенных квадратов с общим центром (х0, y0). Область внутреннего квадрата назовём областью блика, а область за пределами внутреннего квадрата, но внутри внешнего квадрата, назовём окрестностью области блика. Обозначим сторону внутреннего квадрата А, а величину А2 назовём эффективной
площадью блика. Область блика (внутреннего квадрата) обозначим Ж1, а окрестность области блика -Ж0. Введём в рассмотрение функцию, зависящую как от положения области блика, так и от его размеров:
Q(А,х,y,.)= X f(х)
(х, y )eW,
X f (х, y¡)
(х, y)<=-W
,(7)
где / (х,, у,) - значения отсчётов яркости в точке с координатами (х1, у,). С использованием введённых обозначений и функции (7) необходимое условие существования в точке (х0, у0) области G блика с эффективной площадью Д^ определим следующим образом:
б(Др^Уо) =тах О(Д.,х,у)> д , (8)
"Д,,(X, у,)^
где д - заданное пороговое значение функции (7). Заметим, что в некоторых случаях целесообразно ввести дополнительное требование равенства «площадей» блика и окрестности. Тогда сторона внешнего квадрата обязана быть равной ( 2л/2 -1) Д .
В рамках указанной модели (8) для обнаружения блика должны быть заданы размер окна Д и порог д . Поскольку область G существования одиночного блика неизвестна, условие (8) должно проверяться для всех точек изображения. Область Ж1 в виде квадратного окна со стороной Иы (Д), проверяемую на наличие блика, называют окном поиска, а окрестность Ж0 окна поиска - опорным окном. Квадратное окно со стороной ^, содержащее в себе оба окна, обозначим Ж . Алгоритм обнаружения блика заключается в последовательном прохождении окном Ж по изображению. Для каждого положения окна принимается решение о принадлежности центрального пикселя окна поиска блику.
Для повышения надёжности обнаружения и локализации бликов вводятся дополнительные признаки. В частности, будем полагать, что отсчёт (х,, у,) принадлежит блику, если наряду с неравенством (8) выполняются следующие требования:
(9)
mах / (х, yt )> fi,
(х,, y, )eW
X U (х,, y¡ )< U S ,
(10)
ь (б)< А, (11)
где и (х, у) - так называемая функция принадлежности: и (х1, у,) = 1, если в точке (х,, у,) условие (9) выполняется, и (х,, у,) = 0, если это условие в точке (х,, у,) не выполнятся, а Ь (Б) - так называемый «диаметр» блика, показывающий степень компакт-
V,=1,N
ности отсчётов, принадлежащих области блика (в смысле оконной модели).
Приведённые правила позволяют определить лишь местоположение блика в некоторой области G . Если необходимо определять также форму каждого блика и координаты всех точек, принадлежащих области блика, используется более полная модель.
3. Локализация протяжённых бликов
Предполагается, что в области G задана прямоугольная система координат - х0у и определена некоторая точка в ней: (х0, у0), являющаяся центром вложенных квадратов в описанной выше модели «скользящего окна».
Блик в окрестности точки (х0, у0) определим
как область D, множество граничных точек которой являются точками максимумов функций контраста [1]
F(х,у)= X /(х,у,-)- X /(х,у,-), (12)
"х, yeD "х, ygD
вычисленных в направлении радиус-вектора при его повороте вокруг точки (х0, у0) на угол [0,2 л]. Заметим, что длина радиус-вектора может быть как детерминированной, так и случайной функцией. Если при построении оценок параметров, характеризующих размеры блика, используется модель границы в виде случайной функции, граничное значение блика при каждом положении радиус-вектора является случайной величиной.
Граница блика в данной модели может быть описана некоторой функцией, построенной путём интерполяции множества граничных точек. Если граница имеет сложную, например, «звездообразную» форму, описание которой в каком-либо параметрическом семействе детерминированных функций затруднительно, более удобным может оказаться её табличное описание в виде зависимости координат граничных точек от дискретных значений угла радиус-вектора.
Если эффективная площадь блика невелика, а границы лучей «звезды» почти параллельны лучам, в направлении которых рассчитывается функция контраста (12), этот способ определения границ может приводить к большим ошибкам. В этом случае часто более подходящим является метод активных контуров [5]. Метод реализуется следующим образом.
На начальном этапе проводится инициализация контура, для чего осуществляется пороговая обработка, в результате которой составляется функция ф0 (х, у) такая, что ф0 > 0 внутри контура и ф0 < 0
снаружи контура. Эволюцию контура определяет следующее уравнение:
Уф |Уф|
-V
(13)
ф(°х у) = ф0 (ху),
где и0 (х, у) - функция яркости исходного изображения, ц, V, 11,12 - параметры, характеризующие действие внутренних и внешних сил на контур, обеспечивающих их выделение, а с1(ф) = average(u0) для ф> 0 и с2(ф) = average(u0) для ф< 0.
Уравнение эволюции контура (13) решается итерационным методом[6]:
ФИ+1 1П
иУ -ФпУ
Д
% Д-
=8. (ф;.)>
Ах а ;+1
+ф;+
^(Д+Ф; У ГА2+(Ф; У+1 -Ф; У-1 )72.
Ах 1 ;+1 +ф;+
+ 8е (ф) [-11 (и0 - С1 )2 + 1 (и0 - С2 )2 ]
= 0,
^(д+Ф; У )7.+(Ф;+1, У Ф У )2Ааз
-П-11 (и0,<,у - С1 (ф; ))2 +12 (и0Ау - С2 (ф; ))2
Применение описанной реализации активного контура позволяет выделять контуры соседних бликов даже в случаях их касания, что обычно не удаётся с использованием классического градиентного метода [7].
Завершающим этапом технологии распознавания «звездообразного» блика является вычисление дополнительного признака - отношения длины границы блика к его площади:
51 = $тутр . (14)
Если параметр 5 достигает некоторого порогового значения, принимается решение, что данное множество точек является «звездообразным» бликом.
Для реализации описанных выше решающих правил обнаружения, локализации и определения типа блика необходимо задание пороговых значений констант /1, д,иъ, Ц, 5,. Они могут быть заданы экспертом на основе предшествующего опыта работы с определённым типом изображений. При переходе к другому изображению может потребоваться уточнение этих параметров, притом существенное. Поэтому представляет интерес построение автоматизированной процедуры настройки параметров алгоритма.
В процедуре обучения с учителем в качестве исходной информации для обучения указываются область G, в которой расположен одиночный блик, а также область самого блика. Далее процедура обучения строится следующим образом. Формируется квадратная маска, охватывающая область блика, и её окрестность. С использованием этой маски в области G осуществляется поиск положения, при котором принимает максимальное значение мера корреляции
(
\
+
X
(
\
+
R(m,n) = XXFi (j,k) F2 (j-m,k-n)x
j=1 k=i
XXF12 (j,k)XXF22 (j -m,k-n)
j=i k=1 j=1 k=1
-12
(15)
где (у, к) - индексы элементов в окне Ж размером
3 х К элементов, которое расположено внутри зоны поиска £ размером М х N элементов. Затем размер окна блика Д и охватывающая его окрестность изменяются и ищется новое положение окна и соответствующее ему максимальное значение меры корреляции (15).
Изменение размеров окон и поиск повторяются до тех пор, пока мера корреляции возрастает. Для размеров окна, при которых она оказывается максимальной, по соотношениям (9), (10), (11), (14) рассчитываются соответствующие характеристики блика, на основе которых, с учётом требуемого уровня надёжности решений, задаются пороговые значения величин /1,д,ит,Ц,5,. Степень автоматизации настройки параметров алгоритмов можно существенно повысить, если область G определять автоматически с использованием процедуры дилатации области блика, выявленной по соотношениям (9) - (11). Однако при этом объём вычислений существенно возрастает.
4. Определение функции яркости матового блика
В случае матового блика недостаточно определить лишь его форму и множество отсчётов, принадлежащих блику. В данном случае важно также определить весовую функцию $-(х, у) в этой области.
Наиболее типичной ситуацией возникновения матового блика является неравномерность освещения полотна при фотографировании. Функцию яркости блика Д/ (х, у) будем строить в заданном параметрическом семействе функций по небольшому числу так называемых тестовых фрагментов на исходном изображении с заданными цветами. Такая постановка не требует от пользователя специальных знаний о теории цвета и опыта цветовой коррекции изображений. В рамках этой постановки задачи может использоваться методика формирования тестовых фрагментов, которая рассматривалась в работе [8].
Наиболее сложный и трудноформализуемый этап технологии состоит в обосновании класса искажающих функций. В первом приближении для этой цели могут использоваться методы геометрической оптики. Будем исходить из того, что освещающие приборы снабжены некоторыми фокусирующими отражателями, которые имеют размеры существенно меньше размера освещаемого объекта. При этом обычно наблюдается появление некоторого ярко освещённого пятна, имеющего равномерное распределение светлости, по мере удаления от которого освещённость убывает. Указанная картина освещённости в случае, когда центральный луч перпендикулярен поверхности полотна, обладает ради-
альной симметрией, а значения светлости блика в любом сечении хорошо описываются параметрическим семейством функций вида:
a (х'-с) a z (х) = — _, . , + — + d,
1 + b\х'- с b
(16)
где х - расстояние от центра блика, а - параметр масштаба, характеризующий интенсивность светлости, с - параметр, задающий размеры ярко освещён-ного пятна в окрестности центра матового блика, Ь -параметр, характеризующий скорость убывания освещённости по мере удаления от центра яркого пятна, d - смещение, обеспечивающее пересечение графика функции с плоскостью г = 0 в заданных граничных точках. Параметры а и Ь характеризуют отражающую способность регистрируемого полотна, а параметр d позволяет однозначно выделить область, где действие блика прекращается. Примеры графиков функций (16) при d = 0 ; для Ь = 0,1 ; Ь = 1; Ь = 10 и а = -10 • Ь приведены на рис. 1.
20
15
10
s i \ i i ■ lj b 01
.....b=l
\ i \ 1 \ V .................b-10
\ i\ i \ i \
[1 í * ; v • ч
0 20 40 60 80 100
Рис. 1. Примеры функций распределения яркости в сечении матового блика
С использованием функции (16) распределение
яркости Д/г (х, у) в области матового блика путём
замены х =д/х2 + у2 может быть описано поверхностью вращения вокруг оси, являющейся нормалью к поверхности в точке (х0, у0) :
aU(х-х0)2 +(y-Уо)2 -с) a
f (х,У)= V ,-. . ; + т + d. (17)
1 + b
V(х- хо )2 +(У-Уо)2 -с
b
В действительности, направление центрального луча осветителя, как правило, не совпадает с нормалью к поверхности регистрируемого изображения. Для учёта этого осуществляется поворот осей вокруг центральной точки блика (х0, y0) на угол j. Преобразование поворота задаётся соотношениями: х - хо =( х - хо) cos j-( y - Уо ) sin j,
У - Уо =( х - х0 ) sin j+( У - Уо ) cos j.
В результате поворота осей координат форма блика оказывается вытянутой вдоль направления,
(18)
x
задаваемого линией у = tgф • х . Для количественной оценки изменения масштаба в указанном направлении вводится параметр е. При этом модель функции яркости / ( х, у ) принимает следующий вид:
Df (х, y )=-
?(VeA2 + Б2 - с)
1 + b
eA2 + Б2 - с
a j + — + d, b
(19)
A = ( х - Хо) cos j-( y - yo) sin j,
Б = (х - Хо) sin j+( y - yo) cos j.
Здесь a, b, с, d, e, j, х0, y0 - параметры, подлежащие определению (идентификации) по значениям яркости блика, заданным на фрагментах в точках (X,, y,) в виде:
Df (х,, y,) = f (х,, y,)- / (х,, y,),
где f (х,, y,) - желаемые значения яркости, соответствующие их исходным значениям на изображении, а f * (х,, y,) - фактические значения яркости
в точках (х,, y,) области матового блика.
Заметим, что в случае, когда строится проекция функции яркости на регистрируемую поверхность, для определения искомых параметров достаточно задание некоторого множества координат граничных точек блика, для которых Df (х,, y,) = 0 . Для
определения трехмерной функции P (х, y) в области блика на тестовых фрагментах должны быть также заданы желаемые цвета в пространстве CIE Lab, яркостные составляющие которых являются исходными данными для идентификации. Для повышения точности идентификации значительную часть этих точек целесообразно задавать в локальной области яркого светового пятна блика.
Идентификация одновременно всех указанных выше параметров с использованием модели (19) представляется достаточно сложной в вычислительном отношении задачей. Поэтому в работе предлагается двухэтапная процедура идентификации. Вначале осуществляется оценка параметров х0, y0, j, e эллипса
к {e [(х - х0)cos j-( y - y0 )sin j]2 + + [(х - х0) sin j+( y - y0) cos j]2}
= 1
с использованием в качестве обучающих только граничных точек. Затем, полагая параметры х0, у0, ф, е фиксированными, определяются остальные параметры функции яркости (19). При этом используются как координаты граничных точек, так и яркост-ные составляющие на тестовых фрагментах, задаваемых внутри области матового блика.
Задача определения параметров функции распределения яркости в области матового блика существенно упрощается, если блик обладает чётко выраженным центром - наиболее ярким пятном, а координаты (x0, y0) центральной точки априори известны достаточно точно.
5. Цветовая коррекция бликов
В соответствищи с идеей разделения задач определения светлости и цветности в (4) рассмотрим задачу определения функции преобразования YY (x, y). Способы решения этой задачи могут существенно различаться в зависимости от объёма информации о цвете для различных типов бликов. Множественные точечные блики характеризуются почти полной потерей такой информации. При этом для устранения («заливки» блика), как правило, может использоваться информация о цвете в некоторой его окрестности. При этом вместо задачи отыскания функции YY (x, y) фактически решается задача замещения цвета. В случае матового блика искажение затрагивает область большую, чем малые детали изображения. Однако изменения цветов менее значительные, что позволяет извлечь информацию об оригинальных цветах изображения и построить оценку функции цветового искажения YY (x, y).
Для замещения цвета пикселей в области точечного блика на некоторый цвет, близкий к цвету пикселей окрестности блика, в работах [9, 10] предложено следующее эвристическое правило. На область блика клонируется некоторый участок окрестности, с наиболее характерным цветом и текстурой. Затем выполняется гауссово размытие в области несколько большей, чем область блика. Размытие позволяет избежать резких границ между ретушированным участком и его окрестностью.
В работе [11] для построения процедуры замещения пикселей блика осуществлялась идентификация параметров формальной модели с использованием информации о цвете в области вокруг бликов. В рамках этого подхода предполагается, что цвет задан в пространстве RGB и значения цветового компонента в малой окрестности блика описываются поверхностью M -го порядка:
M M
zk (х y ) = XX с'кх'у1
(20)
где 2к (х, у) - значение к -го цветового компонента в точке (х,у), С'к - коэффициент полинома. Методом дилатации область блика расширяется, и из неё выбираются N (опорных) точек, не принадлежащих блику.
С использованием опорных точек строится N соотношений вида (20), связывающих измеренные значения цветовых компонентов в опорных точках
и их координаты. В матричной форме эти соотношения представляются в виде:
Z=ХС+о,
у(1 (х у )) = £ с*1 (х у)'
(22)
где Z =
2 (хн у)
2 ( х2 , у 2 )
2 ( хм , УN )
X =
1 х1 1 хо
1
у1 у2
УN
хмум хмум
м м
XN УN
- С 00 -
С01
, с =
СММ
Z - N х1-вектор, составленный из измерений цветовых координат в опорных точках, X - N хМ -матрица, формируемая по значениям координат опорных точек, а С - М х1-вектор искомых коэффициентов в (20) соответственно; о = (Х1, Х2,---, Хм ) - N х1 -вектор ошибок измерений и аппроксимации модели. Для разрешимости задачи идентификации число оцениваемых параметров М не должно превышать число тестовых фрагментов N.
Задача построения оценок С? искомого вектора параметров С в зависимости от доступных вычислительных средств и требуемой точности может решаться с использованием метода наименьших квадратов [12], итерационного метода наименьших квадратов, доставляющего оценки наименьших модулей [13], либо методом согласованной идентификации [14].
Коррекция цветовых каналов изображения в случае матового блика осуществляется взвешенным суммированием [1] исходного цвета каждой точки на изображении в соответствии с соотношением:
I* (х, у) = (1 - х, у))I (х,у) + +х, у )у( I (х, у)),
(21)
где I (х, у) - значение компонента цвета на исходном изображении, Р - фиксированное значение найденной весовой функции в точке (х, у),
у(I(х,у)) - функция цветового преобразования.
Нетрудно заметить, что выражение (21) соответствует модели (4):
I (х, у) = I* (х, у) + £(х, у) (I (х, у) - у (I (х, у))) .
Функция коррекции ¥( х, у) фактически представляет собой коррекцию «точки белого» и имеет вид:
¥( х, у )= I (х, у )-у( I (х, у)).
Модель коррекции у( I (х, у)) определяется для
каждого цветового компонента и описывается полиномиальной моделью:
где I (х, у) - значение цветового компонента изображения в точке (х, у), а с* - коэффициенты полинома. Оценки параметров С€ определяются по N соотношениям (по числу заданных фрагментов) вида:
М и V 7' (хп, Уп)-! (хп, Уп) + ,( )
£С'1 (хп,Уп) =-„.,.. ,, ^-+ !(хп,Уп) =
( хп , уп )
п = 1.^.
Задача может решаться теми же методами, что и в случае определения параметров модели (20).
6. Результаты экспериментов
На рис. 2-4 приведены примеры решения задач обнаружения, локализации и цветовой коррекции бликов различных типов. В частности, на рис. 2 иллюстрируется работа алгоритма удаления множественных точечных бликов, на рис. 3 - обнаружения протяжённых бликов, а на рис. 4 - пример цветовой коррекции матового блика. В задаче обнаружения звездообразных бликов (рис. 3) «заливка» бликов не осуществлялась. В данном случае достаточно было лишь определить область блика для того, чтобы исключить «ложную» тревогу, связанную с появлением нового объекта (блика) на изображении.
Для коррекции матового блика было использовано в общей сложности 17 точек: 7 граничных и 10 тестовых Целевые цвета брались с неискажённых участков того же изображения.
Заключение
Результаты экспериментов подтвердили плодотворность идеи «разделения» яркостной и цветовой составляющей в общей модели блика.
Построенные на этой основе алгоритмы позволяют решать задачи локализации и цветовой коррекции независимо, что, в свою очередь, обеспечивает возможность применения для построения модели цветовой коррекции эффективных методов идентификации.
Хотя большинство экспериментов связано с пред-печатной обработкой цифровых изображений произведений живописи, предложенная модель блика может быть использована для описания искажений широкого круга цифровых изображений. В частности, разработанные алгоритмы могут использоваться для обработки изображений в системах дистанционного зондирования Земли, для улучшения качества изображений в системах видеонаблюдения и др.
Основным достоинством разработанных методов и алгоритмов является возможность достижения высокой степени автоматизации процессов коррекции цифровых изображений. Особенно впечатляющие результаты по повышению быстродействия процедур локализации и коррекции бликов достигаются при использовании графических процессоров и технологий США и ОрепСЬ [4].
'=0
'= 0
х
Рис. 2. Алгоритм удаления множественных точечных бликов: слева - исходное изображение, справа - результат работы алгоритма
Рис. 3. Пример обнаружения звездообразных бликов: слева - искажённое изображение, справа - результат работы алгоритма обнаружения бликов
Рис. 4. Пример устранения матового блика: слева - исходное изображение; справа - изображение, полученное в результате цветовой коррекции
Благодарности Работа выполнена при поддержке российско-
американской программы «Фундаментальные исследования и высшее образование» и РФФИ (проект
№ 09-07-00269-а) и ФЦП «Кадры».
Литература
1. Бибиков, С.А. Информационная технология коррекции теневых искажений на цветных цифровых изображениях / С.А. Бибиков, А.В. Никоноров, В.А. Фурсов // Компьютерная оптика. - 2010. - Т. 34, № 1. -С. 124-131.
2. Bibikov, S.A Shadow Artifacts Correction on Fine Art Reproductions / S.A. Bibikov, V.A. Fursov, A.V. Nikonorov // Proceedings of IMTA 2010 in conjuction with VISIGRAPP 2010, Angers, France, 17-21 May 2010. - P. 3-12.
3. Джадд, Д. Цвет в науке и технике / Д. Джадд, Г. Вышецки. - М.: Мир, 1978. - 580 с.
4. Бибиков, С.А Исследование эффективности технологии CUDA в задаче распределённой предпечатной подготовки цифровых изображений / С.А. Бибиков,
A.В. Никоноров, В.А. Фурсов, П.Ю. Якимов // Труды Всероссийской суперкомпьютерной конференции «Научный сервис в сети Интернет: масштабируемость, параллельность, эффективность», 21-26 сентября 2009 г., Новороссийск. - М.: Изд-во МГУ, 2009. - С. 204-207.
5. Chan, T.F. Active contours without edges / T.F. Chan, L.A. Vese // Image Processing, IEEE Transactions on Vol. 10, Iss. 2, Date: Feb 2001. - P. 266-277.
6. Aubert, G. A variational method in image recovery / G. Aubert, L. Vese. // SIAM J. Numer. Anal. - 1997. -V. 34, N 5. - P. 1948-1979.
7. Мурашов, Д.М. Метод автоматизированной сегментации изображений цитологических препаратов на основе модели активного контура / Д.М. Мурашов // ТРУДЫ МФТИ. - 2009. - Т. 1, № 1. - С. 80-89.
8. Бибиков, С.А. Цветовая коррекция на основе идентификации моделей по тестовым фрагментам изображений / С.А. Бибиков, В.А. Фурсов // Компьютерная оптика. -2008. - Т. 32, № 3. - С. 302-307.
9. Фурсов, В.А Распределенный алгоритм коррекции точечных артефактов на цветных изображениях / В.А. Фурсов, А.В. Никоноров. - Труды четвёртой международной конференции «Параллельные вычисления и задачи управления» (PACO'2008), Москва, 27-29 октября, 2008. - С. 1087.
10. Никоноров, А.В. Распределённая вычислительная среда коррекции цветных изображений / А.В. Никоноров,
B.А. Фурсов - Труды XV Всероссийской научно-методической конференции «Телематика 2008», С.-Петербург, 23-26 июня, 2008. - С. 88-89.
11. Бибиков, С.А. Идентификация параметров модели цветовой коррекции точечных бликов / С.А. Бибиков -Математическое моделирование и краевые задачи: Труды Седьмой Всероссийской научной конференции с международным участием. Ч. 4: Информационные технологии в математическом моделировании. - Самара: СамГТУ, 2010. - С. 19-21.
12. Лоусон, Ч. Численное решение задач метода наименьших квадратов / Ч. Лоусон, Р. Хенсон; пер. с англ.-М. : Наука, гл. ред. физ.-мат. лит., 1986. - 232 c.
13. Мудров, В.И. Методы обработки измерений: Квазиправдоподобные оценки / В.И. Мудров, В. Л. Кушко. -М., Радио и связь, 1983. - 304 с.
14. Фурсов, В. А. Идентификация моделей систем формирования изображений по малому числу наблюдений / В.А. Фурсов. - Самара: ИПО СГАУ, 1998. -218 с.
References
1. Bibikov, S.A. Correction of shadow artifacts on colorful digital images / S.A. Bibikov, A.V. Nikonorov, V.A. Fursov // Computer optics. - 2010. - V. 34, N 1. - P. 124-131. - (In Russian).
2. Bibikov, S.A. Shadow Artifacts Correction on Fine Art Reproductions / S.A. Bibikov, V.A. Fursov, A.V. Nikonorov - Proceedings of IMTA 2010 in conjuction with VISIGRAPP 2010, Angers, France, 17-21 May 2010. -P. 3-12.
3. Judd, D. Color in business, science, and industry / Dean Judd, Gunter Wyszecki. - New York: Wiley, 1975. -553 p.
4. Bibikov, S.A. Research of CUDA technology effectiveness for digital image prepress processing / S.A. Bibikov, A.V. Nikonorov, V.A. Fursov, P.Yu. Yakimov - Proc. of All-Russian supercomputing conf. "Scientific service in Intenet: scalability, parallelism, effectiveness, 21-26 Sept. 2009, Novorossiysk, Russia". - M.: MSU Publisher, 2009.
- P. 204-207. - (in Russian).
5. Chan, T.F. Active contours without edges / T.F. Chan, L.A. Vese // Image Processing, IEEE Transactions on Vol. 10, Iss. 2, Date: Feb 2001. - P. 266-277.
6. Aubert, G. A variational method in image recovery / G. Aubert, L. Vese. // SIAM J. Numer. Anal. - 1997. - V. 34, no. 5. - P. 1948-1979.
7. Murashev, D.M. Automated cytological specimen image segmentation technique based on the active contour model / D.M. Murashev // Proc. of Moscow Institute of Physics and Technology (State University). - M.: - 2009. - V. 1, N 1. - P. 80-89. - (in Russian).
8. Bibikov, S.A. Color correction based on models identification using test image patches / S.A. Bibikov, V.A. Fursov // Computer optics. - 2008. - V. 32, N 3. - P. 302-307. - (in Russian).
9. Fursov, V.A. Distributed algorithm of retouching of pointlike artefacts on color images / V.A. Fursov, A.V. Nikonorov - Proc. of 4-th International conference «Parallel computations and control problems», Moscow, 27-29 Oct., 2008. - P. 1087. - (in Russian).
10. Nikonorov, A.V. Distributed computational system of color images correction / A.V. Nikonorov, V.A. Fursov // XV All-Russian conference Telematica. - 2008. - Vol. 1.
- P. 88-89. - (in Russian).
11. Bibikov, S.A. Parameters identification of point-like flares color correction model / S.A. Bibikov - Math-ematic modeling and boundary problems: proc. of 7-th All-Russian conference with international participation. V. 4: Information technologies in mathematical modeling. - Samara: SSTU Publisher, 2010. - P. 19-21. - (in Russian).
12. Lawsen, Ch.L. Solving Least Squares Problems / Ch.L. Lawsen, R. J. Hanson. - Prentice-Hall, Inc. Englewood Cliffs, NJ, 1974.
13. Mudrov, V.I. Methods of treating mesurement / V.I. Mudrov, V.L. Kushko - M.: "Radio i Svyaz'" Publisher, 1983. - 304 p. - (in Russian).
14. Fursov, V.A. Identification of imaging systems models using small amount of measurements / V.A. Fursov -Samara: SSAU Publisher, 1998. - 218 p. - (in Russian).
COLOR CORRECTION OF HIGHLIGHTS ON DIGITAL IMAGES
S.A. Bibikov 12, E.Yu. Minaev 1, A.V. Nikonorov 1, V.A. Fursov 1,2 1 Samara State Aerospace University, 2 Image Processing Systems Institute of the RAS
Abstract
This paper deals with general model of highlights on digital images. Particular cases such as point flares, spatial flares, and mat highlight are under consideration. Highlight distortion detection and removal algorithms are proposed. Some examples of real images processed with proposed algorithms are presented.
Key words: image processing, highlight, detection, color correction, identification.
Сведения об авторах
Бибиков Сергей Алексеевич, родился в 1984. В 2007 году с отличием окончил Самарский государственный аэрокосмический университет (СГАУ) по специальности «Прикладная математика и информатика». Работает инженером кафедры общей информатики СГАУ, стажером-исследователем в Учреждении Российской академии наук Институт систем обработки изображений РАН. E-mail: bibikov.sergei@gmail.com. Область научных интересов: обработка изображений, цветовая коррекция, устранение технологических артефактов, параметрическая идентификация.
Sergey Alekseyevich Bibikov (b. 1984) graduated from Samara State Aerospace University in 2007, majoring in Applied Mathematics and Informatics. Currently he works as an engineer at SSAUPs General Informatics sub-department, and as an apprentice researcher at the Image Processing Systems Institute of the RAS. E-mail: bibikov.sergei@gmail.com Research interests are imaging, color correction, technological artifacts removal, identification.
Минаев Евгений Юрьевич. Бакалавр прикладной математики и физики. В настоящий момент проходит обучение в Самарском государственном университете по программе магистра. E-mail: e.minaev@gmail.com Область научных интересов: алгоритмы обработки изображений, фракталы и хаос, нелинейная динамика.
Evgeniy Yurevich Minaev. Bachelor of Applied Mathematics and Physics. Currently he studies magister course at Samara State Aerospace University. E-mail: e.minaev@gmail.com Research interests are image processing algorithms, fractals, chaos theory, nonlinear dynamics.
Никоноров Артём Владимирович родился в 1979 году. В 2002 году окончил Самарский государственный аэрокосмический университет и поступил в аспирантуру. Кандидат технических наук, доцент кафедры общей информатики СГАУ. Опубликовал более 30 работ. E-mail: admin@mcdk.com Область научных интересов: распознавание образов и анализ изображений, идентификация систем, параллельные и распределённые вычисления, вычисления с использованием графических процессоров.
Artem Vladimirovich Nikonorov (b. 1979). He graduated from SSAU in 2002 and became a PHD-student. After that, he got Candidate of Science (Engineering) degree in 2005. Now he works as an associated professor at General Informatics sub-department of SSAU. He has more than 30 publications. E-mail: admin@mcdk.com Field of scientific interest: pattern recognition and image analysis, system identification, parallel and distributed programming, GPGPU programming.
Фурсов Владимир Алексеевич, д.т.н., профессор, заведующий кафедрой общей информатики в Самарском государственном аэрокосмическом университете. Область научных интересов: теория и методы оценивания по малому числу измерений, методы обработки и распознавания изображений, построение параллельных алгоритмов обработки и распознавания изображений, реализуемых с использованием многопроцессорных вычислительных систем.
Vladimir Alekseyevich Fursov is Doctor of Engineering Science, Professor, head of General Informatics sub-department of Samara State Aerospace University, leading researcher. Research interests are development of the theory of estimation on small number of observations, development of methods of image processing and training to pattern recognition, development of high-performance parallel methods both algorithms of image processing and pattern recognition oriented on application of multiprocessor computing systems.
Поступила в редакцию 22 июля 2010 г.