Устройство кодирования изображения, способ кодирования изображения, устройство декодирования изображения, способ декодирования изображения, программа и запоминающий носитель

Иллюстрации

Показать все

Изобретение относится к цифровому кодированию видео изображения и, более конкретно, к кодированию с использованием различных режимов предсказания. Техническим результатом является выполнение предсказания из большего количества различных углов и улучшение эффективности предсказания. Указанный технический результат достигается тем, что секция (13) определения набора предсказания выбирает набор предсказания из группы наборов предсказания, включающей в себя множество наборов предсказания, имеющих различные комбинации режимов предсказания, соответствующих различным направлениям предсказания. Дополнительно, секция (11) определения режима предсказания выбирает режим предсказания из набора предсказания, выбранного таким образом. Секция (4) статистического кодирования кодирует набор предсказания, таким образом выбранный, режим предсказания, таким образом выбранный, и остаточные данные между входным изображением и предсказанным изображением, сформированным на основе набора предсказания и режима предсказания. 4 н. и 6 з.п. ф-лы, 37 табл., 73 ил.

Реферат

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

Настоящее изобретение относится к устройству кодирования изображения, способу кодирования изображения, программе и запоминающему носителю, каждый - для кодирования изображения. Настоящее изобретение также относится к устройству декодирования изображения, способу декодирования изображения, программе и запоминающему носителю, каждый - для декодирования кодированного изображения.

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

Способы кодирования изображения были применены ко многим видео устройствам, которые используются привычным образом. Целевыми продуктами, к которым применяются эти способы, могут быть, например, DVD для получения удовольствия от видео контента, такого как кинофильмы, устройства записи на жесткий диск, в которых видео контент, такой как TV программы, должен быть записан, цифровые системы TV кодирования, DVD камеры и мобильные телефоны, которые могут выполнить обработку изображения. Как таковые, способы кодирования изображения применяются очень широко.

Непатентная литература 1 раскрывает (i) устройство кодирования изображения, которое кодирует изображение посредством использования пространственной корреляции или временной корреляции в изображении, и (ii) устройство декодирования изображения, которое декодирует кодированные данные, которые закодированы устройством кодирования изображения. Ниже описаны способы работы этих устройств, которые используют пространственную корреляцию, со ссылками на фиг. 65-70.

(Компоновка устройства 300 кодирования изображения)

Со ссылками на фиг. 65 ниже описано устройство 300 кодирования изображения согласно обычной методике.

Фиг. 65 - блок-схема, иллюстрирующая основную часть компоновки устройства 300 кодирования изображения согласно обычной методике. Устройство 300 кодирования изображения включает в себя секцию 1 вычисления разности, секцию 2 ортогонального преобразования, секцию 3 квантования, секцию 304 статистического кодирования, секцию 6 обратного квантования, секцию 7 обратного ортогонального преобразования, секцию 8 вычисления суммы, память 9, секцию 310 интра-предсказания (внутреннего предсказания), и секцию 311 определения режима предсказания (Фиг. 65). Ниже описаны каждый из составляющих компонентов устройства 300 кодирования изображения.

(Секция 1 вычисления разности)

Секция 1 вычисления разности выдает остаточные данные предсказания, которые являются разностью между целевым блоком, который должен быть закодирован (блок пиксели M×M), и предсказанным изображением, сгенерированным из секции 310 интра-предсказания.

(Секция 2 ортогонального преобразования и секция 7 обратного ортогонального преобразования)

Секция 2 ортогонального преобразования выполняет ортогональное преобразование в отношении остаточных данных предсказания, принятых от секции 1 вычисления разности, и затем выводит результат. Секция 7 обратного ортогонального преобразования выполняет обратное ортогональное преобразование в отношении коэффициента ортогонального преобразования остаточных данных предсказания, принятых от секции 6 обратного квантования, и выдает результат. В качестве способа ортогонального преобразования и обратного ортогонального преобразования могут использоваться дискретное косинусное преобразование, преобразование Адамара, дискретное преобразование Фурье, дискретное синусное преобразование, преобразование Хаара (Haar), наклонное преобразование, или разложение Карунена-Лоэва.

(Секция 3 квантования и секция 6 обратного квантования)

