Упрощенное кодирование глубины с модифицированным внутрикадровым кодированием для кодирования трехмерных видеоданных

Иллюстрации

Показать все

Изобретение относится к вычислительной технике. Технический результат заключается в уменьшении количества и сложности вычислений. Осуществляемый посредством компьютера способ кодирования трехмерных видеоданных, в котором осуществляют упрощенное кодирование глубины путем выполнения модифицированного внутрикадрового DC-кодирования или модифицированного внутрикадрового планарного кодирования по меньшей мере одного элемента кодирования, связанного с множеством пикселей, и по меньшей мере одной карты глубины, и формируют значение предсказания для указанного по меньшей мере одного элемента кодирования на основе, по меньшей мере частично, пиксельных значений снаружи элемента кодирования на карте глубины без вычисления значений предсказания для отдельных пикселей внутри элемента кодирования, причем модифицированное внутрикадровое DC-кодирование для формирования значения предсказания включает выполнение подвыборки из левого столбца пикселей в левом элементе кодирования, или из верхней строки пикселей в верхнем элементе кодирования, или в обоих элементах, при этом используют по меньшей мере одно и менее чем все пиксельные значения из левого столбца, или по меньшей мере одно и менее чем все пиксельные значения из верхней строки, или и то и другое. 3 н. и 15 з.п. ф-лы, 14 ил., 1 табл.

Реферат

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

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

Высокоэффективное кодирование видеоданных (HEVC-кодирование) представляет собой самый последний стандарт сжатия видеоданных, который разрабатывается Объединенной совместной командой по кодированию видеоданных (командой JCT-VC), сформированной Экспертной группой по вопросам движущегося изображения (группой MPEG), связанной с Международной организацией по стандартизации/Международной электротехнической комиссией (ISO/TEC), и Экспертной группой по кодированию видеоданных (группой VCEG), связанной с сектором телекоммуникаций Международного союза телекоммуникаций (ITU-T). Аналогично предшествующим стандартам кодирования видеоданных, HEVC-кодирование включает в себя основные функциональные модули, такие как внутрикадровое/межкадровое предсказание, преобразование, квантование, внутрицикловое фильтрование и энтропийное кодирование. Кодер-декодер для HEVC-кодирования осуществляет обработку и сжатие изображения, разбивая его на множественные неперекрывающиеся блоки, которые обозначены как элементы кодирования (CU-элементы). Элемент кодирования содержит квадратный блок пикселей сигнала яркости и два соответствующих блока пикселей сигнала цветности. Размер элемента кодирования может быть сконфигурирован таким образом, чтобы составлять 8×8, 16×16, 32×32 или 64×64 в яркостной составляющей.

В настоящее время, основываясь на стандарте HEVC-кодирования, Объединенная совместная команда по кодированию трехмерных видеоданных (команда JCT-3V), сформированная Экспертной группой по вопросам движущегося изображения (группой MPEG), связанной с Международной организацией по стандартизации/Международной электротехнической комиссией (ISO/IEC), и Экспертная группа по кодированию видеоданных (группой VCEG), связанная с сектором телекоммуникаций Международного союза телекоммуникаций (ITU-T) проводят изучение распространения HEVC-кодирования на кодирование трехмерных видеоданных (трехмерное HEVC-кодирование). В трехмерном HEVC-кодировании, для представления трехмерного видеоконтента (информационно значимого содержимого видеоданных) используется концепция кодирования видеоданных с множественными видами плюс глубины (MVD-кодирования), в которой ограниченное количество текстурных видов и ассоциативно связанных с ними карт глубины кодируется и мультиплексируется в битовый поток.

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

Описываемый здесь материал проиллюстрирован, в порядке примера, а не в порядке ограничения (объема изобретения), на прилагаемых фигурах. Для простоты и ясности иллюстрации, элементы, проиллюстрированные на фигурах, не обязательно вычерчены в масштабе. Например, размеры некоторых элементов могут быть для ясности преувеличены по отношению к другим элементам. Кроме того, там, где это сочтено уместным, ссылочные позиции были повторены на разных фигурах для того, чтобы указывать корреспондирующие друг другу или аналогичные элементы. На фигурах:

