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

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[0001] Настоящее изобретение относится к способу кодирования изображений для кодирования каждого из блоков изображений.
УРОВЕНЬ ТЕХНИКИ
[0002] Технология, связанная со способом кодирования изображений для кодирования каждого из блоков изображений, описывается в непатентном документе (NPL) 1.
СПИСОК БИБЛИОГРАФИЧЕСКИХ ССЫЛОК
НЕПАТЕНТНЫЕ ДОКУМЕНТЫ
[0003] [NPL 1] ISO/IEC 14496-10 - MPEG-4 Part 10, Advanced Video Coding
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ЗАДАЧА
[0004] Тем не менее, возникают случаи, когда традиционный способ кодирования изображений не позволяет достигать достаточно высокой эффективности кодирования.
[0005] С учетом этого, настоящее изобретение предоставляет способ кодирования изображений, который позволяет повышать эффективность кодирования при кодировании изображений.
РЕШЕНИЕ ЗАДАЧИ
[0006] Способ кодирования изображений согласно аспекту настоящего изобретения является способом кодирования изображений для кодирования каждого из блоков изображений, причем способ кодирования изображений включает в себя: извлечение кандидата для вектора движения текущего блока, который должен быть кодирован, из вектора движения совместно размещенного блока, который является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок; добавление извлеченного кандидата в список; выбор вектора движения текущего блока из списка, в который добавлен кандидат; и кодирование текущего блока с использованием выбранного вектора движения и опорного изображения текущего блока, при этом извлечение включает в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением; извлечение кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения, которая не заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения, которая заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0007] Эти общие и конкретные аспекты могут быть реализованы с использованием системы, устройства, интегральной схемы, компьютерной программы или энергонезависимого машиночитаемого носителя записи, такого как CD-ROM, либо любой комбинации систем, устройств, способов, интегральных схем, компьютерных программ их носителей записи.
ПРЕИМУЩЕСТВА ИЗОБРЕТЕНИЯ
[0008] Способ кодирования изображений согласно настоящему изобретению предоставляет способ кодирования изображений, который позволяет повышать эффективность кодирования при кодировании изображений.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0009] Фиг. 1 является блок-схемой последовательности операций способа, показывающей работу устройства кодирования изображений согласно справочному примеру.
Фиг. 2 является блок-схемой последовательности операций способа, показывающей работу устройства декодирования изображений согласно справочному примеру.
Фиг. 3 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения согласно справочному примеру.
Фиг. 4 является схемой для пояснения совместно размещенного блока согласно справочному примеру.
Фиг. 5 является блок-схемой устройства декодирования изображений согласно варианту 1 осуществления.
Фиг. 6 является блок-схемой устройства декодирования изображений согласно варианту 1 осуществления.
Фиг. 7 является блок-схемой последовательности операций способа, показывающей работу устройства кодирования изображений согласно варианту 1 осуществления.
Фиг. 8 является блок-схемой последовательности операций способа, показывающей работу устройства декодирования изображений согласно варианту 1 осуществления.
Фиг. 9 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения согласно варианту 1 осуществления.
Фиг. 10 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения согласно варианту 2 осуществления.
Фиг. 11 является схемой для пояснения совместно размещенного блока согласно варианту 2 осуществления.
Фиг. 12 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения согласно варианту 3 осуществления.
Фиг. 13A является блок-схемой устройства декодирования изображений согласно варианту 4 осуществления.
Фиг. 13B является блок-схемой последовательности операций способа, показывающей работу устройства кодирования изображений согласно варианту 4 осуществления.
Фиг. 14A является блок-схемой устройства декодирования изображений согласно варианту 4 осуществления.
Фиг. 14B является блок-схемой последовательности операций способа, показывающей работу устройства декодирования изображений согласно варианту 4 осуществления.
Фиг. 15A является схемой, показывающей первый пример местоположения хранения для параметра, указывающего классификацию опорных изображений.
Фиг. 15B является схемой, показывающей второй пример местоположения хранения для параметра, указывающего классификацию опорных изображений.
Фиг. 15C является схемой, показывающей третий пример местоположения хранения для параметра, указывающего классификацию опорных изображений.
Фиг. 16 является схемой, показывающей пример местоположения хранения для параметра, указывающего режим прогнозирования.
Фиг. 17 иллюстрирует общую конфигурацию системы предоставления контента для реализации услуг распространения контента.
Фиг. 18 иллюстрирует общую конфигурацию системы цифровой широковещательной передачи.
Фиг. 19 является блок-схемой, иллюстрирующей пример конфигурации телевизионного приемника.
Фиг. 20 является блок-схемой, иллюстрирующей пример конфигурации модуля воспроизведения/записи информации, который считывает и записывает информацию с или на носитель записи, который является оптическим диском.
Фиг. 21 показывает пример конфигурации носителя записи, который является оптическим диском.
Фиг. 22A показывает пример сотового телефона.
Фиг. 22B показывает пример конфигурации сотового телефона.
Фиг. 23 показывает структуру мультиплексированных данных.
Фиг. 24 схематично иллюстрирует то, как каждый из потоков мультиплексируется в мультиплексированные данные.
Фиг. 25 иллюстрирует то, как видеопоток сохраняется в потоке PES-пакетов.
Фиг. 26 показывает структуру TS-пакетов и исходных пакетов в мультиплексированных данных.
Фиг. 27 показывает структуру данных PMT.
Фиг. 28 показывает внутреннюю структуру информации мультиплексированных данных.
Фиг. 29 показывает внутреннюю структуру информации атрибутов потока.
Фиг. 30 показывает этапы для идентификации видеоданных.
Фиг. 31 является блок-схемой, иллюстрирующей пример конфигурации интегральной схемы для реализации способа кодирования движущихся изображений и способа декодирования движущихся изображений согласно каждому из вариантов осуществления.
Фиг. 32 показывает конфигурацию для переключения между частотами возбуждения.
Фиг. 33 показывает этапы для идентификации видеоданных и переключения между частотами возбуждения.
Фиг. 34 показывает пример таблицы поиска, в которой стандарты видеоданных ассоциированы с частотами возбуждения.
Фиг. 35A показывает пример конфигурации для совместного использования модуля процессора сигналов.
Фиг. 35B показывает другой пример конфигурации для совместного использования модуля процессора сигналов.
ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[0010] БАЗОВАЯ ОСНОВА ФОРМИРОВАНИЯ ЗНАНИЙ НАСТОЯЩЕГО ИЗОБРЕТЕНИЯ
Относительно способа кодирования изображений, раскрытого в разделе "Уровень техники", авторы изобретения обнаружили следующую проблему. Следует отметить, что в нижеприведенном описании, изображение может быть любым из движущегося изображения, состоящего из множества изображений, неподвижного изображения, состоящего из одного изображения, части изображения и т.п.
[0011] Схемы кодирования изображений в последние годы включают в себя MPEG-4 AVC/H.264 и HEVC (стандарт высокоэффективного кодирования видео). В этих схемах кодирования изображений доступно внешнее (inter-) прогнозирование с использованием кодированных опорных изображений.
[0012] Кроме того, в этих схемах кодирования изображений может быть использовано опорное изображение, называемое долговременным опорным изображением. Например, в случае, если опорное изображение сохраняется в DPB (буфере декодированных (графических) изображений) в течение длительного времени, опорное изображение может быть использовано в качестве долговременного опорного изображения.
[0013] В HEVC существует режим, называемый режимом слияния. В режиме слияния предиктор вектора движения, полученный посредством прогнозирования вектора движения текущего блока из вектора движения смежного блока и т.п., используется для кодирования текущего блока в качестве вектора движения текущего блока. Иными словами, в режиме слияния предиктор вектора движения обрабатывается в качестве вектора движения текущего блока. Предиктор вектора движения и вектор движения текущего блока в режиме слияния также упоминаются как вектор слияния.
[0014] В HEVC, также может быть использован временной предиктор вектора движения. Временной предиктор вектора движения извлекается из вектора движения совместно размещенного блока в кодированном совместно размещенном изображении. Координаты совместно размещенного блока в совместно размещенном изображении соответствуют координатам текущего блока в текущем изображении, которое должно быть кодировано.
[0015] Далее, вектор движения совместно размещенного блока также упоминается как совместно размещенный вектор движения, и опорное изображение совместно размещенного блока также упоминается как совместно размещенное опорное изображение. Совместно размещенный блок кодируется с использованием совместно размещенного вектора движения и совместно размещенного опорного изображения. Следует отметить, что "совместно размещенный (co-located)" также может записываться как "совместно размещенный (collocated)".
[0016] Аналогично, вектор движения текущего блока также упоминается как текущий вектор движения, и опорное изображение текущего блока также упоминается как текущее опорное изображение. Текущий блок кодируется с использованием текущего вектора движения и текущего опорного изображения.
[0017] Вышеупомянутые текущий блок и совместно размещенный блок представляют собой единицу прогнозирования (PU). Единица прогнозирования является блоком изображения и задается как единица данных для прогнозирования. В HEVC, единица кодирования (CU) задается как единица данных для кодирования, отдельно от единицы прогнозирования. Единица прогнозирования является блоком в единице кодирования. В нижеприведенном описании, термин "блок" может быть заменен "единицей прогнозирования" или "единицей кодирования".
[0018] Единица кодирования и единица прогнозирования не являются фиксированными по размеру. Например, одно изображение может включать в себя множество единиц кодирования с различными размерами, и одно изображение может включать в себя множество единиц прогнозирования с различными размерами.
[0019] Это может приводить к случаю, когда блок, который точно совпадает с областью текущего блока, не задается в совместно размещенном изображении. Соответственно, в HEVC, совместно размещенный блок выбирается из множества блоков, включенных в совместно размещенное изображение посредством предварительно определенного способа выбора.
[0020] Временной предиктор вектора движения генерируется посредством масштабирования вектора движения выбранного совместно размещенного блока на базе расстояния POC (счетчика последовательности изображения). POC являются порядковыми числами, назначаемыми изображениям в порядке отображения. POC-расстояние соответствует временному расстоянию между двумя изображениями. Масштабирование на основе POC-расстояния также упоминается как масштабирование на основе POC. Выражение 1 ниже является арифметическим выражением для выполнения масштабирования на основе POC для вектора движения совместно размещенного блока.
[0021] pmv=(tb/td)×colmv (выражение 1).
[0022] Здесь, colmv является вектором движения совместно размещенного блока; pmv является временным предиктором вектора движения, извлекаемым из вектора движения совместно размещенного блока; tb является POC-расстоянием со знаком, представляющим разность между текущим изображением и текущим опорным изображением; td является POC-расстоянием со знаком, представляющим разность между совместно размещенным изображением и совместно размещенным опорным изображением.
[0023] В случае, если присутствует допустимый временной предиктор вектора движения, временной предиктор вектора движения вставляется в упорядоченный список кандидатов текущих векторов движения. Вектор движения, используемый для кодирования текущего блока, выбирается из упорядоченного списка кандидатов текущих векторов движения. Выбранный вектор движения указывается посредством параметра в потоке битов.
[0024] Фиг. 1 является блок-схемой последовательности операций способа, показывающей работу устройства кодирования изображений согласно справочному примеру. В частности, фиг. 1 показывает процесс кодирования изображения посредством внешнего прогнозирования.
[0025] Во-первых, устройство кодирования изображений классифицирует каждое из опорных изображений в качестве кратковременного опорного изображения или в качестве долговременного опорного изображения (этап S101). Устройство кодирования изображений записывает информацию, указывающую классификацию каждого из опорных изображений, в заголовке потока битов (этап S102).
[0026] Затем, устройство кодирования изображений идентифицирует текущее опорное изображение (этап S103). Устройство кодирования изображений далее извлекает текущий вектор движения (этап S104). Ниже подробно описывается процесс извлечения.
[0027] После этого, устройство кодирования изображений генерирует блок прогнозирования посредством выполнения компенсации движения с использованием текущего опорного изображения и текущего вектора движения (этап S105).
[0028] После этого, устройство кодирования изображений вычитает блок прогнозирования из текущего блока, чтобы генерировать остаточный блок (этап S106). В завершение, устройство кодирования изображений кодирует остаточный блок, чтобы генерировать поток битов, включающий в себя кодированный остаточный блок (этап S107).
[0029] Фиг. 2 является блок-схемой последовательности операций способа, показывающей работу устройства декодирования изображений согласно справочному примеру. В частности, фиг. 2 показывает процесс декодирования изображения посредством внешнего прогнозирования.
[0030] Во-первых, устройство декодирования изображений получает поток битов и получает информацию, указывающую классификацию каждого из опорных изображений, посредством синтаксического анализа заголовка потока битов (этап S201). Устройство декодирования изображений также получает остаточный блок посредством синтаксического анализа потока битов (этап S202).
[0031] Затем, устройство декодирования изображений идентифицирует текущее опорное изображение (этап S203). Устройство декодирования изображений далее извлекает текущий вектор движения (этап S204). Ниже подробно описывается процесс извлечения. После этого, устройство декодирования изображений генерирует блок прогнозирования посредством выполнения компенсации движения с использованием текущего опорного изображения и текущего вектора движения (этап S205). В завершение, устройство декодирования изображений суммирует блок прогнозирования с остаточным блоком, чтобы генерировать восстановленный блок (этап S206).
[0032] Фиг. 3 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения, показанного на фиг. 1 и 2. Далее описывается работа устройства кодирования изображений. Работа устройства декодирования изображений является идентичной работе устройства кодирования изображений, при этом "кодирование" заменено на "декодирование".
[0033] Во-первых, устройство кодирования изображений выбирает совместно размещенное изображение (этап S301). Затем, устройство кодирования изображений выбирает совместно размещенный блок в совместно размещенном изображении (этап S302). Устройство кодирования изображений далее идентифицирует совместно размещенное опорное изображение и совместно размещенный вектор движения (этап S303). После этого устройство кодирования изображений извлекает текущий вектор движения посредством схемы извлечения, которая заключает в себе масштабирование на основе POC (этап S304).
[0034] Фиг. 4 является схемой для пояснения совместно размещенного блока, используемого в процессе извлечения, показанном на фиг. 3. Совместно размещенный блок выбирается из множества блоков в совместно размещенном изображении.
[0035] Совместно размещенное изображение отличается от текущего изображения, которое включает в себя текущий блок. Например, совместно размещенное изображение является изображением, непосредственно предшествующим или идущим сразу после текущего изображения в порядке отображения. Подробнее, например, совместно размещенное изображение является опорным изображением, перечисленным первым в любом из двух списков опорных изображений, используемых для кодирования B-изображений (бипрогнозирующего кодирования).
[0036] Первый блок, включающий в себя выборку c0 в совместно размещенном изображении, является главным кандидатом для совместно размещенного блока и также упоминается как первичный совместно размещенный блок. Второй блок, включающий в себя выборку c1 в совместно размещенном изображении, является вторым главным кандидатом для совместно размещенного блока и также упоминается как вторичный совместно размещенный блок.
[0037] Пусть (x, y) представляют собой координаты выборки tl сверху слева в текущем блоке, w представляет собой ширину текущего блока, а h представляет собой высоту текущего блока. Координаты выборки c0 представляют собой (x+w, y+h). Координаты выборки c1 представляют собой (x+(w/2)-1, y+(h/2)-1).
[0038] В случае, если первый блок недоступен, второй блок выбирается в качестве совместно размещенного блока. Примеры случая, когда первый блок недоступен, включают в себя случай, в котором первый блок не присутствует, поскольку текущий блок находится правее всего или ниже всего, и случай, в котором первый блок кодируется посредством внутреннего прогнозирования.
[0039] Далее описывается более конкретный пример процесса извлечения временного предиктора вектора движения в качестве текущего вектора движения снова со ссылкой на фиг. 3.
[0040] Во-первых, устройство кодирования изображений выбирает совместно размещенное изображение (этап S301). Затем, устройство кодирования изображений выбирает совместно размещенный блок (этап S302). В случае, если первый блок, включающий в себя выборку c0, показанную на фиг. 4, доступен, первый блок выбирается в качестве совместно размещенного блока. В случае, если первый блок недоступен, а второй блок, включающий в себя выборку c1, показанную на фиг. 4, доступен, второй блок выбирается в качестве совместно размещенного блока.
[0041] В случае, если выбирается доступный совместно размещенный блок, устройство кодирования изображений задает временной предиктор вектора движения как доступный. В случае, если не выбирается доступный совместно размещенный блок, устройство кодирования изображений задает временной предиктор вектора движения как недоступный.
[0042] В случае, если временной предиктор вектора движения задается как доступный, устройство кодирования изображений идентифицирует совместно размещенный вектор движения в качестве базового вектора движения. Устройство кодирования изображений также идентифицирует совместно размещенное опорное изображение (этап S303). Устройство кодирования изображений далее извлекает временной предиктор вектора движения из базового вектора движения посредством масштабирования согласно выражению 1 (этап S304).
[0043] Посредством процесса, описанного выше, устройство кодирования изображений и устройство декодирования изображений извлекают временной предиктор вектора движения в качестве текущего вектора движения.
[0044] Тем не менее, возникают случаи, когда трудно извлекать надлежащий текущий вектор движения, в зависимости от взаимосвязей между текущим изображением, текущим опорным изображением, совместно размещенным изображением и совместно размещенным опорным изображением.
[0045] Например, в случае, если текущее опорное изображение является долговременным опорным изображением, имеется вероятность того, что временное расстояние между текущим опорным изображением и текущим изображением является большим. В случае, если совместно размещенное опорное изображение является долговременным опорным изображением, имеется вероятность того, что временное расстояние между совместно размещенным опорным изображением и совместно размещенным изображением является большим.
[0046] Эти случаи подвержены вероятности того, что чрезвычайно большой или маленький текущий вектор движения генерируется в результате масштабирования на основе POC. Это приводит к снижению точности прогнозирования и снижению эффективности кодирования. В частности, чрезвычайно большой или маленький текущий вектор движения не может надлежащим образом выражаться фиксированным числом битов, приводя к значительному снижению точности прогнозирования и снижению эффективности кодирования.
[0047] Способ кодирования изображений согласно аспекту настоящего изобретения является способом кодирования изображений для кодирования каждого из блоков изображений, причем способ кодирования изображений включает в себя: извлечение кандидата для вектора движения текущего блока, который должен быть кодирован, из вектора движения совместно размещенного блока, который является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок; добавление извлеченного кандидата в список; выбор вектора движения текущего блока из списка, в который добавлен кандидат; и кодирование текущего блока с использованием выбранного вектора движения и опорного изображения текущего блока, при этом извлечение включает в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением; извлечение кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения, которая не заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения, которая заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0048] Таким образом, кандидат для текущего вектора движения надлежащим образом извлекается при том, что он не является чрезвычайно большим или маленьким. Это способствует повышенной точности прогнозирования и повышенной эффективности кодирования.
[0049] Например, при извлечении: извлечение кандидата из вектора движения совместно размещенного блока не может быть выполнено в случае определения того, что одно из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением, а другое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока может быть выполнено в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением, или в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0050] Таким образом, в случае, если ожидается низкая точность прогнозирования, кандидата для текущего вектора движения не извлекается из вектора движения совместно размещенного блока. В силу этого может предотвращаться снижение точности прогнозирования.
[0051] Например, кодирование дополнительно может включать в себя кодирование информации, указывающей то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и информации, указывающей то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением.
[0052] Таким образом, информация, указывающая, для каждого опорного изображения, то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, предоставляется со стороны кодирования стороне декодирования. Это дает возможность стороне кодирования и стороне декодирования получать идентичный результат определения и выполнять идентичный процесс.
[0053] Например, извлечение может включать в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между опорным изображением текущего блока и изображением, которое включает в себя текущий блок; и определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между опорным изображением совместно размещенного блока и изображением, которое включает в себя совместно размещенный блок.
[0054] Таким образом, для каждого опорного изображения то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, определяется просто и надлежащим образом на основе временного расстояния.
[0055] Например, извлечение может включать в себя определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого кодируется совместно размещенный блок.
[0056] Таким образом, то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, определяется более точно.
[0057] Например, извлечение может включать в себя определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого кодируется текущий блок.
[0058] Таким образом, информация, указывающая то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, не должна сохраняться в течение длительного времени.
[0059] Например, извлечение может включать в себя: извлечение вектора движения совместно размещенного блока в качестве кандидата в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата посредством масштабирования вектора движения совместно размещенного блока с использованием отношения в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением, причем отношение представляет собой отношение временного расстояния между опорным изображением текущего блока и изображением, которое включает в себя текущий блок, к временному расстоянию между опорным изображением совместно размещенного блока и изображением, которое включает в себя совместно размещенный блок.
[0060] Таким образом, в случае, если два опорных изображения являются долговременным опорным изображением, масштабирование опускается, за счет чего можно сокращать объем вычислений. В случае, если два опорных изображения являются кратковременным опорным изображением, кандидат для текущего вектора движения надлежащим образом извлекается на основе временного расстояния.
[0061] Например, извлечение дополнительно может включать в себя, без извлечения кандидата из совместно размещенного блока, выбор другого совместно размещенного блока и извлечение кандидата из вектора движения другого совместно размещенного блока посредством второй схемы извлечения в случае определения того, что опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, причем другой совместно размещенный блок кодируется в отношении кратковременного опорного изображения.
[0062] Таким образом, выбирается блок для извлечения кандидата с высокой точностью прогнозирования. Это способствует повышенной точности прогнозирования.
[0063] Кроме того, способ декодирования изображений согласно аспекту настоящего изобретения является способом декодирования изображений для декодирования каждого из блоков изображений, причем способ декодирования изображений включает в себя: извлечение кандидата для вектора движения текущего блока, который должен быть декодирован, из вектора движения совместно размещенного блока, который является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок; добавление извлеченного кандидата в список; выбор вектора движения текущего блока из списка, в который добавлен кандидат; и декодирование текущего блока с использованием выбранного вектора движения и опорного изображения текущего блока, при этом извлечение включает в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением; извлечение кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения, которая не заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения, которая заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0064] Таким образом, кандидат для текущего вектора движения надлежащим образом извлекается при том, что он не является ли чрезвычайно большим или маленьким. Это способствует повышенной точности прогнозирования и повышенной эффективности кодирования.
[0065] Например, при извлечении: извлечение кандидата из вектора движения совместно размещенного блока не может быть выполнено в случае определения того, что одно из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением, а другое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока может быть выполнено в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением, или в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0066] Таким образом, в случае, если ожидается низкая точность прогнозирования, кандидат для текущего вектора движения не извлекается из вектора движения совместно размещенного блока. В силу этого может предотвращаться снижение точности прогнозирования.
[0067] Например, декодирование дополнительно может включать в себя декодирование информации, указывающей то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и информации, указывающей то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, при этом извлечение включает в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, с использованием информации, указывающей то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением; и определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, с использованием информации, указывающей то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением.
[0068] Таким образом, информация, указывающая, для каждого опорного изображения, то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, предоставляется со стороны кодирования стороне декодирования. Это дает возможность стороне кодирования и стороне декодирования получать идентичный результат определения и выполнять идентичный процесс.
[0069] Например, извлечение может включать в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между опорным изображением текущего блока и изображением, которое включает в себя текущий блок; и определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между опорным изображением совместно размещенного блока и изображением, которое включает в себя совместно размещенный блок.
[0070] Таким образом, для каждого опорного изображения то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, определяется просто и надлежащим образом на основе временного расстояния.
[0071] Например, извлечение может включать в себя определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого декодируется совместно размещенный блок.
[0072] Таким образом, то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, определяется более точно.
[0073] Например, извлечение может включать в себя определение того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого декодируется текущий блок.
[0074] Таким образом, информация, указывающая то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, не должна сохраняться в течение длительного времени.
[0075] Например, извлечение может включать в себя: извлечение вектора движения совместно размещенного блока в качестве кандидата в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата посредством масштабирования вектора движения совместно размещенного блока с использованием отношения в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением, причем отношение представляет собой отношение временного расстояния между опорным изображением текущего блока и изображением, которое включает в себя текущий блок, к временному расстоянию между опорным изображением совместно размещенного блока и изображением, которое включает в себя совместно размещенный блок.
[0076] Таким образом, в случае, если два опорных изображения являются долговременным опорным изображением, масштабирование опускается, за счет чего можно сокращать объем вычислений. В случае, если два опорных изображения являются кратковременным опорным изображением, кандидата для текущего вектора движения надлежащим образом извлекается на основе временного расстояния.
[0077] Например, извлечение дополнительно может включать в себя, без извлечения кандидата из совместно размещенного блока, выбор другого совместно размещенного блока и извлечение кандидата из вектора движения другого совместно размещенного блока посредством второй схемы извлечения в случае определения того, что опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, причем другой совместно размещенный блок декодируется в отношении кратковременного опорного изображения.
[0078] Таким образом, выбирается блок для извлечения кандидата с высокой точностью прогнозирования. Это способствует повышенной точности прогнозирования.
[0079] Кроме того, способ предоставления контента согласно аспекту настоящего изобретения представляет собой способ предоставления контента для передачи, из сервера, на который записаны данные изображений, кодированные посредством способа кодирования изображений, описанного выше, данных изображений в ответ на запрос из внешнего терминала.
[0080] Эти общие и конкретные аспекты могут быть реализованы с использованием системы, устройства, интегральной схемы, компьютерной программы или энергонезависимого машиночитаемого носителя записи, такого как CD-ROM, либо любой комбинации систем, устройств, способов, интегральных схем, компьютерных программ и носителей записи.
[0081] В дальнейшем в этом документе, определенные примерные варианты осуществления подробнее описываются со ссылкой на прилагаемые чертежи. Каждый из примерных вариантов осуществления, описанных ниже, показывает общий или конкретный пример. Числовые значения, формы, материалы, структурные элементы, компоновка и соединение структурных элементов, этапы, порядок обработки этапов и т.д., показанные в следующих примерных вариантах осуществления, являются просто примерами и, следовательно, не ограничивают объем настоящего изобретения. Следовательно, из структурных элементов в следующих примерных вариантах осуществления, структурные элементы, не изложенные в любом из независимых пунктов формулы изобретения, описываются как произвольные структурные элементы.
[0082] ВАРИАНТ 1 ОСУЩЕСТВЛЕНИЯ
Фиг. 5 является блок-схемой устройства кодирования изображений согласно варианту 1 осуществления. Устройство 500 кодирования изображений, показанное на фиг. 5, кодирует изображение на основе блоков и выводит поток битов, включающий в себя кодированное изображение. Подробно, устройство 500 кодирования изображений включает в себя модуль 501 вычитания, модуль 502 преобразования, модуль 503 квантования, энтропийный кодер 504, модуль 505 обратного квантования, модуль 506 обратного преобразования, модуль 507 суммирования, память 508 блоков, память 509 изображений, модуль 510 внутреннего прогнозирования, модуль 511 внешнего прогнозирования и модуль 512 выбора.
[0083] Модуль 501 вычитания вычитает изображение прогнозирования из изображения, предоставленного в устройство 500 кодирования изображений, чтобы генерировать разностное изображение. Модуль 502 преобразования выполняет преобразование частоты для разностного изображения, сгенерированного посредством модуля 501 вычитания, чтобы генерировать множество частотных коэффициентов. Модуль 503 квантования квантует множество частотных коэффициентов, сгенерированных посредством модуля 502 преобразования, чтобы генерировать множество коэффициентов квантования. Энтропийный кодер 504 кодирует множество коэффициентов квантования, сгенерированных посредством модуля 503 квантования, чтобы генерировать поток битов.
[0084] Модуль 505 обратного квантования обратно квантует множество коэффициентов квантования, сгенерированных посредством модуля 503 квантования, чтобы восстанавливать множество частотных коэффициентов. Модуль 506 обратного преобразования выполняет обратное преобразование частоты для множества частотных коэффициентов, восстановленных посредством модуля 505 обратного квантования, чтобы восстанавливать разностное изображение. Модуль 507 суммирования суммирует изображение прогнозирования с разностным изображением, восстановленным посредством модуля 506 обратного преобразования, чтобы восстанавливать (реконструировать) изображение. Модуль 507 суммирования сохраняет восстановленное изображение (реконструированное изображение) в памяти 508 блоков и памяти 509 изображений.
[0085] Память 508 блоков является памятью для сохранения изображения, восстановленного посредством модуля 507 суммирования на основе блоков. Память 509 изображений является памятью для сохранения изображения, восстановленного посредством модуля 507 суммирования на основе изображений.
[0086] Модуль 510 внутреннего прогнозирования выполняет внутреннее прогнозирование посредством обращения к памяти 508 блоков. Иными словами, модуль 510 внутреннего прогнозирования прогнозирует пиксельное значение в изображении из другого пиксельного значения в изображении. Модуль 510 внутреннего прогнозирования за счет этого генерирует изображение прогнозирования. Модуль 511 внешнего прогнозирования выполняет внешнее прогнозирование посредством обращения к памяти 509 изображений. Иными словами, модуль 511 внешнего прогнозирования прогнозирует пиксельное значение в изображении из пиксельного значения в другом изображении. Модуль 511 внешнего прогнозирования за счет этого генерирует изображение прогнозирования.
[0087] Модуль 512 выбора выбирает любое из изображения прогнозирования, сгенерированного посредством модуля 510 внутреннего прогнозирования, и изображения прогнозирования, сгенерированного посредством модуля 511 внешнего прогнозирования, и выводит выбранное изображение прогнозирования в модуль 501 вычитания и модуль 507 суммирования.
[0088] Хотя не показано на фиг. 5, устройство 500 кодирования изображений может включать в себя модуль фильтрации для удаления блочности. Модуль фильтрации для удаления блочности может выполнять процесс фильтрации для удаления блочности для изображения, восстановленного посредством модуля 507 суммирования, чтобы удалять шум около границ блоков. Устройство 500 кодирования изображений также может включать в себя модуль управления, который управляет каждым процессом в устройстве 500 кодирования изображений.
[0089] Фиг. 6 является блок-схемой устройства декодирования изображений согласно этому варианту осуществления. Устройство 600 декодирования изображений, показанное на фиг. 6, получает поток битов и декодирует изображение на основе блоков. Подробно, устройство 600 декодирования изображений включает в себя энтропийный декодер 601, модуль 602 обратного квантования, модуль 603 обратного преобразования, модуль 604 суммирования, память 605 блоков, память 606 изображений, модуль 607 внутреннего прогнозирования, модуль 608 внешнего прогнозирования и модуль 609 выбора.
[0090] Энтропийный декодер 601 декодирует кодированное множество коэффициентов квантования, включенных в поток битов. Модуль 602 обратного квантования обратно квантует множество коэффициентов квантования, декодированных посредством энтропийного декодера 601, чтобы восстанавливать множество частотных коэффициентов. Модуль 603 обратного преобразования выполняет обратное преобразование частоты для множества частотных коэффициентов, восстановленных посредством модуля 602 обратного квантования, чтобы восстанавливать разностное изображение.
[0091] Модуль 604 суммирования суммирует изображение прогнозирования с разностным изображением, восстановленным посредством модуля 603 обратного преобразования, чтобы восстанавливать (реконструировать) изображение. Модуль 604 суммирования выводит восстановленное изображение (реконструированное изображение). Модуль 604 суммирования также сохраняет восстановленное изображение в памяти 605 блоков и памяти 606 изображений.
[0092] Память 605 блоков является памятью для сохранения изображения, восстановленного посредством модуля 604 суммирования на основе блоков. Память 606 изображений является памятью для сохранения изображений, восстановленных посредством модуля 604 суммирования на основе изображений.
[0093] Модуль 607 внутреннего прогнозирования выполняет внутреннее прогнозирование посредством обращения к памяти 605 блоков. Иными словами, модуль 607 внутреннего прогнозирования прогнозирует пиксельное значение в изображении из другого пиксельного значения в изображении. Модуль 607 внутреннего прогнозирования за счет этого генерирует изображение прогнозирования. Модуль 608 внешнего прогнозирования выполняет внешнее прогнозирование посредством обращения к памяти 606 изображений. Иными словами, модуль 608 внешнего прогнозирования прогнозирует пиксельное значение в изображении из пиксельного значения в другом изображении. Модуль 608 внешнего прогнозирования за счет этого генерирует изображение прогнозирования.
[0094] Модуль 609 выбора выбирает любое из изображения прогнозирования, сгенерированного посредством модуля 607 внутреннего прогнозирования, и изображения прогнозирования, сгенерированного посредством модуля 608 внешнего прогнозирования, и выводит выбранное изображение прогнозирования в модуль 604 суммирования.
[0095] Хотя не показано на фиг. 6, устройство 600 декодирования изображений может включать в себя модуль фильтрации для удаления блочности. Модуль фильтрации для удаления блочности может выполнять процесс фильтрации для удаления блочности для изображения, восстановленного посредством модуля 604 суммирования, чтобы удалять шум около границ блоков. Устройство 600 декодирования изображений также может включать в себя модуль управления, который управляет каждым процессом в устройстве 600 декодирования изображений.
[0096] Вышеупомянутые процесс кодирования и процесс декодирования выполняются на основе единицы кодирования. Процесс преобразования, процесс квантования, процесс обратного преобразования и процесс обратного квантования выполняются на основе единицы преобразования (TU), при этом единица преобразования включается в единицу кодирования. Процесс прогнозирования выполняется на основе единицы прогнозирования, при этом единица прогнозирования включается в единицу кодирования.
[0097] Фиг. 7 является блок-схемой последовательности операций способа, показывающей работу устройства 500 кодирования изображений, показанного на фиг. 5. В частности, фиг. 7 показывает процесс кодирования изображения посредством внешнего прогнозирования.
[0098] Во-первых, модуль 511 внешнего прогнозирования классифицирует каждое из опорных изображений в качестве кратковременного опорного изображения или долговременного опорного изображения (этап 701).
[0099] Долговременное опорное изображение является ли опорным изображением, подходящим для длительного использования. Долговременное опорное изображение задается как опорное изображение для более длительного использования, чем кратковременное опорное изображение. Соответственно, имеется высокая вероятность того, что долговременное опорное изображение сохраняется в памяти 509 изображений в течение длительного времени. Долговременное опорное изображение обозначается посредством абсолютного POC, который не зависит от текущего изображения. Между тем, кратковременное опорное изображение обозначается посредством POC относительно текущего изображения.
[0100] Затем, энтропийный кодер 504 записывает информацию, указывающую классификацию каждого из опорных изображений, в заголовке потока битов (этап 702). Иными словами, энтропийный кодер 504 записывает информацию, указывающую, для каждого из опорных изображений, то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением.
[0101] После этого, модуль 511 внешнего прогнозирования идентифицирует опорное изображение текущего блока, который должен быть кодирован (который должен быть прогнозирован) (этап S703). Модуль 511 внешнего прогнозирования может идентифицировать опорное изображение блока, смежного с текущим блоком, в качестве текущего опорного изображения. Альтернативно, модуль 511 внешнего прогнозирования может идентифицировать текущее опорное изображение посредством предварительно определенного опорного индекса. Модуль 511 внешнего прогнозирования далее извлекает текущий вектор движения (этап S704). Ниже подробно описывается процесс извлечения.
[0102] Модуль 511 внешнего прогнозирования генерирует блок прогнозирования посредством выполнения компенсации движения с использованием текущего опорного изображения и текущего вектора движения (этап S705). После этого модуль 501 вычитания вычитает блок прогнозирования из текущего блока (исходного изображения), чтобы генерировать остаточный блок (этап S706). В завершение, энтропийный кодер 504 кодирует остаточный блок, чтобы генерировать поток битов, включающий в себя остаточный блок (этап S707).
[0103] Фиг. 8 является блок-схемой последовательности операций способа, показывающей работу 600 устройства декодирования изображений, показанного на фиг. 6. В частности, фиг. 8 показывает процесс декодирования изображения посредством внешнего прогнозирования.
[0104] Во-первых, энтропийный декодер 601 получает кодированный поток и получает информацию, указывающую классификацию каждого из опорных изображений, посредством синтаксического анализа заголовка потока битов (этап 801). Иными словами, энтропийный декодер 601 получает информацию, указывающую, для каждого из опорных изображений, то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением. Энтропийный декодер 601 также получает остаточный блок посредством синтаксического анализа потока битов (этап S802).
[0105] Затем, модуль 608 внешнего прогнозирования идентифицирует текущее опорное изображение (этап S803). Модуль 608 внешнего прогнозирования может идентифицировать опорное изображение блока, смежного с текущим блоком, в качестве текущего опорного изображения. Альтернативно, модуль 608 внешнего прогнозирования может идентифицировать текущее опорное изображение посредством предварительно определенного опорного индекса.
[0106] После этого, модуль 608 внешнего прогнозирования извлекает текущий вектор движения (этап S804). Ниже подробно описывается процесс извлечения. Модуль 608 внешнего прогнозирования далее генерирует блок прогнозирования посредством выполнения компенсации движения с использованием текущего опорного изображения и текущего вектора движения (этап S805). В завершение, модуль 604 суммирования суммирует блок прогнозирования с остаточным блоком, чтобы генерировать восстановленный блок (этап 806).
[0107] Фиг. 9 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения, показанного на фиг. 7 и 8. Далее описывается, главным образом, работа модуля 511 внешнего прогнозирования, показанного на фиг. 5. Работа модуля 608 внешнего прогнозирования, показанного на фиг. 6, является идентичной работе модуля 511 внешнего прогнозирования, показанного на фиг. 5, при этом "кодирование" заменено на "декодирование".
[0108] Во-первых, модуль 511 внешнего прогнозирования выбирает совместно размещенное изображение из множества доступных опорных изображений (этап S901). Множество доступных опорных изображений представляют собой кодированные изображения и сохраняются в память 509 изображений.
[0109] Затем, модуль 511 внешнего прогнозирования выбирает совместно размещенный блок в совместно размещенном изображении (этап S902). Модуль 511 внешнего прогнозирования далее идентифицирует совместно размещенное опорное изображение и совместно размещенный вектор движения (этап S903).
[0110] После этого, модуль 511 внешнего прогнозирования определяет то, является ли какое-либо из текущего опорного изображения и совместно размещенного опорного изображения долговременным опорным изображением (этап S904). В случае определения того, что какое-либо из текущего опорного изображения и совместно размещенного опорного изображения является долговременным опорным изображением (этап S904: "Да"), модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством первой схемы извлечения (этап S905).
[0111] Первая схема извлечения является схемой с использованием совместно размещенного вектора движения. Подробнее, первая схема извлечения является схемой непосредственного извлечения совместно размещенного вектора движения в качестве текущего вектора движения без масштабирования на основе POC. Первая схема извлечения может быть схемой извлечения текущего вектора движения посредством масштабирования совместно размещенного вектора движения в предварительно определенном соотношении.
[0112] В случае определения того, что ни одно из текущего опорного изображения и совместно размещенного опорного изображения не является долговременным опорным изображением (этап S904: "Нет"), модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством второй схемы извлечения (этап S906). Иными словами, в случае определения того, что текущее опорное изображение и совместно размещенное опорное изображение являются кратковременным опорным изображением, модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством второй схемы извлечения.
[0113] Вторая схема извлечения является схемой с использованием текущего опорного изображения, совместно размещенного опорного изображения и совместно размещенного вектора движения. Подробнее, вторая схема извлечения является схемой извлечения текущего вектора движения посредством выполнения масштабирования на основе POC (выражение 1) для совместно размещенного вектора движения.
[0114] Далее описывается более конкретный пример процесса извлечения текущего вектора движения снова со ссылкой на фиг. 9. Процесс извлечения, описанный выше, может быть изменен следующим образом.
[0115] Во-первых, модуль 511 внешнего прогнозирования выбирает совместно размещенное изображение (этап S901). Подробнее, в случае, если параметр slice_type заголовка среза равен B, а параметр collocated_from_l0_flag заголовка среза равен 0, изображение RefPicList1[0] выбирается в качестве совместно размещенного изображения. Изображение RefPicList1[0] является опорным изображением, перечисленным первым в упорядоченном списке RefPicList1 опорных изображений.
[0116] В случае, если параметр slice_type заголовка среза не равен B, или в случае, если параметр collocated_from_l0_flag заголовка среза не равен 0, изображение RefPicList0[0] выбирается в качестве совместно размещенного изображения. Изображение RefPicList0[0] является опорным изображением, перечисленным первым в упорядоченном списке RefPicList0 опорных изображений.
[0117] Затем, модуль 511 внешнего прогнозирования выбирает совместно размещенный блок (этап S902). В случае, если первый блок, включающий в себя выборку c0, показанную на фиг. 4, доступен, первый блок выбирается в качестве совместно размещенного блока. В случае, если первый блок недоступен, а второй блок, включающий в себя выборку c1, показанную на фиг. 4, доступен, второй блок выбирается в качестве совместно размещенного блока.
[0118] В случае, если выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования задает временной предиктор вектора движения как доступный. В случае, если не выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования задает временной предиктор вектора движения как недоступный.
[0119] В случае, если временной предиктор вектора движения задается как доступный, модуль 511 внешнего прогнозирования идентифицирует совместно размещенный вектор движения в качестве базового вектора движения. Модуль 511 внешнего прогнозирования также идентифицирует совместно размещенное опорное изображение (этап S903). В случае, если совместно размещенный блок имеет множество векторов движения, т.е. в случае, если совместно размещенный блок кодируется с использованием множества векторов движения, модуль 511 внешнего прогнозирования выбирает базовый вектор движения согласно предварительно определенной очередности по приоритету.
[0120] Например, в случае, если текущее опорное изображение является кратковременным опорным изображением, модуль 511 внешнего прогнозирования может предпочтительно выбирать вектор движения, который указывает на местоположение в кратковременном опорном изображении, из множества векторов движения в качестве базового вектора движения.
[0121] Подробно, в случае, если присутствует вектор движения, который указывает на местоположение в кратковременном опорном изображении, модуль 511 внешнего прогнозирования выбирает вектор движения в качестве базового вектора движения. В случае, если не присутствует вектор движения, который указывает на местоположение в кратковременном опорном изображении, модуль 511 внешнего прогнозирования выбирает вектор движения, который указывает на местоположение в долговременном опорном изображении, в качестве базового вектора движения.
[0122] После этого в случае, если какое-либо из текущего опорного изображения и совместно размещенного опорного изображения является долговременным опорным изображением (этап S904: "Да"), модуль 511 внешнего прогнозирования извлекает базовый вектор движения в качестве временного предиктора вектора движения (этап S905).
[0123] С другой стороны, в случае, если ни одно из двух опорных изображений не является долговременным опорным изображением (этап S904: "Нет"), модуль 511 внешнего прогнозирования извлекает временной предиктор вектора движения из базового вектора движения посредством масштабирования на основе POC (этап S906).
[0124] Как описано выше, временной предиктор вектора движения задается как доступный или недоступный. Модуль 511 внешнего прогнозирования вставляет временной предиктор вектора движения, заданный как доступный, в упорядоченный список кандидатов текущих векторов движения. Упорядоченный список хранит не только временной предиктор вектора движения, но и различные векторы движения в качестве кандидатов.
[0125] Модуль 511 внешнего прогнозирования выбирает один вектор движения из упорядоченного списка в качестве текущего вектора движения. Здесь, модуль 511 внешнего прогнозирования выбирает вектор движения с наибольшей точностью прогнозирования для текущего блока или вектор движения, который дает возможность кодирования текущего блока с наибольшей эффективностью кодирования, из упорядоченного списка. Индекс, соответствующий выбранному вектору движения, записывается в поток битов.
[0126] Посредством процесса, описанного выше, текущий вектор движения надлежащим образом извлекается из совместно размещенного вектора движения при том, что он не является чрезвычайно большим или маленьким. Это способствует повышенной точности прогнозирования и повышенной эффективности кодирования.
[0127] Следует отметить, что состояние каждого опорного изображения в отношении того, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, может быть изменено согласно времени. Например, кратковременное опорное изображение впоследствии может быть изменено на долговременное опорное изображение, и долговременное опорное изображение впоследствии может быть изменено на кратковременное опорное изображение.
[0128] Кроме того, модуль 511 внешнего прогнозирования может определять то, является ли совместно размещенное опорное изображение долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого кодируется совместно размещенный блок. Устройство 500 кодирования изображений далее может включать в себя дополнительную память для хранения результата определения от момента, когда кодируется совместно размещенный блок, до момента, когда кодируется текущий блок.
[0129] Таким образом, то, является ли совместно размещенное опорное изображение долговременным опорным изображением или кратковременным опорным изображением, определяется более точно.
[0130] В качестве альтернативы, модуль 511 внешнего прогнозирования может определять то, является ли совместно размещенное опорное изображение долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого кодируется текущий блок.
[0131] Таким образом, информация относительно того, является ли совместно размещенное опорное изображение долговременным опорным изображением или кратковременным опорным изображением, не должна сохраняться в течение длительного времени.
[0132] Кроме того, модуль 511 внешнего прогнозирования может определять то, является ли текущее опорное изображение долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между текущим опорным изображением и текущим изображением.
[0133] В качестве примера, в случае, если временное расстояние между текущим опорным изображением и текущим изображением превышает предварительно определенное пороговое значение, модуль 511 внешнего прогнозирования определяет то, что текущее опорное изображение является долговременным опорным изображением. В случае, если временное расстояние не превышает предварительно определенное пороговое значение, модуль 511 внешнего прогнозирования определяет то, что текущее опорное изображение является ли кратковременным опорным изображением.
[0134] Аналогично, модуль 511 внешнего прогнозирования может определять то, является ли совместно размещенное опорное изображение долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между совместно размещенным опорным изображением и совместно размещенным изображением.
[0135] В качестве примера, в случае, если временное расстояние между совместно размещенным опорным изображением и совместно размещенным изображением превышает предварительно определенное пороговое значение, модуль 511 внешнего прогнозирования определяет то, что совместно размещенное опорное изображение является долговременным опорным изображением. В случае, если временное расстояние не превышает предварительно определенное пороговое значение, модуль 511 внешнего прогнозирования определяет то, что совместно размещенное опорное изображение является кратковременным опорным изображением.
[0136] Модуль 608 внешнего прогнозирования в устройстве 600 декодирования изображений может определять для каждого опорного изображения то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, на основе временного расстояния, таким же образом, как модуль 511 внешнего прогнозирования в устройстве 500 кодирования изображений. В таком случае, информация, указывающая, для каждого опорного изображения, то, является ли опорное изображение долговременным опорным изображением или кратковременным опорным изображением, не должна обязательно кодироваться.
[0137] Кроме того, что касается каждого из других процессов, описанных в этом варианте осуществления, каждый структурный элемент в устройстве 600 декодирования изображений выполняет процесс, идентичный процессу соответствующего структурного элемента в устройстве 500 кодирования изображений, в результате чего изображение, кодированное с высокой эффективностью кодирования, надлежащим образом декодируется.
[0138] Операции, описанные выше, также являются применимыми к другим вариантам осуществления. Любая из структур и операций, описанных в этом варианте осуществления, может быть включена в другие варианты осуществления, и любая из структур и операций, описанных в других вариантах осуществления, может быть включена в этот вариант осуществления.
[0139] ВАРИАНТ 2 ОСУЩЕСТВЛЕНИЯ
Устройство кодирования изображений и устройство декодирования изображений согласно варианту 2 осуществления имеют структуры, идентичные структурам в варианте 1 осуществления. Следовательно, операции устройства кодирования изображений и устройства декодирования изображений согласно этому варианту осуществления описываются ниже с использованием структуры устройства 500 кодирования изображений, показанного на фиг. 5, и структуры устройства 600 декодирования изображений, показанного на фиг. 6.
[0140] Устройство 500 кодирования изображений согласно этому варианту осуществления осуществляет работу, показанную на фиг. 7, аналогично варианту 1 осуществления. Устройство 600 декодирования изображений согласно этому варианту осуществления осуществляет работу, показанную на фиг. 8, аналогично варианту 1 осуществления. Этот вариант осуществления отличается от варианта 1 осуществления процессом извлечения текущих векторов движения. Это подробно описано далее.
[0141] Фиг. 10 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения согласно этому варианту осуществления. Модуль 511 внешнего прогнозирования согласно этому варианту осуществления осуществляет работу, показанную на фиг. 10, вместо работы, показанной на фиг. 9. Далее описывается, главным образом, работа модуля 511 внешнего прогнозирования, показанного на фиг. 5. Работа модуля 608 внешнего прогнозирования, показанного на фиг. 6, является идентичной работе модуля 511 внешнего прогнозирования, показанного на фиг. 5, при этом "кодирование" заменено на "декодирование".
[0142] Во-первых, модуль 511 внешнего прогнозирования выбирает совместно размещенное изображение из множества доступных опорных изображений (этап S1001). Затем, модуль 511 внешнего прогнозирования выбирает совместно размещенный блок в совместно размещенном изображении (этап S1002). Модуль 511 внешнего прогнозирования далее идентифицирует совместно размещенное опорное изображение и совместно размещенный вектор движения (этап S1003).
[0143] Во-первых, модуль 511 внешнего прогнозирования определяет то, является ли текущее опорное изображение долговременным опорным изображением (этап S1004). В случае определения того, что текущее опорное изображение является долговременным опорным изображением (этап S1004: "Да"), модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством первой схемы извлечения, идентичной варианту 1 осуществления (этап S1005).
[0144] В случае определения того, что текущее опорное изображение не является долговременным опорным изображением (этап S1004: "Нет"), модуль 511 внешнего прогнозирования определяет то, является ли совместно размещенное опорное изображение долговременным опорным изображением (этап S1006).
[0145] В случае определения того, что совместно размещенное опорное изображение не является долговременным опорным изображением (этап S1006: "Нет"), модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством второй схемы извлечения, идентичной варианту 1 осуществления (этап S1007). Иными словами, в случае определения того, что текущее опорное изображение и совместно размещенное опорное изображение являются кратковременным опорным изображением, модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством второй схемы извлечения.
[0146] В случае определения того, что совместно размещенное опорное изображение является долговременным опорным изображением (этап S1006: "Да"), модуль 511 внешнего прогнозирования выбирает другой совместно размещенный блок в совместно размещенном изображении (этап S1008). В примере, показанном на фиг. 10, блок, кодированный в отношении кратковременного опорного изображения, выбирается в качестве другого совместно размещенного блока.
[0147] После этого модуль 511 внешнего прогнозирования идентифицирует совместно размещенное опорное изображение и совместно размещенный вектор движения, соответствующие другому совместно размещенному блоку (этап S1009). Модуль 511 внешнего прогнозирования далее извлекает текущий вектор движения посредством второй схемы извлечения, которая использует масштабирование на основе POC (этап S1010).
[0148] Подробно, в случае, если опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, модуль 511 внешнего прогнозирования не извлекает текущий вектор движения из вектора движения совместно размещенного блока. Модуль 511 внешнего прогнозирования вместо этого выбирает другой совместно размещенный блок, кодированный в отношении кратковременного опорного изображения, и извлекает текущий вектор движения из вектора движения выбранного другого совместно размещенного блока.
[0149] В качестве примера, в случае, если опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, модуль 511 внешнего прогнозирования выполняет поиск блока, кодированного в отношении кратковременного опорного изображения. Модуль 511 внешнего прогнозирования выбирает блок, кодированный в отношении кратковременного опорного изображения, в качестве другого совместно размещенного блока.
[0150] В качестве другого примера, в случае, если опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, модуль 511 внешнего прогнозирования сначала выполняет поиск блока, кодированного в отношении кратковременного опорного изображения.
[0151] В случае, если присутствует блок, кодированный в отношении кратковременного опорного изображения, модуль 511 внешнего прогнозирования выбирает блок в качестве другого совместно размещенного блока. В случае, если не присутствует блок, кодированный в отношении кратковременного опорного изображения, модуль 511 внешнего прогнозирования выполняет поиск блока, кодированного в отношении долговременного опорного изображения. Модуль 511 внешнего прогнозирования выбирает блок, кодированный в отношении долговременного опорного изображения, в качестве другого совместно размещенного блока.
[0152] Например, модуль 511 внешнего прогнозирования сначала выбирает первый блок, показанный на фиг. 4, в качестве совместно размещенного блока. В случае, если текущее опорное изображение является кратковременным опорным изображением, а совместно размещенное опорное изображение является долговременным опорным изображением, далее модуль 511 внешнего прогнозирования вновь выбирает второй блок, показанный на фиг. 4, в качестве совместно размещенного блока.
[0153] В вышеуказанном примере, модуль 511 внешнего прогнозирования может выбирать второй блок, показанный на фиг. 4, в качестве совместно размещенного блока только в случае, если опорное изображение второго блока является кратковременным опорным изображением. Блок, выбранный здесь в качестве совместно размещенного блока, не ограничивается вторым блоком, показанным на фиг. 4, и блок, отличный от второго блока, может быть выбран в качестве совместно размещенного блока.
[0154] Фиг. 11 является схемой для пояснения совместно размещенного блока согласно этому варианту осуществления. Выборки c0, c1, c2 и c3 в совместно размещенном изображении показаны на фиг. 11. Выборки c0 и c1 на фиг. 11 равны выборкам c0 и c1 на фиг. 4. Не только второй блок, включающий в себя выборку c1, но также и третий блок, включающий в себя выборку c2, или четвертый блок, включающий в себя выборку c3, может быть выбран в качестве другого совместно размещенного блока.
[0155] Координаты выборки c2 представляют собой (x+w-1, y+h-1). Координаты выборки c3 представляют собой (x+1, y+1).
[0156] Модуль 511 внешнего прогнозирования определяет для каждого из первого, второго, третьего и четвертого блоков в этом порядке то, доступен или нет блок. Модуль 511 внешнего прогнозирования определяет доступный блок в качестве конечного совместно размещенного блока. Примеры случая, когда блок недоступен, включают в себя случай, в котором блок не присутствует, и случай, в котором блок кодируется посредством внутреннего прогнозирования.
[0157] В случае, если текущее опорное изображение является ли кратковременным опорным изображением, модуль 511 внешнего прогнозирования может определять то, что блок, кодированный в отношении долговременного опорного изображения, недоступен.
[0158] Хотя выше описывается пример способа выбора совместно размещенного блока, способ выбора совместно размещенного блока не ограничивается вышеприведенным примером. Блок, включающий в себя выборку, отличную от выборок c0, c1, c2 и c3, может быть выбран в качестве совместно размещенного блока. Кроме того, очередность по приоритету блоков не ограничивается примером, описанным в этом варианте осуществления.
[0159] Далее описывается более конкретный пример процесса извлечения текущего вектора движения снова со ссылкой на фиг. 10. Процесс извлечения, описанный выше, может быть изменен следующим образом.
[0160] Во-первых, модуль 511 внешнего прогнозирования выбирает совместно размещенное изображение аналогично варианту 1 осуществления (этап S1001). Затем, модуль 511 внешнего прогнозирования выбирает первый блок, включающий в себя выборку c0, показанную на фиг. 11, в качестве совместно размещенного блока и идентифицирует совместно размещенное опорное изображение (этапы S1002 и S1003).
[0161] После этого, модуль 511 внешнего прогнозирования определяет то, доступен или нет совместно размещенный блок. В случае, если текущее опорное изображение является кратковременным опорным изображением, а совместно размещенное опорное изображение является долговременным опорным изображением, модуль 511 внешнего прогнозирования определяет то, что совместно размещенный блок недоступен (этапы S1004 и S1006).
[0162] В случае, если совместно размещенный блок недоступен, модуль 511 внешнего прогнозирования выполняет поиск и выбирает другой совместно размещенный блок, который доступен (этап S1008). Подробно, модуль 511 внешнего прогнозирования выбирает блок, кодированный в отношении кратковременного опорного изображения, из числа второго блока, включающего в себя выборку c1, третьего блока, включающего в себя выборку c2, и четвертого блока, включающего в себя выборку c3, на фиг. 11. Модуль 511 внешнего прогнозирования далее идентифицирует опорное изображение совместно размещенного блока (этап S1009).
[0163] В случае, если выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования задает временной предиктор вектора движения как доступный. В случае, если не выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования задает временной предиктор вектора движения как недоступный.
[0164] В случае, если временной предиктор вектора движения задается как доступный, модуль 511 внешнего прогнозирования идентифицирует совместно размещенный вектор движения в качестве базового вектора движения (этапы S1003 и S1009). В случае, если совместно размещенный блок имеет множество векторов движения, т.е. в случае, если совместно размещенный блок кодируется с использованием множества векторов движения, модуль 511 внешнего прогнозирования выбирает базовый вектор движения согласно предварительно определенной очередности по приоритету аналогично варианту 1 осуществления.
[0165] В случае, если какое-либо из текущего опорного изображения и совместно размещенного опорного изображения является долговременным опорным изображением (этап S1004: "Да"), модуль 511 внешнего прогнозирования извлекает базовый вектор движения в качестве временного предиктора вектора движения (этап S1005).
[0166] С другой стороны, в случае, если ни одно из текущего опорного изображения и совместно размещенного опорного изображения не является долговременным опорным изображением (этап S1004: "Нет"), модуль 511 внешнего прогнозирования извлекает временной предиктор вектора движения из базового вектора движения посредством масштабирования на основе POC (этапы S1007 и S1010).
[0167] В случае, если временной предиктор вектора движения задается как недоступный, модуль 511 внешнего прогнозирования не извлекает временной предиктор вектора движения.
[0168] Аналогично варианту 1 осуществления, модуль 511 внешнего прогнозирования добавляет временной предиктор вектора движения, заданный как доступный, в список в качестве кандидата для текущего вектора движения. Модуль 511 внешнего прогнозирования далее выбирает текущий вектор движения из списка.
[0169] Как описано выше, в этом варианте осуществления, в случае, если опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, текущий вектор движения не извлекается из вектора движения совместно размещенного блока.
[0170] Чрезвычайно трудно извлекать текущий вектор движения с высокой точностью прогнозирования в случае, если одно из текущего опорного изображения и совместно размещенного опорного изображения является долговременным опорным изображением, а другое из текущего опорного изображения и совместно размещенного опорного изображения является кратковременным опорным изображением. С учетом этого, устройство 500 кодирования изображений и устройство 600 декодирования изображений согласно этому варианту осуществления предотвращают снижение точности прогнозирования посредством работы, описанной выше.
[0171] ВАРИАНТ 3 ОСУЩЕСТВЛЕНИЯ
Устройство кодирования изображений и устройство декодирования изображений согласно варианту 3 осуществления имеют структуры, идентичные структурам в варианте 1 осуществления. Следовательно, операции устройства кодирования изображений и устройства декодирования изображений согласно этому варианту осуществления описываются ниже с использованием структуры устройства 500 кодирования изображений, показанного на фиг. 5, и структуры устройства 600 декодирования изображений, показанного на фиг. 6.
[0172] Устройство 500 кодирования изображений согласно этому варианту осуществления осуществляет работу, показанную на фиг. 7, аналогично варианту 1 осуществления. Устройство 600 декодирования изображений согласно этому варианту осуществления осуществляет работу, показанную на фиг. 8, аналогично варианту 1 осуществления. Этот вариант осуществления отличается от варианта 1 осуществления процессом извлечения текущих векторов движения. Это подробно описано далее.
[0173] Фиг. 12 является блок-схемой последовательности операций способа, показывающей подробности процесса извлечения согласно этому варианту осуществления. Модуль 511 внешнего прогнозирования согласно этому варианту осуществления осуществляет работу, показанную на фиг. 12, вместо работы, показанной на фиг. 9. Далее описывается, главным образом, работа модуля 511 внешнего прогнозирования, показанного на фиг. 5. Работа модуля 608 внешнего прогнозирования, показанного на фиг. 6, является идентичной работе модуля 511 внешнего прогнозирования, показанного на фиг. 5, при этом "кодирование" заменено на "декодирование".
[0174] Во-первых, модуль 511 внешнего прогнозирования выбирает совместно размещенное изображение из множества доступных опорных изображений (этап S1201). Затем, модуль 511 внешнего прогнозирования выбирает совместно размещенный блок в совместно размещенном изображении (этап S1202). Модуль 511 внешнего прогнозирования далее идентифицирует совместно размещенное опорное изображение и совместно размещенный вектор движения (этап S1203).
[0175] Во-первых, модуль 511 внешнего прогнозирования определяет то, является ли текущее опорное изображение долговременным опорным изображением (этап S1204). В случае определения того, что текущее опорное изображение является долговременным опорным изображением (этап S1204: "Да"), модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством первой схемы извлечения, идентичной варианту 1 осуществления (этап S1205).
[0176] В случае определения того, что текущее опорное изображение не является долговременным опорным изображением (этап S1204: "Нет"), модуль 511 внешнего прогнозирования определяет то, является ли совместно размещенное опорное изображение долговременным опорным изображением (этап S1206).
[0177] В случае определения того, что совместно размещенное опорное изображение не является долговременным опорным изображением (этап S1206: "Нет"), модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством второй схемы извлечения, идентичной варианту 1 осуществления (этап S1207). Иными словами, в случае определения того, что текущее опорное изображение и совместно размещенное опорное изображение являются кратковременным опорным изображением, модуль 511 внешнего прогнозирования извлекает текущий вектор движения посредством второй схемы извлечения.
[0178] В случае определения того, что совместно размещенное опорное изображение является долговременным опорным изображением (этап S1206: "Да"), модуль 511 внешнего прогнозирования выбирает другое совместно размещенное изображение (этап S1208). Модуль 511 внешнего прогнозирования далее выбирает другой совместно размещенный блок в другом совместно размещенном изображении (этап S1209). В примере, показанном на фиг. 12, блок, кодированный в отношении кратковременного опорного изображения, выбирается в качестве другого совместно размещенного блока.
[0179] После этого модуль 511 внешнего прогнозирования идентифицирует совместно размещенное опорное изображение и совместно размещенный вектор движения, соответствующие другому совместно размещенному блоку (этап S1210). Модуль 511 внешнего прогнозирования далее извлекает текущий вектор движения посредством второй схемы извлечения, которая использует масштабирование на основе POC (этап S1211).
[0180] Подробно, в случае, если опорное изображение текущего блока является кратковременным опорным изображением, а опорное изображение совместно размещенного блока является долговременным опорным изображением, модуль 511 внешнего прогнозирования не извлекает текущий вектор движения из вектора движения совместно размещенного блока.
[0181] Модуль 511 внешнего прогнозирования вместо этого выбирает другое совместно размещенное изображение. Модуль 511 внешнего прогнозирования дополнительно выбирает другой совместно размещенный блок, кодированный в отношении кратковременного опорного изображения, из выбранного другого совместно размещенного изображения. Модуль 511 внешнего прогнозирования извлекает текущий вектор движения из вектора движения выбранного другого совместно размещенного блока.
[0182] В качестве примера, в случае, если текущее опорное изображение является кратковременным опорным изображением, а совместно размещенное опорное изображение является долговременным опорным изображением, модуль 511 внешнего прогнозирования выполняет поиск изображения, которое включает в себя блок, кодированный в отношении кратковременного опорного изображения. Модуль 511 внешнего прогнозирования выбирает изображение, которое включает в себя блок, кодированный в отношении кратковременного опорного изображения, в качестве другого совместно размещенного изображения.
[0183] В качестве другого примера, в случае, если текущее опорное изображение является кратковременным опорным изображением, а совместно размещенное опорное изображение является долговременным опорным изображением, модуль 511 внешнего прогнозирования сначала выполняет поиск изображения, которое включает в себя блок, кодированный в отношении кратковременного опорного изображения.
[0184] В случае, если присутствует изображение, которое включает в себя блок, кодированный в отношении кратковременного опорного изображения, модуль 511 внешнего прогнозирования выбирает изображение в качестве другого совместно размещенного изображения.
[0185] В случае, если не присутствует изображение, которое включает в себя блок, кодированный в отношении кратковременного опорного изображения, модуль 511 внешнего прогнозирования выполняет поиск изображения, которое включает в себя блок, кодированный в отношении долговременного опорного изображения. Модуль 511 внешнего прогнозирования выбирает изображение, которое включает в себя блок, кодированный в отношении долговременного опорного изображения, в качестве другого совместно размещенного изображения.
[0186] Например, в случае, если изображение RefPicList0[0] является совместно размещенным изображением, изображение RefPicList1[0] является другим совместно размещенным изображением. В случае, если изображение RefPicList1[0] является совместно размещенным изображением, изображение RefPicList0[0] является другим совместно размещенным изображением.
[0187] Другими словами, изображение, перечисленное первым в одном из двух списков опорных изображений, используемых для кодирования B-изображений (бипрогнозирующего кодирования), является совместно размещенным изображением, и изображение, перечисленное первым в другом из двух списков опорных изображений, является другим совместно размещенным изображением.
[0188] Далее описывается более конкретный пример процесса извлечения текущего вектора движения снова со ссылкой на фиг. 12. Процесс извлечения, описанный выше, может быть изменен следующим образом.
[0189] Во-первых, модуль 511 внешнего прогнозирования выбирает одно из изображения RefPicList0[0] и изображения RefPicList1[0], в качестве совместно размещенного изображения (этап S1201). Модуль 511 внешнего прогнозирования выбирает, из выбранного совместно размещенного изображения, первый блок, включающий в себя выборку c0, показанную на фиг. 11, в качестве совместно размещенного блока и идентифицирует совместно размещенное опорное изображение (этапы S1202 и S1203).
[0190] После этого, модуль 511 внешнего прогнозирования определяет то, доступен или нет совместно размещенный блок. В случае, если текущее опорное изображение является кратковременным опорным изображением, а совместно размещенное опорное изображение является долговременным опорным изображением, модуль 511 внешнего прогнозирования определяет то, что совместно размещенный блок недоступен (этапы S1204 и S1206).
[0191] В случае, если совместно размещенный блок недоступен, модуль 511 внешнего прогнозирования вновь выбирает доступный совместно размещенный блок. Например, модуль 511 внешнего прогнозирования выбирает второй блок, включающий в себя выборку c1, показанную на фиг. 11, в качестве совместно размещенного блока. Модуль 511 внешнего прогнозирования далее идентифицирует совместно размещенное опорное изображение.
[0192] В случае, если не выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования выбирает другое совместно размещенное изображение. Здесь, модуль 511 внешнего прогнозирования выбирает другое из изображения RefPicList0[0] и изображения RefPicList1[0], в качестве совместно размещенного изображения (этап S1208).
[0193] Модуль 511 внешнего прогнозирования выбирает, из выбранного совместно размещенного изображения, первый блок, включающий в себя выборку c0, показанную на фиг. 1, в качестве совместно размещенного блока и идентифицирует совместно размещенное опорное изображение (этапы S1209 и S1210).
[0194] После этого, модуль 511 внешнего прогнозирования определяет то, доступен или нет совместно размещенный блок. Аналогично предыдущему определению, в случае, если текущее опорное изображение является кратковременным опорным изображением, а совместно размещенное опорное изображение является долговременным опорным изображением, модуль 511 внешнего прогнозирования определяет то, что совместно размещенный блок недоступен.
[0195] В случае, если совместно размещенный блок недоступен, модуль 511 внешнего прогнозирования вновь выбирает доступный совместно размещенный блок (этап S1209). Подробно, модуль 511 внешнего прогнозирования выбирает второй блок, включающий в себя выборку c1, показанную на фиг. 11, в качестве совместно размещенного блока. Модуль 511 внешнего прогнозирования далее идентифицирует совместно размещенное опорное изображение (этап S1210).
[0196] В случае, если в конечном счете выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования задает временной предиктор вектора движения как доступный. В случае, если в конечном счете не выбирается доступный совместно размещенный блок, модуль 511 внешнего прогнозирования задает временной предиктор вектора движения как недоступный.
[0197] В случае, если временной предиктор вектора движения задается как доступный, модуль 511 внешнего прогнозирования идентифицирует вектор движения совместно размещенного блока в качестве базового вектора движения (этапы S1203 и S1210). В случае, если совместно размещенный блок имеет множество векторов движения, т.е. в случае, если совместно размещенный блок кодируется с использованием множества векторов движения, модуль 511 внешнего прогнозирования выбирает базовый вектор движения согласно предварительно определенной очередности по приоритету аналогично варианту 1 осуществления.
[0198] В случае, если какое-либо из текущего опорного изображения и совместно размещенного опорного изображения является долговременным опорным изображением (этап S1204: "Да"), модуль 511 внешнего прогнозирования извлекает базовый вектор движения в качестве временного предиктора вектора движения (этап S1205).
[0199] С другой стороны, в случае, если ни одно из текущего опорного изображения и совместно размещенного опорного изображения не является долговременным опорным изображением (этап S1204: "Нет"), модуль 511 внешнего прогнозирования извлекает временной предиктор вектора движения из базового вектора движения посредством масштабирования на основе POC (этапы S1207 и S1211).
[0200] В случае, если временной предиктор вектора движения задается как недоступный, модуль 511 внешнего прогнозирования не извлекает временной предиктор вектора движения.
[0201] Аналогично варианту 1 осуществления, модуль 511 внешнего прогнозирования добавляет временной предиктор вектора движения, заданный как доступный, в список в качестве кандидата для текущего вектора движения. Модуль 511 внешнего прогнозирования далее выбирает текущий вектор движения из списка.
[0202] Как описано выше, устройство 500 кодирования изображений и устройство 600 декодирования изображений согласно этому варианту осуществления выбирают блок, подходящий для извлечения текущих векторов движения из множества изображений, и извлекают текущий вектор движения из вектора движения выбранного блока. Это способствует повышенной эффективности кодирования.
[0203] ВАРИАНТ 4 ОСУЩЕСТВЛЕНИЯ
Вариант 4 осуществления аргументировано описывает характерные структуры и характерные процедуры, включенные в варианты 1-3 осуществления.
[0204] Фиг. 13A является блок-схемой устройства декодирования изображений согласно этому варианту осуществления. Устройство 1300 кодирования изображений, показанное на фиг. 13A, кодирует каждый из блоков изображений. Устройство 1300 кодирования изображений включает в себя модуль 1301 извлечения, модуль 1302 добавления, модуль 1303 выбора и кодер 1304.
[0205] Например, модуль 1301 извлечения, модуль 1302 добавления и модуль 1303 выбора соответствуют модулю 511 внешнего прогнозирования, показанному на фиг. 5 и т.п., и кодер 1304 соответствует энтропийному кодеру 504, показанному на фиг. 5 и т.п.
[0206] Фиг. 13B является блок-схемой последовательности операций способа, показывающей работу устройства 1300 кодирования изображений, показанного на фиг. 13A.
[0207] Модуль 1301 извлечения извлекает кандидата для вектора движения текущего блока из вектора движения совместно размещенного блока (этап S1301). Совместно размещенный блок является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок, который должен быть кодирован.
[0208] При извлечении кандидата модуль 1301 извлечения определяет то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением. Модуль 1301 извлечения также определяет то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением.
[0209] В случае определения того, что опорное изображение текущего блока и опорное изображение совместно размещенного блока являются долговременным опорным изображением, модуль 1301 извлечения извлекает кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения. Первая схема извлечения является схемой извлечения, которая не заключает в себе масштабирование на основе временного расстояния.
[0210] С другой стороны, в случае определения того, что опорное изображение текущего блока и опорное изображение совместно размещенного блока являются кратковременным опорным изображением, с другой стороны, модуль 1301 извлечения извлекает кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения. Вторая схема извлечения является схемой извлечения, которая заключает в себе масштабирование на основе временного расстояния.
[0211] Модуль 1302 добавления добавляет извлеченного кандидата в список (этап S1302). Модуль 1303 выбора выбирает вектор движения текущего блока из списка, в который добавлен кандидат (этап S1303).
[0212] Кодер 1304 кодирует текущий блок с использованием выбранного вектора движения и опорного изображения текущего блока (этап S1304).
[0213] Фиг. 14A является блок-схемой устройства декодирования изображений согласно варианту 4 осуществления. Устройство 1400 декодирования изображений, показанное на фиг. 14A, декодирует каждый из блоков изображений. Устройство 1400 декодирования изображений включает в себя модуль 1401 извлечения, модуль 1402 добавления, модуль 1403 выбора и декодер 1404.
[0214] Например, модуль 1401 извлечения, модуль 1402 добавления и модуль 1403 выбора соответствуют модулю 608 внешнего прогнозирования, показанному на фиг. 6 и т.п., и декодер 1404 соответствует энтропийному декодеру 601, показанному на фиг. 6 и т.п.
[0215] Фиг. 14B является блок-схемой последовательности операций способа, показывающей работу устройства 1400 декодирования изображений, показанного на фиг. 14A.
[0216] Модуль 1401 извлечения извлекает кандидата для вектора движения текущего блока из вектора движения совместно размещенного блока (этап S1401). Совместно размещенный блок является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок, который должен быть декодирован.
[0217] При извлечении кандидата модуль 1401 извлечения определяет то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением. Модуль 1401 извлечения также определяет то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением.
[0218] В случае определения того, что опорное изображение текущего блока и опорное изображение совместно размещенного блока являются долговременным опорным изображением, модуль 1401 извлечения извлекает кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения. Первая схема извлечения является схемой извлечения, которая не заключает в себе масштабирование на основе временного расстояния.
[0219] С другой стороны, в случае определения того, что опорное изображение текущего блока и опорное изображение совместно размещенного блока являются кратковременным опорным изображением, модуль 1401 извлечения извлекает кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения. Вторая схема извлечения является схемой извлечения, которая заключает в себе масштабирование на основе временного расстояния.
[0220] Модуль 1402 добавления добавляет извлеченного кандидата в список (этап S1402). Модуль 1403 выбора выбирает вектор движения текущего блока из списка, в который добавлен кандидат (этап S1403).
[0221] Декодер 1404 декодирует текущий блок с использованием выбранного вектора движения и опорного изображения текущего блока (этап S1404).
[0222] Посредством процесса, описанного выше, кандидат для текущего вектора движения надлежащим образом извлекается из вектора движения совместно размещенного блока при том, что он не является чрезвычайно большим или маленьким. Это способствует повышенной точности прогнозирования и повышенной эффективности кодирования.
[0223] Здесь, модули 1301 и 1401 извлечения могут не извлекать кандидата из вектора движения совместно размещенного блока в случае определения того, что одно из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением, а другое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0224] В этом случае, модули 1301 и 1401 извлечения могут дополнительно выбирать другой совместно размещенный блок, кодированный или декодированный в отношении кратковременного опорного изображения, и извлекать кандидата из другого совместно размещенного блока посредством второй схемы извлечения. В качестве альтернативы, модули 1301 и 1401 извлечения могут извлекать кандидата посредством другой схемы извлечения. В качестве другой альтернативы, модули 1301 и 1401 извлечения могут в конечном счете не извлекать кандидата, соответствующего временному предиктору вектора движения.
[0225] Модули 1301 и 1401 извлечения могут определять то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между опорным изображением текущего блока и изображением, которое включает в себя текущий блок.
[0226] Модули 1301 и 1401 извлечения могут определять то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, с использованием временного расстояния между опорным изображением совместно размещенного блока и изображением, которое включает в себя совместно размещенный блок.
[0227] Модули 1301 и 1401 извлечения могут определять то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого совместно размещенный блок кодируется или декодируется.
[0228] Модули 1301 и 1401 извлечения могут определять то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, в период, в течение которого текущий блок кодируется или декодируется.
[0229] Первая схема извлечения может быть схемой извлечения вектора движения совместно размещенного блока в качестве кандидата. Вторая схема извлечения может быть схемой извлечения кандидата посредством масштабирования вектора движения совместно размещенного блока с использованием отношения временного расстояния между опорным изображением текущего блока и изображением, которое включает в себя текущий блок, к временному расстоянию между опорным изображением совместно размещенного блока и изображением, которое включает в себя совместно размещенный блок.
[0230] Кодер 1304 дополнительно может кодировать информацию, указывающую то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и информацию, указывающую то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением.
[0231] Декодер 1404 дополнительно может декодировать информацию, указывающую то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и информацию, указывающую то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением.
[0232] Модуль 1401 извлечения далее может определять то, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, с использованием декодированной информации, и определять то, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением, с использованием декодированной информации.
[0233] Информация, указывающая классификацию каждого опорного изображения, может быть сохранена, в качестве параметра, в потоке битов в местоположении, описанном ниже.
[0234] Фиг. 15A является схемой, показывающей первый пример местоположения хранения для параметра, указывающего классификацию опорных изображений. Как показано на фиг. 15A, параметр, указывающий классификацию опорных изображений, может быть сохранен в заголовке последовательности. Заголовок последовательности также упоминается как набор параметров последовательности.
[0235] Фиг. 15B является схемой, показывающей второй пример местоположения хранения для параметра, указывающего классификацию опорных изображений. Как показано на фиг. 15B, параметр, указывающий классификацию опорных изображений, может быть сохранен в заголовке изображения. Заголовок изображения также упоминается как набор параметров изображения.
[0236] Фиг. 15C является схемой, показывающей третий пример местоположения хранения для параметра, указывающего классификацию опорных изображений. Как показано на фиг. 15C, параметр, указывающий классификацию опорных изображений, может быть сохранен в заголовке среза.
[0237] Информация, указывающая режим прогнозирования (внешнее прогнозирование или внутреннее прогнозирование), может быть сохранена, в качестве параметра, в потоке битов в местоположении, описанном ниже.
[0238] Фиг. 16 является схемой, показывающей пример местоположения хранения для параметра, указывающего режим прогнозирования. Как показано на фиг. 16, параметр может быть сохранен в заголовке CU (заголовке единицы кодирования). Параметр указывает то, кодирована ли единица прогнозирования в единице кодирования посредством внешнего прогнозирования или внутреннего прогнозирования. Этот параметр может быть использован для того, чтобы определять то, доступен или нет совместно размещенный блок.
[0239] Каждый из структурных элементов в каждом из вышеописанных вариантов осуществления может быть сконфигурирован в форме полностью аппаратного продукта или может быть реализован посредством выполнения программы, подходящей для структурного элемента. Каждый из структурных элементов может быть реализован посредством модуля выполнения программ, такого как CPU и процессор, считывающий и выполняющий программу, записанную на носителе записи, таком как жесткий диск или полупроводниковое запоминающее устройство. Здесь, программа для реализации устройства кодирования изображений и т.п. согласно каждому из вариантов осуществления является программой, описанной ниже.
[0240] Программа инструктирует компьютеру осуществлять способ кодирования изображений для кодирования каждого из блоков изображений, причем способ кодирования изображений включает в себя: извлечение кандидата для вектора движения текущего блока, который должен быть кодирован, из вектора движения совместно размещенного блока, который является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок; добавление извлеченного кандидата в список; выбор вектора движения текущего блока из списка, в который добавлен кандидат; и кодирование текущего блока с использованием выбранного вектора движения и опорного изображения текущего блока, при этом извлечение включает в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением; извлечение кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения, которая не заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения, которая заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0241] Программа может инструктировать компьютеру осуществлять способ декодирования изображений для декодирования каждого из блоков изображений, причем способ декодирования изображений включает в себя: извлечение кандидата для вектора движения текущего блока, который должен быть декодирован, из вектора движения совместно размещенного блока, который является блоком, включенным в изображение, отличное от изображения, которое включает в себя текущий блок; добавление извлеченного кандидата в список; выбор вектора движения текущего блока из списка, в который добавлен кандидат; и декодирование текущего блока с использованием выбранного вектора движения и опорного изображения текущего блока, при этом извлечение включает в себя: определение того, является ли опорное изображение текущего блока долговременным опорным изображением или кратковременным опорным изображением, и того, является ли опорное изображение совместно размещенного блока долговременным опорным изображением или кратковременным опорным изображением; извлечение кандидата из вектора движения совместно размещенного блока посредством первой схемы извлечения, которая не заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является долговременным опорным изображением; и извлечение кандидата из вектора движения совместно размещенного блока посредством второй схемы извлечения, которая заключает в себе масштабирование на основе временного расстояния, в случае определения того, что каждое из опорного изображения текущего блока и опорного изображения совместно размещенного блока является кратковременным опорным изображением.
[0242] Каждый из структурных элементов может быть схемой. Эти схемы могут полностью составлять одну схему или быть отдельными схемами. Каждый из структурных элементов может быть реализован посредством процессора общего назначения или реализован посредством процессора специального назначения.
[0243] Выше описаны устройства кодирования изображений согласно одному или более вариантов осуществления, но объем настоящего изобретения не ограничен этими вариантами осуществления. Специалисты в данной области техники должны легко принимать во внимание, что различные модификации могут выполняться в этих примерных вариантах осуществления, и изменения могут быть получены посредством произвольного комбинирования структурных элементов различных вариантов осуществления без фактического отступления от объема настоящего изобретения. Соответственно, все такие модификации и изменения фактически могут быть включены в один или более вариантов осуществления, раскрытых в данном документе.
[0244] Например, устройство кодирования и декодирования изображений может включать в себя устройство кодирования изображений и устройство декодирования изображений. Процесс, выполняемый посредством конкретного процессора, может быть выполнен посредством другого процессора. Процессы могут выполняться в различном порядке, и два или более процессов могут выполняться параллельно.
[0245] ВАРИАНТ 5 ОСУЩЕСТВЛЕНИЯ
Обработка, описанная в каждом из вариантов осуществления, может быть реализована просто в независимой компьютерной системе, посредством записи, на носителе записи, программы для реализации конфигураций способа кодирования движущихся изображений (способа кодирования изображений) и способа декодирования движущихся изображений (способа декодирования изображений), описанных в каждом из вариантов осуществления. Носители записи могут быть любыми носителями записи при условии, что программа может записываться, такими как магнитный диск, оптический диск, магнитооптический диск, IC-карта и полупроводниковое запоминающее устройство.
[0246] В дальнейшем в этом документе описываются варианты применения к способу кодирования движущихся изображений (способу кодирования изображений) и способу декодирования движущихся изображений (способу декодирования изображений), описанных в каждом из вариантов осуществления, и к системам с их использованием. Система имеет признак наличия устройства кодирования и декодирования изображений, которое включает в себя устройство кодирования изображений с использованием способа кодирования изображений и устройство декодирования изображений с использованием способа декодирования изображений. Другие конфигурации в системе могут быть изменены надлежащим образом в зависимости от случаев применения.
[0247] Фиг. 17 иллюстрирует общую конфигурацию системы ex100 предоставления контента для реализации услуг распространения контента. Область для предоставления услуг связи разделяется на соты требуемого размера, и базовые станции ex106, ex107, ex108, ex109 и ex110, которые являются стационарными беспроводными станциями, размещаются в каждой из сот.
[0248] Система ex100 предоставления контента подключается к таким устройствам, как компьютер ex111, персональное цифровое устройство (PDA) ex112, камера ex113, сотовый телефон ex114 и игровая машина ex115, через Интернет ex101, поставщика ex102 Интернет-услуг, телефонную сеть ex104, а также базовые станции ex106-ex110, соответственно.
[0249] Тем не менее, конфигурация системы ex100 предоставления контента не ограничена конфигурацией, показанной на фиг. 17, и комбинация, в которой подключаются любые из элементов, является допустимой. Помимо этого, каждое устройство может подключаться к телефонной сети ex104 непосредственно, а не через базовые станции ex106-ex110, которые являются стационарными беспроводными станциями. Кроме того, устройства могут быть подключены друг к другу через беспроводную связь ближнего действия и т.п.
[0250] Камера ex113, такая как цифровая видеокамера, допускает захват видео. Камера ex116, такая как цифровая камера, допускает захват как неподвижных изображений, так и видео. Кроме того, сотовый телефон ex114 может быть телефоном, который удовлетворяет любому из таких стандартов, как глобальная система мобильной связи (GSM) (зарегистрированная торговая марка), множественный доступ с кодовым разделением каналов (CDMA), широкополосный множественный доступ с кодовым разделением каналов (W-CDMA), стандарт долгосрочного развития (LTE) и высокоскоростной пакетный доступ (HSPA). Альтернативно, сотовый телефон ex114 может соответствовать стандарту системы персональных мобильных телефонов (PHS).
[0251] В системе ex100 предоставления контента сервер ex103 потоковой передачи подключается к камере ex113 и т.п. через телефонную сеть ex104 и базовую станцию ex109, которая предоставляет распространение изображений трансляции в прямом эфире и т.п. При таком распределении, контент (например, видео музыкального концерта в прямом эфире), захватываемый пользователем с использованием камеры ex113, кодируется так, как описано выше в каждом из вариантов осуществления (т.е. камера выступает в качестве устройства кодирования изображений согласно аспекту настоящего изобретения), и кодированный контент передается на сервер ex103 потоковой передачи. С другой стороны, сервер ex103 потоковой передачи выполняет потоковое распространение передаваемых данных контента в клиенты при запросах. Клиенты включают в себя компьютер ex111, PDA ex112, камеру ex113, сотовый телефон ex114 и игровую машину ex115, которые допускают декодирование вышеуказанных кодированных данных. Каждое из устройств, которое принимает распределенные данные, декодирует и воспроизводит кодированные данные (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения).
[0252] Захватываемые данные могут кодироваться посредством камеры ex113 или сервера ex103 потоковой передачи, который передает данные, или процессы кодирования могут быть совместно использованы камерой ex113 и сервером ex103 потоковой передачи. Аналогично, распространенные данные могут быть декодированы посредством клиентов или сервера ex103 потоковой передачи, или процессы декодирования могут быть совместно использованы клиентами и сервером ex103 потоковой передачи. Кроме того, данные неподвижных изображений и видео, захватываемых не только посредством камеры ex113, но также и камеры ex116, могут быть переданы на сервер ex103 потоковой передачи через компьютер ex111. Процессы кодирования могут выполняться посредством камеры ex116, компьютера ex111 или сервера ex103 потоковой передачи или совместно использоваться ими.
[0253] Кроме того, процессы кодирования и декодирования могут выполняться посредством LSI ex500, в общем, включенной в каждый из компьютера ex111 и устройств. LSI ex500 может быть сконфигурирована из одного кристалла или множества кристаллов. Программное обеспечение для кодирования и декодирования видео может быть интегрировано в определенный тип носителя записи (такой как CD-ROM, гибкий диск и жесткий диск), который является читаемым посредством компьютера ex111 и т.п., и процессы кодирования и декодирования могут выполняться с использованием программного обеспечения. Кроме того, когда сотовый телефон ex114 содержит камеру, могут передаваться видеоданные, полученные посредством камеры. Видеоданные - это данные, кодированные посредством LSI ex500, включенной в сотовый телефон ex114.
[0254] Кроме того, сервер ex103 потоковой передачи может состоять из серверов и компьютеров и может децентрализовать данные и обрабатывать децентрализованные данные, записывать или распространять данные.
[0255] Как описано выше, клиенты могут принимать и воспроизводить кодированные данные в системе ex100 предоставления контента. Другими словами, клиенты могут принимать и декодировать информацию, передаваемую пользователем, и воспроизводить декодированные данные в режиме реального времени в системе ex100 предоставления контента, так что пользователь, который не имеет конкретных прав и оборудования, может реализовывать персональную широковещательную передачу.
[0256] Помимо примера системы ex100 предоставления контента, по меньшей мере, одно из устройства кодирования движущихся изображений (устройства кодирования изображений) и устройства декодирования движущихся изображений (устройства декодирования изображений), описанных в каждом из вариантов осуществления, может быть реализовано в цифровой широковещательной системе ex200, проиллюстрированной на фиг. 18. Более конкретно, широковещательная станция ex201 сообщает или передает по радиоволнам в широковещательный спутник ex202 мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и т.п. в видеоданные. Видеоданные являются данными, кодированными посредством способа кодирования движущихся изображений, описанного в каждом из вариантов осуществления (т.е. данными, кодированными посредством устройства кодирования изображений согласно аспекту настоящего изобретения). При приеме мультиплексированных видеоданных широковещательный спутник ex202 передает радиоволны для широковещательной передачи. Затем, антенна ex204 для домашнего применения с функцией приема спутниковой широковещательной передачи принимает радиоволны. Далее такое устройство, как телевизионный приемник (приемное устройство) ex300 и абонентская приставка (STB) ex217, декодирует принятые мультиплексированные данные и воспроизводит декодированные данные (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения).
[0257] Кроме того, модуль ex218 считывания/записи (i) считывает и декодирует мультиплексированные данные, записанные на носителе ex215 записи, таком как DVD и BD, или (i) кодирует видеосигналы на носителе ex215 записи, и в некоторых случаях записывает данные, полученные посредством мультиплексирования аудиосигнала, в кодированные данные. Модуль ex218 считывания/записи может включать в себя устройство декодирования движущихся изображений или устройство кодирования движущихся изображений, как показано в каждом из вариантов осуществления. В этом случае, воспроизведенные видеосигналы отображаются на мониторе ex219 и могут быть воспроизведены посредством другого устройства или системы с использованием носителя ex215 записи, на котором записываются мультиплексированные данные. Также можно реализовывать устройство декодирования движущихся изображений в абонентской приставке ex217, подключенной к кабелю ex203 для кабельного телевидения или к антенне ex204 для спутниковой и/или наземной широковещательной передачи, с тем чтобы отображать видеосигналы на мониторе ex219 телевизионного приемника ex300. Устройство декодирования движущихся изображений может быть реализовано не в абонентской приставке, а в телевизионном приемнике ex300.
[0258] Фиг. 19 иллюстрирует телевизионный приемник (приемное устройство) ex300, который использует способ кодирования движущихся изображений и способ декодирования движущихся изображений, описанные в каждом из вариантов осуществления. Телевизионный приемник ex300 включает в себя: тюнер ex301, который получает или предоставляет мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные, через антенну ex204 или кабель ex203 и т.д., который принимает широковещательную передачу; модуль ex302 модуляции/демодуляции, который демодулирует принятые мультиплексированные данные или модулирует данные в мультиплексированные данные, которые должны подаваться наружу; и модуль ex303 мультиплексирования/демультиплексирования, который демультиплексирует модулированные мультиплексированные данные в видеоданные и аудиоданные или мультиплексирует видеоданные и аудиоданные, кодированные посредством процессора ex306 сигналов, в данные.
[0259] Телевизионный приемник ex300 дополнительно включает в себя: процессор ex306 сигналов, включающий в себя процессор ex304 аудиосигналов и процессор ex305 видеосигналов, которые декодируют аудиоданные и видеоданные и кодируют аудиоданные и видеоданные, соответственно (которые выступают в качестве устройства кодирования изображений и устройства декодирования изображений согласно аспектам настоящего изобретения); и модуль ex309 вывода, включающий в себя динамик ex307, который предоставляет декодированный аудиосигнал, и модуль ex308 отображения, который отображает декодированный видеосигнал, такой как дисплей. Кроме того, телевизионный приемник ex300 включает в себя интерфейсный модуль ex317, включающий в себя модуль ex312 функционального ввода, который принимает ввод пользовательской операции. Кроме того, телевизионный приемник ex300 включает в себя модуль ex310 управления, который осуществляет общее управление каждым составляющим элементом телевизионного приемника ex300, и модуль ex311 схемы электропитания, который предоставляет питание в каждый из элементов. Кроме модуля ex312 функционального ввода, интерфейсный модуль ex317 может включать в себя: мост ex313, который подключается к внешнему устройству, такому как модуль ex218 считывания/записи; модуль ex314 гнезда для предоставления возможности присоединения носителя ex216 записи, такого как SD-карта; драйвер ex315 для того, чтобы подключаться к внешнему носителю записи, такому как жесткий диск; и модем ex316 для того, чтобы подключаться к телефонной сети. Здесь, носитель ex216 записи может электрически записывать информацию с использованием элемента энергонезависимого/энергозависимого полупроводникового запоминающего устройства для хранения. Составляющие элементы телевизионного приемника ex300 подключены друг к другу через синхронную шину.
[0260] Во-первых, описывается конфигурация, в которой телевизионный приемник 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. Кроме того, данные могут быть сохранены в буфере, так что может не допускаться переполнение и опустошение в системе, например, между модулем ex302 модуляции/демодуляции и модулем ex303 мультиплексирования/демультиплексирования.
[0261] Кроме того, телевизионный приемник ex300 может включать в себя конфигурацию для приема AV-ввода из микрофона или камеры, отличную от конфигурации для получения аудио- и видеоданных из широковещательной передачи или носителя записи, и может кодировать полученные данные. Хотя телевизионный приемник ex300 может кодировать, мультиплексировать и предоставлять наружу данные в описании, он может допускать только прием, декодирование и предоставление наружу данных, а не кодирование, мультиплексирование и предоставление наружу данных.
[0262] Кроме того, когда модуль ex218 считывания/записи считывает или записывает мультиплексированные данные с или на носитель записи, один из телевизионного приемника ex300 и модуля ex218 считывания/записи может декодировать или кодировать мультиплексированные данные, и телевизионный приемник ex300 и модуль ex218 считывания/записи могут совместно использовать декодирование или кодирование.
[0263] В качестве примера, фиг. 20 иллюстрирует конфигурацию модуля ex400 воспроизведения/записи информации, когда данные считываются или записываются с или на оптический диск. Модуль ex400 воспроизведения/записи информации включает в себя составляющие элементы ex401, ex402, ex403, ex404, ex405, ex406 и 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 управления системой включает в себя, например, микропроцессор и выполняет обработку посредством инструктирования компьютеру выполнять программу для считывания и записи.
[0264] Хотя в описании оптическая головка ex401 испускает лазерное пятно, она может выполнять запись с высокой плотностью с использованием света в поле в ближней зоне.
[0265] Фиг. 21 иллюстрирует носитель ex215 записи, который является оптическим диском. На поверхности для записи носителя ex215 записи, направляющие канавки формируются по спирали, и информационная дорожка ex230 записывает, заранее, информацию адреса, указывающую абсолютную позицию на диске, согласно изменению в форме направляющих канавок. Информация адреса включает в себя информацию для определения позиций блоков ex231 записи, которые являются единицей для записи данных. Воспроизведение информационной дорожки ex230 и считывание информации адреса в устройстве, которое записывает и воспроизводит данные, может приводить к определению позиций блоков записи. Кроме того, носитель ex215 записи включает в себя зону ex233 записи данных, зону ex232 внутренней окружности и зону ex234 внешней окружности. Зона ex233 записи данных является зоной для использования при записи пользовательских данных. Зона ex232 внутренней окружности и зона ex234 внешней окружности, которые находятся внутри и снаружи зоны ex233 записи данных, соответственно, предназначены для конкретного применения за исключением записи пользовательских данных. Модуль 400 воспроизведения/записи информации считывает и записывает кодированное аудио, кодированные видеоданные или мультиплексированные данные, полученные посредством мультиплексирования кодированного аудио и кодированных видеоданных, из и в зону ex233 записи данных носителя ex215 записи.
[0266] Хотя оптический диск, имеющий слой, такой как DVD и BD, описывается в качестве примера в описании, оптический диск не ограничен таким образом и может быть оптическим диском, имеющим многослойную структуру и допускающим запись на часть, отличную от поверхности. Кроме того, оптический диск может иметь структуру для многомерной записи/воспроизведения, к примеру, записи информации с использованием света цветов с различными длинами волн в одной части оптического диска и для записи информации, имеющей различные слои, с различных углов.
[0267] Кроме того, автомобиль ex210, имеющий антенну ex205, может принимать данные из спутника ex202 и т.п. и воспроизводить видео на устройстве отображения, таком как автомобильная навигационная система ex211, установленная в автомобиле ex210, в цифровой широковещательной системе ex200. Здесь, конфигурация автомобильной навигационной системы ex211 является конфигурацией, например, включающей в себя приемный GPS-модуль, из конфигурации, проиллюстрированной на фиг. 19. То же применимо для конфигурации компьютера ex111, сотового телефона ex114 и т.п.
[0268] Фиг. 22A иллюстрирует сотовый телефон ex114, который использует способ кодирования движущихся изображений и способ декодирования движущихся изображений, описанные в вариантах осуществления. Сотовый телефон ex114 включает в себя: антенну ex350 для передачи и приема радиоволн через базовую станцию ex110; модуль ex365 камеры, допускающий захват движущихся и неподвижных изображений; и модуль ex358 отображения, к примеру, жидкокристаллический дисплей для отображения данных, таких как декодированное видео, захватываемое посредством модуля ex365 камеры или принимаемое посредством антенны ex350. Сотовый телефон ex114 дополнительно включает в себя: модуль основного корпуса, включающий в себя модуль ex366 функциональных клавиш; модуль ex357 аудиовывода, к примеру, динамик для вывода аудио; модуль ex356 аудиоввода, к примеру, микрофон для ввода аудио; запоминающее устройство ex367 для сохранения захваченного видео или неподвижных изображений, записанного аудио, кодированных или декодированных данных принимаемого видео, неподвижных изображений, почтовых сообщений и т.п.; и модуль ex364 гнезда, который является интерфейсным модулем для носителя записи, который сохраняет данные таким же образом, как запоминающее устройство ex367.
[0269] Далее описывается пример конфигурации сотового телефона ex114 со ссылкой на фиг. 22B. В сотовом телефоне ex114 главный модуль ex360 управления, спроектированный с возможностью полностью управлять каждым модулем основного корпуса, включающим в себя модуль ex358 отображения, а также модуль ex366 функциональных клавиш, взаимно соединяется, через синхронную шину ex370, с модулем ex361 схемы электропитания, модулем ex362 управления функциональным вводом, процессором ex355 видеосигналов, модулем ex363 интерфейса камеры, модулем ex359 управления жидкокристаллическим дисплеем (ЖК-дисплеем), модулем ex352 модуляции/демодуляции, модулем ex353 мультиплексирования/демультиплексирования, процессором ex354 аудиосигналов, модулем ex364 гнезда и запоминающим устройством ex367.
[0270] Когда клавиша завершения вызова или клавиша включения питания включается посредством пользовательской операции, модуль ex361 схемы электропитания предоставляет в соответствующие модули питание из аккумуляторной батареи с тем, чтобы активировать сотовый телефон ex114.
[0271] В сотовом телефоне ex114 процессор ex354 аудиосигналов преобразует аудиосигналы, собираемые посредством модуля ex356 аудиоввода в режиме речевой связи, в цифровые аудиосигналы под управлением главного модуля ex360 управления, включающего в себя CPU, ROM и RAM. Затем, модуль ex352 модуляции/демодуляции выполняет обработку с расширенным спектром для цифровых аудиосигналов, и приемо-передающий модуль ex351 выполняет цифро-аналоговое преобразование и преобразование частоты для данных, с тем чтобы передавать результирующие данные через антенну ex350. Так же, в сотовом телефоне ex114, приемо-передающий модуль ex351 усиливает данные, принимаемые посредством антенны ex350 в режиме речевой связи, и выполняет преобразование частоты и аналого-цифровое преобразование для данных. Затем, модуль ex352 модуляции/демодуляции выполняет обработку с обратным расширенным спектром для данных, и процессор ex354 аудиосигналов преобразует их в аналоговые аудиосигналы, с тем чтобы выводить их через модуль ex357 аудиовывода.
[0272] Кроме того, когда передается электронная почта в режиме передачи данных, текстовые данные электронной почты, введенные посредством операций с модулем ex366 функциональных клавиш и т.п. основного корпуса, отправляются в главный модуль ex360 управления через модуль ex362 управления функциональным вводом. Главный модуль ex360 управления инструктирует модулю ex352 модуляции/демодуляции выполнять обработку с расширенным спектром для текстовых данных, и приемо-передающий модуль ex351 выполняет цифро-аналоговое преобразование и преобразование частоты для результирующих данных, чтобы передавать данные в базовую станцию ex110 через антенну ex350. Когда принимается почтовое сообщение, обработка, которая является приблизительно обратной относительно обработки для передачи почтового сообщения, выполняется для принимаемых данных, и результирующие данные предоставляются в модуль ex358 отображения.
[0273] Когда передается видео, неподвижные изображения либо видео и аудио в режиме передачи данных, процессор ex355 видеосигналов сжимает и кодирует видеосигналы, предоставляемые из модуля ex365 камеры, с использованием способа кодирования движущихся изображений, показанного в каждом из вариантов осуществления (т.е. выступает в качестве устройства кодирования изображений согласно аспекту настоящего изобретения), и передает кодированные видеоданные в модуль ex353 мультиплексирования/демультиплексирования. Напротив, в течение времени, когда модуль ex365 камеры захватывает видео, неподвижные изображения и т.п., процессор ex354 аудиосигналов кодирует аудиосигналы, собранные посредством модуля ex356 аудиоввода, и передает кодированные аудиоданные в модуль ex353 мультиплексирования/демультиплексирования.
[0274] Модуль ex353 мультиплексирования/демультиплексирования мультиплексирует кодированные видеоданные, подаваемые из процессора ex355 видеосигналов, и кодированные аудиоданные, подаваемые из процессора ex354 аудиосигналов, с использованием предварительно определенного способа. Затем, модуль ex352 модуляции/демодуляции (модуль схемы модуляции/демодуляции) выполняет обработку с расширенным спектром для мультиплексированных данных, и приемо-передающий модуль ex351 выполняет цифро-аналоговое преобразование и преобразование частоты для данных, с тем чтобы передавать результирующие данные через антенну ex350.
[0275] При приеме данных видеофайла, который связывается с веб-страницей и т.п., в режиме передачи данных или при приеме почтового сообщения с присоединенным видео и/или аудио, чтобы декодировать мультиплексированные данные, принятые через антенну ex350, модуль ex353 мультиплексирования/демультиплексирования демультиплексирует мультиплексированные данные в поток битов видеоданных и поток битов аудиоданных и предоставляет в процессор ex355 видеосигналов кодированные видеоданные, а в процессор ex354 аудиосигналов кодированные аудиоданные через синхронную шину ex370. Процессор ex355 видеосигналов декодирует видеосигнал с использованием способа декодирования движущихся изображений, соответствующего способу кодирования движущихся изображений, показанному в каждом из вариантов осуществления (т.е. выступает в качестве устройства декодирования изображений согласно аспекту настоящего изобретения), и затем модуль ex358 отображения отображает, например, видеоизображения и неподвижные изображения, включенные в видеофайл, связанный с веб-страницей, через модуль ex359 управления ЖК-дисплеем. Кроме того, процессор ex354 аудиосигналов декодирует аудиосигнал, и модуль ex357 аудиовывода предоставляет аудио.
[0276] Кроме того, аналогично телевизионному приемнику ex300, терминал, такой как сотовый телефон ex114, вероятно, имеет 3 типа реализованных конфигураций, включающих в себя не только (i) приемо-передающий терминал, включающий в себя как устройство кодирования, так и устройство декодирования, но также и (ii) передающий терминал, включающий в себя только устройство кодирования, и (iii) приемный терминал, включающий в себя только устройство декодирования. Хотя в описании цифровая широковещательная система ex200 принимает и передает мультиплексированные данные, полученные посредством мультиплексирования аудиоданных в видеоданные в описании, мультиплексированные данные могут быть данными, полученными посредством мультиплексирования не аудиоданных, а символьных данных, связанных с видео, в видеоданные, и могут быть не мультиплексированными данными, а самими видеоданными.
[0277] По сути, способ кодирования движущихся изображений и способ декодирования движущихся изображений в каждом из вариантов осуществления могут использоваться в любых из описанных устройств и систем. Таким образом, могут быть получены преимущества, описанные в каждом из вариантов осуществления.
[0278] Кроме того, настоящее изобретение не ограничено вышеприведенными вариантами осуществления, и различные модификации и изменения могут быть выполнены в любом из вариантов осуществления в настоящем изобретении.
[0279] ВАРИАНТ 6 ОСУЩЕСТВЛЕНИЯ
Видеоданные могут быть сформированы посредством переключения, по мере необходимости, между (i) способом кодирования движущихся изображений или устройством кодирования движущихся изображений, показанными в каждом из вариантов осуществления, и (ii) способом кодирования движущихся изображений или устройством кодирования движущихся изображений в соответствии с другим стандартом, таким как MPEG-2, MPEG-4 AVC и VC-1.
[0280] Здесь, когда множество видеоданных, которые соответствуют различным стандартам, формируются, а затем декодируются, способы декодирования должны быть выбраны таким образом, что они соответствуют различным стандартам. Тем не менее, поскольку не может быть обнаружено то, какому стандарту соответствуют каждые из множества из видеоданных, которые должны быть декодированы, имеется проблема в том, что не может быть выбран надлежащий способ декодирования.
[0281] Чтобы разрешать проблему, мультиплексированные данные, полученные посредством мультиплексирования аудиоданных и т.п. в видеоданные, имеют структуру, включающую в себя идентификационную информацию, указывающую то, какому стандарту соответствуют видеоданные. Далее описывается конкретная структура мультиплексированных данных, включающих в себя видеоданные, сформированные в способе кодирования движущихся изображений и посредством устройства кодирования движущихся изображений, показанных в каждом из вариантов осуществления. Мультиплексированные данные являются цифровым потоком в формате транспортных потоков MPEG-2.
[0282] Фиг. 23 иллюстрирует структуру мультиплексированных данных. Как проиллюстрировано на фиг. 23, мультиплексированные данные могут быть получены посредством мультиплексирования, по меньшей мере, одного из видеопотока, аудиопотока, потока презентационной графики (PG) и потока интерактивной графики. Видеопоток представляет первичное видео и вторичное видео фильма, аудиопоток (IG) представляет часть первичного аудио и часть вторичного аудио, которая должна смешиваться с частью первичного аудио, а поток презентационной графики представляет субтитры фильма. Здесь, первичное видео является обычным видео, которое должно отображаться на экране, а вторичное видео является видео, которое должно отображаться в меньшем окне в первичном видео. Кроме того, поток интерактивной графики представляет интерактивный экран, который должен быть сформирован посредством размещения GUI-компонентов на экране. Видеопоток кодируется в способе кодирования движущихся изображений или посредством устройства кодирования движущихся изображений, показанных в каждом из вариантов осуществления, либо в способе кодирования движущихся изображений или посредством устройства кодирования движущихся изображений в соответствии с традиционным стандартом, таким как MPEG-2, MPEG-4 AVC и VC-1. Аудиопоток кодируется в соответствии с таким стандартом, как AC-3 Dolby, Dolby Digital Plus, MLP, DTS, DTS-HD и линейная PCM.
[0283] Каждый поток, включенный в мультиплексированные данные, идентифицируется посредством PID. Например, 0x1011 выделяется видеопотоку, который должен быть использован для видео фильма, 0x1100-0x111F выделяются аудиопотокам, 0x1200-0x121F выделяются потокам презентационной графики, 0x1400-0x141F выделяются потокам интерактивной графики, 0x1B00-0x1B1F выделяются видеопотокам, которые должны быть использованы для вторичного видео фильма, и 0x1A00-0x1A1F выделяются аудиопотокам, которые должны быть использованы для вторичного аудио, которое должно смешиваться с первичным аудио.
[0284] Фиг. 24 схематично иллюстрирует то, как мультиплексируются данные. Во-первых, видеопоток ex235, состоящий из видеокадров, и аудиопоток ex238, состоящий из аудиокадров, преобразуются в поток PES-пакетов ex236 и поток PES-пакетов ex239 и дополнительно в TS-пакеты ex237 и TS-пакеты ex240, соответственно. Аналогично, данные потока ex241 презентационной графики и данные потока ex244 интерактивной графики преобразуются в поток PES-пакетов ex242 и поток PES-пакетов ex245 и дополнительно в TS-пакеты ex243 и TS-пакеты ex246, соответственно. Эти TS-пакеты мультиплексируются в поток, чтобы получать мультиплексированные данные ex247.
[0285] Фиг. 25 иллюстрирует то, как видеопоток сохраняется в потоке PES-пакетов. Первая панель на фиг. 25 показывает поток видеокадров в видеопотоке. Вторая панель показывает поток PES-пакетов. Как указано посредством стрелок, обозначенных как yy1, yy2, yy3 и yy4 на фиг. 25, видеопоток разделяется на изображения, такие как I-изображения, B-изображения и P-изображения, каждое из которых является единицей видеопредставления, и изображения сохраняются в рабочих данных каждого из PES-пакетов. Каждый из PES-пакетов имеет PES-заголовок, и PES-заголовок сохраняет временную метку представления (PTS), указывающую время отображения изображения, и временную метку декодирования (DTS), указывающую время декодирования изображения.
[0286] Фиг. 26 иллюстрирует формат 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-фильтр. Исходные пакеты размещаются в мультиплексированных данных, как показано в нижней части фиг. 26. Номера, увеличивающиеся с заголовка мультиплексированных данных, называются номерами исходных пакетов (SPN).
[0287] Каждый из TS-пакетов, включенных в мультиплексированные данные, включает в себя не только потоки аудио, видео, субтитров и т.п., но также и таблицу ассоциаций программ (PAT), таблицу структуры программ (PMT) и временную отметку программ (PCR). PAT показывает то, что указывает PID в PMT, используемой в мультиплексированных данных, и PID самого PAT регистрируется как нуль. PMT сохраняет PID потоков видео, аудио, субтитров и т.п., включенных в мультиплексированные данные, и информацию атрибутов потоков, соответствующих PID. PMT также имеет различные дескрипторы, связанные с мультиплексированными данными. Дескрипторы имеют такую информацию, как информация управления копированием, показывающая то, разрешено или нет копирование мультиплексированных данных. PCR сохраняет информацию STC-времени, соответствующую ATS, показывающей, когда PCR-пакет передается в декодер, чтобы достигать синхронизации между таймером поступления (ATC), т.е. временной осью ATS, и системным таймером (STC), т.е. временной осью PTS и DTS.
[0288] Фиг. 27 подробно поясняет структуру данных PMT. PMT-заголовок располагается в верхней части PMT. PMT-заголовок описывает длину данных, включенных в PMT, и т.п. Множество дескрипторов, связанных с мультиплексированными данными, располагается после PMT-заголовка. Информация, такая как информация управления копированием, описывается в дескрипторах. После дескрипторов располагается множество фрагментов информации потока, связанных с потоками, включенными в мультиплексированные данные. Каждый фрагмент информации потока включает в себя дескрипторы потоков, каждый из которых описывает такую информацию, как тип потока для идентификации кодека сжатия потока, PID потока и информация атрибутов потока (такая как частота кадров или соотношение сторон). Дескрипторы потоков по числу равны числу потоков в мультиплексированных данных.
[0289] Когда мультиплексированные данные записываются на носителе записи и т.д., они записываются вместе с файлами информации мультиплексированных данных.
[0290] Каждый из файлов информации мультиплексированных данных является управляющей информацией мультиплексированных данных, как показано на фиг. 28. Файлы информации мультиплексированных данных находятся в соответствии "один-к-одному" с мультиплексированными данными, и каждый из файлов включает в себя информацию мультиплексированных данных, информацию атрибутов потока и карту вхождений.
[0291] Как проиллюстрировано на фиг. 28, информация мультиплексированных данных включает в себя системную скорость, время начала воспроизведения и время завершения воспроизведения. Системная скорость указывает максимальную скорость передачи, на которой декодер системных целевых объектов, который должен быть описан ниже, передает мультиплексированные данные в PID-фильтр. Интервалы ATS, включенных в мультиплексированные данные, задаются не больше системной скорости. Время начала воспроизведения указывает PTS в видеокадре в заголовке мультиплексированных данных. Интервал одного кадра добавляется к PTS в видеокадре в конце мультиплексированных данных, и PTS задается равным времени завершения воспроизведения.
[0292] Как показано на фиг. 29, фрагмент информации атрибутов регистрируется в информации атрибутов потока для каждого PID каждого потока, включенного в мультиплексированные данные. Каждый фрагмент информации атрибутов имеет различную информацию в зависимости от того, является ли соответствующий поток видеопотоком, аудиопотоком, потоком презентационной графики или потоком интерактивной графики. Каждый фрагмент информации атрибутов видеопотока переносит информацию, включающую в себя то, какой кодек сжатия используется для сжатия видеопотока, а также разрешение, соотношение сторон и частоту кадров фрагментов данных изображений, которые включаются в видеопоток. Каждый фрагмент информации атрибутов аудиопотока переносит информацию, включающую в себя то, какой кодек сжатия используется для сжатия аудиопотока, сколько каналов включается в аудиопоток, какой язык поддерживает аудиопотока, и насколько высокой является частота дискретизации. Информация атрибутов видеопотока и информация атрибутов аудиопотока используются для инициализации декодера до того, как проигрыватель воспроизводит информацию.
[0293] В настоящем варианте осуществления мультиплексированные данные, которые должны быть использованы, имеют тип потока, включенный в PMT. Кроме того, когда мультиплексированные данные записываются на носителе записи, используется информация атрибутов видеопотока, включенная в информацию мультиплексированных данных. Более конкретно, способ кодирования движущихся изображений или устройство кодирования движущихся изображений, описанные в каждом из вариантов осуществления, включают в себя этап или модуль для выделения уникальных видеоданных, указывающих информацию, сформированную посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений в каждом из вариантов осуществления, для типа потока, включенного в PMT, или информации атрибутов видеопотока. При этой конфигурации, видеоданные, сформированные посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, могут отличаться от видеоданных, которые соответствуют другому стандарту.
[0294] Кроме того, фиг. 30 иллюстрирует этапы способа декодирования движущихся изображений согласно настоящему варианту осуществления. На этапе exS100, тип потока, включенный в PMT или информацию атрибутов видеопотока, включенную в информацию мультиплексированных данных, получается из мультиплексированных данных. Затем, на этапе exS101, определяется то, указывает или нет тип потока либо информация атрибутов видеопотока то, что мультиплексированные данные формируются посредством способа кодирования видео или устройства кодирования видео в каждом из вариантов осуществления. Когда определяется то, что тип потока или информация атрибутов видеопотока указывают то, что мультиплексированные данные формируются посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений в каждом из вариантов осуществления, на этапе exS102, декодирование выполняется посредством способа декодирования движущихся изображений в каждом из вариантов осуществления. Кроме того, когда тип потока или информация атрибутов видеопотока указывает соответствие традиционным стандартам, таким как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS103, декодирование выполняется посредством способа декодирования движущихся изображений в соответствии с традиционными стандартами.
[0295] Так же, выделение нового уникального значения для типа потока или информации атрибутов видеопотока обеспечивает определение того, могут или нет выполнять декодирование способ декодирования движущихся изображений или устройство декодирования движущихся изображений, которые описываются в каждом из вариантов осуществления. Даже когда вводятся мультиплексированные данные, которые соответствуют другому стандарту, может быть выбран надлежащий способ или устройство декодирования. Таким образом, появляется возможность декодировать информацию без ошибок. Кроме того, способ или устройство кодирования движущихся изображений либо способ или устройство декодирования движущихся изображений в настоящем варианте осуществления могут быть использованы в устройствах и системах, описанных выше.
[0296] ВАРИАНТ 7 ОСУЩЕСТВЛЕНИЯ
Каждый из способа кодирования движущихся изображений, устройства кодирования движущихся изображений, способа декодирования движущихся изображений и устройства декодирования движущихся изображений в каждом из вариантов осуществления типично осуществляется в форме интегральной схемы или большой интегральной (LSI) схемы. В качестве примера LSI, фиг. 31 иллюстрирует конфигурацию LSI ex500, которая состоит из одного кристалла. LSI ex500 включает в себя элементы ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 и ex509, которые должны быть описаны ниже, и элементы соединяются друг с другом через шину ex510. Модуль ex505 схемы электропитания активируется посредством предоставления в каждый из элементов питания, когда модуль ex505 схемы электропитания включается.
[0297] Например, когда выполняется кодирование, LSI ex500 принимает AV-сигнал из микрофона ex117, камеры ex113 и т.п. через AV-ввод/вывод ex509 под управлением модуля ex501 управления, включающего в себя CPU ex502, контроллер ex503 запоминающего устройства, потоковый контроллер ex504 и модуль ex512 управления частотой возбуждения. Принимаемый AV-сигнал временно сохраняется во внешней памяти ex511, к примеру, SDRAM. Под управлением модуля ex501 управления, сохраненные данные сегментируются на части данных согласно объему и скорости обработки так, что они передаются в процессор ex507 сигналов. Затем, процессор ex507 сигналов кодирует аудиосигнал и/или видеосигнал. Здесь, кодирование видеосигнала является кодированием, описанным в каждом из вариантов осуществления. Кроме того, процессор ex507 сигналов иногда мультиплексирует кодированные аудиоданные и кодированные видеоданные, и потоковый ввод-вывод ex506 предоставляет мультиплексированные данные наружу. Предоставляемый поток битов передается в базовую станцию ex107 или записывается на носителе ex215 записи. Когда наборы данных мультиплексируются, данные должны временно сохраняться в буфере ex508 так, что наборы данных являются синхронизированными друг с другом.
[0298] Хотя память ex511 является элементом за пределами LSI ex500, она может быть включена в LSI ex500. Буфер ex508 не ограничен одним буфером, а может состоять из буферов. Кроме того, LSI ex500 может состоять из одного кристалла или множества кристаллов.
[0299] Кроме того, хотя модуль ex501 управления включает в себя CPU ex502, контроллер ex503 запоминающего устройства, потоковый контроллер ex504, модуль ex512 управления частотой возбуждения, конфигурация модуля ex501 управления не ограничена этой. Например, процессор ex507 сигналов дополнительно может включать в себя CPU. Включение другого CPU в процессор ex507 сигналов может повышать скорость обработки. Кроме того, в качестве другого примера, CPU ex502 может выступать в качестве или быть частью процессора ex507 сигналов и, например, может включать в себя процессор аудиосигналов. В таком случае, модуль ex501 управления включает в себя процессор ex507 сигналов или CPU ex502, включающий в себя часть процессора ex507 сигналов.
[0300] Используемым здесь названием является LSI, но она также может называться IC, системной LSI, супер-LSI или ультра-LSI в зависимости от степени интеграции.
[0301] Кроме того, способы достигать интеграции не ограничены LSI, и специальная схема или процессор общего назначения и т.д. также позволяет достигать интеграции. Программируемая пользователем вентильная матрица (FPGA), которая может программироваться после изготовления LSI, или реконфигурируемый процессор, который дает возможность переконфигурирования подключения или конфигурации LSI, может использоваться для аналогичной цели.
[0302] В будущем, с развитием полупроводниковых технологий совершенно новая технология может заменять LSI. Функциональные блоки могут быть интегрированы с использованием этой технологии. Имеется возможность того, что настоящее изобретение применимо к биотехнологии.
[0303] ВАРИАНТ 8 ОСУЩЕСТВЛЕНИЯ
Когда декодируются видеоданные, сформированные в способе кодирования движущихся изображений или посредством устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, по сравнению с тем, когда декодируются видеоданные, которые соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, объем обработки, вероятно, возрастает. Таким образом, LSI ex500 должна задаваться на частоте возбуждения, превышающей частоту CPU ex502, которая должна быть использована, когда видеоданные декодируются в соответствии с традиционным стандартом. Тем не менее, когда частота возбуждения задается большей, имеется проблема в том, что возрастает энергопотребление.
[0304] Чтобы разрешать проблему, устройство декодирования движущихся изображений, такое как телевизионный приемник ex300 и LSI ex500, выполнено с возможностью определять то, какому стандарту соответствуют видеоданные, и переключаться между частотами возбуждения согласно определенному стандарту. Фиг. 32 иллюстрирует конфигурацию ex800 в настоящем варианте осуществления. Модуль ex803 переключения частоты возбуждения задает частоту возбуждения равной высокой частоте возбуждения, когда видеоданные формируются посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления. Затем, модуль ex803 переключения частоты возбуждения инструктирует процессору ex801 декодирования, который осуществляет способ декодирования движущихся изображений, описанный в каждом из вариантов осуществления, декодировать видеоданные. Когда видеоданные соответствуют традиционному стандарту, модуль ex803 переключения частоты возбуждения задает частоту возбуждения равной меньшей частоте возбуждения, чем частота возбуждения видеоданных, сгенерированных посредством способа кодирования движущихся изображений или устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления. Затем, модуль ex803 переключения частоты возбуждения инструктирует процессору ex802 декодирования, который соответствует традиционному стандарту, декодировать видеоданные.
[0305] Более конкретно, модуль ex803 переключения частоты возбуждения включает в себя CPU ex502 и модуль ex512 управления частотой возбуждения на фиг. 31. Здесь, каждый из процессора ex801 декодирования, который осуществляет способ декодирования движущихся изображений, описанный в каждом из вариантов осуществления, и процессора ex802 декодирования, который соответствует традиционному стандарту, соответствует процессору ex507 сигналов на фиг. 31. CPU ex502 определяет то, какому стандарту соответствуют видеоданные. Затем, модуль ex512 управления частотой возбуждения определяет частоту возбуждения на основе сигнала из CPU ex502. Кроме того, процессор ex507 сигналов декодирует видеоданные на основе сигнала из CPU ex502. Например, идентификационная информация, описанная в варианте 6 осуществления, вероятно, используется для идентификации видеоданных. Идентификационная информация не ограничена идентификационной информацией, описанной в варианте 6 осуществления, а может быть любой информацией при условии, что информация указывает то, какому стандарту соответствуют видеоданные. Например, когда то, какому стандарту соответствуют стандартные видеоданные, может быть определено на основе внешнего сигнала для определения того, что видеоданные используются для телевизионного приемника или диска и т.д., определение может выполняться на основе такого внешнего сигнала. Кроме того, CPU ex502 выбирает частоту возбуждения на основе, например, таблицы поиска, в которой стандарты видеоданных ассоциированы с частотами возбуждения, как показано на фиг. 34. Частота возбуждения может быть выбрана посредством сохранения таблицы поиска в буфере ex508 и внутреннем запоминающем устройстве LSI и при обращении к таблице поиска посредством CPU ex502.
[0306] Фиг. 33 иллюстрирует этапы для осуществления способа в настоящем варианте осуществления. Во-первых, на этапе exS200, процессор ex507 сигналов получает идентификационную информацию из мультиплексированных данных. Затем, на этапе exS201, CPU ex502 определяет на основе идентификационной информации то, формируются или нет видеоданные посредством способа кодирования и устройства кодирования, описанных в каждом из вариантов осуществления. Когда видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, на этапе exS202, CPU ex502 передает сигнал для задания частоты возбуждения равной большей частоте возбуждения в модуль ex512 управления частотой возбуждения. Затем, модуль ex512 управления частотой возбуждения задает частоту возбуждения равной большей частоте возбуждения. С другой стороны, когда идентификационная информация указывает то, что видеоданные соответствуют традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1, на этапе exS203, CPU ex502 передает сигнал для задания частоты возбуждения равной меньшей частоте возбуждения в модуль ex512 управления частотой возбуждения. Затем, модуль ex512 управления частотой возбуждения задает частоту возбуждения равной меньшей частоте возбуждения, чем частота возбуждения в случае, если видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления.
[0307] Кроме того, наряду с переключением частот возбуждения, энергосберегающий эффект может быть повышен посредством изменения напряжения, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500. Например, когда частота возбуждения задается меньшей, напряжение, которое должно прикладываться к LSI ex500 или к устройству, включающему в себя LSI ex500, вероятно, задается равным напряжению, меньшему напряжения в случае, если частота возбуждения задается большей.
[0308] Кроме того, когда объем обработки для декодирования больше, частота возбуждения может задаваться большей, а когда объем обработки для декодирования меньше, частота возбуждения может задаваться меньшей в качестве способа для задания частоты возбуждения. Таким образом, способ задания не ограничен способами, описанными выше. Например, когда объем обработки для декодирования видеоданных в соответствии с MPEG-4 AVC превышает объем обработки для декодирования видеоданных, сгенерированных посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, частота возбуждения, вероятно, задается в обратном порядке относительно задания, описанного выше.
[0309] Кроме того, способ для задания частоты возбуждения не ограничен способом для задания частоты возбуждения меньшей. Например, когда идентификационная информация указывает то, что видеоданные формируются посредством способа кодирования движущихся изображений и устройства кодирования движущихся изображений, описанных в каждом из вариантов осуществления, напряжение, которое должно прикладываться к 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.
[0310] Соответственно, энергосберегающий эффект может быть повышен посредством переключения между частотами возбуждения согласно стандарту, которому соответствуют видеоданные. Кроме того, когда LSI ex500 или устройство, включающее в себя LSI ex500, возбуждается с использованием аккумулятора, время работы от аккумулятора может быть продлено за счет энергосберегающего эффекта.
[0311] ВАРИАНТ 9 ОСУЩЕСТВЛЕНИЯ
Возникают случаи, когда множество видеоданных, которые соответствуют различным стандартам, предоставляются в устройства и системы, такие как телевизионный приемник и сотовый телефон. Чтобы обеспечивать декодирование множества видеоданных, которые соответствуют различным стандартам, процессор ex507 сигналов LSI ex500 должен соответствовать различным стандартам. Тем не менее, проблемы увеличения масштаба схемы LSI ex500 и роста затрат возникают при отдельном использовании процессоров ex507 сигналов, которые соответствуют соответствующим стандартам.
[0312] Чтобы разрешать проблему, задумана конфигурация, в которой частично совместно используются процессор декодирования для реализации способа декодирования движущихся изображений, описанного в каждом из вариантов осуществления, и процессор декодирования, который соответствует традиционному стандарту, такому как MPEG-2, MPEG-4 AVC и VC-1. Ex900 на фиг. 35A показывает пример конфигурации. Например, способ декодирования движущихся изображений, описанный в каждом из вариантов осуществления, и способ декодирования движущихся изображений, который соответствует MPEG-4 AVC, имеют, частично совместно, сведения по обработке, такой как энтропийное кодирование, обратное квантование, фильтрация для удаления блочности и прогнозирование с компенсацией движения. Сведения по обработке, которая должна совместно использоваться, вероятно, включают в себя использование процессора ex902 декодирования, который соответствует MPEG-4 AVC. Напротив, выделенный процессор ex901 декодирования, вероятно, используется для другой обработки, уникальной для аспекта настоящего изобретения. Поскольку аспект настоящего изобретения конкретно отличается посредством внешнего прогнозирования, например, выделенный процессор ex901 декодирования используется для внешнего прогнозирования. В противном случае, процессор декодирования, вероятно, совместно используется для одного из энтропийного декодирования, фильтрации для удаления блочности и обратного квантования либо для всей обработки. Процессор декодирования для реализации способа декодирования движущихся изображений, описанного в каждом из вариантов осуществления, может быть совместно использован для обработки, которая должна совместно использоваться, и выделенный процессор декодирования может использоваться для обработки, уникальной для MPEG-4 AVC.
[0313] Кроме того, ex1000 на фиг. 35B показывает другой пример, в котором обработка совместно используется частично. Этот пример использует конфигурацию, включающую в себя выделенный процессор ex1001 декодирования, который поддерживает обработку, уникальную для аспекта настоящего изобретения, выделенный процессор ex1002 декодирования, который поддерживает обработку, уникальную для другого традиционного стандарта, и процессор ex1003 декодирования, который поддерживает обработку, которая должна совместно использоваться способом декодирования движущихся изображений согласно аспекту настоящего изобретения и традиционным способом декодирования движущихся изображений. Здесь, выделенные процессоры ex1001 и ex1002 декодирования не обязательно являются специализированными для обработки согласно аспекту настоящего изобретения и обработки по традиционному стандарту, соответственно, и могут быть процессорами, допускающими реализацию общей обработки. Кроме того, конфигурация настоящего варианта осуществления может быть реализована посредством LSI ex500.
[0314] Также уменьшение масштаба схемы LSI и сокращение затрат возможно за счет совместного использования процессора декодирования для обработки, которая должна совместно использоваться способом декодирования движущихся изображений согласно аспекту настоящего изобретения и способом декодирования движущихся изображений в соответствии с традиционным стандартом.
[0315] ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
Настоящее изобретение является применимым к телевизионному приемнику, цифровому записывающему видеоустройству, автомобильной навигационной системе, сотовому телефону, цифровой камере, цифровой видеокамере и т.п.
СПИСОК НОМЕРОВ ССЫЛОК
[0316] 500, 1300 - устройство кодирования изображений
501 - модуль вычитания
502 - модуль преобразования
503 - модуль квантования
504 - энтропийный кодер
505, 602 - модуль обратного квантования
506, 603 - модуль обратного преобразования
507, 604 - модуль суммирования
508, 605 - память блоков
509, 606 - память изображений
510, 607 - модуль внутреннего прогнозирования
511, 608 - модуль внешнего прогнозирования
512, 609, 1303, 1403 - модуль выбора
600, 1400 - устройство декодирования изображений
601 - энтропийный декодер
1301, 1401 - модуль извлечения
1302, 1402 - модуль добавления
1304 - кодер
1404 – декодер.