Секция 3 квантования выполняет квантование в отношении коэффициента ортогонального преобразования остаточных данных предсказания, принятых от секции 2 ортогонального преобразования, и затем выдает результат. Секция 6 обратного квантования выполняет обратное квантование в отношении коэффициента квантования остаточных данных предсказания, принятых от секции 3 квантования, и затем выдает результат. Квантование и обратное квантование выполняются при помощи скалярного квантования или векторного квантования.

(Секция 304 статистического кодирования)

Секция 304 статистического кодирования выполняет статистическое кодирование в отношении остаточных данных предсказания и информации о режиме кодирования, такой как тип блока, информации режима предсказания, и параметра квантования. “Статистическое кодирование” указывает: (a) кодирование с переменной длиной, такое как арифметическое кодирование, кодирование по Хаффману, и кодирование Голомба (Golomb); или (b) кодирование с фиксированной длиной.

(Секция 8 вычисления суммы)

Секция 8 вычисления суммы суммирует остаточные данные предсказания, подвергнутые обратному квантованию и обратному ортогональному преобразованию, с предсказанным изображением, сгенерированным секцией 310 интра-предсказания, чтобы сгенерировать локально декодированное изображение. Секция 8 вычисления суммы затем выводит локально декодированное изображение.

(Память 9)

Память 9 принимает и затем сохраняет локально декодированное изображение.

(Секция 310 интра-предсказания)

Секция 310 интра-предсказания выполняет интра-предсказание (внутреннее предсказание), указанное информацией режима предсказания, посредством использования локально декодированного изображения, сохраненного в памяти 9, и генерирует предсказанное изображение. “Интра-предсказание” указывает предсказание в экране или предсказание в кадре, то есть, предсказание, выполненное с использованием пространственной корреляции в изображении. В это время интра-предсказание выполняется в отношении целевого блока (блока пикселей MxM), подлежащего кодированию, посредством использования 9 типов заранее определенных способов предсказания, соответственно обозначенных режимами 0-8. Фиг. 66 показывает примеры режимов предсказания. Фиг. 66 показывает режимы предсказания для использования в интра-предсказании согласно обычной методике. В примерах на фиг. 66 размер блока является блок 4×4 пикселей. Далее, пиксели А-М являются пикселями, которые были уже закодированы и которые используются для предсказания целевого блока, который должен быть закодирован.

Ниже описан каждый из режимов более подробно. Режим 0 выполняет пространственное предсказание в вертикальном направлении с использованием пикселей А-D. Режим 1 выполняет пространственное предсказание в горизонтальном направлении с использованием пикселей I-L. Режим 2 предсказания выполняет DC предсказание с использованием пикселей А-D и пикселей I-L. Режим 3 выполняет пространственное предсказание в диагональном направлении влево вниз с использованием пикселей А-H. Режим 4 выполняет пространственное предсказание в диагональном направлении вправо вниз с использованием пикселей А-D и пикселей I-М. Режим 5 выполняет пространственное предсказание в вертикальном направлении вправо с использованием пикселей А-D, пикселей I-K и пикселя М. Режим 6 выполняет пространственное предсказание в горизонтальном направлении вниз с использованием пикселей А-C и пикселей I-М. Режим 7 выполняет пространственное предсказание в вертикальном направлении влево с использованием пикселей А-E. Режим 8 выполняет пространственное предсказание в горизонтальном направлении вверх с использованием пикселей I, J, K и L. Секция 310 интра-предсказания генерирует пиксели предсказания посредством использования способа предсказания, соответствующего любому из этих режимов.

(Секция 311 определения режима предсказания)

Секция 311 определения режима предсказания определяет, какой из множества режимов предсказания, показанных на фиг. 66, должен использоваться для предсказания целевого блока, который должен быть закодирован, на основании введенного оригинального (первоначального) изображения целевого блока, который должен быть закодирован, и локально декодированное изображение принимается из памяти 9, и выдает информацию об определенном режиме предсказания (далее называемую информацией о режиме предсказания) к секции 310 интра-предсказания и секции 304 статистического кодирования.

Обычно, способ для оценки остаточной стоимости предсказания (далее называемый способом минимизации остаточной стоимости предсказания) или способ оптимизации искажения «цены» используется для определения режима предсказания, который будет использоваться.

