ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к способам обработки изображения, которая уменьшает шум при получении изображения и повреждение поврежденного изображения.
По данной заявке испрашивается приоритет Патентной Заявки Японии № 2011-051443, поданной 09 марта 2011г., содержимое которой включено в настоящее описание посредством ссылки.
УРОВЕНЬ ТЕХНИКИ
Используемые в настоящем описании понятия определены следующим образом.
- «Форма поиска»: совокупность точек поиска вокруг целевого пикселя сравнения с шаблоном или форма, образуемая этой совокупностью.
- «Форма шаблона»: группа пикселей, используемых для вычисления степени сходства между целевым пикселем и каждой точкой поиска при выполнении сравнения с шаблоном, или форма, образуемая группой пикселей. Одинаковая форма используется для группы пикселей вокруг целевого пикселя и для группы пикселей вокруг каждой точки поиска, и значения пикселей в позициях с одинаковым относительным взаимным расположением сравниваются друг с другом.
В области обработки изображений в качестве методики уменьшения шума при получении изображения и ухудшения ухудшенного изображения были предложены различные фильтры шумоподавления. Среди прочего известно, что фильтры шумоподавления в соответствии со способом нелокальных средних величин (см. Непатентный Документ 1) демонстрируют высокий эффект шумоподавления. Здесь и далее, фильтры шумоподавления в соответствии со способом нелокальных средних величин именуются как фильтры NLM.
Фиг.26 является схемой, описывающей фильтр NLM. На фиг.26 одна квадратная ячейка является точкой поиска, а совокупность точек поиска является формой поиска.
В фильтре NLM соответствующие пиксели в форме
Фиг.27 является схемой, иллюстрирующей входы и выход модуля исполнения фильтра NLM. По существу, модуль 1000 исполнения фильтра NLM вводит четыре фрагмента информации, включающие в себя: целевое изображение шумоподавления, форму поиска, форму шаблона и коэффициент шумоподавления, и формирует результирующее изображение с подавленным шумом. В качестве коэффициента шумоподавления дисперсия как типичное значение задается, когда доступно исходное изображение, к которому применяется шум, и соответствующее значение устанавливается пользователем, когда исходное изображение недоступно.
Модуль 1000 исполнения фильтра NLM вычисляет пиксельное значение с подавленным шумом для каждого пикселя следующим образом. Ниже описан пример, который использует SSD для вычисления степени сходства между шаблонами.
(1) Начальное значение переменной
(2) Нижеследующие процессы повторяются для всех точек поиска внутри формы поиска.
(2-1) В качестве степени сходства между шаблонами вычисляется SSD.
(2-2) Весовой коэффициент
(2-3) Сумма весовых коэффициентов
(2-4) Сумма пиксельных значений
(3) По завершении процессов (2) для всех точек поиска внутри формы поиска пиксельное значение с подавленным шумом целевого пикселя шумоподавления получается при помощи следующего уравнения.
Модуль 1000 исполнения фильтра NLM выполняет процесс шумоподавления, используя одно значение и одну форму для всех пикселей целевого изображения шумоподавления, когда одно значение задано в качестве каждого из следующего: входного коэффициента шумоподавления, входной формы поиска и входной формы шаблона, и выполняет процесс шумоподавления наряду с переключением значения и форм для каждой соответствующей точки, когда задана группа фрагментов данных, соответствующая каждому пикселю.
Более того, чтобы удалить искажение от кодирования, фильтр шумоподавления с фильтром удаления блочности установлен в «HM», которая является тестовой моделью «Высокоэффективного кодирования видео» стандартов кодирования видео следующего поколения, в отношении которых «Экспертной группой по вопросам движущегося изображения (MPEG)» и «Экспертной Группой по Кодированию Видео (VCEG)» в настоящее время осуществляются мероприятия по международной стандартизации (см. Непатентный Документ 2).
Документы Известного Уровня Техники
Непатентные Документы
Непатентный Документ 1: A. Buades, B. Coil, и J. M. Morel, «A non-local algorithm for image denoising”, Proc. IEEE Int. Conf. on Computer Vision and Pattern Recognition, том. 2, стр. 60-65, июнь, 2005г.
Непатентный Документ 2: Thomas Wiegand, Woo-Sin Han, Benjamin Bross, Jens-Rainer Ohm, и Gary S. Sullivan, «WD1: Working Draft 1 of High-Efficiency Video Coding», ITU-T SG16 WP3 и ISO/IEC JTC1/SC29/WG11 3rd Meeting: Гуанчжоу, Китай, 7-15 октября 2010г.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Задачи, которые должны быть решены с помощью изобретения
Как описано выше, чтобы удалить искажения кодирования, в «HM» «Высокоэффективного Кодирования Видео» стандартов кодирования видео следующего поколения установлен фильтр шумоподавления с фильтром удаления блочности, однако можно предположить, что эффективность кодирования может быть повышена в сравнении с традиционными фильтрами удаления блочности, если в HM вводится вышеупомянутый фильтр NLM.
Однако вычислительная сложность фильтра NLM огромна, так что существует вероятность того, что время вычисления, требуемое для декодирования, значительно увеличится, если устройство декодирования будет вычислять фильтры NLM для всех пикселей.
Как описано выше, сравнение с шаблоном выполняется для каждого целевого пикселя шумоподавления и каждой точки поиска внутри произвольной формы поиска, используя произвольную форму шаблона для вычисления степени сходства между шаблонами. В результате, предполагая, что, например, формой шаблона является блок N×N, а формой поиска является M×M, то вычислительная сложность порядка N2×M2 требуется для выполнения вычисления шумоподавления для одного пикселя. Вследствие этого, чтобы использовать фильтр NLM в устройстве декодирования и т.п., требуется технология снижения вычислительной сложности.
Цель настоящего изобретения состоит в решении вышеописанных задач и предоставлении способов снижения вычислительной сложности фильтра шумоподавления, сдерживая при этом снижение эффективности кодирования. Следует отметить, что здесь в качестве эффективности кодирования используется, например, коэффициент BD, который является одной из международных методик оценки и вычисляется из качества изображения и количества бит.
Средства для решения задач
Для решения вышеприведенных задач настоящее изобретение исполняет следующие процессы при обработке изображения, которая выполняет сравнение с шаблоном между шаблоном, который является источником сравнения для целевого пикселя шумоподавления в целевом изображении шумоподавления, и шаблоном для каждой из точек поиска, которые являются целями поиска внутри формы поиска в целевом изображении шумоподавления, и удаляет шум целевого пикселя, используя весовые коэффициенты в соответствии со степенями сходства между шаблонами и взвешенной суммой пиксельных значений в точках поиска.
(1) Вычисляется направление границы при помощи целевого изображения шумоподавления.
(2) Устанавливается форма поиска, в которой количество точек поиска вдоль направления, которое перпендикулярно направлению границы, меньше количества точек поиска вдоль направления границы, используя вычисленное направление границы в качестве индекса, используемого для ограничения формы поиска.
(3) Сравнение с шаблоном выполняется только для каждой точки поиска внутри установленной формы поиска и исполняется процесс удаления шума целевого пикселя.
Более того, настоящее изобретение применяет вышеприведенную обработку изображения к контурному фильтру (соответствующему обычному фильтру удаления блочности) при кодировании или декодировании видео.
Кроме того, в настоящем изобретении следующие процессы могут исполняться в дополнение к приведенным выше процессам (1)-(3), когда приведенная выше обработка изображения применяется к контурному фильтру при кодировании или декодировании видео.
(4) Степень отклонения между целевым пикселем и соседним пикселем целевого пикселя вычисляется, используя декодированное изображение.
(5) Степень отклонения используется в качестве индекса, используемого для ограничения формы шаблона у шаблона, и процесс ограничения формы шаблона исполняется таким образом, что чем ниже степень отклонения относительно максимального значения степени отклонения внутри декодированного изображения, тем меньше форма шаблона.
Кроме того, дополнительно может быть добавлен следующий процесс (6).
(6) Обнаруживается излишне назначенная область в форме шаблона, ограниченной процессом (5), и выполняется повторная установка формы шаблона, чтобы дополнительно ограничить форму шаблона.
Как описано выше, процесс (1) обнаруживает направление границы в целевом изображении шумоподавления, а процесс (2) ограничивает форму поиска для каждого пикселя в целевом изображении шумоподавления таким образом, чтобы сохранить точки поиска вдоль направления границы процесса (1) и сократить точки поиска вдоль направления, которое перпендикулярно направлению границы. В результате можно снизить вычислительную сложность фильтра шумоподавления.
Более того, можно снизить вычислительную сложность контурного фильтра, при этом сдерживая снижение эффективности кодирования посредством объединения вышеприведенной обработки изображения с обработкой кодирования/декодирования видео и применяя их к контурному фильтру. Кроме того, несмотря на то что обычно форма шаблона уникально задается для всего кадра как фиксированное значение, можно снизить вычислительную сложность сравнения с шаблоном посредством введения процесса ограничения формы шаблона для каждого пикселя с помощью приведенных выше процессов (4) и (5). Дополнительно, можно дополнительно снизить вычислительную сложность посредством дополнительного исполнения процесса (6).
Полезные эффекты изобретения
Нижеследующее является полезными эффектами настоящего изобретения.
1. Снижение вычислительной сложности фильтра шумоподавления
Настоящее изобретение ограничивает форму поиска и сокращает количество точек поиска, которые являются целями для сравнения с шаблоном, так что сокращается количество вычислений для сравнения с шаблоном и можно снизить вычислительную сложность.
2. Снижение вычислительной сложности фильтра шумоподавления, которое может быть реализовано, когда фильтр шумоподавления объединяется с кодированием/декодированием видео
Более того, можно реализовать снижение вычислительной сложности, в то же время сдерживая снижение эффективности кодирования посредством применения настоящего изобретения к контурному фильтру при кодировании/декодировании видео.
Кроме того, введение процесса ограничения формы шаблона для сокращения количества пикселей в шаблонах, между которыми выполняется сравнение, приводит к сокращению количества сравнений между пикселями, так что можно снизить вычислительную сложность. Т.е. поскольку сравнение с шаблоном выполняется для каждой точки поиска, то сочетание методики ограничения области поиска с методикой ограничения формы шаблона дает возможность синергетически снизить вычислительную сложность, так как вычисление дополнительно ограниченной формы шаблона выполняется внутри ограниченной формы поиска.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с первым вариантом осуществления настоящего изобретения.
Фиг.2 является блок-схемой обработки устройства обработки изображения первого варианта осуществления.
Фиг.3 является схемой, описывающей снижение вычислительной сложности фильтра шумоподавления из-за уменьшения формы поиска.
Фиг.4 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии со вторым вариантом осуществления настоящего изобретения.
Фиг.5 является блок-схемой обработки устройства обработки изображения второго варианта осуществления.
Фиг.6 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с третьим вариантом осуществления настоящего изобретения.
Фиг.7A является схемой, описывающей оператор Собеля в примере способа обнаружения направления границы.
Фиг.7B является схемой, описывающей номера в соответствии с направлениями в примере способа обнаружения направления границы.
Фиг.7C является схемой, описывающей способ для назначения номеров в примере способа обнаружения направления границы.
Фиг.8 является схемой, иллюстрирующей пример установки формы поиска в соответствии с номерами направления границы.
Фиг.9A является схемой, иллюстрирующей пример установки формы поиска в соответствии с углом в радианах.
Фиг.9B является схемой, иллюстрирующей пример установки формы поиска в соответствии с углом в радианах.
Фиг.10 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с пятым вариантом осуществления настоящего изобретения.
Фиг.11 является блок-схемой обработки устройства обработки изображения пятого варианта осуществления.
Фиг.12 является схемой, описывающей пример ограничения формы шаблона посредством модуля установки формы шаблона.
Фиг.13 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с шестым вариантом осуществления настоящего изобретения.
Фиг.14 является блок-схемой обработки устройства обработки изображения шестого варианта осуществления.
Фиг.15A является схемой, описывающей пример способа обнаружения степени отклонения.
Фиг.15B является схемой, описывающей пример способа обнаружения степени отклонения.
Фиг.16 является схемой, иллюстрирующей гистограмму степеней отклонения, вместе с взаимосвязью между пороговыми значениями и установкой областей.
Фиг.17A является схемой, описывающей пример установки количества выборок в соответствии с соотношением интеграции.
Фиг.17B является схемой, описывающей пример установки количества выборок в соответствии с соотношением интеграции.
Фиг.18A является схемой, описывающей целевую область вычисления в примере способа повторной установки формы шаблона.
Фиг.18B является схемой, описывающей признак шума блочности в примере способа повторной установки формы шаблона.
Фиг.18C является схемой, описывающей установку четырех углов в примере способа повторной установки формы шаблона.
Фиг.19 является схемой, иллюстрирующей пример конфигурации устройства кодирования видео, к которому применяется вариант осуществления настоящего изобретения.
Фиг.20 является блок-схемой обработки устройства кодирования видео.
Фиг.21 является блок-схемой обработки устройства кодирования видео.
Фиг.22 является схемой, иллюстрирующей пример конфигурации устройства декодирования видео, к которому применяется вариант осуществления настоящего изобретения.
Фиг.23 является блок-схемой обработки устройства декодирования видео.
Фиг.24 является блок-схемой обработки устройства декодирования видео.
Фиг.25 является схемой, иллюстрирующей пример конфигурации системы, когда вариант осуществления настоящего изобретения реализуется при помощи программы программного обеспечения.
Фиг.26 является схемой, описывающей фильтр NLM.
Фиг.27 является схемой, иллюстрирующей входы и выход модуля исполнения фильтра NLM.
ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
Здесь и далее варианты осуществления настоящего изобретения будут описаны со ссылкой на чертежи.
[Первый вариант осуществления]
Фиг.1 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с первым вариантом осуществления настоящего изобретения. Устройство 10 обработки изображения предусмотрено с модулем 101 обработки фильтра шумоподавления, который включает в себя модуль 102 обнаружения направления границы, модуль 103 установки формы поиска и модуль 104 исполнения фильтра NLM.
В данном устройстве 10 обработки изображения модуль 101 обработки фильтра шумоподавления вводит четыре фрагмента информации, включающие в себя следующее: коэффициент шумоподавления, форму поиска, форму шаблона и целевое изображение шумоподавления, и выводит отфильтрованное изображение, из которого был удален шум.
Модуль 102 обнаружения направления границы обнаруживает направления границы целевого изображения шумоподавления и выводит группу направлений границы, соответствующих пикселям в целевом изображении шумоподавления. В качестве примера направлений границы присутствует группа номеров или группа углов, которые пронумерованы в соответствии с направлениями.
Модуль 103 установки формы поиска вводит форму поиска, устанавливает входную форму поиска как максимальную форму и выводит группу форм поиска, соответствующих пикселям в целевом изображении шумоподавления. Группа форм поиска для пикселей обладает формой, в которой сохранено количество точек поиска вдоль направления границы, а точки поиска вдоль направления, которое перпендикулярно направлению границы, сокращены.
Модуль 104 исполнения фильтра NLM вводит целевое изображение шумоподавления, коэффициент шумоподавления, форму шаблона и группу форм поиска для пикселей, установленных модулем 103 установки формы поиска, и выводит изображение с подавленным шумом. Обработка, выполняемая данным модулем 104 исполнения фильтра NLM, аналогична той, которую выполняет обычный фильтр NLM, раскрываемый в Непатентном Документе 1.
Фиг.2 является блок-схемой обработки устройства 10 обработки изображения, проиллюстрированного на фиг.1. Сначала, на этапе S101, модуль 101 обработки фильтра шумоподавления получает каждый фрагмент информации, включающий в себя: коэффициент шумоподавления, целевое изображение шумоподавления, форму поиска и форму шаблона, которые вводятся извне.
На этапе S102 модуль 102 обнаружения направления границы обнаруживает направления границы целевого изображения шумоподавления и выводит группу направлений границы. Затем, на этапе S103, модуль 103 установки формы поиска ограничивает входную форму поиска в соответствии с направлениями границы, которые обнаружены модулем 102 обнаружения направления границы, и выводит группу форм поиска для пикселей. Когда входная форма поиска рассматривается как максимальная форма, выходная группа форм поиска имеет формы поиска, которые меньше той, что присутствует у входной формы поиска. В заключение, на этапе S104, модуль 104 исполнения фильтра NLM исполняет фильтр NLM в соответствии с установленной информацией и выводит результирующее отфильтрованное изображение.
Фиг.3 является схемой, описывающей снижение вычислительной сложности фильтра шумоподавления из-за уменьшения формы поиска. На фиг.3
Обычно, например, как показано на фиг.3(A), форма
Следует отметить, что при сравнении с шаблоном целевой пиксель
[Второй вариант осуществления]
Фиг.4 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии со вторым вариантом осуществления настоящего изобретения. Устройство 11 обработки изображения предусмотрено с модулем 11 обработки фильтра шумоподавления, включающим в себя модуль 112 обнаружения направления границы, модуль 113 установки формы поиска и модуль 114 исполнения фильтра NLM; и модулем 115 вычисления коэффициента шумоподавления.
Данное устройство 11 обработки изображения отличается от устройства 10 обработки изображения в соответствии с первым вариантом осуществления тем, что предусмотрен модуль 115 вычисления коэффициента шумоподавления, который вводит исходное изображение, к которому не применен шум, и вычисляет коэффициент шумоподавления. Конфигурация модуля 111 обработки фильтра шумоподавления точно такая же, что и у модуля 101 обработки фильтра шумоподавления первого варианта осуществления.
Фиг.5 является блок-схемой обработки устройства 11 обработки изображения, показанного на фиг.4. Сначала, на этапе S111, устройство 11 обработки изображения получает каждый фрагмент информации, включающий в себя: исходное изображение, целевое изображение шумоподавления, форму поиска и форму шаблона, которые вводятся извне.
На этапе S112 модуль 115 вычисления коэффициента шумоподавления вычисляет коэффициент шумоподавления из дисперсий входного исходного изображения и целевого изображения шумоподавления и уведомляет модуль 114 исполнения фильтра NLM о вычисленном коэффициенте шумоподавления. На этапе S113 модуль 112 обнаружения направления границы обнаруживает направления границы целевого изображения шумоподавления и выводит группу направлений границы. Затем, на этапе S114, модуль 113 установки формы поиска ограничивает входную форму поиска в соответствии с направлениями границы, которые обнаружены модулем 112 обнаружения направления границы, и выводит группу форм поиска для пикселей. Когда входная форма поиска рассматривается как максимальная форма, выходная группа форм поиска имеет формы поиска, которые меньше той, что присутствует у входной формы поиска. В заключение, на этапе S115, модуль 114 исполнения фильтра NLM исполняет фильтр NLM в соответствии с установленной информацией и выводит результирующее отфильтрованное изображение.
[Третий вариант осуществления]
Фиг.6 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с третьим вариантом осуществления настоящего изобретения. Устройство 12 обработки изображения предусмотрено с модулем 121 обработки фильтра шумоподавления, включающим в себя модуль 122 обнаружения направления границы, модуль 123 установки формы поиска, модуль 124 исполнения фильтра NLM, модуль 125 хранения формы поиска и модуль 126 хранения формы шаблона.
Данное устройство 12 обработки изображения отличается от описанного выше устройства 10 обработки изображения в соответствии с первым вариантом осуществления тем, что вводятся только коэффициент шумоподавления и целевое изображение шумоподавления, а фиксированные значения, сохраненные в модуле 121 обработки фильтра шумоподавления, используются в качестве формы поиска и формы шаблона.
Т.е. модуль 121 обработки фильтра шумоподавления использует фиксированную форму поиска и фиксированную форму шаблона, хранящиеся в модуле 125 хранения формы поиска и модуле 126 хранения формы шаблона соответственно, вместо формы поиска и формы шаблона, которые вводятся извне. Конфигурации модуля 122 обнаружения направления границы, модуля 123 установки формы поиска и модуля 124 исполнения фильтра NLM точно такие же, как те, что описаны в первом варианте осуществления.
[Четвертый вариант осуществления]
В описанном выше третьем варианте осуществления модуль 121 обработки фильтра шумоподавления хранит как форму поиска, так и форму шаблона в качестве фиксированных значений, однако возможна реализация, в которой только одно из следующего: форма поиска и форма шаблона, хранится в качестве фиксированного значения, а другое делается переменным посредством ввода его извне. В дополнение может использоваться реализация, в которой модуль вычисления коэффициента шумоподавления дополнительно предусмотрен в третьем варианте осуществления, подобно второму варианту осуществления, и коэффициент шумоподавления вычисляется из исходного изображения. Поскольку основной поток обработки аналогичен тем, что присутствуют в примерах, описанных в первом варианте осуществления и втором варианте осуществления, подробное описание обработку опущено.
[Пример 1 способа обнаружения направления границы]
В качестве одного из примеров способов обнаружения направления границы в модулях 102, 112, и 122 обнаружения направления границы будет приведен пример, в котором фильтр Собеля применяется к декодированному изображению для обнаружения направления границы, и выводится номер, который назначен в соответствии с направлением.
Фиг.7A-7C являются схемами, описывающими пример способов обнаружения направления границы (фильтр Собеля и номера в соответствии с направлениями). Как показано на фиг.7A, оператор Собеля применяется к соседним пикселям, и номера
Фиг.7C иллюстрирует алгоритм назначения номера.
- Если
- Если условие выше не выполняется и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если условия выше не выполняются и
- Если ни одно из условий выше ни выполняется,
Чтобы сократить влияние шума типа «мошкара» из-за дискретного косинусного преобразования (DCT) и шума в момент создания изображения и чтобы снизить вычислительную сложность, также эффективно применять фильтр Собеля к изображению, полученному посредством уменьшения масштаба входного целевого изображения шумоподавления до
Когда фильтр Собеля применяется к уменьшенному в масштабе до
[Пример 1 способа установки формы поиска]
В качестве одного из примеров способов установки формы поиска в модулях 103, 113, и 123 установки формы поиска будет описан пример способа уменьшения формы поиска для всех точек опорной формы поиска в виде блока 5×5, которая задается от устройства, используя группу направлений границы с номерами
Модули 103, 113 и 123 установки формы поиска устанавливают точки поиска, показанные на фиг.8, в соответствии с группой направлений границы, принятой от модулей 102, 112 и 122 обнаружения направления границы. В блоках 5×5 фиг.8 заштрихованные части являются уменьшенными формами поиска.
Причина для этого заключается в следующем. В качестве методики вычисления фильтра NLM используется механизм, который вычисляет SSD или SAD, которая является индексом для степени сходства между шаблонами, используя сравнение с шаблоном, и устанавливает весовые коэффициенты с экспоненциальными приращениями для индекса. Вследствие этого вблизи резкой границы можно эффективно найти позицию, где степень сходства высока, посредством выполнения выборки вдоль направления границы. В противоположность, степень сходства значительно уменьшается в позиции, отдаленной от границы, и, следовательно, весовые коэффициенты становятся небольшими значениями и влияние на вычисление взвешенной суммы небольшое. Вследствие этого выборка интенсивно выполняется вдоль направления границы, так что можно снизить вычислительную сложность, при этом сдерживая ухудшение эффекта шумоподавления.
Следует отметить, что в примере на фиг.8 SSD и SAD, которые рассматриваются как индексы для степени сходства между шаблонами, в центральной позиции блока 5×5 всегда равны нулю, и, следовательно, данная точка исключается из целей вычисления. Соответственно, несмотря на то что целями вычисления являются суммарно 24 точки, когда точками поиска являются все точки блока 5×5, вычислительная сложность становится 1/3 для
[Результаты моделирования]
Нижеследующее является результатами, полученными посредством вычисления направления границы для каждого блока 2×2 целевого изображения, которое было уменьшено до 1/2 в вертикальном направлении и горизонтальном направлении, и выполнения моделирования с установками, показанными ниже, используя методики, изложенные в примере 1 способа обнаружения направления границы и примере 1 способа установки формы поиска. Следует отметить, что коэффициент шумоподавления является наилучшим значением, которое получено посредством повторяющегося вычисления, которое повторяет фильтр NLM множество раз с тем, чтобы получить максимальное пиковое отношение сигнала к шуму (PSNR).
Что касается целевых изображений шумоподавления, то произвольный шум в диапазоне от +5 до -5 был добавлен в сигнал яркости каждой из последовательностей, показанных ниже, и оценка выполнялась на основе среднего по PSNR-Y и среднего по временам обработки после фильтрации.
<Условия моделирования>
- Последовательности: BasketballDrive, BQTerrace, Cactus, и ParkScene
(Full-HD: 1920
- Целевые кадры: первые 10 кадров каждой последовательности
- Форма поиска: блок 5
- Форма шаблона: блок 3
Среднее время обработки, требуемое фильтру NLM
Из таблицы 1 может быть видно, что задержка формируется из-за влияний обнаружения направления границы и условных переходов, как результата применения направления, сформированного для каждого блока 2×2 в целевом изображении, которое было уменьшено до S в вертикальном направлении и горизонтальном направлении, однако время, требуемое для всех фильтров, может быть сокращено примерно на 45% в среднем без значительного снижения PSNR. Среди последовательностей присутствуют последовательности, в которых PSNR дополнительно увеличивается в среднем посредством интенсивного выполнения выборки вдоль направления границы.
[Пример 2 способа обнаружения направления границы]
В качестве другого примера способов обнаружения направления границы в модулях 102, 112, и 122 обнаружения направления границы будет дан пример, который применяет фильтр Собеля к целевому изображению шумоподавления для обнаружения направления границы и выводит угол в радианах (
Т.е. угол в радианах (
- Если
- Если условие выше не выполняется и
- В противном случае,
[Пример 2 способа установки формы поиска]
В качестве другого примера способов установки формы поиска в модулях 103, 113, и 123 установки формы поиска ниже описан примерный способ для уменьшения формы поиска в виде блока N×N, которая задается от устройства для всех точек формы поиска, используя группу направлений границы в единицах угла в радианах, описанных в примере 2 способа обнаружения направления границы.
Фиг.9A-9B являются схемами, иллюстрирующими пример установки формы поиска в соответствии с углом в радианах. Модули 103, 113, и 123 установки формы поиска устанавливают точки поиска внутри круга или эллипса, показанного на фиг.9A-9B, в качестве формы поиска в соответствии с углом в радианах, принятым от модулей 102, 112, и 122 обнаружения направления границы.
Если угол в радианах (
Более того, если угол в радианах (
[Пятый вариант осуществления]
Фиг.10 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с пятым вариантом осуществления настоящего изобретения. Устройство 13 обработки изображения предусмотрено с модулем 131 обработки фильтра шумоподавления, который включает в себя модуль 132 обнаружения направления границы, модуль 133 установки формы поиска, модуль 134 исполнения фильтра NLM, модуль 135 хранения формы поиска, модуль 136 хранения формы шаблона, модуль 137 установки коэффициента шумоподавления, модуль 138 обнаружения степени отклонения и модуль 139 установки формы шаблона.
Пятый вариант осуществления иллюстрирует пример устройства 13 обработки изображения, которое используется в качестве контурного фильтра в устройстве кодирования видео или устройстве декодирования видео. Основные функции модуля 132 обнаружения направления границы, модуля 133 установки формы поиска, модуля 134 исполнения фильтра NLM, модуля 135 хранения формы поиска и модуля 136 хранения формы шаблона в модуле 131 обработки фильтра шумоподавления точно такие же, как те, что у описанных выше модулей в вариантах осуществления с первого по четвертый.
Модуль 137 установки коэффициента шумоподавления формирует коэффициенты шумоподавления, которые соответствуют позициям пикселей целевого изображения шумоподавления, используя опорный коэффициент шумоподавления и информацию кодирования, которые задаются извне. В целом, в диапазоне от средней скорости до низкой скорости шум блочности становится заметным на краях единицы обработки предсказания Единица Предсказания и единицы обработки преобразования Единица Преобразования, и, следовательно, коэффициенты шумоподавления в позициях пикселей вблизи этих краев устанавливаются таким образом, чтобы они были выше тех, что используются внутри блока, используя информацию кодирования.
Модуль 138 обнаружения степени отклонения и модуль 139 установки формы шаблона предусмотрены для того, чтобы ввести процесс ограничения формы шаблона на попиксельной основе. В обычных фильтрах NLM форма шаблона в целом задается как фиксированное значение для всего кадра. В противоположность, в настоящем варианте осуществления в качестве предварительной обработки фильтра NLM посредством модуля 134 исполнения фильтра NLM модуль 138 обнаружения степени отклонения обнаруживает степени отклонения от соседних пикселей для каждого из пикселей целевого изображения шумоподавления, и модуль 139 установки формы шаблона классифицирует степени отклонения, обнаруженные модулем 138 обнаружения степени отклонения, по нескольким уровням и устанавливает форму шаблона (от большой к маленькой) каждого из пикселей в соответствии со степенью отклонения (от высокой к низкой).
Фиг.11 является блок-схемой обработки устройства 13 обработки изображения, показанного на фиг.10. Сначала, на этапе S131, модуль 131 обработки фильтра шумоподавления получает коэффициент шумоподавления, целевое изображение шумоподавления и информацию кодирования, которые вводятся извне.
На этапе S132 модуль 137 установки коэффициента шумоподавления устанавливает коэффициенты шумоподавления, которые соответствуют позициям пикселей целевого изображения шумоподавления из входного опорного коэффициента шумоподавления и входной информации кодирования.
Далее, на этапе S133, модуль 132 обнаружения направления границы обнаруживает направления границы целевого изображения шумоподавления и выводит группу направлений границы. На этапе S134 модуль 133 установки формы поиска ограничивает форму поиска, введенную из модуля 135 хранения формы поиска, в соответствии с направлениями границы, которые обнаружены модулем 132 обнаружения направления границы, и устанавливает группу форм поиска для пикселей. Когда входная форма поиска рассматривается как максимальная форма, установленная группа форм поиска имеет формы поиска, которые меньше тех, что имеются у входной формы поиска.
На этапе S135 модуль 138 обнаружения степени отклонения вводит целевое изображение шумоподавления, вычисляет степени отклонения между целевым пикселем и соседними пикселями и выводит группу степеней отклонения, которые соответствуют каждому пикселю. На этапе S136 модуль 139 установки формы шаблона устанавливает и выводит ограниченную форму шаблона, которая соответствует каждому пикселю, используя группу степеней отклонения и предварительно определенную форму шаблона, которая хранится в модуле 136 хранения формы шаблона. Когда форма шаблона ограничивается, входная форма шаблона рассматривается как максимальная форма, и ограничение применяется таким образом, что чем ниже степень отклонения, тем меньше форма шаблона.
В заключение, на этапе S137, модуль 134 исполнения фильтра NLM исполняет фильтр NLM в соответствии с установленной информацией и выводит результирующее отфильтрованное изображение.
Фиг.12 является схемой, описывающей пример ограничения формы шаблона посредством модуля 139 установки формы шаблона. Например, предполагается, что назначенной извне формой шаблона является блок 5×5, как показано на фиг.12(A). Эта форма шаблона ограничивается в соответствии со степенями отклонения, как показано, например, на фиг.12(B). Когда SSD используется в качестве степени сходства между шаблонами, то операции, включающие в себя 24 сложения, 25 вычитаний и 25 умножений, требуются для исходной формы шаблона; в противоположность, посредством ограничения формы шаблона, как показано на фиг.12(B), требуются только операции, включающие в себя 12 сложений, 13 вычитаний и 13 умножений, и, следовательно, вычислительная сложность снижается примерно на 50%.
Обработка посредством модуля 131 обработки фильтра шумоподавления направлена на удаление шума кодирования, и это не предполагает удаление шума, который единообразно применен ко всему кадру, из кадра как при обычной обработке изображения. Шум кодирования (искажение кодирования) может быть грубо классифицирован на следующие типы:
1. Исчезновение узора из-за сглаживания
2. Шум типа «мошкара» вокруг границы из-за DCT
3. Шум блочности, формируемый на краях единиц Единицы Предсказания и Единицы Преобразования
Из этих типов настоящий вариант осуществления не направлен на восстановление узора, потерянного из-за сглаживания, так как это сложно сделать. Если фильтр NLM применяется к такой сглаженной области, в которой отсутствует изменение в пиксельное значение, то для этого все равно требуется вычислительная сложность, несмотря на то что нет почти никакого изменения между сигналом пикселя до вычисления и сигналом пикселя после вычисления. Настоящий вариант осуществления вычисляет степени отклонения от соседних пикселей для снижения вычислительной сложности, которая также распределяется на такую сглаженную область.
[Шестой вариант осуществления]
Фиг.13 является схемой, иллюстрирующей пример конфигурации устройства обработки изображения в соответствии с шестым вариантом осуществления настоящего изобретения. Устройство 14 обработки изображения предусмотрено с модулем 141 обработки фильтра шумоподавления, который включает в себя модуль 142 обнаружения направления границы, модуль 143 установки формы поиска, модуль 144 исполнения фильтра NLM, модуль 145 хранения формы поиска, модуль 146 хранения формы шаблона, модуль 147 установки коэффициента шумоподавления, модуль 148 обнаружения степени отклонения, модуль 149 установки формы шаблона и модуль 1410 повторной установки формы шаблона.
Данное устройство 14 обработки изображения отличается от устройства 13 обработки изображения в пятом варианте осуществления тем, что предусмотрен модуль 1410 повторной установки формы шаблона. Модуль 1410 повторной установки формы шаблона выполняет повторную установку для дополнительного ограничения формы шаблона, которая была чрезмерно выделена модулем 149 установки формы шаблона со ссылкой на группу направлений границы, группу степеней отклонения и информацию кодирования. В частности, дополнительно ограничивается форма шаблона, которой свойственно чрезмерное выделение для окрестностей шума блочности, формирование которого свойственно на краях единицы Единицы Предсказания и Единицы Преобразования.
Фиг.14 является блок-схемой обработки устройства 14 обработки изображения, показанного на фиг.13. Процессы на этапах S141-S146 точно такие же, как те, что на этапах S131-S136, описанные со ссылкой на фиг.11. На этапе S147 модуль 1410 повторной установки формы шаблона повторно устанавливает форму шаблона, используя информацию кодирования и информацию границы для уменьшения чрезмерного выделения формы шаблона, установленного на этапе S146. В заключение, на этапе S148, модуль 144 исполнения фильтра NLM исполняет фильтр NLM в соответствии с установленной информацией и выводит результирующее отфильтрованное изображение.
[Пример способа обнаружения степени отклонения]
Будет описан пример способа обнаружения степени отклонения в модулях 138 и 148 обнаружения степени отклонения. Фиг.15A и 15B являются схемами, описывающими пример способов обнаружения степени отклонения. Описание будет дано для случая, при котором пиксель
Коэффициенты
По завершении вычисления для всех
В качестве альтернативы рассматривается, что абсолютное значение фильтра Лапласа, сумма квадратов разностей (SSD), дисперсия и т.д. могут быть применены для вычисления степеней отклонения.
Для того чтобы дополнительно снизить вычислительную сложность, также рассматривается методика установки нескольких точек выборки в качестве целей вычисления для каждого блока N×N с произвольным размером для декодированного изображения и использования степеней отклонения в качестве типичных значений в их позициях пикселей.
Фиг.15B иллюстрирует пример прореживания количества выборок. В данном примере блок делится на 2×2, и целями вычисления являются верхний левый пиксель и нижний правый пиксель. Когда степень отклонения в данном примере обозначена как
Приведенная выше
[Пример 1 способа установки формы шаблона]
В качестве одного из примеров способов установки формы шаблона в модулях 139 и 149 установки формы шаблона будет дан пример уменьшения формы шаблона для всех точек опорной формы шаблона в виде блока 3×3, которая задается от устройства, используя группу степеней отклонения, которая вычислена модулями 138 и 148 обнаружения степени отклонения.
Фиг.16 является схемой, иллюстрирующей гистограмму степеней отклонения, как впрочем и взаимосвязь между пороговыми значениями и установкой областей. Когда целью является естественное изображение, то гистограмма группы степеней отклонения смещена к более низким значениям, и чем выше степень отклонения, тем меньше частота появлений. Более того, свойство гистограммы состоит в том, что она смещается к более низкой степени отклонения по мере увеличения значения параметра квантования.
Модули 139 и 149 установки формы шаблона создают гистограмму входной группы степеней отклонения, делят гистограмму на четыре части, так чтобы соотношения между их площадями были равны друг другу, и устанавливают формы
(1) Если степень отклонения меньше порогового значения
Когда
(2) Если степень отклонения больше либо равна пороговому значению
Когда
(3) Если степень отклонения больше либо равна пороговому значению
Когда
(4) Если степень отклонения больше либо равна
Когда
В сравнении с методикой выполнения сравнения для всех точек формы шаблона в виде блока 3×3 и для всех точек поиска посредством ввода настоящей методики могут быть получены следующие вычислительной сложности.
Область α: вычислительная сложность 0
Область β: вычислительная сложность 1/9
Область γ: вычислительная сложность 5/9
Область δ: вычислительная сложность 1
Поскольку каждая область занимает ј всего кадра, то суммарная вычислительная сложность составляет 5/12 и теоретическое значение вычислительной сложности может быть сокращено примерно до чуть меньше 1/2.
Нижеследующее является причиной того, почему форма шаблона определяется в соответствии с размером степени отклонения данным образом. Сигнал с высокой степенью отклонения, как правило, проявляется в окрестностях строгой границы, тогда как слабая граница, шум типа «мошкара» из-за DCT, шум во время создания изображения и т.п. проявляются в качестве сигнала с от низкой степени отклонения до средней степени отклонения. Поскольку свойство фильтра NLM состоит в том, что он эффективен в частности в окрестностях границы, то настоящий вариант осуществления выделяет большую форму шаблона для области (область δ), где степень отклонения высока, тем самым сдерживая ухудшение эффекта шумоподавления.
[Пример 2 способа установки формы шаблона]
В качестве другого примера способов установки формы шаблона в модулях 139 и 149 установки формы шаблона будет дан пример уменьшения формы шаблона для всех точек опорной формы шаблона в виде блока N×N, которая задается от устройства, используя группу степеней отклонения, которая вычислена модулями 138 и 148 обнаружения степени отклонения.
Фиг.17A и 17B являются схемами, описывающими пример установки количества выборок в соответствии с соотношением интеграции. Модули 139 и 149 установки формы шаблона создают гистограмму группы степеней отклонения и устанавливают форму шаблона, используя соотношение между интегрированными значениями функции
Т.е. когда опорная форма шаблона задана как блок N×N, как показано на фиг.17A, то уменьшенная форма шаблона устанавливается в виде круга и его диаметр определяется следующим образом.
Соответственно, можно выполнить эффективное сравнение с шаблоном посредством использования небольшой формы шаблона, когда степень отклонения низкая, и использования большой формы шаблона, когда степень отклонения высокая.
[Пример способа повторной установки формы шаблона]
В качестве одного из примеров способа повторной установки формы шаблона в модуле 1410 повторной установки формы шаблона будет описан пример, в котором форма шаблона, установленная модулем 149 установки формы шаблона, показанная на фиг.16, повторно устанавливается, используя группу степеней отклонения, которая выводится модулем 148 обнаружения степени отклонения, показанную на фиг.15B, группу направлений границы, показанную на фиг.7B и 7C, и информацию кодирования для дополнительного уменьшения размера формы шаблона.
Фиг.18A-18C являются схемами, описывающими способ повторной установки формы шаблона. Сначала размер единицы Единица Преобразования, которая является единицей процесса преобразования, такого как DCT, получают из информации кодирования, и
Когда используется группа направлений границы, как показано на фиг.18B, то:
Т.е. в диапазоне от области со средней скоростью до области с низкой скоростью, где параметр
В качестве конкретной методики решения возможна, например, следующая методика. Нижеследующая установка выполняется в каждой позиции пикселя, используя предварительно определенные пороговые значения
Если выполняется следующее условие, то форма
[Условие 1]:
[Условие 2]: Или
Пример «Алгоритма ветви повторной установки»
(1) Если параметр
(2) Если условие выше не выполняется, параметр
(3) Если условия выше не выполняются, параметр
(4) Если условия выше не выполняются, параметр
(5) Если условия (1)-(4) выше не выполняются, обработка завершается без повторной установки
Поскольку
- Область
- Область
- Область
- Область
Настоящий вариант осуществления демонстрирует пример, в котором вычислительная сложность снижается для группы пикселей по краям блока; в противоположность, также возможна реализация, в которой
Следует отметить, что пятый вариант осуществления и шестой вариант осуществления описывают примеры, в которых модули 131 и 141 обработки фильтра шумоподавления сохраняют опорную форму поиска и опорную форму шаблона как фиксированные значения, но также возможна реализация, при которой одно или оба значения подаются извне.
[Пример применения к устройству кодирования видео]
Фиг.19 является схемой, иллюстрирующей пример конфигурации устройства кодирования видео, к которому применяется вариант осуществления настоящего изобретения. Модули 101-141 обработки фильтра шумоподавления, описанные в качестве вариантов осуществления с первого по шестой, могут быть использованы в качестве модуля 313 обработки фильтра шумоподавления, который является контурным фильтром в устройстве кодирования видео, показанном на фиг.19. Вследствие этого можно увеличить эффективность кодирования в сравнении со случаем, при котором используется обычный общий фильтр удаления блочности. Более того, можно значительно снизить вычислительную сложность применительно к шумоподавлению декодированного изображения в сравнении со случаем, при котором используется обычный фильтр NLM без модификации. Следует отметить, что фиг.19 иллюстрирует пример, в котором модули 131 и 141 обработки фильтра шумоподавления хранят как опорную форму поиска, так и опорную форму шаблона в качестве фиксированных значений. Более того, иллюстрируется пример, в котором в качестве коэффициента шумоподавления определяется коэффициент шумоподавления, который обеспечивает оптимальную эффективность кодирования в сравнении с той, что присутствует у исходного изображения, и который закодирован в битовом потоке в качестве служебных данных коэффициента шумоподавления. Когда одно из или как форма поиска, так и форма шаблона подаются извне посредством, например, установки пользователя, то необходимо передать эти формы устройству декодирования, но установка извне может быть реализована посредством кодирования этих форм в качестве служебных данных аналогично коэффициенту шумоподавления и, следовательно, описание этого опущено в примере применения к настоящему устройству кодирования и в примере применения к устройству декодирования.
Здесь и далее будет описано устройство кодирования видео, показанное на фиг.19. Модуль 301 хранения исходного изображения является модулем хранения для всех изображений входной последовательности, которая является целью кодирования, и он последовательно выводит целевые изображения кодирования кадров.
Модуль 302 определения размера блока определяет размер блока, с помощью которого осуществляется разделение на предварительно определенную Единицу Кодирования и исполняется кодирование, и выводит целевой блок и размер блока. Модуль 303 определения размера предсказания определяет размер предсказания блока, с помощью которого предсказываются значения пикселя целевого блока, и выводит целевой блок и размер предсказания. Модуль 304 определения методики предсказания определяет методику, которая обеспечивает наивысшую эффективность кодирования из методик, включающих в себя: внутрикадровое предсказание и межкадровое предсказание, когда предсказываются значения пикселя целевого блока, и выводит блок предсказания и информацию предсказания, когда используется эта методика. Для формирования разностного блока вычисляется разность между целевым блоком, который выводится модулем 303 определения размера предсказания и блоком предсказания.
Модуль 305 определения размера преобразования определяет размер преобразования, с помощью которого осуществляется разделение разностного блока, и выводит разделенные разностные блоки размера преобразования, как впрочем, и размер преобразования. Модуль 306 дискретного косинусного преобразования применяет дискретное косинусное преобразование к разностным блокам и выводит коэффициенты DCT. Модуль 307 квантования квантует коэффициенты DCT и выводит квантованные коэффициенты DCT.
Модуль 308 обратного квантования выполняет обратное квантование над квантованными коэффициентами DCT для восстановления коэффициентов DCT. Модуль 309 обратного дискретного косинусного преобразования применяет обратное дискретное косинусное преобразование к коэффициентам DCT и выводит декодированный разностный блок. Декодированный разностный блок складывается с блоком предсказания для формирования частичного декодированного изображения. Модуль 310 хранения декодированного изображения является модулем хранения для хранения частичного декодированного изображения и изображений, к которым также может осуществляться обращение в устройстве декодирования. Модуль 311 внутрикадрового предсказания обращается к частичному декодированному изображению, которое хранится в модуле 310 хранения декодированного изображения, и выводит блок предсказания и информацию предсказания.
Модуль 312 определения коэффициента шумоподавления определяет коэффициент шумоподавления, который обеспечивает оптимальную эффективность кодирования, обращаясь к декодированному изображению и исходному изображению, и выводит коэффициент шумоподавления. Модуль 313 обработки фильтра шумоподавления выполняет процесс фильтра для уменьшения искажения кодирования, описанный в вышеописанных вариантах осуществления с первого по шестой и т.п., обращаясь к декодированному изображению, чтобы сформировать отфильтрованное декодированное изображение.
Модуль 314 обработки адаптивного контурного фильтра (ALF) выполняет процесс фильтра над отфильтрованным декодированным изображением таким образом, чтобы оно было ближе к исходному изображению, и выводит декодированное изображение после ALF и коэффициенты ALF. Буфер 315 кадра является модулем хранения для хранения декодированного изображения после ALF. Модуль 316 межкадрового предсказания обращается к буферу 315 кадра и выводит блок предсказания и информацию предсказания.
Модуль 317 кодирования информации последовательности кодирует информацию, уникальную для входной последовательности, такую как количество пикселей в вертикальном направлении и горизонтальном направлении видео, и затем выводит служебные данные информации последовательности в модуль 325 хранения битового потока. Модуль 318 кодирования размера блока принимает размер блока от модуля 302 определения размера блока, выполняет кодирование и затем выводит служебные данные размера блока. Модуль 319 кодирования размера предсказания принимает размер предсказания от модуля 303 определения размера предсказания, выполняет кодирование и затем выводит служебные данные размера предсказания. Модуль 320 кодирования информации предсказания принимает информацию предсказания от модуля 304 определения методики предсказания, выполняет кодирование и затем выводит служебные данные информации предсказания.
Модуль 321 кодирования размера преобразования принимает размер преобразования от модуля 305 определения размера преобразования, выполняет кодирование и затем выводит служебные данные размера преобразования. Модуль 322 кодирования квантованного коэффициента DCT принимает квантованные коэффициенты DCT от модуля 307 квантования, выполняет кодирование и затем выводит служебные данные DCT. Модуль 323 кодирования коэффициента шумоподавления принимает коэффициент шумоподавления, который определен модулем 312 определения коэффициента шумоподавления, выполняет кодирование и затем выводит служебные данные коэффициента шумоподавления. Модуль 324 кодирования коэффициента ALF принимает коэффициенты ALF, выполняет кодирование и затем выводит служебные данные ALF. Модуль 325 хранения битового потока является модулем хранения для хранения каждых служебных данных и выводит битовый поток в качестве результата кодирования по завершении кодирования всей последовательности.
Модуль 326 хранения информации кодирования является модулем хранения для хранения информации кодирования, обращение к которой также может осуществляться со стороны устройства декодирования. Обращение к данной информации кодирования, которая хранится в модуле 326 хранения информации кодирования, осуществляется со стороны, и она используется модулем 313 обработки фильтра шумоподавления и другими модулями.
[Поток обработки устройства кодирования видео]
Фиг.20 и 21 иллюстрируют блок-схему обработки устройства кодирования видео, показанного на фиг.19. Устройство кодирования видео выполняет следующие процессы.
- Сначала, на этапе S301, входная последовательность сохраняется в модуле 301 хранения исходного изображения.
- Далее, на этапе S302, информация последовательности кодируется и сохраняется в модуле 325 хранения битового потока.
- Далее, на этапе S303, над всеми целевыми кадрами кодирования выполняется циклический процесс, вплоть до этапа S318.
- Далее, на этапе S304, над всеми Единицами Кодирования (CU) целевого изображения кодирования выполняется циклический процесс, вплоть до этапа S314.
- Далее, на этапе S305, размер блока определяется, кодируется и сохраняется в модуле 325 хранения битового потока.
- Далее, на этапе S306, размер предсказания определяется, кодируется и сохраняется в модуле 325 битового потока.
- Далее, на этапе S307, вычисляется разность между целевым блоком и методикой, которая обеспечивает наивысшую эффективность кодирования из числа блока предсказания внутрикадрового предсказания и блока предсказания межкадрового предсказания.
- Далее, на этапе S308, информация предсказания сохраняется в модуле 325 хранения битового потока.
- Далее, на этапе S309, размер преобразования определяется, кодируется и сохраняется в модуле 325 хранения битового потока.
- Далее, на этапе S310, выполняется дискретное косинусное преобразование (DCT).
- Далее, на этапе S311, выполняется квантование, и квантованные коэффициенты DCT кодируются и сохраняются в модуле 325 хранения битового потока.
- Далее, на этапе S312, выполняется обратное квантование и обратное дискретное косинусное преобразование.
- Далее, на этапе S313, блок предсказания, примененный на этапе S307, складывается с декодированным разностным блоком после обратного преобразования.
- Далее, на этапе S314, частичное декодированное изображение, полученное посредством сложения, сохраняется в модуле 310 хранения декодированного изображения.
- По завершении циклического процесса для всех CU целевого изображения кодирования на этапе S315 вычисляется коэффициент шумоподавления, который обеспечивает оптимальную эффективность кодирования, используя декодированное изображение и исходное изображение.
- Далее, на этапе S316, над декодированным изображением исполняется процесс фильтра шумоподавления при помощи настоящей методики, используя вычисленный коэффициент шумоподавления, и коэффициент шумоподавления кодируется и сохраняется в модуле 325 хранения битового потока.
- Далее, на этапе S317, исполняется адаптивный контурный фильтр (ALF) и коэффициенты ALF кодируются и сохраняются в модуле 325 хранения битового потока.
- Далее, на этапе S318, декодированное изображение после ALF сохраняется в буфере 315 кадра.
- По завершении циклического процесса для всех целевых кадров кодирования, на этапе S319, выводится битовый поток и обработка завершается.
[Пример применения к устройству декодирования видео]
Фиг.22 является схемой, иллюстрирующей пример конфигурации устройства декодирования видео, к которому применяется вариант осуществления настоящего изобретения. Модули 101-141 обработки фильтра шумоподавления, описанные в качестве вариантов осуществления с первого по шестой, могут использоваться в качестве модуля 415 обработки фильтра шумоподавления, который является контурным фильтром в устройстве декодирования видео, показанном на фиг.22. Вследствие этого можно значительно снизить вычислительную сложность в сравнении со случаем, при котором используется обычный фильтр NLM без модификации.
Здесь и далее будет описано устройство декодирования видео, показанное на фиг.22. Модуль 401 хранения битового потока является модулем хранения для входного битового потока и выводит каждый фрагмент служебной информации по мере необходимости. Модуль 402 декодирования информации последовательности принимает служебные данные информации последовательности и декодирует информацию, которая является уникальной для последовательности, такую как количество пикселей в вертикальном направлении и горизонтальном направлении видео.
Модуль 403 декодирования размера блока принимает служебные данные размера блока и декодирует информацию, указывающую размер блока, с помощью которого осуществляется разделение на предварительно определенную Единицу Кодирования и кодирование. Модуль 404 декодирования размера предсказания принимает служебные данные размера предсказания и выводит размер предсказания, который применялся в устройстве кодирования видео.
Модуль 405 декодирования информации предсказания принимает служебные данные информации предсказания и выводит информацию предсказания. Модуль 406 декодирования размера преобразования принимает служебные данные размера преобразования и выводит размер преобразования, который применялся в устройстве кодирования видео. Модуль 407 декодирования квантованного коэффициента DCT принимает размер преобразования и служебные данные DCT и выводит квантованные коэффициенты DCT. Модуль 408 декодирования коэффициента шумоподавления принимает служебные данные коэффициента шумоподавления и выводит коэффициент шумоподавления. Модуль 409 декодирования коэффициента ALF принимает служебные данные ALF и выводит коэффициенты ALF.
Модуль 410 обратного квантования выполняет обратное квантование над квантованными коэффициентами DCT для восстановления коэффициентов DCT. Модуль 411 обратного дискретного косинусного преобразования применяет обратное дискретное косинусное преобразование к коэффициентам DCT и выводит декодированный разностный сигнал. Модуль 412 формирования блока предсказания принимает информацию предсказания, частичное декодированное изображение и опорный кадр и формирует блок предсказания. Модуль 413 формирования частичного декодированного изображения складывает блок предсказания с декодированным разностным сигналом для формирования частичного декодированного изображения. Модуль 414 хранения декодированного изображения является модулем хранения для хранения частичного декодированного изображения.
Модуль 415 обработки фильтра шумоподавления выполняет процесс фильтра для уменьшения искажения кодирования, описанный в вышеописанных вариантах осуществления с первого по шестой, и т.п., обращаясь к декодированному изображению, чтобы сформировать отфильтрованное декодированное изображение.
Модуль 416 обработки ALF принимает коэффициенты ALF, выполняет обработку фильтра над отфильтрованным декодированным изображением, так чтобы оно было близко к исходному изображению, и выводит декодированное изображение после ALF. Следует отметить, что данное декодированное изображение после ALF становится итоговым декодированным изображением при декодировании. Буфер 417 кадра является модулем хранения для хранения декодированного изображения после ALF. Модуль 418 хранения информации кодирования является модулем хранения для хранения информации кодирования, и обращение к данной информации кодирования, хранящейся в модуле 418 хранения информации кодирования, осуществляется со стороны, и она используется модулем 415 обработки фильтра шумоподавления и другими модулями.
[Поток обработки устройства декодирования видео]
Фиг.23 и 24 иллюстрируют блок-схему обработки устройства декодирования видео, показанного на фиг.22. Устройство декодирования видео выполняет следующие процессы.
- Сначала, на этапе S401, входной битовый поток сохраняется в модуле 401 хранения битового потока.
- Далее, на этапе S402, декодируется информация последовательности.
- Далее, на этапе S403, над всеми целевыми кадрами декодирования выполняется циклический процесс, вплоть до этапа S414.
- Далее, на этапе S404, над всеми Единицами Кодирования (CU) целевого изображения декодирования выполняется циклический процесс, вплоть до этапа S411.
- Далее, на этапе S405, декодируется размер блока.
- Далее, на этапе S406, декодируется размер предсказания.
- Далее, на этапе S407, декодируется информация предсказания и формируется блок предсказания.
- Далее, на этапе S408, декодируется размер преобразования.
- Далее, на этапе S409, декодируются квантованные коэффициенты DCT.
- Далее, на этапе S410, выполняются обратное квантование и обратное дискретное косинусное преобразование.
- Далее, на этапе S411, формируется декодированный блок при помощи блока предсказания на этапе S407 и результата этапа S410 и сохраняется в модуле 414 хранения декодированного изображения.
- По завершении циклического процесса над всеми CU целевого изображения декодирования, на этапе S412, декодируется коэффициент шумоподавления и над частичным декодированным изображением исполняется процесс фильтра шумоподавления, используя настоящую методику.
- Далее, на этапе S413, декодируются коэффициенты ALF и исполняется процесс ALF.
- Далее, на этапе S414, декодированное изображение после ALF сохраняется в буфере 417 кадра.
- По завершении циклического процесса для всех целевых кадров декодирования, на этапе S415, кадры из буфера 417 кадра выводятся в очередности номера кадра, чтобы сформировать выходную последовательность, и обработка завершается.
[Эффект снижения вычислительной сложности]
Было подтверждено, что при применении фильтра шумоподавления в соответствии с настоящей методикой для кодирования стандартного видео можно снизить требуемую вычислительная сложность применительно к вышеприведенному фильтру примерно на 50-75%, при этом сдерживая ухудшение в PSNR в сравнении с методикой, которая включает в себя обычный фильтр NLM (фильтр шумоподавления в соответствии со способом нелокальных средних величин), в стандартах кодирования видео следующего поколения.
[Пример конфигурации при использовании программы программного обеспечения]
Процессы вышеприведенной обработки изображения, кодирования видео и декодирования видео также могут быть реализованы компьютером и программой программного обеспечения, причем программа может быть записана на машиночитаемом носителе записи, и программа может предоставляться по сети.
Фиг.25 иллюстрирует пример конфигурации системы, когда вариант осуществления настоящего изобретения реализуется при помощи компьютера и программы программного обеспечения.
Настоящая система сконфигурирована таким образом, что центральный процессор (CPU) 50, который исполняет программу, память 51, такая как запоминающее устройство с произвольным доступом (RAM), которая хранит программу и данные, доступ к которым может быть получен посредством CPU 50, модуль 52 хранения видеосигнала, который хранит сигналы целевого изображения шумоподавления, целевой видеосигнал кодирования или видеосигнал декодированных изображений, модуль 53 хранения программы, который хранит программу, предписывающую CPU 50 исполнить процессы, описанные в вариантах осуществления настоящего изобретения, и модуль 54 хранения закодированного потока, который хранит битовый поток в качестве результата кодирования или декодирования целевого битового потока, соединены друг с другом посредством шины.
Модуль 53 хранения программы хранит одно из следующего: программу 531 обработки изображения для удаления шума из сигнала изображения, используя вариант осуществления настоящего изобретения; программу 532 кодирования видео для кодирования видеосигнала, используя вариант осуществления настоящего изобретения; и программу 533 декодирования видео для декодирования закодированного битового потока, используя вариант осуществления настоящего изобретения. Модуль 53 хранения программы не обязательно хранит все из этих программ.
Когда настоящая система используется для удаления шума из сигнала изображения, то программа 531 обработки изображения загружается в память 51, CPU 50 последовательно извлекает и исполняет инструкции программы 531 обработки изображения, загруженной в память 51, вводит изображения видеосигнала, хранящегося в модуле 52 хранения видеосигнала, удаляет шум, используя методику, описанную в варианте осуществления настоящего изобретения, и выполняется сохранение в модуле 52 хранения видеосигнала.
Более того, когда настоящая система используется в качестве устройства кодирования видео, то программа 532 кодирования видео загружается в память 51, CPU 50 последовательно извлекает и исполняет инструкции программы 532 кодирования видео, загруженной в память 51, кодирует видеосигнал, хранящийся в модуле 52 хранения видеосигнала, используя методику, описанную в варианте осуществления настоящего изобретения, и сохраняет битовый поток в качестве результата кодирования в модуле 54 хранения закодированного потока. В качестве альтернативы битовый поток может выводиться на внешнее устройство посредством интерфейса, такого как сетевой адаптер.
Более того, когда настоящая система используется в качестве устройства декодирования видео, то программа 533 декодирования видео загружается в память 51, CPU 50 последовательно извлекает и исполняет инструкции программы 533 декодирования видео, загруженной в память 51, декодирует битовый поток, хранящийся в модуле 54 хранения закодированного потока, используя методику, описанную в варианте осуществления настоящего изобретения, и сохраняет видеосигнал в качестве результата декодирования в модуле 52 хранения видеосигнала. В качестве альтернативы, видеосигнал как результат декодирования выводится на внешнее устройство воспроизведения.
В частности, вариант осуществления настоящего изобретения используется в процессе контурного фильтра в программе 532 кодирования видео и программе 533 декодирования видео, и часть программы данного процесса контурного фильтра может совместно использоваться программой 532 кодирования видео и программой 533 декодирования видео.
Несмотря на то что варианты осуществления настоящего изобретения были подробно описаны выше со ссылкой на чертежи, конкретная конфигурация не ограничивается этими вариантами осуществления и также включены исполнения и т.п. (дополнение, пропуск, замена и прочие модификации конфигурации), которые не выходят из сущности настоящего изобретения. Настоящее изобретение не ограничивается приведенным выше описанием, а ограничивается только прилагаемой формулой изобретения.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
Например, настоящее изобретение может использоваться для уменьшения шума во время создания изображения и уменьшения повреждения поврежденного изображения. Настоящее изобретение может снизить вычислительную сложность фильтра шумоподавления, при этом сдерживая снижение эффективности кодирования.
ОПИСАНИЕ ПОЗИЦИОННЫХ ОБОЗНАЧЕНИЙ
10, 11, 12, 13, 14 устройство обработки изображения
101, 111, 121, 131, 141 модуль обработки фильтра шумоподавления
102, 112, 122, 132, 142 модуль обнаружения направления границы
103, 113, 123, 133, 143 модуль установки формы поиска
104, 114, 124, 134, 144 модуль исполнения фильтра NLM
115 модуль вычисления коэффициента шумоподавления
125, 135, 145 модуль хранения формы поиска
126, 136, 146 модуль хранения формы шаблона
137, 147 модуль установки коэффициента шумоподавления
138, 148 модуль обнаружения степени отклонения
139, 149 модуль установки формы шаблона
1410 модуль повторной установки формы шаблона
Изобретение относится к технологиям обработки изображений. Техническим результатом является снижение вычислительной сложности процесса удаление шума целевого пикселя. Предложен способ обработки изображения. Способ включает в себя этап, на котором сравнивают шаблоны, один из которых является источником сравнения для целевого пикселя шумоподавления в целевом изображении шумоподавления, а другой является шаблоном для каждой из точек поиска, которые являются целями поиска в форме поиска в целевом изображении шумоподавления. Далее, согласно способу удаляют шум целевого пикселя с помощью весового коэффициента в соответствии со степенью сходства между шаблонами и взвешенной суммой пиксельных значений в точках поиска. Кроме того, вычисляют направление границы, используя целевое изображение шумоподавления. Устанавливают форму поиска, в которой количество точек поиска вдоль направления, которое перпендикулярно направлению границы, меньше количества точек поиска вдоль направления границы, используя вычисленное направление границы в качестве индекса, используемого для ограничения формы поиска. 6 н. и 2 з.п. ф-лы, 34 ил., 1 табл.
1. Способ обработки изображения, который выполняет сравнение шаблонов между шаблоном, который является источником сравнения для целевого пикселя шумоподавления в целевом изображении шумоподавления, и шаблоном для каждой из точек поиска, которые являются целями поиска в форме поиска в целевом изображении шумоподавления, и удаляет шум целевого пикселя с помощью весового коэффициента в соответствии со степенью сходства между шаблонами и взвешенной суммой пиксельных значений в точках поиска, причем способ содержит этапы, на которых:
вычисляют направление границы, используя целевое изображение шумоподавления;
устанавливают форму поиска, в которой количество точек поиска вдоль направления, которое перпендикулярно направлению границы, меньше количества точек поиска вдоль направления границы, используя вычисленное направление границы в качестве индекса, используемого для ограничения формы поиска; и
исполняют процесс выполнения сравнения шаблонов только для точек поиска внутри установленной формы поиска и удаления шума целевого пикселя.
2. Устройство обработки изображения, которое выполняет сравнение шаблонов между шаблоном, который является источником сравнения для целевого пикселя шумоподавления в целевом изображении шумоподавления, и шаблоном для каждой из точек поиска, которые являются целями поиска в форме поиска в целевом изображении шумоподавления, и удаляет шум целевого пикселя с помощью весового коэффициента в соответствии со степенью сходства между шаблонами и взвешенной суммой пиксельных значений в точках поиска, причем устройство содержит:
модуль обнаружения направления границы, который вычисляет направление границы, используя целевое изображение шумоподавления;
модуль установки формы поиска, который устанавливает форму поиска, в которой количество точек поиска вдоль направления, которое перпендикулярно направлению границы, меньше количества точек поиска вдоль направления границы, используя вычисленное направление границы в качестве индекса, используемого для ограничения формы поиска; и
модуль исполнения фильтра, который исполняет процесс выполнения сравнения шаблонов только для точек поиска внутри установленной формы поиска и удаления шума целевого пикселя.
3. Способ фильтрования видео, используя контурный фильтр,
причем контурный фильтр является фильтром, который удаляет шум декодированного изображения, используя способ обработки изображения, который выполняет сравнение шаблонов между шаблоном, который является источником сравнения для целевого пикселя шумоподавления в декодированном изображении, и шаблоном для каждой из точек поиска, которые являются целями поиска в форме поиска в декодированном изображении, и удаляет шум целевого пикселя с помощью весового коэффициента в соответствии со степенью сходства между шаблонами и взвешенной суммой пиксельных значений в точках поиска,
причем упомянутый способ исполняет этапы, на которых:
вычисляют направление границы, используя декодированное изображение;
устанавливают форму поиска, в которой количество точек поиска вдоль направления, перпендикулярного направлению границы, меньше количества точек поиска вдоль направления границы, используя вычисленное направление границы в качестве индекса, используемого для ограничения формы поиска; и
исполняют процесс выполнения сравнения шаблонов только для точек поиска внутри установленной формы поиска и удаления шума целевого пикселя.
4. Способ по п. 3, в котором контурный фильтр дополнительно исполняет этапы, на которых:
вычисляют степень отклонения целевого пикселя от соседнего пикселя целевого пикселя, используя декодированное изображение; и
ограничивают форму шаблона таким образом, что чем ниже степень отклонения относительно максимального значения степени отклонения внутри декодированного изображения, тем меньше форма шаблона, используя степень отклонения в качестве индекса для ограничения формы шаблона шаблонов.
5. Устройство фильтрования видео, используя контурный фильтр,
причем контурный фильтр является фильтром, который удаляет шум декодированного изображения, используя устройство обработки изображения, которое выполняет сравнение шаблонов между шаблоном, который является источником сравнения для целевого пикселя шумоподавления в декодированном изображении шумоподавления, и шаблоном для каждой из точек поиска, которые являются целями поиска в форме поиска в декодированном изображении, и удаляет шум целевого пикселя с помощью весового коэффициента в соответствии со степенью сходства между упомянутыми шаблонами и взвешенной суммой пиксельных значений в точках поиска,
причем упомянутое устройство содержит:
модуль обнаружения направления границы, который вычисляет направление границы, используя декодированное изображение;
модуль установки формы поиска, который устанавливает форму поиска, в которой количество точек поиска вдоль направления, перпендикулярного направлению границы, меньше количества точек поиска вдоль направления границы, используя вычисленное направление границы в качестве индекса, используемого для ограничения формы поиска; и
модуль исполнения фильтра, который исполняет процесс выполнения сравнения шаблонов только для точек поиска внутри установленной формы поиска и удаления шума целевого пикселя.
6. Устройство по п. 5, в котором контурный фильтр дополнительно содержит:
модуль вычисления степени отклонения, который вычисляет степень отклонения целевого пикселя от соседнего пикселя целевого пикселя, используя декодированное изображение; и
модуль установки формы шаблона, который ограничивает форму шаблона таким образом, что чем ниже степень отклонения относительно максимального значения степени отклонения внутри декодированного изображения, тем меньше форма шаблона, используя степень отклонения в качестве индекса для ограничения формы шаблона шаблонов.
7. Считываемый компьютером носитель, хранящий инструкции, которые заставляют компьютер исполнять способ обработки изображения по п. 1.
8. Считываемый компьютером носитель, хранящий инструкции, которые заставляют компьютер исполнять способ по п. 3.
Колосоуборка | 1923 |
|
SU2009A1 |
Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок | 1923 |
|
SU2008A1 |
Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок | 1923 |
|
SU2008A1 |
Приспособление для суммирования отрезков прямых линий | 1923 |
|
SU2010A1 |
СПОСОБ И СООТВЕТСТВУЮЩЕЕ УСТРОЙСТВО ДЛЯ ФИЛЬТРАЦИИ ЦИФРОВЫХ ВИДЕОИЗОБРАЖЕНИЙ | 2006 |
|
RU2358410C2 |
СПОСОБ УДАЛЕНИЯ ИСКАЖЕНИЙ НА ЦИФРОВЫХ ИЗОБРАЖЕНИЯХ | 2008 |
|
RU2402070C2 |
СПОСОБ И УСТРОЙСТВО ВИДЕООБРАБОТКИ И НОСИТЕЛЬ ДАННЫХ, КОТОРЫЙ ХРАНИТ ПРОГРАММУ | 2007 |
|
RU2408159C1 |
Авторы
Даты
2015-10-20—Публикация
2012-03-07—Подача