Фиг. 1 представляет собой иллюстративную схему системы для трехмерного видеоконтента;

Фиг. 2 представляет собой иллюстративную схему системы кодирования видеоданных;

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

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

Фиг. 5 представляет собой иллюстративную схему элементов кодирования, предназначенную для объяснения внутрикадрового DC-кодирования;

Фиг. 6 представляет собой иллюстративную схему элементов кодирования, предназначенную для объяснения внутрикадрового планарного кодирования;

Фиг. 7 представляет собой иллюстративную схему элементов кодирования, предназначенную для объяснения внутрикадрового DC-кодирования в соответствии с изложенными здесь вариантами осуществления изобретения;

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

На Фиг. 9 проиллюстрирована схема системы кодирования видеоданных в работе;

Фиг. 10 представляет собой иллюстративную схему приводимой в качестве примера системы;

Фиг. 11 представляет собой иллюстративную схему другой приводимой в качестве примера системы;

На Фиг. 12 проиллюстрировано приводимое в качестве примера устройство, все устроенное в соответствии с, по меньшей мере, некоторыми вариантами осуществления настоящего раскрываемого изобретения;

Фиг. 13A представляет собой иллюстративную схему первой части системы кодирования видеоданных; и

Фиг. 13B представляет собой иллюстративную схему второй части системы кодирования видеоданных, показанной на Фиг. 13A.

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

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

Хотя в нижеследующем описании изложены различные варианты осуществления изобретения, которые могут быть продемонстрированы в таких архитектурах, как, например, архитектура “внутрикристальная система” (SoC), варианты осуществления описанных здесь технологий и/или компоновок, не ограничены конкретными архитектурами и/или вычислительным системам и могут быть осуществлена посредством любой архитектуры и/или вычислительной системы для аналогичных целей. Например, описанные здесь технологии и/или компоновки могут быть реализованы посредством различных архитектур, использующих, например, множественные кристаллы интегральных схем ((IC)) и/или пакетов интегральных схем, и/или различные вычислительные устройства и/или потребительские электронные приборы (СЕ-приборы), такие как телевизионные абонентские приставки, “смартфоны” (мобильные телефоны, наделенные компьютерными возможностями) и так далее. Кроме того, хотя в нижеследующем описании могут быть изложены многочисленные конкретные подробности, такие как реализации логики, типы и взаимосвязи компонентов системы, варианты выбора разделения/интегрирования логики и так далее, заявленный предмет изобретения может быть осуществлен без таких конкретных подробностей. В других случаях, некоторые материалы, такие как, например, структуры управляющей логики и полные программные последовательности команды, могут не быть показаны подробно для того, чтобы не затруднять понимание раскрываемого здесь материала.

Раскрываемые здесь материал может быть реализован посредством аппаратного обеспечения, программно-аппаратного обеспечения, программного обеспечения, или любого их сочетания. Раскрываемые здесь материал может также быть реализован как команды, хранящиеся на машиночитаемом носителе информации, которые могут быть считаны и исполнены одним или более процессорами. Машиночитаемый носитель информации может включать в себя любой носитель и/или механизм для хранения или передачи информации в форме, пригодной для чтения машиной (например, вычислительным устройством). Например, машиночитаемый носитель информации может включать в себя постоянное запоминающее устройство (ПЗУ); оперативное запоминающее устройство (ОЗУ); носители информации на магнитных дисках; оптические носители информации; устройства флэш-памяти; электрические, оптические, акустические или другие формы распространяемых сигналов (например, несущие волны, инфракрасные сигналы, цифровые сигналы и так далее), и другое. В другой разновидности, с любым из упомянутых выше примеров или других примеров может использоваться некоторый некратковременно существующий предмет, такой как некратковременный считываемый компьютером носитель информации, за исключением того, что он не включает в себя кратковременный сигнал как таковой. Он включает в себя те элементы, отличные от сигнала как такового, которые могут хранить данные временно, “кратковременным” образом, такие как оперативное запоминающее устройство и так далее.

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

