СИГНАЛИЗАЦИЯ ПАРАМЕТРОВ ФИЛЬТРА УДАЛЕНИЯ БЛОЧНОСТИ ПРИ КОДИРОВАНИИ ВИДЕО Российский патент 2016 года по МПК H04N19/86 

Описание патента на изобретение RU2573743C1

[0001] Эта заявка испрашивает приоритет по предварительной заявке США № 61/588454, поданной 19 января, 2012 года, предварительной заявке США № 61/593015, поданной 31 января, 2012 года, и предварительной заявке США № 61/620339, поданной 4 апреля, 2012 года, все содержимое каждой из которых включено в настоящий документ посредством ссылки.

ОБЛАСТЬ ТЕХНИКИ

[0002] Это раскрытие относится к кодированию видео и, более конкретно, к удалению блочности видеоданных.

УРОВЕНЬ ТЕХНИКИ

[0003] Возможности цифрового видео могут быть встроены в широкий диапазон устройств, в том числе в цифровые телевизоры, системы цифрового прямого широковещания, беспроводные широковещательные системы, карманные персональные компьютеры (PDA), портативные или настольные компьютеры, планшетные компьютеры, устройства чтения электронных книг, цифровые камеры, цифровые записывающие устройства, проигрыватели цифровых медиаданных, устройства видеоигр, видеоигровые консоли, сотовые или спутниковые радиотелефоны, также называемые ″интеллектуальными телефонами″, устройства видеоконференции, устройства потокового видео и тому подобные. Устройства цифрового видео реализуют способы сжатия видео, такие как описанные в стандартах, заданных посредством MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, Часть 10, Улучшенного кодирования видео (AVC), находящегося в настоящее время в разработке стандарта Высокоэффективного кодирования видео (HEVC), и расширениях этих стандартов. Видеоустройства могут передавать, принимать, кодировать, декодировать и/или хранить цифровую видеоинформацию более эффективно посредством реализации таких способов сжатия видео.

[0004] Способы сжатия видео выполняют пространственное (внутри изображения) предсказание и/или временное (между изображениями) предсказание для снижения или удаления избыточности, свойственной видеопоследовательностям. Для блочного кодирования видео, слайс (вырезка) (т.е. видеокадр или участок видеокадра) видео может быть разбит на видеоблоки, которые могут быть также названы древовидными блоками, единицами кодирования (CU) и/или узлами кодирования. Видеоблоки в кодированном посредством внутреннего кодирования (I) слайсе изображения кодируются с использованием пространственного предсказания относительно опорных выборок в соседних блоках в том же самом изображении. Видеоблоки в кодированном посредством внешнего кодирования (P или B) слайсе изображения могут использовать пространственное предсказание относительно опорных выборок в соседних видеоблоках в том же самом изображении или временное предсказание относительно опорных выборок в других опорных изображениях. Изображения могут быть названы кадрами, и опорные изображения могут быть названы опорными кадрами.

[0005] Пространственное или временное предсказание дают в результате предсказательный блок для блока, который должен быть кодирован. Остаточные данные представляют собой разности пикселей между первоначальным блоком, который должен быть кодирован, и предсказательным блоком. Кодированный посредством внешнего кодирования блок кодируется согласно вектору движения, который указывает на блок опорных выборок, образующих предсказательный блок, и остаточным данным, указывающим разность между кодированным блоком и предсказательным блоком. Кодированный посредством внутреннего кодирования блок кодируется согласно режиму внутреннего кодирования, который задает то, как создается предсказательный блок, и остаточным данным. Для дальнейшего сжатия, остаточные данные могут быть преобразованы из пиксельной области в область преобразования, давая в результате остаточные коэффициенты преобразования, которые затем могут быть квантованы. Может быть осуществлено сканирование квантованных коэффициентов преобразования, изначально размещенных в двухмерном массиве, для того, чтобы произвести одномерный вектор коэффициентов преобразования, и для достижения даже большего сжатия может быть применено энтропийное кодирование.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0006] В общем, это раскрытие описывает способы сигнализации параметров фильтра удаления блочности с уменьшенными издержками битового потока для текущего слайса видеоданных. Параметры фильтра удаления блочности задают фильтр удаления блочности, используемый для удаления артефактов блочности из декодированных видеоблоков слайса. Параметры фильтра удаления блочности включают в себя синтаксические элементы, заданные для указания, разрешена ли фильтрация для удаления блочности или запрещена, и, если разрешена, смещения параметров фильтра удаления блочности для пороговых значений tc и β. Параметры фильтра удаления блочности могут быть кодированы в одном или более из набора параметров уровня изображения и заголовка слайса. Набор параметров уровня изображения может содержать либо набор параметров изображения (PPS), либо набор параметров адаптации (APS).

[0007] Данные способы могут уменьшить число битов, используемых для сигнализации параметров фильтра удаления блочности, посредством кодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, и только кодирования второго синтаксического элемента в заголовке слайса, когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса. Второй синтаксический элемент задан для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео. В этом случае, когда параметры фильтра удаления блочности присутствует только в одном из набора параметров уровня изображения или заголовка слайса, видеокодер может исключить кодирование второго синтаксического элемента в заголовке слайса, и видеодекодер может определить, на основе первого синтаксического элемента, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

[0008] В одном примере, это раскрытие направлено на способ декодирования видеоданных, причем способ содержит этапы, на которых декодируют первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодируют второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, определяют, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

[0009] В другом примере, это раскрытие направлено на устройство декодирования видео, содержащее память, которая хранит видеоданные, и процессор, сконфигурированный с возможностью декодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса. Процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео. С другой стороны, процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, определения, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

[0010] В дополнительном примере, это раскрытие направлено на устройство декодирования видео, содержащее средство для декодирования первого синтаксического элемента, заданного для указания присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для декодирования второго синтаксического элемента заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для определения, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

[0011] В другом примере, это раскрытие направлено на считываемый компьютером носитель, содержащий инструкции для декодирования видеоданных, которые при исполнении побуждают один или более процессоров декодировать первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодировать второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, определить, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

[0012] В дополнительном примере, это раскрытие направлено на способ кодирования видеоданных, причем способ содержит этапы, на которых кодируют первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, кодируют второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, исключают кодирование второго синтаксического элемента заголовке слайса.

[0013] В дополнительном примере, это раскрытие направлено на устройство кодирования видео, содержащее память, которая хранит видеоданные, и процессор, сконфигурированный с возможностью кодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса. Процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, кодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео. С другой стороны, процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, исключения кодирования второго синтаксического элемента в заголовке слайса.

[0014] В другом примере, это раскрытие направлено на устройство кодирования видео, содержащее средство для кодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для кодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для исключения кодирования второго синтаксического элемента в заголовке слайса.

[0015] В дополнительном примере, это раскрытие направлено на считываемый компьютером носитель, содержащий инструкции для кодирования видеоданных, которые при исполнении побуждают один или более процессоров кодировать первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, кодировать второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, исключать кодирование второго синтаксического элемента в заголовке слайса.

[0016] Подробности одного или более примеров изложены на прилагающихся чертежах и в описании ниже. Другие признаки, цели и преимущества будут понятны из описания и чертежей, и из пунктов формулы изобретения.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0017] Фиг. 1 является блок-схемой, иллюстрирующей пример системы кодирования и декодирования видео, которая может кодировать параметры фильтра удаления блочности согласно способам, описанным в этом раскрытии.

[0018] Фиг. 2 является блок-схемой, иллюстрирующей пример видеокодера, который может реализовать способы, описанные в этом раскрытии, для кодирования параметров фильтра удаления блочности с уменьшенными издержками битового потока.

[0019] Фиг. 3 является блок-схемой, иллюстрирующей пример видеодекодера, который может реализовать способы, описанные в этом раскрытии, для декодирования параметров фильтра удаления блочности, используемых для задания фильтров удаления блочности, применяемых к слайсам видео.

[0020] Фиг. 4 является блок-схемой, иллюстрирующей компоненты примерного фильтра удаления блочности, заданного на основе параметров фильтра удаления блочности, сигнализированных согласно способам, описанным в этом раскрытии.

[0021] Фиг. 5 является принципиальной схемой, иллюстрирующей положения пикселей вблизи края видеоблока между подблоками.

[0022] Фиг. 6 является функциональной схемой, иллюстрирующей примерную операцию кодирования параметров фильтра удаления блочности для текущего слайса видео с уменьшенными издержками битового потока в соответствии со способами, описанными в этом раскрытии.

[0023] Фиг. 7 является функциональной схемой, иллюстрирующей примерную операцию декодирования параметров фильтра удаления блочности для текущего слайса видео с уменьшенными издержками битового потока в соответствии со способами, описанными в этом раскрытии.

[0024] Фиг. 8 является функциональной схемой, иллюстрирующей примерную операцию кодирования параметров фильтра удаления блочности для текущего слайса видео в наборе параметров изображения (PPS), которые могут быть переопределены посредством параметров фильтра удаления блочности в заголовке слайса.

[0025] Фиг. 9 является функциональной схемой, иллюстрирующей примерную операцию декодирования параметров фильтра удаления блочности для текущего слайса видео в наборе параметров изображения (PPS), которые могут быть переопределены посредством параметров фильтра удаления блочности в заголовке слайса.

ПОДРОБНОЕ ОПИСАНИЕ

[0026] Некоторые примерные способы по этому раскрытию уменьшают число битов, используемых для сигнализации параметров фильтра удаления блочности для текущего слайса видео, посредством кодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, и только кодирования второго синтаксического элемента в заголовке слайса, когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса. Второй синтаксический элемент задан для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео. В этом случае, когда параметры фильтра удаления блочности присутствуют только в одном из набора параметров уровня изображения или заголовка слайса, устройство кодирования видео может исключить кодирование второго синтаксического элемента в заголовке слайса, и устройство декодирования видео может определить, на основе первого синтаксического элемента, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

[0027] Фиг. 1 является блок-схемой, иллюстрирующей пример системы 10 кодирования и декодирования видео, которая может кодировать параметры фильтра удаления блочности согласно способам, описанным в этом раскрытии. Как показано на Фиг. 1, система 10 включает в себя устройство-источник 12, которое генерирует кодированные видеоданные, которые должны быть декодированы позднее посредством устройства-адресата 14. Устройство-источник 12 и устройство-адресат 14 могут содержать любое из широкого диапазона устройств, включающих в себя настольные компьютеры, компьютеры типа ноутбук (т.е., переносные компьютеры), планшетные компьютеры, телеприставки, телефонные трубки, такие как так называемые ″интеллектуальные″ телефоны, так называемые ″интеллектуальные″ планшеты, телевизоры, камеры, устройства отображения, цифровые медиапроигрыватели, игровые видеоконсоли, устройства потокового видео, или подобные. В некоторых случаях, устройство-источник 12 и устройство-адресат 14 могут быть оборудованы для беспроводной связи.

[0028] Устройство-адресат 14 может принять кодированные видеоданные, которые должны быть декодированы, посредством линии 16 связи. Линия 16 связи может содержать любой тип среды или устройство, способное перемещать кодированные видеоданные из устройства-источника 12 в устройство-адресат 14. В одном примере, линия 16 связи может содержать среду связи для обеспечения устройству-источнику 12 возможности передачи кодированных видеоданных прямо на устройство-адресат 14 в реальном времени. Кодированные видеоданные могут быть модулированы согласно стандарту связи, такому как протокол беспроводной связи, и переданы на устройство-адресат 14. Среда связи может содержать любую среду беспроводной или проводной связи, такую как радиочастотный (РЧ) спектр или одна или более физических линий передачи. Среда связи может образовывать часть пакетной сети, такой как локальная сеть, территориальная сеть или глобальная сеть, такая как Интернет. Среда связи может включать в себя маршрутизаторы, коммутаторы, базовые станции или любое другое оборудование, которое может быть полезным, чтобы способствовать связи от устройства-источника 12 к устройству-адресату 14.

[0029] В другом примере, линия 16 связи может соответствовать носителю информации, который может хранить кодированные видеоданные, сгенерированные устройством-источником 12, и к которому устройство-адресат 14 может осуществить доступ по мере необходимости посредством доступа к диску или доступа к карте. Носитель информации может включать в себя любое из разнообразия носителей данных с локальным доступом, такие как диски Blu-ray, DVD, CD-ROM, флэш-память или любые другие подходящие цифровые носители данных для хранения кодированных видеоданных. В дополнительном примере, линия 16 связи может соответствовать файловому серверу или другому промежуточному устройству хранения, которое может удерживать кодированное видео, сгенерированное устройством-источником 12, и к которому устройство-адресат 14 может осуществить доступ по мере необходимости посредством потоковой передачи или загрузки. Файловым сервером может быть любой тип сервера, способный хранить кодированные видеоданные и передавать эти кодированные видеоданные на устройство-адресат 14. Примерные файловые серверы включают в себя веб-серверы (например, для веб-сайта), FTP-серверы, устройства подключаемых к сети хранилищ (NAS) или локальные дисковые накопители. Устройство-адресат 14 может осуществлять доступ к кодированным видеоданным посредством любого стандартного информационного соединения, включающего в себя Интернет-соединение. Оно может включать в себя беспроводной канал (например, Wi-Fi соединение), проводное соединение (например, DSL, кабельный модем, и т.д.), или их комбинацию, которая подходит для осуществления доступа к кодированным видеоданным, хранящимся на файловом сервере. Передача кодированных видеоданных из файлового сервера может быть потоковой передачей, передачей на загрузку или их комбинацией.

[0030] Способы этого раскрытия необязательно ограничены применениями или установками беспроводной связи. Способы могут быть применены к кодированию видео при поддержке любого из разнообразия применений мультимедийных средств, таких как телевизионные трансляции по радиоинтерфейсу, кабельные телевизионные передачи, спутниковые телевизионные передачи, потоковые передачи видео, например, через Интернет, кодирование цифрового видео для хранения на носителе данных, декодирование цифрового видео, хранящегося на носителе данных, или других применений. В некоторых примерах, система 10 может быть сконфигурирована с возможностью поддержки односторонней или двухсторонней передачи видео для поддержки применений, таких как потоковая передача видео, проигрывание видео, трансляция видео и/или видеотелефония.

[0031] В примере по фиг. 1, устройство-источник 12 включает в себя видеоисточник 18, видеокодер 20 и выходной интерфейс 22. В некоторых случаях, выходной интерфейс 22 может включать в себя модулятор/демодулятор (модем) и/или передатчик. В устройстве-источнике 12, видеоисточник 18 может включать в себя источник, такой как устройство захвата видео, например, видеокамеру, видеоархив, содержащий ранее захваченное видео, интерфейс подачи видео для приема видео от поставщика видеоконтента, и/или компьютерную графическую систему для генерирования данных компьютерной графики в качестве исходного видео, или комбинацию таких источников. В качестве одного примера, если видеоисточником 18 является видеокамера, устройство-источник 12 и устройство-адресат 14 могут образовать так называемые камерафоны или видеотелефоны. Однако, способы, описанные в этом раскрытии, могут в общем быть применимы к кодированию видео, и могут быть применены для беспроводных и/или проводных применений.

[0032] Захваченное, предварительно захваченное, или сгенерированное компьютером видео может быть кодировано видеокодером 20. Кодированные видеоданные могут быть переданы прямо на устройство-адресат 14 через выходной интерфейс 22 устройства-источника 12. Кодированные видеоданные могут также быть сохранены на носитель информации или файловый сервер для дальнейшего доступа устройством-адресат 14 для декодирования и/или проигрывания.

[0033] Устройство-адресат 14 включает в себя входной интерфейс 28, видеодекодер 30 и устройство 32 отображения. В некоторых случаях, входной интерфейс 28 может включать в себя приемник и/или модем. Входной интерфейс 28 устройства-адресата 14 принимает кодированные видеоданные по линии 16 связи. Кодированные видеоданные, пересылаемые по линии 16 связи, или предоставляемые на носителе данных, могут включать в себя разнообразие синтаксических элементов, сгенерированных видеокодером 20 для использования видеодекодером, таким как видеодекодер 30, при декодировании видеоданных. В такие синтаксические элементы могут быть включены кодированные видеоданные, передаваемые по среде связи, хранящиеся на носителе информации или хранящиеся на файловом сервере.

[0034] Устройство 32 отображения может быть интегрировано с устройством-адресатом 14 или может быть внешним по отношению к нему. В некоторых примерах, устройство-адресат 14 может включать в себя интегрированное устройство отображения и может также быть сконфигурировано с возможностью взаимодействия с внешним устройством отображения. В других примерах, устройством-адресатом 14 может быть устройство отображения. В общем, устройство 32 отображения отображает декодированные видеоданные пользователю, и может содержать любое из разнообразия устройств отображения, таких как жидко-кристаллический дисплей (LCD), плазменный дисплей, дисплей на органических светодиодах (OLED) или другой тип устройства отображения.

[0035] Видеодекодер 20 и видеодекодер 30 могут функционировать согласно стандарту сжатия видео, такому как стандарт Высокоэффективного кодирования видео (HEVC), в настоящий момент в разработке, и могут соответствовать Тестовой модели HEVC (HM). В качестве альтернативы, видеокодер 20 и видеодекодер 30 могут функционировать согласно другим проприетарным или отраслевым стандартам, таким как стандарт ITU-T H.264, альтернативно называемый MPEG-4, Часть 10, Усовершенствованное кодирование видео (AVC), или расширениям таких стандартов. Однако, способы этого раскрытия не ограничены каким-либо конкретным стандартом кодирования. Другие примеры стандартов сжатия видео включают в себя MPEG-2 и ITU-T H.263.

