КОМПЕНСАЦИЯ ГЛОБАЛЬНОГО ДВИЖЕНИЯ ДЛЯ ВИДЕОИЗОБРАЖЕНИЙ Российский патент 2007 года по МПК H04N7/50 H04N7/26 

Описание патента на изобретение RU2307478C2

Перекрестная ссылка на родственные заявки

По этой заявке на патент испрашивается приоритет находящейся на рассмотрении одновременно с настоящей заявкой предварительной заявки на патент США, серийный № 60/334979, поданной 30 ноября 2001 г., полное раскрытие которой включено в настоящее описание в качестве ссылки.

Предшествующий уровень техники

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

Ожидается, что варианты осуществления изобретения можно использовать для декодирования видео в связи с телевизионными декодерами стандарта сигналов телевидения сверхвысокой плотности (SDTV, ТВСП) и цифрового телевидения высокого разрешения (HDTV, ТВВР) как часть систем проведения видеоконференций, и в компьютерах, включая персональные компьютеры (ПК), портативные компьютеры и т.п. Варианты осуществления также можно использовать в мобильных устройствах, таких как мобильные телефоны и персональные цифровые информационные устройства (PDA), как часть декодера в цифровом кинопроекторе, а также в видеомагнитофонах, плеерах и в домашних развлекательных системах. Однако не предполагается, что изобретение ограничено такими вариантами осуществления.

Цифровые видеосигналы в несжатом виде обычно содержат большой объем данных. Однако фактически необходимое информационное содержимое (контент) занимает значительно меньший объем из-за сильной корреляции во времени и пространстве. Таким образом, для уменьшения объема данных, которые фактически требуются для определенных задач, таких как хранение видеосигналов или для их передачи из одного местоположения в другое, используется сжатие видео или кодирование. В процессе кодирования временная избыточность может использоваться посредством выполнения так называемых предсказаний с компенсацией движения, где области видеокадра предсказывают на основе подобных областей предыдущего кадра. То есть могут быть части кадра, которые содержат небольшое изменение или не содержат изменений по отношению к соответствующим частям предыдущего кадра. Следовательно, такие области могут быть пропущены или не закодированы для максимизации эффективности сжатия. С другой стороны, если не может быть обнаружено хорошее совпадение с предыдущим кадром, могут быть использованы предсказания внутри кадра, чтобы уменьшить пространственную избыточность. При успешной схеме предсказания погрешность предсказания будет малой, а объем информации, которая должна быть закодирована, значительно уменьшится. Кроме того, при преобразования пикселов в частотную область, например, с помощью использования дискретного косинусного преобразования, пространственные корреляции обеспечивают дополнительный выигрыш в эффективности.

В настоящем описании понятия "изображение" и "кадр" используются взаимозаменяемо и относятся к кадру данных изображения в видеопоследовательности.

Сильные корреляции во времени являются характеристикой видео. Следовательно, значительное усилие в оптимизации сжатия видео сфокусировано на выполнении точных временных предсказаний областей кадра. Чем лучше предсказание, тем меньше битов требуется для того, чтобы закодировать различие. Само предсказание кодируют в качестве инструкций относительно того, как преобразовать, или даже масштабировать, или повернуть ранее закодированную область. Если многие области кадра имеют подобное движение, такое как при панорамировании или увеличении, дополнительно повышение эффективности сжатия может быть получено в результате отдельного кодирования глобального движения, которое затем применяют ко всем или некоторым областям кадра. Этот способ часто упоминается как компенсация глобального движения (GMC, КГД).

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

Кодирование неподвижного изображения относительно компенсации движения

Типичный видеокодек, такой как выполненный в соответствии с рекомендациями Н.261 и Н.263 ITU-T, часть 2 MPEG-1, часть 2 MPEG-2 (Н.262) или часть 2 MPEG-4, работает с помощью последовательного покадрового кодирования видеопоследовательности. Кадр дополнительно разделяют на блоки, которые кодируют последовательно по строкам, начиная с верхнего левого угла и заканчивая в нижнем правом углу. Типичный размер блока равен макроблоку (МВ, МБ), покрывающему 16х16 пикселов яркости.

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

