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

Иллюстрации

Показать все

Изобретение относится к вычислительной технике, а именно к кодированию и декодированию вектора движения путем прогнозирования вектора движения текущего блока. Техническим результатом является повышение точности прогнозирования и кодирования вектора движения. Предложенное устройство для декодирования изображения включает в себя блок получения данных изображения, который получает данные изображения, кодированные посредством использования единицы кодирования иерархической структуры, разбитой из максимальной единицы кодирования. Устройство также содержит средство извлечения информации кодирования, которое получает информацию режима предсказания текущего блока из битового потока. Устройство также включает в себя декодер данных изображения, который определяет блок, совместно размещенный с текущим блоком, из числа первого блока, совместно размещенного с текущим блоком в предшествующем во времени кадре, и второго блока, совместно размещенного с текущим блоком в следующем во времени кадре, для получения кандидатов-предикторов вектора движения текущего блока на основании полученной информации режима предсказания. 4 з.п. ф-лы, 27 ил.

Реферат

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

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

УРОВЕНЬ ТЕХНИКИ

Кодек, такой как продвинутое кодирование (AVC) видеосигнала 4Н.264/MPEG-4 от экспертной группы (MPEG) по вопросам движущегося изображения, использует векторы движения ранее кодированных блоков, смежных с текущим блоком для прогнозирования вектора движения текущего блока. То есть медиана векторов движения ранее кодированных блоков, смежных с левой, верхней и правой верхней сторонами текущего блока, может быть использована в качестве предиктора (предсказателя) вектора движения текущего блока.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

Решение проблемы

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

Преимущественные эффекты изобретения

В соответствии с настоящим изобретением, вектор движения настоящего блока может быть точно спрогнозирован и кодирован на основании этого прогноза.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

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

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

Фиг. 3 изображает элемент иерархического кодирования, в соответствии с примерным вариантом осуществления;

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

Фиг. 5 является структурной схемой декодера изображения на основании элемента кодирования, в соответствии с примерным вариантом осуществления;

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

Фиг. 7 изображает элемент кодирования и элемент преобразования, в соответствии с примерным вариантом осуществления;

Фиг. 8А-8D изображают формы разделения элемента кодирования, элемента прогнозирования и элемента преобразования, в соответствии с примерным вариантом осуществления;

Фиг. 9 является структурной схемой устройства для декодирования вектора движения, в соответствии с примерным вариантом осуществления;

Фиг. 10А и 10В изображают кандидатов предикторов вектора движения в явном режиме, в соответствии с примерным вариантом осуществления;

Фиг. 10С-10Е изображают блоки, имеющие различные размеры, которые являются смежными с текущим блоком, в соответствии с примерным вариантом осуществления;

Фиг. 11А-11С изображают кандидатов предикторов вектора движения в открытом режиме, в соответствии с другим примерным вариантом осуществления;

Фиг. 12А изображает способ генерирования предиктора вектора движения в неявном режиме, в соответствии с примерным вариантом осуществления;

Фиг. 12В изображает способ поиска предиктора вектора движения в неявном режиме, в соответствии с примерным вариантом осуществления;

Фиг. 12С и 12D изображают шаблоны, использованные для генерирования предикторов векторов движения, в соответствии с примерным вариантом осуществления;

Фиг. 13 является структурной схемой устройства для декодирования вектора движения, в соответствии с примерным вариантом осуществления;

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

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

НАИЛУЧШЕЕ ТЕХНИЧЕСКОЕ ВЫПОЛНЕНИЕ ИЗОБРЕТЕНИЯ

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

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

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

Выбор первого режима или второго режима содержит выбор первого режима или второго режима на основании того, кодирован ли текущий блок в режиме пропуска.

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

По меньшей мере один предиктор вектора движения может дополнительно включать в себя медианное значение первого вектора движения, второго вектора движения и третьего вектора движения.

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

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

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

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

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

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

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

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

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

Конкретные примерные варианты осуществления описаны более подробно ниже со ссылкой на сопровождающие чертежи. Выражения «по меньшей мере», предшествующие списку элементов, изменяют список элементов в целом и не изменяют отдельные элементы списка. В настоящей спецификации, «изображение» может означать отдельный кадр видео либо движущееся изображение, то есть само видео.

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

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