Способ минимизации остаточной стоимости предсказания - способ, в котором (i) степень подобия (далее называемая остаточной стоимостью предсказания) находят между введенным первоначальным изображением целевого блока, подлежащего кодированию, и предсказанным изображением, соответствующим каждому из режимов предсказания, сгенерированных на основе локально декодированного изображения, принятого из памяти 9, и затем (ii) режим предсказания, имеющий наименьшую остаточную стоимость предсказания, выбирается из режимов предсказания. Мера S остаточной стоимости предсказания представляется любым из следующего: сумма абсолютных значений остаточных данных предсказания; сумма квадратов остаточных данных предсказания; сумма абсолютных значений коэффициентов преобразования остаточных данных предсказания; и сумма квадратов коэффициентов преобразования остаточных данных предсказания. Эти значения вычисляются посредством использования следующих уравнений (1) до (4).

S= ∑ i , j ∈ b l o c k | f ( x + i , y + j ) − p ( x + i , y + j ) | (1)
S= ∑ i , j ∈ b l o c k { f ( x + i , y + j ) − p ( x + i , y + j ) } 2 (2)
S= ∑ i , j ∈ b l o c k | T { f ( x + i , y + j ) − p ( x + i , y + j ) } | (3)
S= ∑ i , j ∈ b l o c k T { f ( x + i , y + j ) − p ( x + i , y + j ) } 2 (4)

Матем. 1

В уравнениях (1)-(4) f(x, y) указывает первоначальное изображение, p(x, y) указывает предсказанное изображение, x, и y указывают целевой блок, который должен быть закодирован, и i и j указывают позицию пикселя в целевом блоке, который должен быть закодирован. T {} указывает операцию ортогонального преобразования, такую как дискретное косинусное преобразование, дискретное синусное преобразование, и преобразование Адамара.

В способе оптимизации искажения «цены» режим предсказания выбирается согласно следующим этапам. Сначала предсказанные изображения, соответствующие соответствующим режимам предсказания, генерируются на основе локально декодированного изображения, принятого из памяти 9. Затем, остаточные данные предсказания находятся из каждого из предсказанных изображений, сгенерированных таким образом, и введенного первоначального изображения целевого блока, который должен быть закодирован. Затем остаточные данные предсказания, таким образом полученные, временно кодируют. Затем (a) ошибка D предсказания между первоначальным изображением целевого блока и декодированным изображением целевого блока и (b) объем кодирования R, необходимый для кодирования целевого блока, вычисляются относительно каждого из режимов предсказания. Наконец, режим предсказания, который минимизирует стоимость J кодирования, вычисленную согласно следующему уравнению (5) на основании D и R, выбирается из режимов предсказания.

Матем. 2

J(mode|q)=D(mode|q)+λ(q)*R(mode|q) ( 5 )

Ошибка D предсказания является ошибкой между остаточными данными предсказания, которые не были квантованы, и остаточными данными предсказания, которые были квантованы. Объем R кодирования является общим объемом кодирования остаточных данных предсказания и объемом кодирования информации режима предсказания.

В уравнении (5) "режим" указывает режим предсказания, и q указывает параметр квантования. Далее, λ - коэффициент взвешивания, зависящий от параметра q квантования, и обычно вычисляется согласно следующему уравнению (6):

λ(q)=0,85*2(q-12)/3 ( 6 )

Матем. 3

(Процесс кодирования устройства 300 кодирования изображения)

Ниже описано как работает устройство 300 кодирования изображения.

Сначала целевое изображение, которое должно быть закодировано (далее называемое «целевой блок, который должен быть закодирован»), которое разделено на блоки с заранее определенным размером блока (блок пикселей M×M), подается на устройство 300 кодирования изображения в качестве входного изображения.

Секция 311 определения режима предсказания определяет режим предсказания, который будет использоваться для предсказания для целевого блока, который должен быть закодирован, в соответствии со способом минимизации остаточной стоимости предсказания или способом оптимизации искажения «цены», на основании целевого блока, который должен быть закодирован, и локально декодированного изображения смежного блока, который был уже закодирован, где локально декодированное изображение принимается из памяти 9. Секция 311 определения режима предсказания затем выдает информацию режима предсказания к секции 310 интра-предсказания и секции 304 статистического кодирования.

