Обработка межуровневого эталонного изображения для масштабируемости стандартов кодирования

Иллюстрации

Показать все

Изобретение относится к области обработки видеоданных. Техническим результатом является эффективное декодирование видеопотоков. Способ декодирования видеопотока посредством декодера включает: получение доступа к изображению базового уровня; получение флага обрезки изображения в видеопотоке, указывающего на присутствие параметров смещения обрезки; и в ответ на получение флага обрезки изображения, указывающего на присутствие параметров смещения обрезки, получение доступа к параметрам смещения обрезки, обрезку одной или нескольких областей изображения базового уровня в соответствии с параметрами смещения обрезки, доступ к которым получен, для генерирования обрезанного эталонного изображения; и генерирование эталонного изображения для уровня расширения в соответствии с обрезанным эталонным изображением. 3 н. и 15 з.п. ф-лы, 11 ил., 9 табл.

Реферат

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ

[0001] Данной заявкой заявляется приоритет предварительной заявки на патент США №61/706480, поданной 27 сентября 2012 г., которая ссылкой полностью включается в настоящее раскрытие.

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

[0002] Настоящее изобретение в общем относится к изображениям. Конкретнее, один из вариантов осуществления настоящего изобретения относится к обработке межуровневого эталонного изображения для масштабируемости стандартов кодирования.

ПРЕДПОСЫЛКИ

[0003] Сжатие звука и видеоизображений является ключевым компонентом при разработке, хранении, распространении и потреблении мультимедийного содержания. Выбор способа сжатия заключает в себе компромиссы между эффективностью кодирования, сложностью кодирования и задержкой. По мере того как отношение вычислительной мощности к вычислительным затратам увеличивается, становится возможной разработка более сложных методик сжатия, делающих возможным более эффективное сжатие. Например, для сжатия видеоизображений Экспертная группа по движущемуся изображению (MPEG) из Международной организации по стандартизации (ISO) продолжила совершенствование первоначального видеостандарта MPEG-1, выпустив стандарты кодирования MPEG-2, MPEG-4 (part 2) и H.264/AVC (или MPEG-4, part 10).

[0004] Несмотря на эффективность сжатия и успешность H.264, в настоящее время в процессе разработки находится технология сжатия видеоизображений нового поколения, известная как Высокоэффективное кодирование видеоизображений (HEVC). Как ожидается, HEVC, проект которого доступен в документе JCTVC-J1003, «High efficiency video coding (HEVC) text specification draft 8», Объединенная совместная группа (JCT-VC) по кодированию видеоизображений ITU-T/ISO/IEC, июль 2012 г., авторов B. Bross, W.-J. Han, G. J. Sullivan, J.-R. Ohm и T. Wiegand, который ссылкой полностью включается в настоящее раскрытие, будет обеспечивать улучшенную способность к сжатию по сравнению с существующим стандартом H.264 (также известен как AVC), опубликованным как «Advanced Video Coding for generic audio-visual services», ITU T Rec. H.264 и ISO/IEC 14496-10, который ссылкой включается в настоящее раскрытие. Как стало понятно авторам изобретения, ожидается, что в течение следующих нескольких лет H.264 по-прежнему будет преобладающим стандартом кодирования видеоизображений, используемым во всем мире для распространения цифровых видеоизображений. Кроме того, также стало понятно, что более новые стандарты, такие как HEVC, должны предусматривать обратную совместимость с существующими стандартами.

[0005] В рамках настоящего раскрытия, термин «стандарт кодирования» обозначает алгоритмы сжатия (кодирования) и разуплотнения (декодирования), которые могут быть как основанными на стандартах, так и имеющими открытый исходный код или являться закрытыми, как, например, стандарты MPEG, Windows Media Video (WMV), flash video, VP8 и т.п.

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

КРАТКОЕ ОПИСАНИЕ ГРАФИЧЕСКИХ МАТЕРИАЛОВ

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

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

[0009] фиг. 2A и фиг. 2B изображают примеры реализаций системы кодирования, поддерживающей масштабируемость кодеков AVC/H.264 и HEVC, в соответствии с одним из вариантов осуществления настоящего изобретения;

