Сигнализация размера изображения при кодировании видеосигнала

Иллюстрации

Показать все

Изобретение относится к технологиям кодирования/декодирования видеоданных. Техническим результатом является повышение эффективности кодирования/декодирования видеоданных за счет осуществления сигнализации наименьшего размера единицы кодирования для видеопоследовательности. Предложен способ сигнализирования информации для видеоданных. Способ включает в себя этап, на котором определяют наименьший размер единицы кодирования для видеопоследовательности, причем видеопоследовательность содержит множество изображений. Каждое из данного множества изображений включает в себя соответственное множество единиц кодирования, и каждая из этих единиц кодирования соответствует соответственному узлу соответственной структуры данных квадродерева. Каждая из единиц кодирования включает в себя элементы синтаксиса, определяющие данные предсказания и остаточные данные для множества выборок соответствующей единицы кодирования, при этом наименьший размер единицы кодирования представляет собой размер единицы кодирования, наименьший из множества различных размеров единицы кодирования тех единиц кодирования, которые используются для кодирования упомянутого множества изображений. 8 н. и 28 з.п. ф-лы, 5 ил., 6 табл.

Реферат

[0001] По данной заявке испрашивается приоритет на основании:

предварительной заявки на патент США № 61/508659, поданной 17 июля 2011 г.;

предварительной заявки на патент США № 61/530819, поданной 2 сентября 2011 г.; и

предварительной заявки на патент США № 61/549480, поданной 20 октября 2011 г., каждая из которых, таким образом, включена посредством ссылки в полном объеме.

Область техники, к которой относится изобретение

[0002] Изобретение относится к области кодирования видеосигнала.

Уровень техники

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

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

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

Сущность изобретения

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

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

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

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

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

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

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

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

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

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

Краткое описание чертежей

[0016] Фиг. 1 - блок-схема, демонстрирующая пример системы кодирования и декодирования видеосигнала.

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

[0018] Фиг. 3 - блок-схема операций, демонстрирующая пример метода для кодирования видеоданных согласно методам этого раскрытия.

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

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

Подробное описание

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

[0022] На фиг. 1 показана блок-схема, демонстрирующая один пример системы 10 кодирования и декодирования видеосигнала, которая может реализовать методы этого раскрытия. Как показано на фиг. 1, система 10 включает в себя устройство-источник 12, которое передает кодированный видеосигнал на устройство 16 назначения через канал 15 связи. Устройство-источник 12 и устройство 16 назначения могут содержать любое из разнообразных устройств. В ряде случаев, устройство-источник 12 и устройство 16 назначения могут содержать телефонные трубки устройства беспроводной связи, например так называемые сотовые или спутниковые радиотелефоны. Однако методы этого раскрытия, которые применяются, в общем случае, к кодированию и декодированию, можно применять к небеспроводным устройствам, включающим в себя возможности кодирования и/или декодирования видеосигнала. Устройство-источник 12 и устройство 16 назначения являются лишь примерами устройств кодирования, которые могут поддерживать описанные здесь методы.

[0023] В примере, показанном на фиг. 1, устройство-источник 12 может включать в себя источник 20 видеосигнала, видеокодер 22, модулятор/демодулятор (модем) 23 и передатчик 24. Устройство 16 назначения может включать в себя приемник 26, модем 27, видеодекодер 28 и устройство 30 отображения.

[0024] Источник 20 видеосигнала может содержать устройство захвата видео, например видеокамеру, архив видеозаписей, содержащий ранее захваченное видео, подачу видео от поставщика видеоконтента или другого источника видео. В порядке дополнительной альтернативы, источник 20 видеосигнала может генерировать данные на основе компьютерной графики в качестве исходного видео или комбинацию прямой видеосъемки, архивных видеозаписей и видео, создаваемого на компьютере. В ряде случаев, если источником 20 видеосигнала является видеокамера, устройство-источник 12 и устройство 16 назначения могут формировать так называемые камерофоны или видеотелефоны. В каждом случае, захваченное, предварительно захваченное видео или видео, создаваемое на компьютере, можно кодировать видеокодером 22.