Со ссылкой на Фиг. 1, устройство 100 кодирования изображения включает в себя устройство 110 разделения максимального элемента кодирования, устройство 120 определения глубины кодирования, кодер 130 данных изображения и кодер 140 информации кодирования, которые могут быть осуществлены, например, в качестве аппаратного обеспечения или модулей программного обеспечения, интегрированных в устройство 100 кодирования изображения, или отдельных от устройства 100 кодирования изображения.

Устройство 110 разделения максимального элемента кодирования может разделять текущий кадр или фрагмент на основании максимального элемента кодирования, то есть элемента кодирования наибольшего размера. Устройство 110 разделения максимального элемента кодирования может разделять текущий кадр или фрагмент по меньшей мере на один максимальный элемент кодирования.

В соответствии с примерным вариантом осуществления, элемент кодирования может быть представлен с использованием максимального элемента кодирования и глубины. Как описано выше по тексту, максимальный элемент кодирования указывает элемент кодирования, имеющий наибольший размер из числа элементов кодирования текущего кадра, а глубина указывает степень иерархического уменьшения элемента кодирования. По мере увеличения глубины, элемент кодирования может уменьшаться от максимального элемента кодирования до минимального элемента кодирования, причем глубина максимального элемента кодирования определяется как минимальная глубина, а глубина минимального элемента кодирования определяется как максимальная глубина. Так как размер элемента кодирования уменьшается от максимального элемента кодирования по мере увеличения глубины, то подэлемент кодирования глубины k может включать в себя множество подэлементов кодирования глубины (k+n) (где k и n являются целыми числами, равными или больше чем 1).

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

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

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

Устройство 120 определения глубины кодирования определяет форму разделения максимального элемента кодирования. Форма разделения может быть определена на основании вычисления издержек норма-искажение (RD). Определенная форма разделения максимального элемента кодирования обеспечена на кодер 140 информации кодирования, и данные изображения в соответствии с максимальными элементами кодирования обеспечены на кодер 130 данных изображения.

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

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

Когда размер элемента кодирования равен 2N×2N (где N является положительным целым числом), элементы обработки для прогнозирования могут быть размером 2N×2N, 2N×N, N×2N и N×N. Другими словами, прогнозирование движения может быть выполнено на основании элемента обработки, имеющего форму, при которой по меньшей мере одна высота и одна ширина элемента кодирования могут быть разделены пополам без остатка. В дальнейшем в данном документе, элемент обработки, являющийся основанием прогнозирования, определяется как элемент прогнозирования.

Режим прогнозирования может быть по меньшей мере одним из режимов: внутренний (intra) режим, взаимный (inter) режим и режим пропуска; причем конкретный режим прогнозирования может быть выполнен только для элемента прогнозирования, имеющего конкретный размер или конкретную форму. Например, внутренний режим может быть выполнен только для элементов прогнозирования, имеющих размеры 2N×2N и N×N и форму квадрата. Дополнительно, режим пропуска может быть выполнен только для элемента прогнозирования, имеющего размер 2N×2N. Если в элементе кодирования существуют множество элементов прогнозирования, то режим прогнозирования по меньшей мере с ошибками кодирования может быть выбран после выполнения прогнозирования для каждого элемента прогнозирования.

Альтернативно, устройство 100 кодирования изображения может выполнять преобразование частоты данных изображения на основании элемента обработки, имеющего размер, отличный от размера элемента кодирования. Для преобразования частоты в элементе кодирования, преобразование частоты может быть выполнено на основании элемента обработки, имеющего размер, равный или меньше, чем размер элемента кодирования. В дальнейшем в данном документе, элемент обработки, который является основанием преобразования частоты, определяется как элемент преобразования. Преобразование частоты может быть дискретным косинусным преобразованием (DCT) либо преобразованием (KLT) Карунена-Лоэва.

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

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

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

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

Устройство 100 кодирования изображения может генерировать подэлементы кодирования путем равного разделения высоты и ширины максимального элемента кодирования на два, в соответствии с увеличением глубины. То есть, когда размер элемента кодирования глубины k равен 2N×2N, то размер элемента кодирования глубины (k+1) равен N×N.

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

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