Секция 310 интра-предсказания выполняет интра-предсказание, указанное информацией режима предсказания, принятой таким образом, на основании локально декодированного изображения смежного блока, который был закодирован, причем локально декодированное изображение принимается из памяти 9, чтобы сгенерировать предсказанное изображение (блок пикселей M×M) целевого блока, который должен быть закодирован. Секция 310 интра-предсказания затем выдает предсказанное изображение на секцию 1 вычисления разности.

Затем секция 1 вычисления разности вычисляет остаточные данные предсказания, которые являются разностью между целевым блоком, который должен быть закодирован, и предсказанным изображением, таким образом сгенерированным, и выдает остаточные данные предсказания к секции 2 ортогонального преобразования.

Остаточные данные предсказания от секции 1 вычисления разности выдаются на секцию 2 ортогонального преобразования и затем - на секцию 3 квантования, чтобы быть подвергнутым ортогональному преобразованию и затем квантованию. Остаточные данные предсказания затем выдаются на секцию 304 статистического кодирования и секцию 6 обратного квантования.

Остаточные данные предсказания, таким образом подвергнутые ортогональному преобразованию и квантованию, выдаются к секции 6 обратного квантования и затем секции 7 обратного ортогонального преобразования, чтобы быть подвергнутыми обратному квантованию и обратному ортогональному преобразованию, соответственно. Остаточные данные предсказания затем выдаются на секцию 8 вычисления суммы.

Секция 8 вычисления суммы комбинирует остаточные данные предсказания, таким образом подвергнутые обратному квантованию и обратному ортогональному преобразованию, с предсказанным изображением, соответствующим режиму предсказания, примененному к целевому блоку, чтобы синтезировать локально декодированное изображение (блок пикселей M×M) целевого блока. Локально декодированное изображение, таким образом синтезированное, затем выдается в память 9.

Локально декодированное изображение целевого блока, которое выдается из секции 8 вычисления суммы, сохраняется в памяти 9 и используется для интра-предсказания смежного блока, который должен быть закодирован вслед за целевым блоком.

Секция 304 статистического кодирования выполняет процесс кодирования, такой как кодирование с переменной длиной, в отношении параметров кодирования, таких как информация режима предсказания, принятая от секции 311 определения режима предсказания, и остаточных данных предсказания, подвергнутых ортогональному преобразованию и квантованию. Затем секция 304 статистического кодирования выводит кодированные данные целевого блока.

Устройство 300 кодирования изображения повторяет вышеупомянутый процесс относительно всех целевых блоков, которые будут закодированы, которые составляют целевое изображение, которое должно быть закодировано.

Как описано выше, устройство 300 кодирования изображения выбирает соответствующий один из 9 типов заранее определенных способов предсказания из режимов 0-8, проиллюстрированных на фиг. 66, в зависимости от характеристик изображения. Это может достичь высокой эффективности кодирования. Более конкретно, DC предсказание режима 2 является эффективным для предсказания для плоской области изображения. Далее, режимы 0, 1, и 3-8 эффективны для предсказания для изображения, включающего в себя край в конкретном направлении.

Фиг. 67 (a) и (b) иллюстрируют конкретные примеры интра-предсказания в устройстве 300 кодирования изображения. Фиг. 67(a) иллюстрирует пример, в котором остаточные данные предсказания F43 получаются как разность между (i) изображением F41, имеющим вертикальные полосы, в которых края формируются в вертикальном направлении, и (ii) предсказанным изображением F42, сгенерированным на основании декодированного изображения, согласно предсказанию в вертикальном направлении (режим 0 на фиг. 66). Далее, фиг. 67(b) иллюстрирует пример, в котором остаточные данные предсказания F46 получаются как разность между (i) изображением F44, имеющим диагональные полосы, в котором края формируются в направлении по диагонали вправо и (ii) предсказанным изображением F45, сгенерированным на основании декодированного изображения, согласно направлению предсказания по диагонали вниз вправо (Режим 4 на фиг. 66).