[0036] Хотя не показано на фиг. 1, в некоторых аспектах, каждый из видеокодера 20 и видеодекодера 30 может быть интегрирован с аудиокодером или аудиодекодером, и может включать в себя соответствующие блоки MUX-DEMUX, или другие аппаратные средства и программное обеспечение, чтобы обрабатывать кодирование как аудио, так и видео в общем потоке данных или отдельных потоках данных. Если применимо, в некоторых примерах, блоки MUX-DEMUX могут соответствовать протоколу мультиплексора ITU H.223 или другим протоколам, таким как протокол пользовательских дейтаграмм (UDP).

[0037] Каждый из видеокодера 20 и видеодекодера 30 может быть реализован в виде любой из разнообразия подходящих компоновок схем кодера, таких как один или более микропроцессоров, процессоры цифровой обработки сигналов (DSP), специализированные интегральные микросхемы (ASIC), программируемые пользователем вентильные матрицы (FPGA), дискретная логика, программное обеспечение, аппаратные средства, программно-аппаратные средства, или любой их комбинации. Когда способы частично реализованы в программном обеспечении, устройство может хранить инструкции для программного обеспечения в подходящем постоянном считываемом компьютером носителе и может исполнять инструкции в аппаратных средствах с использованием одного или более процессоров для выполнения способов этого раскрытия. Каждый из видеокодера 20 и видеодекодера 30 может быть включен в один или более кодеров или декодеров, любой из которых может быть интегрирован как часть объединенного кодера/декодера (кодека) в соответствующем устройстве.

[0038] Объединенная команда по кодированию видео (JCT-VC) работает над разработкой стандарта HEVC. Усилия стандартизации HEVC основаны на развивающейся модели устройства кодирования видео, называемой Тестовой моделью HEVC (HM). HM предполагает несколько дополнительных способностей устройств кодирования видео относительно существующих устройств согласно, например, ITU-T H.264/AVC. Например, тогда как H.264 предоставляет девять режимов кодирования с внутренним предсказанием, HM может предоставить до тридцати трех режимов кодирования с внутренним предсказанием.

[0039] В общем, рабочая модель HM описывает, что видеокадр или изображение может быть разделено на последовательность древовидных блоков или наибольших единиц кодирования (LCU), которые включают в себя как выборки яркости, так и выборки цветности. Древовидный блок имеет аналогичную цель, как и макроблок по стандарту H.264. Слайс включает в себя число последовательных древовидных блоков в порядке кодирования. Видеокадр или изображение может быть разбито на один или более слайсов. Каждый древовидный блок может быть разбит на единицы кодирования (CU) согласно дереву квадрантов. Например, древовидный блок, как корневой узел дерева квадрантов, может быть разбит на четыре дочерних узла, и каждый дочерний узел может в свою очередь быть родительским узлом и быть разбит на другие четыре дочерних узла. Последний, неразбитый дочерний узел, как концевой узел дерева квадрантов, содержит узел кодирования, т.е., кодированный видеоблок. Синтаксические данные, ассоциированные с кодированным битовым потоком, могут задать максимальное число раз, которое может быть разбит древовидный блок, и могут также задать минимальный размер узлов кодирования.

[0040] CU включает в себя узел кодирования и единицы предсказания (PU) и единицы преобразования (TU), ассоциированные с узлом кодирования. Размер CU соответствует размеру узла кодирования. Размер CU может ранжироваться от 8x8 пикселей до размера древовидного блока с максимумом из 64x64 пикселей или больше. Каждая CU может содержать одну или более PU и одну или более TU. Синтаксические данные, ассоциированные с CU, могут описывать, например, разбиение CU на одну или более PU. Режимы разбиения могут различаться между тем, кодирована ли CU в режиме пропуска или прямом режиме, кодирована в режиме внутреннего предсказания, или кодирована в режиме внешнего предсказания. PU могут быть разбиты, чтобы быть квадратной или неквадратной формы. Синтаксические данные, ассоциированные с CU, могут также описывать, например, разбиение CU на одну или более TU согласно дереву квадрантов. TU может быть разбита, чтобы быть квадратной или неквадратной формы.

[0041] В общем, PU включает в себя данные, относящиеся к процессу предсказания. Например, когда PU кодирована во внутреннем режиме, PU может включать в себя данные, описывающие режим внутреннего предсказания для PU. В качестве другого примера, когда PU кодирована во внешнем режиме, PU может включать в себя данные, задающие вектор движения для PU. Данные, задающие вектор движения для PU, могут описывать, например, горизонтальную составляющую вектора движения, вертикальную составляющую вектора движения, разрешение для вектора движения (например, точность в одну четвертую пикселя или точность в одну восьмую пикселя), опорное изображение, на которое указывает вектор движения, и/или список опорных изображений (например, Список 0 или Список 1) для вектора движения.

[0042] В общем, TU используется для процессов преобразования и квантования. CU, имеющая одну или более PU, может также включать в себя одну или более TU. Вслед за предсказанием, видеокодер 20 может вычислить остаточные значения, соответствующие PU. Остаточные значения содержат значения разностей пикселей, которые могут быть преобразованы в коэффициенты преобразования, квантованы, и просканированы с использованием TU, чтобы произвести последовательные коэффициенты преобразования для энтропийного кодирования. Это раскрытие обычно использует термин ″видеоблок″ для ссылки на узел кодирования CU. В некоторых конкретных случаях, это раскрытие может также использовать термин ″видеоблок″ для ссылки на древовидный блок, т.е., LCU, или CU, которая включает в себя узел кодирования PU и TU.

[0043] Видеопоследовательность обычно включает в себя ряд видеокадров или изображений. Группа изображений (GOP) в основном содержит ряд из одной или более видеоизображений. GOP может включать синтаксические данные в заголовок GOP, заголовок одного или более изображений, или куда-либо еще, которые описывают число изображений, включенных в GOP. Каждый слайс изображения может включать в себя синтаксические данные слайса, которые описывают режим кодирования для соответствующего слайса. Видеокодер 20 обычно осуществляет функционирование в отношении видеоблоков внутри отдельных слайсов видео для того, чтобы кодировать видеоданные. Видеоблок может соответствовать узлу кодирования внутри CU. Видеоблоки могут иметь фиксированные или переменные размеры, и могут отличаться по размеру согласно точно определенному стандарту кодирования.

[0044] В качестве примера, HM поддерживает предсказание при различных размерах PU. Предполагая, что размер конкретной CU составляет 2N×2N, HM поддерживает внутреннее предсказание при размерах PU 2N×2N или N×N, и внешнее предсказание при симметричных размерах PU 2N×2N, 2N×N, N×2N или N×N. HM также поддерживает асимметричное разбиение для внешнего предсказания при размерах PU 2N×nU, 2N×nD, nL×2N и nR×2N. При асимметричном разбиении, одно направление CU не разбивается, тогда как другое направление разбивается на 25% и 75%. Участок CU, соответствующий 25%-разделу, указан посредством ″n″, за которой идет указание ″верхний″, ″нижний″, ″левый″ или ″правый″. Таким образом, например, ″2N×nU″ ссылается на CU 2N×2N, которая разбита горизонтально на PU 2N×0,5N сверху и PU 2N×1,5N снизу.

[0045] В этом раскрытии, ″N×N″ и ″N на N″ могут быть использованы взаимозаменяемо для ссылки на размеры пикселей видеоблока в том, что касается вертикальных и горизонтальных размеров, например, 16×16 пикселей или 16 на 16 пикселей. В общем, блок 16×16 будет иметь 16 пикселей в вертикальном направлении (y=16) и 16 пикселей в горизонтальном направлении (x=16). Аналогично, блок N×N, в общем, имеет N пикселей вертикальном направлении и N пикселей в горизонтальном направлении, где N представляет собой неотрицательное целое значение. Пиксели в блоке могут быть скомпонованы в ряды и столбцы. Более того, блоки необязательно должны иметь такое же число пикселей в горизонтальном направлении, как и в вертикальном направлении. Например, блоки могут содержать N×M пикселей, где M необязательно равно N.

[0046] Вслед за кодированием с внутренним предсказанием или внешним предсказанием с использованием PU из CU, видеокодер 20 может вычислить остаточные данные для TU из CU. PU могут содержать данные пикселей в пространственной области (также называемой пиксельной областью), и TU могут содержать коэффициенты в области преобразования, следующие за применением преобразования, например, дискретного косинусного преобразования (DCT), целочисленного преобразования, вейвлет-преобразования, или принципиально аналогичного преобразования к остаточным видеоданным. Остаточные данные могут соответствовать разности пикселей между пикселями некодированного изображения и значениями предсказания, соответствующими PU. Видеокодер 20 может образовать TU, включающие в себя остаточные данные для CU, и затем преобразовать TU, чтобы произвести коэффициенты преобразования для CU.

[0047] Вслед за любыми преобразованиями, чтобы произвести коэффициенты преобразования, видеокодер 20 может выполнить квантование коэффициентов преобразования. Квантование обычно относится к процессу, в котором коэффициенты преобразования квантуются, чтобы по возможности уменьшить величину данных, используемых для представления коэффициентов, обеспечивая дополнительное сжатие. Процесс квантования может уменьшить глубину в битах, ассоциированную с некоторыми или всеми коэффициентами.

[0048] В некоторых примерах, видеокодер 20 может использовать предварительно заданный порядок сканирования для сканирования квантованных коэффициентов преобразования, чтобы произвести последовательный вектор, который может быть энтропийно кодирован. В других примерах, видеокодер 20 может выполнять адаптивное сканирование. После сканирования квантованных коэффициентов преобразования для образования одномерного вектора, видеокодер 20 может энтропийно кодировать одномерный вектор, например, согласно контекстно-адаптированному кодированию с переменной длиной кодового слова (CAVLC), контекстно-зависимому адаптивному двоичному арифметическому кодированию (CABAC), зависимому от синтаксиса контекстно-адаптивному двоичному арифметическому кодированию (SBAC), кодированию с энтропией разбиения по вероятностному интервалу (PIPE), или любой другой методике энтропийного кодирования. Видеокодер 20 может также энтропийно кодировать синтаксические элементы, ассоциированные с кодированными видеоданными, для использования видеодекодером 30 при декодировании видеоданных.

[0049] Чтобы выполнить CABAC, видеокодер 20 может присвоить контекст, в рамках модели контекста, символу, который должен быть передан. Контекст может относится, например, к тому, являются ли соседние значения символа нулевыми или нет. Чтобы выполнить CAVLC, видеокодер 20 может выбрать код с переменной длиной для символа, который должен быть передан. Кодовые слова в VLC могут быть сконструированы так, чтобы относительно более короткие коды соответствовали наиболее вероятным символам, тогда как более длинные коды соответствовали менее вероятным символам. Таким образом, использование VLC может достигнуть небольших сбережений по сравнению, например, с использованием кодовых слов с переменной длиной для каждого символа, который должен быть передан. Определение вероятности может быть основано на контексте, присвоенном символу.

[0050] В дополнение к сигнализации кодированных видеоданных в битовом потоке видеодекодеру 30 в устройстве-адресате 14, видеокодер 20 может также декодировать кодированные видеоданные и реконструировать блоки внутри видеокадра или изображения для использования в качестве опорных данных во время процесса внутреннего или внешнего предсказания для последовательно кодированных блоков. Однако, после разделения видеокадра или изображения на блоки (например, LCU и их под-CU), кодирования блоков и затем декодирования блоков, могут возникнуть заметные артефакты на краях между блоками. Для того, чтобы удалить эти артефакты ″блочности″, видеокодер 20 может применить фильтры удаления блочности к декодированным видеоблокам перед сохранением в качестве опорных блоков. Аналогично, видеодекодер 30 может быть сконфигурирован с возможностью декодирования видеоданных, принятых в битовом потоке из видеокодера 20 устройства-источника 12, и применения одинаковых или аналогичных фильтров удаления блочности к декодированным видеоданным в целях отображения видеоданных, также как и для использования видеоданных в качестве опорных данных для последовательно декодированных видеоданных.

[0051] Фильтрация для удаления блочности, выполняемая устройством кодирования видео, таким как видеокодер 20 или видеодекодер 30, перед сохранением данных для использования в качестве опорных данных, в общем называется фильтрацией ″контурным″ фильтром, поскольку фильтрация выполняется внутри контура кодирования. Посредством конфигурирования как видеокодера 20, так и видеодекодера 30 с возможностью применения одинаковых способов удаления блочности, устройства кодирования видео могут быть синхронизированы, так, чтобы удаление блочности не вносило ошибку для последовательно кодированных видеоданных, которые используют видеоданные с удаленной блочностью в качестве опорных данных.

[0052] Видеокодер 20 и видеодекодер 30 в общем сконфигурированы с возможностью определения, для каждого края видеоблока, в том числе края PU и TU, применять ли фильтр удаления блочности для удаления блочности края. Устройства кодирования видео могут быть сконфигурированы с возможностью определения, удалить ли блочность края, на основе анализа одной или более линий пикселей, перпендикулярных краю, например, линии из 8 пикселей. Таким образом, например, для вертикального края, устройство кодирования видео может определить, удалить ли блочность края, посредством проверки четырех пикселей слева и четырех пикселей справа от края вдоль общей линии. В общем число выбранных пикселей соответствует наименьшему блоку для удаления блочности, например, 88 пикселей. Таким образом, линия пикселей, используемая для анализа, тянется вдоль краев PU и TU видеоблока с пикселями на каждой стороне края, например, слева или справа от края или выше или ниже края. Линия пикселей, используемая для анализа, выполнять ли удаление блочности для края, такженазывается набором пикселей поддержки, или просто ″поддержкой″.

[0053] Устройства кодирования видео могут быть сконфигурированы с возможностью исполнения функций принятия решения об удалении блочности на основе поддержки для конкретного края. В общем, функции принятия решения об удалении блочности сконфигурированы с возможностью обнаружения высокочастотных изменений внутри пикселей поддержки. Обычно, когда обнаружено высокочастотное изменение, функция принятия решения об удалении блочности предоставляет указание, что заметные артефакты присутствуют на крае и должно произойти удаление блочности. Функции принятия решения об удалении блочности могут также быть сконфигурированы с возможностью определения типа и силы фильтра удаления блочности для применения к краям на основе поддержки. Тип и сила фильтра удаления блочности могут быть указаны пороговыми значениями tc и β.

[0054] Это раскрытие описывает способы сигнализации параметров фильтра удаления блочности для текущего слайса видеоданных с уменьшенными издержками битового потока. Параметры фильтра удаления блочности задают фильтр удаления блочности, используемый для удаления артефактов блочности из декодированных видеоблоков текущего слайса. Параметры фильтра удаления блочности включают в себя синтаксические элементы, сконфигурированные с возможностью указания, разрешена ли фильтрация для удаления блочности или запрещена, и, если разрешена, смещения параметров фильтра удаления блочности для пороговых значений tc и β.

[0055] Параметры фильтра удаления блочности могут быть кодированы в одном или более из набора параметров уровня изображения и заголовка слайса. Набор параметров уровня изображения может содержать либо набор параметров изображения (PPS), либо набор параметров адаптации (APS). PPS является набором параметров уровня изображения, который содержит данные, имеющие малую вероятность изменения между изображениями, которые относятся к PPS. APS являются набором параметров уровня изображения, предназначенным для использования с адаптируемыми под изображение данными, которые имеют большую вероятность изменения от изображения к изображению. В одном примере, APS включает в себя параметры для фильтра удаления блочности, адаптивного контурного фильтра (ALF), адаптивного смещения выборки (SAO). Включение этих параметров в APS вместо PPS может уменьшить число битов, передаваемых для видеопоследовательности, так как данные постоянного PPS не нужно повторять при изменении параметров фильтра удаления блочности, ALF или SAO.

[0056] Фиг. 2 является блок-схемой, иллюстрирующей пример видеокодера 20, который может реализовать способы, описанные в этом раскрытии, для кодирования параметров фильтра удаления блочности с уменьшенными издержками битового потока. Видеокодер 20 может выполнять внутреннее и внешнее кодирование видеоблоков внутри слайсов видео. Внутреннее кодирование полагается на пространственное предсказание для уменьшения или удаления пространственной избыточности в видео внутри данного видеокадра или изображения. Внешнее кодирование полагается на временное предсказание для уменьшения или удаления временной избыточности в видео внутри смежных кадров или изображений видеопоследовательности. Внутренний режим (I-режим) может относиться к любому из нескольких пространственных режимов сжатия. Внешние режимы, такие как однонаправленное предсказание (P-режим) или двунаправленное предсказание (B-режим), могут относиться к любому из нескольких временных режимов сжатия.

[0057] В примере по Фиг. 2, видеокодер 20 включает в себя блок 40 выбора режима, блок 42 оценки движения, блок 44 компенсации движения, блок 46 обработки внутреннего предсказания, память 64 опорных изображений, сумматор 50, блок 52 обработки преобразования, блок 54 квантования и блок 56 энтропийного кодирования. Для реконструкции видеоблока, видеокодер 20 также включает в себя блок 58 обратного квантования, блок 60 обработки обратного преобразования и сумматор 62. Фильтр 63 удаления блочности также включен для фильтрации границ блока, чтобы удалить артефакты блочности из реконструированных видеоблоков.

