Способ декодирования изображений, способ кодирования изображений, устройство декодирования изображений, устройство кодирования изображений и устройство кодирования и декодирования изображений

Иллюстрации

Показать все

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

Реферат

[ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ]

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

[ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ]

[0002] Сигналы естественного изображения обладают статистическими вариациями, демонстрирующими нестационарное поведение. Одним из способов энтропийного кодирования, использующих нестационарные статистические вариации, является Адаптивное двоичное арифметическое кодирование на основе контекста (CABAC) (см. NPL 1). CABAC применяется в качестве стандарта ITU-T/ISO IEC для кодирования видео, H.264/AVC.

[0003] Смысл терминов, используемых в схеме CABAC, будет описываться ниже.

[0004] (1) "Адаптивное на основе контекста" означает адаптацию способов кодирования и декодирования к статистическим вариациям. Другими словами, "Адаптивное на основе контекста" означает предсказание подходящей вероятности в качестве вероятности появления символа наряду с событием из окружающих условий, когда символ кодируется или декодируется. При кодировании, когда определяется вероятность p(x) появления каждого значения символа S, применяется условная вероятность появления, использующая фактическое событие или последовательность F(z) событий в качестве условия.

[0005] (2) "Двоичное" означает представление символа с использованием двоичной последовательности. Символ, представленный мультизначением, однократно отображается в двоичную последовательность, называемую "строкой бинов". Предсказанная вероятность (условная вероятность) переключается и используется для каждого из элементов последовательности, и появление одного из событий с двумя значениями представляется последовательностью битов. Соответственно, вероятностью значения можно управлять (инициализировать и обновлять) с использованием единицы (единицы двоичного элемента) меньше, чем единица типа сигнала (см. Фиг.2 и другие в NPL 1).

[0006] (3) "Арифметическое" означает, что последовательность битов формируется не со ссылкой на соответствия в таблице, а путем вычисления. В схеме кодирования, использующей таблицы кодов переменной длины, например H.263, MPEG-4 и H.264, даже каждое значение символа с вероятностью появления больше 0,5 (50%) нужно ассоциировать с одной двоичной последовательностью (последовательностью битов). Таким образом, значение с наибольшей вероятностью нужно ассоциировать как минимум с одним битом для одного символа. В отличие от этого арифметическое кодирование может представлять появление события с большей вероятностью целым числом, меньше либо равным одному биту. Когда (i) имеется тип сигнала, в котором вероятность появления у наличия первого двоичного значения в виде 0 превышает 0,9 (90%), и (ii) событие, имеющее первое двоичное значение в виде 0, последовательно появляется N раз, не нужно выводить данные 1 бита N раз для каждого значения "0".

[СПИСОК ИСТОЧНИКОВ]

[Непатентная литература]

[0007] [NPL 1] Detlev Marpe, et. al., "Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard", IEEE Transaction on circuits and systems for video technology, Vol. 13, No.7, July 2003.

[NPL 2] 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, JCTVC-E603, ver.7 "WD3: Working Draft 3 of High-Efficiency Video Coding", http://phenix.int-evry.fr/jct/doc_end_user/documents/5_Geneva/wg11/JCTVC-E603-v7.zip

[NPL 3] Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 4th Meeting: Daegu, KR, 20-28 January, 2011,

"Common test conditions and software reference configurations", JCTVC-E700

[NPL 4] Gisle Bjøntegaard, "Improvements of the BD-PSNR model", ITU-T SG16 Q.6 Document, VCEG-AI11, Berlin, July 2008

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

[Техническая задача]

[0008] В таком способе кодирования изображений и способе декодирования изображений желательно уменьшить использование памяти (емкость памяти, которая будет использована).

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

[Решение задачи]

