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

Иллюстрации

Показать все

Изобретение относится к области кодирования изображений. Технический результат - повышение точности прогнозирования и эффективности кодирования. Способ кодирования изображений содержит этап извлечения (S1201) для извлечения варианта прогнозного вектора движения из смежного вектора движения; этап добавления (S1202) для добавления варианта в список; этап выбора (S1203) для выбора прогнозного вектора движения из списка; и этап кодирования (S1204) для кодирования текущего блока и кодирования текущего вектора движения. На этапе извлечения (S1201), когда текущее опорное изображение и смежное опорное изображение определяются как долговременное опорное изображение, вариант извлекается посредством первого способа извлечения. Когда текущее опорное изображение и смежное опорное изображение определяются как кратковременное опорное изображение, вариант извлекается посредством второго способа извлечения. 6 н. и 14 з.п. ф-лы, 34 ил.

Реферат

Область техники, к которой относится изобретение

[0001] Настоящее изобретение относится к способу кодирования изображений для кодирования каждого из блоков изображений.

Уровень техники

[0002] Одна примерная технология для кодирования каждого из блоков изображений является технологией, раскрытой в непатентном документе 1.

Список библиографических ссылок

Непатентные документы

[0003] 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 является блок-схемой последовательности операций способа для этапов извлечения процесса извлечения согласно варианту 3 осуществления.

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

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

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

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

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

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

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

Фиг. 15 является иллюстрацией примера позиции хранения параметра, указывающего режим прогнозирования.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Подробное описание вариантов осуществления

[0010] Базовая основа формирования знаний настоящего изобретения

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

[0011] Примеры новых схем кодирования изображений включают в себя MPEG-4 AVC/H.264 и высокоэффективное кодирование видео (HEVC). Эти схемы кодирования изображений поддерживают взаимное прогнозирование на основе кодированных опорных изображений.

[0012] Кроме того, эти схемы кодирования изображений могут использовать опорные изображения, называемые "долговременными опорными изображениями". Например, опорное изображение может быть использовано в качестве долговременного опорного изображения, когда опорное изображение хранится в течение длительного периода в буфере декодированных изображений (DPB).

[0013] Помимо этого HEVC поддерживает режим, называемый "адаптивным прогнозированием векторов движения (AMVP)". В AMVP-режиме, прогнозирующая функция вектора движения, достижимая посредством прогнозирования вектора движения для текущего блока на основе, например, вектор движения для соседнего блока, используется при кодировании вектора движения для текущего блока.

[0014] Кроме того, HEVC поддерживает пространственную прогнозирующую функцию вектора движения. Пространственная прогнозирующая функция вектора движения извлекается из вектора движения для соседнего блока. Соседний блок включается в текущее изображение, включающее в себя текущий блок, который должен быть кодирован, и смежный с текущим блоком. Например, пространственная прогнозирующая функция вектора движения может извлекаться из вектора движения для соседнего слева блока, расположенного слева от текущего блока, или может извлекаться из вектора движения для соседнего сверху блока, расположенного выше текущего блока.

[0015] Здесь пространственная прогнозирующая функция вектора движения, извлекаемая из вектора движения для соседнего слева блока, упоминается как левая прогнозирующая функция вектора движения. Аналогично, пространственная прогнозирующая функция вектора движения, извлекаемая из вектора движения для соседнего сверху блока, упоминается как верхняя прогнозирующая функция вектора движения.

[0016] Помимо этого вектор движения соседнего блока может упоминаться как соседний вектор движения. Помимо этого опорное изображение для соседнего блока может упоминаться как соседнее опорное изображение. Соседний блок кодируется с использованием соседнего вектора движения и соседнего опорного изображения.

[0017] Аналогично, вектор движения для текущего блока может упоминаться как текущий вектор движения. Помимо этого опорное изображение для текущего блока может упоминаться как текущее опорное изображение. Текущий блок кодируется с использованием текущего вектора движения и текущего опорного изображения.

[0018] Каждый из текущего блока и соседнего блока является единицей прогнозирования (PU). Единица прогнозирования является блоком изображений и задается как единица данных при прогнозировании. HEVC задает единицу кодирования (CU) в качестве единицы данных при кодировании отдельно от единицы прогнозирования. Единица прогнозирования является блоком в единице кодирования. Блок, раскрытый в дальнейшем, может быть заменен посредством единицы прогнозирования или единицы кодирования.