[0010] фиг. 3 изображает один из примеров многоуровневого кодирования с окном обрезки в соответствии с одним из вариантов осуществления настоящего изобретения;

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

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

[0013] фиг. 6 изображает один из примеров обработки данных RPU для масштабируемости модели кодирования сигнала в соответствии с одним из вариантов осуществления настоящего изобретения;

[0014] фиг. 7 изображает один из примеров процесса кодирования в соответствии с одним из вариантов осуществления настоящего изобретения;

[0015] фиг. 8 изображает один из примеров процесса декодирования в соответствии с одним из вариантов осуществления настоящего изобретения; и

[0016] фиг. 9 изображает один из примеров процесса декодирования RPU в соответствии с одним из вариантов осуществления настоящего изобретения.

ОПИСАНИЕ ИЛЛЮСТРАТИВНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ

[0017] В настоящем раскрытии описывается обработка межуровневого эталонного изображения для масштабируемости стандартов кодирования. Для заданного сигнала базового уровня, кодируемого кодером базового уровня (BL), совместимым с первым стандартом кодирования (например, Н.264), процесс блока обработки эталона (RPU) генерирует эталонные изображения и параметры RPU в соответствии с характеристиками входных сигналов на базовом уровне и на одном или нескольких уровнях расширения. Эти межуровневые эталонные кадры могут быть использованы кодером уровня расширения (EL), совместимым со вторым стандартом кодирования (например, HEVC), для сжатия (кодирования) одного или нескольких сигналов уровня расширения и их объединения с базовым уровнем для формирования масштабируемого битового потока. В приемнике после декодирования потока BL декодером BL, совместимым с первым стандартом кодирования, декодер RPU может применять полученные параметры RPU для генерирования межуровневых эталонных кадров исходя из декодированного потока BL. Эти эталонные кадры могут быть использованы декодером EL, совместимым со вторым стандартом кодирования, для декодирования кодированного потока EL.

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

Обзор

[0019] Иллюстративные варианты осуществления изобретения, описываемые в настоящем раскрытии, относятся к обработке межуровневого эталонного изображения для масштабируемости стандартов кодирования. В одном из вариантов осуществления изобретения видеоданные кодируют в битовый поток с несколькими уровнями стандартов кодирования. Для заданных сигналов базового уровня (BL) и уровня расширения (EL) сигнал BL кодируют в поток BL, используя кодер BL, совместимый с первым стандартом кодирования. В ответ на сигнал BL и сигнал EL блок обработки эталона (RPU) определяет параметры обработки данных RPU. В ответ на параметры обработки данных RPU и сигнал BL RPU генерирует межуровневый эталонный сигнал. Используя кодер EL, совместимый со вторым стандартом кодирования, сигнал EL кодируют в кодированный поток EL, при этом кодирование сигнала EL по меньшей мере частично основано на межуровневом эталонном сигнале.

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

Масштабируемость стандартов кодирования на многоуровневой основе

[0021] Для доставки цифрового содержания посредством разнообразных носителей, таких как диски DVD или диски Blu-ray, или для вещания по воздуху, по кабелям или широкополосным каналам во всем мире используют такие стандарты сжатия, как MPEG-2, MPEG-4 (part 2), H.264, flash и т.п. По мере разработки новых стандартов, таких как HEVC, принятие новых стандартов можно было бы ускорить, если бы они поддерживали некоторую обратную совместимость с существующими стандартами.

[0022] Фиг. 1 изображает один из вариантов осуществления одной из иллюстративных реализаций системы, поддерживающей масштабируемость стандартов кодирования. Кодер содержит кодер (110) базового уровня (BL) и кодер (120) уровня расширения (EL). В одном из вариантов осуществления изобретения, кодер 110 BL представляет собой унаследованный кодер, такой как кодер MPEG-2 или H.264, а кодер 120 EL представляет собой кодер нового стандарта, такой как кодер HEVC. Однако эта система применима к любому сочетанию как известных, так и будущих кодеров, являются они основанными на стандартах или закрытыми. Систему также можно расширить для поддержки более чем двух стандартов или алгоритмов кодирования.