Со ссылкой на Фиг. 2, устройство 200 декодирования изображения включает в себя элемент 210 получения данных изображения, устройство 220 извлечения информации кодирования и декодер 230 данных изображения, которые могут быть осуществлены, например, в качестве аппаратного обеспечения или модулей программного обеспечения, интегрированных в устройство 200 декодирования изображения либо находящихся отдельно от устройства 200 декодирования изображения.

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

Устройство 220 извлечения информации кодирования извлекает информацию о максимальном элементе кодирования, максимальной глубине, форме разделения максимального элемента кодирования и режиме кодирования подэлементов кодирования из заголовка текущего кадра путем разбора потока двоичных данных, принятых устройством 200 декодирования изображения. Информация о форме разделения и информация о режиме кодирования обеспечена на декодер 230 данных изображения.

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

Информация о режиме кодирования может включать в себя информацию об элементе прогнозирования в соответствии с подэлементами кодирования, информацию о режиме прогнозирования и информацию об элементе преобразования.

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

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

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

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

Со ссылкой на Фиг. 3, элементы иерархического кодирования могут включать в себя элементы кодирования, ширина и высота которых равны 64×64, 32×32, 16×16, 8×8 и 4×4. Кроме этих элементов кодирования, имеющих форму правильного квадрата, могут существовать также элементы кодирования, имеющие ширину и высоту 64×32, 32×64, 32×16, 16×32, 16×8, 8×16 и 4×8.

Со ссылкой на Фиг. 3, для набора 310 данных изображения с разрешением 1920×1080, установленный размер максимального элемента кодирования равен 64×64, а установленная максимальная глубина равна 2.

Для набора 320 данных изображения с разрешением 1920×1080, установленный размер максимального элемента кодирования равен 64×64, а установленная максимальная глубина равна 3. Для набора 330 данных изображения с разрешением 352×288, установленный размер максимального элемента кодирования равен 16×16, а установленная максимальная глубина равна 1.

Когда разрешение является высоким, либо когда объем данных велик, максимальный размер элемента кодирования может быть относительно большим, чтобы увеличить коэффициент сжатия и сделать характеристики отраженного изображения более точными. Соответственно, для наборов 310 и 320 данных изображения с более высоким разрешением, нежели у набора 330 данных изображения, в качестве размера максимального элемента кодирования может быть выбран 64×64.

Максимальная глубина указывает общее число слоев в элементах иерархического кодирования. Так как максимальная глубина набора 310 данных изображения равна 2, то элемент 315 кодирования набора 310 данных изображения может включать в себя максимальный элемент кодирования, размер длинной оси которого равен 64, и подэлементы кодирования, размеры длинных осей которых равны 32 и 16, в соответствии с увеличением глубины.

С другой стороны, так как максимальная глубина набора 330 данных изображения равна 1, то элемент 335 кодирования набора 330 данных изображения может включать в себя максимальный элемент кодирования, размер длинной оси которого равен 16, и подэлементы кодирования, размер длинной оси которых равен 8, в соответствии с увеличением глубины.

Однако, так как максимальная глубина данных 320 изображения равна 3, то элемент 325 кодирования набора 320 данных изображения может включать в себя максимальный элемент кодирования, размер длинной оси которого равен 64, и подэлементы кодирования, размеры длинных осей которых равны 32, 16, 8 и 4, в соответствии с увеличением глубины. Так как изображение кодировано на основании меньшего подэлемента кодирования по мере увеличения глубины, то примерные варианты осуществления подходят для кодирования изображения, включающего в себя более длинные сцены.

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

Внутренний предиктор 410 выполняет внутреннее прогнозирование на элементах прогнозирования в режиме внутреннего прогнозирования в текущем кадре 405, а устройство 420 оценки движения и устройство 425 компенсации движения выполняют взаимное прогнозирование и компенсацию движения на элементах прогнозирования в режиме взаимного прогнозирования, используя текущий кадр 405 и опорный кадр 495. Внутренний предиктор 410, устройство 420 оценки движения, устройство 425 компенсации и опорный кадр 495 могут быть осуществлены, например, в качестве аппаратного обеспечения или модулей программного обеспечения, интегрированных в устройство 400 кодирования изображения, либо находящихся отдельно от устройства 400 кодирования изображения.

