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

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[0001] Настоящее изобретение относится к устройству кодирования движущихся изображений, устройству декодирования движущихся изображений, способу кодирования движущихся изображений и способу декодирования движущихся изображений для выполнения процесса внутреннего предсказания или процесса взаимного предсказания с тем, чтобы выполнять кодирование с предсказанием.
УРОВЕНЬ ТЕХНИКИ
[0002] Поясняются режимы внутреннего предсказания для использования в способе кодирования AVC/H.264, каждый из которых может задаваться в процессах внутреннего предсказания, выполняемых устройством кодирования движущихся изображений. Один режим внутреннего предсказания для яркости может быть выбран из множества режимов предсказания для каждого единичного блока. Фиг. 15 является пояснительным чертежом, показывающим режимы внутреннего предсказания в случае размера пикселного блока 4x4 для яркости. В случае размера пикселного блока 4x4 для яркости, задаются девять режимов внутреннего предсказания, включающих в себя режимы 0-8.
[0003] В примере по фиг. 15, каждый белый круг показывает пиксел в блоке, подлежащем кодированию, и каждый черный круг показывает пиксел, который используется для предсказания, и который существует в уже кодированном смежном блоке. Режим 2 является режимом внутреннего предсказания, ассоциированным с предсказанием по среднему, в котором каждый пиксел в целевом блоке, подлежащем кодированию, предсказывается посредством использования среднего смежных пикселов, существующих в верхнем и левом блоках. Режимы, отличные от режима 2, являются режимами внутреннего предсказания, ассоциированными с направленным предсказанием.
[0004] Режим 0 является режимом внутреннего предсказания, ассоциированным с вертикальным предсказанием, в котором смежные пикселы в верхнем блоке многократно реплицируются, чтобы создавать несколько строки пикселов вдоль вертикального направления, чтобы формировать изображение предсказания. Например, режим 0 выбирается, когда целевой блок, подлежащий кодированию, является шаблоном с чередованием по вертикали. Дополнительно, режим 1 является режимом внутреннего предсказания, ассоциированным с горизонтальным предсказанием, в котором смежные пикселы в левом блоке многократно реплицируются, чтобы создавать несколько столбцов пикселов вдоль горизонтального направления, чтобы формировать изображение предсказания. В каждом из режимов 3-8 интерполяционные пикселы, идущие в предварительно определенном направлении (т.е. в направлении, показанном посредством стрелок), формируются посредством использования смежных пикселов в верхнем блоке или левом блоке, чтобы формировать изображение предсказания.
[0005] В этом случае, размер блока для яркости, к которому применяется внутреннее предсказание, может быть выбран из 4×4 пикселов, 8×8 пикселов и 16×16 пикселов. В случае 8×8 пикселов задаются девять режимов внутреннего предсказания, как и в случае 4×4 пикселов. В отличие от этого, в случае 16×16 пикселов задаются четыре режима внутреннего предсказания, которые называются предсказаниями на плоскости, в дополнение к режимам внутреннего предсказания, ассоциированным с предсказанием по среднему, вертикальным предсказанием и горизонтальным предсказанием. Каждый режим внутреннего предсказания, ассоциированный с предсказанием на плоскости, является режимом, в котором пикселы, созданные посредством выполнения интерполяции в диагональном направлении для смежных пикселов в верхнем блоке и смежных пикселов в левом блоке, предоставляются в качестве предсказанных значений.
[0006] В режиме направленного предсказания в случае размера блока 4×4 пикселов или 8x8 пикселов, поскольку предсказанные значения формируются вдоль предварительно определенного направления (например, направления в 45 градусов), повышается эффективность предсказания, и может быть уменьшен объем кода, когда направление границы (края) объекта в блоке совпадает с направлением, указанным режимом предсказания. Тем не менее, когда направление края объекта в блоке не совпадает с направлением, указанным режимом предсказания, объем кода не может быть уменьшен, поскольку эффективность предсказания снижается. Следующая патентная ссылка 1 раскрывает технологию, допускающую уменьшение объема кода, связанного с режимами внутреннего предсказания, посредством просто использования таблицы информации частоты для сохранения подсчитанной частоты вхождений режима внутреннего предсказания. Тем не менее, необходимо подготавливать таблицу информации частоты заранее.
ДОКУМЕНТЫ ПРЕДШЕСТВУЮЩЕГО УРОВНЯ ТЕХНИКИ:
ПАТЕНТНАЯ ССЫЛКА
[0007] Патентная ссылка 1. WO 2008/123254
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
ЗАДАЧИ, РЕШАЕМЫЕ ИЗОБРЕТЕНИЕМ
[0008] Поскольку традиционное устройство кодирования движущихся изображений имеет такую структуру, как указано выше, увеличение числа режимов направленного предсказания, которые могут выбираться, повышает вероятность того, что направление края совпадает с направлением, указанным режимом предсказания, и, следовательно, может быть повышена эффективность предсказания. Тем не менее, проблема состоит в том, что увеличение числа выбираемых режимов направленного предсказания приводит к увеличению объема кода для информации относительно режимов внутреннего предсказания.
[0009] Настоящее изобретение осуществлено, чтобы решить вышеуказанную проблему, и, следовательно, цель настоящего изобретения заключается в том, чтобы предоставить устройство кодирования движущихся изображений и способ кодирования движущихся изображений, которые могут сократить увеличение объема кода для информации относительно режимов внутреннего предсказания. Другая цель настоящего изобретения заключается в том, чтобы предоставить устройство декодирования движущихся изображений и способ декодирования движущихся изображений, которые применимы к вышеуказанному устройству кодирования движущихся изображений и вышеуказанному способу кодирования движущихся изображений.
СРЕДСТВО ДЛЯ РЕШЕНИЯ ЗАДАЧ
[0010] В соответствии с настоящим изобретением, представлено устройство кодирования изображений, в котором при формировании изображения предсказания цветоразностного сигнала модуль формирования изображений предсказания выполняет процесс внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала посредством использования параметра внутреннего предсказания, который является таким же, как параметр внутреннего предсказания, который модуль формирования изображений предсказания использует при выполнении процесса внутреннего предсказания для подлежащего кодированию целевого блока сигнала яркости, или выполняет процесс внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала посредством применения предсказания по среднему к целевому блоку, подлежащему кодированию, и модуль кодирования переменной длины кодирует c переменной длиной флаг, показывающий то, выполняет ли модуль формирования изображений предсказания процесс внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала посредством использования того же параметра внутреннего предсказания, что используется для сигнала яркости, в качестве параметра внутреннего предсказания, который модуль формирования изображений предсказания использует при выполнении процесса внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала.
ПРЕИМУЩЕСТВА ИЗОБРЕТЕНИЯ
[0011] Поскольку устройство кодирования изображений в соответствии с настоящим изобретением имеет такую структуру, что при формировании изображения предсказания цветоразностного сигнала модуль формирования изображений предсказания выполняет процесс внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала посредством использования параметра внутреннего предсказания, который является таким же, как параметр внутреннего предсказания, который модуль формирования изображений предсказания использует при выполнении процесса внутреннего предсказания для подлежащего кодированию целевого блока сигнала яркости, или выполняет процесс внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала посредством применения предсказания по среднему к целевому блоку, подлежащему кодированию, и модуль кодирования переменной длины кодирует c переменной длиной флаг, показывающий то, выполняет ли модуль формирования изображений предсказания процесс внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала посредством использования того же параметра внутреннего предсказания, что используется для сигнала яркости, в качестве параметра внутреннего предсказания, который модуль формирования изображений предсказания использует при выполнении процесса внутреннего предсказания для подлежащего кодированию целевого блока цветоразностного сигнала, предоставляется преимущество возможности уменьшать объем кода, связанный с режимом внутреннего предсказания каждого из цветоразностных сигналов, без снижения эффективности предсказания.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0012] Фиг. 1 является блок-схемой, показывающей устройство кодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения;
Фиг. 2 является блок-схемой, показывающей внутреннюю структуру модуля 13 кодирования переменной длины устройства кодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения;
Фиг. 3 является блок-схемой последовательности операций способа, показывающей процесс (способ кодирования движущихся изображений), выполняемый устройством кодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения;
Фиг. 4 является пояснительным чертежом, показывающим пример, в котором каждый наибольший блок, подлежащий кодированию, разделяется иерархически во множество целевых блоков, подлежащих кодированию;
Фиг. 5 является пояснительным чертежом, в котором (a) показывает распределение разделенных сегментов, и (b) показывает состояние, в котором режим m(Bn) кодирования назначается каждому сегменту через иерархическое разделение;
i
n
Фиг. 6 является пояснительным чертежом, показывающим пример параметра внутреннего предсказания (режима внутреннего предсказания), который может быть выбран для каждого сегмента P в целевом блоке Bn, подлежащем кодированию;
i
i
i
n
n
n
Фиг. 7 является пояснительным чертежом, показывающим пример пикселов, которые используются при формировании предсказанного значения каждого пиксела в сегменте P в случае l=m=4;
i
n
Фиг. 8 является пояснительным чертежом, показывающим пример уже кодированных соседних сегментов, которые используются для вычисления предсказанного значения параметра внутреннего предсказания сегмента P;
Фиг. 9 является пояснительным чертежом, показывающим пример значений индекса, соответственно, указывающих 17 типов режимов внутреннего предсказания, и векторов направления предсказания 16 типов режимов направленного предсказания, за исключением предсказания по среднему;
Фиг. 10 является блок-схемой, показывающей устройство декодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения;
Фиг. 11 является блок-схемой, показывающей внутреннюю структуру модуля 31 декодирования переменной длины устройства декодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения;
Фиг. 12 является блок-схемой последовательности операций способа, показывающей процесс (способ декодирования движущихся изображений), выполняемый устройством декодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения;
i
i
n
n
Фиг. 13 является пояснительным чертежом, показывающим пример сегмента P сигнала яркости и сегментов P цветоразностных сигналов;
Фиг. 14 является пояснительным чертежом, показывающим изображение предсказания, которое по-прежнему должно фильтроваться, и фильтрованное изображение предсказания; и
Фиг. 15 является пояснительным чертежом, показывающим режимы внутреннего предсказания в случае размера пикселного блока 4x4 для яркости.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[0013] Далее, для того чтобы подробнее пояснить изобретение, предпочтительные варианты осуществления настоящего изобретения описываются со ссылкой на прилагаемые чертежи.
ВАРИАНТ 1 ОСУЩЕСТВЛЕНИЯ
Фиг. 1 является блок-схемой, показывающей устройство кодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения. Ссылаясь на фиг. 1, при приеме видеосигнала, показывающего введенное изображение, модуль 1 разделения на блоки разделяет введенное изображение на блоки (блоки, каждый из которых является единицей предсказания), каждый из которых имеет размер блока кодирования, определенный посредством модуля 2 управления кодированием, и выполняет процесс вывода целевого блока, подлежащего кодированию, который является блоком, который является единицей предсказания. Модуль 1 разделения на блоки составляет модуль разделения на блоки.
[0014] Модуль 2 управления кодированием выполняет процесс определения режима кодирования с наибольшей эффективностью кодирования для целевого блока, подлежащего кодированию, выведенного из модуля 1 разделения на блоки, из числа одного или более выбираемых режимов внутреннего кодирования и одного или более выбираемых режимов взаимного кодирования при определении размера блока кодирования. Модуль 2 управления кодированием также выполняет процесс, когда режим кодирования с наибольшей эффективностью кодирования является режимом внутреннего кодирования, определения параметра внутреннего предсказания, который устройство кодирования движущихся изображений использует при выполнении процесса внутреннего предсказания для целевого блока, подлежащего кодированию, в режиме внутреннего кодирования, а когда режим кодирования с наибольшей эффективностью кодирования является режимом взаимного кодирования, определения параметра взаимного предсказания, который устройство кодирования движущихся изображений использует при выполнении процесса взаимного предсказания для целевого блока, подлежащего кодированию, в режиме взаимного кодирования. Модуль 2 управления кодированием дополнительно выполняет процесс определения параметра кодирования разности предсказания, который модуль управления кодированием предоставляет для модуля 7 преобразования/квантования и модуля 8 обратного квантования/обратного преобразования. Модуль 2 управления кодированием составляет модуль управления кодированием.
[0015] Избирательный переключатель 3 выполняет процесс, когда режим кодирования, определенный посредством модуля 2 управления кодированием, является режимом внутреннего кодирования, вывода целевого блока, подлежащего кодированию, выведенного из модуля 1 разделения на блоки, в модуль 4 внутреннего предсказания, а когда режим кодирования, определенный посредством модуля 2 управления кодированием, является режимом взаимного кодирования, вывода целевого блока, подлежащего кодированию, выведенного из модуля 1 разделения на блоки, в модуль 5 предсказания с компенсацией движения.
[0016] Модуль 4 внутреннего предсказания выполняет процесс выполнения процесса внутреннего предсказания для целевого блока, подлежащего кодированию, выведенного из избирательного переключателя 3, посредством использования параметра внутреннего предсказания, определенного посредством модуля 2 управления кодированием, при обращении к локальному декодированному изображению, сохраненному в запоминающем устройстве 10 для внутреннего предсказания, чтобы формировать изображение внутреннего предсказания (изображение предсказания). Модуль формирования изображений предсказания состоит из избирательного переключателя 3, модуля 4 внутреннего предсказания и запоминающего устройства 10 для внутреннего предсказания.
[0017] Модуль 5 предсказания с компенсацией движения выполняет процесс сравнения целевого блока, подлежащего кодированию, выведенного из избирательного переключателя 3, с локальным декодированным изображением, для которого выполняется процесс фильтрации и которое сохраняется в запоминающем устройстве 12 кадров предсказания с компенсацией движения, чтобы выполнять поиск вектора движения, и формирования изображения взаимного предсказания посредством выполнения процесса взаимного предсказания (процесса предсказания с компенсацией движения) для целевого блока, подлежащего кодированию, посредством использования как вектора движения, так и параметра взаимного предсказания, определенных посредством модуля 2 управления кодированием.
[0018] Модуль 6 вычитания выполняет процесс вычитания изображения внутреннего предсказания, сформированного посредством модуля 4 внутреннего предсказания, или изображения взаимного предсказания, сформированного посредством модуля 5 предсказания с компенсацией движения, из целевого блока, подлежащего кодированию, выведенного из модуля 1 разделения на блоки, чтобы выводить разностный сигнал предсказания (разностное изображение), который является результатом вычитания, в модуль 7 преобразования/квантования. Модуль 7 преобразования/квантования выполняет процесс выполнения процесса ортогонального преобразования (например, DCT (дискретного косинусного преобразования) или процесса ортогонального преобразования, такого как KL-преобразование, в котором основания заранее рассчитываются для конкретной последовательности обучения) для разностного сигнала предсказания, выведенного из модуля 6 вычитания, посредством обращения к параметру кодирования разности предсказания, определенному посредством модуля 2 управления кодированием, чтобы вычислять коэффициенты преобразования, а также квантования коэффициентов преобразования посредством обращения к параметру кодирования разности предсказания и затем вывода сжатых данных, которые являются коэффициентами преобразования, квантованными посредством него (коэффициентами квантования разностного изображения), в модуль 8 обратного квантования/обратного преобразования и модуль 13 кодирования переменной длины. Модуль квантования состоит из модуля 6 вычитания и модуля 7 преобразования/квантования.
[0019] Модуль 8 обратного квантования/обратного преобразования выполняет процесс обратного квантования сжатых данных, выведенных из модуля 7 преобразования/квантования посредством, обращения к параметру кодирования разности предсказания, определенному посредством модуля 2 управления кодированием, а также выполнения процесса обратного ортогонального преобразования для коэффициентов преобразования, которые являются сжатыми данными, обратно квантованными посредством него, посредством обращения к параметру кодирования разности предсказания, чтобы вычислять локальный декодированный разностный сигнал предсказания, соответствующий разностному сигналу предсказания, выведенному из модуля 6 вычитания. Модуль 9 суммирования выполняет процесс суммирования локального декодированного разностного сигнала предсказания, вычисленного посредством модуля 8 обратного квантования/обратного преобразования, и изображения внутреннего предсказания, сформированного посредством модуля 4 внутреннего предсказания, или изображения взаимного предсказания, сформированного посредством модуля 5 предсказания с компенсацией движения, чтобы вычислять локальное декодированное изображение, соответствующее целевому блоку, подлежащему кодированию, выведенному из модуля 1 разделения на блоки.
[0020] Запоминающее устройство 10 для внутреннего предсказания является носителем записи для сохранения локального декодированного изображения, вычисленного посредством модуля 9 суммирования. Модуль 11 контурного фильтра выполняет процесс выполнения предварительно определенного процесса фильтрации для локального декодированного изображения, вычисленного посредством модуля 9 суммирования, чтобы выводить локальное декодированное изображение, для которого выполняется процесс фильтрации. Запоминающее устройство 12 кадров предсказания с компенсацией движения является носителем записи для сохранения локального декодированного изображения, для которого выполняется процесс фильтрации.
[0021] Модуль 13 кодирования переменной длины выполняет процесс кодирования переменной длины сжатых данных, выведенных из модуля 7 преобразования/квантования, выходного сигнала модуля 2 управления кодированием (включающего в себя режим кодирования, параметр внутреннего предсказания или параметр взаимного предсказания и параметр кодирования разности предсказания) и вектора движения, выведенного из модуля 5 предсказания с компенсацией движения (когда режим кодирования является режимом взаимного кодирования), чтобы формировать битовый поток. Когда режим кодирования является режимом внутреннего кодирования, модуль 13 кодирования переменной длины определяет вектор направления предсказания, направление которого является ближайшим к направлению вектора направления предсказания, представленного параметром внутреннего предсказания целевого блока, подлежащего кодированию, определенного посредством модуля 2 управления кодированием, из числа векторов направления предсказания, ассоциированных с множеством направленных предсказаний в процессе внутреннего предсказания, чтобы кодировать с переменной длиной индекс, указывающий указанный характерный вектор направления предсказания, а также кодировать с переменной длиной индекс, указывающий разность между вектором направления предсказания, показанным параметром внутреннего предсказания уже кодированного блока, и характерным вектором направления предсказания, в качестве кодирования переменной длины параметра внутреннего предсказания, определенного посредством модуля 2 управления кодированием. Модуль 13 кодирования переменной длины составляет модуль кодирования переменной длины.
[0022] В примере по фиг. 1, модуль 1 разделения на блоки, модуль 2 управления кодированием, избирательный переключатель 3, модуль 4 внутреннего предсказания, модуль 5 предсказания с компенсацией движения, модуль 6 вычитания, модуль 7 преобразования/квантования, модуль 8 обратного квантования/обратного преобразования, модуль 9 суммирования, запоминающее устройство 10 для внутреннего предсказания, модуль 11 контурного фильтра, запоминающее устройство 12 кадров предсказания с компенсацией движения и модуль 13 кодирования переменной длины, которые являются компонентами устройства кодирования движущихся изображений, могут состоять из элементов аппаратных средств для исключительного использования (например, интегральных схем, в каждой из которых установлен CPU, однокристальных микрокомпьютеров и т.п.), соответственно. В качестве альтернативы, устройство кодирования движущихся изображений может состоять из компьютера, и программа, в которой описываются процессы, выполняемые посредством модуля 1 разделения на блоки, модуля 2 управления кодированием, избирательного переключателя 3, модуля 4 внутреннего предсказания, модуля 5 предсказания с компенсацией движения, модуля 6 вычитания, модуля 7 преобразования/квантования, модуля 8 обратного квантования/обратного преобразования, модуля 9 суммирования, модуля 11 контурного фильтра и модуля 13 кодирования переменной длины, может быть сохранена в запоминающем устройстве компьютера, и CPU компьютера может быть выполнен с возможностью исполнять программу, сохраненную в запоминающем устройстве. Фиг. 3 является блок-схемой последовательности операций способа, показывающей обработку (способ кодирования движущихся изображений), выполняемую устройством кодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения.
[0023] Фиг. 2 является блок-схемой, показывающей внутреннюю структуру модуля 13 кодирования переменной длины устройства кодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения. Модуль 13 кодирования переменной длины имеет модуль 13a кодирования переменной длины параметров внутреннего предсказания в качестве одного из своих компонентов. Модуль 21 вычисления предсказанных значений параметров внутреннего предсказания модуля 13a кодирования переменной длины параметров внутреннего предсказания выполняет процесс вычисления предсказанного значения параметра внутреннего предсказания целевого блока, подлежащего кодированию, который выводится из модуля 1 разделения на блоки, из параметра внутреннего предсказания уже кодированного блока, смежного с целевым блоком, подлежащим кодированию.
[0024] Модуль 22 вычисления индексов преобразования в двоичную форму параметров внутреннего предсказания выполняет процесс определения того, совпадает или нет предсказанное значение, вычисленное посредством модуля 21 вычисления предсказанных значений параметров внутреннего предсказания, с индексом, указывающим характерный вектор направления предсказания, как из вычисленного предсказанного значения, так и из параметра внутреннего предсказания целевого блока, подлежащего кодированию, и когда предсказанное значение совпадает с индексом, вычисления индекса преобразования в двоичную форму параметра внутреннего предсказания, включающего в себя разность между вектором направления предсказания, показанным параметром внутреннего предсказания уже кодированного блока, и характерным вектором направления предсказания, а также флага, показывающего результат определения, а когда предсказанное значение не совпадает с индексом, вычисления индекса преобразования в двоичную форму параметра внутреннего предсказания, включающего в себя индекс, указывающий характерный вектор направления предсказания, и вышеуказанную разность, а также флага, показывающего результат определения. Модуль 23 энтропийного кодирования выполняет процесс выполнения кодирования переменной длины, к примеру, арифметического кодирования для индекса преобразования в двоичную форму параметра внутреннего предсказания, вычисленного посредством модуля 22 вычисления индексов преобразования в двоичную форму параметров внутреннего предсказания, чтобы выводить кодовое слово параметра внутреннего предсказания.
[0025] Фиг. 10 является блок-схемой, показывающей устройство декодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения. Ссылаясь на фиг. 10, модуль 31 декодирования переменной длины выполняет процесс, при приеме битового потока, сформированного устройством кодирования движущихся изображений, декодирования c переменной длиной сжатых данных, режима кодирования, параметра внутреннего предсказания (когда режим кодирования является режимом внутреннего кодирования), параметра взаимного предсказания (когда режим кодирования является режимом взаимного кодирования), параметра кодирования разности предсказания и вектора движения (когда режим кодирования является режимом взаимного кодирования) из битового потока. Когда режим кодирования является режимом внутреннего кодирования, модуль 31 декодирования переменной длины выполняет процесс декодирования переменной длины индекса, указывающего характерный вектор направления предсказания, а также декодирования c переменной длиной индекса, указывающего разность между вектором направления предсказания, показанным параметром внутреннего предсказания уже декодированного блока (блока, соответствующего "уже кодированному блоку" в устройстве кодирования движущихся изображений, показанном на фиг. 1), и характерным вектором направления предсказания, в качестве декодирования переменной длины параметра внутреннего предсказания, чтобы определять параметр внутреннего предсказания как из индекса, указывающего характерный вектор направления предсказания, так и из индекса, указывающего вышеуказанную разность. Модуль 31 декодирования переменной длины составляет модуль декодирования переменной длины.
[0026] Модуль 32 обратного квантования/обратного преобразования выполняет процесс обратного квантования сжатых данных, декодированных c переменной длиной посредством модуля 31 декодирования переменной длины, посредством обращения к параметру кодирования разности предсказания, декодированному с переменной длиной посредством модуля 31 декодирования переменной длины, а также выполнения процесса обратного ортогонального преобразования для коэффициентов преобразования, которые являются сжатыми данными, обратно квантованными посредством него, посредством обращения к параметру кодирования разности предсказания, чтобы вычислять декодированный разностный сигнал предсказания, соответствующий разностному сигналу предсказания, выведенному из модуля 6 вычитания, показанного на фиг. 1. Модуль 32 обратного квантования/обратного преобразования составляет модуль обратного квантования.
[0027] Избирательный переключатель 33 выполняет процесс, когда режим кодирования, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, является режимом внутреннего кодирования, вывода параметра внутреннего предсказания, декодированного c переменной длиной посредством модуля 31 декодирования переменной длины, в модуль 34 внутреннего предсказания, а когда режим кодирования, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, является режимом взаимного кодирования, вывода параметра взаимного предсказания и вектора движения, которые декодируются с переменной длиной посредством модуля 31 декодирования переменной длины, в модуль 35 компенсации движения.
[0028] Модуль 34 внутреннего предсказания выполняет процесс выполнения процесса внутреннего предсказания для целевого блока, подлежащего декодированию, посредством использования параметра внутреннего предсказания, выведенного из избирательного переключателя 33, при обращении к декодированному изображению, сохраненному в запоминающем устройстве 37 для внутреннего предсказания, чтобы формировать изображение внутреннего предсказания (изображение предсказания). Модуль формирования изображений предсказания состоит из избирательного переключателя 33, модуля 34 внутреннего предсказания и запоминающего устройства 37 для внутреннего предсказания.
[0029] Модуль 35 компенсации движения выполняет процесс выполнения процесса взаимного предсказания (процесса предсказания с компенсацией движения) для целевого блока, подлежащего декодированию, посредством использования вектора движения и параметра взаимного предсказания, которые выводятся из избирательного переключателя 33, при обращении к декодированному изображению, для которого выполняется процесс фильтрации и которое сохраняется в запоминающем устройстве 39 кадров предсказания с компенсацией движения, чтобы формировать изображение взаимного предсказания. Модуль 36 суммирования выполняет процесс суммирования декодированного разностного сигнала предсказания, вычисленного посредством модуля 32 обратного квантования/обратного преобразования, и изображения внутреннего предсказания, сформированного посредством модуля 34 внутреннего предсказания, или изображения взаимного предсказания, сформированного посредством модуля 35 компенсации движения, чтобы вычислять декодированное изображение, соответствующее целевому блоку, подлежащему кодированию, выведенному из модуля 1 разделения на блоки, показанного на фиг. 1.
[0030] Запоминающее устройство 37 для внутреннего предсказания является носителем записи для сохранения декодированного изображения, вычисленного посредством модуля 36 суммирования. Модуль 38 контурного фильтра выполняет процесс выполнения предварительно определенного процесса фильтрации для декодированного изображения, вычисленного посредством модуля 36 суммирования, чтобы выводить декодированное изображение, для которого выполняется процесс фильтрации. Запоминающее устройство 39 кадров предсказания с компенсацией движения является носителем записи для сохранения декодированного изображения, для которого выполняется процесс фильтрации.
[0031] В примере по фиг. 10, модуль 31 декодирования переменной длины, модуль 32 обратного квантования/обратного преобразования, избирательный переключатель 33, модуль 34 внутреннего предсказания, модуль 35 компенсации движения, модуль 36 суммирования, запоминающее устройство 37 для внутреннего предсказания, модуль 38 контурного фильтра и запоминающее устройство 39 кадров предсказания с компенсацией движения, которые являются компонентами устройства декодирования движущихся изображений, могут состоять из элементов аппаратных средств для исключительного использования (например, интегральных схем, в каждой из которых установлен CPU, однокристальных микрокомпьютеров и т.п.), соответственно. В качестве альтернативы, устройство декодирования движущихся изображений может состоять из компьютера, и программа, в которой описываются процессы, выполняемые посредством модуля 31 декодирования переменной длины, модуля 32 обратного квантования/обратного преобразования, избирательного переключателя 33, модуля 34 внутреннего предсказания, модуля 35 компенсации движения, модуля 36 суммирования и модуля 38 контурного фильтра, может быть сохранена в запоминающем устройстве компьютера, и CPU компьютера может быть выполнен с возможностью исполнять программу, сохраненную в запоминающем устройстве. Фиг. 12 является блок-схемой последовательности операций способа, показывающей обработку (способ декодирования движущихся изображений), выполняемую устройством декодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения.
[0032] Фиг. 11 является блок-схемой, показывающей внутреннюю структуру модуля 31 декодирования переменной длины устройства декодирования движущихся изображений в соответствии с вариантом 1 осуществления настоящего изобретения. Модуль 31 декодирования переменной длины имеет модуль 31a декодирования переменной длины параметров внутреннего предсказания в качестве одного из своих компонентов. Модуль 41 энтропийного декодирования модуля 31a декодирования переменной длины параметров внутреннего предсказания выполняет процесс декодирования переменной длины индекса преобразования в двоичную форму параметра внутреннего предсказания из кодового слова параметра внутреннего предсказания. Модуль 42 вычисления предсказанных значений параметров внутреннего предсказания выполняет процесс вычисления предсказанного значения параметра внутреннего предсказания целевого блока, подлежащего декодированию, из параметра внутреннего предсказания уже декодированного блока, смежного с целевым блоком, подлежащим декодированию.
[0033] Модуль 43 вычисления индексов параметров внутреннего предсказания выполняет процесс, когда флаг, включенный в индекс преобразования в двоичную форму параметра внутреннего предсказания, декодированный с переменной длиной посредством модуля 41 энтропийного декодирования, показывает, что предсказанное значение совпадает с индексом, указывающим характерный вектор направления предсказания, вычисления параметра внутреннего предсказания из предсказанного значения, вычисленного посредством модуля 42 вычисления предсказанных значений параметров внутреннего предсказания, и значения разности между вектором направления предсказания, показанным параметром внутреннего предсказания уже декодированного блока, включенного в индекс преобразования в двоичную форму параметра внутреннего предсказания, и характерным вектором направления предсказания, а когда флаг показывает, что предсказанное значение не совпадает с индексом, указывающим характерный вектор направления предсказания, вычисления параметра внутреннего предсказания из предсказанного значения, вычисленного посредством модуля 42 вычисления предсказанных значений параметров внутреннего предсказания, индекса, указывающего характерный вектор направления предсказания, включенный в индекс преобразования в двоичную форму параметра внутреннего предсказания, и вышеуказанного значения разности.
[0034] Затем поясняются операции устройства кодирования движущихся изображений и устройства декодирования движущихся изображений. В этом варианте 1 осуществления поясняется случай, в котором устройство кодирования движущихся изображений принимает изображение каждого кадра видео в качестве введенного изображения, выполняет предсказание с компенсацией движения между смежными кадрами и выполняет процесс сжатия с ортогональным преобразованием и квантованием для полученного разностного сигнала предсказания, и после этого выполняет кодирование переменной длины, чтобы формировать битовый поток, и устройство декодирования движущихся изображений декодирует битовый поток, выведенный из устройства кодирования движущихся изображений.
[0035] Устройство кодирования движущихся изображений, показанное на фиг. 1, отличается тем, что устройство кодирования движущихся изображений выполнено с возможностью локальных изменений видеосигнала в пространственном направлении и в направлении времени, разделяет видеосигнал на блоки, имеющие различные размеры, и выполняет внутрикадровое и межкадровое адаптивное кодирование. В общем, видеосигнал имеет характеристику локального варьирования своей сложности в пространстве и времени. Может возникать случай, когда шаблон, имеющий равномерную характеристику сигналов в относительно большой области изображения, такого как изображение неба или изображение стены, либо шаблон, имеющий сложный шаблон текстуры в небольшой области изображения, такого как изображение человека или изображение, включающее в себя мелкозернистую структуру, также сосуществует в определенном видеокадре с точки зрения пространства. Также с точки зрения времени, относительно большая область изображения, такого как изображение неба или изображение стены, имеет небольшое локальное изменение в направлении времени в своем шаблоне, в то время как изображение движущегося человека или объекта имеет большее временное изменение, поскольку его контур имеет перемещение твердого тела и перемещение нетвердого тела относительно времени.
[0036] Хотя в процессе кодирования выполняется процесс формирования разностного сигнала предсказания, имеющего небольшую мощность сигнала и небольшую энтропию, посредством использования временного и пространственного предсказания, тем самым уменьшая совокупный объем кода, объем кода для параметра, используемого для предсказания, может быть уменьшен при условии, что параметр может применяться равномерно к максимально возможно большой области сигнала изображения. С другой стороны, поскольку величина ошибок, возникающих в предсказании, увеличивается, когда идентичный параметр предсказания применяется к большой области изображения в шаблоне сигнала изображения, имеющем большое изменение во времени и пространстве, возрастает объем кода разностного сигнала предсказания. Следовательно, желательно применять идентичный параметр предсказания к области изображения, имеющей большое изменение во времени и пространстве, чтобы уменьшать размер блока для блока, который подвергается процессу предсказания, тем самым увеличивая объем данных для параметра, который используется для предсказания, и уменьшая энергию и энтропию разностного сигнала предсказания.
[0037] В этом варианте 1 осуществления предоставляется структура, с тем чтобы выполнять кодирование, которое адаптировано для таких типичных характеристик видеосигнала, начала процесса предсказания и т.д. от предварительно определенного максимального размера блока сначала, иерархического разделения области видеосигнала на блоки и адаптации процесса предсказания и процесса кодирования для кодирования разности предсказания к каждому из разделенных блоков.
[0038] Видеосигнал, имеющий формат, который должен быть обработан устройством кодирования движущихся изображений по фиг. 1, может быть YUV-сигналом, который состоит из сигнала яркости и двух цветоразностных сигналов, или сигналом цветного видеоизображения в произвольном цветовом пространстве, к примеру, RGB-сигналом, выведенным из датчика цифровых изображений, сигналом монохромного изображения или сигналом инфракрасного изображения, либо произвольным видеосигналом, в котором каждый видеокадр состоит из последовательности цифровых выборок (пикселов) в двух измерениях, горизонтальном и вертикальном. Градация каждого пиксела может быть 8-битовой, 10-битовой или 12-битовой.
[0039] В следующем пояснении, для удобств видеосигнал введенного изображения является YUV-сигналом, если не указано иное. Дополнительно, описывается случай, в котором сигналы, имеющие формат 4:2:0, которые субдискретизируются, обрабатываются в качестве двух цветоразностных компонентов U и V относительно компонента Y сигнала яркости. Дополнительно, единица данных, которая должна быть обработана, которая соответствует каждому кадру видеосигнала, упоминается как "изображение". В этом варианте 1 осуществления, хотя "изображение" поясняется в качестве сигнала видеокадра, для которого выполняется построчное сканирование, "изображение" альтернативно может быть сигналом полевого изображения, который является единицей, которая составляет видеокадр, когда видеосигнал является чересстрочным сигналом.
[0040] Во-первых, поясняется обработка, выполняемая устройством кодирования движущихся изображений, показанного на фиг. 1. Во-первых, модуль 2 управления кодированием определяет размер наибольших блоков, подлежащих кодированию, который используется для кодирования изображения (текущего изображения), которое является целью, которая должна быть кодирована, и верхний предел числа иерархических уровней, на которые разделяется каждый наибольший блок, подлежащий кодированию (этап ST1 по фиг. 3). В качестве способа определения наибольшего размера блока кодирования для наибольших блоков, подлежащих кодированию, например, предусмотрен способ определения идентичного размера для всех изображений согласно разрешению видеосигнала введенного изображения и способ количественного определения изменения сложности локального перемещения видеосигнала введенного изображения в качестве параметра и затем определения небольшого размера для изображения, имеющего большое и интенсивное перемещение, при определении большого размера для изображения, имеющего небольшое перемещение. В качестве способа определения верхнего предела числа разделенных иерархических уровней, например, предусмотрен способ увеличения глубины иерархии, т.е. числа иерархических уровней, чтобы давать возможность получить более точное перемещение, когда видеосигнал введенного изображения имеет большое и интенсивное перемещение, или снижения глубины иерархии, т.е. числа иерархических уровней, когда видеосигнал введенного изображения имеет небольшое перемещение.
[0041] При приеме видеосигнала введенного изображения модуль 1 разделения на блоки разделяет введенное изображение на изображения с наибольшим размером блока кодирования и выводит каждое из изображений, на которые разделяется введенное изображение. Дополнительно, модуль 2 управления кодированием иерархически разделяет каждую из областей изображения наибольшего размера блока кодирования на целевые блоки, подлежащие кодированию, каждый из которых имеет размер блока кодирования, до тех пор пока число иерархических уровней не достигает предварительно определенного верхнего предела числа разделенных иерархических уровней, и определяет режим кодирования для каждого из целевых блоков, подлежащих кодированию (этап ST2).
0
0
n
n
n
n
n
n
[0042] Фиг. 4 является пояснительным чертежом, показывающим пример, в котором каждый наибольший блок, подлежащий кодированию, иерархически разделяется на множество целевых блоков, подлежащих кодированию. Ссылаясь на фиг. 4, каждый наибольший блок, подлежащий кодированию, является целевым блоком, подлежащим кодированию, компонент сигнала яркости которого, который показывается посредством "нулевого иерархического уровня", имеет размер (L, M). Посредством выполнения иерархического разделения, причем этот наибольший блок, подлежащий кодированию, задается как начальная точка, до тех пор, пока глубина иерархии не достигает предварительно определенной глубины, которая задается отдельно согласно структуре дерева квадрантов, могут быть получены целевые блоки, подлежащие кодированию. На глубине n каждый целевой блок, подлежащий кодированию, является областью изображения размера (L, M). В этом примере, хотя M может быть идентичным или отличаться от L, случай L=M показывается на фиг. 4.
n
n
n+1
n+1
n
n
n
n
n
n
[0043] Далее, размер блока кодирования, определенный посредством модуля 2 управления кодированием, задается как размер (L, M) в компоненте сигнала яркости каждого целевого блока, подлежащего кодированию. Чтобы выполнять разделение дерева квадрантов, всегда устанавливается (L, M)=(L/2, M/2). В случае сигнала цветного видеоизображения (формат 4:4:4), в котором все цветовые компоненты имеют идентичное число выборок, к примеру, RGB-сигнала, все цветовые компоненты имеют размер (L, M), в то время как в случае обработки формата 4:2:0, соответствующий цветоразностный компонент имеет размер блока кодирования (L/2, M/2).
[0044] Далее, каждый целевой блок, подлежащий кодированию на n-ном иерархическом уровне, выражается как Bn, и режим кодирования, выбираемый для каждого целевого блока Bn, подлежащего кодированию, выражается как m(Bn). В случае цветового видеосигнала, который состоит из множества цветовых компонентов, режим m(Bn) кодирования может формироваться таким образом, что отдельный режим используется для каждого цветового компонента, или может формироваться таким образом, что общий режим используется для всех цветовых компонентов. Далее, пояснение приводится при условии, что режим кодирования указывает режим для компонента сигнала яркости блока, подлежащего кодированию, имеющего формат 4:2:0 в YUV-сигнале, если не указано иное.
[0045] Режим m(Bn) кодирования может быть одним из одного или более режимов внутреннего кодирования (в общем, называемых "внутренними") и одного или более режимов взаимного кодирования (в общем, называемых "взаимными"), и модуль 2 управления кодированием выбирает, в качестве режима m(Bn) кодирования, режим кодирования с наибольшей эффективностью кодирования для каждого целевого блока Bn, подлежащего кодированию, из числа всех режимов кодирования, доступных в текущем обрабатываемом изображении, или из поднабора этих режимов кодирования.
i
i
i
n
n
n
[0046] Каждый целевой блок Bn, подлежащий кодированию, дополнительно разделяется на одну или более единиц предсказания (сегментов) посредством модуля 1 разделения на блоки, как показано на фиг. 4. Далее, каждый сегмент, принадлежащий целевому блоку Bn, подлежащему кодированию, выражается как P (i показывает номер сегмента на n-ном иерархическом уровне). То, как выполняется разделение на сегменты для каждого целевого блока Bn, подлежащего кодированию, включается в качестве информации в режим m(Bn) кодирования. Хотя процесс предсказания выполняется для каждого из всех сегментов P согласно режиму m(Bn) кодирования, отдельный параметр предсказания может быть выбран для каждого сегмента P.
[0047] Модуль 2 управления кодированием формирует такое состояние разделения на блоки, как показано на фиг. 5, для каждого наибольшего блока, подлежащего кодированию, и затем определяет целевые блоки, подлежащие кодированию. Заштрихованные части, показанные на фиг. 5(a), показывают распределение сегментов, на которые разделяется каждый наибольший блок, подлежащий кодированию, и фиг. 5(b) показывает случай, в котором режимы m(Bn) кодирования, соответственно, назначаются сегментам согласно разделению на иерархические уровни посредством использования графа в виде дерева квадрантов. Каждый узел, заключенный в ?, показанный на фиг. 5(b), представляет собой узел (целевой блок, подлежащий кодированию), которому назначается режим m(Bn) кодирования. Ниже подробно упоминается процесс разделения на иерархические уровни и определения режима кодирования в модуле 2 управления кодированием.
[0048] Когда режим m(Bn) кодирования, определенный посредством модуля 2 управления кодированием, является режимом внутреннего кодирования (в случае m(Bn)∈"внутренний"), избирательный переключатель 3 выводит целевой блок Bn, подлежащий кодированию, выведенный из модуля 1 разделения на блоки, в модуль 4 внутреннего предсказания. Напротив, когда режим m(Bn) кодирования, определенный посредством модуля 2 управления кодированием, является режимом взаимного кодирования (в случае m(Bn)∈"взаимный"), избирательный переключатель выводит целевой блок Bn, подлежащий кодированию, выведенный из модуля 1 разделения на блоки, в модуль 5 предсказания с компенсацией движения.
i
INTRAi
INTRAi
INTRAi
n
n
n
n
[0049] Когда режим m(Bn) кодирования, определенный посредством модуля 2 управления кодированием, является режимом внутреннего кодирования (в случае m(Bn)∈"внутренний"), и модуль 4 внутреннего предсказания принимает целевой блок Bn, подлежащий кодированию, из избирательного переключателя 3 (этап ST3), модуль 4 внутреннего предсказания выполняет процесс внутреннего предсказания для каждого сегмента P в целевом блоке Bn, подлежащем кодированию, посредством использования параметра внутреннего предсказания, определенного посредством модуля 2 управления кодированием, при обращении к локальному декодированному изображению, сохраненному в запоминающем устройстве 10 для внутреннего предсказания, чтобы формировать изображение P внутреннего предсказания (этап ST4). Поскольку устройство декодирования изображений должно формировать изображение внутреннего предсказания, которое является полностью идентичным изображению P внутреннего предсказания, параметр внутреннего предсказания, используемый для формирования изображения P внутреннего предсказания, выводится из модуля 2 управления кодированием в модуль 13 кодирования переменной длины и мультиплексируется в битовый поток. Ниже упоминаются подробности обработки, выполняемой посредством модуля 4 внутреннего предсказания.
i
i
INTERi
INTERi
INTERi
n
n
n
n
n
[0050] Когда режим m(Bn) кодирования, определенный посредством модуля 2 управления кодированием, является режимом взаимного кодирования (в случае m(Bn)∈"взаимный"), и модуль 5 предсказания с компенсацией движения принимает целевой блок Bn, подлежащий кодированию, из избирательного переключателя 3 (этап ST3), модуль 5 предсказания с компенсацией движения сравнивает каждый сегмент P в целевом блоке Bn, подлежащем кодированию, с локальным декодированным изображением, для которого выполняется процесс фильтрации и которое сохраняется в запоминающем устройстве 12 кадров предсказания с компенсацией движения, чтобы выполнять поиск вектора движения, и выполняет процесс взаимного предсказания для каждого сегмента P в целевом блоке Bn, подлежащем кодированию, посредством использования как вектора движения, так и параметра взаимного предсказания, определенных посредством модуля 2 управления кодированием, чтобы формировать изображение P взаимного предсказания (этап ST5). Поскольку устройство декодирования изображений должно формировать изображение взаимного предсказания, которое является полностью идентичным изображению P взаимного предсказания, параметр взаимного предсказания, используемый для формирования изображения P взаимного предсказания, выводится из модуля 2 управления кодированием в модуль 13 кодирования переменной длины и мультиплексируется в битовый поток. Вектор движения, поиск которого осуществляется посредством модуля 5 предсказания с компенсацией движения, также выводится в модуль 13 кодирования переменной длины и мультиплексируется в битовый поток.
INTRAi
INTERi
i
i
n
n
n
n
[0051] При приеме целевого блока Bn, подлежащего кодированию, из модуля 1 разделения на блоки модуль 6 вычитания вычитает изображение P внутреннего предсказания, сформированное посредством модуля 4 внутреннего предсказания, или изображение P взаимного предсказания, сформированное посредством модуля 5 предсказания с компенсацией движения, из каждого сегмента P в целевом блоке Bn, подлежащем кодированию, и выводит разностный сигнал предсказания e, показывающий результат вычитания, в модуль 7 преобразования/квантования (этап ST6).
i
i
n
n
[0052] При приеме разностного сигнала предсказания e из модуля 6 вычитания модуль 7 преобразования/квантования выполняет процесс ортогонального преобразования (например, DCT (дискретное косинусное преобразование) или процесс ортогонального преобразования, такого как KL-преобразование, в котором основания заранее рассчитываются для конкретной последовательности обучения) для разностного сигнала предсказания e посредством обращения к параметру кодирования разности предсказания, определенному посредством модуля 2 управления кодированием, чтобы вычислять коэффициенты преобразования. Модуль 7 преобразования/квантования также квантует коэффициенты преобразования посредством обращения к параметру кодирования разности предсказания и затем выводит сжатые данные, которые являются коэффициентами преобразования, квантованными посредством него, в модуль 8 обратного квантования/обратного преобразования и модуль 13 кодирования переменной длины (этап ST7).
i
n
[0053] При приеме сжатых данных из модуля 7 преобразования/квантования модуль 8 обратного квантования/обратного преобразования обратно квантует сжатые данные посредством обращения к параметру кодирования разности предсказания, определенному посредством модуля 2 управления кодированием. Модуль 8 обратного квантования/обратного преобразования также выполняет процесс обратного ортогонального преобразования (например, обратное DCT или обратное KL-преобразование) для коэффициентов преобразования, которые являются сжатыми данными, обратно квантованными посредством него, посредством обращения к параметру кодирования разности предсказания, чтобы вычислять локальный декодированный разностный сигнал предсказания, соответствующий разностному сигналу предсказания e, выведенному из модуля 6 вычитания (этап ST8).
INTRAi
INTERi
n
n
[0054] При приеме локального декодированного разностного сигнала предсказания из модуля 8 обратного квантования/обратного преобразования модуль 9 суммирования суммирует локальный декодированный разностный сигнал предсказания и изображение P внутреннего предсказания, сформированное посредством модуля 4 внутреннего предсказания, или изображение P взаимного предсказания, сформированное посредством модуля 5 предсказания с компенсацией движения, чтобы вычислять локальное декодированное изображение, соответствующее целевому блоку Bn, подлежащему кодированию, выведенному из модуля 1 разделения на блоки, в качестве локального декодированного изображения сегмента или набора локальных декодированных изображений сегмента (этап ST9). Модуль 9 суммирования выводит локальное декодированное изображение в модуль 11 контурного фильтра при сохранении локального декодированного изображения в запоминающем устройстве 10 для внутреннего предсказания. Это локальное декодированное изображение является сигналом изображения для последующего внутреннего предсказания.
[0055] При приеме локального декодированного изображения из модуля 9 суммирования модуль 11 контурного фильтра выполняет предварительно определенный процесс фильтрации для локального декодированного изображения и сохраняет локальное декодированное изображение, для которого модуль контурного фильтра выполняет процесс фильтрации, в запоминающем устройстве 12 кадров предсказания с компенсацией движения (этап ST10). Процесс фильтрации посредством модуля 11 контурного фильтра может быть выполнен для каждого наибольшего блока, подлежащего кодированию, для введенного локального декодированного изображения, или для каждого блока, подлежащего кодированию, для введенного локального декодированного изображения. В качестве альтернативы, после того, как вводятся локальные декодированные изображения всех макроблоков из одного экрана, процесс фильтрации может быть выполнен одновременно для всех локальных декодированных изображений из одного экрана.
[0056] Когда завершаются процессы этапов ST3-ST9 для всех целевых блоков Bn, подлежащих кодированию (этапы ST11 и ST12), модуль 13 кодирования переменной длины кодирует c переменной длиной сжатые данные, выведенные из модуля 7 преобразования/квантования, режим m(Bn) кодирования, выведенный из модуля 2 управления кодированием, параметр внутреннего предсказания (когда режим кодирования является режимом внутреннего кодирования), или параметр взаимного предсказания (когда режим кодирования является режимом взаимного кодирования), выведенный из модуля 2 управления кодированием, и вектор движения, выведенный из модуля 5 предсказания с компенсацией движения (когда режим кодирования является режимом взаимного кодирования), чтобы формировать битовый поток, показывающий кодированные результаты этих данных (этап ST13). Ниже упомянуты подробности обработки, выполняемой посредством модуля 13 кодирования переменной длины.
i
n
[0057] Затем подробнее поясняется обработка, выполняемая посредством модуля 4 внутреннего предсказания. Фиг. 6 является пояснительным чертежом, показывающим пример параметра внутреннего предсказания (режима внутреннего предсказания), который может быть выбран для каждого сегмента P в целевом блоке Bn, подлежащем кодированию. На фиг. 6 показаны режимы внутреннего предсказания и векторы направления предсказания, представленные посредством каждого из режимов внутреннего предсказания. В примере по фиг. 6, согласно расчетам относительный угол между векторами направления предсказания становится небольшим с увеличением числа выбираемых режимов внутреннего предсказания.
i
i
INTRAi
i
n
n
n
n
[0058] Модуль 4 внутреннего предсказания выполняет процесс внутреннего предсказания для каждого сегмента P посредством обращения к параметру внутреннего предсказания сегмента P, чтобы формировать изображение P внутреннего предсказания, как упомянуто выше. Далее поясняется внутренний процесс формирования сигнала внутреннего предсказания для сигнала яркости на основе параметра внутреннего предсказания (режима внутреннего предсказания) для сигнала яркости одного сегмента P.
i
i
i
i
i
i
i
i
i
i
i
n
n
n
n
n
n
n
n
n
n
n
[0059] Предполагается, что размер сегмента P составляет lxm пикселов. Фиг. 7 является пояснительным чертежом, показывающим пример пикселов, которые используются при формировании предсказанного значения каждого пиксела в сегменте P в случае l=m=4. Хотя (2×l+1) пикселов в уже кодированном верхнем сегменте, который является смежным с сегментом P, и (2×m) пикселов в уже кодированном левом сегменте, который является смежным с сегментом P, задаются как пикселы, используемые для предсказания в примере по фиг. 7, для предсказания может использоваться меньшее число пикселов, чем пикселы, показанные на фиг. 7. Хотя одна строка или столбец пикселов, которые являются смежными с сегментом P, используется для предсказания в примере по фиг. 7, для предсказания могут использоваться две строки или столбца пикселов либо три или более строк или столбцов пикселов.
i
i
i
p
i
n
n
n
n
[0060] Когда значение индекса, указывающее режим внутреннего предсказания для сегмента P, равно 2 (предсказание по среднему), модуль внутреннего предсказания формирует изображение предсказания посредством использования среднего смежных пикселов в верхнем сегменте и смежных пикселов в левом сегменте в качестве предсказанного значения каждого пиксела в сегменте P. Когда значение индекса, указывающее режим внутреннего предсказания, отличается от 2 (предсказание по среднему), модуль внутреннего предсказания формирует предсказанное значение каждого пиксела в сегменте P на основе вектора направления предсказания х=(dx, dy), представленного посредством значения индекса. Когда относительные координаты в сегменте P (верхний левый пиксел сегмента задается как точка начала) каждого пиксела (целевого пиксела предсказания), для которого формируется предсказанное значение, выражаются как (x, y), позиция опорного пиксела, который используется для предсказания, является точкой пересечения, в которой следующий L и одна из линий смежных пикселов пересекают друг друга.
i
INTRAi
INTRAi
n
n
n
[0061] Когда опорный пиксел находится в целочисленнопикселной позиции, значение соответствующего целочисленного пиксела определяется в качестве предсказанного значения целевого пиксела предсказания, тогда как когда опорный пиксел не находится в целочисленнопикселной позиции, значение интерполяционного пиксела, сформированного из целочисленных пикселов, которые являются смежными с опорным пикселом, определяется в качестве предсказанного значения целевого пиксела предсказания. В примере по фиг. 7, поскольку опорный пиксел не находится в целочисленнопикселной позиции, среднее значений двух горизонтальных пикселов, которые являются смежными с опорным пикселом, определяется в качестве предсказанного значения целевого пиксела предсказания. Модуль внутреннего предсказания может использовать не только смежные два пиксела, но также и один или более смежных пикселов, чтобы формировать интерполяционный пиксел и определять значение этого интерполяционного пиксела в качестве предсказанного значения. Согласно идентичной процедуре, модуль внутреннего предсказания формирует пикселы предсказания для всех пикселов сигнала яркости в сегменте P и выводит изображение P внутреннего предсказания. Параметр внутреннего предсказания, используемый для формирования изображения P внутреннего предсказания, выводится в модуль 13 кодирования переменной длины, чтобы мультиплексировать параметр внутреннего предсказания в битовый поток.
i
n
[0062] Модуль внутреннего предсказания также выполняет внутренний процесс на основе параметра внутреннего предсказания (режима внутреннего предсказания) для каждого из цветоразностных сигналов сегмента P согласно процедуре, идентичной процедуре, согласно которой модуль внутреннего предсказания выполняет внутренний процесс для сигнала яркости, и выводит параметр внутреннего предсказания, используемый для формирования изображения внутреннего предсказания, в модуль 13 кодирования переменной длины.
i
i
i
i
i
n
n
n
n
n
[0063] Затем подробнее поясняется обработка, выполняемая посредством модуля 13 кодирования переменной длины. При кодировании переменной длины параметра внутреннего предсказания модуль 13 кодирования переменной длины вычисляет предсказанное значение параметра внутреннего предсказания сегмента P, который является целью, которая должна быть кодирована, на основе параметров внутреннего предсказания уже кодированных сегментов в окружении сегмента P и затем выполняет кодирование с предсказанием посредством использования предсказанного значения. Более конкретно, модуль 21 вычисления предсказанных значений параметров внутреннего предсказания модуля 13a кодирования переменной длины параметров внутреннего предсказания, который составляет часть модуля 13 кодирования переменной длины, вычисляет предсказанное значение параметра внутреннего предсказания сегмента P, который является целью, которая должна быть кодирована, на основе параметров внутреннего предсказания уже кодированных соседних сегментов. Фиг. 8 является пояснительным чертежом, показывающим пример уже кодированных соседних сегментов, которые используются для вычисления предсказанного значения параметра внутреннего предсказания сегмента P. В примере по фиг. 8, параметры внутреннего предсказания сегментов на левой стороне (A), верхней стороне (B), верхней правой стороне (C) и верхней левой стороне (D) сегмента P используются для вычисления предсказанного значения.
[0064] Процесс вычисления предсказанного значения, который выполняется посредством модуля 21 вычисления предсказанных значений параметров внутреннего предсказания, поясняется посредством рассмотрения в качестве примера случая, в котором предоставляются 17 типов режимов внутреннего предсказания, как показано на фиг. 6. В примере по фиг. 6, 17 типов режимов внутреннего предсказания состоят из режима предсказания по среднему и 16 типов режимов направленного предсказания. Фиг. 9 является пояснительным чертежом, показывающим пример значений индекса, соответственно, указывающих 17 типов режимов внутреннего предсказания, и векторов направления предсказания 16 типов режимов направленного предсказания, за исключением предсказания по среднему. Предполагается, что характерные векторы направления предсказания, соответственно, показывающие характерные направления, предварительно определяются из числа 16 типов векторов направления предсказания. Нижеприведенное пояснение приводится посредством рассмотрения в качестве примера случая предварительного определения векторов направления предсказания в девяти направлениях "0"-"8", показанных на фиг. 9, в качестве характерных векторов направления предсказания.
[0065] Модуль 21 вычисления предсказанных значений параметров внутреннего предсказания вычисляет характерный индекс направления предсказания из режимов внутреннего предсказания уже кодированных соседних сегментов, которые используются для вычисления предсказанного значения. Характерный индекс направления предсказания, указывающий каждый режим направленного предсказания, является индексом, указывающим характерный вектор направления предсказания, имеющий наименьший относительный угол относительно вектора направления предсказания, представленного посредством режима направленного предсказания. Более конкретно, характерный индекс направления предсказания, указывающий каждый режим направленного предсказания, является значением индекса, указывающим характерный вектор направления предсказания, направление которого является ближайшим к вектору направления предсказания, показанному посредством режима направленного предсказания. Характерный индекс направления предсказания режима предсказания по среднему является значением индекса, указывающим себя (т.е. режим предсказания по среднему). Фиг. 9 показывает характерные индексы направления предсказания, указывающие 17 типов режимов внутреннего предсказания, соответственно. Помимо этого, различные разностные индексы направления предсказания назначаются индексам режимов внутреннего предсказания, имеющим идентичный характерный индекс направления предсказания.
i
i
A
B
C
D
p
A
B
C
D
p
i
i
p
p
p
n
n
n
n
[0066] Затем поясняется процесс вычисления предсказанного значения параметра внутреннего предсказания сегмента P, который является целью, которая должна быть кодирована, на основе характерных индексов направления предсказания, соответственно, указывающих режимы внутреннего предсказания уже кодированных соседних сегментов. Например, когда соседние сегменты, используемые для вычисления предсказанного значения, являются сегментами на левой стороне (A), верхней стороне (B), верхней правой стороне (C) и верхней левой стороне (D) сегмента P, статистическое значение, которое предварительно определяется из числа статистических значений, включающих в себя моду, минимум и медиану m, m, m и m, определяется в качестве предсказанного значения pm, при этом характерные индексы направления предсказания сегментов A, B, C и D выражаются как m, m, m и m, соответственно. В качестве альтернативы, предсказанное значение определяется в зависимости от направления вектора направления предсказания соседнего сегмента. Например, когда направление вектора направления предсказания сегмента C представляет собой влево вниз по диагонали (когда индекс режима внутреннего предсказания равняется 8, 10 или 16 в примере по фиг. 9), характерный индекс направления предсказания (8 в примере по фиг. 9) характерного вектора направления предсказания, направление которого представляет собой влево вниз по диагонали, определяется в качестве предсказанного значения pm сегмента P, поскольку существует высокая вероятность того, что направление вектора направления предсказания сегмента P также представляет собой влево вниз по диагонали с точки зрения непрерывности края. В качестве альтернативы, характерный индекс направления предсказания одного сегмента, который предварительно определяется из числа сегментов A, B, C и D, может быть определен в качестве предсказанного значения pm. В качестве альтернативы, вместо использования характерных индексов направления предсказания соседних сегментов, предварительно определенный характерный индекс направления предсказания (например, индекс, указывающий режим предсказания по среднему) может быть определен в качестве предсказанного значения pm. Вычисленное предсказанное значение pm затем выводится в модуль 22 вычисления индексов преобразования в двоичную форму параметров внутреннего предсказания.
p
i
p
p
n
[0067] Модуль 22 вычисления индексов преобразования в двоичную форму параметров внутреннего предсказания принимает как параметр внутреннего предсказания (индекс в режиме внутреннего предсказания) m сегмента P, который является целью, которая должна быть кодирована, так и предсказанное значение pm и вычисляет индекс dm преобразования в двоичную форму параметра внутреннего предсказания. Далее поясняется способ вычисления индекса преобразования в двоичную форму параметра внутреннего предсказания.
p
p
[0068] Характерный индекс направления предсказания, указывающий режим внутреннего предсказания m, выражается как rm.
где m является числом характерных индексов направления предсказания, и m=9 и n=3 в примере по фиг. 9.
p
p
p
[0069] Затем, модуль кодирования переменной длины дополнительно выполняет процесс для вышеуказанного индекса dm преобразования в двоичную форму параметра внутреннего предсказания согласно уравнению, показанному ниже, в котором разностный индекс направления предсказания, указывающий режим внутреннего предсказания m, выражается как dr.
,
где l является числом режимов внутреннего предсказания, которые имеют идентичный характерный индекс направления предсказания. В примере по фиг. 9, когда режим внутреннего предсказания является предсказанием по среднему, l=1 и k=0, а когда режим внутреннего предсказания отличается от предсказания по среднему, l=2 и k=1.
p
p
p
p
p
p
p
p
p
p
p
[0070] Первый бит индекса dm преобразования в двоичную форму параметра внутреннего предсказания, который определяется посредством использования вышеуказанного способа вычисления, является флаговым битом, показывающим то, совпадает или нет характерный индекс rm направления предсказания, указывающий режим внутреннего предсказания, с предсказанным значением pm (в вышеуказанном вычислительном уравнении, когда они совпадают друг с другом, "0" предоставляется в качестве флагового бита; в противном случае, т.е. когда они не совпадают друг с другом, "1" предоставляется в качестве флагового бита). Когда характерный индекс rm направления предсказания, указывающий режим внутреннего предсказания, совпадает с предсказанным значением pm, 2-ой-(k+1)-ый биты индекса dm преобразования в двоичную форму параметра внутреннего предсказания показывают значение разностного индекса направления предсказания. Напротив, когда характерный индекс rm направления предсказания, указывающий режим внутреннего предсказания, не совпадает с предсказанным значением pm, 2-ой-(n+1)-вый биты индекса dm преобразования в двоичную форму параметра внутреннего предсказания показывают значение характерного индекса направления предсказания, и (n+2)-ый-(n+k+1)-вый биты индекса dm преобразования в двоичную форму параметра внутреннего предсказания показывают значение разностного индекса направления предсказания. Индекс dm преобразования в двоичную форму параметра внутреннего предсказания, вычисленный посредством вышеуказанного процесса, выводится в модуль 23 энтропийного кодирования.
p
p
[0071] Модуль 23 энтропийного кодирования выполняет кодирование методом Хаффмана, к примеру, арифметическое кодирование для индекса dm преобразования в двоичную форму параметра внутреннего предсказания, выведенного из модуля 22 вычисления индексов преобразования в двоичную форму параметров внутреннего предсказания, для каждого характерного индекса rm направления предсказания и для каждого разностного индекса направления предсказания при изменении контекста согласно соответствующим вероятностным моделям. Кодовое слово параметра внутреннего предсказания, которое является кодированным результатом, мультиплексируется в битовый поток посредством модуля мультиплексирования битового потока (не показан) модуля 13 кодирования переменной длины.
[0072] При кодировании параметра внутреннего предсказания, модуль 13 кодирования переменной длины устройства кодирования движущихся изображений, показанный на фиг. 1, выбирает характерный вектор направления предсказания (характерный вектор направления предсказания) из числа векторов направления предсказания множества направленных предсказаний, выражает параметр внутреннего предсказания посредством использования индекса, указывающего характерный вектор направления предсказания (характерного индекса направления предсказания), и индекса, указывающего разность между вектором направления предсказания и характерным вектором направления предсказания (разностного индекса направления предсказания), и выполняет кодирование методом Хаффмана, к примеру, арифметическое кодирование для каждого характерного индекса направления предсказания и для каждого разностного индекса направления предсказания согласно соответствующим вероятностным моделям. Следовательно, устройство кодирования движущихся изображений может кодировать параметр внутреннего предсказания с помощью уменьшенного объема кода.
[0073] Далее детально поясняется обработка, выполняемая устройством декодирования движущихся изображений, показанного на фиг. 10. При приеме битового потока, сформированного устройством кодирования движущихся изображений, показанного на фиг. 1, модуль 31 декодирования переменной длины выполняет процесс декодирования переменной длины для битового потока (этап ST21 по фиг. 12) и декодирует информацию, имеющую размер в один или более кадров, на основе последовательности, причем каждая последовательность состоит из одного или более кадров изображений, либо на основе изображения.
[0074] Более конкретно, модуль 31 декодирования переменной длины определяет наибольший размер блока кодирования и верхний предел числа разделенных иерархических уровней, которые определяются посредством модуля 2 управления кодированием устройства кодирования движущихся изображений, показанного на фиг. 1, согласно процедуре, идентичной процедуре, согласно которой работает устройство кодирования движущихся изображений (этап ST22). Например, когда наибольший размер блока кодирования определяется согласно разрешению видеосигнала, модуль декодирования переменной длины определяет наибольший размер блока кодирования на основе декодированной информации размера кадра и согласно процедуре, идентичной процедуре, согласно которой работает устройство кодирования движущихся изображений. Когда наибольший размер блока кодирования и верхний предел числа разделенных иерархических уровней мультиплексируются в битовый поток устройством кодирования движущихся изображений, модуль декодирования переменной длины использует значения, декодированные из битового потока. Устройство кодирования движущихся изображений мультиплексирует как режим кодирования, который устройство кодирования движущихся изображений задает для каждого из множества целевых блоков, подлежащих кодированию, которые устройство кодирования движущихся изображений получает посредством выполнения иерархического разделения каждого наибольшего блока, подлежащего кодированию, причем этот наибольший блок, подлежащий кодированию, задается как начальная точка, так и сжатые данные, которые устройство кодирования движущихся изображений получает посредством выполнения преобразования и квантования в битовый поток, как показано на фиг. 4. Модуль 31 декодирования переменной длины, который принимает этот битовый поток, декодирует состояние разделения каждого определенного наибольшего блока, подлежащего кодированию, который включается в режим кодирования. Модуль декодирования переменной длины иерархически определяет целевые блоки, которые должны быть декодированы (т.е. блоки, соответствующие "целевым блокам, подлежащим кодированию", которые обрабатываются устройством кодирования движущихся изображений, показанного на фиг. 1), на основе декодированного состояния разделения (этап ST23).
[0075] Модуль 31 декодирования переменной длины затем декодирует режим кодирования, назначаемый каждому целевому блоку, подлежащему кодированию. Модуль декодирования переменной длины разделяет целевой блок, подлежащий кодированию, на одну или более единиц предсказания на основе информации, включенной в декодированный режим кодирования, и декодирует параметр предсказания, назначаемый каждой из одной или более единиц предсказания (этап ST24).
i
n
[0076] Когда режим кодирования, назначаемый целевому блоку, подлежащему декодированию (целевому блоку, подлежащему кодированию), является режимом внутреннего кодирования, модуль 31 декодирования переменной длины декодирует параметр внутреннего предсказания каждого из одного или более сегментов, которые включаются в целевой блок, подлежащий декодированию (целевой блок, подлежащий кодированию), и каждый из которых является единицей предсказания. При декодировании параметра внутреннего предсказания модуль декодирования переменной длины вычисляет предсказанное значение параметра внутреннего предсказания сегмента P, который является целью, которая должна быть декодирована, согласно процедуре, идентичной процедуре, согласно которой работает устройство кодирования движущихся изображений, а также на основе параметров внутреннего предсказания соседних декодированных сегментов, и декодирует параметр внутреннего предсказания посредством использования предсказанного значения.
[0077] Более конкретно, модуль 41 энтропийного декодирования в модуле 31a декодирования переменной длины параметров внутреннего предсказания, который составляет часть модуля 31 декодирования переменной длины, принимает кодовое слово параметра внутреннего предсказания, включенное в битовый поток, и декодирует c переменной длиной индекс преобразования в двоичную форму параметра внутреннего предсказания из кодового слова параметра внутреннего предсказания. Модуль 42 вычисления предсказанных значений параметров внутреннего предсказания вычисляет предсказанное значение параметра внутреннего предсказания целевого блока, подлежащего декодированию, из параметров внутреннего предсказания уже декодированных блоков, которые являются смежными с целевым блоком, подлежащим декодированию, согласно процедуре, идентичной процедуре, согласно которой работает модуль 21 вычисления предсказанных значений параметров внутреннего предсказания устройства кодирования движущихся изображений.
[0078] Модуль 43 вычисления индексов параметров внутреннего предсказания вычисляет параметр внутреннего предсказания как из индекса преобразования в двоичную форму параметра внутреннего предсказания, декодированного c переменной длиной посредством модуля 41 энтропийного декодирования, так и из предсказанного значения, вычисленного посредством модуля 42 вычисления предсказанных значений параметров внутреннего предсказания. Далее поясняется способ вычисления параметра внутреннего предсказания.
p
p
p
p
p
p
p
p
p
[0079] Модуль 43 вычисления индексов параметров внутреннего предсказания вычисляет характерный индекс направления предсказания и разностный индекс направления предсказания, чтобы вычислять индекс параметра внутреннего предсказания. Индекс преобразования в двоичную форму параметра внутреннего предсказания выражается как dm. Когда первый бит индекса dm преобразования в двоичную форму параметра внутреннего предсказания равняется "0", предсказанное значение pm задается как значение rm характерного индекса направления предсказания. Напротив, когда первый бит индекса dm преобразования в двоичную форму параметра внутреннего предсказания равняется "1", модуль вычисления индексов параметров внутреннего предсказания затем декодирует 2-ой-(k+1)-вый биты индекса dm преобразования в двоичную форму параметра внутреннего предсказания и вычисляет значение rm характерного индекса направления предсказания для значения RM, которое модуль вычисления индексов параметров внутреннего предсказания получает посредством декодирования 2-ого-(n+1)-вого битов индекса dm преобразования в двоичную форму параметра внутреннего предсказания, согласно следующему уравнению.
p
p
p
p
[0080] Затем, когда первый бит индекса dm преобразования в двоичную форму параметра внутреннего предсказания равняется "0", модуль 43 вычисления индексов параметров внутреннего предсказания декодирует 2-ой-(k+1)-вый биты индекса dm преобразования в двоичную форму параметра внутреннего предсказания; в противном случае, т.е. когда первый бит равняется "1", модуль вычисления индексов параметров внутреннего предсказания декодирует (n+2)-ой-(n+k+1)-вый биты индекса dm преобразования в двоичную форму параметра внутреннего предсказания и задает декодированный результат в качестве разностного индекса dr направления предсказания.
[0081] Устройство декодирования движущихся изображений декодирует индекс параметра внутреннего предсказания на основе характерного индекса направления предсказания и разностного индекса направления предсказания, аналогично устройству кодирования движущихся изображений. Когда режим кодирования, назначаемый подлежащему кодированию целевому блоку, является режимом взаимного кодирования, модуль 31 декодирования переменной длины декодирует параметр взаимного предсказания для каждого из одного или более сегментов, которые включаются в целевой блок, подлежащий декодированию (целевой блок, подлежащий кодированию), и каждый из которых является единицей предсказания. Модуль 31 декодирования переменной длины дополнительно разделяет каждый из одного или более сегментов, который является единицей предсказания, на один или более сегментов, каждый из которых является единицей обработки преобразования, на основе информации размера блока преобразования, включенной в параметр кодирования разности предсказания, и декодирует сжатые данные (преобразованные и квантованные коэффициенты преобразования) для каждого сегмента, который является единицей обработки преобразования (этап ST24).
[0082] Когда режим m(Bn) кодирования, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, является режимом внутреннего кодирования (в случае m(Bn)∈"внутренний"), избирательный переключатель 33 выводит параметр внутреннего предсказания, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, в модуль 34 внутреннего предсказания. Напротив, когда режим m(Bn) кодирования, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, является режимом взаимного кодирования (в случае m(Bn)∈"взаимный"), избирательный переключатель выводит параметр взаимного предсказания и вектор движения, которые декодируются с переменной длиной посредством модуля 31 декодирования переменной длины, в модуль 35 компенсации движения.
i
INTRAi
n
n
[0083] Когда режим m(Bn) кодирования, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, является режимом внутреннего кодирования (в случае m(Bn)∈"внутренний"), и модуль 34 внутреннего предсказания принимает параметр внутреннего предсказания из избирательного переключателя 33 (этап ST25), модуль 34 внутреннего предсказания выполняет процесс внутреннего предсказания для каждого сегмента P в целевом блоке Bn, подлежащем декодированию, посредством использования параметра внутреннего предсказания, выведенного из избирательного переключателя 33, при обращении к локальному декодированному изображению, сохраненному в запоминающем устройстве 37 для внутреннего предсказания, согласно процедуре, идентичной процедуре, согласно которой работает модуль 4 внутреннего предсказания, показанный на фиг. 1, чтобы формировать изображение P внутреннего предсказания (этап ST26).
INTERi
n
[0084] Когда режим m(Bn) кодирования, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, является режимом взаимного кодирования (в случае m(Bn)∈"взаимный"), и модуль 35 компенсации движения принимает целевой блок Bn, подлежащий кодированию, из избирательного переключателя 33 (этап ST25), модуль 35 компенсации движения выполняет процесс взаимного предсказания для целевого блока, подлежащего декодированию, посредством использования вектора движения и параметра взаимного предсказания, которые выводятся из избирательного переключателя 33, при обращении к декодированному изображению, которое сохраняется в запоминающем устройстве 39 кадров предсказания с компенсацией движения и для которого выполняется процесс фильтрации для того, чтобы формировать изображение P взаимного предсказания (этап ST27).
[0085] При приеме сжатых данных и параметра кодирования разности предсказания из модуля 31 декодирования переменной длины, модуль 32 обратного квантования/обратного преобразования обратно квантует сжатые данные посредством обращения к параметру кодирования разности предсказания согласно процедуре, идентичной процедуре, согласно которой работает модуль 8 обратного квантования/обратного преобразования, показанный на фиг. 1, а также выполняет процесс обратного ортогонального преобразования для коэффициентов преобразования, которые являются сжатыми данными, которые модуль обратного квантования/обратного преобразования обратно квантует посредством обращения к параметру кодирования разности предсказания, чтобы вычислять декодированный разностный сигнал предсказания, соответствующий разностному сигналу предсказания, выведенному из модуля 6 вычитания, показанного на фиг. 1 (этап ST28).
INTRAi
INTERi
n
n
[0086] Модуль 36 суммирования суммирует декодированный разностный сигнал предсказания, вычисленный посредством модуля 32 обратного квантования/обратного преобразования, и изображение P внутреннего предсказания, сформированное посредством модуля 34 внутреннего предсказания, или изображение P взаимного предсказания, сформированное посредством модуля 35 компенсации движения, чтобы формировать и выводить декодированное изображение, в качестве набора из одного или более декодированных изображений сегмента, включенных в целевой блок, подлежащий декодированию, в модуль 38 контурного фильтра, а также сохраняет декодированное изображение в запоминающем устройстве 37 для внутреннего предсказания (этап ST29). Это декодированное изображение является сигналом изображения для последующего внутреннего предсказания.
[0087] При завершении процессов этапов ST23-ST29 для всех целевых блоков Bn, которые должны быть декодированы (этап ST30), модуль 11 контурного фильтра выполняет предварительно определенный процесс фильтрации для декодированного изображения, выведенного из модуля 36 суммирования, и сохраняет декодированное изображение, для которого модуль контурного фильтра выполняет процесс фильтрации, в запоминающем устройстве 39 кадров предсказания с компенсацией движения (этап ST31). Это декодированное изображение является опорным изображением для предсказания с компенсацией движения, а также является воспроизведенным изображением.
[0088] При декодировании параметра внутреннего предсказания, модуль 31 декодирования переменной длины устройства декодирования движущихся изображений, показанный на фиг. 10, может корректно декодировать параметр внутреннего предсказания, который кодирован с помощью сокращенного объема кода, посредством энтропийного декодирования как индекса, указывающего характерный вектор направления предсказания (характерный вектор направления предсказания), который выбирается из числа векторов направления предсказания множества направленных предсказаний, так и индекса (разностного индекса направления предсказания), указывающего разность между вектором направления предсказания и характерным вектором направления предсказания, посредством использования арифметического декодирования согласно соответствующим вероятностным моделям и т.п.
[0089] Как можно видеть из вышеприведенного описания, поскольку модуль 13 кодирования переменной длины устройства кодирования движущихся изображений в соответствии с этим вариантом 1 осуществления имеет такую структуру, что он определяет вектор направления предсказания (характерный вектор направления предсказания), направление которого является ближайшим к направлению вектора направления предсказания, представленного параметром внутреннего предсказания уже кодированных блоков, которые являются смежными с целевым блоком, подлежащим кодированию, выведенным из модуля 1 разделения на блоки, и кодирует c переменной длиной индекс, указывающий характерный вектор направления предсказания, а также кодирует c переменной длиной индекс, указывающий разность между вектором направления предсказания, показанным параметром внутреннего предсказания уже кодированного блока, и характерным вектором направления предсказания, в качестве кодирования переменной длины параметра внутреннего предсказания, определенного посредством модуля 2 управления кодированием, предоставляется преимущество возможности не допускать увеличения объема кода по информации относительно режимов внутреннего предсказания даже в результате увеличения числа выбираемых режимов направленного предсказания.
[0090] Дополнительно, поскольку модуль 31 декодирования переменной длины устройства декодирования движущихся изображений согласно этому варианту 1 осуществления имеет такую структуру, что он декодирует c переменной длиной индекс, указывающий характерный вектор направления предсказания, а также декодирует c переменной длиной индекс, указывающий разность между вектором направления предсказания, показанным параметром внутреннего предсказания уже декодированного блока, и характерным вектором направления предсказания, в качестве декодирования переменной длины параметра внутреннего предсказания, и определяет параметр внутреннего предсказания из индекса, указывающего характерный вектор направления предсказания, и индекса, указывающего вышеуказанную разность, предоставляется преимущество возможности корректно декодировать битовый поток, который кодирован с помощью уменьшенного объема кода для параметра внутреннего предсказания, без снижения эффективности предсказания.
[0091] ВАРИАНТ 2 ОСУЩЕСТВЛЕНИЯ
В вышеуказанном варианте 1 осуществления модуль 4 внутреннего предсказания устройства кодирования движущихся изображений обрабатывает как сигнал яркости, так и цветоразностные сигналы в видеосигнале аналогичным образом и выполняет процесс внутреннего предсказания для каждого подлежащего кодированию целевого блока сигнала яркости и процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов отдельно и независимо. С этой целью, модуль 13 кодирования переменной длины по отдельности кодирует c переменной длиной параметр внутреннего предсказания, который используется, когда устройство кодирования движущихся изображений выполняет процесс внутреннего предсказания для каждого подлежащего кодированию целевого блока сигнала яркости, и параметр внутреннего предсказания, который используется, когда устройство кодирования движущихся изображений выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов, чтобы мультиплексировать их в битовый поток. В этом случае, например, когда характеристики каждого подлежащего кодированию целевого блока сигнала яркости являются аналогичными характеристикам соответствующего целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов, и параметры внутреннего предсказания, которые используются, когда устройство кодирования движущихся изображений выполняет процессы внутреннего предсказания для обоих целевых блоков, подлежащих кодированию, являются практически идентичными между собой, один из параметров внутреннего предсказания, которые мультиплексируются в битовый поток, является избыточным.
[0092] Чтобы исключать эту избыточность, в этом варианте 2 осуществления поясняется пример, в котором при формировании изображения предсказания каждого из цветоразностных сигналов, если характеристики подлежащего кодированию целевого блока сигнала яркости являются аналогичными характеристикам соответствующего целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов, например, модуль 4 внутреннего предсказания выполняет процесс внутреннего предсказания для целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования того же параметра внутреннего предсказания, что используется для выполнения процесса внутреннего предсказания для подлежащего кодированию целевого блока сигнала яркости, тем самым исключая параметр внутреннего предсказания, который должен быть мультиплексирован в битовый поток.
i
i
i
i
n
n
n
n
[0093] Конкретно, модуль внутреннего предсказания выполняет процесс внутреннего предсказания следующим образом. Фиг. 13 является пояснительным чертежом, показывающим пример сегмента P сигнала яркости и сегментов P цветоразностных сигналов. Когда сигнал (Y) яркости в сегменте P имеет край, как показано на фиг. 13(a), модуль 4 внутреннего предсказания устройства кодирования движущихся изображений использует такую характеристику, что аналогичный край также существует в каждом из цветоразностных сигналов (Cb и Cr) во многих случаях, чтобы применять параметр внутреннего предсказания, применяемый к сигналу яркости, в качестве параметра внутреннего предсказания каждого из цветоразностных сигналов как есть, чтобы формировать изображение внутреннего предсказания. Тем не менее, возникает случай, в котором когда сигнал (Y) яркости в сегменте P имеет край, но он представляет собой край шкалы полутонов, как показано на фиг. 13(b), цветоразностные сигналы (Cb и Cr) не имеют края. В таком случае, модуль внутреннего предсказания применяет предсказание по среднему к сегментам без применения параметра внутреннего предсказания сигнала яркости к сегментам, чтобы формировать изображение внутреннего предсказания.
i
n
[0094] Дополнительно, как показано на фиг. 13(c), возникает случай, в котором даже когда сигнал (Y) яркости сегмента P имеет край, край, граница которого размывается или разрывается, существует в каждом из цветоразностных сигналов (Cb и Cr). В таком случае, имеется вероятность того, что остаток предсказания становится большим в пикселе, существующем в области, в которой граница края размывается или разрывается, и, следовательно, увеличивается объем кода, связанный с остатком предсказания. Во избежание возникновения такой ситуации, в которой объем кода, связанный с остатком предсказания, увеличивается после выполнения процесса внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования того же параметра внутреннего предсказания, что устройство кодирования движущихся изображений использует при выполнении процесса внутреннего предсказания для каждого подлежащего кодированию целевого блока сигнала яркости, чтобы формировать изображение предсказания, как показано на фиг. 14, устройство кодирования движущихся изображений выполняет сглаживающую фильтрацию для изображения предсказания таким образом, что все края становятся размытыми. В этом случае, изображение предсказания, для которого устройство кодирования движущихся изображений выполняет процесс фильтрации, является изображением предсказания для цветоразностного сигнала.
[0095] Хотя модуль 13 кодирования переменной длины кодирует c переменной длиной параметр внутреннего предсказания, который применяется к сигналу яркости, и затем мультиплексирует такой кодированный параметр предсказания в битовый поток, аналогичный потоку битов согласно вышеуказанному варианту 1 осуществления, модуль кодирования переменной длины обрабатывает параметр внутреннего предсказания, применяемый к каждому из цветоразностных сигналов, следующим образом. Более конкретно, модуль 13 кодирования переменной длины выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, вместо параметра внутреннего предсказания, который применяется к каждому из цветоразностных сигналов, без кодирования c переменной длиной параметра внутреннего предсказания, который применяется к каждому из цветоразностных сигналов, или энтропийно кодирует однобитовый флаг, показывающий то, применяется или нет предсказание по среднему к каждому целевому блоку, подлежащему кодированию, для каждого из цветоразностных сигналов посредством использования арифметического кодирования и т.п. Как результат, однобитовый флаг мультиплексируется в битовый поток в качестве параметра внутреннего предсказания, применяемого к каждому из цветоразностных сигналов. Помимо этого, при выполнении сглаживающей фильтрации для изображения предсказания по мере необходимости, модуль кодирования переменной длины энтропийно кодирует однобитовый флаг, показывающий то, выполняется или нет сглаживающая фильтрация для изображения предсказания, посредством использования арифметического кодирования и т.п.
[0096] В этом варианте осуществления показан пример, в котором в случае неприменения параметра внутреннего предсказания сигнала яркости к формированию изображения предсказания каждого из цветоразностных сигналов, модуль 4 внутреннего предсказания применяет предсказание по среднему к каждому из цветоразностных сигналов, чтобы формировать изображение внутреннего предсказания. В качестве альтернативы, модуль внутреннего предсказания может избирательно применять один из множества режимов (режимов направленного предсказания), включающих в себя горизонтальное предсказание и вертикальное предсказание, в дополнение к предсказанию по среднему, причем множество режимов надлежащим образом соответствует множеству характерных векторов направления предсказания, к каждому из цветоразностных сигналов, чтобы формировать изображение предсказания. Дополнительно, модуль внутреннего предсказания определяет изображение предсказания, которое модуль внутреннего предсказания формирует посредством применения режима направленного предсказания, выбранного таким образом, к каждому из цветоразностных сигналов, в качестве изображения предсказания каждого из цветоразностных сигналов.
[0097] Модуль 31 декодирования переменной длины устройства декодирования движущихся изображений, показанный на фиг. 10, декодирует c переменной длиной однобитовый флаг из битового потока в качестве параметра внутреннего предсказания, применяемого к каждому из цветоразностных сигналов. Когда флаг, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, показывает, что процесс внутреннего предсказания выполняется для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, модуль 34 внутреннего предсказания выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего декодированию (целевого блока, подлежащего кодированию), для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, чтобы формировать изображение предсказания каждого из цветоразностных сигналов, аналогично модулю 4 внутреннего предсказания, показанному на фиг. 1. Напротив, когда флаг показывает, что предсказание по среднему применяется к каждому из цветоразностных сигналов (когда флаг показывает, что процесс внутреннего предсказания не выполняется для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости), модуль 34 внутреннего предсказания применяет предсказание по среднему к каждому из цветоразностных сигналов, чтобы выполнять процесс внутреннего предсказания для каждого целевого блока, подлежащего декодированию, для каждого из цветоразностных сигналов, чтобы формировать изображение предсказания каждого из цветоразностных сигналов, аналогично модулю 4 внутреннего предсказания, показанному на фиг. 1. Напротив, когда флаг показывает, что горизонтальное предсказание (или вертикальное предсказание) применяется к каждому из цветоразностных сигналов, модуль внутреннего предсказания применяет горизонтальное предсказание (или вертикальное предсказание) к каждому из цветоразностных сигналов, чтобы выполнять процесс внутреннего предсказания для каждого целевого блока, подлежащего декодированию, для каждого из цветоразностных сигналов, чтобы формировать изображение предсказания каждого из цветоразностных сигналов.
[0098] Когда модуль 31 декодирования переменной длины декодирует c переменной длиной однобитовый флаг, показывающий то, выполняется или нет сглаживающая фильтрация для изображения предсказания, после выполнения процесса внутреннего предсказания для каждого целевого блока, подлежащего декодированию, для каждого из цветоразностных сигналов, чтобы формировать изображение предсказания каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, модуль 34 внутреннего предсказания выполняет сглаживающую фильтрацию для изображения предсказания, когда флаг показывает, что сглаживающая фильтрация выполняется для изображения предсказания. В этом случае, изображение предсказания, для которого выполняется процесс фильтрации, является изображением предсказания каждого из цветоразностных сигналов.
[0099] Как можно видеть из вышеприведенного описания, поскольку устройство кодирования движущихся изображений в соответствии с этим вариантом 2 осуществления имеет такую структуру, что при формировании изображения предсказания каждого из цветоразностных сигналов модуль 4 внутреннего предсказания выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования того же параметра внутреннего предсказания, что модуль внутреннего предсказания использует при выполнении процесса внутреннего предсказания для каждого подлежащего кодированию целевого блока сигнала яркости или применяет предсказание по среднему к каждому из цветоразностных сигналов и выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов, и модуль 13 кодирования переменной длины кодирует c переменной длиной флаг, показывающий то, выполняет ли модуль 4 внутреннего предсказания процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования того же параметра внутреннего предсказания, что модуль внутреннего предсказания использует при выполнении процесса внутреннего предсказания для каждого подлежащего кодированию целевого блока сигнала яркости, предоставляется преимущество возможности уменьшать объем кода, связанный с режимом внутреннего предсказания каждого из цветоразностных сигналов, без снижения эффективности предсказания.
[0100] Дополнительно, поскольку модуль 4 внутреннего предсказания устройства кодирования движущихся изображений согласно этому варианту 2 осуществления имеет такую структуру, что он выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов, чтобы формировать изображение предсказания каждого из цветоразностных сигналов, и после этого выполняет сглаживающую фильтрацию для изображения предсказания, предоставляется преимущество возможности повышать эффективность предсказания и уменьшать объем кода, связанный с остаточным сигналом.
[0101] Устройство декодирования движущихся изображений согласно этому варианту 2 осуществления имеет такую структуру, что его модуль 31 декодирования переменной длины декодирует c переменной длиной флаг из битового потока, и когда флаг, декодированный с переменной длиной посредством модуля 31 декодирования переменной длины, показывает, что процесс внутреннего предсказания выполняется для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, модуль 34 внутреннего предсказания выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего декодированию (целевого блока, подлежащего кодированию) для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, чтобы формировать изображение предсказания каждого из цветоразностных сигналов; в противном случае, т.е. когда флаг показывает, что процесс внутреннего предсказания не выполняется для каждого целевого блока, подлежащего кодированию, для каждого из цветоразностных сигналов посредством использования параметра внутреннего предсказания, идентичного параметру внутреннего предсказания для сигнала яркости, модуль 34 внутреннего предсказания применяет предсказание по среднему к каждому из цветоразностных сигналов, чтобы выполнять процесс внутреннего предсказания для каждого целевого блока, подлежащего декодированию, для каждого из цветоразностных сигналов, чтобы формировать изображение предсказания каждого из цветоразностных сигналов, предоставляется преимущество возможности корректно декодировать битовый поток, который кодирован с помощью уменьшенного объема кода для параметра внутреннего предсказания каждого из цветоразностных сигналов без снижения эффективности предсказания.
[0102] Дополнительно, модуль 34 внутреннего предсказания устройства декодирования движущихся изображений согласно этому варианту 2 осуществления имеет такую структуру, что он выполняет процесс внутреннего предсказания для каждого целевого блока, подлежащего декодированию, для каждого из цветоразностных сигналов, чтобы формировать изображение предсказания каждого из цветоразностных сигналов, и после этого выполняет сглаживающую фильтрацию для изображения предсказания, предоставляется преимущество возможности повышать эффективность предсказания, уменьшать объем кода, связанный с остаточным сигналом, и корректно декодировать кодированный битовый поток.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
[0103] Как упомянуто выше, поскольку устройство кодирования движущихся изображений, устройство декодирования движущихся изображений, способ кодирования движущихся изображений и способ декодирования движущихся изображений в соответствии с настоящим изобретением позволяют уменьшать объем кода, связанный с режимом внутреннего предсказания каждого из цветоразностных сигналов, без снижения эффективности предсказания, устройство кодирования движущихся изображений, устройство декодирования движущихся изображений, способ кодирования движущихся изображений и способ декодирования движущихся изображений в соответствии с настоящим изобретением являются подходящими для использования в качестве устройства кодирования движущихся изображений, устройства декодирования движущихся изображений, способа кодирования движущихся изображений, способа декодирования движущихся изображений для выполнения процесса внутреннего предсказания или процесса взаимного предсказания, чтобы, соответственно, выполнить кодирование с предсказанием и т.д.
ПОЯСНЕНИЕ ССЫЛОЧНЫХ ПОЗИЦИЙ
[0104] 1 - модуль разделения на блоки (модуль разделения на блоки), 2 - модуль управления кодированием (модуль управления кодированием), 3 - избирательный переключатель (модуль формирования изображений предсказания), 4 - модуль внутреннего предсказания (модуль формирования изображений предсказания), 5 - модуль предсказания с компенсацией движения, 6 - модуль вычитания (модуль квантования), 7 - модуль преобразования/квантования (модуль квантования), 8 - модуль обратного квантования/обратного преобразования, 9 - модуль суммирования, 10 - запоминающее устройство для внутреннего предсказания (модуль формирования изображений предсказания), 11 - модуль контурного фильтра, 12 - запоминающее устройство кадров предсказания с компенсацией движения, 13 - модуль кодирования переменной длины (модуль кодирования переменной длины), 13a - модуль кодирования переменной длины параметров внутреннего предсказания, 21 - модуль вычисления предсказанных значений параметров внутреннего предсказания, 22 - модуль вычисления индексов преобразования в двоичную форму параметров внутреннего предсказания, 23 - модуль энтропийного кодирования, 31 - модуль декодирования переменной длины (модуль декодирования переменной длины), 31a - модуль декодирования переменной длины параметров внутреннего предсказания, 32 - модуль обратного квантования/обратного преобразования (модуль обратного квантования), 33 - избирательный переключатель (модуль формирования изображений предсказания), 34 - модуль внутреннего предсказания (модуль формирования изображений предсказания), 35 - модуль компенсации движения, 36 - модуль суммирования, 37 - запоминающее устройство для внутреннего предсказания (модуль формирования изображений предсказания), 38 - модуль контурного фильтра, 39 - запоминающее устройство кадров предсказания с компенсацией движения, 41 - модуль энтропийного декодирования, 42 - модуль вычисления предсказанных значений параметров внутреннего предсказания, 43 - модуль вычисления индексов параметров внутреннего предсказания.