Способ обработки rccb-изображения
Изобретение относится к обработке изображений, в частности изображений, полученных с помощью массива цветных фильтров RCCB. Технический результат заключается в снижении вычислительной нагрузки на оборудование обработки изображения и времени выполнения обработки. Способ обработки изображений для обработки RCCB-изображения, получаемого посредством блока захвата изображения, содержащего матрицу фотодатчиков с мозаикой фильтров RCCB, содержит этапы, на которых интерполируют RCCB-изображение для получения данных плотного С-канала из разреженного С-канала и на основании данных RCCB-изображения и плотного С-канала осуществляют хроматическую фильтрацию для получения RGB-изображения посредством получения плотных R-канала и B-канала, а также фильтрации R-канала и B-канала с помощью эталонного изображения. 3 н. и 9 з.п. ф-лы, 9 ил.
Область техники
Настоящее изобретение относится к обработке изображений, в частности, изображений, полученных с помощью массива цветных фильтров RCCB (Red-Clear-Clear-Blue).
Уровень техники
В настоящее время в устройствах захвата изображения (фото- и видеокамерах, сканерах и т.д.) для захвата и формирования цветного изображения используют матрицы фотоприемников (фотодатчиков), накрытые массивом (мозаикой) цветных фильтров (color filter array (CFA) или color filter mosaic (CFM)), пропускающих свет определенной длины волны. Цветные фильтры необходимы, потому что типичные фотодатчики примерно одинаково чувствительны ко всем цветам видимого спектра и, следовательно, не могут разделять информацию о цвете. Одним из самых широко распространенных цветных фильтров является фильтр Байера (массив фильтров RGGB (Red-Green-Green-Blue)), содержащий 25% красных элементов, 25% синих элементов и 50% зеленых элементов, расположенных в определенном порядке. Вследствие использования фильтров каждый фотоприемник воспринимает лишь 1/3 цветовой информации участка изображения, а 2/3 отсекается фильтром. Для получения остальных цветовых компонентов используются значения из соседних фотоприемников. Для получения цветного изображения в одном из стандартных цветовых пространств необходима интерпретация этих данных при помощи процесса под названием дебайеризация (демозаика). При этом происходит разделение пикселей, регистрирующих красный, зеленый и синий цвета, а затем информация преобразуется в цветное изображение.
Однако, в условиях недостаточной освещенности применение фильтра Байера может быть недостаточно эффективным, вследствие отсечения каждым цветным фильтром значительной части (2/3) спектра сигнала, что приводит к падению энергии сигнала, поступающей в фотоприемник. В результате восстанавливаемое цветное изображение обладает низким качеством и повышенной шумностью.
Для устранения упомянутых недостатков в условиях недостаточной освещенности может быть использован фильтр RCCB. Фильтр RCCB схож с фильтром Байера, однако, вместо зеленых цветных фильтров, используемых в фильтре Байера, в фильтре RCCB используются прозрачные элементы, которые пропускают практически полный спектр сигнала, т.е. никакие цветовые компоненты излучения не отсекаются. Таким образом, посредством фильтра RCCB можно повысить количество энергии, попадающей в фотоприемник в условиях недостаточной освещенности. Однако, вследствие потери информации G-канала (канал Green) для восстановления цветного изображения требуется дополнительная обработка информации, полученной матрицей фотоприемников. Кроме того, так как матрица с фильтром RCCB вследствие наличия C-канала (канала Clear) воспринимает значительно большее количество энергии излучения по сравнению с матрицей с фильтром Байера, то в условиях достаточного/избыточного освещения в С-канале может произойти засвет (насыщение).
Таким образом, матрица с фильтром RCCB демонстрирует более высокое отношение сигнал/шум в условиях низкой освещенности по сравнению с традиционной матрицей с фильтром RGGB, и может найти преимущественное применение в таких областях как управление автономными транспортными средствами, видеонаблюдение, робототехника, человеко-машинные интерфейсы и т.д. При этом RCCB-изображение может обрабатываться с помощью известных технологий демозаики, но требует дополнительной обработки для соответствующего восстановления цветов сцены. При этом существующие технологии демозаики представляют собой компромиссные решения исходя из вычислительной производительности оборудования и качества восстановления изображения. Вследствие этого существующие алгоритмы демозаики не позволяют осуществлять обработку изображения в высоком качестве в реальном времени в маломощном оборудовании на основе S°C (System-on-Chip), таком как смартфоны, планшеты и т.д. Кроме того, существующие технологии демозаики зачастую не учитывают проблему насыщения (засвета) С-канала в условиях достаточной освещенности, а существующие методики компенсации насыщения не способны справиться с засветом больших зон изображения или насыщением двух цветовых каналов.
Соответствующее предшествующему уровню техники решение, описанное в документе US 2017/0278224 A1, раскрывает способ демозаики с использованием управляемого поперечного билатерального фильтра с определенным 4D эталоном изображения для подавления присущих алгоритму демозаики артефактов. Данный способ требует значительных вычислительных ресурсов и не предназначен для восстановления засвеченных областей.
Документ US 2017/0161872 A1 раскрывает основанный на интерполяции остаточных значений итеративный способ для демозаики G-канала и применения его в качестве эталонного изображения в последующей традиционной обработке. Однако, данный способ вследствие его итеративного характера обработки изображения имеет ограниченное применение в приложениях, требующих обработки в реальном времени. Кроме того, упомянутый способ также не предназначен для восстановления засвеченных областей.
Документ US 2018/0077397 A1 описывает способ восстановления засвеченного G-канала в качестве взвешенного усредненного значения R-канала (канала Red) и B-канала (канала Blue), умноженного на соответствующее отношение, выведенное из ближайшей действительной (незасвеченной) области изображения. Раскрытый способ является простым и быстрым, однако может применяться только для засвеченных областей небольшого размера, что ограничивает возможности его применения. При этом для корректного восстановления G-канала данный алгоритм требует действительных значений R-канала и B-канала.
Документ US 9,665,948 B2 раскрывает способ компенсации засвета, в котором оценивают цветовые каналы поврежденной (засвеченной) области в соответствии с изменением яркости по сравнению с этапом традиционной обработки изображения. Данный алгоритм не использует корреляцию цветовых каналов и не предназначен для восстановления больших засвеченных областей.
Кроме того, из документа «Minimized-Laplacian Residual Interpolation for Color Image Demosaicking» Daisuke Kiku и др. в Proceedings of SPIE, Digital Photography, San Francisco, CA, USA, 2014, International Society for Optics and Photonics, pp. 90230L-90230L известен способ демозаики цветного изображения с помощью интерполяции посредством минимизации лапласианы остаточных значений (MLRI). MLRI в данном способе используется вместо интерполяции цветовой разности. Однако, данный способ не раскрывает устранение засвета и вследствие невысокой скорости обработки имеет ограниченное применение в приложениях, требующих обработки в реальном времени.
Существующие решения обладают рядом недостатков, в том числе:
- неспособность одновременно обеспечить производительность в реальном времени (высокую скорость обработки) и высокое качество изображения;
- цветовые и структурные артефакты вокруг краевых и плотных текстур;
- цветовые артефакты около засвеченных областей;
- хроматические шумы.
Таким образом, в настоящее время существует потребность в создании простого способа обработки захваченного изображения в реальном времени, не требовательного к вычислительным ресурсам и обеспечивающего высокое качество восстановленного цветного изображения в различных условиях освещенности.
Сущность изобретения
Настоящее изобретение направлено на решение по меньшей мере некоторых из приведенных выше проблем.
Согласно настоящему изобретению предложен алгоритм восстановления полноцветного RGB изображения по исходному изображению, сформированному с помощью RCCB фильтра.
Согласно первому аспекту изобретения предложен способ обработки изображений для обработки RCCB-изображения, получаемого посредством блока захвата изображения, содержащего матрицу фотодатчиков с мозаикой фильтров RCCB, причем упомянутый способ содержит этапы, на которых:
а) интерполируют RCCB-изображение для получения данных плотного С-канала из разреженного С-канала посредством выполнения этапов, на которых:
- осуществляют интерполяцию значения сигнала в С-канале в горизонтальном направлении и в вертикальном направлении;
- используют полученные интерполированные значения сигнала в С-канале в качестве эталона при фильтрации по эталону для получения предварительного и оценочного изображений;
- осуществляют интерполяцию остаточных значений сигнала С-канала, полученных посредством вычитания вычисленного предварительного изображения из исходного RCCB-изображения;
- на основании полученных ранее данных осуществляют оценку цветовой разности между С-каналом и каналами R, B в горизонтальном и вертикальном направлениях;
- осуществляют (оценка цветовой разности на основе градиента без порогового значения) для получения полной цветовой разности;
- получают плотный С-канал посредством сложения RCCB-изображения с полной цветовой разностью;
б) на основании данных RCCB-изображения и плотного С-канала осуществляют хроматическую фильтрацию для получения RGB-изображения посредством получения плотных R-канала и B-канала, а также фильтрации R-канала и B-канала с помощью эталонного изображения.
Согласно одному варианту осуществления способа перед упомянутым этапом интерполяции RCCB-изображения осуществляют этап, на котором обнаруживают и компенсируют засвет в данных захватываемого RCCB-изображения следующим образом:
- преобразуют захватываемое RCCB-изображение в RCB-изображение с пониженным разрешением, причем значения пикселей для каналов R и B RCB-изображения задаются во взаимно однозначном соответствии с соответствующими пикселями каналов R и B исходного RCCB-изображения, а значение пикселя для канала C RCB-изображения с пониженным разрешением задается как среднее значение по двум соседним пикселям C-канала исходного RCCB-изображения, накрытым одним RCCB-фильтром;
- осуществляют поиск засвеченных областей на RCB-изображении, причем вывод о наличии засвета в пикселе делается, если значение интенсивности в упомянутом пикселе превышает 92% от максимально возможного значения квантования матрицы устройства захвата изображения;
- в незасвеченных пикселях на границе засвеченной области вычисляют значения отношений интенсивности сигнала засвеченного канала (С-канала) к интенсивности сигнала эталонного (незасвеченного) канала (канала R или B);
- вычисленные значения отношений каналов в незасвеченных пикселях распространяют на засвеченную область для получения в засвеченных пикселях отношений каналов со скомпенсированным засветом;
- получают значение сигнала в засвеченном пикселе со скомпенсированным засветом на основании интенсивности сигнала эталонного канала в упомянутом пикселе и отношения каналов со скомпенсированным засветом;
- преобразуют полученное RCB-изображение в RCCB-изображение со скомпенсированным засветом.
Согласно другому варианту осуществления способ дополнительно содержит этап финальной обработки изображения, выполняемый после этапа хроматической фильтрации, на котором:
- восстанавливают баланс белого, нарушаемый при обработке изображения; и/или
- осуществляют преобразование тона, т.е. отображение широкого динамического диапазона значений интенсивности к стандартному.
Согласно другому варианту осуществления способа этап хроматической фильтрации содержит этапы, на которых:
- на основании данных плотного С-канала и RCCB-изображения осуществляют преобразование данных R-канала и B-канала из цветовой модели RCB в цветовую модель YUV;
- формируют эталонное изображение на основании данных плотного С-канала;
- осуществляют билинейную интерполяцию значений полученных каналов U и V для получения плотных каналов U и V;
- осуществляют фильтрацию по эталону полученных плотных каналов U и V на основании эталонного изображения;
- осуществляют обратное преобразование изображения из цветовой модели YUV в цветовую модель RCB;
- осуществляют преобразование в цветовую модель RGB для получения RGB-изображения.
Согласно второму аспекту настоящего изобретения предложено устройство формирования изображения для обработки RCCB-изображения в соответствии с упомянутым выше способом, содержащее блок интерполяции, выполненный с возможностью получения данных плотного С-канала из разреженного С-канала RCCB-изображения, и блок хроматической фильтрации, выполненный с возможностью получения и фильтрации плотных R-канала и B-канала и получения RGB-изображения.
Согласно одному варианту осуществления устройство дополнительно содержит блок компенсации засвета, выполненный с возможностью обнаружения и компенсации засвета в данных захватываемого изображения.
Согласно другому варианту осуществления устройство дополнительно содержит блок захвата изображения, содержащий матрицу фотодатчиков с мозаикой фильтров RCCB.
Согласно другому варианту осуществления устройство дополнительно содержит блок финальной обработки изображения, выполненный с возможностью восстановления баланса белого и/или преобразования тона.
Согласно третьему аспекту настоящего изобретения предложен компьютерно-читаемый носитель, хранящий компьютерную программу, которая при ее исполнении посредством процессора предписывает упомянутому процессору выполнять упомянутый выше способ обработки изображения.
Настоящее изобретение позволяет обеспечить обработку захватываемого RCCB-изображения в реальном времени на маломощном оборудовании, таком как оборудование на SoC-платформе, получить полноцветное изображение в высоком качестве и компенсировать насыщение цветового канала.
Краткое описание чертежей
В дальнейшем изобретение поясняется описанием предпочтительных вариантов воплощения изобретения со ссылками на сопроводительные чертежи, на которых:
На фиг. 1 изображен первый вариант осуществления способа обработки изображения согласно настоящему изобретению.
На фиг.2 изображен процесс компенсации засвета в захваченном изображении.
На фиг. 3 изображен процесс формирования RCB-изображения с пониженным разрешением.
На фиг. 4 изображен этап примерного процесса последовательного восстановления значения пикселей в засвеченной области.
На фиг. 5 схематично изображен процесс быстрой интерполяции, выполняемый на этапе S300.
На фиг. 6 изображено математическое представление обработки, выполняемой на этапе S300.
На фиг. 7 изображен процесс фильтрации по эталону, выполняемый на этапе S304.
На фиг. 8 схематично изображен процесс хроматической фильтрации, выполняемый на этапе S400.
На фиг. 9 изображено математическое представление обработки, выполняемой на этапе S400.
Подробное описание
Варианты осуществления не ограничиваются описанными здесь вариантами осуществления, специалисту в области техники на основе информации изложенной в описании и знаний уровня техники станут очевидны и другие варианты осуществления изобретения, не выходящие за пределы сущности и объема данного изобретения.
Элементы, упомянутые в единственном числе, не исключают множественности элементов, если отдельно не указано иное.
Под функциональной связью элементов следует понимать связь, обеспечивающую корректное взаимодействие этих элементов друг с другом и реализацию той или иной функциональности элементов. Частными примерами функциональной связи может быть связь с возможностью обмена информацией, связь с возможностью передачи электрического тока, связь с возможностью передачи механического движения, связь с возможностью передачи света, звука, электро-магнитных или механических колебаний и т.д. Конкретный вид функциональной связи определяется характером взаимодействия упомянутых элементов, и, если не указано иное, обеспечивается широко известными средствами, используя широко известные в технике принципы.
Согласно способу обработки изображения, проиллюстрированному на фиг. 1, на этапе S100 осуществляют захват изображения посредством блока захвата изображения, содержащего матрицу фотодатчиков с мозаикой цветных фильтров. В данном варианте осуществления используется фильтр RCCB. Захваченное RAW-изображение (необработанное изображение) RCCB поступает в блок компенсации засвета.
На этапе S200 блок компенсации засвета осуществляет компенсацию засвета для засвеченных областей. Этап S200 более подробно будет описан ниже.
Полученное RCCB-изображение со скомпенсированным засветом поступает в блок быстрой интерполяции, где на этапе S300 осуществляется восстановление плотного С-канала из разреженного С-канала. Разреженный канал - это представление данных цветового канала изображения, в котором интенсивности всех пикселей матрицы с RCCB-фильтром за исключением пикселей, соответствующих данному каналу, равны нулю. Плотный канал - это представление данных цветового канала изображения, в котором восстановлены/вычислены неизвестные в RCCB-изображении значения интенсивностей цветового канала в пикселях матрицы. Этап S300 более подробно будет описан ниже.
На этапе S400 на основании полученных данных плотного С-канала и RCCB-изображения со скомпенсированным засветом осуществляют хроматическую фильтрацию для получения RGB-изображения. Этап S400 более подробно будет описан ниже.
На этапе S500 выполняется финальная обработка полученного RGB-изображения.
Стоит отметить, что обработка изображения на этапах S200-S500 может осуществляться как в блоке обработки изображения, интегрированном с блоком захвата изображения в одном устройстве, так и в блоке обработки изображения, удаленном от блока захвата изображения и реализованном, например, в удаленном компьютере, сервере или облачном сервисе.
Процесс компенсации засвета в захваченном изображении, осуществляемый на этапе S200 согласно фиг. 1, более подробно проиллюстрирован на фиг. 2.
RAW-изображение, захваченное на этапе S100, поступает в блок компенсации засвета. На этапе S202 блок компенсации засвета обнаруживает засвеченную область в захваченном изображении и генерирует маску засвеченной области. Для этого из захваченного RCCB-изображения формируется RCB-изображение с пониженным разрешением. Принцип формирования RCB-изображения с пониженным разрешением проиллюстрирован на фиг. 3 для примерного случая матрицы 6×6 пикселей, состоящей из 3 столбцов и 3 строк групп 2×2 пикселя, каждая из которых включает в себя RCCB-пиксели. Из упомянутой матрицы 6×6 генерируются три изображения 3×3 пикселя для каждого из каналов R, C, B, в которых значения пикселей берутся из соответствующей группы (окрестности 2×2) исходного изображения. Аналогичным образом, из входного RCCB-изображения с разрешением, например, 1024×1024 генерируются три изображения 512×512 пикселя для каждого из каналов R, C, B.
При формировании RCB-изображения с пониженным разрешением значения пикселей для каналов R и B задаются во взаимно однозначном соответствии с соответствующими пикселями каналов R и B исходного RCCB-изображения. А значение пикселя для канала C RCB-изображения с пониженным разрешением задается как среднее значение по двум соседним пикселям C-канала исходного RCCB-изображения, накрытым одним RCCB-фильтром:
,
где - значение первого пикселя С-канала в RCCB изображении,
- значение второго пикселя С-канала в RCCB изображении.
Для обнаружения засвеченной области на изображении применяется следующее условие:
, где
,
где - k-ая засвеченная область, М - количество засвеченных областей на изображении, k-ая область состоит из
пикселей,
- i-ый пиксель в k-ой области, при этом если значение интенсивности в пикселе
превышает 0,92 от максимально возможного значения квантования
матрицы устройства захвата изображения, то делается вывод о наличии засвета в пикселе. В данном примерном варианте осуществления максимально возможное значение квантования
матрицы устройства захвата изображения равно 4095, т.к. камерой формируется 12-разрядный сигнал (4095=212-1). В альтернативном варианте осуществления камера может формировать 8-битный сигнал, тогда
=255. При этом множитель 0,92 соответствует значению 92%, являющемуся общепринятым пороговым значением для идентификации засвеченных пикселей.
В случае, если засвеченные области на изображении не обнаружены, то способ переходит к выполнению этапа S300.
Стоит отметить, что в данном примерном варианте осуществления засвет наблюдается только в С-канале, т.к. C-канал воспринимает значительно большее количество энергии излучения по сравнению с R-каналом и B-каналом, как описывалось выше. Для компенсации засвета в засвеченной области необходимо восстановить значение сигнала в С-канале на основании данных R-канала (или B-канала), который в данном случае выступает в качестве эталонного канала. R-канал, как правило, содержит больше энергии, чем B-канал, поэтому в данном конкретном варианте осуществления для восстановления С-канала в качестве эталонного берется R-канал. Для определения возможности задания R-канала в качестве эталонного перед восстановлением С-канала проверяется засвеченность R-канала в соответствии с критерием, описанным выше. В случае, если R-канал засвечен, то проверяется B-канал на наличие засвета. Если засвет в B-канале отсутствует, то сначала восстанавливается R-канал по B-каналу. Стоит отметить, что B-канал оказывается засвеченным в очень редких случаях.
На этапе S204 блок компенсации засвета вычисляет значения отношений каналов в незасвеченных пикселях вокруг (на границе) засвеченной области в соответствии с формулой:
,
,
,
где ,
причем M - количество засвеченных областей, на границе k-ой засвеченной области расположены пикселей,
- интенсивность сигнала засвеченного канала (С-канала) j-го пикселя на границе k-ой области,
- интенсивность сигнала незасвеченного (эталонного) канала j-го пикселя на границе k-ой области,
- соответствующее отношение,
- минимальное отношение каналов на границе k-ой области,
- максимальное отношение каналов на границе k-ой области.
Затем на этапе S206 вычисленные значения отношений каналов в незасвеченных пикселях распространяют на засвеченную область, как описано ниже.
означает i-й засвеченный пиксель в k-ой засвеченной области,
- n-й соседний с
пиксель (где n≤4) со значением отношения каналов
, причем
может представлять собой пиксель незасвеченной области, т.е. j-ый пиксель на границе засвеченной области, имеющий отношение
, как раскрыто выше, либо пиксель, восстановленный на предыдущем этапе. Тогда отношение каналов в пикселе
восстанавливается в соответствии с выражением:
,
где
,
,
,
,
причем и
представляют минимальное и максимальное значения отношения каналов на границе k-ой засвеченной области, а
- интенсивность эталонного канала i-го пикселя в k-ой области, s - количество рассматриваемых соседних пикселей (в данном случае
, т.е. рассматриваются максимум 4 пикселя - сверху, снизу, слева и справа от i-го пикселя),
и
- отношение каналов и значение интенсивности эталонного канала n-ого соседнего пикселя,
- вес, с которым отношение каналов n-ого соседнего пикселя входит в сумму,
- минимальный вес в соседних пикселях,
- разность интенсивностей в i-ом и n-ом пикселях.
Восстановленное отношение каналов затем применяется для оценки отношения в соседних с
засвеченных пикселях.
Вычисленное отношение каналов в пикселе
затем используется для получения скомпенсированного значения сигнала засвеченного канала в засвеченном пикселе в соответствии с выражением:
,
где - скомпенсированное значение сигнала засвеченного канала i-го пикселя в k-ой области,
- значение сигнала эталонного канала i-го пикселя в k-ой области.
Таким образом осуществляется обработка всей засвеченной области для компенсации засвета. Один из этапов примерного процесса последовательного восстановления значения пикселей в засвеченной области с использованием вычисленных отношений каналов изображен на фиг. 4.
Описанный выше этап компенсации засвета позволяет восстанавливать значения интенсивности засвеченного канала в засвеченной области при наличии даже одного незасвеченного канала в упомянутой области. Это, в частности, позволяет повысить устойчивость к некорректно выбранным настройкам экспозиции камеры, результатом которых является появление засвета. Стоит отметить, что упомянутый этап осуществляется за один проход, является быстрым и простым, т.е. не требует значительных вычислительных ресурсов. Следовательно, он может выполняться в реальном времени в оборудовании на SoC-платформе.
На фиг. 4 изображен этап примерного процесса последовательного восстановления значения пикселей в засвеченной области с использованием вычисленных отношений каналов на границе засвеченной области. Направление обработки в настоящем изобретении определяется расположением засвеченных и корректных пикселей: обработка начинается от границы засвеченной области, найденной ранее. Рассматривается окрестность каждого корректного пикселя (4 соседних пикселя) и засвеченные пиксели добавляются в очередь - структуру данных с сортировочным ключом. Очередь инициализируется границей области засвета.
Для управления порядком вычисления отношений каналов для пикселя структура массива данных представлена очередью со следующим сортировочным ключом:
,
где представляет собой количество соседних пикселей, участвующих в оценке i-го пикселя.
Ключ сортировки определяет порядок, в котором элементы обрабатываются: при извлечении очередного элемента из очереди автоматически выбирается элемент с наименьшим значением ключа. Обработка продолжается, пока очередь не окажется пустой.
В данном варианте осуществления для оценки i-го пикселя рассматриваются не более четырех соседних пикселей: верхний, нижний, левый, правый. Какие конкретно пиксели участвуют в оценке текущего пикселя определяется порядком обхода засвеченной области. В альтернативном варианте осуществления могут использоваться до восьми соседних пикселей, что позволяет дополнительно повысить качество получаемого изображения, но увеличивает время выполнения процесса.
Далее из данных RCB-изображения со скомпенсированным засветом формируется RCCB-изображение со скомпенсированным засветом. R и B каналы RCCB-изображения формируются из R и B каналов уменьшенного RCB-изображения однозначно (т.е. таким же образом, как формировались R и B каналы RCB-изображения из RCCB-изображения). Значения пикселей С-канала RCCB-изображения задаются следующим образом:
где
где
,
где maximum(…)-максимальное значение по всем пикселям, - восстановленное значение пикселя С-канала на изображении с пониженным разрешением.
Полученные данные RCCB-изображения со скомпенсированным засветом передаются далее в блок быстрой интерполяции.
Стоит отметить, что в одном из вариантов осуществления настоящего изобретения этап S200 компенсации засвета является опциональным и может быть пропущен. В частности, но не исключительно, этап S200 может быть пропущен в соответствии с управляющим вводом пользователя, предварительно заданными настройками и/или в условиях, обеспечивающих отсутствие засвета в захватываемом изображении.
Далее со ссылками на фиг. 5-7 описывается этап S300, осуществляемый в блоке быстрой интерполяции (блоке интерполяции) для восстановления плотного С-канала из разреженного С-канала. В данном случае название «блок быстрой интерполяции» демонстрирует, что способ интерполяции, осуществляемый в соответствии с настоящим изобретением, быстрее, чем в известном алгоритме MLRI.
Разреженный канал - это представление данных цветового канала изображения, в котором интенсивности всех пикселей матрицы с RCCB-фильтром за исключением пикселей, соответствующих данному каналу, равны нулю. Плотный канал - это представление данных цветового канала изображения, в котором восстановлены/вычислены неизвестные в RCCB-изображении значения интенсивностей цветового канала в пикселях матрицы.
На фиг. 5 схематично изображен процесс быстрой интерполяции, выполняемый на этапе S300. Описываемый процесс быстрой интерполяции схож с алгоритмом MLRI, однако этап фильтрации по эталону в настоящем изобретении существенно изменен, что позволяет значительно снизить вычислительную нагрузку и повысить быстродействие при реализации настоящего изобретения.
На фиг. 6 изображено математическое представление обработки, выполняемой на этапе S300.
Сначала на этапе S302 осуществляют интерполяцию значения сигнала в С-канале в горизонтальном направлении и в вертикальном направлении в соответствии с выражениями:
,
,
где ,
- исходная мозаика (изображение) RCCB,
- мозаика, интерполированная по горизонтали,
- мозаика, интерполированная по вертикали.
Далее на этапе S304 полученные интерполированные значения сигнала в С-канале используются в качестве эталона при фильтрации по эталону. Подробнее процесс фильтрации по эталону будет раскрыт ниже. В результате выполнения этапа S304 получают предварительное изображение и оценочное изображение, содержащие сглаженные каналы в соответствии с выражениями:
,
,
где - предварительное (tentative) изображение, рассчитанное в горизонтальном направлении,
- предварительное (tentative) изображение рассчитанное в вертикальном направлении,
- оценочное (estimate) изображение рассчитанное в горизонтальном направлении,
- оценочное (estimate) изображение рассчитанное в вертикальном направлении,
- функция фильтрации по эталону.
Предварительное и оценочное изображение - это промежуточные данные, содержащие значения из каналов R, B, C, к которым применен фильтр сглаживания.
На этапе S306 осуществляют интерполяцию остаточных значений сигнала С-канала, полученных посредством вычитания вычисленного предварительного изображения из исходного RCCB-изображения в соответствии с выражениями:
,
,
,
,
где - остаточное (residual) изображение, рассчитанное в горизонтальном направлении,
- остаточное (residual) изображение, рассчитанное в вертикальном направлении,
- остаточное изображение, рассчитанное в горизонтальном направлении и интерполированное в горизонтальном направлении,
- остаточное изображение, рассчитанное в вертикальном направлении и интерполированное в вертикальном направлении.
Далее на этапе S308 на основании полученных ранее данных осуществляют оценку цветовой разности между С-каналом и каналами R, B в горизонтальном и вертикальном направлениях в соответствии с выражениями:
,
,
,
,
где - маска CFA С-пикселей,
- маска CFA красных и синих пикселей,
- цветовая разность, рассчитанная в горизонтальном направлении,
- цветовая разность, рассчитанная в вертикальном направлении,
- взятие бинарной маски от некоторого изображения Х, маска соответствует пикселям С канала в мозаике, т.е. в позициях С пикселей значение равно 1, в остальных - 0,
- взятие бинарной маски, соответствующей пикселям канала R и B в мозаике RCCB. A[mask]=B[mask]+C[mask] означает что в A=B+C только для пикселей бинарной маски (там где 1).
,
,
где +
есть матрица единиц, имеющая размерность равную размерности изображения.
содержит разницу между С-каналом и интерполированным по горизонтали R-каналом в C1-пикселе, разницу между С-каналом и интерполированным по горизонтали B каналом в C2-пикселе, разницу между интерполированным по горизонтали С-каналом и R-каналом в R-пикселе, разницу между интерполированным по горизонтали C-каналом и B-каналом в B-пикселе (R, C1, C2, B - пиксели в соответствии с RCCB-фильтром).
- аналогично
, но интерполированное по вертикали.
Полученное значение цветовой разности используется на этапе S310 для оценки цветовой разности на основе градиента без порогового значения в соответствии с выражением:
,
где - полная цветовая разность, а
(Gradient Based Threshold Free) -функция оценки на основе градиента без порогового значения.
Расcчитанные ранее можно напрямую использовать для восстановления значений сигнала в пикселях, но качество изображения будет недостаточно высоким. Операция GBTF рассчитывает веса, с которым будут аккумулированы цветовые разности в C1 и C2 пикселях и позволяет более точно восстанавливать значения C1, C2 с учетом локальных градиентов.
На этапе S312 осуществляют восстановление плотного С-канала на основании полученных ранее данных следующим образом:
,
где C - восстановленный плотный С-канал.
На фиг. 7 изображен процесс фильтрации по эталону, выполняемый на этапе S304.
В первую очередь на этапе S304 определяют лапласиан для исходной мозаики (изображения) RCCB () и интерполированной мозаики (
) в соответствии с выражениями:
,
),
где - лапласиан исходной мозаики, а
- лапласиан интерполированной мозаики.
Далее вычисляют компонент усиления в соответствии с выражениями:
,
,
где - операция взятия среднего значения по окрестности 5×5 вокруг пикселя с координатами (i, j),
- матрица 5×5,
- коэффициент матрицы, A - матрица коэффициентов
, причем размерность матрицы равна размерности изображения.
Затем вычисляют компонент DC (компонент сдвига) в соответствии с выражениями:
,
,
где - коэффициент матрицы,
- матрица коэффициентов
, причем размерность матрицы равна размерности изображения.
Коэффициенты и
являются параметрами линейной модели фильтрации по эталону.
Далее вычисляют предварительное и оценочное изображения в соответствии с выражениями:
,
,
где - предварительное изображение,
- оценочное изображение,
- матрица 7×5, причем матрицы
и
имеют вид:
и
Маски и
составлены в соответствии с фильтром RCCB таким образом, чтобы можно было обрабатывать RCCB-изображение напрямую, не обрабатывая отдельно каналы R, C1, C2, B, как это осуществляется в алгоритме MLRI.
При выполнении обработки изображения в соответствии с настоящим изобретением алгоритм фильтрации по эталону, раскрытый на фиг.7, выполняется дважды: один раз - для горизонтального направления, один раз - для вертикального направления. Это достигается посредством использования описанных выше масок 5×5 и 7×5. В то же время при выполнении известной из уровня техники MLRI алгоритм фильтрации по эталону выполняется 8 раз: по четыре раза для каждого направления. Таким образом, настоящее изобретение позволяет значительно снизить время выполнения обработки и количество вычислительных операций, обеспечивая при этом высокое качество получаемого изображения.
Далее на этапе S400 на основании полученных данных плотного С-канала и RCCB-изображения со скомпенсированным засветом осуществляют хроматическую фильтрацию для получения RGB-изображения. Ниже со ссылкой на фиг. 8-9 будет описано выполнение этапа S400.
На фиг. 8 схематично изображен процесс хроматической фильтрации, выполняемый на этапе S400.
На фиг. 9 изображено математическое представление обработки, выполняемой на этапе S400.
Хроматический фильтр выполняет две задачи: восстановление плотных R-канала и B-канала, а также фильтрация R-канала и B-канала с помощью эталонного изображения, которым в данном случае является плотный С-канал.
Для этого на этапе S402 на основании данных плотного С-канала и RCCB-изображения со скомпенсированным засветом осуществляют преобразование данных R-канала и B-канала из цветовой модели RCB в цветовую модель YUV в соответствии с выражениями:
,
,
,
где Y - яркостная составляющая, U, V - хроматические компоненты, а R, B и С - значения сигналов каналов R, B и С в соответствующем пикселе.
Применение цветовой модели YUV позволяет выделить яркостную и хроматические компоненты из изображения и осуществлять более точную фильтрацию хроматических компонент.
На этапе S404 формируют эталонное изображение на основании данных плотного С-канала в соответствии с выражениями:
,
,
,
,
,
где - границы изображения,
- фильтр Собеля,
- операция взятия модуля,
- операция взятия максимума,
- пороговое значение,
- медианный фильтр,
- маска однородных областей,
- эталонное изображение.
Сначала в С-канале детектируются границы с помощью фильтра Собеля и вычисляется пороговое значение thre. Затем к областям С-канала, в которых значение границы меньше thre, применяется медианная фильтрация (там где значение больше thre, соответственно сохраняются исходные значения С-канала).
Далее на этапе S406 осуществляют билинейную интерполяцию значений полученных каналов U и V (хроматических компонент) для получения плотных пикселей каналов U и V в соответствии с выражениями:
,
,
где - интерполированный V канал,
- интерполированный U канал,
- билинейная интерполяция.
На этапе S408 осуществляют фильтрацию по эталону полученных плотных каналов U и V на основании эталонного изображения, сформированного на этапе S404, в соответствии с выражениями:
,
,
где - операция фильтрации по эталону,
,
- плотные хроматические компоненты.
В результате осуществления фильтрации по эталону происходит снижение шумов в хроматических компонентах, при этом осуществляется согласование каналов U и V с С-каналом.
На этапе S410 осуществляют обратное преобразование из цветовой модели YUV в цветовую модель RCB в соответствии с выражениями:
,
,
.
А затем на этапе S412 осуществляют преобразование в цветовую модель RGB для получения RGB-изображения в соответствии с выражением:
.
Таким образом алгоритм хроматической фильтрации в соответствии с настоящим изобретением позволяет получить интерполированные (плотные) цветовые каналы R и B и снизить хроматические шумы.
Стоит отметить, что в альтернативном варианте осуществления настоящего изобретения описанная выше обработка изображения может аналогичным образом выполняться для RGGB-изображения, захватываемого матрицей блока захвата изображения с традиционным фильтром Байера.
На этапе S500 выполняется опциональная финальная обработка полученного RGB-изображения. На данном этапе осуществляют восстановление баланса белого (White balance), который нарушается при обработке RAW изображения, и/или отображение широкого динамического диапазона значений интенсивности к стандартному (Tone mapping, преобразование тона).
Согласно второму аспекту изобретения предложено устройство формирования изображения для обработки RCCB-изображения в соответствии с описанным выше способом обработки изображения, содержащее: блок быстрой интерполяции, выполненный с возможностью получения данных плотного С-канала из разреженного С-канала RCCB-изображения, а также блок хроматической фильтрации, выполненный с возможностью восстановления и фильтрации плотных R-канала и B-канала и получения RGB-изображения.
Опционально, устройство формирования изображения может дополнительно содержать блок компенсации засвета, выполненный с возможностью обнаружения и компенсации засвета в данных захватываемого RCCB-изображения.
Опционально, устройство формирования изображения может дополнительно содержать блок захвата изображения, содержащий матрицу фотодатчиков с мозаикой фильтров RCCB.
Опционально, устройство формирования изображения может содержать блок финальной обработки изображения, выполненный с возможностью восстановления баланса белого и/или преобразования тона.
Согласно третьему аспекту настоящего изобретения предложен компьютерно-читаемый носитель, хранящий компьютерную программу, которая при ее исполнении посредством процессора предписывает упомянутому процессору выполнять описанный выше способ обработки изображения.
Очевидно, что, когда речь идет о хранении данных, программ и т.п., подразумевается наличие компьютерно-читаемого носителя данных, примеры компьютерно-читаемых носителей данных включают в себя постоянное запоминающее устройство, оперативное запоминающее устройство, регистр, кэш-память, полупроводниковые запоминающие устройства, магнитные носители, такие как внутренние жесткие диски и съемные диски, магнитооптические носители и оптические носители, такие как диски CD-ROM и цифровые универсальные диски (DVD), а также любые другие известные в уровне техники носители данных.
Настоящее изобретение может найти применение в устройствах захвата и обработки изображения, таких как фото- и видеокамеры, в том числе встроенные в оборудование на основе SоC (смартфоны, планшеты, видеорегистраторы и т.д.). Возможность получения изображения хорошего качества как в условиях недостаточной освещенности, так и в условиях избыточной освещенности, обеспечивает преимущества при использовании настоящего изобретения в системах видеонаблюдения, устройствах захвата изображения в автономных транспортных средствах, устройствах дополненной реальности и т.д. При этом настоящее изобретение обеспечивает возможность обработки захватываемого изображения в реальном времени даже на маломощном оборудовании с ограниченной вычислительной мощностью.
Способы, раскрытые здесь, содержат один или несколько этапов или действий для достижения описанного способа. Этапы и/или действия способа могут заменять друг друга, не выходя за пределы объема формулы изобретения. Другими словами, если не определен конкретный порядок этапов или действий, порядок и/или использование конкретных этапов и/или действий может изменяться, не выходя за пределы объема формулы изобретения.
В заявке не указано конкретное программное и аппаратное обеспечение для реализации блоков на чертежах, но специалисту в области техники должно быть понятно, что сущность изобретения не ограничена конкретной программной или аппаратной реализацией, и поэтому для осуществления изобретения могут быть использованы любые программные и аппаратные средства известные в уровне техники. Так аппаратные средства могут быть реализованы в одной или нескольких специализированных интегральных схемах, цифровых сигнальных процессорах, устройствах цифровой обработки сигналов, программируемых логических устройствах, программируемых пользователем вентильных матрицах, процессорах, контроллерах, микроконтроллерах, микропроцессорах, электронных устройствах, других электронных модулях, выполненных с возможностью осуществлять описанные в данном документе функции, компьютере либо комбинации вышеозначенного.
Несмотря на то, что примерные варианты осуществления были подробно описаны и показаны на сопроводительных чертежах, следует понимать, что такие варианты осуществления являются лишь иллюстративными и не предназначены ограничивать более широкое изобретение, и что данное изобретение не должно ограничиваться конкретными показанными и описанными компоновками и конструкциями, поскольку различные другие модификации могут быть очевидны специалистам в соответствующей области.
Признаки, упомянутые в различных зависимых пунктах формулы, а также реализации, раскрытые в различных частях описания, могут быть скомбинированы с достижением полезных эффектов, даже если возможность такого комбинирования не раскрыта явно.
1. Способ обработки изображений для обработки RCCB-изображения, получаемого посредством блока захвата изображения, содержащего матрицу фотодатчиков с мозаикой фильтров RCCB, причем упомянутый способ содержит этапы, на которых:
а) интерполируют RCCB-изображение для получения данных плотного С-канала из разреженного С-канала посредством выполнения этапов, на которых:
- осуществляют интерполяцию значения сигнала в С-канале в горизонтальном направлении и в вертикальном направлении;
- используют полученные интерполированные значения сигнала в С-канале в качестве эталона при фильтрации по эталону для получения предварительного и оценочного изображений;
- осуществляют интерполяцию остаточных значений сигнала С-канала, полученных посредством вычитания вычисленного предварительного изображения из исходного RCCB-изображения;
- на основании полученных ранее данных осуществляют оценку цветовой разности между С-каналом и каналами R, B в горизонтальном и вертикальном направлениях;
- осуществляют (оценка цветовой разности на основе градиента без порогового значения) для получения полной цветовой разности;
- получают плотный С-канал посредством сложения RCCB-изображения с полной цветовой разностью;
б) на основании данных RCCB-изображения и плотного С-канала осуществляют хроматическую фильтрацию для получения RGB-изображения посредством получения плотных R-канала и B-канала, а также фильтрации R-канала и B-канала с помощью эталонного изображения,
причем получение предварительного и оценочного изображений выполняют следующим образом:
- определяют лапласиан для исходного изображения RCCB () и интерполированного изображения (
) в соответствии с выражениями:
,
),
где - лапласиан исходного изображения, а
- лапласиан интерполированного изображения;
- вычисляют компонент усиления в соответствии с выражениями:
,
,
где - операция взятия среднего значения по окрестности 5×5 вокруг пикселя с координатами (i, j),
- матрица 5×5,
- коэффициент матрицы, A - матрица коэффициентов
, причем размерность матрицы равна размерности изображения;
- вычисляют компонент DC (компонент сдвига) в соответствии с выражениями:
,
,
где - коэффициент матрицы,
- матрица коэффициентов
, причем размерность матрицы равна размерности изображения, причем коэффициенты
и
являются параметрами линейной модели фильтрации по эталону; и
- вычисляют предварительное и оценочное изображения в соответствии с выражениями:
,
,
где - предварительное изображение,
- оценочное изображение,
- матрица 7×5,
причем матрицы и
имеют вид:
и
.
2. Способ по п.1, в котором перед упомянутым этапом интерполяции RCCB-изображения осуществляют этап, на котором обнаруживают и компенсируют засвет в данных захватываемого RCCB-изображения следующим образом:
- преобразуют захватываемое RCCB-изображение в RCB-изображение с пониженным разрешением, причем значения пикселей для каналов R и B RCB-изображения задаются во взаимно однозначном соответствии с соответствующими пикселями каналов R и B исходного RCCB-изображения, а значение пикселя для канала C RCB-изображения с пониженным разрешением задается как среднее значение по двум соседним пикселям C-канала исходного RCCB-изображения, накрытым одним RCCB-фильтром;
- осуществляют поиск засвеченных областей на RCB-изображении, причем вывод о наличии засвета в пикселе делается, если значение интенсивности в упомянутом пикселе превышает 92% от максимально возможного значения квантования матрицы устройства захвата изображения;
- в незасвеченных пикселях на границе засвеченной области вычисляют значения отношений интенсивности сигнала засвеченного канала (С-канала) к интенсивности сигнала эталонного (незасвеченного) канала (канала R или B);
- вычисленные значения отношений каналов в незасвеченных пикселях распространяют на засвеченную область для получения в засвеченных пикселях отношений каналов со скомпенсированным засветом;
- получают значение сигнала в засвеченном пикселе со скомпенсированным засветом на основании интенсивности сигнала эталонного канала в упомянутом пикселе и отношения каналов со скомпенсированным засветом;
- преобразуют полученное RCB-изображение в RCCB-изображение со скомпенсированным засветом.
3. Способ по п.2, в котором отношения интенсивности сигнала засвеченного канала к интенсивности сигнала эталонного канала в незасвеченных пикселях на границе засвеченной области вычисляют в соответствии с выражениями:
,
,
,
где ,
причем M - количество засвеченных областей, на границе k-й засвеченной области расположены пикселей,
- интенсивность сигнала засвеченного канала j-го пикселя на границе k-й области,
- интенсивность сигнала незасвеченного канала j-го пикселя на границе k-й области,
- соответствующее отношение,
- минимальное отношение каналов на границе k-й области,
- максимальное отношение каналов на границе k-й области.
4. Способ по п.3, в котором отношение каналов в засвеченном пикселе восстанавливается в соответствии с выражением:
,
где
,
,
,
,
причем и
представляют минимальное и максимальное значения отношения каналов на границе k-й засвеченной области, а
- интенсивность эталонного канала i-го пикселя в k-й области, s - количество рассматриваемых соседних пикселей,
и
- отношение каналов и значение интенсивности эталонного канала n-го соседнего пикселя,
- вес, с которым отношение каналов n-го соседнего пикселя входит в сумму,
- минимальный вес в соседних пикселях,
- разность интенсивностей в i-м и n-м пикселях.
5. Способ по п.4, в котором значение сигнала в засвеченном пикселе со скомпенсированным засветом вычисляют в соответствии с выражением:
,
где - скомпенсированное значение сигнала засвеченного канала i-го пикселя в k-й области,
- значение сигнала эталонного канала i-го пикселя в k-й области.
6. Способ по п.1, дополнительно содержащий этап финальной обработки изображения, выполняемый после этапа хроматической фильтрации, на котором:
- восстанавливают баланс белого, нарушаемый при обработке изображения; и/или
- осуществляют преобразование тона, т.е. отображение широкого динамического диапазона значений интенсивности к стандартному.
7. Способ по п.1, в котором этап хроматической фильтрации содержит этапы, на которых:
- на основании данных плотного С-канала и RCCB-изображения осуществляют преобразование данных R-канала и B-канала из цветовой модели RCB в цветовую модель YUV;
- формируют эталонное изображение на основании данных плотного С-канала;
- осуществляют билинейную интерполяцию значений полученных каналов U и V для получения плотных каналов U и V;
- осуществляют фильтрацию по эталону полученных плотных каналов U и V на основании эталонного изображения;
- осуществляют обратное преобразование изображения из цветовой модели YUV в цветовую модель RCB;
- осуществляют преобразование в цветовую модель RGB для получения RGB-изображения.
8. Устройство формирования изображения для обработки RCCB-изображения в соответствии со способом по любому из пп.1-7, содержащее:
- блок интерполяции, выполненный с возможностью получения данных плотного С-канала из разреженного С-канала RCCB-изображения, и
- блок хроматической фильтрации, выполненный с возможностью получения и фильтрации плотных R-канала и B-канала и получения RGB-изображения.
9. Устройство по п.8, дополнительно содержащее блок компенсации засвета, выполненный с возможностью обнаружения и компенсации засвета в данных захватываемого изображения.
10. Устройство по п.8, дополнительно содержащее блок захвата изображения, содержащий матрицу фотодатчиков с мозаикой фильтров RCCB.
11. Устройство по п.8, дополнительно содержащее блок финальной обработки изображения, выполненный с возможностью восстановления баланса белого и/или преобразования тона.
12. Компьютерно-читаемый носитель, хранящий компьютерную программу, которая при ее исполнении посредством процессора предписывает упомянутому процессору выполнять способ обработки изображения по любому из пп.1-7.