Наоборот, промежуточный кадр кодируют как изображение различия с компенсированным движением относительно предыдущего кадра. Посредством использования уже декодированного кадра (восстановленного кадра) в качестве опорного кадра видеокодер может передавать для каждого макроблока множество векторов движения (MV, ВД) и коэффициентов. Векторы движения (один или несколько, в зависимости от того, как разделен макроблок) информируют декодер о том, как пространственно преобразовывать соответствующие области опорного кадра для того, чтобы выполнить предсказание для рассматриваемого макроблока. Это упоминается как компенсация движения. Различие между предсказанием и оригиналом кодируют на основе коэффициентов преобразования. Однако компенсация движения требуется не всех макроблоков промежуточного кадра. Если изменение от опорного макроблока до текущего макроблока мало, то макроблок может быть закодирован в режиме КОПИРОВАНИЯ (COPY), т.е. не закодирован сам по себе, но при этом в отношении него имеется сигнализация о необходимости его копирования (см. раздел 5.3.1 рекомендаций Н.263 ITU-T "Coded macroblock indication (COD) (1 bit)", например, как пример реализации режима КОПИРОВАНИЯ. С другой стороны, если макроблоки существенно отличаются, может оказаться лучше кодировать его как внутренний макроблок.

Компенсация глобального движения в Н.263

Вместо ориентации на компенсацию движения только на блочной основе могло бы быть выгодно отдельно выделять глобальное движение в кадре и кодировать отклонения от глобального движения для каждого блока. В последовательности прохождения или увеличения, или когда большой объект движется через кадр, информацию обо всем движении с большой вероятностью можно поддерживать на минимальном уровне посредством такой схемы. Широко известным способом является добавление дополнительного этапа в процесс кодирования перед тем, как промежуточный кадр будет закодирован. Приложение Р (Annex P) "Reference Picture Resembling" Н.263 предоставляет способ, предназначенный для "деформации" опорного изображения, заданной четырьмя векторами и , задающими перемещения угловых пикселов кадра. Фиг. 1 изображает опорный кадр с этими векторами, соответственно, выходящими из угловых пикселов 8. Перемещения всех остальных пикселов задают с помощью билинейной интерполяции этих векторов, то есть

Уравнение (1)

где (x,y) - начальное местоположение пиксела, H и V представляют местоположения угловых пикселов в опорном кадре, и

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

Компенсация глобального движения в части 2 MPEG-4

Компенсация глобального движения также определена в стандарте изображения MPEG-4 с использованием так называемых S(GMC)-VOPs. Здесь компенсацию глобального движения применяют пиксел за пикселом, как для Приложения Р (Annex P) Н.263. Однако по-прежнему можно выбрать на уровне макроблока, следует ли или нет использовать (интерполированный) опорный кадр с компенсированным глобальным движением.

Компенсация глобального движения, предложенная для H.26L

ITU-T в настоящее время разрабатывает новый стандарт кодирования видео, Рекомендацию H.26L, которая, по всей вероятности, также должна быть совместно опубликована как международный стандарт организации ISO/IEC, называемый MPEG-4 AVC (ISO/IEC 14496-10). На текущий момент стандарт H.26L следует упомянутой выше общей схеме кодирования видео с помощью кадров и макроблоков, где каждое изображение кодируют с помощью заголовка изображения, за которым следуют макроблоки. Этот стандарт дополнительно обсужден далее в связи с фиг. 8 и 9.

Существенным недостатком при использовании компенсации глобального движения для видеокадра является потеря устойчивости к ошибкам и гибкости, обусловленная ориентацией на целые кадры. Следовательно, если векторы глобального движения закодированы только один раз для изображения, например, в начале изображения, и эта часть потока битов потеряна во время передачи, все изображение, по всей вероятности, будет испорчено. Таким образом, векторы движения для блоков по всему изображению не могут быть декодированы и должны быть скрыты. Такие ошибки также могут распространяться во времени, так как следующее изображение также может быть промежуточным изображением, следовательно, использующим испорченное изображение в качестве опорного. Другой проблемой, конкретно относящейся к предложенной схеме кодирования вектора глобального движения (GMVC, КВГД) для стандарта H.26L, является то, что не могут быть заданы разные глобальные движения для частей кадра.

Краткое изложение сущности изобретения

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

В качестве дополнительного преимущества изобретение представляет новый режим для компенсации глобального движения, упоминаемый как неявная компенсация глобального движения (IGMC, НКГД). Этот режим может быть использован как инструмент во многих сценариях кодирования, которые требуют более практичный режим МБ, чем режим КОПИРОВАНИЯ, для того чтобы минимизировать общее число битов, необходимых для векторов движения. В режиме КОПИРОВАНИЯ вектор движения всегда равен нулю. Наоборот, НКГД использует неявные векторы движения, которые предсказываются.

Изобретение может быть направлено на способ сжатия видеоданных для использования с блоками изображения, полученными с помощью разделения видеокадра на последовательность блоков. В предпочтительном варианте осуществления блоки являются макроблоками, содержащими 16х16 пикселов (яркости), и где один из нескольких возможных режимов кодирования макроблоков является режимом неявной компенсации глобального движения (НКГД). Этот режим используют для копирования пикселов из предыдущего кадра соответственно расположенного блока, смещенного на вектор движения, который предсказан на основе соседних блоков изображения текущего кадра.

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

В предпочтительном варианте осуществления информация КГД, содержащаяся в заданной закодированной секции, содержит или представляет набор закодированных векторов глобального движения (GM, ГД). Набор векторов ГД может использоваться совместно с билинейной интерполяцией для вычисления компенсации глобального движения для каждого пиксела, содержащегося в заданной закодированной секции. Альтернативно векторы ГД могут использоваться совместно с билинейной интерполяцией для вычисления компенсации глобального движения для каждого блока в массиве блоков, состоящих из 4х4 пикселов и содержащих заданную закодированную секцию.

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

Перечень чертежей

Фиг. 1 - схематическая диаграмма, иллюстрирующая компенсацию глобального движения кадра в соответствии со стандартом Н.263 сжатия видео.

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

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

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

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

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

Фиг. 8 - схематическая диаграмма, представляющая синтаксис потока битов схемы H.26L на уровнях изображения и макроблока.

Фиг. 9 - схематическая диаграмма, представляющая предложенную компенсацию глобального движения в H.26L на уровнях изображения и макроблока.

Фиг. 10 - схематическая диаграмма, изображающая секцию, содержащую макроблоки 4х4, для иллюстрации вариантов осуществления изобретения, относящихся к стандарту H.26L сжатия видео.

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

Ссылаясь на фиг. 2, изображен источник 10 видеоинформации, такой как видеокамера. Информация, содержащая последовательность видеокадров, соединена с видеокодером или средством 12 сжатия, который сжимает последовательность кадров данных в соответствии с вариантом осуществления изобретения, как описано в настоящем описании. Поток битов, представляющий сжатые данные, передают через канал 22 связи, который может быть беспроводным каналом связи, из передатчика 14 в приемник 16. Принятые данные подают в декодер 18 для восстановления видеоинформации.

Ссылаясь на фиг. 3, изображены определенные традиционные компоненты средства 12 сжатия, предназначенного для обработки макроблока 20 из 16х16 пикселов, полученного с помощью разделения кадра в последовательности видеокадров, как изображено на фиг. 4. Компоненты, изображенные на фиг. 3, включают в себя модуль преобразования, такой как модуль 24 дискретного преобразования Фурье, средство 26 квантования и двоичный кодер 28.

Как известно в данной области техники, модуль 24 преобразования принимает массив целых чисел, содержащий соответствующие уровни шкалы серого (яркость) и уровни цвета (информация о цвете) пикселов макроблока 20. Модуль 24 применяет преобразование к уровням пикселов для того, чтобы сгенерировать выходной массив коэффициентов преобразования. Как также известно, средство 26 квантования разделяет каждый коэффициент преобразования с помощью соответствующего размера шага или уровня квантования. Выходные данные средства 26 квантования направляют в двоичный кодер 28, который генерирует соответствующий поток цифровых битов 30 для передачи через канал 22.

Теперь ссылаясь на фиг. 4, изображен кадр 32, содержащий один из кадров в видеопоследовательности 34. Фиг. 4 дополнительно изображает кадр 32, сегментированный на ряд секций 36а-d, в котором каждая секция 36а-d содержит последовательность макроблоков 38. Каждый макроблок содержит массив пикселов из кадра 32. Как описано более подробно далее, секция 36 может содержать информацию КГД, относящуюся к ее макроблокам 38 и/или к кадру 32, в соответствии с вариантами осуществления изобретения.

Фиг. 4 также изображает секцию 36а более подробно, чтобы подчеркнуть, что граница секции может появляться после любого макроблока кадра. Секция 36b изображена таким образом, чтобы включать макроблоки, расположенные в нескольких строках 37 кадра. Кроме того, секция 36b начинается за несколько макроблоков от левой границы кадра секции и заканчивается за несколько макроблоков перед правой границей кадра в последней строке секции. Следовательно, некоторые секции распространяются более чем на одну строку 37, а строка 37 может содержать более чем одну секцию, как, например, нижняя строка, содержащая секции 36с и 36d.

Ссылаясь на фиг. 5, блоки 40а-40d пикселов предыдущего кадра используют для предсказания блоков 40а-40d текущего кадра. Векторы 42а-42d движения описывают местоположение, из которого пикселы из первого кадра будут скопированы в блоки 40а-40d текущего кадра. Это иллюстрирует то, что блоки 40а-40d пикселов могут быть легко определены или восстановлены с помощью использования ранее декодированного кадра вместе с векторами 42а-42d движения.

Ссылаясь на фиг. 6, изображена закодированная секция 40, сгенерированная с помощью кодирования секции, такой как секция 36b, изображенная на фиг. 4. Закодированная секция 40 содержит макроблоки или блоки 42 изображения и обеспечена заголовком 44. В одном варианте осуществления в закодированной секции 40 подают сигнал, например, с помощью включения сигнала в заголовок 44, для указания того, должна ли или нет использоваться компенсация глобального движения (КГД) при восстановлении соответствующей исходной секции 36. Если КГД должна быть использована при восстановлении секции, то заголовок 44 также включает в себя информацию КГД. Такая информация КГД обычно содержит или представляет информацию вектора движения, на основе которой векторы движения для каждого из блоков 42 секции 40 могут быть восстановлены в декодере. Следовательно, все векторы движения в секции 40 могут быть получены исключительно из информации, содержащейся в секции 40.

В другом полезном варианте осуществления все секции 40, закодированные из соответственных секций 36 видеокадра 32, упомянутого выше, содержат одинаковую информацию КГД. Например, информация КГД может содержать закодированный набор векторов и ГД, описанных выше в связи с фиг. 1. Эти векторы относятся ко всему деформированному видеокадру, как изображено на фиг. 1, и получены из векторов перемещения углового пиксела, изображенных на фиг.1 в соответствии с соотношениями, описанными выше. Устойчивость значительно повышается с помощью повторения этой информации в каждой закодированной секции, так как при этом информация достигает декодера, даже если некоторые из секций потеряны в канале передачи. Закодированные векторы ГД можно использовать с билинейной интерполяцией в соответствии с уравнением (1), приведенным выше, для вычисления компенсации глобального движения для каждого пиксела, содержащегося в секции 40.

В дополнительном варианте осуществления каждая закодированная секция 40 имеет информацию КГД, содержащую векторы и глобального движения, при этом векторы относятся к ограничивающему окну секции, а не ко всему кадру. Ссылаясь дополнительно на фиг. 6, изображено ограничивающее окно 46 секции 40, представляющее собой наименьший прямоугольник, который может содержать секцию. Фиг. 6 изображает угловые пикселы 46а-d в соответственных углах ограничивающего окна 46 с векторами и , в этом случае задающими смещение соответственных угловых пикселов ограничивающего окна, а не всего кадра. Четыре вектора и могут быть определены из векторов угловых пиксел посредством тех же самых соотношений, приведенных выше в связи с Н.263 для смещения угловых пикселов всего кадра. Из четырех векторов, закодированных для ограничивающего окна 46, компенсация глобального движения для каждого пиксела, содержащегося в секции 40, может быть легко вычислена с использованием билинейной интерполяции в соответствии с уравнением (1). Можно без труда понять, что в этом варианте осуществления разные закодированные секции 40 будут содержать разную информацию КГД.

Ссылаясь на фиг. 7, опять изображена закодированная секция 40 с ограничивающим окном 46. При этом изображены только два вектора 48а и 48b глобального движения, которые закодированы как информация КГД для секции 40. Эти векторы относятся, соответственно, к самым левым и самым правым пикселам ограничивающего окна 46. На их основе может быть определена компенсация глобального движения для соответственных пикселов секции 40. Для пикселов вдоль вертикальной оси векторы глобального движения являются одинаковыми, в то время как вдоль горизонтальной оси они являются линейно интерполированными из двух закодированных векторов 48а и 48b глобального движения.

В дополнительном варианте осуществления вся информация КГД в секции может повторяться на уровне изображения или кадра таким образом, как в заголовке кадра 32.

Ссылаясь на фиг. 8, изображен синтаксис потока битов стандарта Н.26L на уровнях изображения и макроблока. В Н.26L макроблоки промежуточного кадра имеют один из нескольких режимов, которые в настоящее время включают в себя 7 промежуточных режимов (16х16, 16х8, 8х16, 8х8, 8х4, 4х8 и 4х4), 1 внутренний режим для 4х4 и 23 промежуточных режима для 16х16. Здесь NxM относится к размеру блоков, на которые разделен макроблок. Для промежуточных МБ каждый блок имеет ВД, а для внутренних МБ каждый блок предсказывают как единое целое. Кроме того, имеется один режим КОПИРОВАНИЯ, который не использует ВД и коэффициенты. Это является самым недорогим режимом для сигнализации. По существу используют кодирование длин серий для сигнализации о числе скопированных (пропущенных) макроблоков с помощью одного кодового слова.

Компенсация глобального движения предложена для стандарта Н.26L. Она подобна КГД, используемой в Приложении Р (Annex P) Н.263, в плане способа, с помощью которого определяют векторы глобального движения. Однако главное отличие заключается в том, что не выполняют повторной дискретизации опорного изображения и что интерполированные векторы движения применяют не к пикселам, а к блокам пикселов. Вектор движения блока изображения с его верхним левым пикселом, определенным как (x,y), может быть получен как

Уравнение 2

где и связаны с и как в Приложении Р (Annex P) Н.263. Однако эти векторы движения применяют к блокам изображения, состоящим из 4х4 пикселов. В частности, векторы и применяют к угловым блокам кадра с его верхними левыми пикселами в (0,0), (Н-4,0), (0,V-4) и (Н-4,V-4), соответственно.

Кодирование вектора глобального движения (КВГД) для Н.26L предложено для применения только для определенных режимов макроблоков изображения. О том, используется ли оно или нет, сигнализируют для каждого промежуточного кадра в заголовке изображения с помощью флага (флаг КВГД). Если КВГД активирована, то четыре и ВГД следуют за флагом. Их используют для текущего изображения всякий раз, когда в макроблоке сигнализируют о режиме, использующем КВГД. Предлагаемый синтаксис показан на фиг. 9.

Режимы макроблоков для макроблоков в кадре с активированным КВГД имеют два новых режима. Режим КОПИРОВАНИЯ заменен на КВГД_КОПИРОВАНИЯ (GMVC-COPY) и имеется дополнительный режим, называемый КВГД_16 (GMVC16). Оба режима являются промежуточными режимами 4х4, т.е. макроблок разделяют на блоки изображений из 4х4 пикселов. Векторы движения для каждого блока задают с помощью интерполированных ВГД, как задано приведенной выше формулой. Для режима КВГД_КОПИРОВАНИЯ не кодируют коэффициенты, т.е. копируют опорное изображение с компенсированным движением, в то время как для КВГД16 также добавляют коэффициенты.

Ссылаясь на фиг. 10, изображена закодированная секция 50, содержащая макроблоки 52, в которой каждый макроблок 52 разделен на блоки 54 изображения 4х4 в соответствии со стандартом Н.26L. На фиг. 10 интерполированные векторы применяют к блокам 54 4х4, а не к пикселам. Ссылаясь дополнительно на фиг. 10, изображены угловые блоки 54, имеющие связанные с ними векторы 56а-d глобального движения, задающие их смещения. Угловые блоки 54а-d определяют углы прямоугольного ограничивающего окна 58, содержащего секцию 50. Векторы 56а-d движения представлены с помощью информации КГД, содержащейся в заголовке 60 секции 50. Из информации, относящейся к векторам 56а-d ГД, компенсация глобального движения может быть вычислена для каждого из блоков 54 4х4 секции 50 посредством линейной интерполяции в соответствии с приведенным выше уравнением (2).

В дополнительном варианте осуществления компенсация глобального движения может быть вычислена на основе двух закодированных векторов ГД (не изображены), задающих смещение самых левых и самых правых блоков 4х4, содержащихся внутри ограничивающего окна 58. Еще в одном варианте осуществления компенсация глобального движения для каждого блока 54 может быть получена из одного закодированного вектора ГД, включающего в себя информацию КГД, содержащуюся в заголовке 60.

В другом варианте осуществления, в котором активирована КГД секции, т.е. секция содержит сигнал, указывающий информацию КГД, причем эта информация содержит сигнал режима КОПИРОВАНИЯ. В ответ на этот сигнал относительно конкретного макроблока секции кодер будет копировать соответствующий макроблок из опорного изображения с компенсированным глобальным движением, то есть из деформированного кадра, как изображено на фиг. 1. В этом варианте осуществления коэффициенты, относящиеся к макроблоку, также могут быть кодированы или могут быть не кодированы.

В варианте осуществления, упомянутом как неявная компенсация глобального движения (НКГД), не посылают явный вектор движения с закодированной секцией 40. Вместо этого режим КОПИРОВАНИЯ макроблока (иначе называемый ПРОПУСК (SKIP)) повторно интерпретируют как режим промежуточного макроблока без коэффициентов или явно закодированных векторов движения. Вектор движения, используемый для компенсации движения макроблока, предсказывают на основе соседних блоков. Более конкретно, при применении этого варианта осуществления к конкретному блоку изображения в текущем кадре, соответственно расположенный блок в предыдущем кадре, смещенный на вектор движения, копируют из предыдущего кадра. Вектор движения предсказывают на основе соседних блоков в текущем кадре, то есть на основе блоков, которые являются смежными или ближайшими к конкретному блоку изображения. Режим НКГД может быть использован, чтобы заменить режим КОПИРОВАНИЯ при кодировании блока изображения.

В качестве дополнительного признака варианта осуществления НКГД поток битов, представляющий блок закодированного изображения, может включать в себя синтаксический элемент, который может быть интерпретирован таким образом, чтобы указывать либо режим НКГД, либо режим КОПИРОВАНИЯ. Сигнализация о переключении между режимами НКГД и КОПИРОВАТЬ может быть выполнена неявным образом посредством других кодовых элементов. Альтернативно, сигнализация об этом переключении может быть выполнена явным образом с помощью кодового слова.

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

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

Похожие патенты RU2307478C2

название год авторы номер документа
КОДИРУЮЩИЕ ДИНАМИЧЕСКИЕ ФИЛЬТРЫ 2003
  • Лайнема Яни
RU2302707C2
КОДИРОВАНИЕ КОЭФФИЦИЕНТОВ ПРЕОБРАЗОВАНИЯ В КОДЕРАХ И/ИЛИ ДЕКОДЕРАХ ИЗОБРАЖЕНИЯ/ВИДЕОСИГНАЛА 2003
  • Курсерен Рагип
  • Карчевич Марта
RU2335845C2
СПОСОБ И УСТРОЙСТВО ДЛЯ УКАЗАНИЯ ПАРАМЕТРОВ КВАНТОВАТЕЛЯ В СИСТЕМЕ ВИДЕОКОДИРОВАНИЯ 2007
  • Лайнема Яни
RU2350040C1
СПОСОБ И УСТРОЙСТВО ДЛЯ УКАЗАНИЯ ПАРАМЕТРОВ КВАНТОВАТЕЛЯ В СИСТЕМЕ ВИДЕОКОДИРОВАНИЯ 2003
  • Лайнема Яни
RU2322770C2
УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, УСТРОЙСТВО ДЛЯ ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, СПОСОБ КОДИРОВАНИЯ ИЗОБРАЖЕНИЙ И СПОСОБ ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ 2008
  • Ямада Йосихиса
  • Секигути Сунити
  • Мория Йосими
  • Сугимото Казуо
  • Идехара Юити
  • Асаи Кохтаро
  • Мураками Токумити
RU2479148C2
БЫСТРОЕ ПРИНЯТИЕ РЕШЕНИЯ О ДЕЛЬТЕ ПАРАМЕТРА КВАНТОВАНИЯ МАКРОБЛОКА 2009
  • Е Янь
  • Карчевич Марта
  • Чэнь Пэйсун
RU2498523C2
УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, УСТРОЙСТВО ДЛЯ ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ, СПОСОБ КОДИРОВАНИЯ ИЗОБРАЖЕНИЙ И СПОСОБ ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ 2008
  • Ямада Йосихиса
  • Секигути Сунити
  • Мория Йосими
  • Сугимото Казуо
  • Идехара Юити
  • Асаи Кохтаро
  • Мураками Токумити
RU2369039C1
КОДИРОВАНИЕ КОЭФФИЦИЕНТОВ ПРЕОБРАЗОВАНИЯ В КОДЕРАХ И/ИЛИ ДЕКОДЕРАХ ИЗОБРАЖЕНИЯ И ВИДЕОДАННЫХ 2003
  • Карчевич Марта
  • Курчерен Рагип
RU2354073C2
УСТРОЙСТВО КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ 2011
  • Секигути Сунити
  • Ямагиси Сууити
  • Мория Йосими
  • Ямада Йосихиса
  • Асаи Кохтаро
  • Мураками Токумити
  • Идехара Юити
RU2470480C1
УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ДИНАМИЧЕСКИХ ИЗОБРАЖЕНИЙ, УСТРОЙСТВО ДЛЯ ДЕКОДИРОВАНИЯ ДИНАМИЧЕСКИХ ИЗОБРАЖЕНИЙ, СПОСОБ КОДИРОВАНИЯ ДИНАМИЧЕСКИХ ИЗОБРАЖЕНИЙ И СПОСОБ ДЕКОДИРОВАНИЯ ДИНАМИЧЕСКИХ ИЗОБРАЖЕНИЙ 2008
  • Секигути Сунити
  • Мория Йосими
  • Сугимото Казуо
  • Ямада Йосихиса
  • Асаи Кохтаро
  • Мураками Токумити
  • Идехара Юити
RU2404537C2

Иллюстрации к изобретению RU 2 307 478 C2

Реферат патента 2007 года КОМПЕНСАЦИЯ ГЛОБАЛЬНОГО ДВИЖЕНИЯ ДЛЯ ВИДЕОИЗОБРАЖЕНИЙ

Изобретение относится к области сжатия данных видеосигнала и может быть использовано для кодирования и декодирования видеоданных. Технический результат - создание нового способа и системы глобальной компенсации движения (ГКД) достигается тем, что видеокадр сегментируют на последовательность секций, при этом каждая секция включает в себя ряд макроблоков. Соответствующие секции кодируют, и сигнал включают в заголовок закодированной секции для указания того, должна ли быть использована компенсация глобального движения при восстановлении закодированной секции. Если должна, то информацию КГД, такую как информация, представляющая набор векторов движения, включают в секцию. В любом варианте осуществления векторы движения для каждого изображения конкретной закодированной секции могут быть восстановлены с использованием информации КГД, содержащейся только в конкретной закодированной секции. 3 н. и 27 з.п. ф-лы, 10 ил.

Формула изобретения RU 2 307 478 C2

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

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

2. Способ по п.1, в котором

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

упомянутый режим НКГД используют для замены режима копирования при декодировании упомянутого конкретного блока изображения.

3. Способ по п.2, в котором поток битов данных, представляющий упомянутый закодированный конкретный блок изображения, включает в себя синтаксический элемент, который интерпретируют таким образом, чтобы указывать либо режим НКГД, либо режим копирования.4. Способ по п.3, в котором сигнализацию о переключении между упомянутыми режимами НКГД и копирования осуществляют явным образом с помощью кодового слова.5. Способ по п.3, в котором сигнализацию о переключении между упомянутыми режимами НКГД и копирования осуществляют неявным образом с помощью ранее декодированных кодовых элементов.6. Способ по п.1, в котором упомянутый вектор движения вычисляют, для каждой составляющей вектора отдельно, как медиану трех соседних векторов движения.7. Способ по п.1, в котором блок изображения содержит 16×16 пикселов, имеющих только один вектор движения.8. Способ по п.1, в котором

блок изображения содержит 16×16 пикселов, разделенных на блоки, состоящие из 4×4 пикселов, причем каждый из этих блоков имеет один вектор движения.

9. Способ по п.1, в котором блок изображения содержит 16×16 пикселов, разделенных на множество блоков, причем каждый из этих блоков имеет один вектор движения.10. Способ по п.1, в котором кадр сегментируют на секции, при этом каждая секция содержит один или более блоков изображения.11. Способ по п.1, в котором дополнительный вектор движения посылают с упомянутой конкретной секцией, чтобы использовать при определении вектора движения для первого блока упомянутой конкретной секции.12. Видеодекодер, предназначенный для декодирования блока изображения в текущем кадре в соответствии с одним из множества режимов кодирования и содержащий

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

средство, предназначенное для копирования из предыдущего кадра соответственно расположенного блока, смещенного на упомянутый вычисленный вектор движения, в соответствии с режимом неявной компенсации глобального движения (НКГД).

13. Видеодекодер по п.12, содержащий

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

средство, предназначенное для замены упомянутого режима копирования упомянутым режимом НКГД при декодировании конкретного блока изображения.

14. Видеодекодер по п.13, содержащий средство, предназначенное для переключения между упомянутым режимом копирования и упомянутым режимом НКГД при декодировании конкретного блока изображения.15. Способ сжатия видеоданных, предназначенный для использования с секциями, полученными с помощью сегментирования видеокадра в последовательность секций, при этом каждая секция содержит один или более блоков изображения, причем упомянутый способ содержит этапы, на которых идентифицируют сигнал в каждой закодированной секции, который указывает, должна ли быть использована компенсация глобального движения (КГД) при восстановлении секции,

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

16. Способ по п.15, в котором векторы движения для каждого блока изображения конкретной закодированной секции могут быть восстановлены с использованием информации КГД, содержащейся только в упомянутой конкретной закодированной секции.17. Способ по п.15, в котором по меньшей мере, две из закодированных секций содержат одинаковую информацию КГД.18. Способ по п.15, в котором упомянутая информация КГД, содержащаяся в упомянутых, по меньшей мере, двух закодированных секциях, содержит векторы глобального движения (ГД), относящиеся к упомянутому видеокадру.19. Способ по п.15, в котором по меньшей мере, две из закодированных секций содержат разную информацию КГД.20. Способ по п.15, в котором упомянутый способ включает в себя этап, на котором проводят синтаксический анализ заголовка кадра, в котором повторяется вся информация КГД, содержащаяся в соответствующих закодированных секциях.21. Способ по п.15, в котором упомянутая информация КГД, содержащаяся в заданной закодированной секции, содержит набор закодированных векторов ГД,

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

22. Способ по п.21, в котором упомянутые векторы ГД из упомянутого набора задают смещения соответствующих угловых пикселов ограничивающего окна упомянутой заданной секции.23. Способ по п.21, в котором упомянутый набор векторов содержит два закодированных вектора ГД, задающих смещение соответственно самых левых и самых правых пикселов ограничивающего окна упомянутой заданной секции.24. Способ по п.15, в котором упомянутая информация КГД, содержащаяся в заданной закодированной секции, содержит набор закодированных векторов ГД, и

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

25. Способ по п.24, в котором упомянутые векторы ГД из упомянутого набора задают смещения блоков 4×4, расположенных в соответственных углах ограничивающего окна упомянутой заданной секции.26. Способ по п.24, в котором упомянутый набор векторов содержит два закодированных вектора ГД, задающих смещение соответственно самых левых и самых правых блоков 4×4 ограничивающего окна упомянутой заданной секции.27. Способ по п.24, в котором упомянутый набор векторов содержит один закодированный вектор ГД для использования при вычислении компенсации глобального движения для соответственных блоков 4×4 упомянутой заданной секции.28. Способ по п.15, в котором конкретная закодированная секция имеет режим копирования макроблока, который сигнализирует о кодировании блоков изображения упомянутой конкретной закодированной секции посредством копирования соответственно соответствующих блоков изображения, расположенных в опорном кадре с компенсированным глобальным движением, полученным из упомянутого видеокадра.29. Способ по п.28, в котором коэффициенты, предназначенные для использования при предсказании компенсации движения, не кодируют для соответствующих блоков изображения упомянутой конкретной закодированной секции.30. Способ по п.28, в котором коэффициенты, предназначенные для использования при предсказании компенсации движения, кодируют для соответствующих блоков изображения упомянутой конкретной закодированной секции.

Приоритеты по пунктам:

27.11.2002 по пп.1-14, 28-30;30.11.2001 по пп.15-27.

Документы, цитированные в отчете о поиске Патент 2007 года RU2307478C2

УЗЕЛ КОДИРОВАНИЯ И/ИЛИ ДЕКОДИРОВАНИЯ ИНФОРМАЦИИ, СИСТЕМА ПЕРЕДАЧИ ИНФОРМАЦИИ С УПЛОТНЕНИЕМ КАНАЛОВ, СИСТЕМА ПЕРЕДАЧИ ИНФОРМАЦИИ В ТЕЛЕКОММУНИКАЦИОННОЙ СЕТИ 1999
  • Аликов С.В.
RU2159507C1
0
SU70879A1
WO 9852356 А, 19.11.1998
US 5565920 А, 15.10.1996
Сиденье транспортного средства(ЕгО ВАРиАНТ) 1979
  • Цыбульский Федор Федорович
  • Станилевич Александр Николаевич
  • Краток Павел Петрович
  • Александровский Николай Иванович
  • Янчевский Эдуард Герасимович
  • Аносов Владимир Эвальдович
SU831642A1

RU 2 307 478 C2

Авторы

Шеберг Риккард

Эйнарссон Торбьерн

Фрейдх Пер

Даты

2007-09-27Публикация

2002-11-29Подача