[0058] Как показано на Фиг. 2, видеокодер 20 принимает текущий видеоблок внутри слайса видео, который должен быть кодирован. Слайс может быть разделен на многочисленные видеоблоки. Блок 40 выбора режима может выбрать один из режимов кодирования, внутренний или внешний, для текущего видеоблока на основе ошибочных результатов. Если выбраны внутренний или внешний режимы, блок 40 выбора режима предоставляет результирующий кодированный посредством внутреннего или внешнего кодирования блок сумматору 50, чтобы сгенерировать остаточные данные блока, и сумматору 62, чтобы реконструировать кодированный блок для использования в качестве опорного блока внутри опорного изображения, хранящегося в памяти 64 опорных изображений. Блок 46 обработки внутреннего предсказания выполняет кодирование с внутренним предсказанием текущего видеоблока, относящегося к одному или более соседним блокам в одном кадре или слайсе, как текущего блока, который должен быть кодирован, для обеспечения пространственного сжатия. Блок 42 оценки движения и блок 44 компенсации движения выполняют кодирование с внешним предсказанием текущего видеоблока, относящегося к одному или более предсказательным блокам в одной или более опорных изображениях, для обеспечения временного сжатия.

[0059] В случае внешнего кодирования, блок 42 оценки движения может быть сконфигурирован с возможностью определения режима внешнего предсказания для слайса видео согласно предварительно определенному шаблону для видеопоследовательности. Предварительно определенный шаблон может обозначить слайсы видео в последовательности как P-слайсы или B-слайсы. Блок 42 оценки движения и блок 44 компенсации движения могут иметь высокую степень интеграции, но проиллюстрированы раздельно из смысловых соображений. Оценка движения, выполняемая блоком 42 оценки движения, является процессом генерирования векторов движения, который оценивает движение для видеоблоков. Вектор движения, например, может указывать сдвиг PU видеоблока внутри текущего видеокадра или изображения относительно предсказательного блока внутри опорного изображения.

[0060] Предсказательный блок является блоком, который оказался точно совпадающим с PU видеоблока, который должен быть кодирован, в том, что касается разности пикселей, которая может быть определена посредством суммы абсолютных разностей (SAD), суммы квадратов разностей (SSD), или других показателей разностей. В некоторых примерах, видеокодер 20 может вычислить значения для положений дробных пикселей опорных изображений, хранящихся в памяти 64 опорных изображений. Например, видеокодер 20 может вычислить значения положений одной-четвертой пикселя, положений одной-восьмой пикселя, или других положений дробных пикселей опорного изображения. Вследствие этого, блок 42 оценки движения может выполнить поиск движения относительно положений целых пикселей и положений дробных пикселей и вывести вектор движения с точностью дробного пикселя.

[0061] Блок 42 оценки движения вычисляет вектор движения для PU видеоблока в кодированном посредством внешнего кодирования слайсе посредством сравнения положения PU с положением предсказательного блока опорного изображения. Опорное изображение может быть выбрано из первого списка опорных изображений (Списка 0) или второго списка опорных изображений (Списка 1), каждый из которых идентифицирует одно или более опорных изображений, хранящихся в памяти 64 опорных изображений. Блок 42 оценки движения отправляет вычисленный вектор движения на блок 56 энтропийного кодирования и блок 44 компенсации движения.

[0062] Компенсация движения, выполняемая блоком 44 компенсации движения, может предусматривать извлечение или генерирование предсказательного блока на основе вектора движения, определенного оценкой движения. После приема вектора движения для PU текущего видеоблока, блок 44 компенсации движения может локализовать предсказательный блок, на который указывает вектор движения, в одном из списков опорных изображений. Видеокодер 20 образует остаточный видеоблок посредством вычитания значений пикселей предсказательного блока из значений пикселей текущего видеоблока, который кодируется, образуя значения разностей пикселей. Значения разностей пикселей образуют остаточные данные для блока, и могут включать в себя как составляющую разности яркости, так и составляющую разности цветности. Сумматор 50 представляет собой компонент или компоненты, которые выполняют эту операцию вычитания. Блок 44 компенсации движения может также генерировать синтаксические элементы, ассоциированные с видеоблоками и слайсом видео, для использования видеодекодером 30 при декодировании видеоблоков слайса видео.

[0063] После того, как блок 44 компенсации движения сгенерирует предсказательный блок для текущего видеоблока, видеокодер 20 образует остаточный видеоблок посредством вычитания предсказательного блока из текущего видеоблока. Остаточные видеоданные в остаточном блоке могут быть включены в одну или более TU и применены к блоку 52 обработки преобразования. Блок 52 обработки преобразования преобразует остаточные видеоданные в остаточные коэффициенты преобразования с использованием преобразования, такого как дискретное косинусное преобразование (DCT) или принципиально аналогичное преобразование. Блок 52 обработки преобразования может преобразовать остаточные видеоданные из пиксельной области в область преобразования, такую как частотная область.

[0064] Блок 52 обработки преобразования может отправить результирующие коэффициенты преобразования на блок 54 квантования. Блок 54 квантования квантует коэффициенты преобразования для дополнительного уменьшения скорости передачи битов. Процесс квантования может уменьшить глубину в битах, ассоциированную с некоторыми или всеми коэффициентами. Степень квантования может быть модифицирована посредством регулирования параметра квантования. В некоторых примерах, блок 54 квантования может затем выполнить сканирование матрицы, включающей в себя квантованные коэффициенты преобразования. В качестве альтернативы, блок 56 энтропийного кодирования может выполнить сканирование.

[0065] Вслед за квантованием, блок 56 энтропийного кодирования энтропийно кодирует квантованные коэффициенты преобразования. Например, блок 56 энтропийного кодирования может выполнить контекстно-адаптированное кодирование с переменной длиной кодового слова (CAVLC), контекстно-зависимое адаптивное двоичное арифметическое кодирование (CABAC), или другой способ энтропийного кодирования. Вслед за энтропийным кодированием посредством блока 56 энтропийного кодирования, кодированный битовый поток может быть передан на видеодекодер 30, или заархивирован для дальнейшей передачи или извлечения видеодекодером 30. Блок 56 энтропийного кодирования может также энтропийно кодировать векторы движения и другие синтаксические элементы для текущего слайса видео, который кодируется.

[0066] Блок 58 обратного квантования и блок 60 обработки обратного преобразования применяют обратное квантование и обратное преобразование, соответственно, для реконструкции остаточного блока в пиксельной области для дальнейшего использования в качестве опорного блока опорного изображения. Блок 44 компенсации движения может вычислить опорный блок прибавления остаточного блока к предсказательному блоку одного из опорных изображений внутри одного из списков опорных изображений. Блок 44 компенсации движения может также применить один или более интерполяционных фильтров к реконструированному остаточному блоку, чтобы вычислить значения дробных пикселей для использования при оценке движения. Сумматор 62 прибавляет реконструированный остаточный блок к предсказательному блоку с компенсацией движения, произведенному блоком 44 компенсации движения, чтобы произвести опорный блок опорного изображения для хранения в памяти 64 опорных изображений. Опорный блок фильтруется фильтром 63 удаления блочности для того, чтобы удалить артефакты блочности. Опорный блок затем сохраняется в память 64 опорных изображений. Опорный блок может быть использован блоком 42 оценки движения и блоком 44 компенсации движения в качестве опорного блока для внешнего предсказания блока в последовательном видеокадре или изображении.

[0067] В соответствии со способами этого раскрытия, видеокодер 20 включает в себя фильтр 63 удаления блочности, который выборочно фильтрует выход сумматора 62. В частности, фильтр 63 удаления блочности принимает реконструированные видеоданные из сумматора 62, которые соответствуют предсказательным данным, принятым либо из блока 44 компенсации движения, либо из блока 46 внутреннего предсказания, прибавленным к остаточным данным с обратным квантованием и обратным предсказанием. Таким образом, фильтр 63 удаления блочности принимает декодированные блоки видеоданных, например, декодированные блоки, соответствующие CU из LCU и/или LCU слайса или изображения, и выборочно фильтрует блоки, чтобы удалить артефакты блочности.

[0068] Фильтр 63 удаления блочности в видеокодере 20 фильтрует определенные края TU и PU декодированного видеоблока на основе результата от вычисления насыщенности границы и решений по удалению блочности. Фильтр 63 удаления блочности в общем сконфигурирован с возможностью анализа пикселей видеоблока вблизи заданного края блока, чтобы определить, удалить ли блочность края и как. Более конкретно, решения по удалению блочности могут включать в себя, включен ли фильтр удаления блочности или выключен, является ли фильтр удаления блочности слабым или сильным, и силу слабого фильтра для заданного видеоблока. Фильтр 63 удаления блочности может изменять значения пикселей вблизи заданного края, когда обнаружено высокочастотное изменение в значениях, для того, чтобы удалить артефакты блочности, заметные на крае.

[0069] Вычисление насыщенности границы и решения по удалению блочности зависят от пороговых значений tc и β. Пороговые значения tc и β фильтра удаления блочности зависят от параметра Q, который получается исходя из значения параметра квантования (QP) и насыщенности границы (Bs) для текущего видеоблока как следует ниже:

Если Bs=2, то TcOffset=2

Если Bs≤1, то TcOffset=0

Для tC:Q=Clip3(0, MAX_QP+2, QP+TcOffset); MAX_QP=51

Для β:Q=Clip3(0, MAX_QP, QP)

Clip3(th1, th2, значение)=min(th1, max(th2, значение))

Пороговые значения tc и β могут храниться в таблице, к которой осуществляется доступ на основе параметра Q, полученного из значения QP видеоблока. Процесс удаления блочности описан более подробно ниже со ссылкой на фильтр 100 удаления блочности, проиллюстрированный на Фиг. 4.

[0070] Это раскрытие описывает способы для сигнализации, с уменьшенными издержками битового потока, параметров фильтра удаления блочности, используемых для задания фильтра 63 удаления блочности для текущего слайса видеоданных. Видеокодер 20 определяет параметры фильтра удаления блочности, которые задают фильтр 63 удаления блочности, и затем сигнализирует параметры фильтра удаления блочности, так чтобы видеодекодер 30 мог применить тот же или аналогичный фильтр удаления блочности к декодированным видеоблокам. Параметры фильтра удаления блочности включают в себя синтаксические элементы, заданные для указания, разрешена ли фильтрация для удаления блочности или запрещена, и, если разрешена, смещения параметров фильтра удаления блочности для пороговых значений tc и β.

[0071] Параметры фильтра удаления блочности могут быть кодированы в одном или более из набора параметров уровня изображения и заголовка слайса для сигнализации на видеодекодер 30. Набор параметров уровня изображения может содержать либо набор параметров изображения (PPS), либо набор параметров адаптации (APS). PPS является набором параметров уровня изображения, который содержит данные, имеющие малую вероятность изменения между изображениями, которые относятся к PPS. APS являются набором параметров уровня изображения, предназначенным для использования с адаптируемыми под изображение данными, которые имеют большую вероятность изменения от изображения к изображению.

[0072] Блок 56 энтропийного кодирования видеокодера 20 кодирует первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса для изображений, относящихся к набору параметров уровня изображения. Согласно способам, описанным в этом изобретении, блок 56 энтропийного кодирования кодирует параметры фильтра удаления блочности для текущего слайса видео с уменьшенными издержками битового потока только посредством кодирования второго синтаксического элемента в заголовке слайса, когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса.

[0073] Когда параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, блок 56 энтропийного кодирования исключает кодирование второго синтаксического элемента в заголовке слайса, заданного для указания, какой набор параметров фильтра удаления блочности использовать для задания фильтра 63 удаления блочности для текущего слайса видео. В случае, когда параметры фильтра удаления блочности присутствуют только в одном из набора параметров уровня изображения или заголовке слайса, фильтр 63 удаления блочности задается для текущего слайса видео на основе набора параметров фильтра удаления блочности, которые присутствуют либо в наборе параметров уровня изображения, либо в заголовке слайса. Второму синтаксическому элементу, вследствие этого, необязательно указывать параметры фильтра удаления блочности видеодекодеру 30, так как не требуется принятия решения между набором параметров уровня изображения и заголовком слайса касательно того, какой набор параметров фильтра удаления блочности использовать для задания фильтра удаления блочности на видеодекодере 30.

[0074] Когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, блок 56 энтропийного кодирования кодирует второй синтаксический элемент в заголовке слайса, заданный для указания использовать ли первый набор параметров удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров удаления блочности, включенный в заголовок слайса. В этом случае, фильтр 63 удаления блочности задается для текущего слайса видео на основе одного из первого набора или второго набора параметров удаления блочности. Второму синтаксическому элементу, вследствие этого, необходимо указывать параметры фильтра удаления блочности, используемые для задания фильтра 63 удаления блочности в видеокодере 20, так чтобы видеодекодер 30 мог применить тот же или аналогичный фильтр удаления блочности к декодированным видеоблокам.

[0075] В некоторых случаях, блок 56 энтропийного кодирования может также кодировать синтаксический элемент присутствия управления, заданный для указания, присутствуют ли какие-либо синтаксические элементы управления фильтром удаления блочности либо в наборе параметров уровня изображения, либо в заголовке слайса. Синтаксический элемент присутствия управления может быть сигнализирован в наборе параметров уровня изображения или в наборе параметров более высокого уровня, например, наборе параметров последовательности (SPS). Синтаксические элементы управления фильтром удаления блочности содержат первый и второй синтаксические элементы, описанные выше. Блок 56 энтропийного кодирования, вследствие этого, кодирует синтаксический элемент присутствия управления перед кодированием первого синтаксического элемента. Если синтаксические элементы управления фильтром удаления блочности не присутствуют, видеокодер 20 уведомляет видеодекодер 30 и не кодирует первый или второй синтаксические элементы. В этом случае, видеокодер 20 может использовать заданные по умолчанию параметры фильтра удаления блочности для задания фильтра 63 удаления блочности, применяемого к декодированным видеоблокам.

[0076] В других случаях, блок 56 энтропийного кодирования может кодировать синтаксический элемент разрешения фильтра удаления блочности, заданный для указания, разрешен ли фильтр 63 удаления блочности для одного или более изображений видеопоследовательности, до кодирования первого синтаксического элемента. Синтаксический элемент разрешения фильтра удаления блочности может быть сигнализирован в наборе параметров более высокого уровня, например, наборе параметров последовательности (SPS). Если фильтр 63 удаления блочности запрещен для видеопоследовательности, видеокодер 20 уведомляет видеодекодер 30 и не кодирует первый или второй синтаксические элементы, так как фильтр 63 удаления блочности не применен к декодированным видеоблокам. В этом случае, видеокодер 20 также не кодирует синтаксический элемент присутствия управления.

[0077] В одном примере, первый синтаксический элемент содержит флаг разрешения переопределения, кодированный в PPS для заданного изображения. В этом случае, первый набор параметров фильтра удаления блочности кодируется в PPS и флаг разрешения переопределения указывает, присутствует ли второй набор параметров фильтра удаления блочности в заголовке слайса для одного или более слайсов заданного изображения, который мог бы быть использован для переопределения параметров из PPS. В дополнение, второй синтаксический элемент содержит флаг переопределения, который может быть кодирован в заголовке слайса. Когда флаг разрешения переопределения в PPS указывает, что второй набор параметров фильтра удаления блочности присутствует в заголовке слайса, блок 56 энтропийного кодирования кодирует флаг переопределения, чтобы указать видеодекодеру 30 использовать ли первый набор параметров фильтра удаления блочности в PPS или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, чтобы задать фильтр удаления блочности на видеодекодере 30. Иначе, когда флаг разрешения переопределения в PPS указывает, что в PPS присутствует только первый набор параметров фильтра удаления блочности, блок 56 энтропийного кодирования исключает кодирование флага переопределения в заголовке слайса. Конкретные синтаксические элементы для этого примера описаны более подробно ниже относительно видеодекодера 30 на Фиг. 3.

[0078] В другом примере, первый синтаксический элемент содержит флаг разрешения наследования, кодированный в SPS и/или APS для заданного изображения. В этом случае, второй набор параметров фильтра удаления блочности кодируется в заголовке слайса, и флаг разрешения наследования указывает, присутствует ли в APS первый набор параметров фильтра удаления блочности, который мог бы быть наследован заголовком слайса. Второй синтаксический элемент содержит флаг наследования, который может быть кодирован в заголовке слайса. Когда флаг разрешения наследования в SPS и/или APS указывает, что первый набор параметров фильтра удаления блочности присутствует в APS, блок 56 энтропийного кодирования кодирует флаг наследования, чтобы указать видеодекодеру 30, использовать ли второй набор параметров фильтра удаления блочности в заголовке слайса или наследовать первый набор параметров фильтра удаления блочности в APS, чтобы задать фильтр удаления блочности на видеодекодере 30. Иначе, когда флаг разрешения наследования в SPS и/или APS указывает, что в заголовке слайса присутствует только второй набор параметров фильтра удаления блочности, блок 56 энтропийного кодирования исключает кодирование флага наследования в заголовке слайса. Конкретные синтаксические элементы для этого примера описаны более подробно ниже относительно видеодекодера 30 на Фиг. 3.

[0079] Фиг. 3 является блок-схемой, иллюстрирующей пример видеодекодера 30, который может реализовать способы, описанные в этом раскрытии, для декодирования параметров фильтра удаления блочности, используемых для задания фильтров удаления блочности, применяемых к слайсам видео. В примере по Фиг. 3, видеодекодер 30 включает в себя блок 80 энтропийного декодирования, блок 81 обработки предсказания, блок 86 обратного квантования, блок 88 обработки обратного преобразования, сумматор 90, фильтр 91 удаления блочности и память 92 опорных изображений. Блок 81 обработки предсказания включает в себя блок 82 компенсации движения и блок 84 обработки внутреннего предсказания. Видеодекодер 30 может, в некоторых примерах, выполнять проход декодирования, в общем обратный проходу кодирования, описанному в отношении видеокодера 20 с Фиг. 2.

