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

Иллюстрации

Показать все

Изобретение относится к технологиям арифметического кодирования/декодирования изображений. Техническим результатом является сокращение объемов обрабатываемых данных при подавлении ухудшения эффективности кодирования/декодирования. Предложен способ декодирования изображений. Способ включает в себя этап, на котором осуществляют арифметическое декодирование над первым флагом, указывающим, идентичен ли параметр SAO для целевого блока, который должен быть декодирован, параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока, параметр SAO для целевого блока указывает подробности обработки адаптивного к выборке смещения (SAO). Далее, согласно способу, выполняют арифметическое декодирование над параметром SAO для целевого блока, когда первый флаг указывает, что параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока. 2 н. и 4 з.п. ф-лы, 36 ил.

Реферат

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

Настоящее изобретение имеет отношение к способу кодирования изображений и способу декодирования изображений, в частности к арифметическому кодированию и арифметическому декодированию параметров адаптивного к выборке смещения (SAO).

УРОВЕНЬ ТЕХНИКИ

В последние годы с быстрым усовершенствованием технологий устройств цифрового видео стало больше возможностей для кодирования со сжатием видеосигналов (движущихся графических изображений временной последовательности) и записи получающихся в результате видеосигналов на носители записи, такие как цифровой универсальный диск (DVD) или жесткий диск, или распространения их в сети. Примером стандартов кодирования изображений является стандарт H.264/AVC (MPEG 4 AVC). Стандарт высокоэффективного кодирования видео (HEVC) был недавно исследован в качестве стандарта нового поколения (см., например, не патентную литературу 1).

СПИСОК ЛИТЕРАТУРЫ

НЕПАТЕНТНАЯ ЛИТЕРАТУРА

[Непатентная литература 1] Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 9th Meeting: Geneva, CH, 27 April - 7 May 2012 JCTVC-I1003, Title: High efficiency video coding (HEVC) text specification draft 7 http://phenix.it-sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v2.zip

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

ТЕХНИЧЕСКАЯ ПРОБЛЕМА

Для такого способа кодирования изображений и способа декодирования изображений потребовалось сократить объем обработки при подавлении ухудшения эффективности кодирования.

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

РЕШЕНИЕ ПРОБЛЕМЫ

В одном общем аспекте раскрытые здесь методики представляют способ кодирования изображений, включающий в себя: выполнение обработки адаптивного к выборке смещения (SAO) над сигналом яркости, сигналом цветности Cb и сигналом цветности Cr, которые включены в целевой блок, который должен быть кодирован; выполнение арифметического кодирования над первым флагом, указывающим, идентичен ли параметр SAO для целевого блока параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока, параметр SAO для целевого блока указывает подробности обработки SAO; и выполнение арифметического кодирования над параметром SAO для целевого блока, когда параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока, причем при выполнении арифметического кодирования над первым флагом арифметическое кодирование выполняется над первым флагом для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr посредством использования единственного контекста.

Эти общие и частные аспекты могут быть реализованы с использованием системы, способа, интегральной схемы, компьютерной программы или считываемого компьютером носителя записи, такого как компакт-диск (CD-ROM), или любой комбинации систем, способов, интегральных схем, компьютерных программ или считываемых компьютером носителей записи.

БЛАГОПРИЯТНЫЕ ЭФФЕКТЫ ИЗОБРЕТЕНИЯ

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

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

Фиг. 1 - блок-схема устройства кодирования изображений в соответствии с вариантом осуществления 1.

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

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

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

Фиг. 5 - блок-схема модуля кодирования sao_merge_left_flag в соответствии с вариантом осуществления 1.

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

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

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

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

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

Фиг. 11 - блок-схема модуля декодирования параметра SAO с переменной длиной слова в соответствии с вариантом осуществления 2.

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

Фиг. 13 - блок-схема модуля декодирования sao_merge_left_flag в соответствии с вариантом осуществления 2.

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

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

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

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

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

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

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

Фиг. 21A показывает пример сотового телефона.

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

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

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

Фиг. 24 более подробно показывает, каким образом видеопоток хранится в потоке пакетов PES.

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

Фиг. 26 показывает структуру данных PMT.

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

Фиг. 28 показывает внутреннюю структуру информации атрибутов потока.