[0023] Согласно фиг. 1 входной сигнал может содержать два или более сигналов, например сигнал 102 базового уровня (BL) и один или несколько сигналов уровней расширения (EL), например EL 104. Сигнал 102 BL сжимается (или кодируется) кодером 110 BL для генерирования кодированного потока 112 BL. Сигнал 104 EL сжимается кодером 120 EL для генерирования кодированного потока 122 EL. Эти два потока уплотняют (например, при помощи MUX 125) для генерирования кодированного масштабируемого битового потока 127. В приемнике демультиплексор (DEMUX 130) может разделять эти два кодированных битовых потока. Унаследованный декодер (например, декодер 140 BL) может декодировать только базовый уровень 132 для генерирования выходного сигнала 142 BL. Однако декодер, поддерживающий новый способ кодирования (кодер 120 EL), также может декодировать дополнительную информацию, доставляемую кодированным потоком 134 EL, для генерирования выходного сигнала 144 EL. Декодер 140 BL (например, декодер MPEG-2 или H.264) соответствует кодеру 110 BL. Декодер 150 EL (например, декодер HEVC) соответствует кодеру 120 EL.

[0024] Такая масштабируемая система может повышать эффективность кодирования по сравнению с системой одновременной передачи путем надлежащего выявления межуровневого предсказания, то есть путем кодирования сигнала уровня расширения (например, 104) с учетом информации, доступной с более низких уровней (например, 102). Так как кодер BL и кодер EL соответствуют разным стандартам кодирования, в одном из вариантов осуществления изобретения, масштабируемости стандартов кодирования можно добиться посредством отдельного блока обработки данных, блока 115 обработки эталона кодирования (RPU).

[0025] RPU 115 можно считать расширением конструкции RPU, описанной в заявке PCT PCT/US2010/040545, «Encoding and decoding architecture for format compatible 3D video delivery», авторов A. Tourapis и др., поданной 30 июня 2010 г. и опубликованной как WO 2011/005624, которая ссылкой включается в настоящее раскрытие во всех отношениях. Если не указано иное в обратном смысле, нижеследующие описания RPU применимы как к RPU кодера, так и к RPU декодера. После прочтения данного раскрытия специалисты в областях техники, относящихся к кодированию видеоизображений, поймут разницу и будут способны провести различия между специфичными для кодера, специфичными для декодера и общими описаниями, функциями и процессами RPU. В пределах контекста системы кодирования видеоизображений, изображенной на фиг. 1, RPU (115) генерирует межуровневые эталонные кадры на основе декодированных изображений из кодера 110 BL в соответствии с набором правил выбора различных фильтров и процессов RPU.

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

[0027] Кодер может выбирать процессы RPU и выводить сигналы обработки данных для областей, которые доставляются как входные данные в декодер RPU (например, 135). Сигнализация (например, 117) может задавать способ обработки данных на основе области. Например, параметры, относящиеся к атрибутам области, таким как номер, размер, форма и другие характеристики, можно задать в заголовке данных, относящемся к данным RPU. Некоторые фильтры могут содержать фиксированные коэффициенты фильтра, и в этом случае нет необходимости в сигнализации в явном виде заданных коэффициентов фильтра при помощи RPU. Другие режимы обработки данных могут включать явные режимы, в которых параметры обработки данных, такие как значения коэффициентов, сигнализируют в явном виде. Процессы RPU также могут быть заданы для каждой цветовой составляющей.

[0028] Сигнализация 117 данных RPU может либо внедряться в кодированный битовый поток (например, 127), либо передаваться в декодер отдельно. Данные RPU можно сигнализировать наряду с уровнем, на котором выполнялась обработка данных RPU. В дополнение или в качестве альтернативы, данные RPU всех уровней можно сигнализировать в одном пакете данных RPU, внедренном в битовый поток либо перед, либо после внедрения кодированных данных EL. Предоставление данных RPU может быть необязательным для данного слоя. В случае если данные RPU недоступны, для повышающего преобразования этого слоя, таким образом, можно использовать схему, заданную по умолчанию. Не являясь отличным, предоставление кодированного битового потока уровня расширения также необязательно.

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