[0019] Размеры единицы кодирования и единицы прогнозирования не являются постоянными. Например, изображение может включать в себя множество единиц кодирования, имеющих различные размеры, и/или может включать в себя множество единиц прогнозирования, имеющих различные размеры.

[0020] По этой причине, в некоторых случаях невозможно точно задавать какой-либо из соседних блоков, расположенных слева или выше текущего блока. Соответственно, HEVC поддерживает предварительно определенную схему выбора для выбора левого блока и верхнего блока из множества блоков, смежных с текущим блоком.

[0021] Пространственная прогнозирующая функция вектора движения формируется посредством масштабирования векторов движения для выбранных соседних блоков согласно расстоянию на основе номера в последовательности изображений (POC). POC является порядковым числом, назначаемым изображению в порядке отображения. POC-расстояние соответствует временному расстоянию между двумя изображениями. Масштабирование на основе POC-расстояния также упоминается как масштабирование на основе POC. Выражение 1, показанное ниже, является операционным выражением для масштабирования на основе POC для вектора движения для соседних блоков.

[0022] Pmv=(tb/td)×nmv… (выражение 1)

[0023] Здесь, nmv обозначает вектор движения для соседнего блока; pmv обозначает пространственную прогнозирующую функцию вектора движения, извлекаемую из вектора движения для соседнего блока; tb обозначает POC-расстояние со знаком и является разностью текущего изображения и текущего опорного изображения; и td обозначает POC-расстояние со знаком и является разностью текущего изображения и соседнего опорного изображения.

[0024] Когда эффективная пространственная прогнозирующая функция вектора движения существует, пространственная прогнозирующая функция вектора движения включается в упорядоченный список вариантов для прогнозирующих функций вектора движения. Прогнозирующая функция вектора движения, которая должна быть использована при кодировании текущего вектора движения, выбирается из упорядоченного списка вариантов для прогнозирующих функций вектора движения. Выбранная прогнозирующая функция вектора движения показывается как параметр в кодированном потоке.

[0025] Фиг. 1 является блок-схемой последовательности операций способа для операций, выполняемых посредством устройства кодирования изображений согласно справочному примеру. Фиг. 1, в частности, показывает этапы кодирования изображения с использованием взаимного прогнозирования.

[0026] Во-первых, устройство кодирования изображений классифицирует каждое из опорных изображений в качестве кратковременного опорного изображения или в качестве долговременного опорного изображения (S101). Устройство кодирования изображений записывает информацию, указывающую классификацию каждого из опорных изображений, в заголовке кодированного потока (S102).

[0027] Затем устройство кодирования идентифицирует текущее опорное изображение и текущий вектор движения с использованием оценки движения (S103). Затем устройство кодирования извлекает прогнозирующую функцию вектора движения (S104). Эти этапы извлечения подробно описываются далее.

[0028] После этого устройство кодирования изображений вычитает прогнозирующую функцию вектора движения из текущего вектора движения, чтобы извлекать разность векторов движения (S105). Затем устройство кодирования изображений выполняет компенсацию движения с использованием текущего опорного изображения и текущего вектора движения, чтобы формировать прогнозный блок (S106).

[0029] После этого устройство кодирования изображений вычитает прогнозный блок из текущего блока, чтобы формировать остаточный блок (S107). В завершение, устройство кодирования изображений кодирует остаточный блок, разность векторов движения и опорный индекс, указывающий текущее опорное изображение, чтобы формировать кодированный поток, включающий в себя эти элементы данных (S108).

[0030] Фиг. 2 является блок-схемой последовательности операций способа для операций, выполняемых посредством устройства декодирования изображений согласно справочному примеру. Фиг. 2, в частности, показывает этапы декодирования изображения с использованием взаимного прогнозирования.

[0031] Во-первых, устройство декодирования изображений получает кодированный поток и получает информацию, указывающую классификацию каждого из опорных изображений, посредством синтаксического анализа заголовка кодированного потока (S201). Помимо этого устройство декодирования изображений получает остаточный блок, разность векторов движения и опорный индекс, указывающий текущее опорное изображение, посредством синтаксического анализа кодированного потока (S202).