Термин “устройство кодирования” в том значении, в котором оно здесь используется, может относиться к кодеру и/или декодеру. Аналогичным образом, термин “кодирование”, в том значении, в котором он здесь используется, может относиться к выполнению кодирования видеоданных посредством кодера и/или выполнению декодирования видеоданных посредством декодера. Например, кодер видеоданных и декодер видеоданных могут оба представлять собой примеры устройств кодирования, способных к кодированию видеоданных. Кроме того, кодер может иметь компоненты для декодирования, а декодер может иметь компоненты для кодирования. В дополнение к этому, термин “кодек”, в том значении, в котором он здесь используется, может относиться к любому процессу, программе или набору операций, таким как, например, любая комбинация программного обеспечения, программно-аппаратного обеспечения и/или аппаратного обеспечения, которая может реализовать кодер и/или декодер. Кроме того, выражение “данные о движении”, в том значении, в котором оно здесь используется, может относиться к любому типу данных, связанных с межкадровым предсказанием, включающих в себя один или более векторов движения, опорных индексов и/или направления межкадрового движения, но не ограничиваясь ими.

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

Как было отмечено выше, в трехмерном высокоэффективном кодировании видеоданных (трехмерном HEVC-кодировании) для представления трехмерного видеоконтента используется кодирование видеоданных с множественными видами плюс глубины (MVD-кодирование), в котором ограниченное количество текстурных видов и ассоциативно связанных с ними карт глубины кодируется и мультиплексируется в битовый поток. HEVC-кодирование предусматривает разделение изображений на элементы кодирования размером 8×8, 16×16, 32×32 или 64×64 (измеряемом в пикселях). Упрощенное кодирование глубины (SDC-кодирование) для внутрикадрового кодирования элементов кодирования включает в себя, по меньшей мере, три различных типа режимов кодирования: Intra_DC (Внутрикадровое кодирование глубины) (где DC обозначает кодирование глубины), Intra_Planar (Внутрикадровое планарное кодирование) и Intra_DMM (Внутрикадровый_DMM) (где DMM обозначает Режим моделирования глубины). В режиме Intra_DC, для предсказания значений пикселей в пределах текущего элемента кодирования используются значения соседних пикселей на соседних элементах кодирования по боковым сторонам от текущего элемента кодирования. При планарном предсказании, для предсказания значений в пределах текущего элемента кодирования могут использоваться соседние пиксели, как по боковым сторонам от текущего элемента кодирования, так и снаружи от углов текущего элемента кодирования. В DMM-режиме элемент кодирования разделяется линией от края до края элемента кодирования на “веджлеты” (или, иначе говоря, на контуры, в случае, когда линии не являются прямыми), и каждый “веджлет” кодируется отдельно. Как для кодирования в режиме intra_DC, так и для кодирования в режиме intra_planar при SDC-подходе (Упрощенном кодировании глубины), используемые алгоритмы являются сложными, а вычисление тяжелым, что приводит в результате к более медленному кодированию и/или тяжелым вычислительным нагрузкам на аппаратные средства, выполняющие вычисления. Это приводит в результате к более высокой потребляемой мощности для выполнения кодирования. Ниже приводятся подробности для уменьшения потребляемой мощности для того, чтобы обеспечить более высокую производительность аппаратных средств и/или сделать возможным эффективное кодирование посредством аппаратных средств с относительно низкой производительностью. Это достигается посредством модификации кодирования в режиме intra_DC и/или кодирования в режиме intra_planar таким образом, чтобы предоставлять значение предсказания на основе элемента кодирования, а не на основе пикселя, что объясняется ниже. Это может привести в результате к некоторому компромиссу с небольшим снижением точности, которое может быть неразличимым для пользователей, для значительного уменьшения потребляемой мощности.

Следует понимать, что обозначения кодирования в режиме intra с чертой снизу и/или дефисом или без них (intra_DC против, например, intra-DC или intra DC) относятся все к одному и тому же процессу, и в настоящем раскрытии для них не предполагается никакого различия в отношении этого процесса.

