RU2727095C2 - Древовидная структура множественного типа кодирования видео - Google Patents

Древовидная структура множественного типа кодирования видео Download PDF

Info

Publication number
RU2727095C2
RU2727095C2 RU2018125511A RU2018125511A RU2727095C2 RU 2727095 C2 RU2727095 C2 RU 2727095C2 RU 2018125511 A RU2018125511 A RU 2018125511A RU 2018125511 A RU2018125511 A RU 2018125511A RU 2727095 C2 RU2727095 C2 RU 2727095C2
Authority
RU
Russia
Prior art keywords
block
blocks
video
partitioning
video data
Prior art date
Application number
RU2018125511A
Other languages
English (en)
Other versions
RU2018125511A (ru
RU2018125511A3 (ru
Inventor
Сян Ли
Ли Чжан
Вэй-Цзюн ЧИЭНЬ
Цзяньлэ ЧЭНЬ
Синь ЧЖАО
Марта КАРЧЕВИЧ
Original Assignee
Квэлкомм Инкорпорейтед
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Квэлкомм Инкорпорейтед filed Critical Квэлкомм Инкорпорейтед
Publication of RU2018125511A publication Critical patent/RU2018125511A/ru
Publication of RU2018125511A3 publication Critical patent/RU2018125511A3/ru
Application granted granted Critical
Publication of RU2727095C2 publication Critical patent/RU2727095C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности кодирования. Способ декодирования видеоданных содержит прием битового потока, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных; определение разбиения кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из упомянутых трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, каким образом разбит конкретный блок кодированной картинки видеоданных, и причем упомянутые три или более различных структур разбиений включают в себя структуру разбиения троичного дерева; определение разбиения по меньшей мере одного блока кодированной картинки видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит упомянутый по меньшей мере один блок на три подблока без деления упомянутого по меньшей мере одного блока по центру упомянутого по меньшей мере одного блока; и восстановление множества блоков кодированной картинки видеоданных. 4 н. и 22 з.п. ф-лы, 19 ил.

Description

[0001] Настоящая заявка испрашивает приоритет предварительной заявки США 62/279, 233, поданной 15 января 2016, содержание которой включено в настоящий документ посредством ссылки.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее раскрытие относится к кодированию видео и декодированию видео.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
[0003] Возможности цифрового видео могут быть включены в широкий спектр устройств, включая цифровые телевизоры, системы цифрового прямого вещания, беспроводные широковещательные системы, персональные цифровые помощники (PDA), портативные или настольные компьютеры, планшетные компьютеры, электронные книги, цифровые камеры, устройства цифровой записи, цифровые медиаплееры, видеоигровые устройства, игровые приставки, сотовые или спутниковые радиотелефоны, так называемые ʺсмартфоныʺ, устройства видеоконференцсвязи, устройства потоковой передачи видео и т.п. Цифровые видеоустройства реализуют методы кодирования видео, такие как те, которые описаны в стандартах, определенных MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, часть 10, Усовершенствованное кодирование видео (AVC), стандарте Высокоэффективное кодирование видео (HEVC) и расширениях таких стандартов. Видеоустройства могут более эффективно передавать, принимать, кодировать, декодировать и/или сохранять цифровую видеоинформацию, путем реализации таких методов кодирования видео.
[0004] Методы кодирования видео включают в себя пространственное (внутрикадровое, ʺвнутри картинкиʺ) предсказание и/или временное (межкадровое, ʺмежду картинкамиʺ) предсказание для уменьшения или удаления избыточности, присущей видеопоследовательностям. Для блочного кодирования видео, видео вырезка (слайс (slice), т.е. видео картинка/кадр или часть видео картинки) может быть разделена на видеоблоки, которые также могут упоминаться как древовидные блоки, единицы кодирования (CU) и/или узлы кодирования. Картинки могут упоминаться как кадры. Опорные картинки могут упоминаться как опорные кадры.
[0005] Пространственное или временное предсказание приводит к блоку предсказания для блока, подлежащего кодированию. Остаточные данные представляют пиксельные разности между исходным блоком, подлежащим кодированию, и блоком предсказания. Для дальнейшего сжатия, остаточные данные могут быть преобразованы из пиксельной области в область преобразования, приводя в результате к остаточным коэффициентам преобразования, которые затем могут быть квантованы. Энтропийное кодирование может применяться для достижения еще большего сжатия.
КРАТКОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
[0006] Данное раскрытие описывает способы разбиения блоков видеоданных с использованием структуры дерева множественного типа (MTT). Методы настоящего раскрытия включают в себя определение одного из множества методов разбиения в разных узлах древовидной структуры. Примеры множества способов разбиения могут включать в себя методы разбиения, которые симметрично разбивают блок через центр блока, а также методы разбиения, которые разбивают блок, симметрично или асимметрично, так что центр блока не разбивается. Таким путем, разбиение видеоблоков может выполняться способом, который ведет к более эффективному кодированию, включая разбиение, которое лучше захватывает объекты в видеоданных, которые находятся в центре блоков.
[0007] Настоящее раскрытие дополнительно описывает методы для синтаксических элементов сигнализации, которые указывают, каким образом разбита конкретная картинка видеоданных. Блочное разбиение обычно описывает, как картинка видеоданных делится и подразделяется на блоки разных размеров. Видеодекодер может использовать такие синтаксические элементы для восстановления блочного разбиения. Другие примеры раскрытия направлены на выполнение преобразований на блоках видеоданных, которые были разделены с использованием методов разбиения МТТ согласно настоящему раскрытию.
[0008] В одном примере раскрытия, способ декодирования видеоданных включает в себя прием битового потока, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных, определение разбиения кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений и восстановление множества блоков кадра видеоданных.
[0009] В другом примере раскрытия, способ кодирования видеоданных включает в себя прием картинки видеоданных, разбиение картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений и кодирование множества блоков картинки видеоданных.
[0010] В другом примере раскрытия, устройство, сконфигурированное для декодирования видеоданных, содержит память, сконфигурированную, чтобы хранить видеоданные, и схему декодирования видео, сконфигурированную, чтобы принимать битовый поток, который включает в себя последовательность битов, которая формирует представление картинки видеоданных, определять разбиение кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений и восстанавливать множество блоков кадра видеоданных.
[0011] В другом примере раскрытия устройство, сконфигурированное для декодирования видеоданных, содержит средство для приема битового потока, который включает в себя последовательность битов, которая формирует кодированную картинку видеоданных, средство для определения разбиения кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений и средство для восстановления множества блоков кадра видеоданных.
[0012] Детали одного или более примеров приведены на прилагаемых чертежах и в описании ниже. Другие признаки, цели и преимущества будут очевидны из описания, чертежей и формулы изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0013] Фиг. 1 - блок-схема, иллюстрирующая примерную систему кодирования и декодирования видео, сконфигурированную для реализации способов раскрытия.
[0014] Фиг. 2 - концептуальная диаграмма, иллюстрирующая структуру единицы кодирования (CU) в высокоэффективном кодировании видео (HEVC).
[0015] Фиг. 3 - концептуальная диаграмма, иллюстрирующая примерные типы разбиения для режима интер- (межкадрового) предсказания.
[0016] Фиг. 4A - концептуальная диаграмма, иллюстрирующая пример блочного разбиения с использованием структуры квадродерева/двоичного дерева (QTBT).
[0017] Фиг. 4B - концептуальная диаграмма, иллюстрирующая примерную древовидную структуру, соответствующую блочному разбиению с использованием структуры QTBT согласно фиг. 4A.
[0018] Фиг. 5A - концептуальная диаграмма, иллюстрирующая примерные типы горизонтального разбиения троичного дерева.
[0019] Фиг. 5B - концептуальная диаграмма, иллюстрирующая примерные типы горизонтального разбиения троичного дерева.
[0020] Фиг. 6A - концептуальная диаграмма, иллюстрирующая разбиение квадродерева.
[0021] Фиг. 6B - концептуальная диаграмма, иллюстрирующая вертикальное разбиение двоичного дерева.
[0022] Фиг. 6C - концептуальная диаграмма, иллюстрирующая горизонтальное разбиение двоичного дерева.
[0023] Фиг. 6D - концептуальная диаграмма, иллюстрирующая вертикальное центрально-боковое древовидное разбиение.
[0024] Фиг. 6E - концептуальная диаграмма, иллюстрирующая горизонтальное центрально-боковое древовидное разбиение.
[0025] Фиг. 7 - концептуальная диаграмма, иллюстрирующая пример разбиения единицы дерева кодирования (CTU) в соответствии с методами настоящего раскрытия.
[0026] Фиг. 8 - блок-схема, иллюстрирующая пример видеокодера.
[0027] Фиг. 9 - блок-схема, иллюстрирующая пример видеодекодера.
[0028] Фиг. 10A - блок-схема последовательности действий, иллюстрирующая примерную операцию видеокодера в соответствии с методом настоящего раскрытия.
[0029] Фиг. 10B - блок-схема последовательности действий, иллюстрирующая примерную операцию видеодекодера в соответствии с методом настоящего раскрытия.
[0030] Фиг. 11 - блок-схема последовательности действий, иллюстрирующая примерную операцию видеокодера, в соответствии с другим примерным методом настоящего раскрытия.
[0031] Фиг. 12 - блок-схема последовательности действий, иллюстрирующая примерную операцию видеодекодера, в соответствии с другим примерным методом настоящего раскрытия.
ПОДРОБНОЕ ОПИСАНИЕ
[0032] Настоящее раскрытие относится к разбиению и/или организации блоков видеоданных (например, единиц кодирования) в блочном кодировании видео. Методы настоящего раскрытия могут применяться в стандартах кодирования видео. В различных примерах, описанных ниже, методы настоящего раскрытия включают в себя разбиение блоков видеоданных с использованием трех или более различных структур разбиений. В некоторых примерах, на каждой глубине структуры дерева кодирования могут использоваться три или более различных структур разбиений. Такие методы разбиения могут определяться как разбиение дерева множественного типа (MTT). Используя MTT-разбиение, видеоданные могут разбиваться более гибко, что позволяет повысить эффективность кодирования.
[0033] На фиг. 1 показана блок-схема, иллюстрирующая примерную систему кодирования и декодирования видео, которая может использовать методы настоящего раскрытия для разбиения блоков видеоданных, сигнализации и синтаксического анализа типов разбиений и применения преобразований и дальнейших разбиений преобразований. Как показано на фиг. 1, система 10 включает в себя устройство-источник 12, которое предоставляет кодированные видеоданные, которые позднее будут декодированы устройством-получателем 14. В частности, устройство-источник 12 предоставляет видеоданные устройству-получателю 14 посредством компьютерно-читаемого носителя 16. Устройство-источник 12 и устройство-получатель 14 могут содержать любое из широкого спектра устройств, включая настольные компьютеры, ноутбуки (например, портативные компьютеры), планшетные компьютеры, телевизионные приставки, телефонные трубки, например, так называемые ʺсмартфоныʺ, планшетные компьютеры, телевизоры, камеры, устройства отображения, цифровые медиаплееры, видеоигровые консоли, устройство потоковой передачи видео и т.п. В некоторых случаях, устройство-источник 12 и устройство-получатель 14 могут быть оснащены средствами беспроводной связи. Таким образом, устройство-источник 12 и устройство-получатель 14 могут быть устройствами беспроводной связи. Устройство-источник 12 является примерным устройством кодирования видео (то есть устройством для кодирования видеоданных). Устройство-получатель 14 является примерным устройством декодирования видео (например, прибором или устройством для декодирования видеоданных).
[0034] В примере на фиг. 1, устройство-источник 12 включает в себя источник 18 видео, носитель 20 хранения данных, сконфигурированный, чтобы хранить видеоданные, видеокодер 22 и интерфейс 24 вывода. Устройство-получатель 14 включает в себя интерфейс 26 ввода, носитель 28 хранения данных, сконфигурированный, чтобы хранить кодированные видеоданные, видеодекодер 30 и устройство 32 отображения. В других примерах, устройство-источник 12 и устройство-получатель 14 включают в себя другие компоненты или компоновки. Например, устройство-источник 12 может принимать видеоданные от внешнего источника видео, например, внешней камеры. Аналогично, устройство-получатель 14 может взаимодействовать с внешним устройством отображения, а не включать в себя встроенное устройство отображения.
[0035] Проиллюстрированная система 10 на фиг. 1 является всего лишь одним примером. Методы обработки видеоданных могут выполняться любым прибором или устройством кодирования и/или декодирования цифрового видео. Хотя в общем методы настоящего раскрытия выполняются устройством кодирования видео и устройством декодирования видео, эти методы также могут выполняться комбинированным кодером/декодером видео, обычно упоминаемым как ʺкодекʺ. Устройство-источник 12 и устройство-получатель 14 являются просто примерами таких устройств кодирования, в которых устройство-источник 12 генерирует кодированные видеоданные для передачи в устройство-получатель 14. В некоторых примерах, устройство-источник 12 и устройство-получатель 14 работают по существу симметричным образом, так что каждое из устройства-источника 12 и устройства-получателя 14 включают в себя компоненты кодирования и декодирования видео. Следовательно, система 10 может поддерживать однонаправленную или двунаправленную передачу видео между устройством-источником 12 и устройством-получателем 14, например, для потоковой передачи видео, воспроизведения видео, видеовещания или видеотелефонии.
[0036] Источник 18 видео устройства-источника 12 может включать в себя устройство захвата (съемки) видео, такое как видеокамера, архив видео, содержащий ранее снятое видео, и/или интерфейс потока видео для приема видеоданных от поставщика видеоконтента. В качестве дополнительной альтернативы, источник 18 видео может генерировать данные на основе компьютерной графики в качестве исходного видео или комбинацию видео в реальном времени, архивированного видео и генерируемого компьютером видео. Устройство-источник 12 может содержать один или более носителей хранения данных (например, носитель 20 хранения данных), сконфигурированных для хранения видеоданных. Способы, описанные в настоящем раскрытии, могут быть применены к кодированию видео в общем и могут применяться к беспроводным и/или проводным приложениям. В каждом случае, захваченное, предварительно захваченное или генерируемое компьютером видео может быть закодировано кодером 22 видео. Интерфейс 24 вывода может выводить информацию закодированного видео на компьютерно-читаемый носитель 16.
[0037] Устройство-получатель 14 может принимать закодированные видеоданные, подлежащие декодированию, посредством компьютерно-читаемого носителя 16. Компьютерно-читаемый носитель 16 может содержать любой тип носителя или устройства, способного перемещать закодированные видеоданные из устройства-источника 12 в устройство-получатель 14. В некоторых примерах, компьютерно-читаемый носитель 16 содержит среду связи, чтобы позволять устройству-источнику 12 передавать закодированные видеоданные непосредственно в устройство-получатель 14 в реальном времени. Закодированные видеоданные могут модулироваться в соответствии со стандартом связи, таким как протокол беспроводной связи, и передаваться на устройство-получатель 14. Средство связи может содержать любую беспроводную или проводную среду связи, такую как радиочастотный (RF) спектр или одна или более физических линий передачи. Среда связи может быть частью пакетной сети, такой как локальная сеть, сеть широкого охвата или глобальная сеть, такая как Интернет. Среда связи может включать в себя маршрутизаторы, коммутаторы, базовые станции или любое другое оборудование, которое может быть полезным, чтобы способствовать связи от устройства-источника 12 к устройству-получателю 14. Устройство-получатель 14 может содержать один или более носителей данных, сконфигурированных для хранения закодированных видеоданных и декодированных видеоданных.
[0038] В некоторых примерах, закодированные данные (например, закодированные видеоданные) могут выводиться из интерфейса 24 вывода на устройство хранения. Аналогичным образом, закодированные данные могут быть доступны из устройства хранения через интерфейс 26 ввода. Устройство хранения может включать в себя любой из множества распределенных или локально доступных носителей хранения данных, таких как жесткий диск, Blu-ray диски, DVD, CD-ROM, флэш-память, энергозависимая или энергонезависимая память или любые другие подходящие цифровые носители для хранения закодированных видеоданных. В другом примере, устройство хранения может соответствовать файловому серверу или другому промежуточному устройству хранения, которое может хранить закодированное видео, сгенерированное устройством-источником 12. Устройство-получатель 14 может осуществлять доступ к сохраненным видеоданным с устройства хранения посредством потоковой передачи или загрузки. Файловым сервером может быть любой тип сервера, способный хранить закодированные видеоданные и передавать эти закодированные видеоданные на устройство-получатель 14. Примеры файловых серверов включают веб-сервер (например, для веб-сайта), FTP-сервер, устройства хранения, подключенные к сети (например, NAS), или накопитель на локальном диске. Устройство-получатель 14 может осуществлять доступ к закодированным видеоданным через любое стандартное соединение передачи данных, включая подключение к Интернету. Это может включать в себя беспроводной канал (например, соединение Wi-Fi), проводное соединение (например, DSL, кабельный модем и т.д.) или комбинацию того и другого, подходящую для доступа к закодированным видеоданным, хранящимся на файловом сервере. Передача закодированных видеоданных с устройства хранения может быть потоковой передачей, передачей загрузки или их комбинацией.
[0039] Методы настоящего раскрытия могут быть применены к кодированию видео для поддержки любого из множества мультимедийных приложений, таких как эфирные телевизионные передачи, передачи кабельного телевидения, передачи спутникового телевидения, передачи потокового видео в Интернете, такие как динамическая адаптивная потоковая передача по HTTP (DASH), цифровое видео, которое кодируется на носитель хранения данных, декодирование цифрового видео, хранящегося на носителе данных, или в других приложениях. В некоторых примерах, система 10 может быть сконфигурирована, чтобы поддерживать однонаправленную или двунаправленную передачу видео для поддержки таких приложений, как потоковое видео, воспроизведение видео, видеовещание и/или видеотелефония.
[0040] Компьютерно-читаемый носитель 16 может включать в себя кратковременные носители, такие как беспроводная широковещательная передача или проводная сетевая передача, или носители хранения данных (то есть не-временные носители данных), такие как жесткий диск, флэш-накопитель, компакт-диск, цифровой видеодиск, Blu-ray диск или другие компьютерно-читаемые носители. В некоторых примерах, сетевой сервер (не показан) может принимать закодированные видеоданные из устройства-источника 12 и предоставлять закодированные видеоданные устройству-получателю 14, например, посредством сетевой передачи. Аналогичным образом, вычислительное устройство оборудования по производству носителей, такое как оборудование штамповки дисков, может принимать закодированные видеоданные от устройства-источника 12 и производить диск, содержащий закодированные видеоданные. Следовательно, компьютерно-читаемый носитель 16 можно понимать как включающий один или более компьютерно-читаемых носителей различных форм в различных примерах.
[0041] Интерфейс 26 ввода устройства-получателя 14 принимает информацию от компьютерно-читаемого носителя 16. Информация компьютерно-читаемого носителя 16 может включать в себя синтаксическую информацию, определенную видеокодером 22, видеокодера 22, которая также используется видеодекодером 30, которая включает в себя синтаксические элементы, которые описывают характеристики и/или обработку блоков и других кодированных единиц, например групп картинок (GOP). Носитель 28 хранения может сохранять закодированные видеоданные, принятые интерфейсом 26 ввода. Устройство 32 отображения отображает декодированные видеоданные пользователю. Устройство 32 отображения может содержать любое из множества устройств отображения, таких как электронно-лучевая трубка (CRT), жидкокристаллический дисплей (LCD), плазменный дисплей, дисплей на органических светоизлучающих диодах (OLED) или другой тип устройства отображения.
[0042] Видеокодер 22 и видеодекодер 30, каждый, могут быть реализованы как любая из множества подходящих схем кодера или декодера, таких как один или более микропроцессоров, процессоры цифровых сигналов (DSP), специализированные интегральные схемы (ASIC), программируемые вентильные матрицы (FPGA), дискретная логика, программное обеспечение, аппаратные средства, встроенное программное обеспечение или любые их комбинации. Когда методы частично реализованы в программном обеспечении, устройство может хранить инструкции для программного обеспечения на подходящем, не-временном компьютерно-читаемом носителе и может исполнять инструкции на аппаратных средствах с использованием одного или более процессоров для выполнения методов настоящего раскрытия. Каждый из видеокодера 22 и видеодекодера 30 может быть включен в один или более кодеров или декодеров, каждый из которых может быть интегрирован как часть комбинированного кодера/декодера (кодека) в соответствующем устройстве.
[0043] В некоторых примерах, видеокодер 22 и видеодекодер 30 могут работать в соответствии со стандартом кодирования видео. Примеры стандартов кодирования видео включают в себя, без ограничения указанным, ITU-T H.261, ISO/IEC MPEG-1 Visual, ITU-T H.262 или ISO/IEC MPEG-2 Visual, ITU-T H.263, ISO/IEC MPEG-4 Visual и ITU-T H.264 (также известный как ISO/IEC MPEG-4 AVC), включая его расширения для масштабируемого кодирования видео (SVC) и многовидового кодирования видео (MVC). Стандарт кодирования видео ʺВысокоэффективное кодирование видеоʺ (HEVC) или ITU-T H.265, включая расширения для кодирования диапазона и экранного контента, 3D кодирование видео (3D-HEVC) и многовидовые расширения (MV-HEVC) и масштабируемое расширение (SHVC), был разработан Объединенной командой по сотрудничеству в области кодирования видео (JCT-VC) ITU-T Экспертной группы по кодированию видео (VCEG) и ISO/IEC Экспертной группы по движущемуся изображению (MPEG).
[0044] В HEVC и других спецификациях кодирования видео, видеопоследовательность обычно включает в себя серию картинок (изображений). Картинки также могут упоминаться как ʺкадрыʺ. Картинка может включать в себя три массива выборок, обозначаемых SL, SСb и SСr. SL представляет собой двумерный массив (т.е. блок) выборок яркости. SСb представляет собой двумерный массив выборок цветоразностного сигнала Cb. SСr представляет собой двумерный массив выборок цветоразностного сигнала Cr. Выборки цветоразностного сигнала также могут упоминаться здесь как выборки ʺцветностиʺ. В других случаях, картинка может быть монохромной и может содержать только массив выборок яркости.
[0045] Кроме того, в HEVC и других спецификациях кодирования видео, для генерации кодированного представления картинки, видеокодер 22 может генерировать набор единиц дерева кодирования (CTU). Каждая из CTU может содержать блок дерева кодирования выборок яркости, два соответствующих блока дерева кодирования выборок цветности и синтаксические структуры, используемые для кодирования выборок блоков дерева кодирования. В монохромных картинках или картинках, имеющих три отдельные цветовые плоскости, CTU может содержать один блок дерева кодирования и синтаксические структуры, используемые для кодирования выборок блока дерева кодирования. Блок дерева кодирования может быть блоком N×N выборок. CTU также может упоминаться как ʺблок дереваʺ или ʺнаибольшая единица кодированияʺ (LCU). CTU HEVC могут быть в широком смысле аналогичны макроблокам других стандартов, таких как H.264/AVC. Однако CTU не обязательно ограничивается конкретным размером и может включать в себя одну или более единиц кодирования (CU). Вырезка может включать в себя целое число CTU, упорядоченных последовательно в порядке растрового сканирования.
[0046] При работе в соответствии с HEVC, чтобы сгенерировать кодированную CTU, видеокодер 22 может рекурсивно выполнять разбиение квадродерева на блоках дерева кодирования CTU, чтобы разделить блоки дерева кодирования на блоки кодирования, отсюда название ʺединицы дерева кодированияʺ. Блок кодирования представляет собой блок N×N выборок. CU может содержать блок кодирования выборок яркости и два соответствующих блока кодирования выборок цветности картинки, которая имеет массив выборок яркости, массив выборок Cb и массив выборок Cr, а также синтаксические структуры, используемые для кодирования выборок блоков кодирования. В монохромных картинках или картинках, имеющих три отдельные цветовые плоскости, CU может содержать один блок кодирования и синтаксические структуры, используемые для кодирования выборок блока кодирования.
[0047] Синтаксические данные в битовом потоке также могут определять размер для CTU. Вырезка включает в себя ряд последовательных CTU в порядке кодирования. Видеокадр или картинка могут разбиваться на одну или более вырезок. Как упомянуто выше, каждый блок дерева может разбиваться на единицы кодирования (CU) в соответствии с квадродеревом. В общем случае, структура данных квадродерева включает в себя один узел на каждую CU, с корневым узлом, соответствующим блоку дерева. Если CU разделена на четыре под-CU, узел, соответствующий CU, включает в себя четыре листовых узла, каждый из которых соответствует одной из под-CU.
[0048] Каждый узел структуры данных квадродерева может предоставлять синтаксические данные для соответствующей CU. Например, узел в квадродереве может включать в себя флаг разделения, указывающий, разделена ли CU, соответствующая узлу, на под-CU. Синтаксические элементы для CU могут быть определены рекурсивно и могут зависеть от того, разделена ли CU на под-CU. Если CU не разделяется дальше, она упоминается как листовая CU. Если блок CU разделяется дальше, он может обычно упоминаться как не-листовая CU. В некоторых примерах настоящего раскрытия, четыре под-CU листовой CU могут упоминаться как листовые CU, даже если нет явного разделения исходной листовой CU. Например, если CU с размером 16×16 больше не разделяется, четыре под-CU размером 8×8 также могут упоминаться как листовые CU, хотя CU размером 16×16 никогда не была разделена.
[0049] CU имеет аналогичное назначение, что и макроблок стандарта H.264, за исключением того, что CU не имеет различия по размерам. Например, блок дерева может быть разделен на четыре дочерних узла (также называемых под-CU), и каждый дочерний узел может, в свою очередь, быть родительским узлом и разделяться на еще четыре дочерних узла. Конечный неразделенный дочерний узел, называемый листовым узлом квадродерева, содержит узел кодирования, также упоминаемый как листовая CU. Синтаксические данные, ассоциированные с кодированным битовым потоком, могут определять максимальное количество раз, когда блок дерева может быть разделен, называется максимальной глубиной CU, а также может определять минимальный размер узлов кодирования. Соответственно, битовый поток также может определять наименьшую единицу кодирования (SCU). Настоящее раскрытие использует термин ʺблокʺ для ссылки на любую из CU, PU или TU в контексте HEVC или аналогичные структуры данных в контексте других стандартов (например, макроблоки и их подблоки в H.264/AVC).
[0050] CU включает в себя узел кодирования, а также единицы предсказания (PU) и единицы преобразования (TU), ассоциированные с узлом кодирования. Размер CU соответствует размеру узла кодирования и может быть, в некоторых примерах, квадратным по форме. В примере HEVC, размер CU может составлять от 8×8 пикселов до размера блока дерева максимум 64×64 пиксела или более. Каждая CU может содержать одну или более PU и одну или более TU. Синтаксические данные, ассоциированные с CU, могут описывать, например, разбиение CU на одну или более PU. Режимы разбиения могут различаться между тем, является ли CU закодированной в режиме пропуска или прямом режиме, закодированной в режиме интра-предсказания или закодированной в режиме интер-предсказания. PU могут разбиваться на неквадратные формы. Синтаксические данные, ассоциированные с CU, могут также описывать, например, разбиение CU на одну или более TU в соответствии с квадродеревом. TU может быть квадратной или не-квадратной (например, прямоугольной) по форме.
[0051] Стандарт HEVC допускает преобразования в соответствии с TU. TU могут различаться для разных CU. TU обычно имеют размер в зависимости от размера PU в пределах заданной CU, определенной для разделенной LCU, хотя это может быть не всегда так. TU обычно имеют тот же размер или меньше, чем PU. В некоторых примерах, остаточные выборки, соответствующие CU, могут быть подразделены на более мелкие единицы с использованием структуры квадродерева, иногда называемой ʺостаточным квадродеревомʺ (RQT). Листовые узлы RQT могут упоминаться как TU. Значения пиксельной разности, ассоциированные с TU, могут быть преобразованы для получения коэффициентов преобразования, которые могут быть квантованы.
[0052] Листовая CU может включать в себя одну или более PU. В общем, PU представляет пространственную область, соответствующую всей или части соответствующей CU, и может включать в себя данные для извлечения опорной выборки для PU. Кроме того, PU включает в себя данные, относящиеся к предсказанию. Например, когда PU кодируется в интра-режиме, данные для PU могут быть включены в RQT, что может включать в себя данные, описывающие режим интра-предсказания для TU, соответствующей PU. В качестве другого примера, когда PU кодируется в интер-режиме, PU может включать в себя данные, определяющие один или более векторов движения для PU. Данные, определяющие вектор движения для PU, могут описывать, например, горизонтальный компонент вектора движения, вертикальный компонент вектора движения, разрешение для вектора движения (например, точность в одну четвертую пиксела или точность в одну восьмую пиксела), опорную картинку, на которую указывает вектор движения, и/или список опорных картинок (например, список 0, список 1 или список C) для вектора движения.
[0053] Листовая CU, имеющий одну или более PU, может также включать в себя одну или более TU. TU могут быть заданы с использованием RQT (также упоминается как структура квадродерева TU), как обсуждалось выше. Например, флаг разделения может указывать, разделена ли листовая CU на четыре единицы преобразования. В некоторых примерах, каждая единица преобразования может быть далее разделена на дальнейшие под-TU. Когда TU не разделяется далее, она может называться листовой TU. Как правило, для интра-кодирования, все листовые TU, принадлежащие листовой CU, содержат остаточные данные, полученные из того же самого режима интра-предсказания. То есть, тот же самый режим интра-предсказания обычно применяется для вычисления предсказанных значений, которые будут преобразованы во всех TU листовой CU. Для интра-кодирования, видеокодер 22 может вычислять остаточное значение для каждого листового TU, используя режим интра-предсказания, как разность между частью CU, соответствующей TU, и исходным блоком. TU не обязательно ограничивается размером PU. Таким образом, TU могут быть больше или меньше, чем PU. Для интра-кодирования, PU может располагаться совместно с соответствующей листовой TU для той же самой CU. В некоторых примерах, максимальный размер листовой TU может соответствовать размеру соответствующей листовой CU.
[0054] Кроме того, TU листовых CU могут также быть ассоциированы с соответствующими структурами RQT. То есть, листовая CU может включать в себя квадродерево, указывающее, как листовая CU разбивается на TU. Корневой узел квадродерева TU обычно соответствует листовой CU, а корневой узел квадродерева CU обычно соответствует блоку дерева (или LCU).
[0055] Как обсуждалось выше, видеокодер 22 может разбивать блок кодирования CU на один или более блоков предсказания. Блок предсказания представляет собой прямоугольный (т.е. квадратный или неквадратный) блок выборок, на котором применяется одно и то же предсказание. PU из CU может содержать блок предсказания выборок яркости, два соответствующих блока предсказания выборок цветности и синтаксические структуры, используемые для предсказания блоков предсказания. В монохромных картинках или картинках, имеющих три отдельные цветовые плоскости, PU может содержать один блок предсказания и синтаксические структуры, используемые для предсказания блока предсказания. Видеокодер 22 может генерировать блоки предсказания (например, блоки предсказания яркости, Cb и Cr) для блоков предсказания (например, блоков предсказания яркости, Cb и Cr) каждой PU из CU.
[0056] Видеокодер 22 может использовать интра-предсказание или интер-предсказание для генерации блоков предсказания для PU. Если видеокодер 22 использует интра-предсказание для генерации блоков предсказания PU, видеокодер 22 может генерировать блоки предсказания PU на основе декодированных выборок картинки, которая включает в себя PU.
[0057] После того, как видеокодер 22 генерирует блоки предсказания (например, блоки предсказания яркости, Cb и Cr) для одной или более PU из CU, видеокодер 22 может генерировать один или более остаточных блоков для CU. Например, видеокодер 22 может генерировать остаточный блок яркости для CU. Каждая выборка в остаточном блоке яркости CU указывает разность между выборкой яркости в одном из блоков предсказания яркости CU и соответствующей выборкой в исходном блоке кодирования яркости CU. Кроме того, видеокодер 22 может генерировать остаточный блок Cb для CU. Каждая выборка в остаточном блоке Cb из CU может указывать разность между выборкой Cb в одном из блоков предсказания Cb CU и соответствующей выборкой в исходном блоке кодирования Cb из CU. Видеокодер 22 может также генерировать остаточный блок Cr для CU. Каждая выборка в остаточном блоке Cr из CU может указывать разность между выборкой Cr в одном из блоков Cr предсказания CU и соответствующей выборкой в исходном блоке кодирования Cr из CU.
[0058] Кроме того, как обсуждалось выше, видеокодер 22 может использовать разбиение на четыре дерева для декомпозиции остаточных блоков (например, остаточных блоков яркости, Cb и Cr) из CU в один или более блоков преобразования (например, блоков преобразования яркости, Cb и Cr). Блок преобразования представляет собой прямоугольный (например, квадратный или неквадратный) блок выборок, на котором применяется одно и то же преобразование. Единица преобразования (TU) из CU может содержать блок преобразования выборок яркости, два соответствующих блока преобразования выборок цветности и синтаксические структуры, используемые для преобразования выборок блока преобразования. Таким образом, каждая TU из CU может иметь блок преобразования яркости, блок преобразования Cb и блок преобразования Cr. Блок преобразования яркости TU может быть подблоком остаточного блока яркости CU. Блок преобразования Cb может быть подблоком остаточного блока Cb CU. Блок преобразования Cr может быть подблоком остаточного блока Cr CU. В монохромных картинках или картинках, имеющих три отдельные цветовые плоскости, TU может содержать один блок преобразования и синтаксические структуры, используемые для преобразования выборок блока преобразования.
[0059] Видеокодер 22 может применять одно или более преобразований блока преобразования TU для генерации блока коэффициентов для TU. Например, видеокодер 22 может применять одно или более преобразований к блоку преобразования яркости TU для генерации блока коэффициентов яркости для TU. Блок коэффициентов может быть двумерным массивом коэффициентов преобразования. Коэффициент преобразования может быть скалярной величиной. Видеокодер 22 может применять одно или более преобразований к блоку преобразования Cb TU для генерации блока коэффициентов Cb для TU. Видеокодер 22 может применять одно или более преобразований к блоку преобразования Cr TU для генерации блока коэффициентов Cr для TU.
[0060] В некоторых примерах, видеокодер 22 пропускает применение преобразований к блоку преобразования. В таких примерах, видеокодер 22 может обрабатывать значения остаточных выборок таким же образом, как и коэффициенты преобразования. Таким образом, в примерах, где видеокодер 22 пропускает применение преобразований, следующее описание коэффициентов преобразования и блоков коэффициентов может быть применимо для преобразования блоков остаточных выборок.
[0061] После генерации блока коэффициентов (например, блока коэффициентов яркости, блока коэффициентов Cb или блока коэффициентов Cr), видеокодер 22 может квантовать блок коэффициентов, чтобы, возможно, уменьшить объем данных, используемых для представления блока коэффициентов, потенциально обеспечивая дальнейшее сжатие. Квантование обычно относится к процессу, в котором диапазон значений сжимается до одного значения. Например, квантование может быть выполнено путем деления значения на константу, а затем округления до ближайшего целого. Для квантования блока коэффициентов, видеокодер 22 может квантовать коэффициенты преобразования блока коэффициентов. После того как видеокодер 22 квантует блок коэффициентов, видеокодер 22 может энтропийно кодировать синтаксические элементы, указывающие квантованные коэффициенты преобразования. Например, видеокодер 22 может выполнять контекстно-адаптивное двоичное арифметическое кодирование (CABAC) или другие методы энтропийного кодирования на синтаксических элементах, указывающих квантованные коэффициенты преобразования.
[0062] Видеокодер 22 может выводить битовый поток, который включает в себя последовательность битов, которая формирует представление кодированных картинок и ассоциированных данных. Таким образом, битовый поток содержит кодированное представление видеоданных. Битовый поток может содержать последовательность единиц уровня абстракции сети (NAL). Единица NAL представляет собой синтаксическую структуру, содержащую указание типа данных в единице NAL и байты, содержащие эти данные в форме полезной нагрузки исходной байтовой последовательности (RBSP), распределенные, как необходимо, с битами предотвращения эмуляции. Каждая из единиц NAL может включать в себя заголовок единицы NAL и может инкапсулировать RBSP. Заголовок единицы NAL может включать в себя синтаксический элемент, который указывает код типа единицы NAL. Код типа единицы NAL, указанный в заголовке единицы NAL, указывает тип единицы NAL. RBSP может представлять собой синтаксическую структуру, содержащую целое число байтов, которое инкапсулировано в единице NAL. В некоторых случаях, RBSP включает в себя нуль битов.
[0063] Видеодекодер 30 может принимать битовый поток, генерируемый видеокодером 22. Видеодекодер 30 может декодировать битовый поток для восстановления картинок видеоданных. В качестве части декодирования битового потока, видеодекодер 30 может синтаксически анализировать битовый поток для получения синтаксических элементов из битового потока. Видеодекодер 30 может восстанавливать картинки видеоданных, основываясь, по меньшей мере частично, на синтаксических элементах, полученных из битового потока. Процесс восстановления видеоданных может быть, в общем, обратным процессу, выполняемому видеокодером 22. Например, видеодекодер 30 может использовать векторы движения PU для определения блоков предсказания для PU текущей CU. Кроме того, видеодекодер 30 может осуществлять обратное квантование блоков коэффициентов TU текущей CU. Видеодекодер 30 может выполнять обратные преобразования на блоках коэффициентов для восстановления блоков преобразования TU текущей CU. Видеодекодер 30 может восстанавливать блоки кодирования текущей CU путем суммирования выборок блоков предсказания для PU текущей CU с соответствующими выборками блоков преобразования TU текущей CU. Путем восстановления блоков кодирования для каждой CU картинки, видеодекодер 30 может восстановить картинку.
[0064] Ниже описаны общие концепции и некоторые аспекты схемы HEVC, в которых основное внимание уделяется методам блочного разбиения. В HEVC, наибольшая единица кодирования в вырезке называется CTB. CTB разделяется в соответствии со структурой квадродерева, узлы которой являются единицами кодирования. Множество узлов в структуре квадродерева включает в себя листовые узлы и не-листовые узлы. Листовые узлы не имеют дочерних узлов в древовидной структуре (т.е. листовые узлы далее не разделяются). Не-листовые узлы включают в себя корневой узел древовидной структуры. Корневой узел соответствует исходному видеоблоку видеоданных (например, CTB). Для каждого соответственного не-корневого узла из множества узлов, соответственный не-корневой узел соответствует видеоблоку, который является подблоком видеоблока, соответствующего родительскому узлу в древовидной структуре соответственного не-корневого узла. Каждый соответственный не-листовой узел множества не-листовых узлов имеет один или более дочерних узлов в древовидной структуре.
[0065] Размер CTB составляет от 16×16 до 64×64 в основном профиле HEVC (хотя технически могут поддерживаться размеры 8×8 CTB). CTB может быть рекурсивно разделен на CU способом квадродерева, как описано в W. J. Han et al, ʺImproved Video Compression Efficiency Through Flexible Unit Representation and Corresponding Extension of Coding Toolsʺ, IEEE Transaction on Circuits and Systems for Video Technology, vol. 20, no. 12, pp. 1709-1720, Dec. 2010, и показано на фиг. 2. Как показано на фиг. 2, каждый уровень разбиения представляет собой разделение квадродерева на четыре подблока. Черный блок является примером листового узла (т.е. блок, который далее не разделяется).
[0066] В некоторых примерах, CU может иметь одинаковый размер с CTB, хотя CU может иметь размер 8×8. Каждая CU кодируется одним режимом кодирования, который может быть, например, режимом интра-кодирования или режимом интер-кодирования. Также возможны другие режимы кодирования, включая режимы кодирования для экранного контента (например, режимы внутриблочного копирования, режимы кодирования на основе палитры и т.д.). Когда CU является интер-кодированной (т.е. применяется интер-режим), CU может дополнительно разбиваться на единицы предсказания (PU). Например, CU может разбиваться на 2 или 4 PU. В другом примере, вся CU обрабатывается как одна PU, когда дальнейшее разбиение не применяется. В примерах HEVC, когда две PU присутствуют в одной CU, они могут быть прямоугольниками половинного размера или двумя прямоугольниками с размером ¼ или ¾ CU.
[0067] В HEVC существует восемь режимов разбиения для CU, кодируемой в режиме интер-предсказания, то есть PART_2N×2N, PART_2N×N, PART_N×2N, PART_N×N, PART_2N×nU, PART_2N×nD, PART_nL×2N и PART_nR×2N, как показано на фиг. 3. Как показано на фиг. 3, CU, закодированная в режиме разбиения PART_2N×2N, далее не разделяется. То есть, вся CU рассматривается как одна PU (PU0). CU, закодированная в режиме разбиения PART_2N×N, симметрично разделена по горизонтали на две PU (PU0 и PU1). CU, закодированная в режиме разбиения PART_N×2N, симметрично разделена по вертикали на две PU. CU, закодированная в режиме разбиения PART_N×N, симметрично разделена на четыре одинаковых PU PU (PU0, PU1, PU2, PU3).
[0068] CU, закодированная в режиме разбиения PART_2N×nU, асимметрично разделена по горизонтали на одну PU0 (верхнюю PU), имеющую размер ¼ CU, и одну PU1 (нижнюю PU), имеющую размер ¾ CU. CU, закодированная в режиме разбиения PART_2N×nD, асимметрично разделена по горизонтали на одну PU0 (верхнюю PU), имеющую размер ¾ CU, и одну PU1 (нижнюю PU), имеющую размер ¼ CU. CU, закодированная в режиме разбиения PART_nL×2N, асимметрично разделена по вертикали на одну PU0 (левую PU), имеющую размер ¼ CU и одну PU1 (правую PU), имеющую размер ¾ CU. CU, закодированная в режиме разбиения PART_nR×2N, асимметрично разделена по вертикали на одну PU0 (левую PU), имеющую размер ¾ CU и одну PU1 (правую PU), имеющую размер ¼ CU.
[0069] Когда CU является интер-кодированной, один набор информации о движении (например, вектор движения, направление предсказания и опорная картинка) присутствует для каждой PU. Кроме того, каждая PU кодируется в уникальном режиме интер-предсказания для получения набора информации о движении. Однако следует понимать, что даже хотя две PU кодируются уникальным образом, в некоторых случаях они могут иметь одну и ту же информацию о движении.
[0070] В J. An et al., ʺBlock partitioning structure for next generation video codingʺ, International Telecommunication Union, COM16-C966, Sep. 2015 (далее, ʺпредложение VCEG COM16-C966ʺ), были предложены методы разбиения квадродерева/двоичного дерева (QTBT) для будущего стандарта кодирования видео по сравнению с HEVC. Моделирование показало, что предлагаемая структура QTBT более эффективна, чем структура квадродерева в используемом HEVC.
[0071] В предлагаемой структуре QTBT предложения VCEG COM16-C966, CTB сначала разбивается с использованием методов разбиения квадродерева, где разделение квадродерева одного узла может быть выполнено итерацией до тех пор, пока узел не достигнет минимально разрешенного размера листового узла квадродерева. Минимальный разрешенный размер листового узла квадродерева может указываться видеодекодеру значением синтаксического элемента MinQTSize. Если размер листового узла квадродерева не больше максимального разрешенного размера корневого узла двоичного дерева (например, как обозначается синтаксическим элементом MaxBTSize), листовой узел квадродерева может дополнительно разбиваться с использованием разбиения двоичного дерева. Разбиение двоичного дерева одного узла может выполняться итерацией до тех пор, пока узел не достигнет минимально разрешенного размера листового узла двоичного дерева (например, как обозначается синтаксическим элементом MinBTSize) или максимально разрешенной глубины двоичного дерева (например, как обозначается синтаксическим элементом MaxBTDepth). Предложение VCEG COM16-C966 использует термин ʺCUʺ для ссылки на листовые узлы двоичного дерева. В предложении VCEG COM16-C966, CU используются для предсказания (например, интра-предсказания, интер-предсказания и т.д.) и преобразования без дальнейшего разбиения. В общем, согласно методам QTBT, существует два типа разделения для разделения двоичного дерева: симметричное горизонтальное разделение и симметричное вертикальное разделение. В каждом случае, блок разделяется путем деления блока посредине, горизонтально или вертикально.
[0072] В одном примере структуры разбиения QTBT, размер CTU устанавливается как 128×128 (например, блок яркости 128×128 и два соответствующих блока цветности 64×64), MinQTSize устанавливается как 16×16, MaxBTSize устанавливается как 64×64, MinBTSize (как для ширины, так и для высоты) устанавливается как 4, и MaxBTDepth устанавливается как 4. Разбиение квадродерева применяется к CTU сначала для генерации листовых узлов квадродерева. Листовые узлы квадродерева могут иметь размер от 16×16 (т.е. MinQTSize равно 16×16) до 128×128 (т.е. до размера CTU). Согласно одному примеру разбиения QTBT, если листовой узел квадродерева составляет 128×128, листовой узел квадродерева не может далее разбиваться по двоичному дереву, так как размер листового узла квадродерева превышает MaxBTSize (то есть 64×64). В противном случае, листовой узел квадродерева далее разбивается по двоичному дереву. Таким образом, листовой узел квадродерева также является корневым узлом для двоичного дерева и имеет глубину двоичного дерева 0. Глубина двоичного дерева, достигающая MaxBTDepth (например, 4), подразумевает, что дальнейшее разделение отсутствует. Узел двоичного дерева, имеющий ширину, равную MinBTSize (например, 4), подразумевает, что дальнейшее горизонтальное разделение отсутствует. Аналогично, узел двоичного дерева, имеющий высоту, равную MinBTSize, не предполагает дальнейшего вертикального разделения. Листовые узлы двоичного дерева (CU) дополнительно обрабатываются (например, путем выполнения процесса предсказания и процесса преобразования) без дальнейшего разбиения.
[0073] На фиг. 4А показан пример блока 50 (например, CTB), разделенного с использованием методов разбиения QTBT. Как показано на фиг. 4А, с использованием методов разбиения QTBT, каждый из результирующих блоков разделяется симметрично через центр каждого блока. Фиг. 4B иллюстрирует древовидную структуру, соответствующую разбиению блоков согласно фиг. 4В. Сплошные линии на фиг. 4B показывают разделение квадродерева, и пунктирные линии показывают разделение двоичного дерева. В одном примере, в каждом разделяющемся (то есть не-листовом) узле двоичного дерева, синтаксический элемент (например, флаг) сигнализируется, чтобы указывать тип выполняемого разделения (например, горизонтальное или вертикальное), где 0 указывает горизонтальное разделение, а 1 указывает вертикальное разделение. Для разделения квадродерева, нет необходимости указывать тип разделения, так как разделение квадродерева всегда разделяет блок по горизонтали и по вертикали на 4 подблока с равным размером.
[0074] Как показано на фиг. 4B, в узле 70, блок 50 разделен на четыре блока 51, 52, 53 и 54, показанные на фиг. 4A, с использованием разбиения QT. Блок 54 далее не разделяется и, следовательно, является листовым узлом. В узле 72, блок 51 далее разделяется на два блока с использованием разбиения ВТ. Как показано на фиг. 4B, узел 72 маркирован посредством 1, что указывает на вертикальное разделение. Таким образом, разделение в узле 72 приводит к блоку 57 и блоку, включающему в себя блоки 55 и 56. Блоки 55 и 56 созданы путем дальнейшего вертикального разделения в узле 74. В узле 76, блок 52 далее разделяется на два блока 58 и 59 с использованием разбиения ВТ. Как показано на фиг. 4B, узел 76 маркирован посредством 1, что указывает на горизонтальное разделение.
[0075] В узле 78, блок 53 разделяется на 4 блока равного размера с использованием разбиения QT. Блоки 63 и 66 созданы из этого разбиения QT и далее не разделяются. В узле 80, верхний левый блок сначала разделяется с использованием вертикального разделения двоичного дерева, что приводит к блоку 60 и правому вертикальному блоку. Правый вертикальный блок затем разделяется с использованием горизонтального разделения двоичного дерева на блоки 61 и 62. Нижний правый блок, созданный из разделения квадродерева в узле 78, разделяется в узле 84 с использованием горизонтального разделения двоичного дерева на блоки 64 и 65.
[0076] Хотя структура QTBT, описанная выше, показывает лучшую производительность кодирования, чем структура квадродерева, используемая в HEVC, структура QTBT не обладает гибкостью. Например, в структуре QTBT, описанной выше, узел квадродерева может быть далее разделен по двоичному дереву, но узел двоичного дерева не может быть далее разделен по квадродереву. В другом примере, как квадродерево, так и двоичное дерево могут достигать только равномерного разделения (т.е. разделения по центру блока), что неэффективно, когда объект находится в центре блока, который нужно разделить. Следовательно, производительность кодирования QTBT может не соответствовать будущим стандартам кодирования видео.
[0077] Для решения упомянутых выше проблем предлагаются следующие методы. Следующие методы могут применяться индивидуально. В других примерах, любая комбинация методов, описанных ниже, может применяться совместно.
[0078] Для достижения более гибкого разбиения для CTU, предлагается структура CU на основе MTT для замены структур CU на основе QT, BT и/или QTBT. Структура разбиения MTT согласно настоящему раскрытию по-прежнему является рекурсивной древовидной структурой. Однако используются несколько различных структур разбиений (например, три или более). Например, в соответствии с методами МТТ согласно настоящему раскрытию, на каждой глубине древовидной структуры могут использоваться три или более различных структур разбиений. В этом контексте, глубина узла в древовидной структуре может относиться к длине пути (например, к числу разделений) от узла к корню древовидной структуры. Как используется в настоящем раскрытии, структура разбиения может в основном относиться к тому, на сколько разных блоков может быть разделен блок. Например, структура разбиения квадродерева может разделить блок на четыре блока, структура разбиения двоичного дерева может разделить блок на два блока, а структура разбиения троичного дерева может разделить блок на три блока. Структура разбиений может иметь несколько разных типов разбиений, что будет объяснено более подробно ниже. Тип разбиения может дополнительно определять, как разделяется блок, включая симметричное или асимметричное разбиение, равномерное или неравномерное разбиение и/или горизонтальное или вертикальное разбиение.
[0079] В одном примере в соответствии с методами настоящего раскрытия, видеокодер 22 может быть сконфигурирован, чтобы принимать картинку видеоданных и разбивать картинку видеоданных на множество блоков с использованием трех или более различных структур разбиений и кодировать множество блоков картинки видеоданных. Аналогично, видеодекодер 30 может быть сконфигурирован, чтобы принимать битовый поток, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных, определять разбиение кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений и восстанавливать множество блоков кодированной картинки видеоданных. В одном примере, разбиение кадра видеоданных содержит разбиение кадра видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из трех или более различных структур разбиений могут использоваться на каждой глубине древовидной структуры, которая представляет, каким образом осуществлено разбиение кадра видеоданных. В одном примере, три или более различных структур разбиений включают в себя структуру разбиения троичного дерева, и видеокодер 22 и/или видеодекодер 30 могут быть сконфигурированы, чтобы разбивать один из множества блоков видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит один из множества блоков на три подблока без деления одного из множества блоков по центру. В другом примере раскрытия, три или более различных структур разбиений дополнительно включают в себя структуру разбиения квадродерева и структуру разбиения двоичного дерева.
[0080] Таким образом, в одном примере, видеокодер 22 может генерировать кодированное представление исходного видеоблока (например, блока дерева кодирования или CTU) видеоданных. В качестве части генерирования кодированного представления исходного видеоблока, видеокодер 22 определяет древовидную структуру, содержащую множество узлов. Например, видеокодер 22 может разбивать древовидный блок с использованием структуры разбиения МТТ согласно настоящему раскрытию.
[0081] Множество узлов в структуре разбиения МТТ включает в себя множество листовых узлов и множество не-листовых узлов. Листовые узлы не имеют дочерних узлов в древовидной структуре. Не-листовые узлы включают в себя корневой узел древовидной структуры. Корневой узел соответствует исходному видеоблоку. Для каждого соответственного не-корневого узла из множества узлов, соответственный не-корневой узел соответствует видеоблоку (например, блоку кодирования), который является подблоком видеоблока, соответствующего родительскому узлу в древовидной структуре соответствующего не-корневого узла. Каждый соответственный не-листовой узел из множества не-листовых узлов имеет один или более дочерних узлов в древовидной структуре. В некоторых примерах, не-листовой узел на границе картинки может иметь только один дочерний узел из-за вынужденного разделения, и один из дочерних узлов соответствует блоку вне границы картинки.
[0082] В соответствии с методами настоящего раскрытия, для каждого соответственного не-листового узла древовидной структуры на каждом уровне глубины древовидной структуры, существует множество разрешенных шаблонов разделения (например, структуры разбиения) для соответственного не-листового узла. Например, для каждой глубины древовидной структуры может иметься три или более разрешенных структур разбиений. Видеокодер 22 может быть сконфигурирован, чтобы разбивать видеоблок, соответствующий соответственному не-листовому узлу, на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла, в соответствии с одной из множества разрешенных структур разбиений. Каждая соответствующая разрешенная структура разбиения из множества разрешенных структур разбиений может соответствовать отличающемуся способу разбиения видеоблока, соответствующего соответственному не-листовому узлу, на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла. Кроме того, в этом примере, видеокодер 22 может включать в себя кодированное представление исходного видеоблока в битовом потоке, который содержит кодированное представление видеоданных.
[0083] В аналогичном примере, видеодекодер 30 может определять древовидную структуру, содержащую множество узлов. Как и в предыдущем примере, множество узлов включает в себя множество листовых узлов и множество не-листовых узлов. Листовые узлы не имеют дочерних узлов в древовидной структуре. Не-листовые узлы включают в себя корневой узел древовидной структуры. Корневой узел соответствует исходному видеоблоку видеоданных. Для каждого соответственного не-корневого узла из множества узлов, соответственный не-корневой узел соответствует видеоблоку, который является подблоком видеоблока, соответствующего родительскому узлу в древовидной структуре соответственного не-корневого узла. Каждый соответственный не-листовой узел из множества не-листовых узлов имеет один или более дочерних узлов в древовидной структуре. Для каждого соответственного не-листового узла древовидной структуры на каждом уровне глубины древовидной структуры, существует множество разрешенных шаблонов разделения для соответственного не-листового узла, и видео-блок, соответствующий соответственному не-листовому узлу, разбит на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла, в соответствии с одним из множества разрешенных шаблонов разделения. Каждый соответствующий разрешенный шаблон разделения из множества разрешенных шаблонов разделения соответствует отличающемуся способу разбиения видеоблока, соответствующего соответственному не-листовому узлу, на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла. Кроме того, в этом примере для каждого (или по меньшей мере одного) соответственного листового узла древовидной структуры, видеодекодер 30 восстанавливает видео блок, соответствующий соответственному листовому узлу.
[0084] В некоторых таких примерах для каждого соответственного не-листового узла древовидной структуры, отличного от корневого узла, множество разрешенных шаблонов разделения (например, структур разбиений) для соответственного не-листового узла не зависит от структуры разбиения, согласно которой видеоблок, соответствующий родительскому узлу соответственного не-листового узла, разбит на видеоблоки, соответствующие дочерним узлам родительского узла соответственного не-листового узла.
[0085] В других примерах раскрытия, на каждой глубине древовидной структуры, видеокодер 22 может быть сконфигурирован для дальнейшего разделения под-деревьев с использованием конкретного типа разбиения из одной из трех других структур разбиений. Например, видеокодер 22 может быть сконфигурирован для определения конкретного типа разбиения из QT, BT, троичного дерева (TT) и других структур разбиений. В одном примере, структура разбиения QT может включать в себя типы разбиения квадратного квадродерева и прямоугольного квадродерева. Видеокодер 22 может разбивать квадратный блок с использованием разбиения квадратного квадродерева путем деления блока по центру как по горизонтали, так и по вертикали на четыре квадратных блока равного размера. Аналогично, видеокодер 22 может разбивать прямоугольный (например, неквадратный) блок с использованием разбиения прямоугольного квадродерева путем деления прямоугольного блока по центру как по горизонтали, так и по вертикали, на четыре прямоугольных блока равного размера.
[0086] Структура разбиения ВТ может включать в себя типы разбиений горизонтального симметричного двоичного дерева, вертикального симметричного двоичного дерева, горизонтального несимметричного двоичного дерева и вертикального несимметричного двоичного дерева. Для типа разбиения горизонтального симметричного двоичного дерева, видеокодер 22 может быть сконфигурирован, чтобы разделять блок по центру блока по горизонтали на два симметричных блока одинакового размера. Для типа разбиения вертикального симметричного двоичного дерева, видеокодер 22 может быть сконфигурирован, чтобы разделять блок по центру блока вертикально на два симметричных блока одинакового размера. Для типа разбиения горизонтального несимметричного двоичного дерева, видеокодер 22 может быть сконфигурирован, чтобы разделять блок по горизонтали на два блока разного размера. Например, один блок может иметь ¼ размера родительского блока, а другой блок может иметь ¾ размера родительских блоков, как в типе разбиения PART_2N×nU или PART_2N×nD на фиг. 3. Для типа разбиения вертикального несимметричного двоичного дерева, видеокодер 22 может быть сконфигурирован, чтобы разделять блок по вертикали на два блока разного размера. Например, один блок может иметь ¼ размера родительского блока, а другой блок может иметь ¾ размера родительских блоков, как в типе разбиения PART_nL×2N или PART_nR×2N на фиг. 3.
[0087] В других примерах, тип разбиения асимметричного двоичного дерева может делить родительский блок на фракции разного размера. Например, один подблок может составлять 3/8 родительского блока, а другой подблок может составлять 5/8 родительского блока. Конечно, такой тип разбиения может быть как вертикальным, так и горизонтальным.
[0088] Структура разбиения TT отличается от структур QT или BT тем, что структура разбиения TT не разбивает блок по центру. Центральная область блока остается в том же подблоке. В отличие от QT, которое генерирует четыре блока, или двоичного дерева, которое генерирует два блока, разделение в соответствии со структурой разбиения TT создает три блока. Примерные типы разбиения в соответствии со структурой разбиения TT включают в себя симметричные типы разбиения (как горизонтальные, так и вертикальные), а также асимметричные типы разбиения (как горизонтальные, так и вертикальные). Кроме того, симметричные типы разбиения в соответствии со структурой разбиения TT могут быть неравными/неравномерными или равными/равномерными. Асимметричные типы разбиения в соответствии со структурой разбиения TT согласно настоящему раскрытию являются неравными/неравномерными. В одном примере раскрытия, структура разбиения TT может включать в себя следующие типы разбиений: горизонтального равного/равномерного симметричного троичного дерева, вертикального равного/равномерного симметричного троичного дерева, горизонтального неравного/неравномерного симметричного троичного дерева, вертикального неравного/неравномерного симметричного троичного дерева, горизонтального неравного/неравномерного асимметричного троичного дерева и вертикального неравного/неравномерного асимметричного троичного дерева.
[0089] В общем случае, тип неравного/неравномерного симметричного разбиения троичного дерева является типом разбиения, который является симметричным относительно центральной линии блока, но по меньшей мере один из результирующих трех блоков имеет не тот же размер, что два других. Одним предпочтительным примером является то, когда боковые блоки имеет ¼ размера блока, а центральный блок имеет ½ размера блока. Тип равного/равномерного симметричного разбиения троичного дерева является типом разбиения, который является симметричным относительно центральной линии блока, и результирующие блоки имеют одинаковый размер. Такое разбиение возможно, если высота или ширина блока в зависимости от вертикального или горизонтального разделения кратна 3. Тип неравного/неравномерного асимметричного разбиения троичного дерева является типом разбиения, который является несимметричным относительно центральной линии блока, и по меньшей мере один из результирующих блоков имеет не тот же размер, что два других.
[0090] Фиг. 5A представляет концептуальную диаграмму, иллюстрирующую примерные типы горизонтального разбиения троичного дерева. Фиг. 5B представляет концептуальную диаграмму, иллюстрирующую примерные типы вертикального разбиения троичного дерева. Как на фиг. 5А, так и на фиг. 5В, h представляет высоту блока в выборках яркости или цветности, а w представляет ширину блока в выборках яркости или цветности. Отметим, что соответствующие ʺцентральные линииʺ в каждом из разбиений троичного дерева на фиг. 5А и 5В не представляют границы блока (т.е. разбиения троичного дерева не разделяют блок по центральной линии). Скорее, центральные линии показаны, чтобы изображать, является ли конкретный тип разбиения симметричным или асимметричным относительно центральной линии исходного блока. Изображенные центральные линии также расположены вдоль направления разделения.
[0091] Как показано на фиг. 5А, блок 71 разделен согласно горизонтальному равному/равномерному симметричному типу разбиения. Горизонтальный равный/равномерный симметричный тип разбиения создает симметричную верхнюю и нижнюю половины относительно центральной линии блока 71. Горизонтальный равный/равномерный симметричный тип разбиения создает три подблока одинакового размера, каждый с высотой h/3 и шириной w. Горизонтальный равный/равномерный симметричный тип разбиения возможен, когда высота блока 71 ровно делится на 3.
[0092] Блок 73 разделен с использованием горизонтального неравного/неравномерного симметричного типа разбиения. Горизонтальный неравный/неравномерный симметричный тип разбиения создает симметричную верхнюю и нижнюю половины относительно центральной линии блока 73. Горизонтальный неравный/неравномерный симметричный тип разбиения создает два блока одинакового размера (например, верхний и нижний блоки с высотой h/4) и центральный блок другого размера (например, центральный блок с высотой h/2). В одном примере раскрытия, в соответствии с горизонтальным неравным/неравномерным симметричным типом разбиения, площадь центрального блока равна объединенным площадям верхнего и нижнего блоков. В некоторых примерах, горизонтальный неравный/неравномерный симметричный тип разбиения может быть предпочтительным для блоков с высотой, которая равна степени 2 (например, 2, 4, 8, 16, 32 и т.д.).
[0093] Блок 75 разделен с использованием горизонтального неравного/неравномерного асимметричного типа разбиения. Горизонтальный неравный/неравномерный асимметричный тип разбиения не создает симметричную верхнюю и нижнюю половину относительно центральной линии блока 75 (т.е. верхняя и нижняя половины асимметричны). В примере на фиг. 5A, горизонтальный неравный/неравномерный асимметричный тип разбиения создает верхний блок с высотой h/4, центральный блок с высотой 3h/8 и нижний блок с высотой 3h/8. Конечно, могут использоваться и другие асимметричные компоновки.
[0094] Как показано на фиг. 5B, блок 77 разделен с использованием вертикального равного/равномерного симметричного типа разбиения. Вертикальный равный/равномерный симметричный тип разбиения создает симметричную левую и правую половины по отношению к центральной линии блока 77. Вертикальный равный/равномерный симметричный тип разбиения создает три подблока одинакового размера, каждый с шириной w/3 и высотой h. Вертикальный равный/равномерный симметричный тип разбиения возможен, когда ширина блока 77 ровно делится на 3.
[0095] Блок 79 разделен с использованием вертикального неравного/неравномерного симметричного типа разбиения. Вертикальный неравный/неравномерный симметричный тип разбиения создает симметричные левую и правую половины относительно центральной линии блока 79. Вертикальный неравный/неравномерный симметричный тип разбиения создает симметричные левую и правую половины относительно центральной линии 79. Вертикальный неравный/неравномерный симметричный тип разбиения создает два блока одинакового размера (например, левый и правый блоки с шириной w/4) и центральный блок другого размера (например, центральный блок с шириной w/2). В одном примере раскрытия, в соответствии с вертикальным неравным/неравномерным симметричным типом разделения, площадь центрального блока равна объединенным площадям левого и правого блоков. В некоторых примерах, вертикальный неравный/неравномерный симметричный тип разбиения может быть предпочтительным для блоков с шириной, которая равна степени 2 (например, 2, 4, 8, 16, 32 и т.д.).
[0096] Блок 81 разделен с использованием вертикального неравного/неравномерного асимметричного типа разбиения. Вертикальный неравный/неравномерный асимметричный тип разбиения не создает симметричную левую и правую половину относительно центральной линии блока 81 (т.е. левая и правая половины асимметричны). В примере на фиг. 5В, вертикальный неравный/неравномерный асимметричный тип разбиения создает левый блок с шириной w/4, центральный блок с шириной 3w/8 и нижний блок с шириной 3w/8. Конечно, могут использоваться и другие асимметричные компоновки.
[0097] В примерах, где блок (например, в узле поддерева) разделен согласно несимметричному типу разбиения троичного дерева, видеокодер 22 и/или видеодекодер 30 могут применять ограничение, так что два из трех разбиений имеют одинаковый размер. Такое ограничение может соответствовать ограничению, которое должен соблюдать видеокодер 22 при кодировании видеоданных. Кроме того, в некоторых примерах, видеокодер 22 и видеодекодер 30 могут применять ограничение, при котором сумма площади двух разбиений равна площади оставшегося разбиения при разделении в соответствии с несимметричным типом разбиения троичного дерева. Например, видеокодер 22 может генерировать или видеодекодер 30 может принимать закодированное представление исходного видеоблока, которое соответствует ограничению, указывающему, что когда видеоблок, соответствующий узлу древовидной структуры, разделяется в соответствии с несимметричным шаблоном троичного дерева, узел имеет первый дочерний узел, второй дочерний узел и третий дочерний узел, второй дочерний узел соответствует видеоблоку между видеоблоками, соответствующими первому и третьему дочерним узлам, видеоблоки, соответствующие первому и третьему дочерним узлам, имеют одинаковый размер, а сумма размеров видеоблоков, соответствующих первому и третьему дочерним узлам, равна размеру видеоблока, соответствующего второму дочернему узлу.
[0098] В некоторых примерах раскрытия, видеокодер 22 может быть сконфигурирован для выбора среди всех из вышеупомянутых типов разбиений для каждой из структур разбиений QT, BT и TT. В других примерах, видеокодер 22 может быть сконфигурирован, чтобы определять тип разбиения только из поднабора вышеупомянутых типов разбиений. Например, поднабор вышеупомянутых типов разбиений (или других типов разбиений) может использоваться для определенных размеров блоков или для определенных глубин структуры квадродерева. Поднабор поддерживаемых типов разбиений может сигнализироваться в битовом потоке для использования видеодекодером 30 или может быть предварительно определен, так что видеокодер 22 и видеодекодер 30 могут определять поднаборы без какой-либо сигнализации.
[0099] В других примерах, число поддерживаемых типов разбиения может быть фиксировано для всех глубин во всех CTU. То есть, видеокодер 22 и видеодекодер 30 могут быть предварительно сконфигурированы для использования того же количества типов разбиений для любой глубины CTU. В других примерах, число поддерживаемых типов разбиения может варьироваться и может зависеть от глубины, типа вырезки или другой ранее кодированной информации. В одном примере, на глубине 0 или глубине 1 древовидной структуры используется только структура разбиения QT. На глубинах, превышающих 1, может использоваться каждая из структур разбиений QT, BT и TT.
[0100] В некоторых примерах, видеокодер 22 и/или видеодекодер 30 могут применять предварительно сконфигурированные ограничения на поддерживаемые типы разбиения, чтобы избежать дублирования разбиения для определенной области видео картинки или области CTU. В одном примере, когда блок разделен с использованием несимметричного типа разбиения, видеокодер 22 и/или видеодекодер 30 могут быть сконфигурированы, чтобы далее не разделять наибольший подблок, который был разделен из текущего блока. Например, когда квадратный блок разделяется в соответствии с несимметричным типом разбиения (например, типом разбиения PART_2N×nU на фиг. 3), наибольший подблок среди всех подблоков (например, PU1 типа разбиения PART_2N×nU на фиг. 3) является отмеченным листовым узлом и не может быть далее разделен. Однако меньший подблок (например, PU0 типа разбиения PART_2N×nU на фиг. 3) может быть далее разделен.
[0101] В качестве другого примера, где ограничения на поддерживаемые типы разбиения могут применяться для предотвращения дублированного разбиения для определенной области, когда блок разделяется с несимметричным типом разбиения, наибольший подблок, который разделен из текущего блока, не может далее разделяться в том же самом направлении. Например, когда квадратный блок разделен несимметричным типом разбиения (например, типом разбиения PART_2N×nU на фиг. 3), видеокодер 22 и/или видеодекодер 30 могут быть сконфигурированы так, чтобы не разбивать большой подблок среди всех подблоков (например, PU1 типа разбиения PART_2N×nU на фиг. 3) в горизонтальном направлении. Однако видеокодер 22 и/или видеодекодер 30 в этом примере могут снова разделить PU1 в вертикальном направлении.
[0102] В качестве еще одного примера, где ограничения на поддерживаемые типы разбиения могут применяться для того, чтобы избежать трудностей при дальнейшем разделении, видеокодер 22 и/или видеодекодер 30 могут быть сконфигурированы так, чтобы не разделять блок горизонтально или вертикально, когда ширина/высота блока не является степенью 2 (например, когда высота/ширина не равна 2, 4, 8, 16 и т.д.).
[0103] Вышеприведенные примеры описывают, как видеокодер 22 может быть сконфигурирован для выполнения разбиения МТТ согласно методам настоящего раскрытия. Видеодекодер 30 также может тогда применять одно и то же разбиение МТТ, как это было выполнено видеокодером 22. В некоторых примерах, то, каким образом картинка видеоданных была разделена видеокодером 22, может быть определено путем применения того же набора предопределенных правил в видеодекодере 30. Однако, во многих ситуациях, видеокодер 22 может определять конкретную структуру разбиения и тип разбиения для использования на основе критериев скорости-искажения для конкретной картинки кодируемых видеоданных. Таким образом, чтобы видеодекодер 30 определял разбиение для конкретной картинки, видеокодер 22 может сигнализировать синтаксические элементы в закодированном битовом потоке, которые указывают, каким образом должны разбиваться картинка и CTU картинки. Видеодекодер 30 может синтаксически анализировать такие синтаксические элементы и разбивать картинку и CTU соответствующим образом.
[0104] В одном примере раскрытия, видеокодер 22 может быть сконфигурирован, чтобы сигнализировать конкретный поднабор поддерживаемых типов разбиений как синтаксический элемент высокого уровня в наборе параметров последовательности (SPS), наборе параметров картинки (PPS), заголовке вырезки, наборе адаптивных параметров (APS) или любом другом наборе параметров синтаксиса высокого уровня. Например, максимальное количество типов разбиений и то, какие типы поддерживаются, может предварительно определяться или сигнализироваться в битовом потоке как синтаксический элемент высокого уровня в наборе параметров последовательности (SPS), наборе параметров картинки (PPS) или любых других наборах параметров синтаксиса высокого уровня. Видеодекодер 30 может быть сконфигурирован для приема и анализа такого синтаксического элемента для определения конкретного поднабора типов разбиений, которые используются, и/или максимального количества структур разбиений (например, QT, BT, TT и т.д.) и типов, которые поддерживается.
[0105] В некоторых примерах, на каждой глубине, видеокодер 22 может быть сконфигурирован, чтобы сигнализировать индекс, который указывает выбранный тип разбиения, используемый на этой глубине древовидной структуры. Кроме того, в некоторых примерах, видеокодер 22 может адаптивно сигнализировать такой индекс типа разбиения в каждой CU, то есть индекс может отличаться для разных CU. Например, видеокодер 22 может устанавливать индекс типа разбиения на основе одного или более вычислений скорости-искажения. В одном примере, сигнализация типа разбиения (например, индекс типа разбиения) может пропускаться, если выполняется определенное условие. Например, видеокодер 22 может пропускать сигнализацию типа разбиения, когда имеется только один поддерживаемый тип разбиения, связанный с определенной глубиной. В этом примере, при приближении к границе картинки, область, подлежащая кодированию, может быть меньше, чем CTU. Следовательно, в этом примере, CTU могут быть вынуждены разделяться, чтобы подгоняться к границе картинки. В одном примере, для вынужденного разделения используется только симметричное двоичное дерево, и тип разбиения не сигнализируется. В некоторых примерах, на определенной глубине, тип разбиения может быть получен на основе ранее закодированной информации, такой как тип вырезки, глубина CTU, позиция CU.
[0106] В другом примере раскрытия, для каждой CU (листового узла) видеокодер 22 может быть дополнительно сконфигурирован для сигнализации синтаксического элемента (например, однобитовый флаг transform_split (разделение преобразования)), чтобы указывать, должно ли быть выполнено преобразование на том же размере CU или нет (т.е. флаг указывает, имеет ли TU тот же размер, что и CU, или далее разделяется). В случае если флаг разделения преобразования сигнализирован как истинный, видеокодер 22 может быть сконфигурирован для дальнейшего разделения остатка CU на несколько подблоков, и преобразование выполняется на каждом подблоке. Видеодекодер 30 может выполнять обратный процесс.
[0107] В одном примере, когда флаг разделения преобразования сигнализируется как истинный, выполняется следующее. Если CU соответствует квадратному блоку (т.е. CU является квадратной), то видеокодер 22 разделяет остаток на четыре квадратных подблока с использованием разделения квадродерева, и преобразование выполняется на каждом квадратном подблоке. Если CU соответствует неквадратному блоку, например M×N, то видеокодер 22 разделяет остаток на два подблока, и размер подблока составляет 0,5M×N при M>N и M×0,5N, при M<N. В качестве другого примера, когда флаг разделения преобразования сигнализируется как истинный, и CU соответствует неквадратному блоку, например M×N (то есть CU не является квадратной), видеокодер 22 может быть сконфигурирован для разделения остатка на подблоки с размером K×K, и квадратное преобразование K×K используется для каждого подблока, где K равно максимальному коэффициенту из M и N. В качестве другого примера, флаг разделения преобразования не сигнализируется, когда CU представляет собой квадратный блок.
[0108] В некоторых примерах, никакой флаг разделения не сигнализируется, и только преобразование с одним производным размером используется, когда в CU есть остаток после предсказания. Например, для CU с размером, равным M×N, используется квадратное преобразование K×K, где K равно максимальному коэффициенту из M и N. Таким образом, в этом примере для CU с размером 16×8, то же самое преобразование 8×8 может применяется к двум подблокам 8×8 остаточных данных CU. ʺФлаг разделенияʺ является синтаксическим элементом, указывающим, что узел в древовидной структуре имеет дочерние узлы в древовидной структуре.
[0109] В некоторых примерах, для каждой CU, если CU не разделяется на квадратное квадродерево или симметричное двоичное дерево, видеокодер 22 сконфигурирован так, чтобы всегда устанавливать размер преобразования, равный размеру разбиения (например, размеру CU).
[0110] Результаты моделирования показали, что по сравнению с эталонным программным обеспечением JEM-3.1, производительность кодирования с использованием методов МТТ согласно настоящему раскрытию, в случае произвольного доступа, показала улучшение. В среднем, моделирование показало, что методы МТТ согласно настоящему раскрытию обеспечили уменьшение на 3,8% показателя битрейта-искажения (BD) при лишь умеренном увеличении времени кодирования. Моделирование показало, что методы МТТ согласно настоящему раскрытию обеспечивают хорошую производительность для более высоких разрешений, например, уменьшение на 4,20% и 4,89% показателя BD яркости для тестирования класса A1 и класса A2. Класс Al и класс A2 являются примерами тестовых последовательностей с разрешением 4K.
[0111] Следует понимать, что для каждого из вышеприведенных примеров, описанных со ссылкой на видеокодер 22, видеодекодер 30 может быть сконфигурирован, чтобы выполнять обратный процесс. Что касается синтаксических элементов сигнализации, видеодекодер 30 может быть сконфигурирован, чтобы принимать и анализировать такой синтаксический элемент и выполнять разбиение и декодирование ассоциированных видеоданных соответствующим образом.
[0112] В одном конкретном примере раскрытия, видеодекодер может быть сконфигурирован для разбиения видеоблоков в соответствии с тремя различными структурами разбиения (QT, BT и TT) с пятью различными типами разбиения, разрешенными на каждой глубине. Типы разбиения включают в себя разбиение квадродерева (структура разбиения QT), горизонтальное разбиение двоичного дерева (структура разбиения BT), вертикальное разбиение двоичного дерева (структура разбиения BT), горизонтальное центрально-боковое разбиение троичного дерева (структура разбиения TT) и вертикальное центрально-боковое разбиение троичного дерева (структура разбиения TT), как показано на фиг. 5A-5E.
[0113] Определения пяти типов разбиения состоят в следующем. Отметим, что квадрат рассматривается как частный случай прямоугольника.
- Разбиение квадродерева: блок разделяется далее на четыре прямоугольных блока одного размера. На фиг. 6А показан пример разбиения квадродерева.
- Вертикальное разбиение двоичного дерева: блок вертикально разделен на два прямоугольных блока одинакового размера. Фиг. 6B является примером вертикального разбиения двоичного дерева.
- Горизонтальное разбиение двоичного дерева: блок горизонтально разделен на два прямоугольных блока одинакового размера. Фиг. 6C является примером горизонтального разбиения двоичного дерева.
- Вертикальное центрально-боковое разбиение троичного дерева: блок вертикально разделен на три прямоугольных блока, так что два боковых блока имеют одинаковый размер, а размер центрального блока равен сумме двух боковых блоков. Фиг. 6D является примером вертикального центрально-бокового разбиения троичного дерева.
- Горизонтальное центрально-боковое разбиение троичного дерева: блок горизонтально разделен на три прямоугольных блока, так что два боковых блока имеют одинаковый размер, а размер центрального блока равен сумме двух боковых блоков. Фиг. 6E является примером горизонтального центрально-бокового разбиения троичного дерева.
[0114] Для блока, ассоциированного с определенной глубиной, видеокодер 22 определяет, какой тип разбиения (в том числе без дальнейшего разделения) используется, и сигнализирует определенный тип разбиения явно или неявно (например, тип разбиения может быть получен из предопределенных правил) видеодекодеру 30. Видеокодер 22 может определять тип разбиения для использования на основе проверки стоимости критерия скорости-искажения для блока с использованием разных типов разбиений. Чтобы получить стоимость скорости-искажения, видеокодеру 22 может потребоваться рекурсивно проверять возможные типы разбиения для блока.
[0115] Фиг. 7 представляет концептуальную диаграмму, иллюстрирующую пример разбиения единицы дерева кодирования (CTU). Другими словами, фиг. 7 иллюстрирует разбиение CTB 91 соответствующей CTU. В примере на фиг. 7:
- На глубине 0, CTB 91 (т.е. весь CTB) разделяется на два блока с горизонтальным разбиением двоичного дерева (как указано линией 93 со штрихами, разделенными одиночными точками).
- На глубине 1:
- Верхний блок разделен на три блока с вертикальным центрально-боковым разбиением троичного дерева (как показано линиями 95 и 86 с короткими штрихами).
- Нижний блок разделен на четыре блока с разбиением квадродерева (как показано линиями 88 и 90 со штрихами, разделенными двумя точками).
- На глубине 2:
- Левый боковой блок верхнего блока на глубине 1 разделен на три блока с горизонтальным центрально-боковым разбиением троичного дерева (как показано линиями 92 и 94 с длинными штрихами, разделенными короткими штрихами).
- Дальнейшее разделение для центрального и правого блоков верхнего блока на глубине 1 отсутствует.
- Дальнейшее разделение для четырех блоков нижнего блока на глубине 1 отсутствует.
[0116] Как можно видеть в примере на фиг. 7, используются три различные структуры разбиений (BT, QT и TT) с четырьмя различными типами разбиений (горизонтальное разбиение двоичного дерева, вертикальное центрально-боковое разбиение троичного дерева, разбиение квадродерева и горизонтальное центрально-боковое разбиение троичного дерева).
[0117] В другом примере, дополнительные ограничения могут применяться для блока на определенной глубине или с определенным размером. Например, если высота/ширина блока меньше 16 пикселов, блок нельзя разделить с вертикальным/горизонтальным центрально-боковым разбиением дерева, чтобы избежать блока с высотой/шириной меньше 4 пикселов.
[0118] Были описаны различные примеры. Конкретные примеры настоящего раскрытия могут использоваться отдельно или в сочетании друг с другом.
[0119] Фиг. 8 является блок-схемой, иллюстрирующей примерный видеокодер 22, который может реализовывать методы настоящего раскрытия. Фиг. 8 приведена в целях пояснения и не должна рассматриваться как ограничение методов, которые широко проиллюстрированы и описаны в настоящем раскрытии. Методы настоящего раскрытия могут быть применимы к различным стандартам или способам кодирования.
[0120] В примере на фиг. 8, видеокодер 22 включает в себя модуль 100 обработки предсказания, память 101 видеоданных, модуль 102 генерации остатка, модуль 104 обработки преобразования, модуль 106 квантования, модуль 108 обратного квантования, модуль 110 обработки обратного преобразования, модуль 112 восстановления, модуль 114 фильтрации, буфер 116 декодированных картинок и модуль 118 энтропийного кодирования. Модуль 100 обработки предсказания включает в себя модуль 120 обработки интер-предсказания и модуль 126 обработки интра-предсказания. Модуль 120 обработки интер-предсказания может включать в себя модуль оценки движения и модуль компенсации движения (не показаны).
[0121] Память 101 видеоданных может быть сконфигурирована для хранения видеоданных, подлежащих кодированию компонентами видеокодера 22. Видеоданные, сохраненные в памяти 101 видеоданных, могут быть получены, например, из источника 18 видео. Буфер 116 декодированных картинок может представлять собой память опорных картинок, которая хранит опорные видеоданные для использования при кодировании видеоданных с помощью видеокодера 22, например, в режимах интра- или интер-кодирования. Память 101 видеоданных и буфер 116 декодированных картинок могут быть сформированы с помощью любого из множества устройств памяти, таких как динамическая память с произвольным доступом (DRAM), включая синхронную DRAM (SDRAM), магниторезистивную RAM (MRAM), резистивную RAM (RRAM) или другие типы устройств памяти. Память 101 видеоданных и буфер 116 декодированных картинок могут быть обеспечены одним и тем же устройством памяти или отдельными устройствами памяти. В различных примерах, память 101 видеоданных может быть интегрирована в чип с другими компонентами видеокодера 22 или находиться вне чипа относительно этих компонентов. Память 101 видеоданных может быть представлена носителем хранения 20 данных согласно фиг. 1 или его частью.
[0122] Видеокодер 22 принимает видеоданные. Видеокодер 22 может кодировать каждую CTU в вырезке картинки видеоданных. Каждая из CTU может быть ассоциирована с блоками дерева кодирования (CTB) яркости одинакового размера и соответствующими CTB картинки. В рамках кодирования CTU, модуль 100 обработки предсказания может выполнять разбиение для разделения CTB из CTU на все меньшие блоки. Меньшие блоки могут представлять блоки кодирования в CU. Например, блок 100 обработки предсказания может разбивать CTB, ассоциированный с CTU, в соответствии с древовидной структурой. В соответствии с одним или более методами настоящего раскрытия, для каждого соответственного не-листового узла древовидной структуры на каждом уровне глубины древовидной структуры, существует множество разрешенных шаблонов разделения для соответственного не-листового узла, и видеоблок, соответствующий соответственному не-листовому узлу, разбивается на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла, в соответствии с одним из множества разрешенных шаблонов разделения. В одном примере, блок 100 обработки предсказания или другой блок обработки видеокодера 22 может быть сконфигурирован для выполнения любой комбинации методов разбиения МТТ, описанных выше.
[0123] Видеокодер 22 может кодировать CU из CTU для генерации закодированных представлений CU (т.е. кодированных CU). В рамках кодирования CU, модуль 100 обработки предсказания может разбивать блоки кодирования, ассоциированные с CU, среди одной или более PU из CU. В соответствии с методами настоящего раскрытия, CU может включать в себя только одну PU. То есть, в некоторых примерах настоящего раскрытия, CU не разделяется на отдельные блоки предсказания, а скорее выполняется процесс предсказания для всей CU. Таким образом, каждая CU может быть ассоциирована с блоком предсказания яркости и соответствующими блоками предсказания цветности. Видеокодер 22 и видеодекодер 30 могут поддерживать CU, имеющие различные размеры. Как указано выше, размер CU может относиться к размеру блока кодирования яркости CU, таким образом, размеру блока предсказания яркости. Как обсуждалось выше, видеокодер 22 и видеодекодер 30 могут поддерживать размеры CU, определенные любой комбинацией описанных выше типов разбиения МТТ.
[0124] Модуль 120 обработки интер-предсказания может генерировать данные предсказания для PU, выполняя интер-предсказание на каждой PU из CU. Как объяснено выше, в некоторых примерах MTT настоящего раскрытия, CU может содержать только одну PU, то есть CU и PU могут быть синонимами. Данные предсказания для PU могут включать в себя блоки предсказания PU и информацию о движении для PU. Модуль 120 обработки интер-предсказания может выполнять различные операции для PU из CU в зависимости от того, находится ли PU в I-вырезке, Р-вырезке или В-вырезке. В I-вырезке, все PU являются интра-предсказываемыми. Следовательно, если PU находится в I-вырезке, модуль 120 обработки интер-предсказания не выполняет интер-предсказание на PU. Таким образом, для блоков, закодированных в I-режиме, предсказанный (предиктивный) блок формируется с использованием пространственного предсказания из ранее кодированных соседних блоков внутри той же самой картинки (кадра). Если PU находится в Р-вырезке, модуль 120 обработки интер-предсказания может использовать однонаправленное интер-предсказание для генерации блока предсказания PU. Если PU находится в В-вырезке, модуль 120 обработки интер-предсказания может использовать однонаправленное или двунаправленное интер-предсказание для генерации блока предсказания PU.
[0125] Модуль 126 обработки интра-предсказания может генерировать данные предсказания для PU посредством выполнения интра-предсказания на PU. Данные предсказания для PU могут включать в себя блоки предсказания для PU и различные синтаксические элементы. Модуль 126 обработки интра-предсказания может выполнять интра-предсказание на PU в I-вырезках, P-вырезках и B-вырезках.
[0126] Для выполнения интра-предсказания на PU, модуль 126 обработки интра-предсказания может использовать несколько режимов интра-предсказания для генерации множества наборов данных предсказания для PU. Модуль 126 обработки интра-предсказания может использовать выборки из блоков выборок соседних PU для генерации блока предсказания для PU. Соседние PU могут быть выше, выше и справа, выше и слева или слева от PU, предполагая порядок кодирования слева направо, сверху-вниз для PU, CU и CTU. Модуль 126 обработки интра-предсказания может использовать различное количество режимов интра-предсказания, например, 33 режима направленного интра-предсказания. В некоторых примерах, количество режимов интра-предсказания может зависеть от размера области, ассоциированной с PU.
[0127] Модуль 100 обработки предсказания может выбирать данные предсказания для PU из CU среди данных предсказания, генерируемых модулем 120 обработки интер-предсказания для PU, или данных предсказания, генерируемых модулем 126 обработки интра-предсказания для PU. В некоторых примерах, модуль 100 обработки предсказания выбирает данные предсказания для PU из CU на основе показателей скорости/искажения наборов данных предсказания. Блоки предсказания выбранных данных предсказания могут упоминаться здесь как выбранные блоки предсказания.
[0128] Модуль 102 генерации остатка может генерировать, на основе блоков кодирования (например, блоков кодирования яркости, Cb и Cr) для CU и выбранных блоков предсказания (например, блоков предсказания яркости, Cb и Cr) для PU из CU, остаточные блоки (например, остаточные блоки яркости, Cb и Cr) для CU. К примеру, модуль 102 генерации остатка может генерировать остаточные блоки CU таким образом, что каждая выборка в остаточных блоках имеет значение, равное разности между выборкой в блоке кодирования CU и соответствующей выборкой в соответствующем выбранном блоке предсказания PU из CU.
[0129] Модуль 104 обработки преобразования может выполнять разбиение квадродерева для разбиения остаточных блоков, ассоциированных с CU, на блоки преобразования, ассоциированные с TU из CU. Таким образом, TU может быть ассоциирована с блоком преобразования яркости и двумя блоками преобразования цветности. Размеры и позиции блоков преобразования яркости и цветности TU из CU могут быть или не быть основаны на размерах и позициях блоков предсказания PU из CU. Структура квадродерева, известная как ʺостаточное квадродеревоʺ (RQT), может включать в себя узлы, ассоциированные с каждой из областей. TU из CU могут соответствовать листовым узлам RQT. В других примерах, модуль 104 обработки преобразования может быть сконфигурирован для разбиения TU в соответствии с методами МТТ, описанными выше. Например, видеокодер 22 может далее не делить CU на TU с использованием структуры RQT. Таким образом, в одном примере, CU включает в себя одну TU.
[0130] Модуль 104 обработки преобразования может генерировать блоки коэффициентов преобразования для каждой TU из CU путем применения одного или более преобразований к блокам преобразования TU. Модуль 104 обработки преобразования может применять различные преобразования к блоку преобразования, ассоциированному с TU. Например, модуль 104 обработки преобразования может применять дискретное косинусное преобразование (DCT), направленное преобразование или концептуально подобное преобразование к блоку преобразования. В некоторых примерах, модуль 104 обработки преобразования не применяет преобразований к блоку преобразования. В таких примерах, блок преобразования может рассматриваться как блок коэффициентов преобразования.
[0131] Модуль 106 квантования может квантовать коэффициенты преобразования в блоке коэффициентов. Процесс квантования может уменьшить битовую глубину, ассоциированную с некоторыми или всеми из коэффициентов преобразования. Например, n-битовый коэффициент преобразования может быть округлен до m-битового коэффициента преобразования во время квантования, где n больше, чем m. Модуль 106 квантования может квантовать блок коэффициентов, ассоциированный с TU из CU, на основе значения параметра квантования (QP), ассоциированного с CU. Видеокодер 20 может корректировать степень квантования, применяемую к блокам коэффициентов, ассоциированным с CU, путем коррекции значения QP, ассоциированного с CU. Квантование может вносить потерю информации. Таким образом, квантованные коэффициенты преобразования могут иметь меньшую точность, чем исходные.
[0132] Модуль 108 обратного квантования и модуль 110 обработки обратного преобразования могут применять обратное квантование и обратные преобразования к блоку коэффициентов, соответственно, для восстановления остаточного блока из блока коэффициентов. Модуль 112 восстановления может добавить восстановленный остаточный блок к соответствующим выборкам из одного или более блоков выборок предсказания, сгенерированных модулем 100 обработки предсказания, для создания восстановленного блока преобразования, ассоциированного с TU. Таким образом, путем восстановления блоков преобразования для каждой TU из CU, видеокодер 20 может восстанавливать блоки кодирования CU.
[0133] Модуль 114 фильтрации может выполнять одну или более операций устранения блочности для уменьшения артефактов блочности в блоках кодирования, ассоциированных с CU. Буфер 116 декодированных картинок может сохранять восстановленные блоки кодирования после того, как модуль 114 фильтрации выполняет одну или более операций устранения блочности на восстановленных блоках кодирования. Модуль 120 обработки интер-предсказания может использовать опорную картинку, которая содержит восстановленные блоки кодирования для выполнения интер-предсказания на PU других картинок. Кроме того, модуль 126 обработки интра-предсказания может использовать восстановленные блоки кодирования в буфере 116 декодированных картинок для выполнения интра-предсказания на других PU в той же картинке, что и CU.
[0134] Модуль 118 энтропийного кодирования может принимать данные от других функциональных компонентов видеокодера 20. Например, модуль 118 энтропийного кодирования может принимать блоки коэффициентов из модуля 106 квантования и может принимать синтаксические элементы из модуля 100 обработки предсказания. Модуль 118 энтропийного кодирования может выполнять одну или более операций энтропийного кодирования на данных для генерации энтропийно закодированных данных. Например, модуль 118 энтропийного кодирования может выполнять операцию CABAC, операцию контекстно-адаптивного кодирования переменной длины (CAVLC), операцию кодирования от переменной к переменной (V2V) длины, операцию контекстно-адаптивного двоичного арифметического кодирования на основе синтаксиса (SBAC), операцию энтропийного кодирования с разбиением на интервалы вероятностей (PIPE), операцию кодирования на основе экспоненциального кода Голомба (Golomb) или другой тип операции энтропийного кодирования данных. Видеокодер 22 может выводить битовый поток, который включает в себя энтропийно закодированные данные, генерируемые модулем 118 энтропийного кодирования. Например, битовый поток может включать в себя данные, которые представляют структуру разбиения для CU в соответствии с методами настоящего раскрытия.
[0135] Фиг. 9 является блок-схемой, иллюстрирующей примерный видеодекодер 30, который сконфигурирован для реализации методов настоящего раскрытия. Фиг. 9 приведена в целях пояснений и не ограничивает методы, как широко проиллюстрировано и описано в настоящем раскрытии. В целях пояснения, настоящее раскрытие описывает видеодекодер 30 в контексте кодирования HEVC. Однако методы настоящего раскрытия могут применяться к другим стандартам или способам кодирования.
[0136] В примере на фиг. 9, видеодекодер 30 включает в себя модуль 150 энтропийного декодирования, память 151 видеоданных, модуль 152 обработки предсказания, модуль 154 обратного квантования, модуль 156 обработки обратного преобразования, модуль 158 восстановления, модуль 160 фильтрации и буфер 162 декодированных картинок. Модуль 152 обработки предсказания включает в себя модуль 164 компенсации движения и модуль 166 обработки интра-предсказания. В других примерах, видеодекодер 30 может включать в себя больше или меньше функциональных компонентов или другие функциональные компоненты.
[0137] Память 151 видеоданных может хранить видеоданные, такие как битовый поток закодированного видео, подлежащий декодированию компонентами видеодекодера 30. Видеоданные, хранящиеся в памяти 151 видеоданных, могут быть получены, например, со компьютерно-читаемого носителя 16, например, из локального источника видео, такого как камера, посредством передачи видеоданных по проводной или беспроводной сети или путем доступа к физическим носителям хранения данных. Память 151 видеоданных может формировать буфер кодированных картинок (CPB), который хранит закодированные видеоданные из битового потока закодированного видео. Буфер 162 декодированных картинок может представлять собой память опорных картинок, которая хранит опорные видеоданные для использования при декодировании видеоданных видеодекодером 30, например, в режимах интра- или интер-кодирования или для вывода. Память 151 видеоданных и буфер 162 декодированных картинок могут быть образованы любым из множества устройств памяти, таких как динамическая память с произвольным доступом (DRAM), включая синхронную DRAM (SDRAM), магниторезистивную RAM (MRAM), резистивную RAM (RRAM) или другие типы устройств памяти. Память 151 видеоданных и буфер 162 декодированных картинок могут быть обеспечены одним и тем же устройством памяти или отдельными устройствами памяти. В различных примерах, память 151 видеоданных может быть интегрирована в чип с другими компонентами видеодекодера 30 или находиться вне чипа относительно этих компонентов. Память 151 видеоданных может быть представлена носителем 28 хранения данных согласно фиг. 1 или его частью.
[0138] Память 151 видеоданных принимает и хранит закодированные видеоданные (например, единицы NAL) битового потока. Модуль 150 энтропийного декодирования может получать закодированные видеоданные (например, единицы NAL) из памяти 151 видеоданных и может анализировать единицы NAL для получения синтаксических элементов. Модуль 150 энтропийного декодирования может энтропийно декодировать энтропийно-закодированные синтаксические элементы в единицах NAL. Модуль 152 обработки предсказания, модуль 154 обратного квантования, модуль 156 обработки обратного преобразования, модуль 158 восстановления и модуль 160 фильтрации могут генерировать декодированные видеоданные на основе синтаксических элементов, извлеченных из битового потока. Модуль 150 энтропийного декодирования может выполнять процесс, в общем, обратный процессу, выполняемому модулем 118 энтропийного кодирования.
[0139] В соответствии с некоторыми примерами настоящего раскрытия модуль 150 энтропийного декодирования или другой модуль обработки видеодекодера 30 может определять древовидную структуру как часть получения синтаксических элементов из битового потока. Древовидная структура может указывать, как исходный видеоблок, такой как CTB, разбивается на более мелкие видеоблоки, такие как единицы кодирования. В соответствии с одним или более методами настоящего раскрытия, для каждого соответствующего не-листового узла древовидной структуры на каждом уровне глубины древовидной структуры существует множество разрешенных типов разбиений для соответствующего не-листового узла, и видеоблок, соответствующий соответственному не-листовому узлу, разбивается на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла, в соответствии с одним из множества разрешенных шаблонов разделения.
[0140] В дополнение к декодированию синтаксических элементов из битового потока, видеодекодер 30 может выполнять операцию восстановления на неразделенной CU. Для выполнения операции восстановления на CU, видеодекодер 30 может выполнить операцию восстановления на каждой TU из CU. Путем выполнения операции восстановления для каждой TU из CU, видеодекодер 30 может восстанавливать остаточные блоки CU. Как обсуждалось выше, в одном примере раскрытия, CU включает в себя одну TU.
[0141] В рамках выполнения операции восстановления на TU из CU, модуль 154 обратного квантования может обратно квантовать, то есть деквантовать, блоки коэффициентов, ассоциированные с TU. После того, как модуль 154 обратного квантования выполнит обратное квантование блока коэффициентов, модуль 156 обработки обратного преобразования может применять одно или более обратных преобразований к блоку коэффициентов для формирования остаточного блока, ассоциированного с TU. Например, модуль 156 обработки обратного преобразования может применять обратное DCT, обратное целочисленное преобразование, обратное преобразование Карунена-Лоэве (Karhunen-Loeve, KLT), обратное вращательное преобразование, обратное направленное преобразование или другое обратное преобразование к блоку коэффициентов.
[0142] Если CU или PU закодирована с использованием интра-предсказания, модуль 166 обработки интра-предсказания может выполнять интра-предсказание для генерации блоков предсказания для PU. Модуль 166 обработки интра-предсказания может использовать режим интра-предсказания для генерации блоков предсказания PU на основе выборок пространственно соседних блоков. Модуль 166 обработки интра-предсказания может определять режим интра-предсказания для PU на основе одного или более синтаксических элементов, полученных из битового потока.
[0143] Если PU закодирована с использованием интер-предсказания, модуль 150 энтропийного декодирования может определять информацию о движении для PU. Модуль 164 компенсации движения может определять, на основе информации о движении PU, один или более опорных блоков. Модуль 164 компенсации движения может генерировать, на основе одного или более опорных блоков, блоки предсказания (например, блоки предсказания яркости, Cb и Cr) для PU. Как обсуждалось выше, в одном примере раскрытия с использованием разбиения МТТ, CU может включать в себя только одну PU. То есть, CU не может быть разделена на несколько PU.
[0144] Модуль 158 восстановления может использовать блоки преобразования (например, блоки преобразования яркости, Cb и Cr) для TU из CU, и блоки предсказания (например, блоки яркости, Cb и Cr) PU для CU, то есть данные интра-предсказания или данные интер-предсказания, если это применимо, для восстановления блоков кодирования (например, блоков кодирования яркости, Cb и Cr) для CU. Например, модуль 158 восстановления может суммировать выборки блоков преобразования (например, блоков преобразования яркости, Cb и Cr) с соответствующими выборками блоков предсказания (например, блоков предсказания яркости, Cb и Cr) для восстановления блоков кодирования (например, блоков кодирования яркости, Cb и Cr) для CU.
[0145] Модуль 160 фильтрации может выполнять операцию устранения блочности для уменьшения артефактов блочности, ассоциированных с блоками кодирования CU. Видеодекодер 30 может хранить блоки кодирования CU в буфере 162 декодированных картинок. Буфер 162 декодированных картинок может предоставлять опорные картинки для последующей компенсации движения, интра-предсказания, представления на устройстве отображения, таком как устройство 32 отображения на фиг. 1. Например, видеодекодер 30 может выполнять, на основе блоков в буфере 162 декодированных картинок, операции интра-предсказания или интер-предсказания для PU других CU.
[0146] Фиг. 10A является блок-схемой последовательности действий, иллюстрирующей пример операции видеокодера 22 в соответствии с методом настоящего раскрытия. В примере на фиг. 10А, видеокодер 22 может генерировать кодированное представление исходного видеоблока (например, блока дерева кодирования) видеоданных (200). В рамках генерирования кодированного представления исходного видеоблока, видеокодер 22 определяет древовидную структуру, содержащую множество узлов. Множество узлов включает в себя множество листовых узлов и множество не-листовых узлов. Листовые узлы не имеют дочерних узлов в древовидной структуре. Не-листовые узлы включают в себя корневой узел древовидной структуры. Корневой узел соответствует исходному видеоблоку видеоданных. Для каждого соответственного не-корневого узла из множества узлов, соответственный не-корневой узел соответствует видеоблоку (например, блоку кодирования), который является подблоком видеоблока, соответствующего родительскому узлу в древовидной структуре соответственного не-корневого узла. Каждый соответственный не-листовой узел из множества не-листовых узлов имеет один или более дочерних узлов в древовидной структуре. Для каждого соответственного не-листового узла древовидной структуры на каждом уровне глубины древовидной структуры, существует множество разрешенных типов разбиения из трех или более структур разбиений (например, структур разбиений BT, QT и ТТ) для соответственного не-листового узла, и видеоблок, соответствующий соответственному не-листовому узлу, разбит на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла, в соответствии с одним из множества разрешенных типов разбиения. Каждый соответственный разрешенный тип разбиения из множества разрешенных типов разбиения соответствует отличающемуся способу разбиения видеоблока, соответствующего соответственному не-листовому узлу, на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла. Кроме того, в этом примере, видеокодер 22 может включать кодированное представление исходного видеоблока в битовый поток, который содержит кодированное представление видеоданных (202).
[0147] Фиг. 10B является блок-схемой последовательности действий, иллюстрирующей примерную операцию видеодекодера 30 в соответствии с методом настоящего раскрытия. В примере на фиг. 10В, видеодекодер 30 может определять древовидную структуру, содержащую множество узлов (250). Множество узлов включает в себя множество листовых узлов и множество не-листовых узлов, причем листовые узлы не имеют дочерних узлов в древовидной структуре. Не-листовые узлы включают в себя корневой узел древовидной структуры. Корневой узел соответствует исходному видеоблоку видеоданных. Для каждого соответственного не-корневого узла из множества узлов, соответственный не-корневой узел соответствует видеоблоку, который является подблоком видеоблока, соответствующего родительскому узлу в древовидной структуре соответственного не-корневого узла. Каждый соответственный не-листовой узел из множества не-листовых узлов имеет один или более дочерних узлов в древовидной структуре. Для каждого соответственного не-листового узла древовидной структуры на каждом уровне глубины древовидной структуры существует множество разрешенных типов разбиения трех или более структур разбиений (например, структур разбиений BT, QT и ТТ) для соответственного не-листового узла, и видеоблок, соответствующий соответственному не-листовому узлу, разбит на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла, в соответствии с одним из множества разрешенных типов разбиения. Каждый соответственный разрешенный тип разбиения из множества разрешенных типов разбиения соответствует отличающемуся способу разбиения видеоблока, соответствующего соответственному не-листовому узлу, на видеоблоки, соответствующие дочерним узлам соответственного не-листового узла. Кроме того, в этом примере, для каждого (или по меньшей мере одного) соответственного листового узла древовидной структуры, видеодекодер 30 восстанавливает видео блок, соответствующий соответственному листовому узлу (252).
[0148] В примерах на фиг. 10А и фиг. 10B, для каждого соответственного не-листового узла древовидной структуры, отличного от корневого узла, множество разрешенных типов разбиений для соответственного не-листового узла может быть независимым от шаблона разделения, согласно которому видеоблок, соответствующий родительскому узлу соответственного не-листового узла, разбивается на видеоблоки, соответствующие дочерним узлам родительского узла соответственного не-листового узла. Например, в отличие от предложения VCEG COM16-C966, если видеоблок определенного узла разделен в соответствии с шаблоном разделения двоичного дерева, видеоблок дочернего узла конкретного узла может быть разделен в соответствии с шаблоном разбиения квадродерева.
[0149] Кроме того, в примерах на фиг. 10А и фиг. 10B, для каждого соответственного не-листового узла древовидной структуры, множество разрешенных шаблонов расщепления для соответственного не-листового узла может включать в себя два или более из: шаблона квадратного разделения квадродерева, шаблона прямоугольного разделения квадродерева, шаблона симметричного разделения двоичного дерева, шаблона несимметричного разделения двоичного дерева, шаблона симметричного разделения троичного дерева или шаблона несимметричного разделения троичного дерева.
[0150] Кроме того, как указано выше, используется только поднабор из вышеупомянутых типов разбиения. Поднабор поддерживаемых типов разбиения может сигнализироваться в битовом потоке или быть предварительно определенным. Таким образом, в некоторых примерах, видеодекодер 30 может получать, из битового потока, синтаксические элементы, указывающие множество поддерживаемых шаблонов разделения. Аналогично, видеокодер 22 может сигнализировать, в битовом потоке, множество поддерживаемых шаблонов разделения. В этих примерах, для каждого соответственного не-листового узла древовидной структуры, множество поддерживаемых шаблонов разделения может включать в себя множество разрешенных шаблонов разделения для соответственного не-листового узла. В этих примерах, синтаксические элементы, указывающие множество поддерживаемых шаблонов разделения, могут быть получены из битового потока (и сигнализироваться в битовом потоке), например, в наборе параметров последовательности (SPS) или наборе параметров картинки (PPS) или заголовке вырезки.
[0151] Как указано выше, в некоторых примерах, когда поддерево разбивается на несимметричное троичное дерево, применяется ограничение, состоящее в том, что два из трех разбиений имеют одинаковый размер. Соответственно, в некоторых примерах, видеодекодер 30 может получать кодированное представление исходного видеоблока, которое соответствует ограничению, указывающему, что когда видеоблок, соответствующий узлу древовидной структуры, разбит в соответствии с шаблоном несимметричного троичного дерева, видеоблоки, соответствующие двум дочерним узлам упомянутого узла, имеют одинаковый размер. Подобным образом, видеокодер 22 может генерировать закодированное представление исходного видеоблока, чтобы соответствовать ограничению, указывающему, что, когда видеоблок, соответствующий узлу древовидной структуры, разбит в соответствии с шаблоном несимметричного троичного дерева, видеоблоки, соответствующие двум дочерним узлам упомянутого узла, имеют одинаковый размер.
[0152] Как указано выше, в некоторых примерах, число поддерживаемых типов разбиения может быть фиксированным для всех глубин во всех CTU. Например, может иметься такое же количество разрешенных шаблонов разделения во множестве разрешенных шаблонов разделения для каждого не-листового узла древовидной структуры. Кроме того, как указано выше, в других примерах, число поддерживаемых типов разбиения может зависеть от глубины, типа вырезки, типа CTU или другой ранее кодированной информации. Например, по меньшей мере для одного не-листового узла древовидной структуры, количество разрешенных шаблонов разделения во множестве разрешенных шаблонов разделения для не-листового узла зависит по меньшей мере от одного из: глубины не-листового узла в древовидной структуре, размера видеоблока, соответствующего не-листовому узлу в древовидной структуре, типа вырезки или ранее закодированной информации.
[0153] В некоторых примерах, когда блок разделен с использованием несимметричного типа разбиения (например, несимметричных типов разбиения двоичного дерева, показанных на фиг. 3, включая PART_2N×nU, PART_2N×nD, PART_nL×2N, PART_nR×2N), наибольший подблок, который разделен из текущего блока, не может быть далее разделен. Например, ограничение на способ кодирования исходного видеоблока может потребовать, что, когда видеоблок, соответствующий любому не-листовому узлу древовидной структуры, разделяется на множество подблоков в соответствии с шаблоном несимметричного разбиения, наибольший подблок из множества подблоков соответствует листовому узлу древовидной структуры.
[0154] В некоторых примерах, когда блок разбит с использованием несимметричного типа разбиения, наибольший подблок, который разделен из текущего блока, не может далее разделяться в том же самом направлении. Например, ограничение на способ кодирования исходного видеоблока может потребовать, что, когда видеоблок, соответствующий любому не-листовому узлу древовидной структуры, разделяется в первом направлении на множество подблоков в соответствии с шаблоном несимметричного разделения, древовидная структура не может содержать узлы, соответствующие подблокам наибольшего подблока из множества подблоков, которые разделены из наибольшего подблока из множества подблоков в первом направлении.
[0155] В некоторых примерах, когда ширина/высота блока не является степенью 2, дальнейшее горизонтальное/вертикальное разделение не допускается. Например, ограничение на способ кодирования исходного видеоблока может потребовать того, чтобы узел древовидной структуры, соответствующий видеоблоку, высота или ширина которого не является степенью 2, был листовым узлом.
[0156] В некоторых примерах, на каждой глубине, индекс выбранного типа разбиения сигнализируется в битовом потоке. Таким образом, в некоторых примерах, видеокодер 22 может включать, в битовый поток, индекс шаблона разделения, согласно которому видеоблок, соответствующий не-листовому узлу древовидной структуры, разделяется на видеоблоки, соответствующие дочерним узлам нелистового узла. Аналогично, в некоторых примерах, видеодекодер 30 может получать, из битового потока, индекс шаблона разделения, согласно которому видеоблок, соответствующий не-листовому узлу древовидной структуры, разделен на видеоблоки, соответствующие дочерним узлам не-листового узла.
[0157] В некоторых примерах, для каждой CU (листового узла) дополнительно сигнализируется 1-битовый флаг разделения преобразования (transform_split) для указания, выполнено ли преобразование с тем же самым размером CU или нет. В случае если флаг разделения преобразования сигнализируется как истинный, остаток CU далее разделяется на несколько подблоков, и преобразование выполняется на каждом подблоке. Соответственно, в одном примере, по меньшей мере для одного листового узла древовидной структуры, видеокодер 22 может включать синтаксический элемент в битовый поток. В этом примере, синтаксический элемент, имеющий первое значение, указывает, что преобразование, имеющее тот же размер, что и видеоблок, соответствующий листовому узлу, применяется к остаточным данным видеоблока, соответствующего листовому узлу; синтаксический элемент, имеющий второе значение, указывает, что несколько преобразований, имеющих меньшие размеры, чем видеоблок, соответствующий листовому узлу, применяются к подблокам остаточных данных видеоблока, соответствующего листовому узлу. В аналогичном примере, по меньшей мере для одного листового узла древовидной структуры, видеодекодер 30 может получить этот синтаксический элемент из битового потока.
[0158] В некоторых примерах, никакой флаг разделения не сигнализируется, и используется преобразование только с одним производным размером, когда имеется остаток в CU. Например, по меньшей мере для одного листового узла древовидной структуры, видеокодер 22 может применять одно и то же преобразование (например, дискретное косинусное преобразование, дискретное синусное преобразование и т.д.) к разным частям остаточных данных, соответствующих видеоблоку, соответствующему листовому узлу, для преобразования остаточных данных из области выборок в область преобразования. В области выборок, остаточные данные представлены в виде значений выборок (например, компонентов пикселов). В области преобразования, остаточные данные могут быть представлены в виде коэффициентов частоты. Аналогично, по меньшей мере для одного листового узла древовидной структуры, видеодекодер 30 может применять одно и тот же преобразование (т.е. обратное дискретное косинусное преобразование, обратное синусное преобразование и т.д.) к разным частям остаточных данных, соответствующих видеоблоку, соответствующему листовому узлу, для преобразования остаточных данных из области преобразования в область выборок.
[0159] В некоторых примерах, для каждой CU, если CU не разделяется в квадратное квадродерево или симметричное двоичное дерево, размер преобразования всегда устанавливается равным размеру разбиения. Например, для каждого соответствующего не-листового узла древовидной структуры, соответствующей видеоблоку, разбитому в соответствии с квадратным шаблоном разделения квадродерева или симметричным шаблоном разделения двоичного дерева, размеры преобразования для преобразований, применяемых к остаточным данным видеоблоков, соответствующих дочерним узлам соответственного не-листового узла, всегда устанавливаются равными размерам видеоблоков, соответствующих дочерним узлам соответственного не-листового узла.
[0160] На фиг. 11 показана блок-схема последовательности действий, иллюстрирующая примерную операцию видеокодера, в соответствии с другим примерным методом настоящего раскрытия. Один или более структурных элементов видеокодера 22, включая модуль 100 обработки предсказания, могут быть сконфигурированы для выполнения методов согласно фиг. 11.
[0161] В одном примере раскрытия, видеокодер 22 может быть сконфигурирован, чтобы принимать картинку видеоданных (300), разбивать картинку видеоданных на множество блоков с использованием трех или более различных структур разбиений (302) и кодировать множество блоков картинки видеоданных (304). В одном примере раскрытия, видеокодер 22 может быть сконфигурирован, чтобы разбивать картинку видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, как разбивается конкретный блок картинки видеоданных. В одном примере, три или более различных структур разбиений включают в себя структуру разбиения троичного дерева, и видеокодер 22 дополнительно сконфигурирован, чтобы разбивать конкретный блок видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева разделяет конкретный блок на три подблока без деления конкретного блока через центр конкретного блока, причем центральный блок из трех подблоков имеет размер, равный сумме размеров двух других из трех подблоков, причем два других из трех подблоков имеют одинаковый размер.
[0162] В другом примере раскрытия, три или более различных структур разбиений дополнительно включают в себя структуру разбиения квадродерева и структуру разбиения двоичного дерева. В другом примере раскрытия, типы разбиения структуры разбиения квадродерева включают в себя один или более из квадратного типа разбиения квадродерева или прямоугольного типа разбиения квадродерева, типы разбиения структуры разбиения двоичного дерева включают в себя один или более из симметричного типа разбиения двоичного дерева или несимметричного типа разбиения двоичного дерева, и типы разбиения для структуры разбиения троичного дерева включают в себя один или более из симметричного типа разбиения или несимметричного типа разбиения троичного дерева.
[0163] В другом примере раскрытия, видеокодер 22 дополнительно сконфигурирован, чтобы генерировать, в битовом потоке, синтаксические элементы, указывающие множество поддерживаемых типов разбиений из трех или более различных структур разбиений. В одном примере, генерирование синтаксических элементов из битового потока включает в себя генерирование синтаксических элементов в одном или более из набора адаптивных параметров (APS), набора параметров последовательности (SPS), набора параметров картинки (PPS) или заголовка вырезки.
[0164] В другом примере раскрытия, видеокодер 22 дополнительно сконфигурирован, чтобы генерировать синтаксический элемент, указывающий, что конкретный блок картинки видеоданных разбит с использованием структуры разбиения троичного дерева с симметричным типом разбиения троичного дерева, и разбивать конкретный блок картинки видеоданных таким образом, что два подблока конкретного блока имеют одинаковый размер.
[0165] В другом примере раскрытия, множество блоков включает в себя конкретный блок, который соответствует листовому узлу, и видеокодер 22 дополнительно сконфигурирован, чтобы генерировать синтаксический элемент в битовом потоке, причем синтаксический элемент имеет первое значение, указывающее, что преобразование, имеющее тот же размер, что и конкретный блок картинки видеоданных, соответствующий листовому узлу, применяется к остаточным данным конкретного блока, соответствующего листовому узлу, причем синтаксический элемент имеет второе значение, указывающее, что множество преобразований, имеющих меньшие размеры, чем конкретный видеоблок, соответствующий листовому узлу, применяются к подблокам остаточных данных конкретного блока, соответствующего листовому узлу, и применять одно или более преобразований к остаточным данным конкретного блока видеоданных в соответствии с синтаксическим элементом.
[0166] Фиг. 12 является блок-схемой последовательности действий, иллюстрирующей примерную операцию видеодекодера, в соответствии с другим примерным методом настоящего раскрытия. Один или более структурных элементов видеодекодера 30, включая блок 150 энтропийного декодирования и/или блок 152 обработки предсказания, могут быть сконфигурированы для выполнения методов согласно фиг. 12.
[0167] В одном примере раскрытия, видеодекодер 30 сконфигурирован, чтобы принимать битовый поток, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных (400), определять разбиение кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений (402) и восстанавливать множество блоков кодированной картинки видеоданных (404). В одном примере, видеодекодер 30 сконфигурирован, чтобы определять разбиение кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, каким образом разбит конкретный блок кодированной картинки видеоданных. В одном примере, три или более различных структур разбиений включают в себя структуру разбиения троичного дерева, и видеодекодер 30 дополнительно сконфигурирован, чтобы определять разбиение конкретного блока видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит конкретный блок на три подблока без деления конкретного блока по центру конкретного блока, причем центральный блок из трех подблоков имеет размер, равный сумме размеров двух других из трех подблоков, причем два других из трех подблоков имеют одинаковый размер.
[0168] В другом примере раскрытия, три или более различных структур разбиений дополнительно включают в себя структуру разбиения квадродерева и структуру разбиения двоичного дерева. В другом примере, типы разбиения структуры квадродерева включают в себя один или более из квадратного типа разбиения квадродерева или прямоугольного типа разбиения квадродерева, типы разбиений структуры разбиения двоичного дерева включают в себя один или более из симметричного типа разбиения двоичного дерева или несимметричного типа разбиения двоичного дерева, и типы разбиений для структуры разбиения троичного дерева включают в себя один или более из симметричного типа разбиения троичного дерева или несимметричного типа разбиения троичного дерева.
[0169] В другом примере раскрытия, видеодекодер 30 дополнительно сконфигурирован, чтобы принимать, из битового потока, синтаксические элементы, указывающие множество поддерживаемых типов разбиения из трех или более различных структур разбиений, и определять разбиение кодированной картинки видеоданных на основе принятого синтаксического элемента. В другом примере раскрытия, видеодекодер 30 дополнительно сконфигурирован, чтобы принимать синтаксические элементы из битового потока, включая прием синтаксических элементов в одном или более из набора адаптивных параметров (APS), набора параметров последовательности (SPS), набора параметров картинки (PPS) или заголовка вырезки.
[0170] В другом примере раскрытия, видеодекодер 30 дополнительно сконфигурирован, чтобы принимать синтаксический элемент, указывающий, что конкретный блок кодированной картинки видеоданных разбит с использованием структуры разбиения троичного дерева с симметричным типом разбиения троичного дерева, и определять разбиение конкретного блока кодированной картинки видеоданных таким образом, что два подблока конкретного блока имеют одинаковый размер.
[0171] В другом примере раскрытия, множество блоков включает в себя конкретный блок, который соответствует листовому узлу, и видеодекодер 30 дополнительно сконфигурирован, чтобы принимать синтаксический элемент из битового потока, причем синтаксический элемент имеет первое значение, указывающее, что преобразование, имеющее такой же размер, что и конкретный блок кодированной картинки видеоданных, соответствующий листовому узлу, применяется к остаточным данным конкретного блока, соответствующего листовому узлу, и синтаксический элемент имеет второе значение, указывающее, что множество преобразований, имеющих меньшие размеры, чем конкретный блок, соответствующий листовому узлу, применяются к подблокам остаточных данных конкретного блока, соответствующего листовому узлу, и применять одно или более преобразований к конкретному блоку видеоданных в соответствии с синтаксическим элементом.
[0172] Некоторые аспекты настоящего раскрытия были описаны в отношении расширений стандарта HEVC для целей иллюстрации. Однако способы, описанные в настоящем раскрытии, могут быть полезны для других процессов кодирования видео, включая другие, еще не разработанные стандартные или проприетарные процессы кодирования видео.
[0173] Устройство кодирования видео (video coder), как описано в настоящем раскрытии, может относиться к видеокодеру (video encoder) или видеодекодеру (video decoder). Аналогично, модуль кодирования видео может относиться к видеокодеру или видеодекодеру. Аналогично, кодирование видео (video coding) может относиться к кодированию видео (video encoding) или декодированию видео (video decoding), если это применимо. В настоящем раскрытии фраза ʺна основеʺ может указывать только на основе; основываясь по меньшей мере частично; или основываясь некоторым образом. Настоящее раскрытие может использовать термин ʺединица видеоʺ или ʺблок видеоʺ или ʺблокʺ для обозначения одного или более блоков выборок и синтаксических структур, используемых для кодирования выборок одного или более блоков выборок. Примерные типы единиц видео могут включать в себя CTU, CU, PU, модули преобразования (TU), макроблоки, разбиения макроблоков и т.д. В некоторых контекстах, обсуждение PU может быть заменено обсуждением макроблоков или разбиений макроблоков. Примерные типы блоков видео могут включать в себя блоки дерева кодирования, блоки кодирования и другие типы блоков видеоданных.
[0174] Следует иметь в виду, что, в зависимости от примера, некоторые действия или события любого из описанных здесь методов могут быть выполнены в другой последовательности, могут быть добавлены, объединены или вообще опущены (например, не все описанные действия или события необходимы для практической реализации этих методов). Более того, в некоторых примерах, действия или события могут выполняться одновременно, например, посредством многопоточной обработки, обработки прерываний или более процессорами, а не последовательно.
[0175] В одном или более примерах, описанные функции могут быть реализованы в аппаратных средствах, программном обеспечении, встроенном программном обеспечении или любой их комбинации. При реализации в программном обеспечении, функции могут храниться или передаваться в виде одной или более инструкций или кода на компьютерно-читаемом носителе и исполняться аппаратным процессором. Компьютерно-читаемые носители могут включать в себя компьютерно-читаемые носители хранения данных, которые соответствуют материальному носителю, такому как носители хранения данных, или среды связи, включая любую среду, которая облегчает перенос компьютерной программы из одного места в другое, например, согласно протоколу связи. Таким образом, компьютерно-читаемые носители, в общем, могут соответствовать (1) материальному компьютерно-читаемому носителю хранения данных, который является не-временным, или (2) среде связи, такой как сигнал или несущая волна. Носителями хранения данных могут быть любые доступные носители, к которым может получить доступ один или более компьютеров или один или более процессоров для извлечения инструкций, кода и/или структур данных для реализации методов, описанных в настоящем раскрытии. Компьютерный программный продукт может включать в себя компьютерно-читаемый носитель.
[0176] В качестве примера, а не ограничения, такие компьютерно-читаемые носители хранения данных могут содержать RAM, ROM, EEPROM, CD-ROM или другое хранилище на оптических дисках, хранилище на магнитных дисках или другие магнитные устройства хранения, флэш-память или любой другой носитель, который можно использовать для хранения желательного программного кода в форме инструкций или структур данных, и к которому может получать доступ компьютер. Кроме того, любое соединение может надлежащим образом определяться как компьютерно-читаемый носитель. Например, если инструкции передаются с веб-сайта, сервера или другого удаленного источника с использованием коаксиального кабеля, волоконно-оптического кабеля, витой пары, цифровой абонентской линии (DSL) или беспроводных технологий, таких как инфракрасная, радио и микроволновая, то коаксиальный кабель, волоконно-оптический кабель, витая пара, DSL или беспроводные технологии, такие как инфракрасная, радио и микроволновая, включаются в определение носителя. Однако следует понимать, что компьютерно-читаемые носители хранения и носители хранения данных не включают в себя соединения, несущие волны, сигналы или другие временные (переходные) носители, но вместо этого ориентированы на не-временные, материальные носители хранения. Используемые в настоящем документе термины магнитный диск (disk) и оптический диск (disc) включают в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой многофункциональный диск (DVD), гибкий диск и Blu-ray диск, причем магнитные диски (disks) обычно воспроизводят данные магнитным способом, в то время как оптические диски (discs) воспроизводят данные оптически, с помощью лазеров. Комбинации вышеизложенного также должны быть включены в объем компьютерно-читаемых носителей.
[0177] Инструкции могут исполняться одним или более процессорами, такими как один или более процессоров цифровых сигналов (DSP), микропроцессоры общего назначения, специализированные интегральные схемы (ASIC), программируемые вентильные матрицы (FPGA) или другие эквивалентные интегральные или дискретные логические схемы. Соответственно, термин ʺпроцессорʺ, используемый здесь, может относиться к любой из вышеперечисленных структур или любой другой структуре, подходящей для реализации описанных здесь методов. Кроме того, в некоторых аспектах, функциональность, описанная здесь, может быть предоставлена в рамках специализированных аппаратных средств и/или программных модулей, сконфигурированных для кодирования и декодирования или интегрированных в объединенный кодек. Кроме того, методы могут быть полностью реализованы в одной или более схемах или логических элементах.
[0178] Методы настоящего раскрытия могут быть реализованы в самых разных приборах или устройствах, включая беспроводную трубку, интегральную схему (IC) или набор IC (например, чипсет). Различные компоненты, модули или блоки описаны в настоящем раскрытии, чтобы подчеркнуть функциональные аспекты устройств, сконфигурированных для выполнения раскрытых методов, но не обязательно требуют реализации различными аппаратными модулями. Скорее, как описано выше, различные модули могут быть объединены в аппаратный модуль кодека или обеспечены набором взаимодействующих аппаратных модулей, включая один или более процессоров, как описано выше, в сочетании с подходящим программным обеспечением и/или встроенным программным обеспечением.
[0179] Выше были описаны различные примеры. Эти и другие примеры находятся в пределах объема следующей формулы изобретения.

Claims (67)

1. Способ декодирования видеоданных, причем способ содержит:
прием битового потока, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных;
определение разбиения кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из упомянутых трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, каким образом разбит конкретный блок кодированной картинки видеоданных, и причем упомянутые три или более различных структур разбиений включают в себя структуру разбиения троичного дерева;
определение разбиения по меньшей мере одного блока кодированной картинки видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит упомянутый по меньшей мере один блок на три подблока без деления упомянутого по меньшей мере одного блока по центру упомянутого по меньшей мере одного блока; и
восстановление множества блоков кодированной картинки видеоданных.
2. Способ по п. 1, причем центральный блок из трех подблоков имеет размер, равный сумме размеров двух других из трех подблоков, и причем два других из трех подблоков имеют одинаковый размер.
3. Способ по п. 1, в котором упомянутые три или более различных структур разбиений дополнительно включают в себя структуру разбиения квадродерева и структуру разбиения двоичного дерева.
4. Способ по п. 3, в котором типы разбиения структуры разбиения квадродерева включают в себя один или более из квадратного типа разбиения квадродерева или прямоугольного типа разбиения квадродерева,
причем типы разбиений структуры разбиения двоичного дерева включают в себя один или более из симметричного типа разбиения двоичного дерева или несимметричного типа разбиения двоичного дерева,
причем типы разбиений для структуры разбиения троичного дерева включают в себя один или более из симметричного типа разбиения троичного дерева или несимметричного типа разбиения троичного дерева.
5. Способ по п. 1, дополнительно содержащий:
прием, из битового потока, синтаксических элементов, указывающих множество поддерживаемых типов разбиений из упомянутых трех или более различных структур разбиений; и
определение разбиения кодированной картинки видеоданных на основе принятого синтаксического элемента.
6. Способ по п. 5, в котором прием синтаксических элементов содержит прием синтаксических элементов из битового потока, включая прием синтаксических элементов в одном или более из набора адаптивных параметров (APS), набора параметров последовательности (SPS), набора параметров картинки (PPS) или заголовка вырезки.
7. Способ по п. 1, причем способ дополнительно содержит:
прием синтаксического элемента, указывающего, что упомянутый по меньшей мере один блок кодированной картинки видеоданных разбит с использованием структуры разбиения троичного дерева с симметричным типом разбиения троичного дерева; и
определение разбиения упомянутого по меньшей мере одного блока кодированной картинки видеоданных таким образом, что два подблока упомянутого по меньшей мере одного блока имеют одинаковый размер.
8. Способ по п. 1, в котором упомянутое множество блоков включает в себя блок, соответствующий листовому узлу, причем способ дополнительно содержит:
прием синтаксического элемента из битового потока, причем синтаксический элемент имеет первое значение, указывающее, что преобразование, имеющее такой же размер, что и блок, соответствующий листовому узлу, применяется к остаточным данным блока, соответствующего листовому узлу, синтаксический элемент имеет второе значение, указывающее, что множество преобразований, имеющих меньшие размеры, чем блок, соответствующий листовому узлу, применяются к подблокам остаточных данных блока, соответствующего листовому узлу; и
применение одного или более преобразований к блоку, соответствующему листовому узлу, в соответствии с синтаксическим элементом.
9. Способ кодирования видеоданных, причем способ содержит:
прием картинки видеоданных;
разбиение картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из упомянутых трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, каким образом разбит конкретный блок картинки видеоданных, и причем упомянутые три или более различных структур разбиений включают в себя структуру разбиения троичного дерева;
разбиение по меньшей мере одного блока картинки видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит упомянутый по меньшей мере один блок на три подблока без деления упомянутого по меньшей мере одного блока по центру упомянутого по меньшей мере одного блока; и
кодирование множества блоков картинки видеоданных.
10. Способ по п. 9, причем центральный блок из трех подблоков имеет размер, равный сумме размеров двух других из трех подблоков, и причем два других из трех подблоков имеют одинаковый размер.
11. Способ по п. 9, в котором упомянутые три или более различных структур разбиений дополнительно включают в себя структуру разбиения квадродерева и структуру разбиения двоичного дерева.
12. Способ по п. 11, в котором типы разбиений структуры разбиения квадродерева включают в себя один или более из квадратного типа разбиения квадродерева или прямоугольного типа разбиения квадродерева,
причем типы разбиений структуры разбиения двоичного дерева включают в себя один или более из симметричного типа разбиения двоичного дерева или несимметричного типа разбиения двоичного дерева,
причем типы разбиений для структуры разбиения троичного дерева включают в себя один или более из симметричного типа разбиения троичного дерева или несимметричного типа разбиения троичного дерева.
13. Способ по п. 9, дополнительно содержащий:
генерирование, в битовом потоке, синтаксических элементов, указывающих множество поддерживаемых типов разбиений из упомянутых трех или более различных структур разбиений.
14. Способ по п. 13, в котором генерирование синтаксических элементов содержит генерирование синтаксических элементов из битового потока, включая генерирование синтаксических элементов в одном или более из набора адаптивных параметров (APS), набора параметров последовательности (SPS), набора параметров картинки (PPS) или заголовка вырезки.
15. Способ по п. 9, причем способ дополнительно содержит:
генерирование синтаксического элемента, указывающего, что упомянутый по меньшей мере один блок картинки видеоданных разбит с использованием структуры разбиения троичного дерева с симметричным типом разбиения троичного дерева, и
разбиение упомянутого по меньшей мере одного блока картинки видеоданных таким образом, что два подблока конкретного блока имеют одинаковый размер.
16. Способ по п. 9, в котором множество блоков включает в себя блок, соответствующий листовому узлу, дополнительно содержащий:
генерирование синтаксического элемента в битовом потоке, причем синтаксический элемент имеет первое значение, указывающее, что преобразование, имеющее такой же размер, что и блок, соответствующий листовому узлу, применяется к остаточным данным блока, соответствующего листовому узлу, синтаксический элемент имеет второе значение, указывающее, что множество преобразований, имеющих меньшие размеры, чем блок, соответствующий листовому узлу, применяются к подблокам остаточных данных блока, соответствующего листовому узлу; и
применение одного или более преобразований к остаточным данным блока, соответствующего листовому узлу, в соответствии с синтаксическим элементом.
17. Устройство, сконфигурированное для декодирования видеоданных, причем устройство содержит:
память, сконфигурированную для хранения видеоданных; и
схему декодирования видео, сконфигурированную, чтобы:
принимать битовый поток, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных;
определять разбиение кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из упомянутых трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, каким образом разбит конкретный блок кодированной картинки видеоданных, и причем упомянутые три или более различных структур разбиений включают в себя структуру разбиения троичного дерева;
определять разбиение по меньшей мере одного блока кодированной картинки видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит упомянутый по меньшей мере один блок на три подблока без деления упомянутого по меньшей мере одного блока по центру упомянутого по меньшей мере одного блока; и
восстанавливать множество блоков кодированной картинки видеоданных.
18. Устройство по п. 17, причем центральный блок из трех подблоков имеет размер, равный сумме размеров двух других из трех подблоков, причем два других из трех подблоков имеют одинаковый размер.
19. Устройство по п. 17, в котором упомянутые три или более различных структур разбиений дополнительно включают в себя структуру разбиения квадродерева и структуру разбиения двоичного дерева.
20. Устройство по п. 19, в котором типы разбиений структуры разбиения квадродерева включают в себя один или более из квадратного типа разбиения квадродерева или прямоугольного типа разбиения квадродерева,
причем типы разбиений структуры разбиения двоичного дерева включают в себя один или более из симметричного типа разбиения двоичного дерева или несимметричного типа разбиения двоичного дерева,
причем типы разбиений для структуры разбиения троичного дерева включают в себя один или более из симметричного типа разбиения троичного дерева или несимметричного типа разбиения троичного дерева.
21. Устройство по п. 17, в котором схема декодирования видео дополнительно сконфигурирована, чтобы:
принимать, из битового потока, синтаксические элементы, указывающие множество поддерживаемых типов разбиений из упомянутых трех или более различных структур разбиений; и
определять разбиение кодированной картинки видеоданных на основе принятого синтаксического элемента.
22. Устройство по п. 21, в котором схема декодирования видео дополнительно сконфигурирована для приема синтаксических элементов из битового потока, включая прием синтаксических элементов в одном или более из набора адаптивных параметров (APS), набора параметров последовательности (SPS), набора параметров картинки (PPS) или заголовка вырезки.
23. Устройство по п. 17, в котором схема декодирования видео дополнительно сконфигурирована, чтобы:
принимать синтаксический элемент, указывающий, что упомянутый по меньшей мере один блок кодированной картинки видеоданных разбит с использованием структуры разбиения троичного дерева с симметричным типом разбиения троичного дерева; и
определять разбиение упомянутого по меньшей мере одного блока кодированной картинки видеоданных таким образом, что два подблока упомянутого по меньшей мере одного блока имеют одинаковый размер.
24. Устройство по п. 17, в котором множество блоков включает в себя блок, соответствующий листовому узлу, и в котором схема декодирования видео дополнительно сконфигурирована, чтобы:
принимать синтаксический элемент из битового потока, причем синтаксический элемент имеет первое значение, указывающее, что преобразование, имеющее такой же размер, что и блок, соответствующий листовому узлу, применяется к остаточным данным блока, соответствующего листовому узлу, синтаксический элемент имеет второе значение, указывающее, что множество преобразований, имеющих меньшие размеры, чем блок, соответствующий листовому узлу, применяются к подблокам остаточных данных блока, соответствующего листовому узлу; и
применять одно или более преобразований к блоку, соответствующему листовому узлу, в соответствии с синтаксическим элементом.
25. Устройство, сконфигурированное для декодирования видеоданных, содержащее:
средство для приема битового потока, который включает в себя последовательность битов, которая формирует представление кодированной картинки видеоданных;
средство для определения разбиения кодированной картинки видеоданных на множество блоков с использованием трех или более различных структур разбиений, причем по меньшей мере три из упомянутых трех или более различных структур разбиений могут использоваться по меньшей мере для одной глубины древовидной структуры, которая представляет, каким образом разбит конкретный блок кодированной картинки видеоданных, и причем упомянутые три или более различных структур разбиений включают в себя структуру разбиения троичного дерева;
средство для определения разбиения по меньшей мере одного блока кодированной картинки видеоданных с использованием типа разбиения троичного дерева структуры разбиения троичного дерева, причем структура разбиения троичного дерева делит упомянутый по меньшей мере один блок на три подблока без деления упомянутого по меньшей мере одного блока по центру упомянутого по меньшей мере одного блока; и
средство для восстановления множества блоков кодированной картинки видеоданных.
26. Устройство по п. 25, причем центральный блок из трех подблоков имеет размер, равный сумме размеров двух других из трех подблоков, и причем два других из трех подблоков имеют одинаковый размер.
RU2018125511A 2016-01-15 2017-01-13 Древовидная структура множественного типа кодирования видео RU2727095C2 (ru)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662279233P 2016-01-15 2016-01-15
US62/279,233 2016-01-15
US15/404,634 2017-01-12
US15/404,634 US10212444B2 (en) 2016-01-15 2017-01-12 Multi-type-tree framework for video coding
PCT/US2017/013485 WO2017123980A1 (en) 2016-01-15 2017-01-13 Multi-type-tree framework for video coding

Publications (3)

Publication Number Publication Date
RU2018125511A RU2018125511A (ru) 2020-02-17
RU2018125511A3 RU2018125511A3 (ru) 2020-05-21
RU2727095C2 true RU2727095C2 (ru) 2020-07-17

Family

ID=57985033

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2018125511A RU2727095C2 (ru) 2016-01-15 2017-01-13 Древовидная структура множественного типа кодирования видео

Country Status (20)

Country Link
US (2) US10212444B2 (ru)
EP (1) EP3403405A1 (ru)
JP (2) JP7163183B2 (ru)
KR (1) KR20180102569A (ru)
CN (1) CN108464001B (ru)
AU (1) AU2017207452B2 (ru)
BR (1) BR112018014435A2 (ru)
CA (1) CA3007664C (ru)
CL (1) CL2018001895A1 (ru)
CO (1) CO2018007220A2 (ru)
HK (1) HK1252971A1 (ru)
MX (1) MX2018008587A (ru)
MY (1) MY193686A (ru)
NZ (1) NZ743291A (ru)
PH (1) PH12018501244A1 (ru)
RU (1) RU2727095C2 (ru)
SA (1) SA518391981B1 (ru)
SG (1) SG11201804725YA (ru)
WO (1) WO2017123980A1 (ru)
ZA (1) ZA201804694B (ru)

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10212444B2 (en) 2016-01-15 2019-02-19 Qualcomm Incorporated Multi-type-tree framework for video coding
US10542294B2 (en) * 2016-03-16 2020-01-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
US11223852B2 (en) * 2016-03-21 2022-01-11 Qualcomm Incorporated Coding video data using a two-level multi-type-tree framework
BR112018069135B1 (pt) 2016-05-10 2023-12-26 Samsung Electronics Co., Ltd Método de decodificação de imagem para decodificar uma imagem, aparelho de decodificação de imagens para decodificar uma imagem, método de codificação de imagem para codificar uma imagem, e aparelho de codificação de imagens para codificar uma imagem
CA3025520A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc Improved weighted angular prediction coding for intra coding
US10567808B2 (en) * 2016-05-25 2020-02-18 Arris Enterprises Llc Binary ternary quad tree partitioning for JVET
WO2017203930A1 (en) * 2016-05-27 2017-11-30 Sharp Kabushiki Kaisha Systems and methods for varying quantization parameters
EP3456043A4 (en) * 2016-05-28 2019-11-27 MediaTek Inc. METHOD AND DEVICE FOR REFERENCING THE CURRENT IMAGE FOR VIDEO CODING USING AFFINER MOTION COMPENSATION
CN109479131B (zh) * 2016-06-24 2023-09-01 世宗大学校产学协力团 视频信号处理方法及装置
US10448056B2 (en) 2016-07-15 2019-10-15 Qualcomm Incorporated Signaling of quantization information in non-quadtree-only partitioned video coding
CN116743991A (zh) * 2016-08-03 2023-09-12 株式会社Kt 视频解码方法、视频编码方法和视频数据的传送方法
US10609423B2 (en) 2016-09-07 2020-03-31 Qualcomm Incorporated Tree-type coding for video coding
CN116866617A (zh) * 2016-09-20 2023-10-10 株式会社Kt 对视频进行解码和编码的方法和传输视频数据的方法
US20190253624A1 (en) 2017-07-17 2019-08-15 Ki Baek Kim Image data encoding/decoding method and apparatus
EP3800891A1 (en) * 2016-10-04 2021-04-07 Ki Baek Kim Image data encoding/decoding method and apparatus
CN117768645A (zh) * 2016-10-04 2024-03-26 有限公司B1影像技术研究所 图像编码/解码方法、记录介质和传输比特流的方法
WO2018066991A1 (ko) 2016-10-04 2018-04-12 김기백 영상 데이터 부호화/복호화 방법 및 장치
US20190238888A1 (en) * 2017-07-17 2019-08-01 Ki Baek Kim Image data encoding/decoding method and apparatus
KR102531386B1 (ko) 2016-10-04 2023-05-12 주식회사 비원영상기술연구소 영상 데이터 부호화/복호화 방법 및 장치
US10779004B2 (en) * 2016-10-12 2020-09-15 Mediatek Inc. Methods and apparatuses of constrained multi-type-tree block partition for video coding
US20180109812A1 (en) * 2016-10-14 2018-04-19 Media Tek Inc. Block partitioning using tree structures
KR20180045530A (ko) * 2016-10-26 2018-05-04 디지털인사이트 주식회사 임의의 블록 분할을 사용하는 비디오 코딩 방법 및 장치
CN116614647A (zh) * 2016-11-08 2023-08-18 株式会社Kt 对视频进行解码和编码的方法、发送压缩数据的方法
US20180139444A1 (en) * 2016-11-16 2018-05-17 Mediatek Inc. Method and Apparatus of Video Coding Using Flexible Quadtree and Binary Tree Block Partitions
CN117097911A (zh) * 2016-11-18 2023-11-21 株式会社Kt 视频解码方法、视频编码方法和压缩视频数据发送设备
WO2018092869A1 (ja) * 2016-11-21 2018-05-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
JPWO2018092868A1 (ja) 2016-11-21 2019-10-17 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置、符号化方法及び復号方法
JP6565885B2 (ja) * 2016-12-06 2019-08-28 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
AU2017377490B2 (en) * 2016-12-16 2022-04-21 FG Innovation Company Limited Image decoding device and image coding device
US10848788B2 (en) 2017-01-06 2020-11-24 Qualcomm Incorporated Multi-type-tree framework for video coding
US10542280B2 (en) 2017-01-09 2020-01-21 QUALCOMM Incorpated Encoding optimization with illumination compensation and integer motion vector restriction
WO2018137231A1 (en) 2017-01-26 2018-08-02 Qualcomm Incorporated Broadcast channel encoding and decoding
PL3477949T3 (pl) * 2017-02-06 2024-02-19 Huawei Technologies Co., Ltd. Sposób i urządzenie do dekodowania obrazu z zastosowaniem informacji o podziale jednostki drzewa kodowania
KR102559063B1 (ko) * 2017-02-24 2023-07-24 주식회사 케이티 비디오 신호 처리 방법 및 장치
EP3383045A1 (en) * 2017-03-27 2018-10-03 Thomson Licensing Multiple splits prioritizing for fast encoding
CN117294839A (zh) * 2017-05-17 2023-12-26 株式会社Kt 用于解码视频的方法和用于传输压缩的视频数据的设备
CN117201819A (zh) 2017-05-26 2023-12-08 Sk电信有限公司 对视频数据进行编码或解码的方法和存储比特流的方法
KR102435881B1 (ko) 2017-05-26 2022-08-24 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
KR102586674B1 (ko) * 2017-07-04 2023-10-06 후아웨이 테크놀러지 컴퍼니 리미티드 경계 강제 파티션에 대한 개선
EP3657789A4 (en) 2017-07-17 2020-12-16 Industry - University Cooperation Foundation Hanyang University METHOD AND DEVICE FOR CODING / DECODING AN IMAGE
JP7224280B2 (ja) * 2017-07-17 2023-02-17 ビー1、インスティテュート、オブ、イメージ、テクノロジー、インコーポレイテッド 画像データ符号化/復号化方法及び装置
CN109510987B (zh) 2017-09-15 2022-12-06 华为技术有限公司 编码树节点划分方式的确定方法、装置及编码设备
US11064217B2 (en) * 2017-09-18 2021-07-13 Intellectual Discovery Co., Ltd. Method and apparatus for coding video using merging candidate list according to block division
US20200275099A1 (en) * 2017-09-19 2020-08-27 Samsung Electronics Co., Ltd. Image encoding method and device, and image decoding method and device
US11616971B2 (en) 2017-09-28 2023-03-28 Samsung Electronics Co., Ltd. Encoding and decoding method and device for determining a decoding order between a left and a right lower blocks
BR122021003525B1 (pt) * 2017-09-28 2022-07-19 Lg Electronics Inc Método de decodificação de vídeo realizado por um dispositivo de decodificação, método de codificação de vídeo realizado por um dispositivo de codificação e mídiade armazenamento legível por computador
EP3682633A1 (en) * 2017-10-09 2020-07-22 Huawei Technologies Co., Ltd. Apparatus and method for image coding with boundary partition processing
CN116320470A (zh) 2017-10-20 2023-06-23 富士通株式会社 动态图像解码装置、动态图像解码方法和存储介质
EP3701719B1 (en) 2017-10-27 2024-02-21 Huawei Technologies Co., Ltd. Methods and apparatuses for signaling partioning information for picture encoding and decoding
WO2019083394A1 (en) * 2017-10-27 2019-05-02 Huawei Technologies Co., Ltd. APPARATUS AND METHOD FOR IMAGE CODING WITH ASYMMETRICAL PARTITIONING
WO2019089874A1 (en) * 2017-11-01 2019-05-09 Vid Scale, Inc. Multi-type tree coding
CN111345039B (zh) * 2017-11-16 2024-04-02 松下电器(美国)知识产权公司 解码装置和解码方法
EP3725083A1 (en) * 2017-12-14 2020-10-21 InterDigital VC Holdings, Inc. Method and apparatus for encoding a picture block
CN111527751A (zh) 2017-12-29 2020-08-11 夏普株式会社 用于在用于视频编码的图片的边界处划分视频块的系统和方法
WO2019131807A1 (en) * 2017-12-29 2019-07-04 Sharp Kabushiki Kaisha Systems and methods for partitioning video blocks for video coding
WO2019139393A1 (ko) * 2018-01-15 2019-07-18 김기백 색차 성분에 관한 화면내 예측 부호화/복호화 방법 및 장치
US10904529B2 (en) 2018-01-19 2021-01-26 Qualcomm Incorporated Quantization group for video coding
US10652571B2 (en) 2018-01-25 2020-05-12 Qualcomm Incorporated Advanced motion vector prediction speedups for video coding
WO2019147403A1 (en) 2018-01-29 2019-08-01 Interdigital Vc Holdings, Inc. Encoding and decoding with refinement of the reconstructed picture
WO2019151268A1 (ja) * 2018-01-30 2019-08-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法および復号方法
US20190246122A1 (en) 2018-02-08 2019-08-08 Qualcomm Incorporated Palette coding for video coding
WO2019169339A1 (en) * 2018-03-01 2019-09-06 Arris Enterprises Llc System and method of motion information storage for video coding and signaling
WO2019172202A1 (ja) * 2018-03-05 2019-09-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置及び符号化方法
US10735730B2 (en) * 2018-03-07 2020-08-04 Tencent America LLC Flexible tree structure
EP3763128A4 (en) * 2018-03-14 2022-04-06 Mediatek Inc. METHOD AND APPARATUS PROVIDING AN OPTIMIZED DIVISION STRUCTURE FOR VIDEO CODING
WO2019188845A1 (en) * 2018-03-27 2019-10-03 Sharp Kabushiki Kaisha Systems and methods for partitioning video blocks for video coding based on threshold values
US10375422B1 (en) * 2018-03-30 2019-08-06 Tencent America LLC Method and apparatus for motion field based tree splitting
WO2019194147A1 (en) 2018-04-02 2019-10-10 Sharp Kabushiki Kaisha Systems and methods for deriving quantization parameters for video blocks in video coding
US10972758B2 (en) * 2018-04-02 2021-04-06 Qualcomm Incorporated Multi-type-tree framework for transform in video coding
CN108513136A (zh) * 2018-04-08 2018-09-07 华中科技大学苏州脑空间信息研究院 海量空间三维图像数据的压缩方法和读取方法
WO2019203610A1 (ko) 2018-04-19 2019-10-24 엘지전자 주식회사 영상의 처리 방법 및 이를 위한 장치
US10609402B2 (en) 2018-05-02 2020-03-31 Tencent America LLC Method and apparatus for prediction and transform for small blocks
WO2019225991A1 (ko) * 2018-05-23 2019-11-28 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN112136327A (zh) * 2018-05-30 2020-12-25 华为技术有限公司 用于边界分割的方法和装置
CA3209197A1 (en) 2018-05-30 2019-12-05 Huawei Technologies Co., Ltd. Multi-type tree depth extension for picture boundary handling
US10645396B2 (en) 2018-06-04 2020-05-05 Tencent America LLC Method and apparatus for implicit transform splitting
WO2019234613A1 (en) * 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Partition tree with partition into 3 sub-blocks by horizontal and vertical splits
EP3591969A1 (en) * 2018-07-02 2020-01-08 InterDigital VC Holdings, Inc. Syntax elements for video encoding or decoding
WO2019236335A1 (en) * 2018-06-07 2019-12-12 Interdigital Vc Holdings, Inc. Syntax elements for video encoding or decoding
EP3809702B1 (en) * 2018-06-15 2023-04-19 LG Electronics, Inc. Method and apparatus for cabac-based entropy coding
EP3808083A1 (en) 2018-06-18 2021-04-21 InterDigital VC Holdings, Inc. Method and apparatus for video encoding and decoding based on asymmetric binary partitioning of image blocks
US10542260B1 (en) 2018-07-02 2020-01-21 Tencent America LLC Method and apparatus for video coding
US10609403B2 (en) 2018-07-09 2020-03-31 Tencent America LLC Method and apparatus for block partition with non-uniform quad split
CN113225564B (zh) 2018-07-12 2022-11-11 华为技术有限公司 视频译码中的边界块分割
US10743029B2 (en) 2018-07-30 2020-08-11 Tencent America LLC Constraints on coding unit partition
AU2018217333A1 (en) * 2018-08-17 2020-03-05 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a transformed block of video samples
MX2021002396A (es) 2018-08-28 2021-05-12 Huawei Tech Co Ltd Metodo y aparato de particion de imagenes.
WO2020043145A1 (en) 2018-08-29 2020-03-05 Huawei Technologies Co., Ltd. Apparatus and method and for boundary partition
CN116208767B (zh) 2018-09-03 2023-11-28 华为技术有限公司 一种对码流进行解码的方法、装置以及存储码流的设备
CA3111340A1 (en) 2018-09-03 2020-03-12 Huawei Technologies Co., Ltd. A video encoder, a video decoder and corresponding methods
US11689720B2 (en) 2018-09-19 2023-06-27 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding image by using boundary processing, and recording medium for storing bitstream
WO2020069632A1 (en) * 2018-10-01 2020-04-09 Huawei Technologies Co., Ltd. A video encoder, a video decoder and corresponding methods
CA3057472A1 (en) * 2018-10-02 2020-04-02 Comcast Cable Communications, Llc Systems, methods, and apparatuses for processing video
JP7337157B2 (ja) * 2018-11-12 2023-09-01 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ビデオエンコーダ、ビデオデコーダおよびピクチャを符号化または復号する方法
US11323748B2 (en) * 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
WO2020164634A1 (en) 2019-02-15 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Restrictions of usage of non-power-two-partition tree in video compression
WO2020182182A1 (en) * 2019-03-12 2020-09-17 Beijing Bytedance Network Technology Co., Ltd. Compound triple tree in video coding
CN113632494B (zh) * 2019-03-22 2023-12-08 华为技术有限公司 用于视频译码的变换单元分割方法
CN113709491B (zh) 2019-04-23 2023-08-01 Oppo广东移动通信有限公司 图像解码方法、解码器以及存储介质
EP3959873A4 (en) * 2019-04-25 2022-08-10 OP Solutions, LLC EFFICIENT CODING OF GLOBAL MOTION VECTORS
JP7395625B2 (ja) * 2019-06-19 2023-12-11 エルジー エレクトロニクス インコーポレイティド クロマブロックの分割条件を制限する画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
JP2022530287A (ja) 2019-06-19 2022-06-28 エルジー エレクトロニクス インコーポレイティド クロマブロックのサイズを制限する画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
US11375243B2 (en) * 2019-07-17 2022-06-28 Tencent America LLC Method and apparatus for video coding
CN114175657B (zh) 2019-07-26 2023-12-26 北京字节跳动网络技术有限公司 基于块尺寸的图片分割模式确定
CN114175649A (zh) * 2019-07-26 2022-03-11 北京字节跳动网络技术有限公司 视频编解码中的可配置编解码树单元尺寸
TWI751657B (zh) * 2019-08-23 2022-01-01 聯發科技股份有限公司 具有分割限制條件之小尺寸編碼單元分割方法和裝置
US11445208B2 (en) * 2019-12-23 2022-09-13 Tencent America LLC Method and apparatus for video coding
CN113286152B (zh) 2020-02-20 2023-05-23 腾讯美国有限责任公司 视频解码方法、装置、计算机设备及存储介质
US20230053579A1 (en) * 2020-02-25 2023-02-23 Nippon Telegraph And Telephone Corporation Encoding method, encoding apparatus, and program
WO2022214055A1 (en) * 2021-04-09 2022-10-13 Beijing Bytedance Network Technology Co., Ltd. Interaction of multiple partitions
US20220337854A1 (en) * 2021-04-16 2022-10-20 Tencent America LLC Interaction between transform partitioning and primary/secondary transform type selection
CN113660490A (zh) * 2021-06-24 2021-11-16 浙江大华技术股份有限公司 编码单元的划分方法、编码方法、电子装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130034157A1 (en) * 2010-04-13 2013-02-07 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Inheritance in sample array multitree subdivision
WO2014120369A1 (en) * 2013-01-30 2014-08-07 Intel Corporation Content adaptive partitioning for prediction and coding for next generation video
RU2528132C2 (ru) * 2010-04-13 2014-09-10 Самсунг Электроникс Ко., Лтд. Способ кодирования видео и устройство кодирования видео с использованием блоков предсказания на основании блоков кодирования, определенных в соответствии с древовидной структурой, и способ декодирования видео и устройство декодирования видео с использованием блоков предсказания на основании блоков кодирования, определенных в соответствии с древовидной структурой
US20140341275A1 (en) * 2011-07-17 2014-11-20 Qualcomm Incorporated Signaling picture size in video coding
EP2559245B1 (en) * 2010-04-13 2015-08-12 GE Video Compression, LLC Video coding using multi-tree sub-divisions of images

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE526223C2 (sv) * 2003-12-10 2005-08-02 Nobel Biocare Ab System och anordning vid framställning och isättning av tandbrouppbyggnad
CN101822064A (zh) * 2007-10-16 2010-09-01 汤姆逊许可公司 用于几何分割超级块的视频编码和解码的方法和设备
KR101487686B1 (ko) 2009-08-14 2015-01-30 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
JP5672678B2 (ja) 2009-08-21 2015-02-18 Tdk株式会社 電子部品及びその製造方法
JP5562346B2 (ja) 2009-10-20 2014-07-30 シャープ株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法および動画像復号方法
KR101457396B1 (ko) 2010-01-14 2014-11-03 삼성전자주식회사 디블로킹 필터링을 이용한 비디오 부호화 방법과 그 장치, 및 디블로킹 필터링을 이용한 비디오 복호화 방법 및 그 장치
US20120170648A1 (en) 2011-01-05 2012-07-05 Qualcomm Incorporated Frame splitting in video coding
US9807424B2 (en) 2011-01-10 2017-10-31 Qualcomm Incorporated Adaptive selection of region size for identification of samples in a transition zone for overlapped block motion compensation
US8548057B2 (en) 2011-01-25 2013-10-01 Microsoft Corporation Video coding redundancy reduction
KR20120090740A (ko) 2011-02-07 2012-08-17 (주)휴맥스 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
WO2012176465A1 (ja) 2011-06-24 2012-12-27 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
US9800870B2 (en) * 2011-09-16 2017-10-24 Qualcomm Incorporated Line buffer reduction for short distance intra-prediction
US9807401B2 (en) * 2011-11-01 2017-10-31 Qualcomm Incorporated Transform unit partitioning for chroma components in video coding
US9883203B2 (en) * 2011-11-18 2018-01-30 Qualcomm Incorporated Adaptive overlapped block motion compensation
US9332259B2 (en) * 2012-01-18 2016-05-03 Qualcomm Incorporated Indication of use of wavefront parallel processing in video coding
CN102595141A (zh) * 2012-03-13 2012-07-18 中国科学院上海应用物理研究所 一种基于四叉树与邻域搜索相结合的分形图像压缩方法
JP2013229674A (ja) 2012-04-24 2013-11-07 Sharp Corp 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、画像符号化プログラム、及び画像復号プログラム
US9667996B2 (en) * 2013-09-26 2017-05-30 Qualcomm Incorporated Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC
US9906813B2 (en) * 2013-10-08 2018-02-27 Hfi Innovation Inc. Method of view synthesis prediction in 3D video coding
FR3029333A1 (fr) 2014-11-27 2016-06-03 Orange Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
WO2016090568A1 (en) 2014-12-10 2016-06-16 Mediatek Singapore Pte. Ltd. Binary tree block partitioning structure
WO2016154963A1 (en) 2015-04-01 2016-10-06 Mediatek Inc. Methods for chroma coding in video codec
US10200719B2 (en) 2015-11-25 2019-02-05 Qualcomm Incorporated Modification of transform coefficients for non-square transform units in video coding
AU2015261734A1 (en) 2015-11-30 2017-06-15 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data according to local luminance intensity
US9989049B2 (en) * 2015-12-11 2018-06-05 Funai Electric Co., Ltd. Microfluidic pump
US10212444B2 (en) 2016-01-15 2019-02-19 Qualcomm Incorporated Multi-type-tree framework for video coding
US11223852B2 (en) 2016-03-21 2022-01-11 Qualcomm Incorporated Coding video data using a two-level multi-type-tree framework

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130034157A1 (en) * 2010-04-13 2013-02-07 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Inheritance in sample array multitree subdivision
RU2528132C2 (ru) * 2010-04-13 2014-09-10 Самсунг Электроникс Ко., Лтд. Способ кодирования видео и устройство кодирования видео с использованием блоков предсказания на основании блоков кодирования, определенных в соответствии с древовидной структурой, и способ декодирования видео и устройство декодирования видео с использованием блоков предсказания на основании блоков кодирования, определенных в соответствии с древовидной структурой
EP2559245B1 (en) * 2010-04-13 2015-08-12 GE Video Compression, LLC Video coding using multi-tree sub-divisions of images
US20140341275A1 (en) * 2011-07-17 2014-11-20 Qualcomm Incorporated Signaling picture size in video coding
WO2014120369A1 (en) * 2013-01-30 2014-08-07 Intel Corporation Content adaptive partitioning for prediction and coding for next generation video

Also Published As

Publication number Publication date
CN108464001B (zh) 2022-06-14
JP7163183B2 (ja) 2022-10-31
CO2018007220A2 (es) 2018-07-19
WO2017123980A1 (en) 2017-07-20
AU2017207452B2 (en) 2020-08-27
US10212444B2 (en) 2019-02-19
US10506246B2 (en) 2019-12-10
SG11201804725YA (en) 2018-07-30
KR20180102569A (ko) 2018-09-17
CL2018001895A1 (es) 2018-10-12
RU2018125511A (ru) 2020-02-17
RU2018125511A3 (ru) 2020-05-21
US20190116373A1 (en) 2019-04-18
SA518391981B1 (ar) 2022-09-19
ZA201804694B (en) 2023-12-20
CA3007664C (en) 2024-04-09
MX2018008587A (es) 2018-08-15
JP2022050614A (ja) 2022-03-30
CN108464001A (zh) 2018-08-28
JP2019506071A (ja) 2019-02-28
MY193686A (en) 2022-10-25
HK1252971A1 (zh) 2019-06-06
AU2017207452A1 (en) 2018-06-28
CA3007664A1 (en) 2017-07-20
US20170208336A1 (en) 2017-07-20
BR112018014435A2 (pt) 2018-12-11
EP3403405A1 (en) 2018-11-21
NZ743291A (en) 2023-12-22
PH12018501244A1 (en) 2019-01-28

Similar Documents

Publication Publication Date Title
RU2727095C2 (ru) Древовидная структура множественного типа кодирования видео
KR102292788B1 (ko) 비디오 코딩을 위한 다중-유형-트리 프레임워크
EP3485644B1 (en) Signaling of quantization information in non-quadtree-only partitioned video coding
JP6950004B2 (ja) ビデオコーディングにおいて変換処理とともに適用されるイントラフィルタ処理
KR20190103167A (ko) 비디오 코딩을 위한 인트라 예측 기법들
KR101773240B1 (ko) 코딩된 블록 플래그 코딩
JP2021520117A (ja) 角度モードで拡張された位置依存型イントラ予測組合せ
KR20180056687A (ko) 팔레트 모드 비디오 코딩에서의 이스케이프 픽셀 시그널링된 값들의 제한
US10972758B2 (en) Multi-type-tree framework for transform in video coding
US20190306506A1 (en) Limitation on the coding tree unit/block for next-generation video coding
RU2785816C2 (ru) Комбинация позиционно-зависимого интра-предсказания, расширенная угловыми режимами
KR20220115974A (ko) 비디오 코딩을 위한 다중 변환 세트 시그널링