Остаточные значения генерируются на основании вывода элементов прогнозирования из внутреннего предиктора 410, устройства 420 оценки движения и устройства 425 компенсации движения. Генерированные остаточные значения являются выводом в виде квантованных коэффициентов преобразования при прохождении через устройство 430 преобразования и устройство 440 квантования.

Квантованные коэффициенты преобразования восстанавливаются до остаточных значений при прохождении через устройство 460 обратного квантования и устройство 470 обратного преобразования, а восстановленные остаточные значения проходят последующую обработку при прохождении через элемент 480 деблокирования и элемент 490 цикличной фильтрации и выводятся в виде опорного кадра 495. Квантованные коэффициенты преобразования могут быть выводом в виде потока 455 двоичных данных при прохождении через устройство 450 энтропийного кодирования.

Для выполнения кодирования на основании способа кодирования в соответствии с примерным вариантом осуществления, внутренний предиктор 410, устройство 420 оценки движения, устройство 425 компенсации движения, устройство 430 преобразования, устройство 440 квантования, устройство 450 энтропийного кодирования, устройство 460 обратного квантования, устройство 470 обратного преобразования, элемент 480 деблокирования и элемент 490 цикличной фильтрации устройства 400 кодирования изображения выполняют процессы кодирования на основании максимального элемента кодирования, подэлемента кодирования в соответствии с глубинами, элементом прогнозирования и элементом преобразования.

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

Поток 505 двоичных данных проходит через устройство 510 разбора, так что происходит разбор данных кодированного изображения, подлежащих декодированию, и информации кодирования, используемой для декодирования. Данные кодированного изображения выводятся в виде обратно квантованных данных при прохождении через устройство 520 энтропийного кодирования и устройство 530 обратного квантования и восстанавливаются до остаточных значений при прохождении через устройство 540 обратного преобразования. Остаточные значения восстанавливаются в соответствии с элементами кодирования путем их добавления к результату внутреннего прогнозирования внутреннего предиктора 550 или к результату компенсации движения устройства 560 компенсации движения. Восстановленные элементы кодирования используются для прогнозирования следующих элементов кодирования или следующего кадра при прохождении через элемент 570 деблокировки и элемент 580 цикличной фильтрации. Устройство 510 разбора, устройство 520 энтропийного кодирования, устройство 530 обратного квантования, устройство 540 обратного преобразования, внутренний предиктор 550, устройство 560 компенсации, элемент 570 деблокировки и элемент 580 цикличной фильтрации могут быть осуществлены, например, в качестве аппаратного обеспечения или модулей программного обеспечения, интегрированных в устройство 500 кодирования изображения либо находящихся отдельно от устройства 500 кодирования изображения.

Для выполнения декодирования на основании способа деблокирования в соответствии с примерным вариантом осуществления, устройство 510 разбора, устройство 520 энтропийного кодирования, устройство 530 обратного квантования, устройство 540 обратного преобразования, внутренний предиктор 550, устройство 560 компенсации, элемент 570 деблокировки и элемент 580 цикличной фильтрации устройства 500 кодирования изображения выполняют процессы декодирования изображения на основании максимального элемента кодирования, подэлемента кодирования в соответствии с глубинами, элементом прогнозирования и элементом преобразования.

Более конкретно, внутренний предиктор 550 и устройство 560 компенсации определяют элемент прогнозирования и режим прогнозирования в подэлементе кодирования путем рассмотрения максимального элемента кодирования и глубины, а устройство 540 обратного преобразования выполняет обратное преобразование путем рассмотрения размера элемента преобразования.

Фиг. 6 изображает максимальный элемент кодирования, подэлемент кодирования и элемент прогнозирования в соответствии с примерным вариантом осуществления.

Устройство 100 кодирования изображения, проиллюстрированное на Фиг. 1, и устройство 200 декодирования изображения, проиллюстрированное на Фиг. 2, используют элементы иерархического кодирования для выполнения кодирования и декодирования в отношении характеристик изображения. Максимальный элемент кодирования и максимальная глубина могут быть адаптивно установлены в соот