[0030] RPU 115 может служить в качестве ступени предварительной обработки, обрабатывающей информацию из кодера 110 BL перед использованием этой информации в качестве потенциального предсказателя для уровня расширения в кодере 120 EL. Информацию, относящуюся к обработке данных RPU, можно сообщить (например, как метаданные) в декодер так, как это показано на фиг. 1, используя поток 136 уровня RPU. Обработка данных RPU может включать множество операций обработки изображения, таких как преобразования цветового пространства, нелинейное квантование, повышающая дискретизация яркости и цветности, а также фильтрация. В одной из типичных реализаций сигналы EL 122, BL 112 и данных 117 RPU уплотняют в единый кодированный битовый поток (127).

[0031] Декодер RPU 135 соответствует кодеру RPU 115 и под управлением ввода 136 данных RPU может содействовать декодированию уровня 134 EL, выполняя операции, соответствующие операциям, выполненным кодером RPU 115.

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

Масштабируемость стандартов кодирования H.264 и HEVC

[0033] В одном из иллюстративных вариантов осуществления изобретения фиг. 2А и фиг. 2В изображают один из иллюстративных вариантов осуществления масштабируемости стандартов кодирования на многоуровневой основе так, как его можно применять к стандартам HEVC и H.264. Без потери общности фиг. 2А и фиг. 2В изображают только два уровня, однако эти способы можно легко распространить на системы, поддерживающие несколько уровней расширения.

[0034] Как изображено на фиг. 2А, как кодер 110 Н.264, так и кодер 120 HEVC содержат внутреннее предсказание, межуровневое предсказание, прямое преобразование и квантование (FT), обратные преобразования и квантование (IFT), энтропийное кодирование (EC), фильтры удаления блочности (DF) и буферы декодированных изображений (DPB). Кроме того, кодер HEVC также содержит блок адаптивного смещения отсчетов (SAO). В одном из вариантов осуществления изобретения, как будет разъяснено позднее, RPU 115 может получать доступ к данным BL либо перед фильтром удаления блочности (DF), либо из DPB. Аналогично в мультистандартном декодере (см. фиг. 2В) декодер RPU 135 также может получать доступ к данным BL либо перед фильтром (DF) удаления блочности, либо из DPB.

[0035] В масштабируемом кодировании видеоизображений термин «многоконтурное решение» обозначает многоуровневый декодер, где изображения на уровне расширения декодируются на основе эталонных изображений, извлекаемых как из того же уровня, так и из других подуровней. Изображения базового уровня/уровней расширения воспроизводят и сохраняют в буфере декодированных изображений (DPB). Эти изображения базового уровня, называемые межуровневыми эталонными изображениями, могут служить в качестве дополнительных эталонных изображений при декодировании уровня расширения. Тогда уровень расширения имеет возможности использования либо временных эталонных изображений, либо межуровневых эталонных изображений. В общем, межуровневое предсказание помогает повысить эффективность кодирования EL в масштабируемой системе. Так как AVC и HEVC представляют собой два разных стандарта кодирования, использующие разные процессы кодирования, для обеспечения того, чтобы изображения, кодированные AVC, считались допустимыми эталонными изображениями для HEVC, может потребоваться дополнительная межуровневая обработка данных. В одном из вариантов осуществления изобретения эту обработку данных может выполнять RPU 115, как будет разъяснено впоследствии для различных случаев, представляющих интерес. Для кодирования стандартной масштабируемости использование RPU 115 направлено на устранение различий или конфликтов, возникающих в результате использования двух разных стандартов как на высоком синтаксическом уровне, так и на уровне инструментальных средств кодирования.

Счетчик последовательности изображения (POC)

