СПОСОБ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ, СПОСОБ ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ, УСТРОЙСТВО КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ, УСТРОЙСТВО ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ И УСТРОЙСТВО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ
IMAGE ENCODING METHOD, IMAGE DECODING METHOD, IMAGE ENCODING DEVICE, IMAGE DECODING DEVICE AND IMAGE ENCODING AND DECODING DEVICE

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к способу кодирования изображения для кодирования изображения с использованием многочисленных режимов внутрикадрового предсказания.
УРОВЕНЬ ТЕХНИКИ
Примеры методик, относящихся к способу кодирования изображения для кодирования изображения с использованием многочисленных режимов внутрикадрового предсказания, включают в себя методики, раскрытые в непатентной литературе (NPL) 1 и 2.
СПИСОК ЛИТЕРАТУРЫ
НЕПАТЕНТНАЯ ЛИТЕРАТУРА (NPL)
[NPL 1] ITU-T Recommendation H.264 "Advanced video coding for generic audiovisual services", March, 2010
[NPL 2] JCT-VC "WD3: Working Draft 3 of High-Efficiency Video Coding", JCTVC-E603, March 2011
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ПРОБЛЕМА
Неэффективное кодирование изображения вызывает задержку обработки, а также оказывает влияние на декодирование изображения.
Вследствие этого, задача настоящего изобретения состоит в обеспечении способа кодирования изображения для эффективного кодирования информации изображения.
РЕШЕНИЕ ПРОБЛЕМЫ
Чтобы решить указанную выше задачу, способ кодирования изображения, соответствующий варианту настоящего изобретения, является способом кодирования изображения для кодирования изображения с использованием многочисленных режимов внутрикадрового предсказания, причем способ кодирования изображения включает в себя кодирование первых двоичных данных и вторых двоичных данных, причем первые двоичные данные указывают первый режим внутрикадрового предсказания, используемый для кодирования изображения, вторые двоичные данные указывают второй режим внутрикадрового предсказания, используемый для кодирования изображения, причем при кодировании кодируют первый контекстно-адаптивный участок и второй контекстно-адаптивный участок посредством контекстно-адаптивного двоичного арифметического кодирования, причем первый контекстно-адаптивный участок является частью первых двоичных данных, второй контекстно-адаптивный участок является частью вторых двоичных данных, контекстно-адаптивное двоичное арифметическое кодирование является арифметическим кодированием, использующим переменную вероятность, обновляемую на основе кодированных данных, кодируют первый обходной участок и второй обходной участок посредством обходного кодирования, причем первый обходной участок является другой частью первых двоичных данных, второй обходной участок является другой частью вторых двоичных данных, обходное кодирование является арифметическим кодированием, использующим предварительно определенную фиксированную вероятность, и формируют кодированные данные, которые включают в себя первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, первый обходной участок и второй обходной участок, причем первый обходной участок и второй обходной участок включают после первого контекстно-адаптивного участка и второго контекстно-адаптивного участка.
Следует заметить, что эти общие и частные варианты могут быть реализованы с использованием устройства, системы, интегральной схемы, компьютерной программы, считываемого компьютером некратковременного носителя записи, такого как CD-ROM, или произвольного объединения устройств, систем, способов, интегральных схем, компьютерных программ или носителей записи.
ПОЛЕЗНЫЕ ЭФЕКТЫ ИЗОБРЕТЕНИЯ
Настоящее изобретение позволяет эффективно кодировать информацию изображения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 - блок-схема последовательности выполнения операций обработки кодирования в режиме внутрикадрового предсказания.
Фиг. 2 - блок-схема примера конфигурации декодера режима внутрикадрового предсказания.
Фиг. 3 - блок-схема последовательности выполнения операций обработки декодирования в режиме внутрикадрового предсказания.
Фиг. 4 - блок-схема последовательности выполнения операций обработки контекстно-адаптивного двоичного арифметического декодирования способа арифметического декодирования.
Фиг. 5 - блок-схема последовательности выполнения операций обработки контекстно-адаптивного двоичного арифметического декодирования способа арифметического декодирования.
Фиг. 6 - блок-схема последовательности выполнения операций обработки нормализации способа арифметического декодирования.
Фиг. 7 - блок-схема примера конфигурации декодера режима внутрикадрового предсказания, соответствующего варианту 1 осуществления.
Фиг. 8 - блок-схема последовательности выполнения операций обработки, выполняемой декодером в режиме внутрикадрового предсказания, соответствующем варианту 1 осуществления.
Фиг. 9 - пример действия в соответствии с вариантом 1 осуществления.
Фиг. 10 - блок-схема примера конфигурации устройства декодирования изображения, соответствующего варианту 1 осуществления.
Фиг. 11 - блок-схема конфигурации декодера режима внутрикадрового предсказания, соответствующего модификации варианта 1 осуществления.
Фиг. 12 - пример строк двоичного кода, соответствующего модификации варианта 1 осуществления.
Фиг. 13 - блок-схема последовательности выполнения операций обработки, выполняемой декодером режима внутрикадрового предсказания, соответствующим модификации варианта 1 осуществления.
Фиг. 14 - синтаксис, показывающий пример структуры данных, соответствующей модификации варианта 1 осуществления.
Фиг. 15 - блок-схема последовательности выполнения операций обработки кодирования режимов внутрикадрового предсказания, соответствующего варианту 2 осуществления.
Фиг. 16 - блок-схема примера конфигурации устройства кодирования изображения, соответствующего варианту 2 осуществления.
Фиг. 17 - блок-схема примера конфигурации устройства кодирования изображения, соответствующего варианту 3 осуществления.
Фиг. 18 - блок-схема последовательности выполнения операций обработки, выполняемой устройством кодирования изображения, соответствующим варианту 3 осуществления.
Фиг. 19 - блок-схема примера конфигурации устройства декодирования изображения, соответствующего варианту 3 осуществления.
Фиг. 20 - блок-схема последовательности выполнения операций обработки, выполняемой устройством декодирования изображения, соответствующим варианту 3 осуществления.
Фиг. 21 - пример синтаксиса, соответствующего варианту 3 осуществления.
Фиг. 22 - арифметическое кодирование яркости, соответствующее варианту 3 осуществления.
Фиг. 23 - арифметическое кодирование цветности, соответствующее варианту 3 осуществления.
Фиг. 24 - блоки изображения, соответствующие варианту 3 осуществления.
Фиг. 25 - первая модификация синтаксиса, соответствующая варианту 3 осуществления.
Фиг. 26 - вторая модификация синтаксиса, соответствующая варианту 3 осуществления.
Фиг. 27 - третья модификация синтаксиса, соответствующая варианту 3 осуществления.
Фиг. 28 - общая конфигурация системы предоставления контента для реализации услуг по распространению контента.
Фиг. 29 - общая конфигурация цифровой широковещательной системы.
Фиг. 30 - блок-схема примера конфигурации телевизора.
Фиг. 31 - блок схема примера конфигурации блока воспроизведения/записи информации, считывающего и записывающего информацию с носителя записи и на носитель записи, являющийся оптическим диском.
Фиг. 32 - блок-схема примера конфигурации носителя записи, являющегося оптическим диском.
Фиг. 33А - пример сотового телефона.
Фиг. 33В - блок-схема примера конфигурации сотового телефона.
Фиг. 34 - структура мультиплексированных данных.
Фиг. 35 - пример мультиплексирования каждого потока в мультиплексированные данные.
Фиг. 36 - более подробный пример того, как хранится видеопоток в потоке пакетов PES.
Фиг. 37 - структура пакетов TS и исходных пакетов в мультиплексированных данных.
Фиг. 38 - структура данных для PMT.
Фиг. 39 - внутренняя структура информации мультиплексированных данных.
Фиг. 40 - внутренняя структура информации атрибутов потока.
Фиг. 41 - этапы идентификации видеоданных.
Фиг. 42 - пример конфигурации интегральной схемы для реализации способа кодирования движущегося изображения и способа декодирования движущегося изображения, соответствующего каждому из вариантов осуществления.
Фиг. 43 - конфигурация переключения между частотами возбуждения.
Фиг. 44 - этапы идентификации видеоданных и переключения между частотами возбуждения.
Фиг. 45 - пример таблицы поиска, в которой стандарты видеоданных связаны с частотами возбуждения.
Фиг. 46А - пример конфигурации для совместного использования модуля блока обработки сигналов.
Фиг. 46В - другой пример конфигурации для совместного использования модуля блока обработки сигналов.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
(БАЗОВЫЕ СВЕДЕНИЯ, ОБРАЗУЮЩИЕ ОСНОВУ НАСТОЯЩЕГО ИЗОБРЕТЕНИЯ)
К примерам стандарта видеокодирования для сжатия видеоданных относятся стандарт сектора стандартизации Международного союза электросвязи (ITU-T) типа H.26x и стандарт ISO/IEC типа MPEG-x. Последним и наиболее передовым стандартом видеокодирования является стандарт типа H.264/MPEG-4 AVC (NPL 1). В настоящее время стандарт высокоэффективного видеокодирования (HEVC), являющийся стандартом кодирования изображения следующего поколения, рассматривается в качестве следующего стандарта (NPL 2).
В качестве используемой в этих стандартах методики применяют кодирование с межкадровым предсказанием для сжатия видеоданных со ссылкой на межкадровую информацию о пикселях изображения и кодирование с внутрикадровым предсказанием для сжатия видеоданных со ссылкой на внутрикадровую информацию о пикселях изображения.
При внутрикадровом кодировании направления формирования предсказанных значений пикселей из периферийных значений пикселей и т.п. различают в соответствии с режимом внутрикадрового предсказания (IntraPredMode). Если используется кодирование с внутрикадровым предсказанием, то режим внутрикадрового предсказания выбирается из множества режимов внутрикадрового предсказания.
Количество таких многочисленных режимов внутрикадрового предсказания (intraPredModeNum) определяется в соответствии с размером блока, подлежащего кодированию. Например, количество режимов внутрикадрового предсказания определяется в соответствии со значением log2TrafoSize, указывающим размер блока и тип блока предсказания (PU). Более конкретно, для блока, у которого log2TrafoSize имеет значение 3 или больше и 5 или меньше, полагают, что значение intraPredModeNum должно быть установлено равным 34 и следует подготовить 34 режима внутрикадрового предсказания.
Значение (или метка) режима внутрикадрового предсказания указывает направление предсказания. Например, 0 указывает вертикальное направление, 1 указывает горизонтальное направление, 2 указывает отсутствие направления, называемое режимом предсказания DC, и каждое из значений 3 или более (3 или более и 33 или менее для блока, имеющего предварительно определенный размер) указывает связанное с ним направление.
Режим внутрикадрового предсказания, соответствующий яркости, и режим внутрикадрового предсказания, соответствующий цветности, могут отличаться друг от друга. В дальнейшем, режим внутрикадрового предсказания, соответствующий яркости, упоминается как режим предсказания яркости, а режим внутрикадрового предсказания, соответствующий цветности, упоминается как режим предсказания цветности.
Информация о режиме для идентификации того, какой режим из множества режимов внутрикадрового предсказания используется для блока, для которого должно быть выполнено внутрикадровое предсказание, кодируется как информация блока предсказания. В настоящее время рассматривается включение в информацию о режиме следующих трех элементов для режима предсказания яркости.
Первым элементом является prev_intra_luma_pred_flag (флаг, предшествующий внутрикадровому предсказанию яркости). "prev_intra_luma_pred_flag" является флагом для определения, следует ли использовать значение режима внутрикадрового предсказания смежного блока предсказания, который был ранее кодирован (декодирован).
Вторым элементом является mpm_idx (индекс наиболее вероятного режима). "mpm_idx" является индексом, указывающим, какой наиболее вероятный режим должен быть выбран, если для режима внутрикадрового предсказания существуют два или более возможных кандидатов (наиболее вероятных режимов). Например, значением по умолчанию для mpm_idx является 0, указывающий, что должен быть выбран первый наиболее вероятный режим.
Третьим элементом является rem_intra_luma_pred_mod (остающийся режим внутрикадрового предсказания яркости). "rem_intra_luma_pred_mod" является знаком (значением), связанным с режимом предсказания яркости.
Кроме того, предполагается включать intra_chroma_pred_mode (режим внутрикадрового предсказания цветности) в информацию о режиме для режима внутрикадрового предсказания, соответствующего цветности. "intra_chroma_pred_mode" является знаком (значением), соответствующим режиму предсказания цветности.
В процессе декодирования такая информация о режиме извлекается из строки кода предварительно определенным способом декодирования с переменной длиной, таким как способ арифметического декодирования. Затем режим внутрикадрового предсказания извлекается с использованием информации о режиме. Альтернативно, извлекается информация для извлечения режима внутрикадрового предсказания. Например, режим предсказания яркости выражается числом 0 или более и 33 или менее и является одним из 34 режимов. Дополнительно, режим предсказания цветности выражается числом 0 или более и 4 или менее и является одним из пяти режимов.
На фиг. 1 представлена блок-схема последовательности выполнения операций обработки кодирования в режиме внутрикадрового предсказания. При выполнении арифметического кодирования режим предсказания яркости представляется в двоичной форме как "бины" (двоичные значения) (SB00). Затем в переменную N подставляется 1 (SB01).
Затем получают значение вероятности, соответствующее контекстному индексу ctxIdx для режима предсказания яркости (более конкретно, индекс pStateIdx для ссылки на значение вероятности) (SB02). Затем выполняют арифметическое кодирование на N-ом бите, основываясь на полученном значении вероятности (SB03). Значение вероятности (pStateIdx), соответствующее ctxIdx, обновляется на основе того, является ли N-ый кодированный бит 0 или 1 (SB04).
Если кодирование для всех битов еще не закончено (Нет на этапе SB06), 1 прибавляется к N (SB05) и кодируется следующий бит.
Следует заметить, что ctxIdx для режима предсказания яркости является предварительно определенным индексом. При арифметическом кодировании N-битного сигнала одного и того же типа используется значение вероятности (pStateIdx), соответствующее одному и тому же ctxIdx. Более конкретно, для кодирования используется значение вероятности (pStateIdx), обновляемое всякий раз, когда кодируется один бит. Когда кодирование завершено для всех двоичных битов (Да на этапе SB06), обработка заканчивается.
Кроме того, значение intra_chroma_pred__mode, которое указывает режим предсказания цветности, получается подобным образом в битах переменной длины для цветности. Первый бит, указывающий intra_chroma_pred_mode, кодируется на основе значения вероятности (pStateIdx), соответствующего ctxIdx, извлеченному в соответствии с состояниями верхних и левых блоков. Последующие биты кодируют, основываясь на значении вероятности (pStateIdx), соответствующем предварительно определенному ctxIdx. Кроме того, значение вероятности обновляется после кодирования первого бита, как в случае яркости.
Ниже приводится описание декодирования переменной длины в режиме предсказания яркости и режиме предсказания цветноти с использованием фиг. 2 и 3.
На фиг. 2 представлена блок-схема примера конфигурации декодера в режимах внутрикадрового предсказания.
На фиг. 3 представлена блок-схема последовательности работы декодера X00 в режимах внутрикадрового предсказания, показанного на фиг. 2.
Сначала декодер X01 в режиме предсказания яркости получает битовый поток BS и значение вероятности для режима предсказания яркости (SA01). Затем декодер X01 в режиме предсказания яркости декодирует бит, указывающий режим предсказания яркости, со ссылкой на полученное значение вероятности (SA02). После этого декодер X01 в режиме предсказания яркости обновляет значение вероятности, основываясь на том, является ли декодированный бит 0 или 1 (SA02). Следует заметить, что ниже описывают подробности арифметического декодирования.
Если декодированный бит не является последним битом или, другими словами, если декодированный бит не является последним бином (двоичной строки) (Нет в SA04), декодер X01 в режиме предсказания яркости снова получает значение вероятности для режима предсказания яркости. Если декодированный бит является последним битом, декодер X01 в режиме предсказания яркости прекращает обработку декодирования в режиме предсказания яркости и начинает обработку декодирования в режиме предсказания цветности. Следует заметить, что является ли декодированный бит последним битом, определяется в соответствии с предварительно определенным правилом (описано в NPL 2).
Затем декодер X02 в режиме предсказания цветности получает битовый поток BS и значение вероятности для режима предсказания цветности (SA05). Затем декодер X02 в режиме предсказания цветности декодирует бит, указывающий режим предсказания цветности, со ссылкой на полученное значение вероятности (SA06). После этого декодер X02 в режиме предсказания цветности обновляет значение вероятности, основываясь на том, является ли декодированный бит 0 или 1 (SA07).
Если декодированный бит не является последним битом (Нет на этапе SA08), декодер X02 в режиме предсказания цветности снова получает значение вероятности для режима предсказания цветности. Если декодированный бит является последним битом, декодер X02 в режиме предсказания цветности прекращает обработку декодирования в режиме предсказания цветности. Следует заметить, что является ли декодированный бит последним битом, определяется в соответствии с предварительно определенным правилом (описано в NPL 2), как и в случае яркости.
Ниже приводится описание арифметического декодирования в режиме предсказания яркости и режиме предсказания цветности. Примером методики, соответствующей H.264 или HEVC, является контекстно-адаптивное двоичное арифметическое кодирование (CABAC). Арифметическое декодирование в режиме предсказания яркости и в режиме предсказания цветности выполняется на основе CABAC. Ниже приводится описание CABAC с использованием фиг. 4, 5 и 6.
На фиг. 4 представлена блок-схема последовательности выполнения операций обработки контекстно-адаптивного двоичного арифметического декодирования. Следует заметить, что фиг. 4 является схемой, взятой из NPL 1, и обработка контекстно-адаптивного двоичного арифметического декодирования является такой, как описано в NPL 1, если иное не описано конкретно.
При обработке арифметического декодирования сначала вводится контекстный индекс ctxIdx, определенный на основании типа сигнала.
Затем получают qCodIRangeIdx из первого параметра codIRange, который указывает состояние арифметического декодирования. Затем получают pStateIdx, который является значением состояния, соответствующим ctxIdx. Затем получают codIRangeLPS, обращаясь к таблице rangeTableLPS, используя qCodIRangeIdx и pStateIdx.
Следует заметить, что это codIRangeLPS указывает значение, соответствующее значению codIRange, которое указывает состояние арифметического декодирования, когда появилось LPS (указывающее символ 0 или 1, в зависимости от того, чья вероятность появления меньше).
Кроме того, значение, полученное вычитанием значения codIRangeLPS, упомянутого выше, из текущего значения codIRange, помещается в codIRange (SC01). Затем сравнивают (SC02) вычисленное значение codIRange и второй параметр codIOffset, который указывает состояние арифметического декодирования.
Если codIOffset равно или больше, чем codIRange (Да на этапе SC02), принимается решение, что символ LPS появился. Затем значение binVaI, которое является декодированным выходным значением, устанавливается как значение, отличное от vaIMPS. Конкретно, если vaIMPS = 1, binVal устанавливается равным 0, и если vaIMPS = 0, то binVaI устанавливается равным 1. Следует заметить, что vaIMPS равно 0 или 1, что является конкретным значением MPS, которое указывает символ 0 или 1, в зависимости от того, вероятность появления какого значения выше.
Дополнительно, второй параметр codIOffset, который указывает состояние арифметического декодирования, устанавливается на значение, полученное вычитанием codIRange из codIOffset. Первый параметр codIRange, указывающий состояние арифметического декодирования, устанавливается на значение вычисленного codIRange LPS (SC03).
Если pStateIdx равен 0 (Да на этапе SC05), вероятность LPS превышает вероятность MPS. Соответственно, vaIMPS изменяется. Конкретно, если vaIMPS=1, в vaIMPS устанавливается 0, тогда как если vaIMPS=0, в vaIMPS устанавливается 1 (SC06). Если pStateIdx не равен 0 (Нет на этапе SC05), vaIMPS сохраняется неизменным. Затем pStateIdx обновляется, основываясь на таблице переходов transIdxLPS, соответствующей случаю, когда произошел LPS (SC07).
Если codIOffset равно или больше, чем codIRange (Нет на этапе SC02), принимается решение, что появился символ MPS. Затем vaIMPS устанавливается в binVal, которое является декодированным выходным значением. Дополнительно, pStateIdx обновляется, основываясь на таблице переходов transIdxMPS, соответствующей случаю, когда произошел MPS (SC04).
И наконец, выполняется обработка нормализации (RenormD) (SC08). После этого арифметическое декодирование заканчивается.
При обработке контекстно-адаптивного двоичного арифметического декодирования контекстный индекс, соответствующий вероятности появления символа, которая является вероятностью появления двоичного символа, переключается в соответствии с условиями. Например, контекстный индекс переключается в соответствии со значением смежного блока. Соответственно, поддерживается порядок обработки при обработке контекстно-адаптивного двоичного арифметического декодирования.
На фиг. 5 представлена блок-схема обработки обходного арифметического декодирования (обработки обходного декодирования). Следует заметить, что фиг. 5 является блок-схемой, взятой из NPL 1, и обработка контекстно-адаптивного двоичного арифметического декодирования является такой, как описано в NPL 1, если иное не описано конкретно.
Сначала второй параметр codIOffset, указывающий состояние арифметического декодирования, сдвигается влево (дублируется) и из битового потока считывается бит. Если считанным битом является 1, то 1 добавляется к дублированному codIOffset. Если считанным битом является 0, то codIOffset устанавливается на значение, такое, как есть, то есть на (дублированное) значение (SD01).
Далее, если codIOffset равен или больше первого параметра codIRange, который указывает состояние арифметического декодирования (Да на этапе SD02), binVal, являющееся декодированным выходным значением, устанавливается на 1.
Затем codIOffset устанавливается на значение, полученное вычитанием codIRange из codIOffset (SD03). Если codIOffset меньше, чем первый параметр codIRange, который указывает состояние арифметического декодирования (Нет на этапе SD02), binVal, являющееся декодированным выходным значением, устанавливается на 0.
На фиг. 6 представлена блок-схема последовательности операций для подробного описания обработки нормализации (RenormD, SC08), показанного на фиг. 4. Фиг. 6 является чертежом, взятым из NPL 1, и обработка нормализации является такой, как описано в NPL 1, если иное не описано конкретно.
Сначала определяется, является ли первый параметр codIRange, указывающий состояние арифметического декодирования, меньшим, чем 0x100 в шестнадцатеричной системе (256 в десятичной системе счисления) (SE01).
Затем, если codIRange меньше, чем 0x100 (Да на этапе SE01), codIRange сдвигается влево (дублируется). Кроме того, второй параметр codIOffset, который указывает состояние арифметического декодирования, сдвигается влево. Затем из битового потока считывается бит. Если считанным битом является 1, то 1 добавляется к дублированному codIOffset. Если считанным битом является 0, то codIOffset устанавливается на значение, такое, как есть, то есть на (дублированное) значение (SD02).
Описанная выше обработка повторяется и когда codIRange в конце концов достигнет значения 0x100 или более (Нет на этапе SE01), обработка нормализации заканчивается.
Арифметическое декодирование выполняется в режиме внутрикадрового предсказания, путем выполнения обработки, показанной на фиг. 4, 5 и 6.
Однако, режимы внутрикадрового предсказания при кодировании и декодировании могут требовать времени. Например, кодовая строка для идентификации режима предсказания яркости и режима предсказания цветности, которые соответственно выбирают из 34 режимов предсказания яркости и 5 режимов предсказания цветности, не будет короткой. Декодирование такой кодовой строки отнимает сравнительно много времени. Таким образом, из-за сравнительно длительного времени для каждого блока, задержка в целом может становиться заметной.
Соответственно, при арифметическом кодировании и арифметическом декодировании в режимах внутрикадрового предсказания полезны способ кодирования изображения и способ декодирования изображения, которые предотвращают ухудшение эффективности кодирования и которые увеличивают степень параллельности процессов.
Для этой цели, способ кодирования изображения, соответствующий варианту настоящего изобретения, является способом кодирования изображения для кодирования изображения с использованием многочисленных режимов внутрикадрового предсказания, причем способ кодирования изображения содержит кодирование первых двоичных данных и вторых двоичных данных, причем первые двоичные данные указывают первый режим внутрикадрового предсказания, используемый для кодирования изображения, вторые двоичные данные указывают второй режим внутрикадрового предсказания, используемый для кодирования изображения, причем при кодировании кодируют первый контекстно-адаптивный участок и второй контекстно-адаптивный участок посредством контекстно-адаптивного двоичного арифметического кодирования, причем первый контекстно-адаптивный участок является частью первых двоичных данных, второй контекстно-адаптивный участок является частью вторых двоичных данных, контекстно-адаптивное двоичное арифметическое кодирование является арифметическим кодированием, использующим переменную вероятность, обновляемую на основе кодированных данных, кодируют первый обходной участок и второй обходной участок посредством обходного кодирования, причем первый обходной участок является другой частью первых двоичных данных, второй обходной участок является другой частью вторых двоичных данных, обходное кодирование является арифметическим кодированием, использующим предварительно определенную фиксированную вероятность, и формируют кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, первый обходной участок и второй обходной участок, причем первый обходной участок и второй обходной участок включают вслед за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком.
Далее формируют кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, являются смежными. Поэтому степень параллельности обработки декодирования может увеличиться. Таким образом, режимы внутрикадрового предсказания эффективно кодируются.
Например, при кодировании могут кодироваться первые двоичные данные и вторые двоичные данные, причем первые двоичные данные указывают первый режим внутрикадрового предсказания, используемый для предсказания яркости изображения, а вторые двоичные данные указывают второй режим внутрикадрового предсказания, используемый для предсказания цветности изображения.
Далее формируют кодированные данные, в которых многочисленные участки, для которых используют обходное декодирование, делаются смежными посредством объединения режима предсказания яркости и режима предсказания цветности. Поэтому степень параллельности обработки декодирования может увеличиться.
Например, при кодировании могут быть сформированы кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок в следующем порядке: первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок.
Далее формируют кодированные данные, в которых фрагменты вторых двоичных данных, указывающих второй режим внутрикадрового предсказания, являются смежными. Поэтому степень сложности обработки снижается.
Например, при кодировании, когда вторые двоичные данные не содержат второй обходной участок, вторые двоичные данные, в целом, могут кодироваться как второй контекстно-адаптивный участок посредством контекстно-адаптивного двоичного арифметического кодирования, чтобы сформировать кодированные данные, не содержащие второй обходной участок.
Далее, вторые двоичные данные кодируют соответственно, даже если участок, для которого используют обходное кодирование, не присутствует во вторых двоичных данных, указывающих второй режим внутрикадрового предсказания.
Например, при кодировании могут кодироваться первые двоичные данные и вторые двоичные данные, причем первые двоичные данные указывают первый режим внутрикадрового предсказания, используемый для предсказания яркости первого блока, включенного в изображение, а вторые двоичные данные указывают второй режим внутрикадрового предсказания, используемый для предсказания яркости второго блока, включенного в изображение.
Далее формируют кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, делают смежными посредством объединения режимов предсказания яркости. Поэтому степень параллельности обработки декодирования может увеличиться.
Например, при кодировании могут кодироваться вторые двоичные данные, указывающие второй режим внутрикадрового предсказания, используемый для предсказания цветности блока, включенного в изображение, могут кодироваться первые двоичные данные, третьи двоичные данные, четвертые двоичные данные и пятые двоичные данные, соответственно указывающие первый режим внутрикадрового предсказания, третий режим внутрикадрового предсказания, четвертый режим внутрикадрового предсказания и пятый режим внутрикадрового предсказания, которые используют для предсказания яркости четырех субблоков, составляющих блок, когда третьи двоичные данные, четвертые двоичные данные и пятые двоичные данные кодируют, третий контекстно-адаптивный участок третьих двоичных данных, четвертый контекстно-адаптивный участок четвертых двоичных данных и пятый контекстно-адаптивный участок пятых двоичных данных могут кодироваться посредством контекстно-адаптивного двоичного арифметического кодирования, и третий обходной участок третьих двоичных данных, четвертый обходной участок четвертых двоичных данных и пятый обходной участок пятых двоичных данных могут кодироваться посредством обходного кодирования и могут формироваться кодированные данные, содержащие первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок в следующем порядке: первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок.
Далее, даже если для предсказания блока используют четыре режима предсказания яркости и один режим предсказания цветности, формируют кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, являются смежными. Поэтому степень параллельности обработки декодирования может увеличиться.
Например, при кодировании первый обходной участок и второй обходной участок могут кодироваться параллельно.
Далее, многочисленные участки, для которых используется обходное кодирование, кодируют параллельно. Таким образом, многочисленные режимы внутрикадрового предсказания эффективно кодируются.
Например, при кодировании может делаться переключение на одну из первой обработки кодирования, соответствующей первому стандарту, и второй обработки кодирования, соответствующей второму стандарту, и может быть сформирован битовый поток, содержащий информацию идентификации, указывающую первый стандарт или второй стандарт, которому соответствует упомянутая одна из первой обработки кодирования и второй обработки кодирования, и когда делается переключение на первую обработку кодирования, могут формироваться кодированные данные, содержащие первый обходной участок и второй обходной участок, и может формироваться битовый поток, содержащий информацию идентификации и кодированные данные.
Далее, устройство декодирования уведомляется о формате обработки кодирования. Таким образом, устройство декодирования может соответствующим образом переключать обработку декодирования.
Способ декодирования изображения, соответствующий варианту настоящего изобретения, может быть способом декодирования изображения для декодирования изображения с использованием многочисленных режимов внутрикадрового предсказания, причем способ декодирования изображения содержит декодирование первых двоичных данных и вторых двоичных данных, где первые двоичные данные указывают первый режим внутрикадрового предсказания, который должен использоваться для декодирования изображения, вторые двоичные данные указывают второй режим внутрикадрового предсказания, который должен использоваться для декодирования изображения, в котором при декодировании получают кодированные данные, содержащие первый контекстно-адаптивный участок, первый обходной участок и второй обходной участок, причем первый контекстно-адаптивный участок является частью первых двоичных данных, второй контекстно-адаптивный участок является частью вторых двоичных данных, первый обходной участок является другой частью первых двоичных данных, второй обходной участок является другой частью вторых двоичных данных, первый обходной участок и второй обходной участок помещены после первого контекстно-адаптивного участка и второго контекстно-адаптивного участка, первый контекстно-адаптивный участок и второй контекстно-адаптивный участок декодируют посредством контекстно-адаптивного двоичного арифметического кодирования, являющегося арифметическим декодированием, использующим переменную вероятность, обновляемую на основе декодированных данных, и первый обходной участок и второй обходной участок декодируют посредством арифметического деления, используя предварительно определенную фиксированную вероятность.
Далее, формируют кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, являются смежными. Поэтому степень параллельности обработки декодирования может увеличиться. Таким образом, режимы внутрикадрового предсказания эффективно декодируются.
Например, при декодировании могут декодироваться первые двоичные данные и вторые двоичные данные, причем первые двоичные данные указывают первый режим внутрикадрового предсказания, который должен использоваться для предсказания яркости изображения, а вторые двоичные данные указывают второй режим внутрикадрового предсказания, который должен использоваться для предсказания цветности изображения.
Далее формируют кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, делаются смежными посредством объединения режима внутрикадрового предсказания яркости и режима внутрикадрового предсказания цветности. Поэтому степень параллельности обработки декодирования может увеличиться.
Например, при кодировании могут быть сформированы кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок в следующем порядке: первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок.
Далее формируют кодированные данные, в которых фрагменты вторых двоичных данных, указывающие второй режим внутрикадрового предсказания, являются смежными. Поэтому степень сложности обработки снижается.
Например, при декодировании, когда полученные кодированные данные не содержат второй обходной участок, второй контекстно-адаптивный участок может быть декодирован посредством контекстно-адаптивного двоичного арифметического декодирования, чтобы декодировать все вторичные двоичные данные.
Далее, вторые двоичные данные декодируют соответственно, даже если участок, для которого используется обходное кодирование, не присутствует во вторых двоичных данных, указывающих второй режим внутрикадрового предсказания.
Например, при декодировании могут декодироваться первые двоичные данные и вторые двоичные данные, причем первые двоичные данные указывают первый режим внутрикадрового предсказания, который должен использоваться для предсказания яркости первого блока, включенного в изображение, а вторые двоичные данные указывают второй режим внутрикадрового предсказания, который должен использоваться для предсказания яркости второго блока, включенного в изображение.
Далее получают кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, делаются смежными посредством объединения многочисленных режимов предсказания яркости. Поэтому степень параллельности обработки декодирования может увеличиться.
Например, при декодировании могут кодировать вторые двоичные данные, указывающие второй режим внутрикадрового предсказания, который должен использоваться для предсказания цветности блока, включенного в изображение, могут декодироваться первые двоичные данные, третьи двоичные данные, четвертые двоичные данные и пятые двоичные данные, которые, соответственно, указывают первый режим внутрикадрового предсказания, третий режим внутрикадрового предсказания, четвертый режим внутрикадрового предсказания и пятый режим внутрикадрового предсказания, которые должны использоваться для предсказания яркости четырех субблоков, составляющих блок, когда третьи двоичные данные, четвертые двоичные данные и пятые двоичные данные декодированы, третий контекстно-адаптивный участок третьих двоичных данных, четвертый контекстно-адаптивный участок четвертых двоичных данных и пятый контекстно-адаптивный участок пятых двоичных данных могут декодироваться посредством контекстно-адаптивного двоичного арифметического декодирования, и третий обходной участок третьих двоичных данных, четвертый обходной участок четвертых двоичных данных и пятый обходной участок пятых двоичных данных могут декодироваться посредством обходного декодирования и, когда кодированные данные получены, могут быть получены кодированные данные, содержащие первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок в следующем порядке: первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок.
Далее, получают кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, являются смежными, даже если для предсказания блока используют четыре режима предсказания яркости и один режим предсказания цветности. Поэтому степень параллельности обработки декодирования может увеличиться.
Например, при декодировании первый обходной участок и второй обходной участок могут декодироваться параллельно.
Далее, многочисленные участки, для которых используют обходное декодирование, декодируются параллельно. Таким образом, многочисленные режимы внутрикадрового предсказания эффективно декодируются.
Например, при декодировании может быть получен битовый поток, содержащий информацию идентификации, указывающую первый стандарт или второй стандарт, и, основывваясь на информации идентификации, можно сделать переключение на одну из первой обработки декодирования, соответствующей первому стандарту, и второй обработки декодирования, соответствующей второму стандарту, и когда переключение делается на первую обработку декодирования, кодированные данные могут быть получены из битового потока, причем кодированные данные содержат первый обходной участок и второй обходной участок, следующие за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком.
Далее обработка декодирования может переключаться соответствующим образом, основываясь на формате обработки кодирования, выполняемой устройством кодирования.
Дополнительно, эти общие и частные варианты осуществления могут быть реализованы с использованием устройства, системы, интегральной схемы, компьютерной программы или считываемого компьютером некратковременного носителя записи, такого как CD-ROM, или произвольной комбинации устройств, систем, способов, интегральных схем, компьютерных программ или носителей записи.
Ниже со ссылкой на чертежи приводится конкретное описание способа кодирования изображения и способа декодирования изображения, соответствующих варианту настоящего изобретения. Каждый из описанных ниже вариантов осуществления представляет конкретный пример настоящего изобретения. Числовые значения, формы, материалы, компоненты, расположение и соединение компонентов, этапы, порядок выполнения этапов и т.п., показанные в нижеследующих вариантах осуществления, являются просто примерами и не предназначены для ограничения настоящего изобретения. Поэтому, для компонентов в приведенных ниже вариантах осуществления, компоненты, не повторяющиеся ни в каких независимых пунктах формулы изобретения, определяющих самую широкую концепцию, описываются как произвольные компоненты.
ВАРИАНТ 1 ОСУЩЕСТВЛЕНИЯ
На фиг. 7 приведена блок-схема, показывающая конфигурацию декодера режима внутрикадрового предсказания, выполняющего декодирование с переменной длиной режима предсказания яркости и режима предсказания цветности, являющихся режимами внутрекадрового предсказания, соответствующими яркости и цветности в соответствии с вариантом 1 осуществления.
Декодер 100 режима внутрикадрового предсказания, соответствующий настоящему изобретению, содержит декодер 101 префикса режима предсказания яркости, декодер 102 суффикса режима предсказания яркости, декодер 103 префикса режима предсказания цветности, декодер 104 суффикса режима предсказания цветности, блок 105 воссоздания режима предсказания яркости и блок 106 воссоздания режима предсказания цветности. Декодер 100 внутрикадрового предсказания воссоздает из битового потока BS режим LUMA предсказания яркости и режим CRM предсказания цветности.
Подробное описание порядка работы декодера 100 режима внутрикадрового предсказания, соответствующего настоящему варианту осуществления, приводится со ссылкой на фиг. 8. На фиг. 8 представлена блок-схема последовательности выполнения операций, показывающая порядок работы декодера 100 режима внутрикадрового предсказания.
Декодер 100 режима внутрикадрового предсказания получает битовый поток BS. Затем декодер 101 префикса режима предсказания яркости получает значение вероятности для префикса режима предсказания яркости (S201). Это значение вероятности идентифицируется контекстным индексом ctxIdx, предварительно определенным для префикса режима предсказания яркости.
Затем декодер 101 префикса режима предсказания яркости декодирует бит, указывающий режим предсказания яркости, со ссылкой на полученное значение вероятности (S202). После этого декодер X01 префикса режима предсказания яркости обновляет значение вероятности, основываясь на том, является ли декодированный бит 0 или 1 (S203). Следует заметить, что для арифметического декодирования может использоваться способ, описанный выше, или может использоваться способ, модифицированный для повышения эффективности.
Если декодированный бит не является последним битом или, конкретно, если декодированный бит не является последним бином (двоичной строки) (Нет на этапе S204), декодер 101 префикса режима предсказания яркости снова получает значение вероятности для префикса режима предсказания яркости. С другой стороны, если декодированный бит является последним битом, декодер 100 режима внутрикадрового предсказания прекращает обработку декодирования префикса в режиме предсказания яркости и начинает обработку декодирования префикса в режиме предсказания цветности.
Следует заметить, что является ли декодированный бит последним битом, определяется в соответствии с предварительно определенным правилом. Например, является ли декодированный бит последним битом может быть определено в соответствии с длиной бина или может быть определено в соответствии со значением бина (например, посредством декодирования получают 0 или 1). Если длина бина равна 1, обработка упрощается и ожидается высокая скорость обработки. Если значение бина используется для определения, ожидается повышение эффективности кодирования, поскольку возможно эффективное управление длиной бина.
Затем декодер 103 префикса режима предсказания цветности получает битовый поток BS и получает значение вероятности для префикса режима предсказания цветности (S205). Это значение вероятности идентифицируется посредством контекстного индекса ctxIdx, предварительно определенного для префикса режима предсказания цветности.
Затем декодер 103 префикса режима предсказания цветности декодирует бит, указывающий префикс режима предсказания цветности, со ссылкой на полученное значение вероятности (S206). После этого декодер X01 префикса режима предсказания цветности обновляет значение вероятности, основываясь на том, является ли декодированный бит 0 или 1 (S207).
Если декодированный бит не является последним битом или, другими словами, если декодированный бит не является последним бином (двоичной строки) (Нет на этапе S208), декодер 103 префикса режима предсказания цветности снова получает значение вероятности для префикса режима предсказания цветности. Если декодированный бит является последним битом, декодер 100 режима внутрикадрового предсказания прекращает обработку декодирования префикса режима предсказания цветности. Следует заметить, что является ли декодированный бит последним битом, определяется в соответствии с предварительно определенным правилом, как в случае яркости.
Далее, декодер 102 суффикса режима предсказания яркости выполняет обработку декодирования суффикса режима предсказания яркости (S209). Обработка декодирования суффикса режима предсказания яркости соответствует обходной обработке арифметического декодирования. Хотя вероятность обновляется при обработке декодирования префикса режима предсказания яркости, вероятность не обновляется при обработке декодирования суффикса режима предсказания яркости. Поэтому для суффикса режима предсказания яркости могут быть выполнены высокоскоростная обработка и параллельная обработка.
Далее, декодер 104 суффикса режима предсказания цветности выполняет обработку декодирования суффикса режима предсказания цветности (S210). Обработка декодирования суффикса режима предсказания цветности аналогично соответствует обходной обработке арифметического декодирования. Хотя вероятность обновляется при обработке декодирования префикса режима предсказания цветности, вероятность не обновляется при обработке декодирования суффикса режима предсказания цветности. Поэтому для суффикса режима предсказания цветности могут быть выполнены высокоскоростная обработка и параллельная обработка.
Наконец, блок 105 воссоздания режима предсказания яркости воссоздает режим LUMA предсказания яркости из префикса режима предсказания яркости и суффикса режима предсказания яркости. Кроме того, блок 106 воссоздания режима предсказания цветности воссоздает режим CRM предсказания цветности из префикса режима предсказания цветности и суффикса режима предсказания цветности.
Следует заметить, что префикс соответствует участку, на котором частота появления символов значительно изменяется. Соответственно, эффективность кодирования возрастает посредством кодирования префикса с помощью контекстно-адаптивного двоичного арифметического кодирования. Затем, во время декодирования выполняется контекстно-адаптивное двоичное арифметическое декодирование (фиг. 4).
Суффикс представляется как участок, соответствующий большому значению индекса. Соответственно, диапазон значений, указанный суффиксом, является большим. Таким образом, изменение частоты появления символов в строке двоичного кода, соответствующей суффиксу, является малым. Поэтому вероятность появления символов предполагается равной 50%. Таким образом, за счет обходного кодирования объем обработки снижается. Затем, когда декодируется суффикс, выполняется обходное декодирование (фиг. 5).
Обработка нормализации выполняется в соответствии с блок-схемой последовательности выполнения операций, показанной на фиг. 6. Ниже с использованием фиг. 9 приводится описание примера действия обработки декодирования, показанной на фиг. 8.
На фиг. 9 представлена блок-схема для описания порядка работы в соответствии с вариантом 1 осуществления. Часть (а) на фиг. 9 показывает пример случая, когда множество процессов выполняют последовательно. Эти процессы выполняют в следующем порядке: обработка декодирования префикса режима предсказания яркости (LUMA_PREFIX); обработка декодирования префикса режима предсказания цветности (CRM_PREFIX); обработка декодирования суффикса режима предсказания яркости (LUMA_SUFFIX); и обработка декодирования суффикса режима предсказания цветности (CRM_SUFFIX).
Кроме того, при параллельно выполняемой обработке для повышения скорости в то же время увеличивается используемое разрешение и широко используется высокоскоростная связь в реальном времени. При этом для обработки декодирования префикса используется обработка контекстно-адаптивного двоичного арифметического декодирования. В результате, обработку считывания и обработку обновления вероятности появления символов выполняют последовательно. Следовательно, обработка декодирования префикса не выполняется параллельно. Напротив, обработка декодирования суффикса может выполняться параллельно побитово, как показано на фиг. 9(b).
Части (c) и (d) на фиг. 9 демонстрируют пример случая, в котором декодируют префиксы и суффиксы битовых потоков и режим предсказания цветности кодируется после режима предсказания яркости. Часть (c) на фиг. 9 соответствует части (a) на фиг. 9 и часть (d) на фиг. 9 соответствует части (b) на фиг. 9.
Кроме того, в этом случае, аналогично, префиксы обрабатывают последовательно. Кроме того, как в части (b) на фиг. 9, суффиксы могут обрабатываться параллельно побитово. Однако, суффикс режима предсказания яркости и суффикс режима предсказания цветности не объединяют вместе. Соответственно, участки, которые могут обрабатываться параллельно, прерываются. Следовательно степень параллельности является относительно низкой.
Порядок, показанный на фиг. 9(с) и 9(d), имеет то преимущество, что воссоздание режимов внутрикадрового предсказания возможно, хотя префиксы режимов внутрикадрового предсказания временно не запоминаются. Однако, порядок, показанный на фиг. 9(а) и 9(b) более приемлем для высокоскоростной обработки, чем порядок, показанный на фиг. 9(c) и 9(d).
Следует заметить, что декодер 100 режима внутрикадрового предсказания, соответствующий варианту 1 осуществления, содержится в устройстве декодирования изображения, которое декодирует кодированные данные изображения. На фиг. 10 представлена блок-схема примера конфигурации устройства декодирования изображения, соответствующего варианту 1 осуществления.
Устройство 400 декодирования изображения, показанное на фиг. 10, декодирует кодированные данные изображения. Например, кодированные данные изображения блок за блоком вводятся в устройство 400 декодирования изображения в качестве сигналов, подлежащих декодированию. Устройство 400 декодирования изображения воссоздает данные изображения, выполняя для введенных с целью декодирования сигналов декодирование с переменной длиной, обратное квантование и обратное преобразование.
Как показано на фиг. 10, устройство 400 декодирования изображения содержит энтропийный декодер 410, блок 420 обратного квантования и обратного преобразования, сумматор 425, деблокирующий фильтр 430, запоминающее устройство 440, блок 450 внутрикадрового предсказания, блок 460 компенсации движения и переключатель 470 переключения для изменения внутрикадрового/ межкадрового предсказания.
Энтропийный декодер 410 выполняет декодирование переменной длины для входного сигнала (входного потока), чтобы воссоздавать коэффициент квантования. Следует заметить, что здесь входной сигнал (входной поток) является сигналом, подлежащим декодированию, и соответствует кодированным данным изображения для каждого блока. Дополнительно, энтропийный декодер 410 получает данные движения из входного сигнала и выводит данные движения на блок 460 компенсации движения.
Блок 420 обратного квантования и обратного преобразования выполняет обратное преобразование для коэффициента квантования, воссозданного посредством энтропийного декодера 410, чтобы воссоздавать коэффициент преобразования. Затем блок 420 обратного квантования и обратного преобразования выполняет обратное преобразование для воссозданного коэффициента преобразования, чтобы воссоздавать ошибку предсказания.
Сумматор 425 прибавляет ошибку предсказания воссоздания к прогнозированному сигналу, чтобы сформировать декодированное изображение.
Деблокирующий фильтр 430 выполняет обработку деблокирования с помощью фильтра для сформированного декодированного изображения. Декодированное изображение, для которого выполнена обработка посредством деблокирующего фильтра, выводится в качестве декодированного сигнала.
Запоминающее устройство 440 является запоминающим устройством для хранения опорных изображений, используемых для компенсации движения. Конкретно, запоминающее устройство хранит декодированные изображения, для которых была выполнена обработка, осуществляемая деблокирующим фильтром.
Блок 450 внутрикадрового предсказания формирует предсказанный сигнал (сигнал внутрикадрового предсказания), выполняя внутрикадровое предсказание в соответствии с режимом внутрикадрового предсказания. Конкретно, блок 450 внутрикадрового предсказания выполняет внутрикадровое предсказание посредством ссылки на изображение, расположенное вокруг текущего блока, подлежащего декодированию (входной сигнал), в декодированном изображении, сформированном сумматором 425, чтобы сформировать сигнал внутрикадрового предсказания.
Блок 460 компенсации движения выполняет компенсацию движения, основываясь на данных движения с выхода энтропийного декодера 410, чтобы сформировать прогнозированный сигнал (сигнал межкадрового предсказания).
Переключатель 470 изменения внутрикадрового/межкадрового предсказания выбирает один из сигналов внутрикадрового или межкадрового предсказания и выводит выбранный сигнал на сумматор 425 в качестве предсказанного сигнала.
Приведенная выше конфигурация позволяет устройству 400 декодирования изображения, соответствующему варианту 1 изображения, декодировать кодированные данные изображения.
Следует заметить, что устройство 400 декодирования изображения содержит декодер 100 режима внутрикадрового предсказания, соответствующий варианту 1 осуществления, в энтропийном детекторе 410.
Как описано выше, в соответствии с устройством декодирования изображения и способом декодирования изображения, соответствующими варианту 1 осуществления, режимы внутрикадрового предсказания воссоздают при высокой скорости. Конкретно, как описано в варианте 1 осуществления, объединяют контекстно-адаптивный участок режима предсказания яркости и контекстно-адаптивный участок режима предсказания цветности и объединяют участок обхода режима предсказания яркости и участок обхода режима предсказания цветности. Соответственно, многочисленные участки, которые могут обрабатываться параллельно, являются смежными. Таким образом, может выполняться параллельная обработка или, другими словами, высокоскоростное декодирование.
Следует заметить, что хотя приведенное выше описание сосредотачивает внимание, главным образом, при обработке декодирования суффикса режима предсказания яркости и суффикса режима предсказания цветности, настоящее изобретение не ограничивается только этим. Только для примера, многочисленные режимы предсказания яркости разделяют по префиксам и суффиксам, чтобы раздельно подвергаться обработке декодирования, а многочисленные режимы предсказания цветности могут разделяться по префиксам и суффиксам, чтобы раздельно подвергаться обработке декодирования. Это также позволяет ожидать эффекта некоторого снижения объема обработки.
В этом случае возможно сократить размер внутренней памяти. Кроме того, в этом случае также ожидается эффект высокоскоростной обработки, поскольку формируются многочисленные смежные участки, на которых выполняется обходная обработка.
Следует заметить, что, основываясь на частоте появления режима внутрикадрового предсказания, в качестве двоичной строки режима внутрикадрового предсказания может быть получен код Хаффмана (двоичная строка). Затем может быть сформирована таблица, в которой режимы внутрикадрового предсказания связывают с кодами Хаффмана. Кроме того, участок, на котором вероятность появления символов кодов Хаффмана изменяется, может быть выбран в качестве префикса. Степень параллельности возрастает за счет определения двоичной строки и префикса таким образом, приводя в результате к дальнейшему увеличению скорости обработки декодирования.
Кроме того, в настоящем варианте осуществления, хотя режим предсказания яркости и режим предсказания цветности объединены, rem_intra_luma_pred_mode режима предсказания яркости и intra_chroma_pred_mode режима предсказания цветности могут быть объединены.
МОДИФИКАЦИЯ ВАРИАНТА 1 ОСУЩЕСТВЛЕНИЯ
В варианте 1 осуществления префикс, соответствующий обработке контекстно-адаптивного двоичного арифметического декодирования, и суффикс, соответствующий обработке обходного декодирования, разделены безотносительно режима предсказания яркости и режима предсказания цветности. Таким образом, скорость обработки повышается. Дополнительно, вариант 1 осуществления может быть изменен нижеследующим образом. Подробное описание модификации варианта 1 осуществления приводится с использованием фиг. 11, 12, 13 и 14.
На фиг. 11 представлена блок-схема примера конфигурации декодера режима внутрикадрового предсказания, соответствующего модификации варианта 1 осуществления. На фиг. 12 приведены примеры индексов JOINT_IDX, указывающих комбинации режимов предсказания яркости и режимов предсказания цветности и примеры двоичных строк, соответствующих индексам. На фиг. 13 представлена блок-схема последовательности выполнений операций обработки посредством декодера 500 режима внутрикадрового предсказания, показанного на фиг. 11.
В варианте 1 осуществления для режимов предсказания яркости и режимов предсказания цветности используют разные двоичные строки. Однако, в модификации варианта 1 осуществления индексы и двоичные строки, соответствующие комбинациям режимов предсказания яркости и режимов предсказания цветности дополнительно повышают эффективность кодирования и скорость обработки декодирования.
Например, как показано на фиг. 12, двоичный код (0 или 1) назначается каждому из индексов JOINT_IDX, соответствующих комбинациям режимов предсказания яркости и режимов предсказания цветности. Далее в настоящем документе, комбинация режима предсказания яркости и режима предсказания цветности также упоминается как смешанный режим.
Если частота появления комбинации высокая, комбинации назначается индекс JOINT_IDX, указывающий малое значение, тогда как если частота появления комбинации низкая, комбинации назначается индекс JOINT_IDX, указывающий высокое значение.
Например, только первый бит (бин 0) может предварительно определяться в качестве префикса. Альтернативно, в качестве префикса могут предварительно определяться первый бит (бин 0) - шестой бит (бин 5).
В варианте 1 осуществления режим предсказания яркости и режим предсказания цветности могут обрабатываться независимо, основываясь на разных частотах появления. В модификации варианта 1 осуществления объединение режима предсказания яркости и режима предсказания цветности повышает эффективность кодирования и обходные участки не разделяются. Таким образом, возможна высокая скорость обработки.
Декодер 501 префикса смешанного режима получает значение вероятности для префикса смешанного режима (S601). Это значение вероятности идентифицируется посредством контекстного индекса ctxIdx, предварительно определенного для префикса смешанного режима. Затем декодируется бит, указывающий префикс смешанного режима, со ссылкой на полученное значение вероятности (S602). После этого декодер 501 префикса смешанного режима обновляет значение вероятности, основываясь на том, является ли декодированный бит 0 или 1 (S603). Следует заметить, что для арифметического декодирования может использоваться способ, описанный выше, или может использоваться способ, модифицированный для повышения эффективности.
Если декодированный бит не является последним битом или, другими словами, если декодированный бит не является последним бином (двоичной строки) (Нет на этапе S604), декодер 501 префикса смешанного режима снова получает значение вероятности для префикса смешанного режима. Если декодированный бит является последним битом, декодер 500 режима внутрикадрового предсказания прекращает обработку декодирования для префикса смешанного режима и начинает обработку декодирования для суффикса смешанного режима.
Следует заметить, что является ли декодированный бит последним битом, определяется на основании битовой длины, показанной на фиг. 12. В этом случае ожидается повышение эффективности кодирования, поскольку возможно управление, соответствующее рабочим характеристикам. Следует заметить, что в качестве примера управления префиксом, префикс может изменяться соответственно размеру блока предсказания (размеру блока). Например, в случае большого блока префикс может быть длинным, поскольку время обработки достаточно велико. Напротив, в случае малого блока, префикс может быть коротким, поскольку количество режимов внутрикадрового предсказания мало.
Далее, декодер 502 суффикса смешанного режима получает битовый поток BS и выполняет обработку декодирования суффикса смешанного режима. Следует заметить, что обработка декодирования суффикса смешанного режима соответствует обработке арифметического декодирования. Хотя при обработке декодирования префикса смешанного режима вероятность обновляется, при обработке декодирования суффикса смешанного режима вероятность не обновляется. Поэтому для суффикса смешанного режима возможны высокоскоростная обработка и параллельная обработка.
Конкретно, декодер 502 суффикса смешанного режима декодирует бит, указывающий суффикс смешанного режима (S605). Декодер 502 суффикса смешанного режима повторяет эту обработку вплоть до последнего бита (S606). Кроме того, декодер 502 суффикса смешанного режима может параллельно декодировать многочисленные биты, указывающие суффикс смешанного режима.
После этого, основываясь на смешанном режиме, образованном префиксом и суффиксом, блок 503 воссоздания режима предсказания яркости воссоздает режим предсказания яркости, а блок 504 воссоздания режима предсказания цветности воссоздает режим предсказания цветности (S607).
Следует заметить, что соответствующая таблица, показанная на фиг. 12, является примером. В этом примере предполагается, что частота появления линейно нарастает. Следует заметить, что настоящий вариант осуществления этим не ограничивается и могут использоваться, например, двоичные строки, получаемые посредством экспоненты Голомба. Таблица соответствия может определяться, основываясь на частотах появления. Такм образом, эффективность кодирования дополнительно возрастает. В этом варианте также достигается высокоскоростная обработка и эффективность кодирования также возрастает.
На фиг. 14 показан пример структуры данных. Например, данные могут быть установлены в порядке, показанном на фиг. 14. Следует заметить, что на фиг. 14 rem_intra_luma_pred_mode, указывающий режим предсказания яркости, и intra_chroma_pred_mode, указывающий режим предсказания цветности, объединены. Таким образом, смешанный режим вводится на фиг. 14 как Intra_combo_pred_mode.
ВАРИАНТ 2 ОСУЩЕСТВЛЕНИЯ
Далее описывается общий принцип способа арифметического кодирования, соответствующего настоящему изобретению. Способ арифметического кодирования, соответствующий настоящему варианту осуществления, имеет признак, согласно которому вместо того, чтобы раздельно кодировать режим предсказания яркости и режим предсказания цветности, раздельно кодируют префикс, соответствующий контекстно-адаптивному двоичному арифметическому кодированию, и суффикс, соответствующий обходному кодированию. Соответственно, степень параллельности возрастает и скорость обработки, в целом, увеличивается.
Выше приведено описание общего принципа способа арифметического кодирования, соответствующего настоящему варианту осуществления. Конфигурация и обработка, описанные в NPL 1 и 2, могут использоваться для конфигурации и обработки, которые здесь конкретно не описываются. Далее приводится описание последовательности выполнения операций кодирования режима внутрикадрового предсказания, соответствующего настоящему варианту осуществления.
На фиг. 15 представлена блок-схема последовательности выполнения операций обработки, выполняемой кодером внутрикадровых предсказаний, соответствующим варианту 2 осуществления. Сначала кодер режима внутрикадрового предсказания получает режим предсказания яркости и получает значение вероятности для префикса двоичных данных, указывающего режим предсказания яркости (S701). Следует заметить, что это значение вероятности определяется на основе контекстного имдекса, как и значение вероятности, описанное в варианте 1 осуществления.
Затем кодер режима внутрикадрового предсказания кодирует бит, указывающий префикс режима предсказания яркости, посредством арифметического кодирования со ссылкой на значение вероятности (S702). Затем кодер режима внутрикадрового предсказания обновляет значение вероятности для префикса режима предсказания яркости (S703). Следует заметить, что способ, описанный в NPL 1 или 2, может использоваться в качестве способа арифметического кодирования и способа обновления вероятности. Эффект получается посредством любого способа кодирования кода (символа), основываясь на вероятности кода (символа).
Если кодированный бит не является последним битом или, другими словами, если кодированный бит не является последним бином (Нет на этапе S704), кодер режима внутрикадрового предсказания обрабатывает следующий бит.
Если декодированный бит является последним битом (Да на этапе S704), кодер режима внутрикадрового предсказания получает значение вероятности для префикса режима предсказания цветности (S705). Затем кодер режима внутрикадрового предсказания кодирует бит, указывающий префикс режима предсказания цветности посредством арифметического кодирования (S706). Затем кодер режима внутрикадрового предсказания обновляет значение вероятности для префикса режима предсказания цветности (S707).
Если кодированный бит не является последним битом (Нет на этапе S708), кодер режима внутрикадрового предсказания обрабатывает следующий бит.
Если кодированный бит является последним битом (Да на этапе S708) кодер режима внутрикадрового предсказания выполняет обходное кодирование для суффикса режима предсказания яркости (S709) и обходное кодирование для суффикса режима предсказания цветности (S710).
Обходное кодирование, описанное в NPL 1 или 2, может использоваться для этого обходного кодирования. Следует заметить, что обходное кодирование является кодированием, при котором вероятность не обновляется. Обходное кодирование, соответствующее настоящему варианту осуществления, может быть способом, отличным от обходного кодирования, описанного в NPL 1 или 2. Даже в этом случае эффект не ухудшается.
Следует заметить, что кодирование может также выполняться параллельно, как на фиг. 9(а)-9(d), описанных в варианте осуществления 1. Поэтому скорость обработки кодирования может быть увеличена.
Кроме того, в качестве способа кодирования, соответствующего модификации варианта 1 осуществления, кодер режима внутрикадрового предсказания может формировать двоичную строку, указывающую JOINT_IDX, как показано на фиг. 12, и последовательно обрабатывать префикс и суффикс двоичной строки. В этом случае, кодер режима внутрикадрового предсказания кодирует префикс посредством контекстно-адаптивного двоичного арифметического кодирования. Соответственно, эффективность кодирования увеличивается и скорость обработки кодирования повышается.
На фиг. 16 представлена блок-схема конфигурации устройства декодирования изображения, соответствующего настоящему варианту осуществления. Как показано на фиг. 16, устройство 200 кодирования изображения содержит вычитающее устройство 205, блок 210 преобразования и квантования, энтропийный кодер 220, блок 230 обратного квантования и обратного преобразования, сумматор 235, деблокирующий фильтр 240, запоминающее устройство 250, блок 260 внутрикадрового предсказания, блок 270 обнаружения движения, блок 280 компенсации движения и переключатель 290 изменения внутрикадрового/межкадрового предсказания.
Вычитающее устройство 205 вычисляет разность между входным сигналом и предсказанным сигналом или, другими словами, ошибку предсказания. Блок 210 преобразования и квантования преобразует ошибку предсказания в пространственной области, чтобы сформировать коэффициент преобразования в частотной области. Например, блок 210 преобразования и квантования выполняет дискретное косинусное преобразование (DCT) для ошибки предсказания, чтобы сформировать коэффициент преобразования. Дополнительно, блок 210 преобразования и квантования квантует коэффициент преобразования, чтобы сформировать коэффициент квантования.
Энтропийный кодер 220 выполняет кодирование переменной длины для коэффициента квантования, чтобы сформировать кодированный сигнал. Дополнительно, энтропийный кодер 220 кодирует данные движения (например, вектор движения), обнаруженный блоком 270 обнаружения движения, и выводит данные, содержащиеся в кодированном сигнале.
Блок 230 обратного квантования и обратного преобразования выполняет обратное квантование преобразование для коэффициента квантования, чтобы воссоздавать коэффициент преобразования. Дополнительно, блок 230 обратного квантования и обратного преобразования выполняет обратное преобразование для воссозданного коэффициента преобразования, чтобы воссоздавать ошибку предсказания. Следует заметить, что воссозданная ошибка предсказания обладает потерей информации за счет квантования и, таким образом, не совпадает с ошибкой предсказания, сформированной вычитающим устройством 205. Конкретно, воссозданная ошибка предсказания содержит ошибку квантования.
Сумматор 235 прибавляет воссозданную ошибку предсказания к прогнозированному сигналу, чтобы сформировать локальное декодированное изображение. Деблокирующий фильтр 240 выполняет обработку деблокирования с помощью фильтра для сформированного локального декодированного изображения.
Запоминающее устройство 250 является запоминающим устройством для хранения опорных изображений, используемых для компенсации движения. Конкретно, запоминающее устройство 250 хранит локально декодированное изображение, для которого была выполнена обработка, осуществляемая деблокирующим фильтром.
Блок 260 внутрикадрового предсказания выполняет внутрикадровое предсказание в режиме внутрикадрового предсказания, чтобы сформировать предсказанный сигнал (сигнал внутрикадрового предсказания). Конкретно, блок 260 внутрикадрового предсказания выполняет внутрикадровое предсказание посредством ссылки на изображение, расположенное вокруг текущего блока, подлежащего кодированию, (входной сигнал), в локально декодированном изображении, сформированном сумматором 235, чтобы сформировать сигнал внутрикадрового предсказания.
Блок 270 обнаружения движения обнаруживает данные движения (например, вектор движения) между входным сигналом и опорным изображением, хранящимся в запоминающем устройстве. Блок 280 компенсации движения выполняет компенсацию движения, основываясь на обнаруженных данных движения, чтобы сформировать предсказанный сигнал (сигнал межкадрового предсказания).
Переключатель 290 изменения внутрикадрового/межкадрового предсказания выбирает один из сигналов внутрикадрового или межкадрового предсказания и выводит выбранный сигнал на вычитающее устройство 205 и сумматор 235 в качестве предсказанного сигнала.
Используя описанную выше конфигурацию, устройство 200 кодирования изображения кодирует данные изображения. Следует заметить, что устройство 200 кодирования изображения содержит кодер режима внутрикадрового предсказания, соответствующий варианту 2 осуществления, например, в энтропийном кодере 220.
ВАРИАНТ 3 ОСУЩЕСТВЛЕНИЯ
Настоящий вариант осуществления описывает отличительные конфигурации и процедуры, введенные в вариант 1 осуществления, модификацию варианта 1 осуществления или вариант 2 осуществления для их поддержки. Конфигурация и процедура, соответствующие настоящему варианту осуществления, соответствуют конфигурации и процедуре, описанным в варианте 1 осуществления, модификации варианта 1 осуществления или варианту 2 осуществления. Конкретно, концепция, описанная в варианте 1 осуществления, модификации варианта 1 осуществления или варианте 2 осуществления, содержит конфигурацию и процедуру, соответствующие настоящему варианту осуществления.
На фиг. 17 представлена блок-схема примера конфигурации устройства 200 кодирования изображения, соответствующего варианту 3 осуществления. Устройство 800 кодирования изображения, показанное на фиг. 17, кодирует изображение, используя многочисленные режимы внутрикадрового предсказания. Устройство 800 кодирования изображения содержит кодер 801.
На фиг. 18 представлена блок-схема последовательности выполнений операций обработки, выполняемой устройством 800 кодирования изображения, показанным на фиг. 17. Кодер 801 кодирует первые двоичные данные, указывающие первый режим внутрикадрового предсказания, используемый для кодирования изображения, и вторые двоичные данные, указывающие второй режим внутрикадрового предсказания, используемый для кодирования изображения (S801).
При этом кодер 801 кодирует первый контекстно-адаптивный участок и второй контекстно-адаптивный участок посредством контекстно-адаптивного двоичного арифметического кодирования. Кодер 801 кодирует первый обходной участок и второй обходной участок посредством обходного кодирования. Затем кодер 801 формирует кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, первый обходной участок и второй обходной участок.
Контекстно-адаптивное двоичное арифметическое кодирование является арифметическим кодированием, в котором используется переменная вероятность, обновляемая на основе кодированных данных. Обходное кодирование является арифметическим кодированием, в котором используется предварительно определенная фиксированная вероятность, первый контекстно-адаптивный участок является частью первых двоичных данных. Второй контекстно-адаптивный участок является частью вторых двоичных данных. Первый обходной участок является другой частью первых двоичных данных. Второй обходной участок является другой частью вторых двоичных данных.
Кодированные данные содержат первый обходной участок и второй обходной участок, следующие за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком.
Соответственно, формируют кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, являются смежными. Поэтому степень параллельности обработки декодирования может увеличиться. Таким образом, режимы внутрикадрового предсказания эффективно кодируются.
В приведенной выше конфигурации, например, первый режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания яркости изображения. Дополнительно, второй режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания цветности изображения.
Кроме того, например, кодированные данные могут содержать первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок в следующем порядке: первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок.
Кроме того, например, если вторые двоичные данные не содержат второй обходной участок, то кодер 801 может кодировать вторичные двоичные данные в целом как второй контекстно-адаптивный участок посредством контекстно-адаптивного двоичного арифметического кодирования. Затем кодер 801 может формировать кодированные данные, не содержащие второй обходной участок.
Дополнительно, например, первый режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания яркости первого блока, включенного в изображение. Второй режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания яркости второго блока, включенного в изображение.
Кроме того, например, кодер 801 может кодировать первые двоичные данные, вторые двоичные данные, третьи двоичные данные, четвертые данные и пятые двоичные данные, указывающие первый режим внутрикадрового предсказания, второй режим внутрикадрового предсказания, третий режим внутрикадрового предсказания, четвертый режим внутрикадрового предсказания и пятый режим внутрикадрового предсказания, соответственно. Второй режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания цветности второго блока, включенного в изображение. Первый, третий, четвертый и пятый режимы внутрикадрового предсказания могут быть четырьмя режимами внутрикадрового предсказания, используемыми для предсказания яркости четырех субблоков, образующих упомянутый блок.
Затем, кодер 801 может кодировать первый и второй контекстно-адаптивные участки и третий, четвертый и пятый контекстно-адаптивные участки посредством контекстно-адаптивного двоичного арифметического кодирования. Кодер 801 может кодировать первый и второй обходные участки и третий, четвертый и пятый обходные участки посредством обходного кодирования.
Первый, второй, третий, четвертый и пятый контекстно-адаптивные участки являются частью первых, вторых, третьих, четвертых и пятых двоичных данных, соответственно. Первый, второй, третий, четвертый и пятый обходные участки являются частью первых, вторых, третьих, четвертых и пятых двоичных данных, соответственно.
В этом случае, кодированные данные, подлежащие формированию, могут содержать первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок, пятый обходной участок в следующем порядке: первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок.
Кроме того, например, кодер 801 может кодировать первый обходной участок и второй обходной участок параллельно.
Кроме того, кодер 801 может переключаться на одну из первой обработки кодирования, соответствующей первому стандарту, и второй обработки кодирования, соответствующей второму стандарту. Затем кодер 801 может формировать битовый поток, содержащий информацию идентификации, указывающую первый стандарт или второй стандарт, которому соответствует упомянутая одна из первой обработки кодирования и второй обработки кодирования.
Затем, если сделано переключение на первую обработку кодирования, кодер 801 может формировать кодированные данные, содержащие первый обходной участок и второй обходной участок, следующие за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком. В этом случае, кодер 801 может формировать битовый поток, содержащий информацию идентификации и кодированные данные.
На фиг. 19 представлена блок-схема примера конфигурации устройства декодирования изображения, соответствующего варианту 3 осуществления. Устройство 900 декодирования изображения, показанное на фиг. 19, декодирует изображение, используя многочисленные режимы внутрикадрового предсказания. Дополнительно, устройство 900 декодирования изображения содержит декодер 901.
На фиг. 20 представлена блок-схема последовательности выполнений операций обработки, выполняемой устройством 900 декодирования изображения, показанным на фиг. 19. Декодер 901 декодирует первые двоичные данные, которые указывают первый режим внутрикадрового предсказания, используемый для декодирования изображения, и вторые двоичные данные, которые указывают второй режим внутрикадрового предсказания, используемый для декодирования изображения (S901).
При этом декодер 901 получает кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, первый обходной участок и второй обходной участок. Затем декодер 901 декодирует первый контекстно-адаптивный участкок и второй контекстно-адаптивный участок посредством контекстно-адаптивного двоичного арифметического кодирования. Кроме того, декодер 901 декодирует посредством обходного декодирования первый обходной участок и второй обходной участок.
Контекстно-адаптивное двоичное арифметическое декодирование является арифметическим декодированием, в котором используется переменная вероятность, обновляемая на основе декодированных данных. Обходное декодирование является арифметическим декодированием, в котором используется предварительно определенная неизменная вероятность. Первый контекстно-адаптивный участок является частью первых двоичных данных. Второй контекстно-адаптивный участок является частью вторых двоичных данных. Первый обходной участок является другой частью первых двоичных данных. Второй обходной участок является другой частью вторых двоичных данных.
Кодированные данные содержит первый обходной участок и второй обходной участок, следующие за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком.
Соответственно, получают кодированные данные, в которых многочисленные участки, для которых используется обходное декодирование, являются смежными. Поэтому степень параллельности обработки декодирования может увеличиться. Соответственно, режимы внутрикадрового предсказания эффективно декодируются.
В приведенной выше конфигурации, например, первый режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания яркости изображения. Дополнительно, второй режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания цветности изображения.
Кодированные данные могут содержать первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок в следующем порядке: например, первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок и первый обходной участок.
Если полученные декодированные данные не содержат второй обходной участок, декодер 901 может декодировать полностью вторые двоичные данные, декодируя второй контекстно-адаптивный участок, использовав для этого, например, контекстно-адаптивное двоичное арифметическое декодирование.
Кроме того, например, первый режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания яркости первого блока, включенного в изображение. Второй режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания яркости второго блока, включенного в изображение.
Кроме того, например, декодер 901 может декодировать первые двоичные данные, вторые двоичные данные, третьи двоичные данные, четвертые данные и пятые двоичные данные, которые указывают первый режим внутрикадрового предсказания, второй режим внутрикадрового предсказания, третий режим внутрикадрового предсказания, четвертый режим внутрикадрового предсказания и пятый режим внутрикадрового предсказания, соответственно. Второй режим внутрикадрового предсказания может быть режимом внутрикадрового предсказания, используемым для предсказания цветности блока, включенного в изображение. Первый, третий, четвертый и пятый режимы внутрикадрового предсказания могут быть четырьмя режимами внутрикадрового предсказания, используемыми для предсказания яркости четырех субблоков, образующих упомянутый блок.
Затем, декодер 901 может декодировать первый и второй контекстно-адаптивные участки и третий, четвертый и пятый контекстно-адаптивные участки посредством контекстно-адаптивного двоичного арифметического декодирования. Кроме того, декодер 901 посредством обходного декодирования может декодировать первый и второй обходные участки и третий, четвертый и пятый обходные участки.
Первый, второй, третий, четвертый и пятый контекстно-адаптивные участки являются частью первых, вторых, третьих, четвертых и пятых двоичных данных, соответственно. Первый, второй, третий, четвертый и пятый обходные участки являются другой частью первых, вторых, третьих, четвертых и пятых двоичных данных, соответственно.
В этом случае полученные кодированные данные могут содержать первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок в следующем порядке: первый контекстно-адаптивный участок, третий контекстно-адаптивный участок, четвертый контекстно-адаптивный участок, пятый контекстно-адаптивный участок, второй контекстно-адаптивный участок, второй обходной участок, первый обходной участок, третий обходной участок, четвертый обходной участок и пятый обходной участок.
Например, декодер 901 может декодировать первый обходной участок и второй обходной участок параллельно.
Дополнительно, например, декодер 901 может получать битовый поток, содержащий информацию идентификации, указывающую первый стандарт или второй стандарт. Затем, основываясь на информации идентификации, декодер 901 может переключаться на одну из первой обработки декодирования, соответствующей первому стандарту, и второй обработки декодирования, соответствующей второму стандарту.
Затем, если сделано переключение на первую обработку декодирования, декодер 901 может получить из битового потока кодовую строку, содержащую первый обходной участок и второй обходной участок, следующие за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком.
Например, устройство кодирования и декодирования может содержать устройство 800 кодирования изображения и устройство 900 декодирования изображения.
Устройство 800 кодирования изображения и устройство 900 декодирования изображения, соответствующие настоящему варианту осуществления, также применимы в описанному ниже примеру.
На фиг. 21 приведен пример синтаксиса, соответствующего варианту 3 осуществления.
"prev_intra_luma_pred_flag", "mpm_idx", и "rem_intra_luma_pred_mode", показанные на фиг. 21, являются элементами, указывающими режим предсказания яркости.
"intra_chroma_pred_mode" является элементом, указывающим режим предсказания цветности.
Контекстно-адаптивное двоичное арифметическое кодирование используется для "prev_intra_luma_pred_flag". Обходное кодирование используется для "mpm_idx" и "rem_intra_luma_pred_mode". Контекстно-адаптивное двоичное арифметическое кодирование и обходное кодирование используются для "intra_luma_pred_mode".
Следует заметить, что устройство декодирования использует контекстно-адаптивное двоичное арифметическое кодирование для контекстно-адаптивного участка, для которого устройство кодирования использует контекстно-адаптированное двоичное арифметическое кодирование. Аналогично, устройство декодирования использует обходное декодирование для обходного участка, для которого устройство кодирования использует обходное кодирование.
На фиг. 22 представлено арифметическое кодирование яркости в соответствии с вариантом 3 осуществления. Для определения режима предсказания яркости используется "mpm_idx" или "rem_intra_luma_pred_mode". Что именно из "mpm_idx" или "rem_intra_luma_pred_mode" должно использоваться для режима предсказания яркости, определяется с помощью "prev_intra_luma_pred_flag". "mpm_idx" и "rem_intra_luma_pred_mode" соответствуют номерам идентификации режимов предсказания яркости и их двоичным значениям.
На фиг. 23 представлено арифметическое кодирование цветности в соответствии с вариантом 3 осуществления. "intra_chroma_pred_mode" используется для определения режима предсказания цветности. "intra_chroma_pred_mode" соответствует номеру для идентификации режима предсказания цветности и его двоичного значения. Контекстно-адаптивное арифметическое кодирование используется для первого бита, указывающего двоичное значение. Обходное кодирование используется для второго и последующего битов, указывающих двоичное значение. Обходное кодирование не используется, если не присутствуют второй и последующие биты.
На фиг. 24 представлены блоки изображения в соответствии с вариантом 3 осуществления. Примеры блоков изображения содержат блоки области данных, упоминаемые как блоки кодирования (CU), блоки предсказания (PU) и блоки преобразования (TU). Блок кодирования содержит 64×64 пикселей, 32×32 пикселей, 16×16 пикселей или 8×8 пикселей. Размер наименьшего блока кодирования здесь составляет 8×8 пикселей. Таким образом, log2MinCUsize, который указывает размер наименьшего блока кодирования, равняется 3.
В случае внутрикадрового предсказания размер блока предсказания, по существу, является таким же, как размер блока кодирования. Деление блока кодирования, большего, чем блок наименьшего размера (8×8 пикселей), на четыре блока предсказания не разрешается. Деление блока кодирования наименьшего размера на четыре блока предсказания разрешается. Соответственно, четыре блока предсказания могут содержаться в блок кодирования размеров 8×8 пикселей.
Тип блока предсказания (PU_TYPE), имеющего тот же самый размер, что и размер блока кодирования, называется 2N×2N. Тип блока предсказания, полученный блоком, подразделяемым на четыре, называется N×N.
На фиг. 24 приведен пример, когда блок 1000 кодирования содержит блоки предсказания 1001, 1002, 1003 и 1004. В данном случае внутрикадровое предсказание цветности выполняется для блока 1000 кодирования. Затем внутрикадровое предсказание яркости выполняется для каждого из блоков предсказания 1001, 1002, 1003 и 1004. Поэтому для блока кодирования 100 используют один режим предсказания цветности и четыре режима предсказания яркости.
На фиг. 25 представлена первая модификация синтаксиса, соответствующего варианту 3 осуществления. В случае, представленном на фиг. 24, синтаксис, показанный на фиг. 21, изменяется, как показано на фиг. 25. В случае, представленном на фиг. 25, контекстно-адаптивное двоичное арифметическое кодирование и обходное кодирование выполняются поочередно. Поэтому трудно повысить степень параллельности.
На фиг. 26 представлена вторая модификация синтаксиса, соответствующего варианту 3 осуществления. Синтаксис, показанный на фиг. 25, изменен, как показано на фиг. 26, чтобы повысить степень параллельности. На фиг. 26 prev_intra_luma_pred_flag повторяется 4 раза и следующий за ним mpm_idx или rem_intra_pred_mode повторяется 4 раза.
Таким образом, многочисленные контекстно-адаптивные участки, на которых выполняется контекстно-адаптивное двоичное арифметическое кодирование, и многочисленные обходные участки, на которых выполняется обходное кодирование, разделены и объединяются вместе. Следовательно, степень параллельности возрастает.
На фиг. 27 представлена третья модификация синтаксиса, соответствующего варианту 3 осуществления. На фиг. 27 intra_chroma_pred_mode располагается после prev_intra_luna_pred_flag. Соответственно, в отношении режимов предсказания яркости и режима предсказания цветности, взятых вместе, многочисленные контекстно-адаптивные участки, на которых выполняется контекстно-адаптивное двоичное арифметическое кодирование, и многочисленные обходные участки, на которых выполняется обходное кодирование, разделены и объединяют вместе. Следовательно степень параллельности повышается.
Кроме того, контекстно-адаптивный участок для intra_chroma_pred_mode и обходной участок для intra_chroma_pred_mode являются смежными, предотвращая, тем самым, повышению степени сложности.
Следует заметить, что на фиг. 27 prev_intra_luma_pred_flag может быть повторен 4 раза или может не повторяться 4 раза. Аналогично, mpm_idx или rem_intra_pred_mode может быть повторен 4 раза или может не повторяться 4 раза. Таким образом, пример, показанный на фиг. 27, может применяться как в случае, когда блок кодирования делится на четыре блока предсказания, так и в случае, когда блок кодирования не делится на четыре блока предсказания. В любом случае, степень паралльльности повышается, поскольку обходные участки объединяют вместе.
Кроме того, если блок кодирования делится на четыре блока предсказания, элементы, показанные на фиг. 25, 26 и 27 могут быть введены в кодированные данные в качестве элементов верхнего левого блока 1001 предсказания.
В способе кодирования изображения и способе декодирования изображения, описанных выше в вариантах осуществления, степень параллельности повышается путем объединения многочисленных режимов внутрикадрового предсказания. Следовательно, изображение эффективно кодируется и эффективно декодируется.
Следует заметить, что в приведенных выше вариантах осуществления каждый из компонентов может состоять из специализированного аппаратного обеспечения или может быть получен посредством выполнения компьютерной программы, пригодной для компонента. Каждый компонент может быть получен с помощью блока выполнения программы, такого как центральный процессор (CPU) или процессор, считывающий и выполняющий компьютерную программу, записанную на носителе записи, таком как жесткий диск или полупроводниковое запоминающее устройство. Здесь, программное обеспечение, используемое в устройстве кодирования изображения, способе декодирования изображения и т.д. в соответствии в описанными выше вариантами осуществления, является программой, описанной ниже.
Конкретно, эта программа предписывает компьютеру выполнять способ кодирования изображения для кодирования изображения с использованием многочисленных режимов внутрикадрового предсказания, причем способ кодирования изображения содержит кодирование первых двоичных данных и кодирование вторых двоичных данных кодирования, где первые двоичные данные указывают первый режим внутрикадрового предсказания, используемый для кодирования изображения, вторые двоичные данные указывают второй режим внутрикадрового предсказания, используемый для кодирования изображения, в котором при кодировании первый контекстно-адаптивный участок и второй контекстно-адаптивный участок кодируют посредством контекстно-адаптивного двоичного арифметического кодирования, причем первый контекстно-адаптивный участок является частью первых двоичных данных, второй контекстно-адаптивный участок является частью вторых двоичных данных, контекстно-адаптивное двоичное арифметическое кодирование является арифметическим кодированием, использующим переменную вероятность, обновляемую на основе кодированных данных, первый обходной участок и второй обходной участок кодируют посредством обходного кодирования, причем первый обходной участок является другой частью первых двоичных данных, второй обходной участок является другой частью вторых двоичных данных, обходное кодирование является арифметическим кодированием, использующим предварительно определенную фиксированную вероятность, и формируются кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, первый обходной участок и второй обходной участок, причем первый обходной участок и второй обходной участок вводятся вслед за первым контекстно-адаптивным участком и вторым контекстно-адаптивным участком.
Кроме того, эта программа предписывает компьютеру выполнять способ декодирования изображения для декодирования изображения с использованием многочисленных режимов внутрикадрового предсказания, причем способ декодирования изображения содержит декодирование первых двоичных данных и вторых двоичных данных, где первые двоичные данные указывают первый режим внутрикадрового предсказания, который должен использоваться для декодирования изображения, вторые двоичные данные указывают второй режим внутрикадрового предсказания, который должен использоваться для декодирования изображения, в котором при декодировании получают кодированные данные, содержащие первый контекстно-адаптивный участок, второй контекстно-адаптивный участок, первый обходной участок и второй обходной участок, причем первый контекстно-адаптивный участок является частью первых двоичных данных, второй контекстно-адаптивный участок является частью вторых двоичных данных, первый обходной участок является другой частью первых двоичных данных, второй обходной участок является другой частью вторых двоичных данных, первый обходной участок и второй обходной участок помещены после первого контекстно-адаптивного участка и второго контекстно-адаптивного участка, первый контекстно-адаптивный участок и второй контекстно-адаптивный участок декодируются посредством контекстно-адаптивного двоичного арифметического кодирования, являющегося арифметическим декодированием, использующим переменную вероятность, обновляемую на основе декодированных данных, и первый обходной участок и второй обходной участок декодируются посредством арифметического декодирования с использованием предварительно определенной фиксированной вероятности.
Хотя выше приводится описание способа кодирования изображения и способа декодирования изображения, соответствующих одному или более вариантам настоящего изобретения, основанных на вариантах осуществления, настоящее изобретение не ограничивается приведенными выше вариантами осуществления. Различные модификации вариантов осуществления, которые могут быть предложены специалистами в данной области техники, и комбинации компонентов в различных вариантах осуществления могут быть введены в объем одного или более вариантов настоящего изобретения, не отступая от сущности настоящего изобретения.
ВАРИАНТ 4 ОСУЩЕСТВЛЕНИЯ
Обработка, описанная в каждом из вариантов осуществления может быть просто реализована в независимой компьютерной системе, записывая на носителе записи программу реализации различных конфигураций для способа кодирования движущегося изображения (способа кодирования изображения) и способа декодирования движущегося изображения (способа декодирования изображения), описанных в каждом из вариантов осуществления. Носитель записи может быть любым носителем записи, на котором может быть записана программа, таким как магнитный диск, оптический диск, магнитный оптический диск, карта с интегральной микросхемой и полупроводниковое запоминающее устройство.
Далее в настоящем документе будут описаны применения способа кодирования движущегося изображения (способа кодирования изображения) и способа декодирования движущегося изображения (способа декодирования изображения), описанных в каждом из вариантов осуществления, и использующих их систем. Система обладает признаком наличия устройства кодирования и декодирования изображения, содержащего устройство кодирования изображения, использующее способ кодирования изображения, и устройство декодирования изображения, использующее способ декодирования изображения. Другие конфигурации в системе могут изменяться в зависимости от ситуации и конкретного случая.
На фиг. 28 представлена общая конфигурация системы ех100 предоставления контента для реализации услуг по распространению контента. Область предоставления услуг связи делится на ячейки желаемого размера и базовые станции ех106, ех107, ех108, ех109 и ех110, являющиеся неподвижными беспроводными станциями, размещенными в каждой из ячеек.
Система ех100 предоставления контента соединяется с такими устройствами, как компьютер ех111, персональный цифровой секретарь (PDA) ех112, камера ех113, сотовый телефон ех114 и игровая машина ех115, через Интернет ех101, провайдер ех102 услуг Интернет, телефонную сеть ех104, а также базовые станции ех106 - ех110, соответственно.
Однако, конфигурация системы ех100 предоставления контента не ограничивается конфигурацией, показанной на фиг. 28, и приемлема комбинация, в которой соединяются любые из элементов. Кроме того, каждое устройство может напрямую соединяться с телефонной сетью ех104, вместо того, чтобы осуществлять связь через базовые станции ех106-ех110, которые являются неподвижными беспроводными станциями. Дополнительно, устройства могут соединяться между собой друг с другом через беспроводные соединения малой дальности и прочее.
Камера ех113, такая как цифровая видеокамера, способна получать видеоинформацию. Камера ех113, такая как цифровая камера, способна захватывать как неподвижные изображения, так и видео. Дополнительно, сотовый телефон ex114 может быть устройством, удовлетворяющим любому из стандартов, такому как глобальная система мобильной связи (GSM) (зарегистрированный товарный знак), множественный доступ с кодовым разделением каналов (CDMA), широкополосный множественный доступ с кодовым разделением каналов (W-CDMA), долговременное развитие систем связи (LTE) и высокоскоростной пакетный доступ (HSPA). Альтернативно, сотовый телефон ех114 может являться персональной портативной телефонной системой (PHS).
В системе ех100 предоставления контента потоковый сервер ех103 соединяется с камерой ех113 и другими через телефонную сеть ех104 и базовую станцию ех109, которая позволяет распространение изображений в прямом эфире и прочее. При таком распространении контент (например, видео музыкального шоу в прямом эфире) захваченный пользователем с использованием камеры ех113, кодируется, как описано выше в каждом из вариантов осуществления (например, камера функционирует как устройство кодирования изображения, соответствующее варианту настоящего изобретения), и кодированный контент передается на потоковый сервер ех103.
С другой стороны, потоковый сервер ех103 выполняет распределение потоков данных переданного контента клиентам по их запросам. К клиентам относятся компьютер ех111, PDA ех112, камера ех113, сотовый телефон ех114 и игровая машина ех115, способные декодировать упомянутые выше кодированные данные. Каждое из устройств, которое приняло распространенные данные, декодирует и воспроизводит кодированные данные (то есть, функционирует как устройство декодирования изображения в соответствии с вариантом настоящего изобретения).
Захваченные данные могут кодироваться камерой ех113 или потоковым сервером ех103, передающим данные, или процессы кодирования могут осуществляться совместно камерой ех113 и потоковым сервером ех103. Подобным образом, распределенные данные могут декодироваться клиентами или потоковым сервером ех103 или процессы декодирования могут осуществляться совместно клиентами и потоковым сервером ех103. Дополнительно, данные неподвижных изображений и видео, захваченные не только камерой ех113, но также и камерой ех116, могут передаваться потоковому серверу ех103 через компьютер ех111. Процессы кодирования могут выполняться камерой ех116, компьютером ех111 или потоковым сервером ех103 или осуществляться ими совместно.
Дополнительно, процессы кодирования и декодирования могут выполняться посредством LSI (большой интегральной схемы) ex500, обычно содержащейся в компьютере ех111 и указанных устройствах. LSI ex500 может быть сконфигурирована как единая микросхема или как множество микросхем. Программное обеспечение для кодирования и декодирования видеоданных может быть интегрировано в любой тип носителя записи (такой как CD-ROM, дискета и жесткий диск), который может считываться компьютером ех111 и другими и процессы кодирования и декодирования могут выполняться с использованием программного обеспечения. Дополнительно, когда сотовый телефон ех114 снабжен камерой, могут передаваться видеоданные, полученные камерой. Видеоданные являются данными, кодированными LSI ех500, содержащейся в сотовом телефоне ех114.
Дополнительно, потоковый сервер ех103 может состоять из серверов и компьютеров и может децентрализировать данные и обрабатывать децентрализованные данные, записывать или распространять данные.
Как описано выше, клиенты могут принимать и воспроизводить кодированные данные в системе ех100 предоставления контента. Другими словами, клиенты могут принимать и декодировать информацию, переданную пользователем, и воспроизводить декодированные данные в реальном времени в системе ех100 предоставления контента, так что пользователь, который не имеет какого-либо частного права и оборудования, может осуществлять персональное вещание.
Помимо примера системы ех100 предоставления контента, по меньшей мере одно из устройства кодирования движущегося изображения (устройства кодирования изображения) и устройства декодирования движущегося изображения (устройства декодирования изображения), описанных в каждом из вариантов осуществления, может быть реализовано в цифровой широковещательной системе ех200, показанной на фиг. 29. Более конкретно, широковещательная станция ех201 осуществляет связь или передает посредством радиоволн на широковещательный спутник ех202 мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и прочего в видеоданные. Видеоданные являются данными, кодированными посредством способа кодирования движущегося изображения, описанного в каждом из вариантов осуществления (например, данными, кодированными устройством кодирования изображения в соответствии с вариантом осуществления настоящего изобретения). После приема мультиплексированных данных широковещательный спутник ех202 передает широковещательные радиосигналы. Затем, домашняя антенна ех204 с функцией приема спутникового вещания принимает радиосигналы. Далее, устройство, такое как телевизор (приемник) ех300 и приставка цифрового телевидения (STB) ех217, декодирует принятые мультиплексированные данные и воспроизводит декодированные данные (то есть, функционирует как устройство декодирования изображения, соответствующее варианту настоящего изобретения).
Дополнительно, устройство считывания/записи ех218 (i) считывает и декодирует мультиплексированные данные, записанные на носителе ех215 записи, таком как DVD и BD, или (i) кодирует видеосигналы на носителе ех215 записи и, в некоторых случаях, записывает данные, полученные посредством мультиплексирования аудиосигнала в кодированные данные. Устройство считывания/записи ех218 может содержать устройство декодирования движущегося изображения или устройство кодирования движущегося изображения, как показано в каждом из вариантов осуществления. В этом случае воспроизведенные видеосигналы отображаются на мониторе ех219 и могут воспроизводиться другим устройством или системой, используя носитель ех215 записи, на котором записывают мультиплексированные данные. Также возможно реализовать устройство декодирования движущегося изображения в приставке ex2l7 цифрового телевидения, подключенной к кабелю ex203 для приема кабельного телевидения или к антенне ex204 для приема сигналов спутникового и/или наземного вещания, так чтобы отображать видеосигналы на мониторе ex219 телевизионного приемника ex300. Устройство декодирования движущегося изображения может быть реализовано не в приставке цифрового телевидения, а в телевизоре ех300.
На фиг. 30 представлена телевизор (приемник) ех300, использующая способ кодирования движущегося изображения и способ декодирования движущегося изображения, описанные в каждом из вариантов осуществления. Телевизор ех300 содержит: тюнер ex301, которые получает или предоставляет мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные, через антенну ex204 или по кабелю ex203 и т.д., которые принимают вещательные передачи; блок ex302 модуляции/демодуляции, который демодулирует принятые мультиплексированные данные или модулирует данные в мультиплексированные данные, которые должны подаваться наружу; и блок ех203 мультиплексирования/демультиплексирования, который демультиплексирует модулированные мультиплексированные данные в видеоданные и аудиоданные или мультиплексирует видеоданные и аудиоданные, кодированные блоком ех306 обработки сигналов, в данные.
Телевизор ех300 дополнительно содержит: блок ех306 обработки сигналов, содержащий блок ех304 обработки аудиосигнала и блок ех305 обработки видеосигнала, которые декодируют аудиоданные и видеоданные и кодируют аудиоданные и видеоданные, соответственно (которые функционируют как устройство кодирования изображения и устройство декодирования изображения в соответствии с вариантами настоящего изобретения); и блок ех309 вывода, содержащий громкоговоритель 307, обеспечивающий декодированный аудиосигнал, и блок ех308 отображения, который отображает декодированный видеосигнал, такой как дисплей. Дополнительно, телевизор ех300 содержит интерфейсный блок ех317, содержащий блок ех312 ввода операций, который принимает ввод операций от пользователя. Дополнительно, телевизор ех300 содержит блок управления ех310, полностью управляющий всеми входящими элементами телевизора ех300, и блок ех311 цепи источника питания, обеспечивающий электропитание для каждого из элементов. Помимо блока ех312 ввода операций, интерфейсный блок ех317 может содержать: мост ex313, который соединяется с внешним устройством, таким как устройство ex218 считывания/записи; блок ex3l4 слота для возможности присоединения носителя ex216 записи, такого как SD-карта; привод ex315, соединяемый с внешним носителем записи, таким как жесткий диск; и модем ex316 для соединения с телефонной сетью. Здесь, носитель записи ex216 может электрически записывать информацию, используя энергонезависимый/энергозависимый элемент полупроводниковой памяти для хранения. Входящие элементы телевизора ех300 соединяют друг с другом через синхронную шину.
Сначала будет описана конфигурация, в которой телевизор ex300 декодирует мультиплексированные данные, полученные извне через антенну ex204 и т.д., и воспроизводит декодированные данные. В телевизоре ex300 после операции пользователя, выполняемой через удаленный контроллер ex220 и прочее, блок ex303 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные, демодулированные блоком ex302 модуляции/демодуляции, под управлением блока ex3l0 управления, содержащего CPU. Дополнительно, блок ex304 обработки аудиосигнала декодирует демультиплексированные аудиоданные, и блок ex305 обработки видеосигнала декодирует в телевизоре ex300 демультиплексированные видеоданные, используя способ декодирования, описанный в каждом из вариантов осуществления. Блок ех309 вывода обеспечивает вывод наружу декодированного видеосигнала и аудиосигнала, соответственно. Когда блок ex309 вывода выводит видеосигнал и аудиосигнал, сигналы могут временно храниться в буферах ex318 и ex319 и других, так чтобы сигналы воспроизводились синхронно друг с другом. Дополнительно, телевизор ex300 может считывать мультиплексированные данные не через широковещательную передачу и прочее, а с носителей ex215 и ex216 записи, таких как магнитный диск, оптический диск и SD-карта. Далее будет описана конфигурация, при которой телевизор ex300 кодирует аудиосигнал и видеосигнал и передает данные наружу или записывает данные на носителе записи. В телевизоре ex300 после введения пользователем операции через удаленный контроллер ex220 и т.п., блок ex304 обработки аудиосигнала кодирует аудиосигнал, а блок ex305 обработки видеосигнала кодирует видеосигнал под управлением блока ex310 управления, используя способ кодирования, описанный в каждом из вариантов осуществления. Блок ex303 мультиплексирования/демультиплексирования мультиплексирует кодированные видеосигнал и аудиосигнал и выводит результирующий сигнал наружу. Когда блок ex303 мультиплексирования/демультиплексирования мультиплексирует видеосигнал и аудиосигнал, сигналы могут временно храниться в буферах ex320 и ex321 и других, так чтобы сигналы воспроизводились синхронно друг с другом. Здесь, буферы ex318, ex319, ex320 и ex321 могут быть многочисленными, как показано на чертеже, или по меньшей мере один буфер может использоваться в телевизоре ex300 совместно. Дополнительно, данные могут храниться в буфере, так чтобы, например, можно было избежать системного переполнения и незаполнения между блоком ex302 модуляции/демодуляции и блоком ex303 мультиплексирования/ демультиплексирования.
Дополнительно, телевизор ex300 может содержать конфигурацию для приема входного AV-сигнала от микрофона или камеры, отличную от конфигурации для приема аудиоданных и видеоданных из широковещательной передачи или с носителя записи, и может кодировать полученные данные. Хотя телевизор ex300 может кодировать, мультиплексировать и предоставлять внешние данные, как в описании, она может быть способна только принимать, декодировать и обеспечивать внешние данных, но не кодировать, мультиплексировать и предоставлять внешние данные.
Дополнительно, когда устройство ех218 считывания/записи считывает или записывает мультиплексированные данные с носителя записи или на носитель записи, одно из телевизора ex300 и устройства ex218 записи/считывания может декодировать или кодировать мультиплексированные данные и телевизор ex300 и устройство ex218 считывания/записи может совместно использовать декодирование или кодирование.
Например, на фиг. 31 показана конфигурация блока ех400 воспроизведения/записи информации, когда данные считывают с оптического диска или записывают на оптический диск. Блок ex400 воспроизведения/записи информации содержит входящие элементы ex401, ex402, ex403, ex404, ex405, ex406 и ex407, описанные далее в настоящем документе. Оптическая головка ex401 излучает лазерное пятно на поверхность записи носителя ex215 записи, являющегося оптическим диском, чтобы записать информацию, и обнаруживает отраженный свет от поверхности записи носителя ex215 записи, чтобы считать информацию. Блок ex402 записи модуляции электрически управляет полупроводниковым лазером, находящимся в оптической головке ex401, и модулирует лазерный свет в соответствии с данными записи. Блок ex403 демодуляции воспроизведения усиливает сигнал воспроизведения, полученный посредством электрического детектирования света, отраженного от поверхности записи, используя фотодетектор, расположенный в оптической головке ex401, и демодулирует сигнал воспроизведения, выделяя сигнальную компоненту, записанную на носителе ex215 записи, чтобы воспроизвести необходимую информацию. Буфер ex404 временно хранит информацию, которая должна быть записана на носителе ex215 записи, и информацию, воспроизводимую с носителя ex215 записи. Двигатель ех405 диска вращает носитель ех215 записи. Блок ex406 сервоуправления перемещает оптическую головку ex401 по предварительно определенной информационной дорожке, управляя приводом вращения двигателя ex405 диска, чтобы следовать за лазерным пятном. Блок ex407 управления системой полностью управляет блоком ех400 воспроизведения/записи информации. Процессы считывания и записи могут быть реализованы блоком ex407 управления системой с использованием различной информации, хранящейся в буфере ex404, и формированием и добавлением, по мере необходимости, новой информации с помощью блока ex402 записи модуляции, блока ex403 демодуляции воспроизведения и блока ex406 сервоуправления, которые записывают и воспроизводят информацию через оптическую головку ex401, осуществляя, в то же время, скоординированное управление. Блок ex407 управления системой содержит, например, микропроцессор, и исполняет обработку, предписывая компьютеру выполнять программу считывания и записи.
Хотя оптическая головка ex401 согласно описанию излучает лазерное пятно, она может выполнять запись высокой плотности, используя свет в ближней зоне.
На фиг. 32 показан носитель записи ex215, являющийся оптическим диском. На поверхности записи носителя ex215 записи по спирали формируют направляющие канавки и на информационной дорожке ex230 заранее записывается адресная информация, указывающая абсолютное положение на диске в соответствии с изменением формы направляющих канавок. Адресная информация содержит информацию для определения положений блоков ex231 записи, которые являются единицей записи данных. Воспроизведение информационной дорожки ex230 и считывание адресной информации в устройстве, которое записывает и воспроизводит данные, может привести к определению положений блоков записи. Дополнительно, носитель ex215 записи содержит область ex233 записи данных, внутреннюю периферическую область ex232 и внешнюю периферическую область ex234. Область ex233 записи данных является областью для использования при записи данных пользователя. Внутренняя периферическая область ex232 и внешняя периферическая область ex234, которые находятся внутри и снаружи области ex233 записи данных, соответственно, являются областями для определенного использования, за исключением записи данных пользователя. Блок 400 воспроизведения/записи информации считывает и записывает кодированные аудио данные, кодированные видеоданные или мультиплексированные данные, полученные посредством мультиплексирования кодированных аудиоданных и видеоданных из и на области ex233 записи данных носителя записи ex215 данных.
Хотя оптический диск, имеющий слой, такой как DVD и BD, описывается в описании как пример, оптический диск не ограничивается такими дисками и может быть оптическим диском, имеющим многослойную структуру и пригодным для записи на части, отличной от поверхности. Дополнительно, оптический диск может иметь структуру для многомерной записи/воспроизведения, такой как запись информации с использованием света различных цветов с различными длинами волн на одном и том же участке оптического диска, и для записи информации, имеющей различные слои, с различных углов.
Дополнительно, автомобиль ex210, имеющий антенну ex205, может принимать данные от спутника ex202 и другие данные и воспроизводить видеоданные на устройстве отображения, таком как автомобильная навигационная система ex211, установленная в автомобиле ex210, в цифровой широковещательногй системе ех200. Здесь конфигурация автомобильной навигационной системы ex211 будет являться конфигурацией, содержащей, например, блок приема GPS, из числа конфигураций, показанных на фиг. 30. То же самое будет действительно для конфигурации компьютера ex111, сотового телефона ex114 и других.
На фиг. 33А представлен сотовый телефон ех314, использующий способ кодирования движущегося изображения и способ декодирования движущегося изображения, описанные в вариантах осуществления. Сотоый телефон ex114 содержит: антенна ex350 для передачи и получения радиоволн через базовую станцию ех110; блок ех365 камеры, способный захватывать двужущиеся и неподвижные изображения; и блок ex358 дисплея, такой как жидкокристаллический дисплей для отображения таких данных, как декодированные видеоданные, захваченное блоком ex365 камеры или принятые антенной ex350. Сотовый телефон ex114 дополнительно содержит: блок основного корпуса, содержащий блок е366 рабочих клавиш; блок ex357 аудиовыхода, такой как громкоговоритель для вывода аудиоданных; блок ex356 аудиовхода, такой как микрофон, для ввода аудиоданных; блок ex367 запоминающего устройства для хранения захваченных видео или неподвижных изображений, записанных аудиоданных, кодированных или декодированных данных, принятых видео, неподвижных изображений, электронных писем и прочего; и блок ex364 слота, являющийся интерфейсным блоком для носителя записи, который хранит данные тем же самым способом, что и блок ex367 запоминающего устройства.
Далее пример конфигурации сотового телефона ех114 будет описан со ссылкой на фиг. 33В. В сотовом телефоне ех114 основной блок ex360 управления, предназначенный для общего управления каждым блоком основного корпуса, в том числе, дисплеем ex358, а также блоком ex366 рабочих клавиш, взаимно соединяется через синхронную шину ex370 с блоком ex361 цепи источника питания, блоком ех363 управления вводом операций, блоком ex355 обработки видеосигнала, интерфейсным блоком ex363 камеры, блоком ex359 управления жидкокристаллическим дисплеем (LCD), блоком ех352 модуляции/демодуляции, блоком ех353 мультиплексирования/ демультиплексирования, блоком ex354 обработки аудиосигнала, блоком ex364 слота и блоком ex367 памяти.
Когда за счет операции пользователя включена клавиша окончания вызова или клавиша питания, блок ех361 цепи источника питания подает электропитание на соответствующие блоки от аккумулятора, чтобы привести в действие сотовый телефон ех114.
В сотовом телефоне ex114, блок ex354 обработки аудиосигнала преобразует аудиосигналы, собранные блоком ex356 ввода аудио в режиме речевой связи, в цифровые аудиосигналы под управлением основного блока ех360 управления, содержащего CPU, ROM и RAM. Затем блок ех352 модуляции/демодуляции выполняет обработку с расширением спектра для цифровых аудиосигналов и блок ех351 передачи и приема выполняет для данных цифро-аналоговое преобразование и преобразование частоты, чтобы передать результирующие данные через антенну ex350. Кроме того, в сотовом телефоне ex114 блок ез351 передачи и приема усиливает данные, принятые антенной ex350 в режиме преобразования речи, и выполняет преобразование частоты и аналого-цифровое преобразование данных. Затем блок ex352 модуляции/демодуляции выполняет для данных обработку, обратную расширению спектра, и блок ex354 обработки аудиосигнала преобразует их в аналоговые аудиосигналы, чтобы вывести их через блок ex357 аудиовыхода.
Кроме того, когда в режиме передачи данных передается электронная почта, текстовые данные электронной почты, введенные посредством блока ех366 рабочих клавиш и прочего основного блока, посылают на основной блок ex360 управления через блок ех362 управления вводом операций. Блок ех360 основного управления предписывает блоку ех352 модуляции/демодуляции выполнять обработку с расширением спектра для текстовых данных и блок ех351 передачи и приема выполняет для результирующих данных цифро-аналоговое преобразование и преобразование частоты, чтобы передать данные на базовую станцию ех110 через антенну ex350.Когда электронная почта принята, для принятых данных выполняется обработка, которая является обработкой, приблизительно обратной для передачи электронной почты, и результирующие данные подают на блок ех358 отображения.
Когда в режиме передачи данных передают видеоданные, неподвижные изображения или видеоданные и аудиоданные, блок ex355 обработки видеосигнала сжимает и кодирует видеосигналы, поданные от блока ex365 камеры, используя способ кодирования движущегося изображения, показанный в каждом из вариантов осуществления (то есть, функционирует как устройство кодирования изображения, соответствующее варианту настоящего изобретения), и передает кодированные видеоданные на блок ex353 мультиплексирования/демультиплексирования. Напротив, в то время, когда блок ex365 камеры захватывает видео, неподвижные изображения и прочее, блок ex354 обработки аудиосигнала кодирует аудиосигналы, собранные блоком ех356 ввода аудио, и передает кодированные аудиоданные на блок ех353 мультиплексирования/демультиплексирования.
Блок ех353 мультиплексирования/демультиплексирования мультиплексирует кодированные видеоданные, поданные от блока ex355 обработки видеосигнала, и кодированные аудиоданные, поданные от блока ex354 обработки аудиосигнала, используя предварительно определенный способ. Затем блок ех352 модуляции/демодуляции (блок схемы модуляции/демодуляции) выполняет обработку расширения спектра для мультиплексированных данных и блок ех351 передачи и приема выполняет цифро-аналоговое преобразование данных и преобразование частоты, чтобы передать результирующие данные через антенну ex350.
При приеме данных видеофайла, которые связаны с веб-страницей и другими в режиме передачи данных или при приеме электронной почты с прикрепленными видеоданными и/или аудиоданными, чтобы декодировать мультиплексированные данные, принятые через антенну ex350, блок ex353 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные в поток битов видеоданных и поток битов аудиоданных и подает на блок ex355 обработки видеосигнала кодированные видеоданные и на блок ex354 обработки аудиосигнала кодированные аудиоданные через синхронную шину ex370. Блок ex355 обаботки видеосигнала декодирует видеосигнал, используя способ декодирования движущегося изображения, показанный в каждом из вариантов осуществления (то есть, функционирует как устройство декодирования изображения в соответствии с вариантом настоящего изобретения) и затем блок ex358 отображает, например, видеоизображения и неподвижные изображения, содержащиеся в видеофайле, связанном с веб-стрницей, через блок ех359 управления LCD. Дополнительно, блок ex354 обработки аудиосигнала декодирует аудиосигнал и блок ex357 вывода аудио обеспечивает вывод аудиосигнала.
Дополнительно, подобно телевизору ex300, терминал, такой как сотовый телефон ex114, вероятно, имеет 3 типа конфигураций для осуществления, в том числе, но не только, (i) терминал передачи и приема, включающий в себя как устройство кодирования, так и устройство декодирования, а также (ii) терминал передачи, включающий в себя только устройство кодирования и (iii) терминал приема, включающий в себя только устройство декодирования. Хотя цифровая широковещательная система ex200 принимает и передает мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные согласно описанию, мультиплексированные данные могут быть данными, полученными посредством мультиплексирования не аудиоданных, а данных символов, связанных с видеоданными, в видеоданные, и могут быть не мультиплексированными данными, а собственно видеоданными.
Например, способ кодирования движущегося изображения и способ декодирования движущегося изображения в каждом из вариантов осуществления могут использоваться в любом из описанных устройств и систем. Таким образом, могут быть достигнуты преимущества, описанные в каждом из вариантов осуществления.
Дополнительно, настоящее изобретение не ограничивается вариантами осуществления и возможны различные модификации и версии, не отступающие от объема настоящего изобретения.
ВАРИАНТ 5 ОСУЩЕСТВЛЕНИЯ
Видеоданные могут быть сформированы с помощью переключения, по мере необходимости, между (i) способом кодирования движущихся изображений или устройством кодирования движущихся изображений, показанными в каждом из вариантов осуществления и (ii) способом кодирования движущегося изображения или устройством кодирования движущегося изображения в соответствии с различными стандартами, такими как MPEG-2, MPEG-4 AVC и VC-1.
Здесь, когда формируется и затем декодируется множество видеоданных, удовлетворяющих различным стандартам, способы декодирования должны выбираться так, чтобы соответствовать различным стандартам. Однако, поскольку не может быть определен стандарт, соответствующий каждому из множества видеоданных, подлежащих декодированию, существует проблема, что не может быть выбран соответствующий способ декодирования.
Для решения указанной проблемы мультиплексированные данные, полученные мультиплексированием аудиоданных и прочего в видеоданные, имеют структуру, содержащую идентификационную информацию, указывающую, какому стандарту соответствуют видеоданные. Далее будет описана конкретная структура мультиплексированных данных, содержащая видеоданные, сформированные по способу кодирования движущегося изображения устройством кодирования движущегося изображения, представленным в каждом из вариантов осуществления. Мультиплексированные данные являются цифровым потоком в формате транспортного потока MPEG-2.
На фиг. 34 показан пример структуры мультиплексированных данных. Как показано на фиг. 34, мультиплексированные данные могут быть получены мультиплексированием по меньшей мере одного из следующих потоков: видеопотока, аудиопотока, потока презентационной графики (PG) или интерактивного графического потока. Видеопоток представляет первичные видеоданные и вторичные видеоданные фильма, аудиопоток (IG) представляет первичную аудиочасть и вторичную аудиочасть, которая должна смешиваться с первичной аудиочастью, и поток презентационной графики представляет субтитры фильма. Здесь основные видеоданные являются обычными видеоданными, которые должны отображаться на экране, а вторичные видеоданные являются видеоданными, которые должны отображаться в небольшом окне в основных видеоданных. Кроме того, интерактивный графический поток представляет интерактивный экран, который должен быть сформирован, располагая на экране компоненты GUI. Видеопоток кодируется способом кодирования движущегося изображения или с помощью устройства кодирования движущегося изображения, показанных в каждом из вариантов осуществления, или способом кодирования движущегося изображения или устройством кодирования движущегося изображения в соответствии с традиционным стандартом, таким как MPEG-2, MPEG-4 AVC, и VC 1. Аудиопоток кодируется в соответствии с такими стандартами, как Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD и линейной PCM.
Каждый поток, содержащийся в мультиплексированных данных, идентифицируется с помощью PID. Например, 0x1011 выделяется видеопотоку, который должен использоваться для видеоданных фильма, 0x1100-0x111F выделяются аудиопотокам, 0x1200-0x121F выделяются потокам презентационной графики, 0x1400-0x141F выделяются интерактивным графическим потокам, 0x1B00-0x1B1F выделяются видеопотокам, которые должны использоваться для вторичных видеоданных фильма, и 0x1A00-0x1A1F выделяются аудиопотокам, которые будут использоваться для вторичных аудиоданных, которые должны смешиваться с основными аудиоданными.
На фиг. 35 схематично представлен порядок мультиплексирования данных. Сначала видеопоток ex235, состоящий из видеокадров, и аудиопоток ex238, состоящий из аудиокадров, преобразуется в поток пакетов ex236 PES и поток пакетов ex239 PES и дополнительно в пакеты ex237 TS и пакеты ex240 TS, соответственно. Аналогично поток ex241 презентационной графики и данные потока ex244 интерактивной графики преобразуют в поток пакетов ex242 PES и поток пакетов ex245 PES и дополнительно в пакеты ex243 TS и пакеты ex246 TS, соответственно. Эти пакеты TS мультиплексируют в поток для получения мультиплексированных данных ex247.
На фиг. 36 более подробно представлен пример того, как видеопоток хранится в потоке пакетов PES. Первая полоса на фиг. 36 показывает поток видеокадров в видеопотоке. Вторая полоса показывает поток пакетов PES. Как указано стрелками, обозначенными yy1, yy2, yy3 и yy4 на фиг. 36, видеопоток делится на изображения, такие как I-изображения, B-изображения и P-изображения, каждое из которых является блоком представления видеоданных, и эти изображения хранятся в полезной нагрузке каждого из пакетов PES. Каждый из пакетов PES имеет заголок PES и в заголовке PES хранится отметка времени представления (PT), указывающая время отображения изображения, и отметка времени декодирования (DTS), указывающая время декодирования изображения.
На фиг. 37 представлен формат пакетов TS для окончательной записи в мультиплексированных данных. Каждый из пакетов TS является 188-байтовым пакетом фиксированной длины, содержащим 4-хбайтовый заголовок TS, имеющий такую информацию, как PID, для идентификации потока и 184-байтовую полезную нагрузку TS для хранения данных. Пакеты PES делятся и хранятся в полезных нагрузках TS, соответственно. При использовании BD ROM каждому из пакетов TS дается 4-хбайтовый дополнительный заголовок TP_Extra_Header, приводя в результате к 192-байтовым исходным пакетам. Исходные пакеты записывают в мультиплексированные данные. TP_Extra_Header хранит информацию, такую как Arrival_Time_Stamp (отметка времени поступления) (ATS). ATS указывает время начала преобразования, когда каждый из пакетов TS должен быть преобразован для PID-фильтра. Исходные пакеты устанавливают в мультиплексированные данные, как показано в нижней части на фиг. 37. Номера, постепенно увеличивающиеся от заголовка мультиплексированных данных, называют номерами исходных пакетов (SPN).
Каждый из пакетов TS, содержащихся в мультиплексированных данных, содержит не только потоки аудио, видео, субтитров и прочего, но также таблицу ассоциаций программ (PAT), таблицу карт программ (PMT) и временную шкалу программ (PCR). PAT показывает то, что указывает PID в PMT, используемой в мультиплексированных данных, и PID самой PAT регистрируется как ноль. PMT хранит PID для потоков видео, аудио, субтитров и прочее, содержащихся в мультиплексированных данных, и информацию об атрибутах потоков, соответствующих PID. PMT также имеет различные дескрипторы, связанные с мультиплексированными данными. Дескрипторы имеют информацию, такую как информация управления копированием, показывающую, разрешается ли копирование мультиплексированных данных. PCR хранит временную информацию STC, соответствующую ATS, показывающую, когда пакет PCR передается декодеру, чтобы достигнуть синхронизации между временной шкалой прибытия (ATC), которая является осью времени ATS, и временной шкалой системы (STC), которая является осью времени PTS и DTS.
На фиг. 38 подробно показана структура данных PMT. Заголовок PMT располагается в верхней части PMT. Заголовок PMT описывает длину данных, содержащихся в PMT, и прочее. Множество дескрипторов, связанных с мультиплексированными данными, располагают после заголовка PMT. Информация, такая как информация управления копированием, описывается в дескрипторах. После дескрипторов располагается множество фрагментов информации потока, связанной с потоками, содержащимися в мультиплексированных данных. Каждый фрагмент информации потока содержит дескрипторы потоков, каждый из которых содержит описательную информацию, такую как тип потока для идентификации кодека сжатия потока, PID потока и информации об атрибутах потоков (такой как частота кадров или формат кадров). Дескрипторы потоков количественно равны количеству потоков в мультиплексированных данных.
Когда мультиплексированные данные записывают на носителе записи и прочем, они записывают вместе с файлами информации о мультиплексированных данных.
Каждый из файлов информации о мультиплексированных данных является информацией управления мультиплексированных данных, как показано на фиг. 39. Файлы информации о мультиплексированных данных находятся в полном соответствии с мультиплексированными данными и каждым из файлов информации о мультиплексированных данных, информации о потоке атрибутов и картой вхождений.
Как показано на фиг. 39, информация о мультиплексированных данных содержит скорость системы, время начала воспроизведения и время окончания воспроизведения. Скорость системы указывает максимальную скорость передачи, при которой системный целевой декодер, который будет описан позднее, передает мультиплексированные данные на PID-фильтр. Интервалы ATS, содержащиеся в мультиплексированных данных, устанавливают не выше, чем скорость системы. Время начала воспроизведения указывает PTS в видеокадре в заголовке мультиплексированных данных. Интервал одного кадра добавляется к PTS в видеокадре в конце мультиплексированных данных и PTS устанавливается на время окончания воспроизведения.
Как показано на фиг. 40, фрагмент информации атрибутов регистрируется в информации атрибутов потока для каждого PID каждого потока, содержащегося в мультиплексированных данных. Каждый фрагмент информации атрибутов имеет различную информацию в зависимости от того, является ли соответствующий поток видеопотоком, аудиопотоком, потоком презентационной графики или интерактивным графическим потоком. Каждый фрагмент информации об атрибутах видеопотока несет информацию, содержащую то, какого рода кодек сжатия используется для сжатия видеопотока, разрешение, формат кадров и частоту кадров для фрагментов данных изображения, которые включаются в видеопоток. Каждый фрагмент информации об атрибутах аудиопотока несет информацию, содержащую то, какого рода кодек сжатия используется для сжатия аудиопотока, сколько каналов содержится в аудиопотоке, какой язык поддерживает аудиопоток и насколько высока частота выборки. Информация об атрибутах видеопотока и информация об атрибутах аудиопотока используют для инициализации декодера перед тем, как проигрыватель воспроизведет информацию.
В настоящем варианте осуществления мультиплексированные данные, которые должны использоваться, имеют тип потока, содержащийся в PMT. Дополнительно, когда мультиплексированные данные записываются на носителе записи, используется информация атрибутов видеопотока, содержащаяся в информации мультиплексированных данных. Более конкретно, способ кодирования движущегося изображения или устройство кодирования движущегося изображения, описанные в каждом из вариантов осуществления, содержат этап или блок распределения уникальной информации, указывающей видеоданные, сформированные по способу кодирования движущегося изображения или устройству кодирования движущегося изображения в каждом из вариантов осуществления, по типу потока, содержащемуся в PMT или информации атрибутов видеопотока. При такой конфигурации видеоданные, сформированные по способу кодирования движущегося изображения или устройству кодирования движущегося изображения, описанными в каждом из вариантов осуществления, могут отличаться от видеоданных, соответствующих другому стандарту.
Дополнительно, на фиг. 41 представлены этапы способа декодирования движущегося изображения, соответствующего настоящему варианту осуществления. На этапе exS100 тип потока, содержащийся в PMT или в информации атрибутов видеопотока, содержащейся в информации мультиплексированных данных, получается из мультиплексированных данных. Затем на этапе exS101 определяется, указывает ли тип потока или информация атрибутов видеопотока, что мультиплексированные данные сформированы по способу кодирования движущегося изображения или устройству кодирования движущегося изображения в каждом из вариантов осуществления. Когда определено, что тип потока или информация атрибутов видеопотока указывает, что мультиплексированные данные сформированы по способу кодирования движущегося изображения или устройству кодирования движущегося изображения в каждом из вариантов осуществления, на этапе exS102 декодирование выполняется по способу декодирования движущегося изображения в каждом из вариантов осуществления. Дополнительно, когда тип потока или информация атрибутов видеопотока указывает соответствие традиционным стандартам, таким как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS103 декодирование выполняется по способу декодирования движущегося изображения в соответствии с традиционными стандартами.
По существу, выделение нового уникального значения типу потока или информации атрибутов видеопотока позволяет определение того, может ли способ декодирования движущегося изображения или устройство декодирования движущегося изображения, которые описываются в каждом из вариантов осуществления, выполнить декодирование. Даже когда вводятся мультиплексированные данные, соответствующие другому стандарту, могут быть выбраны соответствующий способ или устройство декодирования. Таким образом, становится возможным декодировать информацию без какой-либо ошибки. Дополнительно, способ кодирования движущегося изображения или устройство декодирования движущегося изображения в настоящем варианте осуществления могут использоваться в устройствах и системах, описанных выше.
ВАРИАНТ 6 ОСУЩЕСТВЛЕНИЯ
Каждый способ кодирования изображения, устройство кодирования движущегося изображения, способ декодирования движущегося изображения и устройство декодирования движущегося изображения в каждом из вариантов осуществления обычно осуществляется в форме интегральной схемы или большой интегральной схемы (LSI). Как пример LSI, на фиг. 42 показана конфигурация LSI ex500, которая изготовлена в виде одной микросхемы. LSI ex500 содержит элементы exS501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 и ex509, которые будут описаны ниже, и элементы соединяют друг с другом через шину ex510. При включении блока ex505 цепи источника питания блок ex505 цепи источника питания активируется, подавая электропитание на каждый из элементов.
Например, когда выполняется кодирование, LSI ex500 принимает AV-сигнал от микрофона ex117, камеры ex113 и других через устройство ex509 ввода-вывода AV под управлением блока ex501 управления, содержащего CPU ex502, контроллер ex503 запоминающего устройства, контроллер ex504 потоков и блок ex512 управления частотой возбуждения. Принятый AV-сигнал временно сохраняется во внешнем запоминающем устройстве ex511, таком как SDRAM. Под управлением блока ех501 управления запомненные данные сегментируются на участки данных в соответствии с объемом и скоростью обработки, которые будут передаваться на блок ex507 обработки сигналов. Затем блок ex507 обработки сигналов кодирует аудиосигнал и/или видеосигнал. Здесь кодирование видеосигнала является кодированием, описанным в каждом из вариантов осуществления. Дополнительно, блок ex507 обработки сигналов иногда мультиплексирует кодированные аудиоданные и кодированные видеоданные и поток ex506 обеспечивают вывод мультиплексированных данных наружу. Предоставленные мультиплексированные данные передают базовой станции ех107 или записывают на носителе ex215 записи. Если наборы данных мультиплексируют, данные должны временно сохраняться в буфере ex508, так чтобы наборы данных синхронизировались друг с другом.
Хотя запоминающее устройство ех511 является элементом, находящимся снаружи LSI ex500, оно может содержаться в LSI ex500. Буфер ex508 не ограничивается одним буфером и может состоять из нескольких буферов. Дополнительно, LSI ex500 может быть изготовлена из одной микросхемы или из множества микросхем.
Дополнительно, хотя блок ex501 управления содержит CPU ex502, контроллер ex503 запоминающего устройства, контроллер ex504 потоков, блок ex512 управления частотой возбуждения, конфигурация блока ех501 управления не ограничивается только этим. Например, блок ех507 обработки сигналов может дополнительно содержать центральный процессор. Добавление другого CPU в блок ex507 обработки сигналов может увеличивать скорость обработки. Дополнительно, как другой пример, центральный процессор ex502 может служить или быть частью блока ex507 обработки сигналов, и, например, может содержать блок обработки аудиосигнала. В таком случае блок ех501 управления содержит блок ex507 обработки сигналов или центральный процессор ex502, содержащий часть блока ex507 обработки сигналов.
Используемым здесь названием является LSI, но возможны названия IC, системная LSI, супер-LSI или ультра-LSI, в зависимости от степени интеграции.
Кроме того, пути достижения интеграции не ограничивают LSI и специальная схема или универсальный процессор и т.д. также могут быть подвергнуты интеграции. Для той же самой цели может использоваться матрица логических элементов с эксплуатационным программированием (FPGA), которая может программироваться после изготовления LSI, или переконфигурируемый процессор, который позволяет переконфигурировать соединения или конфигурацию LSI.
В будущем, по мере развития полупроводниковой технологии на смену LSI может прийти технология с новым брендом. Функциональные блоки могут интегрироваться, используя такую технологию. Существует возможность применения настоящего изобретения в биотехнологии.
ВАРИАНТ 7 ОСУЩЕСТВЛЕНИЯ
Когда декодируют видеоданные, сформированные способом кодирования движущегося изображения или устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, по сравнению с тем, когда декодируют видеоданные, соответствующие традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, объем обработки, вероятно, увеличивается. Таким образом, LSI ex500 нуждается в установке частоты возбуждения более высокой, чем CPU ex502, который должен использоваться, когда видеоданные декодируют в соответствии с традиционным стандартом. Однако, когда частота возбуждения устанавливается более высокой, существует проблема повышения потребляемой мощности.
Для решения проблемы устройство декодирования движущегося изображения, такое как телевизор ех300 и LSI ех500, конфигурируют для определения, какому стандарту соответствуют видеоданные, и переключения между частотами возбуждения в соответствии с определенным стандартом.
На фиг. 43 представлена конфигурация ех800, используемая в настоящем варианте осуществления. Когда видеоданные формируются способом кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, блок ех803 переключения частоты возбуждения устанавливает частоту возбуждения на более высокую частоту возбуждения. Затем блок ех803 переключения частоты возбуждения дает команду декодировать видеоданные блоку ех801 обработки декодирования, который выполняет способ декодирования движущегося изображения, описанный в каждом из вариантов осуществления. Когда видеоданные соответствуют традиционному стандарту, блок ех803 переключения частоты возбуждения устанавливает частоту возбуждения на частоту возбуждения, более низкую, чем в случае видеоданных, сформированных по способу кодирования движущегося изображения или устройством кодирования движущегося изображения, описанных в каждом из вариантов осуществления. Затем блок ех803 переключения частоты возбуждения дает команду блоку ех802 обработки декодирования, который соответствует традиционному стандарту, декодировать видеоданные.
Более конкретно, блок ех803 переключения частоты возбуждения содержит CPU ex502 и блок ex512 управления частотой возбуждения, показанные на фиг. 42. Здесь блок ех801 обработки декодирования, выполняющий способ декодирования движущегося изображения в каждом из вариантов осуществления, и блок ех802 обработки декодирования, действующий по традиционному стандарту, соответствуют блоку ех507 обработки сигналов, показанному на фиг. 42. CPU ex502 определяет, какому стандарту соответствуют видеоданные. Затем блок ех512 управления частотой возбуждения определяет частоту возбуждения, основываясь на сигнале, полученном от CPU ex502. Дополнительно, блок ех507 обработки сигналов декодирует видеоданные, основываясь на сигнале, полученном от CPU ex502. Например, для идентификации видеоданных можно использовать идентификационную информацию, описанную в варианте 5 осуществления. Идентификационная информация не ограничивается той, которая описана в варианте 5 осуществления, а может быть любой информацией, указываеющей, какому стандарту соответствуют видеоданные. Например, когда определение, какому стандарту соответствуют видеоданные, может быть выполнено на основе внешнего сигнала для определения, какие видеоданные используют для телевизора или диска и т.д., то определение может быть сделано на основе такого внешнего сигнала. Дополнительно, CPU ex502 выбирает частоту возбуждения, основываясь, например, на таблице поиска, в которой стандарты видеоданных связывают с частотами возбуждения, как показано на фиг. 45. Частота возбуждения может быть выбрана при хранении таблицы поиска в буфере ex508 и во внутренней памяти LSI и при обращении к таблице поиска через CPU ex502.
На фиг. 44 показаны этапы выполнения способа, соответствующего настоящему варианту осуществления. Сначала на этапе exS200 блок ex507 обработки сигналов получает идентификационную информацию из мультиплексированных данных. Затем, на этапе exS201 CPU ex502 определяет, сформированы ли видеоданные по способу кодирования и устройством кодирования, описанными в каждом из вариантов осуществления, основываясь на идентификационной информации. Когда видеоданные формируют по способу кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, на этапе exS202 CPU ex502 передает сигнал для установки частоты возбуждения на более высокую частоту возбуждения в блоке ex512 управления частотой возбуждения. Затем блок ех512 управления частотой возбуждения определяет частоту возбуждения, основываясь на сигнале, полученном от CPU ex502. С другой стороны, когда идентификационная информация указывает, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS203 CPU ex502 передает сигнал для установки частоты возбуждения на более низкую частоту возбуждения в блоке ex512 управления частотой возбуждения. Затем блок ex512 управления частотой возбуждения устанавливает частоту возбуждения на более низкую частоту возбуждения, чем в случае, когда видеоданные сформированы по способу кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления.
Дополнительно, наряду с переключением частот возбуждения, эффект экономии мощности питания может быть улучшен за счет изменения напряжения, которое должно быть подано на LSI ex500 или устройство, содержащее LSI ex500. Например, когда частота возбуждения устанавливается ниже, напряжение, которое должно быть подано на LSI ex500 или устройство, содержащее LSI exS500, вероятно, должно устанавливаться на напряжение, более низкое, чем в случае, когда частота возбуждения устанавливается выше.
Дополнительно, в качестве способа установки частоты возбуждения, когда объем обработки для декодирования увеличивается, частота возбуждения может быть установлена выше, а когда объем обработки для декодирования снижается, частота возбуждения может быть установлена ниже. Таким образом, способ установки не ограничивается тем, что описано выше. Например, когда объем обработки для декодирования видеоданных в соответствии с MPEG-4 AVC больше, чем объем обработки для декодирования видеоданных, сформированных способом кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, частота возбуждения может устанавливаться в порядке, обратном порядку установки, описанному выше.
Дополнительно, способ установки частоты возбуждения не ограничивается способом установки частоты возбуждения, описанным ниже. Например, когда идентификационная информация указывает, что видеоданные сформированы способом кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, напряжение, которое должно быть подано на LSI ex500 или устройство, содержащее LSI ex500, вероятно, устанавливается более высоким. Когда идентификационная информация указывает, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, напряжение, которое должно быть подано на LSI ex500 или устройство, содержащее LSI ex500, вероятно, устанавливается более низким. В качестве другого примера, когда идентификационная информация указывает, что видеоданные сформированы способом кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, возбуждение CPU ex502, вероятно, не должно приостанавливаться. Когда идентификационная информация указывает, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, возбуждение CPU ex502, вероятно, приостанавливается в заданное время, поскольку CPU ex502 имеет дополнительные возможности обработки. Даже когда идентификационная информация указывает, что видеоданные сформированы способом кодирования движущегося изображения и устройством кодирования движущегося изображения, описанными в каждом из вариантов осуществления, в случае, когда CPU ex502 имеет дополнительные возможности обработки, возбуждение CPU ex502, вероятно, приостанавливается в заданное время. В таком случае время приостановки, вероятно, устанавливается более коротким, чем в случае, когда идентификационная информация указывает, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1.
Соответственно, эффект экономии электроэнергии может быть улучшен, переключаясь между частотами возбуждения в соответствии со стандартом, которому соответствуют видеоданные. Дополнительно, когда LSI ex500 или устройство, содержащее LSI ex500, приводятся в действие с использованием батареи, срок службы батареи может быть увеличен за счет эффекта экономии электроэнергии.
ВАРИАНТ 8 ОСУЩЕСТВЛЕНИЯ
Существуют случаи, когда для устройств и систем, таких как телевизор и сотовый телефон, существует множество видеоданных, соответствующих разным стандартам. Чтобы иметь возможность декодировать множество видеоданных, соответствующих различным стандартам, блок ex507 обработки сигналов для LSI ex500 должен соответствовать различным стандартам. Однако, при индивидуальном использовании блоков ex507 обработки сигналов, удовлетворяющих соответствующим стандартам, возникают проблемы увеличения размеров схемы LSI ex500 и увеличения стоимости.
Чтобы решить указанную проблему, предлагается конфигурация, в которой блок обработки декодирования для реализации способа декодирования движущегося изображения, описанный в каждом из вариантов осуществления, и блок обработки декодирования, соответствующий традиционным стандартам, таким как MPEG-2, MPEG-4 AVC и VC-1 частично используют совместно. Ex900 на фиг. 46A показывает пример такой конфигурации. Например, способ декодирования движущегося изображения, описанный в каждом из вариантов осуществления, и способ декодирования движущегося изображения, соответствующий MPEG-4 AVC, в совокупности имеют в некоторой степени общие элементы обработки, такие как энтропийное кодирование, обратное квантование, деблокирующая фильтрация и предсказание для компенсации движения. К элементам обработки, используемым совместно, вероятно относится использование блока ех902 обработки декодирования, соответствующего MPEG-4 AVC. Напротив, специализированный блок ех901 обработки декодирования, вероятно, используется для другой обработки, уникальной в аспекте настоящего изобретения. Так как вариант настоящего изобретения характеризуется энтропийным декодированием, для энтропийного декодирования используется, в частности, например, специализированный блок ex901 обработки декодирования. В противном случае, блок обработки декодирования, вероятно, совместно используется для одного из обратного квантования, деблокирующей фильтрации и компенсации движения или для всех этих видов обработки. Блок обработки декодирования для реализации способа декодирования движущегося изображения, описанного в каждом из вариантов осуществления, может быть совместно использован для выполняемой совместной обработки, а специализированный блок обработки декодирования может использоваться для обработки, уникальной для обработки, соответствующей MPEG-4 AVC.
Дополнительно, ex1000 на фиг. 46B показывает другой пример такой обработки с частичным совместным использованием. Этот пример использует конфигурацию, содержащую специализированный блок ех1001 обработки декодирования, поддерживающий обработку, уникальную для варианта настоящего изобретения, специализированый блок ех1002 обработки декодирования, поддерживающий обработку, уникальную для другого традиционного стандарта, и блок ех1003 обработки декодирования, поддерживающий обработку, совместно используемую способом декодирования движущегося изображения, соответствующим варианту настоящего изобретения, и традиционным способом декодирования движущегося изображения. Здесь специализированные блоки ех1001 и ех1002 обработки декодирования не обязательно специализированы для обработки, соответствующей варианту настоящего изобретения, и обработки по традиционному стандарту, соответственно, и могут быть блоками, пригодными для осуществления общей обработки. Дополнительно, конфигурация настоящего варианта осуществления может быть реализована с помощью LSI ex500.
Также, снижение размеров схемы LSI и уменьшение стоимости возможны при совместном использовании блока обработки декодирования для обработки, которая должна выполняться совместно способом декодирования движущегося изображения, соответствующим варианту настоящего изобретения, и способом декодирования движущегося изображения, соответствующим традиционному стандарту.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
Способ кодирования изображения и способ декодирования изображения, соответствующие варианту настоящего изобретения, применимы, например, к телевизионным приемникам, цифровым видеомагнитофонам, автомобильным навигационным системам, сотовым телефонам, цифровым камерам, цифровым видеокамерам и т.п.
ПЕРЕЧЕНЬ ПОЗИЦИОННЫХ ОБОЗНАЧЕНИЙ
100, 500, X00 Декодер режима внутрикадрового предсказания
101 Декодер префикса режима предсказания яркости
102 Декодер суффикса режима предсказания яркости
103 Декодер префикса режима предсказания цветности
104 Декодер суффикса режима предсказания цветности
105, 503 Блок воссоздания режима предсказания яркости
106, 504 Блок воссоздания режима предсказания цветности
200, 800 Устройство кодирования изображения
205 Вычитающее устройство
210 Блок преобразования и квантования
220 Энтропийный кодер
230, 420 Блок обратного квантования и обратного преобразования
235, 425 Сумматор
240, 430 Деблокирующий фильтр
250, 440 Запоминающее устройство
260, 450 Блок внутрикадрового предсказания
270 Блок обнаружения движения
280, 460 Блок компенсации движения
290, 270 Блок переключения внутрикадрового/межкадрового предсказания
400, 900 Устройство кодирования изображения
410 Энтропийный детектор
501 Декодер префикса смешанного режима
502 Декодер префикса смешанного режима
801 Кодер
901 Декодер
1000 Блок кодирования
1001, 1002, 1003, 1004 Блок предсказания
X01 Декодер режима предсказания яркости
X02 Декодер режима предсказания цветности