ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение направлено на восстановление баланса белого/освещения и других изменений на изображении, в частности относится к способу получения модели постоянства цветов.
УРОВЕНЬ ТЕХНИКИ
Постоянство цвета относится к способности зрительной системы человека воспринимать цвета сцены как одинаковые даже при наблюдении при разном освещении. Поскольку спектральная чувствительность у человеческого глаза и у цифровой фотокамеры сильно различаются, то цвета на изображениях, полученных с помощью такой камеры, могут сильно отличаться от того, что видит человек, находящийся в тех же условиях съемки. Это происходит по той причине, что картинка, видимая человеком, автоматически и без усилия воли обрабатывается его мозгом, поэтому человек может корректно определить цвет предмета не только при освещении различными спектрами, но и при различных уровнях яркости источника света.
Таким образом, при обработке изображения, полученного с использованием фотокамеры, для того чтобы корректно определить цвета, прежде всего необходимо скорректировать изображение таким образом, как если бы эту сцену видел человек своими глазами, т.е. необходимо восстановить по меньшей мере баланс белого/освещения на изображении. Существуют, например, такие типы коррекции:
1. Встроенные в цифровые камеры алгоритмы автоматической балансировки белого (auto white balancing).
2. Встроенные в цифровые камеры алгоритмы автоматической коррекции экспозиции либо чувствительности ISO (уровень освещенности сцены).
Однако указанные методы далеко не всегда удовлетворительно корректируют цвета.
Также существуют способы восстановления баланса белого/освещения, в основе которых лежат обученные нейронные сети. Для успешного обучения указанных нейронных сетей важно сформировать подходящий набор обучающих данных. Решая эту проблему ранее, обучающие данные (пары изображений) пытались получить вручную, например, с использованием фотокамеры снять искаженные изображения и изображения с цветопередачей, близкой к естественной (канонической). Такие пары изображений получали, например, путем использования фотокамер с разной спектральной чувствительностью или с изменением освещения сцены. Однако полученные таким образом пары изображений, помимо отличий в освещенности, имеют отличия, обусловленные человеческим фактором, например изменяющееся положение тела, разное расположение объектов, различия в тенях и бликах и другое, что в дальнейшем при обучении нейронной сети на таких изображениях приводит к результату с большой ошибкой.
Таким образом, на данный момент существует необходимость в создании улучшенного набора обучающих данных и способа для восстановления баланса белого/освещения на изображении, а именно обеспечивающего получение канонического оттенка (цвета) на изображении, близкого к тому, который был до искажения источниками света или затемнения/осветления окружающими предметами, с минимальной ошибкой.
РАСКРЫТИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Согласно настоящему изобретению, предлагается способ получения модели постоянства цветов для восстановления баланса белого на изображении, согласно которому обеспечивают наличие оригинальных изображений, каждое из которых содержит цветовую мишень, выделяют маску цветовой мишени в каждом оригинальном изображении путем его сегментации с использованием нейронной сети и получают информацию о цветах цветовой мишени оригинального изображения с использованием выделенной маски цветовой мишени. Далее, согласно предложенному способу, выполняют обучение модели преобразования цветов для получения восстановленных канонических изображений, обучающие данные для которой содержат полученную информацию о цветах цветовой мишени оригинального изображения и информацию о канонических цветах цветовой мишени, причем для обучения модели преобразования цветов используют перцептрон, в результате чего получают аппроксимирующую функцию преобразования цветов, переводящую каждый пиксель оригинального изображения в каждый пиксель восстановленного канонического изображения. Наконец, согласно предложенному способу выполняют обучение модели постоянства цветов, обучающие данные для которой содержат по меньшей мере части оригинальных изображений и соответствующие им части полученных восстановленных канонических изображений. Техническим результатом настоящего изобретения является улучшение качества восстановления баланса белого/освещения и, как следствие, цветов на изображении.
Для обучения модели постоянства цветов необходимо много пар изображений, на одном из которых должна быть изображена сцена с искаженным цветовым балансом, а на другом - та же самая сцена, но с балансом каноническим. Согласно настоящему изобретению, принципиальным моментом для создания модели постоянства цветов, обеспечивающей получение изображения с высоким качеством восстановленных цветов, является то, что кадры на этих двух изображениях должны попиксельно совпадать, т.е. смещение даже на пиксель в сторону недопустимо.
Для выполнения указанного условия необходимо создание пары изображений из одного изображения. В этом случае может быть применено два корректных варианта. Согласно первому варианту, обрабатывают готовое каноническое изображение, искусственно вводя искажение, например, баланса белого. Согласно второму варианту, восстанавливают искаженное изображение (оригинальное изображение, засвеченное при фотосъемке) в каноническое изображение. В результате экспериментов было выяснено, что первый вариант является менее подходящим, потому что искусственные искажения могут не соответствовать реальным, и тогда модель постоянства цветов, обученная на таких парах изображений, работает некачественно.
Ввиду этого был выбран второй вариант, который предполагает получение из искаженного изображения восстановленное. Согласно предлагаемому способу, для реализации данного варианта использована цветовая мишень. Цветовая мишень содержит стандартизированные цвета, что дает знание того, как они должны выглядеть на каноническом изображении. Таким образом, имея оригинальное (искаженное) изображение с цветовой мишенью в сцене, возможно выполнить сопоставление ее цветов со стандартизированными цветами.
Для обеспечения высокого качества результата требуется большое количество обучающих данных, ввиду этого процесс получения информации о цветах цветовой мишени необходимо автоматизировать. С целью решения этой задачи использована нейронная сеть, которая посредством сегментации выделяет маску цветовой мишени на оригинальном изображении, использующуюся в дальнейшем для получения информации о цветах цветовой мишени.
Зная информацию о цветах цветовой мишени оригинального изображения, а также как они должны выглядеть на каноническом изображении, появляется возможность обучить модель преобразования цвета с использованием перцептрона. В результате обучения модели преобразования цвета получают аппроксимирующую функцию преобразования цвета, способную переводить каждый пиксель оригинального изображения в каждый пиксель восстановленного канонического изображения.
Оригинальные изображения и соответствующие им полученные восстановленные канонические изображения делят на соответствующие друг другу части для увеличения количества обучающих данных, и, этим самым, повышая качество обучения модели постоянства цветов. Таким образом, сформированный набор обучающих данных содержит пары, в каждую из которых входит часть оригинального изображения и соответствующая ей часть восстановленного канонического изображения. Далее указанный обучающий набор используют для обучения модели постоянства цветов.
Стоит отметить, что указанные по меньшей мере части оригинальных изображений, используемые для обучения модели постоянства цветов, могут представлять собой произвольно вырезанные части оригинальных изображений. При этом для обучения модели постоянства цветов обучающие данные также могут содержать целые оригинальные изображения и соответствующие им целые полученные восстановленные канонические изображения.
Как было указано ранее, для обучения указанной модели постоянства цветов также возможно использование канонических изображений и соответствующих им модифицированных изображений, представляющих собой те же канонические изображения, только измененные путем аугментации, включающей изменение яркости, контрастности, насыщенности и/или с добавлением источников света. Такие обучающие данные могут быть использованы только в качестве дополнения.
Для обучения указанной модели постоянства цветов может быть использована сверточная нейронная сеть с применением концепции end-to-end. В дополнение к указанной концепции могут быть применены генеративно-состязательные сети (generative adversarial networks (GAN)). Предложенные приемы позволяют повысить качество обучения модели постоянства цветов и в результате получить надежную модель постоянства цветов.
Возвращаясь к модели преобразования цветов, стоит отметить, что для каждой пары, состоящей из информации о цветах цветовой мишени оригинального изображения и информации о канонических цветах цветовой мишени, каждый раз может быть обучен отдельный перцептрон, а не использоваться один перцептрон для всех пар, что повышает надежность и качество получаемого результата.
Также, говоря о выделении маски цветовой мишени на оригинальном изображении, сегментация оригинального изображения может быть выполнена с использованием архитектуры U-net, а параметры нейронной сети могут быть выбраны таким образом, чтобы ее выдаваемый результат содержал информацию с предположением для каждого пикселя изображения о том, находится ли в нем цветовая мишень. При этом после выделения маски цветовой мишени возможно определение контура маски цветовой мишени и приведение его к четырехугольнику и к расположению, повторяющему стандартное расположение цветовой мишени на изображении, что ускоряет и повышает эффективность получения информации о цветах цветовой мишени. Стоит отметить, что при получении информации о цветах цветовой мишени может быть взято медианное значение цвета из каждого цветового патча цветовой мишени, которая выделена маской. Это связано с тем, что изображение всегда передает цвета приблизительно, т.к. содержит некоторый шум воспринимающей матрицы фотоаппарата. Поэтому даже если фотографировать ровный монотонный цвет, соседние пиксели изображения обычно слегка различаются. Таким образом, получение медианных значений патчей дает более устойчивое к погрешностям определение цветов цветовой мишени.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Сущность изобретения более подробно поясняется на неограничительных примерах его осуществления со ссылкой на прилагаемые чертежи, среди которых:
Фиг. 1 - Блок-схема этапов способа получения модели постоянства цветов для восстановления баланса белого/освещения на изображении.
Фиг. 2 - Блок-схема модели сегментации оригинального изображения с цветовой мишенью.
Фиг. 3 - Блок-схема модели преобразования цветов.
Фиг. 4 - Блок-схема модели постоянства цветов.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Человеческое зрение и камера со светочувствительной матрицей воспринимают оптическую информацию на основе различных принципов. Обработка изображения в зрительной системе восприятия человека не заканчивается на фокусировании изображения на сетчатке, значительная часть постобработки происходит в нейронах глаза и далее в визуальной коре мозга. Таким образом, зрительная система человека является гораздо более интеллектуальной и учитывает большее количество факторов сцены, вплоть до семантического анализа.
В задаче восстановления баланса белого/освещения на изображении с помощью нейронных сетей огромную роль играет процесс обучения модели постоянства цветов. Неправильно обученная модель постоянства цветов может привести к тому, что цвет пикселя, формально верно определенный программным образом, на практике будет разительно отличаться от того цвета, который представляется в мозге пользователя.
Большое влияние на качество обучения модели постоянства цветов оказывают обучающие данные. Поэтому для успешного обучения указанной модели важно сформировать подходящий набор обучающих данных. Для решения указанной проблемы, согласно настоящему изобретению, на этапе 101 обеспечивают наличие оригинальных изображений, каждое из которых содержит цветовую мишень (фиг. 1). Оригинальные изображения, содержащие цветовые мишени, могут быть получены путем использования цифровых, пленочных и других фотокамер. Далее предлагается восстанавливать искаженное оригинальное изображение в каноническое изображение (изображение с каноническим освещением) путем использования цветовой мишени. Поскольку в ручном режиме создать большой набор подобных изображений крайне затруднительно, в настоящем раскрытии предлагается метод, согласно которому расположение цветовой мишени и получение цветов цветовой мишени выполняют с использованием нейронной сети. Кроме того, предлагается метод получения аппроксимирующей функции преобразований цветов, позволяющей с использованием полученных цветов цветовой мишени переводить каждый пиксель оригинального изображения в каждый пиксель восстановленного канонического изображения. Получаемый таким образом набор обучающих данных позволяет успешно обучить модель постоянства цветов. Ниже приведено более подробное описание каждого из этапов способа (фиг. 1).
Сегментация оригинальных изображений с цветовой мишенью, выполняемая на этапе 102, представляет собой следующее.
В предпочтительном варианте реализации оригинальное изображение представляет собой искаженное оригинальное изображение (фотографию), которое не подвергалось искусственной коррекции, например путем аугментации.
При использовании цветовой мишени в сцене стоит учитывать, что цветовая мишень и остальные объекты сцены должны быть освещены одинаковым образом, т.е. имеющиеся источники света должны иметь один и тот же спектр излучения и уровень освещенности цветовой мишени должен совпадать с уровнем освещенности остальных объектов. В частности находящаяся на переднем плане цветовая мишень может быть освещена зеленоватым светом, который хорошо будет скорректирован на восстановленном изображении, однако, одновременно с этим источники света на дальнем (заднем) плане могут быть освещены желтоватым оттенком и поэтому освещение на дальнем плане будет восстановлено некорректно.
Для обработки большого количества изображений с цветовой мишенью был создан алгоритм, позволяющий в автоматическом режиме с высокой точностью определять цвета цветовой мишени. Данный алгоритм содержит следующие этапы:
1. Выделение цветовой мишени на изображении;
2. Приведение выделенной цветовой мишени к стандартному расположению (прямоугольник, лежащий горизонтально на своей большой стороне);
3. Определение цветов, изображенных на цветовой мишени.
Выделение цветовой мишени на изображении.
В изображениях, полученных с помощью фотокамеры, обычно цветовая мишень располагается в произвольных местах кадра и под произвольными углами, в виду этого для выделения цветовой мишени были использованы обученные нейронные сети.
В качестве набора данных для обучения нейронной сети выделению цветовой мишени были взяты фотографии, по которым вручную размечены маски цветовых мишеней. Маска представляет собой белый четырехугольник на черном фоне, обозначающий расположение цветовой мишени на исходной фотографии.
Для выполнения указанного обучения была использована архитектура U-net (фиг. 2). Поскольку задача заключается в получении маски определенной части изображения, то на выходном слое число сверточных слоев должно равняться единице, а в качестве активационной функции на нем был взят sigmoid. Это означает, что на выходе нейронная сеть будет выдавать для каждого пикселя изображения свои предположения о том, находится ли в нем искомый объект (цветовая мишень) или нет. Эти предположения формулируются в виде чисел с плавающей точкой в диапазоне от 0 до 1, характеризующих степень уверенности сети, где 0 означает "точно нет", а 1 - "точно да".
В качестве loss-функции для улучшения тренировки была взята сумма бинарной кросс-энтропии (binary crossentropy) и коэффициента Dice. Экспериментально было выяснено, что оптимальным количеством каскадов в U-net является 4 каскада. Указанное количество каскадов дают приемлемую точность, а именно коэффициент Dice на отложенной выборке достигает 0,9649 при максимально возможном 1,0. При необходимости можно увеличить точность посредством увеличения количества каскадов и/или расширением набора данных.
Рассмотренный вариант архитектуры не является единственно возможным для данной задачи. Как альтернативу, можно рассмотреть вариант, когда нейронная сеть выдает координаты четырех углов цветовой мишени на фотографии, т.е. решает задачу регрессии. Такой подход может избавить от необходимости в поиске границ выделенной области и тем самым минимизировать возможные ошибки на этом этапе. Однако следует учесть, что разметка набора данных для такого варианта будет более трудоемкой. Также можно сконструировать нейронную сеть, которая выдавала бы координаты центров цветовых образцов цветовой мишени на изображениях для последующего определения цветов в окрестностях этих точек или даже сразу непосредственно определенные ей цвета цветовой мишени, но в таких случаях разметка обучающего набора данных становится также на порядки более трудоемкой.
Выделение границ цветовой мишени и приведение их к четырехугольнику.
На изображении цветовая мишень имеет вид четырехугольника, а нейронная сеть выдает попиксельную маску, которая, хотя и очень похожа, но все же не является абсолютно точным четырехугольником. Преобразование маски в четырехугольник производится в 3 этапа:
1. Отсечение порогового уровня для маски. Нейронная сеть может генерировать в своей выходной маске участки с невысоким уровнем уверенности (например, 20%). Это бывает в случаях, когда на исходном изображении в этом месте находится нечто, похожее на цветовую мишень. Берем только те пиксели, в которых нейронная сеть "уверена". Порог отсечения можно подобрать опытным путем. Уровень в 90% обычно можно считать достаточным. Отсечение производится путем исключения из маски пикселей, чье значение меньше порога.
2. Определение линии контура маски. Нужно преобразовать маску из растрового вида (список пикселей) в векторный (список координат вершин, которые последовательно соединяются отрезками). Для этого хорошо подходит функция findCountours() из пакета OpenCV.
3. Аппроксимация векторной маски цветовой мишени четырехугольником. Как правило, определенный на предыдущем этапе векторный контур еще не является четырехугольником. Для данного шага использована функция approxPolyDP(). У данной функции один из параметров - epsilon - характеризует точность аппроксимации. Нужно получить четырехугольник, максимально приближенный к полученному векторному контуру, поэтому начинаем с epsilon=0 итеративно в цикле повышаем значение параметра на единицу. Как только функция вернет четырехугольник (т.е. фигуру, количество вершин у которой равно 4), из цикла принудительно выходим.
Приведение выделенной цветовой мишени к стандартному расположению
Цветовые образцы (патчи) на цветовой мишени расположены в строго определенном фиксированном порядке. Поэтому для того чтобы программно определить соответствие патчей с изображения реальным патчам, необходимо геометрическими преобразованиями приводить изображенную на изображении цветовую мишень к некоторому стандартному виду. Таким видом предлагается считать горизонтальное расположение цветовой мишени, когда она лежит на своей большей стороне. Обычно цветовая мишень на изображениях располагается не строго перпендикулярно оптической оси и не ориентирована относительно границ изображения, что давало бы прямоугольный вид цветовой мишени на изображении и существенно упростило бы процесс определения цветов патчей цветовой мишени. В реальности цветовая мишень расположена под произвольными углами и потому далеко не всегда на оригинальном изображении имеет вид прямоугольника.
Геометрические искажения изображенной на изображении цветовой мишени бывают трех типов:
1. Аффинные искажения. Цветовая мишень на фото имеет вид не прямоугольника (каковым является в реальности), а параллелограмма. Указанные искажения связаны с тем, что цветовая мишень располагается под углом к плоскости изображения.
2. Перспективные искажения. Указанные искажения приводят к тому, что прямоугольник на изображении выглядит как трапеция. Данный вид искажений связан с тем, что дальний от объектива фотоаппарата край имеет меньшие угловые размеры, чем ближний.
3. Нелинейные искажения, причиной которых являются особенности оптики фотоаппарата.
На изображениях, которые обрабатываются в данной задаче, расположение цветовой мишени таково, что второй и третий типы искажений насколько минимальны, что ими можно пренебречь. Для аффинных же искажений необходимо производить обратное преобразование (приведение к прямоугольному виду) и поворот (приведение полученного прямоугольника к стандартному расположению). Оба необходимых преобразования можно осуществить с помощью функционала библиотеки OpenCV. На первом этапе посредством вызова getAffineTransform() получаем матрицу для аффинного преобразования и поворота. На втором вызываем warpAfflne() и получаем изображение цветовой мишени в стандартном расположении.
Получение информации о цветах цветовой мишени, изображенной на оригинальном изображении, выполняемое на этапе 103, представляет собой следующее.
Цветовые патчи представляют собой квадраты с фиксированным расположением на цветовой мишени. Имея в наличии изображение цветовой мишени в стандартном расположении, можно программным путем получить информацию о цветах цветовой мишени, т.е. численные значения цветов. Стоит учитывать, что на фотографии возможен визуальный шум, а в процессе выделения цветовой мишени и приведения ее к стандартному расположению возможны погрешности. Поэтому для получения цветов патчей лучше брать не отдельные пиксели, а медианные значения цвета с квадратных участков патчей. В частности в настоящем изобретении для определения цвета патча цветовой мишени берут некоторую область патча, например центральную область патча, включающую от нескольких десятков пикселей, и уже среди них берут медианный цвет, как наиболее избавленный от шума и потому наиболее близкий к реальному искаженному цвету патча. Такой подход дает более устойчивое к погрешностям определение цвета патчей цветовой мишени, даже в случае, если край такого участка немного выйдет за пределы патча.
Построение функции (модели) преобразования цветов, выполняемое на этапе 104, представляет собой следующее.
Задача восстановления канонического освещения на изображении сводится к нахождению аппроксимирующей функции, которая преобразует каждый пиксель оригинального изображения с искаженным балансом белого/освещенностью в каждый пиксель канонического изображения с восстановленным балансом белого/освещенностью.
Для получения указанной аппроксимирующей функции преобразования цветов выполняют обучение модели преобразования цветов, обучающие данные для которой содержат информацию о цветах цветовой мишени, изображенной на оригинальном изображении, а также информацию о канонических цветах цветовой мишени, т.е. при канонической освещенности. Информация о цветах цветовой мишени оригинального изображения содержит численные значения указанных цветов, полученные на предыдущем этапе предлагаемого способа. Информация о канонических цветах цветовой мишени берется из стандарта.
При обучении модели преобразования цветов использована такая нейронная сеть, как перцептрон (Фиг. 3). Поскольку модель выполняет попиксельное преобразование, то на входе у нее 3 нейрона и на выходе тоже 3, по числу цветовых компонент. Эксперименты показали приемлемые результаты для перцептрона с двумя скрытыми слоями по 20 нейронов как для недостаточного уровня освещенности, так и для избыточного. Для повышения надежности каждый раз выполняли обучение отдельного перцептрона для каждой пары изображений (для каждой пары, состоящей из информации о цветах оригинального изображения и информации о канонических цветах), т.е. для каждой пары использована отдельная нейронная сеть.
В результате обучения получают аппроксимирующую функцию преобразования цветов, переводящую каждый пиксель оригинального изображения в каждый пиксель восстановленного канонического изображения.
На основании полученных данных формируют обучающие данные для обучения модели постоянства цветов.
Построение модели постоянства цветов, выполняемое на этапе 105, представляет собой следующее.
На первом этапе для обучения модели постоянства цветов используют более простой вариант архитектуры сверточной нейронной сети, а именно архитектуру U-net на основе концепции end-to-end (Фиг. 4), согласно которой на вход подают исходные обучающие данные, а на выходе получают результирующие, без каких-либо промежуточных этапов в виде обработки выходных данных модели. В данном случае, согласно предлагаемой концепции, подают искаженное оригинальное изображение на вход нейронной сети, а на выходе получают восстановленное изображение. Стоит отметить, что для обучения нейронной сети выделению цветовой мишени и для обучения модели постоянства цветов используется одна и та же архитектура U-net, однако если в случае обучения нейронной сети выделению цветовой мишени на выходном слое получают однокомпонентную маску в градациях серого, обозначающую найденный на изображении объект, то в случае обучения модели постоянства цветов на выходном слое получают трехкомпонентное цветное RGB-изображение. Дополнительно, в случае обнаружения недостаточного качества восстановленного канонического освещения на изображении, модель постоянства цветов может быть обучена с тренировкой генеративно-состязательными сетями (generative adversarial networks, GAN).
Особенностью GAN является то, что сеть обучается на основе неких входных параметров генерировать данные, максимально похожие на реальные. Плюсом от использования сетей GAN для получения модели постоянства цветов также являются то, что появляется возможность генерировать изображения с любой заданной цветовой температурой источника света.
Однако, в использовании сетей GAN для получения модели постоянства цветов существуют и минусы, а именно сложность обучения такого типа архитектур. При обучении GAN тренируется не функция преобразования исходного изображения в требуемое, а функции бинарной классификации и функция генерации изображения, похожего на настоящее. При этом, минимизируемая ошибка может не всегда стремиться к нулю, т.е. процесс обучения может оказаться расходящимся. Кроме того, согласно задаче настоящего изобретения, необходимо приводить изображения только к каноническому (эталонному) балансу белого/освещению, а не к любому произвольно заданному изображению. Обучение решению более общей задачи может потребовать необоснованных затрат вычислительных ресурсов и времени, по сравнению с решением частной задачи.
Плюсом концепции end-to-end является то, что нейронная сеть обучается непосредственно функции преобразования исходного оригинального изображения с произвольным освещением в изображение с эталонным каноническим освещением. С указанной концепцией для обучения модели постоянства цветов используют архитектуру «encoder-decoder», включающую skip-connections. Skip-connections обеспечивает пропускание некоторых слоев в нейронной сети и передает выходные данные одного слоя в качестве входных данных для слоев, следующих за пропущенными слоями. В предпочтительном варианте реализации, архитектура «encoder-decoder» содержит один энкодер и один декодер, соответствующий каноническому изображению с эталонным освещением.
В качестве обучающих данных использованы данные, полученные на предыдущем этапе способа, в частности обучающие данные содержат оригинальные изображения, представляющие собой искаженные реальные фотографии и соответствующие им восстановленные канонические изображения.
Стоит отметить, что идеологически правильным было собрать обучающие данные из реальных искаженных фотографий и восстановить в канонический вид, т.е. в соответствии с тем как предложено в настоящем изобретением, поскольку искусственная аугментация фотографий может не отражать естественных цветовых и световых искажений, а нейронная сеть, натренированная на таких обучающих данных, будет выдавать большую ошибку (т.е. работать недостаточно качественно) при предъявлении ей реальных искаженных фотографий.
Однако, в некоторых случаях, когда, например, обучающих данных недостаточно и/или нет высокого требования к качеству выдаваемого результата, для обучения модели постоянства цветов в качестве дополнения могут быть использованы изображения с канонической цветопередачей и соответствующие им полученные путем их аугментации модифицированные изображения, причем при аугментации может быть использовано изменение яркости, контрастности, насыщенности и/или добавление источников света.
В предпочтительном варианте реализации, в случае с концепцией end-to-end обучение модели постоянства цветов заключается в том, что на вход подается произвольно вырезанная часть оригинального изображения, например, размером 128×128,а получаемый результат на выходе сравнивается с соответствующей ей частью восстановленного канонического изображения. Одним из преимуществ нарезания на части изображений является то, что набор обучающих данных становится больше и разнообразнее, что улучшает обучение. Также, возможно использование целых (не нарезанных изображений). Стоит отметить, что при обучении модели постоянства цветов наличие патчей цветовых мишеней на подаваемых на вход частях изображений является не обязательным.
В качестве функции потерь использовалась формула евклидового расстояния, она же среднеквадратичное отклонение MSE. Показанная ниже формула применима как для модели постоянства цветов, так и для модели преобразования цветов.
n - это число сэмплов (т.е. точек), для которых вычисляется MSE, при этом для использования в обучении модели преобразования цветов n - это количество патчей цветовой мишени, а в обучении модели постоянства цветов n - это количество пикселей всего изображения целиком; у - значения цветовых компонент пикселей на каноническом изображении (ground truth); также для использования в обучении модели преобразования цветов - это медианные значения цветовых компонент патчей цветовой мишени, которые получают в результате постобработки (когда выделяют цветовые патчи цветовой мишени на изображении), а в обучении модели постоянства цветов
- это значения цветовых компонент на изображении, получаемом на выходе нейронной сети.
Таким образом, обученную модель постоянства цветов возможно использовать для восстановления баланса белого / освещения, корректировки цветов в сторону естественности, а также для восстановления других искажений, например яркости и контрастности, получая при этом результат высокого качества.
Варианты применения обученной модели постоянства цветов и дополнительные усовершенствования.
Как и любой другой процесс, корректировка изображений обученной моделью постоянства цветов имеет свои пределы применимости, внутри которых погрешность восстановления будет минимальной.
Для того чтобы не выходить за рамки погрешности при восстановлении изображения, например фотографии, нужно, чтобы программное обеспечение модели могло предварительно определять, имеет ли фотография, сделанная пользователем, допустимый уровень освещенности.
Алгоритм определения уровня освещенности изображения может состоять из двух шагов.
1. Перевести цветное RGB-изображение в формат градаций серого цвета, получив таким образом световые интенсивности каждого пикселя. Формула перевода берется стандартная, применяемая в библиотеке OpenCV: Y = 0,299*R+0,587*G+0,114*В, где R, G и В - численные значения цветовых компонент.
2. Для всех пикселей суммировать их интенсивность и разделить на общее число пикселей - получаем одно число, усредненную световую интенсивность изображения. Ее мы и будем считать уровнем освещенности.
Далее был создан алгоритм изменения уровня освещенности изображения.
Данный алгоритм используется при определении пределов допустимого уровня освещенности, а также может быть использован в качестве дополнительной аугментации при создании обучающих данных для обучения модели постоянства цветов. Алгоритм изменения уровня освещенности изображения содержит следующие этапы:
1. Переводят изображение из цветового пространства RGB в HSV.
2. Для каждого пикселя изменяют численное значение компоненты V (Value) на некоторое фиксированное целое число. Число может быть произвольным, как положительным, так и отрицательным, оно фиксировано для всей операции изменения уровня освещенности данного изображения.
3. Если на предыдущем шаге значения Value получились отрицательными, то они задаются равными нулю. Если какие-то значения Value оказались больше 255, то они задаются равными 255. Это связано с тем, что Value хранится в виде 1-байтного беззнакового целого числа.
4. Полученное изображение с измененной компонентой яркости переводят обратно в цветовое пространство RGB.
Далее определяют предел допустимого уровня освещенности.
Поскольку допустимые пределы уровня освещенности зависят от погрешности модели постоянства цветов, то они индивидуальны для каждой модели. Для определения указанных пределов необходимо для каждого из изображений тестовой выборки, по приведенному выше алгоритму изменить ее уровень освещенности, произвести обработку моделью постоянства цветов и сравнить полученное изображение с каноническим изображением.
В качестве метрики сравнения берется L2 (также известная как Root Mean Squared Error, по сути - расстояние в 3-мерном евклидовом пространстве) для цветов всех плашек из цветовой мишени SpyderCheckr48, взятых в цветовом пространстве LAB. Выбор цветового пространства LAB обусловлен тем, что в нем (в отличие от, например, RGB) учитываются особенности именно человеческого визуального восприятия, и все три компоненты имеют для человека одинаковый масштаб чувствительности. На практике, если для всех тестовых изображений произвести изменение уровня освещенности, измерить эту освещенность, измерить уровень ошибки L2 и построить усредненный по всей выборке график, то получится колоколообразная кривая, выпуклая вниз. Для сравнения, можно на эту же координатную сетку нанести аналогичный график для изображений с измененным уровнем освещенности, но не обработанных моделью постоянства цветов.
Для данной обученной модели постоянства цветов предложено зафиксировать величину максимальной ошибки L2LAB = 12. Это дает усредненный диапазон по освещенности изображения приблизительно от 90 до 170. При выходе за этот диапазон пользователю может быть предложено сделать фотографию в более подходящем освещении. При величине ошибки, входящей в указанный диапазон, выполняют восстановление баланса белого / освещения на фотографии с использованием обученной модели постоянства цветов.
Предлагаемая модель постоянства цвета может быть применена, например, в мобильном приложении, направленном на обработку фотографий. В частности, такое мобильное приложение может работать следующим образом: пользователь загружает изображение в приложение, которое выполняет предобработку изображения и проверяет уровень освещенности на изображении, далее изображение подается на вход модели постоянства цветов, полученное на выходе указанной модели изображение постобрабатывается, после чего пользователю предлагается сохранить готовый вариант изображения в галерее устройства.
Предлагаемая модель постоянства цвета также может быть применена, например, для подготовки изображения к определению цвета объектов, которые на нем изображены. В частности, поскольку полученное на выходе модели постоянства цветов изображение будет иметь восстановленный баланс белого / освещения, появляется возможность с высокой точностью определить цвет объектов на таком изображении.
В свою очередь, получаемая возможность определения цвета с высокой точностью может быть применена в приложениях с виртуальными стилистами, подбирающих по цвету косметику или одежду, а также рекомендующих наиболее подходящий цвет, или в других сферах, там, где требуется точное определение цвета или необходимость поиска определенного сочетания цветов.
Также, например, высокая точность определения цвета может быть полезна для людей с ограниченными возможностями, имеющих затруднения в различии цвета. Кроме того, возможность восстановления баланса белого / освещения на изображении и за счет этого получаемая высокая точность определения цвета могут быть полезны в медицине, например в тех направлениях, где требуется классификация изображений, в аэрофотосъемке, например при выявлении вредителей на засеянных полях или других объектов, в съемке со спутников и др.
Хотя в настоящей заявке описаны и проиллюстрированы несколько вариантов реализации изобретения, специалисты в данной области могут без труда представить себе целый ряд других средств и/или конструкций для выполнения функции и/или достижения результатов и/или одного или более преимуществ, описанных в настоящей заявке, подразумевается, что каждое из таких изменений/или модификаций находится в пределах объема вариантов реализации изобретения, описанных в настоящем документе. В частности специалистам в данной области понятно, что все параметры и конфигурации, описанные в настоящей заявке, предназначены в качестве примера и что фактические параметры и/или конфигурации будут зависеть от определенной области или областей применения, в которых используют идеи настоящего изобретения.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ И СИСТЕМА СВЕРХРАЗРЕШЕНИЯ С ПОМОЩЬЮ КОМБИНИРОВАННОЙ РАЗРЕЖЕННОЙ АППРОКСИМАЦИИ | 2016 |
|
RU2661537C2 |
СПОСОБ СОЗДАНИЯ АНИМИРУЕМОГО АВАТАРА ЧЕЛОВЕКА В ПОЛНЫЙ РОСТ ИЗ ОДНОГО ИЗОБРАЖЕНИЯ ЧЕЛОВЕКА, ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО И МАШИНОЧИТАЕМЫЙ НОСИТЕЛЬ ДЛЯ ЕГО РЕАЛИЗАЦИИ | 2023 |
|
RU2813485C1 |
Способ мультиспектрального восстановления ночных снимков городских агломераций | 2024 |
|
RU2838134C1 |
СПОСОБ ВИЗУАЛИЗАЦИИ 3D ПОРТРЕТА ЧЕЛОВЕКА С ИЗМЕНЕННЫМ ОСВЕЩЕНИЕМ И ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО ДЛЯ НЕГО | 2021 |
|
RU2757563C1 |
СПОСОБ И СИСТЕМА ОПРЕДЕЛЕНИЯ ПОДЛИННОСТИ ЛИЦА НА ИЗОБРАЖЕНИИ | 2024 |
|
RU2840316C1 |
ГЕНЕРАТОРЫ ИЗОБРАЖЕНИЙ С УСЛОВНО НЕЗАВИСИМЫМ СИНТЕЗОМ ПИКСЕЛЕЙ | 2021 |
|
RU2770132C1 |
РАЗДЕЛЕНИЕ ИЗОБРАЖЕНИЙ НА ОБОСОБЛЕННЫЕ ЦВЕТОВЫЕ СЛОИ | 2021 |
|
RU2792722C1 |
МОДЕЛИРОВАНИЕ ЧЕЛОВЕЧЕСКОЙ ОДЕЖДЫ НА ОСНОВЕ МНОЖЕСТВА ТОЧЕК | 2021 |
|
RU2776825C1 |
Совместная неконтролируемая сегментация объектов и подрисовка | 2019 |
|
RU2710659C1 |
СПОСОБ И СИСТЕМА ДЛЯ ВЫЯВЛЕНИЯ ОБЪЕМНЫХ ОБРАЗОВАНИЙ ПОЧЕК НА КОМПЬЮТЕРНЫХ ТОМОГРАММАХ БРЮШНОЙ ПОЛОСТИ | 2024 |
|
RU2839531C1 |
Изобретение относится к восстановлению баланса белого на изображении. Согласно способу восстановления баланса белого на изображении, вычислительное устройство получает изображение, подлежащее восстановлению баланса белого, и выполняет восстановление баланса белого на указанном изображении с использованием модели постоянства цветов для восстановления баланса белого на изображении, которую получают таким образом, что обеспечивают наличие оригинальных изображений, каждое из которых содержит цветовую мишень; выделяют маску цветовой мишени в каждом оригинальном изображении путем его сегментации с использованием нейронной сети и получают информацию о цветах цветовой мишени оригинального изображения с использованием выделенной маски цветовой мишени; выполняют обучение модели преобразования цветов для получения восстановленных канонических изображений, обучающие данные для которой содержат полученную информацию о цветах цветовой мишени оригинального изображения и информацию о канонических цветах цветовой мишени; выполняют обучение модели постоянства цветов. Изобретение позволяет повысить качество отображения цветов на изображении. 10 з.п. ф-лы, 4 ил.
1. Способ восстановления баланса белого на изображении, согласно которому вычислительное устройство получает изображение, подлежащее восстановлению баланса белого, и выполняет восстановление баланса белого на указанном изображении с использованием модели постоянства цветов для восстановления баланса белого на изображении, которую получают таким образом, что обеспечивают наличие оригинальных изображений, каждое из которых содержит цветовую мишень;
выделяют маску цветовой мишени в каждом оригинальном изображении путем его сегментации с использованием нейронной сети и получают информацию о цветах цветовой мишени оригинального изображения с использованием выделенной маски цветовой мишени;
выполняют обучение модели преобразования цветов для получения восстановленных канонических изображений, обучающие данные для которой содержат полученную информацию о цветах цветовой мишени оригинального изображения и информацию о канонических цветах цветовой мишени, причем для обучения модели преобразования цветов используют перцептрон, в результате чего получают аппроксимирующую функцию преобразования цветов, переводящую каждый пиксель оригинального изображения в каждый пиксель восстановленного канонического изображения;
выполняют обучение модели постоянства цветов, обучающие данные для которой содержат по меньшей мере части оригинальных изображений и соответствующие им части полученных восстановленных канонических изображений.
2. Способ по п. 1, в котором указанные по меньшей мере части оригинальных изображений, используемые для обучения модели постоянства цветов, представляют собой произвольно вырезанные части оригинальных изображений.
3. Способ по п. 1, в котором для обучения модели постоянства цветов обучающие данные содержат целые оригинальные изображения и соответствующие им целые полученные восстановленные канонические изображения.
4. Способ по п. 1, в котором для обучения указанной модели постоянства цветов обучающие данные дополнительно содержат модифицированные изображения и соответствующие им канонические изображения.
5. Способ по п. 4, в котором модифицированные изображения представляют собой канонические изображения, измененные путем аугментации, включающей изменение яркости, контрастности, насыщенности и/или с добавлением источников света.
6. Способ по п. 1, в котором для обучения указанной модели постоянства цветов используют сверточную нейронную сеть с применением концепции end-to-end.
7. Способ по п. 6, в котором для обучения указанной модели постоянства цветов дополнительно используют генеративно-состязательные сети (generative adversarial networks (GAN)).
8. Способ по п. 1, в котором при обучении модели преобразования цветов для каждой пары, состоящей из информации о цветах цветовой мишени оригинального изображения и информации о канонических цветах цветовой мишени, обучают отдельный перцептрон.
9. Способ по п. 1, в котором при выделении маски цветовой мишени сегментацию оригинального изображения выполняют с использованием архитектуры U-net, а параметры нейронной сети выбирают таким образом, чтобы ее выдаваемый результат содержал информацию с предположением для каждого пикселя изображения о том, находится ли в нем цветовая мишень.
10. Способ по п. 9, в котором после выделения маски цветовой мишени определяют контур маски цветовой мишени и приводят его к четырехугольнику, а полученный четырехугольник маски цветовой мишени приводят к расположению, повторяющему стандартное расположение цветовой мишени на изображении.
11. Способ по п. 1, в котором при получении информации о цветах цветовой мишени берут медианное значение цвета из каждого цветового патча цветовой мишени, которая выделена маской.
CN 110267024 A, 20.09.2019 | |||
EP 3275175 A1, 31.01.2018 | |||
СПОСОБ И УСТРОЙСТВО ДЛЯ СОВМЕСТНОГО ВЫПОЛНЕНИЯ ДЕБАЙЕРИЗАЦИИ И УСТРАНЕНИЯ ШУМОВ ИЗОБРАЖЕНИЯ С ПОМОЩЬЮ НЕЙРОННОЙ СЕТИ | 2020 |
|
RU2764395C1 |
Авторы
Даты
2025-03-25—Публикация
2023-09-15—Подача