[0036] HEVC и AVC имеют несколько различий в высокоуровневом синтаксисе. Кроме того, один и тот же синтаксис может иметь разное значение в каждом из стандартов. RPU может действовать в качестве «переводчика» высокоуровневого синтаксиса между базовым уровнем и уровнем расширения. Одним таким примером является синтаксис, относящийся к счетчику последовательности изображения (POC). При межуровневом предсказании важно синхронизировать межуровневые эталонные изображения с базового уровня с изображениями, кодированными на уровне расширения. Такая синхронизация является еще более важной, когда базовый уровень и уровни расширения используют разные структуры кодирования изображений. Как для AVC, так и для HEVC термин «счетчик последовательности изображения (POC)» используется для указания порядка демонстрации кодированных изображений. Однако в AVC существует три способа сигнализации информации POC (указываются переменной pic_order_cnt_type), в то время как в HEVC допускается только один способ, являющийся таким же, как pic_order_cnt_type=0 в случае AVC. В одном из вариантов осуществления изобретения, если pic_order_cnt_type не равна 0 в битовом потоке AVC , то RPU (135) потребуется перевести ее в значение POC, согласующееся с синтаксисом HEVC. В одном из вариантов осуществления изобретения кодер RPU (115) может сигнализировать дополнительные данные, относящиеся к РОС, используя новую переменную pic_order_cnt_lsb, как показано в Таблице 1. В другом варианте осуществления изобретения кодер RPU может просто вынуждать кодер AVC базового уровня использовать только pic_order_cnt_type=0.

Таблица 1: Синтаксис POC

POC( ) { Дескриптор
pic_order_cnt_lsb u(1)
}

[0037] В Таблице 1 pic_order_cnt_lsb задает модуль счетчика последовательности изображения MaxPicOrderCntLsb для текущего межуровневого эталонного изображения. Длина синтаксического элемента pic_order_cnt_lsb составляет log2_max_pic_order_cnt_lsb_minus4+4 битов. Значение pic_order_cnt_lsb должно находиться в интервале от 0 до MaxPicOrderCntLsb−1 включительно. Если pic_order_cnt_lsb отсутствует, pic_order_cnt_lsb полагают равным 0.

Окно обрезки

[0038] В кодировании AVC разрешающая способность изображения должна быть кратна 16. В HEVC разрешающая способность должна быть кратна 8. При обработке межуровневого эталонного изображения в RPU для избавления от пикселей, заполненных в AVC, можно использовать окно обрезки. Если базовый уровень и уровень расширения имеют разную пространственную разрешающую способность (например, базовый уровень - 1920×1080, а уровень расширения - 4K) или если форматные соотношения (PAR) различны (т.е. PAR 16:9 - для уровня расширения, а PAR 4:3 - для базового уровня), изображение необходимо обрезать и можно соответствующим образом изменить его размер. Один из примеров синтаксиса RPU, относящегося к окну обрезки, показан в Таблице 2.

Таблица 2: Синтаксис обрезки изображения

pic_cropping( ) { Дескриптор
pic_cropping_flag u(1)
if ( pic_cropping_flag ) {
pic_crop_left_offset ue(v)
pic_crop_right_offset ue(v)
pic_crop_top_offset ue(v)
pic_crop_bottom_offset ue(v)
}
}

[0039] В Таблице 2 pic_cropping_flag, равный 1, указывает, что далее следуют параметры смещения обрезки изображения. Если pic_cropping_flag=0, то параметры смещения обрезки изображения отсутствуют, и обрезка не требуется.

[0040] pic_crop_left_offset, pic_crop_right_offset, pic_crop_top_offset и pic_crop_bottom_offset задают количество отсчетов в изображениях кодированной видеопоследовательности, являющихся входными в процесс декодирования RPU, в выражении прямоугольной области, заданной на изображении в координатах изображения, для ввода RPU.

[0041] Следует отметить, что поскольку процесс RPU выполняется для каждого межуровневого эталона, то параметры окна обрезки могут изменяться на покадровой основе. Таким образом, с использованием подхода панорамирование-(изменение масштаба)-развертка поддерживается адаптивная перенастройка видеоизображения на основе представляющей интерес области.

[0042] Фиг. 3 изображает один из примеров многоуровневого кодирования, где базовый уровень HD (например, 1920×1080) кодируют, используя H.264, и создают изображение, пригодное для декодирования всеми унаследованными декодерами HD. Уровень расширения с более низкой разрешающей способностью (например, 640×480) можно использовать для обеспечения необязательного характерного признака «изменение масштаба». Уровень EL имеет меньшую разрешающую способность, чем BL, но его можно кодировать в HEVC для уменьшения общей битовой скорости передачи данных. Межуровневое кодирование, описываемое в настоящем раскрытии, может дополнительно повышать эффективность кодирования этого уровня EL.

Фильтр удаления блочности в цикле кодирования