[0032] Далее устройство декодирования изображений извлекает прогнозирующую функцию вектора движения (S203). Эти этапы извлечения подробно описываются далее. Затем устройство декодирования изображений суммирует прогнозирующую функцию вектора движения с разностью векторов движения, чтобы формировать текущий вектор движения (S204). После этого устройство декодирования изображений выполняет компенсацию движения с использованием текущего опорного изображения и текущего вектора движения, чтобы формировать прогнозный блок (S205). В завершение устройство декодирования изображений суммирует прогнозный блок с остаточным блоком, чтобы формировать восстановленный блок (S206).

[0033] Фиг. 3 является блок-схемой последовательности операций способа для этапов процесса извлечения, показанного на фиг. 1 и фиг. 2. Операции, выполняемые посредством устройства кодирования изображений, показаны ниже. Операции, выполняемые посредством устройства декодирования изображений, являются аналогичными операциям, выполняемым посредством устройства кодирования изображений. Таким образом, "кодирование" может быть заменено на "декодирование" в нижеприведенном описании.

[0034] Во-первых, устройство кодирования изображений выбирает соседний блок, смежный с текущим блоком, который должен быть кодирован (S301). Устройство кодирования изображений идентифицирует соседнее опорное изображение и соседний вектор движения (S302). После этого устройство кодирования изображений извлекает прогнозирующую функцию вектора движения согласно схеме извлечения, заключающей в себе масштабирование на основе POC (S303).

[0035] Фиг. 4 является иллюстрацией соседних блоков, которые должны быть использованы в процессе извлечения, показанном на фиг. 3. Соседние блоки выбираются из множества блоков, смежных с текущим блоком.

[0036] Каждый из блока A0, включающего в себя выборку a0, и блока A1, включающего в себя выборку a1, является вариантом для соседнего слева блока. Каждый из блока B0, включающего в себя выборку b0, блока B1, включающего в себя выборку b1, и блока B2, включающего в себя выборку b2, является вариантом для соседнего сверху блока.

[0037] Когда координаты выборки tl, расположенной в верхнем левом угле текущего блока, обозначаются как (x, y), а ширина текущего блока обозначается как w, и высота текущего блока обозначается как h, координаты выборки a0 обозначаются как (x-1, y+h). В этом случае координаты выборки a1 обозначаются как (x-1, y+h-1). В этом случае координаты выборки b0, расположенной в позиции, противостоящей верхнему правому углу текущего блока, обозначаются как (x+w, y-1). В этом случае координаты выборки b1 обозначаются как (x+w-1, y-1). В этом случае координаты выборки b2 обозначаются как (x-1, y-1).

[0038] Один доступный из блоков A0 и A1 выбирается в качестве соседнего слева блока. Один доступный из блоков B0, B1 и B2 выбирается в качестве соседнего сверху блока. Примерные случаи, в которых блок в изображении не может быть использован, включают в себя случай, в котором такого блока не существует в изображении, и случай, в котором блок является кодированным c внутренним прогнозированием блоком.

[0039] Снова ссылаясь на фиг. 3, приводится описание этапов извлечения для извлечения пространственной прогнозирующей функции вектора движения.

[0040] Во-первых, устройство кодирования изображений задает левую прогнозирующую функцию вектора движения как недоступную. После этого устройство кодирования изображений пытается обнаруживать блок, кодированный в отношении текущего опорного изображения, из блоков A0 и A1 на фиг. 4. Когда устройство кодирования изображений успешно обнаруживает такой блок, кодированный в отношении текущего опорного изображения, устройство кодирования изображений извлекает вектор движения для блока в качестве левой прогнозирующей функции вектора движения без масштабирования. После этого устройство кодирования изображений задает левую прогнозирующую функцию вектора движения как доступную.

[0041] Когда устройство кодирования изображений не обнаруживает успешно такой блок, кодированный в отношении текущего опорного изображения, устройство кодирования изображений пытается обнаруживать блок, кодированный с использованием взаимного прогнозирования, из блоков A0 и A1 (S301). Когда устройство кодирования изображений успешно обнаруживает такой кодированный c взаимным прогнозированием блок, устройство кодирования изображений выполняет масштабирование на основе номера в последовательности изображений (POC) для вектора движения для блока, чтобы извлекать левую прогнозирующую функцию вектора движения, и задает извлеченную левую прогнозирующую функцию вектора движения как доступную (S302 и S303).

