Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
Иллюстрации
Показать всеИзобретение относится к технологиям кодирования/декодирования изображений. Техническим результатом является повышение эффективности кодирования/декодирования видеоданных. Предложен способ декодирования изображения, использующий арифметическое декодирование. Согласно способу осуществляют определение контекста для использования в текущем блоке среди множества контекстов, а также выполняют арифметическое декодирование над битовой последовательностью, соответствующей текущему блоку, используя определенный контекст для декодирования двоичной последовательности, причем битовая последовательность получается путем выполнения арифметического кодирования над параметром управления текущего блока. Далее согласно способу выполняют обратную бинаризацию двоичной последовательности для декодирования параметра управления текущего блока. 5 н. и 9 з.п. ф-лы, 42 ил.
Реферат
ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение относится к способу декодирования изображения, способу кодирования изображения, устройству декодирования изображения, устройству кодирования изображения и устройству кодирования и декодирования изображения и, в частности, к способу декодирования изображения, способу кодирования изображения, устройству декодирования изображения, устройству кодирования изображения и устройству кодирования и декодирования изображения, которые используют арифметическое кодирование или арифметическое декодирование.
УРОВЕНЬ ТЕХНИКИ
Обычные сигналы изображения имеют статистические изменения, показывающие нестационарный характер. Одним из способов энтропийного кодирования, использующих нестационарные нестатистические изменения, является контекстно-адаптивное двоичное арифметическое кодирование (CABAC) (смотри NPL 1). CABAC используется в качестве стандарта ITU-T/ISOIEC для кодирования видео H.264/AVC (улучшенное кодирование видео).
Значение терминов, используемых в схеме CABAC, будет описано ниже.
(1) "Контекстно-адаптивный" означает адаптацию способов кодирования и декодирования к статистическим изменениям. Иными словами, "контекстно-адаптивный" означает предсказание соответствующей вероятности в качестве вероятности появления символа наряду с событием условий окружения при кодировании или декодировании символа. В процессе кодирования, при определении вероятности р(х) появления каждого значения символа S, условная вероятность появления применяется с использованием фактического события или последовательности событий F(z) в качестве условия.
(2) "Двоичный" означает представление символа с использованием двоичной последовательности. Символ, представленный многочисленными значениями, сразу отображается в двоичную последовательность, которая называется "строкой ячеек". Предсказанная вероятность (условная вероятность) переключается и используется для каждого из элементов последовательности, и появление одного из событий из упомянутых двух значений представляется битовой последовательностью. Соответственно, вероятностью значения можно управлять (инициализировать и обновлять) с использованием единицы (двоичной элементарной единицы), меньшей, чем единицы типа сигнала (смотри фиг. 2 и другие из NPL 1).
(3) "Арифметический" означает, что битовая последовательность генерируется без ссылки на соответствия в таблице, а с помощью вычисления. В схеме кодирования, использующей таблицы кодов с переменной длиной слова, такой как H.263, MPEG-4 и H.264, даже каждое значение символа с вероятностью появления больше чем 0,5 (50%) должно ассоциироваться с одной двоичной последовательностью (битовой последовательностью). Таким образом, значение с наибольшей вероятностью должно ассоциироваться минимум с одним битом для одного символа. Напротив, арифметическое кодирование позволяет представлять появление события с более высокой вероятностью с помощью целого числа, равного или меньшего, чем один бит. Когда (i) существует тип сигнала, в котором вероятность появления наличия первого двоичного значения, такого как 0, превышает 0,9 (90%), и (ii) событие, имеющее первое двоичное значение, такое как 0, появляется N раз подряд, не нужно выводить данные бита 1 N раз для каждого значения "0".
ПЕРЕЧЕНЬ ССЫЛОК
НЕПАТЕНТНАЯ ЛИТЕРАТУРА
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 4th Meeting: Daegu, KR, 20-28 January, 2011 "WD2: Working Draft 2 of High-Efficiency Video Coding" JCTVC-D503 http://wftp3.itu.int/av-arch/jctvc-site/2011_01_D_Daegu/JCTVC-D503.doc.
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 Bjontegaard, “Improvements of the BD-PSNR model," ITU-T SG16 Q.6 Document,VCEG-AI11, Berlin, July 2008.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ЗАДАЧА
В данном способе кодирования изображения и данном способе декодирования изображения было бы желательным уменьшить использование памяти (используемый объем памяти).
В данном случае задача настоящего изобретения состоит в обеспечении способа кодирования изображения или способа декодирования изображения, которые позволяют уменьшить использование памяти.
РЕШЕНИЕ ЗАДАЧИ
Поставленная задача решается тем, что способом декодирования изображения согласно аспекту настоящего изобретения является способ декодирования изображения, использующий арифметическое декодирование, и способ включает в себя: определение контекста для использования в текущем блоке среди множества контекстов; выполнение арифметического декодирования над битовой последовательностью, соответствующей текущему блоку с использованием определенного контекста для декодирования двоичной последовательности, причем битовая последовательность получается путем выполнения арифметического кодирования над параметром управления текущего блока; и выполнение обратной бинаризации двоичной последовательности для декодирования параметра управления текущего блока, в котором определение контекста включает в себя: определение типа сигнала параметра управления текущего блока; определение контекста при первом условии, что используются декодированные параметры управления соседних блоков текущего блока, когда тип сигнала представляет собой первый тип, причем соседние блоки представляют собой левый блок и верхний блок текущего блока; и определение контекста при втором условии, что не используется декодированный параметр управления верхнего блока, когда тип сигнала представляет собой второй тип, отличный от первого типа.
ПРЕИМУЩЕСТВЕННЫЕ ЭФФЕКТЫ ИЗОБРЕТЕНИЯ
Настоящее изобретение обеспечивает способ кодирования изображения или способ декодирования изображения, который позволяет уменьшить использование памяти.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 - функциональная блок-схема устройства кодирования изображения согласно первому варианту осуществления.
Фиг. 2 - функциональная блок-схема блока кодирования с переменной длиной слова согласно первому варианту осуществления.
Фиг. 3 - таблица контекстной модели параметра управления согласно первому варианту осуществления.
Фиг. 4 - последовательность операций, указывающая способ арифметического кодирования согласно первому варианту осуществления.
Фиг. 5 - функциональная блок-схема устройства декодирования изображения согласно второму варианту осуществления.
Фиг. 6 - функциональная блок-схема блока декодирования с переменной длиной слова согласно второму варианту осуществления.
Фиг. 7 - последовательность операций, указывающая способ арифметического декодирования согласно второму варианту осуществления.
Фиг. 8 - последовательность операций, указывающая модификацию способа арифметического декодирования согласно второму варианту осуществления.
Фиг. 9 иллюстрирует разделенные блоки (структуру дерева) в соответствии с HEVC согласно второму варианту осуществления.
Фиг. 10 иллюстрирует структуру многослойного блока согласно второму варианту осуществления.
Фиг. 11 иллюстрирует способ арифметического декодирования для split_coding_unit_flag согласно третьему варианту осуществления.
Фиг. 12А - таблица, указывающая результат верификации относительно split_coding_unit_flag согласно третьему варианту осуществления.
Фиг. 12В - таблица, указывающая результат верификации относительно split_coding_unit_flag согласно третьему варианту осуществления.
Фиг. 13 иллюстрирует способ арифметического декодирования для skip_flag согласно третьему варианту осуществления.
Фиг. 14А - таблица, указывающая результат верификации относительно skip_flag согласно третьему варианту осуществления.
Фиг. 14В - таблица, указывающая результат верификации относительно skip_flag согласно третьему варианту осуществления.
Фиг. 15 - таблица, указывающая способ арифметического декодирования для merge_flag согласно третьему варианту осуществления.
Фиг. 16А - таблица, указывающая результат верификации относительно merge_flag согласно третьему варианту осуществления.
Фиг. 16В - таблица, указывающая результат верификации относительно merge_flag согласно третьему варианту осуществления.
Фиг. 17 иллюстрирует контекстные модели, использующие значения параметров управления, соответствующих двум соседним блокам согласно вариантам осуществления.
Фиг. 18 иллюстрирует увеличение использования памяти при использовании верхнего блока согласно вариантам осуществления.
Фиг. 19 иллюстрирует общую конфигурацию системы предоставления контента для осуществления услуг распределения контента.
Фиг. 20 иллюстрирует общую конфигурацию цифровой широковещательной системы.
Фиг. 21 - блок-схема, иллюстрирующая пример конфигурации телевизора.
Фиг. 22 - блок-схема, иллюстрирующая пример конфигурации блока записи/воспроизведения информации, который считывает и записывает информацию из или на носитель записи, который представляет собой оптический диск.
Фиг. 23 иллюстрирует пример конфигурации носителя записи, который представляет собой оптический диск.
Фиг. 24А иллюстрирует пример сотового телефона.
Фиг. 24В иллюстрирует блок-схему, указывающую пример конфигурации сотового телефона.
Фиг. 25 иллюстрирует структуру мультиплексированных данных.
Фиг. 26 схематично иллюстрирует то, как каждый поток мультиплексируется в мультиплексированных данных.
Фиг. 27 более подробно иллюстрирует то, как видеопоток сохраняется в виде потока PES-пакетов.
Фиг. 28 иллюстрирует структуру TS-пакетов и исходных пакетов в мультиплексированных данных.
Фиг. 29 иллюстрирует структуру данных РМТ.
Фиг. 30 иллюстрирует внутреннюю структуру информации мультиплексированных данных.
Фиг. 31 иллюстрирует внутреннюю структуру информации атрибута потока.
Фиг. 32 иллюстрирует этапы идентификации видеоданных.
Фиг. 33 - блок-схема, иллюстрирующая пример конфигурации интегральной схемы для осуществления способа кодирования движущегося изображения и способа декодирования движущегося изображения согласно каждому из вариантов осуществления.
Фиг. 34 иллюстрирует конфигурацию для переключения между частотами возбуждения.
Фиг. 35 иллюстрирует этапы идентификации видеоданных и переключения между частотами возбуждения.
Фиг. 36 иллюстрирует пример таблицы поиска, в которой стандарты видеоданных ассоциируются с частотами возбуждения.
Фиг. 37А иллюстрирует пример конфигурации для совместного использования модуля блока обработки сигналов.
Фиг. 37В иллюстрирует другой пример конфигурации для совместного использования модуля блока обработки сигналов.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Знание, на котором базируется настоящее изобретение
Авторы данного изобретения обнаружили следующие проблемы.
В схеме высокоэффективного кодирования видео (HEVC), которая представляет собой схему кодирования видео следующего поколения, исследуется контекстная модель при кодировании и декодировании различных параметров управления (NPL 2). Параметр управления включен в кодированный битовый поток и представляет собой параметр (флаг и т.д.), который используется в процессе кодирования или декодирования. Более конкретно, параметр управления представляет собой элемент синтаксиса.
Контекстная модель представляет собой информацию, указывающую, (i) какое условие рассматривается для (ii) сигнала какой единицы (каждого элемента мультизначения, двоичного значения, двоичной последовательности (строки ячеек, bin string)). В данном случае "какое условие" указывает, какое применяется условие с числом условных элементов или какой тип сигнала параметра управления, который должен быть рассмотрен в качестве условия, является соответствующим. Так как условия подразделены на меньшие категории, то есть, так как число условий τ увеличивается, число случаев, которые являются справедливыми для условий, уменьшается. В результате, поскольку число обучений уменьшается, точность предсказанной вероятности уменьшается (например, смотри "эффект ослабления" в NPL 1).
Кроме того, уменьшение числа условий указывает, что оно не учитывает контекста (условий окружения) и не адаптивно к статистическим изменениям.
При построении контекстной модели, после определения основного направления для построения модели, необходимо принимать во внимание пригодность модели путем проведения верификаций (проверок), специализированных для изображения, таких как верификации статистических изменений в деталях изображения и в параметре управления для управления кодированием и декодированием изображения.
В Н.264 использование ограниченного числа наиболее перспективных событий для кодирования символа является критерием правила, и контекстные модели классифицируются на четыре основных типа построения.
Первый и второй типы относятся к кодированию и декодированию параметра управления.
Первая контекстная модель использует кодированные значения вплоть до двух соседних кодированных значений (смотри NPL 1). Хотя определение двух соседних кодированных значений зависит от каждого типа сигнала, обычно используются значения соответствующих параметров управления, которые включены в соседние блоки слева и сверху относительно текущего блока.
Второй тип контекстных моделей представляет собой тип для определения контекста на основании двоичного дерева в качестве вероятности появления. Более конкретно, второй тип контекстных моделей применяется к параметрам управления mb_type и sub_mb_type.
Третий и четвертый типы контекстных моделей относятся к кодированию и декодированию остаточных значений (остаточных данных), таких как данные изображения. Третий тип использует только прошлые кодированные или декодированные значения в порядке сканирования частотных коэффициентов (или квантованных коэффициентов). Четвертый тип определяет контекст согласно декодированным и накопленным значениям (уровням).
Преимущества принципа построения и осуществления вероятностной переходной модели в Н.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_lc, no_residual_data_flag, cbf_luma и cbf_cb (смотри 9.3.3.1.1 из NPL 2).
Однако авторы данного изобретения обнаружили, что существует проблема в использовании памяти при кодировании с использованием "контекстной модели, использующей два соседних блока" первого типа.
Фиг. 17 иллюстрирует контекстные модели, использующие значения параметров управления, соответствующие двум соседним блокам. Кроме того, фиг. 17 иллюстрирует контекстные модели, использующие соседние блоки в Н.264.
Блок С на фиг. 17 включает в себя значение параметра SE управления, который должен быть кодирован и декодирован в текущий момент времени. При кодировании значения параметра SE управления используются значения параметра SE управления одного и того же типа, включенные в верхний блок А и в левый блок В, которые уже кодированы. Более конкретно, вероятность р(х), указывающая то, равно 1 или 0 значение х параметра SE управления блока С (или первое двоичное значение строки ячеек параметра SE управления), предсказанное на основании условной вероятности p(x|(условие A (значение верхнего блока) и условие В (значение левого блока)), использующей, в качестве условий, значение параметра SE управления верхнего блока А и значение параметра SE управления левого блока В.
Фиг. 18 иллюстрирует увеличение использования памяти при использовании верхнего блока.
На фиг. 18 (xP, yP) - положение верхнего левого пикселя единицы предсказания (PU, единицы предсказания движения), включающей в себя блок С. В данном случае блок С представляет собой блок, включающий в себя параметр управления (например, skip_flag), который должен быть кодирован в текущий момент времени. Более того, (xP, yA) на фиг. 18 - положение пикселя, который включен в блок В и используется в качестве условия А (значение параметра управления skip_flag верхнего блока). Кроме того, (xL, yP) на фиг. 18 - положение пикселя, который включен в блок А и используется в качестве условия В (значение параметра управления skip_flag левого блока).
Для того чтобы кодировать или декодировать значение параметра управления skip_flag блока С, устройство кодирования или устройство декодирования должно поддерживать значения skip_flag PU (или результат определения условия), соответствующие положению (xP, yA), включенные в верхний блок В, и положению (xL, yP), включенные в левый блок А. Предполагая, что изображение имеет ширину по горизонтали 4096 пикселей, для того чтобы кодировать параметр управления skip_flag, необходимо поддерживать все значения определения, включенные в верхний ряд (Линия L на фиг. 18). Другими словами, для одного параметра управления необходим объем памяти, полученный в соответствии с размером 4096 пикселей/блок.
В данном случае блок С, который должен быть кодирован, имеет переменные размеры, например 64×64, 16×16 или 4×4. Более того, размер блока С, который должен быть кодирован или декодирован последним, нельзя предсказать при кодировании или декодировании блоков в верхнем ряду (Линия L), включающем в себя (хР, yA). Причина состоит в том, что размер каждого блока в нижнем ряду (ряду, включающем в себя блок С) неизвестен при кодировании или декодировании верхнего ряда, ряда, включающего в себя блок А. Таким образом, устройство кодирования или устройство декодирования должно поддерживать значение параметра управления (или значение определения) для каждого минимального размера блока, предполагая, что наименьший размер блока среди всех размеров, применяемых к параметрам управления, используется в качестве размера блока нижнего ряда. Положения черных кружков на фиг. 8 показывают условия, которые необходимо поддерживать, хотя условные значения фактически не являются обязательными при кодировании и декодировании нижнего ряда (ряда, включающего в себя блок С).
Кроме того, два соседних блока на фиг.18 (левый блок А и верхний блок В) следуют концепции соседних блоков в Н.264, и новые перспективы относительно разбиения иерархических блоков не вводятся. Как описано ниже, существуют случаи, где такие условные значения, на которые будут ссылаться на фиг. 18, не всегда имеют смысл для параметров управления, адаптированных для разделения рекурсивного квадродерева, которое должно быть введено в HEVC, так как параметры управления следуют рекурсивному порядку исполнения, иерархической глубине или положениям блоков.
В связи с этим авторы данного изобретения обнаружили, что использование памяти увеличивается за счет использования условных значений верхних блоков при выполнении арифметического кодирования или декодирования параметров управления. Кроме того, авторы данного изобретения обнаружили, что использование памяти дополнительно увеличивается в HEVC.
Напротив, способ декодирования изображения согласно аспекту настоящего изобретения представляет собой способ декодирования изображения, использующий арифметическое декодирование, и способ включает в себя этапы, на которых: определяют контекст для использования в текущем блоке среди множества контекстов, выполняют арифметическое декодирование над битовой последовательностью, соответствующей текущему блоку, с использованием определенного контекста для декодирования двоичной последовательности, причем битовая последовательность получается путем выполнения арифметического кодирования над параметром управления текущего блока; и выполняют обратную бинаризацию двоичной последовательности для декодирования параметра управления текущего блока, в котором этап определения контекста включает в себя определение типа сигнала параметра управления текущего блока; определение контекста при первом условии, что используются декодированные параметры управления соседних блоков текущего блока, когда тип сигнала представляет собой первый тип, причем соседние блоки представляют собой левый блок и верхний блок текущего блока; и определение контекста при втором условии, что не используется декодированный параметр управления верхнего блока, когда тип сигнала представляет собой второй тип, отличный от первого типа.
С помощью данной структуры способ декодирования изображения позволяет уменьшить использование памяти. Более конкретно, в способе декодирования изображения, поскольку параметр управления верхнего блока не используется для параметра управления второго типа, отсутствует необходимость в поддержании параметра управления второго типа верхнего блока. С помощью данной структуры, по сравнению со случаем, где верхний блок и левый блок используются в качестве единообразного "использования контекстной модели на основании значений параметров управления соседних блоков", использование памяти можно уменьшить согласно способу декодирования изображения.
Кроме того, согласно способу декодирования изображения можно использовать контекст, соответствующий для иерархической структуры дерева, которая представляет собой структуру данных, которая не рассматривается в общепринятом стандарте Н.264 и является уникальной для нового стандарта HEVC. Альтернативно, можно выполнить ссылку на память.
Кроме того, второе условие может представлять условие, касающееся того, декодированные параметры управления левого блока и верхнего блока не используются.
С помощью данной структуры способ декодирования изображения позволяет уменьшить использование памяти за счет неиспользования параметра управления левого блока в добавление к параметру управления верхнего блока.
Кроме того, при определении контекста, предопределенный контекст можно определить при втором условии в качестве контекста для использования при арифметическом декодировании текущего блока, когда тип сигнала представляет собой второй тип.
С помощью данной структуры способ декодирования изображения позволяет уменьшить объем обработки.
Кроме того, контекст можно определить при втором условии, согласно иерархической глубине единицы данных, которой принадлежит параметр управления текущего блока, когда типом сигнала является второй тип.
С помощью данной структуры способ декодирования изображения позволяет выбрать соответствующий контекст при уменьшении использования памяти.
Кроме того, этап определения контекста может дополнительно включать в себя: определение, является ли декодированный параметр управления верхнего блока доступным при декодировании, основываясь на положении текущего блока; и определяют контекст при втором условии, когда декодированный параметр управления верхнего блока не является доступным.
С помощью данной структуры способ декодирования изображения позволяет уменьшить объем обработки.
Кроме того, при определении контекста можно определить, что декодированный параметр управления верхнего блока является доступным при декодировании, когда текущий блок находится на границе среза.
Кроме того, при определении контекста можно определить, является ли декодированный параметр управления верхнего блока доступным при декодировании, согласно иерархической глубине единицы данных, которой принадлежит параметр управления текущего блока.
Кроме того, второй тип может представлять собой параметр управления, имеющий предопределенную структуру данных.
Кроме того, этап определения контекста может дополнительно включать в себя определение контекста параметра управления второй единицы, меньшей, чем первая единица, путем переключения между первым условием и вторым условием, основываясь на параметре управления первой единицы.
Кроме того, первый тип может представлять собой одно из "split_coding_unit_flag" и "skip_flag", и второй тип может представлять собой "merge_flag".
С помощью данной структуры способ декодирования изображения позволяет соответствующим образом уменьшить использование памяти параметра управления второго типа, например, в случае отсутствия оценки BD-скорости изображения.
Кроме того, "split_coding_unit_flag" может указывать, разделен ли текущий блок на множество блоков, "skip_flag" может указывать, пропускать ли текущий блок, и "merge_flag" может указывать, используется ли режим слияния для текущего блока.
Кроме того, процессы декодирования в соответствии с первым стандартом и процессы декодирования в соответствии со вторым стандартом можно переключать согласно идентификатору, указывающему один из первого стандарта и второго стандарта, причем идентификатор включен в кодированный сигнал, и определение контекста, выполнение и выполнение обратной бинаризации можно выполнить в виде процессов декодирования в соответствии с первым стандартом, когда идентификатор указывает первый стандарт.
Кроме того, способ кодирования изображения согласно аспекту настоящего изобретения представляет собой способ кодирования изображения, использующий арифметическое кодирование, и способ включает в себя этапы, на которых:
выполняют бинаризацию параметра управления текущего блока для генерирования двоичной последовательности; определяют контекст для использования в текущем блоке среди множества контекстов; и выполняют арифметическое кодирование над двоичной последовательностью с использованием определенного контекста для генерирования битовой последовательности, в котором определение контекста включает в себя:
определение типа сигнала параметра управления текущего блока; определение контекста при первом условии, что используются параметры управления соседних блоков текущего блока, когда тип сигнала представляет собой первый тип, причем соседние блоки представляют собой левый блок и верхний блок текущего блока; и определение контекста при втором условии, что не используется параметр управления верхнего блока, когда тип сигнала представляет собой второй тип, отличный от первого типа.
С помощью данной структуры способ кодирования изображения позволяет уменьшить использование памяти. Более конкретно, в способе кодирования изображения, поскольку параметр управления верхнего блока не используется для параметра управления второго типа, то отсутствует необходимость поддержания параметра управления второго типа верхнего блока. С помощью данной структуры, по сравнению со случаем, где левый блок и верхний блок используются в качестве единообразного "использования контекстной модели на основании значений параметров управления соседних блоков", использование памяти можно уменьшить согласно способу кодирования изображения.
Кроме того, согласно способу кодирования изображения можно использовать контекст, надлежащий для иерархической структуры дерева, которая представляет собой структуру данных, которая не рассматривается в традиционном Н.264 и является уникальной для нового стандарта HEVC. Альтернативно, можно выполнить ссылку на память.
Кроме того, устройство декодирования изображения согласно аспекту настоящего изобретения представляет собой устройство декодирования изображения, использующее арифметическое декодирование, и устройство включает в себя: блок управления контекстом, выполненный с возможностью определения контекста для использования в текущем блоке среди множества контекстов; блок арифметического декодирования, выполненный с возможностью выполнения арифметического декодирования над битовой последовательностью, соответствующей текущему блоку, с использованием определенного контекста для декодирования двоичной последовательности, причем битовая последовательность получена путем выполнения арифметического кодирования над параметром управления текущего блока; и блок обратной бинаризации, выполненный с возможностью выполнения обратной бинаризации двоичной последовательности для декодирования параметра управления текущего блока, в котором блок управления контекстом выполнен с возможностью: определения типа сигнала параметра управления текущего блока; определения контекста при первом условии, что используются декодированные параметры управления соседних блоков текущего блока, когда тип сигнала представляет собой первый тип, причем соседние блоки представляют собой левый блок и верхний блок текущего блока; и определения контекста при втором условии, что не используется параметр управления верхнего блока тогда, когда тип сигнала представляет собой второй тип, отличный от первого типа.
С помощью данной конфигурации устройство декодирования изображения позволяет уменьшить использование памяти.
Кроме того, устройство кодирования изображения согласно аспекту настоящего изобретения представляет собой устройство кодирования изображения, использующее арифметическое кодирование, и устройство включает в себя: блок бинаризации, выполненный с возможностью бинаризации параметра управления текущего блока для генерирования двоичной последовательности; блок управления контекстом, выполненный с возможностью определения контекста для использования в текущем блоке среди множества контекстов; и блок арифметического кодирования, выполненный с возможностью выполнения арифметического кодирования над двоичной последовательностью с использованием определенного контекста для генерирования битовой последовательности, в котором блок управления контекстом выполнен с возможностью: определения типа сигнала параметра управления текущего блока; определения контекста при первом условии, что используются параметры управления соседних блоков текущего блока, когда тип сигнала представляет собой первый тип, причем соседние блоки представляют собой левый блок и верхний блок текущего блока; и определения контекста при втором условии, что не используется параметр управления верхнего блока, когда тип сигнала представляет собой второй тип, отличный от первого типа.
С помощью данной конфигурации устройство кодирования изображения позволяет уменьшить использование памяти.
Кроме того, устройство кодирования и декодирования изображения согласно аспекту настоящего изобретения представляет собой устройство кодирования и декодирования изображения, включающее в себя устройство декодирования изображения и устройство кодирования изображения.
Общие или специфические аспекты можно реализовать с помощью системы, способа, интегральной схемы, компьютерной программы или носителя записи или с помощью произвольной комбинации из системы, способа, интегральной схемы, компьютерной программы и носителя записи.
Устройство декодирования изображения и устройство кодирования изображения согласно аспекту настоящего изобретения будет специфическим образом описаны со ссылкой на чертежи.
Варианты осуществления, описанные ниже, показывают специфические примеры настоящего изобретения. Значения, формы, материалы, составные элементы, положения и соединения составных элементов, этапы и порядок этапов, указанные в вариантах осуществления, представляют собой примеры и не ограничивают настоящее изобретение. Составные элементы в вариантах осуществления, которые не описаны в независимых пунктах формулы изобретения, которая описывает более общую концепцию настоящего изобретения, описаны в качестве произвольных составных элементов.
ПЕРВЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Ниже приводится описание устройства кодирования изображения согласно первому варианту осуществления настоящего изобретения. Устройство кодирования изображения согласно первому варианту осуществления определяет контекст путем переключения между (1) использованием верхнего блока (блока сверху) и (2) без использования верхнего блока, согласно типу сигнала параметра управления при арифметическом кодировании. С помощью данной структуры можно подавить ухудшение качества изображения и можно уменьшить использование памяти.
Сначала будет описана конфигурация устройства кодирования изображения согласно первому варианту осуществления.
На фиг. 1 изображена блок-схема, иллюстрирующая устройство 100 кодирования изображения согласно первому варианту осуществления.
Устройство 100 кодирования изображения, показанное на фиг. 1, представляет собой устройство кодирования изображения, использующее арифметическое кодирование, и кодирует входной сигнал 121 изображения для генерирования битового потока 124. Устройство 100 кодирования изображения включает в себя блок 101 управления, блок 102 вычитания, блок 103 преобразования и квантования, блок 104 кодирования с переменной длиной слова, блок 105 обратного квантования и обратного преобразования, блок 106 суммирования, блок 107 внутреннего предсказания, блок 108 внешнего предсказания и переключатель 109.
Блок 101 управления вычисляет параметр 130 управления на основании входного сигнала 121 изображения, который должен быть кодирован. Например, параметр 130 управления включает в себя информацию о типе изображения входного сигнала 121 изображения, который должен быть кодирован, размере единицы предсказания движения (единицы предсказания PU) текущего блока, который должен быть кодирован, и информации управления единицы предсказания движения. В данном случае сам параметр 130 управления (данные управления) должен быть кодирован. Таким образом, блок 101 управления выводит параметр 130 управления в блок 104 кодирования с переменной длиной слова.
Блок 102 вычитания вычисляет остаточный сигнал 122, который представляет собой разность (остаточное значение) между входным сигналом 121 изображения и сигналом 129 предсказания изображения на основе единиц-блоков.
Блок 103 преобразования и квантования преобразует остаточный сигнал 122 в значения частотного коэффициента и выполняет квантование полученных значений частотных коэффициентов в квантованные коэффициенты 123 преобразования (остаточные данные).
Блок 105 обратного квантования и обратного преобразования выполняет обратное квантование квантованных коэффициентов 123 преобразования в значения частотных коэффициентов и выполняет обратное преобразование полученных значений частотных коэффициентов в восстановленный остаточный сигнал 125.
Блок 106 суммирования суммирует остаточный сигнал 125 с сигналом 129 предсказания изображения и выводит восстановленный сигнал 126 изображения.
Блок 107 внутреннего предсказания выполняет внутреннее предсказание с использованием восстановленного сигнала 126 изображения для генерирования сигнала 127 предсказания изображения. Блок 108 внешнего предсказания выполняет внешнее предсказание с использованием восстановленного сигнала 126 изображения для генерирования сигнала 128 предсказания изображения.
Переключатель 109 выбирает один из сигнала 127 предсказания изображения и сигнала 128 предсказания изображения и выводит выбранный сигнал в качестве сигнала 129 предсказания изображения.
Блок 104 кодирования с переменной длиной слова кодирует, с использованием САВАС, квантованные коэффициенты 123 преобразования и параметр 130 управления для каждого входного блока для генерирования битового потока 124.
Далее будет описана конфигурация блока 104 кодирования с переменной длиной слова.
На фиг. 2 изображена функциональная блок-схема блока 104 кодирования с переменной длиной слова. Блок 104 кодирования с переменной длиной слова включает в себя блок 141 бинаризации, блок 142 управления контекстом и блок 143 двоичного арифметического кодирования. Ниже приводится описание процесса кодирования с переменной длиной слова над параметром 130 управления. Хотя описание, касающееся процесса кодирования с переменной длиной слова над квантованными коэффициентами 123 преобразования, опущено, этот процесс можно реализовать, например, с использованием известного подхода.
Блок 141 бинаризации выполняет бинаризацию параметра 130 управления для генерирования двоичной последовательности 151. Более конкретно блок 141 бинаризации представляет собой блок обработки, который выполняет "II.1) процесс бинаризации" согласно NPL 1. Блок 141 бинаризации преобразует параметр 130 управления в двоичную последовательность 151, которая называется "строкой ячеек" для к