Фиг. 29 показывает этапы для идентификации видеоданных.

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

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

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

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

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

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

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

(ОСНОВОПОЛАГАЮЩИЕ ЗНАНИЯ, ФОРМИРУЮЩИЕ ОСНОВУ НАСТОЯЩЕГО ИЗОБРЕТЕНИЯ)

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

Настоящий стандарт HEVC (непатентная литература 1) определяет обработку, называемую обработка адаптивного к выборке смещения (SAO). В обработке SAO соответствующее значение смещения добавляется к каждому из пикселей в изображении, сформированном посредством декодирования битового потока. Обработка SAO способна более точно воспроизвести исходное изображение, которое еще не было кодировано, и в конечном счете сократить ухудшение качества изображения, вызванное кодированием.

В арифметическом кодировании в соответствии со стандартом HEVC устройство кодирования изображений выбирает контекст для каждого сигнала, который должен быть кодирован. Вероятность появления символа определяется на основе выбранного контекста.

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

Чтобы решить описанную выше проблему, в соответствии с аспектом настоящего изобретения обеспечен способ кодирования изображений, включающий в себя: выполнение обработки адаптивного к выборке смещения (SAO) над сигналом яркости, сигналом цветности Cb и сигналом цветности Cr, которые включены в целевой блок, который должен быть кодирован; выполнение арифметического кодирования над первым флагом, указывающим, идентичен ли параметр SAO для целевого блока параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока, параметр SAO для целевого блока указывает подробности обработки SAO; и выполнение арифметического кодирования над параметром SAO для целевого блока, когда параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока, причем при выполнении арифметического кодирования над первым флагом арифметическое кодирование выполняется над первым флагом для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr посредством использования единственного контекста.

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

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

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

Например, также возможно, что при выполнении арифметического кодирования над первым флагом используется единственный контекст для выполнения арифметического кодирования над: первым флагом яркости, который является первым флагом для сигнала яркости; первым флагом Cb, который является первым флагом для сигнала цветности Cb; и первым флагом Cr, который является первым флагом для сигнала цветности Cr.

Например, дополнительно возможно, что при выполнении арифметического кодирования над первым флагом используется единственный контекст для выполнения арифметического кодирования над единственным первым флагом, совместно используемым сигналом яркости, сигналом цветности Cb и сигналом цветности Cr.

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

В соответствии с другим аспектом настоящего изобретения обеспечен способ декодирования изображений, включающий в себя: выполнение арифметического декодирования над первым флагом, указывающим, идентичен ли параметр SAO для целевого блока, который должен быть декодирован, параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока, параметр SAO для целевого блока указывает подробности обработки адаптивного к выборке смещения (SAO); выполнение арифметического декодирования над параметром SAO для целевого блока, когда первый флаг указывает, что параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока; и выполнение в соответствии с первым флагом обработки SAO над сигналом яркости, сигналом цветности Cb и сигналом цветности Cr, которые включены в целевой блок, посредством использования одного из: параметра SAO для целевого блока, к которому было применено арифметическое декодирование; и параметра SAO для соседнего слева блока, причем при выполнении арифметического декодирования над первым флагом используется единственный контекст для выполнения арифметического декодирования над первым флагом для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr.

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

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

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

Например, также возможно, что при выполнении арифметического декодирования над первым флагом используется единственный контекст для выполнения арифметического декодирования над: первым флагом яркости, который является первым флагом для сигнала яркости; первым флагом Cb, который является первым флагом для сигнала цветности Cb; и первым флагом Cr, который является первым флагом для сигнала цветности Cr.

Например, дополнительно возможно, что при выполнении арифметического декодирования над первым флагом единственный контекст используется при арифметическом декодировании над единственным первым флагом для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr.

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

В соответствии еще с одним аспектом настоящего изобретения обеспечено устройство кодирования изображений, содержащее: схему управления; и средство хранения, доступное из схемы управления, причем схема управления исполняет способ кодирования изображений, включающий в себя: выполнение обработки адаптивного к выборке смещения (SAO) над сигналом яркости, сигналом цветности Cb и сигналом цветности Cr, которые включены в целевой блок, который должен быть кодирован; выполнение арифметического кодирования над первым флагом, указывающим, идентичен ли параметр SAO для целевого блока параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока, параметр SAO для целевого блока указывает подробности обработки SAO; и выполнение арифметического кодирования над параметром SAO для целевого блока, когда параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока, причем при выполнении арифметического кодирования над первым флагом арифметическое кодирование выполняется над первым флагом для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr посредством использования единственного контекста.

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

