Основывающиеся на множестве слоев способ кодирования/декодирования и видеокодер/декодер, в которых используется сглаживающее предсказание
Иллюстрации
Показать всеНастоящее изобретение относится к технологии видеокодирования и, более конкретно, к способу и устройству для сокращения артефактов, связанных с разбиением на блоки, во время остаточного предсказания при основывающемся на множестве слоев видеокодировании. Технический результат заключается в повышении эффективности кодирования. Основывающийся на множестве слоев способ видеокодирования содержит этапы, на которых получают различие между предсказанным блоком для второго блока нижерасположенного слоя, который соответствует первому блоку, включенному в текущий слой, и вторым блоком, прибавляют полученное различие к предсказанному блоку для первого блока, сглаживают третий блок, сгенерированный в результате прибавления, используя сглаживающую функцию, и кодируют различие между первым блоком и сглаженным третьим блоком. 7 н. и 22 з.п. ф-лы, 12 ил., 1 табл.
Реферат
Перекрестная ссылка на родственные заявки
По данной заявке испрашивается приоритет корейской патентной заявки № 10-2006-0022871, поданной 10 марта 2006 г. в Корейское Ведомство по Интеллектуальной Собственности, и предварительных заявок № 60/758227 и № 60/760401 на патент США, поданных 12 января 2006 и 20 января 2006, соответственно, в Ведомство США по Патентам и Товарным Знакам, раскрытия которых во всей своей полноте включены в материалы настоящей заявки.
Область техники, к которой относится изобретение
Настоящее изобретение относится к технологии видеокодирования и, более конкретно, к способу и устройству для сокращения артефактов, связанных с разбиением на блоки, во время остаточного предсказания при основывающемся на множестве слоев видеокодировании.
Предшествующий уровень техники
С развитием информационных и коммуникационных технологий нарастает интенсивность мультимедийной связи, а также текстовой и речевой связи. Существующие ориентированные на текст системы связи являются недостаточными для удовлетворения разнообразных потребностей потребителей, что обуславливает рост мультимедийных услуг, которые могут охватывать разнообразные формы информации, такие как текст, изображения, музыка и т.п. Поскольку мультимедийные данные являются достаточно объемными, для их хранения и передачи, соответственно, требуются носители данных большой емкости и широкие полосы пропускания. Следовательно, для передачи мультимедийных данных требуются методики кодирования со сжатием.
Базовый принцип, лежащий в основе сжатия данных, заключается в удалении избыточности в данных. Данные могут быть сжаты посредством удаления пространственной избыточности, такой как повторение одного и того же цвета или объекта в изображениях, временной избыточности, такой как подобные соседние кадры в движущихся изображениях или непрерывное повторение звуков, и визуально/перцепционной избыточности, при которой учитывается нечувствительность человека к высоким частотам. Согласно общему способу видеокодирования временная избыточность удаляется посредством временной фильтрации на основе компенсации движения, а пространственная избыточность удаляется посредством пространственного преобразования.
Для передачи мультимедиа, после того как избыточность в данных удалена, требуются среды передачи, рабочие характеристики которых отличаются. Используемые на текущий момент среды передачи имеют различные скорости передачи. Например, сверхвысокоскоростная коммуникационная сеть может передавать несколько десятков мегабит данных в секунду, а скорость передачи сети мобильной связи равна 384 килобит в секунду. Для поддержки сред передачи в таком окружении передачи и для передачи мультимедиа со скоростью передачи, подходящей для этого окружения передачи, наиболее подходящим является способ масштабируемого видеокодирования.
Способ масштабируемого видеокодирования является способом кодирования, которым можно регулировать видеоразрешение, частоту смены кадров и отношение “сигнал-шум”, т.е. способом кодирования, в котором поддерживаются разнообразные виды масштабируемости, посредством отсечения части сжатого битового потока в соответствии с периферийными условиями, такими как битовая скорость передачи, частота ошибок при передаче и системные ресурсы.
В рамках текущего стандарта масштабируемого видеокодирования, который продвигается Объединенной группой по вопросам видео (JVT), которая представляет собой объединенную рабочую группу Группы экспертов по вопросам движущегося изображения (MPEG) и Международного союза телекоммуникаций (ITU), полным ходом ведется исследование для реализации многослойной масштабируемости, основываясь на Н.264 (что в дальнейшем упоминается как “масштабируемое расширение Н.264 (SE)”).
SE Н.264 и многоуровневый масштабируемый видеокодек в основном поддерживают четыре режима предсказания: внешнее предсказание, направленное внутреннее предсказание (в дальнейшем упоминаемое как “внутреннее предсказание”), остаточное предсказание и внутреннее базовое предсказание. “Предсказание” означает методику отображения сжатым образом исходных данных, используя предсказанные данные, сгенерированные на основе информации, которая совместно доступна в кодере и декодере.
Среди четырех режимов предсказания режим внешнего предсказания представляет собой режим предсказания, который в общем используется даже в существующем однослойном видеокодеке. Внешнее предсказание, как проиллюстрировано на Фиг.1, представляет собой способ для поиска блока, который наиболее подобен некоторому блоку (т.е. текущему блоку), из по меньшей мере одного опорного кадра, получения предсказанного блока, который может наилучшим образом выразить текущий блок на основе найденного блока, и последующего квантования различия между текущим блоком и предсказанным блоком.
Внешнее предсказание классифицируется на двунаправленное предсказание, для которого используются два опорных кадра, предсказание в прямом направлении, для которого используется предшествующий опорный кадр, и предсказание в обратном направлении, для которого используется последующий опорный кадр.
С другой стороны, внутреннее предсказание представляет собой методику, которая тоже используется в однослойном кодеке, например, соответствующем Н.264. Внутреннее предсказание является способом для предсказания текущего блока, используя пиксели, смежные с текущим блоком, среди соседних блоков текущего блока. Внутреннее предсказание отличается от других способов предсказания тем, что в нем используется только информация в текущем кадре и не осуществляется обращение к другим кадрам на том же слое или кадрам других слоев.
Внутреннее базовое предсказание может использоваться в случае, когда текущий кадр имеет кадр нижерасположенного слоя (в дальнейшем упоминаемый как “базовый кадр”), имеющий ту же самую позицию во времени. Как показано на Фиг.2, макроблок текущего кадра может быть эффективно предсказан на основе макроблока базового кадра, который соответствует макроблоку текущего кадра. Иными словами, для предсказания используется различие между макроблоком текущего кадра и макроблоком базового кадра.
Если разрешение, соответствующее нижерасположенному слою, и разрешение, соответствующее текущему слою, отличаются друг от друга, макроблок базового кадра следует передискретизовать с повышением частоты дискретизации с разрешением, соответствующим текущему слою, перед тем, как будет получено различие. Внутреннее базовое предсказание является эффективным для видео, для которого характерно очень быстрое перемещение, или видео, в котором имеет место смена сцен.
Наконец, внешнее предсказание с остаточным предсказанием (в дальнейшем упоминаемое как “остаточное предсказание”) представляет собой режим предсказания, посредством которого существующее однослойное внешнее предсказание расширяется до многослойной формы. Как показано на Фиг.3, согласно остаточному предсказанию различие, генерируемое в процессе внешнего предсказания текущего слоя, не квантуют непосредственно, но получают и квантуют различие между упомянутым различием и различием, сгенерированным в выполняемом в отношении нижерасположенного слоя процессе внешнего предсказания.
При рассмотрении характеристик разнообразных видеопоследовательностей выбирается один эффективный способ из четырех вышеописанных способов предсказания для каждого макроблока, образующего кадр. Например, в видеопоследовательности, для которой характерно медленное движение, в основном будут выбираться внешнее предсказание и остаточное предсказание, в то время как в видеопоследовательности, для которой характерно быстрое движение, в основном будет выбираться внутреннее базовое предсказание.
Многослойный видеокодек имеет относительно сложную структуру предсказания по сравнению с однослойным видеокодеком. Также, поскольку в многослойном видеокодеке в основном используется структура с незамкнутым контуром, многочисленные артефакты, связанные с разбиением на блоки, имеют место в многослойном видеокодеке по сравнению с однослойным видеокодеком. В частности, в случае вышеизложенного остаточного предсказания используется остаточный сигнал кадра нижерасположенного слоя и, если имеется значительное отличие между этим остаточным сигналом и характеристикой предсказанного внешним предсказанием сигнала текущего кадра, может возникнуть сильное искажение.
Напротив, во время внутреннего базового предсказания предсказанный сигнал макроблока текущего кадра, т.е. макроблока базового слоя, является не исходным сигналом, а сигналом, который был квантован и восстановлен. Соответственно, этот предсказанный сигнал может быть совместно получен как в кодере, так и в декодере и, таким образом, рассогласования между кодером и декодером нет. В частности, поскольку различие между макроблоком базового кадра и макроблоком текущего кадра получают после применения сглаживающего фильтра к предсказанному сигналу, количество связанных с разбиением на блоки артефактов в значительной степени сокращается.
Однако согласно условию декодирования с низкой сложностью и условию декодирования за один цикл, которые приняты в качестве рабочего проекта SE H.264, на использование внутреннего базового предсказания накладывается ограничение. Иными словами, согласно SE H.264 внутреннее базовое предсказание может использоваться только тогда, когда удовлетворено заданное условие, так что, хотя кодирование выполняется многослойным образом, декодирование может быть выполнено образом, аналогичным однослойному видеокодеку.
Согласно условию декодирования с низкой сложностью внутреннее базовое предсказание используется только тогда, когда соответствующий макроблоку нижерасположенного слоя тип макроблока, который соответствует некоторому макроблоку текущего слоя, относится к режиму внутреннего предсказания или режиму внутреннего базового предсказания. Напротив, поскольку внутреннее базовое предсказание используется при ограниченных обстоятельствах, показатели эффективности для видео, для которого характерно быстрое движение, в значительной степени снижаются.
Соответственно, в случае использования внешнего предсказания или остаточного предсказания в соответствии с условием низкой сложности или другими условиями требуется методика, которая позволит сократить разного рода искажения, такие как рассогласование между кодером и декодером и связанные с разбиением на блоки артефакты.
Сущность изобретения
Соответственно, настоящее изобретение было создано для решения вышеупомянутых проблем, характерных для предшествующего уровня техники, и аспектом настоящего изобретения является повышение эффективности кодирования во время внешнего предсказания или остаточного предсказания в основывающемся на множестве слоев видеокодеке.
Дополнительные преимущества и признаки изобретения излагаются частично в описании, которое следует ниже, и частично станут очевидными для специалиста в данной области техники при рассмотрении нижеследующего или могут быть изучены при практическом использовании изобретения.
Согласно аспекту настоящего изобретения предоставляется способ видеокодирования, который включает в себя получение различия между предсказанным блоком для второго блока нижерасположенного слоя, который соответствует первому блоку, включенному в текущий слой, и вторым блоком; прибавление полученного различия к предсказанному блоку для первого слоя; сглаживание третьего блока, сгенерированного в результате упомянутого прибавления, с использованием сглаживающей функции; и кодирование различия между первым блоком и сглаженным третьим блоком.
Согласно другому аспекту настоящего изобретения предоставляется способ генерирования битового потока, который включает в себя сглаживание предсказанного сигнала для первого блока, включенного в текущий слой; кодирование различия между первым блоком и сглаженным предсказанным сигналом; и генерирование битового потока, который включает в себя кодированное различие и первый флаг, указывающий, было ли применено сглаживание.
Согласно еще одному аспекту настоящего изобретения предоставляется способ видеодекодирования, который включает в себя восстановление остаточных данных первого блока из данных текстуры первого блока текущего кадра, включенного во входной битовый поток; восстановление остаточного сигнала для второго блока базового слоя, который включен в битовый поток и соответствует данному блоку; прибавление остаточного сигнала для второго блока к предсказанному блоку для первого блока; сглаживание третьего блока, сгенерированного в результате упомянутого прибавления, с использованием сглаживающего фильтра; и прибавление остаточного сигнала для первого блока к сглаженному третьему блоку.
Согласно еще одному аспекту настоящего изобретения предоставляется способ видеодекодирования, который включает в себя восстановление остаточных данных первого блока из данных текстуры первого блока текущего кадра, включенного во входной битовый поток; восстановление остаточного сигнала для второго блока базового слоя, который включен в битовый поток и соответствует данному блоку; прибавление первого остаточного сигнала ко второму остаточному сигналу; сглаживание предсказанного внешним предсказанием блока для первого блока с использованием сглаживающего фильтра; и прибавление результата упомянутого прибавления к сглаженному предсказанному внешним предсказанием блоку.
Согласно еще одному аспекту настоящего изобретения предоставляется видеокодер, который включает в себя секцию, которая получает различие между предсказанным блоком для второго блока нижерасположенного слоя, который соответствует первому блоку, включенному в текущий слой, и вторым блоком; секцию, которая прибавляет полученное различие к предсказанному блоку для первого блока; секцию, которая сглаживает третий блок, сгенерированный в результате упомянутого прибавления, с использованием сглаживающей функции; и секцию, которая кодирует различие между первым блоком и сглаженным третьим блоком.
Согласно еще одному аспекту настоящего изобретения предоставляется видеодекодер, который включает в себя секцию, которая восстанавливает остаточные данные первого блока из данных текстуры первого блока текущего кадра, включенного во входной битовый поток; секцию, которая восстанавливает остаточный сигнал для второго блока базового слоя, который включен в битовый поток и соответствует данному блоку; секцию, которая прибавляет остаточный сигнал для второго блока к предсказанному блоку для первого блока; секцию, которая сглаживает третий блок, сгенерированный в результате упомянутого прибавления, с использованием сглаживающей функции; и секцию, которая прибавляет остаточный сигнал для первого блока к сглаженному третьему блоку.
Перечень фигур чертежей
Вышеуказанные и другие аспекты, признаки и преимущества настоящего изобретения станут более понятны из нижеследующего подробного описания, приводимого в сочетании с сопровождающими чертежами, на которых:
Фиг.1 - вид, поясняющий известную методику внешнего предсказания.
Фиг.2 - вид, поясняющий известную методику внутреннего базового предсказания.
Фиг.3 - вид, поясняющий известную методику остаточного предсказания.
Фиг.4 - вид, поясняющий методику сглаживающего предсказания согласно иллюстративному варианту осуществления настоящего изобретения.
Фиг.5-8 - виды, иллюстрирующие примеры применения сглаживающего фильтра на уровне макроблока.
Фиг.9 - график, иллюстрирующий PSNR, полученное с использованием другого адаптивного фильтра, на основе PSNR, полученного с использованием сглаживающего фильтра 1:2:1.
Фиг.10 - блок-схема, иллюстрирующая конструкцию видеокодера согласно иллюстративному варианту осуществления настоящего изобретения.
Фиг.11 - блок-схема, иллюстрирующая конструкцию видеодекодера согласно иллюстративному варианту осуществления настоящего изобретения.
Фиг.12 - блок-схема, иллюстрирующая конструкцию видеодекодера согласно еще одному иллюстративному варианту осуществления настоящего изобретения.
Подробное описание иллюстративных вариантов осуществления
Ниже подробно описываются иллюстративные варианты осуществления настоящего изобретения со ссылкой на сопровождающие чертежи. Аспекты и признаки настоящего изобретения и способы для реализации этих аспектов и признаков станут очевидны при рассмотрении вариантов осуществления, подробно описываемых со ссылкой на сопровождающие чертежи. Однако настоящее изобретение не ограничивается нижеописываемыми вариантами осуществления, но может быть реализовано в разнообразных формах. Информация, приведенная в описании, такая как детали конструкции и элементы, просто представлена для содействия специалистам в данной области техники во всеобъемлющем понимании изобретения, и объем настоящего изобретения определяется только прилагаемой формулой изобретения. По всему описанию настоящего изобретения одни и те же ссылочные номера на чертежах используются для одинаковых элементов по всем чертежам.
Если блоком текущего кадра является OF, предсказанным блоком, получаемым посредством выполнения внешнего предсказания в отношении этого блока, является PF, блоком базового слоя, соответствующим упомянутому блоку текущего кадра, является OB, а предсказанным блоком, получаемым посредством выполнения внешнего предсказания в отношении базового кадра, является PB, остаточный сигнал RB, который соответствует OB, получают из OB - PB.
В этом случае OB, PB и RB являются значениями, которые уже квантованы и восстановлены, а OF и PF являются исходными сигналами в случае структуры с незамкнутым контуром, при этом они представляют собой значения, которые квантованы и восстановлены. Если подлежащее кодированию значение в текущем кадре есть RF, остаточное предсказание может быть выражено уравнением (1). В уравнении (1) U обозначает функцию передискретизации с повышением частоты дискретизации. Поскольку функция передискретизации с повышением частоты дискретизации применяется только тогда, когда разрешения текущего слоя и нижерасположенного слоя отличаются друг от друга, она обозначается как {U} в том смысле, что она может быть применена выборочно.
(1)
С другой стороны, внутреннее базовое предсказание может быть выражено с помощью уравнения (2).
(2)
При сравнении уравнения (1) с уравнением (2) может показаться, что они не имеют общего признака. Тем не менее, посредством повторного выражения их посредством уравнения (3) и уравнения (4) их сходства можно сравнивать друг с другом.
(3)
(4)
В уравнении (4) В обозначает функцию обращенного разбиения на блоки. При сравнении уравнений (3) и (4) видно, что RB используется и в уравнении (3), и в уравнении (4). Наибольшее различие между ними заключается в том, что предсказанный внешним предсказанием блок PF текущего слоя используется в уравнении (3), и предсказанный внешним предсказанием блок PB нижерасположенного слоя используется в уравнении (4). В случае внутреннего базового предсказания, если применяются функция обращенного разбиения на блоки и функция передискретизации с повышением частоты дискретизации, изображение восстановленного кадра становится более гладким, и, таким образом, сокращается количество артефактов, связанных с разбиением на блоки.
Напротив, в уравнении (3) остаточный сигнал RB базового кадра, полученный из PB, прибавляется к предсказанному внешним предсказанием блоку PF текущего кадра, и, таким образом, взаимная несогласованность или связанные с разбиением на блоки артефакты могут иметь место. Хотя данная проблема может быть смягчена, если используется внутреннее базовое предсказание, внутреннее базовое предсказание не может быть использовано даже в том случае, когда эффективность внутреннего базового предсказания не выше, чем эффективность остаточного предсказания. Также, в случае, когда применяется условие декодирования с низкой сложностью, количество блоков, для которых внутреннее базовое предсказание не используется, увеличивается даже в ситуации, когда внутреннее базовое предсказание является более эффективным, и это обуславливает значительное ухудшение рабочих показателей. Соответственно, требуется выработать надлежащие меры, с помощью которых можно было бы сократить связанные с разбиением на блоки артефакты в случае, когда используется остаточное предсказание.
В настоящем изобретении существующее остаточное предсказание дополняется прибавлением сглаживающей функции F к уравнению (3). Согласно настоящему изобретению подлежащие квантованию данные RF текущего блока выражаются уравнением (5).
(5)
Режим предсказания согласно уравнению (5) может быть в чистом виде применен к внешнему предсказанию. Иными словами, в случае внешнего предсказания можно считать, что RB равно нулю, и, таким образом, RF можно выразить уравнением (6).
(6)
Касаемо уравнений (5) и (6) методика, задействующая сглаживающий фильтр в течение существующего остаточного предсказания или внешнего предсказания, определена как “сглаживающее предсказание”. Подробности процесса выполнения сглаживающего предсказания будут пояснены со ссылкой на Фиг.4. Пример процесса кодирования некоторого блока 20 текущего кадра (в дальнейшем упоминаемого как “текущий блок”) дается на Фиг.4. Блок 10 в базовом кадре, который соответствует текущему блоку 20, в дальнейшем будет упоминаться как “базовый блок”.
Сначала предсказанный внешним предсказанием блок 13 для базового блока 10 генерируется из блоков 11 и 12 в периферийных опорных кадрах (т.е. опорном кадре прямого направления, опорном кадре обратного направления и других) соответствующего нижерасположенного слоя посредством базового блока 10 и векторов движения (S1). Затем получают различие между базовым блоком и предсказанным блоком 13 (соответствующим RB в уравнении (5)) (S2). Также генерируют предсказанный внешним предсказанием блок 23 для базового блока 20 (соответствующий PF в уравнении (5)) на основе блоков 21 и 22 в периферийных опорных кадрах соответствующего текущего слоя посредством базового блока 20 и векторов движения (S3). Этап S3 может выполняться перед этапами S1 и S2. В общем случае, “предсказанный внешним предсказанием блок” означает предсказанный блок для некоторого блока в подлежащем кодированию кадре, который получен из изображения (изображений) опорных кадров, соответствующих этому некоторому блоку. Соответствие блока изображению указывается вектором движения. В общем, предсказанный внешним предсказанием блок, если имеется один опорный кадр, означает само соответствующее изображение или взвешенную сумму соответствующих изображений, если имеется множество опорных кадров.
Далее предсказанный блок 23 и различие, полученное на этапе S2, складываются друг с другом (S4), и блок, сгенерированный в результате такого сложения (соответствующий PF + RB в уравнении (5)), сглаживается с использованием сглаживающего фильтра (S5). Наконец, получают различие между текущим блоком 20 и блоком, сгенерированным в результате сглаживания (соответствующим F(PF + RB) в уравнении (5)) (S6), а затем полученное различие квантуют (S7).
Фиг.4 иллюстрирует процесс сглаживающего предсказания, основывающегося на остаточном предсказании. Основывающийся на внешнем предсказании процесс сглаживающего предсказания значительно проще, чем таковой процесс, основывающийся на остаточном предсказании. А именно, поскольку RB, относящийся к вычислению нижерасположенного слоя на Фиг.5, опускается, все из проиллюстрированных на Фиг.4 этапов S1, S2 и S3 опускаются. Соответственно, предсказанный внешним предсказанием блок 23, сгенерированный на текущем слое, сглаживается посредством сглаживающего фильтра, а затем различие между текущим блоком 20 и блоком, сгенерированным в результате сглаживания (соответствующим F(PF) в уравнении (6)), квантуют.
С другой стороны, важным аспектом также является то, какой сглаживающий фильтр F на самом деле применяется при сглаживающем предсказании. В качестве сглаживающего фильтра F можно использовать известный фильтр В обращенного разбиения на блоки. Также может использоваться комбинация функции U передискретизации с повышением частоты дискретизации и функции D передискретизации с понижением частоты дискретизации, поскольку эффекта сглаживания можно также добиться посредством комбинирования функции передискретизации с повышением частоты дискретизации и функции передискретизации с понижением частоты дискретизации.
Однако, поскольку функция В обращенного разбиения на блоки, функция передискретизации с повышением частоты дискретизации и функция передискретизации с понижением частоты дискретизации требуют значительного объема вычислений, а функция передискретизации с понижением частоты дискретизации обычно служит в качестве весьма сильного фильтра нижних частот имеется вероятность того, что качество деталей изображения в значительной степени ухудшается во время предсказания.
Соответственно, требуется, чтобы процесс применения сглаживающего фильтра выполнялся с малым объемом вычислений. Для этой цели сглаживающий фильтр F может быть просто выражен как линейная функция среди заранее определенного количества соседних пикселей. Например, если это заранее определенное количество равно трем, значение x'(n) пикселя, который отфильтрован из исходного значения x(n) пикселя посредством сглаживающего фильтра F, может быть выражено уравнением (7).
Значения α, β, γ могут быть надлежащим образом выбраны так, чтобы их сумма была равной 1. Например, выбирая α = ј, β = Ѕ, γ = ј в уравнении (7), значение веса соответствующего пикселя, подлежащего фильтрации, может быть увеличено по сравнению с соседними пикселями. Естественно, можно выбрать большее количество пикселей в уравнении (7).
Используя сглаживающий фильтр F, имеющий простую форму, как описано выше, объем вычислений может быть значительно сокращен, и ухудшение деталей изображения, имеющее место при передискретизации с понижением частоты дискретизации и т.п., может быть также уменьшено.
Фиг.5-8 - это представления, иллюстрирующие примеры применения сглаживающего фильтра в отношении макроблока 60 16 × 16.
Согласно варианту осуществления настоящего изобретения сглаживающий фильтр применяется к соответствующему макроблоку 60 на четырех этапах следующим образом. Со ссылкой на Фиг.5 далее поясняется первый этап среди этих четырех этапов.
Сначала задается горизонтальное окно 50, имеющее размер, который соответствует трем соседствующим пикселям, расположенным в горизонтальном направлении, и сглаживающий фильтр F, который представляет собой линейную функцию, применяется к этим исходным трем соседствующим пикселям, включенным в горизонтальное окно 50. После того как сглаживающий фильтр F применен, горизонтальное окно 50 перемещается на один пиксель в горизонтальном направлении, и сглаживающий фильтр F применяется снова. Вышеописанный процесс повторяется и, если горизонтальное окно 50 достигает правой границы макроблока 60, горизонтальное окно возвращается в свою исходную позицию и перемещается на один пиксель в направлении вниз, а затем сглаживающий фильтр F применяется вновь по мере того, как горизонтальное окно перемещается в горизонтальном направлении. Этот процесс выполняется для всего макроблока 60. На первом этапе фильтрация выполняется 224 (= 14 (по ширине) × 16 (по длине)) раза по отношению к одному макроблоку.
Далее со ссылкой на Фиг.6 поясняется второй этап среди упомянутых четырех этапов.
Задается вертикальное окно 51, имеющее размер, который соответствует трем соседствующим пикселям, расположенным в вертикальном направлении, и сглаживающий фильтр F, который представляет собой линейную функцию, применяется к этим исходным трем соседствующим пикселям, включенным в вертикальное окно. После того, как сглаживающий фильтр F применен, вертикальное окно 51 перемещается на один пиксель в горизонтальном направлении, и сглаживающий фильтр применяется снова. Вышеописанный процесс повторяется, и если вертикальное окно достигает правой границы макроблока 60, вертикальное окно 51 возвращается в свое исходное положение и перемещается на один пиксель в направлении вниз, а затем сглаживающий фильтр применяется вновь по мере того, как вертикальное окно перемещается в горизонтальном направлении. Этот процесс выполняется для всего макроблока 60. На втором этапе фильтрация выполняется 224 (= 14 (по ширине) × 16 (по длине)) раза по отношению к одному макроблоку.
Посредством рассмотренных первого этапа и второго этапа применение сглаживающего фильтра F к пикселям внутри макроблока 60, которые не являются смежными границе макроблока, завершается. Далее требуется применение сглаживающего фильтра к пикселям, примыкающим к верхней границе макроблока 60, и применение сглаживающего фильтра к пикселям, примыкающим к левой границе макроблока 60.
Далее со ссылкой на Фиг.7 поясняется третий этап, который соответствует процессу фильтрации в отношении левой границы, среди упомянутых четырех этапов.
Задается горизонтальное окно 53, имеющее размер, который соответствует трем соседствующим пикселям, расположенным в горизонтальном направлении, так что верхний левый пиксель макроблока 60 располагается в центре горизонтального окна 53. Затем сглаживающий фильтр F, который представляет собой линейную функцию, применяется к этим трем исходным соседствующим пикселям, включенным в горизонтальное окно 53. После того, как сглаживающий фильтр F применен, горизонтальное окно 53 перемещается на один пиксель в вертикальном направлении, и сглаживающий фильтр F применяется снова. Вышеописанный процесс повторяется до тех пор, пока горизонтальное окно 53 не достигнет нижней границы макроблока 60. На третьем этапе фильтрация выполняется 16 раз по отношению к одному макроблоку.
Наконец, со ссылкой на Фиг.8 поясняется четвертый этап, который соответствует процессу фильтрации в отношении верхней границы, среди упомянутых четырех этапов.
Задается вертикальное окно 54, имеющее размер, который соответствует трем соседствующим пикселям, расположенным в вертикальном направлении, так что верхний левый пиксель макроблока 60 располагается в центре вертикального окна 54. Затем сглаживающий фильтр F, который представляет собой линейную функцию, применяется к этим трем исходным соседствующим пикселям, включенным в вертикальное окно 54. После того, как сглаживающий фильтр F применен, вертикальное окно 54 перемещается на один пиксель в горизонтальном направлении, и сглаживающий фильтр F применяется снова. Вышеописанный процесс повторяется до тех пор, пока вертикальное окно 54 не достигнет правой границы макроблока 60. На четвертом этапе фильтрация выполняется 16 раз по отношению к одному макроблоку.
Изменение порядка соответствующих четырех этапов не окажет значительного влияния на эффекты, достигаемые согласно настоящему изобретению. Согласно вариантам осуществления настоящего изобретения, проиллюстрированным на Фиг.5-8, α:β:γ задается как 1:2:1 в уравнении (7). Однако большого различия в достигаемом эффекте, даже при изменении этого соотношения, нет. Это может быть показано по результатам эксперимента, иллюстрируемого Фиг.9.
Фиг.9 представляет собой график, иллюстрирующий PSNR, полученное посредством сжатия той же самой последовательности, используя другой адаптивный фильтр, на основе PSNR, полученного посредством сжатия последовательности “Football CIF”, используя сглаживающий фильтр 1:2:1.
На Фиг.9 график 91 представляет собой результат адаптивного использования сглаживающего фильтра 1:2:1 и сглаживающего фильтра 1:3:1, график 92 представляет собой результат адаптивного использования сглаживающего фильтра 1:2:1 и сглаживающего фильтра 1:14:1, а график 93 представляет собой результат адаптивного использования сглаживающего фильтра 1:2:1 и сглаживающего фильтра 1:6:1. Согласно Фиг.9 можно видеть, что по сравнению со случаем, в котором используется сглаживающий фильтр 1:2:1, PSNR максимально улучшается только приблизительно на 0,005 дБ, даже если используется адаптивный фильтр.
Настоящий вариант осуществления показывает пример, где сглаживающий фильтр применяется в единицах макроблока. Однако для специалистов в данной области техники должно быть в полной мере понятно, что сглаживающий фильтр может применяться в единицах подблока 4 × 4 или в других единицах.
Как описано выше, посредством применения сглаживающего фильтра согласно уравнению (5) проблема, заключающаяся в том, что показатели эффективности кодирования ухудшаются вследствие существующего условия декодирования за один цикл, некоторым образом смягчается. Однако, если используется сглаживающая функция при декодировании за один цикл, предложенном для снижения сложности, то сложность может скорее возрасти.
В предположении, что OF восстанавливается посредством выполнения декодирования согласно уравнению (5), обращенное дискретное косинусное преобразование (DCT) должно быть выполнено по отношению к RB и PF. Для сокращения процесса обращенного DCT во время процесса декодирования может использоваться уравнение (8).
(8)
Согласно уравнению (8) RB, который остается в качестве компонента, являющегося коэффициентом преобразования, не осуществляя отдельный процесс обращенного DCT, прибавляется к остатку текущего блока RB, а затем в отношении него выполняется обращенное DCT в то же время. Соответственно, процесс обращенного DCT не выполняется дважды, а выполняется только один раз, с целью снижения сложности. Также, в случае выполнения декодирования согласно уравнению (5) сглаживающий фильтр применяется к сумме RB и PF, в то время как в случае выполнения декодирования согласно уравнению (8) сглаживающая функция применяется только к предсказанному сигналу PF.
В соответствии с вышеприведенным описанием для применения сглаживающего предсказания согласно варианту осуществления настоящего изобретения к существующему рабочему проекту JSVM-4 (Julien Reichel, Heiko Schwarz и Mathias Wien, “Joint Scalable Video Mode JSVM-4”, встреча JVT, Ницца, Франция) требуется некая модификация в синтаксисе, семантике и процессе декодирования. Во-первых, части, подлежащие модификации в синтаксисе, показаны в Таблице 1. Таблица 1 является частью “Residual in scalable extension syntax”, упоминаемой в Статье G.7.3.8.3 JSVM-4, и подлежащие модификации части подчеркнуты.
[Таблица 1] Часть остатка в синтаксисе масштабируемого расширения
residual_in_scalable_extension(){ | С | Дескриптор |
if(adaptive_prediction_flag && MbPartPredType(mb_type,0) != Intra_16x16 && MbPartPredType(mb_type,0) != Intra_8x8 && MbPartPredType(mb_type, |