СПОСОБ КОДИРОВАНИЯ ДВИЖУЩИХСЯ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ, УСТРОЙСТВО КОДИРОВАНИЯ ДВИЖУЩИХСЯ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ, СПОСОБ ДЕКОДИРОВАНИЯ ДВИЖУЩИХСЯ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ ДВИЖУЩИХСЯ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ
MOVING GRAPHIC IMAGES CODING METHOD, MOVING GRAPHIC IMAGES CODING DEVICE, MOVING GRAPHIC IMAGES DECODING METHOD AND MOVING GRAPHIC IMAGES DECODING DEVICE

ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее изобретение относится к устройству и способу для кодирования или декодирования движущегося графического изображения и, в частности, к арифметическому кодированию или арифметическому декодированию в отношении параметра адаптивной к смещению (SAO) выборки.
УРОВЕНЬ ТЕХНИКИ
[0002] В последние годы можно наблюдать существенное техническое развитие цифровых видеоустройств и увеличение шансов для кодирования со сжатием сигнала (множество изображений, упорядоченных во временном ряду) видео (движущегося графического изображения) сигнала и записи сигнала видео на носители записи, такие, как DVD и жесткие диски или распространения сигнала видео в сети Интернет.H.264/AVC (MPEG-4 AVC) является одним из стандартов кодирования изображений и стандарт высокоэффективного кодирования видео (HEVC) в настоящее время считается стандартом следующего поколения.
[0003] Стандарт HEVC, описанный в NPL 1, предлагает процесс смещения выборки, называемый SAO. Процесс SAO является процессом для добавления значения смещения к значению выборки (пиксельному значению) в изображении (восстановленном изображении), декодированном из потока битов. Соответственно, восстановленное изображение, в котором был выполнен процесс SAO, допускает точное воспроизведение исходного изображения (входного изображения) перед кодированием и уменьшение ухудшения качества изображения вследствие кодирования.
СПИСОК ССЫЛОК
Непатентная литература
[0004] NPL 1 - Объединенная команда по Кодированию Видео (JCT-VC), ITU-T SG16 WP3 и ISO/IEC JTC1/SC29/WG11, 9-й съезд, Женева, CH, 27 апреля – 7 мая 2012, JCTVC-I0602_CDTexts_r3.doc, отчет BoG по объединенному тексту об адаптациях SAO на повестке JCTVC-I0030, http://phenix.it-sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I0602-v4.zip
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Техническая задача
[0005] Процессы кодирования/декодирования движущихся графических изображений с использованием традиционного процесса смещения выборки требуют подавления понижения эффективности кодирования и ускорения обработки или уменьшения нагрузки по обработке.
[0006] Таким образом, один или более раскрытых примерных вариантов осуществления обеспечивают способ кодирования движущихся графических изображений и способ декодирования движущихся графических изображений, который может ускорить обработку или сократить нагрузку по обработке одновременно с подавлением уменьшения эффективности кодирования в процессах кодирования/декодирования движущихся графических изображений с использованием процесса смещения выборки.
Решение задачи
[0007] Способ кодирования движущихся графических изображений согласно аспекту настоящего изобретения является способом кодирования движущихся графических изображений для кодирования входного изображения, и включает в себя: преобразование значения первого параметра в первый двоичный сигнал, первый параметр идентифицирует тип процесса смещения выборки, который должен быть применен к восстановленному изображению, соответствующему входному изображению; и кодирование по меньшей мере части первого двоичного сигнала посредством обходного арифметического кодирования с использованием фиксированной вероятности.
[0008] Общие или частные аспекты могут быть реализованы системой, устройством, интегральной схемой, компьютерной программой, или считываемым компьютером носителем записи или произвольной комбинацией системы, устройства, интегральной схемы, компьютерной программы и носителя записи.
БЛАГОПРИЯТНЫЕ ЭФФЕКТЫ ИЗОБРЕТЕНИЯ
[0009] Способы кодирования и декодирования движущихся графических изображений согласно аспекту настоящего изобретения могут ускорить обработку или уменьшить нагрузку по обработке во время подавления уменьшения эффективности кодирования в процессах кодирования/декодирования движущихся графических изображений с использованием процесса смещения выборки.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0010] Фиг. 1 представляет собой блок-схему, иллюстрирующую конфигурацию устройства кодирования движущихся графических изображений согласно варианту 1 осуществления.
Фиг. 2 является блок-схемой последовательности операций, показывающей процессы, выполняемые устройством кодирования движущихся графических изображений согласно варианту 1 осуществления.
Фиг. 3 является блок-схемой, иллюстрирующей внутреннюю конфигурацию узла кодирования параметра SAO с переменной длиной слова согласно варианту 1 осуществления.
Фиг. 4 является блок-схемой последовательности операций, показывающей процессы, выполняемые узлом кодирования параметра SAO с переменной длиной слова согласно варианту 1 осуществления.
Фиг. 5. является блок-схемой, иллюстрирующей внутреннюю конфигурацию узла кодирования sao_type_idx согласно варианту 1 осуществления.
Фиг. 6 является блок-схемой последовательности операций, показывающей процессы, выполняемые узлом кодирования sao_type_idx согласно варианту 1 осуществления.
Фиг. 7 является таблицей, показывающей соответствие между недвоичными сигналами и двоичными сигналами согласно варианту 1 осуществления.
Фиг. 8 является таблицей, показывающей соответствие между binIdxs и контектсами согласно варианту 1 осуществления и вариациями 1 и 2.
Фиг. 9 является таблицей, показывающей результат эксперимента, в котором сравниваются эффективности кодирования между традиционным подходом и вариантом 1 осуществления и вариациями 1 и 2.
Фиг. 10 является таблицей, показывающей соответствие между недвоичными сигналами и двоичными сигналами согласно Вариации 3.
Фиг. 11 является таблицей, показывающей соответствие между binIdxs и контекстом согласно Вариации 3.
Фиг. 12 является блок-схемой, иллюстрирующей конфигурацию устройства декодирования движущихся графических изображений согласно варианту 2 осуществления.
Фиг. 13 является блок-схемой последовательности операций, показывающей процессы, выполняемые устройством декодирования движущихся графических изображений согласно варианту 2 осуществления.
Фиг. 14 является блок-схемой, иллюстрирующей внутреннюю конфигурацию узла декодирования параметра SAO с переменной длиной слова согласно варианту 2 осуществления.
Фиг. 15 является блок-схемой последовательности операций, показывающей процессы, выполняемые узлом декодирования параметра SAO с переменной длиной слова согласно варианту 2 осуществления.
Фиг. 16 является блок-схемой, иллюстрирующей внутреннюю конфигурацию узла декодирования sao_type_idx согласно варианту 2 осуществления.
Фиг. 17 является блок-схемой последовательности операций, показывающей процессы, выполняемые узлом декодирования sao_type_idx согласно варианту 2 осуществления.
Фиг. 18А является блок-схемой, иллюстрирующей конфигурацию устройства кодирования движущихся изображений согласно другому варианту осуществления.
Фиг.18В является блок-схемой последовательности операций, показывающей процессы, выполняемые устройством кодирования движущихся графических изображений согласно другому варианту осуществления.
Фиг. 19А является блок-схемой, иллюстрирующей конфигурацию устройства декодирования движущихся графических изображений согласно другому варианту осуществления.
Фиг. 19В является блок-схемой последовательности операций, показывающей процессы, выполняемые устройством декодирования движущихся графических изображений согласно другому варианту осуществления.
Фиг. 20 иллюстрирует общую конфигурацию системы предоставления контента для реализации служб распространения контента.
Фиг. 21 иллюстрирует общую конфигурацию системы цифрового вещания.
Фиг. 22 иллюстрирует блок-схему примера конфигурации телевизора.
Фиг. 23 иллюстрирует блок-схему, иллюстрирующую пример конфигурации узла воспроизведения/записи информации, который считывает и записывает информацию с и на носитель записи, которым является оптический диск.
Фиг. 24 иллюстрирует пример конфигурации носителя записи, которым является оптический диск.
Фиг. 25А иллюстрирует пример сотового телефона.
Фиг. 25В иллюстрирует блок-схему примера конфигурации сотового телефона.
Фиг. 26 иллюстрирует структуру мультиплексированных данных.
Фиг. 27 схематично иллюстрирует как каждый поток мультиплексируется в мультиплексированные данные.
Фиг. 28 более подробно иллюстрирует, как поток видео сохраняется в потоке PES-пакетов.
Фиг. 29 иллюстрирует структуру TS-пакета и исходных пакетов в мультиплексированных данных.
Фиг. 30 иллюстрирует структуру данных PMT.
Фиг. 31 иллюстрирует внутреннюю структуру информации мультиплексированных данных.
Фиг. 32 иллюстрирует внутреннюю структуру информации атрибутов потока.
Фиг. 33 иллюстрирует этапы по идентификации данных видео.
Фиг. 34 иллюстрирует блок-схему, иллюстрирующую пример конфигурации интегральной схемы для реализации способа кодирования движущихся графических изображений и способа декодирования движущихся графических изображений согласно каждому из вариантов осуществления.
Фиг. 35 иллюстрирует конфигурацию для переключения между частотами возбуждения.
Фиг. 36 иллюстрирует этапы по идентификации данных видео и переключению между частотами возбуждения.
Фиг. 37 иллюстрирует пример справочной таблицы, в которой стандарты данных видео ассоциированы с частотами возбуждения.
Фиг. 38А иллюстрирует пример конфигурации для совместного использования модуля узла обработки сигналов.
Фиг. 38В иллюстрирует пример конфигурации для совместного использования модуля узла обработки сигналов.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[0011] (Знания, на которых основано настоящее изобретение)
В процессе SAO пиксели, включенные в восстановленное изображение, классифицированы по категориям. Для каждой из категорий значение смещения, соответствующее категории, добавляется к принадлежащему категории пиксельному значению. Существует множество способов классификации пикселей. В частности, в отношении параметра, указывающего способ классификации, используемый при фактическом кодировании (то есть параметра (sao_type_idx) для идентификации типа процесса смещения выборки), выполняется арифметическое кодирование, и параметр добавляется в поток.
[0012] Более того, в соответствии со стандартом HEVC, сигнал, который должен быть кодирован, преобразуется (преобразуется в двоичную форму) из недвоичного сигнала в двоичный сигнал (сигнал, представляющий 0 и 1), и затем в отношении двоичного сигнала выполняется арифметическое кодирование.
[0013] Двоичный сигнал является сигналом, включающим в себя по меньшей мере один из битов, представляющих один из двух символов (0 и 1). Каждый из битов в Описании также называется «ячейкой». Здесь, двоичный сигнал также называется «строкой ячеек».
[0014] В соответствии со стандартом HEVC, определены два типа арифметического кодирования, а именно, контекстно-адаптивное арифметическое кодирование и обходное арифметическое кодирование. При контекстно-адаптивном арифметическом кодировании, арифметическое кодирование выполняется в отношении двоичного сигнала с использованием вероятности появления символа, адаптивно выбираемой на основании контекста. Кроме того, при обходном арифметическом кодировании арифметическое кодирование выполняется в отношении двоичного сигнала с использованием фиксированной вероятности появления символа (например, 50%).
[0015] Конкретнее, при контекстно-адаптивном арифметическом кодировании контекст выбирается, например, для каждой ячейки, включенной в состав двоичного сигнала, который должен быть кодирован. Затем загружается информация вероятности выбранного контекста и арифметическое кодирование выполняется в отношении ячейки с использованием вероятности появления символа, идентифицированной информацией вероятности. Кроме того, информация вероятности (вероятность появления символа) выбранного контекста обновляется согласно значению (символу) ячейки, в которой было выполнено арифметическое кодирование.
[0016] В противоположность этому, при обходном арифметическом кодировании, арифметическое кодирование выполняется в отношении ячейки путем фиксации вероятности появления символа на 50% без использования какого-либо контекста. Таким образом, при обходном арифметическом кодировании никакая информация вероятности контекста не загружается или не обновляется.
[0017] Обычно, поскольку представляется, что каждая ячейка, включенная в двоичный сигнал, соответствующий sao_type_idx, имеет отклонение в вероятности появления символа, в отношении ячейки выполняется контекстно-адаптивное арифметическое кодирование. Таким образом, повышается нагрузка по обработке загрузки или обновления информации вероятности в отношении контекста при обычном кодировании sao_type_idx. Кроме того, когда арифметическое кодирование выполняется в отношении двух битов с использованием одного и того же контекста, арифметическое кодирование в отношении второго бита не может быть начато, пока не завершен процесс обновления контекста в отношении первого бита. Таким образом, арифметическое кодирование в отношении sao_type_idx становится последовательным, и производительность понижается.
[0018] Способ кодирования движущихся графических изображений согласно аспекту настоящего изобретения является способом кодирования движущихся графических изображений для кодирования входного изображения и включает в себя: преобразование значения первого параметра в первый двоичный сигнал, первый параметр идентифицирует тип процесса смещения выборки, который должен быть применен к восстановленному изображению, соответствующему входному изображению; и кодирование по меньшей мере части первого двоичного сигнала посредством обходного арифметического кодирования с использованием фиксированной вероятности.
[0019] Соответственно, часть первого двоичного сигнала, соответствующего значению первого параметра для идентификации типа процесса смещения выборки может быть кодирована посредством обходного арифметического кодирования. Число загрузки и обновления информации вероятности, соответствующей контексту, может быть уменьшено сильнее, чем таковое кодирования всех двоичных сигналов посредством контекстно-адаптивного арифметического кодирования. Более того, поскольку обходное арифметическое кодирование не требует обновления информации вероятности, арифметическое кодирование может быть выполнено параллельно в отношении битов, включенных в двоичный сигнал.
[0020] Кроме того, поскольку двоичный сигнал, соответствующий значению первого параметра обычно имеет отклонение в вероятности появления символа, представляется, что эффективность кодирования значительно уменьшается, когда двоичный сигнал кодируется посредством обходного арифметического кодирования. Тем не менее, настоящее изобретение открывает, что эффективность кодирования не уменьшается значительно, даже когда по меньшей мере часть двоичного сигнала соответствующего значению первого параметра кодируется посредством обходного арифметического кодирования.
[0021] Иными словами, посредством кодирования по меньшей мере части двоичного сигнала, соответствующего значению первого параметра для идентификации типа процесса смещения выборки, посредством обходного арифметического кодирования, обработка может быть ускорена или нагрузка по обработке может быть снижена, в то время как уменьшение эффективности кодирования может быть подавлено.
[0022] Например, первая часть первого двоичного сигнала может быть кодирована посредством контекстно-адаптивного арифметического кодирования, а вторая часть первого двоичного сигнала может быть кодирована посредством обходного арифметического кодирования, когда первый двоичный сигнал включает в себя вторую часть, следующую за первой частью.
[0023] Соответственно, первая часть двоичного сигнала может быть кодирована посредством контекстно-адаптивного арифметического кодирования, а вторая часть двоичного сигнала может быть кодирована посредством обходного арифметического кодирования. Таким образом, возможно переключать арифметическое кодирование между первой частью, имеющей большее отклонение в вероятности появления символа и второй частью, имеющей меньшее отклонение в вероятности появления символа, и уменьшение эффективности кодирования может быть подавлено еще сильнее.
[0024] Например, процесс смещения выборки может не быть применен к восстановленному изображению, когда значение первого параметра равно предопределенному значению, и первая часть первого двоичного сигнала может указывать, равно ли значение первого параметра предопределенному значению.
[0025] Соответственно, первая часть, указывающая, равно ли значение первого параметра предопределенному значению, может быть кодирована посредством контекстно-адаптивного арифметического кодирования. Иными словами, первая часть указывающая, применяется ли процесс смещения выборки к восстановленному изображению, может быть кодирована с помощью контекстно-адаптивного арифметического кодирования. Поскольку часть, указывающая, применяется ли процесс смещения выборки к восстановленному изображению, имеет большее отклонение в вероятности появления символа, уменьшение эффективности кодирования может быть подавлено еще сильнее.
[0026] Например, первая часть первого двоичного сигнала может быть составлена из первого бита первого двоичного сигнала и вторая часть первого двоичного сигнала может быть составлена из оставшихся битов первого двоичного сигнала.
[0027] Соответственно, первый бит двоичного сигнала может быть кодирован посредством контекстно-адаптивного арифметического кодирования, а оставшиеся биты двоичного сигнала могут быть кодированы посредством обходного арифметического кодирования.
[0028] Например, способ кодирования движущихся графических изображений может дополнительно включать в себя: преобразование по меньшей мере одного значения второго параметра и значения третьего параметра во второй двоичный сигнал, второй параметр идентифицирует режим внутреннего прогнозирования, третий параметр идентифицирует кандидата, который должен быть использован для внешнего прогнозирования из списка кандидатов, каждый из которых включает в себя по меньшей мере один вектор движения; кодирование первой части второго двоичного сигнала посредством контекстно-адаптивного арифметического кодирования; и кодирование второй части второго двоичного сигнала посредством обходного арифметического кодирования, в то время как второй двоичный сигнал включает в себя вторую часть, следующую за первой частью, при этом длина в битах первой части первого двоичного сигнала может быть идентична длине в битах первой части второго двоичного сигнала.
[0029] Соответственно, поскольку переключение арифметического кодирования между первым параметром для идентификации типа процесса смещения выборки и другим параметром (вторым параметром или третьим параметром) может быть стандартизировано, конфигурация устройства кодирования может быть упрощена.
[0030] Например, первый двоичный сигнал может включать в себя один или более первых битов, имеющих первый символ, когда значение первого параметра больше 0, причем число первых битов равно значению первого параметра, и первый двоичный сигнал может (а) дополнительно включать в себя один или более вторых битов, имеющих второй символ, когда значение первого параметра меньше максимального значения, и (b) не включать в себя вторые биты, когда значение первого параметра равно максимальному значению.
[0031] Соответственно, когда значение первого параметра равно максимальному значению, второй бит (например, 0), имеющий второй символ, может быть пропущен. Таким образом, эффективность кодирования может быть улучшена.
[0032] Кроме того, способ декодирования движущихся графических изображений согласно аспекту настоящего изобретения является способом декодирования движущихся графических изображений для декодирования кодированного изображения и включает в себя: декодирование по меньшей мере кодированной части первого двоичного сигнала посредством обходного арифметического декодирования с использованием фиксированной вероятности, первый двоичный сигнал соответствует значению первого параметра, идентифицирующего тип процесса смещения выборки, который должен быть применен к восстановленному изображению, полученному из кодированного изображения; и преобразование декодированного первого двоичного сигнала в значение первого параметра.
[0033] Соответственно, по меньшей мере часть двоичного сигнала соответствующего значению первого параметра для идентификации типа процесса смещения выборки может быть декодирована посредством обходного арифметического декодирования. Таким образом, число загрузки и обновления информации вероятности, соответствующей контексту, может быть уменьшено сильнее по сравнению с декодированием всех двоичных сигналов с помощью контекстно-адаптивного арифметического декодирования. Кроме того, поскольку обходное арифметическое декодирование не требует обновления информации вероятности, арифметическое декодирование может быть выполнено параллельно в отношении битов, включенных в двоичный сигнал.
[0034] Кроме того, поскольку двоичный сигнал, соответствующий значению первого параметра обычно имеет отклонение в вероятности появления символов, представляется, что эффективность кодирования значительно уменьшается когда двоичный сигнал кодируется посредством обходного арифметического кодирования. Тем не менее, настоящее изобретение открывает, что эффективность кодирования не уменьшается значительно, даже когда по меньшей мере часть двоичного сигнала, соответствующего значению первого параметра, кодируется посредством обходного арифметического кодирования.
[0035] Иными словами, путем декодирования по меньшей мере кодированной части двоичного сигнала, соответствующего значению первого параметра для идентификации типа процесса смещения выборки посредством обходного арифметического кодирования, обработка может быть ускорена или нагрузка по обработке может быть снижена в то время как уменьшение эффективности кодирования может быть подавлено.
[0036] Например, кодированная первая часть первого двоичного сигнала может быть декодирована посредством контекстно-адаптивного арифметического декодирования, и кодированная вторая часть первого двоичного сигнала может быть декодирована посредством обходного арифметического декодирования, в то время как первый двоичный сигнал включает в себя вторую часть, следующую за первой частью.
[0037] Соответственно, кодированная первая часть двоичного сигнала может быть декодирована посредством контекстно-адаптивного арифметического декодирования и кодированная вторая часть двоичного сигнала может быть декодирована посредством обходного арифметического декодирования. Таким образом, кодированный двоичный сигнал может быть декодирован путем переключения между первой частью, имеющей большее отклонение вероятности появления символа и второй частью, имеющей меньшее отклонение вероятности появления символа, и уменьшение эффективности кодирования может быть подавлено еще сильнее.
[0038] Например, процесс смещения выборки может не быть применен к восстановленному изображению, когда значение первого параметра равно предопределенному значению и первая часть первого двоичного сигнала может указывать, равно ли значение первого параметра предопределенному значению.
[0039] Соответственно, первая часть, указывающая, равно ли значение первого параметра предопределенному значению, может быть декодирована посредством контекстно-адаптивного арифметического декодирования. Иными словами, кодированная первая часть, указывающая, применяется ли процесс смещения выборки к восстановленному изображению, может быть декодирована посредством контекстно-адаптивного арифметического декодирования. Поскольку часть, указывающая, применяется ли процесс смещения выборки к восстановленному изображению, имеет большее отклонение вероятности появления символа, уменьшение эффективности кодирования может быть подавлено еще сильнее.
[0040] Например, первая часть первого двоичного сигнала может быть составлена из первого бита первого двоичного сигнала и вторая часть первого двоичного сигнала может быть составлена из оставшихся битов первого двоичного сигнала.
[0041] Соответственно, кодированный первый бит двоичного сигнала может быть декодирован посредством контекстно-адаптивного арифметического декодирования и оставшиеся биты двоичного сигнала могут быть декодированы посредством обходного арифметического декодирования.
[0042] Например, способ декодирования движущихся графических изображений может дополнительно включать в себя: декодирование кодированной первой части второго двоичного сигнала, соответствующего по меньшей мере одному из значения второго параметра и значения третьего параметра, посредством контекстно-адаптивного арифметического декодирования, второй параметр идентифицирует режим внутреннего прогнозирования, третий параметр идентифицирует кандидата, который должен быть использован для внешнего прогнозирования, из списка кандидатов, каждый из которых включает в себя по меньшей мере один вектор движения; и декодирование кодированной второй части второго двоичного сигнала посредством обходного арифметического декодирования, когда второй двоичный сигнал включает в себя вторую часть следующую за первой частью, в котором длина в битах первой части первого двоичного сигнала может быть идентична длине в битах первой части второго двоичного сигнала.
[0043] Соответственно, поскольку переключение арифметического декодирования между первым параметром для идентификации типа процесса смещения выборки и другим параметром (вторым параметром или третьим параметром) может быть стандартизировано на основе позиции бита двоичного сигнала, конфигурация устройства декодирования может быть упрощена.
[0044] Например, первый двоичный сигнал может включать в себя один или более первых битов, имеющих первый символ, когда значение первого параметра больше 0, причем число первых битов равно значению первого параметра и первый двоичный сигнал может (а) дополнительно включать в себя один или более вторых битов, имеющих второй символ, когда значение первого параметра меньше максимального значения, и (b) не включать в себя вторые биты, когда значение первого параметра равно максимальному значению.
[0045] Соответственно, когда значение первого параметра равно максимальному значению, второй бит (например, 0), имеющий второй символ, может быть пропущен. Таким образом, эффективность кодирования может быть улучшена.
[0046] Эти общие или частные аспекты могут быть реализованы системой, устройством, интегральной схемой, компьютерной программой, или считываемы-компьютером носителем записи, или произвольной комбинацией системы, устройства, интегральной схемы, компьютерной программы и носителя записи.
[0047] Варианты осуществления будут описаны со ссылками на чертежи.
[0048] Варианты осуществления, описанные ниже по тексту, показывают частные или общие примеры настоящего изобретения. Значения, формы, материалы, составные элементы, позиции и соединения составных элементов, этапов и порядки этапов, показанные в вариантах осуществления, являются примерами и не ограничивают формулу изобретения. Более того, составные элементы по вариантам осуществления, которые не описаны в независимых пунктах формулы изобретения, которые описывают наиболее общую концепцию настоящего изобретения, описаны как условные составные элементы.
[0049] (Вариант 1 осуществления)
<Общая конфигурация>
Фиг. 1 иллюстрирует конфигурацию устройства 100 кодирования движущихся графических изображений согласно варианту 1 осуществления. Устройство 100 кодирования движущихся графических изображений кодирует входное изображение по блокам.
[0050] Как проиллюстрировано на Фиг. 1, устройство 100 кодирования движущихся графических изображений включает в себя узел 101 разделения на блоки, узел 102 прогнозирования, узел 103 вычитания, узел 104 преобразования, узел 105 обратного преобразования, узел 106 добавления, узел 107 обработки SAO, узел 108 кодирования параметра SAO с переменной длиной слова, узел 109 кодирования коэффициентов с переменной длиной слова и память 110 кадров.
[0051]<Общие операции>
Далее будут описаны операции устройства 100 кодирования движущихся графических изображений с конфигурацией. Фиг. 2 показывает процессы, выполняемые узлом 100 кодирования движущихся графических изображений согласно варианту 1 осуществления.
[0052] (Этап 101)
Узел 101 разделения на блоки разделяет входное изображение на блоки (например, единицы кодирования). Узел 101 разделения на блоки последовательно выводит блоки в узел 103 вычитания и узел 102 прогнозирования в качестве блоков, которые должны быть кодированы (входных изображений). Блоки являются вариабельными по размеру. Узел 101 разделения на блоки разделяет входное графическое изображение на блоки, используя особенности изображения. Например, минимальным размером блоков является 4 пикселя по горизонтали x 4 пикселя по вертикали, и максимальным размером блоков является 32 пикселя по горизонтали х 32 пикселя по вертикали.
[0053] (Этап 102)
Узел 102 прогнозирования генерирует блок прогнозирования, на основе блоков, которые должны быть кодированы, и восстановленного графического изображения, хранящегося в памяти 110 кадров и соответствующего графическому изображению, которое уже было кодировано.
[0054] (Этап 103)
Узел 103 вычитания генерирует остаточный блок из каждого из блоков, которые должны быть кодированы и блока прогнозирования.
[0055] (Этап 104)
Узел 104 преобразования преобразовывает остаточный блок в частотные коэффициенты. Затем, узел 104 преобразования квантует частотные коэффициенты.
[0056] (Этап 105)
Узел 105 обратного преобразования обратно квантует квантованные частотные коэффициенты. Затем, узел 105 обратного преобразования обратно преобразовывает обратно-квантованные частотные коэффициенты для восстановления остаточного блока.
[0057] (Этап 106)
Узел 106 добавления добавляет восстановленный остаточный блок к блоку прогнозирования для генерирования восстановленного блока (восстановленного изображения). Восстановленный блок иногда называется «локальный декодированный блок (локальное декодированное изображение)».
[0058] (Этап 107)
Узел 107 обработки SAO определяет параметр SAO. Кроме того, узел 107 обработки SAO добавляет значение смещения к по меньшей мере одному пиксельному значению (значению выборки), включенному в восстановленный блок, и сохраняет результат добавления в памяти 110 кадров. Иными словами, узел 107 обработки SAO сохраняет в памяти 110 кадров восстановленный блок, в котором процесс SAO был выполнен.
[0059] Более конкретно, узел 107 обработки SAO классифицирует пиксели, включенные в восстановленный блок, по категориям. Затем, узел 107 обработки SAO добавляет для каждой из категорий, значение смещения, соответствующее категории, к пиксельному значению, принадлежащему категории. Существует множество способов для классификации пикселей. Иными словами, адаптивно применяется один из процессов SAO разных типов с использованием способов для классификации пикселей. В связи с этим, параметр SAO включает в себя параметр (sao_type_idx) для идентификации типа процесса SAO. Кроме того, параметр SAO также включает параметр (sao_offset), указывающий значение смещения.
[0060] Процесс SAO не всегда должен быть выполнен.
[0061] (Этап 108)
Узел 108 кодирования параметра SAO с переменной длиной слова выполняет кодирование с переменной длиной слова (энтропийное кодирование) в отношении параметра SAO для вывода потока битов.
[0062] (Этап 109)
Узел 109 кодирования коэффициентов с переменной длиной слова выполняет кодирование с переменной длиной слова в отношении частотных коэффициентов для вывода потока битов.
[0063] (Этап 110)
Процессы с этапа 102 по этап 109 повторяются пока кодирование всех блоков во входном графическом изображении не будет завершено.
[0064] Подробности об операции (этапа 108) и узле 108 кодирования параметра SAO с переменной длиной слова будут описаны ниже по тексту.
[0065]<Конфигурация узла кодирования параметра SAO с переменной длиной слова>
Фиг. 3 иллюстрирует внутреннюю конфигурацию узла 108 кодирования параметра SAO с переменной длиной слова согласно варианту 1 осуществления. Как проиллюстрировано на Фиг. 3, узел 108 кодирования параметра SAO с переменной длиной слова включает в себя узел 121 кодирования sao_type_idx и узел 122 кодирования sao_offset.
[0066]<Операции (кодирование параметра SAO с переменной длиной слова)>
Далее будут описаны операции узла 108 кодирования параметра SAO с переменной длиной слова с конфигурацией. Фиг. 4 показывает процессы, выполняемые узлом 108 кодирования параметра SAO с переменной длиной слова согласно варианту 1 осуществления.
[0067] (Этап 121)
Узел 121 кодирования sao_type_idx кодирует sao_type_idx для идентификации типа процесса SAO.
[0068] (Этап 122)
Узел 122 кодирования sao_offset кодирует sao_offset, указывающий значение смещения в процессе SAO.
[0069] Ниже по тексту будут описаны подробности об операции (этапа S121) и узле 121 кодирования sao_type_idx.
[0070]<Конфигурация узла кодирования sao_type_idx>
Фиг. 5 иллюстрирует внутреннюю конфигурацию узла 121 кодирования sao_type_idx согласно варианту 1 осуществления. Как проиллюстрировано на Фиг. 5, узел 121 кодирования sao_type_idx включает в себя узел 140 преобразования sao_type_idx в двоичную форму и узел 150 арифметического кодирования sao_type_idx.
[0071] Узел 140 преобразования sao_type_idx в двоичную форму преобразует значение sao_type_idx в двоичный сигнал. Как проиллюстрировано на Фиг. 5, узел 140 преобразования sao_type_idx в двоичную форму включает в себя узел 141 установки ячейки и узел 142 определения последней ячейки.
[0072] Узел 150 арифметического кодирования sao_type_idx кодирует по меньшей мере часть двоичного сигнала посредством обходного арифметического кодирования с использованием фиксированной вероятности. Как проиллюстрировано на Фиг. 5, узел 150 арифметического кодирования sao_type_idx включает в себя узел 151 переключения арифметического кодирования, первый узел 152 контекстно-адаптивного арифметического кодирования, второй узел 153 контекстно-адаптивного арифметического кодирования и узел 154 обходного арифметического кодирования.
[0073]<Операции (кодирования sao_type_idx)>
Далее будут описаны подробности операций, выполняемых узлом 121 кодирования sao_type_idx с конфигурацией. Фиг. 6 показывает процессы, выполняемые узлом 121 кодирования sao_type_idx согласно варианту 1 осуществления.
[0074] (Этапы S141-S144)
Узел 141 установки ячейки преобразует значение sao_type_idx в двоичный сигнал (строку ячеек). Конкретнее, узел 141 установки ячейки устанавливает 0 или 1 в каждую ячейку, включенную в двоичный сигнал, используя индекс (binIdx) для идентификации позиции ячейки в двоичном сигнале и значение sao_type_idx. Здесь, значение sao_type_idx лежит в диапазоне между 0 и 5 включительно.
[0075] Фиг. 7. является таблицей, показывающей соответствие между недвоичными сигналами (значениями sao_type_idx) и двоичными сигналами. Как видно на Фиг. 7, число последовательных «1» от начала каждого двоичного сигнала равно значению, указанному недвоичным сигналом.
[0076] Иными словами, когда значение sao_type_idx больше 0, двоичный сигнал включает в себя один или более первых битов, имеющих первый символ «1», где число первых битов равно значению sao_type_idx. Кроме того, двоичный сигнал (а) включает в себя один второй бит, имеющий второй символ «0», когда значение sao_type_idx меньше максимального значения 5, и (b) не включает в себя второй бит, имеющий второй символ «0», когда значение sao_type_idx равно максимальному значению.
[0077] Кроме того, первым значением binIdx является 0, и последующие значения увеличиваются на 1. Ячейка и binIdx выводятся в узел 150 арифметического кодирования sao_type_idx.
[0078] (Этапы S145-S149)
Узел 151 переключения арифметического кодирования переключает узел обработки (составной элемент), который выполняет арифметическое кодирование в отношении ячейки на основании значения binIdx.
[0079] Фиг. 8 является таблицей, показывающей соответствие между binIdxs и контекстами. Согласно варианту 1 осуществления, арифметическое кодирование выполняется в отношении двоичного сигнала с использованием двух типов контекстов (контекст 0 и контекст 1), как показано в столбце ”Вариант 1 Осуществления” в таблице Фиг. 8.
[0080] Конкретнее, узел 151 переключения арифметического кодирования переключается на первый узел 152 контекстно-адаптивного арифметического кодирования, когда значение binIdx равно 0. Кроме того, узел 151 переключения арифметического кодирования переключается на второй узел 153 контекстно-адаптивного арифметического кодирования, когда значение binIdx равно 1. Кроме того, узел 151 переключения арифметического кодирования переключается на узел 154 обходного арифметического кодирования, когда значение binIdx не равно ни 0, ни 1.
[0081] Иными словами, первый узел 152 контекстно-адаптивного арифметического кодирования выполняет арифметическое кодирование в отношении ячейки binIdx с 0, с использованием контекста 0. Кроме того, второй узел 153 контекстно-адаптивного арифметического кодирования выполняет арифметическое кодирование в отношении ячейки binIdx с 1, с использованием контекста 1. Кроме того, узел 154 обходного арифметического кодирования выполняет арифметическое кодирование в отношении ячейки binIdx со значением 2 или больше, с использованием фиксированной вероятности 50%, без использования какого-либо контекста.
[0082] Здесь, набор ячеек (ячейки, идентифицированные по binIdxs с 0 и 1 согласно варианту 1 осуществления), кодированных посредством контекстно-адаптивного арифметического кодирования называется первой частью двоичного сигнала. Кроме того, набор ячеек (ячейки, идентифицированные по binIdxs со значением 2 или больше согласно варианту 1 осуществления) кодированных посредством обходного арифметического кодирования, называется второй частью двоичного сигнала.
[0083] Иными словами, первая часть двоичного сигнала кодирована посредством контекстно-адаптивного арифметического кодирования согласно варианту 1 осуществления. Кроме того, когда двоичный сигнал включает в себя вторую часть, следующую за первой частью, вторая часть двоичного сигнала кодируется посредством обходного арифметического кодирования.
[0084] (Этапы S150 и S151)
Узел 142 определения последней ячейки определяет, имеет ли ячейка 0 (первое условие) и имеет ли binIdx 4 (второе условие). Здесь, когда удовлетворяется по меньшей мере одно из первого условия и второго условия, кодирование sao_type_idx завешается.
[0085] Если никакое из первого условия и второго условия не удовлетворяется, узел 142 определения последней ячейки обновляет binIdx до значения, полученного путем добавления значения binIdx к 1. Затем, процессы возвращаются на этап S142 для кодирования следующей ячейки.
[0086] Согласно варианту 1 осуществления, когда sao_type_idx имеет максимальное значение 5, как показано на Фиг. 7, этапы S150 и S151 могут предотвратить добавление 0 к последнему двоичному сигналу.
[0087]<Преимущества>
Когда sao_type_idx имеет максимальное значение, объем кода может быть уменьшен посредством предотвращения добавления 0 к последнему двоичному сигналу согласно варианту 1 осуществления. В соответствии со стандартом HEVC в NPL 1, 5 для sao_type_idx преобразуется в двоичный сигнал, представляемый как “111110”. Поскольку sao_type_idx принимает значения только от 0 до 5, когда значение последовательных «1» в двоичном сигнале равно пяти («11111»), устройство декодирования распознает sao_type_idx как 5. Таким образом, когда sao_type_idx равно максимальному значению 5, объем кода может быть уменьшен путем предотвращения добавления 0 к последнему двоичному сигналу согласно варианту 1 осуществления.
[0088] Кроме того, определение максимального числа ячеек, включенных в двоичный сигнал sao_type_idx, в качестве 5, увеличивает устойчивость к ошибкам устройства декодирования. Конкретно, когда декодируется отклоняющийся от нормы поток битов (двоичный сигнал, в котором последовательные «1-ы» бесконечны), обычно обработка декодирования не заканчивается в связи с тем, что не возникает 0. Тем не менее, определение максимального числа ячеек в 5, позволяет завершить обработку декодирования даже когда 0 не возникает в двоичном сигнале.
[0089] Кроме того, выполнение обходного арифметического кодирования в отношении ячеек, которые находятся в последней (второй) половине двоичного сигнала и получены из значений sao_type_idx, позволяет ускорить арифметическое кодирование или снизить нагрузку по арифметическому кодированию. Согласно варианту 1 осуществления, ячейки binIdx со значением 2 и больше, кодируются не посредством контекстно-адаптивного арифметического кодирования, а посредством обходного арифметического кодирования. Как описано выше по тексту, проходное арифметическое кодирование не требует загрузки или обновления контекста и обработка может быть начата без ожидания завершения обновления контекста на предыдущих стадиях. Таким образом, обработка может быть ускорена или нагрузка по обработке может быть снижена сильнее, чем при контекстно-адаптивном арифметическом кодировании.
[0090] Кроме того, в соответствии со стандартом HEVC в NPL 1, контекстно-адаптивное арифметическое кодирование выполняется в отношении ячейки binIdx со значением 1 или больше, используя тот же самый контекст.Причиной этому служит то, что вероятности появления символов (вероятности появления 1) ячейки binIdx со значением 1 или больше почти одинаковы, но не равны 50% и имеют отклонение. Иными словами, когда двоичный сигнал включает в себя ячейку, чей binIdx равен 1 или больше (значение sao_type_idx равно 1 или больше), существует множество случаев, где (а) ячейка, чей binIdx равен 1, имеет 0 и двоичный сигнал не включает в себя ячейку, чей binIdx равен 2 или более (значение sao_type_idx равно 1) и (b) ячейка с 0 не возникает вплоть до ячейки binIdx с большим значением (значение sao_type_idx равно 4 или 5, и так далее).
[0091] Тем не менее, эксперимент, в котором арифметическое кодирование выполняется в отношении ячейки, чей binIdx равен 2 и больше с фиксированной вероятностью появления символа в 50%, показал, что эффективность кодирования значительно снизилась. Конкретно, он показал, что значение sao_type_idx часто указывает среднее значение (2 или 3 и так далее) и вероятность появления символа ячейки, чей binIdx равен 2 или больше, ближе к 50%. Таким образом, кодирование ячейки, чей binIdx равен 2 или больше, не посредством контекстно-адаптивного арифметического кодирования, а посредством обходного арифметического кодирования позволяет ускорить обработку или снизить нагрузку по обработке при подавлении ухудшения эффективности кодирования.
[0091] Несмотря на то, что проходное арифметическое кодирование выполняется в отношении ячейки, чей binIdx равен 2 или больше согласно варианту 1 осуществления, обработка этим не ограничивается. Например, ячейка, чей binIdx равен 1 или больше, может быть кодирована посредством обходного арифметического кодирования (Вариация 1). Например, все ячейки, включенные в двоичный сигнал, могут быть кодированы обходным арифметическим кодированием (Вариация 2).
[0093] Как показано на Фиг. 8, ячейка, чей binIdx равен 1 или больше, может быть кодирована посредством обходного арифметического кодирования согласно Вариации 1. Иными словами, первая часть двоичного сигнала, кодированная посредством контекстно-адаптивного арифметического кодирования, составляется из первой ячейки двоичного сигнала. Кроме того, вторая часть двоичного сигнала, кодированная посредством обходного арифметического кодирования, составляется из оставшихся ячеек двоичного сигнала. Кроме того, все ячейки кодируются посредством обходного арифметического кодирования согласно Вариации 2.
[0094] Далее будет описан результат эксперимента согласно Варианту 1 осуществления и Вариациям 1 и 2. Было использовано тестовое программное обеспечение в соответствии со стандартом HEVC, в котором применялись способ для выполнения обходного арифметического кодирования в отношении ячейки, чей binIdx равен 2 и больше (Вариант 1 осуществления), способ для выполнения обходного арифметического кодирования в отношении ячейки, чей binIdx равен 1 или больше (Вариация 1) и способ для выполнения обходного арифметического кодирования в отношении всех ячеек (Вариация 2).
[0095] Фиг. 9 является таблицей, показывающей результаты эксперимента, в котором сравнивались эффективности кодирования традиционных подходов и Варианта 1 осуществления и Вариаций 1 и 2. Условия эксперимента придерживаются обычных условий эксперимента организации стандарта HEVC. Значения Фиг. 9 являются результатами в отношении первых 49 кадров тестового изображения. Чем больше значение, тем ниже эффективность кодирования. Отрицательное значение указывает улучшение в эффективности кодирования по сравнению с традиционными подходами(NPL1).
[0096] Как проиллюстрировано на Фиг. 9, значения лежат в диапазоне между -0.1 и 0.1% при всех условиях, согласно Варианту 1 осуществления и Вариации 1. Иными словами, эффективность кодирования практически не меняется вне зависимости от ускоренной обработки посредством обходного арифметического кодирования согласно Варианту 1 осуществления и Вариации 1.
[0097] Кроме того, несмотря на то, что эффективность кодирования согласно Вариации 2 ниже эффективности согласно варианту 1 осуществления и Вариации 1, значения находятся в пределах 1%. Кроме того, эффективность кодирования практически не уменьшается при условии AI, в котором все кадры являются внутренне кодированными.
[0098] Таким образом, способ кодирования согласно Вариации 2 может быть использован, когда ускоренная обработка является приоритетной даже при небольшом снижении эффективности кодирования и часто применяется внутреннее кодирование. Иначе, движущиеся графические изображения могут быть кодированы в способах кодирования согласно Варианту 1 осуществления и Вариации 1.
[0099] Здесь, ячейка, чей binIdx равен 2 или меньше, может быть кодирована посредством контекстно-адаптивного арифметического кодирования, а ячейка, чей binIdx равен 3 и выше, может быть кодирована посредством обходного арифметического кодирования.
[0100] Несмотря на то, что Вариант 1 осуществления использует sao_type_idx для идентификации типа процесса SAO и sao_offset, указывающий значение для значения смещения SAO в качестве параметров SAO, параметры SAO не ограничиваются этим. Параметры SAO могут включать в себя, например, параметр, указывающий вспомогательную информацию для классификации пикселей. Кроме того, параметры SAO могут включать в себя sao_offset_sign, представляющий собой знаковый бит (положительный или отрицательный) sao_offset.
[0101] Кроме того, sao_type_idx может включать в себя информацию, указывающую неисполнение какого-либо процесса SAO. Например, когда значение sao_type_idx равно 0, процессу SAO нет необходимости всегда выполняться в отношении восстановленного блока.
[0102] Кроме того, несмотря на то, что параметр SAO кодируется для каждого блока согласно Варианту 1 осуществления, кодирование не ограничено этим. Параметр SAO может быть кодирован в отношении каждой единицы, меньшей, чем блок. И наоборот, параметр SAO может быть кодирован в отношении каждой единицы, полученной объединением блоков. Кроме того, параметр SAO не кодируется в текущем блоке, а, вместо этого, может быть скопировано и использовано значение параметра SAO другого блока.
[0103] Кроме того, несмотря на то, что sao_type_idx принимает значения от 0 до 5 согласно Варианту 1 осуществления, значения этим не ограничиваются. Максимальное значение sao_type_idx может быть 6 или выше, или 4 или ниже.
[0104] Например, нижеследующее даст описание случая, где максимальное значение sao_type_idx равно 2. Иными словами, случай, в котором число типов процессов SAO равно трем.
[0105] Фиг. 10 является таблицей, показывающей соответствие между недвоичными сигналами (sao_type_idx) и двоичными сигналами согласно Вариации 3. Кроме того, Фиг. 11 является таблицей, показывающей соответствие между binIdxs и контекстом согласно Вариации 3.
[0106] Например, когда значение sao_type_idx равно 0, процесс SAO не применяется к восстановленному блоку согласно Вариации 3. Кроме того, когда значение sao_type_idx равно 1, к восстановленному блоку применяется первый процесс SAO. Кроме того, когда значение sao_type_idx равно 2, к восстановленному блоку применяется второй процесс SAO.
[0107] Первый процесс SAO является, например, процессом смещения полосы (диапазона). Кроме того, второй процесс SAO является, например, процессом смещения края. При процессе смещения края, категория, к которой принадлежит каждый из пикселей, определяется на основе разницы между пиксельным значением пикселя и пиксельным значением пикселя, смежного с упомянутым пикселем. Кроме того, при процессе смещения полосы, диапазон возможных пиксельных значений разделяется на полосы, и категория, к которой принадлежит каждый пиксель, определяется на основе полосы, к которой принадлежит пиксельное значение пикселя. Поскольку NPL 1 и другие раскрывают подробности процесса смещения края и процесса смещения полосы, подробности пропущены в данном документе.
[0108] Как показано на Фиг. 10 и 11, первая ячейка (binIdx=0, первая часть) двоичного сигнала кодируется посредством контекстно-адаптивного арифметического кодирования согласно Вариации 3. Кроме того, оставшиеся ячейки (binIdx=1, вторая часть) двоичного сигнала кодируются посредством обходного арифметического кодирования.
[0109] Здесь, первая ячейка имеет 0 только когда значение sao_type_idx равно 0. Иначе первая ячейка имеет 1. Иными словами, первая часть двоичного сигнала указывает, равно ли значение sao_type_idx предопределенному значению 0. Иными словами, первая часть двоичного сигнала указывает, применяется ли процесс SAO к восстановленному блоку. Как таковая, часть, указывающая, применяется ли процесс SAO к восстановленному блоку, кодируется посредством контекстно-адаптивного арифметического кодирования и (ii) иные части кодируются посредством обходного арифметического кодирования. Эти процессы делают возможной ускоренную обработку или снижение нагрузки по обработке при подавлении уменьшения в эффективности кодирования.
[0110] Способы кодирования согласно Варианту 1 осуществления и Вариациям 1-3, могут быть применены не только к sao_type_idx, но также к другим синтаксическим конструкциям, которые добавляются в поток битов. Соответственно, обработка, выполняемая узлом кодирования с переменной длиной слова, может быть стандартизирована.
[0111] Проходное арифметическое кодирование может быть выполнено в отношении второй части двоичного сигнала соответствующего, например, sao_offset, указывающему значение смещения SAO, ref_idx, указывающему индекс опорного изображения, merge_idx для идентификации кандидата, который должен быть использован при внешнем прогнозировании из списка кандидатов, каждый из которых включает в себя по меньшей мере один вектор движения, или mpm_idx или intra_chroma_pred_mode для идентификации режима внутреннего прогнозирования. Поскольку NPL 1 раскрывает sao_offset, ref_idx, merge_idx, mpm_idx, и intra_chroma_pred_mode, подробности пропущены в данном документе.
[0112] Иными словами, длина в битах первой части первого двоичного сигнала может быть идентична длине в битах первой части второго двоичного сигнала. Здесь, первый двоичный сигнал является двоичным сигналом, полученным путем преобразования в двоичную форму значения параметра (sao_type_idx) для идентификации типа процесса смещения выборки. Кроме того, второй двоичный сигнал является двоичным сигналом, полученным путем преобразования в двоичную форму по меньшей мере (i) параметра (например, intra_chroma_pred_mode) для идентификации режима внутреннего прогнозирования или (ii) параметра (например, merge_idx) для идентификации кандидата, который должен быть использован при внутреннем прогнозировании, из списка кандидатов, каждый из которых включает в себя по меньшей мере один вектор движения.
[0113] Как таковая, стандартизация для sao_type_idx и иных синтаксических конструкций, части, в отношении которой выполняется обходное арифметическое кодирование, позволяет не только ускорить обработку, но также упростить конфигурацию устройства с помощью общего использования узла кодирования с переменной длиной слова.
[0114] Кроме того, несмотря на то, что минимальный размер блоков равен 4 на 4 пикселя, а максимальный размер блоков равен 32 на 32 пикселя, размеры этим не ограничиваются. Кроме того, размер блоков не обязательно должен быть переменным и может быть фиксированным.
[0115] Кроме того, процесс смещения выборки не ограничивается процессом SAO, описанным в NPL1. Иными словами, процесс смещения выборки может быть любым процессом до тех пор пока смещается значение выборки (пиксельное значение) восстановленного изображения.
[0116] Вариант 2 осуществления
Далее будет описан Вариант 2 осуществления. Вариант 2 осуществления опишет декодирование изображения, кодированного способом кодирования движущихся графических изображений согласно Варианту 1 осуществления. В частности, Вариант 2 осуществления опишет выполнение арифметического декодирования в отношении параметра, который кодирован согласно Варианту 1 осуществления и предназначен для идентификации типа процесса смещения выборки.
[0117]<Общая конфигурация>
Фиг. 12 иллюстрирует конфигурацию устройства 200 декодирования движущихся графических изображений согласно Варианту 2 осуществления. Устройство 200 декодирования движущихся графических изображений декодирует кодированное графическое изображение по блокам.
[0118] Как проиллюстрировано на Фиг. 12, устройство 200 декодирования движущихся графических изображений включает в себя узел 210 декодирования параметра SAO с переменной длиной слова, узел 202 декодирования коэффициентов с переменной длиной слова, узел 203 обратного преобразования, узел 204 прогнозирования, узел 205 добавления, узел 206 обработки SAO, узел 207 объединения блоков и память 208 кадров.
[0119]<Общие операции>
Далее будут описаны операции устройства 200 декодирования движущихся графических изображений с конфигурацией. Фиг. 13 показывает процессы, выполняемые узлом 200 декодирования движущихся графических изображений согласно Варианту 2 осуществления.
[0120] (Этап 201)
Узел 201 декодирования параметра SAO с переменной длиной слова выполняет декодирование с переменной длиной слова (энтропийное декодирование) в отношении кодированного параметра SAO, включенного в поток битов.
[0121] (Этап 202)
Узел 202 декодирования коэффициентов с переменной длиной слова выполняет декодирование с переменной длиной слова в отношении кодированных частотных коэффициентов, включенных в поток битов для вывода частотных коэффициентов в узел 203 обратного преобразования.
[0122] (Этап 203)
Узел 203 обратного преобразования обратно преобразовывает частотные коэффициенты в данные пикселей для генерирования остаточного блока.
[0123] (Этап 204)
Узел 204 прогнозирования генерирует блок прогнозирования на основании графического изображения, которое хранится в памяти 208 кадров и которое уже было декодировано.
[0124] (Этап 205)
Узел 205 добавления добавляет остаточный блок к блоку прогнозирования для генерирования восстановленного блока.
[0125] (Этап 206)
Узел 206 обработки SAO классифицирует пиксели, включенные в восстановленный блок, по категориям согласно параметру SAO. Затем, узел 206 обработки SAO добавляет соответствующее значение смещения для каждой из категорий. Иными словами, узел 206 обработки SAO применяет процесс SAO к восстановленному блоку, используя параметр SAO. Здесь, параметры SAO включают в себя параметр (sao_type_idx) для идентификации типа процесса SAO и параметр (sao_offset), указывающий значение смещения.
[0126] Процессу SAO нет необходимости всегда выполняться. Например, когда значение sao_type_idx равно предопределенному значению, процесс SAO может не выполняться.
[0127] (Этап 207)
Процессы этапов с S201 по S206 повторяются пока обработка в отношении всех блоков, включенных в графическое изображение, которое должно быть декодировано, не будет завершена.
[0128] (Этап 208)
Узел 207 объединения блоков объединяет блоки для генерирования декодированного графического изображения. Кроме того, узел 207 объединения блоков сохраняет декодированное графическое изображение в памяти 208 кадров.
[0129] Ниже будут описаны подробности процесса (этапа 201) и узла 201 декодирования параметра SAO с переменной длиной слова.
[0130]<Конфигурация узла декодирования параметра SAO с переменной длиной слова>
Фиг. 14 иллюстрирует внутреннюю конфигурацию узла 201 декодирования параметра SAO с переменной длиной слова согласно варианту 2 осуществления. Как проиллюстрировано на Фиг. 14, узел 201 декодирования параметра SAO включает в себя узел 221 декодирования sao_type_idx и узел 222 декодирования sao_offset.
[0131]<Операции (декодирование параметра SAO с переменной длиной слова)>
Далее, будут описаны операции узла 201 декодирования параметра SAO с переменной длиной слова с конфигурацией. Фиг. 15 показывает процессы, выполняемые узлом 201 декодирования параметра SAO с переменной длиной слова согласно варианту 2 осуществления.
[0132] (Этап 221)
Узел 221 декодирования sao_type_idx декодирует кодированный sao_type_idx.
[0133] (Этап 222)
Узел 222 декодирования sao_offset декодирует кодированный sao_offset.
[0134] Ниже будут описаны подробности процесса (этап S221) и узла 221 декодирования sao_type_idx.
[0135]<Конфигурация узла декодирования sao_type_idx>
Фиг. 16 иллюстрирует внутреннюю конфигурацию узла 221 декодирования sao_type_idx согласно варианту 2 осуществления. Как проиллюстрировано на Фиг. 16, узел 221 декодирования sao_type_idx включает в себя узел 240 арифметического декодирования sao_type_idx и узел 250 преобразования sao_type_idx из двоичной формы.
[0136] Узел 240 арифметического декодирования sao_type_idx декодирует по меньшей мере кодированную часть двоичного сигнала, соответствующего sao_type_idx для идентификации типа процесса SAO, который должен быть применен к восстановленному блоку посредством обходного арифметического декодирования. Как проиллюстрировано на Фиг. 16, узел 240 арифметического декодирования sao_type_idx включает в себя узел 241 переключения арифметического декодирования, первый узел 242 контекстно-адаптивного арифметического декодирования и второй узел 243 контекстно-адаптивного арифметического декодирования и узел 244 обходного арифметического декодирования.
[0137] Узел 250 преобразования sao_type_idx из двоичной формы преобразует двоичный сигнал в значение sao_type_idx. Как проиллюстрировано на Фиг. 16, узел 250 преобразования sao_type_idx из двоичной формы включает в себя узел 251 определения последней ячейки и узел 252 установки sao_type_idx.
[0138]<Операции (декодирование sao_type_idx)>
Далее будут описаны подробности операций, выполняемых узлом 221 декодирования sao_type_idx с конфигурацией. Фиг. 17 показывает процессы, выполняемые узлом 221 декодирования sao_type_idx согласно варианту 2 осуществления.
[0139] (Этапы с S241 по S246)
Узел 241 переключения арифметического декодирования определяет значение binIdx ячейки, которая должна быть обработана. После этого, узел 241 переключения арифметического декодирования переключает узел обработки (составной элемент), который выполняет арифметическое декодирование в отношении кодированной ячейки, на основе определенного значения binIdx. Конкретнее, узел 241 переключения арифметического декодирования переключается на первый узел 242 контекстно-адаптивного арифметического декодирования, когда значение binIdx равно 0. Конкретнее, узел 241 переключения арифметического декодирования переключается на второй узел 243 контекстно-адаптивного арифметического декодирования, когда значение binIdx равно 1. Кроме того, узел 241 переключения арифметического декодирования переключается на узел 244 обходного арифметического кодирования, когда значение binIdx не равно ни 0, ни 1.
[0140] Иными словами, первый узел 242 контекстно-адаптивного арифметического кодирования выполняет арифметическое декодирование в отношении кодированной ячейки binIdx, имеющей 0, используя контекст 0. Кроме того, второй узел 243 контекстно-адаптивного арифметического кодирования выполняет арифметическое декодирование в отношении кодированной ячейки binIdx с 1, используя контекст 1. Кроме того, узел 244 обходного арифметического кодирования выполняет арифметическое декодирование в отношении кодированной ячейки binIdx со значением 2 или больше, используя фиксированную вероятность 50% без использования какого-либо контекста.
[0141] Здесь, набор ячеек (ячеек, идентифицированных по binIdxs с 0 и 1 согласно варианту 2 осуществления), кодированных посредством контекстно-адаптивного арифметического кодирования, называют первой частью двоичного сигнала. Кроме того, набор ячеек (ячеек, идентифицированных по binIdxs, каждый из которых имеет значение 2 или больше согласно варианту 2 осуществления), кодированных посредством обходного арифметического кодирования, называют второй частью двоичного сигнала.
[0142] Иными словами, кодированная первая часть двоичного сигнала декодируется посредством контекстно-адаптивного арифметического декодирования согласно варианту 2 осуществления. Кроме того, когда двоичный сигнал включает в себя вторую часть, следующую за первой частью, кодированная вторая часть двоичного сигнала декодируется посредством обходного арифметического декодирования.
[0143] (Этапы S247 и S248)
Когда ячейка, получающаяся в результате арифметического декодирования, является 0, или значение binIdx равно 4, узел 251 определения последней ячейки завершает арифметическое декодирование в отношении последней ячейки и процессы переходят на этап S249. Когда значение ячейки равно 1 и значение binIdx равно 3 или меньше, узел 251 определения последней ячейки добавляет 1 к значению binIdx и процессы переходят на этап S242.
[0144] (Этапы S249-S251)
Узел 252 установки sao_type_idx устанавливает значение binIdx в sao_type_idx. Кроме того, когда значение binIdx равно 4 и значением ячейки является 1, узел 252 установки sao_type_idx устанавливает 5 в sao_type_idx. На этапах с S249 по S251, двоичный сигнал может быть преобразован в 5, что является значением sao_type_idx даже когда 0 нет в конце двоичного сигнала. Соответствие между недвоичными сигналами и двоичными сигналами является таким же, как показано на Фиг. 7 согласно варианту 1 осуществления.
[0145]<Преимущества>
Согласно варианту 2 осуществления, sao_type_idx, кодированный в варианте 1 осуществления, может быть декодирован. Иными словами, по меньшей мере кодированная часть двоичного сигнала, соответствующего значению sao_type_idx может быть декодирована посредством обходного арифметического декодирования. Таким образом, могут быть получены те же преимущества, что и согласно варианту 1 осуществления. Например, обработка может быть ускорена или нагрузка по обработке может быть уменьшена при подавлении уменьшения эффективности кодирования.
[0146] Таким образом, те же вариации, что и согласно варианту 1 осуществления, могут быть применены к варианту 2 осуществления. Иными словами, кодированный sao_type_idx может быть декодирован как показано на Фиг. 8, 10 и 11 согласно Вариациям 1-3.
[0147] Кроме того, обходное арифметическое декодирование может быть выполнено в отношении кодированной второй части двоичного сигнала в соответствии с, например, sao_offset, указывающим значение смещения SAO, ref_idx, указывающим индекс опорного изображения, merge_idx для идентификации кандидата, который должен быть использован при внешнем прогнозировании, из списка кандидатов, каждый из которых включает в себя по меньшей мере один вектор движения, или mpm_idx или intra_chroma_pred_mode для идентификации режима внутреннего прогнозирования, также в варианте 2 осуществления. Иными словами, длина в битах первой части первого двоичного сигнала может быть идентична длине в битах первой части второго двоичного сигнала.
[0148] Несмотря на то, что устройство кодирования движущихся графических изображений и устройство декодирования движущихся графических изображений согласно одному или более аспектам настоящего изобретения описаны на основе вариантов 1 и 2 осуществления, настоящее изобретение не ограничено этими вариантами осуществления. Без отклонения от объема настоящего изобретения, аспекты настоящего изобретения могут включать в себя вариант осуществления с некоторыми модификациями в отношении вариантов осуществления, которые понятны специалисту в данной области техники, и другой вариант осуществления, получаемый посредством комбинаций составных элементов различных вариантов осуществления.
[0149] Например, устройство кодирования движущихся графических изображений не обязательно должно включать часть составных элементов по Фиг. 1, либо выполнять часть этапов по Фиг. 2. Кроме того, устройство декодирования движущихся графических изображений не обязательно должно включать в себя часть составных элементов по фиг. 12, либо выполнять часть этапов по Фиг. 13. Один из примеров такого устройства кодирования движущихся графических изображений будет описан ниже по тексту.
[0150] Фиг. 18А иллюстрирует конфигурацию устройства 300 кодирования движущихся графических изображений согласно другому варианту осуществления. Кроме того, Фиг. 18B показывает процессы, выполняемые устройством 300 кодирования движущихся графических изображений согласно другому варианту осуществления.
[0151] Устройство 300 кодирования движущихся графических изображений включает в себя узел (преобразователь в двоичную форму) 301 преобразования в двоичную форму и узел (арифметический кодер) 302 арифметического кодирования.
[0152] Узел 301 преобразования в двоичную форму соответствует узлу 140 преобразования sao_type_idx в двоичную форму согласно варианту 1 осуществления. Узел 310 преобразования в двоичную форму преобразует значение параметра для идентификации типа процесса смещения выборки в двоичный сигнал (S301).
[0153] Узел 302 арифметического кодирования соответствует узлу 150 арифметического кодирования sao_type_idx согласно варианту 1 осуществления. Узел 302 арифметического кодирования кодирует по меньшей мере часть двоичного сигнала посредством обходного арифметического кодирования с использованием фиксированной вероятности (S302).
[0154] Поскольку устройство 300 кодирования движущихся графических изображений может кодировать по меньшей мере часть двоичного сигнала, соответствующего параметру для идентификации типа процесса смещения выборки посредством обходного арифметического кодирования, обработка может быть ускорена или нагрузка по обработке может быть снижена при подавлении уменьшения эффективности кодирования.
[0155] Фиг. 19А иллюстрирует конфигурацию устройства 400 декодирования движущихся графических изображений согласно другому варианту осуществления. Кроме того, Фиг. 19 В показывает процессы, выполняемые узлом 400 декодирования движущихся графических изображений согласно другому варианту осуществления.
[0156] Устройство 400 декодирования движущихся графических изображений включает в себя узел (арифметический декодер) 401 арифметического декодирования и узел (преобразователь из двоичной формы) 402 преобразования из двоичной формы.
[0157] Узел 401 арифметического декодирования соответствует узлу 240 арифметического декодирования sao_type_idx согласно варианту 2 осуществления. Узел 401 арифметического декодирования декодирует по меньшей мере кодированную часть двоичного сигнала соответствующего параметру для идентификации типа процесса смещения выборки, который должен быть применен к восстановленному блоку, полученному из кодированного изображения, посредством обходного арифметического декодирования (S401).
[0158] Узел 402 преобразования из двоичной формы соответствует узлу 250 преобразования sao_type_idx из двоичной формы согласно варианту 2 осуществления. Узел 402 преобразования из двоичной формы преобразует декодированный двоичный сигнал в значение параметра для идентификации типа процесса смещения выборки (S402).
[0159] Поскольку устройство 400 декодирования движущихся графических изображений может декодировать по меньшей мере кодированную часть двоичного сигнала соответствующего параметру для идентификации типа процесса смещения выборки посредством обходного арифметического кодирования, обработка может быть ускорена или нагрузка по обработке может быть снижена при подавлении уменьшения эффективности кодирования.
[0160] В общем, в каждом из вариантов осуществления, каждый из функциональных блоков может быть реализован, например, в виде MPU и памяти. Кроме того, в общем обработка каждым функциональным блоком может быть реализована с помощью программного обеспечения (программы) и такое программное обеспечение записывается на носитель записи, такой, как ROM. В дополнение, такое программное обеспечение может быть распространено, например, путем загрузки и записи его на носитель записи, такой, как CD-ROM. Каждый из функциональных блоков может быть реализован в виде аппаратного обеспечения (специализированной схемы).
[0161] Обработка, описанная в каждом из вариантов осуществления, может быть выполнена как централизованная обработка одним устройством (системой) или может быть выполнена как децентрализованная обработка множеством устройств. Здесь, программа может быть исполнена одним или более компьютерами. Иными словами, может быть выполнена любая из централизованной обработки и децентрализованной обработки.
[0162] Кроме того, каждый из составных элементов по любому из вариантов 1 или 2 осуществления может быть реализован в виде специализированного аппаратного обеспечения или путем программы программного обеспечения, надлежащей для составного элемента. Каждый из составных элементов может быть реализован узлом исполнения программ, таким, как центральный процессор (CPU) и процессор, считывающий и исполняющий программу, записанную на носителе записи, таком, как жесткий диск или полупроводниковая память.
[0163] В частности, каждое из устройства кодирования движущихся графических изображений и устройства декодирования движущихся графических изображений включает в себя управляющую схему и средство хранения, электрически соединенное со (доступное для) схемой управления. Схема управления может включать в себя по меньшей мере одно из специализированного аппаратного обеспечения или узла исполнения программ. Кроме того, когда схема управления включает в себя узел исполнения программ, средство хранения может хранить программу программного обеспечения, исполняемую узлом исполнения программ.
[0164] Здесь, программное обеспечение, которое реализует устройство кодирования движущихся графических изображений и устройство декодирования движущихся графических изображений согласно каждому из вариантов 1 или 2 осуществления является следующей программой.
[0165] Конкретно, программа заставляет компьютер исполнять способ кодирования движущихся графических изображений для кодирования входного изображения, причем способ включает в себя: преобразование значения первого параметра в первый двоичный сигнал, первый параметр идентифицирует тип процесса смещения выборки, который должен быть применен к восстановленному изображению соответствующему входному изображению; и кодирование по меньшей мере части первого двоичного сигнала посредством обходного арифметического кодирования с использованием фиксированной вероятности.
[0166] Кроме того, программа заставляет компьютер исполнять способ декодирования движущихся графических изображений, способ включает в себя: декодирование по меньшей мере кодированной части первого двоичного сигнала посредством обходного арифметического декодирования, используя фиксированную вероятность, первый двоичный сигнал соответствует значению первого параметра, идентифицирующего тип процесса смещения выборки, который должен быть применен к восстановленному изображению, полученному из кодированного изображения; и преобразование декодированного первого двоичного сигнала в значение первого параметра.
[0167] Вариант 3 осуществления
Независимая компьютерная система может с легкостью выполнять обработку, описанную в каждом из вариантов осуществления путем записи на носитель записи, программы для реализации структуры способа кодирования движущихся графических изображений (способа кодирования изображений) или способа декодирования движущихся графических изображений (способа декодирования изображений) согласно варианту осуществления. Носитель записи может быть любым, до тех пор пока на нем может быть записана программа, таким, как магнитный диск, оптический диск, оптический магнитный диск, смарт-карта и полупроводниковая память.
[0168] Ниже будут описаны варианты применения способа кодирования движущихся графических изображений (способа кодирования изображений) или способа декодирования движущихся графических изображений (способа декодирования изображений) согласно каждому из вариантов осуществления и система, использующая такие варианты применения. Особенности системы включают в себя устройство кодирования изображений, использующее способ кодирования изображений, и устройство кодирования и декодирования изображений, включающее в себя устройство декодирования изображений, использующее способ декодирования изображений. Другие конфигурации системы могут быть изменены надлежащим образом в зависимости от случая.
[0169] Фиг. 20 иллюстрирует общую конфигурацию системы ex100 предоставления контента для реализации услуг распространения контента. Область для предоставления услуг связи разделяется на соты требуемого размера, и базовые станции c ex106 по ex110, которые являются стационарными беспроводными станциями, размещаются в каждой из сот.
[0170] Система ex100 предоставления контента подключается к таким устройствам, как компьютер ex111, персональное цифровое устройство (PDA) ex112, камера ex113, сотовый телефон ex114 и игровая машина ex115, через Интернет ex101, поставщика ex102 Интернет-услуг, телефонную сеть ex104, а также базовые станции ex106-ex110.
[0171] Тем не менее, конфигурация системы ex100 предоставления контента не ограничена конфигурацией, показанной на фиг. 20, и комбинация, в которой подключаются любые из элементов, является допустимой. Помимо этого, каждое устройство может подключаться к телефонной сети ex104 непосредственно, а не через базовые станции ex106-ex110, которые являются стационарными беспроводными станциями. Кроме того, устройства могут быть подключены друг к другу через беспроводную связь ближнего действия и т.п.
[0172] Камера ex113, такая как цифровая видеокамера, допускает захват движущихся изображений. Камера ex116, такая как цифровая видеокамера, допускает захват как неподвижных изображений, так и движущихся изображений. Кроме того, сотовый телефон ex114 может быть телефоном, который удовлетворяет любому из таких стандартов, как глобальная система мобильной связи (GSM), множественный доступ с кодовым разделением каналов (CDMA), широкополосный множественный доступ с кодовым разделением каналов (W-CDMA), стандарт долгосрочного развития (LTE) и высокоскоростной пакетный доступ (HSPA). Альтернативно, сотовый телефон ex114 может быть системой персональных мобильных телефонов (PHS).
[0173] В системе ex100 предоставления контента сервер ex103 потоковой передачи подключается к камере ex113 и т.п.через телефонную сеть ex104 и базовую станцию ex109, которая предоставляет распространение трансляции в прямом эфире и т.п.Для такого распространения, контент (например, видео музыкального концерта в прямом эфире), захватываемый пользователем с использованием камеры ex113, кодируется так, как описано выше в каждом из вариантов осуществления, и кодированный контент передается на сервер ex103 потоковой передачи. С другой стороны, сервер ex103 потоковой передачи выполняет потоковое распространение принимаемых данных контента в клиенты при их запросах. Клиенты включают в себя компьютер ex111, PDA ex112, камеру ex113, сотовый телефон ex114 и игровую машину ex115, которые допускают декодирование вышеуказанных кодированных данных. Каждое из устройств, которое принимает распространенные данные, декодирует и воспроизводит кодированные данные (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения).
[0174] Захватываемые данные могут быть кодированы посредством камеры ex113 или сервера ex103 потоковой передачи, который передает данные, или процессы кодирования могут быть совместно использованы камерой ex113 и сервером ex103 потоковой передачи. Аналогично, распространенные данные могут быть декодированы посредством клиентов или сервера ex103 потоковой передачи, или процессы декодирования могут быть совместно использованы клиентами и сервером ex103 потоковой передачи. Кроме того, данные неподвижных изображений и движущихся изображений, захватываемых не только посредством камеры ex113, но также и камеры ex116, могут быть переданы на сервер ex103 потоковой передачи через компьютер ex111. Процессы кодирования могут быть выполнены посредством камеры ex116, компьютера ex111 или сервера ex103 потоковой передачи или совместно использованы ими.
[0175] Кроме того, обычно компьютер ex111 и LSI ex500, включенные в состав каждого устройства, выполняют процессы такого кодирования и декодирования. LSI ex500 может быть сконфигурирована из одного кристалла или множества кристаллов. Программное обеспечение для кодирования и декодирования движущихся графических изображений может быть интегрировано в некоторый тип носителя записи (такой как CD-ROM, гибкий диск и жесткий диск), который является читаемым посредством компьютера ex111 и т.п., и процессы кодирования и декодирования могут быть выполнены с использованием программного обеспечения. Кроме того, когда сотовый телефон ex114 оборудован камерой, видеоданные, полученные посредством камеры, могут быть переданы. Видеоданные являются данными, кодированными посредством LSI ex500, включенной в сотовый телефон ex114.
[0176] Кроме того, сервер ex103 потоковой передачи может состоять из серверов и компьютеров и может децентрализовать данные и обработать децентрализованные данные, записать или распространять данные.
[0177] Как описано выше по тексту, клиенты могут принимать и воспроизводить кодированные данные в системе ex100 предоставления контента. Другими словами, клиенты могут принимать и декодировать информацию, передаваемую пользователем, и воспроизводить декодированные данные в режиме реального времени в системе ex100 предоставления контента, так что пользователь, который не имеет какого-либо конкретного права и оборудования, может реализовывать персональное вещание.
[0178] Настоящее изобретение не ограничено вышеупомянутой системой ex100 предоставления контента и по меньшей мере одно из устройства кодирования движущихся графических изображений (устройства кодирования изображений) или устройства декодирования движущихся графических изображений (устройства декодирования изображений), описанных в каждом из вариантов осуществления, может быть встроено в систему ex200 цифрового вещания, проиллюстрированную на фиг. 21. Более конкретно, станция ex201 вещания осуществляет связь или передает по радиоволнам в вещательный спутник ex202 мультиплексированные данные, полученные посредством мультиплексирования аудиоданных на видеоданные. Видеоданные являются данными, кодированными согласно способу кодирования движущихся графических изображений, описанному в каждом из вариантов осуществления (т.е. данными, кодированными посредством устройства кодирования изображений согласно аспекту настоящего изобретения). После приема видеоданных, вещательный спутник ex202 передает радиоволны для вещания. Затем, антенна ex204 для домашнего применения с функцией приема спутникового вещания принимает радиоволны. Устройство такое как телевизор (приемник) ex300 и абонентская приставка (STB) ex217, декодирует принятые мультиплексированные данные и воспроизводит данные (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения).
[0179] Кроме того, модуль ex218 считывания/записи, который (i) считывает и декодирует мультиплексированные данные, записанные на носителе ex215 записи, таком как DVD и BD, или (i) кодирует видеосигналы на носителе ex215 записи, и в некоторых случаях записывает данные, полученные посредством мультиплексирования аудиосигнала, в кодированные данные, может включать в себя устройство декодирования движущихся графических изображений или устройство кодирования движущихся графических изображений, как показано в каждом из вариантов осуществления. В этом случае, воспроизведенные видеосигналы отображаются на мониторе ex219 и другое устройство или система могут воспроизвести видеосигналы с использованием носителя ex215 записи, на котором записываются мультиплексированные данные. Также можно реализовывать устройство декодирования движущихся графических изображений в абонентской приставке ex217, подключенной к кабелю ex203 для кабельного телевидения или к антенне ex204 для спутникового и/или наземного вещания, с тем чтобы отображать видеосигналы на мониторе ex219 телевизора ex300. Устройство декодирования движущихся графических изображений может быть включено в состав не абонентской приставки, а телевизора ex300.
[0180] Фиг. 22 иллюстрирует телевизор (приемник) ex300, который использует способ кодирования движущихся графических изображений и способ декодирования движущихся графических изображений, описанные в каждом из вариантов осуществления. Телевизор ex300 включает в себя: тюнер ex301, который получает или предоставляет мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и видеоданных, через антенну ex204 или кабель ex203 и т.д., который принимает вещание; узел ex302 модуляции/демодуляции, который демодулирует принятые мультиплексированные данные или модулирует данные в мультиплексированные данные, которые должны быть поданы наружу; и узел ex303 мультиплексирования/демультиплексирования, который демультиплексирует модулированные мультиплексированные данные в видеоданные и аудиоданные или мультиплексирует видеоданные и аудиоданные, кодированные посредством узла ex306 обработки сигналов, в данные.
[0181] Кроме того, телевизор ex300 дополнительно включает в себя: узел ex306 обработки сигналов, включающий в себя узел ex304 обработки аудиосигналов и узел ex305 обработки видеосигналов, которые соответственно декодируют аудиоданные и видеоданные и кодируют аудиоданные и видеоданные (которые выступают в качестве устройства кодирования изображений и устройства декодирования изображений согласно аспекту настоящего изобретения); динамик ex307, который предоставляет декодированный аудиосигнал; и узел ex309 вывода, включающий в себя узел ex308 отображения, который отображает декодированный видеосигнал, такой как устройство отображения. Кроме того, телевизор ex300 включает в себя интерфейсный узел ex317, включающий в себя узел ex312 ввода операций, который принимает ввод пользовательской операции. Кроме того, телевизор ex300 включает в себя узел ex310 управления, который управляет, осуществляет общее управление каждым составляющим элементом телевизора ex300, и узел ex311 схемы электропитания, который предоставляет питание в каждый из элементов. Кроме узла ex312 ввода операций, интерфейсный узел ex317 может включать в себя: мост ex313, который подключается к внешнему устройству, такому как модуль ex218 считывания/записи; узел ex314 гнезда для предоставления возможности присоединения носителя ex216 записи, такого как SD-карта; драйвер ex315 для того, чтобы подключаться к внешнему носителю записи, такому как жесткий диск; и модем ex316 для того, чтобы подключаться к телефонной сети. Здесь, носитель ex216 записи может электрически записывать информацию с использованием элемента энергонезависимой/энергозависимой полупроводниковой памяти для хранения. Составляющие элементы телевизора ex300 подключены друг к другу через синхронную шину.
[0182] Во-первых, описывается конфигурация, в которой телевизор ex300 декодирует мультиплексированные данные, полученные снаружи через антенну ex204 и т.п., и воспроизводит декодированные данные. В телевизоре ex300, после приема пользовательской операции от удаленного контроллера ex220 и т.п., узел ex303 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные, демодулированные посредством узла ex302 модуляции/демодуляции, под управлением узла ex310 управления, включающего в себя CPU. Кроме того, узел ex304 обработки аудиосигналов декодирует демультиплексированные аудиоданные, и узел ex305 обработки видеосигналов декодирует демультиплексированные видеоданные с использованием способа декодирования, описанного в каждом из вариантов осуществления, в телевизоре ex300. Узел ex309 вывода предоставляет декодированный видеосигнал и аудиосигнал наружу. Когда узел ex309 вывода предоставляет видеосигнал и аудиосигнал, сигналы могут временно сохраняться в буферах ex318 и ex319 и т.п.так, что сигналы воспроизводятся синхронно друг с другом. Кроме того, телевизор ex300 может считывать мультиплексированные данные не через вещание и т.п., а с носителей ex215 и ex216 записи, таких как магнитный диск, оптический диск и SD-карта. Далее описывается конфигурация, в которой телевизор ex300 кодирует аудиосигнал и видеосигнал и передает данные наружу или записывает данные на носитель записи. В телевизоре ex300, после приема пользовательской операции от удаленного контроллера ex220 и т.п., узел ex304 обработки аудиосигналов кодирует аудиосигнал, и узел ex305 обработки видеосигналов кодирует видеосигнал под управлением узла ex310 управления с использованием способа кодирования, как описано в каждом из вариантов осуществления. Узел ex303 мультиплексирования/демультиплексирования мультиплексирует кодированный видеосигнал и аудиосигнал и предоставляет результирующий сигнал наружу. Когда узел ex303 мультиплексирования/демультиплексирования мультиплексирует видеосигнал и аудиосигнал, сигналы могут быть временно сохранены в буферах ex320 и ex321 и т.п.так, что сигналы воспроизводятся синхронно друг с другом. Здесь, буферов ex318, ex319, ex320 и ex321 может быть множество, как проиллюстрировано, или, по меньшей мере, один буфер может быть совместно использован в телевизоре ex300. Кроме того, данные могут быть сохранены в буфере, отличном от буферов ex318 – ex321, так что может не допускаться переполнение и опустошение в системе, например, между узлом ex302 модуляции/демодуляции и узлом ex303 мультиплексирования/демультиплексирования.
[0183] Кроме того, телевизор ex300 может включать в себя конфигурацию для приема AV-ввода из микрофона или камеры, отличную от конфигурации для получения аудио- и видеоданных из вещания или носителя записи, и может кодировать полученные данные. Хотя телевизор ex300 может кодировать, мультиплексировать и предоставлять наружу данные, в описании, он может быть не способен выполнять все процессы, но способен выполнять одно из приема, декодирования и предоставления наружу данных.
[0184] Кроме того, когда модуль ex218 считывания/записи считывает или записывает мультиплексированные данные с или на носитель записи, один из телевизора ex300 и модуля ex218 считывания/записи может декодировать или кодировать мультиплексированные данные, и телевизор ex300 и модуль ex218 считывания/записи могут совместно использовать декодирование или кодирование.
[0185] В качестве примера, фиг. 20 иллюстрирует конфигурацию узла ex400 записи/воспроизведения информации, когда данные считываются или записываются с или на оптический диск. Узел ex400 записи/воспроизведения информации включает в себя составляющие элементы ex401-ex407, которые описаны ниже по тексту. Оптическая головка ex401 испускает лазерное пятно на поверхность записи носителя ex215 записи, который является оптическим диском, чтобы записывать информацию, и обнаруживает отраженный свет от поверхности записи носителя ex215 записи, чтобы считывать информацию. Узел ex402 модуляционной записи электрически возбуждает полупроводниковый лазер, включенный в оптическую головку ex401, и модулирует лазерное излучение согласно записанным данным. Узел ex403 демодуляции при воспроизведении усиливает сигнал воспроизведения, полученный посредством электрического обнаружения отраженного света от поверхности записи, с использованием фотодетектора, включенного в оптическую головку ex401, и демодулирует сигнал воспроизведения посредством разделения компоненты сигнала, записанной на носитель ex215 записи, чтобы воспроизводить необходимую информацию. Буфер ex404 временно хранит информацию, которая должна быть записана на носитель ex215 записи, и информацию, воспроизведенную с носителя ex215 записи. Дисковый электромотор ex405 вращает носитель ex215 записи. Узел ex406 сервоуправления перемещает оптическую головку ex401 в предопределенную информационную дорожку при одновременном управлении вращательным приводом дискового электромотора ex405, чтобы следовать лазерному пятну. Узел ex407 управления системой осуществляет общее управление узлом ex400 записи/воспроизведения информации. Процессы считывания и записи могут быть реализованы посредством узла ex407 управления системой с использованием различной информации, хранимой в буфере ex404, и генерирования и добавления новой информации по мере необходимости, и посредством узла ex402 модуляционной записи, узла ex403 демодуляции при воспроизведении и узла ex406 сервоуправления, которые записывают и воспроизводят информацию через оптическую головку ex401 при координированном управлении. Узел ex407 управления системой включает в себя, например, микропроцессор и исполняет обработку посредством побуждения компьютера исполнять программу для считывания и записи.
[0186] Хотя в описании оптическая головка ex401 испускает лазерное пятно, она может выполнять запись с высокой плотностью с использованием света в поле в ближней зоне.
[0187] Фиг. 24 иллюстрирует носитель ex215 записи, который является оптическим диском. На поверхности записи носителя ex215 записи, направляющие канавки формируются по спирали, и информационная дорожка ex230 записывает, заранее, информацию адреса, указывающую абсолютную позицию на диске, согласно изменению в форме направляющих канавок. Информация адреса включает в себя информацию для определения позиций блоков ex231 записи, которые являются единицей для записи данных. Устройство, которое записывает и воспроизводит данные, воспроизводит информационную дорожку ex230 и считывает информацию адреса, чтобы определить позиции блоков записи. Кроме того, носитель ex215 записи включает в себя зону ex233 записи данных, зону ex232 внутренней окружности и зону ex234 внешней окружности. Зона ex233 записи данных является зоной для использования при записи пользовательских данных. Зона ex232 внутренней окружности и зона ex234 внешней окружности, которые находятся внутри и снаружи зоны ex233 записи данных, соответственно, предназначены для конкретного применения за исключением записи пользовательских данных. Узел 400 воспроизведения/записи информации считывает и записывает кодированные аудиоданные, кодированные видеоданные или мультиплексированные данные, полученные посредством мультиплексирования кодированных аудиоданных и кодированных видеоданных, из и в зону ex233 записи данных носителя ex215 записи.
[0188] Хотя оптический диск, имеющий слой, такой как DVD и BD, описывается в качестве примера в описании, оптический диск не ограничен таким образом и может быть оптическим диском, имеющим многослойную структуру и допускающим запись на часть, отличную от поверхности. Кроме того, оптический диск может иметь структуру для многомерной записи/воспроизведения, к примеру, записи информации с использованием света цветов с различными длинами волн в одной части оптического диска и для записи информации, имеющей различные слои, с различных углов.
[0189] Кроме того, автомобиль ex210, имеющий антенну ex205, может принимать данные из спутника ex202 и т.п. и воспроизводить видео на устройстве отображения, таком как автомобильная навигационная система ex211, установленная в автомобиле ex210, в системе ex200 цифрового вещания. Здесь, конфигурация автомобильной навигационной системы ex211 является конфигурацией, например, включающей в себя приемный GPS-узел, из конфигурации, проиллюстрированной на фиг. 22. То же применимо для конфигурации компьютера ex111, сотового телефона ex114 и т.п.
[0190] Фиг. 25A иллюстрирует сотовый телефон ex114, который использует способ кодирования движущихся графических изображений и способ декодирования движущихся графических изображений, описанные в вариантах осуществления. Сотовый телефон ex114 включает в себя: антенну ex350 для передачи и приема радиоволн через базовую станцию ex110; узел ex365 камеры, допускающий захват движущихся и неподвижных изображений; и узел ex358 отображения, к примеру, жидкокристаллическое устройство отображения для отображения данных, таких как декодированное видео, захватываемое посредством узла ex365 камеры или принимаемое посредством антенны ex350. Сотовый телефон ex114 дополнительно включает в себя: узел основного корпуса, включающий в себя набор ex366 функциональных клавиш; узел ex357 аудиовывода, к примеру, динамик для вывода аудио; узел ex356 аудиоввода, к примеру, микрофон для ввода аудио; узел ex367 памяти для сохранения захваченного видео или неподвижных графических изображений, записанного аудио, кодированных или декодированных данных принимаемого видео, неподвижных изображений, почтовых сообщений и т.п.; и узел ex364 гнезда, который является интерфейсным узлом для носителя записи, который сохраняет данные таким же образом, как узел ex367 памяти.
[0191] Далее описывается пример конфигурации сотового телефона ex114 со ссылкой на фиг. 25B. В сотовом телефоне ex114 главный узел ex360 управления, спроектированный с возможностью полностью управлять каждым узлом основного корпуса, включающим в себя узел ex358 отображения, а также функциональные клавиши ex366, взаимно соединяется, через синхронную шину ex370, с узлом ex361 схемы электропитания, узлом ex362 управления вводом операций, узлом ex355 обработки видеосигналов, узлом ex363 интерфейса камеры, узлом ex359 управления жидкокристаллическим устройством отображения (ЖК-устройством отображения), узлом ex352 модуляции/демодуляции, узлом ex353 мультиплексирования/ демультиплексирования, узлом ex354 обработки аудиосигналов, узлом ex364 гнезда и узлом ex367 памяти.
[0192] Когда клавиша завершения вызова или клавиша питания включается посредством пользовательской операции, узел ex361 схемы электропитания предоставляет в соответствующие узлы питание из комплекта батарей с тем, чтобы активировать сотовый телефон ex114.
[0193] В сотовом телефоне ex114 узел ex354 обработки аудиосигналов преобразует аудиосигналы, собираемые посредством узла ex356 аудиоввода в режиме речевой связи, в цифровые аудиосигналы под управлением главного узла ex360 управления, включающего в себя CPU, ROM и RAM. Затем, узел ex352 модуляции/демодуляции выполняет обработку с расширенным спектром в отношении цифровых аудиосигналов, и приемо-передающий узел ex351 выполняет цифро-аналоговое преобразование и преобразование частоты в отношении данных, с тем чтобы передавать результирующие данные через антенну ex350. Затем, модуль ex352 модуляции/демодуляции выполняет обработку с обратным расширенным спектром в отношении данных, и узел ex354 обработки аудиосигналов преобразует их в аналоговые аудиосигналы, с тем чтобы выводить их через узел ex357 аудиовывода.
[0194] Кроме того, когда передается электронная почта в режиме передачи данных, текстовые данные электронной почты, введенные посредством операций с функциональных клавиш ex366 и т.п.основного корпуса, отправляются в главный узел ex360 управления через узел ex362 управления вводом операций. Главный узел ex360 управления инструктирует узлу ex352 модуляции/демодуляции выполнять обработку с расширенным спектром в отношении текстовых данных, и приемо-передающий узел ex351 выполняет цифро-аналоговое преобразование и преобразование частоты в отношении результирующих данных, чтобы передавать данные в базовую станцию ex110 через антенну ex350. Когда принимается почтовое сообщение, обработка, которая является приблизительно обратной относительно обработки для передачи почтового сообщения, выполняется в отношении принимаемых данных, и результирующие данные предоставляются в узел ex358 отображения.
[0195] Когда передается видео, неподвижные изображения либо видео и аудио в режиме передачи данных, узел ex355 обработки видеосигналов сжимает и кодирует видеосигналы, предоставляемые из узла ex365 камеры, с использованием способа кодирования движущихся графических изображений, показанного в каждом из вариантов осуществления (т.е. выступает в качестве устройства кодирования изображений согласно аспекту настоящего изобретения), и передает кодированные видеоданные в узел ex353 мультиплексирования/демультиплексирования. В отличие от этого, в течение времени, когда узел ex365 камеры захватывает видео, неподвижные изображения и т.п., узел ex354 обработки аудиосигналов кодирует аудиосигналы, собранные посредством узла ex356 аудиоввода, и передает кодированные аудиоданные в узел ex353 мультиплексирования/демультиплексирования.
[0196] Узел ex353 мультиплексирования/демультиплексирования мультиплексирует кодированные видеоданные, подаваемые из узла ex355 обработки видеосигналов, и кодированные аудиоданные, подаваемые из узла ex354 обработки аудиосигналов, с использованием предварительно определенного способа. Затем, узел ex352 модуляции/демодуляции выполняет обработку с расширенным спектром в отношении мультиплексированных данных, и приемо-передающий узел ex351 выполняет цифро-аналоговое преобразование и преобразование частоты в отношении упомянутых данных с тем, чтобы передавать результирующие данные через антенну ex350.
[0197] При приеме данных видеофайла, который связывается с веб-страницей и т.п., в режиме передачи данных или при приеме почтового сообщения с прикрепленным видео и/или аудио, чтобы декодировать мультиплексированные данные, принятые через антенну ex350, узел ex353 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные в поток битов видеоданных и поток битов аудиоданных и предоставляет в узел ex355 обработки видеосигналов кодированные видеоданные, а в узел ex354 обработки аудиосигналов кодированные аудиоданные через синхронную шину ex370. Узел ex355 обработки видеосигналов декодирует видеосигнал с использованием способа декодирования движущихся графических изображений, соответствующего способу кодирования движущихся графических изображений, показанному в каждом из вариантов осуществления (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения), и затем узел ex358 отображения отображает, например, видеоизображения и неподвижные изображения, включенные в видеофайл, связанный с веб-страницей, через узел ex359 управления ЖК-устройством отображения. Кроме того, узел ex354 обработки аудиосигналов декодирует аудиосигнал, и узел ex357 аудиовывода предоставляет аудио.
[0198] Кроме того, аналогично телевизору ex300, терминал, такой как сотовый телефон ex114, вероятно, имеет 3 типа конфигураций реализации, включающих в себя не только (i) приемо-передающий терминал, включающий в себя как устройство кодирования, так и устройство декодирования, но также и (ii) передающий терминал, включающий в себя только устройство кодирования, и (iii) приемный терминал, включающий в себя только устройство декодирования. Хотя в описании система ex200 цифрового вещания принимает и передает мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные в описании, мультиплексированные данные могут быть данными, полученными посредством мультиплексирования не аудиоданных, а символьных данных, связанных с видео, в видеоданные, и могут быть не мультиплексированными данными, а самими видеоданными.
[0199] По сути, способ кодирования движущихся графических изображений и способ декодирования движущихся графических изображений в каждом из вариантов осуществления могут использоваться в любых из описанных устройств и систем. Таким образом, могут быть получены преимущества, описанные в каждом из вариантов осуществления.
[0200] Кроме того, настоящее изобретение не ограничено вариантами осуществления и различными модификациями, и изменения возможны без отступления от объема настоящего изобретения.
[0201] (Вариант 4 осуществления)
Видеоданные могут быть сгенерированы посредством переключения, по мере необходимости, между (i) способом кодирования движущихся графических изображений или устройством кодирования движущихся графических изображений, показанными в каждом из вариантов осуществления, и (ii) способом кодирования движущихся графических изображений или устройством кодирования движущихся графических изображений в соответствии с другим стандартом, таким как MPEG-2, MPEG-4 AVC и VC-1.
[0202] Здесь, когда множество видеоданных, которые соответствуют различным стандартам, генерируются, а затем декодируются, способы декодирования должны быть выбраны таким образом, что они соответствуют различным стандартам. Тем не менее, поскольку не может быть обнаружено то, какому стандарту соответствуют каждые из множества из видеоданных, которые должны быть декодированы, имеется проблема в том, что не может быть выбран надлежащий способ декодирования.
[0203] Чтобы разрешать проблему, мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и т.п. в видеоданные, имеют структуру, включающую в себя идентификационную информацию, указывающую то, какому стандарту соответствуют видеоданные. Далее описывается специфичная структура мультиплексированных данных, включающих в себя видеоданные, сгенерированные в способе кодирования движущихся графических изображений и посредством устройства кодирования движущихся графических изображений, показанных в каждом из вариантов осуществления. Мультиплексированные данные являются цифровым потоком в формате транспортных потоков MPEG-2.
[0204] Фиг. 23 иллюстрирует структуру мультиплексированных данных. Как проиллюстрировано на фиг. 26, мультиплексированные данные могут быть получены посредством мультиплексирования по меньшей мере одного из видеопотока, аудиопотока, потока презентационной графики (PG) и потока интерактивной графики. Видеопоток представляет первичное видео и вторичное видео фильма, аудиопоток (IG) представляет часть первичного аудио и часть вторичного аудио, которая должна смешиваться с частью первичного аудио, а поток презентационной графики представляет субтитры фильма. Здесь, первичное видео является обычным видео, которое должно быть отображено на экране, а вторичное видео является видео, которое должно быть отображено в меньшем окне в первичном видео. Кроме того, поток интерактивной графики представляет интерактивный экран, который должен быть сгенерирован посредством размещения GUI-компонентов на экране. Видеопоток кодируется в способе кодирования движущихся графических изображений или посредством устройства кодирования движущихся графических изображений, показанных в каждом из вариантов осуществления, либо в способе кодирования движущихся графических изображений или посредством устройства кодирования движущихся графических изображений в соответствии с традиционным стандартом, таким как MPEG-2, MPEG-4 AVC и VC-1. Аудиопоток кодируется в соответствии с таким стандартом, как AC-3 Dolby, Dolby Digital Plus, MLP, DTS, DTS-HD и линейная PCM.
[0205] Каждый поток, включенный в мультиплексированные данные, идентифицируется посредством PID. Например, 0x1011 выделяется видеопотоку, который должен быть использован для видео фильма, 0x1100-0x111F выделяются аудиопотокам, 0x1200-0x121F выделяются потокам презентационной графики, 0x1400-0x141F выделяются потокам интерактивной графики, 0x1B00-0x1B1F выделяются видеопотокам, которые должны быть использованы для вторичного видео фильма, и 0x1A00-0x1A1F выделяются аудиопотокам, которые должны быть использованы для вторичного видео, которое должно смешиваться с первичным аудио.
[0206] Фиг. 27 схематично иллюстрирует то, как мультиплексируются данные. Во-первых, видеопоток ex235, состоящий из видеокадров, и аудиопоток ex238, состоящий из аудиокадров, преобразуются в поток PES-пакетов ex236 и поток PES-пакетов ex239 и дополнительно в TS-пакеты ex237 и TS-пакеты ex240, соответственно. Аналогично, данные потока ex241 презентационной графики и данные потока ex244 интерактивной графики преобразуются в поток PES-пакетов ex242 и поток PES-пакетов ex245 и дополнительно в TS-пакеты ex243 и TS-пакеты ex246, соответственно. Эти TS-пакеты мультиплексируются в поток, чтобы получать мультиплексированные данные ex247.
[0207] Фиг. 28 иллюстрирует то, как видеопоток сохраняется в потоке PES-пакетов. Первая панель на фиг. 28 показывает поток видеокадров в видеопотоке. Вторая панель показывает поток PES-пакетов. Как указано посредством стрелок, обозначенных как yy1, yy2, yy3 и yy4 на фиг. 28, видеопоток разделяется на графические изображения, такие как I-графические изображения, B-графические изображения и P-графические изображения, каждое из которых является единицей видеопредставления, и графические изображения сохраняются в рабочих данных каждого из PES-пакетов. Каждый из PES-пакетов имеет PES-заголовок, и PES-заголовок сохраняет временную метку представления (PTS), указывающую время отображения графического изображения, и временную метку декодирования (DTS), указывающую время декодирования графического изображения.
[0208] Фиг. 29 иллюстрирует формат 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-фильтр. Номера, увеличивающиеся с заголовка мультиплексированных данных, называются номерами исходных пакетов (SPN), как показано внизу на Фиг. 29.
[0209] Каждый из TS-пакетов, включенных в мультиплексированные данные, включает в себя не только потоки аудио, видео, субтитров и т.п., но также и таблицу ассоциаций программ (PAT), таблицу структуры программ (PMT) и временную отметку программ (PCR). PAT показывает то, что указывает PID в PMT, используемой в мультиплексированных данных, и PID самого PAT регистрируется как нуль. PMT сохраняет PID потоков видео, аудио, субтитров и т.п., включенных в мультиплексированные данные, и информацию атрибутов потоков, соответствующих PID. PMT также имеет различные дескрипторы, связанные с мультиплексированными данными. Дескрипторы имеют такую информацию, как информация управления копированием, показывающая то, разрешено или нет копирование мультиплексированных данных. PCR сохраняет информацию STC-времени, соответствующую ATS, показывающей, когда PCR-пакет передается в декодер, чтобы достигать синхронизации между таймером поступления (ATC), т.е. временной осью ATS, и системным таймером (STC), т.е. временной осью PTS и DTS.
[0210] Фиг. 30 подробно поясняет структуру данных PMT. PMT-заголовок располагается в верхней части PMT. PMT-заголовок описывает длину данных, включенных в PMT, и т.п.Множество дескрипторов, связанных с мультиплексированными данными, располагается после PMT-заголовка. Информация, такая как информация управления копированием, описывается в дескрипторах. После дескрипторов располагается множество фрагментов информации потока, связанных с потоками, включенными в мультиплексированные данные. Каждый фрагмент информации потока включает в себя дескрипторы потоков, каждый из которых описывает такую информацию, как тип потока для идентификации кодека сжатия потока, PID потока и информация атрибутов потока (такая как частота кадров или соотношение сторон). Дескрипторы потоков по числу равны числу потоков в мультиплексированных данных.
[0211] Когда мультиплексированные данные записываются на носителе записи и т.д., они записываются вместе с файлами информации мультиплексированных данных.
[0212] Каждый из файлов информации мультиплексированных данных является управляющей информацией мультиплексированных данных, как показано на фиг. 31. Файлы информации мультиплексированных данных находятся в соответствии "один-к-одному" с мультиплексированными данными, и каждый из файлов включает в себя информацию мультиплексированных данных, информацию атрибутов потока и карту вхождений.
[0213] Как проиллюстрировано на фиг. 31, информация мультиплексированных данных включает в себя системную скорость, время начала воспроизведения и время завершения воспроизведения. Системная скорость указывает максимальную скорость передачи, на которой декодер системных целевых объектов, который будет описан ниже, передает мультиплексированные данные в PID-фильтр. Интервалы ATS, включенных в мультиплексированные данные, задаются не больше системной скорости. Время начала воспроизведения указывает PTS в видеокадре в заголовке мультиплексированных данных. Интервал одного кадра добавляется к PTS в видеокадре в конце мультиплексированных данных, и PTS задается равным времени завершения воспроизведения.
[0214] Как показано на фиг. 32, фрагмент информации атрибутов регистрируется в информации атрибутов потока для каждого PID каждого потока, включенного в мультиплексированные данные. Каждый фрагмент информации атрибутов имеет различную информацию в зависимости от того, является соответствующий поток видеопотоком, аудиопотоком, потоком презентационной графики или потоком интерактивной графики. Каждый фрагмент информации атрибутов видеопотока переносит информацию, включающую в себя то, какой кодек сжатия используется для сжатия видеопотока, а также разрешение, соотношение сторон и частоту кадров фрагментов данных графических изображений, которые включаются в видеопоток. Каждый фрагмент информации атрибутов аудиопотока переносит информацию, включающую в себя то, какой кодек сжатия используется для сжатия аудиопотока, сколько каналов включается в аудиопоток, какой язык поддерживает аудиопоток, и насколько высокой является частота дискретизации. Информация атрибутов видеопотока и информация атрибутов аудиопотока используются для инициализации декодера до того, как проигрыватель воспроизводит информацию.
[0215] В варианте 4 осуществления мультиплексированные данные, которые должны быть использованы, имеют тип потока, включенный в PMT. Кроме того, когда мультиплексированные данные записываются на носителе записи, используется информация атрибутов видеопотока, включенная в информацию мультиплексированных данных. Более конкретно, способ кодирования движущихся графических изображений или устройство кодирования движущихся графических изображений, описанные в каждом из вариантов осуществления, включают в себя этап или узел для выделения уникальной информации, указывающей видеоданные, сгенерированные посредством способа кодирования движущихся графических изображений или устройства кодирования движущихся графических изображений в каждом из вариантов осуществления, для типа потока, включенного в PMT, или информации атрибутов видеопотока. При этой конфигурации, видеоданные, сгенерированные посредством способа кодирования движущихся графических изображений или устройства кодирования движущихся графических изображений, описанных в каждом из вариантов осуществления, могут отличаться от видеоданных, которые соответствуют другому стандарту.
[0216] Кроме того, фиг. 33 иллюстрирует этапы способа декодирования движущихся графических изображений согласно варианту 4 осуществления. На этапе exS100, тип потока, включенный в PMT или информацию атрибутов видеопотока, получается из мультиплексированных данных. Затем, на этапе exS101, определяется то, указывает ли тип потока либо информация атрибутов видеопотока то, что мультиплексированные данные генерируются посредством способа кодирования движущихся графических изображений или устройства кодирования движущихся графических изображений в каждом из вариантов осуществления. Когда определяется то, что тип потока или информация атрибутов видеопотока указывают то, что мультиплексированные данные генерируются посредством способа кодирования движущихся графических изображений или устройства кодирования движущихся графических изображений в каждом из вариантов осуществления, на этапе exS102, тип потока или информация атрибутов видеопотока декодируется посредством способа декодирования движущихся графических изображений в каждом из вариантов осуществления. Кроме того, когда тип потока или информация атрибутов видеопотока указывает соответствие традиционным стандартам, таким как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS103, тип потока или информация атрибутов видеопотока декодируется посредством способа декодирования движущихся графических изображений в соответствии с традиционными стандартами.
[0217] Также, выделение нового уникального значения для типа потока или информации атрибутов видеопотока обеспечивает определение того, могут ли выполнять декодирование способ декодирования движущихся графических изображений или устройство декодирования движущихся графических изображений, которые описываются в каждом из вариантов осуществления. Даже после ввода мультиплексированных данных, которые соответствуют различному стандарту, может быть выбран надлежащий способ или устройство декодирования. Таким образом, появляется возможность декодировать информацию без ошибок. Кроме того, способ или устройство кодирования движущихся графических изображений либо способ или устройство декодирования движущихся графических изображений в варианте 4 осуществления могут быть использованы в устройствах и системах, описанных выше по тексту.
[0218] (Вариант 5 осуществления)
Каждый из способа кодирования движущихся графических изображений, устройства кодирования движущихся графических изображений, способа декодирования движущихся графических изображений и устройства декодирования движущихся графических изображений в каждом из вариантов осуществления типично осуществляется в форме интегральной схемы или большой интегральной (LSI) схемы. В качестве примера LSI, фиг. 34 иллюстрирует конфигурацию LSI ex500, которая состоит из одного кристалла. LSI ex500 включает в себя элементы ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 и ex509, которые будут описаны ниже по тексту, и элементы соединяются друг с другом через шину ex510. Узел ex505 схемы электропитания активируется посредством предоставления питания в каждый из элементов, когда узел ex505 схемы электропитания включается.
[0219] Например, когда выполняется кодирование, LSI ex500 принимает AV-сигнал из микрофона ex117, камеры ex113 и т.п. через AV-ввод/вывод ex509 под управлением узла ex501 управления, включающего в себя CPU ex502, контроллер ex503 памяти, контроллер ex504 потоков и узел ex512 управления частотой возбуждения. Принимаемый AV-сигнал временно сохраняется во внешней памяти ex511, к примеру, SDRAM. Под управлением узла ex501 управления, сохраненные данные сегментируются на части данных согласно объему и скорости обработки так, что они передаются в узел ex507 обработки сигналов. Затем, узел ex507 обработки сигналов кодирует аудиосигнал и/или видеосигнал. Здесь, кодирование видеосигнала является кодированием, описанным в каждом из вариантов осуществления. Кроме того, узел ex507 обработки сигналов иногда мультиплексирует кодированные аудиоданные и кодированные видеоданные, и ввод-вывод ex506 потока предоставляет мультиплексированные данные наружу. Предоставляемые мультиплексированные данные передаются в базовую станцию ex107 или записываются на носителе ex215 записи. Когда наборы данных мультиплексируются, наборы данных должны временно сохраняться в буфере ex508 так, что наборы данных являются синхронизированными друг с другом.
[0220] Хотя память ex511 является элементом за пределами LSI ex500, она может быть включена в LSI ex500. Буфер ex508 не ограничен одним буфером, а может состоять из буферов. Кроме того, LSI ex500 может состоять из одного кристалла или множества кристаллов.
[0221] Кроме того, хотя узел ex501 управления включает в себя CPU ex502, контроллер ex503 памяти, контроллер ex504 потоков, узел ex512 управления частотой возбуждения, конфигурация узла ex501 управления не ограничена этой. Например, узел ex507 обработки сигналов дополнительно может включать в себя CPU. Включение другого CPU в узел ex507 обработки сигналов может повышать скорость обработки. Кроме того, в качестве другого примера, CPU ex502 может включать в себя узел ex507 обработки сигналов или узел обработки аудиосигналов, который является частью узла ex507 обработки сигналов. В таком случае, узел ex501 управления включает в себя узел ex507 обработки сигналов или CPU ex502, включающий в себя часть узла ex507 обработки сигналов.
[0222] Используемым здесь названием является LSI, но она также может называться IC, системной LSI, супер-LSI или ультра-LSI в зависимости от степени интеграции.
[0223] Кроме того, способы достигать интеграции не ограничены LSI, и специальная схема или процессор общего назначения и т.д. также позволяет достигать интеграции. Программируемая пользователем вентильная матрица (FPGA), которая может программироваться после изготовления LSI, или реконфигурируемый процессор, который дает возможность переконфигурирования подключения или конфигурации LSI, может использоваться для аналогичной цели. Программируемое логическое устройство типично может исполнять способ кодирования движущихся графических изображений и способ декодирования движущихся графических изображений согласно вариантам осуществления и вариациям посредством загрузки или считывания из памяти программы, включенной в программное обеспечение или аппаратно-программное обеспечение.
[0224] В будущем, с развитием полупроводниковых технологий совершенно новая технология может заменять LSI. Функциональные блоки могут быть интегрированы с использованием этой технологии. Имеется возможность того, что настоящее изобретение применимо к биотехнологии.
[0225] (Вариант 6 осуществления)
Когда декодируются видеоданные, сгенерированные способом кодирования движущихся графических изображений или устройством кодирования движущихся графических изображений, описанных в каждом из вариантов осуществления, по сравнению с тем, когда декодируются видеоданные, которые соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, объем вычисления, вероятно, возрастает. Таким образом, LSI ex500 должна задаваться на частоте возбуждения, превышающей частоту CPU ex502, которая должна быть использована, когда видеоданные декодируются в соответствии с традиционным стандартом. Тем не менее, когда частота возбуждения задается большей, имеется проблема в том, что возрастает энергопотребление.
[0226] Чтобы разрешать проблему, устройство декодирования движущихся графических изображений, к примеру, телевизор ex300 и LSI ex500, выполнено с возможностью определять то, какому стандарту соответствуют видеоданные, и переключаться между частотами возбуждения согласно определенному стандарту. Фиг. 35 иллюстрирует конфигурацию ex800 в варианте 6 осуществления. Узел ex803 переключения частоты возбуждения задает частоту возбуждения равной большей частоте возбуждения, когда видеоданные генерируются посредством способа кодирования движущихся графических изображений или устройства кодирования движущихся графических изображений, описанных в каждом из вариантов осуществления. Затем, узел ex803 переключения частоты возбуждения инструктирует узлу ex801 обработки декодирования, который исполняет способ декодирования движущихся графических изображений, описанный в каждом из вариантов осуществления, декодировать видеоданные. Когда видеоданные соответствуют традиционному стандарту, узел ex803 переключения частоты возбуждения задает частоту возбуждения равной меньшей частоте возбуждения, чем частота возбуждения видеоданных, сгенерированных посредством способа кодирования движущихся графических изображений или устройства кодирования движущихся графических изображений, описанных в каждом из вариантов осуществления. Затем, узел ex803 переключения частоты возбуждения инструктирует узлу ex802 обработки декодирования, который соответствует традиционному стандарту, декодировать видеоданные.
[0227] Более конкретно, узел ex803 переключения частоты возбуждения включает в себя CPU ex502 и узел ex512 управления частотой возбуждения на фиг. 34. Здесь, каждый из узла ex801 обработки декодирования, который осуществляет способ декодирования движущихся графических изображений, описанный в каждом из вариантов осуществления, и узла ex802 обработки декодирования, который соответствует традиционному стандарту, соответствует узлу ex507 обработки сигналов на фиг. 34. CPU ex502 определяет то, какому стандарту соответствуют видеоданные. Затем, узел ex512 управления частотой возбуждения определяет частоту возбуждения на основе сигнала из CPU ex502. Кроме того, узел ex507 обработки сигналов декодирует видеоданные на основе сигнала из CPU ex502. Например, идентификационная информация, описанная в варианте 4 осуществления, вероятно, используется для идентификации видеоданных. Идентификационная информация не ограничена идентификационной информацией, описанной в варианте 4 осуществления, а может быть любой информацией при условии, что информация указывает то, какому стандарту соответствуют видеоданные. Например, когда то, какому стандарту соответствуют стандартные видеоданные, может быть определено на основе внешнего сигнала для определения того, что видеоданные используются для телевизора или диска и т.д., определение может выполняться на основе такого внешнего сигнала. Кроме того, CPU ex502 выбирает частоту возбуждения на основе, например, таблицы поиска, в которой стандарты видеоданных ассоциированы с частотами возбуждения, как показано на фиг. 37. Частота возбуждения может быть выбрана посредством сохранения таблицы поиска в буфере ex508 и внутренней памяти LSI и при обращении к таблице поиска посредством CPU ex502.
[0228] Фиг. 36 иллюстрирует этапы для исполнения способа в настоящем варианте осуществления. Во-первых, на этапе exS200, узел ex507 обработки сигналов получает идентификационную информацию из мультиплексированных данных. Затем, на этапе exS201, CPU ex502 определяет на основе идентификационной информации то, генерируются ли видеоданные посредством способа кодирования и устройства кодирования, описанных в каждом из вариантов осуществления. Когда видеоданные генерируются посредством способа кодирования и устройства кодирования, описанных в каждом из вариантов осуществления, на этапе exS202, CPU ex502 передает сигнал для задания частоты возбуждения равной большей частоте возбуждения в узел ex512 управления частотой возбуждения. Затем, узел ex512 управления частотой возбуждения задает частоту возбуждения равной большей частоте возбуждения. С другой стороны, когда идентификационная информация указывает то, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS203, CPU ex502 передает сигнал для задания частоты возбуждения равной меньшей частоте возбуждения в узел ex512 управления частотой возбуждения. Затем, узел ex512 управления частотой возбуждения задает частоту возбуждения равной меньшей частоте возбуждения, чем частота возбуждения в случае, если видеоданные генерируются посредством способа кодирования и устройства кодирования, описанных в каждом из вариантов осуществления.
[0229] Кроме того, наряду с переключением частот возбуждения, энергосберегающий эффект может быть повышен посредством изменения напряжения, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500. Например, когда частота возбуждения задается меньшей, напряжение, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500, вероятно, задается равным напряжению, меньшему напряжения в случае, если частота возбуждения задается большей.
[0230] Кроме того, когда объем вычисления для декодирования больше, частота возбуждения может задаваться большей, а когда объем вычисления для декодирования меньше, частота возбуждения может задаваться меньшей в качестве способа для задания частоты возбуждения. Таким образом, способ задания не ограничен способами, описанными выше. Например, когда объем вычисления для декодирования видеоданных в соответствии с MPEG-4 AVC превышает объем вычисления для декодирования видеоданных, сгенерированных посредством способа кодирования движущихся графических изображений и устройства кодирования движущихся графических изображений, описанных в каждом из вариантов осуществления, частота возбуждения, вероятно, задается в обратном порядке относительно задания, описанного выше.
[0231] Кроме того, способ для задания частоты возбуждения не ограничен способом для задания частоты возбуждения меньшей. Например, когда идентификационная информация указывает то, что видеоданные генерируются посредством способа кодирования движущихся графических изображений и устройства кодирования движущихся графических изображений, описанных в каждом из вариантов осуществления, напряжение, которое должно прикладываться к 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.
[0232] Соответственно, энергосберегающий эффект может быть повышен посредством переключения между частотами возбуждения согласно стандарту, которому соответствуют видеоданные. Кроме того, когда LSI ex500 или устройство, включающее в себя LSI ex500, возбуждается с использованием батареи, время работы от батареи может быть продлено за счет энергосберегающего эффекта.
[0233] (Вариант 7 осуществления)
Возникают случаи, когда множество видеоданных, которые соответствуют различным стандартам, предоставляются в устройства и системы, такие как телевизор и сотовый телефон. Чтобы обеспечивать декодирование множества видеоданных, которые соответствуют различным стандартам, узел ex507 обработки сигналов LSI ex500 должен соответствовать различным стандартам. Тем не менее, проблемы увеличения масштаба схемы LSI ex500 и роста затрат возникают при отдельном использовании узлов ex507 обработки сигналов, которые соответствуют соответствующим стандартам.
[0234] Чтобы разрешать проблему, задумана конфигурация, в которой частично совместно используются узел обработки декодирования для реализации способа декодирования движущихся графических изображений, описанного в каждом из вариантов осуществления, и узел обработки декодирования, который соответствует традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1. Ex900 на фиг. 38A показывает пример конфигурации. Например, способ декодирования движущихся графических изображений, описанный в каждом из вариантов осуществления, и способ декодирования движущихся графических изображений, который соответствует MPEG-4 AVC, имеют, частично совместно, сведения по обработке, такой как энтропийное кодирование, обратное квантование, фильтрация удаления блочности и компенсация движения. Сведения по обработке, которая должна совместно использоваться, вероятно, включают в себя использование узла ex902 обработки декодирования, который соответствует MPEG-4 AVC. Напротив, специализированный узел ex901 обработки декодирования, вероятно, используется для другой обработки, уникальной для настоящего изобретения и не соответствует MPEG-4 AVC. Поскольку аспект настоящего изобретения отличается энтропийным декодированием, в частности, например, специализированный узел ex901 обработки декодирования используется для энтропийного декодирования. Иначе, узел обработки декодирования, вероятно, совместно используется для одного из обратного квантования, фильтрации удаления блочности и компенсации движения или всей обработки. Узел обработки декодирования для реализации способа декодирования движущихся графических изображений, описанного в каждом из вариантов осуществления, может быть совместно использован для обработки, которая должна совместно использоваться, и специализированный узел обработки декодирования может использоваться для обработки, уникальной для MPEG-4 AVC.
[0235] Кроме того, ex1000 на фиг. 38B показывает другой пример, в котором обработка совместно используется частично. Этот пример использует конфигурацию, включающую в себя специализированный узел ex1001 обработки декодирования, который поддерживает обработку, уникальную для аспекта настоящего изобретения, специализированный узел ex1002 обработки декодирования, который поддерживает обработку, уникальную для другого традиционного стандарта, и узел ex1003 обработки декодирования, который поддерживает обработку, которая должна совместно использоваться способом декодирования движущихся изображений согласно аспекту настоящего изобретения и традиционным способом декодирования движущихся графических изображений. Здесь, специализированные узлы ex1001 и ex1002 обработки декодирования не обязательно являются специализированными для обработки согласно аспекту настоящего изобретения и обработки по традиционному стандарту, соответственно, и могут быть узлами обработки, допускающими реализацию общей обработки. Кроме того, конфигурация варианта 7 осуществления может быть реализована посредством LSI ex500.
[0236] Так же, уменьшение масштаба схемы LSI и сокращение затрат возможно за счет совместного использования узла обработки декодирования для обработки, которая должна совместно использоваться способом декодирования движущихся графических изображений согласно аспекту настоящего изобретения и способом декодирования движущихся графических изображений в соответствии с традиционным стандартом.
[0237] Промышленная применимость
Способ кодирования движущихся графических изображений и способ декодирования движущихся графических изображений согласно аспекту настоящего изобретения являются применимым, например, для телевизионных приемников, средств записи цифрового видео, навигационных систем автомобиля, мобильных телефонов, цифровых камер и цифровых видеокамер.
[0238] Список ссылочных позиций
100, 300 Устройство кодирования движущихся графических изображений
101 Узел разделения на блоки
102, 204 Узел прогнозирования
103 Узел вычитания
104 Узел преобразования
105, 203 Узел обратного преобразования
106, 205 Узел добавления
107, 206 Узел обработки SAO
108 Узел кодирования параметра SAO с переменной длиной слова
109 Узел кодирования коэффициента с переменной длиной слова
110, 208 Память кадров
121 Узел кодирования Sao_type_idx
122 Узел кодирования Sao_offset
140 Узел преобразования Sao_type_idx в двоичную форму
141 Узел установки ячейки
142, 251 Узел определения последней ячейки
150 Узел арифметического кодирования Sao_type_idx
151 Узел переключения арифметического кодирования
152 Первый узел контекстно-адаптивного арифметического кодирования
153 Второй Узел контекстно-адаптивного арифметического кодирования
154 Узел обходного арифметического кодирования
200, 400 устройство декодирования движущихся графических изображений
201 Узел декодирования параметра SAO с переменной длиной слова
207 Узел объединения блоков
221 Узел декодирования Sao_type_idx
222 Узел декодирования Sao_offset
240 Узел арифметического декодирования Sao_type_idx
241 Узел переключения арифметического декодирования
242 Первый узел контекстно-адаптивного арифметического декодирования
243 Второй узел контекстно-адаптивного арифметического декодирования
244 Узел обходного арифметического декодирования
250 Узел преобразования Sao_type_idx из двоичной формы
252 Узел установки Sao_type_idx
301 Узел преобразования в двоичную форму
302 Узел арифметического кодирования
401 Узел арифметического декодирования
402 Узел преобразования из двоичной формы