[0043] Как AVC, так и HEVC задействуют фильтр удаления блочности (DF) в процессах кодирования и декодирования. Фильтр удаления блочности предназначен для уменьшения блочных артефактов, вызванных кодированием на основе блоков. Однако его конструкции в каждом из стандартов являются достаточно различными. В AVC фильтр удаления блочности применяют на основе структуры отсчетов размера 4×4, однако в HEVC фильтр удаления блочности применяют только по краям, выровненным по структуре отсчетов размера 8×8. В HEVC интенсивностью фильтра удаления блочности управляют при помощи значений нескольких синтаксических элементов, сходных с AVC, однако AVC поддерживает пять интенсивностей, в то время как HEVC поддерживает только три интенсивности. В HEVC существует меньше случаев фильтрации по сравнению с AVC. Например, один из трех случаев выбран для яркости: отсутствие фильтрации, сильная фильтрация и слабая фильтрация. Для цветности существует только два случая: отсутствие фильтрации и нормальная фильтрация. Для выравнивания операций фильтра удаления блочности между эталонным изображением базового уровня и временным эталонным изображением с уровня расширения можно применить несколько подходов.

[0044] В одном из вариантов осуществления изобретения RPU может получать непосредственный доступ к эталонному изображению без удаления блочности AVC и без дальнейшей постобработки. В другом варианте осуществления изобретения RPU может применять фильтр удаления блочности HEVC к межуровневому эталонному изображению. Принятие решения фильтром в HEVC основано на значении нескольких синтаксических элементов, таких как коэффициенты преобразования, индекс эталона и векторы движения. Может быть действительно затруднительно, если для принятия решения фильтром RPU требуется анализировать всю эту информацию. Вместо этого можно в явном виде сигнализировать индекс фильтра на уровне блока размера 8×8, уровне CU (единицы кодирования), уровне LCU/CTU (наибольшей единицы кодирования или единицы дерева кодирования), уровне, кратном уровню LCU, уровне группы макроблоков или уровне изображения. Можно сигнализировать индексы фильтра яркости и цветности по отдельности, или они могут совместно использовать один и тот же синтаксис. Таблица 3 показывает один из примеров того, каким образом решение фильтра удаления блочности может быть указано как часть потока данных RPU.

Таблица 3: Синтаксис фильтра удаления блочности

deblocking(rx, ry ) { Дескриптор
filter_idx ue(v)
}

[0045] В Таблице 3 filter_idx задает индекс фильтра для составляющих яркости и цветности. Для яркости filter_idx, равный 0, задает отсутствие фильтрации, filter_idx, равный 1, задает слабую фильтрацию, а filter_idx, равный 2, задает сильную фильтрацию. Для цветности filter_idx, равный 0 или 1, задает отсутствие фильтрации, а filter_idx, равный 2, задает нормальную фильтрацию.

Адаптивное смещение отсчетов (SAO)

[0046] SAO представляет собой процесс, модифицирующий отсчеты после фильтра удаления блочности (DF) посредством справочной таблицы. Как изображено на фиг. 2А и фиг. 2В, оно является только частью стандарта HEVC. Задачей SAO является улучшенное воспроизведение амплитуд первоначального сигнала путем использования справочной таблицы, описываемой несколькими дополнительными параметрами, которые можно определить путем анализа гистограммы на стороне кодера. В одном из вариантов осуществления изобретения RPU может обрабатывать межуровневое эталонное изображение с удалением блочности или без удаления блочности с базового уровня AVC, используя в точности такой же процесс SAO, как процесс, описанный в HEVC. Сигнализация может быть основана на области, адаптированной на уровне CTU (LCU), нескольких уровнях LCU, уровне группы макроблоков или уровне изображения. Таблица 4 показывает один из примеров синтаксиса для сообщения параметров SAO. В Таблице 4 обозначения синтаксиса являются такими же, как обозначения, описанные в технических условиях HEVC.

Таблица 4: Синтаксис адаптивного смещения отсчетов