[0010] Чтобы достичь этой цели, способ декодирования изображений в соответствии с аспектом настоящего изобретения является способом декодирования изображений, использующим арифметическое декодирование, и способ включает в себя: определение контекста для использования в текущем блоке из множества контекстов; выполнение арифметического декодирования над последовательностью битов, соответствующей текущему блоку, используя определенный контекст для декодирования двоичной последовательности, причем последовательность битов получена путем выполнения арифметического кодирования над управляющим параметром текущего блока; и обратное преобразование из двоичной формы двоичной последовательности, чтобы декодировать управляющий параметр текущего блока, причем определение контекста включает в себя: определение типа сигнала у управляющего параметра текущего блока; определение контекста при первом условии, что используются декодированные управляющие параметры у соседних блоков текущего блока, когда типом сигнала является первый тип, причем соседними блоками являются левый блок и верхний блок текущего блока; определение контекста при втором условии, что декодированный управляющий параметр верхнего блока не используется, когда типом сигнала является второй тип, отличный от первого типа; и определение контекста при третьем условии, что декодированный управляющий параметр верхнего блока не используется, а используется иерархическая глубина единицы данных, к которой принадлежит управляющий параметр текущего блока, когда типом сигнала является третий тип, отличный от первого типа и второго типа, причем первый тип является одним из "split_coding_unit_flag" и "skip_flag", второй тип является одним или более из (i) "merge_flag", (ii) "ref_idx_l0" или "ref_idx_l1", (iii) "inter_pred_flag", (iv) "mvd_l0" или "mvd_l1", (v) "intra_chroma_pred_mode", (vi) "cbf_luma" и (vii) "cbf_cb" или "cbf_cr", и третий тип является типом сигнала из числа (i) "merge_flag", (ii) "ref_idx_l0" или "ref_idx_l1", (iii) "inter_pred_flag", (iv) "mvd_l0" или "mvd_l1", (v) "intra_chroma_pred_mode", (vi) "cbf_luma" и (vii) "cbf_cb" или "cbf_cr", причем тип этого сигнала отличается от второго типа.

[ПОЛОЖИТЕЛЬНЫЕ РЕЗУЛЬТАТЫ ИЗОБРЕТЕНИЯ]

[0011] Настоящее изобретение может предоставить способ кодирования изображений или способ декодирования изображений, которые могут уменьшить использование памяти.

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

[0012] Фиг.1 - функциональная блок-схема устройства кодирования изображений в соответствии с Вариантом 1 осуществления.

Фиг.2 - функциональная блок-схема блока кодирования переменной длины в соответствии с Вариантом 1 осуществления.

Фиг.3 - таблица контекстной модели управляющего параметра в соответствии с Вариантом 1 осуществления.

Фиг.4 - блок-схема алгоритма, указывающая способ арифметического кодирования в соответствии с Вариантом 1 осуществления.

Фиг.5 - функциональная блок-схема устройства декодирования изображений в соответствии с Вариантом 2 осуществления.

Фиг.6 - функциональная блок-схема блока декодирования переменной длины в соответствии с Вариантом 2 осуществления.

Фиг.7 - блок-схема алгоритма, указывающая способ арифметического декодирования в соответствии с Вариантом 2 осуществления.

Фиг.8 - блок-схема алгоритма, указывающая модификацию способа арифметического декодирования в соответствии с Вариантом 2 осуществления.

Фиг.9A иллюстрирует информацию отображения и назначение индексов контекста в соответствии с Вариантом 2 осуществления.

Фиг.9B иллюстрирует разделенные блоки (древовидная структура) согласно HEVC в соответствии с Вариантом 2 осуществления.

Фиг.10 иллюстрирует многоуровневую блочную структуру в соответствии с Вариантом 2 осуществления.

Фиг.11 иллюстрирует способ арифметического декодирования для split_coding_unit_flag в соответствии с Вариантом 3 осуществления.

Фиг.12A - таблица, указывающая результат проверки по split_coding_unit_flag в соответствии с Вариантом 3 осуществления.

Фиг.12B - таблица, указывающая результат проверки по split_coding_unit_flag в соответствии с Вариантом 3 осуществления.

Фиг.13 иллюстрирует способ арифметического декодирования для skip_flag в соответствии с Вариантом 3 осуществления.

Фиг.14A - таблица, указывающая результат проверки по skip_flag в соответствии с Вариантом 3 осуществления.

Фиг.14B - таблица, указывающая результат проверки по skip_flag в соответствии с Вариантом 3 осуществления.

Фиг.15 - таблица, указывающая способ арифметического декодирования для merge_flag в соответствии с Вариантом 3 осуществления.