В соответствии еще с одним аспектом настоящего изобретения обеспечено устройство декодирования изображений, включающее в себя: схему управления; и средство хранения, доступное из схемы управления, причем схема управления исполняет способ декодирования изображений, включающий в себя: выполнение арифметического декодирования над первым флагом, указывающим, идентичен ли параметр SAO для целевого блока, который должен быть декодирован, параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока, параметр SAO для целевого блока указывает подробности обработки адаптивного к выборке смещения (SAO); выполнение арифметического декодирования над параметром SAO для целевого блока, когда первый флаг указывает, что параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока; и выполнение в соответствии с первым флагом обработку SAO над сигналом яркости, сигналом цветности Cb и сигналом цветности Cr, которые включены в целевой блок, посредством использования одного из: параметра SAO для целевого блока, к которому было применено арифметическое декодирование; и параметра SAO для соседнего слева блока, причем при выполнении арифметического декодирования над первым флагом используется единственный контекст для выполнения арифметического декодирования над первым флагом для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr.

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

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

Эти общие и частные аспекты могут быть реализованы с использованием системы, способа, интегральной схемы, компьютерной программы или считываемого компьютером носителя записи, такого как компакт-диск (CD-ROM), или любой комбинации систем, способов, интегральных схем, компьютерных программ или считываемых компьютером носителей записи.

Далее некоторые иллюстративные варианты осуществления устройства кодирования изображений и устройства декодирования изображений описаны со ссылкой на приложенные чертежи.

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

(ВАРИАНТ ОСУЩЕСТВЛЕНИЯ 1)

Далее описывается устройство кодирования изображений в соответствии с вариантом осуществления 1

<ОБЩАЯ СТРУКТУРА>

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

Устройство 100 кодирования изображений, показанное на фиг. 1, кодирует входное изображение 121 для формирования битового потока 125 (кодированного битового потока). Устройство 100 кодирования изображений включает в себя модуль 101 разделения на блоки кодирования, модуль 102 вычитания, модуль 103 преобразования, модуль 104 кодирования коэффициентов с переменной длиной слова, модуль 105 обратного преобразования, модуль 106 сложения, память 107 кадров, модуль 108 предсказания, модуль 109 обработки SAO и модуль 110 кодирования параметра SAO с переменной длиной слова.

<ОБРАБОТКА (ОБЩАЯ)>

Далее со ссылкой на фиг. 2 описана общая последовательность операций.

(ЭТАП S101)

Модуль 101 разделения на блоки кодирования делит входное изображение 121 на блоки 122, которые должны быть кодированы (блоки кодирования), и последовательно обеспечивает блоки 122 кодирования модулю 102 вычитания и модулю 108 предсказания. При этом каждый из блоков 122 кодирования имеет переменный размер. Модуль 101 разделения на блоки кодирования, таким образом, делит входное изображение 121 на блоки 122 кодирования опираясь на особенности входного изображения 121. Например, один блок 122 кодирования имеет минимум 4 пикселя по горизонтали и 4 пикселя по вертикали и максимум 32 пикселя по горизонтали и 32 пикселя по вертикали.

(ЭТАП S102)

Модуль 108 предсказания формирует блок 129 предсказания из блока 122 кодирования и декодированного изображения 128 сохраненного в памяти 107 кадров.

(ЭТАП S103)

Модуль 102 вычитания формирует разностный блок 123, который является разностью между блоком 122 кодирования и блоком 129 предсказания.

(ЭТАП S104)

Модуль 103 преобразования преобразовывает разностный блок 123 в частотные коэффициенты 124.

(ЭТАП S105)

Модуль 105 обратного преобразования преобразовывает частотные коэффициенты 124 в пиксельные данные для воссоздания разностного блока 126.

(ЭТАП S106)

Модуль 106 сложения складывает вместе воссозданный разностный блок 126 и блок 129 предсказания для формирования декодированного блока 127.