В случаях Фиг. 67(a) и (b) предсказанные изображения F42 и F45 соответственно воспроизводят шаблонные части в изображениях F41 и F44, которые являются первоначальными изображениями. Поэтому, когда вычисляется разность между первоначальным изображением и предсказанным изображением, шаблонная часть в первоначальном изображении и шаблонная часть в предсказанном изображении взаимно уничтожают друг друга. В результате пиксели в первоначальном изображении, которые не могут быть вычтены посредством предсказанного изображения, остаются в качестве остаточных данных предсказания. На Фиг. 67(a) и (b) направление предсказания идентично с направлением шаблона в первоначальном изображении. Следовательно, возможно эффективно сократить остаточные данные предсказания.

(Способ кодирования с предсказанием информации режима предсказания)

Ниже описан способ кодирования с предсказанием для информации режима предсказания.

Интра-предсказание блока 4×4 пикселей или блока 8×8 пикселей в устройстве кодирования изображения, использующем пространственную корреляцию, раскрытую в непатентной литературе 1, использует 9 типов режимов предсказания, которые иллюстрируются на фиг. 68. В непатентной литературе 1, когда информация режима предсказания целевого блока (B1) закодирована, значение оценки определяется таким образом, что (a) значение режима предсказания, примененного к блоку B2, который расположен рядом с левой стороны блока B1, и (b) значение режима предсказания, примененного к блоку B4, расположенному рядом сверху блока B1, сравниваются, и режим предсказания, имеющий меньшее значение между ними, берется в качестве значения оценки. Затем это значение оценки сравнивается со значением режима предсказания блока B1. Если значения идентичны, кодируется флаг “1”. В других случаях кодируют флаг “0” и соответствующую информацию о режиме предсказания, показывающую - какой из оставшихся 8 типов режимов предсказания (то есть, режимов предсказания за исключением значения оценки) соответствует режиму предсказания блока B1.

Далее, в патентной литературе 1, когда информация режима предсказания целевого блока закодирована, режим предсказания, примененный к целевому блоку, оценивается посредством использования значения 1 оценки, определенного посредством ниже упомянутого первого средства предсказания, и значения 2 оценки, определенного посредством ниже упомянутого второго средства предсказания.

Первое средство предсказания определяет, в качестве значения 1 оценки, режим предсказания, который является наиболее используемым среди режимов предсказания, примененных к (i) блокам в закодированной области C2 (например, макроблок, срез), которая расположена с левой стороны от целевого блока C1, или, альтернативно, (ii) блокам в закодированной области C3, которая расположена сверху от целевого блока C1. Далее, второе средство предсказания использует декодированное изображение в L-образной области B5 (затененная часть с диагональными линиями вправо-вниз) на закодированных блоках B2, B3 и B4, которые являются смежными с целевым блоком B1, как показано на фиг. 69. Более конкретно, предсказанные изображения, соответствующие 9 типам способов интра-предсказания, показанных на фиг. 68, генерируются относительно декодированного изображения L-образной области B6 (затененная часть с диагональными линиями влево-вниз), с использованием декодированного изображения L-образной области B5. Затем, режим предсказания, разность которого между декодированным изображением L-образной области B6 и предсказанным изображением является наименьшей среди этих режимов предсказания, расценивается как значение 2 оценки.

(Компоновка устройства 350 декодирования изображения)

Наконец, обычное устройство декодирования изображения описано ниже со ссылками на фиг. 71. Фиг 71 является блок-схемой, иллюстрирующей компоновку обычного устройства 350 декодирования изображения. Устройство декодирования изображения 350 включает в себя секцию 6 обратного квантования, секцию 7 обратного ортогонального преобразования, секцию 8 вычисления суммы, память 9, секцию 305 статистического декодирования и секцию 310 интра-предсказания (Фиг. 71). Среди этих составляющих компонентов секция 6 обратного квантования, секция 7 обратного ортогонального преобразования, секция 8 вычисления суммы, память 9 и секция 310 интра-предсказания были описаны выше. Поэтому, ниже описана только секция 305 статистического декодирования.

(Секция 305 статистического декодирования)

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

(Процесс декодирования устройства 350 декодирования изображения)

