Способ управления устранением блочности, учитывающий режим внутреннего bl, и кодировщик/декодер многослойного видео, его использующий
Иллюстрации
Показать всеИзобретение относится к технологии сжатия видео и, более конкретно, к фильтру устранения блочности, используемому в кодере/декодере многослойного видео. Техническим результатом является собственно создание способа выбора интенсивности фильтрации устранения блочности для кадра, содержащего множество блоков, который должным образом выбирает силу фильтра устранения блочности согласно тому, использует ли некоторый блок, к которому фильтр устранения блочности будет применяться, режим внутреннего базового слоя (BL) в кодировщике/декодере видео, базирующемся на множестве слоев. Предложен способ выбора интенсивности фильтрации устранения блочности для кадра, содержащего множество блоков, содержащий этапы: выбора текущего блока и соседнего блока, над которыми будет выполняться фильтрация для устранения блочности; оценки, были ли текущий блок и соседний блок кодированы с помощью режима внутреннего BL; и если, по меньшей мере, один из: текущий блок и соседний блок - кодирован с помощью режима, другого, нежели режим внутреннего BL, выбор заданной интенсивности фильтрации по отношению к границе между текущим блоком и соседним блоком; и если как текущий блок, так и соседний блок были кодированы с помощью режима внутреннего BL, выбор интенсивности фильтрации, которая ниже, чем интенсивность фильтрации, выбранная по отношению к границе. 2 н. и 11 з.п. ф-лы, 19 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к технологии сжатия видео и, более конкретно, к фильтру устранения блочности, используемому в кодировщике/декодере многослойного видео.
Уровень техники
С развитием технологий информации и связи, передачи данных мультимедиа увеличиваются в дополнение к передаче данных текста и речи. Существующие ориентированные на текст системы связи недостаточны для удовлетворения разнообразных желаний потребителей, и, таким образом, увеличиваются в объеме услуги мультимедиа, которые могут обеспечивать разнообразные формы информации, такие как текст, изображение, музыка и другие. Так как данные мультимедиа являются большими, для хранения и передачи данных мультимедиа требуются запоминающие устройства большой емкости и широкие полосы пропускания. Соответственно, требуются сжимающие технологии кодирования, чтобы передавать данные мультимедиа, которые включают в себя текст, изображения и аудиоданные.
Базовый принцип сжатия данных - это удалять избыточность данных. Данные могут сжиматься посредством удаления пространственной избыточности, такой как повторение одного и того же цвета или объекта в изображениях, временной избыточности, такой как маленькое изменение смежных кадров в кадрах движущегося изображения или непрерывное повторение звуков в звуковом сопровождении, и зрительной/воспринимаемой избыточности, которая учитывает нечувствительность зрения и восприятия людей к высоким частотам. В общем способе кодирования видео временная избыточность удаляется посредством временной фильтрации, базирующейся на компенсации движения, и пространственная избыточность удаляется посредством пространственного преобразования.
Чтобы передавать мультимедиа после удаления избыточности данных, требуются носители передачи, чьи производительности различаются. В настоящее время используемые носители передачи имеют разнообразные скорости передачи. Например, сеть связи сверхвысокой скорости может передавать несколько десятков мегабит данных в секунду и мобильная сеть связи имеет скорость передачи, равную 384 килобит в секунду. Чтобы поддерживать носители передачи в такой среде передачи и чтобы передавать мультимедиа со скоростью передачи, подходящей для среды передачи, наиболее подходящим является способ масштабируемого кодирования данных.
Этот способ кодирования делает возможным выполнять частичное декодирование одного сжатого битового потока на стороне декодера или предварительного декодера согласно скорости передачи битов, частоте ошибок и состоянию ресурсов системы. Декодер или предварительный декодер может восстанавливать последовательность мультимедиа, имеющую различающееся качество изображения, разрешение или частоту кадров, посредством принятия только части битового потока, кодированного с помощью способа масштабируемого кодирования.
По отношению к такому масштабируемому кодированию видео MPEG-21 (экспертная группа-21 по вопросам движущегося изображения) PART-13 уже продвинулась в своей работе по стандартизации. Конкретно, было сделано большое исследование для реализации масштабируемости в способе кодирования видео, базирующемся на множестве слоев. В качестве примера такого многослойного кодирования видео, многослойная структура компонуется из базового слоя, первого расширенного слоя и второго расширенного слоя, и соответствующие слои имеют разные разрешения QCIF, CIF и 2CIF, и разные частоты кадров.
Фиг. 1 показывает пример масштабируемого видеокодека, использующего многослойную структуру. В этом видеокодеке базовый слой установлен на QCIF (четвертной общий промежуточный формат) на 15 Гц (частота кадров), первый расширенный слой установлен на CIF (общий промежуточный формат) на 30 Гц, и второй расширенный слой установлен на SD (стандартная четкость) на 60 Гц.
В кодировании такого многослойного видеокадра может использоваться корреляция среди слоев. Например, некоторая область 12 видеокадра первого расширенного слоя эффективно кодируется через предсказание, основанное на соответствующей области 13 видеокадра базового слоя. Таким же способом область 11 видеокадра второго расширенного слоя может эффективно кодироваться через предсказание исходя из области 12 первого расширенного слоя. Если соответствующие слои многослойного видеокадра имеют разные разрешения, изображение базового слоя должно дискретизироваться с повышением до выполнения предсказания.
В нынешнем стандарте MPEG-21 масштабируемого кодирования видео (ниже указываемом как стандарт SVC) исследование находится на пути к реализации многослойного видеокодека, как в примере, показанном на фиг. 1, базирующейся на существующем H.264/AVC (улучшенное кодирование видео).
Однако H.264 использует преобразование DCT в качестве способа пространственного преобразования, и в базирующемся на DCT кодеке происходят нежелательные артефакты блочности и эффект блочности по мере того, как увеличивается скорость сжатия. Имеются две причины артефактов блочности.
Первая причина - это базирующееся на блоках целочисленное преобразование DCT. Это из-за того, что прерывность возникает на границе блоков вследствие квантования коэффициентов DCT, получающихся из преобразования DCT. Так как H.264 использует преобразование DCT размера 4×4, который является относительно маленьким размером, проблема прерывности может быть до некоторой степени уменьшена, но она не может быть полностью устранена.
Вторая причина - это предсказание компенсации движения. Компенсированный по движению блок генерируется посредством копирования пиксельных данных, интерполированных из другого положения другого опорного кадра. Так как эти наборы данных не совпадают точно друг с другом, на крае копируемого блока возникает прерывность. Также, в течение процесса копирования эта прерывность передается компенсированному по движению блоку.
В последнее время были разработаны несколько технологий для решения эффекта блочности. Чтобы уменьшать эффект блочности, H.263 и MPEG-4 предложили технологию компенсации движения перекрывающихся блоков (OBMC). Даже хотя OBMC является эффективной в уменьшении артефактов блочности, она имеет проблему в том, что требуется больший объем вычислений для предсказания движения, которое выполняется на стороне кодировщика. Соответственно, H.264 использует фильтр устранения блочности, чтобы удалять артефакты блочности и улучшать качество изображения.
Обработка фильтром блочности выполняется на стороне кодировщика или декодера до того, как макроблок восстанавливается, и после того, как выполняется его обратное преобразование. В этом случае, сила фильтра устранения блочности может регулироваться чтобы подходить для различных условий.
Фиг. 2 - это блок-схема последовательности операций, объясняющая способ выбора силы фильтра устранения блочности согласно общепринятому стандарту H.264. Здесь, блок q и блок p - это два блока, которые определяют границу блока, к которой будет применяться фильтр устранения блочности, и представляют текущий блок и соседний блок. Пять типов сил фильтра (показываемые как Bs=0 по 4) устанавливаются согласно тому, является ли блок p или q блоком с внутренним кодированием, располагается ли целевая выборка на границе макроблока, является ли блок p или q кодированным блоком, и другим. Если Bs=0, это означает, что фильтр устранения блочности не применяется к соответствующему целевому пикселю.
Другими словами, согласно стандартному способу для выбора силы фильтра устранения блочности сила фильтра базируется на том, являются ли текущий блок, в котором существует целевая выборка, и соседний блок внутренне кодированными, межкадровым образом кодированными или некодированными. Сила фильтра также базируется на том, существует ли целевая выборка на границе 4×4 блока или на границе 16×16 блока.
Раскрытие изобретения
Техническая проблема
Хотя в настоящее время развивающийся стандарт SVC принимает технологию, которая предсказывает кадр в текущем слое, используя кадр, сгенерированный в более низком слое, как показано на фиг. 1, т.е. режим внутреннего BL (базового слоя), он следует общепринятому стандарту H.264, как показано на фиг. 2, когда выбирается сила фильтра устранения блочности.
Однако так как фильтр устранения блочности применяется к слоям в кодировщике/декодере видео, базирующемся на множестве слоев, является неразумным сильно применять фильтр устранения блочности снова к кадру, предоставленному из более низкого слоя, чтобы эффективно предсказывать кадр текущего слоя. Тем не менее, в текущем стандарте SVC, режим внутреннего BL содержится как тип внутреннего кодирования, и способ для выбора силы фильтра, как показано на фиг. 2, применяется как есть. Никак не учитывается то, принадлежит ли текущий блок макроблоку внутреннего BL, когда выбирается сила фильтра.
Известно, что качество изображения восстановленного видео в значительной степени улучшается, когда сила фильтра является подходящей для соответствующих условий и фильтр устранения блочности применяется при подходящей силе фильтра. Соответственно, необходимо исследовать технологии, которые должным образом выбирают силу фильтра при учете режима внутреннего BL в течение операции кодирования/декодирования многослойного видео.
Техническое решение
Соответственно, настоящее изобретение было создано, чтобы обратиться к вышеупомянутым проблемам, возникающим в предшествующем уровне техники, и одним аспектом настоящего изобретения является предоставить должную силу фильтра устранения блочности согласно тому, использует ли некоторый блок, к которому фильтр устранения блочности будет применяться, режим внутреннего BL в кодировщике/декодере видео, базирующемся на множестве слоев.
Дополнительные преимущества, цели и признаки этого изобретения будут излагаться частично в описании, которое следует, и частично станут видны специалистам в данной области техники после изучения последующего или могут быть узнаны из использования этого изобретения на практике.
Для достижения этих целей предоставляется способ выбора силы фильтра устранения блочности согласно вариантам осуществления настоящего изобретения, содержащий (a) выбор текущего блока, для которого будет выполняться фильтрация устранения блочности, и его соседнего блока, (b) выяснение, являются ли текущий блок и соседний блок кодированными посредством режима внутреннего BL, и (c) выбор силы фильтра устранения блочности согласно результату выяснения.
В другом аспекте настоящего изобретения предоставляется способ фильтрации устранения блочности, содержащий (a) выбор текущего блока, для которого будет выполняться фильтрация устранения блочности, и его соседнего блока, (b) выяснение, являются ли текущий блок и соседний блок кодированными посредством режима внутреннего BL, (c) выбор силы фильтра устранения блочности согласно результату выяснения и (d) выполнение фильтрации устранения блочности по отношению к границе между текущим блоком и соседним блоком согласно силе фильтра устранения блочности.
В еще другом аспекте настоящего изобретения предоставляется способ кодирования видео, базирующийся на множестве слоев, содержащий (a) кодирование входного видеокадра, (b) декодирование кодированного кадра, (c) выбор силы фильтра устранения блочности согласно тому, является ли блок, составляющий декодированный кадр, кодированным посредством режима внутреннего BL, и (d) выполнение фильтрации устранения блочности по отношению к границе между блоком и его соседним блоком согласно выбранной силе фильтра устранения блочности.
В еще другом аспекте настоящего изобретения предоставляется способ декодирования видео, базирующийся на множестве слоев, содержащий (a) восстановление видеокадра из входного битового потока, (b) выбор силы фильтра устранения блочности согласно тому, является ли блок, составляющий восстановленный кадр, кодированным посредством режима внутреннего BL, и (c) выполнение фильтрации устранения блочности по отношению к границе между блоком и его соседним блоком согласно выбранной силе фильтра устранения блочности.
В еще другом аспекте настоящего изобретения предоставляется кодировщик видео, базирующийся на множестве слоев, содержащий средство для кодирования входного видеокадра, средство для декодирования кодированного кадра, средство для выбора силы фильтра устранения блочности согласно тому, является ли блок, составляющий декодированный кадр, кодированным посредством режима внутреннего BL, и средство для выполнения фильтрации устранения блочности по отношению к границе между блоком и его соседним блоком согласно выбранной силе фильтра устранения блочности.
В еще другом аспекте настоящего изобретения предоставляется декодер видео, базирующийся на множестве слоев, содержащий средство для восстановления видеокадра из входного битового потока, средство для выбора силы фильтра устранения блочности согласно тому, является ли блок, составляющий восстановленный кадр, кодированным посредством режима внутреннего BL, и средство для выполнения фильтрации устранения блочности по отношению к границе между блоком и его соседним блоком согласно выбранной силе фильтра устранения блочности.
Описание чертежей
Вышеуказанные и другие аспекты, признаки и преимущества настоящего изобретения будут более ясны из последующего подробного описания, взятого в соединении с сопровождающими чертежами, на которых:
Фиг. 1 - это вид, показывающий пример масштабируемого видеокодека, использующего многослойную структуру;
Фиг. 2 - это блок-схема последовательности операций, показывающая способ выбора силы фильтра устранения блочности согласно общепринятому стандарту H.264;
Фиг. 3 - это блок-схема последовательности операций, показывающая способ выбора силы фильтра видеокодера, базирующегося на множестве слоев, согласно одному варианту осуществления настоящего изобретения;
Фиг. 4 - это вид, показывающий вертикальную границу и целевые выборки блока;
Фиг. 5 - это вид, показывающий горизонтальную границу и целевые выборки блока;
Фиг. 6 - это вид, показывающий позиционную корреляцию текущего блока q с его соседними блоками pa и pb;
Фиг. 7 - это блок-схема последовательности операций, показывающая способ выбора силы фильтра видеокодера, базирующегося на множестве слоев, согласно другому варианту осуществления настоящего изобретения;
Фиг. 8 - это блок-схема, показывающая конструкцию кодировщика видео типа открытого контура согласно одному варианту осуществления настоящего изобретения;
Фиг. 9 - это вид, показывающий структуру битового потока, сгенерированного согласно одному варианту осуществления настоящего изобретения;
Фиг. 10 - это вид, показывающий границы макроблока и блоков по отношению к яркостной составляющей сигнала;
Фиг. 11 - это вид, показывающий границы макроблока и блоков по отношению к составляющей цветности сигнала;
Фиг. 12 - это вид, показывающий пример макроблоков с силами фильтра, установленными с помощью их границ;
Фиг. 13 - это блок-схема, показывающая конструкцию декодера видео согласно одному варианту осуществления настоящего изобретения;
Фиг. 14 - это график, показывающий яркостную составляющую PSNR согласно изменению скорости передачи битов в последовательности, относящейся к группе людей;
Фиг. 15 - это график, показывающий яркостную составляющую PSNR согласно изменению скорости передачи битов в последовательности, относящейся к порту;
Фиг. 16 - это график, показывающий улучшение производительности настоящего изобретения по сравнению с предшествующим уровнем техники по отношению к последовательности, относящейся к футболу, CIF@1024kbps;
Фиг. 17 - это график, показывающий улучшение производительности настоящего изобретения по сравнению с предшествующим уровнем техники по отношению к последовательности, относящейся к группе людей, 4CIF@3000kbps;
Фиг. 18 - это вид, показывающий один кадр из последовательности, относящейся к футболу, восстановленный с помощью предшествующего уровня техники; и
Фиг. 19 - это вид, показывающий кадр из фиг. 18, восстановленный согласно настоящему изобретению.
Варианты осуществления изобретения
Ниже, иллюстративные варианты осуществления настоящего изобретения будут подробно описываться со ссылкой на сопровождающие чертежи. Аспекты и признаки настоящего изобретения и способы для достижения аспектов и признаков должны быть видны из ссылок на варианты осуществления, которые будут подробно описываться со ссылкой на сопровождающие чертежи. Однако варианты осуществления настоящего изобретения не ограничены вариантами осуществления, раскрытыми ниже, и могут реализовываться в разнообразных формах. Предметы обсуждения, определенные в описании, такие как подробная конструкция и элементы, являются ни чем иным, как конкретными деталями, предоставленными, чтобы оказывать помощь для полного понимания этого изобретения. Таким образом, варианты осуществления настоящего изобретения могут реализоваться без таких ограничений. В последующем описании вариантов осуществления настоящего изобретения на различных чертежах используются одинаковые ссылочные позиции чертежей для одинаковых элементов.
Фиг. 3 - это блок-схема последовательности операций, показывающая способ выбора силы фильтра видеокодера, базирующегося на множестве слоев, согласно одному варианту осуществления настоящего изобретения. В последующем описании термин 'видеокодер' используется как общее обозначение кодировщика видео и декодера видео. Способ согласно варианту осуществления настоящего изобретения, как показано на фиг. 3, может дополнительно включать в себя этапы S25, S30, S55 и S60 в сравнении со стандартным способом, как показано на фиг. 2.
Прежде всего, целевые выборки выбираются вокруг границы блока (например, 4×4 блока пикселей). Целевые выборки означают набор выборок, размещенных, как показано на фиг. 4 или фиг. 5, вокруг границы между текущим блоком q и его соседним блоком p. Как показано на фиг. 6, при учете порядка генерирования блоков верхний блок и левый блок текущего блока q соответствуют соседним блокам p (Pa и Pb), и, таким образом, целевые объекты, к которым применяется фильтр устранения блочности, являются верхней границей и левой границей текущего блока q. Нижняя граница и правая граница текущего блока q фильтруются в течение последующей обработки для нижнего блока и правого блока текущего блока. В вариантах осуществления настоящего изобретения в качестве примера используются 4×4 блоки, так как в стандарте H.264 используется 4×4 преобразование DCT, и минимальный размер переменного блока в предсказании движения - это 4×4 пикселей. Однако в случае видеокодера, имеющего другие характеристики, то есть, использующего 8×8 преобразование DCT, специалистам в данной области техники должно быть видно, что фильтрация также может применяться к границам блоков 8×8 блоков и других размеров блоков.
Ссылаясь на фиг. 4, целевые выборки возникают вокруг левой границы текущего блока q в случае, где граница блока является вертикальной. Целевые выборки включают в себя четыре выборки p0, p1, p2 и p3 на левой стороне линии вертикальной границы, которая существует в соседнем блоке p, и четыре выборки q0, q1, q2 и q3 на правой стороне линии границы, которая существует в текущем блоке q. Хотя все из четырех выборок подвергаются фильтрации, количество опорных выборок и количество фильтрованных выборок могут изменяться согласно выбранной силе фильтра.
Ссылаясь на фиг. 5, целевые выборки появляются вокруг верхней границы текущего блока q в случае, где граница блока является горизонтальной. Целевые выборки включают в себя четыре выборки p0, p1, p2 и p3, существующие в верхней половине линии горизонтальной границы (соседний блок p), и четыре выборки q0, q1, q2 и q3, существующие в нижней половине линии горизонтальной границы (текущий блок q).
Согласно существующему стандарту H.264, фильтр устранения блочности применяется к компоненте яркости сигнала и компоненте цветности сигнала, соответственно, и фильтрация последовательно выполняется в порядке растрового сканирования на единице макроблока, который составляет один кадр. По отношению к соответствующим макроблокам, фильтрация в горизонтальном направлении (как показано на фиг. 5) может выполняться после того, как выполняется фильтрация в вертикальном направлении (как показано на фиг. 4), и наоборот.
Ссылаясь на фиг. 3, после S10, выясняется, является ли, по меньшей мере, один из: блок p и блок q, к которым принадлежат целевые выборки, внутренне кодированным S15. Причина, почему выявляется внутренне кодированный блок состоит в том, что внутреннее кодирование, которое использует сходство в кадре, в значительной степени усиливает эффект блочности в сравнении с межкадровым кодированием. Соответственно, сила фильтра относительно усиливается, когда, по меньшей мере, один из: блок p и q - является внутренне кодированным, в сравнении с тем, когда никакой из них не является внутренне кодированным.
В вариантах осуществления настоящего изобретения внутреннее кодирование может включать в себя как кодирование согласно режиму направленного внутреннего предсказания для предсказания текущего блока по некоторой части соседнего блока кадра, так и кодирование согласно 'режиму внутреннего BL' для предсказания текущего макроблока по изображению, восстановленному из более нижнего слоя относительно текущего слоя.
Если блок p и/или блок q являются внутренне кодированными как результат решения этапа S15, тогда выясняется, совпадает ли граница блока с границей макроблока, S20. Так как эффект блочности границы макроблока проявляется больше, чем эффект границы 4×4 блока, сила фильтра может увеличиваться вследствие решения на этапе S20.
Если граница блока совпадает с границей макроблока как результат решения S20, выясняется, находятся ли блок p и блок q в режиме внутреннего BL, S25. Если это так, величина, которая показывает силу фильтра (ниже указываемая как 'Bs') может устанавливаться на 'A' S30; если нет, Bs может устанавливаться на '4' S50. В одном варианте осуществления настоящего изобретения Bs может устанавливаться на '4', даже если один из: блок p и блок q - не находится в режиме BL.
Значение 'A' должно быть меньше чем выбранное значение, если ответ на этапе S25 - это 'Нет', то есть '4'. Это из-за того, что, так как фильтр устранения блочности уже был применен к изображению базового слоя, который предоставляется, чтобы использовать режим внутреннего BL, является неразумным применять к изображению фильтр, имеющий такую же силу, что и другие режимы внутреннего предсказания. Соответственно, хотя 'A' может быть 0, 1, 2 или 3, было подтверждено экспериментами, что является предпочтительным, что 'A' равно '1'.
Если граница блока не совпадает с границей макроблока как результат решения на этапе S20, выясняется, является ли блок q кодированным посредством режима внутреннего BL S55. Если это так, Bs может устанавливаться на 'B' S60; если нет, Bs может устанавливаться на '3' S65. По той же причине, что и в установке значения 'A', Bs должно быть меньше, чем выбранное значение, если ответ на этапе S55 - это 'Нет', то есть, '3'. Соответственно, хотя 'B' может быть 0, 1 или 2, было подтверждено экспериментами, что является предпочтительным, что 'B' равно '1'.
Если выясняется, что блок p или блок q не является внутренне кодированным, на этапе S15, тогда выясняется, является ли блок p или блок q кодированным, S70. В общем, блоки, которые не являются внутренне кодированными, являются межкадровым образом кодированными через межкадровое предсказание. Однако согласно стандарту H.264, если различие между предсказанным изображением и текущим изображением меньше, чем заданное пороговое значение как результат межкадрового предсказания, используется технология, которая не кодирует различие, и, таким образом, требуется выяснение этапа S70. Это из-за того, что вероятность, что возник эффект блочности, является малой в сравнении со случаем, где блоки являются кодированными, и, таким образом, является предпочтительным применять относительно низкую силу фильтра в этом случае.
Если какой-либо: блок p или блок q - является кодированным как результат выяснения этапа S70, Bs устанавливается на '2' S75. Однако, если опорные кадры блока p и блока q являются разными, или количества опорных кадров являются разными в состоянии, где никакой из блоков не был кодирован (что соответствует 'Да' на этапе S80, Bs устанавливается на '1' S85). Это из-за того, что факт, что блоки p и q имеют разные опорные кадры, означает, что вероятность, что возник эффект блочности, является относительно высокой.
Если опорные кадры блоков p и q не являются разными или количества опорных кадров между ними не являются разными (что соответствует 'Нет' на этапе S80) как результат выяснения на этапе S80, выясняется, являются ли векторы движения блока p и блока q разными S90. Это из-за того, что, так как в случае, в котором векторы движения не совпадают друг с другом, хотя оба блока имеют одни и те же опорные кадры (что соответствует 'Нет' на этапе S80), вероятность, что возник эффект блочности, является относительно высокой в сравнении со случаем, в котором векторы движения совпадают друг с другом, и, таким образом, является предпочтительным применять разные силы фильтра согласно результату выяснения на этапе S90.
Если векторы движения блока p и блока q являются разными на этапе S90 (что соответствует 'Да' на этапе S90), Bs устанавливается на '1' S85; если нет, Bs устанавливается на '0' S95.
Фиг. 7 - это блок-схема последовательности операций, показывающая способ видеокодера, базирующийся на множестве слоев, для выбора силы фильтра согласно другому варианту осуществления настоящего изобретения. Хотя в варианте осуществления из фиг. 3 на этапе S25 выясняется, находятся ли оба: блок p и блок q - в режиме внутреннего BL, в варианте осуществления из фиг. 7 выясняется, находится ли какой-либо из: блок p или блок q - в режиме внутреннего BL, в дополнение к тому, находятся ли оба: блок p и блок q - в режиме внутреннего BL, чтобы применять разные силы фильтра к упомянутым случаям, соответственно.
Так как другие части варианта осуществления из фиг. 7 аналогичны частям варианта осуществления из фиг. 3, в последующем будут объясняться только части из фиг. 7, которые отличаются от частей варианта осуществления из фиг. 3.
Если оба: блок p и блок q - находятся в режиме внутреннего BL на этапе S25 (что соответствует 'Да' на этапе S25), Bs может устанавливаться на 'A' как в варианте осуществления из фиг. 3 S30. Однако, если только один из: блок p и блок q - находится в режиме внутреннего BL (что соответствует 'Да' на этапе S35), Bs может устанавливаться на новое значение 'C' S45. Тем временем, если какой-либо из: блок p или блок q - не находится в режиме внутреннего BL (что соответствует 'Нет' на этапе S35), Bs может устанавливаться на '4' таким же способом как в варианте осуществления из фиг. 3 S50.
Так как 'C' указывает на случай, в котором только один из блоков находится в режиме внутреннего BL, сила фильтра должна устанавливаться на значение, которое больше, чем 'A', но меньше, чем '4'. Если 'A' устанавливается на '1' как на фиг. 3, то 'C' должно иметь значение, равное '2' или '3'.
Тем временем, фиг. 8 - это блок-схема, показывающая конструкцию кодировщика видео, базирующегося на множестве слоев, которая включает в себя фильтр устранения блочности согласно способу выбора силы фильтра. Кодировщик видео, базирующийся на множестве слоев, может реализоваться как тип замкнутого контура или тип открытого контура. Здесь, кодировщик видео типа замкнутого контура выполняет предсказание со ссылкой на исходный кадр, и кодировщик видео типа открытого контура выполняет предсказание со ссылкой на восстановленный кадр.
Устройство 280 выбора выбирает и выводит один из: сигнал, переданный от модуля 195 повышающей дискретизации кодировщика 100 базового слоя, сигнал, переданный от устройства 260 компенсации движения, и сигнал, переданный от устройства 270 внутреннего предсказания. Этот выбор выполняется посредством выбора из: режима внутреннего BL, режима межкадрового предсказания и режима внутреннего предсказания, - который имеет наивысшую эффективность кодирования.
Устройство 270 внутреннего предсказания предсказывает изображение текущего блока по изображению восстановленного соседнего блока, предоставленного из модуля 215 суммирования, согласно определенному режиму внутреннего предсказания. H.264 определяет такой режим внутреннего предсказания, который включает в себя восемь режимов, имеющих направления, и один режим DC. Выбор одного режима среди них выполняется посредством выбора режима, который имеет наивысшую эффективность кодирования. Устройство 270 внутреннего предсказания предоставляет предсказанные блоки, сгенерированные согласно выбранному режиму внутреннего предсказания, модулю 205 суммирования.
Устройство 250 оценки движения выполняет оценку движения на текущем макроблоке входных видеокадров, базируясь на опорном кадре, и получает векторы движения. Алгоритм, который широко используется для оценки движения, является алгоритмом сопоставления блоков. Этот алгоритм сопоставления блоков оценивает вектор, который имеет минимальную ошибку в заданной области поиска опорного кадра, как вектор движения. Оценка движения может выполняться, используя блок движения фиксированного размера или используя блок движения, имеющий переменный размер, согласно иерархическому алгоритму сопоставления блоков переменных размеров (HVSBM). Устройство 250 оценки движения предоставляет данные движения, такие как векторы движения, полученные как результат оценки движения, режим блока движения, число опорных кадров и другие, устройству 240 энтропийного кодирования.
Устройство 260 компенсации движения выполняет компенсацию движения, используя вектор движения, вычисленный устройством 250 оценки движения, и опорный кадр, и генерирует межкадровым образом предсказанное изображение для текущего кадра.
Модуль 205 вычитания генерирует остаточный кадр посредством вычитания сигнала, выбранного устройством 280 выбора, из текущего входного сигнала кадра.
Устройство 220 пространственного преобразования выполняет пространственное преобразование остаточного кадра, сгенерированного модулем 205 вычитания. DCT (дискретное косинусное преобразование), вейвлет-преобразование и другие могут использоваться как способ пространственного преобразования. Коэффициенты преобразования получаются как результат пространственного преобразования. В случае использования DCT в качестве способа пространственного преобразования получаются коэффициенты DCT, и в случае использования способа вейвлет-преобразования получаются коэффициенты вейвлет.
Устройство 230 квантования генерирует коэффициенты квантования посредством квантования коэффициентов преобразования, полученных устройством 220 пространственного преобразования. Квантование означает представление коэффициентов преобразования, выраженных как вещественные величины, с помощью дискретных величин посредством деления величин преобразования в заданных интервалах. Такой способ квантования может быть скалярным квантованием, векторным квантованием или другими. Способ скалярного квантования выполняется посредством деления коэффициентов преобразования на соответствующие величины из таблицы квантования и округления результирующих величин до ближайшего целого числа.
В случае использования вейвлет-преобразования в качестве способа пространственного преобразования, как способ квантования главным образом используется способ встроенного квантования. Этот способ встроенного квантования выполняет эффективное квантование, используя пространственную избыточность, посредством предпочтительного кодирования компонентов коэффициентов преобразования, которые превосходят пороговое значение, посредством изменения порогового значения (до 1/2). Способ встроенного квантования может быть встроенным вейвлет-алгоритмом деревьев нулей (EZW), множественным разбиением в иерархических деревьях (SPIHT) или встроенным кодированием блоков нулей (EZBC).
Процесс кодирования перед энтропийным кодированием, как описано выше, называется кодированием с потерями.
Устройство 240 энтропийного кодирования выполняет без потерь кодирование коэффициентов квантования и информации движения, предоставленной устройством 250 оценки движения, и генерирует выходной битовый поток. Арифметическое кодирование или кодирование переменной длины может использоваться как способ кодирования без потерь.
Фиг. 9 - это вид, показывающий пример структуры битового потока 50, сгенерированного согласно одному варианту осуществления настоящего изобретения. В H.264 битовый поток кодируется в единицах секции. Битовый поток 50 включает в себя заголовок 60 секции и данные 70 секции, и данные 70 секции компонуются из множества макроблоков (MB) 71 по 74. Данные макроблока, например, макроблок 73, компонуются из поля 80 mb_type, поля 85 mb_pred и поля 90 данных текстуры.
В поле 80 mb_type записывается значение, показывающее тип макроблока. То есть, это поле показывает, является ли текущий макроблок внутренним макроблоком, межкадровым макроблоком или макроблоком внутреннего BL.
В поле 85 mb_pred записывается режим детального предсказания согласно типу макроблока. В случае внутреннего макроблока записывается выбранный режим внутреннего предсказания, и в случае межкадрового макроблока записываются число опорных кадров и вектор движения посредством разбиений макроблока.
В поле 90 данных текстуры записывается кодированный остаточный кадр, т.е. данные текстуры.
Ссылаясь на фиг. 8, кодировщик 2 расширенного слоя дополнительно включает в себя устройство 271 обратного квантования, устройство 272 обратного преобразования DCT и модуль 215 суммирования, которые используются, чтобы восстанавливать кодированный с потерями кадр посредством его обратного декодирования.
Устройство 271 обратного квантования обратным образом квантует коэффициенты, квантованные устройством 230 квантования. Этот процесс обратного квантования является обратным процессом для процесса квантования. Устройство 272 обратного пространственного преобразования выполняет обратное преобразование квантованных результатов и предоставляет обратным образом преобразованные результаты модулю 215 суммирования.
Модуль 215 суммирования восстанавливает видеокадр посредством добавления сигнала, предоставленного от устройства 272 обратного пространственного преобразования, к предсказанному сигналу, выбранному устройством 280 выбора и сохраненному в буфере кадров (не показан). Видеокадр, восстановленный модулем 215 суммирования, предоставляется фильтру 290 устранения блочности, и изображение соседнего блока восстановленного видеокадра предоставляется устройству 270 внутреннего предсказания.
Устройство 291 выбора силы фильтра выбирает силу фильтра по отношению к границе макроблока и границам блоков (например, 4×4 блоков) в одном макроблоке согласно способу выбора силы фильтра, как объясняется со ссылкой на фиг. 3 и фиг. 7. В случае составляющей яркости сигнала макроблок имеет размер 16×16 пикселей, как показано на фиг. 10, и в случае составляющей цветности сигнала макроблок имеет размер 8×8 пикселей, как показано на фиг. 11. На фиг. 10 и 11 'Bs' отмечено на границе блоков, которые принадлежат макроблоку. Однако 'Bs' не отмечено на линии правой границы и линии нижней границы макроблока. Если никакой макроблок не существует справа или ниже текущего макроблока, фильтр устранения блочности для соответствующей части является ненужным, в то время как, если существует макроблок справа или ниже текущего макроблока, сила фильтра линий границы выбирается в течение процесса фильтрации устранения блочности соответствующего макроблока.
Пример выбора силы фильтра по отношению к нескольким граничным линиям макроблока составляющей яркости, как показано на фиг. 10, показан на фиг. 12. Ссылаясь на фиг. 12, текущий макроблок и левый макроблок являются макроблоками внутреннего BL, и верхний макроблок является межкадровым макроблоком (или внутренним макроблоком).
На основе варианта осуществлен