(ЭТАП S107)

Модуль 109 обработки SAO формирует параметр 131 SAO для целевых пикселей в декодированном блоке 127 и затем добавляет значения смещения SAO к пикселям в соответствии со формированным параметром SAO, тем самым формируя декодированный блок 130. Модуль 109 обработки SAO сохраняет полученный в результате декодированный блок 130 в памяти 107 кадров.

Более определенно, при добавлении смещения модуль 109 обработки SAO классифицирует каждый из пикселей в одну из категорий, и добавляет значение смещения, соответствующее классифицированной категории, к целевому пикселю. Имеется множество способов классификации. В качестве параметра 131 SAO модуль 109 обработки SAO формирует: sao_type_idx, который является параметром, указывающим способ классификации, применяемый для целевого блока; и sao_offset, указывающее значения смещений. Если параметр 131 SAO для целевого блока идентичен параметру 131 SAO для кодированного блока непосредственно слева от целевого блока, то модуль 109 обработки SAO устанавливает sao_merge_left_flag в 1 для указания этой ситуации.

(ЭТАП S108)

Модуль 110 кодирования параметра SAO с переменной длиной слова выполняет кодирование с переменной длиной слова над параметром 131 SAO, чтобы сформировать битовый поток 125. Этот этап будет описан более подробно ниже по тексту.

(ЭТАП S109)

Модуль 104 кодирования коэффициентов с переменной длиной слова выполняет кодирование с переменной длиной слова над частотными коэффициентами 124, чтобы сформировать битовый поток 125.

(ЭТАП S110)

Обработка от этапа S102 до этапа S109 повторяется, пока не будут кодированы все блоки кодирования в целевом изображении.

Далее более подробно описывается модуль 110 кодирования параметра SAO с переменной длиной слова.

<СТРУКТУРА МОДУЛЯ 110 КОДИРОВАНИЯ ПАРАМЕТРА SAO С ПЕРЕМЕННОЙ ДЛИНОЙ СЛОВА>

Фиг. 3 является блок-схемой, показывающей структуру модуля 110 кодирования параметра SAO с переменной длиной слова. Как показано на фиг. 3, модуль 110 кодирования параметра SAO с переменной длиной слова включает в себя модуль 141 кодирования sao_merge_left_flag, модуль 142 кодирования sao_type_idx и модуль 143 кодирования sao_offset.

<ОБРАБОТКА (КОДИРОВАНИЕ С ПЕРЕМЕННОЙ ДЛИНОЙ СЛОВА)>

Далее со ссылкой на фиг. 4 описана последовательность операций кодирования параметра SAO с переменной длиной слова (этап S108 на фиг. 2).

(ЭТАП S121)

Модуль 141 кодирования sao_merge_left_flag кодирует sao_merge_left_flag. Следует отметить, что обработка от этапа S121 до этапа S124 выполняется для каждой из компоненты Y яркости (сигнала яркости), компоненты Cb цветности (сигнала цветности Cb) и компоненты Cr цветности (сигнала цветности Cr). Это означает, что обработка от этапа S121 до этапа S124 выполняется три раза. В дальнейшем компонента Y яркости, компонента Cb цветности и компонента Cr цветности упоминаются соответственно также как Y, Cb и Cr.

(ЭТАП S122)

Модуль 110 кодирования параметра SAO с переменной длиной слова определяет, равен ли 1 sao_merge_left_flag. Если sao_merge_left_flag равен 1, то модуль 110 кодирования параметра SAO с переменной длиной слова не кодирует ни sao_type_idx, ни sao_offset, и переходит на этап S125. С другой стороны, если флаг sao_merge_left_flag равен 0, то модуль 110 кодирования параметра SAO с переменной длиной слова переходит на этап S123.

(ЭТАП S123)

Модуль 142 кодирования sao_type_idx кодирует sao_type_idx.

(ЭТАП S124)

Модуль 143 кодирования sao_offset кодирует sao_offset.

(ЭТАП S125)

Обработка от этапа S121 до этапа S124 повторяется, пока не будут кодированы соответствующие параметры SAO для Y, Cb и Cr.

Далее более подробно описывается модуль 141 кодирования sao_merge_left_flag.