Теперь дадим описание более подробно и со ссылкой на Фиг. 1, на которой система (100) для видеоконтента использует для представления трехмерного видеоконтента трехмерное HEVC-кодирование видеоданных посредством обработки Видеоданных с множественными видами плюс глубины (MVD-обработки). В такого рода системе, кодер или сторона (102) отправителя могут принимать входные данные (104), включающие в себя необработанные данные изображения, поступающие от устройств ввода видеоданных, таких как видеокамеры, в качестве одного неограничивающего примера. Необработанные данные изображения могут включать в себя текстурные виды (106), такие как те, что предоставляются в формате RGB (системы цветопередачи “красный-зеленый-синий”) или других известных форматах, которые предоставляют информацию о яркости и цветности на попиксельной основе, и обычно на дискретной основе, такой как 4:2:0 для HEVC-кодирования, хотя также могут использоваться и другие соотношения взятия выборок. Текстурные виды (106) могут включать в себя множественные изображения (или кадры) снятые из множественных положений камеры в некоторый отдельно взятый момент времени. Входные данные (104) могут также включать в себя карты (108) глубины, где каждая карта (108) глубины корреспондирует текстурному виду и включает в себя данные на дискретной попиксельной основе, которые указывают расстояние от объектива камеры до объекта на изображении и измеренное по шкале, такой как от 1 до 255. В одной разновидности, пиксельные значения на карте глубины представляют собой значения яркости или значения по серой шкале, которые являются тем более темными по мере того как изображение простирается дальше от объектива камеры. Во входных данных также могут предоставляться параметры (110) камеры для того, чтобы сообщить положение камеры или угол (например, градуировку и смещение), равно как и другие данные для множественных видов для одного и того же момента времени.

Входные данные может быть предоставлены системе (200) или (1300) кодирования видеоданных, которая включает в себя кодер или другое кодирующее устройство (114) для того, чтобы сжать и упаковать текстурные виды, карты глубины, параметры камеры и другие данные в битовый поток (116) для передачи декодеру (118) в устройстве (120) на стороне приемника. Декодер (118) осуществляет демультиплексирование и разуплотнение данных, и предоставляет текстурные виды (124), карты (126) глубины и параметры (128) камеры в модуль (122) предсказания - синтеза для того, чтобы создать недостающие виды или карты глубины, заполнить имеющиеся виды и карты глубины недостающей пиксельной информацией и/или переписать пиксельную информацию посредством предсказанной информации вида и/или карт глубины. Эти операции могут быть выполнены с использованием параметров камеры, переданных в битовом потоке или полученных иным образом. Как только изображения сконфигурированы, эти изображения могут быть отображены на трехмерном автостереоскопическом устройстве (130) отображения посредством отображающего экрана, так что, в одной приводимой в качестве примера разновидности, изображение изменяется в зависимости от угла до пользователя (134), смотрящего на отображающий экран, и перемещения этого пользователя. Следует понимать, что некоторые или все компоненты (132) для вывода данных и постобработки могут рассматриваться или могут не рассматриваться как часть декодера (118).

Согласно Фигурам 13A-13B, с системой (100) для видеоконтента может использоваться система (1300) кодирования видеоданных. Как было упомянуто выше, в качестве стандарта сжатия данных может быть использован стандарт HEVC, такой как тот, что описан в ITU-T Н.265 и ISO. / IEC 23008 - 2 MPEG - Н, Часть 2 (4/2013) (смотри, веб-сайт ITU - Т (сектора телекоммуникаций Международного союза телекоммуникаций) www.itu.int/rec/T-REC-H.265-201304-I), и предоставлены Объединенной совместной командой по кодированию видеоданных (командой JCT - VC), сформированной Экспертной группой по вопросам движущегося изображения (группой MPEG), связанной с Международной организацией по стандартизации / Международной электротехнической комиссией (ISO/IEC), и Экспертной группой по кодированию видеоданных (группой VCEG), связанной с сектором телекоммуникаций Международного союза телекоммуникаций (ITU - Т). Аналогично предшествующим стандартам кодирования видеоданных, HEVC-кодирование включает в себя основные функциональные модули, такие как внутрикадровое/межкадровое предсказание, преобразование, квантование, внутрицикловое фильтрование и энтропийное кодирование, так же как и другие процессы кодека, и кодер может включать в себя контур предсказания для того, чтобы восстанавливать изображения, аналогично тому, или так же как то, что выполняется декодером для того, чтобы использовать восстановленные изображения в качестве опорных изображений для предсказания других изображений и формирования разностей предсказания, которые подлежат передаче декодеру.

