способ автоматического ретуширования цифровых фотографий
Классы МПК: | G06T5/00 Усиление или восстановление изображения из побитового в побитовое изображение для создания подобного изображения G06T7/00 Анализ изображения, например из побитового к непобитовому изображению G06T11/00 Генерация двухмерного (2D) изображения, например из описания к побитовому изображению |
Автор(ы): | Калинниченко Анатолий Петрович (RU), Лыков Вячеслав Владимирович (RU), Шойко Сергей Михайлович (RU) |
Патентообладатель(и): | Общество с ограниченной ответственностью "Фирма Фото-Тревел" (RU) |
Приоритеты: |
подача заявки:
2012-07-23 публикация патента:
10.09.2014 |
Изобретение относится к средствам обработки цифровых изображений. Техническим результатом является обеспечение автоматической коррекции исходной фотографии по функции фотометрической коррекции эталонной фотографии. Способ включает создание массива данных цифровых фотографий, формирование базы эталонов; формирование матриц кодовых признаков эталонных фотографий перекодировкой матриц яркости в матрицы кодовых признаков; построение для каждой эталонной фотографии функции фотометрической коррекции; формирование матрицы кодовых признаков исходной фотографии путем перекодировки матрицы яркости в матрицу кодовых признаков, алгебраическое вычитание матриц кодовых признаков эталонных и исходной фотографий с установлением порога для достоверной идентификации ближайшей к исходной фотографии эталонной фотографии; формирование адреса эталонной фотографии с расширением из ее матрицы кодовых признаков и функции фотометрической коррекции; ретуширование исходной фотографии на основе рассчитанной матрицы кодовых признаков и функции фотометрической коррекции по адресу в базе эталонов. 4 ил.
Формула изобретения
Способ автоматического ретуширования цифровых фотографий включает создание массива данных из цифровых фотографий различных сюжетов и классов; формирование из них базы эталонов; формирование матриц кодовых признаков эталонных фотографий путем перекодировки матриц яркости I(х, у) размером |m×n| элементов в матрицы кодовых признаков размерностью ||k×k||; построение для каждой эталонной фотографии функции фотометрической коррекции, дающей комфортное восприятие образов эталонных фотографий посредством ретуширования «в интерактивном режиме» на основе специализированного программного обеспечения типа фоторедакторов фирм Adobe Systems Inc., Corel Inc. или AMS Software; формирование матрицы кодовых признаков исходной фотографии путем перекодировки матрицы яркости I(х, у) размером |m×n| элементов в матрицу кодовых признаков размерностью ||k×k||, алгебраическое вычитание матриц кодовых признаков эталонных и исходной фотографий с установлением порога для достоверной идентификации ближайшей к исходной фотографии эталонной фотографии; формирование адреса эталонной фотографии с расширением из ее матрицы кодовых признаков и функции фотометрической коррекции; ретуширование исходной фотографии на основе рассчитанной матрицы кодовых признаков и функции фотометрической коррекции по адресу в базе эталонов.
Описание изобретения к патенту
Изобретение относится к информатике и может найти применение в системах сбора, преобразования, переработки информации в различных сферах человеческой деятельности: цифровой фотографии, криминалистике, космонавтике.
Дистанционное зондирование Земли из космоса в интересах разведки полезных ископаемых, лесного хозяйства, экологии, мониторинга почвенных покровов осуществляют путем получения цифровых фотографий подстилающей поверхности. Селективными признаками объектов на фотографиях являются: цвет, тон, текстура, топология. Экологический мониторинг осуществляют, как правило, получением спектрозональных фотографий на трехслойном фотоносителе с чувствительными слоями R, G, В диапазонов.
Известен Способ оценки загрязнения атмосферы (Патент RU № 2 117 286, 1998 г. A.01.G, 23/00) - аналог. Способ-аналог включает преобразование спектральной яркости фотографий I(х, у) в цифровые матрицы |m×n| элементов в G, R участках видимого спектра; поэлементную логическую сортировку пикселей в обеих матрицах в соответствии с алгоритмом: если R G, то R, а если R<G, то R=Rmax-|k|·G, где k - коэффициент корреляции хроматических коэффициентов r, g; получение результирующей матрицы тех же размеров; вычисление числовых характеристик электрического сигнала результирующей матрицы: математического ожидания, дисперсии, огибающей пространственного спектра; получение гистограммы распределения пикселей по яркости; привязку полученного относительного закона распределения к абсолютным значениям индекса состояния атмосферы региона по его значениям и площади контрольных площадок.
Недостатком аналога является зависимость коэффициента корреляции хроматических коэффициентов r, g от условий съемки и неадекватность алгоритма логической сортировки пикселей физическому процессу, что искажает итоговую гистограмму распределения пикселей по яркости и снижает точность оценки расчетного параметра.
Ближайшим аналогом к заявленному техническому решению является способ ретуширования фотографий в интерактивном режиме [см., например, П.А.Минько «Обработка графики в Photoshop CS2, изд. «Эксмо» 2007 г., гл. 7 «Настройка изображения» стр.170-186]. В способе ближайшего аналога область ретуширования задают путем ее предварительного выделения, затем осуществляют заполнение выделенной области выбранным визуально оператором отдельным оттенком из множества предлагаемых программой Photoshop предустановленных текстур в стандартной палитре цветов BGR или в других палитрах (CMYK, Lab), дающих комфортное восприятие образа объекта.
Недостатками ближайшего аналога можно считать:
отсутствие кодового признака, позволяющего автоматически выбрать эталонную фотографию для исходной фотографии;
субъективность комфортного восприятия образа объекта, зависящая от оператора.
Задача, решаемая заявленным изобретением, состоит в автоматическом поиске эталонной фотографии для исходной фотографии путем создания матриц кодовых признаков для каждой эталонной фотографии, находящейся в базе эталонов, и последующей автоматической фотометрической коррекции исходной фотографии по функции фотометрической коррекции ближайшей к исходной фотографии эталонной фотографии, хранящейся в базе эталонов.
Техническое решение задачи достигается тем, что способ автоматического ретуширования цифровых фотографий включает создание массива данных из цифровых фотографий различных сюжетов и классов; формирование из них базы эталонов; формирование матриц кодовых признаков эталонных фотографий путем перекодировки матриц яркости I(х, у) размером |m×n| элементов в матрицы кодовых признаков размерностью ||k×k||; построение для каждой эталонной фотографии функции фотометрической коррекции, дающей комфортное восприятие образов эталонных фотографий посредством ретуширования «в интерактивном режиме» на основе специализированного программного обеспечения типа фоторедакторов фирм Adobe Systems Inc., Corel Inc. или AMS Software; формирование матрицы кодовых признаков исходной фотографии путем перекодировки матрицы яркости I(х, у) размером |m×n| элементов в матрицу кодовых признаков размерностью ||k×k||, алгебраическое вычитание матриц кодовых признаков эталонных и исходной фотографий с установлением порога для достоверной идентификации ближайшей к исходной фотографии эталонной фотографии; формирование адреса эталонной фотографии с расширением из ее матрицы кодовых признаков и функции фотометрической коррекции; ретуширование исходной фотографии на основе рассчитанной матрицы кодовых признаков и функции фотометрической коррекции по адресу в базе эталонов.
Изобретение поясняется чертежами, где:
фиг.1 - гистограммы и функция фотометрической коррекции:
а) гистограмма яркости пикселей исходной фотографии;
б) гистограмма яркости пикселей отретушированной фотографии;
в) функция фотометрической коррекции ближайшей эталонной фотографии,
фиг.2 - визуализированные образы матриц кодовых признаков:
а) эталонной фотографии;
б) исходной фотографии;
в) алгебраического вычитания матриц кодовых признаков,
фиг.3 - функциональная схема устройства, реализующая способ;
фиг.4 - результат автоматического ретуширования фотографии:
а) исходная фотография;
б) автоматически отретушированная фотография.
Техническая сущность способа состоит в следующем.
Интерактивное улучшение параметров цифровых фотографий широко применяется в различных фоторедакторах [см., например, П.А.Минько «Обработка графики в Photoshop CS2, изд. «Эксмо» 2007 г., стр.71-89, стр.145-151]. Однако уровень автоматизации процессов ретуширования пока очень низок: эксперт-фоторедактор вынужден сам подбирать оптимальные параметры преобразования фотографий в соответствии со своим художественным вкусом. Автоматизация заключается в написании специальных программ (скриптов и экшенов) на языках, воспринимаемых фоторедакторами, которые могут осуществлять заранее заданную фоторедактором последовательность преобразований при запуске соответствующей программы.
Пока не существует универсальных методов автоматической оптимизации основных параметров цифровых фотографий, поскольку выбор алгоритмов и параметров такой оптимизации зависит от сюжета фотографий. Например, меню общего и избирательного изменения яркости в различных тоновых диапазонах фотографий с использованием низкочастотной и высокочастотной фильтрации ближайшего аналога представляется галереей, включающей более 80 фильтров (см., ближайший аналог, стр.225-237).
Инструментами интерактивного ретуширования фотографий ближайшего аналога являются:
коррекция гистограмм распределения пикселей по яркости, команда Histogram, Photoshop CS2, стр.171, иллюстрируемая фиг.1;
повышение контрастности, общее затемнение или осветление фотографии, команда Levels, стр.172;
избирательное изменение яркости в разных тоновых диапазонах с использованием галереи фильтров, команды Curves, группы Adjustment, меню Filter, стр.174, 225-229.
В заявленном способе для автоматического ретуширования фотографий используют кодовое преобразование матрицы яркости исходной фотографии I(х, у) размером |m×n| элементов в матрицу интенсивностей тональных переходов (матрицу кодовых признаков) размерностью ||k×k||, где k - максимальное значение яркости. Матрица кодовых признаков не является обратимым преобразованием исходной фотографии, но она несет полную информацию для распознавания сюжета и класса фотографии.
Алгоритм перекодировки включает следующие процедуры:
задают матрицу |k×k| элементов кодовых признаков, где k -максимальное значение яркости;
выбирают окно фиксированной апертуры размерностью 2 элемента по строке;
задают цикл сканирования матрицы яркости фотографии в пределах 1 i m; 1 j n, где i - номер строки, j - номер столбца;
циклически выбирают по два соседних элемента x(i, j) и x(i, j+1) исходной матрицы, и если значение x(i, j)=a, x(i, j+l)=b, то элемент матрицы кодовых признаков с индексами (а, b) увеличивается на 1;
отображают элементы матрицы |k×k|, не равные нулю, в виде узлов матрицы кодовых признаков, значения которых пропорциональны накопленным значениям параметра яркости;
вычисляют диагональный элемент матрицы кодовых признаков.
Перечисленные процедуры, а также алгоритм вычитания матрицы кодовых признаков текущей фотографии из матрицы каждой эталонной фотографии реализуется на основе специализированных программ на языке Турбо-Паскаль.
Программа получения матрицы кодовых признаков
program ShtrCod;
var f,g:text;
SCod:array[0..15,0..15]of longint;
i,j,x,y:integer;
begin
assign(f, A1.txt );
reset(f);
for i: = 0 to 15 do
for j: = 0 to 15 do
SCod[i,j]: = 0;
while not eof(f) do
begin
read(f,x);
while not eoln(f) do
begin
read(f,y);
SCod[x div 16, y div 16]: = SCod [x div 16,y div 16]+1;
x: = y
end;
readln(f)
end;
close(f);
assign(g, SCod.txt );
rewrite(g);
for i: = 0 to 15 do
begin
for j: = 0 to 15 do write(g, SCod[i,j]:7, );
writeln(g)
end;
close(g)
end.
Разность матриц (матрицу разности) можно получить по простому алгоритму:
For i: = 0 to 15 do
For j: = 0 to 15 do
Sdiff[l,j]: = SCod[i,j] - SE[i,j]
По результатам выполнения перечисленных выше операций формируют адрес эталонной фотографии с расширением из ее матрицы кодовых признаков и функции фотометрической коррекции для данного сюжета и класса исходных фотографий. Процедура реализации автоматического ретуширования цифровых фотографий рассмотрена в примере конкретной реализации.
Пример реализации способа
Заявленный способ может быть реализован по схеме фиг.3. Функциональная схема устройства фиг.3 включает находящуюся вне системы автоматического ретуширования флэш-карту или другое устройство хранения цифровых фотографий 1, содержащую набор исходных цифровых фотографий в одном из общеупотребимых форматов (например, JPG, TIFF, RAW); аппаратно-программную систему сети Интернет 2; реализованный на микропроцессорной базе цифровой конвертер 3, формирующий из цифровых фотографий (исходных или эталонных) матрицы кодовых признаков фотографий; ОЗУ 4, содержащее матрицы кодовых признаков исходных фотографий; ППЗУ 5, содержащее эталонные цифровые фотографии в одном из общеупотребимых форматов; реализованный на микропроцессорной базе цифровой анализатор-дискриминатор 6, определяющий путем попарного вычитания матриц кодовых признаков фотографий для каждой исходной фотографии ближайшую к ней эталонную фотографию; ППЗУ 7, содержащее массив функций фотометрической коррекции эталонных фотографий, составленных профессиональными экспертами-фотокорректорами с целью исправления технических недостатков эталонных фотографий; ППЗУ 8, содержащее массив матриц кодовых признаков эталонных фотографий; реализованный на микропроцессорной базе цифровой преобразователь 9, автоматически ретуширующий исходные цифровые фотографии с помощью фотометрических функций ближайших к ним эталонных фотографий; ОЗУ 10, содержащее отретушированные цифровые фотографии в одном из общеупотребимых форматов; находящееся вне системы автоматического ретуширования ОЗУ 11, в которое переписываются отретушированные фотографии. Предварительно в ППЗУ 7 записывают массив функций фотометрической коррекции эталонных фотографий, полученных профессиональными экспертами-фотокорректорами с помощью специализированного программного обеспечения типа фоторедакторов фирм Adobe Systems Inc., Corel Inc. или AMS Software. Все элементы устройства реализованы на существующей технической базе: ПЭВМ типа Intel.
Значения яркости пикселей (0 255) цифровых фотографий находятся в текстовом файле Al.txt. Значения яркости прочитываются из файла построчно попарно. Пара «соседних» значений яркости, деленных нацело на 16, определяет координаты матрицы размером 16×16, названной матрицей кодовых признаков. Значением элемента матрицы кодовых признаков является целое число, соответствующее количеству горизонтальных пар пикселей цифровой фотографии с яркостью, значения которой совпадают с координатами элемента матрицы. Матрица кодовых признаков построчно записывается в текстовый файл SCod.txt.
Матрица кодовых признаков, полученная по фотографии, представленной на фиг.4 а:
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 123 | 3 | 170 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 2 | 0 | 11 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 158 | 7 | 7199 | 1151 | 720 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 2 | 1 | 1027 | 2081 | 1508 | 1 | 13 | 0 | 2 | 0 | 0 | 0 | 0 | 1 |
0 | 0 | 3 | 1 | 638 | 1301 | 42416 | 2187 | 2449 | 13 | 32 | 0 | 13 | 2 | 0 | 4 |
0 | 0 | 1 | 0 | 1 | 4 | 2032 | 3814 | 2181 | 4 | 7 | 0 | 1 | 1 | 0 | 2 |
0 | 0 | 4 | 0 | 56 | 22 | 2127 | 2039 | 47525 | 2397 | 189 | 1 | 112 | 28 | 0 | 108 |
0 | 0 | 1 | 0 | 10 | 8 | 36 | 0 | 2197 | 19244 | 2898 | 0 | 32 | 8 | 0 | 51 |
0 | 0 | 1 | 1 | 9 | 6 | 33 | 3 | 102 | 2768 | 59833 | 8 | 180 | 29 | 0 | 165 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 1 | 4 | 0 | 0 | 1 |
0 | 0 | 0 | 0 | 16 | 10 | 30 | 1 | 14 | 4 | 115 | 0 | 156 | 14 | 0 | 221 |
0 | 0 | 1 | 0 | 52 | 15 | 11 | 0 | 12 | 3 | 2 | 0 | 7 | 1 | 0 | 82 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 49 | 37 | 146 | 3 | 112 | 52 | 56 | 0 | 76 | 103 | 0 | 56002 |
Визуализированный образ матрицы кодовых признаков исходной фотографии (фиг.4 а) иллюстрируется фиг.2 б.
Матрица кодовых признаков эталонной фотографии:
471 | 0 | 4 | 0 | 55 | 12 | 8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
4 | 0 | 107 | 3 | 152 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 2 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
56 | 0 | 140 | 6 | 6740 | 1121 | 718 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
12 | 0 | 2 | 1 | 1004 | 2048 | 1498 | 1 | 13 | 0 | 2 | 0 | 0 | 0 | 0 | 1 |
7 | 0 | 3 | 1 | 630 | 1298 | 42409 | 2187 | 2449 | 13 | 32 | 0 | 13 | 2 | 0 | 4 |
0 | 0 | 1 | 0 | 1 | 4 | 2032 | 3814 | 2181 | 4 | 7 | 0 | 1 | 1 | 0 | 2 |
0 | 0 | 4 | 0 | 56 | 22 | 2127 | 2039 | 47525 | 2397 | 189 | 1 | 112 | 28 | 0 | 108 |
0 | 0 | 1 | 0 | 10 | 8 | 36 | 0 | 2197 | 19244 | 2898 | 0 | 32 | 8 | 0 | 51 |
0 | 0 | 1 | 1 | 9 | 6 | 33 | 3 | 102 | 2768 | 59833 | 8 | 180 | 29 | 0 | 165 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 1 | 4 | 0 | 0 | 1 |
0 | 0 | 0 | 0 | 16 | 10 | 30 | 1 | 14 | 4 | 115 | 0 | 156 | 14 | 0 | 221 |
0 | 0 | 1 | 0 | 52 | 15 | 11 | 0 | 12 | 3 | 2 | 0 | 7 | 1 | 0 | 82 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 49 | 37 | 146 | 3 | 112 | 52 | 56 | 0 | 76 | 103 | 0 | 56002 |
Визуализированный образ матрицы кодовых признаков эталонной фотографии иллюстрируется фиг.2 а, оптимальная для данной эталонной фотографии функция фотометрической коррекции иллюстрируется фиг.1 в.
Для установления «соответствия» исходной фотографии эталонной фотографии осуществляют алгебраическое вычитание матриц с получением разностной матрицы. Меру соответствия выбирают установлением некоторого порога по критерию N<Е, где N - принятая норма матрицы разности, например пороговое абсолютное значение, Е - число, установленное экспертом. Для исходной фотографии фиг.4 а разностная матрица приняла следующий вид:
-471 | 0 | -4 | 0 | -55 | -12 | -8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
-4 | 0 | 16 | 0 | 18 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
-56 | 0 | 18 | 1 | 459 | 30 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
-12 | 0 | 0 | 0 | 23 | 33 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
-7 | 0 | 0 | 0 | 8 | 3 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Визуализируемый образ разностной матрицы кодовых признаков иллюстрируется фиг.2 в. База данных эталонов может представлять собой реляционную базу данных, поля записей которых состоят из указателя (адрес эталонной фотографии) и расширений в составе матрицы кодовых признаков и вектора с параметрами команды Curves - функции фотометрической коррекции.
Эффективность способа характеризуется возможностью автоматического ретуширования цифровых фотографий с различным сюжетом с высокой достоверностью идентификации и качеством ретуширования.
Класс G06T5/00 Усиление или восстановление изображения из побитового в побитовое изображение для создания подобного изображения
Класс G06T7/00 Анализ изображения, например из побитового к непобитовому изображению
Класс G06T11/00 Генерация двухмерного (2D) изображения, например из описания к побитовому изображению