<СТРУКТУРА МОДУЛЯ 141 КОДИРОВАНИЯ SAO_MERGE_LEFT_FLAG>

Фиг. 5 является блок-схемой, показывающей структуру модуля 141 кодирования sao_merge_left_flag. Как показано на фиг. 5, модуль 141 кодирования sao_merge_left_flag включает в себя модуль 151 переключения контекста, модуль 152 арифметического кодирования контекста-0 и модуль 153 арифметического кодирования контекста-1.

<ОБРАБОТКА (КОДИРОВАНИЕ SAO_MERGE_LEFT_FLAG>

Далее со ссылкой на фиг. 6 более подробно описано кодирование sao_merge_left_flag (этап S121 на фиг. 4).

(ЭТАП S131)

Модуль 151 переключения контекста определяет, относится ли целевой sao_merge_left_flag к компоненте Y яркости. Если целевой sao_merge_left_flag относится к компоненте Y яркости, то обработка переходит на этап S132. Если целевой sao_merge_left_flag относится к компонентам Cb или Cr, то обработка переходит на этап S133.

(ЭТАП S132)

Модуль 152 арифметического кодирования контекста-0 выполняет арифметическое кодирование над sao_merge_left_flag на основе контекста 0, чтобы сформировать битовый поток.

(ЭТАП S133)

Модуль 153 арифметического кодирования контекста-1 выполняет арифметическое кодирование над sao_merge_left_flag на основе контекста 1, чтобы сформировать битовый поток. В настоящем варианте осуществления модуль 141 кодирования sao_merge_left_flag использует два вида контекстов, а именно, контекст 0 и контекст 1, чтобы выполнить арифметическое кодирование над sao_merge_left_flag(s). Модуль 141 кодирования sao_merge_left_flag использует контекст 0 только для sao_merge_left_flag для компоненты Y яркости, но использует контекст 1 и для sao_merge_left_flag для компоненты Cb цветности, и для sao_merge_left_flag для компоненты Cr цветности.

<ЭФФЕКТЫ>

Как описано выше, устройство 100 кодирования изображений в соответствии с настоящим вариантом осуществления использует один и тот же контекст для sao_merge_left_flag для Cb и sao_merge_left_flag для Cr при арифметическом кодировании над sao_merge_left_flag(s). Устройство 100 кодирования изображений, таким образом, может сократить количество контекстов и в конечном счете уменьшить емкость памяти. Кроме того, возможно устранить выбор контекста в соответствии с определением относительно того, является ли целью Cb или Cr, и поэтому устранить определение Cb/Cr. В настоящем стандарте HEVC (непатентная литература 1) считается, что вероятность появления символа sao_merge_left_flag (вероятность, что sao_merge_left_flag равен 1) отличается между Cb и Cr. Таким образом, разные контексты используются для Cb и Cr. Однако авторы настоящего документа провели эксперименты и нашли, что sao_merge_left_flag для Cb и sao_merge_left_flag для Cr коррелируют друг с другом, и что совместное использование одного и того же контекста между Cb и Cr едва ухудшает эффективность кодирования.

Следует отметить, что выше было описано, что устройство 100 кодирования изображений использует один и тот же контекст для Cb и Cr, но также возможно использовать тот же самый контекст для Y, Cb и Cr. Фиг. 7 является блок-схемой последовательности операций способа кодирования изображений, выполняемого устройством 100 кодирования изображений в упомянутом выше случае.

Как показано на фиг. 7, устройство 100 кодирования изображений выполняет обработку SAO для каждого сигнала яркости, сигнала цветности Cb и сигнала цветности Cr, включенных в целевой блок (этап S141). Более определенно, устройство 100 кодирования изображений классифицирует каждый из пикселей, включенных в целевой блок, относя его к одной из категорий, и добавляет значение смещения, соответствующее классифицированной категории, к целевому пикселю. Параметр SAO включает в себя: информацию (sao_type_idx), указывающую способ классификации по категориям; и информацию (sao_offset), указывающую значения смещений. Примеры способа классификации по категориям представляют собой способ смещения полосы для классификации пикселей в соответствии с их значениями, способ смещения края для классификации пикселей в соответствии с направлением края и т.п. sao_type_idx может дополнительно указывать, следует ли выполнять обработку SAO.

Затем устройство 100 кодирования изображений выполняет арифметическое кодирование над первым флагом (sao_merge_left_flag) указывающим, идентичен ли параметр SAO, который указывает подробности обработки SAO, целевого блока параметру SAO для соседнего слева блока, находящегося непосредственно слева от целевого блока (этап S142). При этом устройство 100 кодирования изображений использует единственный контекст при арифметическом кодировании первого флага для сигнала яркости, сигнала цветности Cb и сигнала цветности Cr. При этом контекст представляет собой таблицу, указывающую вероятность появления символа. Контекст обновляется в соответствии с символом, который фактически возникает.

Если параметр SAO для целевого блока отличается от параметра SAO для соседнего слева блока, другими словами, если первый флаг равен "0" ("Нет" на этапе S143), то устройство 100 кодирования изображений выполняет арифметическое кодирование над параметром SAO для целевого блока (этап S144).

С другой стороны, если параметр SAO для целевого блока идентичен параметру SAO соседнего слева блока, другими словами, если первый флаг равен "1" ("Да" на этапе S143), то устройство 100 кодирования изображений не выполняет арифметическое кодирование над параметром SAO для целевого блока.

Фиг. 8 является схемой результатов эксперимента способа кодирования изображений в соответствии с вариантом осуществления 1 (методика, использующая один и тот же контекст для Cb и Cr) и способа кодирования изображений в соответствии с изменением 1 (методика, использующая один и тот же контекст для Y, Cb и Cr). Условия эксперимента основаны на общих условиях эксперимента группы стандарта HEVC. Большее численное значение представляет более низкую эффективность кодирования. Отрицательная величина представляет улучшение эффективности кодирования. Как видно на фиг. 8, все значения составляют 0,1% или меньше. Поэтому очевидно, что эффективность кодирования едва уменьшается, даже если количество контекстов сокращено посредством совместного использования контекстов. В изменении 1 часть значений составляет -0,3%. В результате видно, что эффективность кодирования увеличивается. Считается, что sao_merge_left_flag(s) для Y, Cb и Cr коррелируют друг с другом, и, таким образом, вероятность появления символа сходится к соответствующему значению на более ранней стадии кодирования. Кроме того, при использовании одного и того же контекста среди Y, Cb и Cr возможно сократить этапы определения для определения, является ли целью Y или нет, и тем самым сократить объем обработки. Кроме того, количество контекстов может быть дополнительно сокращено.

Кроме того, не только к sao_merge_left_flag, но также и к другому синтаксису, добавленному к битовому потоку, может быть применен способ в соответствии с настоящим вариантом осуществления или способ в соответствии с изменением 1. Другими словами, один и тот же модуль кодирования с переменной длиной слова может быть использован для sao_merge_left_flag и другого синтаксиса. Например, устройство 100 кодирования изображений может использовать sao_merge_up_flag, который указывает, должен ли параметр SAO для блока, смежного с целевым блоком кодирования, быть скопирован для использования и использовать один и тот же контекст для sao_merge_up_flag для Cb и Cr или для sao_merge_up_flag для Y, Cb, и Cr. Унифицируя способы выбора контекста, используемые при арифметическом кодировании над sao_merge_up_flag и sao_merge_left_flag, как описано выше, возможно сократить контексты, а также упростить устройство, поскольку устройство использует один и тот же модуль кодирования с переменной длиной слова для sao_merge_up_flag и sao_merge_left_flag.

Другими словами, устройство 100 кодирования изображений выполняет арифметическое кодирование над вторым флагом (sao_merge_up_flag), который указывает, идентичен ли параметр SAO, который указывает подробности обработки SAO, целевого блока параметру SAO для соседнего сверху блока, который расположен непосредственно над целевым блоком. Кроме того, устройство 100 кодирования изображений использует один и тот же способ определения контекста, чтобы определить: контекст, который должен быть использован для арифметического кодирования над первым флагом; и контекст, который должен быть использован для арифметического кодирования над вторым флагом. При этом примеры способа определения контекста представляют собой способ использования одного и того же контекста для Cb и Cr и способ использования одного и того же контекста для Y, Cb и Cr, как описано выше.

Следует отметить, что выше было описано, что устройство 100 кодирования изображений использует в качестве параметра SAO sao_type_idx, указывающий тип к