В частности, для одного варианта реализации система (1300) кодирования видеоданных может быть организована, главным образом, по видам. Каждый вид может иметь текстурный кадр и корреспондирующую ему карту глубины, и для каждого вида в некоторый отдельно взятый момент времени. Здесь описываются только два вида, но их может быть больше, таких как, согласно одному примеру, пять-десять видов, связанных с некоторым отдельно взятым моментом времени. Вид 0 может быть независимым видом, в то время как вид 1 и другие виды представляют зависимые виды. Таким образом, вид 1 может быть закодирован в двух измерениях, в то время как другие виды могут быть отдельно закодированы в трех измерениях. Видеоданные или данные изображения для вида разделены на текстурные видеоданные и видеоданные карты глубины. Видеоданные карты глубины для вида 0, например, предоставляются кодеру (1306) видеоданных глубины, в то время как текстурные данные предоставляются кодеру (1308) текстурных видеоданных. Аналогичным образом, видеоданные карты глубины для вида 1 могут быть предоставлены кодеру (1302) видеоданных глубины, в то время как текстурные видеоданные могут быть предоставлены кодеру (1304). Карты глубины, так же как и текстурные изображения, воссоздаются и сжимаются, предоставляются кодеру (1310) и помещаются в выходной битовый поток (1312). Выходной битовый поток (1312) принимается на стороне декодера энтропийным декодером (1314), и процесс, описанный сверху, выполняется в обратном направлении для того, чтобы разуплотнить данные карт глубины и текстурные данные для видов 1 и 2. Это дает в результате восстановленные трехмерные выходные видеоданные или кадр (или картинку или изображение) (1330) для вида 1, получаемый от декодера (1316) карты глубины и декодера (1318) текстурных видеоданных. Вид 0 может быть аналогичным образом декодирован в декодере (1320) видеоданных глубины и декодере (1322) текстурных видеоданных, что дает в результате выходной видеокадр (1340) для вида 0.

Каждый из кодеров и декодеров имеет одни и те же или аналогичные основные компоненты с функциональными различиями, объясненными более подробно в отношении системы (200) кодирования видеоданных. Здесь, кодер (1302) системы (1300) может иметь модуль (1324) преобразования/квантования, который предоставляет сжатые с потерями данные в битовый поток. Контур восстановления кадра или карты глубины для предсказания и восстановления кадров или карт глубины может иметь модуль (1326) процессов, обратных квантованию/преобразованию, внутрицикловой фильтр (1326), модуль (1337) межкадрового предсказания, модуль (1328) внутрикадрового предсказания, и средство (1329) управления режимом. В каждом из упомянутых кодеров и декодеров аналогичные компоненты пронумерованы аналогичным образом (например, модуль (1337) внутрикадрового предсказания для вида 1 может иметь, по меньшей мере, некоторые функции, аналогичные модулю (1537) внутрикадрового предсказания для вида 0, и так далее).