[0025] В некоторых примерах (но не во всех случаях), после того как видеоданные кодируются видеокодером 22, кодированная видеоинформация может затем модулироваться модемом 23, согласно стандарту связи, например, множественного доступа с кодовым разделением (CDMA), мультиплексирования с ортогональным частотным разделением (OFDM) или любого другого стандарта или метода связи. Затем кодированные и модулированные данные можно передавать на устройство 16 назначения через передатчик 24. Модем 23 может включать в себя различные смесители, фильтры, усилители или другие компоненты, предназначенные для модуляции сигнала. Передатчик 24 может включать в себя схемы, предназначенные для передачи данных, включающие в себя усилители, фильтры и одну или более антенн. Приемник 26 устройства 16 назначения принимает информацию по каналу 15, и модем 27 демодулирует информацию. Процесс декодирования видеосигнала, осуществляемый видеодекодером 28, может включать в себя методы, обратные методам кодирования, осуществляемым видеокодером 22.

[0026] Канал 15 связи может содержать любую беспроводную или проводную среду связи, например радиочастотный (РЧ) спектр или одну или более физических линий передачи, или любую комбинацию беспроводных и проводных сред передачи данных. Канал 15 связи может составлять часть сети с коммутацией пакетов, например локальной сети, широкомасштабной сети или глобальной сети, например интернета. Канал 15 связи, в общем случае, представляет любую подходящую среду связи или совокупность разных сред связи, для передачи видеоданных с устройства-источника 12 на устройство 16 назначения. Опять же, фиг. 1 является лишь одним примером, и методы этого раскрытия можно применять к установкам кодирования видеосигнала (например, кодирования видеосигнала или декодирования видеосигнала), которые не обязательно включают в себя какую-либо передачу данных между устройствами кодирования и декодирования. В других примерах, данные можно извлекать из локальной памяти, передавать в режиме потока по сети и т.п. Устройство кодирования может кодировать и сохранять данные в памяти, и/или устройство декодирования может извлекать данные из памяти и декодировать их. Во многих случаях, кодирование и декодирование осуществляется несвязанными устройствами, которые не осуществляют связь друг с другом, но просто кодируют данные в память и/или извлекают данные из памяти и декодируют их. Например, после кодирования видеоданных, видеоданные можно пакетизировать для передачи или хранения. Видеоданные можно собирать в видеофайл, отвечающий любому из различных стандартов, например формату медиафайлов, установленному International Organization for Standardization (ISO), и его расширениям, например AVC.

[0027] В ряде случаев, видеокодер 22 и видеодекодер 28 могут работать, по существу, согласно стандарту сжатия видеосигнала, например перспективному стандарту HEVC. Однако методы этого раскрытия также можно применять в контексте различных других стандартов кодирования видеосигнала, включая некоторые старые стандарты или новые или перспективные стандарты. Хотя это не показано на фиг. 1, в ряде случаев, каждый из видеокодера 22 и видеодекодера 28 может быть объединен с аудиокодером и декодером и может включать в себя надлежащие блоки мультиплексирования/демультиплексирования или другое оборудование и программное обеспечение, для обработки кодирования аудио и видео в общем потоке данных или отдельных потоках данных. Если применимо, блоки мультиплексирования/демультиплексирования могут отвечать протоколу мультиплексора ITU H.223 или другим протоколам, например протоколу пользовательских дейтаграмм (UDP).

[0028] Видеокодер 22 и видеодекодер 28 можно реализовать в виде одного или более микропроцессоров, цифровых сигнальных процессоров (DSP), специализированных интегральных схем (ASIC), вентильных матриц, программируемых пользователем (FPGA), дискретной логики, программного обеспечения, аппаратного обеспечения, программно-аппаратного обеспечения или их комбинаций. Каждый из видеокодера 22 и видеодекодера 28 может быть включен в один или более кодеров или декодеров, любой из которых может входить в состав комбинированного кодера/декодера (кодека) в соответствующем мобильном устройстве, абонентском устройстве, широковещательном устройстве, сервере и т.п. В этом раскрытии, термин кодер подразумевает кодер, декодер или кодек, и все термины кодер, кодер, декодер и кодек подразумевают конкретные машины, предназначенные для кодирования (кодирования и/или декодирования) видеоданных, согласующихся с этим раскрытием. В этом раскрытии, термин “кодирование” может означать любое или оба из кодирования и/или декодирования.

[0029] В ряде случаев, устройство-источник 12 и устройство 16 назначения могут работать, по существу, симметричным образом. Например, каждое из устройства-источника 12 и устройства 16 назначения может включать в себя компоненты кодирования и декодирования видеосигнала. Следовательно, система 10 может поддерживать одностороннюю или двустороннюю передачу видеосигнала между устройством-источником 12 и устройством 16 назначения, например, для потоковой передачи видеосигнала, воспроизведения видео, вещания видео или видеотелефонии.