Фиг.16A - таблица, указывающая результат проверки по merge_flag в соответствии с Вариантом 3 осуществления.

Фиг.16B - таблица, указывающая результат проверки по merge_flag в соответствии с Вариантом 3 осуществления.

Фиг.17 - таблица, указывающая способ арифметического декодирования для ref_idx в соответствии с Вариантом 3 осуществления.

Фиг.18A - таблица, указывающая результат проверки по ref_idx в соответствии с Вариантом 3 осуществления.

Фиг.18B - таблица, указывающая результат проверки по ref_idx в соответствии с Вариантом 3 осуществления.

Фиг.18C - таблица, указывающая контекстную модель для ref_idx в соответствии с Вариантом 3 осуществления.

Фиг.18D - таблица, указывающая контекстную модель для ref_idx в соответствии с Вариантом 3 осуществления.

Фиг.19 - таблица, указывающая способ арифметического декодирования для inter_pred_flag в соответствии с Вариантом 3 осуществления.

Фиг.20A - таблица, указывающая результат проверки по inter_pred_flag в соответствии с Вариантом 3 осуществления.

Фиг.20B - таблица, указывающая результат проверки по inter_pred_flag в соответствии с Вариантом 3 осуществления.

Фиг.21 - таблица, указывающая способ арифметического декодирования для mvd в соответствии с Вариантом 3 осуществления.

Фиг.22A - таблица, указывающая результат проверки по mvd в соответствии с Вариантом 3 осуществления.

Фиг.22B - таблица, указывающая результат проверки по mvd в соответствии с Вариантом 3 осуществления.

Фиг.22C - таблица, указывающая контекстную модель для mvd в соответствии с Вариантом 3 осуществления.

Фиг.22D - таблица, указывающая контекстную модель для mvd в соответствии с Вариантом 3 осуществления.

Фиг.23A - таблица, указывающая способ арифметического декодирования для no_residual_data_flag в соответствии с Вариантом 3 осуществления.

Фиг.23B - таблица, указывающая синтаксис для no_residual_data_flag в соответствии с Вариантом 3 осуществления.

Фиг.24A - таблица, указывающая результат проверки по no_residual_data_flag в соответствии с Вариантом 3 осуществления.

Фиг.24B - таблица, указывающая результат проверки по no_residual_data_flag в соответствии с Вариантом 3 осуществления.

Фиг.25A - таблица, указывающая способ арифметического декодирования для intra_chroma_pred_mode в соответствии с Вариантом 3 осуществления.

Фиг.25B - таблица, указывающая способ определения IntraPredModeC на основе intra_chroma_pred_mode в соответствии с Вариантом 3 осуществления.

Фиг.26A - таблица, указывающая результат проверки по intra_chroma_pred_mode в соответствии с Вариантом 3 осуществления.

Фиг.26B - таблица, указывающая результат проверки по intra_chroma_pred_mode в соответствии с Вариантом 3 осуществления.

Фиг.27 - таблица, указывающая способ арифметического декодирования для cbf_luma(cr,cb) в соответствии с Вариантом 3 осуществления.

Фиг.28A - таблица, указывающая результат проверки по cbf_luma(cr,cb) в соответствии с Вариантом 3 осуществления.

Фиг.28B - таблица, указывающая результат проверки по cbf_luma(cr,cb) в соответствии с Вариантом 3 осуществления.

Фиг.29A - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.29B - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.30A - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.30B - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.31A - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.31B - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.32A - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.32B - график, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.33A - таблица, указывающая пример набора параметров в соответствии с Вариантом 3 осуществления.

Фиг.33B - таблица, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

Фиг.34A - таблица, указывающая пример набора параметров в соответствии с Вариантом 3 осуществления.

Фиг.34B - таблица, указывающий результат проверки в соответствии с Вариантом 3 осуществления.

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

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

Фиг.37 иллюстрирует контекстные модели, использующие значения управляющих параметров, соответствующих двум соседним блокам, в соответствии с Вариантами осуществления.

Фиг.38 иллюстрирует увеличение в использовании памяти, когда используется верхний блок, в соответствии с Вариантами осуществления.

Фиг.39 иллюстрирует общую конфигурацию системы предоставления контента для реализации услуг распространения контента.