Ниже описан процесс декодирования изображения в устройстве 350 декодирования изображения. Сначала секция 305 статистического декодирования выполняет статистическое декодирование в отношении принятых закодированных данных целевого блока, который должен быть декодирован, и выдает остаточные данные предсказания целевого блока, который должен быть декодирован, и параметры кодирования, такие как информация режима предсказания, целевого блока, который должен быть декодирован. Остаточные данные предсказания, таким образом декодированные, выдаются к секции 6 обратного квантования и затем - к секции 7 обратного ортогонального преобразования, чтобы быть подвергнутыми обратному квантованию и обратному ортогональному преобразованию, соответственно.

Затем, секция 310 интра-предсказания генерирует предсказанное изображение (блок пикселей M×M) целевого блока, который должен быть декодирован, с использованием локально декодированного изображения, сохраненного в памяти 9, смежного блока, который был уже декодирован.

Затем секция 8 вычисления суммы суммирует остаточные данные предсказания, таким образом подвергнутые обратному квантованию и обратному ортогональному преобразованию, с предсказанным изображением, сгенерированным секцией 310 интра-предсказания, чтобы сгенерировать декодированное изображение целевого блока. Память 9 сохраняет декодированное изображение (блок пикселей MxM), таким образом сгенерированное. Сохраненное декодированное изображение используется для интра-предсказания смежного(ых) блока(ов). Устройство 350 декодирования изображения повторяет вышеупомянутый процесс для всех целевых блоков, которые должны быть декодированы, которые составляют целевое изображение, которое должно быть декодировано.

Список цитируемой литературы

Непатентная литература 1

ISO/IEC 14496-10:2004 Усовершенствованное видео кодирование

Непатентная литература 2

Asker М. Bazen, Н. Sabih. Gerez. “Systematic Methods for the Computation of the Directional Fields and Singular Points of Fingerprints”, IEEE Trans. On Pattern Analysis and Machine Intelligence, vol. 24, No 7, июль 2002.

Патентная Литература 1

Публикация заявки на патент Японии, Tokukai, No 2007-116351 A (дата публикации: 10 мая 2007)

Сущность изобретения

Интра-предсказание в обычном устройстве 300 кодирования изображения вызывает проблему в том, что эффективность предсказания уменьшается. Конкретные примеры этой проблемы иллюстрируются на Фиг. 72(a) и (b). Фиг. 72(a) иллюстрирует пример, в котором остаточные данные F53 предсказания получаются как разность между изображением F51, имеющим вертикальные полосы, и предсказанным изображением F52, сгенерированным на основании декодированного изображения, согласно вертикальному направлению предсказания (режим 0 на фиг. 66). Далее, Фиг. 72(b) иллюстрирует пример, в котором остаточные данные F56 предсказания получаются как разность между (i) изображением F54, имеющим диагональные полосы, в которых края формируются в направлении по диагонали вправо, и (ii) предсказанным изображением F55, сгенерированным на основании декодированного изображения, согласно направлению предсказанию по диагонали вниз вправо (режим 4 на фиг. 66).

В любом из случаев на Фиг. 72 (a) и (b) предсказанное изображение F52 или F55 воспроизводит только часть шаблонной (заштрихованной) части в изображении F51 или F54, которое является первоначальным изображением. Далее, пиксели, которые не формируются в первоначальном изображении, формируются в предсказанном изображении. Следовательно, результирующие остаточные данные предсказания включают в себя не только пиксели, которые не могут быть вычтены посредством изображения предсказания, но также и пиксели, которые не сформированы в первоначальном изображении.

Остаточная стоимость предсказания остаточных данных предсказания F43 на Фиг. 67(a) равна “1275” согласно уравнению (1). С другой стороны, остаточная стоимость предсказания остаточных данных предсказания F53 на Фиг. 72(a) равна “5355”. Таким образом, последнее значение больше.

Далее, остаточная стоимость предсказания остаточных данных предсказания F43 на Фиг. 67(b) равна “765”. С другой стороны, остаточная стоимость предсказания остаточных данных предсказания F56 на Фиг. 72(b) равна “4845”. Таким образом, когда эти стоимости сравнивают посредством использования их сумм абсолютных значений, находят, что последняя больше.

Обычно, чем больше остаточная стоимость предсказания, тем больше увеличивается объем кодирования, необходимый для кодирования остаточных данных предсказания. В результате, в случаях Фиг. 72(a) и (b) эффективность предсказания уменьшается.