[0080] Во время процесса декодирования, видеодекодер 30 принимает кодированный битовый поток видео, который представляет собой видеоблоки кодированного слайса видео, и ассоциированные синтаксические элементы из видеокодера 20. Когда представленные видеоблоки в битовом потоке включают в себя сжатые видеоданные, блок 80 энтропийного декодирования видеодекодера 30 энтропийно декодирует битовый поток, чтобы сгенерировать квантованные коэффициенты, векторы движения, и другие синтаксические элементы. Блок 80 энтропийного декодирования пересылает векторы движения и другие синтаксические элементы блоку 81 обработки предсказания. Видеодекодер 30 может принимать синтаксические элементы на уровне последовательности, уровне изображения, уровне слайса и/или уровне видеоблока. В некоторых случаях, блок 80 энтропийного декодирования декодирует синтаксические элементы управления фильтром удаления блочности, включающие в себя параметры фильтра удаления блочности, чтобы задать фильтр 91 удаления блочности для заданного слайса видео.

[0081] Когда слайс видео кодируется как кодированный посредством внутреннего кодирования (I) слайс, блок 84 обработки внутреннего предсказания блока 81 обработки предсказания может сгенерировать данные предсказания для видеоблока текущего слайса видео на основе сигнализированного режима внутреннего предсказания и данных из ранее декодированных блоков текущего кадра или изображения. Когда видеокадр кодируется как кодированный посредством внешнего кодирования (т.е., B или P) слайс, блок 82 компенсации движения блока 81 обработки предсказания производит предсказательные блоки для видеоблока текущего слайса видео на основе векторов движения и других синтаксических элементов, принятых из блока 80 энтропийного декодирования. Предсказательные блоки могут быть произведены из одной из опорных изображений внутри одного из списков опорных изображений. Видеодекодер 30 может составлять списки опорных кадров, Список 0 и Список 1, с использованием заданных по умолчанию способов составления на основе опорных изображений, хранящихся в памяти 92 опорных изображений.

[0082] Блок 82 компенсации движения определяет информацию предсказания для видеоблока текущего слайса видео посредством выделения векторов движения и других синтаксических элементов, и использует информацию предсказания, чтобы произвести предсказательные блоки для текущего видеоблока, который декодируется. Например, блок 82 компенсации движения некоторые из принятых синтаксических элементов для определения режима предсказания (например, внутреннего- или внешнего предсказания), используемого для кодирования видеоблоков слайса видео, типа слайса с внешним предсказанием (например, B slice или P slice), информации составления для одного или более списков опорных изображений для слайса, векторов движения для каждого кодированного посредством внешнего кодирования видеоблока слайса, статуса внешнего предсказания для каждого кодированного посредством внешнего кодирования видеоблока слайса, и другой информации для декодирования видеоблоков в текущем слайсе видео.

[0083] Блок 82 компенсации движения может также выполнить интерпретацию на основе интерполяционных фильтров. Блок 82 компенсации движения может использовать интерполяционные фильтры, которые используются видеокодером 20 во время кодирования видеоблоков, для вычисления интерполированных значений для дробных пикселей опорных блоков. Блок 82 компенсации движения может определить интерполяционные фильтры, используемые видеокодером 20, исходя из принятых синтаксических элементов и использовать интерполяционные фильтры, чтобы произвести предсказательные блоки.

[0084] Блок 86 обратного квантования осуществляет обратное квантование, т.е., деквантует, квантованные коэффициенты преобразования, предоставленные в битовом потоке и декодированные блоком 80 энтропийного декодирования. Процесс обратного квантования может включать в себя использование параметра квантования, вычисленного видеокодером 20 для каждого видеоблока в слайсе видео, чтобы определить степень квантования и, аналогично, степень обратного квантования, которые должны быть применены. Блок 88 обработки обратного преобразования применяет обратное преобразование, например, обратное DCT, обратное целочисленное преобразование, или принципиально аналогичный процесс обратного преобразования, к коэффициентам преобразования для того, чтобы произвести остаточные блоки в пиксельной области.

[0085] После того, как блок 82 компенсации движения сгенерирует предсказательный блок для текущего видеоблока на основе векторов движения и других синтаксических элементов, видеодекодер 30 образует декодированный видеоблок посредством суммирования остаточных блоков из блока 88 обработки обратного преобразования с соответствующими предсказательными блоками, сгенерированными блоком 82 компенсации движения. Сумматор 90 представляет собой компонент или компоненты, которые выполняют эту операцию суммирования. Фильтр 91 удаления блочности применяется для фильтрации блоков, принятых из сумматора 90, для того, чтобы удалять артефакты блочности. Декодированные видеоблоки в заданном изображении затем сохраняются в памяти 92 опорных изображений, которая хранит опорные изображения, используемые для последующей компенсации движения. Память 92 опорных изображений также хранит декодированные видео для дальнейшего представления на устройстве отображения, таком как устройство 32 отображения по Фиг. 1.

[0086] Фильтр 91 удаления блочности в видеодекодере 30 фильтрует определенные края TU и PU декодированного видеоблока на основе результата от вычисления насыщенности границы и решений по удалению блочности. Вычисление насыщенности границы и решения по удалению блочности зависят от пороговых значений tc и β, которые могут быть сигнализированы видеодекодеру 30 из видеокодера 20 с использованием синтаксических элементов. Фильтр 91 удаления блочности может изменять значения пикселей вблизи заданного края видеоблока для того, чтобы удалить артефакты блочности, заметные на крае. Фильтр 91 удаления блочности соответствует по существу фильтру 63 удаления блочности с Фиг. 2 в том, что фильтр 91 удаления блочности может быть сконфигурирован с возможностью выполнения любого или всех способов, описанных по отношению к фильтру 63 удаления блочности. Процесс удаления блочности описан более подробно ниже со ссылкой на фильтр 100 удаления блочности, проиллюстрированный на Фиг. 4.

[0087] В соответствии со способами этого раскрытия, блок 80 энтропийного декодирования в видеодекодере 30 декодирует синтаксические элементы управления фильтром удаления блочности, включенные в битовый поток, принятый из видеокодера 20. Синтаксические элементы управления фильтром удаления блочности включают в себя параметры фильтра удаления блочности, которые указывают, разрешена ли фильтрация для удаления блочности или запрещена, и, если разрешена, смещения параметров фильтра удаления блочности для пороговых значений tc и β. Видеодекодер 30 определяет параметры фильтра удаления блочности, которые должны быть использованы для фильтра 91 удаления блочности, из синтаксических элементов управления фильтром удаления блочности, включенных в битовый поток. Видеодекодер 30 затем задает фильтр 91 удаления блочности на основе параметров фильтра удаления блочности, чтобы функционировать также или аналогично фильтру 63 удаления блочности в видеокодере 20, для того, чтобы декодировать видеоблоки в битовом потоке.

[0088] Это раскрытие описывает способы для сигнализации, с уменьшенными издержками битового потока, параметров фильтра удаления блочности, используемых для задания фильтра 91 удаления блочности для текущего слайса видеоданных. Параметры фильтра удаления блочности могут быть кодированы в одном или более из набора параметров уровня изображения и заголовка слайса для сигнализации на видеодекодер 30. Набор параметров уровня изображения может содержать либо набор параметров изображения (PPS), либо набор параметров адаптации (APS). PPS является набором параметров уровня изображения, который содержит данные, имеющие малую вероятность изменения между изображениями, которые относятся к PPS. APS являются набором параметров уровня изображения, предназначенным для использования с адаптируемыми под изображениями данными, которые имеют большую вероятность изменения от изображения к изображению.

[0089] Блок 80 энтропийного декодирования видеодекодера 30 декодирует первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса для изображений, относящихся к набору параметров уровня изображения. Согласно способам, описанным в этом изобретении, блок 80 энтропийного декодирования декодирует только второй синтаксический элемент в заголовке слайса, когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса.

[0090] Когда параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, блок 80 энтропийного декодирования определяет, что второй синтаксический элемент, заданный для указания, какой набор параметров фильтра удаления блочности использовать для задания фильтра 91 удаления блочности для текущего слайса видео, не присутствует в заголовке слайса, который должен быть декодирован. В случае, когда параметры фильтра удаления блочности присутствуют только в одном из набора параметров уровня изображения или заголовке слайса, фильтр 91 удаления блочности задается для текущего слайса видео на основе набора параметров фильтра удаления блочности, которые присутствуют либо в наборе параметров уровня изображения, либо в заголовке слайса. Второй синтаксический элемент, вследствие этого, является необязательным, так как видеодекодер 30 не должен решать, какой набор параметров фильтра удаления блочности использовать для задания фильтра 91 удаления блочности в видеодекодере 30.

[0091] Когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, блок 80 энтропийного декодирования декодирует второй синтаксический элемент в заголовке слайса, заданный для указания использовать ли первый набор параметров удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров удаления блочности, включенный в заголовок слайса. В этом случае, фильтр 91 удаления блочности задается для текущего слайса видео на основе одного из первого набора или второго набора параметров удаления блочности. Второй синтаксический элемент, вследствие этого, является обязательным для того, чтобы видеодекодер 30 знал, какой набор параметров фильтра удаления блочности использовать для задания фильтра 91 удаления блочности, чтобы он был таким же или аналогичным фильтру 63 удаления блочности в видеокодере 20.

[0092] В некоторых случаях, блок 80 энтропийного декодирования может также декодировать синтаксический элемент присутствия управления, заданный для указания, присутствуют ли какие-либо синтаксические элементы управления фильтром удаления блочности либо в наборе параметров уровня изображения, либо в заголовке слайса. Синтаксический элемент присутствия управления может быть декодирован из набора параметров уровня изображения или из набора параметров более высокого уровня, например, набора параметров последовательности (SPS). Синтаксические элементы управления фильтром удаления блочности содержат первый и второй синтаксические элементы, описанные выше. Блок 80 энтропийного декодирования, вследствие этого, декодирует синтаксический элемент присутствия управления перед декодированием первого синтаксического элемента. Если синтаксический элемент присутствия управления указывает, что синтаксические элементы управления фильтром удаления блочности не присутствуют, видеодекодер 30 знает, что он не должен декодировать первый или второй синтаксические элементы, так как первый и второй синтаксические элементы не присутствуют в битовом потоке, который должен быть декодирован. В этом случае, видеодекодер 30 может использовать заданные по умолчанию параметры фильтра удаления блочности для задания фильтра 91 удаления блочности, применяемого к декодированным видеоблокам.

[0093] В других случаях, блок 80 энтропийного декодирования может декодировать синтаксический элемент разрешения фильтра удаления блочности, заданный для указания, разрешен ли фильтр 91 удаления блочности для одного или более изображений видеопоследовательности, до декодирования первого синтаксического элемента. Синтаксический элемент разрешения фильтра удаления блочности может быть декодирован из набора параметров более высокого уровня, например, набора параметров последовательности (SPS). Если фильтр 91 удаления блочности запрещен для видеопоследовательности, видеодекодер 30 знает, что он не должен декодировать первый или второй синтаксические элементы, так как фильтр 91 удаления блочности не применен к декодированным видеоблокам. В этом случае, видеодекодер 30 также не должен декодировать синтаксический элемент присутствия управления.

[0094] В одном примере, первый синтаксический элемент содержит флаг разрешения переопределения, кодированный в PPS для заданного изображения. В этом случае, первый набор параметров фильтра удаления блочности кодируется в PPS и флаг разрешения переопределения указывает, присутствует ли второй набор параметров фильтра удаления блочности в заголовке слайса для одного или более слайсов заданного изображения, который мог бы быть использован для переопределения параметров из PPS. В дополнение, второй синтаксический элемент содержит флаг переопределения, который может быть кодирован в заголовке слайса. Когда флаг разрешения переопределения в PPS указывает, что второй набор параметров фильтра удаления блочности присутствует в заголовке слайса, блок 80 энтропийного декодирования декодирует флаг переопределения, чтобы определить, использовать ли первый набор параметров фильтра удаления блочности в PPS или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, чтобы задать фильтр 91 удаления блочности. Иначе, когда флаг разрешения переопределения в PPS указывает, что в PPS присутствует только первый набор параметров фильтра удаления блочности, блок 80 энтропийного декодирования определяет, что флаг переопределения не присутствует в заголовке слайса который должен быть декодирован.

[0095] Таблица 1 предоставляет примерный участок синтаксиса PPS, включающего в себя флаг разрешения переопределения, т.е., deblocking_filter_override_enabled_flag, и синтаксический элемент присутствия управления, т.е., deblocking_filter_control_present_flag.

