Способ и устройство для обработки изображения
Иллюстрации
Показать всеИзобретение относится к вычислительной технике. Технический результат заключается в повышении точности прогнозирования. Устройство для обработки изображения содержит модуль вычисления остаточной энергии в пространственном режиме, конфигурированный для использования информации вектора движения согласно режиму пространственного прогнозирования движения для целевого блока с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение; модуль вычисления остаточной энергии во временном режиме, конфигурированный для использования информации вектора движения согласно режиму временного прогнозирования движения для целевого блока с применением указанного периферийного пиксела; и модуль определения режима кодирования с прогнозированием движения, конфигурированный для определения, что кодирование целевого блока должно быть выполнено в режиме пространственного прогнозирования движения, если остаточная энергия в пространственном режиме не больше остаточной энергии во временном режиме, и определения, что кодирование целевого блока должно быть выполнено в режиме временного прогнозирования движения, если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме. 4 н. и 10 з.п. ф-лы, 23 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к способу и устройству для обработки изображения и в частности относится к способу и устройству для обработки изображения, которые позволяют не допустить увеличения объема сжатой информации, а также позволяют повысить точность прогнозирования.
Уровень техники
В последние годы широкое распространение получили устройства, в которых изображение подвергают сжимающему кодированию с использованием системы кодирования, обрабатывающей информацию изображения в форме цифровых сигналов, и в этот момент сжимают изображение посредством ортогонального преобразования, такого как дискретное косинусное преобразование или другое подобное преобразование, и осуществляют компенсацию движения, используя наличие избыточности, которая является свойством информации изображения, для осуществления передачи и накопления информации с высокой эффективностью. Примеры такого способа кодирования включают алгоритмы MPEG (группа экспертов по кинематографии) и т.п.
В частности, стандарт MPEG2 (ISO/IEC 13818-2) определен в качестве системы кодирования изображения общего назначения и является стандартом, охватывающим как изображения с чересстрочной разверткой, так и изображения с построчной разверткой, а также изображения со стандартным разрешением и изображения высокой четкости. Например, стандарты MPEG2 широко использовались до последнего времени самыми разнообразными приложениями как для профессионального, так и для потребительского применения. При использовании системы сжатия MPEG2 для изображения с чересстрочной разверткой и стандартным разрешением, имеющего размер, например, 720×480 пикселов, выделяют объем кода (скорость передачи информации) от 4 до 8 Мбит/с. В то же время при использовании системы сжатия MPEG2 для изображения с чересстрочной разверткой и высокой четкостью, имеющего размер, например, 1920×1088 пикселов, выделяют объем кода (скорость передачи информации) от 11 до 22 Мбит/с. Таким способом можно реализовать высокий коэффициент сжатия и превосходное качество изображения.
Стандарт MPEG2 принципиально направлен на реализацию высококачественного кодирования изображения применительно к области широкого вещания, но не работает с более низкими объемами кода (скоростью передачи информации), чем объем кода для стандартов MPEG1, т.е. системы кодирования, имеющей более высокий коэффициент сжатия. Ожидалось, что потребность в такой системе кодирования будет только возрастать вследствие распространения персональных цифровых помощников, и в ответ на такие потребности была произведена стандартизация системы кодирования MPEG4. Технические характеристики такой системы кодирования были утверждены в качестве международного стандарта ISO/IEC 14496-2 в Декабре 1998.
Кроме того, в последние годы продвигался процесс оформления стандарта, именуемого H.26L (ITU-T Q6/16 VCEG) и имеющего целью кодирование изображения для использования в ходе телеконференций. Относительно стандарта H.26L было обнаружено, что хотя при кодировании и декодировании в этом стандарте требуется выполнить больший объем вычислений по сравнению с обычной системой кодирования, такой как MPEG2 или MPEG4, тем не менее реализуется более высокая эффективность кодирования. Кроме того, в настоящее время в рамках работы над стандартами MPEG4 ведется разработка стандартов, позволяющих использовать преимущества функций, не поддерживаемых стандартами H.26L, причем стандарты H.26L взяты за основу для реализации повышенной эффективности кодирования. Эти работы велись под названием «Совместная модель видеокодирования с повышенной степенью сжатия» (Joint Model of Enhanced-Compression Video Coding). В рамках этих работ по стандартизации стандарты Н.264 и MPEG-4 Part10 (Усовершенствованное видеокодирование (Advanced Video Coding), именуемое далее H.264/AVC) стали международными стандартами в марте 2003.
В частности, при использовании системы MPEG2 обработка данных для прогнозирования и компенсации движения с точностью 1/2 пиксела производилась посредством линейной интерполяции. С другой стороны, при использовании системы Н.264/AVC обработка данных для прогнозирования и компенсации с точностью 1/4 пиксела производится с применением имеющего 6 отводов фильтра с конечной импульсной характеристикой (КИХ-фильтра (FIR)).
При работе в системе MPEG2 в режиме компенсации движения кадра обработка данными для прогнозирования и компенсации движения осуществляется блоками размером 16×16 пикселов. В режиме компенсации движения по полям обработка данных для прогнозирования и компенсации движения осуществляется в каждом - и в первом, и во втором - поле блоками размером 16×8 пикселов.
С другой стороны, при работе в системе H.264/AVC прогнозирование и компенсацию движения можно осуществлять, используя размер блока в качестве переменной. В частности, в системе H.264/AVC один макроблок размером 16×16 пикселов можно разбить на секции одного из типов 16×16, 16×8, 8×16 и 8×8, так что каждая секция имеет независимую информацию вектора движения. Кроме того, секция размером 8x8 может быть разбита на подсекции одного из типов 8×8, 8×4, 4×8 и 4×4, так что каждая подсекция имеет независимую информацию вектора движения.
Однако при работе в системе H.264/AVC в результате обработки данных для прогнозирования и компенсации движения с точностью 1/4 пиксела и переменным размером блока происходит генерации больших объемов информации о векторах движения, что ведет к деградации эффективности кодирования, если кодировать эту информацию без изменений.
Вследствие этого было предложено уменьшить деградацию эффективности кодирования с применением способа генерации информации вектора прогнозирования движения целевого блока, к кодированию которого нужно приступить в текущий момент, используя уже кодированную информацию вектора движения для соседнего блока посредством усреднения или сходным способом.
Далее, поскольку объем информации векторов движения в двунаправленных аппроксимированных кадрах (В-кадрах) очень велик, в системе H.264/AVC предложен режим кодирования, именуемый кодированием с прогнозированием движения (direct mode). Кодирование с прогнозированием движения представляет собой режим кодирования для генерации информации движения на основе информации движения в кодированном блоке посредством прогнозирования, так что некоторое количество бит, необходимых для кодирования информации движения, становится ненужным, что позволяет улучшить сжимающее кодирование.
Кодирование с прогнозированием движения включает два типа прогнозирования - режим пространственного прогнозирования движения (Spatial Direct Mode) и режим временного прогнозирования движения (Temporal Direct Mode). Режим пространственного прогнозирования движения использует преимущества корреляции информации движения главным образом в пространстве (горизонтальное и вертикальное направления в двумерном пространстве картинки), а режим временного прогнозирования движения использует преимущества корреляции главным образом по оси времени.
Используемый режим пространственного прогнозирования движения или временного прогнозирования движения можно переключать для каждого среза. В частности, описание этого дано в параграфе «7.3.3. Синтаксис заголовков срезов» ("7.3.3. Slice header syntax") в непатентной Литературе 1 (NPL 1), который указывает, что в срезе объекта флаг "direct_spatial_mv_pred_flag" устанавливает, какой именно режим - пространственное прогнозирование движения или временное прогнозирование движения - использовать.
Перечень литературы
Непатентная Литература
NPL 1: "ITU-T Recommendation Н.264 Advanced video coding for generic audiovisual", November 2007
Сущность изобретения
Техническая проблема
Между прочим, даже в пределах одного среза выбор способа кодирования - какой именно режим прогнозирования движения - пространственное прогнозирование движения или временное прогнозирование движения, дает наилучшую эффективность кодирования, отличается для каждого макроблока или каждого блока.
Однако в системе H.264/AVC переключение режимов осуществлялось только для каждого среза. Кроме того, если выбирать оптимальный режим кодирования с прогнозированием движения для каждого макроблока или каждого блока, подлежащего кодированию, и передавать информацию, указывающую использованный режим кодирования с прогнозированием движения, устройству декодирования изображения, то это приведет к деградации эффективности кодирования.
Настоящее изобретение было сделано с учетом такой ситуации и с целью не допустить увеличения объема сжатой информации, а также улучшить точность прогнозирования.
Решение проблемы
Устройство для обработки изображения согласно первому аспекту настоящего изобретения включает: модуль вычисления остаточной энергии в пространственном режиме, конфигурированный для использования информации вектора движения согласно режиму пространственного прогнозирования движения для целевого блока с целью вычисления остаточной энергии в режиме пространственного прогнозирования движения с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение; модуль вычисления остаточной энергии во временном режиме, конфигурированный для использования информации вектора движения согласно режиму временного прогнозирования движения для целевого блока с целью вычисления остаточной энергии в режиме временного прогнозирования движения с применением указанного периферийного пиксела; и модуль определения режима кодирования с прогнозированием движения, конфигурированный для определения, что кодирование целевого блока должно быть выполнено в режиме пространственного прогнозирования движения, если остаточная энергия в пространственном режиме, вычисленная модулем вычисления остаточной энергии в пространственном режиме, не больше остаточной энергии во временного режиме, вычисленной модулем вычисления остаточной энергии во временном режиме, и определения, что кодирование целевого блока должно быть выполнено в режиме временного прогнозирования движения, если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме.
Устройство для обработки изображения может дополнительно включать: модуль кодирования, конфигурированный для кодирования целевого блока в соответствии с режимом пространственного прогнозирования движения или режимом временного прогнозирования движения, определенным посредством модуля определения. режима кодирования с прогнозированием движения.
Модуль вычисления остаточной энергии в пространственном режиме может вычислять эту остаточную энергию в пространственном режиме на основе яркостной составляющей Y сигнала (далее Y-составляющая сигнала), синей цветностной составляющей Cb сигнала (далее Cb-составляющая сигнала) и красной цветностной составляющей Cr сигнала (далее Cr-составляющая сигнала), модуль вычисления остаточной энергии во временном режиме может вычислять эту остаточную энергию во временном режиме на основе Y-составляющей сигнала, Cb-составляющей сигнала и Cr-составляющей сигнала, а модуль определения режима кодирования с прогнозированием движения может сравнивать соотношение величин между остаточной энергией пространственного режима и остаточной энергией временного режима для каждой составляющей сигнала - Y-составляющей сигнала, Cb-составляющей сигнала и Cr-составляющей сигнала, чтобы определить, следует ли целевой блок кодировать в режиме пространственного прогнозирования движения или в режиме временного прогнозирования движения.
Модуль вычисления остаточной энергии в пространственном режиме может вычислить эту остаточную энергию в пространственном режиме на основе яркостной составляющей сигнала целевого блока, а модуль вычисления остаточной энергии во временном режиме может вычислить эту остаточную энергию во временном режиме также на основе яркостной составляющей сигнала целевого блока.
Модуль вычисления остаточной энергии в пространственном режиме может вычислить эту остаточную энергию в пространственном режиме на основе яркостной составляющей сигнала и цветоразностной составляющей сигнала целевого блока, а модуль вычисления остаточной энергии во временном режиме может вычислить эту остаточную энергию во временном режиме также на основе яркостной составляющей сигнала и цветоразностной составляющей сигнала целевого блока.
Устройство для обработки изображения может дополнительно включать: модуль вычисления вектора движения в пространственном режиме, конфигурированный для вычисления информации вектора движения согласно режиму пространственного прогнозирования движения; и модуль вычисления вектора движения во временном режиме, конфигурированный для вычисления информации вектора движения согласно режиму временного прогнозирования движения.
Способ обработки изображения согласно первому аспекту настоящего изобретения включает этапы, в соответствии с которыми устройство для обработки изображения: использует информацию векторов движения согласно режиму пространственного прогнозирования движения целевого блока для вычисления остаточной энергии в пространственном режиме с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение; использует информацию векторов движения согласно режиму временного прогнозирования движения целевого блока для вычисления остаточной энергии во временном режиме с применением периферийного пиксела; и определяет, что кодирование целевого блока должно быть выполнено в режиме пространственного прогнозирования движения, если остаточная энергия в пространственном режиме, вычисленная модулем вычисления остаточной энергии в пространственном режиме, не больше остаточной энергии во временном режиме и определяет, что кодирование целевого блока должно быть выполнено в режиме временного прогнозирования движения, если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме.
Устройство для обработки изображения согласно второму аспекту настоящего изобретения включает: модуль вычисления остаточной энергии в пространственном режиме, конфигурированный для использования информации вектора движения согласно режиму пространственного прогнозирования движения для целевого блока, кодируемого в режиме кодирования с прогнозированием движения, с целью вычисления остаточной энергии режима пространственного прогнозирования движения с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение; модуль вычисления остаточной энергии во временном режиме, конфигурированный для использования информации вектора движения согласно режиму временного прогнозирования движения для целевого блока с целью вычисления остаточной энергии во временном режиме с применением указанного периферийного пиксела; и модуль определения режима кодирования с прогнозированием движения, конфигурированный для определения, что следует генерировать прогнозируемое изображение целевого блока в режиме пространственного прогнозирования движения, если остаточная энергия в пространственном режиме, вычисленная модулем вычисления остаточной энергии в пространственном режиме, не больше остаточной энергии во временно режиме, вычисленной модулем вычисления остаточной энергии во временном режиме, и определения, что следует генерировать прогнозируемое изображение целевого блока в режиме временного прогнозирования движения, если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме.
Устройство для обработки изображения может дополнительно включать: модуль компенсации движения, конфигурированный для генерации прогнозируемого изображения целевого блока в соответствии с режимом пространственного прогнозирования движения или режимом временного прогнозирования движения, определенным посредством модуля определения режима прогнозирования движения.
Модуль вычисления остаточной энергии в пространственном режиме может вычислять эту остаточную энергию в пространственном режиме на основе Y-составляющей сигнала, Cb-составляющей сигнала и Cr-составляющей сигнала, модуль вычисления остаточной энергии во временном режиме может вычислять эту остаточную энергию во временном режиме на основе Y-составляющей сигнала, Cb-составляющей сигнала и Cr-составляющей сигнала, а модуль определения режима кодирования с прогнозированием движения может сравнивать соотношение величин между остаточной энергией пространственного режима и остаточной энергией временного режима для каждой составляющей сигнала - Y-составляющей сигнала, Cb-составляющей сигнала и Cr-составляющей сигнала, чтобы определить, следует ли генерировать прогнозируемое изображение целевого блока в режиме пространственного прогнозирования движения или генерировать прогнозируемое изображение в режиме временного прогнозирования движения.
Модуль вычисления остаточной энергии в пространственном режиме может вычислить эту остаточную энергию в пространственном режиме на основе яркостной составляющей сигнала целевого блока, а модуль вычисления остаточной энергии во временном режиме может вычислить эту остаточную энергию во временном режиме также на основе яркостной составляющей сигнала целевого блока.
Модуль вычисления остаточной энергии в пространственном режиме может вычислить эту остаточную энергию в пространственном режиме на основе яркостной составляющей сигнала и цветоразностной составляющей сигнала целевого блока, а модуль вычисления остаточной энергии во временном режиме может вычислить эту остаточную энергию во временном режиме также на основе яркостной составляющей сигнала и цветоразностной составляющей сигнала целевого блока.
Способ обработки изображения согласно второму аспекту настоящего изобретения включает этапы, в соответствии с которыми устройство для обработки изображения: использует информацию векторов движения согласно режиму пространственного прогнозирования движения целевого блока, кодированного в режиме кодирования с прогнозированием движения, для вычисления остаточной энергии в пространственном режиме с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение; использует информацию векторов движения согласно режиму временного прогнозирования движения целевого блока для вычисления остаточной энергии во временном режиме с применением периферийного пиксела; и определяет, что следует генерировать прогнозируемое изображение целевого блока в режиме пространственного прогнозирования движения, если остаточная энергия в пространственном режиме не больше остаточной энергии во временном режиме прогнозирования движения, и определяет, что следует генерировать прогнозируемое изображение целевого блока в режиме временного прогнозирования движения, если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме.
В соответствии с первым аспектом настоящего изобретения информацию вектора движения согласно режиму пространственного прогнозирования движения для целевого блока используют для вычисления остаточной энергии в пространственном режиме с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение, информацию вектора движения согласно режиму временного прогнозирования движения для целевого блока используют для вычисления остаточной энергии во временном режиме с применением указанного периферийного пиксела. После этого, если остаточная энергия в пространственном режиме не больше остаточной энергии во временном режиме, определяют, что кодирование целевого блока должно быть выполнено в режиме пространственного прогнозирования движения, и если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме, определяют, что кодирование целевого блока должно быть выполнено в режиме временного прогнозирования движения.
В соответствии со вторым аспектом настоящего изобретения информацию вектора движения согласно режиму пространственного прогнозирования движения для целевого блока, кодированного в режиме кодирования с прогнозированием движения, используют для вычисления остаточной энергии в пространственном режиме с применением периферийного пиксела, расположенного рядом с целевым блоком в заданном позиционном соотношении с этим блоком и также включенного в декодированное изображение, и информацию вектора движения согласно режиму временного прогнозирования движения для целевого блока используют для вычисления остаточной энергии во временном режиме с применением указанного периферийного пиксела. После этого, если остаточная энергия в пространственном режиме не больше вычисленной остаточной энергии во временном режиме, определяют, что следует генерировать прогнозируемое изображение целевого блока в режиме пространственного прогнозирования движения, и если остаточная энергия в пространственном режиме больше остаточной энергии во временном режиме, определяют, что следует генерировать прогнозируемое изображение целевого блока в режиме временного прогнозирования движения.
Отметим, что описанные выше устройства для обработки изображения могут быть автономными устройствами либо могут быть внутренними блоками, составляющими одно устройство кодирования изображения или устройство декодирования изображения.
Преимущества изобретения
Согласно первому аспекту настоящего изобретения для кодирования целевого блока может быть определен режим кодирования с прогнозированием движения. Кроме того, согласно первому аспекту настоящего изобретения можно не допустить увеличения объема сжатой информации, а также повысить точность прогнозирования.
Согласно второму аспекту настоящего изобретения для генерации прогнозируемого изображения целевого блока может быть определен режим кодирования с прогнозированием движения. Кроме того, согласно второму аспекту настоящего изобретения можно не допустить увеличения объема сжатой информации, а также повысить точность прогнозирования.
Краткое описание чертежей
Фиг.1 представляет блок-схему, иллюстрирующую конфигурацию варианта устройства для кодирования изображения, к которому применено настоящее изобретение.
Фиг.2 представляет схему, описывающую обработку данных для прогнозирования и компенсации движения при переменном размере блока.
Фиг.3 представляет схему, описывающую обработку данных для прогнозирования и компенсации движения с точностью 1/4 пиксела.
Фиг.4 представляет схему, описывающую способ прогнозирования и компенсации движения с несколькими опорными кадрами.
Фиг.5 представляет схему, описывающую пример способа генерации информации вектора движения.
Фиг.6 представляет блок-схему, иллюстрирующую пример конфигурации модуля выбора режима кодирования с прогнозированием движения.
Фиг.7 представляет логическую схему, описывающую обработку данных при кодировании в устройстве для кодирования изображения, показанном на Фиг.1.
Фиг.8 представляет логическую схему, описывающую обработку данных при прогнозировании на этапе S21, показанном на Фиг.7.
Фиг.9 представляет логическую схему, описывающую обработку данных при внутрикадровом прогнозировании на этапе S31, показанном на Фиг.8.
Фиг.10 представляет логическую схему, описывающую обработку данных при межкадровом прогнозировании движения на этапе S32, показанном на Фиг.8.
Фиг.11 представляет логическую схему, описывающую обработку данных при прогнозировании в режиме кодирования с прогнозированием движения на этапе S33, показанном на Фиг.8.
Фиг.12 представляет схему, описывающую режим временного прогнозирования движения.
Фиг.13 представляет схему, описывающую пример вычисления остаточной энергии.
Фиг.14 представляет блок-схему, иллюстрирующую конфигурацию варианта устройства для декодирования изображения, к которому применено настоящее изобретение.
Фиг.15 представляет логическую схему, описывающую обработку данных при декодировании в устройстве декодирования изображения, показанном на Фиг.14.
Фиг.16 представляет логическую схему, описывающую обработку данных при прогнозировании на этапе S138, показанном на Фиг.15.
Фиг.17 представляет логическую схему, описывающую обработку данных при прогнозировании движения между шаблонами на этапе S177, показанном на Фиг.16.
Фиг.18 представляет схему, иллюстрирующую пример увеличенного размера блоков.
Фиг.19 представляет блок-схему, иллюстрирующую пример конфигурации аппаратуры компьютера.
Фиг.20 представляет блок-схему, иллюстрирующую пример принципиальной конфигурации телевизионного приемника, в котором применено настоящее изобретение.
Фиг.21 представляет блок-схему, иллюстрирующую пример принципиальной конфигурации сотового телефона, в котором применено настоящее изобретение.
Фиг.22 представляет блок-схему, иллюстрирующую пример принципиальной конфигурации устройства записи информации на жестком диске, в котором применено настоящее изобретение.
Фиг.23 представляет блок-схему, иллюстрирующую пример принципиальной конфигурации видеокамеры, в которой применено настоящее изобретение.
Подробное описание изобретения
Далее вариант настоящего изобретения будет описан со ссылками на прилагаемые чертежи.
Пример конфигурации устройства для кодирования изображения
Фиг.1 представляет конфигурацию варианта устройства для кодирования изображения, служащего устройством для обработки изображения, к которому применено настоящее изобретение.
Это устройство 51 для кодирования изображения осуществляет сжимающее кодирование изображения с применением, например, системы, использующей алгоритмы Н.264 и MPEG-4 Part10 (Advanced Video Coding) (далее именуемой 264/AVC). Отметим, что кодирование в устройстве 51 для кодирования изображения осуществляется с шагом, равным блоку или макроблоку. В дальнейшем, применительно к подлежащему кодированию «целевому» блоку описание будет дано в предположении, что в этот целевой блок включен блок или макроблок.
В примере, показанном на Фиг.1, устройство 51 для кодирования изображения конфигурировано на основе аналого-цифрового (A/D) преобразователя 61, буфера 62 сортировки экрана, вычислительного модуля 63, модуля 64 ортогонального преобразования, модуля 65 квантования, модуля 66 кодирования без потерь, накопительного буфера 67, модуля 68 обратного квантования, модуля 69 обратного ортогонального преобразования, вычислительного модуля 70, деблокирующего фильтра 71, памяти 72 кадров, переключателя 73, модуля 74 внутрикадрового прогнозирования, модуля 75 прогнозирования/компенсации движения, модуля 76 выбора режима кодирования с прогнозированием движения, модуля 77 выбора прогнозируемого изображения и модуля 78 управления частотой квантования.
Аналого-цифровой преобразователь 61 преобразует входное изображение из аналоговой в цифровую форму и передает буферу 62 сортировки экрана для сохранения. Этот буфер 62 сортировки экрана сортирует изображения кадров в порядке записи для представления на дисплее в порядке кадров для кодирования в соответствии с Группой изображений (GOP).
Вычислительный модуль 63 вычитает из изображения, считываемого из буфера 62 сортировки экрана, прогнозируемое изображение от модуля 74 внутрикадрового прогнозирования, выбранное модулем 77 выбора прогнозируемого изображения, или прогнозируемое изображение от модуля 75 прогнозирования/компенсации движения и передает полученную разностную информацию модулю 64 ортогонального преобразования. Модуль 64 ортогонального преобразования осуществляет ортогональное преобразование, такое как дискретное косинусное преобразование, преобразование Карунена-Лоэва и т.п., этой разностной информации от вычислительного модуля 63 и передает на выход коэффициенты преобразования. Модуль 65 квантования осуществляет квантование этих коэффициентов преобразования с выхода модуля 64 ортогонального преобразования.
Квантованные коэффициенты преобразования с выхода модуля 65 квантования поступают в модуль 66 кодирования без потерь, где к ним применяют кодирование без потерь, такое как кодирование в коде переменной длины, арифметическое кодирование и т.п. и сжимают.
Модуль 66 кодирования без потерь получает информацию индикации внутрикадрового прогнозирования от модуля 74 внутрикадрового прогнозирования и получает информацию индикации межкадрового прогнозирования и режима кодирования с прогнозированием движения и т.п. от модуля 75 прогнозирования/компенсации движения. Отметим, что в дальнейшем информация индикации внутрикадрового прогнозирования будет именоваться информацией режима внутрикадрового прогнозирования. Кроме того, информация индикации режима межкадрового прогнозирования и информация индикации режима кодирования с прогнозированием движения будет именоваться информацией режима межкадрового прогнозирования и информацией режима кодирования с прогнозированием движения, соответственно.
Модуль 66 кодирования без потерь кодирует квантованные коэффициенты преобразования, а также кодирует информацию индикации внутрикадрового прогнозирования, информацию индикации межкадрового прогнозирования и режима кодирования с прогнозированием движения и т.п. и берет все эти данные в качестве части информации заголовка в сжатом изображении. Модуль 66 кодирования без потерь передает кодированные данные в накопительный буфер 67 для накопления.
Например, модуль 66 кодирования без потерь осуществляет обработку данных для кодирования без потерь, такого как кодирование в коде переменной длины, арифметическое кодирование и т.п. Примеры кодирования в коде переменной длины включают CAVLC (Контекстно-адаптивное кодирование в коде переменной длины (Context-Adaptive Variable Length Coding)), определенное в системе H.264/AVC. Примеры арифметического кодирования включают САВАС (Контекстно-адаптивное двоичное арифметическое кодирование (Context-Adaptive Binary Arithmetic Coding)).
Накопительный буфер 67 передает данные, поступившие от модуля 66 кодирования без потерь в, например, расположенное далее по логической схеме запоминающее устройство или в тракт передачи данных и т.п., не показанные на чертеже, в качестве сжатого изображения, кодированного в системе H.264/AVC.
Кроме того, квантованные коэффициенты преобразования с выхода модуля 65 квантования поступают также на вход модуля 68 обратного квантования, где их подвергают операции обратного квантования и затем выполняют обратное ортогональное преобразование полученных коэффициентов в модуле 69 обратного ортогонального преобразования. Вычислительный модуль 70 суммирует результат обратного ортогонального преобразования с прогнозируемым изображением, поступающим от модуля 77 выбора прогнозируемого изображения, и получает локально декодированное изображение. Деблокирующий фильтр 71 устраняет блочные искажения из декодированного изображения и затем передает результат в память 72 кадров для накопления.
Переключатель 73 передает опорные изображения, накопленные в памяти 72 кадров, модулю 75 прогнозирования/компенсации движения или модулю 74 внутрикадрового прогнозирования.
В таком устройстве - 51 для кодирования изображения опорный кадр (I-кадр), аппроксимированный кадр (В-кадр) и прогнозируемый кадр (Р-кадр) из буфера 62 сортировки экрана передают в модуль 74 внутрикадрового прогнозирования в качестве изображения, подлежащего внутрикадровому прогнозированию (именуемому также внутрикадровой обработкой), например. Кроме того, B-кадр и Р-кадр, считываемые из буфера 62 сортировки экрана, направляют в модуль 75 прогнозирования/компенсации движения в качестве изображения, подлежащего межкадровому прогнозированию (именуемому также межкадровой обработкой).
Модуль 74 внутрикадрового прогнозирования выполняет обработку данных внутрикадрового прогнозирования для всех режимов внутрикадрового прогнозирования, служащих кандидатами, на основе подлежащего внутрикадровому прогнозированию изображения, считываемого из буфера 62 сортировки экрана, и опорного изображения, поступающего из памяти 72 кадров, для генерации прогнозируемого изображения.
В этот момент модуль 74 внутрикадрового прогнозирования вычисляет величину целевой функции для всех режимов внутрикадрового прогнозирования, служащих кандидатами, и выбирает режим внутрикадрового прогнозирования, которому соответствует минимальная величина вычисленной целевой функции, в качестве оптимального режима внутрикадрового прогнозирования.
Модуль 74 внутрикадрового прогнозирования передает прогнозируемое изображение, генерируемое в оптимальном режиме внутрикадрового прогнозирования, и величину целевой функции для этого изображения в модуль 77 выбора прогнозируемого изображения. Если этот модуль 77 выбора прогнозируемого изображения выберет прогнозируемое изображение, сформированное в оптимальном режиме внутрикадрового прогнозирования, модуль 74 внутрикадрового прогнозирования передает информацию, указывающую оптимальный режим внутрикадрового прогнозирования, модулю 66 кодирования без потерь. Этот модуль 66 кодирования без потерь кодирует полученную информацию и делает ее частью информации заголовка сжатого изображения.
Модуль 75 прогнозирования/компенсации движения осуществляет обработку данных прогнозирования и компенсации движения для всех режимов межкадрового прогнозирования, служащих кандидатами. В частности, в модуль 75 прогнозирования/компенсации движения поступают подлежащее межкадровой обработке изображение, считываемое из буфера 62 сортировки экрана, и через переключатель 73 опорное изображение из памяти 72 кадров. Модуль 75 прогнозирования/компенсации движения определяет векторы движения для всех режимов межкадрового прогнозирования, служащих кандидатами, на основе изображения, подлежащего межкадровой обработке, и опорного изображения, подвергает опорное изображение компенсационной обработке на основе этих векторов движения и генерирует прогнозируемое изображение.
Отметим, что модуль 75 прогнозирования/компенсации движения подвергает В-кадр обработке для прогнозирования и компенсации движения "на основе изображения, подлежащего межкадровой обработке, и опорного изображения, а также на основе режима кодирования с прогнозированием движения для генерации прогнозируемого изображения.
В режиме кодирования с прогнозированием движения информацию векторов движения не сохраняют в составе сжатого изображения. В частности, на декодирующей стороне, имея информацию векторов движения вокруг целевого блока или опорного кадра, информацию векторов движения целевого блока выделяют из информации векторов движения совмещенного блока, представляющего собой блок, имеющий такие же координаты, как и целевой блок. Соответственно, нет необходимости передавать информацию векторов движения на декодирующую сторону.
Такой режим кодирования с прогнозированием движения включает два типа режимов - режим пространственного прогнозирования (Spatial Direct Mode) и режим временного прогнозирования (Temporal Direct Mode). Режим пространственного прогнозирования представляет собой режим, использующий преимущества корреляции информации движения главным образом в пространственном направлении (по горизонтали и по вертикали в двумерном пространстве в пределах изображения), и в общем случае имеет преимущество в ситуации, когда изображение включает подобные движения с изменяющимися скоростями. С другой стороны, режим временного прогнозирования представляет собой режим, использующий преимущества корреляции информации движения главным образом по оси времени, и в общем случае имеет преимущество в с