Фиг.40 иллюстрирует общую конфигурацию системы цифрового вещания.

Фиг.41 - блок-схема, иллюстрирующая пример конфигурации телевизора.

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

Фиг.43 иллюстрирует пример конфигурации носителя записи, который является оптическим диском.

Фиг.44A иллюстрирует пример сотового телефона.

Фиг.44B иллюстрирует блок-схему, показывающую пример конфигурации сотового телефона.

Фиг.45 иллюстрирует структуру мультиплексированных данных.

Фиг.46 схематически иллюстрирует, как каждый поток мультиплексируется в мультиплексированные данные.

Фиг.47 подробнее иллюстрирует то, как видеопоток сохраняется в потоке пакетов PES.

Фиг.48 иллюстрирует структуру пакетов TS и исходных пакетов в мультиплексированных данных.

Фиг.49 иллюстрирует структуру данных PMT.

Фиг.50 иллюстрирует внутреннюю структуру информации о мультиплексированных данных.

Фиг.51 иллюстрирует внутреннюю структуру информации об атрибутах потока.

Фиг.52 иллюстрирует этапы для идентификации видеоданных.

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

Фиг.54 иллюстрирует конфигурацию для переключения между частотами возбуждения.

Фиг.55 иллюстрирует этапы для идентификации видеоданных и переключения между частотами возбуждения.

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

Фиг.57A иллюстрирует пример конфигурации для совместного использования модуля в блоке обработки сигналов.

Фиг.57B иллюстрирует другой пример конфигурации для совместного использования модуля в блоке обработки сигналов.

[ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ]

[0013] (Сведения, на которых основывается настоящее изобретение)

Авторы настоящего изобретения обнаружили следующие проблемы.

[0014] В Высокоэффективном кодировании видео (HEVC), которое является схемой кодирования видео следующего поколения, исследуется контекстная модель при кодировании и декодировании различных управляющих параметров (NPL 2). Управляющий параметр включается в кодированный поток двоичных сигналов и является параметром (флагом и т.п.), используемым в кодирующей или декодирующей обработке. Точнее говоря, управляющий параметр является синтаксическим элементом.

[0015] Контекстная модель является информацией, указывающей, (i) какое условие рассматривается для (ii) сигнала какой единицы (каждый элемент мультизначения, двоичного значения, двоичной последовательности (строки бинов)). Здесь "какое условие" указывает, какое применяется условие с количеством условных элементов, или какой тип сигнала управляющего параметра, который будет рассматриваться в качестве условия, является подходящим. Когда условия разделяются на более мелкие категории, то есть, когда увеличивается количество τ условий, уменьшается количество случаев, которые остаются верными для тех условий. В результате, поскольку уменьшается количество обучений, уменьшается точность предсказанной вероятности (например, см. "эффект разбавления" в NPL 1).

[0016] Кроме того, уменьшение количества условий указывает отсутствие рассмотрения контекста (окружающих условий) и отсутствие адаптивности к статистическим вариациям.

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

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

[0019] Первый и второй типы относятся к кодированию и декодированию управляющего параметра.

[0020] Первая контекстная модель использует кодированные значения вплоть до двух соседних кодированных значений (см. NPL 1). Хотя определение двух соседних кодированных значений зависит от каждого типа сигнала, обычно используются значения соответствующих управляющих параметров, включенных в соседние блоки слева и сверху от текущего блока.

[0021] Второй тип контекстных моделей является типом для определения контекста на основе двоичного дерева в качестве вероятности появления. Точнее говоря, второй тип контекстных моделей применяется к управляющим параметрам mb_type и sub_mb_type.

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

[0023] Преимущества принципа исполнения и реализации у модели вероятностей переходов в H.264, например первого типа, долго исследовались и будут применены к HEVC, которое исследуется (см. NPL 2). Например, первый тип (контекстная модель, использующая соседние синтаксические элементы) исследуется для использования для управляющих параметров alf_cu_flag, split_coding_unit_flag, skip_flag, merge_flag, intra_chroma_pred_mode, inter_pred_flag, ref_idx_lc, ref_idx_l0, ref_idx_l1, mvd_l0, mvd_l1, mvd_no_residual_data_flag, cbf_luma, cbf_cb и cbf_cr (см. 9.3.3.1.1 в NPL 2).

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