Обратимся теперь к Фиг. 2, на которой объяснена более детализированная система (200) кодирования видеоданных. Система (200) может иметь “двумерную” сторону для основного или независимого кадра (который может также представлять собой вид 0 для системы (1300)), которая отличается от “трехмерной” стороны, которая принимает зависимые виды, данные карт глубины и параметры камеры, объясненные более подробно ниже. Стандарт HEVC указывает, что изображение может быть разделено на неперекрывающиеся Наибольшие элементы кодирования (LCU-элементы), и каждый Наибольшие элементы кодирования может затем быть разделен на Элементы кодирования (CU-элементы), которые могут принимать форму прямоугольных блоков, имеющих переменные размеры. Настоящее раскрываемое изобретение направлено на системы, которые используют квадратные элементы кодирования. В пределах каждого Наибольшего элемента кодирования схема разбиения, основанная на дереве квадрантов, указывает структуру разделения на элементы кодирования. Стандарт HEVC также определяет элементы предсказания (PU-элементы) и элементы преобразования (TU-элементы), которые указывают то, как некоторый данный элемент кодирования должен быть разделен, соответственно, для целей предсказания и преобразования. Текстурный элемент кодирования обычно включает в себя один блок кодирования яркости (СВ-блок) и две блока кодирования цветности вместе со связанным с ними синтаксисом, и элемент предсказания может быть далее разделен на Блоки предсказания (РВ-блоки), имеющие размер в диапазоне: от 64×64 отсчета с уменьшением до 4×4 отсчета. Термин “блок”, в том значении, в котором он здесь используется, может относиться к любому разделению или подразделению видеоизображения. Например, блок может относиться к видеоданным, соответствующим Наибольшему элементу кодирования, Элементу предсказания, Блоку предсказания, Элементу преобразования или Элементу кодирования.

Трехмерное HEVC-кодирование с MVD-кодированием может быть сконфигурировано таким образом, чтобы позволять различные типы устройств отображения. Таким образом, в то время как трехмерный декодер может полностью использовать данные глубины в битовом потоке, декодер стерео и видеоданных и двумерный декодер могут по-прежнему использовать битовый поток из трехмерного кодера, извлекая из битового потока ненужные данные, такие как карты глубины. Для того, чтобы обеспечить это свойство, независимый или основной вид кодируется с использованием двумерного (или обычного) кодирования видеоданных. Для целей объяснения отметим, что в системе (200) кодирования видеоданных показаны некоторые из компонентов, используемых для двумерного или обычного кодирования, и другой набор компонентов для трехмерного кодирования. Следует, однако, понимать, что один и тот же компонент или модуль может быть использован для выполнения аналогичных задач для кодирования как двумерных, так и трехмерных видеоданных.

Как проиллюстрировано на чертеже, система (200) кодирования видеоданных может включать в себя кодер (202) и декодер (203). Для обработки независимых изображений (201) модуль (204) разделения на элементы кодирования сначала разделяет кадры или изображения (201) на блоки. Для этого примера, HEVC-кодирование сжимает изображение или текстурный вид, разбивая его на множественные неперекрывающиеся блоки, которые обозначены как Элементы кодирования (CU-элементы). Элемент кодирования текстурного вида может содержать квадратный блок 2N×2N пикселей яркости и два соответствующих блока пикселей цветности. Размер элемента кодирования может быть конфигурирован таким образом, чтобы составлять 8×8, 16×16, 32×32 или 64×64 в яркостной компоненте.

Кодер (202) может затем закодировать входные изображения (201), используя контур кодирования, который может включать в себя модуль (206) преобразования и квантования, модуль (208) процесса, обратного квантованию, и обратного преобразования, и, в зависимости от решения о режиме, принимаемого кодером (202) посредством модуля (217) решения о режиме, в наличии имеется либо первый тракт, включающий в себя модуль (210) внутрикадрового предсказания, либо второй тракт, включающий в себя фильтрующий модуль (212) для устранения блочности, фильтрующий модуль (214) адаптивного смещения отсчетов, и модуль (216) межкадрового предсказания, который может включать в себя оценку движения и компенсацию движения. После преобразования и квантования входных изображений (201) кодер (202) может осуществлять энтропийное кодирование сжатых изображений и разности предсказания, используя модуль (218) энтропийного кодирования. Наконец, кодер (202) может использовать мультиплексор (219) для добавления пакетов данных независимого кадра в битовый поток (220), который включает в себя закодированные видеоданные.