[0042] Когда устройство кодирования изображений не обнаруживает успешно такой кодированный c взаимным прогнозированием блок, устройство кодирования изображений поддерживает левую прогнозирующую функцию вектора движения как недоступную.

[0043] Затем устройство кодирования изображений задает верхнюю прогнозирующую функцию вектора движения как недоступную. После этого устройство кодирования изображений пытается обнаруживать блок, кодированный в отношении текущего опорного изображения, из блоков B0, B1 и B2 на фиг. 4. Когда устройство кодирования успешно обнаруживает такой блок, кодированный в отношении текущего опорного изображения, устройство кодирования изображений извлекает вектор движения для блока в качестве верхней прогнозирующей функции вектора движения без масштабирования. Затем устройство кодирования изображений задает верхнюю прогнозирующую функцию вектора движения как доступную.

[0044] Когда устройство кодирования изображений не обнаруживает успешно такой блок, кодированный в отношении текущего опорного изображения, устройство кодирования изображений пытается обнаруживать блок, кодированный с использованием взаимного прогнозирования, из блоков B0, B1 и B2 (S301). Когда устройство кодирования изображений успешно обнаруживает такой кодированный c взаимным прогнозированием блок, устройство кодирования изображений выполняет масштабирование на основе номера в последовательности изображений (POC) для вектора движения для блока, чтобы извлекать верхнюю прогнозирующую функцию вектора движения, и задает извлеченную верхнюю прогнозирующую функцию вектора движения как доступную (S302 и S303).

[0045] Когда модуль 511 взаимного прогнозирования не обнаруживает успешно такой кодированный c взаимным прогнозированием блок, устройство кодирования изображений поддерживает верхнюю прогнозирующую функцию вектора движения как недоступную.

[0046] Согласно вышеописанному процессу извлечения, устройство кодирования изображений (устройство декодирования изображений) извлекает доступные прогнозирующие функции вектора движения (левую прогнозирующую функцию вектора движения и верхнюю прогнозирующую функцию вектора движения).

[0047] Тем не менее, может быть затруднительным извлекать надлежащие пространственные прогнозирующие функции вектора движения в зависимости от взаимосвязей между текущим изображением, текущим опорным изображением и соседним опорным изображением.

[0048] Например, когда текущее опорное изображение является долговременным опорным изображением, временное расстояние от текущего опорного изображения до текущего изображения может быть большим. С другой стороны, когда соседнее опорное изображение является долговременным опорным изображением, временное расстояние от соседнего опорного изображения до текущего изображения может быть большим.

[0049] В этих случаях масштабирование на основе POC может давать в результате слишком большие или маленькие пространственные прогнозирующие функции вектора движения. Таким образом, снижается точность прогнозирования, и снижается эффективность кодирования. В частности, использование фиксированного числа битов приводит к значительному снижению точности прогнозирования и эффективности кодирования, поскольку невозможно точно выражать такие слишком большие или маленькие пространственные прогнозирующие функции вектора движения с использованием такого фиксированного числа битов.

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

[0051] Таким образом, можно надлежащим образом извлекать вариант для прогнозирующей функции вектора движения без извлечения слишком большого или маленького варианта. Это позволяет повышать точность прогнозирования и тем самым повышать эффективность кодирования.

[0052] Например, при извлечении по способу кодирования изображений согласно аспекту: извлечение варианта из вектора движения для соседнего блока не может быть выполнено, когда одно из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как долговременное опорное изображение, а другое определяется как кратковременное опорное изображение; и извлечение варианта из вектора движения для соседнего блока может быть выполнено, когда каждое из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как долговременное опорное изображение, или когда каждое из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как кратковременное опорное изображение.

[0053] Таким образом, когда прогнозируется то, что в результате получается низкая точность прогнозирования, варианты для прогнозирующей функции вектора движения не извлекаются из вектора движения для соседнего блока. Это не допускает получения в результате такой низкой точности прогнозирования.

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