[0030] Видеокодер 22 и видеодекодер 28 могут осуществлять кодирование с прогнозированием, в котором кодируемый видеоблок сравнивается с одним или более прогностическими кандидатами для идентификации прогностического блока. Видеоблоки могут существовать в отдельных кадрах видео или изображениях (или других независимо задаваемых единицах видео, например срезах). Кадры, срезы, участки кадров, группы изображений или другие структуры данных можно определить как единицы видеоинформации, которые включают в себя видеоблоки. Процесс кодирования с прогнозированием может быть внутренним (в этом случае прогностические данные генерируются на основании соседних внутренних данных в том же кадре или срезе видео) или внешним (в этом случае прогностические данные генерируются на основании видеоданных в предыдущих или последующих кадрах или срезах). Видеокодер 22 и видеодекодер 28 могут поддерживать несколько разных режимов прогностического кодирования. Видеокодер 22 может выбирать желаемый режим кодирования видеосигнала. При кодировании с прогнозированием, после идентификации прогностического блока, различия между текущим кодируемым видеоблоком и прогностическим блоком кодируются как остаточный блок, и синтаксис прогнозирования (например, вектор движения в случае внешнего кодирования или прогностический режим в случае внутреннего кодирования) используется для идентификации прогностического блока. В ряде случаев, остаточный блок можно преобразовывать и квантовать. Методы преобразования могут содержать процесс DCT или принципиально аналогичный процесс, целочисленные преобразования, вейвлетные преобразования или другие типы преобразований. В процессе DCT, в порядке примера, процесс преобразования преобразует набор пиксельных значений (например, остаточные пиксельные значения) в коэффициенты преобразования, которые могут представлять энергию пиксельных значений в частотной области. Видеокодер 22 и видеодекодер 28 могут применять квантование к коэффициентам преобразования. Квантование, в общем случае, предусматривает процесс, который ограничивает количество битов, связанное с любым данным коэффициентом преобразования.

[0031] После преобразования и квантования, видеокодер 22 и видеодекодер 28 могут осуществлять статистическое кодирование на квантованных и преобразованных остаточных видеоблоках. Видеокодер 22 может генерировать элементы синтаксиса как часть процесса кодирования, подлежащего использованию видеодекодером 28 в процессе декодирования. Видеокодер 22 также может подвергать статистическому кодированию элементы синтаксиса и включать элементы синтаксиса в кодированный битовый поток. В целом, статистическое кодирование содержит один или более процессов, которые совместно сжимают последовательность квантованных коэффициентов преобразования и/или другую синтаксическую информацию. Видеокодер 22 и видеодекодер 28 могут осуществлять методы сканирования на квантованных коэффициентах преобразования для задания одного или более сериализованных одномерных векторов коэффициентов из двухмерных видеоблоков. Сканированные коэффициенты можно затем статистически кодировать совместно с любой синтаксической информацией, например, посредством контекстно-адаптивного кодирования с переменной длиной слова (CAVLC), контекстно-адаптивного двоичного арифметического кодирования (CABAC) или другого процесса статистического кодирования.

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

[0033] В настоящее время ведутся работы по созданию нового стандарта кодирования видеосигнала, в данный момент носящего название High Efficiency Video Coding (HEVC). Перспективный стандарт также именуется H.265. Недавний проект стандарта HEVC, именуемый “HEVC Working Draft 3” или “WD3,” описан в документе JCTVC-E603, Wiegand et al., “High efficiency video coding (HEVC) text specification draft 3,” Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 5th Meeting: Geneva, CH, 16-23 March, 2011, который, таким образом, включен посредством ссылки в полном объеме. Работы по стандартизации основаны на модели устройства кодирования видеосигнала, именуемой HEVC Test Model (HM). HM предусматривает несколько возможностей устройств кодирования видеосигнала над устройствами, выполненными с возможностью кодирования видеоданных согласно ITU-T H.264/AVC. Например, в то время как H.264 обеспечивает девять режимов кодирования с внутренним прогнозированием, HM обеспечивает целых тридцать четыре режима кодирования с внутренним прогнозированием. Видеокодер 22 может работать на блоках видеоданных, отвечающих стандарту HEVC и HEVC Test Model.