Декодер (203) может принимать закодированные видеоданные, и, в частности, текстурные данные, в форме битового потока (220). Сначала, текстурные данные и данные карт глубины могут быть отделены от двумерных данных двумерных карт посредством демультиплексора или de-mutiplex (221). Для двумерного декодирования, декодер может иметь извлекатель (223) данных глубины, который отфильтровывает данные глубины от потока (220) данных и предоставляет остающиеся данные модулю (222) энтропийного декодирования и модулю (224) процесса, обратного квантованию, и обратного преобразования. Полученные в результате этого данные изображений могут быть пропущены через контур предсказания при декодировании, использующий, в зависимости от режима кодирования, указанного в синтаксисе битового потока (220) и реализуемого посредством модуля (227) синтаксического управления, либо первый тракт, включающий в себя модуль (226) внутрикадрового предсказания, либо второй тракт, включающий в себя фильтрующий модуль (228) для устранения блочности, фильтрующий модуль (230) адаптивного смещения отсчетов и модуль (232) межкадрового предсказания. Декодер (203) может затем использовать модуль (234) сборки элементов кодирования для того, чтобы сгенерировать декодированные выходные изображения, которые могут быть представлены пользователю посредством, например, устройства отображения.

Тестовая модель 3 трехмерного HEVC-кодирования из JCT - 3V - С1005, Женева, Швейцария, январь 2013 г., включенная во всей своей полноте в состав этого описания, предусматривает протокол для кодирования битового потока трехмерных видеоданных и отображения трехмерных изображений в формате, аналогичном кодированию видеоданных с множественными видами плюс глубины (MVD-кодированию). Для выполнения кодирования трехмерных видеоданных, в порядке одной приводимой в качестве примера разновидности, каждый текстурный вид (в дальнейшем именуемый просто как вид) может иметь корреспондирующую ему карту глубины для отображения изображений. Виды и карты глубины могут быть организованы в элементы доступа, где каждый элемент доступа представляет все виды и корреспондирующие им карты глубины для некоторого отдельно взятого момента времени. Каждый вид в элементе доступа может предоставлять изображение для отличного от других положения камеры, и множественные элементы доступа могут содержать виды, снятые из одной и той же группы положений камеры, хотя в различные моменты времени. Эти виды могут быть закодированы в одном и том же порядке для множества или всех элементов доступа, хотя эти виды могут быть, или могут не быть, закодированы в порядке положений камеры, например, слева направо. Другими словами, закодированный вид 1 в элементе доступа может всегда представлять собой центральный вид, следующий вид, вид 2, - самый крайний вид в левом направлении, и следующий вид, вид 3, может представлять собой самый крайний вид в правом направлении, и так далее. Возможно много примеров.

Согласно одному подходу, первый вид, закодированный для каждого элемента доступа, может быть, или может не быть, независимым видом. Независимый вид кодируется с использованием, например, двумерной системы кодирования, как это описано выше. Независимые виды могут затем использоваться в качестве опорных видов для кодирования зависимых видов в пределах тех же самых или других элементов доступа и карты глубины для одного или более других видов. Согласно одному подходу, элементы доступа могут быть закодированы аналогично кодированию “слайсов” “I”, “P”, “B” в двумерном кодировании. Другими словами, один элемент доступа может именоваться как элемент доступа с мгновенным обновлением при декодировании (IDR-элемент доступа), в котором видеоизображения и карты глубины в этом коде доступа не используют никаких опорных видов или карт глубины вне этого IDR-элемента доступа. Такого рода элемент доступа может представлять собой элемент с произвольным доступом или элемент с полностью произвольным доступом (CRA-элемент). Хотя IDR-элемент доступа может быть ограничен внутрикадровым кодированием для всех его видов и карт глубины, в одной разновидности все-таки может выполняться межкадровое кодирование между видами и картами глубины в пределах этого IDR-элемента доступа.

В дополнение к независимым видам, для трехмерного кодирования с множественными видами, система (200) может принимать необработанные данные изображения, которые могут включить в себя зависимые виды (205), предоставляющие множественные виды для некоторого отдельно взятого момента времени, так же как и параметры (207) камеры, предоставляющие информацию о положении камеры для различия между множественными видами в элементе доступа. Параметры камеры также могут быть предоставлены в средство (254) управления решением о режиме, так же, как и в модули (252) и (256) внутрикадрового и межкадрового предсказаний, с той целью, чтобы эти параметры использовались для восстановления, на стороне декодера или кодера, текстурных изображений с использованием предсказания вектора движения между видами и предсказания синтеза вида на поблоковой основе.

