RU2720605C2 - Устройство обработки изображения и способ - Google Patents

Устройство обработки изображения и способ Download PDF

Info

Publication number
RU2720605C2
RU2720605C2 RU2016141278A RU2016141278A RU2720605C2 RU 2720605 C2 RU2720605 C2 RU 2720605C2 RU 2016141278 A RU2016141278 A RU 2016141278A RU 2016141278 A RU2016141278 A RU 2016141278A RU 2720605 C2 RU2720605 C2 RU 2720605C2
Authority
RU
Russia
Prior art keywords
section
parameter
level
image
hrd
Prior art date
Application number
RU2016141278A
Other languages
English (en)
Other versions
RU2016141278A3 (ru
RU2016141278A (ru
Inventor
Казуси САТО
Original Assignee
Сони Корпорейшн
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Сони Корпорейшн filed Critical Сони Корпорейшн
Publication of RU2016141278A publication Critical patent/RU2016141278A/ru
Publication of RU2016141278A3 publication Critical patent/RU2016141278A3/ru
Application granted granted Critical
Publication of RU2720605C2 publication Critical patent/RU2720605C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Группа изобретений относится к области обработки изображений. Техническим результатом является обеспечение выполнения процесса декодирования в надлежащий период времени. Устройство содержит секцию установки, выполненную с возможностью устанавливать информацию о параметре управления буфером каждого уровня, указывая, по меньшей мере, что один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня; секцию кодирования, выполненную с возможностью кодировать изображение, имеющее, по меньшей мере, один уровень, и генерировать битовый поток; и передающую секцию, выполненную с возможностью передавать информацию о параметре управления буфером, установленную секцией установки, и битовый поток, генерируемый секцией кодирования. 2 н. и 7 з.п. ф-лы, 56 ил.

Description

Область техники
Настоящее изобретение относится к устройству обработки изображения и способу, и более конкретно, к устройству обработки изображений и способу, которые способны выполнять процесс декодирования в надлежащий момент времени при масштабируемом кодировании видео.
Уровень техники
В последнее время стали широко использоваться устройства для сжатия и кодирования изображения, применяя схему кодирования информации изображения в цифровом виде, и выполняя сжатие с помощью ортогонального преобразования, такого как дискретное косинусное преобразование и компенсацию движения, используя избыточность конкретной информации изображения, с целью передачи информации и накопления с высокой эффективностью, когда информация изображения обрабатываются в цифровом виде. Экспертная группа по вопросам движущегося изображения (MPEG), H.264, MPEG-4 Часть 10 (Усовершенствованное кодирование видеосигнала) (далее упоминается как H.264 / AVC) и т.п. являются примерами таких схем кодирования.
Таким образом, в целях повышения эффективности кодирования по сравнению с H.264 / AVC, осуществляется работа по стандартизации схемы кодирования, под названием высокоэффективное видекодирование (HEVC), осуществляемая Объединенной командой по видеокодированию (JCTVC), которая является объединенной организацией по стандартизации Международного совета по телекоммуникациям - сектор по стандартизации телекоммуникаций (ITU-T) и Международной организацией по стандартизации (ISO)/Международная электротехническая комиссия (IEC), и не-патентный документ 1 был выпущен в качестве проекта схемы.
Между тем, существующие схемы кодирования изображения, такие как MPEG-2 и AVC, имеют функцию масштабируемости деления изображения на множество уровней и кодирования множества уровней.
Другими словами, например, для терминала, имеющего незначительные возможности обработки, такого как мобильный телефон, передается информация сжатия изображения только базового уровня, и воспроизводится движущееся изображение низкого пространственного и временного разрешения или низкого качества изображения, и для терминала, имеющего высокие возможности обработки, такого как телевизор или персональный компьютер, передается информация сжатия изображений улучшенного уровня, а также базовый уровень, и воспроизводится движущееся изображение с высоким пространственным и временным разрешением или высоким качеством изображения. То есть, информация сжатия изображения в соответствии с возможностями терминала или сети может передаваться от сервера без выполнения процесса перекодировки.
В HEVC, можно назначить параметр гипотетического опорного декодера (HRD), так что не возникает переполнение или опустошение буфера, когда выполняется процесс декодирования информации сжатия изображения. В частности, можно назначить HRD параметр для каждого уровня, когда выполняется масштабируемое кодирование видео (смотрите не патентный документ 2).
Перечень ссылок
Не патентная литература
Не патентный документ 1: Benjamin Bross, Woo-Jin Han, Jens-Rainer Ohm, Gary J. Sullivan, Thomas Wiegand, "Высокоэффективное видеокодирование (HEVC) текст спецификации проекта 9," JCTVC-K1003, 2012,10,21
Не патентный документ 2: Jill Boyce, Ye-Kui Wang, "NAL блок заголовка и набор параметров для расширения HEVC," JCTVC-K1007, 2012,10,19
Сущность изобретения
Технические задачи, решаемые с помощью изобретения
Тем не менее, когда HRD параметр указан для каждого уровня или временного уровня, служащего в качестве одного из подуровней, трудно определить факт того, выполняется ли процесс декодирования с помощью одного устройства декодирования или множеством устройств декодирования.
Настоящее изобретение было сделано в свете вышеизложенного, и предполагается, что процесс декодирования будет выполняться в надлежащий период времени.
Решения технической задачи
Согласно одному аспекту настоящего изобретения, предусмотрено устройство обработки изображения, включающее в себя приемную секцию, выполненную с возможностью принимать битовый поток, полученный посредством кодирования изображения, имеющего, по меньшей мере, один уровень, и информацию о параметре управления буфером каждого уровня, указывающую, по меньшей мере, что один параметр управления буфером декодера является параметром для выполнения процесса декодирования только в соответствующем уровне, и что параметр управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, и секцию декодирования, выполненную с возможностью декодировать битовый поток, принятый приемной секцией, и генерировать изображение.
Уровень может включать в себя уровень и подуровень.
Уровень является ракурсом многоракурсного кодирования.
Уровень представляет собой уровень масштабируемого кодирования видео.
Информация о параметре управления буфером описана в дополнительной расширяющей информации (SEI).
Информация о параметре управления буфером описана в buffering_period_SEI.
Информации о параметре присутствия/отсутствия указывает на наличие или отсутствие параметра для управления буфером декодера, служащего в качестве параметра для выполнения процесса декодирования только соответствующего уровня, описана в vps (набор параметров видео) _extension.
Приемная секция может принять AVC флаг, указывающий, что кодируется уровень ниже, чем соответствующий уровень, посредством MPEG-4 часть 10 Усовершенствованное кодирование видеосигнала (AVC) и информация о параметре управления буферами каждого уровня, указывающая, что параметр для управления буфером декодера, является параметром для выполнения процесса декодирования только соответствующего уровня.
Согласно одному аспекту настоящего изобретения, предусмотрен способ обработки изображения, включающий в себя прием с помощью устройства обработки изображения битового потока, полученного путем кодирования изображения, имеющего, по меньшей мере, один уровень, и информацию о параметре управления буфером каждого уровня, указывающую что, по меньшей мере, один параметр для управления буфером декодера является параметром для выполнения процесса декодирования только в соответствующем уровне, и что параметр для управления буфера декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, прием посредством устройства обработки изображений битового потока, полученного путем кодирования изображения, включающий в себя, по меньшей мере, один уровень, с использованием параметра, соответствующего информации о параметре управления буфером, и декодирование с помощью устройства обработки изображения принятого битового потока и генерацию изображения.
Согласно другому аспекту настоящего изобретения, предусмотрено устройство обработки изображения, включающее в себя секцию установки, выполненную с возможностью устанавливать информацию о параметре управления буфером каждого уровня, указывающую, по меньшей мере, один из параметров для управления буфером декодера, является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, секцию кодирования, выполненную с возможностью кодировать изображение, имеющее, по меньшей мере, один уровень, и генерировать битовый поток, и секцию передачи, выполненный с возможностью передавать информацию о параметре управления буфером, установленную секцией установки, и битовый поток, генерируемый секцией кодирования.
Уровень может включать в себя уровень и подуровень.
Уровень является ракурсом многоракурсного кодирования.
Уровень представляет собой уровень масштабируемого кодирования видео.
Информация о параметре управления буфером описана в дополнительной расширяющей информации (SEI).
Информация о параметре управления буфером описана в buffering_period_SEI.
Информации о параметре присутствия/отсутствия указывает на наличие или отсутствие параметра для управления буфером декодера, служащего в качестве параметра для выполнения процесса декодирования только соответствующего уровня, описана в vps (набор параметров видео) _extension.
Секция установки может установить AVC флаг, указывающий, что кодируется уровень ниже, чем соответствующий уровень, посредством MPEG-4 часть 10 Усовершенствованное кодирование видеосигнала (AVC) и информация о параметре управления буферами каждого уровня, указывающая, что параметр для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня.
Согласно другому аспекту настоящего изобретения, предусмотрен способ обработки изображения, включающий в себя установку с помощью устройства обработки изображения информации о параметре управления буфером каждого уровня, указывающую что, по меньшей мере, один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, кодирование, с помощью устройства обработки изображения, изображения, имеющего, по меньшей мере, один уровень, и генерирование битового потока, и передачу посредством устройства обработки изображений информации о параметре управления буфером и генерируемого потока битов.
Согласно одному аспекту настоящего изобретения, принимается битовый поток, полученный путем кодирования изображения, имеющего, по меньшей мере, один уровень и информацию о параметре управления буфером каждого уровня с указанием того, что, по меньшей мере, один параметр для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня и параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня. Затем, принятый битовый поток декодируется для генерирования изображения.
Согласно другому аспекту настоящего изобретения, устанавливается информация о параметре управления буфером каждого уровня, указывающая, что, по меньшей мере, один параметр для управления буфером декодера является параметром для выполнения процесса декодирования только на соответствующем уровне, и что параметр для управления буфера декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, и изображение, имеющее, по меньшей мере, один уровень, кодируется для генерации битового потока. Затем установленная информация о параметре управления буфером и сгенерированный битовый поток, передаются.
Кроме того, описанное выше устройство обработки изображений может быть независимым устройством или представлять собой внутренний блок, составляющий одно устройство кодирования изображения, или устройство декодирования изображения.
Полезные эффекты изобретения
Согласно одному аспекту настоящего изобретения, можно декодировать изображение. В частности, можно выполнить процесс декодирования в надлежащий период времени.
Согласно другому аспекту настоящего изобретения, можно кодировать изображение. В частности, можно выполнить процесс декодирования в надлежащий период времени.
Краткое описание чертежей
Фиг. 1 показывает схему, предназначенную для описания примера конфигурации блока кодирования.
Фиг. 2 представляет собой схему для описания примера пространственного масштабируемого кодирования видео.
Фиг. 3 показывает схему, описывающую пример временного масштабируемого кодирования видео.
Фиг. 4 показывает схему для описания примера масштабируемого кодирования видео отношения сигнал-шум.
Фиг. 5 показывает схему, иллюстрирующую пример синтаксиса HRD параметра HEVC.
Фиг. 6 показывает схему, предназначенную для описания параллельного процесса масштабируемого кодирования видео.
Фиг. 7 показывает схему, иллюстрирующую пример синтаксиса HRD параметра в соответствии с настоящим изобретением.
Фиг. 8 представляет собой схему, иллюстрирующую другой пример синтаксиса HRD параметра в соответствии с настоящим изобретением.
Фиг. 9 показывает схему, иллюстрирующую другой пример синтаксиса HRD параметра в соответствии с настоящим изобретением.
Фиг. 10 является блок-схемой, иллюстрирующей пример основной конфигурации устройства масштабируемого кодирования.
Фиг. 11 является блок-схемой, иллюстрирующей пример основной конфигурации секции кодирования изображения усовершенствованного уровня.
Фиг. 12 является блок-схемой, иллюстрирующей пример основной конфигурации буфера накопления и секции установки HRD типа.
Фиг. 13 представляет собой схему для описания примера уровневой структуры.
Фиг. 14 является блок-схемой алгоритма для описания примера последовательности процесса кодирования.
Фиг. 15 является блок-схемой алгоритма для описания примера последовательности процесса кодирования уровня.
Фиг. 16 является блок-схемой алгоритма для описания процесса кодирования HRD параметра.
Фиг. 17 является блок-схемой алгоритма для описания процесса вычисления HRD параметра.
Фиг. 18 является блок-схемой алгоритма для описания HRD параметра процесса вычисления временного уровня.
Фиг. 19 является блок-схемой алгоритма для описания другого примера процесса кодирования HRD параметра.
Фиг. 20 является блок-схемой, иллюстрирующей пример основной конфигурации устройства масштабируемого декодирования.
Фиг. 21 является блок-схемой, иллюстрирующей пример основной конфигурации секции декодирования изображения усовершенствованного уровня.
Фиг. 22 является блок-схемой, иллюстрирующей пример основной конфигурации буфера накопления и секции декодирования HRD типа.
Фиг. 23 является блок-схемой алгоритма для описания примера последовательности процесса декодирования.
Фиг. 24 является блок-схемой алгоритма для описания примера последовательности процесса декодирования уровня.
Фиг. 25 является блок-схемой алгоритма для описания другого примера последовательности процесса декодирования HRD параметра.
Фиг. 26 является блок-схемой алгоритма для описания другого примера последовательности процесса мониторинга буфера накопления.
Фиг. 27 показывает схему, иллюстрирующую пример синтаксиса vps_extension.
Фиг. 28 показывает схему, иллюстрирующую пример синтаксиса sps_extension.
Фиг. 29 показывает схему, иллюстрирующую пример синтаксиса vps.
Фиг. 30 показывает схему, иллюстрирующую пример семантики layer_id_included_flag.
Фиг. 31 представляет собой схему для описания примера установки LayerSet.
Фиг. 32 показывает схему, иллюстрирующую пример синтаксиса buffering_period_SEI.
Фиг. 33 показывает схему, иллюстрирующую пример синтаксиса buffering_period_SEI.
Фиг. 34 показывает схему, иллюстрирующую пример синтаксиса buffering_period_SEI.
Фиг. 35 показывает схему, иллюстрирующую пример синтаксиса buffering_period_SEI.
Фиг. 36 является блок-схемой, иллюстрирующей еще один пример основной конфигурации секции кодирования изображения усовершенствованного уровня.
Фиг. 37 является блок-схемой, иллюстрирующей пример конфигурации секции установки SEI периода буферизации.
Фиг. 38 является блок-схемой алгоритма для описания примера процесса кодирования уровня.
Фиг. 39 является блок-схемой алгоритма для описания примера процесса кодирования SEI периода буферизации.
Фиг. 40 является блок-схемой, иллюстрирующей еще один пример основной конфигурации секции декодирования изображения усовершенствованного уровня.
Фиг. 41 является блок-схемой, иллюстрирующей пример конфигурации секции декодирования SEI периода буферизации.
Фиг. 42 является блок-схемой алгоритма для описания примера процесса декодирования уровня.
Фиг. 43 является блок-схемой алгоритма для описания примера процесса декодирования SEI периода буферизации.
Фиг. 44 является блок-схемой алгоритма, описывающей пример процесса кодирования HRD параметра в случае AVC флага.
Фиг. 45 является блок-схемой алгоритма для описания примера процесса кодирования SEI периода буферизации в случае AVC флага.
Фиг. 46 показывает схему, иллюстрирующую пример схемы кодирования многоракурсного изображения.
Фиг. 47 показывает схему, иллюстрирующую пример основной конфигурации устройства кодирования многоракурсного изображения, к которому применяется настоящее изобретение.
Фиг. 48 показывает схему, иллюстрирующую пример основной конфигурации устройства декодирования многоракурсного изображения, к которому применяется настоящее изобретение.
Фиг. 49 является блок-схемой, иллюстрирующей пример основной конфигурации компьютера.
Фиг. 50 является блок-схемой, иллюстрирующей пример схематичной конфигурации телевизионного устройства.
Фиг. 51 является блок-схемой, иллюстрирующей пример схематичной конфигурации мобильного телефона.
Фиг. 52 является блок-схемой, иллюстрирующей пример схематичной конфигурации устройства записи/воспроизведения.
Фиг. 53 является блок-схемой, иллюстрирующей пример схематичной конфигурации устройства захвата изображения.
Фиг. 54 представляет собой блок-схему, иллюстрирующую пример использования масштабируемого кодирования видео.
Фиг. 55 представляет собой блок-схему, иллюстрирующую другой пример использования масштабируемого кодирования видео.
Фиг. 56 представляет собой блок-схему, иллюстрирующую другой пример использования масштабируемого кодирования видео.
Описание вариантов осуществления
Далее будет приведено описание вариантов (далее по тексту "вариант осуществления") осуществления данного изобретения. Описание приведено в следующем порядке:
0. Обзор
1. Первый вариант осуществления (устройство кодирования изображения)
2. Второй вариант осуществления (устройство декодирования изображения)
3. Третий вариант осуществления (пример синтаксиса)
4. Четвертый вариант осуществления (пример buffering_period_SEI)
5. Пятый вариант осуществления (пример AVC флага)
6. Шестой вариант осуществления (устройство кодирования многоракурсного изображения/устройство декодирования многоракурсного изображения)
7. Седьмой вариант осуществления (компьютер)
8. Приложения
9. Применение масштабируемого кодирования видео
0. Обзор
Схема кодирования
Далее настоящее изобретение будет описано применительно к применению кодирования и декодирования изображения схемы высокоэффективного кодирования видео (HEVC).
Блок кодирования
В схеме усовершенствованного кодирования видео (AVC), определяется иерархическая структура, основанная на макроблоке и субмакроблоке. Тем не менее, макроблок 16 × 16 пикселей не является оптимальным для большого кадра изображения, такого как ультравысокой четкости (UHD) (4000 × 2000 пикселей), служащего как целевой схемы кодирования следующего поколения.
С другой стороны, в HEVC схеме, блок (CU) кодирования определяется, как показано на фиг. 1.
CU также упоминается как древовидный кодер (CTB) и служит в качестве частичной области изображения блока изображения, осуществляющего такую же роль макроблока в схеме AVC. Последнее относится к размеру 16 × 16 пикселей, но предшествующий не фиксируется на определенном размере, но указан в информации сжатия изображения в каждой последовательности.
Например, самый большой блок (LCU) кодирования и наименьшей блок (SCU) кодирования из CU указаны в наборе (SPS) параметров последовательности, включенные в состав кодированных данных для вывода.
Так как сплит-флаг = 1 установлен в диапазоне, в котором каждый LCU не меньше, чем SCU, то блок кодирования может быть разделен на CUs, имеющие меньший размер. В примере на фиг. 1, размер LCU равен 128 и наибольшее значение масштабируемой глубины равно 5. CU размера 2N × 2N делится на CUs, имеющие размер N × N, служащие в качестве уровня, который на один уровень ниже, когда величина split_flag равна 1.
Кроме того, CU делится на блоки (PUs) предсказания, которые являются областями (отдельные участки изображения блока изображения), выступающие в качестве блоков предсказания внутрикадрового или межкадрового предсказания, и разделены на блоки (TUs) преобразования, которые являются областями (частичные участки изображения блока изображения), выступающей в качестве блоков ортогонального преобразования. В настоящее время в схеме HEVC, в дополнение к 4 × 4 и 8 × 8, может быть использовано ортогональное преобразование 16 × 16 и 32 × 32.
Как и в схеме HEVC, в случае схемы кодирования, в котором определяется CU и выполняются различные типы процессов в блоках CUs, в схеме AVC, макроблок может рассматриваться как соответствующий LCU, и блок-(субблок) может рассматриваться как соответствующий CU. Дополнительно, в схеме AVC, блок компенсации движения может рассматриваться как соответствующий PU. При этом, поскольку CU имеет иерархическую структуру, размер LCU самого верхнего уровня обычно установлен, чтобы быть больше, чем макроблок в схеме AVC, например, такие, как 128 × 128 пикселей.
Таким образом, далее предполагается, что LCU включает в себя макроблок в схеме AVC, и предполагается, что CU включает в себя блок (субблок) в схеме AVC. Другими словами, «блок», используемый в нижеследующем описании, обозначает произвольную часть области на изображении и, например, размер, форму и характеристики его не ограничиваются. Другими словами, «блок» включает в себя произвольную область (блок обработки), например, ТU, PU, SCU, CU, LCU, субблок, макроблок или срез. Конечно, "блок" включает в себя также и другие частичные области (блоки обработки). При необходимости, чтобы ограничить размер, блок обработки или тому подобное будет надлежащим образом описано.
Выбор режима
Между тем, в схемах кодирования AVC и HEVC, чтобы достичь высокой эффективности кодирования, важно выбрать подходящий режим предсказания.
В качестве примера такого способа отбора используется способ, реализованный в справочной информации по программному обеспечению (см. http://iphome.hhi.de/suehring/tml/index.htm) H.264/MPEG-4 AVC, под названием совместная модель (JM).
В JM, как будет описано позже, можно выбрать два способа определения режима, то есть режим высокой сложности и режим низкой сложности. В обоих режимах, вычисляются значения функции стоимости, относящиеся к соответствующим режимам предсказания, и режим предсказания, имеющий меньшее значение функции стоимости, выбирается в качестве оптимального режима для соответствующего блока или макроблока.
Функция стоимости в режиме высокой сложности представляется в следующей формулой (1):
Стоимость (Режим ∈ Ω) = D + λ * R ... (1)
Здесь Ω обозначает универсальный набор кандидатов режимов для кодирования соответствующего блока или макроблока, и D обозначает дифференциальную энергию между декодированным изображением и входным изображением, когда кодирование выполняется в соответствующем режиме предсказания. λ указывает на неопределенный множитель Лагранжа, как функцию параметра квантования. R обозначает общую величину кодирования, включающую в себя коэффициент ортогонального преобразования, когда выполняется кодирование в соответствующем режиме.
Другими словами, чтобы выполнять кодирование в режиме высокой сложности, необходимо выполнить процесс временного кодирования сразу всеми видами кандидатов, чтобы вычислить параметры D и R и, соответственно, требуется большое количество вычислений.
Функция стоимости в режиме низкой сложности представлена следующей формулой (2):
Стоимость (Режим ∈ Ω) = D + QP2Quant (QP), * HeaderBit ... (2)
Здесь D отличается от режима высокой сложности и указывает на величину дифференциальной энергии между предсказанным изображением и входным изображения. QP2Quant (QP) задается в виде функции параметра QP квантования, и HeaderBit указывает на величину кодирования, относящуюся к информации, принадлежащей к заголовку, например, вектор движения или режим, в котором отсутствует коэффициент ортогонального преобразования.
Другими словами, в режиме низкой сложности, необходимо выполнить процесс предсказания для соответствующих кандидатов режимов, но так как декодированное изображение не является необходимым, то нет необходимости выполнять процесс кодирования. Таким образом, можно использовать меньший объем вычислений, чем в режиме повышенной сложности.
Масштабируемое кодирование видео
Между тем, существующие схемы кодирования изображения, такие как MPEG2 и AVC, имеет функцию масштабируемости, как показано на фигурах с 2 по 4. Масштабируемое кодирование видео относится к схеме разделения (располагать в иерархическом порядке) изображения на множество уровней и выполнения кодирования для каждого уровня.
При расположении изображения в иерархическом порядке, одно изображение разделяется на множество изображений (уровней) на основе определенного параметра. В принципе, каждый уровень выполнен с дифференциальными данными таким образом, что избыточность уменьшается. Например, когда одно изображение располагается в иерархическом порядке в два уровня, то существует базовый уровень и усовершенствованный уровень, изображение низкого качества, чем исходное изображение, получают с использованием только данных базового уровня, и исходное изображение (т.е. высококачественное изображение) получают путем объединения данных базового уровня с данными усовершенствованного уровня.
Так как изображение расположено в иерархическом порядке, как описано выше, можно получить изображения различного качества в зависимости от ситуации. Например, для терминала, имеющего низкий функциональный уровень обработки, такого как мобильный телефон, передается информация сжатия изображения только базового уровня и воспроизводится движущееся изображение низкого пространственного и временного разрешения или низкого качества, и для терминала, имеющего высокий функциональный уровень обработки, такой как телевизор или персональный компьютер, передается информация сжатия изображений усовершенствованного уровня, а также информация базового уровня, и воспроизводится движущееся изображение с высоким пространственным и временным разрешением и высоким качеством. Другими словами, информация сжатия изображения в соответствии с возможностями терминала или сети, может быть передана с сервера без выполнения процесса перекодировки.
В качестве параметра, такого, как параметр имеющий функцию масштабируемости, например, реализуется пространственное разрешение (пространственная масштабируемость), как показано на фиг. 2. Когда пространственная масштабируемость отличается, то соответствующие уровня имеют разные разрешения. Другими словами, каждый кадр располагается в иерархическом порядке на два уровня, то есть на базовый уровень с пространственным разрешением ниже, чем у исходного изображения, и на усовершенствованный уровень, который объединяется с изображением базового уровня, для получения исходного изображения (оригинальное пространственное разрешение), как показано на фиг. 2. Конечно, количество уровней является примером, и каждое изображение может быть расположено в иерархическом порядке с произвольным количеством уровней.
В качестве другого параметра, имеющего такую масштабируемость, например, есть временное разрешение (временная масштабируемость), как показано на фиг. 3. В случае временной масштабируемости, соответствующие уровни имеют разные частоты кадров. Другими словами, в этом случае, каждый кадр расположен в иерархическом порядке уровней, имеющих разные частоты кадров, движущееся изображение с высокой частотой кадров может быть получено путем объединения уровня с высокой частотой кадров с уровнем с низкой частотой кадров, и оригинальное движущееся изображение (исходная частота кадров) может быть получено путем объединения всех уровней, как показано на фиг. 3. Число уровней является примером, и каждое изображение может быть расположено в иерархическом порядке с произвольным количеством уровней.
Дополнительно, в качестве другого параметра, имеющего такую масштабируемость, например, используется отношение сигнал-шум (SNR) (SNR масштабируемость). В случае масштабируемости SNR, соответствующие уровни имеют различные отношения SNR. Другими словами, в этом случае, каждое изображение располагается в иерархическом порядке, имеющим два уровня, то есть, базовый уровень SNR, который меньше, чем у исходного изображения, и усовершенствованный уровень, который объединяется с изображением базового уровня для получения оригинала SNR, как показано на фиг. 4. Другими словами, для информации сжатия изображения базового уровня, передается информация, относящаяся к изображению низкого РSNR и изображение с высоким PSNR может быть реконструировано путем объединения информации с информацией сжатия изображения усовершенствованного уровня. Конечно, число уровней является примером, и каждое изображение может быть расположено в иерархическом порядке с произвольным количеством уровней.
Параметр, отличный от описанного в вышеприведенных примерах, может быть применен в качестве параметра, имеющего масштабируемость. Например, есть битовая глубина масштабируемости, при которой, основной уровень включает в себя 8-битное изображение, и 10-битное изображение может быть получено путем добавления усовершенствованного уровня к базовому уровню.
Кроме того, существует масштабируемость цвета, в котором основной уровень включает в себя компонент изображения формата 4: 2: 0 и компонент изображения формата 4: 2: 2, что может быть получено путем добавления усовершенствованного уровня в базовый уровень.
Дополнительно, в качестве параметра, имеющего масштабируемость, существует многоракурсность. В этом случае, изображение располагается в иерархическом порядке на уровни с различными ракурсами.
Например, уровни, описанные в настоящем варианте осуществления, включают в себя пространственную, временную, SNR, битовую глубину, цвет и ракурсную масштабируемость кодирования видео, как описано выше.
Кроме того, термин "уровень", используемый в данном описании, включает в себя уровень масштабируемого кодирования видео и каждый ракурс, когда рассматривается многоракурсное кодирование.
Дополнительно, как предполагается, термин "уровень", используемый в данном описании, включает в себя основной уровень (соответствующий суб) и субуровень. В качестве конкретного примера, основной уровень может быть уровнем пространственной масштабируемости, и субуровень может быть выполнен с уровнем временной масштабируемости.
В настоящем варианте осуществления, уровень (японский) и слой имеют тот же смысл, уровень (японский) будет соответствующим образом описан, как уровень.
HRD параметр
Между тем, в HEVC, когда процесс декодирования информации сжатия изображения выполняется, то можно назначить параметр гипотетического опорного декодера (HDR), как показано на фиг. 5, так что отсутствует переполнение или не заполнение буфера. Другими словами, HRD параметр является параметром, используемый для управления буфером декодера. В частности, когда осуществляется масштабируемое кодирование видео, можно указать HRD параметр для каждого уровня в наборе параметров видео (VPS).
Параллельный процесс масштабируемости кодирования видео
В качестве примера, на фиг. 6 показаны два примера (ех1 и ех2) использования последовательности, включающей в себя I кадр, b кадр, B кадр, b кадр и B кадр, проиллюстрированы на левой стороне фиг. 6 в качестве примера временной масштабируемости. В этой последовательности, I кадр, В кадр и В кадр являются нижним временным уровнем и b кадр и b кадр являются верхним временным уровнем.
Здесь, В кадр указывает на кадр, на который ссылаются, и b кадр указывает на кадр, на который не ссылаются.
ex1 является примером, в котором все кадры декодируются устройством #0 декодирования. С другой стороны, ех2 является примером, в котором нижний временной уровень I кадра, В кадра и В кадра будет декодирован устройством # 0 декодирования, и верхний временной уровень b кадра и b кадра декодируется устройством # 1 декодирования.
На правой стороне фиг. 6, в качестве примера HEVC масштабируемости, показаны два примера (ex11 и ex12), используя последовательность, включающая в себя I кадр, В кадр и B кадр EL (усовершенствованного уровня), выступающего в качестве верхнего уровня, и I кадр, B кадр и В кадр BL (базового уровня), выступающего в качестве нижнего уровня. HEVC Масштабируемость означает масштабируемое кодирование видео, определенное в HEVC.
ex11 является примером, в котором все кадры декодируются устройством #0 декодирования. С другой стороны, ex12 является примером, в котором нижний уровень I кадра, В кадра и В-кадра BL декодируется устройством #0 декодирования, и верхний уровень I кадра, B кадра и В кадра EL декодируется устройством # 1 декодирования.
Для каждого уровня HEVC масштабируемости, каждый временной уровень временной масштабируемости на правой стороне выполнен в виде субуровня.
Как описано выше, во временной масштабируемости в предшествующем уровне техники, в HEVC масштабируемости, процесс может быть выполнен с помощью одного устройства декодирования, и параллельный процесс может быть выполнен с помощью множества устройств декодирования. Кроме того, через синтаксис, как показано на фиг. 5, можно указать HRD параметр, служащий в качестве параметра, используемого для управления буфером декодера для каждого уровня или временного уровня, который является одним из субуровней.
Тем не менее, как показано на фиг. 6, трудно обнаружить факт того, выполняется ли процесс декодирования одним устройством декодирования или множеством устройств декодирования.
В связи с этим, в данном изобретении, HRD параметр передается через синтаксис, показанный на фиг. 7. Другими словами, в настоящем изобретении, информация, указывающая, установлен ли HRD параметр, который является параметром для выполнения процесса декодирования только на соответствующем уровне или параметром для выполнения процесса декодирования соответствующего уровня и нижнего слоя. Таким образом, как показано на фиг. 6, четко определено, что процесс декодирования выполняется с помощью одного устройства декодирования или множеством устройств декодирования и, таким образом, можно выполнить процесс декодирования в надлежащий период времени.
Пример HRD параметра
Фиг. 7 показывает схему, иллюстрирующую пример синтаксиса HRD параметра в соответствии с настоящим изобретением. Цифры слева от каждой строки являются номерами строк, которые добавлены для описания.
В качестве примера на фиг. 7, hrd_parameters_type_flag определен в 10-ом ряду. Когда значение hrd_parameters_type_flag равно 1, то значение для выполнения процесса декодирования только соответствующего уровня устанавливается в качестве параметра HRD последующего пункта. Когда значение hrd_parameters_type_flag равно 0, то значение для выполнения процесса декодирования соответствующего уровня и нижнего уровня устанавливается в качестве параметра HRD последующего пункта.
Кроме того, hrd_parameters_type_flag может быть включен в состав, если команда начинается с 11-го ряда.
sub_hrd_parameters_type[I]_flag определен в 25 ряду. Когда значение sub_hrd_parameters_type [I] _flag равно 1, то значение для выполнения процесса декодирования только соответствующего временного уровня устанавливается в качестве суб HRD параметра последующего пункта. Когда значение hrd_parameters_type_flag равно 0, то значение для выполнения процесса декодирования на соответствующем временном уровне и нижнем временном уровне устанавливается в качестве суб HRD параметра последующего пункта.
Фиг. 7 иллюстрирует пример, в котором выполняется указание любым одним способом (либо только соответствующий уровень включен в состав, либо нижний уровень также включается в состав) для каждого уровня и каждого временного уровня, но настоящее изобретение не ограничивается этим примером. Например, может быть использован HRD параметр, в котором HRD параметр указывается обоими способами.
Другой пример HRD параметра
На фиг. 8 показана схема, иллюстрирующая другой пример синтаксиса HRD параметра в соответствии с настоящим изобретением. Цифры слева от каждого ряда показывают номера строк, которые добавлены для описания.
В качестве примера на фиг. 8, hrd_parameters_type1_present_flag определяется в 11 ряду. Когда значение hrd_parameters_type1_present_flag равно 1, то значение для выполнения процесса декодирования только соответствующего уровня устанавливается в качестве параметра HRD типа 1, установленного с 13-ой по 24 строки. Когда значение hrd_parameters_type1_present_flag равно 0, то значение для выполнения процесса декодирования соответствующего уровня и нижнего уровня устанавливается как HRD параметр типа 1.
hrd_parameters_type2_present_flag определен в 12 ряду. Когда значение hrd_parameters_type2_present_flag равно 1, значение для выполнения процесса декодирования только соответствующего уровня устанавливается в качестве параметра HRD типа 2, определенного с 25-ой по 36-ую строки. Когда значение hrd_parameters_type1_present_flag равно 0, то значение для выполнения процесса декодирования соответствующего уровня и нижнего уровня устанавливается как HRD параметр типа 2.
Аналогично примеру, описанному выше со ссылкой на фиг. 7, флаги 11 и 12 строк могут быть описаны то того, как если команда начинается с 10-го ряда.
sub_hrd_parameters_type1_present_flag определен в 40 ряду. Когда значение sub_hrd_parameters_type1_present_flag равно 1, то значение для выполнения процесса декодирования только соответствующего временного уровня устанавливается в качестве параметра HRD типа 1, установленного с 45-ой по 52-ую строки. Когда значение sub_hrd_parameters_type1_present_flag равно 0, то значение для выполнения процесса декодирования на соответствующем временном уровне и нижнем временном уровне устанавливается как HRD параметр типа 1.
sub_hrd_parameters_type2_present_flag определен в 41 строке. Когда значение sub_hrd_parameters_type2_present_flag равно 1, то значение для выполнения процесса декодирования только соответствующего временного уровня устанавливается в качестве параметра HRD типа 2, установленного с 53-ей по 60-ую строку. Когда значение sub_hrd_parameters_type1_present_flag равно 0, то значение для выполнения процесса декодирования на соответствующем временном уровне и нижнем временном уровне устанавливается в качестве параметра HRD типа 2.
Как описано выше, в настоящем изобретении, параметры типа 1 и типа 2, выступающие в качестве HRD параметра процесса декодирования только соответствующего уровня и HRD параметра для процесса декодирования соответствующего уровня и нижнего уровня установлены на стороне кодирования. Таким образом, сторона декодирования может выбрать параметр в соответствии с устройством или принятого битового потока.
Дополнительно, когда информация сжатия изображения включает в себя только один уровень, то есть, уровень масштабируемости или временной уровень масштабируемости, hrd_parameter_type_flag и sub_hrd_parameter_type_flag может иметь любое значение и на процесс декодирования не повлияет.
Далее, настоящее изобретение будет описано в связи с приложениями к конкретному устройству. Ради удобства описания, нижеследующее описание будет приведено с использованием случая ex12 масштабируемого HEVC, и ex1 временной масштабируемости, как показано на фиг. 6. Здесь, настоящее изобретение не ограничивается этим случаем. Например, может быть случай ex12 масштабируемого HEVC и ex2 временной масштабируемости, как показано на фиг. 6, случай ex11 масштабируемого HEVC и ex2 временной масштабируемости на фиг. 6, и случай ex11 масштабируемого HEVC и ex1 временной масштабируемости на фиг. 6.
1. Первый вариант осуществления
Устройство масштабируемого кодирования
Фиг. 10 является блок-схемой, иллюстрирующей пример основной конфигурации устройства масштабируемого кодирования.
Устройство 100 масштабируемого кодирования, показанное на фиг. 10, кодирует каждый уровень данных изображения, расположенных в иерархическом порядке, в базовом уровне и усовершенствованном уровне.
Устройство 100 масштабируемого кодирования выполнено с возможностью включать в себя секцию 101-1 кодирования изображения базового уровня, секцию 101-2 кодирования изображения усовершенствованного уровня и секцию 102 управления процессом кодирования.
Секция 101-1 кодирования изображения базового уровня получает информацию изображения (информации об изображении базового уровня) базового уровня. Секция 101-1 кодирования изображения базового уровня кодирует информацию изображения базового уровня без ссылки на другие уровни, генерирует закодированные данные (кодированные данные базового уровня) базового уровня, и выводит сгенерированные закодированные данные.
Секция 101-2 кодирования изображения усовершенствованного уровня получает информацию изображения (информацию изображения усовершенствованного уровня) усовершенствованного уровня. Секция 101-2 кодирования изображения усовершенствованного уровня кодирует информацию изображения усовершенствованного уровня. В это время, секция 101-2 кодирования изображения усовершенствованного уровня выполняет межкадровое предсказание со ссылкой на информацию, относящуюся к процессу кодирования базового уровня, при необходимости.
Дополнительно, секция 101-2 кодирования изображения усовершенствованного уровня устанавливает тип HRD параметра для каждого уровня и вычисляет HRD параметр, служащий как параметр, используемый для управления буфером декодера на основании информации о состоянии буфера накопления в соответствии с заданным типом HRD параметра. Секция 101-2 кодирования изображения усовершенствованного уровня кодирует вычисленный HRD параметр.
В частности, тип HRD параметра указывает, является ли HRD параметр параметром для декодирования только соответствующего уровня или параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня. Этот тип может установить оба параметра, а также любой один из параметров. Сторона кодирования вычисляет HRD параметр в соответствии с флагом (информация) с указанием заданного типа, и передает флаг, указывающий установленный тип и рассчитанный HRD параметр, на сторону декодирования. Далее, флаг, указывающий тип HRD параметра, соответственно называется "флагом типа HRD параметра".
Когда флаг, указывающий тип HRD параметра, равен 1, секция 101-2 кодирования изображения усовершенствованного уровня рассчитывает HRD параметр, на основании информации о состоянии собственного буфера накопления. Когда флаг, указывающий тип HRD параметра равен 0, то секция 101-2 кодирования изображения усовершенствованного уровня получает информацию состояния всего буфера накопления секции 101-1 кодирования изображения базового уровня и вычисляет HRD параметр, основанный на информации о состоянии секции 101-1 кодирования изображения базового уровня и собственного буфера накопления. Этот процесс выполняется на уровне и субуровне (временном уровне). В секции 101-1 кодирования изображения базового уровня этот процесс выполняется только на субуровне.
Секция 101-2 кодирования изображения усовершенствованного уровня генерирует закодированные данные (кодированные данные усовершенствованного уровня) усовершенствованного уровня посредством вышеупомянутого кодирования, и выводит сгенерированные закодированные данные.
Секция 101-1 кодирования изображения базового уровня и секция 101-2 кодирования изображения усовершенствованного уровня совместно соответственно именуются как "секция 101 кодирования изображения уровня".
Секция 102 управления процессом кодирования управляет процессом кодирования секций 101 кодирования изображения уровня, например, принимая во внимание взаимодействие секций 101 кодирования изображения уровня.
В примере на фиг. 10 проиллюстрирована секция 101-2 кодирования изображения усовершенствованного уровня, но при наличии верхнего уровня, обеспечиваются секции 101-3, 101-4, … кодирования изображения усовершенствованного уровня для каждого верхнего уровня, которые кодируют верхний уровень.
Пример конфигурации секции кодирования изображения уровня
Фиг. 11 является блок-схемой, иллюстрирующей пример основной конфигурации секции 101-2 кодирования изображения усовершенствованного уровня. Секция 101-1 кодирования изображения базового уровня на фиг. 10 имеет в основном ту же конфигурацию, что и секция 101-2 кодирования изображения усовершенствованного уровня на фиг. 11, за исключением того, что тип изображения, служащего в качестве целевого, различен. Ради удобства описания, в примере на фиг. 11, секция 101-2 кодирования изображения усовершенствованного уровня будет описана в качестве примера.
Как показано на фиг. 11, секция 101-2 кодирования изображения усовершенствованного уровня включает в себя секцию 111 А/D преобразования, буфер 112 переупорядочивания экрана, операционную секцию 113, секцию 114 ортогонального преобразования, секцию 115 квантования, секцию 116 кодирования без потерь, буфер 117 накопления, секцию 118 обратного квантования и секцию 119 обратного ортогонального преобразования. Секция 101-2 кодирования изображения усовершенствованного уровня дополнительно включает в себя операционную секцию 120, контурный фильтр 121, память 122 кадров, секция 123 выбора, секцию 124 внутрикадрового предсказания, секцию 125 предсказания/компенсации движения, секция 126 выбора предсказанного изображения и секцию 127 управления скоростью обработки. Секция 101-2 кодирования изображения усовершенствованного уровня дополнительно включает в себя секцию 128 установки типа HRD.
Секция 111 А/D преобразования выполняет А/D преобразование данных входного изображения (информация изображения усовершенствованного уровня) и поставляет преобразованные данные изображения (цифровые данные) на сохранение в буфер 112 переупорядочивания экрана. Буфер 112 переупорядочивания экрана переупорядочивает изображения кадров, хранящихся в порядке отображения, в порядок кадра для кодирования в соответствии с группой изображений (GOP), и поставляет изображения, в которых порядок кадров переупорядочен, в операционную секцию 113. Буфер 112 переупорядочивания экрана также поставляет изображения, в которых порядок кадров переупорядочен, в секцию 124 внутрикадрового предсказания и секцию 125 предсказания/компенсации движения.
Операционная секция 113 вычитает предсказанное изображение, поставленное из секции 124 внутрикадрового предсказания или секции 125 предсказания/компенсации движения через секцию 126 выбора предсказанного изображения, из изображения, считанного с буфера 112 переупорядочивания экрана, и выводит информацию их разности в секцию 114 ортогонального преобразования. Например, в случае изображения, которое было подвергнуто внутрикадровому кодированию, операционная секция 113 вычитает предсказанное изображение, поставленное из секции 124 внутрикадрового предсказания, из изображения, считанного с буфера 112 переупорядочивания экрана. Кроме того, например, в случае изображения, которое было подвергнуто межкадровому кодированию, операционная секция 113 вычитает предсказанное изображение, поставленное из секции 125 предсказания/компенсации движения, из изображения, считанного с буфера 112 переупорядочивания экрана.
Секция 114 ортогонального преобразования выполняет ортогональное преобразование, такое как дискретное косинусное преобразование или преобразованием Карунена-Лоэва дифференциальной информации, поставленной из операционной секции 113. Секция 114 ортогонального преобразования поставляет коэффициенты преобразования в секцию 115 квантования.
Секция 115 квантования выполняет квантование коэффициентов преобразования, поставляемые из секции 114 ортогонального преобразования. Секция 115 квантования устанавливает параметра квантования на основании информации, относящейся к целевому значению в величины кодирования, поставленной из секции 127 управления скоростью обработки, и выполняет операцию квантования. Секция 115 квантования поставляет квантованные коэффициенты преобразования в секцию 116 кодирования без потерь.
Секция 116 кодирования без потерь кодирует коэффициенты преобразования, квантованные в секции 115 квантования в соответствии с произвольной схемой кодирования. Так как данные коэффициента квантованы под управлением секции 127 управления скоростью обработки, то величина кодирования становится целевым значением (или приближается к целевому значению), установленной секцией 127 управления скоростью обработки.
Секция 116 кодирования без потерь принимает информацию, указывающую режим внутрикадрового предсказания или т.п. из секции 124 внутрикадрового предсказания, и получает информацию, указывающую режим межкадрового предсказания, разностную информацию вектора движения или т.п. из секции 125 предсказания/компенсации движения. Кроме того, секция 116 кодирования без потерь соответственно генерирует NAL блок усовершенствованного уровня, включающий в себя набор параметров последовательности (SPS), набор параметров изображения (PPS) и тому подобное.
Секция 116 кодирования без потерь кодирует различные виды информации в соответствии с произвольной схемой кодирования и устанавливает (мультиплексирует) кодированные данные как часть кодированных данных (также называемые как "кодированный поток"). Секция 116 кодирования без потерь поставляет кодированные данные, полученные с помощью кодирования, для накапливания в буфер 117 накопления.
Примеры схемы кодирования секции 116 кодирования без потерь включают в себя кодирование переменной длины и арифметическое кодирование. Кодирование с переменной длиной, например, представляет собой контекстно-зависимое адаптивное кодирование с переменной длиной кодового слова (CAVLC), определенное в H.264/AVC схеме. При арифметическом кодировании, например, существует контекстно-адаптивное двоичное арифметическое кодирование (CABAC).
Буфер 117 накопления временно удерживает кодированные данные (кодированные данные усовершенствованного уровня), поставленные из секции 116 кодирования без потерь. Буфер 117 накопления поставляет удержанные кодированные данные усовершенствованного уровня в устройство записи (носитель записи) по тракту передачи или тому подобное (не показано) на последующем этапе в определенном периоде времени. Другими словами, буфер 117 накопления так же служит в качестве секции передачи, которая передает кодированные данные. Кроме того, при наличии запроса из секции 128 установки типа HRD, буфера 17 накопления поставляет информацию, указывающую состояние буфера 117 накопления. Дополнительно, например, когда есть секция 101-3 кодирования изображения усовершенствованного уровня верхнего уровня и есть запрос из секции 128 установки типа HRD, как показано пунктирной линией, буфер 117 накопления поставляет информацию, указывающую состояние буфера 117 накопления, в секцию 101-3 кодирования изображения усовершенствованного уровня верхнего уровня.
Коэффициенты преобразования, квантованные секцией 115 квантования, также поставляются в секцию 118 обратного квантования. Секция 118 обратного квантования подвергает обратному квантованию квантованные коэффициенты преобразования в соответствии со способом, соответствующим квантованию, выполненного секцией 115 квантования. Секция 118 обратного квантования поставляет полученные коэффициенты преобразования в секцию 119 обратного ортогонального преобразования.
Секция 119 обратного ортогонального преобразования выполняет обратное ортогональное преобразование коэффициентов преобразования, поступающих из секции 118 обратного квантования в соответствии со способом, соответствующему процессу ортогонального преобразования, выполненного с помощью секции 114 ортогонального преобразования. Выходная информация (восстановленная дифференциальная информации), которая была подвергнута обратному ортогональному преобразованию, поставляется в операционную секцию 120.
Операционная секция 120 получает локально декодированное изображение (декодированное изображение) добавлением предсказанного изображения, поставленного из секции 124 внутрикадрового предсказания или секции 125 предсказания/компенсации движения через секцию 126 выбора предсказанного изображения для восстановления дифференциальной информации, служащей в качестве результирующей информации обратного ортогональное преобразование, поставленной из секции 119 обратного ортогонального преобразования. Декодированное изображение подается на контурный фильтр 121 или память 122 кадров.
Контурный фильтр 121 включает в себя фильтр устранения блочности, адаптивный фильтр смещения, адаптивный контурный фильтр или тому подобное и соответствующим образом выполняет процесс фильтрации на восстановленном изображении, поставленное из операционной секции 120. Например, контурный фильтр 121 выполняет процесс устранения блочности на восстановленном изображении и удаляет артефакты блочности восстановленного изображения. Кроме того, например, контурный фильтр 121 улучшает качество изображения посредством выполнения процесса фильтрации результирующих данных процесса устранения артефактов блочности (реконструированное изображение, из которого удалены искажения блочности), используя фильтр Винера. Контурный фильтр 121 подает результирующие данные процесса фильтрации (далее как "декодированное изображение") в память 122 кадров.
Контурный фильтр 121 может дополнительно выполнять любой другой произвольный процесс фильтрации на восстановленном изображении. Контурный фильтр 121 может поставлять информацию, используемую в процессе фильтрации, такую как коэффициент фильтрации, в секцию 116 кодирования без потерь, по мере необходимости, так что информация может быть закодирована.
Память 122 кадров хранит восстановленное изображение, поступающее из операционной секции 120, и декодированное изображение, поставленное из контурного фильтра 121. Память 122 кадров поставляет хранимое восстановленное изображение в секцию 124 внутрикадрового предсказания через секцию 123 выбора в определенный момент времени или на основании внешнего запроса, например, из секции 124 внутрикадрового предсказания. Кроме того, память 122 кадров поставляет сохраненное декодированное изображение в секцию 125 предсказания/компенсации движения через секцию 126 выбора в определенный момент времени или на основании внешнего запроса, например, из секции 125 предсказания/компенсации движения.
Память 122 кадров сохраняет поставленное декодированное изображение и поставляет хранимое декодированное изображение в секции 123 выбора в качестве опорного изображения в определенный момент времени.
Секция 123 выбора выбирает адресат поставки подачи опорного изображения, поступающего из памяти 122 кадров. Например, в случае внутрикадрового предсказания, секция 123 выбора подает опорное изображение (значение пикселя в текущем изображении), подаваемого из памяти 122 кадров, в секцию 125 предсказания/компенсации движения. Дополнительно, например, в случае межкадрового предсказания, секция 123 выбора подает опорное изображение, поступающее из памяти 122 кадров, в секцию 125 предсказания/компенсации движения.
Секция 124 внутрикадрового предсказания выполняет внутрикадровое предсказание (внутрикадровое предсказание) для генерации предсказанного изображения с использованием значения пиксела текущего изображения, служащую в качестве опорного изображения, поступающего из памяти 122 кадров с помощью секции 123 выбора. Секция 124 внутрикадрового предсказания выполняет внутреннее предсказание во множестве режимов внутреннего предсказания, которые заранее подготовлены.
Секция 124 внутрикадрового предсказания генерирует предсказанные изображения во всех режимах внутреннего предсказания, выступающей в качестве кандидатов, оценивает значения функции стоимости предсказанных изображений с использованием входного изображения, подаваемого из буфера 112 переупорядочивания экрана, и выбирает оптимальный режим. Когда выбран оптимальный режим внутрикадрового предсказания, секция 124 внутрикадрового предсказания поставляет предсказанное изображение, сгенерированное в оптимальном режиме, секцию 126 выбора предсказанного изображения.
Как описано выше, секция 124 внутрикадрового предсказания соответственно поставляет, например, информацию режима внутрикадрового предсказания с указанием используемого режима внутрикадрового предсказания в секцию 116 кодирования без потерь, так что информация кодируется.
Секция 125 предсказания/компенсации движения выполняет предсказание движения (межкадровое предсказание) с использованием входного изображения, поставленного из буфера 112 переупорядочивания экрана, и опорного изображения, поставленного из памяти 122 кадров с помощью секции 123 выбора. Хотя это не показано, в секции 125 предсказания/компенсации движения, опорное изображение, поставленное из памяти 122 кадров секции 101-1 кодирования изображения базового уровня, также упоминается, по мере необходимости. Секция 125 предсказания/компенсации движения выполняет процесс компенсации движения в соответствии с определенным вектором движения, и генерирует предсказанное изображение (информация межкадрового предсказания изображения). Секция 125 предсказания/компенсации движения выполняет межкадровое предсказание в нескольких режимах межкадрового предсказания, которые готовятся заранее.
Секция 125 предсказания/компенсации движения генерирует предсказанные изображения во всех режимах межкадрового предсказания, выступающие в качестве кандидата. Секция 125 предсказания/компенсации движения оценивает значения функции стоимости предсказанных изображений с использованием входного изображения, поставленного из буфера 112 переупорядочивания экрана, информацию генерируемого дифференциального вектора движения и т.п., и выбирает оптимальный режим. При выборе оптимального режима межкадрового предсказания, секция 125 предсказания/компенсации движения поставляет предсказанное изображение, сгенерированное в оптимальном режиме, в секцию 126 выбора предсказанного изображения.
Секция 125 предсказания/компенсации движения поставляет информацию, указывающую используемый режим межкадрового предсказания, информация необходима для выполнения обработки в режиме межкадрового предсказания, когда кодированные данные декодируются и т.п., в секцию 116 кодирования без потерь таким образом, что информация кодируется. Например, в качестве необходимой информации, используется информация генерируемого дифференциального вектора движения и, как информацию предсказанного вектора движения, используется флаг, указывающий индекс предсказанного вектора движения.
Секция 126 выбора предсказанного изображения выбирает источник поставки предсказанного изображения, поставленного в операционную секцию 113 и операционную секцию 120. Например, в случае внутрикадрового кодирования, секция 126 выбора предсказанного изображения выбирает секцию 124 внутрикадрового предсказания в качестве источника поставки предсказанного изображения, и поставляет предсказанное изображение, подаваемого из секции 124 внутрикадрового предсказания, в операционную секцию 113 и операционную секцию 120. Например, в случае межкадрового кодирования, секция 126 выбора предсказанного изображения выбирает секцию 125 предсказания/компенсации движения, в качестве источника поставки предсказанного изображения, и поставляет предсказанное изображение, поставленное из секции 125 предсказания/компенсации движения, в операционную секцию 113 и операционную секцию 120.
Секция 127 управления скоростью обработки управляет скоростью операции квантования секции 115 квантования на основании величины кодирования кодированных данных, накопленных в буфере 117 накопления, таким образом, что не возникает переполнение или не заполнение буфера.
Секция 128 установки типа HRD принимает решение о типе HRD параметра в соответствии с командой пользователя, и получает информацию, указывающую состояние буфера 117 накопления или буфера 117 накопления (нижний уровень) базового уровня секции 101-1 кодирования изображения нижнего уровня в соответствии с используемым типом HRD параметра. Секция 128 установки типа HRD вычисляет параметр HRD на основе полученной информации, и вызывает секцию 116 кодирования без потерь кодировать флаг, указывающий на тип HRD параметра и HRD параметр.
Кроме того, когда информация сжатия изображения (кодированные данные) для вывода включает в себя один уровень, значение флага, указывающего тип HRD параметра, является произвольным и не влияет на процесс обработки на стороне декодирования.
Пример конфигурации буфера накопления и секции установки типа HRD
Фиг. 12 является блок-схемой, иллюстрирующей пример конфигурации буфера накопления и секции установки типа HRD, показанной на фиг. 11.
В качестве примера на фиг. 12, буфер 117 накопления выполнен с возможностью включать в себя буфер 131 частичного накопления и буфер 132 полного накопления.
Секция 128 установки типа HRD выполнена с возможностью включать в себя секцию 141 вычисления HRD параметра уровня, секцию 142 вычисления HRD параметра временного уровня, секцию 143 установки типа HRD параметра и секцию 144 установки типа HRD параметра времени.
Буфер 131 частичного накопления выполнен с каждым буфером накопления, который накапливается закодированные данные, относящиеся к каждому верхнему временному уровню кодированных данных (коды), накопленных в буфере 132 полного накопления. Информация, указывающая состояние каждого буфера накопления, подается в секцию 142 вычисления HRD параметра временного уровня по запросу.
Буфер 132 полного накопления накапливает кодированные данные (коды), закодированные секцией 116 кодирования без потерь. Кроме того, информация, указывающая состояние буфера полного накопления буфера 132 полного накопления, подается в секцию 141 вычисления HRD параметра уровня и секцию 142 вычисления HRD параметра временного уровня по запросу. Кроме того, существуют случаи, в которых существует секция 101-3 кодирования изображения усовершенствованного уровня верхнего уровня, как показано пунктирной линией. В этом случае, информация, указывающая на состояние буфера полного накопления буфера 132 полного накопления, также поставляется в секцию 128 установки типа HRD (верхний уровень) в соответствии с запросом секции 128 установки типа HRD (верхний уровень) секции 101-3 кодирования изображения усовершенствованного уровня.
Секция 141 вычисления HRD параметра уровня получает информацию, указывающую состояние буфера 132 полного накопления и информацию, указывающую состояние буфера 117 накопления (нижний уровень) базового уровня секции 101-1 кодирования изображения базового уровня в соответствии с типом HRD параметра (флаг), поставленным из секции 143 установки типа HRD параметра. Практически, информация принимается из буфера 132 полного накопления буфера накопления секции 101-1 кодирования изображения базового уровня.
Когда флаг типа HRD параметра указывает 1, получается информация, указывающая состояние буфера 132 полного накопления. Когда флаг типа HRD параметра указывает на 0, то принимается информация, указывающая состояние буфера 132 полного накопления, и информация, указывающая состояние буфера 117 накопления (нижний уровень) секции 101-1 кодирования изображения базового уровня.
Секция 141 вычисления HRD параметра уровня вычисляет HRD параметра уровня на основании флага типа HRD параметра, подаваемого из секции 143 установки типа HRD параметра, и полученной информации, и поставляет вычисленный HRD параметр уровня в секцию 116 кодирования без потерь.
Секция 142 вычисления HRD параметра временного уровня получает информацию, указывающую состояние буфера 132 полного накопления и информацию, указывающую состояние буфера накопления соответствующего временного уровня буфера 131 частичного накопления в соответствии с суб типом HRD параметра (флаг), поставленным из секции 144 установки типа HRD параметра времени.
Когда флаг суб типа HRD параметра указывает 1, то принимается информация, указывающая состояние буфера накопления соответствующего временного уровня буфера 131 частичного накопления. Когда флаг суб типа HRD параметра указывает 0, то принимается информация, указывающая состояние буфера 132 полного накопления и информация, указывающая состояние буфера накопления соответствующего временного уровня буфера 131 частичного накопления.
Секция 142 вычисления HRD параметра временного уровня вычисляет HRD параметр временного уровня на основании суб типа HRD параметра, поставленного из секции 144 установки типа HRD параметра времени, и полученной информации, и поставляет рассчитанный HRD параметр временного уровня в секцию 116 кодирования без потерь,
Секция 143 установки типа HRD параметра устанавливает тип HRD параметра в соответствии с командой пользователя, и поставляет флаг, указывающий установленный тип HRD параметра, в секцию 116 кодирования без потерь и секцию 141 вычисления HRD параметра уровня.
Секция 144 установки типа HRD параметра времени устанавливает суб тип HRD параметра в соответствии с командой пользователя, и поставляет флаг, указывающий на установленный суб тип HRD параметра, в секцию 116 кодирования без потерь и секцию 142 вычисления HRD параметра временного уровня.
Секция 116 кодирования без потерь кодирует флаг, указывающий тип HRD параметра, подаваемого из секции 143 установки типа HRD параметра, и HRD параметр уровня, подаваемого из секции 141 вычисления HRD параметра уровня, и устанавливает кодированную информацию как информацию заголовка кодированных данных. Секция 116 кодирования без потерь кодирует флаг, указывающий тип суб HRD параметра, поставленного из секции 144 установки типа HRD параметра времени, и HRD параметр временного уровня, поставленного из секции 142 вычисления HRD параметра временного уровня, и устанавливает кодированную информацию как информацию заголовка кодированных данных. Кодированные данные выводятся в буфер 132 полного накопления.
Структура уровня
В масштабируемом кодировании видео, данные изображения расположены в иерархическом порядке на множестве уровней, как описано выше со ссылкой на фигуры с 2 по 4. В дальнейшем с целью описания, этот уровень называют в качестве основного уровня.
Группа изображений каждого основного уровня конфигурирует последовательность на основном уровне. Изображения в последовательности образуют иерархическую структуру (структуру GOP), как показано на фиг. 13, так же, как данные движущегося изображения одного основного уровня. В дальнейшем, ради описании, уровень на одном основном уровне называют субуровнем.
В примере на фиг. 13, основной уровень выполнен из двух уровней, то есть, из базового уровня (BaseLayer) и усовершенствованного уровня (EnhLayer). Базовый уровень представляет собой уровень, в котором изображение формируется только посредством своего основного уровня без зависимости от других основных уровней. Данные базового уровня кодируются и декодируется без ссылки на другие основные уровни. Усовершенствованный уровень представляет собой основной уровень, который объединяется с данными основного уровня для получения изображения. Данные усовершенствованного уровня могут быть использованы в процессе предсказания (процесс межкадрового предсказания) (который также называют "межуровневое предсказание") с соответствующим базовым уровнем.
Количество основных уровней закодированных данных, расположенных в иерархическом порядке, посредством масштабируемого кодирования видео, является произвольным. В дальнейшем, как предполагается, каждый основной уровень устанавливается как базовый уровень или усовершенствованный уровень, и в каждом усовершенствованном уровне любой один базовый уровень, как предполагается, будет установлен в качестве ссылочного адресата.
В примере на фиг. 13, каждый базовый уровень и усовершенствованный уровень имеет структуру GOP, сконфигурированную тремя субровнями, то есть, субуровнем 0 (Sublayer0), субуровнем 1 (Sublayer1) и субуровнем 2 (Sublayer2). Квадрат, показанный на фиг. 13, иллюстрирует кадр, и обозначения в квадрате указывают тип кадра. Например, квадрат, в котором написано «I», обозначает I кадр, квадрат, в котором написано «В», обозначает B кадр на который ссылается, и квадрат, в котором написано «b», указывает на B кадр, на который не ссылается. Кроме того, пунктирная линия между квадратами указывает на зависимость отношения (отношение ссылки). Как указано отдельными пунктирными линиями, кадр верхнего субуровня зависит от кадра нижнего субуровня. Другими словами, кадр на субуровня 1 или кадр субуровня 0 соотносятся кадром субуровня 2 (Sublayer2). Кроме того, кадр субуровня 0 соотносится кадром субуровня 1. Кадр субуровня 0 соответствующим образом соотносится кадром субуровня 0.
Количество субуровней (номер субуровня) является произвольным. Структура GOP также является также произвольной, и не ограничивается примером на фиг. 13.
Далее приведено описание отношения соответствия с настоящим вариантом осуществления. Кодированные данные всех изображений усовершенствованного уровня накапливается в буфере 132 полного накопления, показанного на фиг. 12.
Буфер 131 частичного накопления, показанный на фиг. 12, включает в себя буфер накопления субуровня 1 и буфер накопления субуровня 2. Другими словами, например, кодированные данные В-кадров субуровня 1, указанные В2, В4 и В6 в усовершенствованном уровне, как показано на фиг. 13, накапливаются в буфере накопления субуровня 1. Кодированных данные В-кадров субуровня 2, указанные В1, В3, В5 и В7 в усовершенствованном уровне, накапливается в буфере накопления субуровня 2.
Дополнительно, кодированные данные всех кадров базового уровня, как показано на фиг. 13, накапливается в буфере 177 (буфер 132 полного накопления) накопления секции 101-1 кодирования изображения базового уровня, как показано на фиг. 12, и информация, указывающая состояние буфера, поступает в секцию 141 вычисления HRD параметра уровня в качестве информации, указывающей состояние нижнего уровня буфера полного накопления.
Кроме того, хотя не показано, буфер 131 частичного накопления буфера 117 накопления секции 101-1 кодирования изображения базового уровня включает в себя буфер накопления субуровня 1 и буфер накопления субуровня 2. Другими словами, например, кодированные данные В-кадров субуровня 1, указанные В2, В4 и В6 в базовом уровне, как показано на фиг. 13, накапливаются в буфере накопления субуровня 1. Кодированные данные В-кадров субуровня 2, указанные В1, В3, В5 и В7 в базовом уровне, накапливается в буфере накопления субуровня 2.
Последовательность выполнения операций процесса кодирования
Далее приведено описание последовательности выполнения операций процесса, выполняемого устройством 100 масштабируемого кодирования. Во-первых, пример последовательности выполнения операций процесса кодирования будет описан со ссылкой на блок-схему, показанную на фиг. 14.
Когда начинается процесс кодирования, на этапе S101, секция 102 управления кодированием устройства 100 масштабируемого кодирования принимает решение о целевом уровне обработки с учетом отношений ссылки изображения или тому подобное.
На этапе S102, секция 101-1 кодирования изображения базового уровня выполняет процесс кодирования уровня под контролем секции 102 управления кодированием. Процесс кодирования уровня будет описан ниже со ссылкой на фиг. 15. Когда процесс на этапе S102 заканчивается, то процесс переходит к этапу S103.
На этапе S103 секция 102 управления кодированием определяет, были ли обработаны или нет, все основные уровни. Когда определено, что есть необработанный основной уровень, то процесс переходит на этап S104.
На этапе S104 секция 102 управления кодированием устанавливает следующий необработанный основной уровень в качестве цели обработки (текущий основной уровень). Когда процесс на этапе S104 заканчивается, то процесс возвращается к этапу S102. На этапе S102 секция 101-2 кодирования изображения усовершенствованного уровня выполняет процесс кодирования уровня под контролем секции 102 управления кодированием. Процессы на этапах S102-S104 повторно осуществляются для кодирования основных уровней, как описано выше. Процесс на этапе S102 может обрабатываться параллельно посредством использования множества секций 101 кодирования изображения уровня, не имеющих отношения ссылки.
Затем, когда все основные уровни определены, как обработанные на этапе S103, то процесс кодирования заканчивается.
Последовательность выполнения операций процесса кодирования уровня
Далее будет приведено описание процесса кодирования уровня на этапе S102, показанного на фиг. 14, со ссылкой на блок-схему алгоритма, проиллюстрированную на фиг. 15. Пример, показанный на фиг. 15, будет описан совместно с примером секции 101-2 кодирования изображения усовершенствованного уровня.
На этапе S111 секция 111 А/D преобразования секции 101-2 кодирования изображения усовершенствованного уровня выполняет А/D преобразование информации входного изображения (данные изображения) усовершенствованного уровня. На этапе S112, буфер 112 переупорядочивания экрана сохраняет информацию изображения (цифровые данные) усовершенствованного уровня, который был подвергнут А/D преобразованию, и переупорядочивает кадры, расположенные в порядке отображения в порядок кодирования.
На этапе S113 секция 124 внутрикадрового предсказания выполняет процесс внутрикадрового предсказания в режиме внутрикадрового предсказания. На этапе S114, секция 125 предсказания/компенсации движения выполняет процесс межкадрового предсказания движения, в котором выполняется предсказание движения и компенсация движения в режиме межкадрового предсказания. На этапе S115 секция 126 выбора предсказанного изображения определяет оптимальный режим на основании функции стоимости выходных значений из секции 124 внутрикадрового предсказания и секции 125 предсказания/компенсации движения. Другими словами, секция 126 выбора предсказанного изображения выбирает предсказанное изображение, генерируемое секцией 124 внутрикадрового предсказания, или предсказанное изображение, генерируемое секцией 125 предсказания/компенсации движения. На этапе S116 операционная секция 113 вычисляет разность между переупорядоченным изображением в процессе на этапе S112 и предсказанным изображением, выбранным в процесс на этапе S115. Дифференциальные данные меньше в размере данных, чем данные исходного изображения. Таким образом, можно сжать объем данных до уменьшенного значения, чем когда изображение кодируется без изменений.
На этапе S117, секция 114 ортогонального преобразования выполняет процесс ортогонального преобразования дифференциальной информации, полученной в процессе на этапе S116. На этапе S118 секция 115 квантования выполняет квантование коэффициентов ортогонального преобразования, полученных в процессе обработки на этапе S117, используя параметр квантования, вычисленный секцией 127 управления скоростью обработки.
Дифференциальная информация, квантованная в процессе обработки на этапе S118, локально декодируется следующим образом. Другими словами, на этапе S119, секция 118 обратного квантования выполняет процесс обратного квантования квантованных коэффициентов (который также упоминается как "коэффициенты квантования") в процессе квантования на этапе S118, в соответствии с характеристиками, соответствующими характеристикам секции 115 квантования. На этапе S120, секция 119 обратного ортогонального преобразования выполняет обратное ортогональное преобразование коэффициентов ортогонального преобразования, полученных в процессе на этапе S117. На этапе S121 операционная секция 120 генерирует локально декодированное изображение (изображение, соответствующее входу операционной секции 113), добавлением предсказанного изображения к локально декодированной дифференциальной информации.
На этапе S122, контурный фильтр 121 выполняет фильтрацию изображения, сгенерированное в процессе обработки на этапе S121. В результате, например, удаляются искажения блочности. На этапе S123, в памяти 122 кадров хранится изображение, в котором, например, искажение блочности было удалено в процессе обработки на этапе S122. Изображение, которое не подвергается процессу фильтрации, выполненному контурным фильтром 121, также поступает из операционной секции 120 и хранится в памяти 122 кадров. Изображение, хранимое в памяти 122 кадров, используется в процессе обработки на этапе S113 или в процесс обработки на этапе S114.
На этапе S124 секция 128 установки типа HRD выполняет процесс кодирования HRD параметра. Процесс кодирования HRD параметра будет описан ниже со ссылкой на фиг. 16, и в ходе этого процесса, флаг, указывающий тип HRD параметра и HRD параметр, поставляются в секцию 116 кодирования без потерь.
На этапе S125 секция 116 кодирования без потерь кодирует квантованные коэффициенты в процессе обработки на этапе S118. Другими словами, кодирование без потерь, такое как кодирование с переменной длиной или арифметическое кодирование, выполняется на данных, соответствующие разностному изображению.
В это время, секция 116 кодирования без потерь кодирует информацию, относящуюся к режиму предсказания предсказанного изображения, выбранного в процессе на этапе S115, и добавляет кодированную информацию к закодированным данным, полученным посредством кодирования разностного изображения. Другими словами, секция 116 кодирования без потерь также кодирует, например, информацию в соответствии с информацией об оптимальном режиме внутрикадрового предсказания, поставляемую из секции 124 внутрикадрового предсказания, или с информацией об оптимальном режиме предсказания, поставляемой из секции 125 предсказания/компенсации движения, и добавляет кодированную информацию к кодированным данным. Кроме того, секция 116 кодирования без потерь также кодирует информацию, такую как флаг, указывающий тип HRD параметра, и HRD параметр, поставленный в процессе на этапе S124, и добавляет кодированную информацию к закодированным данным.
На этапе S126, буфер 117 накопления аккумулирует кодированные данные усовершенствованного уровня, полученные в процессе на этапе S125. Кодированные данные усовершенствованного уровня, накопленные в буфере 117 накопления, соответствующим образом считываются и передаются на сторону декодирования по каналу передачи или посредством носителя записи.
На этапе S127, секция 127 управления скоростью обработки управляет процессом квантования, выполняемого секцией 115 квантования в зависимости от количества кодирования (генерируемая величина кодирования) закодированных данных, накопленных в буфере 117 накопления в процессе на этапе S126, так что не возникает переполнения или не заполнения буфера. Кроме того, секция 127 управления скоростью обработки поставляет информацию, относящуюся к параметру квантования, в секцию 115 квантования.
Когда процесс на этапе S127 заканчивается, то процесс кодирования заканчивается, и процесс возвращается к этапу S102, как показано на фиг. 14.
Последовательность выполнения операций процесса кодирования HRD параметра
Далее приведено описание примера процесса кодирования HRD параметра, показанного на фиг. 7, со ссылкой на блок-схему алгоритма, показанную на фиг. 16.
На этапе S131 секция 143 установки типа HRD параметра устанавливает тип HRD параметра в соответствии с командой пользователя. Секция 143 установки типа HRD параметра поставляет флаг, указывающий на установленный тип HRD параметра, в секцию 116 кодирования без потерь и секцию 141 вычисления HRD параметра уровня.
На этапе S132 секция 141 вычисления HRD параметра уровня выполняет процесс вычисления HRD параметра соответствующего уровня в соответствии с флагом, указывающим тип HRD параметра, поставленный из секции 143 установки типа HRD параметра. Процесс вычисления параметра HRD будет описан ниже со ссылкой на фиг. 17.
На этапе S133, секция 141 вычисления HRD параметра уровня поставляет HRD параметр соответствующего уровня, вычисленный на этапе S132, в секцию 116 кодирования без потерь, так что HRD параметр соответствующего уровня кодируется.
Флаг, указывающий тип HRD параметра, поставляемый на этапе S131, и HRD параметр уровня, подаваемый на этапе S133, кодируются на этапе S125, как показано на фиг. 15.
На этапе S134, секция 144 установки типа HRD параметра времени устанавливает суб тип HRD параметра в соответствии с командой пользователя. Секция 144 установки типа HRD параметра времени поставляет флаг, указывающий установленный суб тип HRD параметра, в секцию 116 кодирования без потерь и секцию 142 вычисления HRD параметра времени.
На этапе S135, секция 142 вычисления HRD параметра времени выполняет процесс вычисления HRD параметра соответствующего временного уровня в соответствии с флагом, указывающим суб тип HRD параметра, подаваемого из секции 144 установки типа HRD параметра времени. Процесс вычисления HRD параметра временного уровня будет описан ниже со ссылкой на фиг. 18.
На этапе S136, секция 142 вычисления HRD параметра времени поставляет HRD параметр временного уровня, вычисленного на этапе S135, в секцию 116 кодирования без потерь, так что HRD параметр временного уровня кодируется.
Флаг, указывающий суб тип HRD параметра, подаваемого на этапе S134, и HRD параметр временного уровня, поставленный на этапе S134, кодируются на этапе S125, как показано на фиг. 15.
На этапе S137, секция 142 вычисления HRD параметра времени определяет, был ли или нет закончен процесс обработки на всех временных уровнях. Когда определяется, что процесс завершен на всех временных уровнях на этапе S137, то процесс кодирования HRD параметров заканчивается, и процесс возвращается к этапу S124, как показано на фиг. 15.
Когда определяется, что процесс еще не завершен на любом из временном уровне на этапе S137, то процесс возвращается к этапу S134, и последующий процесс повторяется.
Последовательность выполнения операций процесса вычисления HRD параметра
Далее приведено описание процесс вычисления HRD параметра на этапе S132, как показано на фиг. 16, со ссылкой на блок-схему алгоритма на фиг. 17.
Флаг типа HRD параметра, подается в секцию 141 вычисления HRD параметра уровня посредством этапа S131 на фиг. 16. На этапе S141, секция 141 вычисления HRD параметра уровня определяет, равен ли поставленный флаг типа HRD параметра из секции 143 установки типа HRD параметра, 1.
Когда флаг типа HRD параметра определяется, как равным 1 на этапе S141, то процесс переходит к этапу S142.
На этапе S142, секция 141 вычисления HRD параметра уровня получает информацию, указывающую состояние буфера 132 полного накопления. На этапе S143, секция 141 вычисления HRD параметра уровня вычисляет HRD параметр соответствующего уровня на основании полученной информации, которая указывает на состояние буфер 132 полного накопления.
Когда флаг типа HRD параметра определяется, как не равным 1 на этапе S141, то процесс переходит к этапу S144.
На этапе S144, секция 141 вычисления HRD параметра уровня получает информацию, указывающую состояние буфера 132 полного накопления. На этапе S145, секция 141 вычисления HRD параметра уровня получает информацию, указывающую состояние буфера 117 накопления (нижний уровень) секции 101-1 кодирования изображения базового уровня. На этапе S146, секция 141 вычисления HRD параметра уровня вычисляет HRD параметр соответствующего уровня на основании полученной информации.
После этапа S143 или S146, процесс вычисления HRD параметра заканчивается, и процесс возвращается к этапу S132 на фиг. 16.
Последовательность выполнения операций процесса вычисления HRD параметра временного уровня
Далее приведено описание процесса вычисления HRD параметра временного уровня на этапе S135 на фиг. 16 со ссылкой на блок-схему алгоритма, показанную на фиг. 18.
Флаг суб типа HRD параметра подается в секцию 142 вычисления HRD параметра времени посредством этапа S134 на фиг. 16. На этапе S151, секция 142 вычисления HRD параметра времени определяет, равен ли поставленный флаг суб типа HRD параметра из секции 144 установки типа HRD параметра времени, 1.
Когда флаг суб типа HRD параметра определяется как равным 1 на этапе S151, то процесс переходит к этапу S152.
На этапе S152, секция 142 вычисления HRD параметра времени получает информацию, указывающую состояние буфера накопления соответствующего временного уровня буфера 131 частичного накопления. На этапе S153, секция 142 вычисления HRD параметра времени вычисляет параметр HRD временного уровня на основании полученной информации, которая указывает состояние буфера 131 частичного накопления.
Когда флаг суб типа HRD параметра определяется не равным 1 на этапе S151, то процесс переходит к этапу S154.
На этапе S154, секция 142 вычисления HRD параметра времени получает информацию, указывающую состояние буфера 132 полного накопления. На этапе S155, секция 142 вычисления HRD параметра времени получает информацию, указывающую состояние буфера накопления соответствующего временного уровня буфера 131 частичного накопления. На этапе S156, секция 142 вычисления HRD параметра времени вычисляет HRD параметр соответствующего временного уровня на основании полученной информации.
После этапа S153 или S156, процесс вычисления HRD параметра временного уровня заканчивается, и процесс возвращается к этапу S135, как показано на фиг. 16.
Другая последовательность выполнения операций процесса кодирования HRD параметра
Далее будет приведено описание процесса кодирования HRD параметра этапа S124 на фиг. 15 со ссылкой на блок-схему алгоритма, показанную на фиг. 19. На фиг. 16 иллюстрирует пример кодирования HRD параметра, показанного на фиг. 8 и фиг. 9.
На этапе S161, секция 143 установки типа HRD параметра устанавливает тип HRD параметра в соответствии с командой пользователя. Секция 143 установки типа HRD параметра поставляет флаг, указывающий установленный тип HRD параметра, в секцию 116 кодирования без потерь и секцию 141 вычисления HRD параметра уровня.
На этапе S162, секция 141 вычисления HRD параметра уровня выполняет процесс вычисления HRD параметра соответствующего уровня в соответствии с флагом, указывающим тип HRD параметра, подаваемого из секции 143 установки типа HRD параметра. Поскольку процесс вычисления HRD параметра в основном так же, как в способе, описанном со ссылкой на фиг. 17, повторное описание опущено.
На этапе S163, секция 141 вычисления HRD параметра уровня определяет, был ли закончен или нет процесс вычисления HRD параметра обоих типов 1 и 2. Когда определяется, что процесс вычисления HRD параметра любого типа как не завершенным на этапе S163, то процесс возвращается к этапу S162, и последующий процесс повторяется.
Кроме того, когда вычисляется либо тип 1, либо тип 2, то процесс переходит к этапу S163.
Когда определяется, что процесс вычисления HRD параметра обоих типов 1 и 2, как завершенный на этапе S163, то процесс переходит к этапу S164.
На этапе S164, секция 141 вычисления HRD параметра уровня поставляет HRD параметр соответствующего уровня, вычисленного на этапе S162, в секцию 116 кодирования без потерь, так что HRD параметр соответствующего уровня кодируется.
Флаг, указывающий тип HRD параметра, поставленный на этапе S161, и HRD параметр уровня, поставленного на этапе S164, кодируются на этапе S125, как показано на фиг. 15.
На этапе S165, секция 144 установки типа HRD параметра времени устанавливает суб тип HRD параметра в соответствии с командой пользователя. Секция 144 установки типа HRD параметра времени поставляет флаг, указывающий установленный суб тип HRD параметра, в секцию 116 кодирования без потерь и секцию 142 вычисления HRD параметра времени.
На этапе S166, секция 142 вычисления HRD параметра времени выполняет процесс вычисления HRD параметра соответствующего временного уровня в соответствии с флагом, указывающим суб тип HRD параметра, подаваемого из секции 144 установки типа HRD параметра времени. Поскольку процесс вычисления HRD параметра временного уровня, в основном так же, как в способе, описанном со ссылкой на фиг. 18, то повторное описание опущено.
На этапе S167, секция 141 вычисления HRD параметра уровня определяет, был ли завершен или нет процесс вычисления HRD параметра обоих типов 1 и 2. Когда определяется, что процесс вычисления HRD параметра любого типа, как не завершенным на этапе S163, то процесс возвращается к этапу S166, и последующий процесс повторяется.
Кроме того, когда вычисляется либо тип 1, либо тип 2, то процесс переходит к этапу S168.
Когда определяется, что процесс вычисления HRD параметра обоих типов, завершен на этапе S167, то процесс переходит к этапу S168.
На этапе S168, секция 142 вычисления HRD параметра времени подает HRD параметр соответствующего уровня времени, рассчитанного на этапе S166, в секцию 116 кодирования без потерь, так что HRD параметр временного уровня кодируется.
Флаг, указывающий суб тип HRD параметра, поставленный на этапе S165, и HRD параметр временного уровня, поставленный на этапе S168, кодируются на этапе S125, как показано на фиг. 15.
На этапе S169, секция 142 вычисления HRD параметра времени определяет, был ли завершен или нет процесс на всех временных уровнях. Когда определяется, что процесс был завершен на всех временных уровнях на этапе S169, то процесс кодирования HRD параметра заканчивается, и процесс возвращается к этапу S124, как показано на фиг. 15.
Когда определяется, что процесс не был завершен на любом из уровней на этапе S169, то процесс возвращается к этапу S165, и последующий процесс повторяется.
Как описано выше, флаг типа HRD параметра, указывающий, является ли HRD параметр параметром для выполнения процесса декодирования только соответствующего уровня или параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, который установлен на стороне кодирования. Таким образом, можно выполнить процесс декодирования в надлежащий период времени.
2. Второй вариант осуществления
Устройство масштабируемого декодирования
Далее будет приведено описание процесса декодирования кодированных данных (битового потока), которые были подвергнуты масштабируемому кодированию видео, как описано выше. Фиг. 20 является блок-схемой, иллюстрирующей пример основной конфигурации устройства масштабируемого декодирования, соответствующей устройству 100 масштабируемого кодирования, показанного на фиг. 10. Например, устройство 200 масштабируемого декодирования, показанное на фиг. 20, выполняет масштабируемое декодирование закодированных данных, полученных посредством выполнения масштабируемого кодирования данных изображения посредством использования устройства 100 масштабируемого кодирования в соответствии со способом, соответствующим способу кодирования.
Устройство 200 масштабируемого декодирования выполнено с возможностью включать в себя секцию 201-1 декодирования изображения базового уровня, секцию 201-2 декодирования изображения усовершенствованного уровня и секцию 202 управления декодированием.
Секция 201-1 декодирования изображения базового уровня является секцией декодирования изображения, соответствующей секции 101-1 кодирования изображения базового уровня, показанной на фиг. 10, и получает, например, закодированные данные базового уровня, полученные путем кодирования информации изображения базового уровня посредством секции 101-1 кодирования изображения базового уровня. Секция 210-1 декодирования изображения базового уровня декодирует закодированные данные базового уровня, не обращаясь к другим уровням, реконструирует информацию изображения базового уровня и выводит информацию изображения базового уровня.
Секция 201-2 декодирования изображения усовершенствованного уровня является секцией декодирования изображения, которая соответствует секции кодирования изображения усовершенствованного уровня, и получает, например, закодированные данные усовершенствованного уровня, полученные путем кодирования данных изображения усовершенствованного уровня посредством секции 101-2 кодирования изображения усовершенствованного уровня. Секция 201-2 декодирования изображения усовершенствованного уровня декодирует закодированные данные усовершенствованного уровня. В это время, секция 201-2 декодирования изображения усовершенствованного уровня выполняет межуровневое предсказание со ссылкой на информацию, относящуюся к процессу декодирования базового уровня, при необходимости.
Дополнительно, флаг, указывающий тип HRD параметра и HRD параметр добавляются к каждой части кодированных данных (битовый поток) и передаются. Секция 201-2 декодирования изображения усовершенствованного уровня получает флаг, указывающий тип HRD параметра, получает информацию о текущем состоянии буфера накопления в соответствии с принятым флагом, указывающий на тип HRD параметра, и контролирует состояние буфера накопления.
Когда флаг, указывающий тип HRD параметра, равен 1, то секция 201-2 декодирования изображения усовершенствованного уровня распознает HRD параметр в качестве параметра, используемого для декодирования только соответствующего уровня, получает информацию о состоянии собственного буфера накопления, и контролирует состояние буфера накопления. Когда флаг, указывающий тип HRD параметра, равен 0, то секция 201-2 декодирования изображения усовершенствованного уровня распознает HRD параметр в качестве параметра, используемого для выполнения процесса декодирования соответствующего уровня и нижнего уровня, получает информацию о состоянии буфера накопления секции 201-2 декодирования изображения усовершенствованного уровня, и контролирует состояние буфера накопления. Этот процесс выполняется на уровне и субуровне (временной уровень). В секции 201-2 декодирования изображения усовершенствованного уровня этот процесс выполняется только на субуровне.
Посредством декодирования, секция 201-2 декодирования изображения усовершенствованного уровня декодирует кодированные данные усовершенствованного уровня, восстанавливает данные изображения усовершенствованного уровня и выводит информацию изображения усовершенствованного уровня.
Секция 201-1 декодирования изображения базового уровня и секция 201-2 декодирования изображения усовершенствованного уровня соответственно совместно относятся к "секции 201 декодирования изображения уровня".
Секция 202 управления процессом декодирования управляет процессом декодирования секции 201 декодирования изображения уровня, например, учитывая отношение ссылки секции 201 декодирования изображения уровня.
В примере на фиг. 20, показана одна секция 201-2 декодирования изображения усовершенствованного уровня, но когда есть верхний уровень, то обеспечиваются секции 201-3, 4, … декодирования изображения усовершенствованного уровня для каждого из верхних уровней, которые декодируют верхний уровень.
Пример конфигурации секции декодирования изображения уровня
Фиг. 21 является блок-схемой, иллюстрирующей пример основной конфигурации секции 201-2 декодирования изображения усовершенствованного уровня, показанной на фиг. 20. Секция 201-1 декодирования изображения базового уровня, показанная на фиг. 20, имеет в основном ту же конфигурацию, что и секция 201-2 декодирования изображения усовершенствованного уровня, показанная на фиг. 21, за исключением того, что тип изображения, служащего в качестве целевого, иной. Ради описания, в примере на фиг. 21, конфигурация секции 201-2 декодирования изображения усовершенствованного уровня будет описана в качестве примера.
Как показано на фиг. 21, секция 201-2 декодирования изображения усовершенствованного уровня включает в себя буфер 211 накопления, секцию 212 декодирования без потерь, секцию 213 обратного квантования, секцию 214 обратного ортогонального преобразования, операционную секцию 215, контурный фильтр 216, буфер 217 переупорядочения экрана и секцию 218 D/A преобразования. Секция 201-2 декодирования изображения усовершенствованного уровня дополнительно включает в себя память 219 кадров, секцию 220 выбора, секцию 221 внутрикадрового предсказания, секцию 222 предсказания/компенсации движения и секцию 223 выбора. Секция 201-2 декодирования изображения усовершенствованного уровня дополнительно включает в себя секцию 224 декодирования типа HRD.
Буфер 211 накопления является приемной секцией, которая принимает переданные кодированные данные усовершенствованного уровня. Буфер 211 накопления принимает и накапливает передаваемые кодированные данные усовершенствованного уровня и поставляет кодированные данные в секцию 212 декодирования без потерь в определенный момент времени. Информация, необходимая для декодирования информации режима предсказания и т.п., добавляется к кодированным данным усовершенствованного уровня. Флаг, указывающий тип HRD параметра, и HRD параметр также добавляются к кодированным данным усовершенствованного уровня.
При наличии запроса от секции 224 декодирования типа HRD, буфер 211 накопления поставляет информацию, обозначающую состояние буфера 211 накопления. Кроме того, например, когда есть секция 201-3 декодирования изображения усовершенствованного уровня верхнего уровня, как показан пунктирной линией, и есть запрос от секции 224 декодирования типа HRD, буфер 211 накопления поставляет информацию, указывающую состояние буфера 211 накопления.
Секция 212 декодирования без потерь декодирует информацию, которая была закодирована с помощью секции 116 кодирования без потерь, и поставленная из буфера 211 накопления в соответствии со схемой, соответствующей схеме кодирования секции 116 кодирования без потерь. Секция 212 декодирования без потерь поставляет данные квантованных коэффициентов дифференциального изображения, полученные посредством декодирования, в секцию 213 обратного квантования.
Дополнительно, секция 212 декодирования без потерь соответственно извлекает и получает NAL блок, включающий в себя набор параметров видео (VPS), набор параметров последовательности (SPS), набор параметров изображения (PPS) и т.п., которые включены в состав закодированных данных усовершенствованного уровня. Секция 212 декодирования без потерь извлекает информацию, относящуюся к оптимальному режиму предсказания, из информации, определяет, который из режимов внутрикадрового предсказания и межкадрового предсказания был выбран в качестве оптимального режима предсказания на основании информации, и поставляет информацию, относящуюся к оптимальному режиму предсказания в одну из секции 221 внутрикадрового предсказания или секцию 222 предсказания/компенсации движения, что соответствует выбранному режиму.
Другими словами, например, в секции 201-2 декодирования изображения усовершенствованного уровня, когда выбран режим внутрикадрового предсказания в качестве оптимального режима предсказания, информация, относящаяся к оптимальному режиму предсказания, поставляется в секцию 221 внутрикадрового предсказания. Кроме того, например, в секции 201-2 декодирования изображения усовершенствованного уровня, когда выбран режим межкадрового предсказания в качестве оптимального режима предсказания, то информация, относящаяся к режиму оптимального предсказания, поступает в секцию 222 предсказания/компенсации движения.
Кроме того, секция 212 декодирования без потерь извлекает информацию, необходимую для обратного квантования, такую как матрица квантования или параметр квантования, из NAL блока и поставляет извлеченную информацию в секцию 213 обратного квантования. Дополнительно, секция 212 декодирования без потерь извлекает флаг, указывающий тип HRD параметра, и HRD параметр, например, из VPS, и поставляет извлеченный флаг, указывающий тип HRD параметра, и HRD параметр в секцию 224 декодирования типа HRD.
Секция 213 обратного квантования подвергает обратному квантованию данные квантованного коэффициента, полученные в результате декодирования, выполняемого секцией 212 декодирования без потерь в соответствии со схемой, соответствующей схеме квантования секции 115 квантования. Секция 213 обратного квантования является такой же секцией обработки как секция 118 обратного квантования. Другими словами, описание секции 213 обратного квантования может быть применено к секции 118 обратного квантования. Здесь необходимо соответствующим образом изменить и считывать адресат ввода/вывода данных или т.п. в соответствии с устройством. Секция 213 обратного квантования поставляет полученные данные коэффициента в секцию 214 обратного ортогонального преобразования.
Секция 214 обратного ортогонального преобразования выполняет обратное ортогональное преобразование данных коэффициента, переданных из секции 213 обратного квантования в соответствии со схемой, соответствующей схеме ортогонального преобразования секции 114 ортогонального преобразования. Секция 214 обратного ортогонального преобразования является такой же секцией обработки как секция 119 обратного ортогонального преобразования. Другими словами, описание секции 214 обратного ортогонального преобразования может применяться для секции 119 обратного ортогонального преобразования. Здесь необходимо соответствующим образом изменить и прочитать адресат ввода/вывода данных или т.п. согласно устройству.
Секция 214 обратного ортогонального преобразования получает декодируемые остаточные данные, соответствующие остаточным данным, которые не подвергаются ортогональному преобразованию в секции 114 ортогонального преобразования посредством выполнения процесса обратного ортогонального преобразования. Декодированные остаточные данные, полученные в результате обратного ортогонального преобразования, поставляются в операционную секцию 215. Кроме того, предсказанное изображение поставляется из секции 221 внутрикадрового предсказания или секции 222 предсказания/компенсации движения в операционную секцию 215 через секцию 223 выбора.
Операционная секция 215 выполняет процесс сложения декодированных остаточных данных и предсказанного изображения, и получает данные декодированного изображения, соответствующие данным изображения, из которого предсказанное изображение не вычитается операционной секцией 113. Операционная секция 215 поставляет данные декодированного изображения в контурный фильтр 216.
Контурный фильтр 216 соответственно выполняет процесс фильтрации, например, фильтрацию артефактов блочности, адаптивную фильтрацию смещения или адаптивную фильтрацию поставленного декодированного изображения, и поставляет результирующее изображение в буфер 217 переупорядочивания экрана и память 219 кадров. Например, контурный фильтр 216 удаляет артефакты блочности декодированного изображения посредством выполнения процесса фильтрации артефактов блочности декодированного изображения. Кроме того, например, контурный фильтр 216 улучшает качество изображения посредством выполнения процесса фильтрации данных результата фильтрации артефактов блочности (декодированного изображения, из которого были удалены артефакты блочности), используя фильтр Винера. Контурный фильтр 216 является такой же секцией обработки, как контурный фильтр 121.
Дополнительно, декодированное изображение, выводимое из операционной секции 215, может быть поставлено в буфер 217 переупорядочения экрана или в память 219 кадров без использования контурного фильтра 216. Другими словами, часть или весь процесс фильтрации, выполненный контурным фильтром 216, может быть опущен.
Буфер 217 переупорядочения экрана переупорядочивает декодированное изображение. Другими словами, порядок кадров, переупорядоченные в порядок кодирования буфером 112 переупорядочения экрана, переупорядочивается в исходный порядок отображения. Секция 218 D/A преобразования выполняет D/А преобразование изображения, поступающее из буфера 217 переупорядочения экрана и выводит преобразованное изображение, которое будет отображаться на дисплее (не показан).
Память 219 кадров сохраняет поставленное декодированное изображение и поставляет хранимое декодированное изображение в секцию 220 выбора в качестве опорного изображения в определенный момент времени или на основании внешнего запроса, например, из секции 221 внутрикадрового предсказания, секции 222 предсказания/компенсации движения или тому подобное.
Память 219 кадров устанавливает хранимое декодированное изображение как информацию, относящуюся к процессу декодирования усовершенствованного уровня, и поставляет информацию в секцию 201-2 декодирования изображения усовершенствованного уровня верхнего уровня.
Секция 220 выбора выбирает адресат поставки опорного изображения, поступающего из памяти 219 кадров. Когда изображение, закодированное посредством внутрикадрового кодирования, декодируется, то секция 220 выбора поставляет опорное изображение, поступающее из памяти 219 кадров, в секцию 221 внутрикадрового предсказания. Кроме того, когда изображение, закодированное посредством межкадрового кодирования, декодируется, то секция 220 выбора подает опорное изображение, поступающее из памяти 219 кадров, в секцию 222 предсказания/компенсации движения.
Например, информация, указывающая режим внутрикадрового предсказания, полученная путем декодирования информации заголовка, соответствующим образом подается из секции 212 декодирования без потерь в секцию 221 внутрикадрового предсказания. Секция 221 внутрикадрового предсказания генерирует предсказанное изображение путем выполнения внутрикадрового предсказания, используя эталонное изображение, полученное из памяти 219 кадров в режиме внутрикадрового предсказания, используемого в секции 124 внутрикадрового предсказания. Секция 221 внутрикадрового предсказания поставляет сгенерированное предсказанное изображение в секцию 223 выбора.
Секция 222 предсказания/компенсации движения получает информацию (информацию оптимального режима предсказания, информацию опорного изображения и т.п.), полученную посредством декодирования информации заголовка из секции 212 декодирования без потерь.
Секция 222 предсказания/компенсации движения генерирует предсказанное изображение путем выполнения межкадрового предсказания с использованием опорного изображения, полученного из памяти 219 кадров в режиме межкадрового предсказания, указанного информацией оптимального режима предсказания, полученной из секции 212 декодирования без потерь. Хотя это не показано, в секции 222 предсказания/компенсации движения опорное изображение, поставленное из памяти 219 кадров секции 201-1 декодирования изображения базового уровня, также упоминается, по мере необходимости.
Секция 223 выбора подает предсказанное изображение, подаваемое из секции 221 внутрикадрового предсказания, или предсказанное изображение, подаваемое из секции 222 предсказания/компенсации движения, в операционную секцию 215. Затем, операционная секция 215 добавляет предсказанное изображение, сгенерированное с использованием вектора движения, к декодированным остаточным данным (информация дифференциального изображения), подаваемые из секции 214 обратного ортогонального преобразования, чтобы декодировать исходное изображение.
Секция 224 декодирования типа HRD получает информацию, указывающую состояние накопления из буфера 211 накопления или буфера 211 накопления (нижнего уровня) секции 201-1 декодирования изображения базового уровня в соответствии с флагом, указывающим тип HRD параметра, подаваемого из секции 212 декодирование без потерь. Секция 224 декодирования типа HRD контролирует буфер 211 накопления на основании полученной информации в соответствии с HRD параметром, соответствующего флага, указывающего тип HRD параметра.
Пример конфигурации буфера накопления и секции декодирования типа HRD >
Фиг. 22 является блок-схемой, иллюстрирующей пример конфигурации буфера накопления и секции декодирования типа HRD, показанной на фиг. 21.
В качестве примера на фиг. 22, буфер 211 накопления выполнен с возможностью включать в себя буфер 231 частичного накопления и буфер 232 полного накопления.
Секция 224 декодирования типа HRD выполнена с возможностью включать в себя секцию 241 мониторинга HRD параметра уровня, секцию 242 мониторинга HRD параметра временного уровня, секцию 243 декодирования типа HRD параметра и секцию 244 декодирования типа HRD параметра времени.
Буфер 231 частичного накопления выполнен с буферами накопления, которые накапливаются закодированные данные, относящиеся к каждому верхнему временному уровню среди кодированных данных (кодов), накопленных в буфере 232 полного накопления. Информация, указывающая состояние каждого буфера накопления, подается в секцию 242 мониторинга HRD параметра временного уровня по запросу.
Буфер 232 полного накопления накапливает кодированные данные (коды), закодированные с помощью секции 101-2 кодирования изображения усовершенствованного уровня. Информация, указывающая состояние буфера полного накопления буфера 232 полного накопления, подается в секцию 241 мониторинга HRD параметра уровня и секцию 242 мониторинга HRD параметра временного уровня по запросу. Кроме того, имеются случаи, в которых используется секция 201-3 декодирования изображения усовершенствованного уровня верхнего уровня, как показано пунктирной линией. В этом случае, при наличии запроса от секции 224 декодирования типа HRD (верхний уровень) секции 201-3 декодирования изображения усовершенствованного уровня, информация, указывающая состояние всего буфера накопления буфера 232 полного накопления, также поставляется в секцию 224 декодирования типа HRD (верхний уровень).
Секция 241 мониторинга HRD параметра уровня принимает HRD параметр, поставленный из секции 212 декодирования без потерь, и получает HRD параметр, соответствующий флагу, указывающий тип HRD параметра, поставленный из секции 243 декодирования типа HRD параметра. Секция 241 мониторинга HRD параметра уровня осуществляет мониторинг буфера 211 накопления на основании полученного HRD параметра.
Другими словами, секция 241 мониторинга HRD параметра уровня получает информацию, указывающую состояние буфера 232 полного накопления, и информацию, указывающую состояние буфера 211 накопления (нижний уровень) секции 201-1 декодирования изображения базового уровня в соответствии с флагом, указывающим тип HRD параметра, поставленный из секции 243 декодирования типа HRD.
В случае типа HRD параметра, в котором флаг указывает на 1, то получается информация, указывающая состояние буфера 232 полного накопления. В случае типа HRD параметра, в котором флаг означает 0, то получается информация, указывающая состояние буфера 232 полного накопления, и информация, указывающая состояние буфера 211 накопления (нижний уровень) секции 201-1 декодирования изображения базового уровня. Практически, информация получена из буфера 232 полного накопления буфера накопления секции 201-1 декодирования изображения базового уровня.
Секция 242 мониторинга HRD параметра временного уровня принимает HRD параметр временного уровня, поставленный из секции 212 декодирования без потерь, и получает HRD параметр временного уровня, соответствующий флагу, указывающий суб тип HRD параметра, поставленный из секции 244 декодирования типа HRD параметра времени. Секция 241 мониторинга HRD параметра уровня осуществляет мониторинг буфера 211 накопления на основании полученного HRD параметра временного уровня.
Другими словами, секция 242 мониторинга HRD параметра временного уровня получает информацию, указывающую состояние всего буфера 232 накопления, и информацию, указывающую состояние буфера накопления соответствующего временного уровня буфера 231 частичного накопления, в соответствии с флагом, указывающим суб тип HRD параметра, поставленный из секции 244 декодирования типа HRD параметра времени.
Когда флаг, указывающий суб тип HRD параметра, равен 1, получается информация, указывающая состояние буфера накопления соответствующего временного уровня буфера 231 частичного накопления. Когда флаг, указывающий суб тип HRD параметра, равен 0, то принимается информация, указывающая состояние буфера 232 полного накопления, и информация, указывающая состояние буфера накопления соответствующего временного уровня буфера 231 частичного накопления.
Секция 243 декодирования типа HRD параметра принимает флаг типа HRD параметра, поставленного из секции 212 декодирования без потерь. Затем секция 243 декодирования типа HRD параметра выбирает флаг, указывающий на тип HRD параметра, соответствующего конфигурации уровня фактического потока или конфигурации или функции устройства среди принятых флагов, и поставляет выбранный флаг в секцию 241 мониторинга HRD параметра уровня.
Секция 244 декодирования типа HRD параметра времени принимает флаг суб типа HRD параметра, поставленный из секции 212 декодирования без потерь. Затем, секция 244 декодирования типа HRD параметра времени выбирает флаг, указывающий суб тип HRD параметра, соответствующий конфигурации уровня фактического потока или конфигурации или функции устройства среди принятых флагов, и поставляет выбранный флаг в секцию 241 мониторинга HRD параметра уровня.
В случае HRD параметра, описанного выше со ссылкой на фиг. 8 и 9, описываются два типа (тип только соответствующего уровня и тип соответствующего уровня и нижнего уровня) и, таким образом, любой тип может быть выбран с помощью конфигурации или в зависимости от фактического потока или устройства. С другой стороны, в случае HRD параметра, описанного выше со ссылкой на фиг. 7, описан только один тип и, таким образом, параметр HRD игнорируется, если тип конфигурации или функция фактического потока или устройства отличается от описанного типа.
Последовательность выполнения операций процесса декодирования
Далее приводится описание последовательности выполнения операций процесса, выполняемого устройством 200 масштабируемого декодирования. Во-первых, пример последовательности выполнения операций процесса декодирования будет описан со ссылкой на блок-схему алгоритма на фиг. 23.
Когда начинается процесс декодирования на этапе S201, то секция 202 управления процессом декодирования устройства 200 масштабируемого декодирования принимает решение об уровне целевой обработки, например, с учетом отношения ссылки изображения.
На этапе S202, секция 201-1 декодирования изображения базового уровня выполняет процесс декодирования уровня под управлением секции 202 управления процессом декодирования. Процесс декодирования уровня будет описан ниже со ссылкой на фиг. 24. Когда процесс на этапе S202 заканчивается, то процесс переходит к этапу S203.
На этапе S203, секция 202 управления процессом декодирования определяет, было ли выполнено декодирование основных уровней или нет. Когда определено, что основной уровень не был обработан, то процесс переходит к этапу S204.
На этапе S204, секция 202 управления процессом декодирования устанавливает следующий необработанный основной уровень в качестве цели обработки (текущий основной уровень). Когда процесс на этапе S204 заканчивается, то процесс возвращается к этапу S202. На этапе S202 секция 201-2 декодирования изображения усовершенствованного уровня выполняет процесс декодирования уровня под управлением секции 202 управления процессом декодирования. Процесс на этапах с S202 по S204, повторно осуществляется для декодирования основных уровней, как описано выше. Процесс на этапе S202 может быть выполнен параллельно посредством множества секций 201 декодирования изображения уровня, не имеющих отношений ссылки.
Затем, когда все основные уровни определены, как обработанные на этапе S203, то процесс декодирования завершается.
Последовательность выполнения операций процесса декодирования уровня
Далее приведено описание примера последовательности выполнения операций процесса декодирования уровня, выполняемого на этапе S202, как показано на фиг. 23, со ссылкой на блок-схему алгоритма на фиг. 24. Пример на фиг. 24 будет описан с учетом описания примера секции 201-2 декодирования изображения усовершенствованного уровня.
Когда начинается процесс декодирования уровня на этапе S211, буфер 211 накопления секции 201-2 декодирования изображения усовершенствованного уровня накапливает потоки битов усовершенствованного уровня, передаваемого со стороны кодирования.
На этапе S212 секция 212 декодирования без потерь декодирует битовый поток (кодированную информацию разностного изображения) усовершенствованного уровня, подаваемый из буфера 211 накопления. Другими словами, I-кадр, Р-кадр и В-кадр, закодированные секцией 116 кодирования без потерь, декодируются. В это время, различные виды информации, кроме информации разностного изображения, включенную в состав битового потока, например, информация заголовка, также декодируется. Флаг, указывающий тип HRD параметра, подаваемого из секции 212 декодирования без потерь, и HRD параметр поставляются в секцию 224 декодирования типа HRD.
На этапе S213, секция 224 декодирования типа HRD выполняет процесс декодирования HRD параметра. Процесс декодирования HRD параметра будет описан ниже со ссылкой на фиг. 26.
HRD параметр декодируется на этапе S213, и буфер 211 накопления контролируется на основании декодированного HRD параметра таким образом, чтобы не допустить переполнения или не заполнения буфера.
На этапе S214, секция 213 обратного квантования подвергает обратному квантованию квантованные коэффициенты, полученные в процессе на этапе S212.
На этапе S215, секция 214 обратного ортогонального преобразования выполняет обратное ортогональное преобразование текущего блока (текущий TU).
На этапе S216 секция 221 внутрикадрового предсказания или секция 222 предсказания/компенсации движения выполняет процесс предсказания, и генерирует предсказанное изображение. Другими словами, процесс предсказания выполняется в режиме предсказания, который определяется, во время кодирования в секции 212 декодирования без потерь. Более конкретно, например, когда внутрикадровое предсказание применяется во время кодирования, секция 221 внутрикадрового предсказания генерирует предсказанное изображение в режиме внутрикадрового предсказания, признанного оптимальным во время кодирования. Кроме того, например, когда межкадровое предсказания применяется во время кодирования, секция 222 предсказания/компенсации движения генерирует предсказанное изображение в режиме межкадрового предсказания, признанного оптимальным во время кодирования.
На этапе S217 операционная секция 215 добавляет предсказанное изображение, сгенерированное на этапе S216, к информации разностного изображения, генерируемого во время процесса обратного ортогонального преобразования на этапе S215. В результате, исходное изображение декодируется.
На этапе S218, контурный фильтр 216 соответственно выполняет процесс фильтрации декодированного изображения, полученного на этапе S217.
На этапе S219, буфер 217 переупорядочения экрана переупорядочивает изображения, которые были подвергнуты процессу фильтрации на этапе S218. Другими словами, порядок кадров, переупорядоченный для кодирования посредством буфера 112 переупорядочивания экрана, переупорядочивается в исходный порядок для отображения.
На этапе S220, секция 218 D/А преобразования выполняет D/А преобразование изображения, в котором порядок кадров переупорядочен на этапе S219. Изображение выводится на дисплей (не показан) и отображается изображение.
На этапе S221, память 219 кадров хранит изображение, которое было подвергнуто процессу фильтрации контурным фильтром на этапе S218.
Когда процесс на этапе S221 заканчивается, то процесс декодирования базового уровня заканчивается, и процесс возвращается к фиг. 23.
Последовательность выполнения операций процесса декодирования HRD параметра
Далее будет описан пример последовательности выполнения операций процесса декодирования HRD параметра, выполняемого на этапе S213 на фиг. 24, со ссылкой на блок-схему алгоритма на фиг. 25.
Секция 243 декодирования типа HRD параметра принимает флаг, указывающий тип HRD параметра соответствующего уровня, на этапе S231. Затем, секция 243 декодирования типа HRD параметра поставляет, например, флаг, указывающий на тип HRD параметра, соответствующий конфигурации уровня фактического потока среди принятых флагов, в секцию 241 мониторинга HRD параметра уровня.
На этапе S232, секция 241 мониторинга HRD параметра уровня принимает HRD параметр, поставленный из секции 212 декодирования без потерь, и получает HRD параметр, соответствующий флагу, указывающий тип HRD параметра, поставленный из секции 243 декодирования типа HRD параметра.
На этапе S233, секция 244 декодирования типа HRD параметра времени принимает флаг, указывающий тип HRD параметра, поставленный из секции 212 декодирования без потерь. Затем секция 244 декодирования типа HRD параметра времени поставляет, например, флаг, указывающий суб тип HRD параметра, соответствующий конфигурации уровня фактического потока среди полученных флагов, в секцию 241 мониторинга HRD параметра уровня.
На этапе S234, секция 242 мониторинга HRD параметра временного уровня принимает HRD параметр временного уровня, поставленный из секции 212 декодирования без потерь, и получает HRD параметр временного уровня, соответствующий флагу суб типа HRD параметра, поставленного из секции 244 декодирования типа HRD параметра времени.
На этапе S235, секция 242 мониторинга HRD параметра временного уровня определяет, был ли завершен или нет процесс на всех временных уровнях. Когда определяется, что процесс не завершен на любом временном уровне на этапе S235, процесс возвращается к этапу S233, и последующий процесс повторяется.
Когда определяется, что процесс завершен на всех временных уровнях на этапе S235, то процесс переходит к этапу S236. На этапе S236, секция 241 мониторинга HRD параметра уровня и секция 242 мониторинга HRD параметра временного уровня выполнить процесс мониторинга буфера накопления, который будет описан ниже.
Последовательность выполнения операций процесса мониторинга буфера накопления
Далее приведено описание процесса мониторинга буфера накопления со ссылкой на блок-схему алгоритма, показанную на фиг. 26. Процесс мониторинга буфера накопления является примером использования флага типа HRD параметра в соответствии с настоящим изобретением, и данное изобретение не ограничивается этим примером. Ради описания, момент времени, в который выполняется данный процесс, описывается как будучи выполненным в рамках выполнения процесса декодирования HRD параметра, но данное изобретение не ограничивается этим примером, и этот процесс может быть выполнен, например, в любой момент времени во время осуществления процесса декодирования уровня, как показано на фиг. 24.
На этапе S251, секция 241 мониторинга HRD параметра уровня определяет, равен ли флаг, указывающий тип HRD параметра соответствующего уровня, 1. Когда флаг, указывающий тип HRD параметра соответствующего уровня, определяется как равным 1 на этапе S251, то процесс переходит к этапу S252.
На этапе S252, секция 241 мониторинга HRD параметра уровня получает информацию, указывающую состояние всего буфера 232 накопления, и на этапе S253, секция 241 мониторинга HRD параметра уровня осуществляет мониторинг буфера 232 полного накопления соответствующего уровня в соответствии с HRD параметром соответствующего уровня, используя полученную информацию.
Когда флаг, указывающий тип HRD параметра соответствующего уровня, определяется равным 0 на этапе S251, то процесс переходит к этапу S254.
На этапе S254, секция 241 мониторинга HRD параметра уровня получает информацию, указывающую состояние буфера 232 полного накопления, и на этапе S255, секция 241 мониторинга HRD параметра уровня получает информацию, указывающую состояние буфера 232 полного накопления нижнего уровня.
Затем, на этапе S256, секция 241 мониторинга HRD параметра уровня осуществляет мониторинг буфера 232 полного накопления соответствующего уровня, используя информацию, полученную на этапах S254 и S255, в соответствии с HRD параметром соответствующего уровня.
На этапе S257, секция 242 мониторинга HRD параметра временного уровня определяет, равен ли флаг, указывающий тип HRD параметра соответствующего временного уровня, 1. Когда флаг, указывающий тип HRD параметра соответствующего временного уровня, определяется как 1 на этапе S257, то процесс переходит к этапу S258.
На этапе S258, секция 242 мониторинга HRD параметра временного уровня получает информацию, указывающую состояние буфера накопления каждого соответствующего временного уровня буфера 231 частичного накопления.
На этапе S259, секция 242 мониторинга HRD параметра временного уровня осуществляет мониторинг (каждого из буфера) буфера 231 частичного накопления с использованием информации, полученной на этапе S258, в соответствии с HRD параметром каждого временного уровня.
Когда флаг, указывающий тип HRD параметра соответствующего временного уровня, определяется равным 0 на этапе S257, то процесс переходит к этапу S260.
На этапе S260, секция 242 мониторинга HRD параметра временного уровня получает информацию, указывающую состояние буфера 232 полного накопления.
На этапе S261, секция 242 мониторинга HRD параметра временного уровня получает информацию, указывающую состояние буфера накопления каждого соответствующего временного уровня буфера 231 частичного накопления.
На этапе S259, секция 242 мониторинга HRD параметра временного уровня осуществляет мониторинг (каждого из буфера) буфера 231 частичного накопления с использованием информации, полученной на этапах S260 и S261, в соответствии с HRD параметром каждого временного уровня.
Как описано выше, по меньшей мере, один флаг установлен для указания того, является ли HRD параметр параметром для выполнения декодирования только соответствующего уровня или параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня, и таким образом можно выполнить процесс декодирования в надлежащий период времени.
Этот флаг может быть передан на сторону декодирования в качестве дополнительной расширяющей информации (SEI).
Здесь трудно определить, выполняется ли процесс декодирования с помощью одного устройства декодирования или множеством устройств декодирования, как описано выше со ссылкой на фиг. 6. В связи с этим, был описан пример установки информации, указывающей, является ли HRD параметр параметром для выполнения процесса декодирования только соответствующего уровня или параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня.
Тем не менее, в настоящее время HEVC поддерживает только HRD параметр примера (то есть, пример, в котором процесс декодирования нескольких уровней выполняется с помощью одного устройства декодирования) ex11, показанный на фиг. 6. Другими словами, в данном HEVC, HRD параметр примера ex11 установлен в наборе параметров видео (VPS) и передается на сторону декодирования.
В связи с этим, в данном изобретении, способ передачи HRD параметра примера (то есть, пример, в котором процесс декодирования нескольких уровней выполняется с помощью множества устройств декодирования) ex12, показанного на фиг. 6, на сторону декодирования через vps_extension в масштабируемом HEVC предлагается в качестве третьего варианта осуществления.
3. Третий вариант осуществления
Пример синтаксиса vps_extension
Фиг. 27 показывает схему, иллюстрирующую пример синтаксиса vps_ extension. В качестве примера на фиг. 27, i указывает на количество layer_sets и j указывает на количество идентификаторов уровня. Дополнительно, начиная с j = 1 указывается, что есть только базовый уровень, когда j = 0, и в этом случае, способы обработки ex11 и ex12 не отличаются, но все являются аналогичными.
В качестве примера на фиг. 27 layer_set_hrd_layer_info_present_flag [i][j] устанавливается для каждого layer_id_included_flag[i][j]. Когда layer_set_hrd_layer_info_present_flag [i][j] = 1, то это указывает, что HRD параметр, соответствующий примеру ex12, присутствует (в vps_ extension) и в этом случае, HRD параметр, соответствующий примеру ex12, определяется в следующих и последующих рядах.
Дополнительно, HRD параметр, соответствующий примеру ex12, может быть установлен в sps (набор параметров последовательности)_extension как показано на фиг. 28.
Пример синтаксиса sps_extension
Фиг. 28 показывает схему, иллюстрирующую пример синтаксиса sps_ extension.
В качестве примера на фиг. 28 layer_set_hrd_layer_info_present_flag устанавливается. Когда этот флаг равен 1, то это указывает, что HRD параметр, соответствующий примеру ex12 присутствует (sps_ extension) и в этом случае, HRD параметр, соответствующий примеру ex12 определен в следующей строке.
В примере, показанном на фиг. 27 и 28, HRD параметр установлен для каждого layer_set. layer_set установлен в VPS, как показано на фиг. 29.
<Пример синтаксиса VPS>
Фиг. 29 показывает схему, иллюстрирующую пример синтаксиса VPS. Цифры слева от каждого ряда являются номерами строк, добавленными для описания.
В строке 16 на фиг. 29, число layer_sets устанавливается как vps_num_layer_sets_minus1.
С 17 по 19 строки, описано включены ли в состав уровня ID [J] layer_set в [I], как layer_id_included_flag [i] [J]. layer_id_included_flag [I] [J] будет подробно описан в семантике, показанной на фиг. 30.
В 27-м ряду, количество HRD параметров устанавливается в VPS как vps_num_hrd_parameters. В 29-й строке, hrd_parameters связан с layer_set как hrd_layer_set_idx [I]. В 32-й строке, описан HRD параметр примера ex11, как объяснено выше.
В 35-й строке описывается vps_extension_flag, указывающий присутствие или отсутствие vps_extension.
Пример семантики layer_id_included_flag [i] [J]
Фиг. 30 иллюстрирует пример семантики layer_id_included_flag [I] [J].
layer_id_included_flag [I] [J] равное 1, указывает, что значение nuh_layer_id равно J, входящее в список идентификаторов уровня layerSetLayerIdList [I]. layer_id_included_flag [I] [J] равное 0 указывает, что значение nuh_layer_id равно J, не включено в состав списка идентификаторов уровня layerSetLayerIdList [I].
Значение numLayersInIdList [0] устанавливается равным 1, и значение layerSetLayerIdList [0] [0] устанавливается равным 0.
Для каждого значения I в диапазоне от 1 до vps_num_layer_sets_minus1 включительно, переменная numLayersInIdList [I] и список идентификаторов уровня layerSetLayerIdList [I] получены следующим образом:
п = 0
для (m = 0, m <= vps_max_layer_id; m ++)
если (layer_id_included_flag [i] [m])
layerSetLayerIdList [i] [n ++] = m
numLayersInIdList [i] = n
Для каждого значения I в диапазоне от 1 до vps_num_layer_sets_minus1 включительно, numLayersInIdList [I] должен находиться в интервале от 1 до vps_max_layers_minus1 + 1 включительно.
Когда numLayersInIdList [IA] равна numLayersInIdList [IB] для любого iA и iB в диапазоне от 0 до vps_num_layer_sets_minus1 включительно, с iA не равным iB,значение layerSetLayerIdList [iA] [n] не должно быть равным layerSetLayerIdList [iB] [n], по меньшей мере, одно значение n в диапазоне от 0 до numLayersInIdList [iA], включительно.
Набор уровня определяется ассоциированным списком идентификаторов уровня. i-й набор уровня задается VPS, ассоциированный со списком идентификаторов уровня layerSetLayerIdList [i], для i в диапазоне от 0 до vps_num_layer_sets_minus1 включительно.
Набор уровня содержит все операционные точки, которые ассоциированы с тем же списком идентификаторов уровня.
Каждая операционная точка определяется соответствующим списком идентификаторов уровня, обозначенный как OpLayerIdList, который содержит список значений nuh_layer_id всех NAL блоков, находящиеся в операционной точке, в порядке возрастания значений nuh_layer_id, и переменную OpTid, которая равна наивысшему значению TemporalId всех NAL блоков, находящиеся в операционной точке. Битовое подмножество, ассоциированное с операционной точкой, и определённое посредством OpLayerIdList и OpTid, является выходной информацией процесса экстракции суб-битового потока, как указано в пункте 10, битового потока, целевое наивысшее значение TemporalId, равное OpTid, и список идентификаторов целевого уровня, равный OpLayerIdList, является входной информацией. OpLayerIdList и OpTid, что идентифицирует операционную точку, также называют OpLayerIdList и OpTid, ассоциированные с рабочей точкой, соответственно.
В частности, как показано на фиг. 30, где приведено описание того, что layer_set содержит все рабочие точки, которые ассоциированы с тем же списком идентификаторов уровня, и некоторые потоки битов, которые могут быть извлечены из битовых потоков, ассоциированные с рабочими точками, определенные посредством OplayerIdList.
В частности, установлен layer_set, например, как показано на фиг. 31.
Например, когда уровни 0, 1 и 2 включены в состав LayerSet [1], и уровни 0 и 2 включены в состав LayerSet [2], layer_id_included_flag устанавливается следующим образом.
Устанавливается layer_id_included_flag [1] [0] = 1, что указывает на то, что уровень 0 входит в состав LayerSet [1]. Кроме того, устанавливается layer_id_included_flag [1] [1] = 1, что указывает на то, что уровень 1 входит в состав LayerSet [1] и устанавливается layer_id_included_flag [1] [2] = 1, что указывает на то, что уровень 2 входит в состав LayerSet [1].
Устанавливается layer_id_included_flag [2] [0] = 1, что указывает на то, что уровень 0 входит в состав LayerSet [2]. Кроме того, устанавливается layer_id_included_flag [2] [1] = 0, что указывает на то, что уровень 1 не входит в состав LayerSet [2], и устанавливается layer_id_included_flag [2] [2] = 1, что указывает на то, что уровень 2 включен в состав LayerSet [2].
Как описано выше, флаг, указывающий, что существует HRD параметр, соответствующий примеру ex11 на фиг. 6, и HRD параметр, соответствующий примеру ex11, передаются на сторону декодирования через VPS. С другой стороны, флаг, указывающий, что существует HRD параметр, соответствующий примеру ex12 на фиг. 6, и HRD параметр, соответствующий примеру ex12, передаются на сторону декодирования через vps_extension. Таким образом, сторона декодирования может выполнять процесс декодирования в надлежащий период времени.
Кроме того, флаг, указывающий, что существует HRD параметр, соответствующий примеру ex12, также может быть передан на сторону декодирования в сообщении SEI.
4. Четвертый вариант осуществления
Другой пример способа управления планированием буфера
Между тем, чтобы предотвратить переполнение или опустошение буфера, необходимо применять любой из следующих способов для управления планированием использования буфера.
Первый способ представляет собой способ с использованием параметра, передаваемого в синтаксисе HRD параметра, с первого по третий варианты осуществления.
Второй способ является способом с использованием buffering_period_SEI и picture_timing_SEI.
Третий способ представляет собой способ с использованием параметра, передаваемого на уровне выше, чем уровень видео, таком как отметка времени (например, PTS или DTS) в уровневой системе.
Из этих способов, будет описан ниже способ с использованием buffering_period_SEI в соответствии со вторым способом.
Синтаксис buffering_period_SEI
Фиг. 32 показывает схему, иллюстрирующую пример синтаксиса buffering_period_SEI. Цифры слева от каждого ряда являются номерами строк, которые добавлены для описания.
В строке 2 на фиг. 32, параметр buffering_period устанавливается как bp_seq_parameter_set_id и может быть ассоциирован с SPS.
В последующих строках, устанавливается параметр управления планированием буфера накопления посредством накопления из нижнего уровня.
Между тем, был предложен способ определения параметра для случая ex12 для выполнения процесса декодирования для декодирования соответствующих уровней, включающие в себя уровень ссылки, посредством отдельных устройств декодирования, в дополнение к случаю ex11 выполнения процесса декодирования посредством одного устройства декодирования, в качестве параметра для управления буфером с помощью hdr_parameters () в информации сжатия изображения или информации сжатия суб изображения, как описано выше со ссылкой на фиг. 6.
hdr_parameters () в соответствии с первым способом, может быть передан в сочетании с VPS или SPS, и в случае первого, hdr_parameters () может быть передан для набора уровня, ассоциированного с VPS, а также как один уровень.
Тем не менее, buffering_period_SEI, как показано на фиг. 32, может быть ассоциировано только с SPS. Таким образом, трудно передавать параметр, ассоциированный с множеством наборов уровня, как в hdr_parameters () в VPS.
В связи с этим, в данном изобретении, управление планированием использования буфера накопления путем buffering_period_SEI, выполняется с помощью синтаксиса, показанного на фигурах с 33 по 35.
buffering_period_SEI в соответствии с настоящим изобретением, отличается от buffering_period_SEI, показанного на фиг. 32, в следующих пунктах.
Другими словами, первое отличие заключается в том, что buffering_period_SEI в соответствии с настоящим изобретением, может быть ассоциировано с VPS, а так же с SPS. Второе отличие заключается в том, что параметр может быть установлен для каждого набора уровня, определенного в VPS, когда ассоциирован с VPS. Третье отличие заключается в том, что можно установить параметр, когда все уровни, включенные в состав набора уровня, декодируются с помощью одного устройства декодирования, и параметр, когда соответствующие уровни декодируются отдельными устройствами декодирования, как показано на фиг. 6.
Фиг. 33-35 являются схемами, иллюстрирующие пример синтаксиса buffering_period_SEI. Цифры слева от каждого ряда являются номера строк, которые добавлены для описания.
В качестве примера на фиг. 33, associated_parameter_set_flag находится в 2-м ряду. associated_parameter_set_flag является флагом, обозначающим, какой из VPS и SPS ассоциирован с buffering_period_SEI. Когда associated_parameter_set_flag равен 0, то это означает связь с VPS, и когда associated_parameter_set_flag равен 1, то это указывает на ассоциацию с SPS.
Параметр, когда associated_parameter_set_flag равен 0 (VPS), описан с 3-ей по 11-ую строчки. bp_video_parameter_set_id в 4-м ряду указывает соответствующий VPS, и vps_num_bp_parameters в 5 ряду указывает на число переданных bp_parameters.
bp_layer_set_idx в 7-ой строке указывает на набор уровня, соответствующих каждому bp_parameter и синтаксис layer_buffering_period на фиг. 34 и 35 читается с layer_buffering_period в 10-ом ряду.
Параметр, если associated_parameter_set_flag равен 1 (SPS) описывается, как указано еще с 12-ой по 15-ую строчки.
bp_seq_parameter_set_id в 13 ряду указывает на соответствующий SPS, и синтаксис layer_buffering_period на фиг. 34 и 35 читается с layer_buffering_period в 14 ряду.
Другими словами, в соответствии с синтаксисом на фиг. 33, в случае, VPS синтаксис на фиг. 34 считывается посредством числа наборов уровня, и в случае SPS, синтаксис, показанной на фиг. 34 и 35, как только для чтения.
Как описано выше, когда associated_parameter_set_flag равен 0 (VPS), можно передавать параметр для управления буфером для набора уровня, назначенного VPS в соответствии с layer_buffering_period_SEI синтаксиса, показанного на фиг. 34 и 35.
При передаче параметра, относящегося к NAL и VCL на фиг. 34 и 35, служащий в качестве флага layer_specific_parameters_present_flag, указывающий, установлен ли параметр, переданный только соответствующего уровня, как показано в 18-ой и 38-ой строках. Когда этот флаг равен 1, то это указывает, что передан параметр только соответствующего уровня, описанного в с 19 по 27 строку и с 39 по 47 строку. Другими словами, когда layer_specific_parameters_present_flag равен 1, то можно передавать параметр для выполнения процесса декодирования в ex12 в дополнение к ex11, как показано на фиг. 6.
В примере, показанном на фиг. 34 и 35, buffering_period_SEI в основном является таким же, как buffering_period_SEI, описанный выше со ссылкой на фиг. 32, за исключением описанных выше пунктов, и в других рядах, устанавливается параметр управления планированием использования буфера накопления посредством накопления нижнего уровня.
Таким образом, когда осуществляется управление планирования использования буфера накопления посредством buffering_period_SEI, то можно управлять набором уровня, а также одним уровнем. Кроме того, можно выполнить управление планирования и когда все уровни, включенные в состав набора уровня, декодируются с помощью одного устройства декодирования и когда соответствующие уровни декодируются отдельными устройствами декодирования.
Устройство масштабируемого кодирования
Устройство масштабируемого кодирования в случае buffering_period_SEI имеет в основном такую же конфигурацию, как и в случае HRD параметра. Таким образом, пример конфигурации устройства масштабируемого кодирования в случае buffering_period_SEI будет описано со ссылкой на фиг. 10.
Другими словами, как и в случае с HRD параметра, секция 101-1 кодирования изображения базового уровня получает информацию изображения (информации изображения базового уровня) базового уровня. Секция 101-1 кодирования изображения базового уровня кодирует информацию изображения базового уровня без ссылки на другие уровни, генерирует закодированные данные (кодированные данные базового уровня) базового уровня и выводит сгенерированные закодированные данные.
Как и в случае HRD параметра, секция 101-2 кодирования изображения усовершенствованного уровня получает информацию изображения (информация изображения усовершенствованного уровня) усовершенствованного уровня. Секция 101-2 кодирования изображения усовершенствованного уровня кодирует информацию изображения усовершенствованного уровня. В это время, секция 101-2 кодирования изображения усовершенствованного уровня выполняет межуровневое предсказание со ссылкой на информацию, относящуюся к процессу кодирования базового уровня, при необходимости.
Кроме того, информация управления буфером подается из секции 101-1 кодирования изображения базового уровня в секцию 101-2 кодирования изображения усовершенствованного уровня по мере необходимости. В отличие от случая параметра HRD, секция 101-2 кодирования изображения усовершенствованного уровня назначает соответствующий набор параметров и назначает параметр каждого набора уровня или параметр для последовательности в соответствии с назначенным набором параметров. Затем секция 101-2 кодирования изображения усовершенствованного уровня устанавливает назначенный параметр со ссылкой на информацию управления буфером, поставленную из секции 101-1 кодирования изображения базового уровня.
Дополнительно, в отличие от случая HRD параметра, секция 101-2 кодирования изображения усовершенствованного уровня устанавливает layer_specific_parameters_present_flag, и устанавливает параметр каждого уровня в соответствии со значением layer_specific_parameters_present_flag. Затем секция 101-2 кодирования изображения усовершенствованного уровня кодирует buffering_period_SEI и layer_buffering_period_SEI, включающий в себя набор параметров, и поставляет закодированную информацию в секцию 301 кодирования без потерь.
Секция 101-2 кодирования изображения усовершенствованного уровня генерирует закодированные данные (кодированные данные усовершенствованного уровня) усовершенствованного уровня посредством вышеописанного процесса кодирования, и выводит сгенерированные закодированные данные.
Как и в случае HRD параметра, секции 102 управления процессом кодирования управляет процессом кодирования секции 101 кодирования изображения уровня, например, с учетом отношении ссылки секций 101 кодирования изображения уровня.
Пример конфигурации секции кодирования изображения уровня
Фиг. 36 является блок-схемой, иллюстрирующей пример основной конфигурации секции 101-2 кодирования изображения усовершенствованного уровня в случае buffering_period_SEI.
Дополнительно, секция 101-1 кодирования изображения базового уровня в случае buffering_period_SEI имеет в основном ту же конфигурацию, что и секция 101-2 кодирования изображения усовершенствованного уровня на фиг. 36 за исключением того, что тип изображения, служащего в качестве цели, различен. Ради описания, в примере на фиг. 36, конфигурация секции 101-2 кодирования изображения усовершенствованного уровня будет описана в качестве примера.
Секция 101-2 кодирования изображения усовершенствованного уровня на фиг. 36 отличается от секции 101-2 кодирования изображения усовершенствованного уровня на фиг. 11 тем, что секция 116 кодирования без потерь заменена секцией 301 кодирования без потерь, секция 128 установки типа HRD не предусмотрена и добавлена секция 302 установки SEI периода буферизации.
Другими словами, секция 101-2 кодирования изображения усовершенствованного уровня на фиг. 36 включает в себя секцию 111 А/D преобразования, буфер 112 переупорядочивания экрана, операционную секцию 113, секцию 114 ортогонального преобразования, секцию 115 квантования, секцию 301 кодирования без потерь, буфер 117 накопления, секцию 118 обратного квантования и секцию 119 обратного ортогонального преобразования. Секция 101-2 кодирования изображения усовершенствованного уровня дополнительно включает в себя операционную секцию 120, контурный фильтр 121, память 122 кадров, секцию 123 выбора, секцию 124 внутрикадрового предсказания, секцию 125 предсказания/компенсации движения, секцию 126 выбора предсказанного изображения и секцию 127 управления скоростью обработки. Секция 101-2 кодирования изображения усовершенствованного уровня дополнительно включает в себя секцию 302 установки SEI периода буферизации.
Как и секция 116 кодирования без потерь на фиг. 11, секция 301 кодирования без потерь кодирует коэффициенты преобразования, квантованные в секции 115 квантования в соответствии с произвольной схемой кодирования. Так как данные коэффициента, квантованы под управлением секции 127 управления скоростью обработки, то величина кодирования становится целевым значением (или приближается к целевому значению), установленной секцией 127 управления скоростью обработки.
Как и секция 116 кодирования без потерь, секция 301 кодирования без потерь принимает информацию, указывающую режим внутрикадрового предсказания и т.п. из секции 124 внутрикадрового предсказания, и получает информацию, указывающую режим межкадрового предсказания, дифференциальную информацию вектора движения или тому подобное из секции 125 предсказания/компенсации движения.
Дополнительно, в отличие от секции 116 кодирования без потерь, секция 301 кодирования без потерь получает кодированную информацию (синтаксис) layer_buffering_period_SEI из секции 302 установки SEI периода буферизации в дополнение к buffering_period_SEI.
Дополнительно, как и секция 116 кодирования без потерь, секция 301 кодирования без потерь соответственно генерирует NAL блок усовершенствованного уровня, включающий в себя набор параметров последовательности (SPS), набор параметров изображения (PPS), и тому подобное. Как и секция 116 кодирования без потерь, секция 301 кодирования без потерь кодирует различные виды информации в соответствии с произвольной схемой кодирования и устанавливает (мультиплексирует) кодированные данные как часть кодированных данных (также называемый как "кодированный поток"). Секция 301 кодирования без потерь поставляет кодированные данные, полученные с помощью кодирования, в буфер 117 накопления.
Кроме того, в отличие от секции 116 кодирования без потерь, например, когда есть секция 101-3 кодирования изображений усовершенствованного уровня верхнего уровня, как показано пунктирной линией, и есть запрос от его секции 302 установки SEI периода буферизации, секция 301 кодирования без потерь поставляет информацию управления буфером 117 накопления в секцию 101-3 кодирования изображений усовершенствованного уровня верхнего уровня.
Буфер 117 накопления временно удерживает кодированные данные (кодированные данные усовершенствованного уровня), поставленные из секции 301 кодирования без потерь. Буфер 117 накопления выводит удержанные кодированные данные усовершенствованного уровня в устройство записи (носитель записи), тракт передачи или тому подобное (не показано) на последующем этапе в определенный момент времени. Другими словами, буфер 117 накопления служит в качестве секции передачи, которая передает также кодированные данные.
Секция 302 установки SEI периода буферизации назначает ассоциированный набор параметров и назначает параметр каждого набора уровня или параметр для последовательности в соответствии с назначенным набором параметров. Кроме того, секция 302 установки SEI периода буферизации устанавливает назначенный параметр со ссылкой на информацию управления буфером, поставленную из секции 301 кодирования без потерь (нижний уровень) секции 101-1 кодирования изображения базового уровня. Например, этот параметр является параметром накопления нижнего уровня. Кроме того, секция 302 установки SEI периода буферизации устанавливает layer_specific_parameters_present_flag и устанавливает параметр каждого уровня в соответствии с установленным значением layer_specific_parameters_present_flag.
Секция 302 установки SEI периода буферизации кодирует buffering_period_SEI и layer_buffering_period_SEI, включающий в себя набор параметров, как описано выше, и поставляет закодированную информацию в секцию 301 кодирования без потерь.
Пример конфигурации секции установки SEI периода буферизации
Фиг. 37 является блок-схемой, иллюстрирующей пример конфигурации секции установки SEI периода буферизации, показанной на фиг. 36.
В качестве примера на фиг. 37, секция 302 установки SEI периода буферизации выполнена с возможностью включать в себя ассоциированную секцию 311 установки набора параметров, буфер 312 набора уровня, секцию 313 установки SEI периода буферизации уровня и секцию 314 назначения передачи параметра уровня.
Секция 311 установки набора параметров выполняет назначение, относящееся к associsted_parameter_set_flag в соответствии с операцией пользователя. Другими словами, пользователь определяет, какой из VPS (флаг = 0) и SPS (флаг = 1) ассоциирован с buffering_period_SEI. Секция 311 установки набора параметров назначает значение associsted_parameter_set_flag и поставляет назначенное значение в секцию 301 кодирования без потерь и секцию 313 установки SEI периода буферизации уровня.
В случае associsted_parameter_set_flag = 0, то есть, когда buffering_period_SEI ассоциирован с VPS, информация, относящаяся к набору уровней, хранящаяся в VPS информации сжатия изображения усовершенствованного уровня, поставляется и накапливается в буфер 312 набора уровня через секцию 301 кодирования без потерь. Буфер 312 набора уровня накапливает информацию, относящуюся к набору уровня, и поставляет информацию, относящуюся к набору уровня, в секцию 313 установки SEI периода буферизации уровня в определенный момент времени.
Дополнительно, информация управления буфером на базовом уровне подается из секции 301 кодирования без потерь секции 101-1 кодирования изображения базового уровня в секцию 313 установки SEI периода буферизации уровня.
Секция 314 назначения передачи параметра уровня назначает layer_specific_parameters_present_flag в соответствии с операцией пользователя. Другими словами, пользователь назначает значение layer_specific_parameters_present_flag указывает, выполняется ли или нет установка параметров каждого уровня. Секция 314 назначения передачи параметра назначает значение layer_specific_parameters_present_flag, и поставляет назначенное значение в секцию 301 кодирования без потерь и секцию 313 установки SEI периода буферизации уровня.
Секция 313 установки SEI периода буферизации уровня выполняет процесс кодирования buffering_period_SEI и layer_buffering_period_SEI, и поставляет закодированную информацию в секцию 301 кодирования без потерь.
В частности, секция 313 установки SEI периода буферизации уровня устанавливает назначенный параметр в соответствии с associsted_parameter_set_flag, подаваемый из ассоциированной секции 311 установки набора параметров со ссылкой на информацию управления буфером, подаваемой из секции 301 кодирования без потерь (нижний уровень) секции 101-1 кодирования изображения базового уровня. Другими словами, когда значение associsted_parameter_set_flag равно 1 (VPS), секция 313 установки SEI периода буферизации уровня устанавливает параметр для каждого набора уровня на основании информации, относящейся к набору уровня, поставленной из буфера 312 набора уровня. Кроме того, когда значение associsted_parameter_set_flag равно 0 (SPS), то секция 313 установки SEI периода буферизации уровня устанавливает параметр для последовательности.
Кроме того, секция 313 установки SEI периода буферизации уровня устанавливает параметр каждого уровня в соответствии со значением layer_specific_parameters_present_flag, то есть, когда значение layer_specific_parameters_present_flag является 1. Дополнительно, секция 313 установки SEI периода буферизации уровня кодирует buffering_period_SEI и layer_buffering_period_SEI, включающий в себя установленный параметр, и поставляет закодированную информацию в секцию 301 кодирования без потерь.
Последовательность выполнения операций процесса кодирования
Далее будет описана последовательность выполнения операций процесса, выполняемого устройством 100 масштабируемого кодирования, в случае buffering_period_SEI. Последовательность выполнения операций процесса кодирования, в основном, является той же, что и последовательность выполнения операций процесса кодирования, описанной выше со ссылкой на фиг. 14, и описание опущено.
Последовательность выполнения операций процесса кодирования уровня
Далее будет приведено описание процесса кодирования уровня на этапе S102 на фиг. 14, со ссылкой на блок-схему алгоритма на фиг. 38. На этапах с S311 по S323, S326 и S327 на фиг. 38, в основном, выполняются те же самые процессы, как на этапах с S111 по S123, S126 и S127 на фиг. 15 и, таким образом, их описание опущено.
Другими словами, на этапе S324, секция 302 установки SEI периода буферизации выполняет процесс кодирования SEI периода буферизации. Процесс кодирования SEI периода буферизации будет описан ниже со ссылкой на фиг. 39, и посредством выполнения этого процесса устанавливаются соответствующие параметры, и информация buffering_period_SEI и layer_buffering_period_SEI, включающая в себя установленные параметры, кодируется и поставляется в секцию 301 кодирования без потерь.
На этапе S325 секция 301 кодирования без потерь кодирует квантованные коэффициентов в процессе на этапе S318. Другими словами, выполняется процесс кодирования без потерь, такой как кодирование с переменной длиной или арифметическое кодирование, данных, соответствующих дифференциальному изображению.
В это время, секция 301 кодирования без потерь кодирует информацию, относящуюся к режиму предсказания предсказанного изображения, выбранного в процессе на этапе S315, и добавляет кодированную информацию к закодированным данным, полученным посредством кодирования разностного изображения. Другими словами, секция 301 кодирования без потерь также кодирует, например, информацию в соответствии с информацией об оптимальном режиме внутрикадрового предсказания, поставляемой из секции 124 внутрикадрового предсказания, или информацией об оптимальном режиме межкадрового предсказания, поставленной из секции 125 предсказания/компенсации движения, и добавляет кодированную информацию к кодированным данным. Кроме того, секция 301 кодирования без потерь, также кодирует, например, кодированную информацию (синтаксис) buffering_period_SEI и layer_buffering_period_SEI, поставленную в процессе на этапе S324 в соответствии с определенной схемой кодирования, и добавляет кодированную информацию к закодированным данным.
Последовательность выполнения операций процесса установки SEI периода буферизации
Далее будет описан процесс кодирования SEI периода буферизации на этапе S324 на фиг. 38 со ссылкой на блок-схему алгоритма на фиг. 39.
Например, буфер 312 набора уровня накапливает информацию, относящуюся к набору уровня, и поставляет информацию, относящуюся к набору уровня в секцию 313 установки SEI периода буферизации уровня в определенный момент времени.
На этапе S331, ассоциированная секция 311 установки набора назначает ассоциированный набор параметров в соответствии с операцией пользователя. Другими словами, пользователь определяет, который VPS (флаг = 0) и SPS (флаг = 1) ассоциирован с buffering_period_SEI.
На этапе S332, ассоциированная секция 311 установки набора определяет, является ли ассоциированный набор параметров VPS. Когда определяется ассоциированный набор параметров как VPS на этапе S332, то процесс переходит к этапу S333.
На этапе S333, ассоциированная секция 311 установки набора назначает параметр каждого набора уровня. Другими словами, ассоциированная секция 311 установки набора определяет значение associsted_parameter_set_flag (флаг = 0), и поставляет назначенное значение в секцию 301 кодирования без потерь и секцию 313 установки SEI периода буферизации уровня.
В это время, информация, относящаяся к набору уровня, хранящимся в VPS информации сжатия изображения усовершенствованного уровня, подается и накапливается в буфере 312 набора уровня через секцию 301 кодирования без потерь. Затем, секция 313 установки SEI периода буферизации устанавливает параметр каждого набора уровня на основании информации, относящейся к набору уровня, поставленной из буфера 312 набора уровня, со ссылкой на информацию управления буфером, подаваемую из секции 301 кодирования без потерь (нижний уровень) секции 101-1 кодирования изображения базового уровня.
Между тем, когда ассоциированный набор параметров определяется как не соответствующий VPS на этапе S332, то процесс переходит к этапу S334.
На этапе S334, ассоциированная секция 311 установки набора определяет параметр последовательности. Другими словами, ассоциированная секция 311 установки набора определяет значение associsted_parameter_set_flag (флаг = 1) и поставляет назначенное значение в секцию 301 кодирования без потерь и секцию 313 установки SEI периода буферизации.
Секция 313 установки SEI периода буферизации устанавливает параметр последовательности со ссылкой на информацию управления буфером, подаваемую из секции 301 кодирования без потерь (нижний уровень) секции 101-1 кодирования изображения базового уровня.
На этапе S335, секция 314 назначения передачи параметра уровня устанавливает layer_specific_parameters_present_flag в соответствии с операцией пользователя. Другими словами, пользователь назначает значение layer_specific_parameters_present_flag указывающий, выполнена ли установка параметра каждого уровня.
Секция 314 назначения передачи параметра уровня поставляет заданное значение layer_specific_parameters_present_flag в секцию 301 кодирования без потерь и секцию 313 установки SEI периода буферизации.
На этапе S336, секция 313 установки SEI периода буферизации определяет, равно ли значение layer_specific_parameters_present_flag 1. Когда значение layer_specific_parameters_present_flag определяется как равное 1 на этапе S336, то процесс переходит к этапу S337.
На этапе S337, секция 313 установки SEI периода буферизации устанавливает параметр каждого уровня.
Дополнительно, когда определяется, что значение layer_specific_parameters_present_flag равно 0 на этапе S336, то процесс на этапе S337 пропускают.
На этапе S338, секция 313 установки SEI периода буферизации кодирует buffering_period_SEI и layer_buffering_period_SEI, включающее в себя набор параметров, как описано выше, и поставляет закодированную информацию в секцию 301 кодирования без потерь.
Так как buffering_period_SEI ассоциирован с VPS, а также с SPS, как описано выше, когда осуществляется управление планированием использования буфера накопления посредством buffering_period_SEI, можно управлять набором уровней, а также одним уровнем.
Дополнительно, поскольку передается параметр каждого уровня, можно выполнить управление планированием, когда все уровни, включенные в состав набора уровней, декодируются с помощью одного устройства декодирования, и когда соответствующие уровни декодируются отдельными устройствами декодирования.
Устройство масштабируемого декодирования
Конфигурация устройства масштабируемого декодирования, в случае buffering_period_SEI, является в основном такой же, как и в случае с параметром HRD. Таким образом, пример конфигурации устройства масштабируемого декодирования в случае buffering_period_SEI будет описан со ссылкой на фиг. 20.
Другими словами, как и в случае с HRD параметром, секция 201-1 декодирования изображения базового уровня является секцией декодирования изображения, соответствующей секции 101-1 кодирования изображения базового уровня на фиг. 10, и получает, например, закодированные данные базового уровня, полученные путем кодирования данных изображения базового уровня посредством секции 101-1 кодирования изображения базового уровня. Секция 201-1 декодирования изображения базового уровня декодирует закодированные данные базового уровня, не обращаясь к другим уровням, реконструирует информацию изображения базового уровня, и выводит информацию изображения базового уровня.
Секция 201-2 декодирования изображения усовершенствованного уровня является секцией декодирования изображения, соответствующей секции 101-2 кодирования изображения усовершенствованного уровня, и получает, например, закодированные данные усовершенствованного уровня, полученные путем кодирования данных изображения усовершенствованного уровня посредством секции 101-2 кодирования изображения усовершенствованного уровня, как в случае HRD параметра. Секция 201-2 декодирования изображения усовершенствованного уровня декодирует закодированные данные усовершенствованного уровня. В это время, секция 201-2 декодирования изображения усовершенствованного уровня выполняет межуровневое предсказание со ссылкой на информацию, относящуюся к процессу декодирования базового уровня, при необходимости.
Кроме того, в отличие от случая HRD параметра, buffering_period_SEI на фиг. 33 и layer_buffering_period_SEI на фиг. 34 и фиг. 35 добавляются к закодированным данным (битовый поток) и передаются. В отличие от случая HRD параметра, секция 201-2 декодирования изображения усовершенствованного уровня получает информацию, относящуюся к ассоциированному набору параметров из buffering_period_SEI и декодирует параметр каждого набора уровня или параметр для последовательности в соответствии с набором параметров, указанного полученной информацией.
Кроме того, в отличие от случая HRD параметра, секция 201-2 декодирования изображения усовершенствованного уровня принимает layer_specific_parameters_present_flag из layer_buffering_period_SEI и декодирует параметр каждого уровня в соответствии со значением layer_specific_parameters_present_flag. Затем секция 201-2 декодирования изображения усовершенствованного уровня выполняет мониторинг буфера накопления на основании декодированных параметров.
Дополнительно, в случае параметра, который не является параметром каждого уровня, то есть, параметр накопленной из нижнего уровня, секция 201-2 декодирования изображения усовершенствованного уровня выполняет мониторинг буфера накопления со ссылкой на информацию управления буфера, поступающую из секции 351 декодирования без потерь базового уровня секции 201-1 декодирования изображения базового уровня.
Посредством выполнения процесса декодирования, секция 201-2 декодирования изображения усовершенствованного уровня декодирует кодированные данные усовершенствованного уровня, восстанавливает данные изображения усовершенствованного уровня и выводит информацию изображения усовершенствованного уровня.
Как и в случае HRD параметра, секции 202 управления процессом декодирования управляет процессом декодирования секций 201 декодирования изображения уровня, например, с учетом отношения ссылки секций 201 декодирования изображения уровня.
Пример конфигурации секции декодирования изображения уровня
Фиг. 40 является блок-схемой, иллюстрирующей пример основной конфигурации секции 201-2 декодирования изображения усовершенствованного уровня в случае buffering_period_SEI.
Секция 201-1 декодирования изображения базового уровня в случае buffering_period_SEI имеет в основном ту же конфигурацию, что и секция 201-2 декодирования изображения усовершенствованного уровня на фиг. 40 за исключением того, что тип изображения, служащего в качестве целевого, различны. В описании, в примере на фиг. 40, конфигурация секции 201-2 декодирования изображения усовершенствованного уровня будет описана в качестве примера.
Секция 201-2 декодирования изображения усовершенствованного уровня на фиг. 40 отличается от секции 201-2 декодирования изображения усовершенствованного уровня на фиг. 21 тем, что секция 212 декодирования без потерь заменяется секцией 351 декодирования без потерь, секция 224 декодирования типа HRD не предусмотрена и добавляется секция 352 декодирования SEI периода буферизации.
Иными словами, секция 201-2 декодирования изображения усовершенствованного уровня включает в себя буфер 211 накопления, секцию 351 декодирования без потерь, секцию 213 обратного квантования, секцию 214 обратного ортогонального преобразования, операционную секцию 215, контурный фильтр 216, буфер 217 переупорядочения экрана и секцию 218 D/А преобразования. Секция 201-2 декодирования изображения усовершенствованного уровня дополнительно включает в себя память 219 кадров, секцию 220 выбора, секцию 221 внутрикадрового предсказания, секцию 222 предсказания/компенсации движения и секцию 223 выбора. Секция 201-2 декодирования изображения усовершенствованного уровня дополнительно включает в себя секцию 352 декодирования SEI периода буферизации.
Буфер 211 накопления представляет собой приемную секцию, которая принимает переданные кодированные данные усовершенствованного уровня. Информация, необходимая для декодирования, например информации о режиме предсказания, добавляется к кодированным данным усовершенствованного уровня. buffering_period_SEI на фиг. 33 и layer_buffering_period_SEI на фиг. 34 и 35 добавляются кодированным данным усовершенствованного уровня. Буфер 211 накопления принимает и накапливает передаваемые кодируемые данные усовершенствованного уровня, и подает закодированные данные в секцию 212 декодирования без потерь в определенный момент времени.
Кроме того, буфер 211 накопления принимает layer_buffering_period_SEI декодированную информацию, поставленную из секции 352 декодирования SEI периода буферизации, и выполняет управление буфером на основании layer_buffering_period_SEI декодированной информации.
Аналогично секции 212 декодирования без потерь на фиг. 21, секция 351 декодирования без потерь декодирует информацию, которая была закодирована с помощью секции 301 кодирования без потерь, и поставленная из буфера 211 накопления в соответствии со схемой, соответствующей схеме кодирования секции 301 кодирования без потерь 301. Секция 351 декодирования без потерь поставляет данные квантованного коэффициента дифференциального изображения, полученного декодированием, в секцию 213 обратного квантования.
Дополнительно, аналогично секции 212 декодирования без потерь, секция 351 декодирования без потерь соответственно извлекает и получает NAL блок, включающий в себя набор параметров видео (VPS), набор параметров последовательности (SPS), набор параметров изображения (PPS) и т.п., которые включены в состав кодированных данных усовершенствованного уровня. Аналогично секции 212 декодирования без потерь, секция 351 декодирование без потерь извлекает информацию, относящуюся к оптимальному режиму предсказания из информации, определяет, который из режима внутрикадрового предсказания и режима межкадрового предсказания, который был выбран в качестве оптимального режима предсказания на основании информации, и передает информацию, относящуюся к оптимальному режиму предсказания на одну из секции 221 внутрикадрового предсказания или секцию 222 предсказания/компенсации движения, что соответствует режиму, определенному как выбранному.
Другими словами, например, в секции 201-2 декодирования изображения усовершенствованного уровня, когда режим внутрикадрового предсказания выбран в качестве оптимального режима предсказания, информация, относящаяся к оптимальному режиму предсказания, поставляется в секцию 221 внутрикадрового предсказания. Кроме того, например, в секции 201-2 декодирования изображения усовершенствованного уровня, когда режим межкадрового предсказания выбран в качестве оптимального режима предсказания, информация, относящаяся к оптимальному режиму предсказания, поставляется в секцию 222 предсказания/компенсации движения.
Кроме того, аналогично секции 212 декодирования без потерь, секция 351 декодирование без потерь извлекает, например, информацию, необходимую для обратного квантования, такую как матрицы квантования или параметр квантования, из NAL блока или тому подобное, и поставляет излеченную информацию в секцию 213 обратного квантования. Кроме того, в отличие от секции 212 декодирования без потерь, секция 351 декодирования без потерь анализирует и отделяет, например, buffering_period_SEI на фиг. 33 и layer_buffering_period_SEI на фиг. 34 и фиг. 35, и поставляет buffering_period_SEI на фиг. 33 и layer_buffering_period_SEI на фиг. 34 и 35 в секцию 352 декодирования SEI периода буферизации.
Секция 352 декодирования SEI периода буферизации декодирует параметр каждого набора уровней или параметр для последовательности в соответствии с associsted_parameter_set_flag buffering_period_SEI, поставленного из секции 351 декодирования без потерь. Другими словами, когда значение associsted_parameter_set_flag равно 0 (VPS), секция 352 декодирования SEI периода буферизации принимает параметр каждого набора уровней на основании информации, ассоциированной с набором уровней, подаваемого из буфера 312 набора уровня. Затем, секция 352 декодирования SEI периода буферизации декодирует принятый параметр каждого набора уровня со ссылкой на информацию управления буфером базового уровня, подаваемую из секции 351 декодирования без потерь (нижний уровень) секции 201-1 декодирования изображения базового уровня.
Дополнительно, когда величина associsted_parameter_set_flag равна 1 (SPS), секция 313 установки SEI периода буферизации уровня принимает параметр для последовательности. Затем, секция 352 декодирования SEI периода буферизации декодирует принятый параметр для последовательности со ссылкой на информацию управления буфером базового уровня секции 351 декодирования без потерь (нижний уровень) секции 201-1 декодирования изображения базового уровня.
Кроме того, секция 352 декодирования SEI периода буферизации принимает layer_specific_parameters_present_flag из layer_buffering_period_SEI, подаваемого из секции 351 декодирования без потерь и принимает и декодирует параметр каждого уровня в соответствии со значением layer_specific_parameters_present_flag, то есть, когда значение layer_specific_parameters_present_flag равно 1. Затем, секция 352 декодирования SEI периода буферизации поставляет layer_buffering_period_SEI декодированную информацию, декодированную в соответствии с associsted_parameter_set_flag и layer_specific_parameters_present_flag, в буфер 211 накопления.
Кроме того, например, когда есть секция 201-3 декодирования изображения усовершенствованного уровня верхнего уровня, как показано пунктирной линией, и есть запрос от своей секции 352 декодирования SEI периода буферизации, секция 351 декодирования без потерь поставляет информацию управления буфера 211 накопления в секцию 201-3 декодирования изображения усовершенствованного уровня верхнего уровня.
Пример конфигурации секции декодирования SEI периода буферизации
Фиг. 41 является блок-схемой, иллюстрирующей пример конфигурации секции декодирования SEI периода буферизации, показанной на фиг. 40.
В качестве примера на фиг. 41, секция 352 декодирования SEI периода буферизации выполнена с возможностью включать в себя секцию 361 декодирования ассоциированного набора параметров, буфер 362 набора уровней, секцию 363 декодирования SEI периода буферизации уровня и секцию 364 приема передачи параметра уровня.
Секция 351 декодирования без потерь анализирует и отделяет buffering_period_SEI и layer_buffering_period_SEI и поставляет buffering_period_SEI закодированную информацию и associated_parameter_set_flag в ней, в секцию 361 декодирования ассоциированного набора параметров. Кроме того, секция 351 декодирование без потерь поставляет layer_buffering_period_SEI закодированную информацию в секцию 363 декодирования SEI периода буферизации уровня и поставляет layer_specific_parameters_present_flag ней в секцию 364 приема передачи параметра уровня.
Секция 361 декодирования ассоциированного набора параметров принимает associsted_parameter_set_flag поставленный из секции 351 декодирования без потерь, и анализирует кодированные данные buffering_period_SEI согласно их значению. Другими словами, секция 361 декодирования ассоциированного набора параметров получает необходимую информацию из кодированной информации buffering_period_SEI в соответствии со значением associsted_parameter_set_flag, и поставляет полученную информацию в секцию 363 декодирования SEI периода буферизации уровня.
В случае associsted_parameter_set_flag = 0, то есть, когда buffering_period_SEI ассоциирован с VPS, секция 351 декодирования без потерь поставляет информацию, относящуюся к набору уровней, хранящейся в VPS информации сжатия изображения усовершенствованного уровня, в буфера 362 набора уровней. Буфер 362 набора уровней накапливает информацию, относящуюся к набору уровней, и поставляет информацию, относящуюся к набору уровней, в секцию 363 декодирования SEI периода буферизации уровня в определенный момент времени.
Секция 363 декодирования SEI периода буферизации уровня анализирует кодированные данные layer_buffering_period_SEI соответствии с associsted_parameter_set_flag подаваемой из секции 361 декодирования ассоциированного набора параметров в отношении информации управления буфером базового уровня секции 351 декодирования без потерь (нижний уровень) секции 201-1 декодирования изображения базового уровня. Затем, секция 363 декодирования SEI периода буферизации уровня декодирует параметр каждого набора уровней или параметр для последовательности с использованием анализируемой закодированной информации.
Другими словами, когда значение associsted_parameter_set_flag равно 1 (VPS), секция 363 декодирования SEI периода буферизации уровня декодирует параметр каждого набора уровней на основании информации, ассоциированной с набором уровней, подаваемой из буфера 362 набора уровней. Кроме того, когда значение associsted_parameter_set_flag равно 0 (SPS), секция 363 декодирования SEI периода буферизации уровня декодирует параметр для последовательности.
Дополнительно, секция 363 декодирования SEI периода буферизации уровня принимает layer_specific_parameters_present_flag, поставленный из секции 364 приема передачи параметра уровня и анализирует кодированные данные layer_buffering_period_SEI согласно их значению. Когда значение layer_specific_parameters_present_flag равно 1, то секция 363 декодирования SEI периода буферизации уровня декодирует параметр каждого уровня.
Затем, секция 363 декодирования SEI периода буферизации уровня поставляет layer_buffering_period_SEI декодированную информацию соответствии с associsted_parameter_set_flag и layer_specific_parameters_present_flag в буфер 211 накопления.
Секция 364 приема передачи параметра уровня анализирует значение layer_specific_parameters_present_flag и поставляет анализируемое значение layer_specific_parameters_present_flag в секцию 363 декодирования SEI периода буферизации уровня.
<Последовательность выполнения операций процесса декодирования>
Далее будет приведено описание последовательности выполнения операций процесса, выполняемого устройством 200 масштабируемого декодирования в случае buffering_period_SEI. Последовательность выполнения операций процесса декодирования в основном такая же, как и последовательность выполнения операций процесса декодирования, описанной выше со ссылкой на фиг. 23 и, таким образом, описание таковой опускается.
Последовательность выполнения операций процесса декодирования уровня
Далее приведено описание процесса декодирования уровня на этапе S202 на фиг. 23 со ссылкой на блок-схему алгоритма на фиг. 42. На этапах S351 и с S354 по S361 на фиг. 42, в основном, являются теми же процессами, что и на этапах S211 и с S214 по S221 на фиг. 24 и, таким образом, их описание опускается.
Другими словами, на этапе S352, секция 351 декодирования без потерь декодирует поток битов кодированной информации (разностное изображение) усовершенствованного уровня, подаваемого из буфера 211 накопления. Другими словами, I-кадр, Р-кадр, и В-кадр, закодированные секцией 301 кодирования без потерь, декодируются. В это время, различные виды информации, кроме информации разностного изображения, включенные в состав битового потока, например, информация заголовка, также декодируется. Например, секция 351 декодирования без потерь анализирует и отделяет buffering_period_SEI и layer_buffering_period_SEI и подает buffering_period_SEI и layer_buffering_period_SEI в секцию 352 декодирования SEI периода буферизации.
На этапе S353, секция 352 декодирования SEI периода буферизации выполняет процесс декодирования SEI периода буферизации. Процесс декодирования периода буферизации SEI будет описан ниже со ссылкой на фиг. 43.
layer_buffering_period_SEI декодируется на этапе S353, и layer_buffering_period_SEI расшифрованной информации поступает в буфер 211 накопления. Затем, буфер 211 накопления выполняет управление буфером на основе layer_buffering_period_SEI расшифрованной информации.
Последовательность выполнения операций процесса декодирования период буферизации SEI
Далее приводится описание процесса декодирования периода буферизации SEI на этапе S353 на фиг. 42 со ссылкой на блок-схему алгоритма, показанную на фиг. 43.
Секция 351 декодирования без потерь анализирует и отделяет buffering_period_SEI и layer_buffering_period_SEI и подает buffering_period_SEI кодированную информацию и associated_parameter_set_flag в ней в секцию 361 декодирования ассоциированного набора параметров. Кроме того, секция 351 декодирования без потерь подает кодированные данные layer_buffering_period_SEI в секцию 363 декодирования SEI периода буферизации уровня и поставляет layer_specific_parameters_present_flag в секцию 364 приема передачи параметра уровня.
На этапе S371, секция 361 декодирования ассоциированного набора параметров принимает associsted_parameter_set_flag, выступающий в качестве информации, относящейся к соответствующему набору параметров, подаваемого из секции 351 декодирования без потерь. На этапе S372, секция 361 декодирования ассоциированного набора параметров определяет, является ли ассоциированный набор параметров VPS или нет, со ссылкой на значение associsted_parameter_set_flag, подаваемого из секции 351 декодирования без потерь.
Когда значение associsted_parameter_set_flag определяется как 0 на этапе S372, т.е., когда соответствующий набор параметров определяется как VPS, то процесс переходит к этапу S373. В это время, секция 361 декодирования ассоциированного набора параметров получает необходимую информацию (информацию, относящуюся к параметру каждого набора уровней) из кодированной информации buffering_period_SEI, и поставляет полученную информацию в секцию 363 декодирования SEI периода буферизации уровня.
В ответ на это, секция 363 декодирования SEI периода буферизации уровня анализирует кодированные данные layer_buffering_period_SEI в соответствии с associsted_parameter_set_flag = 1, подаваемого из секции 361 декодирования ассоциированного набора параметров со ссылкой на необходимую информацию, полученную из buffering_period_SEI кодированной информации, и информацию управления буфером базового уровня секции 351 декодирования без потерь (нижний уровень) секции 201-1 декодирования изображения базового уровня. Затем, на этапе S373, секция 363 декодирования SEI периода буферизации уровня декодирует параметр каждого уровня, установленного с использованием анализируемой кодированной информации. Секция 363 декодирования SEI периода буферизации уровня поставляет layer_buffering_period_SEI расшифрованной информации, полученной путем декодирования параметра каждого набора уровней, в буфер 211 накопления.
Дополнительно, когда величина associsted_parameter_set_flag определяется как 1 на этапе S372, то есть, когда набор ассоциированных параметров определяется как SPS, отличный от VPS, то процесс переходит к этапу S374. В это время, секция 361 декодирования ассоциированного набора параметров получает необходимую информацию (информацию, относящуюся к параметру для последовательности) из кодированной информации buffering_period_SEI, и поставляет полученную информацию в секцию 363 декодирования SEI периода буферизации уровня.
В ответ на это, секция 363 декодирования SEI периода буферизации уровня анализирует кодированные данные layer_buffering_period_SEI в соответствии с associsted_parameter_set_flag = 0, подаваемого из секции 361 декодирования ассоциированного набора параметров со ссылкой на необходимую информацию, полученную от buffering_period_SEI кодированной информации, и информации управления буфером базового уровня секции 351 декодирования без потерь (нижний уровень) секции 201-1 декодирования изображения базового уровня. Затем, на этапе S374, секция 363 декодирования SEI периода буферизации уровня декодирует параметр для последовательности с использованием анализируемой закодированной информации. Секция 363 декодирования SEI периода буферизации уровня поставляет layer_buffering_period_SEI декодированную информацию, полученную путем декодирования параметра для последовательности, в буфер 211 накопления.
На этапе S375, секция 364 приема передачи параметра уровня принимает layer_specific_parameters_present_flag, поставленный из секции 351 декодирования без потерь. Секция 364 приема передачи параметра уровня анализирует значение layer_specific_parameters_present_flag и подает анализируемое значение layer_specific_parameters_present_flag в секцию 363 декодирования SEI периода буферизации уровня.
На этапе S376, секция 363 декодирования SEI периода буферизации уровня определяет, является ли значение layer_specific_parameters_present_flag равной 1. Когда значение layer_specific_parameters_present_flag определяется как равной 1 на этапе S376, то процесс переходит к этапу S377.
На этапе S377, секция 363 декодирования SEI периода буферизации уровня анализирует закодированную информацию layer_buffering_period_SEI и декодирует параметр каждого уровня. Секция 363 декодирования SEI периода буферизации уровня поставляет layer_buffering_period_SEI расшифрованной информации, полученную путем декодирования параметра каждого уровня, в буфер 211 накопления.
Кроме того, когда величина layer_specific_parameters_present_flag определяется равной 0 на этапе S376, то этап S377 пропускается.
Так как buffering_period_SEI ассоциирован с VPS, а также с SPS, как описано выше, когда осуществляется управление планирования использования буфера накопления путем buffering_period_SEI, можно управлять набором уровней, а также и одним уровнем.
Дополнительно, поскольку передается параметр каждого уровня, то можно выполнить управление планированием в случаях, когда декодируются все уровни, включенные в состав набора уровней, с помощью одного устройства декодирования, и когда соответствующие уровни декодируются отдельными устройствами декодирования.
5. Пятый вариант осуществления
Описание AVC флага
Между тем, был предложен способ определения параметра для случая ex12 для выполнения процесса декодирования соответствующих уровней, включающие в себя уровень на который ссылаются, посредством отдельных устройств декодирования, в дополнение к случаю ex11 выполнения процесса декодирования посредством одного устройства декодирования, в качестве параметра для управления буфером hdr_parameters () в информации сжатия изображения или информации сжатия суб изображения, как описано выше со ссылкой на фиг. 6.
Однако, когда базовый уровень (BL), выступающей в качестве нижнего уровня, кодируется посредством AVC, и усовершенствованный уровень (EL), служащий в качестве верхнего уровня, кодируется с помощью HEVC, то сложно реализовать пример обработки BL и EL с помощью одного устройства декодирования.
В связи с этим, в Vps_extention () передается avc_base_layer_flag выступающей в качестве флага, указывающего, что кодируется базовый уровень посредством AVC. Затем, когда avc_base_layer_flag = 1, то передача параметра в примере ex11 запрещается. Это реализуется с помощью семантического ограничения. Далее, avc_base_layer_flag также упоминается как "AVC флаг".
Процесс кодирования HRD параметра в случае AVC флага
Далее будет описан еще один пример процесса кодирования HRD параметра на этапе S124, показанного на фиг. 15 со ссылкой на блок-схему алгоритма на фиг. 44. На этапах с S413 по S418 на фиг. 44, в основном, выполняются те же самые процессы, как на этапах с S132 по S137 на фиг. 16, таким образом, повторное описание опускается.
Например, секция 116 кодирования без потерь на фиг. 12 поставляет avc_base_layer_flag из Vps_extention в секцию 143 установки типа HRD параметра.
На этапе S411, секция 143 установки типа HRD параметра проверяет значение avc_base_layer_flag (AVC флаг), поставляемое из секции 116 кодирования без потерь.
На этапе S412, секция 143 установки типа HRD параметра устанавливает тип HRD параметра. В это время, когда значение avc_base_layer_flag (AVC флага) проверяется на этапе S411 равно 1, это указывает, что базовый уровень кодируется посредством AVC, и процесс выполнения процесса декодирования соответствующего и нижнего уровня запрещается. Таким образом, секция 143 установки типа HRD параметра устанавливает тип HRD параметра на 1, служащий в качестве значения для выполнения процесса декодирования только соответствующего уровня.
Когда значение avc_base_layer_flag (AVC флага), проверенное на этапе S411, равно 0, аналогично этапу S131 на фиг. 16, секция 143 установки типа HRD параметра устанавливает тип HRD параметра в соответствии с командой пользователя.
Секция 143 установки типа HRD параметра поставляет флаг, указывающий тип набора HRD параметра, в секцию 116 кодирования без потерь и секцию 141 вычисления HRD параметра уровня.
Как описано выше, в Vps_extention (), когда avc_base_layer_flag = 1, указывает, что базовый уровень кодируется посредством AVC, тип HRD параметра установлен на 1, выступающей в качестве значения для выполнения процесса декодирования только соответствующего уровня. Таким образом, когда базовый уровень кодируется AVC, так как процесс выполнения процесса декодирования соответствующего уровня и нижнего уровня запрещен на стороне декодирования, сторона декодирования не способна принять непредусмотренный битовый поток.
Вышеупомянутые семантики могут быть применены даже к случаю buffering_period_SEI.
Процесс кодирования SEI периода буферизации в случае AVC флага
Далее будет описан еще один пример процесса кодирования SEI периода буферизации этапе S324 на фиг. 38 со ссылкой на блок-схему алгоритма на фиг. 45. На этапах с S431 по S434 и этапах с S437 по S439 на фиг. 45, в основном, выполняются те же самые процессы, как на этапах с S331 по S334 и с S336 по S338 на фиг. 39 и, таким образом, повторное описание опущено.
Например, секция 301 кодирования без потерь на фиг. 37 поставляет avc_base_layer_flag из Vps_extention в секцию 314 назначения передачи параметра уровня.
На этапе S435, секция 314 назначения передачи параметра уровня проверяет значение avc_base_layer_flag (AVC флаг), поставленное из секции 301 кодирования без потерь.
На этапе S436, секция 314 назначения передачи параметра устанавливает layer_specific_parameters_present_flag. В это время, когда значение avc_base_layer_flag (AVC флага), проверяемое на этапе S435, равно 1, то это указывает, что базовый уровень кодируется AVC и процесс выполнения процесса декодирования соответствующего уровня и нижнего уровня запрещается. Таким образом, секция 314 назначения передачи параметра уровня устанавливает layer_specific_parameters_present_flag на 1 и служит в качестве значения, указывающее на то, что установлен параметр каждого уровня. Кроме того, когда layer_specific_parameters_present_flag = 1, то параметр, накопленный из нижнего уровня, не может быть установлен.
Когда значение avc_base_layer_flag (AVC флаг), проверенное на этапе S435, равно 0, аналогично этапу S335 на фиг. 39, то секция 314 назначения передачи параметра уровня устанавливает layer_specific_parameters_present_flag в соответствии с операцией пользователя.
Секция 314 назначения передачи параметра уровня поставляет заданное значение layer_specific_parameters_present_flag в секцию 301 кодирования без потерь и секцию 313 установки SEI периода буферизации уровня. настройки Кроме того, информация управления буфером в базовом уровне подается из секции 301 кодирования без потерь секции 101-1 кодирования изображения базового уровня в и секцию 313 установки SEI периода буферизации уровня.
Как описано выше, в Vps_extention (), когда avc_base_layer_flag = 1, layer_specific_parameters_present_flag установлен на 1, выступающей в качестве значения, указывающего, что установлен параметр каждого уровня. Таким образом, когда базовый уровень кодируется AVC, так как процесс выполнения процесса декодирования соответствующего уровня и нижнего уровня запрещен на стороне декодирования, то сторона декодирования защищена от приема неустановленного битового потока.
Ранее был описан пример, в котором данные изображения, расположенные в иерархическом порядке на множестве уровнях, которые были подвержены масштабируемому кодированию видео, число уровней является произвольным. Например, некоторые изображения могут быть расположены в иерархическом порядке. Кроме того, хотя был описан пример, в котором усовершенствованный уровень обрабатывается со ссылкой на базовый уровень во время кодирования и декодирования, настоящее изобретение не ограничивается этим примером, и усовершенствованный уровень может быть обработан со ссылкой на любой другой обработанный усовершенствованный уровень.
Кроме того, ракурс при кодировании и декодировании многоракурсного изображения также используется в качестве уровня, описанного выше. Другими словами, данная технология может быть применена для кодирования многоракурсного изображения и декодирования многоракурсного изображения. Фиг. 46 иллюстрирует пример схемы кодирования многоракурсного изображения.
6. Шестой вариант осуществления
Применение кодирования многоракурсного изображения и декодирования многоракурсного изображения
Вышеописанная последовательность операций процессов может быть применена к процессу кодирования и декодирования многоракурсного изображения. Фиг. 46 иллюстрирует пример схемы кодирования многоракурсного изображения.
Как показано на фиг. 46, многоракурсное изображение включает в себя изображения множества ракурсов. Множество ракурсов многоракурсного изображения включает в себя основной ракурс, в котором кодирование и декодирование выполняется с использованием изображения собственного ракурса, не используя изображение другого ракурса, и дополнительный ракурс, в котором кодирование и декодирование выполняется с помощью изображения иного ракурса. В качестве дополнительного ракурса может быть использовано изображение основного ракурса и изображение другого дополнительного ракурса может быть использовано.
Когда многоракурсное изображение на фиг. 46 кодируется или декодируется, изображение каждого ракурса кодируется или декодируется, но способы согласно первому и второму вариантам осуществления могут быть применены к кодированию или декодированию каждого ракурса. В результате, можно выполнять процесс декодирования в надлежащий момент времени.
Дополнительно, флаги или параметры, используемые в способах согласно первому и второму вариантам осуществления, могут быть совместно использованы в процессах кодирования и декодирования каждого ракурса. В результате, можно подавить передачу избыточной информации и сократить количество информации, подлежащий передаче (величина кодирования) (то есть, можно не допустить снижение эффективности кодирования).
Более конкретно, например, флаг типа HRD параметра, HRD параметр или buffering_period_SEI и layer_buffering_period_SEI могут быть совместно использованы в процессах кодирования и декодирования каждого ракурса.
Конечно, любая другая необходимая информация также может быть совместно использована при выполнении процессов кодирования и декодирования каждого ракурса.
Устройство кодирования многоракурсного изображения
Фиг. 47 представляет собой схему, иллюстрирующую устройство кодирования многоракурсного изображения, которое выполняет вышеописанный процесс кодирования многоракурсного изображения. Как показано на фиг. 47, устройство 600 кодирования многоракурсного изображения имеет секцию 601 кодирования, секцию 602 кодирования и секцию 603 мультиплексирования.
Секция 601 кодирования кодирует изображение основного ракурса и генерирует кодированный поток изображения основного ракурса. Секция 602 кодирования кодирует изображение дополнительного ракурса и генерирует кодированный поток изображения дополнительного ракурса. Секция 603 мультиплексирования мультиплексирует кодированный поток изображения основного ракурса, сгенерированного секцией 601 кодирования, и кодированный поток изображения дополнительного ракурса, генерируемого секцией 602 кодирования, и генерирует кодированный поток многоракурсного изображения.
Устройство 100 масштабируемого кодирования (фиг. 10) может быть применено к секции 601 кодирования и секции 602 кодирования устройства 600 кодирования многоракурсного изображения. Другими словами, можно установить флаг типа HRD параметра или HRD параметр для каждого ракурса при кодировании каждого ракурса, и можно выполнять процесс декодирования в надлежащий момент времени. Кроме того, поскольку секция 601 кодирования и секция 602 кодирования может использовать тот же самый флаг типа HRD параметра или HRD параметр (то есть, могут совместно использовать флаг или параметр), можно не допустить снижение эффективности кодирования, и можно выполнить процесс декодирования в надлежащий момент времени. Более того, так как то же самое применяется к buffering_period_SEI и layer_buffering_period_SEI, аналогично можно подавить снижение эффективности кодирования и можно выполнять процесс декодирования в надлежащий момент времени.
Пример конфигурации устройства декодирования многоракурсного изображения
Фиг. 48 показывает схему, иллюстрирующую устройство декодирования многоракурсного изображения для выполнения вышеописанного процесса декодирования многоракурсного изображения. Как показано на фиг. 39, устройство 610 декодирования многоракурсного изображения имеет секцию 611 обратного мультиплексирования, секцию 612 декодирования и секцию 613 декодирования.
Секция 611 обратного мультиплексирования выполняет обратное мультиплексирование кодированного потока многоракурсного изображения, в котором кодированный поток изображения основного ракурса и кодированный поток изображения дополнительного ракурса мультиплексированы, и извлекает кодированный поток изображения основного ракурса и кодированный поток изображения дополнительного ракурса. Секция 612 декодирования декодирует кодированный поток изображения основного ракурса, извлеченный секцией 611 обратного мультиплексирования, и получает изображение основного ракурса. Секция 613 декодирования декодирует кодированный поток изображения дополнительного ракурса, извлеченный секцией 611 обратного мультиплексирования и получает изображение дополнительного ракурса.
Устройство 200 масштабируемого декодирования (фиг. 20) может быть применено к секции 612 декодирования и секции 613 декодирования устройства 610 декодирования многоракурсного изображения. Другими словами, можно установить флаг HRD типа параметра или HRD параметр для каждого ракурса при кодировании каждого ракурса, и можно выполнять процесс декодирования в надлежащий момент времени. Кроме того, поскольку секция 612 декодирования и секция 613 декодирования могут использовать тот же флаг типа HRD параметра или же HRD параметр (то есть, могут совместно использовать флаг или параметр), то можно подавить снижение эффективности кодирования, и можно выполнить процесс декодирования в должный момент времени. Кроме того, так как то же самое относится к buffering_period_SEI и layer_buffering_period_SEI, то аналогично можно подавить снижение эффективности кодирования, и можно выполнять процесс декодирования в надлежащий момент времени.
Как описано выше, настоящее изобретение может быть применено ко всем устройствам кодирования изображения и всем устройствам декодирования изображения, основываясь на масштабируемом кодировании и декодировании.
Например, настоящее изобретение может быть применено к устройству кодирования изображения и к устройству декодирования изображения, используемые когда информация изображения (битовый поток), сжатая с помощью ортогонального преобразования, такие как дискретное косинусное преобразование и компенсация движения, как в MPEG и Н.26х, принята с помощью сетевой среды, такой как спутниковое вещание, кабельное телевидение, интернет или мобильный телефон. Кроме того, настоящее изобретение может быть применено к устройству кодирования изображения и устройству декодирования изображения, используемые когда обработка выполняется на носителе записи, таком как оптический диск, магнитный диск или флэш-память. Кроме того, данное изобретение может быть применено даже к устройству ортогонального преобразования или устройству обратного ортогонального преобразования, которое включено в состав устройства кодирования изображения, устройства декодирования изображения или тому подобное.
7. Седьмой вариант осуществления
Компьютер
Вышеописанная последовательность операций процессов может быть выполнена с помощью аппаратных средств или может быть выполнена с помощью программного обеспечения. Когда последовательность операций процессов должна быть выполнена с помощью программного обеспечения, программы, составляющие программное обеспечение, установлены в компьютере. Здесь компьютер включает в себя компьютер, который встроен в предназначенное для этого аппаратное оборудование, или представляет собой персональный компьютера (РС) общего назначения, который может выполнять различные функции путем установки различных программ в компьютер, например.
Фиг. 49 является блок-схемой, иллюстрирующей пример конфигурации аппаратного обеспечения компьютера для выполнения описанной выше последовательности процессов с помощью программы.
В компьютере 800, показанном на фиг. 49, центральный процессор (CPU) 801, постоянное запоминающее устройство (ROM) 802 и оперативное запоминающее устройство (RAM) 803 соединены друг с другом с помощью шины 804.
Интерфейс (I/F) 810 ввода/вывода дополнительно соединен с шиной 804. Входная секция 811, выходная секция 812, секция 813 хранения, секция 814 связи и драйвер 815 соединены с I/F 810 ввода/вывода.
Входная секция 811 выполнена в виде клавиатуры, мыши, микрофона, сенсорной панели, входного терминала и тому подобное. Выходная секция 812 образована дисплеем, динамиком, выходной клеммой и тому подобное. Секция 813 хранения выполнена в виде жесткого диска, энергонезависимой памяти или тому подобное. Секция 814 связи выполнена посредством сетевого интерфейса или тому подобное. Драйвер 815 приводит в действие сменный носитель 821 информации, такой как магнитный диск, оптический диск, магнитооптический диск или полупроводниковое запоминающее устройство.
В компьютере, сконфигурированным, как описано выше, процессор 801 загружает программы, сохраненные в секции 813 хранения на RAM 803 через I/F 810 ввода/вывода и шину 804, и выполняет программы, так что выполняется вышеописанная последовательность операций процессов. RAM 803 также хранит данные, необходимые для процессора 801 для выполнения различных процессов.
Программа, выполняемая компьютером 800 (CPU 801) может быть записана на съемном носителе 821 информации, например, носитель упакованных данных или тому подобного. Программа также может быть поставлена с помощью проводной или беспроводной среды передачи, такой как локальная сеть, интернет или посредством цифрового спутникового вещания.
В компьютере, путем загрузки съемного носителя 821 информации в драйвер 815, программа может быть установлена на секцию 813 хранения через I/F 810 ввода/вывода. Кроме того, можно получить программу с проводной или беспроводной среды передачи используя секцию 814 связи и установить программу в секции 813 хранения. В качестве другой альтернативы, программа может быть установлена заранее на ROM 802 или секцию 813 хранения.
Следует отметить, что программа, выполняемая компьютером, может быть программой, которая обрабатывается последовательно в соответствии с последовательностью, описанной в данном описании, или программой, которая будет обрабатываться параллельно или в требуемый момент времени, например, по запросу.
В настоящем описании, этапы описания программы должны быть записаны на носителе записи и могут включать в себя обработку, выполняемую последовательно в соответствии с описанием порядка, и обработку, которая не выполняется последовательно, но выполняться параллельно или по отдельности.
Кроме того, в данном описании, набор системных средств множества элементов (устройств, модулей (частей) или тому подобное) является независимым от порядка расположения всех элементов в одном корпусе. Таким образом, множество устройств, которые размещены в отдельных корпусах и соединены через сеть, и одно устройству, в котором размещены множество модулей в одном корпусе, являются системами.
Дополнительно, элемент, описанный ранее в виде одного устройства (или устройства обработки), может быть разделен и выполнен в виде множества устройств (или процессоров). Напротив, элементы, описанные ранее в виде множества устройств (процессоров или выше), могут быть сконфигурированы вместе как одно устройство (или процессор). Кроме того, элемент, отличный от описанного выше, может быть добавлен к каждому устройству (или блоку обработки). Более того, часть элемента данного устройства (или процессора) может быть включена в состав элемента другого устройства (или другого устройства обработки), так как конфигурация или процесс функционирования системы в целом, по существу, является аналогичным.
Предпочтительные варианты осуществления настоящего изобретения были описаны выше со ссылкой на прилагаемые чертежи, в то время, как настоящее изобретение не ограничивается приведенными выше примерами, конечно. Специалист в данной области техники может найти различные изменения и модификации в пределах объема прилагаемой формулы изобретения, и следует понимать, что они, естественно, не выходят за рамки технического объема настоящего изобретения.
Например, настоящее изобретение может принимать облачную конфигурацию вычислений, которая выполняет процесс обработки с помощью выделения и подключения одной функции посредством множества устройств через сеть.
Дополнительно, каждый этап, описанный вышеупомянутыми блок-схемами алгоритма, может быть выполнен с помощью одного устройства или путем выделения множества устройств.
Кроме того, в случае, когда множество процессов выполняются на одном этапе, то множество процессов на одном этапе может быть выполнено с помощью одного устройства или путем выделения множества устройств.
Устройство кодирования изображения и устройство декодирования изображения согласно варианту осуществления может быть применено к различным электронным устройствам, таким как передатчики и приемники для спутникового вещания, кабельного вещания, таких как кабельное телевидение, распространения информации по сети интернет, распространения информации посредством терминалов через сотовую связь и т.п., записывающим устройствам, которые записывают изображения на носитель информации, такой как оптические диски, магнитные диски и флэш-память, и устройствам воспроизведения информации, которые воспроизводят изображения с такого носителя информации. Четыре варианта применения будут описаны ниже.
8. Варианты применения
Первый вариант применения: Телевизионные приемники
Фиг. 50 иллюстрирует пример схематичной конфигурации телевизионного устройства, к которому применяется вариант осуществления. Телевизионное устройство 900 включает в себя антенну 901, тюнер 902, демультиплексор 903, декодер 904, секцию 905 обработки видеосигнала, секцию 906 отображения, секцию 907 обработки звукового сигнала, динамик 908, внешний I/F 909, секцию 910 управления, пользовательский I/F 911 и шину 912.
Тюнер 902 извлекает сигнал желаемого канала из широковещательных сигналов, принятых с помощью антенны 901, и демодулирует извлеченный сигнал. Тюнер 902 затем выводит кодированный битовый поток, полученный с помощью демодуляции, в демультиплексор 903. То есть, тюнер 902 служит в качестве блока передачи телевизионного устройства 900 для приема кодированного потока, в котором кодируется изображение.
Демультиплексор 903 демультиплексирует кодированный битовый поток для получения видеопотока и аудио потока программы для просмотра, и выводит каждый поток, полученный в процессе демультиплексирования, в декодер 904. Демультиплексор 903 извлекает вспомогательные данные, такие как данные электронного гида программ (EPG), из кодированного битового потока и поставляет извлеченные данные в секцию 910 управления. Дополнительно, демультиплексор 903 может выполнять дескремблирование, когда кодированный битовый поток был подвержен процессу скремблирования.
Декодер 904 декодирует видеопоток и аудио поток, поступивший из демультиплексора 903. Декодер 904 затем выводит видеоданные, генерируемые в процессе декодирования, в секцию 905 обработки видеосигнала. Декодер 904 также выводит звуковые данные, генерируемые в процессе декодирования, в секцию 907 обработки звукового сигнала.
Секция 905 обработки видеосигнала воспроизводит видео входные, поступившие из декодера 904, и вызывает секцию 906 отображения отобразить видео. Секция 905 обработки видеосигнала, также может вызывать секцию 906 отображения отображать экран приложений, поставляемый через сеть. Кроме того, секция 905 обработки видеосигнала может выполнять дополнительный процесс, такой как удаление шума, например, из видеоданных в соответствии с настройкой. Кроме того, секция 905 обработки видеосигнала может генерировать изображение графического пользовательского I/F (интерфейса), такое как меню, кнопки и курсор, и наложить изображение на выходном изображении.
Секция 906 отображения управляется посредством управляющего сигнала, поставленного из секции 905 обработки видеосигнала, и отображает видео или изображение на видеоэкране устройства отображения (например, на жидкокристаллическом дисплее, плазменном дисплее, дисплее (OLED) и т.д.).
Секция 907 обработки звукового сигнала выполняет процесс воспроизведения, такой как D/A преобразование и усиление аудио данных, поступивших из декодера 904, и воспроизводит звук посредством громкоговорителя 908. Секция 907 обработки аудио сигнала может также выполнять дополнительный процесс, такой как удаление шума из звуковых данных.
Внешний I/F 909 является I/F для подключения телевизионного устройства 900 к внешнему устройству или сети. Например, видеопоток или аудио поток, принятый с помощью внешнего I/F 909, может быть декодирован с помощью декодера 904. То есть, внешний I/F 909 также служит в качестве блока передачи телевизионного устройства 900 для приема кодированного потока, в котором кодируется изображение.
Секция 910 управления включает в себя процессор, такой как центральный процессор (CPU), и память, такую как оперативное запоминающее устройство (RAM) и постоянное запоминающее устройство (ROM). Память хранит программу, которая будет выполнена процессором, программные данные, данные EPG, данные, полученные с помощью сети и т.п. Программа, хранимая в памяти, считывается и выполняется процессором в момент активации телевизионного устройства 900, например. Процессор управляет работой телевизионного устройства 900, например, в соответствии с сигналом управления, поступивший из пользовательского I/F 911, посредством выполнения программы.
Пользовательский I/F 911 подключен к секции 910 управления. Пользовательский I/F 911 включает в себя, например, кнопку и переключатель, используемый пользователем для управления телевизионным устройством 900, и приемную секцию для сигнала дистанционного управления, Пользовательский I/F 911 обнаруживает сигнал действия пользователя с помощью этих структурных элементов, генерирует операционный сигнал и выводит сгенерированный сигнал в секцию 910 управления.
Шина 912 соединяет тюнер 902, демультиплексор 903, декодер 904, секцию 905 обработки видеосигнала, секцию 907 обработки звукового сигнала, внешний I/F 909 и секцию 910 управления друг с другом.
Декодер 904 имеет функцию устройства 200 масштабируемого декодирования в соответствии с вариантом осуществления в телевизионном устройстве 900, сконфигурированным таким образом. Соответственно, когда изображение декодируется в телевизионном устройстве 900, можно выполнить процесс декодирования в должный момент времени.
Второй пример применения: Мобильные телефоны
Фиг. 51 иллюстрирует пример схематичной конфигурации мобильного телефона, к которому применяется вариант осуществления. Мобильный телефон 920 включает в себя антенну 921, секцию 922 связи, аудиокодек 923, динамик 924, микрофон 925, секцию 926 камеры, секцию 927 обработки изображений, секцию 928 демультиплексирования, секцию 929 записи/воспроизведения, секцию 930 отображения, секцию 931 управления, операционную секцию 932 и шину 933.
Антенна 921 подключена к секции 922 связи. Громкоговоритель 924 и микрофон 925 подключены к аудиокодеку 923. Операционная секция 932 подключена к секции 931 управления. Шина 933 соединяет секцию 922 связи, аудиокодек 923, секцию 926 камеры, секцию 927 обработки изображения, секцию 928 демультиплексирования, секцию 929 записи/воспроизведения, секцию 930 отображения и секцию 931 управления друг с другом.
Мобильный телефон 920 выполняет операцию, например, передачи и приема аудио сигнала, передачи и приема сообщений электронной почты или данных изображения, захвата изображения и записи данных в различных режимах работы, включающие в себя режим аудио вызова, режим передачи данных, режим захвата изображений и режим видеотелефона.
Аналоговый аудио сигнал, генерируемый микрофоном 925, подается в аудиокодек 923 в режиме аудио вызова. Аудиокодек 923 преобразует аналоговый аудиосигнал в аудио данные, полученные преобразованные звуковые данные подвергаются А/D преобразованию и сжимает преобразованные данные. Аудиокодек 923 затем выводит сжатые аудиоданные в секцию 922 связи. Секция 922 связи кодирует и модулирует данные аудио, и генерирует сигнал передачи. Секция 922 связи затем передает сгенерированный сигнал передачи на базовую станцию (не показана) через антенну 921. Секция 922 связи также усиливает беспроводной сигнал, принятый через антенну 921 и преобразует частоту радиосигнала для получения принятого сигнала. Секция 922 связи затем демодулирует и декодирует принятый сигнал, генерирует аудиоданные и выводит сгенерированные аудиоданные в аудиокодек 923. Аудиокодек 923 обрабатывает аудиоданные, имеет звуковые данные, подвергнутые D/A преобразованию и генерирует аналоговый аудиосигнал. Аудиокодек 923 затем подает сгенерированный звуковой сигнал на динамик 924 для вывода звука.
Секция 931 управления также генерирует текстовые данные в соответствии с операцией, выполняемой пользователем с помощью операционной секции 932, текстовые данные, например, формирует сообщения электронной почты. Кроме того, секция 931 управления вызывает секцию 930 отображения отобразить текст. Кроме того, секция 931 управления генерирует данные электронной почты в соответствии с инструкцией передачи от пользователя посредством операционной секции 932, и выводит сгенерированные данные электронной почты в секцию 922 связи. Секция 922 связи кодирует и модулирует данные электронной почты, и генерирует сигнал передачи. Секция 922 связи затем передает сформированный сигнал передачи на базовую станцию (не показана) через антенну 921. Секция 922 связи также усиливает беспроводной сигнал, принятый через антенну 921 и преобразует частоту радиосигнала, чтобы получить принятый сигнал. Секция 922 связи затем демодулирует и декодирует принятый сигнал, чтобы восстановить данные электронной почты, и выводит восстановленные данные электронной почты в секцию 931 управления. Секция 931 управления вызывает секцию 930 отображения отобразить контент электронной почты, а также вызывает носитель данных секции 929 записи/воспроизведения сохранить данные электронной почты.
Секция 929 записи/воспроизведения включает в себя читаемый носитель данных. Например, носитель данных может быть встроенным носителем информации, таким как RAM и флэш-память, или внешним носителем информации, таким как жесткие диски, магнитные диски, магнитооптические диски, оптические диски, универсальная последовательная шина (USB) памяти и карты памяти.
Кроме того, секция 926 камеры, например, захватывает изображение предмета, чтобы сформировать данные изображения, и выводит данные изображения, сгенерированные в секции 927 обработки изображения в режиме захвата изображения. Секция 927 обработки изображений кодирует данные изображения поступившие из секции 926 камеры, и вызывает носитель информации секции 929 хранения/воспроизведения сохранить кодированный поток.
Более того, секция 928 демультиплексирования, например, мультиплексирует видеопоток, закодированный с помощью секции 927 обработки изображений, и звуковой потока, поступивший из аудиокодека 923, и выводит мультиплексированный поток в секцию 922 связи в режиме видеотелефона. Секция 922 связи кодирует и модулирует поток и генерирует сигнал передачи. Секция 922 связи затем передает сформированный сигнал передачи на базовую станцию (не показана) через антенну 921. Секция 922 связи также усиливает беспроводной сигнал, принятый через антенну 921 и преобразует частоту радиосигнала, чтобы получить принятый сигнал. Этот сигнал передачи и принятый сигнал может включать в себя кодированный битовый поток. Секция 922 связи затем демодулирует и декодирует принятый сигнал, чтобы восстановить поток, и выводит восстановленный поток в секцию 928 демультиплексирования. Секция 928 демультиплексирования демультиплексирует входной поток для получения видеопотока и аудиопотока, и выводит видеопоток в секцию 927 обработки изображений и аудиопоток в аудиокодек 923. Секция 927 обработки изображения декодирует видеопоток и генерирует видеоданные. Видеоданные подаются в секцию 930 отображения и последовательность изображений отображается на секции 930 отображения. Аудиокодек 923 расширяет звуковой поток, получает аудио поток, подвергнутый D/A преобразованию, и генерирует аналоговый аудио сигнал. Аудиокодек 923 затем подает сгенерированный звуковой сигнал в громкоговоритель 924, и вызывает звук, который будет выводиться.
Секция 927 обработки изображений выполняет функции устройства 100 масштабируемого кодирования и устройства 200 масштабируемого декодирования в соответствии с вариантом осуществления мобильного телефона 920, сконфигурированного таким образом. Соответственно, когда изображение кодируется или декодируется в мобильном телефоне 920, можно выполнить процесс декодирования в надлежащий момент времени.
Третий пример применения: устройство записи/воспроизведения
Фиг. 52 иллюстрирует пример схематичной конфигурации устройства записи/воспроизведения, к которому применяется вариант осуществления. Устройство 940 записи/воспроизведения, например, кодирует аудиоданные и видеоданные, полученной вещательной программы, и записывает закодированные аудиоданные и кодированные видеоданные на носитель записи. Например, устройство 940 записи/воспроизведения может также кодировать аудиоданные и видеоданные, полученные от другого устройства и записывать закодированные аудиоданные и кодированные видеоданные на носитель записи. Кроме того, устройство 940 записи/воспроизведения, например, использует монитор или динамик для воспроизведения данных, записанных на носителе записи, в соответствии с командой пользователя. В это время, устройство 940 записи/воспроизведения декодирует аудиоданные и видеоданные.
Устройство 940 записи/воспроизведения включает в себя тюнер 941, внешний I/F 942, кодер 943, жесткий диск (HDD) 944, дисковод 945, селектор 946, декодер 947, дисплей на экране (OSD) 948, секцию 949 управления и пользовательский I/ F 950.
Тюнер 941 извлекает сигнал желаемого канала из широковещательных сигналов, принятых через антенну (не показано), и демодулирует извлеченный сигнал. Тюнер 941 затем выводит кодированный битовый поток, полученный с помощью демодуляции, в селектор 946. То есть, тюнер 941 служит в качестве блока передачи устройства 940 записи/воспроизведения.
Внешний I/F 942 является I/F для подключения устройства 940 записи/воспроизведения с внешним устройством или сетью. Например, внешний I/F 942 может быть I/F в соответствии со стандартами Института инженеров по электротехнике и электронике (IEEE) 1394, сетевым I/F, USB I/F, флэш-память I/F или подобное. Например, видеоданные и аудиоданные, полученные с помощью внешнего I/F 942, поступают на вход кодера 943. То есть, внешний I/F 942 служит в качестве блока передачи устройства 940 записи/воспроизведения.
Когда не кодируются видеоданные и аудио данные, поступившие из внешнего I/F 942, кодер 943 кодирует видеоданные и аудиоданные. Кодер 943 затем выводит кодированный битовый поток на селектор 946.
НDD 944 записывает на внутреннем жестком диске кодированный битовый поток, в котором сжаты данные контента видео и аудио, различные программы и другие элементы данных. HDD 944 также считывает эти элементы данных с жесткого диска на момент воспроизведения видео или звука.
Дисковод 945 записывает и считывает данные с носителя записи, который установлен. Носитель записи, который установлен на дисковод 945, может быть, например, DVD-диск (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW и т.д.), Blu-Ray Disc (зарегистрированный товарный знак) или тому подобное.
Селектор 946 выбирает, на момент записи видео или звука, закодированный битовый поток, поступивший с тюнером 941 или кодера 943, и выводит выбранный кодированный битовый поток на жесткий диск 944 или дисковод 945. Селектор 946 также выводит во время воспроизведения видео или звук, кодированный битовой поток, поступивший из HDD 944 или дисковода 945, на декодер 947.
Декодер 947 декодирует кодированный битовый поток и генерирует видеоданные и аудиоданные. Декодер 947 затем выводит сгенерированные видеоданные на OSD 948. Декодер 904 также выводит сгенерированные звуковые данные на внешний громкоговоритель.
OSD 948 воспроизводит видеоданные, поступившие из декодера 947, и отображает видео. OSD 948 может также наложить изображение GUI, такое как меню, кнопки и курсор на отображаемое видео.
Секция 949 управления включает в себя процессор, такой как CPU, и память, такую как RAM и ROM. Память хранит программу, которая будет выполнена процессором, данные программы и т.п. Например, программа, сохраненная в памяти, считывается и выполняется процессором в момент активации устройства 940 записи/воспроизведения. Процессор управляет работой устройства 940 записи/воспроизведения, например, в соответствии с сигналом управления, поступившим из пользовательского I/F 950, посредством выполнения программы.
Пользовательский I/F 950 подключен к секции 949 управления. Пользовательский I/F 950 включает в себя, например, кнопку и переключатель, используемый пользователем для управления устройством 940 записи/воспроизведения, и приемную секцию для приема сигнала управления пульта дистанционного управления. Пользовательский I/F 950 обнаруживает операцию, сделанную пользователем, с помощью этих структурных элементов, генерирует рабочий сигнал и выводит сгенерированный сигнал операции в секцию 949 управления.
Кодер 943 имеет функцию устройства 100 масштабируемого кодирования в соответствии с вариантом осуществления в устройстве 940 записи/воспроизведения, сконфигурированного таким образом. Декодер 947 также имеет функцию устройства 200 масштабируемого декодирования в соответствии с вариантом осуществления. Таким образом, когда изображение кодируется или декодируется в устройстве 940 записи/воспроизведения, то можно выполнить процесс декодирования в надлежащий момент времени.
Четвертый пример применения: устройство захвата изображения
Фиг. 53 иллюстрирует пример схематичной конфигурации устройства захвата изображения, к которому применяется вариант осуществления. Устройство 960 захвата изображения захватывает изображение предмета для создания изображения, кодирует данные изображения и записывает данные изображения на носитель записи.
Устройство 960 захвата изображения включает в себя оптический блок 961, секцию 962 захвата изображения, секцию 963 обработки сигнала, секцию 964 обработки изображения, секцию 965 отображения, внешний I/F 966, память 967, медиа-драйвер 968, OSD 969, секцию 970 управления, пользовательский I/F 971 и шину 972.
Оптический блок 961 подсоединен к секции 962 захвата изображения. Секция 962 захвата изображения подключена к секции 963 обработки сигнала. Секция 965 отображения соединена с секцией 964 обработки изображения. Пользовательский I/F 971 соединен с секцией 970 управления. Шина 972 соединяет секцию 964 обработки изображений, внешний I/F 966, память 967, дисковод 968, OSD 969 и секцию 970 управления друг с другом.
Оптический блок 961 включает в себя фокусирующие линзы, механизм остановки диафрагмы и т.п. Оптический блок 961 формирует оптическое изображение предмета на поверхности захвата изображения секции 962 захвата изображения. Секция 962 захвата изображения включает в себя датчик изображения, такой как прибор с зарядовой связью (CCD) и комплементарный металлооксидный полупроводник (CMOS), и преобразует оптическое изображение, сформированное на поверхности захвата изображения, в сигнал изображения, который является электрическим сигналом, посредством фотоэлектрического преобразования. Секция 962 захвата изображения затем выводит сигнал изображения в секцию 963 обработки сигнала.
Секция 963 обработки сигнала выполняет различные процессы сигнала камеры, такие как коррекция излома характеристики, гамма-коррекция и коррекция цвета, на сигнале изображения, поступившего из секции 962 захвата изображения. Секция 963 обработки сигнала выводит данные изображения, подвергнутого обработке сигнала камеры, в секцию 964 обработки изображения.
Секция 964 обработки изображений кодирует данные изображения, поступившие из секции 963 обработки сигнала, и генерирует кодированные данные. Секция 964 обработки изображений затем выводит сгенерированные закодированные данные на внешний I/F 966 или дисковод 968. Секция 964 обработки изображений также декодирует кодированные данные, поступившие из внешнего I/F 966 или дисковода 968, и генерирует данные изображения. Секция 964 обработки изображений затем выводит сформированные данные изображения в секцию 965 отображения. Секция 964 обработки изображения может также вырабатывать данные изображения, поступившие из секции 963 обработки сигнала, в секцию 965 отображения и осуществляет отображение изображения. Более того, секция 964 обработки изображения может наложить данные для отображения полученных из OSD 969 на изображение для вывода в секцию 965 отображения.
OSD 969 генерирует изображение GUI, такое как меню, кнопки и курсор и выводит сгенерированное изображение в секцию 964 обработки изображений.
Внешний I/F 966 сконфигурирован, например, в качестве USB терминала ввода и вывода. Внешний I/F 966 соединяет устройство 960 захвата изображения и принтер, например, во время печати изображения. Привод дополнительно соединен с внешним I/F 966, по мере необходимости. Съемный носитель, такой как магнитные диски и оптические диски, установленные на дисковод, и программа, считываемая со съемного носителя, может быть установлена в устройстве 960 захвата изображения. Более того, внешний I/F 966 может быть сконфигурирован как сетевой I/F для подключения к сети, такой как LAN и интернет. То есть, внешний I/F 966 служит в качестве блока передачи устройства 960 захвата изображения.
Носитель записи, будучи установленным на дисковод 968, может быть съемным носителем, таким как магнитные диски, магнитооптические диски, оптические диски и полупроводниковая память. Носитель записи также может быть неподвижно установлен на дисковод 968, формируя постоянно установленную секцию хранения, такую как встроенный жесткий диск или твердотельные накопители (SSD).
Секция 970 управления включает в себя процессор, такой как процессор и память, такую как RAM и ROM. Память хранит программу, которая будет выполнена процессором, данные программы и т.п.. Программа, сохраненная в памяти, считывается и выполняется процессором, например, в момент активации устройства 960 захвата изображения. Процессор управляет работой устройства 960 захвата изображения, например, в соответствии с операционным сигналом, поступившим из пользовательского I/F 971, посредством выполнения программы.
Пользовательский I/F 971 подключен к секции 970 управления. Пользовательский I/F 971 включает в себя, например, кнопку, переключатель и т.п., используемые пользователем для управления устройством 960 захвата изображения. Пользовательский I/F 971 обнаруживает операцию, сделанную пользователем с помощью этих структурных элементов, генерирует операционный сигнал и выводит сгенерированный операционный сигнал в секцию 970 управления.
Секция 964 обработки изображений имеет функцию устройства 100 масштабируемого кодирования и устройства 200 масштабируемого декодирования в соответствии с вариантом осуществления устройства 960 захвата изображения, выполненного таким образом. Таким образом, когда изображение закодировано и декодируется устройством 960 захвата изображения, то можно выполнить процесс декодирования в надлежащий момент времени.
9. Пример применения процесс масштабируемого кодирования видео
Первая система
Далее будет описан специфический пример использования процесса масштабируемого кодирования данных, в котором выполняется процесс масштабируемого кодирования видео (иерархическое кодирование). Масштабируемое кодирование видео, например, используется для выбора данных, которые должны передаваться, как примеры, показанных на фиг. 54.
В системе 1000 передачи данных, показанной на фиг. 54, сервер 1002 распределения считывает масштабируемые кодированные данные, хранящиеся в секции 1001 хранения масштабируемых кодированных данных, и распределяет масштабируемые кодированные данные на терминальное устройство, например, РС 1004, AV устройство 1005, планшетное устройство 1006 или мобильный телефон 1007, через сеть 1003.
В это время, сервер 1002 распределения выбирает и передает кодированные данные надлежащего качества в соответствии с возможностями терминального устройства, среды связи или тому подобное. Даже когда сервер 1002 распределения передает данные высокого качества, высококачественное изображение, не обязательно полученное в терминальном устройстве, что может быть причиной возникновения задержки или переполнения. Кроме того, коммуникационный диапазон может быть излишне перегружен или нагрузка терминального устройства может быть излишне увеличена. В отличие от этого, даже когда сервер 1002 распределения передает данные низкого качества, изображение с достаточным качеством не может быть получено. Таким образом, сервер 1002 распределения соответственно считывает и передает масштабируемые кодированные данные, хранящиеся в секции 1001 хранения масштабируемых кодированных данных, как кодированные данные, имеющие надлежащее качество в соответствии с возможностями терминального устройства, среды связи или тому подобное.
Например, секция 1001 хранения масштабируемых кодированных данных выполнена с возможностью хранить масштабируемые кодированные данные (BL + EL) 1011, в котором выполняется масштабируемое кодирование видео. Масштабируемые кодированные данные (BL + EL) 1011 являются кодированными данными, включающие в себя как данные базового уровня, так и данные усовершенствованного уровня, и являются данными, из которых могут быть получены изображение базового нижнего уровня и изображение усовершенствованного уровня путем выполнения декодирования.
Сервер 1002 распределения выбирает соответствующий уровень в зависимости от характеристик терминального устройства для передачи данных, среды связи или тому подобное, и считывает данные выбранного уровня. Например, что касается компьютера 1004 или планшетного устройства 1006, имеющие высокую способность обработки, сервер 1002 распределения считывает масштабируемые кодированные данные (BL + EI) 1011 из секции 1001 хранения масштабируемых кодированных данных 1001 и передает масштабируемые кодированные данные (BL + EL) 1011 без изменений. С другой стороны, например, что касается AV устройства 1005 или мобильного телефона 1007, имеющие низкую способность обработки, сервер 1002 распределения извлекает данные базового уровня из масштабируемых кодированных данных (BL + EL) 1011 и передает извлеченные данные базового уровня, как масштабируемые кодированные данные (BL) 1012 низкого качества, которые представляют собой данные, имеющие тот же контент, что и масштабируемые кодированные данные (BL + EL) 1011, но имеет более низкое качество, чем масштабируемые кодированные данные (BL + EL) 1011.
Поскольку объем данных можно легко регулировать путем использования масштабируемых кодированных данных, возникновение задержки или переполнения может быть подавлено или ненужного увеличение нагрузки терминального устройства или средства коммуникации может быть устранено. Кроме того, из-за того, что избыточность между уровнями уменьшается в масштабируемых кодированных данных (BL + EL) 1011, то можно дополнительно уменьшить количество данных, чем когда кодированные данные каждого уровня рассматриваются как отдельные данные. Таким образом, можно более эффективно использовать область хранения секции 1001 хранения масштабируемых кодированных данных.
Поскольку различные устройства, такие как с РС 1004 по мобильный телефон 1007, применимы в качестве терминального устройства, характеристики оборудования оконечных устройств различается в зависимости от устройства. Кроме того, поскольку существуют различные приложения, которые выполняются с помощью терминального устройства, то характеристики программного обеспечения также варьируется. Кроме того, поскольку все коммуникационные сети, включающие в себя проводные, беспроводные, или обе, такие как интернет и локальная сеть (LAN), применяются в качестве сети 1003, служащей средством коммуникации, характеристики передачи данных их меняются. Кроме того, характеристики передачи данных могут варьироваться в зависимости от других коммуникаций или тому подобное.
Таким образом, сервер 1002 распределения может устанавливать связь с терминальным устройством, которое является адресатом передачи данных, прежде чем начать передачу данных, и затем получить информацию, относящуюся к характеристикам терминального устройства, например, характеристики оборудования терминального устройства, или характеристики приложения (программное обеспечение), которое выполняется посредством терминального устройства, и информацию, относящуюся к среде передачи данных, такой как доступная пропускная способность сети 1003. Затем сервер 1002 распределения может выбрать соответствующий уровень на основании полученной информации.
Кроме того, процесс извлечения уровня может быть выполнен на терминальном устройстве. Например, РС 1004 может декодировать передаваемые масштабируемые кодированные данные (BL + EL) 1011 и отображать изображение базового уровня или отображать изображение усовершенствованного уровня. Кроме того, например, РС 1004 может быть выполнен с возможностью извлекать масштабируемые кодированные данные (BL) 1012 базового уровня из переданных масштабируемых кодированных данных (BL + EL) 1011, хранить извлеченные масштабируемые кодированные данные (BL) 1012 базового уровня, передавать на другое устройство, или декодировать и отображать изображение базового уровня.
Конечно, количество секций 1001 хранения масштабируемых кодированных данных, серверов 1002 распределения, сетей 1003 и терминальных устройств является возможным. Кроме того, хотя выше был описан пример сервера 1002 распределения, передающий данные на терминальное устройство, но использование этим не ограничивается. Система 1000 передачи данных применима к любой системе, которая выбирает и передает информацию соответствующего уровня в зависимости от характеристик терминального устройства, среды связи или тому подобное, когда масштабируемые кодированные данные передаются на терминальное устройство.
Вторая система
Кроме того, масштабируемое кодирование видео, например, используется для передачи информации посредством множества коммуникационных средств, как в примере, показанном на фиг. 55.
В системе 1100 передачи данных, показанной на фиг. 55, вещательная станция 1101 передает масштабируемые кодированные данные (BL) 1121 базового уровня посредством наземного вещания 1111. Кроме того, вещательная станция 1101 передает масштабируемые кодированные данные (EL) 1122 усовершенствованного уровня по любой произвольной сети 1112, которая является проводной, беспроводной или обеими коммуникационными сетями (например, данные пакетируются и передаются).
Терминальное устройство 1102 имеет функцию приема сигнала наземного вещания 1111, который транслируется вещательной станцией 1101, и принимает масштабируемые кодированные данные (BL) 1121 базового уровня, передаваемые посредством наземного вещания 1111. Кроме того, терминальное устройство 1102 дополнительно имеет коммуникационную функцию с помощью которой осуществляется связь через сеть 1112, и осуществляется прием масштабируемых кодированных данных (EL) 1122 усовершенствованного уровня, передаваемых по сети 1112.
Например, в соответствии с командой пользователя или т.п., терминальное устройство 1102 декодирует масштабируемые кодированные данные (BL) 1121 базового уровня, полученные посредством наземного вещания 1111, получая или сохраняя изображение базового уровня, или передавая изображение базового уровня другим устройствам.
Кроме того, например, в соответствии с инструкцией пользователя, терминальное устройство 1102 объединяет масштабируемые кодированные данные (BL) 1121 базового уровня, полученные посредством наземного вещания 1111, и масштабируемые кодированные данные (EL) 1122 усовершенствованного уровня, полученные по сети 1112, получая тем самым масштабируемые кодированные данные (BL + EL), осуществляет получение или сохранение изображение усовершенствованного уровня путем декодирования масштабируемых кодированных данных (BL + EL) или передачу изображения усовершенствованного уровня другим устройствам.
Как описано выше, масштабируемые кодированные данные, например, могут быть переданы через другой канал связи для каждого уровня. Таким образом, можно распределить нагрузку и предотвратить возникновение задержки или переполнения.
Кроме того, в зависимости от ситуации, коммуникационная среда, используемая для передачи для каждого уровня, может быть выполнена с возможностью быть выбранной. Например, масштабируемые кодированные данные (BL) 1121 базового уровня, в котором объем данных сравнительно велик, могут быть переданы через коммуникационную среду, имеющую широкую полосу частот, и масштабируемые кодированные данные (EL) 1122 усовершенствованного уровня, где количество данных сравнительно невелико, могут быть переданы посредством коммуникационной среды, имеющей узкую полосу частот. Кроме того, например, в зависимости от того, является ли коммуникационная среда, которая передает масштабируемые кодированные данные (EL) 1122 усовершенствованного уровня, сетью 1112 или наземным вещанием 1111, можно переключаться в соответствии с наличием пропускной способности сети 1112. Конечно, То же самое верно для данных произвольного уровня.
Управляя таким образом, можно дополнительно не допустить увеличения нагрузки при передаче данных.
Конечно, количество уровней не является обязательным, и количество коммуникационных сред, используемых при передаче, также является возможным. Кроме того, количество терминальных устройств 1102, которые являются адресатами распределения данных, также является необязательным. Кроме того, хотя пример вещания из вещательной станции 1101 был описано выше, пример использования этим не ограничивается. Система 1100 передачи данных может быть применена к любой системе, которая делит масштабируемые кодированные данные, используя уровень в виде блока, и передает масштабируемые кодированные данные с помощью множества линий связи.
Третий система
Кроме того, масштабируемое кодирование видео используется при хранении кодированных данных, в качестве примера показанного на фиг. 56.
В системе 1200 захвата изображения, показанной на фиг. 56, устройство 1201 захвата изображения выполняет масштабируемое кодирование видео на данных изображения, полученных путем захвата изображения предмета 1211, и поставляет результат масштабируемого видео как масштабируемые кодированные данные (BL + EL) 1221 в устройство 1202 хранения масштабируемых кодированных данных.
Устройство 1202 хранения масштабируемых кодированных данных хранит масштабируемые кодированные данные (BL + EL) 1221, поставляемые из устройства 1201 захвата изображения, соответственного качества в зависимости от ситуации. Например, в случае наличия нормальных условий, устройство 1202 хранения масштабируемых кодированных данных извлекает данные базового уровня из масштабируемых кодированных данных (BL + EL) 1221 и сохраняет извлеченные данные как масштабируемые кодированные данные (BL) 1222 базового уровня, имеющие небольшой объем данных низкого качества. С другой стороны, например, в случае наличия исключительных обстоятельств, устройство 1202 хранения масштабируемых кодированных данных хранит масштабируемые кодированные данные (BL + EL) 1221, имеющие большой объем данных высокого качества без изменений.
Таким образом, в виду того, что устройство 1202 хранения масштабируемых кодированных данных может сохранять изображения высокого качества только в необходимом случае, можно не допустить уменьшения величины изображения из-за ухудшения качества изображения и не допустить увеличения количества данных, и можно повысить эффективность использования области хранения.
Например, предполагается, что устройство 1201 захвата изображения представляет собой отслеживающую камеру. Поскольку контент захваченного изображения вряд ли будет иметь важное значение, когда предмет мониторинга (например, помеха) не показан на сформированном изображении (в случае наличия нормальных условий), приоритетом будет являться сокращение объема данных, и хранятся данные изображения (масштабируемые кодированные данные) низкого качества. С другой стороны, когда контент изображения может быть важным, когда цель мониторинга показана как объект 1211 на сформированном изображении (в случае наличия исключительных обстоятельств), приоритетом является качество изображения, и хранятся данные изображения (масштабируемые кодированные данные) высокого качества.
Например, может быть определено наличие случая нормальных условий или исключительных условий с помощью устройства 1202 хранения масштабируемых кодированных данных на основании данных анализа изображения. Кроме того, устройство 1201 захвата изображения может быть выполнено с возможностью определять и передавать данные результата определения в устройство 1202 хранения масштабируемых кодированных данных.
Критерий определения наличия случая нормальных условий или исключительных обстоятельств не является обязательным и контент изображения, который является критерием определения, является возможным. Конечно, состояние, отличное от контента изображения, может быть обозначено в качестве критерия определения. Например, переключение может быть осуществлено в соответствии с величиной сигнала или уровнем записанного звука с помощью заранее определенного интервала времени, или с помощью внешней команды, такой как команды пользователя.
Кроме того, хотя были описаны только два состояния, а именно нормальные условия и исключительные обстоятельства, количество состояний является возможным и, например, переключение может быть настроено так, чтобы было выполнено одно из трех или более состояний, такие как нормальные условия, слегка заметные обстоятельства, исключительные обстоятельства и чрезвычайно исключительные обстоятельства. Однако верхний предел переключений количества состояний зависит от количества уровней масштабируемых кодированных данных.
Кроме того, устройство 1201 захвата изображения может определить количество уровней масштабируемого кодирования видео в соответствии с состоянием. Например, в случае нормальных условий, устройство 1201 захвата изображения может генерировать масштабируемые кодированные данные (BL) 1222 базового уровня, имеющие небольшой объем данных низкого качества и поставлять данные в устройство 1202 хранения масштабируемых кодированных данных. Кроме того, например, в случае наличия исключительных обстоятельств, устройство 1201 захвата изображения может генерировать масштабируемые кодированные данные (BL + EI) 1221 базового уровня, имеющие большое количество данных высокого качества, и поставлять данные в устройство 1202 хранения масштабируемых кодированных данных.
Хотя камера отслеживания была описана выше в качестве примера, использование системы 1200 захвата изображения является возможным и не ограничивается камерой отслеживания.
Дополнительно, данное изобретение также может быть применено к HTTP потоковой информации, такой как MPEG DASH, в котором выбираются соответствующие кодированные данные в блоках сегментов из множества элементов кодированных данных, имеющих различные решения, которые готовятся заранее и использованы. Другими словами, множество элементов кодированных данных могут совместно использовать информацию, относящуюся к процессу кодирования или декодирования.
Дополнительно, в этом описании, пример, в котором был описан различные виды информации, такие как флаг типа HRD параметра, HRD параметр или buffering_period_SEI и layer_buffering_period_SEI, мультиплексируются в закодированный поток, и передается со стороны кодирования на сторону декодирования. Тем не менее, способ передачи информации не ограничивается этим примером. Например, информация может быть передана или записана в виде отдельных данных, ассоциированных с кодированным битовым потоком без мультиплексирования, в кодированном потоке. Здесь термин "ассоциированный" относится к изображению, включенному в состав битового потока (который может быть частью изображения, например срез или блок), и к информации, соответствующей изображению, выполненному с возможностью иметь взаимоотношение во время декодирования. То есть, информация может быть передана по отдельному тракту передачи из изображения (или битового потока). Кроме того, эта информация может быть записана на отдельном носителе записи (или на отдельной области записи одного и того же носителя записи) из изображения (или битового потока). Кроме того, информация и изображение (или битовый поток), например, могут быть связаны друг с другом в произвольном блоке, таком как множество кадров, один кадр или часть в кадре.
Предпочтительные варианты осуществления настоящего изобретения были описаны выше со ссылкой на прилагаемые чертежи, в то время как настоящее изобретение не ограничивается приведенными выше примерами, конечно. Специалист в данной области техники может найти различные изменения и модификации в пределах объема прилагаемой формулы изобретения, и следует понимать, что они, естественно, подпадают под технический объем настоящего изобретения.
Кроме того, данное изобретение также может быть сконфигурировано, как показано ниже.
(1) Устройство обработки изображения включает в себя:
приемную секцию, выполненную с возможностью принимать битовый поток, полученный посредством кодирования изображения, имеющего, по меньшей мере, один уровень, и информацию о параметре управления буфером каждого уровня, указывающую, по меньшей мере, что один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня и, что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня; и
секцию декодирования, выполненную с возможностью декодировать битовый поток, принятый приемной секцией, и генерировать изображение.
(2) Устройство обработки изображения по п. (1),
в котором, уровень включает в себя уровень и субуровень.
(3) Устройство обработки изображения по п. (1) или п. (2),
в котором, уровень представляет собой ракурс многоракурсного кодирования.
(4) Устройство обработки изображения по п. (1) или п. (2),
в котором, уровень представляет собой уровень масштабируемого кодирования видео.
(5) Устройство обработки изображения по любому из пунктов с (1) по (4),
в котором, информация параметра управления буфером описана в дополнительной расширяющей информации (SEI).
(6) Устройство обработки изображения по любому из пунктов с (1) по (5),
в котором, информация параметра управления буфером описана в buffering_period_SEI.
(7) Устройство обработки изображения по любому из пунктов с (1) по (4),
в котором, информация о наличии/отсутствии параметра указывает на наличие или отсутствие параметра для управления буфером декодера, служащим в качестве параметра для выполнения процесса декодирования только соответствующего уровня, описанного в vps (набор параметров видео) _extension.
(8) Устройство обработки изображения по любому из пунктов с (1) по (7),
в котором, приемная секция принимает AVC флаг, указывающий, что уровень ниже, чем соответствующий уровень, кодирован посредством MPEG-4 часть 10 Усовершенствованное кодирование видеосигнала (AVC), и информация о параметре управления буфером каждого уровня, указывающая, что параметр для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня.
(9) Способ обработки изображения включает в себя:
прием посредством устройства обработки изображения битового потока, полученного путем кодирования изображения, имеющего, по меньшей мере, один уровень, и информацию параметра управления буфером каждого уровня с указанием, по меньшей мере, один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня и, что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня; и
декодирование принятого битового потока с помощью устройства обработки изображения и генерирование изображения.
(10) Устройство обработки изображения включает в себя:
секцию установки, выполненную с возможностью устанавливать информацию параметра управления буфером каждого уровня, указывая, по меньшей мере, один из параметров для управления буфером декодера, который является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня;
секцию кодирования, выполненную с возможностью кодировать изображение, имеющее, по меньшей мере, один уровень, и генерировать битовый поток; и
передающую секцию, выполненную с возможностью передавать информацию о параметре управления буфер, установленную секцией установки, и битовый поток, генерируемый секцией кодирования.
(11) Устройство обработки изображения по п. (10),
в котором, уровень включает в себя уровень и субуровень.
(12) Устройство обработки изображения по п. (10) или п. (11),
в котором, уровень представляет собой ракурс многоракурсного кодирования.
(13) Устройство обработки изображения по п. (10) или п. (11),
в котором, уровень представляет собой уровень масштабируемого кодирования видео.
(14) Устройство обработки изображения по любому из пунктов с (10) по (13),
в котором, информация параметра управления буфером описана в дополнительной расширяемой информации (SEI).
(15) Устройство обработки изображения по любому из пунктов с (10) по (14),
в котором, информация о параметре управления буфером описана в buffering_period_SEI.
(16) Устройство обработки изображения по любому из пунктов с (10) по (13),
в котором, информация о наличии/отсутствии параметра указывает на наличие или отсутствие параметра для управления буфером декодера, служащая в качестве параметра для выполнения процесса декодирования только соответствующего уровня, описанная в vps (набор параметров видео) _extension.
(17) Устройство обработки изображения по любому из пунктов с (10) по (16),
в котором, секция установки устанавливает AVC флаг, указывающий, что уровень ниже, чем соответствующий уровень, закодирован посредством MPEG-4 часть 10 Усовершенствованное кодирование видеосигнала (AVC), и информация о параметре управления буфером каждого уровня, указывающая, что параметр для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня.
(18) Способ обработки изображения включает в себя:
установку с помощью устройства обработки изображений информации о параметре управления буфером каждого уровня с указанием, по меньшей мере, того, что один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня;
кодирование с помощью устройства обработки изображения, имеющее, по меньшей мере, один уровень, и генерирование битового потока; и
передачу посредством устройства обработки изображений установленной информации о параметре управления буфером и генерируемого битового потока.
Список ссылочных позиций
100 устройство масштабируемого кодирования
101 секция кодирования изображения уровня
101-1 секция кодирования изображения базового уровня
101-2,101-3 секция кодирования изображения усовершенствованного уровня
102 секция управления процессом кодирования
116 секция кодирования без потерь
117 буфер накопления
127 секция установки типа HRD
131 буфер частичного накопления
132 буфер полного накопления
141 секция вычисления HRD параметра уровня
142 секция вычисления HRD параметра временного уровня
143 секция установки типа HRD параметра
144 секция установки типа HRD параметра времени
200 устройство масштабируемого декодирования
201 секция декодирования изображения уровня
201-1 секция декодирования изображения базового уровня
201-2,201-3 секция декодирования изображения усовершенствованного уровня
202 секция управления процессом декодирования
211 буфер накопления
212 секция декодирования без потерь
224 секция декодирования типа HRD
231 буфер частичного накопления
232 буфер полного накопления
241 секция мониторинга HRD параметра уровня
242 секция мониторинга HRD параметра временного уровня
243 секция декодирования типа HRD параметра
244 секция декодирования типа HRD параметра времени
301 секция кодирования без потерь
302 секция установки SEI периода буферизации
311 секция установки набора ассоциированного параметра
312 буфер набора уровней
313 секция установки SEI периода буферизации уровня
314 секция назначения передачи параметра уровня
351 секция декодирования без потерь
352 секция декодирования SEI периода буферизации
361 секция декодирования набора ассоциированного параметра
362 буфер набора уровней
363 секция декодирования SEI периода буферизации уровня
364 приемная секция передачи параметра уровня

Claims (15)

1. Устройство обработки изображения, содержащее:
секцию установки, выполненную с возможностью устанавливать информацию о параметре управления буфером каждого уровня, указывая, по меньшей мере, что один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня;
секцию кодирования, выполненную с возможностью кодировать изображение, имеющее, по меньшей мере, один уровень, и генерировать битовый поток; и
передающую секцию, выполненную с возможностью передавать информацию о параметре управления буфером, установленную секцией установки, и битовый поток, генерируемый секцией кодирования.
2. Устройство обработки изображения по п. 1, в котором уровень включает в себя подуровень.
3. Устройство обработки изображения по п. 2, в котором уровень представляет собой ракурс многоракурсного кодирования.
4. Устройство обработки изображения по п. 2, в котором уровень представляет собой уровень масштабируемого кодирования видео.
5. Устройство обработки изображения по п. 1, в котором информация параметра управления буфером описана в дополнительной расширяемой информации (SEI).
6. Устройство обработки изображения по п. 5, в котором информация о параметре управления буфером описана в buffering_period_SEI.
7. Устройство обработки изображения по п. 1, в котором информация о наличии/отсутствии параметра указывает на наличие или отсутствие параметра для управления буфером декодера, служащего в качестве параметра для выполнения процесса декодирования только соответствующего уровня, описанного в vps (набор параметров видео) _extension.
8. Устройство обработки изображения по п. 1, в котором секция установки устанавливает AVC флаг, указывающий, что уровень ниже, чем соответствующий уровень, закодирован посредством MPEG-4 часть 10 Усовершенствованное кодирование видеосигнала (AVC), и информацию о параметре управления буфером каждого уровня, указывающую, что параметр для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня.
9. Способ обработки изображения, содержащий:
установку с помощью устройства обработки изображений информации о параметре управления буфером каждого уровня с указанием, по меньшей мере, того, что один из параметров для управления буфером декодера является параметром для выполнения процесса декодирования только соответствующего уровня, и что параметр для управления буфером декодера является параметром для выполнения процесса декодирования соответствующего уровня и нижнего уровня;
кодирование с помощью устройства обработки изображения, имеющее, по меньшей мере, один уровень, и генерирование битового потока; и
передачу посредством устройства обработки изображений установленной информации о параметре управления буфером и генерируемого битового потока.
RU2016141278A 2012-12-26 2013-12-16 Устройство обработки изображения и способ RU2720605C2 (ru)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2012283614 2012-12-26
JP2012-283614 2012-12-26
JP2013-143977 2013-07-09
JP2013143977 2013-07-09
JP2013182993 2013-09-04
JP2013-182993 2013-09-04

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
RU2015124037A Division RU2653315C2 (ru) 2012-12-26 2013-12-16 Устройство обработки изображения и способ

Publications (3)

Publication Number Publication Date
RU2016141278A RU2016141278A (ru) 2018-12-14
RU2016141278A3 RU2016141278A3 (ru) 2020-02-28
RU2720605C2 true RU2720605C2 (ru) 2020-05-12

Family

ID=51020851

Family Applications (2)

Application Number Title Priority Date Filing Date
RU2015124037A RU2653315C2 (ru) 2012-12-26 2013-12-16 Устройство обработки изображения и способ
RU2016141278A RU2720605C2 (ru) 2012-12-26 2013-12-16 Устройство обработки изображения и способ

Family Applications Before (1)

Application Number Title Priority Date Filing Date
RU2015124037A RU2653315C2 (ru) 2012-12-26 2013-12-16 Устройство обработки изображения и способ

Country Status (13)

Country Link
US (2) US10187647B2 (ru)
EP (1) EP2941003B1 (ru)
JP (2) JP6300033B2 (ru)
KR (2) KR102307026B1 (ru)
CN (2) CN104885461B (ru)
AU (2) AU2013367540B2 (ru)
BR (2) BR112015014832A2 (ru)
CA (1) CA2895093A1 (ru)
MX (2) MX367727B (ru)
MY (2) MY186153A (ru)
RU (2) RU2653315C2 (ru)
SG (2) SG10201510265XA (ru)
WO (1) WO2014103763A1 (ru)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6410495B2 (ja) * 2014-07-07 2018-10-24 ルネサスエレクトロニクス株式会社 画像符号化装置、画像復号装置、および画像通信システム
JP6448386B2 (ja) * 2015-01-21 2019-01-09 キヤノン株式会社 符号化装置、復号化装置及び映像送受信システム
US10200690B2 (en) * 2015-09-22 2019-02-05 Qualcomm Incorporated Video decoder conformance for high dynamic range (HDR) video coding using a core video standard
US10856023B2 (en) * 2016-04-12 2020-12-01 Sony Corporation Transmission apparatus, transmission method, reception apparatus, and reception method
US10218644B1 (en) * 2016-09-21 2019-02-26 Apple Inc. Redundant communication path transmission
EP3836556A4 (en) * 2018-08-10 2021-09-29 Sony Group Corporation RECEIVING DEVICE, RECEPTION PROCESS, TRANSMISSION DEVICE, AND TRANSMISSION PROCESS
CN112533029B (zh) * 2020-11-17 2023-02-28 浙江大华技术股份有限公司 一种视频分时传输方法、摄像装置、系统和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2329615C2 (ru) * 2003-12-01 2008-07-20 Самсунг Электроникс Ко., Лтд. Способ масштабируемого кодирования и декодирования видеосигнала и устройство для его осуществления
WO2008128388A1 (en) * 2007-04-18 2008-10-30 Thomson Licensing Method for encoding video data in a scalable manner
JP2010525661A (ja) * 2007-04-18 2010-07-22 トムソン ライセンシング 符号化システム
JP2010525662A (ja) * 2007-04-17 2010-07-22 トムソン ライセンシング マルチビュー・ビデオ符号化のための仮想参照デコーダ
RU2461978C2 (ru) * 2007-10-25 2012-09-20 Ниппон Телеграф Энд Телефон Корпорейшн Способ масштабируемого кодирования и способ масштабируемого декодирования видеоинформации, устройства для них, программы для них и носитель записи, на котором записаны программы

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002359846A (ja) * 2001-05-31 2002-12-13 Sanyo Electric Co Ltd 画像復号方法および装置
EP1513350A1 (en) * 2003-09-03 2005-03-09 Thomson Licensing S.A. Process and arrangement for encoding video pictures
WO2005071970A1 (en) * 2004-01-16 2005-08-04 General Instrument Corporation Method and apparatus for determining timing information from a bit stream
KR100714696B1 (ko) * 2005-06-24 2007-05-04 삼성전자주식회사 다계층 기반의 가중 예측을 이용한 비디오 코딩 방법 및장치
EP2213099A1 (en) * 2007-10-15 2010-08-04 QUALCOMM Incorporated Improved enhancement layer coding for scalable video coding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2329615C2 (ru) * 2003-12-01 2008-07-20 Самсунг Электроникс Ко., Лтд. Способ масштабируемого кодирования и декодирования видеосигнала и устройство для его осуществления
JP2010525662A (ja) * 2007-04-17 2010-07-22 トムソン ライセンシング マルチビュー・ビデオ符号化のための仮想参照デコーダ
WO2008128388A1 (en) * 2007-04-18 2008-10-30 Thomson Licensing Method for encoding video data in a scalable manner
JP2010525661A (ja) * 2007-04-18 2010-07-22 トムソン ライセンシング 符号化システム
RU2461978C2 (ru) * 2007-10-25 2012-09-20 Ниппон Телеграф Энд Телефон Корпорейшн Способ масштабируемого кодирования и способ масштабируемого декодирования видеоинформации, устройства для них, программы для них и носитель записи, на котором записаны программы

Also Published As

Publication number Publication date
AU2013367540A1 (en) 2015-06-04
BR122016028746A2 (pt) 2019-08-27
EP2941003A1 (en) 2015-11-04
MX353121B (es) 2017-12-20
MY186153A (en) 2021-06-28
KR20210045502A (ko) 2021-04-26
US20150312578A1 (en) 2015-10-29
EP2941003B1 (en) 2021-07-14
SG11201504698PA (en) 2015-07-30
KR102307026B1 (ko) 2021-10-01
MY201972A (en) 2024-03-27
JP6300046B2 (ja) 2018-03-28
JP6300033B2 (ja) 2018-03-28
BR112015014832A2 (pt) 2017-07-11
AU2017200741B2 (en) 2018-01-25
WO2014103763A1 (ja) 2014-07-03
MX2015007891A (es) 2016-07-15
CN105392016B (zh) 2019-01-18
US10187647B2 (en) 2019-01-22
AU2013367540B2 (en) 2017-02-02
SG10201510265XA (en) 2016-01-28
RU2653315C2 (ru) 2018-05-07
US20190068982A1 (en) 2019-02-28
JP2017076986A (ja) 2017-04-20
JPWO2014103763A1 (ja) 2017-01-12
RU2016141278A3 (ru) 2020-02-28
RU2015124037A (ru) 2017-01-10
CA2895093A1 (en) 2014-07-03
US10412397B2 (en) 2019-09-10
AU2017200741A1 (en) 2017-02-23
KR20150099743A (ko) 2015-09-01
MX367727B (es) 2019-09-04
CN105392016A (zh) 2016-03-09
KR102242721B1 (ko) 2021-04-22
RU2016141278A (ru) 2018-12-14
EP2941003A4 (en) 2016-07-20
CN104885461A (zh) 2015-09-02
CN104885461B (zh) 2019-01-08

Similar Documents

Publication Publication Date Title
JP6508554B2 (ja) 画像処理装置および方法、並びに、プログラム
JP6780761B2 (ja) 画像符号化装置および方法
RU2740164C2 (ru) Устройство и способ обработки изображений
RU2720605C2 (ru) Устройство обработки изображения и способ
US20150043637A1 (en) Image processing device and method
WO2013137047A1 (ja) 画像処理装置および方法
WO2014050731A1 (ja) 画像処理装置および方法
US9930353B2 (en) Image decoding device and method
US20150312581A1 (en) Image processing device and method
US20160286218A1 (en) Image encoding device and method, and image decoding device and method
WO2014141899A1 (ja) 画像処理装置および方法
WO2014002900A1 (ja) 画像処理装置および画像処理方法
US20160037184A1 (en) Image processing device and method

Legal Events

Date Code Title Description
HE9A Changing address for correspondence with an applicant