[0024] Фиг.37 иллюстрирует контекстные модели, использующие значения управляющих параметров, соответствующих двум соседним блокам. Кроме того, Фиг.37 иллюстрирует контекстные модели, использующие соседние блоки в H.264.

[0025] Блок C на Фиг.37 включает в себя значение управляющего параметра SE, который будет кодироваться и декодироваться в настоящее время. Когда кодируется значение управляющего параметра SE, используются значения управляющих параметров SE одинакового типа, включенных в верхний блок A и левый блок B, которые уже кодированы. Точнее говоря, вероятность p(x), указывающая, равно ли 1 или 0 значение x управляющего параметра SE блока C (или первое двоичное значение строки бинов управляющего параметра SE), предсказывается на основе условной вероятности p(x| (условие A (значение верхнего блока) и условие B (значение левого блока)), используя в качестве условий значение управляющего параметра SE верхнего блока A и значение управляющего параметра SE левого блока B.

[0026] Фиг.38 иллюстрирует увеличение в использовании памяти, когда используется верхний блок.

[0027] На Фиг.38 (xP, yP) является положением верхнего левого пикселя единицы предсказания (PU, единица предсказания движения), включающей в себя блок C. Здесь блок C является блоком, включающим в себя управляющий параметр (например, skip_flag), который будет кодироваться в настоящее время. Кроме того, (xP, yA) на Фиг.38 является положением пикселя, который включается в блок B и используется в качестве условия A (значение управляющего параметра skip_flag у верхнего блока). Кроме того, (xL, yP) на Фиг.38 является положением пикселя, который включается в блок A и используется в качестве условия B (значение управляющего параметра skip_flag у левого блока).

[0028] Чтобы кодировать или декодировать значение управляющего параметра skip_flag у блока C, устройству кодирования или устройству декодирования нужно поддерживать значение skip_flag у PU (или результат определения условия) соответствующим положению (xP, yA), включенному в верхний блок B, и положению (xL, yP), включенному в левый блок A. При условии, что изображение имеет горизонтальную ширину в 4096 пикселей, чтобы кодировать один управляющий параметр skip_flag, необходимо поддерживать все значения определения, включенные в верхнюю строку (Линия L на Фиг.38). Другими словами, одному управляющему параметру нужна емкость памяти, полученная с помощью 4096 пикселей/размер блока.

[0029] Здесь блок C, который будет кодироваться, имеет переменные размеры, например, 64×64, 16×16 или 4×4. Кроме того, нельзя предсказать размер блока у блока C, который будет кодироваться или декодироваться позже, когда кодируются или декодируются блоки в верхней строке (Линия L), включающей (xP, yA). Причина в том, что неизвестен размер каждого из блоков в нижней строке (строке, включающей в себя блок C), когда кодируется или декодируется верхняя строка (строка, включающая в себя блок A). Таким образом, устройству кодирования или устройству декодирования нужно поддерживать значение управляющего параметра (или значение определения) для каждого минимального размера блока, предполагая, что наименьший размер блока из всех размеров, примененных к управляющим параметрам, используется в качестве размера блока нижней строки. Во многих типах сигнала наименьшим размером блока является 4×4. Кроме того, в отдельных типах сигнала наименьшим размером блока является 8×8 или 16×16. Например, когда наименьшим размером блока является 4×4, значение управляющего параметра, которое следует поддерживать, равно 4096÷4=1024 битам. Положения черных окружностей на Фиг.38 указывают условия, которые нужно выполнять, хотя условные значения фактически не нужны, когда кодируется и декодируется нижняя строка (строка, включающая в себя блок C).

[0030] Кроме того, два соседних блока на Фиг.38 (левый блок A и верхний блок B) придерживаются идеи соседних блоков в H.264, и не вводится никакой новой перспективы на разделение иерархических блоков. Как описано ниже, существуют случаи, когда такие условные значения, к которым будут обращаться на Фиг.38, не всегда имеют смысл для управляющих параметров, приспособленных к рекурсивному разбиению квадродерева, которое будет внесено в HEVC, потому что управляющие параметры придерживаются рекурсивного порядка исполнения, иерархической глубины или положений блоков.

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

[0032] В отличие от этого, способ декодирования изображений в соответствии с аспектом настоящего изобретения является способом декодирования изображений, использующим арифметическое декодирование, и способ включает в себя: определение контекста для использования в текущем блоке из множества контекстов; выполнение арифметического декодирования над последовательностью битов, соответствующей текущему блоку, используя определенный контекст для декодирования двоичной последовательности, причем последовательность битов получена путем выполнения арифметического кодирования над управляющим параметром текущего блока; и обратное преобразование из двоичной формы двоичной последовательности, чтобы декодировать управляющий параметр текущего блока, причем определение контекста включает в себя: определение типа сигнала у управляющего параметра текущего блока; определение контекста при первом условии, что используются декодированные управляющие параметры у соседних блоков текущего блока, когда типом сигнала является первый тип, причем соседними блоками являются левый блок и верхний блок текущего блока; определение контекста при втором условии, что декодированный управляющий параметр верхнего блока не используется, когда типом сигнала является второй тип, отличный от первого типа; и определение контекста при третьем условии, что декодированный управляющий параметр верхнего блока не используется, а используется иерархическая глубина единицы данных, к которой принадлежит управляющий параметр текущего блока, когда типом сигнала является третий тип, отличный от первого типа и второго типа, причем первый тип является одним из "split_coding_unit_flag" и "skip_flag", второй тип является одним или более из (i) "merge_flag", (ii) "ref_idx_l0" или "ref_idx_l1", (iii) "inter_pred_flag", (iv) "mvd_l0" или "mvd_l1", (v) "intra_chroma_pred_mode", (vi) "cbf_luma" и (vii) "cbf_cb" или "cbf_cr", и третий тип является типом сигнала из числа (i) "merge_flag", (ii) "ref_idx_l0" или "ref_idx_l1", (iii) "inter_pred_flag", (iv) "mvd_l0" или "mvd_l1", (v) "intra_chroma_pred_mode", (vi) "cbf_luma" и (vii) "cbf_cb" или "cbf_cr", причем тип этого сигнала отличается от второго типа.

[0033] С помощью этой структуры способ декодирования изображений может уменьшить использование памяти. Точнее говоря, в способе декодирования изображений, поскольку управляющий параметр верхнего блока не используется для управляющего параметра второго типа, не нужно поддерживать управляющий параметр второго типа верхнего блока. С помощью этой структуры по сравнению со случаем, когда левый блок и верхний блок используются как равномерно "использующие контекстную модель на основе значений управляющих параметров у соседних блоков", использование памяти можно уменьшить в соответствии со способом декодирования изображений. Кроме того, способ декодирования изображений может подходящим образом уменьшить использование памяти у управляющего параметра второго типа, например, без сбоя в оценке BD-скорости [скорость искажения по Бьонтегорду (Bjøntegaard)] у изображения.

[0034] Кроме того, в соответствии со способом декодирования изображений может использоваться контекст, подходящий для иерархической древовидной структуры, которая является структурой данных, которая не рассматривается в традиционном H.264 и является уникальной для HEVC нового стандарта. В качестве альтернативы может выполняться обращение к памяти.

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

[0036] Кроме того, третьим типом может быть "inter_pred_flag".

[0037] Кроме того, третьим типом может быть "cbf_cb" и "cbf_cr".

[0038] Кроме того, третьим типом может быть "cbf_luma".

[0039] Кроме того, первым типом может быть "split_coding_unit_flag" и "skip_flag", вторым типом может быть "merge_flag", "ref_idx_l0", "ref_idx_l1", "mvd_l0", "mvd_l1" и "intra_chroma_pred_mode", и третьим типом может быть "inter_pred_flag", "cbf_luma", "cbf_cb" и "cbf_cr".

[0040] Кроме того, второе условие и третье условие могут быть условиями, что декодированные управляющие параметры левого блока и верхнего блока не используются.

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

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

[0043] С помощью этой структуры способ декодирования изображений может уменьшить объем обработки.

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

[0045] С помощью этой структуры способ декодирования изображений может уменьшить объем обработки.

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

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

[0048] Кроме того, один из второго типа и третьего типа может быть управляющим параметром, имеющим предварительно определенную структуру данных.

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

[0050] Кроме того, "split_coding_unit_flag" может указывать, разбивается или нет текущий блок на множество блоков, "skip_flag" может указывать, нужно или нет пропускать текущий блок, "merge_flag" может указывать, используется или нет режим слияния для текущего блока, "ref_idx_l0" может указывать индекс опорного изображения в списке 0 для текущего блока, "ref_idx_l1" может указывать индекс опорного изображения в списке 1 для текущего блока, "inter_pred_flag" может указывать одно из одиночного предсказания и двойного предсказания, которое будет использоваться для текущего блока, "mvd_l0" может указывать разность между составляющей вектора движения в списке 0 и предсказанным значением составляющей вектора движения, причем составляющая вектора движения и предсказанное значение используются для текущего блока, "mvd_l1" может указывать разность между составляющей вектора движения в списке 1 и предсказанным значением составляющей вектора движения, причем составляющая вектора движения и предсказанное значение используются для текущего блока, "intra_chroma_pred_mode" может указывать режим внутреннего предсказания для выборки цветности текущего блока, "cbf_luma" может указывать, содержит или нет блок преобразования яркости текущего блока один или более уровней коэффициента преобразования, не равных 0, "cbf_cb" может указывать, содержит или нет блок преобразования Cb текущего блока один или более уровней коэффициента преобразования, не равных 0, и "cbf_cr" может указывать, содержит или нет блок преобразования Cr текущего блока один или более уровней коэффициента преобразования, не равных 0.

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

[0052] Кроме того, способ кодирования изображений в соответствии с аспектом настоящего изобретения является способом кодирования изображений, использующим арифметическое кодирование, и способ включает в себя: преобразование в двоичную форму управляющего параметра текущего блока, чтобы сформировать двоичную последовательность; определение контекста для использования в текущем блоке из множества контекстов; и выполнение арифметического кодирования над двоичной последовательностью с использованием определенного контекста, чтобы сформировать последовательность битов, причем определение контекста включает в себя: определение типа сигнала у управляющего параметра текущего блока; определение контекста при первом условии, что используются управляющие параметры у соседних блоков текущего блока, когда типом сигнала является первый тип, причем соседними блоками являются левый блок и верхний блок текущего блока; определение контекста при втором условии, что управляющий параметр верхнего блока не используется, когда типом сигнала является второй тип, отличный от первого типа; и определение контекста при третьем условии, что декодированный управляющий параметр верхнего блока не используется, а используется иерархическая глубина единицы данных, к которой принадлежит управляющий параметр текущего блока, когда типом сигнала является третий тип, отличный от первого типа и второго типа, причем первый тип является одним из "split_coding_unit_flag" и "skip_flag", а второй тип является одним или более из (i) "merge_flag", (ii) "ref_idx_l0" или "ref_idx_l1", (iii) "inter_pred_flag", (iv) "mvd_l0" или "mvd_l1", (v) "intra_chroma_pred_mode", (vi) "cbf_luma" и (vii) "cbf_cb" или "cbf_cr", и третий тип является типом сигнала из числа (i) "merge_flag", (ii) "ref_idx_l0" или "ref_idx_l1", (iii) "inter_pred_flag", (iv) "mvd_l0" или "mvd_l1", (v) "intra_chroma_pred_mode", (vi) "cbf_luma" и (vii) "cbf_cb" или "cbf_cr", причем тип этого сигнала отличается от второго типа.

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

[0054] Кроме того, в соответствии со способом кодирования изображений может использоваться контекст, подходящий для иерархической древовидной структуры, которая является структурой данных, которая не рассматривается в традиционном H.264 и является уникальной для HEVC нового стандарта. В качестве альтернативы может выполняться обращение к памяти.

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

[0056] Кроме того, устройство декодирования изображений в соответствии с аспектом настоящего изобретения является устройством декодирования изображений, использующим арифметическое декодирование, и устройство включает в себя: блок управления контекстом, сконфигурированный для определения контекста для использования в текущем блоке из множества контекстов; блок арифметического декодирования, сконфигурированный для выполнения арифметического декодирования над последовательностью битов, соответствующей текущему блоку, используя