Более конкретно, обычное устройство кодирования изображения имеет проблему в том, что эффективность предсказания уменьшается в случаях, когда направление шаблона (край) целевого изображения, которое должно быть предсказано, отличается от любого из направлений предсказания согласно режимам 0-8 способов предсказания.

Настоящее изобретение выполнено ввиду вышеизложенной проблемы. Основная задача настоящего изобретения - создать устройство кодирования изображения, способ кодирования изображения, программу и запоминающий носитель, каждый из которых может выполнить предсказание из большего количества различных углов, таким образом улучшая эффективность предсказания. Далее, другая задача настоящего изобретения - создать устройство декодирования изображения и способ декодирования изображения, каждый из которых декодирует изображение, закодированное посредством использования любого из устройства кодирования изображения, способа кодирования изображения, программы и запоминающего носителя.

В случае непатентной литературы 1, значение оценки режима предсказания зависит от того, какое значение меньше из значений режимов предсказания смежных блоков. Поэтому, на фиг. 69 не может быть произвольно определено, что выбрать в качестве значения оценки для целевого блока B1: (a) режим предсказания левого блока B2 или (b) режим предсказания верхнего блока B4, любой из которых является смежным с целевым блоком B1. В результате, значения корреляции между целевым блоком B1 и смежными блоками B2 и B4 не могут быть использованы в достаточной степени, и поэтому точность предсказания является низкой, что увеличивает объем кодирования, необходимый для режима предсказания целевого блока B1.

Эта проблема описывается ниже со ссылками на фиг. 73. Более конкретно, проблема описывается с примером, в котором кодирование с фиксированной длиной выполняется посредством всего 4 битов, то есть (i) 3 бита относительно информации режима предсказания, показывающей, какой режим соответствует режиму предсказания целевого блока, среди оставшихся 8 типов режимов предсказания (режимы предсказания за исключением значения оценки, на фиг. 68), и (ii) 1 бит или флага “1”, если режим предсказания целевого блока идентичен значению оценки, или флага “0”, если режим предсказания не идентичен значению оценки.

Фиг. 73 иллюстрирует пример, в котором выполняется прогнозирующее кодирование, где режим предсказания целевого блока D1 равен “5”, режим предсказания смежного левого блока D2 равен “5”, и режим предсказания смежного верхнего блока D3 равен “3”. На фиг. 73 значение оценки режима предсказания для целевого блока D1 равно “3”, которое является меньшим значением между режимами предсказания левого блока D2 и верхнего блока D3. Так как значение оценки отличается от режима предсказания целевого блока, кодирование режима "5" предсказания целевого блока D1 требует 4 битов. Однако, если режим "5" предсказания левого блока D2 может быть выбран в качестве значения оценки, то объем кодирования равен только 1 биту.

В патентной литературе 1, чтобы первое средство предсказания определило значение 1 оценки, необходимо сохранить и оставить все режимы предсказания, которые используются в закодированной области C2 или C3, проиллюстрированной на фиг. 70, что требует больше памяти. Кроме того, как описано выше, чтобы второе средство предсказания определило значение 2 оценки, необходимо сгенерировать предсказанные изображения снова согласно способам интра-предсказания, показанным на фиг. 68, и вычислить разности между предсказанными изображениями и декодированным изображением. Это вызывает проблему в том, что объем вычислений увеличивается.

Настоящее изобретение выполнено ввиду этих проблем. Основная задача настоящего изобретения - создать устройство кодирования изображения, устройство декодирования изображения, способ кодирования изображения, способ декодирования изображения, программу и запоминающий носитель, каждый из которых может эффективно сократить объем кодирования, связанный с режимом предсказания.

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

В этой компоновке устройство кодирования изображения выбирает набор предсказания и режим предсказания из группы наборов предсказания, включающей в себя множество наборов предсказания, имеющих различные комбинации из множества режимов предсказания, соответствующих различным направлениям предсказания. Устройство кодирования изображения затем кодирует изображение посредством использования набора предсказания и режима предсказания, таким образом выбранных. Эта компоновка позволяет устройству кодирования изображения выполнять предсказания из большего количества различных углов, чем обычная методика, таким образом успешно сокращая объем кодирования изображения и улучшая качество изображения.

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

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