[0034] Стандарт HEVC включает в себя конкретные термины и размеры блока для блоков видеоданных. В частности, HEVC включает в себя термины наибольшая единица кодирования (LCU), единица кодирования (CU), единица прогнозирования (PU) и единица преобразования (TU). LCU, CU, PU и TU все являются видеоблоками применительно к этому раскрытию. Это раскрытие также использует термин блок в отношении любой из LCU, CU, PU или TU. В HEVC, элементы синтаксиса можно задавать на уровне LCU, уровне CU, уровне PU и уровне TU. В HEVC, LCU означает единицу кодирования наибольшего размера, которая является наибольшей единицей кодирования в отношении количества пикселей, поддерживаемого в данной ситуации. В целом, в HEVC, CU выполняет функцию, аналогичную функции макроблока в H.264, за исключением того, что CU не имеет различия в размере. Таким образом, CU можно разбивать на под-CU, и LCU можно разбивать на меньшие CU. Кроме того, CU можно разбивать на единицы прогнозирования (PU) в целях прогнозирования. PU может представлять всю или часть соответствующей CU и может включать в себя данные для извлечения опорной выборки для PU. PU могут иметь квадратные или прямоугольные формы. TU представляют набор разностных значений пикселей или остатков пикселей, который можно преобразовывать для создания коэффициентов преобразования, которые можно квантовать. Преобразования не являются фиксированными в стандарте HEVC, но задаются согласно размерам единиц преобразования (TU), которые могут иметь такой же размер, как данная CU, или, возможно, меньший.

[0035] В HEVC, LCU может быть связана со структурой данных квадродерева. Кроме того, в некоторых примерах, остаточные выборки, соответствующие CU, могут подразбиваться на меньшие единицы с использованием схемы разбиения квадродерева, которая включает в себя структуру квадродерева, известную как "остаточное квадродерево" (RQT). В целом, структура данных квадродерева включает в себя по одному узлу на CU, где корневой узел может соответствовать LCU. Например, CU0 может соответствовать LCU, и единицы с CU1 по CU4 могут содержать под-CU для LCU. Если CU разбивается на четыре под-CU, то узел, соответствующий CU, включает в себя четыре краевых узла, каждый из которых соответствует одной из под-CU. Каждый узел структуры данных квадродерева может обеспечивать данные синтаксиса для соответствующей CU. Например, узел в квадродереве может включать в себя флаг разбиения в синтаксисе уровня CU для указания, разбивается ли CU, соответствующая узлу, на под-CU. Элементы синтаксиса для CU можно задавать рекурсивно и в зависимости от того, разбивается ли CU на под-CU. Если CU не подлежит дальнейшему разбиению, говорят, что она является краевой CU. В этом раскрытии, четыре под-CU краевой CU также могут именоваться краевыми CU, несмотря на отсутствие явного разбиения исходной краевой CU. Например, если CU размером 16×16 не подлежит дальнейшему разбиению, четыре под-CU размером 8×8 также будут именоваться краевыми CU, хотя CU 16×16 никогда не подвергалась разбиению.

[0036] Краевые узлы или краевые CU в RQT могут соответствовать TU. То есть краевая CU может включать в себя квадродерево, указывающее, как краевая CU делится на TU. Краевая CU может включать в себя одну или более единиц преобразования (TU). Это раскрытие может относиться к квадродереву, указывающему, как LCU делится в качестве квадродерева CU, и квадродереву, указывающему, как краевая CU делится на TU в качестве квадродерева TU. Корневой узел квадродерева TU, в общем случае, соответствует краевой CU, тогда как корневой узел квадродерева CU, в общем случае, соответствует LCU. TU квадродерева TU, не подлежащие разбиению, именуются краевыми TU. Флаг разбиения может указывать, разбивается ли краевая CU на четыре единицы преобразования. Затем каждую единицу преобразования можно дополнительно разбивать на четыре под-TU. Когда TU не подлежит дальнейшему разбиению, она может именоваться краевой TU.

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

[0038] В общем случае, для внутреннего кодирования в HEVC, все краевые TU, принадлежащие краевой CU, совместно используют один и тот же режим внутреннего прогнозирования. Таким образом, один и тот же режим внутреннего прогнозирования, в общем случае, применяется для вычисления прогнозируемых значений для всех TU краевой CU. Для внутреннего кодирования, видеокодер 22 может вычислять остаточное значение для каждой краевой TU с использованием режима внутреннего прогнозирования как разность между частью прогностических значений, соответствующих TU, и исходным блоком. Остаточное значение можно преобразовывать, квантовать и сканировать. Для внешнего кодирования в HEVC, видеокодер 22 может осуществлять прогнозирование на уровне PU и может вычислять остаток для каждого PU. Остаточные значения, соответствующие краевой CU можно преобразовывать, квантовать и сканировать. Для внешнего кодирования, краевая TU может быть больше или меньше, чем PU. Для внутреннего кодирования, PU может быть совмещена с соответствующей краевой TU. В некоторых примерах, максимальный размер краевой TU может совпадать с размером соответствующей краевой CU.