ТАБЛИЦА 1
Синтаксис PPS с флагом разрешения переопределения
pic_parameter_set_rbsp( ) { Дескриптор deblocking_filter_control_present_flag u(1) if( deblocking_filter_control_present_flag) { deblocking_filter_override_enabled_flag u(1) pic_disable_deblocking_filter_flag u(1) if(!pic_disable_deblocking_filter_flag) { beta_offset_div2 se(v) tc_offset_div2 se(v) } }

[0096] Семантика для синтаксиса PPS из Таблицы 1 задана как следует ниже. deblocking_filter_control_present_flag, равный 1, точно определяет присутствие синтаксических элементов управления фильтром удаления блочности в наборе параметров изображения и в заголовке слайса для изображений, относящихся к набору параметров изображения. deblocking_filter_control_present_flag, равный 0, точно определяет отсутствие синтаксических элементов управления фильтром удаления блочности в наборе параметров изображения и в заголовке слайса для изображений, относящихся к набору параметров изображения.

[0097] deblocking_filter_override_enabled_flag, равный 1, точно определяет присутствие deblocking_filter_override_flag в заголовке слайса для изображений, относящихся к набору параметров изображения. deblocking_filter_override_enabled_flag, равный 0, точно определяет отсутствие deblocking_filter_override_flag в заголовке слайса для изображений, относящихся к набору параметров изображения. Когда не присутствует, значение deblocking_filter_override_enabled_flag подразумевается равным 0.

[0098] pic_disable_deblocking_filter_flag, равный 1, точно определяет, что операция фильтра удаления блочности не должна быть применена для изображений, относящихся к набору параметров изображения, когда deblocking_filter_override_enabled_flag равен 0. pic_disable_deblocking_filter_flag, равный 0, точно определяет, что операция фильтра удаления блочности должна быть применена для изображений, относящихся к набору параметров изображения, когда deblocking_filter_override_enabled_flag равен 0. Когда не присутствует, значение pic_disable_deblocking_filter_flag подразумевается равным 0.

[0099] Синтаксические элементы beta_offset_div2 и tc_offset_div2 точно определяют заданные по умолчанию смещения параметров удаления блочности для  и tc (деленные на 2), которые применяются для изображений, относящихся к набору параметров изображения, пока заданные по умолчанию смещения параметров удаления блочности не будут переопределены смещениями параметров удаления блочности, присутствующими в заголовке сегмента слайса для изображений, относящихся к набору параметров изображения. Значения синтаксических элементов beta_offset_div2 и tc_offset_div2 должны оба быть в диапазоне от −6 до 6, включительно. Когда не присутствует, значение синтаксических элементов beta_offset_div2 и tc_offset_div2 подразумевается равным 0.

[0100] Таблица 2 предоставляет примерный участок синтаксиса заголовка слайса, включающего в себя флаг переопределения, т.е., deblocking_filter_override_flag, который условно кодируется на основе флага разрешения переопределения и синтаксического элемента присутствия управления в синтаксисе PPS.

ТАБЛИЦА 2
Синтаксис заголовка слайса с флагом переопределения
slice_segment_header( ) { Дескриптор if(deblocking_filter_control_present_flag) { if(deblocking_filter_override_enabled_flag) deblocking_filter_override_flag u(1) if(deblocking_filter_override_flag) { slice_disable_deblocking_filter_flag u(1) if(!slice_disable_deblocking_filter_flag) { beta_offset_div2 se(v) tc_offset_div2 se(v) } } }

[0101] Семантика для синтаксиса заголовка слайса из Таблицы 2 задана как следует ниже. deblocking_filter_override_flag, равный 0, точно определяет, что для удаления блочности в текущем слайсе используются параметры удаления блочности из активного набора параметров изображения. deblocking_filter_override_flag, равный 1, точно определяет, что для удаления блочности в текущем слайсе используются параметры удаления блочности из заголовка сегмента слайса. Когда не присутствует, значение deblocking_filter_override_flag подразумевается равным 0.

[0102] slice_disable_deblocking_filter, равный 1, точно определяет, что операция фильтра удаления блочности не применена для текущего слайса. slice_disable_deblocking_filter_flag, равный 0, точно определяет, что операция фильтра удаления блочности применена для текущего слайса. Когда slice_disable_deblocking_filter_flag не присутствует, он подразумевается равным pic_disable_deblocking_filter_flag в синтаксисе PPS.

[0103] Синтаксические элементы beta_offset_div2 и tc_offset_div2 точно определяют смещения параметров удаления блочности для β и tc (деленные на 2) для текущего слайса. Значения синтаксических элементов beta_offset_div2 и tc_offset_div2 должны быть в диапазоне от −6 до 6, включительно.

[0104] В другом примере, первый синтаксический элемент содержит флаг разрешения наследования, кодированный в SPS и/или APS для заданного изображения. В этом случае, второй набор параметров фильтра удаления блочности кодируется в заголовке слайса, и флаг разрешения наследования указывает, присутствует ли в APS первый набор параметров фильтра удаления блочности, который мог бы быть наследован заголовком слайса. Второй синтаксический элемент содержит флаг наследования, который может быть кодирован в заголовке слайса. Когда флаг разрешения наследования в SPS и/или APS указывает, что первый набор параметров фильтра удаления блочности присутствует в APS, блок 80 энтропийного декодирования декодирует флаг наследования, чтобы определить, использовать ли второй набор параметров фильтра удаления блочности в заголовке слайса или наследовать первый набор параметров фильтра удаления блочности в APS, чтобы задать фильтр 91 удаления блочности. Иначе, когда флаг разрешения наследования в SPS и/или APS указывает, что в заголовке слайса присутствует только второй набор параметров фильтра удаления блочности, блок 80 энтропийного декодирования определяет, что флаг наследования не присутствует в заголовке слайса, который должен быть декодирован.

[0105] Сигнализация параметров фильтра удаления блочности на видеодекодер была предложена в A. Norkin, ″BoG report on resolving deblocking filter description issues″, 7ое JCT-VC собрание, Женева, CH, ноябрь 2011, документ JCT-VC G1035_r1+ обновление. Таблица 3 предоставляет пример синтаксиса SPS, включающего в себя флаг разрешения наследования, т.е., deblocking_filter_in_aps_enabled_flag.

ТАБЛИЦА 3
Синтаксис SPS с флагом разрешения наследования
seq_parameter_set_rbsp( ) { Дескриптор profile_idc u(8) (опущен) chroma_pred_from_luma_enabled_flag u(1) deblocking_filter_in_aps_enabled_flag u(1) loop_filter_across_slice_flag u(1) sample_adaptive_offset_enabled_flag u(1) adaptive_loop_filter_enabled_flag u(1) pcm_loop_filter_disable_flag u(1) cu_qp_delta_enabled_flag u(1) temporal_id_nesting_flag u(1) inter_4x4_enabled_flag u(1) rbsp_trailing_bits( ) }

[0106] Таблица 4 предоставляет пример синтаксиса APS, включающего в себя флаг разрешения наследования, т.е., aps_deblocking_filter_flag.

[0107] Семантика SPS и синтаксис APS из Таблиц 3 и 4 задана как следует ниже. deblocking_filter_in_aps_enabled_flag в SPS, равный 0, означает, что параметры фильтра удаления блочности присутствуют в заголовке слайса, и, равный 1, означает, что параметры фильтра удаления блочности присутствуют в APS. aps_deblocking_filter_flag в APS равен deblocking_filter_in_aps_enabled_flag в SPS. aps_deblocking_filter_flag указывает, что параметры фильтра удаления блочности присутствуют в APS (равный 1) или не присутствуют в APS (равный 0).

[0108] Одна проблема с сигнализацией параметров фильтра удаления блочности состоит в том, что флаг наследования сигнализируется в заголовке слайса, даже когда параметры фильтра удаления блочности не присутствуют в APS. Как описано выше, когда параметры фильтра удаления блочности присутствуют только в заголовке слайса и не присутствуют в APS, фильтр удаления блочности задается на основе присутствующих параметров фильтра удаления блочности в заголовке слайса, и флаг наследования не является обязательным. Таблица 5 предоставляет примерный участок синтаксиса заголовка слайса, включающего в себя флаг наследования, т.е., inherit_dbl_params_from_APS_flag, который условно кодируется на основе флагов разрешения наследования в синтаксисе APS и синтаксисе SPS.

[0109] В качестве альтернативы, Таблица 6 предоставляет примерный участок синтаксиса заголовка слайса, включающего в себя флаг наследования, т.е., inherit_dbl_params_from_APS_flag, который условно кодируется на основе флага разрешения наследования в синтаксисе SPS.

ТАБЛИЦА 6
Синтаксис заголовка слайса с флагом наследования
slice_header( ) { Дескриптор u(v) if( !entropy_slice_flag ) { slice_qp_delta se(v) if (deblocking_filter_in_aps_enabled_flag) { inherit_dbl_params_from_APS_flag u(1) /*Следует отметить, что inherit_dbl_params_from_APS_flag=0 подразумевается если deblocking_filter_in_aps_enabled_flag=0.*/ } if (!inherit_dbl_params_from_APS_flag){ disable_deblocking_filter_flag u(1) if (!disable_deblocking_filter_flag) { beta_offset_div2 se(v) tc_offset_div2 se(v) } } .....

[0110] Семантика для синтаксиса заголовка слайса из Таблиц 5 и 6 задана как следует ниже. disable_deblocking_filter_flag, равный 0, означает, что фильтр удаления блочности разрешен, и равный 1 означает, что фильтр удаления блочности запрещен. Синтаксические элементы beta_offset_div2 и tc_offset_div2 указывают смещения параметров удаления блочности для tc и β (деленные на 2). inherit_dbl_params_from_APS_flag, равный 1, означает, что должны быть использованы параметры фильтра удаления блочности, присутствующие в APS, и равный 0 означает, что должны быть использованы параметры фильтра удаления блочности, которые следуют в заголовке слайса.

[0111] Вторая проблема с сигнализацией параметров фильтра удаления блочности состоит в том, что флаг разрешения/запрещения уровня SPS не задан для указания, разрешен ли фильтр удаления блочности для изображений видеопоследовательности. Когда фильтр удаления блочности запрещен, параметры фильтра удаления блочности не нужны для задания фильтра удаления блочности, и кодирование параметров фильтра удаления блочности является необязательным. Таблица 7 предоставляет пример синтаксиса SPS, включающего в себя флаг разрешения наследования, т.е., deblocking_in_aps_enabled_flag, условно кодированный на основе флага разрешения фильтра удаления блочности, т.е., deblocking_filter_enabled_flag.

[0112] Семантика для синтаксиса SPS из Таблицы 7 задана как следует ниже. deblocking_filter_enabled_flag, равный 0, означает, что фильтр удаления блочности запрещен, и равный 1 означает, что фильтр удаления блочности разрешен.

[0113] Таким образом, когда фильтр удаления блочности запрещен на уровне SPS, может подразумеваться, что параметры удаления блочности не сигнализируются в APS (т.е., deblocking_filter_in_aps_enabled_flag в SPS равен 0 и aps_deblocking_filter_flag в APS равен 0). В дополнение, когда фильтр удаления блочности запрещен на уровне SPS, подразумевается, что disable_deblocking_filter_flag в заголовке слайса равен 1, указывая, что фильтр удаления блочности запрещен на уровне слайса.

[0114] Таблица 8 предоставляет пример синтаксиса APS, в котором флаг разрешения наследования, т.е., aps_deblocking_filter_flag, подразумевается равным 0, когда фильтр удаления блочности запрещен на уровне SPS.

[0115] Таблица 9 предоставляет примерный участок синтаксиса заголовка слайса, включающего в себя параметры фильтра удаления блочности, которые условно кодируются на основе флага разрешения фильтра удаления блочности, т.е., deblocking_filter_enabled_flag, в синтаксисе SPS.

[0116] В качестве альтернативы, вместо внесения условия для кодирования параметров фильтра удаления блочности в заголовке слайса на основе флага разрешения фильтра удаления блочности в SPS, способы могут подразумевать, что синтаксические элементы управления фильтром удаления блочности не сигнализируются в заголовке слайса, когда фильтр удаления блочности запрещен на уровне SPS. Синтаксический элемент присутствия управления, т.е., deblocking_filter_control_present_flag, включенный в синтаксис PPS, задан для указания, сигнализируются ли в заголовке слайса синтаксические элементы управления фильтром удаления блочности, включающие в себя параметры фильтра удаления блочности. В этом случае, параметры фильтра удаления блочности кодируются только в заголовке слайса, когда синтаксические элементы управления фильтром удаления блочности сигнализируются в заголовке слайса, что происходит только, когда фильтр удаления блочности разрешен на уровне SPS. Синтаксический элемент присутствия управления в PPS предложен в документе Bross, W.-J. Han, J.-R. Ohm, G. J. Sullivan, T. Wiegand, ″High efficiency video coding (HEVC) text specification draft 6″, 8ое JCT-VC собрание, Сан-Хосе, Калифорния, США, февраль 2012, который также называется HEVC ″Working Draft 6″, HEVC WD6, или просто WD6.

[0117] Таблица 10 предоставляет пример синтаксиса SPS, включающего в себя флаг разрешения наследования, условно кодированный на основе флага разрешения фильтра удаления блочности, и где синтаксический элемент присутствия управления, т.е., deblocking_filter_control_present_flag, в PPS подразумевается равным 0, когда фильтр удаления блочности запрещен на уровне SPS.

[0118] Таблица 11 предоставляет примерный участок синтаксиса заголовка слайса, включающего в себя параметры фильтра удаления блочности, которые условно кодированы на основе синтаксического элемента присутствия управления, т.е., deblocking_filter_control_present_flag, в синтаксисе PPS.

[0119] Разница между примером, описанным по отношению к Таблицам 10 и 11, и примером, описанным по отношению к Таблицам 7-9, состоит в том, что когда deblocking_filter_enable_flag в SPS равен 0, deblocking_filter_control_present_flag в PPS также подразумевается равным 0. Таким образом, результатом фильтра удаления блочности, который запрещен на уровне SPS, является то, что параметры фильтра удаления блочности не будут сигнализированы в APS или заголовке слайса, и что фильтр удаления блочности эффективно запрещен на уровне слайса. Более конкретно, когда фильтр удаления блочности запрещен на уровне SPS, видеодекодер 30 может подразумевать, что параметры фильтра удаления блочности не присутствуют в APS (т.е., deblocking_filter_in_aps_enabled_flag в SPS равен 0 и aps_deblocking_filter_flag в APS равен 0), и что параметры фильтра удаления блочности не сигнализируются в заголовке слайса (т.е., deblocking_filter_control_present_flag в PPS равен 0). В дополнение, видеодекодер 30 может подразумевать, что disable_deblocking_filter_flag в заголовке слайса равен 1, указывая, что фильтр удаления блочности запрещен на уровне слайса. В этом случае, может не требоваться добавление дополнительных условий в синтаксисе заголовка слайса, так как, когда deblocking_filter_control_present_flag в PPS равен 0, ни один из параметров фильтра удаления блочности не сигнализируется в заголовке слайса.

[0120] Третья проблема с сигнализацией параметров фильтра удаления блочности состоит в том, что флаг уровня SPS не задан для указания того, когда синтаксические элементы управления фильтром удаления блочности не сигнализированы, и заданные по умолчанию параметры, такие как нулевые значения, должны быть использованы для задания фильтра удаления блочности. Когда синтаксические элементы управления фильтром удаления блочности не сигнализируются либо в APS, либо в заголовке слайса, параметры фильтра удаления блочности не сигнализируются для задания фильтра удаления блочности. Таблица 12 предоставляет пример синтаксиса SPS, включающего в себя флаг разрешения наследования, т.е., deblocking_in_aps_enabled_flag, условно кодированный на основе синтаксического элемента присутствия управления, т.е., deblocking_filter_control_present_flag.

0121] Таблица 13 предоставляет пример синтаксиса APS, в котором флаг разрешения наследования, т.е., aps_deblocking_filter_flag, подразумевается равным 0, когда синтаксические элементы управления фильтром удаления блочности не присутствуют либо в APS, либо в заголовке слайса, т.е., когда deblocking_filter_control_present_flag в синтаксисе SPS равен 0.

[0122] Таблица 14 предоставляет пример синтаксиса заголовка слайса, включающего в себя параметры фильтра удаления блочности, которые условно кодируются на основе синтаксических элементов присутствия управления, т.е., deblocking_filter_control_present_flag, в синтаксисе SPS.

[0123] Фиг. 4 является блок-схемой, иллюстрирующей компоненты примерного фильтра 100 удаления блочности, заданного на основе параметров фильтра удаления блочности, сигнализированных согласно способам, описанным в этом раскрытии. В общем, каждый из фильтра 63 удаления блочности с Фиг. 2 и фильтра 91 удаления блочности с Фиг. 3 или оба могут включать в себя компоненты по существу аналогичные компонентам фильтра 100 удаления блочности. Другие устройства кодирования видео, такие как видеокодеры, видеодекодеры, видеокодеры/декодеры (кодеки), и подобные могут также включать в себя компоненты по существу аналогичные фильтру 100 удаления блочности. Фильтр 100 удаления блочности может быть реализован в аппаратных средствах, программном обеспечении или программно-аппаратных средствах, или в любой их комбинации. При реализации в программном обеспечении или программно-аппаратных средствах, могут также быть предоставлены соответствующие аппаратные средства (такие как один или более процессоров или блоков обработки, и память для хранения инструкций для программного обеспечения или программно-аппаратных средств).

[0124] В примере по Фиг. 4, фильтр 100 удаления блочности включает в себя блок 104 определения удаления блочности, задания 102 поддержки, хранящиеся в памяти, блок 106 фильтрации для удаления блочности, задания 108 фильтра удаления блочности, хранящиеся в памяти, блок 103 локализации краев, и структуру 105 данных размещений краев. Любой или все компоненты фильтра 100 удаления блочности могут быть функционально интегрированы. Компоненты фильтра 100 удаления блочности проиллюстрированы отдельно только в целях иллюстрации. В общем, фильтр 100 удаления блочности принимает данные для декодированных блоков, например, например от компонента суммирования, который объединяет данные предсказания с остаточными данными для блоков. Данные могут дополнительно включать в себя указание того, как блоки были предсказаны. В описанном ниже примере, фильтр 100 удаления блочности сконфигурирован с возможностью приема данных, включающих в себя декодированный видеоблок, ассоциированный с LCU, и дерево квадрантов CU из LCU, где дерево квадрантов CU описывает, как LCU разбита на CU и режимы предсказания для PU и TU из CU концевого узла.

[0125] Фильтр 100 удаления блочности может удерживать структуру 105 данных размещений краев в памяти фильтра 100 удаления блочности, или во внешней памяти, предоставляемой соответствующим устройством кодирования видео. В некоторых примерах, блок 103 локализации краев может принимать дерево квадрантов CU, соответствующее LCU, которое указывает, как LCU разбита на CU. Блок 103 локализации краев может затем проанализировать дерево квадрантов CU, чтобы определить края между декодированными видеоблоками, ассоциированными с TU и PU для CU в LCU, которые являются кандидатами для удаления блочности.

[0126] Структура 105 данных размещений краев может содержать массив, имеющий горизонтальную размерность, вертикальную размерность и размерность, представляющую горизонтальные края и вертикальные края. В общем, края между видеоблоками могут возникнуть между двумя видеоблоками, ассоциированными с CU с наименьшими размерами из LCU, или TU и PU из CU. Предполагая, что LCU имеет размер N×N, и предполагая, что CU с наименьшим размером из LCU имеет размер M×M, массив может содержать размер [N/M]×[N/M]×2, где ″2″ представляет два возможных направления краев между CU (горизонтальное и вертикальное). Например, предполагая, что LCU имеет 64×64 пикселя и CU с наименьшим размером 8×8, массив может содержать [8]×[8]×[2] записей.

[0127] Каждая запись может в основном соответствовать возможному краю между двумя видеоблоками. Края могут в действительности не существовать в каждом из положений внутри LCU, соответствующих каждой из записей структуры 105 данных размещений краев. Соответственно, значения структуры данных могут быть инициализированы в значение ″ложь″. В общем, блок 103 локализации краев проанализировать дерево квадрантов CU, чтобы определить размещения краев между двумя видеоблоками, ассоциированными с TU и PU из CU из LCU и задать соответствующие значения в структуре 105 данных размещений краев в значение ″истина″.

[0128] В общем, записи массива могут описывать, существует ли соответствующий край в LCU как кандидат для удаления блочности. То есть, когда блок 103 локализации краев определяет, что край между двумя соседними видеоблоками, ассоциированными с TU и PU из CU из LCU, существует, блок 103 локализации краев может задать значение соответствующей записи в структуре 105 данных размещений краев, чтобы указать, что край существует (например, в значение ″true″).

[0129] Блок 104 определения удаления блочности в общем определяет, должна ли быть удалена блочность края, для двух соседних блоков, между двумя блоками. Блок 104 определения удаления блочности может определить размещения краев с использованием структуры 105 данных размещений краев. Когда значение структуры 105 данных размещений краев имеет булево значение, блок 104 определения удаления блочности может определить, что значение ″истина″ указывает присутствие края, и значение ″ложь″ указывает, что край не присутствует, в некоторых примерах.

[0130] В общем, блок 104 определения удаления блочности сконфигурирован с одной или более функциями определения удаления блочности. Функции могут включать в себя множество коэффициентов, примененных к линиям пикселей, которые пересекают край между блоками. Например, функции могут быть применены к линии из восьми пикселей, которая перпендикулярна краю, где четыре из пикселей находятся в одном из двух блоков, и другие четыре пикселя находятся в другом из двух блоков. Задания 102 поддержки задают поддержку для функций. В общем, ″поддержка″ соответствует пикселям, к которым применяются функции. Различные примеры наборов поддержки описаны ниже более подробно по отношению к Фиг. 5.

[0131] Блок 104 определения удаления блочности может быть сконфигурирован с возможностью применения одной или более функций определения удаления блочности к одному или более наборам поддержки, которые заданы посредством заданий 102 поддержки, чтобы определить, должна ли быть удалена блочность конкретного края между двумя блоками видеоданных. Пунктирная линия, возникающая из блока 104 определения удаления блочности представляет собой данные для блоков, которые выводятся без фильтрации. В случаях, когда блок 104 определения удаления блочности определяет, что край между двумя блоками не должен фильтроваться, фильтр 100 удаления блочности может вывести данные для блоков без изменения данных. То есть, данные могут обойти блок 106 фильтрации для удаления блочности. С другой стороны, когда блок 104 определения удаления блочности определяет, что должна ли быть удалена блочность края, блок 104 определения удаления блочности может побуждать блок 106 фильтрации для удаления блочности фильтровать значения для пикселей вблизи края для того, чтобы удалить блочность края.

[0132] Блок 106 фильтрации для удаления блочности извлекает задания для фильтров удаления блочности из параметров 108 фильтра удаления блочности для краев, блочность которых должна быть удалена, как указано блоком 104 определения удаления блочности. В общем, фильтрация краев использует значения пикселей из окрестности текущего края, блочность которого должны быть удалена. Вследствие этого, как функции принятия решения об удалении блочности, так и фильтры удаления блочности могут иметь определенную область поддержки с обоих сторон края. Посредством применения фильтра удаления блочности к пикселям в окрестности края, блок 106 фильтрации для удаления блочности может сгладить значения пикселей, так чтобы высокочастотные переходы вблизи края были сглажены. Таким образом, применение фильтра удаления блочности к пикселям вблизи края может уменьшить артефакты блочности вблизи края.

[0133] Фиг. 5 является принципиальной схемой, иллюстрирующей положения пикселей вблизи края 134 видеоблока между подблоками 130 и 132. В качестве одного примера, край 134 может содержать внутренний край CU, такой как край TU между двумя TU, заданными в CU, или край PU между двумя PU, заданными в CU. Каждое из положений пикселей обозначено с использованием формата [p|q]IJ, где p соответствует подблоку 130, и q соответствует подблоку 132, I соответствует расстоянию от края 134, и J соответствует указателю ряда сверху вниз подблоков 130 и 132. В некоторых примерах, поддержка, используемая для функций принятия решения об удалении блочности и фильтров удаления блочности, имеет линию из восьми пикселей. В таких примерах, для заданной линии X, где 0≤X≤7, каждый из пикселей от p3X до q3X может быть использован в качестве поддержки.

[0134] Фиг. 6 является функциональной схемой, иллюстрирующей примерную операцию кодирования параметров фильтра удаления блочности для текущего слайса видео с уменьшенными издержками битового потока в соответствии со способами, описанными в этом раскрытии. Операция, проиллюстрированная на Фиг. 6, описана по отношению к видеокодеру 20 с Фиг. 2.

[0135] Блок 56 энтропийного кодирования видеокодера 20 кодирует первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса для изображений, относящихся к набору параметров уровня изображения (140). Если параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса (ветка НЕТ на этапе 141), блок 56 энтропийного кодирования исключает кодирование второго синтаксического элемента в заголовке слайса (142). Второй синтаксический элемент задан для указания, какой набор параметров фильтра удаления блочности использовать для задания фильтра удаления блочности для текущего слайса видео. В случае, когда параметры фильтра удаления блочности присутствуют только в одном из набора параметров уровня изображения или заголовка слайса, второй синтаксический элемент является необязательным, так как не требуется принимать решение касательно того, какие параметры фильтра удаления блочности использовать для задания фильтра удаления блочности. Вместо этого, фильтр 63 удаления блочности задается для текущего слайса видео на основе единственного набора параметров фильтра удаления блочности, которые присутствуют либо в наборе параметров уровня изображения, либо в заголовке слайса (144).

[0136] Если параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса (ветка ДА на этапе 141), блок 56 энтропийного кодирования кодирует второй синтаксический элемент в заголовке слайса, который задан для указания, использовать ли первый набор параметров удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров удаления блочности, включенный в заголовок слайса (146). В этом случае, фильтр 63 удаления блочности задается для текущего слайса видео на основе указанного набора параметров удаления блочности (148). Согласно способам, описанным в этом раскрытии, вследствие этого, параметры фильтра удаления блочности кодируются для текущего слайса видео с уменьшенными издержками битового потока посредством кодирования только второго синтаксического элемента в заголовке слайса, когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса.

[0137] Фиг. 7 является функциональной схемой, иллюстрирующей примерную операцию декодирования параметров фильтра удаления блочности для текущего слайса видео с уменьшенными издержками битового потока в соответствии со способами, описанными в этом раскрытии. Операция, проиллюстрированная на Фиг. 7, описана по отношению к видеодекодеру 30 с Фиг. 3.

[0138] Блок 80 энтропийного декодирования видеодекодера 30 декодирует первый синтаксический элемент, сконфигурированный с возможностью указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса для изображений, относящихся к набору параметров уровня изображения (150). Если параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса (ветка НЕТ на этапе 151), блок 80 энтропийного декодирования определяет, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован (152). Второй синтаксический элемент задан для указания, какой набор параметров фильтра удаления блочности использовать для задания фильтра удаления блочности для текущего слайса видео. В случае, когда параметры фильтра удаления блочности присутствуют только в одном из набора параметров уровня изображения или заголовка слайса, второй синтаксический элемент является необязательным, так как не требуется принимать решение касательно того, какие параметры фильтра удаления блочности использовать для задания фильтра удаления блочности. Вместо этого, фильтр 91 удаления блочности задается для текущего слайса видео на основе единственного набора параметров фильтра удаления блочности, которые присутствуют либо в наборе параметров уровня изображения, либо в заголовке слайса (154).

[0139] Если параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса (ветка ДА на этапе 151), блок 80 энтропийного декодирования декодирует второй синтаксический элемент в заголовке слайса, который задан для указания, использовать ли первый набор параметров удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров удаления блочности, включенный в заголовок слайса (156). В этом случае, фильтр 91 удаления блочности задается для текущего слайса видео на основе указанного набора параметров удаления блочности (158). Согласно способам, описанным в этом раскрытии, вследствие этого, параметры фильтра удаления блочности декодируются для текущего слайса видео с уменьшенными издержками битового потока посредством декодирования только второго синтаксического элемента в заголовке слайса, когда параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса.

[0140] Фиг. 8 является функциональной схемой, иллюстрирующей примерную операцию кодирования параметров фильтра удаления блочности для текущего слайса видео в наборе параметров изображения (PPS), которые могут быть переопределены посредством параметров фильтра удаления блочности в заголовке слайса. Операция, проиллюстрированная на Фиг. 8, описана по отношению к видеокодеру 20 с Фиг. 2.

[0141] Блок 56 энтропийного кодирования кодирует синтаксический элемент присутствия управления в PPS, заданный для указания, присутствуют ли какие-либо синтаксические элементы управления фильтром удаления блочности в PPS и заголовке слайса (160). Синтаксические элементы управления фильтром удаления блочности включают в себя флаг разрешения переопределения, сигнализируемый в PPS, флаг переопределения, сигнализируемый в заголовке слайса, и параметры фильтра удаления блочности, сигнализируемые в PPS и/или заголовке слайса. Когда синтаксические элементы управления фильтром удаления блочности не присутствуют либо в PPS, либо в заголовке слайса (ветка НЕТ на этапе 162), блок 56 энтропийного кодирования исключает кодирование каких-либо синтаксических элементов управления фильтром удаления блочности (164). В этом случае, видеокодер 20 сигнализирует видеодекодеру 30, что фильтр 63 удаления блочности на задан на основе кодированных параметров фильтра удаления блочности. Вместо этого, фильтр 63 удаления блочности задается на основе заданных по умолчанию параметров фильтра удаления блочности (166).

[0142] Когда синтаксические элементы управления фильтром удаления блочности присутствуют в PPS или заголовке слайса (ветка ДА на этапе 162), блок 56 энтропийного кодирования кодирует флаг разрешения переопределения в PPS, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности, включенного в PPS, посредством второго набора параметров фильтра удаления блочности, включенного в заголовок слайса (168).

[0143] Если переопределение параметров фильтра удаления блочности в PPS не разрешено (ветка НЕТ этапа 170), блок 56 энтропийного кодирования исключает кодирование флага переопределения в заголовке слайса (172). Флаг переопределения указывает, какой набор параметров фильтра удаления блочности использовать для задания фильтра удаления блочности для текущего слайса видео. В случае, когда параметры фильтра удаления блочности присутствуют только в PPS, флаг переопределения в заголовке слайса является необязательным, так как не требуется принимать решение касательно того, какие параметры фильтра удаления блочности использовать для задания фильтра удаления блочности. Вместо этого, фильтр 63 удаления блочности задается для текущего слайса видео на основе параметров фильтра удаления блочности, присутствующих в PPS (174).

[0144] Если переопределение параметров фильтра удаления блочности в PPS посредством параметров удаления блочности в заголовке слайса разрешено (ветка ДА на этапе 170), блок 56 энтропийного кодирования кодирует флаг переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из PPS или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса (176). В этом случае, фильтр 63 удаления блочности задается для текущего слайса видео на основе указанного набора параметров удаления блочности (178).

[0145] Фиг. 9 является функциональной схемой, иллюстрирующей примерную операцию декодирования параметров фильтра удаления блочности для текущего слайса видео в наборе параметров изображения (PPS), которые могут быть переопределены посредством параметров фильтра удаления блочности в заголовке слайса. Операция, проиллюстрированная на Фиг. 9, описана по отношению к видеодекодеру 30 с Фиг. 3.

[0146] Блок 80 энтропийного декодирования декодирует синтаксический элемент присутствия управления в PPS, заданный для указания, присутствуют ли какие-либо синтаксические элементы управления фильтром удаления блочности в PPS и заголовке слайса (180). Синтаксические элементы управления фильтром удаления блочности включают в себя флаг разрешения переопределения, сигнализируемый в PPS, флаг переопределения, сигнализируемый в заголовке слайса, и параметры фильтра удаления блочности, сигнализируемые в PPS и/или заголовке слайса. Когда синтаксические элементы управления фильтром удаления блочности не присутствуют либо в PPS, либо в заголовке слайса (ветка НЕТ на этапе 182), блок 80 энтропийного декодирования определяет, что синтаксические элементы управления фильтром удаления блочности не присутствуют в битовом потоке, который должен быть декодирован (184). В этом случае, видеодекодер 30 знает, что фильтр 91 удаления блочности не задан на основе кодированных параметров фильтра удаления блочности. Вместо этого, фильтр 91 удаления блочности задается на основе заданных по умолчанию параметров фильтра удаления блочности (186).

[0147] Когда синтаксические элементы управления фильтром удаления блочности присутствуют в PPS или заголовке слайса (ветка ДА на этапе 182), блок 80 энтропийного декодирования декодирует флаг разрешения переопределения в PPS, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности, включенного в PPS, посредством второго набора параметров фильтра удаления блочности, включенного в заголовок слайса (188).

[0148] Если переопределение параметров фильтра удаления блочности в PPS не разрешено (ветка НЕТ на этапе 190), блок 80 энтропийного декодирования определяет, что флаг переопределения не присутствует в заголовке слайса который должен быть декодирован (192). Флаг переопределения указывает, какой набор параметров фильтра удаления блочности использовать для задания фильтра удаления блочности для текущего слайса видео. В случае, когда параметры фильтра удаления блочности присутствуют только в PPS, флаг переопределения в заголовке слайса является необязательным, так как не требуется принимать решение касательно того, какие параметры фильтра удаления блочности использовать для задания фильтра удаления блочности. Вместо этого, фильтр 91 удаления блочности задается для текущего слайса видео на основе параметров фильтра удаления блочности, присутствующих в PPS (194).

[0149] Если переопределение параметров фильтра удаления блочности в PPS посредством параметров удаления блочности в заголовке слайса разрешено (ветка ДА на этапе 190), блок 80 энтропийного декодирования декодирует флаг переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из PPS или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса (196). В этом случае, фильтр 91 удаления блочности задается для текущего слайса видео на основе указанного набора параметров удаления блочности (198).

[0150] В описанных выше примерах, в которых набор параметров фильтра удаления блочности, включен в APS, APS может быть сигнализирован на видеодекодер 30 в любое время, когда изменяются параметры для ALF, SAO или удаления блочности. Параметры ALF и SAO с большей вероятностью изменяются чаще, чем параметры фильтра удаления блочности. В этом случае, могут быть потрачены биты, когда одни ли те же параметры фильтра удаления блочности повторяются в APS всегда, когда изменяются параметры SAO или ALF. В качестве одного решения для уменьшения издержек битового потока APS, в некоторых примерах, способы вносят многочисленные APS для обновления параметров фильтра удаления блочности отдельно от параметров ALF и SAO. Чтобы избежать сигнализации копий постоянных параметров удаления блочности в последовательных APS, заголовок слайса может ссылаться на многочисленные APS для декодирования видеоданных слайсов. Несколько вариантов для использования многочисленных APS для сигнализации параметров фильтра удаления блочности, которые описаны ниже. Синтаксис APS и заголовков слайсов представлен в таблицах ниже, в которых зачеркнутое представляет собой синтаксические элементы и условия, которые могут быть удалены из APS и синтаксиса заголовка слайса.

[0151] В качестве первого примера, заголовок слайса может ссылаться на многочисленные разные APS с использованием уникальных идентификаторов APS, например, aps_id[i], для каждого действительного APS. В этом случае, способы включают в себя параметры фильтра удаления блочности в подходе многочисленных APS, например, где подход многочисленных APS может быть аналогичным подходу, предложенному в M. Li, P. Wu, ″Multiple Adaptation Parameter Sets Referring″, 7ое JCT-VC собрание, Женева, Швейцария, ноябрь 2011, документ JCTVC-G332.

[0152] Семантика для синтаксиса заголовка слайса из Таблицы 15 задана как следует ниже. deblocking_filter_enabled_flag, равный 0, означает, что фильтр удаления блочности запрещен, и равный 1 означает, что фильтр удаления блочности разрешен. Синтаксический элемент number_of_valid_aps точно определяет число действительных APS для декодирования слайса. Значение из number_of_valid_aps должно быть в диапазоне [0, MaxNumberValidAps], включительно. Значение MaxNumberValidAps точно определено в профиле/уровне. Если number_of_valid_aps не существует, его значение подразумевается равным 0. Если number_of_valid_aps равно 0, подразумевается, что нет активных APS. aps_id[i] точно определяет ID действительных APS для декодирования слайса, где i должна быть в диапазоне [0, number_of_valid_aps-1], включительно.

[0153] Согласно вышеуказанному синтаксису заголовка слайса, правила декодирования для слайса согласно потенциально многочисленным APS являются такими, как следует ниже. Когда значение number_of_valid_aps равняется 0 или не представлено, т.е., в заголовке слайса не ссылаются на APS, флаги aps_sample_adaptive_offset_flag и aps_adaptive_loop_filter_flag и aps_deblocking_filter_flag при декодировании этого слайса должны быть заданы в значение 0, и ни SAO, ни ALF не должны применяться при декодировании слайса. Если значение inherit_dbl_params_from_APS_flag равняется 0, то фильтр удаления блочности должен быть применен при декодировании этого слайса, и должны быть использованы параметры удаления блочности, включенные в этот заголовок слайса.

[0154] Когда number_of_valid_aps value равняется 1, т.е., в заголовке слайса ссылаются только на один APS, флаги aps_sample_adaptive_offset_flag и aps_adaptive_loop_filter_flag и aps_deblocking_filter_flag и параметры инструмента для SAO и ALF при декодировании этого слайса должны быть заданы равными значениям соответствующих синтаксических элементов, представленных в этом APS, на который ссылаются. Если значение inherit_dbl_params_from_APS_flag равняется 1, то параметры удаления блочности должны быть заданы равными значениям соответствующих параметров в APS, на который ссылаются.

[0155] Когда number_of_valid_aps больше, чем 1, т.е., когда применен подход многочисленных APS, для фильтра удаления блочности, если все элементы aps_deblocking_filter_flag в APS, на которые ссылаются, равны 0, aps_deblocking_filter_flag при декодировании этого слайса должен быть задан в значение 0 и, если inherit_dbl_params_from_APS_flag равняется 0, то фильтр удаления блочности должен быть применен к этому слайсу с использованием параметров удаления блочности, присутствующих в этом заголовке слайса. Иначе, если один и только один APS содержит aps_deblocking_filter_flag, равный 1, aps_deblocking_filter_flag при декодировании этого слайса должен быть задан в значение 1, и если inherit_dbl_params_from_APS_flag равняется 1, то фильтр удаления блочности с параметрами удаления блочности, выделенными из этого APS, должен быть применен при декодировании этого слайса. ИНаче, если есть больше, чем один APS, содержащий aps_deblocking_filter_flag, равный 1, aps_deblocking_filter_flag при декодировании этого слайса должен быть задан в значение 0, и если inherit_dbl_params_from_APS_flag равняется 0, то фильтр удаления блочности должен быть применен к этому слайсу с использованием параметров удаления блочности, присутствующих в этом заголовке слайса.

[0156] Согласно способам этого раскрытия, aps_deblocking_filter_flag может указывать, что параметры удаления блочности присутствуют в APS, как предоставлено в Таблице 16 ниже.

[0157] Семантика для синтаксиса APS из Таблицы 16 задана как следует ниже. aps_sample_adaptive_offset_data_present_flag, равный 1, точно определяет, что параметры SAO существуют в этом APS, и равный 0 точно определяет, что параметры SAO не существуют в этом APS, где параметры SAO ссылаются на флаг разрешения SAO и параметры SAO, когда флаг разрешения SAO равен 1.

[0158] aps_sample_adaptive_offset_flag, равный 1, точно определяет, что SAO включен для слайсов, ссылающихся на текущий APS, и равный 0 точно определяет, что SAO отключен для слайсов, ссылающихся на текущий APS. Если нет активного APS или значение aps_sample_adaptive_offset_flag равняется 0, значение aps_sample_adaptive_offset_flag предполагается равным 0.

[0159] aps_adaptive_loop_filter_data_present_flag, равный 1, точно определяет, что параметры ALF существуют в этом APS, и равный 0 точно определяет, что параметры ALF не существуют в этом APS, где параметры ALF ссылаются на флаг разрешения ALF и параметры ALF, когда флаг разрешения ALF равен 1. aps_adaptive_loop_filter_flag, равный 1, точно определяет, что ALF включен для слайсов, ссылающихся на текущий APS, и равный 0 точно определяет, что ALF отключен для слайсов, ссылающихся на текущий APS. Если нет активного APS, или значение aps_adaptive_loop_filter_data_present_flag равняется 0, значение aps_adaptive_loop_filter_flag подразумевается равным 0.

[0160] Согласно вышеуказанному синтаксису APS, правила декодирования для слайса согласно потенциально многочисленным APS являются такими, как следует ниже. Когда number_of_valid_aps больше, чем 1 (как и в случаях ранее), APS с его ID, равным aps_id[0], может гипотетически считаться основным APS при декодировании текущего слайса, тогда как другие APS с их ID, равными aps_id[1], aps_id[2], …, aps_id[number_valid_aps -1], могут считаться измененными APS. Представленная информация в измененных APS и их ID APS aps_id[i] (i>0), которая относится к параметрам инструментов (т.е. aps_deblocking_filter_flag и параметрам удаления блочности для фильтра удаления блочности и/или aps_sample_adaptive_offset_flag и sao_param() для SAO и/или aps_adaptive_loop_filter_flag и alf_param() для ALF), представленным в APS, когда aps_deblocking_filter_flag равняется 1 и/или aps_sample_adaptive_offset_data_present_flag равен 1 и/или aps_adaptive_loop_filter_data_present_flag равен 1, перезаписывает информацию соответствующих инструментов, прежде и временно определенную посредством APS и их ID APS aps_id[i-1], …, aps_id[0]. Тем самым, полученные в итоге значения aps_deblocking_filter_flag и параметров удаления блочности используются для удаления блочности текущего слайса (дополнительно зависит от значения inherit_dbl_params_from_APS_flag). Полученные в итоге aps_sample_adaptive_offset_flag и параметры в sao_param() используются для реализации SAO при декодировании текущего слайса, и полученные в итоге aps_adaptive_loop_filter_flag и параметры в alf_param() используются для реализации ALF при декодировании текущего слайса.

[0161] Другими словами, когда слайс ссылается на многочисленные APS, для каждого инструмента, согласно согласно порядку представления ID APS, последний APS, который содержит data_present_flag (т.е. aps_deblocking_filter_flag или aps_sample_adaptive_offset_data_present_flag или aps_adaptive_loop_filter_data_present_flag) этого инструмента, равный 1, активируется для инициализации этого инструмента до декодирования этого слайса.

[0162] В качестве второго примера для использования многочисленных APS для сигнализации параметров фильтра удаления блочности, заголовок слайса может ссылаться на многочисленные разные под-APS с использованием уникальных идентификаторов под-APS для каждого типа APS. В этом случае, способы включают в себя параметры фильтра удаления блочности в подходе под-APS, таком как подход, предложенный в J. Tanaka, Y. Morigami, T. Suzuki, ″Non-CE4 Subtest3: Extension of Adaptation Parameter Sets syntax for Quantization matrix″, 7ое JCT-VC собрание, Женева, Швейцария, ноябрь 2011, документ JCTVC-G295.

[0163] Согласно способам этого раскрытия, предложено включать aps_dbl_id в APS, как следует ниже в Таблицах 17 и 18. Если inherit_dbl_params_from_APS_flag=1, то параметры удаления блочности копируются из APS с aps_dbl_id.

[0164] Проблема с синтаксисом заголовка слайса выше состоит в том, что aps_dbl_id сигнализируется даже когда inherit_dbl_params_from_APS_flag=0. В качестве альтернативы, aps_dbl_id может быть сигнализирован в заголовке слайса, как предоставлено в Таблице 19 ниже.

[0165] В качестве третьего примера для использования многочисленных APS для сигнализации параметров фильтра удаления блочности, заголовок слайса может ссылаться на многочисленные разные APS с использованием APS связанных списков. В этом случае, способы включают в себя параметры фильтра удаления блочности в APS, ссылаясь на способ, основанный на APS связанных списков, например, как описано в M. Li, P. Wu, S. Wenger, J. Boyce, ″APS Referencing″, 8ое JCT-VC собрание, Сан-Хосе, февраль 2011.

[0166] Документ ″Осуществление ссылки на APS″ основывается на способе частичного обновления APS, предложенном в JCTVC-G332 в том смысле, что он также вносит флаги в APS для сигнализации присутствия контурного фильтра и параметров списка масштабирования. В дополнение, ref_aps_flag и ref_aps_id синтаксические элементы вносятся в APS для обеспечения возможности частичного обновления параметров посредством механизма связанных списков. Согласно способам этого раскрытия, aps_deblocking_filter_flag может указывать, что параметры удаления блочности присутствуют в APS, как предоставлено в Таблице 20 ниже. Ассоциированные изменения в синтаксис заголовка слайса предоставлены в Таблице 21 ниже.

[0167] Семантика для синтаксиса APS и заголовка слайса из Таблиц 20 и 21 задана как следует ниже. aps_id идентифицирует набор параметров адаптации, на который ссылается заголовок слайса или ref_aps_id другом наборе параметров адаптации. Значение aps_id должно быть в диапазоне от 0 до 7, включительно. ref_aps_flag, равный 1, точно определяет, что этот набор параметров адаптации ссылается на другой набор параметров адаптации. ref_aps_flag, равный 0, точно определяет, что этот набор параметров адаптации не ссылается на какой-либо другой набор параметров адаптации. ref_aps_id точно определяет, что на предыдущий набор параметров адаптации с aps_id, равным ref_aps_id, ссылается этот набор параметров адаптации.

[0168] aps_deblocking_filter_flag указывает, что параметры удаления блочности присутствуют в APS (равный 1) или не присутствуют (равный 0). aps_scaling_list_data_present_flag, равный 1, точно определяет, что параметры списка масштабирования присутствуют в этом наборе параметров адаптации, и равный 0 точно определяет, что параметры списка масштабирования не присутствуют в этом наборе параметров адаптации. aps_sample_adaptive_offset_data_present_flag, равный 1, точно определяет, что параметры SAO присутствуют в этом наборе параметров адаптации, и равный 0 точно определяет, что параметры SAO не присутствуют в этом наборе параметров адаптации. aps_adaptive_loop_filter_data_present_flag, равный 1, точно определяет, что параметры ALF присутствуют в этом наборе параметров адаптации, и равный 0 точно определяет, что параметры ALF не присутствуют в этом наборе параметров адаптации.

[0169] scaling_list_flag, равный 1, точно определяет, что матрица масштабирования применяется для текущего слайса, и равный 0 точно определяет, что матрица масштабирования не применяется для текущего слайса. Значение scaling_list_flag_flag должно быть одинаковым для всех слайсов в текущем кадре. adaptive_loop_filter_flag, равный 1, точно определяет, что адаптивный контурный фильтр применяется для текущего слайса, и равный 0 точно определяет, что адаптивный контурный фильтр не применяется для текущего слайса. Значение adaptive_loop_filter_flag должно быть одинаковым для всех слайсов в текущем кадре. sample_adaptive_offset_flag, равный 1, точно определяет, что адаптивное смещение выборки применяется для текущего слайса, и равный 0 точно определяет, что адаптивное смещение выборки не применяется для текущего слайса. Значение sample_adaptive_offset_flag должно быть одинаковым для всех слайсов в текущем кадре.

[0170] В качестве четвертого варианта для использования многочисленных APS для сигнализации параметров фильтра удаления блочности, заголовок слайса может включать в себя частичные обновления параметров фильтра удаления блочности, точно определенных в APS. В этом случае, способы включают в себя частичные обновления параметров фильтра удаления блочности. Эти способы могут быть применены, например, в способе обновления параметров APS с использованием сигнализации заголовка слайса, описанном в A. Minezawa, K. Sugimoto, S.-I. Sekiguchi, ″On partial updating of APS parameters″, 8ое JCT-VC собрание, Сан-Хосе, Калифорния, США, февраль 2012, документы JCTVC-H0255.

[0171] Способы этого раскрытия могут обновить параметры регулирования фильтра удаления блочности в APS, идентифицированном посредством aps_id, в заголовке слайса на основе параметров регулирования фильтра удаления блочности, включенных в заголовок слайса. Способы могут внести update_dbl_params_in_APS_flag в заголовке слайса для указания, когда параметры регулирования фильтра удаления блочности в APS должны быть обновлены посредством параметров регулирования фильтра удаления блочности в заголовке слайса, как представлено в Таблице 22 ниже.

[0172] Семантика для синтаксиса заголовка слайса из Таблицы 22 задана как следует ниже. update_dbl_params_in_APS_flag, равный 1, означает, что параметры регулирования фильтра удаления блочности в APS с ID, равным aps_id, должны быть обновлены с помощью параметров регулирования фильтра удаления блочности в заголовке слайса, и равный 0 означает отсутствие обновления.

[0173] В дополнение, способы этого раскрытия могут включать в себя обновление параметров регулирования фильтра удаления блочности в APS, идентифицированном посредством aps_dbl_id, в заголовке слайса на основе параметров регулирования фильтра удаления блочности, включенных в заголовок слайса. aps_dbl_id APS, который должен быть обновлен с помощью параметров регулирования фильтра удаления блочности заголовка слайса, может быть сигнализирован отдельно в заголовке слайса, как представлено в Таблице 23 ниже.

[0174] В одном или более примерах, описанные функции могут быть реализованы в аппаратных средствах, программном обеспечением, программно-аппаратных средствах или любой их комбинации. В случае реализации в программном обеспечении, функции могут храниться как одна или более инструкций или код на считываемом компьютером носителе или передаваться на него и могут быть исполнены аппаратным блоком обработки. Считываемые компьютером носители могут включать в себя считываемые компьютером носители информации, которые соответствует материальному носителю, такому как носители данных, или коммуникационные среды, включающие в себя любую среду, которая способствует передаче компьютерной программы из одного места в другое, например, согласно протоколу связи. Таким образом, считываемые компьютером носители в общем могут соответствовать (1) материальным считываемым компьютером носителям информации, которые являются постоянными, или среде связи, такой как сигнал или несущая волна. Носителями данных могут являться любые доступные носители, к которым может быть осуществлен доступ посредством одного или более компьютеров, или одного или более процессоров для извлечения инструкций, кода и/или структур данных для реализации способов, описанных в этом раскрытии. Компьютерный программный продукт может включать в себя считываемый компьютером носитель.

[0175] В качестве примера, и а не ограничения, такие считываемые компьютером носители информации могут содержать RAM, ROM, EEPROM, CD-ROM или другое хранилище на оптических дисках, хранилище на магнитных дисках или другие магнитные устройства хранения, флэш-память, или любой другой носитель, который может быть использован для хранения желаемого программного кода в форме инструкций или структур данных, и к которому может быть осуществлен доступ посредством компьютера. Также, любое соединение правильно называть считываемым компьютером носителем. Например, если программное обеспечение передается с веб-сайта, сервера или другого удаленного источника, с использованием коаксиального кабеля, оптоволоконного кабеля, витой пары, цифровой абонентской линии связи (DSL) или беспроводных технологий, таких как инфракрасная связь, радио и микроволновая, то коаксиальный кабель, оптоволоконный кабель, витая пара, DSL или беспроводные технологии, такие как инфракрасная связь, радио и микроволновая, включаются в определение носителя. Однако, следует понимать, что считываемые компьютером носители информации и носители данных не включают в себя соединения, несущие волны, сигналы или другие непостоянные носители, но вместо этого направлены на постоянные, материальные носители информации. Термин ″диск″ в настоящем документе используется в отношении и магнитных, и оптических дисков, которые включают в себя компакт-диск (CD), лазерный диск, оптический диск, универсальный цифровой диск (DVD), флоппи-диск и blu-ray диск, причем магнитные диски обычно воспроизводят данные магнитным образом, в то время как оптические диски воспроизводят данные оптически с помощью лазера. Комбинации вышеупомянутого должны также быть включены в объем считываемых компьютером носителей.

[0176] Инструкции могут быть исполнены одним или более процессорами, такими как один или более процессоров цифровой обработки сигналов (DSP), микропроцессоры общего назначения, специализированные интегральные микросхемы (ASIC), программируемые пользователем вентильные матрицы (FPGA), или другим эквивалентом схем интегрированной или дискретной логики. Следовательно, термин ″процессор″, как используется в настоящем документе, может относится к любой из вышеупомянутых структур или любой другой структуре, подходящей для реализации способов, описанных в настоящем документе. К тому же, в некоторых аспектах, описанная в настоящем документе функциональность может быть предоставлена внутри выделенных аппаратных средств и/или программных модулей, сконфигурированных для кодирования и декодирования, или включена в объединенный кодек. Также, способы могут быть полностью реализованы в одной и больше схемах или логических элементах.

[0177] Способы этого раскрытия могут быть реализованы в широком спектре устройств или аппаратов, включающих в себя беспроводную гарнитуру, интегральную схему (IC) или набор IC (например, набор микросхем). Различные компоненты, модули или блоки описаны в этом раскрытии, чтобы подчеркнуть функциональные аспекты устройств, сконфигурированных для выполнения раскрытых способов, но необязательно требуют реализацию посредством разных аппаратных блоков. Скорее, как описано выше, различные блоки могут быть объединены в аппаратном блоке кодека или предоставлены группой взаимодействующих аппаратных блоков, включающих в себя один или более процессоров, как описано выше, совместно с подходящим программным обеспечением и/или программно-аппаратными средствами.

[0178] Были описаны различные примеры. Эти и другие примеры входят в объем следующей формулы изобретения.

Похожие патенты RU2573743C1

название год авторы номер документа
КОДИРОВАНИЕ НАБОРОВ ПАРАМЕТРОВ И ЗАГОЛОВКОВ ЕДИНИЦ NAL ДЛЯ КОДИРОВАНИЯ ВИДЕО 2013
  • Чэнь Ин
  • Ван Е-Куй
RU2633117C2
МАРКИРОВАНИЕ ОПОРНЫХ ИЗОБРАЖЕНИЙ В ВИДЕОПОСЛЕДОВАТЕЛЬНОСТЯХ, ИМЕЮЩИХ ИЗОБРАЖЕНИЯ С РАЗОРВАННОЙ ССЫЛКОЙ 2013
  • Ван Е-Куй
RU2630181C2
СИГНАЛИЗАЦИЯ СИНТАКСИЧЕСКИХ ЭЛЕМЕНТОВ НА УРОВНЕ БЕЗ ИЗОБРАЖЕНИЙ НА УРОВНЕ ИЗОБРАЖЕНИЙ 2020
  • Хендри, Фну
  • Ван, Е-Куй
  • Чэнь, Цзяньлэ
RU2826697C1
КОДИРОВАНИЕ ПАРАМЕТРА КВАНТОВАНИЯ (QP) ПРИ КОДИРОВАНИИ ВИДЕО 2013
  • Серегин Вадим
  • Ван Сянлинь
RU2645291C2
СИГНАЛИЗАЦИЯ ОБЩЕЙ ИНФОРМАЦИИ ОБ ОГРАНИЧЕНИЯХ 2021
  • Ван, Е-Куй
  • Чжан, Ли
RU2825252C1
СИГНАЛИЗАЦИЯ ДАННЫХ ДЛЯ ДОЛГОСРОЧНЫХ ЭТАЛОННЫХ ИЗОБРАЖЕНИЙ ДЛЯ КОДИРОВАНИЯ ВИДЕО 2013
  • Рамасубрамониан Адарш Кришнан
  • Ван Е-Куй
  • Чэнь Ин
RU2635248C2
КОДЕР, ДЕКОДЕР И СООТВЕТСТВУЮЩИЕ СПОСОБЫ ДЛЯ УПРОЩЕНИЯ СИГНАЛИЗАЦИИ ЗАГОЛОВКА КАРТИНКИ 2020
  • Ван, Бяо
  • Эсенлик, Семих
  • Гао, Хань
  • Котра, Ананд Меер
  • Алшина, Елена Александровна
RU2823042C1
ЗАПОЛНЕНИЕ НЕЗНАЧАЩЕЙ ИНФОРМАЦИЕЙ СЕГМЕНТОВ В БЛОКАХ УРОВНЯ АБСТРАКЦИИ СЕТИ КОДИРОВАННОГО СЛАЙСА 2012
  • Ван Е-Куй
  • Кобан Мухаммед Зейд
  • Карчевич Марта
RU2575397C2
СМЕЩЕНИЕ QP ЦВЕТНОСТИ НА УРОВНЕ СЛАЙДОВ И УСТРАНЕНИЕ БЛОЧНОСТИ 2013
  • Ван Дер Аувера Герт
  • Ван Сянлинь
  • Карчевич Марта
RU2636103C2
КОДИРОВАНИЕ ЗНАЧЕНИЙ СЧЕТА ПОРЯДКА ИЗОБРАЖЕНИЙ, ИДЕНТИФИЦИРУЮЩИХ ДОЛГОВРЕМЕННЫЕ ОПОРНЫЕ КАДРЫ 2012
  • Ван Е-Куй
  • Рамасубрамониан Адарш Кришнан
  • Чен Ин
RU2573204C1

Иллюстрации к изобретению RU 2 573 743 C1

Реферат патента 2016 года СИГНАЛИЗАЦИЯ ПАРАМЕТРОВ ФИЛЬТРА УДАЛЕНИЯ БЛОЧНОСТИ ПРИ КОДИРОВАНИИ ВИДЕО

Изобретение относится к средствам кодирования и декодирования видеоданных. Техническим результатом является уменьшение числа битов, используемых для сигнализации параметров фильтра удаления блочности. В способе декодируют первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодируют второй синтаксический элемент в заголовке слайса. 8 н. и 52 з.п. ф-лы, 9 ил., 23 табл.

Формула изобретения RU 2 573 743 C1

1. Способ декодирования видеоданных, причем способ содержит этапы, на которых:
декодируют первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодируют второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео; и
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, определяют, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

2. Способ по п. 1, при этом набор параметров уровня изображения содержит один из набора параметров изображения (PPS) или набора параметров адаптации (APS).

3. Способ по п. 1, при этом этап, на котором декодируют первый синтаксический элемент, содержит этап, на котором декодируют первый синтаксический элемент в одном из набора параметров уровня изображения или набора параметров последовательности (SPS).

4. Способ по п. 1, дополнительно содержащий этап, на котором, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, задают фильтр удаления блочности, применяемый к текущему слайсу видео, на основе параметров фильтра удаления блочности, присутствующих в одном из набора параметров уровня изображения и заголовка слайса.

5. Способ по п. 1, при этом этап, на котором декодируют первый синтаксический элемент, содержит этап, на котором декодируют флаг разрешения переопределения в наборе параметров уровня изображения, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности посредством второго набора параметров фильтра удаления блочности.

6. Способ по п. 5, при этом, когда переопределение разрешено, этап, на котором декодируют второй синтаксический элемент, содержит этап, на котором декодируют флаг переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из набора параметров уровня изображения или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео.

7. Способ по п. 5, при этом, когда переопределение не разрешено, этап, на котором определяют, что второй синтаксический элемент не присутствует в заголовке слайса, содержит этап, на котором определяют, что флаг переопределения не присутствует в заголовке слайса, который должен быть декодирован, дополнительно содержащий этап, на котором задают фильтр удаления блочности, применяемый к текущему слайсу видео, на основе первого набора параметров фильтра удаления блочности, включенного в набор параметров уровня изображения.

8. Способ по п. 1, при этом этап, на котором декодируют первый синтаксический элемент, содержит этап, на котором декодируют флаг разрешения наследования, который указывает, присутствует ли первый набор параметров фильтра удаления блочности в наборе параметров уровня изображения, который должен быть наследован заголовком слайса.

9. Способ по п. 8, при этом, когда присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, этап, на котором декодируют второй синтаксический элемент, содержит этап, на котором декодируют флаг наследования в заголовке слайса, который указывает, использовать ли второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, или наследовать первый набор параметров фильтра удаления блочности из набора параметров уровня изображения, чтобы задать фильтр удаления блочности, применяемый к текущему слайсу видео.

10. Способ по п. 8, при этом, когда не присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, этап, на котором определяют, что второй синтаксический элемент не присутствует в заголовке слайса, содержит этап, на котором определяют, что флаг наследования не присутствует в заголовке слайса, который должен быть декодирован, дополнительно содержащий этап, на котором задают фильтр удаления блочности, применяемый к текущему слайсу видео, на основе второго набора параметров фильтра удаления блочности, включенного в заголовок слайса.

11. Способ по п. 1, дополнительно содержащий этап, на котором декодируют третий синтаксический элемент, заданный для указания, что синтаксические элементы управления фильтром удаления блочности присутствуют в наборе параметров уровня изображения и заголовке слайса до этапа, на котором декодируют первый синтаксический элемент, при этом первый синтаксический элемент и второй синтаксический элемент содержат синтаксические элементы управления фильтром удаления блочности.

12. Способ по п. 11, при этом этап, на котором декодируют третий синтаксический элемент, содержит этап, на котором декодируют синтаксический элемент присутствия управления в одном из набора параметров уровня изображения и набора параметров последовательности (SPS).

13. Способ по п. 1, дополнительно содержащий этап, на котором декодируют четвертый синтаксический элемент, заданный для указания, что фильтр удаления блочности разрешен для текущего слайса видео.

14. Способ по п. 13, при этом этап, на котором декодируют четвертый синтаксический элемент, содержит этап, на котором декодируют флаг разрешения фильтра удаления блочности в наборе параметров последовательности (SPS) до этапа, на котором декодируют первый синтаксический элемент.

15. Устройство декодирования видео, содержащее:
память, которая хранит видеоданные; и
процессор, сконфигурированный с возможностью декодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
при этом процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и
при этом процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, определения, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

16. Устройство декодирования видео по п. 15, при этом набор параметров уровня изображения содержит один из набора параметров изображения (PPS) или набора параметров адаптации (APS).

17. Устройство декодирования видео по п. 15, при этом процессор сконфигурирован с возможностью декодирования первого синтаксического элемента в одном из набора параметров уровня изображения или набора параметров последовательности (SPS).

18. Устройство декодирования видео по п. 15, при этом процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе параметров фильтра удаления блочности, присутствующих в одном из набора параметров уровня изображения и заголовка слайса.

19. Устройство декодирования видео по п. 15, при этом процессор сконфигурирован с возможностью декодирования флага разрешения переопределения в наборе параметров уровня изображения, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности посредством второго набора параметров фильтра удаления блочности.

20. Устройство декодирования видео по п. 19, при этом процессор сконфигурирован с возможностью, когда переопределение разрешено, декодирования флага переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из набора параметров уровня изображения или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео.

21. Устройство декодирования видео по п. 19, при этом процессор сконфигурирован с возможностью, когда переопределение не разрешено, определения, что флаг переопределения не присутствует в заголовке слайса, который должен быть декодирован, и задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе первого набора параметров фильтра удаления блочности, включенного в набор параметров уровня изображения.

22. Устройство декодирования видео по п. 15, при этом процессор сконфигурирован с возможностью декодирования флага разрешения наследования, который указывает, присутствует ли первый набор параметров фильтра удаления блочности в наборе параметров уровня изображения, который должен быть наследован заголовком слайса.

23. Устройство декодирования видео по п. 22, при этом процессор сконфигурирован с возможностью, когда присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, декодирования флага наследования в заголовке слайса, который указывает, использовать ли второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, или наследовать первый набор параметров фильтра удаления блочности из набора параметров уровня изображения, чтобы задать фильтр удаления блочности, применяемый к текущему слайсу видео.

24. Устройство декодирования видео по п. 22, при этом процессор сконфигурирован с возможностью, когда не присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, определения, что флаг наследования не присутствует в заголовке слайса, который должен быть декодирован, и задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе второго набора параметров фильтра удаления блочности, включенного в заголовок слайса.

25. Устройство декодирования видео, содержащее:
средство для декодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для декодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео; и
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для определения, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

26. Устройство декодирования видео по п. 25, при этом набор параметров уровня изображения содержит набор параметров изображения (PPS).

27. Устройство декодирования видео по п. 25, при этом средство для декодирования первого синтаксического элемента содержит средство для декодирования флага разрешения переопределения в наборе параметров уровня изображения, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности посредством второго набора параметров фильтра удаления блочности.

28. Устройство декодирования видео по п. 27, при этом, когда переопределение разрешено, средство для декодирования второго синтаксического элемента содержит средство для декодирования флага переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из набора параметров уровня изображения или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео.

29. Устройство декодирования видео по п. 27, при этом, когда переопределение не разрешено, средство для определения, что второй синтаксический элемент не присутствует в заголовке слайса, содержит средство для определения, что флаг переопределения не присутствует в заголовке слайса, который должен быть декодирован, дополнительно содержащее средство для задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе первого набора параметров фильтра удаления блочности, включенного в набор параметров уровня изображения.

30. Считываемый компьютером носитель, содержащий инструкции для декодирования видеоданных, которые при исполнении побуждают один или более процессоров:
декодировать первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, декодировать второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео; и
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, определить, что второй синтаксический элемент не присутствует в заголовке слайса, который должен быть декодирован.

31. Способ кодирования видеоданных, причем способ содержит этапы, на которых:
кодируют первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, кодируют второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео; и
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, исключают кодирование второго синтаксического элемента в заголовке слайса.

32. Способ по п. 31, при этом набор параметров уровня изображения содержит один из набора параметров изображения (PPS) или набора параметров адаптации (APS).

33. Способ по п. 31, при этом этап, на котором кодируют первый синтаксический элемент, содержит этап, на котором кодируют первый синтаксический элемент в одном из набора параметров уровня изображения или набора параметров последовательности (SPS).

34. Способ по п. 31, дополнительно содержащий этап, на котором, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, задают фильтр удаления блочности, применяемый к текущему слайсу видео, на основе параметров фильтра удаления блочности, присутствующих в одном из набора параметров уровня изображения и заголовка слайса.

35. Способ по п. 31, при этом этап, на котором кодируют первый синтаксический элемент, содержит этап, на котором кодируют флаг разрешения переопределения в наборе параметров уровня изображения, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности посредством второго набора параметров фильтра удаления блочности.

36. Способ по п. 35, при этом, когда переопределение разрешено, этап, на котором кодируют второй синтаксический элемент, содержит этап, на котором кодируют флаг переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из набора параметров уровня изображения или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео.

37. Способ по п. 35, при этом, когда переопределение не разрешено, этап, на котором исключают кодирование второго синтаксического элемента, содержит этап, на котором исключают кодирование флага переопределения в заголовке слайса, дополнительно содержащий этап, на котором задают фильтр удаления блочности, применяемый к текущему слайсу видео, на основе первого набора параметров фильтра удаления блочности, включенного в набор параметров уровня изображения.

38. Способ по п. 31, при этом этап, на котором кодируют первый синтаксический элемент, содержит этап, на котором кодируют флаг разрешения наследования, который указывает, присутствует ли первый набор параметров фильтра удаления блочности в наборе параметров уровня изображения, который должен быть наследован заголовком слайса.

39. Способ по п. 38, при этом, когда присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, этап, на котором кодируют второй синтаксический элемент, содержит этап, на котором кодируют флаг наследования в заголовке слайса, который указывает, использовать ли второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, или наследовать первый набор параметров фильтра удаления блочности из набора параметров уровня изображения, чтобы задать фильтр удаления блочности, применяемый к текущему слайсу видео.

40. Способ по п. 38, при этом, когда не присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, этап, на котором исключают кодирование второго синтаксического элемента, содержит этап, на котором исключают кодирование флага наследования в заголовке слайса, дополнительно содержащий этап, на котором задают фильтр удаления блочности, применяемый к текущему слайсу видео, на основе второго набора параметров фильтра удаления блочности, включенного в заголовок слайса.

41. Способ по п. 31, дополнительно содержащий этап, на котором кодируют третий синтаксический элемент, заданный для указания, что синтаксические элементы управления фильтром удаления блочности присутствуют в наборе параметров уровня изображения и заголовке слайса до этапа, на котором кодируют первый синтаксический элемент, при этом первый синтаксический элемент и второй синтаксический элемент содержат синтаксические элементы управления фильтром удаления блочности.

42. Способ по п. 41, при этом этап, на котором кодируют третий синтаксический элемент, содержит этап, на котором кодируют синтаксический элемент присутствия управления в одном из набора параметров уровня изображения и набора параметров последовательности (SPS).

43. Способ по п. 31, дополнительно содержащий этап, на котором кодируют четвертый синтаксический элемент, заданный для указания, что фильтр удаления блочности разрешен для текущего слайса видео.

44. Способ по п. 43, при этом этап, на котором кодируют четвертый синтаксический элемент, содержит этап, на котором кодируют флаг разрешения фильтра удаления блочности в наборе параметров последовательности (SPS) до этапа, на котором кодируют первый синтаксический элемент.

45. Устройство кодирования видео, содержащее:
память, которая хранит видеоданные; и
процессор, сконфигурированный с возможностью кодирования первого синтаксического элемент, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
при этом процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, кодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео, и
при этом, процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, исключения кодирования второго синтаксического элемента в заголовке слайса.

46. Устройство кодирования видео по п. 45, при этом набор параметров уровня изображения содержит один из набора параметров изображения (PPS) или набора параметров адаптации (APS).

47. Устройство кодирования видео по п. 45, при этом процессор сконфигурирован с возможностью кодирования первого синтаксического элемента в одном из набора параметров уровня изображения или набора параметров последовательности (SPS).

48. Устройство кодирования видео по п. 45, при этом процессор сконфигурирован с возможностью, когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе параметров фильтра удаления блочности, присутствующих в одном из набора параметров уровня изображения и заголовка слайса.

49. Устройство кодирования видео по п. 45, при этом процессор сконфигурирован с возможностью кодирования флага разрешения переопределения в наборе параметров уровня изображения, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности посредством второго набора параметров фильтра удаления блочности.

50. Устройство кодирования видео по п. 49, при этом процессор сконфигурирован с возможностью, когда переопределение разрешено, кодирования флага переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из набора параметров уровня изображения или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео.

51. Устройство кодирования видео по п. 49, при этом процессор сконфигурирован с возможностью, когда переопределение не разрешено, исключения кодирования флага переопределения в заголовке слайса и задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе первого набора параметров фильтра удаления блочности, включенного в набор параметров уровня изображения.

52. Устройство кодирования видео по п. 45, при этом процессор сконфигурирован с возможностью кодирования флага разрешения наследования, который указывает, присутствует ли первый набор параметров фильтра удаления блочности в наборе параметров уровня изображения, который должен быть наследован заголовком слайса.

53. Устройство кодирования видео по п. 52, при этом процессор сконфигурирован с возможностью, когда присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, кодирования флага наследования в заголовке слайса, который указывает, использовать ли второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, или наследовать первый набор параметров фильтра удаления блочности из набора параметров уровня изображения, чтобы задать фильтр удаления блочности, применяемый к текущему слайсу видео.

54. Устройство кодирования видео по п. 52, при этом процессор сконфигурирован с возможностью, когда не присутствует первый набор параметров фильтра удаления блочности, который должен быть наследован заголовком слайса, исключения кодирования флага наследования в заголовке слайса и задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе второго набора параметров фильтра удаления блочности, включенного в заголовок слайса.

55. Устройство кодирования видео, содержащее:
средство для кодирования первого синтаксического элемента, заданного для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для кодирования второго синтаксического элемента в заголовке слайса, заданного для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео; и
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, средство для исключения кодирования второго синтаксического элемента в заголовке слайса.

56. Устройство кодирования видео по п. 55, при этом набор параметров уровня изображения содержит набор параметров изображения (PPS).

57. Устройство кодирования видео по п. 55, при этом средство для кодирования первого синтаксического элемента содержит средство для кодирования флага разрешения переопределения в наборе параметров уровня изображения, который указывает, разрешено ли переопределение первого набора параметров фильтра удаления блочности посредством второго набора параметров фильтра удаления блочности.

58. Устройство кодирования видео по п. 57, при этом, когда переопределение разрешено, средство для кодирования второго синтаксического элемента содержит средство для кодирования флага переопределения в заголовке слайса, который указывает, использовать ли первый набор параметров фильтра удаления блочности из набора параметров уровня изображения или переопределить первый набор параметров фильтра удаления блочности с помощью второго набора параметров фильтра удаления блочности, включенного в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео.

59. Устройство кодирования видео по п. 57, при этом, когда переопределение не разрешено, средство для исключения кодирования второго синтаксического элемента содержит средство для исключения кодирования флага переопределения в заголовке слайса, дополнительно содержащее средство для задания фильтра удаления блочности, применяемого к текущему слайсу видео, на основе первого набора параметров фильтра удаления блочности, включенного в набор параметров уровня изображения.

60. Считываемый компьютером носитель, содержащий инструкции для кодирования видеоданных, которые при исполнении побуждают один или более процессоров:
кодировать первый синтаксический элемент, заданный для указания, присутствуют ли параметры фильтра удаления блочности как в наборе параметров уровня изображения, так и в заголовке слайса;
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, кодировать второй синтаксический элемент в заголовке слайса, заданный для указания, использовать ли первый набор параметров фильтра удаления блочности, включенный в набор параметров уровня изображения, или второй набор параметров фильтра удаления блочности, включенный в заголовок слайса, для задания фильтра удаления блочности, применяемого к текущему слайсу видео; и
когда первый синтаксический элемент указывает, что параметры фильтра удаления блочности не присутствуют как в наборе параметров уровня изображения, так и в заголовке слайса, исключить кодирование второго синтаксического элемента в заголовке слайса.

Документы, цитированные в отчете о поиске Патент 2016 года RU2573743C1

АДАПТАЦИЯ ОТБРАСЫВАЕМОГО НИЗКОГО УРОВНЯ ПРИ МАСШТАБИРУЕМОМ КОДИРОВАНИИ ВИДЕОСИГНАЛА 2007
  • Гуо Йи
  • Ванг Йе-Куи
  • Ханнуксела Миска
  • Ли Хоукьянг
RU2414092C2
СПОСОБ И СИСТЕМА ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ИНФОРМАЦИИ, СВЯЗАННЫЕ С СЖАТИЕМ ВИДЕОСИГНАЛА 2007
  • Бао Илян
RU2406258C2
WO 2005027495 A2, 24.03.2005
WO 2011100465 A1, 18.08.2011
WO 2011075096 A1, 23.06.2011.

RU 2 573 743 C1

Авторы

Ван Дер Аувера Герт

Ван Е-Куй

Карчевич Марта

Даты

2016-01-27Публикация

2013-01-18Подача