Sao( rx, ry ){ Дескриптор
if ( rx > 0 ) {
sao_merge_left_flag ue(v)
}
if( ry > 0 && !sao_merge_left_flag ) {
sao_merge_up_flag ue(v)
}
if( !sao_merge_up_flag && !sao_merge_left_flag ) {
for( cIdx = 0; cIdx < 3; cIdx++ ) {
if( ( slice_sao_luma_flag && cIdx = = 0 ) | | \tab\tab\tab\tab( slice_sao_chroma_flag && cIdx > 0 ) ) {
if( cIdx = = 0 )
Sao_type_idx_luma ue(v)
if ( cIdx = = 1 )
Sao_type_idx_chroma ue(v)
if( SaoTypeIdx[ cIdx ][ rx ][ ry ] != 0 ) {
for( i = 0; i < 4; i++ )
sao_offset_abs[ cIdx ][ rx][ ry ][ i ] ue(v)
if( SaoTypeIdx[ cIdx ][ rx ][ ry ] = = 1 ) {
for( i = 0; i < 4; i++ ) {
if( sao_offset_abs[ cIdx ][ rx ][ ry ][ i ] != 0 )
sao_offset_sign[ cIdx ][ rx ][ ry ][ i ] ae(v)
sao_band_position[ cIdx ][ rx ][ ry ] ae(v)
} else {
if( cIdx = = 0 )
sao_eo_class_luma ae(v)
if( cIdx = = 1 )
sao_eo_class_chroma ae(v)
}
}
}
}
}
}

Адаптивный петлевой фильтр (ALF)

[0047] В ходе разработки HEVC в качестве блока обработки данных, следующего за SAO, также оценивали адаптивный петлевой фильтр (ALF); однако ALF не является частью первой версии HEVC. Так как обработка ALF, если она будет реализовываться декодером в будущем, может улучшать межуровневое кодирование, она является еще одним этапом обработки данных, который также должен быть реализован RPU. Адаптация ALF может быть основанной на области, адаптируемой на уровне CTU (LCU), нескольких уровнях LCU, уровне группы макроблоков или уровне изображения. Один из примеров параметров ALF описан при помощи alf_picture_info() в документе JCTVC-I1003, «High efficiency video coding (HEVC) text specification draft 7», авторов B. Bross, W.-J. Han, G. J. Sullivan, J.-R. Ohm и T. Wiegand, Объединенная совместная группа ITU-T/ISO/IEC по кодированию видеоизображений (JCT-VC), май 2012 г., который ссылкой полностью включается в настоящее раскрытие.

Чересстрочная и прогрессивная развертка

[0048] AVC поддерживает инструментальные средства кодирования как для прогрессивного, так и для чересстрочного содержания. Для чересстрочных последовательностей допускается как покадровое кодирование, так и полевое кодирование. В HEVC в явном виде не присутствуют инструментальные средства, поддерживающие использование чересстрочной развертки. HEVC предусматривает только синтаксис метаданных (синтаксис сообщения Field Indication SEI и VUI), позволяющий кодеру указывать, каким образом закодировано чересстрочное содержание. Рассмотрены следующие сценарии.

Сценарий 1: Как базовый уровень, так и уровень расширения являются чересстрочными

[0049] Для этого сценария можно рассмотреть несколько способов. В первом варианте осуществления изобретения кодер может быть ограничен изменением кодирования базового уровня в покадровом или полевом режиме только на основе последовательности. Уровень расширения будет следовать решению о кодировании, принятому на базовом уровне. То есть если базовый уровень AVC использует полевое кодирование в одной последовательности, то уровень расширения HEVC также будет использовать в соответствующей последовательности полевое кодирование. Аналогично, если базовый уровень AVC использует покадровое кодирование в одной последовательности, уровень расширения HEVC также будет использовать в соответствующей последовательности покадровое кодирование. Следует отметить, что для полевого кодирования вертикальной разрешающей способностью, сигнализируемой в синтаксисе AVC, является высота кадра; однако в HEVC вертикальной разрешающей способностью, сигнализируемой в синтаксисе, является высота поля. При сообщении этой информации в битовом потоке необходимо соблюдать особую осторожность, особенно при использовании окна обрезки.

[0050] В другом варианте осуществления изобретения кодер AVC может использовать адаптивное покадровое или полевое кодирование на уровне изображения, в то время как кодер HEVC выполняет адаптивное покадровое или полевое кодирование на уровне последовательности. В обоих случаях RPU может обрабатывать межуровневые эталонные изображения одним из следующих способов: а) RPU может обрабатывать межуровневое эталонное изображение как поля независимо от решения о покадровом или полевом кодировании на базовом уровне AVC; или b) RPU может адаптировать обработку межуровневых эталонных изображений на основе решения о покадровом/полевом кодировании на базовом уровне AVC. То есть если базовый уровень AVC является кодированным по кадрам, то RPU будет обрабатывать межуровневое эталонное изображение как кадр, иначе он будет обрабатывать межуровневое эталонное изображение как поля.