[0039] Как описано выше, стандарт HEVC допускает преобразования согласно единицам преобразования (TU), которые могут различаться для разных CU. Размер TU обычно назначается на основании размера PU в данной CU, заданной для разделенной LCU, хотя это не всегда может иметь место. TU обычно имеют такой же размер, как PU, или меньше. Разностные значения пикселей, связанные с TU, можно преобразовывать для создания коэффициентов преобразования, которые можно квантовать. Кроме того, квантование можно применять согласно параметру квантования (QP), заданному на уровне LCU. Соответственно, один и тот же уровень квантования можно применять ко всем коэффициентам преобразования в TU, связанных с разными PU для CU в LCU. Однако вместо того чтобы сигнализировать сам QP, изменение или разность (т.е. дельта) QP можно сигнализировать с LCU для указания изменения QP по сравнению с предыдущей LCU.

[0040] Видеокодер 22 может осуществлять кодирование видеосигнала для изображений, кадров, срезов, участков кадров, групп изображений или других видеоданных с использованием LCU, CU, PU и TU, заданных согласно стандарту HEVC в качестве единиц информации кодирования видеосигнала.

[0041] Например, видеокодер 22 может кодировать одно или более изображений видеоданных, содержащих наибольшие единицы кодирования (LCU), где LCU разделены на набор единиц кодирования (CU) размером с блок согласно схеме разбиения квадродерева. Видеокодер 22 и видеодекодер 28 могут использовать CU, имеющие изменяющиеся размеры, согласующиеся со стандартом HEVC. Например, видеокодер 22 может использовать возможные размеры CU 64×64, 32×32, 16×16, 8×8 и 4×4 пикселя. Для данной видеопоследовательности, видеокодер 22 может использовать максимальный размер CU 64×64 пикселя для всех изображений в видеопоследовательности, тогда как некоторые изображения в видеопоследовательности можно кодировать с использованием наименьшего возможного размера CU 4×4 пикселя, а другие изображения в видеопоследовательности можно кодировать с использованием размера наименьшей CU 8×8 пикселей.

[0042] Как описано выше, CU, упомянутая в этом раскрытии, может означать наибольшую единицу кодирования изображения или под-CU в LCU. Видеокодер 22 может разбивать LCU на под-CU, и каждая под-CU может быть дополнительно разбита на под-CU. Видеокодер 22 может включать в себя данные синтаксиса для битового потока, заданного для указания максимальной кратности разбиения LCU. Кратность разбиения LCU может именоваться глубиной CU.

[0043] Кроме того, видеокодер 22 также может задавать наименьшую единицу кодирования (SCU) для каждого изображения в видеопоследовательности. SCU может означать размер наименьшей единицы кодирования, используемый для кодирования изображения, когда доступно несколько возможных размеров CU. Например, видеокодер 22 может быть выполнен с возможностью использовать один из возможных размеров CU 64×64, 32×32, 16×16, 8×8 и 4×4 пикселя для кодирования изображений в видеопоследовательности. В одном примере, все изображения в видеопоследовательности можно кодировать с использованием одного и того же размера SCU, например 4×4 пикселя или 8×8 пикселей. В других примерах, некоторые изображения в видеопоследовательности можно кодировать с использованием размера SCU 4×4 пикселя, а другие изображения в видеопоследовательности можно кодировать с использованием размера SCU 8×8 пикселей. Таким образом, в этом примере, изображения в видеопоследовательности могут иметь соответствующие SCU 4×4 пикселя и 8×8 пикселей, т.е. размер SCU может изменяться от кадра к кадру. Видеокодер 22 может определять минимальный размер SCU или максимальный размер SCU для видеопоследовательности. В этом примере, минимальный размер SCU будет 4×4, а максимальный размер SCU будет 8×8.

[0044] Видеокодер 22 может включать в себя различные уровни данных синтаксиса в битовом потоке, которые задают размеры LCU, CU, PU, TU и SCU. Например, видеокодер 22 может сигнализировать размер LCU с использованием синтаксиса уровня последовательностей.

[0045] Поми