[0055] Таким образом, информация, указывающая то, является ли каждое опорное изображение долговременным опорным изображением или кратковременным опорным изображением, передается посредством стороны кодирования на сторону декодирования. Соответственно, сторона кодирования и сторона декодирования могут получать аналогичный результат определения и выполнять аналогичные процессы.

[0056] Помимо этого, например, при извлечении по способу кодирования изображений согласно аспекту, то, является ли опорное изображение для текущего блока долговременным опорным изображением или кратковременным опорным изображением, может быть определено на основе временного расстояния от опорного изображения для текущего блока до текущего изображения; и то, является ли опорное изображение для соседнего блока долговременным опорным изображением или кратковременным опорным изображением, может быть определено на основе временного расстояния от опорного изображения для соседнего блока до текущего изображения.

[0057] Таким образом, то, является ли каждое опорное изображение долговременным опорным изображением или кратковременным опорным изображением, надлежащим образом определяется на основе временного расстояния простым способом.

[0058] Помимо этого, например, при извлечении по способу кодирования изображений согласно аспекту, то, является ли опорное изображение для соседнего блока долговременным опорным изображением или кратковременным опорным изображением, может быть определено в период, в который кодируется соседний блок.

[0059] Таким образом, можно более точно определять то, является ли опорное изображение для соседнего блока долговременным опорным изображением или кратковременным опорным изображением.

[0060] Помимо этого, например, при извлечении по способу кодирования изображений согласно аспекту, то, является ли опорное изображение для соседнего блока долговременным опорным изображением или кратковременным опорным изображением, может быть определено в период, в который кодируется текущий блок.

[0061] Таким образом, нет необходимости хранить, в течение длительного времени, информацию, указывающую то, является ли опорное изображение для соседнего блока долговременным опорным изображением или кратковременным опорным изображением.

[0062] Помимо этого, например, при извлечении по способу кодирования изображений согласно аспекту, вектор движения для соседнего блока может извлекаться в качестве варианта, когда каждое из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как долговременное опорное изображение; и масштабированный вектор движения может извлекаться в качестве варианта, причем масштабированный вектор движения получается посредством масштабирования вектора движения для соседнего блока с использованием соотношения временного расстояния от опорного изображения для текущего блока до текущего изображения относительно временного расстояния от опорного изображения для соседнего блока до текущего изображения, когда каждое из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как кратковременное опорное изображение.

[0063] Таким образом, масштабирование вектора движения пропускается, когда оба опорных изображения являются долговременными опорными изображениями, что сокращает объем работы. С другой стороны, когда оба опорных изображения являются кратковременными изображениями, вариант для прогнозирующей функции вектора движения надлежащим образом извлекается на основе временных расстояний.

[0064] Помимо этого, например, при извлечении по способу кодирования изображений согласно аспекту, когда опорное изображение для текущего блока определяется как кратковременное опорное изображение, а опорное изображение для соседнего блока определяется как долговременное опорное изображение, извлечение варианта из вектора движения для соседнего блока не может быть выполнено, другой соседний блок, кодированный в отношении кратковременного опорного изображения, может быть выбран, и вариант может извлекаться из вектора движения для другого соседнего блока согласно второй схеме извлечения.

[0065] Соответственно, выбирается блок для извлечения варианта, который дает в результате высокую точность прогнозирования. Соответственно, повышается точность прогнозирования.

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

[0067] Таким образом, можно надлежащим образом извлекать вариант для прогнозирующей функции вектора движения без извлечения слишком большого или маленького варианта. Это позволяет повышать точность прогнозирования и тем самым повышать эффективность кодирования.

[0068] Например, при извлечении по способу декодирования изображений согласно аспекту: извлечение варианта из вектора движения для соседнего блока не может быть выполнено, когда одно из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как долговременное опорное изображение, а другое определяется как кратковременное опорное изображение; и извлечение варианта из вектора движения для соседнего блока может быть выполнено, когда каждое из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как долговременное опорное изображение, или когда каждое из опорного изображения для текущего блока и опорного изображения для соседнего блока определяется как кратковременное опорное изображение.

[0069] Таким образом, когда прогнозируется то, что в результате получается низкая точность прогнозирования, варианты для прогнозирующей функции вектора движения не извлекаются из вектора движения для соседнего блока. Это не допускает получения