Как и в случае двумерного кодирования, сторона кодирования глубины в системе (200) может включать в себя модуль (240) разделения на элементы кодирования, предназначенный для разделения зависимых видов и карт глубины на элементы кодирования. Это может быть скоординировано с разделением независимых видов с целью обеспечения того, чтобы независимый вид, зависимые виды и карты глубины для области одного и того же элемента кодирования на изображении имели один и тот же размер. Эта сторона может включать в себя модуль (242) преобразования и квантования, так же как и контур предсказания и фильтрования с модулем (246) процессов, обратных преобразованию - квантованию, фильтром (248) устранения блочности и фильтром (250) адаптивного смещения отсчетов, который соединен средствами связи с модулем (252) межкадрового предсказания, который в свою очередь поддерживает связь с модулем (254) решения о режиме. В качестве альтернативы, с модулем (254) решения о режиме также поддерживает связь модуль (256) внутрикадрового предсказания. Модуль (254) решения о режиме принимает от стороны двумерного кодирования в кодере (202) данные вида и карты глубины, параметры камеры, так же как и восстановленные независимые виды. Модуль (254) решения о режиме может предоставить опорные кадры, данные компенсации движения, данные о различии (движении между видами в элементе доступа), разностях предсказания, и так далее назад в модуль (242) преобразования - квантования для энтропийного кодирования (244) наряду с параметрами камеры, и затем обеспечивает помещение их мультиплексором (219) в битовый поток наряду с двумерными независимыми кадрами. В качестве альтернативы, предусматривается обход (257) для избежания преобразования и квантования перед энтропийным кодированием, который используется при некоторых обстоятельствах, например, для кодирования разностей глубины и/или данных о движении.

На стороне декодера, также, компоненты трехмерного кодирования могут быть компонентам двумерного кодирования с рядом исключений. Как было упомянуто выше, текстурные данные и данные карт глубины могут быть отделены от данных двумерных карт посредством демультиплексора или de-mutiplex (221), и затем предоставлены модулю (260) энтропийного декодирования. Квантованные данные затем передаются в модуль (262) процессов, обратных преобразованию/квантованию, и в свою очередь фильтру (266). Неквантованные данные, такие как параметры камеры, векторы различия или движения, и/или разности кодирования глубины могут быть предоставлены непосредственно модулям (268), (270) межкадрового предсказания или внутрикадрового предсказания и средству (272) синтаксического управления, который восстанавливает множественные виды и карты глубины. Отмечается, что фильтры, используемые для текстурного кодирования, не могут быть использованы для кодирования карты глубины. Виды и карты глубины наряду с независимыми видами от двумерной стороны декодера предоставляются на сборку (234) элементов кодирования для вывода и отображения изображений или их сохранения.

MVD-кодирование в трехмерном HEVC-кодировании предоставляет много различных способов для предсказания и восстановления множественных видов и режимов глубины. Межкадровое предсказание (или временное предсказание) для кодирования зависимых видов может быть выполнено, для одного неограничивающего примера, посредством предсказания с компенсацией движения (МСР-предсказания), которое использует тот же самый ранее закодированный вид (то же самое положение камеры) из различных элементов доступа, или предсказания с компенсацией различия (DCP-предсказания), которое использует уже закодированные виды из того же самого элемента доступа. При предсказании между видами для текстуры, предсказания движения и соответствующего предсказания разности могут использоваться сочетания опорных видов, внутрикадрового предсказания и векторов различия, полученных из карт глубины. Межкадровое предсказание также может включать в себя использование вида (текстуры) в качестве опорной информации для его карты глубины, называемое наследованием параметра движения или предсказанием дерева квадрантов глубины.

Внутрикадровое кодирование (пространственное предсказание) также используется для восстановления карт глубины. Внутрикадровое предсказание может б