[0051] Фиг. 4 изображает один из примеров Сценария 1. Обозначение Di или Dp означает частоту кадров и то, является формат чересстрочным или прогрессивным. Так, Di обозначает D чересстрочных кадров в секунду (или 2D полей в секунду), а Dp обозначает D прогрессивных кадров в секунду. В этом примере базовый уровень содержит последовательность со стандартной разрешающей способностью (SD), 720×480, 30i, кодированную с использованием AVC. Уровень расширения представляет собой последовательность с высокой разрешающей способностью (HD), 1920×1080, 60i, кодированную с использованием HEVC. Этот пример объединяет масштабируемость кодека, временную масштабируемость и пространственную масштабируемость. Временную масштабируемость обрабатывает декодер уровня расширения HEVC, используя иерархическую структуру только с временным предсказанием (HEVC поддерживает этот режим на единственном уровне). Пространственную масштабируемость обрабатывает RPU, корректирующий и синхронизирующий группы макроблоков межуровневого эталонного поля/кадра с соответствующими ему группами макроблоков поля/кадра на уровне расширения.

Сценарий 2: базовый уровень является чересстрочным, а уровень расширения является прогрессивным

[0052] В этом сценарии базовый уровень AVC представляет собой чересстрочную последовательность, а уровень расширения HEVC представляет собой прогрессивную последовательность. Фиг. 5А изображает один из иллюстративных вариантов осуществления, где входной сигнал (502), 4K, 120p, кодирован как три уровня: поток (532) BL, 1080, 30i, поток (537) первого уровня расширения (EL0), кодированный как 1080, 60p, и поток (517) второго уровня расширения (EL1), кодированный как 4K, 120p. Сигналы BL и EL0 закодированы с использованием кодера H.264/AVC, в то время как сигнал EL1 может быть закодирован с использованием HEVC. В кодере, начиная с сигнала (502) с высокой разрешающей способностью и высокой частотой кадров, 4K, 120p, кодер применяет временную и пространственную понижающую дискретизацию (510) для генерирования прогрессивного сигнала 512, 1080, 60p. Используя методику (520) преобразования прогрессивной развертки в чересстрочную путем дополнения, кодер также может генерировать два дополняющих друг друга чересстрочных сигнала BL 522-1 и EL0 522-2, 1080, 30i. В рамках настоящего раскрытия термин «методика преобразования прогрессивной развертки в чересстрочную путем дополнения» обозначает схему, которая генерирует два чересстрочных сигнала из одного и того же прогрессивного ввода, при этом оба чересстрочных сигнала имеют одинаковую разрешающую способность, но один чересстрочный сигнал содержит поля из прогрессивного сигнала, не являющиеся частью второго чересстрочного сигнала. Например, если входной сигнал в момент времени Ti, i=0, 1,…., n разделяется на верхнее и нижнее чересстрочные поля (Top-Ti, Bottom-Ti), то первый чересстрочный сигнал может быть построен с использованием (Top-T0, Bottom-T1), (Top-T2, Bottom-T3) и т.д., в то время как второй чересстрочный сигнал может быть построен с использованием остальных полей, т.е. (Top-T1, Bottom-T0), (Top-T3, Bottom-T2) и т.д.

[0053] В этом примере сигнал 522-1 BL представляет собой обратно совместимый чересстрочный сигнал, который могут декодировать унаследованные декодеры, в то время как сигнал 522-2 EL0 представляет дополняющие отсчеты из первоначального прогрессивного сигнала. Для составления конечного изображения с полной частотой кадров каждое воспроизведенное полевое изображ