RU2323541C2 - Способ и устройство для выполнения высококачественного быстрого поиска прогнозируемого движения - Google Patents
Способ и устройство для выполнения высококачественного быстрого поиска прогнозируемого движения Download PDFInfo
- Publication number
- RU2323541C2 RU2323541C2 RU2005106233/09A RU2005106233A RU2323541C2 RU 2323541 C2 RU2323541 C2 RU 2323541C2 RU 2005106233/09 A RU2005106233/09 A RU 2005106233/09A RU 2005106233 A RU2005106233 A RU 2005106233A RU 2323541 C2 RU2323541 C2 RU 2323541C2
- Authority
- RU
- Russia
- Prior art keywords
- motion vector
- search
- macroblock
- motion
- vector prediction
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 239000013598 vector Substances 0.000 claims abstract description 183
- 238000010295 mobile communication Methods 0.000 claims 1
- 230000006835 compression Effects 0.000 abstract description 17
- 238000007906 compression Methods 0.000 abstract description 17
- 239000000126 substance Substances 0.000 abstract 1
- 229920001684 low density polyethylene Polymers 0.000 description 18
- VGGSQFUCUMXWEO-UHFFFAOYSA-N Ethene Chemical compound C=C VGGSQFUCUMXWEO-UHFFFAOYSA-N 0.000 description 17
- 239000004702 low-density polyethylene Substances 0.000 description 17
- 238000010586 diagram Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 101001134276 Homo sapiens S-methyl-5'-thioadenosine phosphorylase Proteins 0.000 description 3
- 102100022050 Protein canopy homolog 2 Human genes 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 101000836261 Homo sapiens U4/U6.U5 tri-snRNP-associated protein 2 Proteins 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 102100027243 U4/U6.U5 tri-snRNP-associated protein 2 Human genes 0.000 description 2
- 229910003460 diamond Inorganic materials 0.000 description 2
- 239000010432 diamond Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/57—Motion estimation characterised by a search window with variable size or shape
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/533—Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Изобретение относится к области оценки движения, в частности к оценке движения на блочной основе в применении к сжатию видеоизображения. Техническим результатом является повышение эффективности сжатия видеосигналов. Предложен способ и устройство для выполнения поиска движения в системе видеокодера с использованием векторов движения, представляющих разницу между координатами макроблока данных в текущем кадре видеоданных и координатами соответствующего макроблока данных в эталонном кадре видеоданных. Получают множество параметров прогнозирования вектора движения, причем параметры прогнозирования вектора движения представляют приближения возможных векторов движения для текущего макроблока, определяют схему поиска вектора движения и осуществляют поиск вокруг каждого параметра прогнозирования вектора движения из множества параметров прогнозирования вектора движения с использованием схемы поиска по результату которого определяют окончательный вектор движения. 3 н. и 25 з.п. ф-лы, 7 ил.
Description
Область техники
Настоящее изобретение относится к области оценки движения, в частности к оценке движения на блочной основе в применении к сжатию видеоизображения.
Предшествующий уровень техники
В настоящее время оценка движения является ключевой составляющей многих технологий сжатия видеосигнала. Цель оценки движения состоит в том, чтобы сократить временную избыточность между кадрами последовательности видеосигналов. Алгоритм оценки движения прогнозирует данные изображения для кадра изображения с использованием одного или более ранее кодированных кадров изображения или будущих кадров. Разностное изображение вычисляется путем определения арифметической разности между исходными данными пикселов (элементов изображения) и соответствующими прогнозируемыми данными элементов изображения. Разностное изображение с большим разбросом указывает на небольшую временную избыточность между кадрами изображения или на ее отсутствие. В то же время разностное изображение с малым разбросом указывает на высокую степень временной избыточности между кадрами изображения. Разностное изображение представляет представление кадров изображения с уменьшенной временной избыточностью, что повышает эффективность кодирования.
Один тип алгоритма оценки движения представляет собой алгоритм оценки движения на блочной основе, который действует на блоки данных изображения. Блок данных изображения в текущем кадре прогнозируется блоком данных из предыдущего кадра изображения. Алгоритм оценки движения выдает вектор движения для блока данных изображения, который определяет местоположение наилучшего соответствия блоку из предыдущего кадра изображения. В методах сжатия видеосигнала эта информация о векторе движения сжимается и передается или хранится наряду с сжатыми разностными данными.
Международные стандарты сжатия видеосигналов, такие как H.263, MPEG-2 и MPEG-4, позволяют осуществлять оценку движения на блочной основе путем обеспечения синтаксиса для определения векторов движения. Эти стандарты не требуют особенных алгоритмов оценки движения. В рамках этих стандартов сжатия оценка движения вычисляется на размере базового блока в 16×16 пикселов, называемого макроблоком. Допустима обработка с размерами блока 8×8 пикселов для оценки движения меньших участков изображения.
Оценка движения представляет собой один из узлов, наиболее интенсивно использующих процессор, в системе видеокодирования. Существуют ряд методов оценки движения на блочной основе, в которых делаются попытки достичь компромисса между сложностью вычислений и эффективностью определения вектора движения.
При оценке движения по полному поиску (FSME) проводится исчерпывающее сравнение блока в текущем кадре изображения с каждой позицией пиксела, расположенного в пределах окна поиска ранее обработанного кадра. Хорошая степень совпадения блоков на каждой позиции пиксела определяется путем измерения его соответствующего искажения. Типичной мерой искажения, используемой метрикой совпадения блоков, является метрика суммы абсолютных разностей (САР, SAD):
где Вс - это блок в текущем кадре изображения и Вр - это блок в предыдущем кадре изоражения. Индексы m и n индексируют пикселы в пределах блока из N строк и М столбцов. Малое значение SAD соответствует хорошему совпадению блоков, а большое значение SAD соответствует плохому совпадению блоков. К сожалению, оценка движения по полному поиску становится невыполнимой по мере увеличения окна поиска.
В настоящее время существуют несколько алгоритмов оценки движения с низким уровнем сложности. Все эти алгоритмы имеют недостатки, связанные либо с более низким уровнем качества, либо с тем, что не обеспечивается достаточное сокращение сложности вычислений. Существуют также несколько предложенных алгоритмов оценки движения, которые обеспечивают несколько улучшенное качество при относительно сокращенной сложности.
Один возможный подход представляет собой подход, основанный на зонах. Во-первых, прогнозирующий параметр вектора движения (PMV) вычисляется как вектор движения для наилучшего совпадения. Далее, выполняется поиск вектора движения, следуя зональной схеме, вокруг PMV. За этим следует аналогичный зональный поиск вокруг вектора нулевого движения. На каждом шаге существует критерий окончания поиска, если достигнуто достаточно хорошее выполнение критерия. К сожалению, этот подход не дает последовательно хороших результатов в широком диапазоне последовательностей видеосигналов.
Алгоритм оценки движения, называемый PMVFAST, весьма сходен с вышеописанным зональным подходом. Однако вместо схемы зонального поиска используется итеративная схема поиска по ромбам. Могут использоваться большие или малые схемы поиска по ромбам, в зависимости от определенных критериев. К сожалению, этот подход дает очень похожий результат при сравнении с зональным подходом.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Заявлены способ и устройство для выполнения быстрого поиска прогнозируемого движения в системе видеокодера, путем использования оценки движения на блочной основе. Способ может включать получение множества параметров прогнозирования вектора движения, где параметр прогнозирования вектора движения может представлять приближения возможных векторов движения для текущего макроблока. Способ может также включать определение схемы поиска, выполнение поиска вокруг каждого параметра прогнозирования вектора движения из множества параметров прогнозирования вектора движения с использованием схемы поиска, и определение окончательного вектора движения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 - блок-схема системы сжатия видеосигналов согласно возможному варианту осуществления;
Фиг.2 - изображение окружения текущего макроблока согласно возможному варианту осуществления;
Фиг.3 - схема поиска, используемая в течение первого этапа, в предпочтительном варианте воплощения;
Фиг.4 - схема поиска, используемая в режиме захвата в течение первого этапа, в предпочтительном варианте воплощения;
Фиг. 5 - иллюстрация схемы поиска, используемой в течение второго этапа, в предпочтительном варианте воплощения;
Фиг.6 - блок-схема, представляющая в общих чертах реализацию настоящего изобретения согласно предпочтительному варианту воплощения; и
Фиг.7 - схема оценки движения на основе быстрого поиска прогнозируемого движения, представленная в виде блок-схемы, согласно возможному варианту воплощения.
ПОДРОБНОЕ ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВОПЛОЩЕНИЙ
Настоящее изобретение обеспечивает повышение эффективности в широком диапазоне последовательностей видеосигналов. Ряд усовершенствований и новых алгоритмических инноваций позволяют получить лучшее качество. Фактически, при усреднении по нескольким последовательностям видеосигналов настоящее изобретение превосходит даже традиционный алгоритм полного поиска в аспекте достигаемой эффективности сжатия видеосигналов.
Все способы, используемые в уровне техники, сфокусированы на оптимизации совпадения блоков, в то время как, среди других преимуществ, настоящее изобретение может детально учитывать число битов, необходимое для кодирования последовательности видеосигналов. Настоящее изобретение может также использовать характер движений, встречающихся при видеосъемке в реальной жизни.
В настоящее время, в условиях стремительного развития рынка беспроводной связи, все больше требований предъявляется к применению технологии видеокодирования в портативных устройствах. Большая часть этих устройств не имеют возможностей обработки, чтобы выполнять значительные вычисления для оценки движения. Таким образом, высокое качество, низкий уровень сложности алгоритма оценки движения, обеспечиваемые настоящим изобретением, могут быть чрезвычайно полезными для использования в таких устройствах.
Согласно одному варианту воплощения настоящее изобретение может выполняться в два этапа. На первом этапе могут быть рассмотрены несколько векторов движения параметра прогнозирования, и может быть выполнен поиск вокруг каждого из возможных вариантов с использованием фиксированной схемы поиска. В течение первого этапа, если обнаружено, что хорошее совпадение вряд ли будет достигнуто, может быть выбран новый набор возможных вариантов векторов движения и может быть выполнен новый поиск. Это может быть сделано, чтобы зафиксировать движение любого нового объекта, который появляется в кадре. На втором этапе может быть рассмотрен лучший результат первого этапа и может быть выполнен новый поиск с использованием движущейся, взвешенной схемы поиска по спирали, чтобы достичь наилучшего совпадения блоков.
На фиг.1 представлена блок-схема системы 100 сжатия видеосигналов для видеокодера, согласно одному варианту воплощения. Система 100 сжатия видеосигналов может включать в себя схему 110 оценки движения на основе быстрого поиска прогнозируемого движения, схему 115 компенсации движения, сумматор 120, схему 125 дискретного косинусного преобразования (ДКП, DCT), квантователь 130, кодер 135 с кодированием с переменной длиной (VLC), обратный квантователь 140, схему 145 обратного дискретного косинусного преобразования (ОДКП, IDCT), еще один сумматор 150 и схему 155 предыдущего кадра.
В процессе работы оценка движения вычисляется для блоков данных изображения из текущего кадра изображения с использованием одного или более ранее обработанных кадров изображения. Схема 110 оценки движения выдает вектор движения, соответствующий обработанному блоку. Схема 115 компенсации движения формирует блок прогнозирования из предыдущего кадра с использованием вычисленных векторов движения. Разностное изображение вычисляется сумматором 120 путем вычитания прогнозируемых данных изображения из данных текущего кадра изображения. Это разностное изображение преобразуется с использованием схемы 125 ДКП. В то время как схема 110 оценки движения и схема 115 компенсации движения служат для уменьшения временной избыточности между кадрами изображения, схема 125 ДКП служит для уменьшения пространственной избыточности в пределах кадра. Затем точность коэффициентов ДКП снижается посредством квантователя 140. Квантователь 140 повышает степень сжатия, внося численные потери. Квантованные коэффициенты ДКП затем кодируются посредством кодера 135 с кодированием с переменной длиной (VLC) и передаются в сжатом потоке битов видеоданных наряду с векторами движения. Контур локального восстановления образован обратным квантователем 140, ОДКП 145 и сумматором 150. Обратный квантователь 140 восстанавливает коэффициенты ДКП. Параметр ОДКП 145 преобразует коэффициенты ДКП обратно в пространственную область для формирования квантованного разностного изображения. Восстановленный кадр вычисляется сумматором 150 путем суммирования данных скомпенсированного движения с квантованным разностным изображением. Эти восстановленные данные затем сохраняются в схеме 155 предыдущего кадра для использования при обработке последующих кадров изображения.
Работа схемы 110 и оценки движения на основе быстрого поиска прогнозируемого движения может состоять из двух этапов. На первом этапе малый поиск может быть произведен вокруг нескольких параметров прогнозирования вектора движения. Эти параметры прогнозирования вектора движения (ПВД, MVP) могут быть найдены из других векторов движения (ВД, MV). Для исходных определений ВД - это разность в координатах блока данных в текущем кадре видеоданных и блока данных в эталонном кадре, с которым происходит сравнение. ВД имеет две составляющие: Х и Y. Значение ВД описано как упорядоченная пара (Х,Y). Параметры ПВД - это ВД, которые используются как хорошая «догадка» о наилучшем ВД при выполнении сравнения. Макроблок (МБ, MB) представляет собой блок данных размером 16×16 в пределах кадра изображения. МБ может также относится к блоку данных различных размеров (например, 8×8, 4×8, 4×4, 16×8 и т.п.) без потери общности.
Один параметр прогнозирования вектора движения может базироваться на нулевом векторе движения. Параметр прогнозирования вектора движения, базирующийся на конкретном векторе движения, может определять параметр прогнозирования вектора движения как равный этому конкретному вектору движения, причем нулевой вектор движения является вектором движения с координатами (0,0). Второй параметр прогнозирования вектора движения может базироваться на векторе движения там же расположенного макроблока в предыдущем кадре.
На фиг.2 представлена иллюстрация расположения текущего макроблока и соседних макроблоков, используемых для определения дополнительных векторов движения. Так, третий параметр прогнозирования вектора движения может базироваться на векторе движения макроблока, расположенного слева от текущего макроблока. Четвертый параметр прогнозирования вектора движения может основываться на векторе движения макроблока сверху, или над текущим макроблоком. Пятый параметр прогнозирования вектора движения может быть основан на векторе движения макроблока над и справа от текущего макроблока. Шестой параметр прогнозирования вектора движения может основываться на медианном векторе движения третьего, четвертого или пятого параметров прогнозирования векторов движения. Этот параметр прогнозирования медианного вектора движения может вычисляться независимо для Х и Y компонента вектора движения.
Седьмой параметр прогнозирования вектора движения может основываться на полученном в результате оценок глобальном векторе движения. Этот глобальный вектор движения оценивается посредством схемы 110 оценки движения как усреднение по всем окончательным векторам движения предыдущего кадра, для которого значение метрики разности было ниже определенного порога ПОРОГ1. Метрика разности может быть метрикой суммы абсолютных разностей, метрикой суммы квадратов разностей, метрикой модифицированной суммы абсолютных разностей или любой другой пригодной метрикой. В предпочтительном варианте воплощения выбранная величина ПОРОГ1 выражается формулой:
ПОРОГ1 = SAD1 + ОТКЛОНЕНИЕ,
где ОТКЛОНЕНИЕ может быть номинально установлено на 500,
SAD1 дается уравнением
Здесь m и n - это индексы пиксела. M и N - это размеры блока. Для рассматриваемого в качестве примера макроблока M=N=16. Глобальный вектор движения может также определяться другими средствами, такими как сенсоры движения на видеокамерах, другие алгоритмы или любые другие средства для определения глобального вектора движения.
Дополнительные узлы прогнозирования вектора движения могут определяться на основе результата оценки движения, выполненной для того же самого макроблока, но на другом ранее кодированном кадре.
Таким образом, схема 110 оценки движения может определять глобальный вектор движения путем использования среднего из всех окончательных векторов движения в предыдущем кадре, для которых метрика разности ниже определенного порога. В частности, схема 110 оценки движения может определить глобальный вектор движения путем вычисления метрики разности для каждого из окончательных векторов движения в предыдущем кадре, сравнивая метрику разности для каждого из окончательных векторов движения в предыдущем кадре с предопределенным порогом и определяя глобальный вектор движения на основе каждого из окончательных векторов движения в предыдущем кадре, значение метрики разности которого ниже пороговой величины.
Может быть проведен поиск для всех ВД в пределах небольшой области вокруг каждого параметра прогнозирования вектора движения (ПВД). Затем в качестве возможного варианта ВД для второго этапа может быть выбран ВД с самой низкой метрикой Модифицированной Суммы Абсолютных Разностей (МСАР, MSAD). Метрика МСАР определена ниже. Таким образом, схема 110 оценки движения может выполнять поиск прогнозируемого движения путем нахождения множества параметров прогнозирования вектора движения, причем параметры прогнозирования вектора движения представляют приблизительные значения возможных векторов движения для текущего макроблока, определения схемы поиска, проведения поиска вокруг каждого параметра прогнозирования вектора движения из множества параметров прогнозирования вектора движения с использованием этой схемы поиска, и определения окончательного вектора движения. Схема оценки движения может дополнительно вычислять метрику разности, представляющую качество совпадения макроблоков, причем метрика разности может быть метрикой суммы абсолютных разностей, метрикой суммы квадратов разностей или любой другой метрикой, пригодной при оценке движения.
Примерная схема поиска вокруг каждого параметра ПВД показана на Фиг.3. Как показано, схема поиска может быть более протяженной в горизонтальном направлении, чем в вертикальном направлении. При этом может использоваться тот факт, что в большинстве видеоданных реальной жизни больше движения и изменений в движении происходит в горизонтальном направлении.
Если после оценки первых шести векторов движения лучший ВД имеет значение метрики МСАР выше, чем пороговое значение ПОРОГ2, первый этап может переходить в режим захвата.
В предпочтительном варианте воплощения ПОРОГ2 определяется формулой:
ПОРОГ2 = 4* MMSADAVG,
MMSADAVG = Среднее из всех MMSAD(ММСАР) (т.е. значения МСАР лучшего ВД) предыдущего кадра.
В режиме захвата могут рассматриваться дополнительные параметры ПВД, такие как изображенные на Фиг.4. Например, эти 8 точек могут быть следующими:
(-12,0) (12,0) (0,-1) (0,9) (-6,4) (6,4) (6,-4) (-6,-4)
Поиск вокруг каждого из параметров ПВД выполняется с использованием такой же схемы поиска, которая изображена на Фиг.3. В предпочтительном варианте воплощения только 4 из 8 параметров ПВД могут рассматриваться для макроблока. Для первого макроблока рассматриваются первые 4. Для следующего макроблока рассматриваются другие 4 параметра ПВД и т.д. Это может делаться для сокращения числа вычислений.
Цель режима захвата состоит в обнаружении любого нового объекта, который движется быстро в зону, отображаемую на экране. По такому сценарию параметры ПВД, основанные на векторах движения в соседних зонах, не работают. Использование 8 новых точек повышает шанс получения хорошего согласования векторов движения. Эти 8 точек могут быть выбраны с предпочтением горизонтальному направлению, так как часто движение в большей степени осуществляется в этом направлении.
Таким образом, схема 110 оценки движения может проводить поиск вокруг каждого параметра прогнозирования вектора движения из множества параметров прогнозирования вектора движения с использованием схемы поиска, определять лучший вектор движения, имеющий значение метрики разности выше, чем предопределенное пороговое значение, и реализовать схему поиска вокруг нового набора параметров прогнозирования вектора движения.
На первом этапе, когда устанавливается схема поиска вокруг параметра ПВД, может использоваться критерий раннего выхода, чтобы закончить поиск для этого параметра ПВД. Поиск может быть закончен, если значение МСАР, полученное для ВД, выше, чем текущий минимум МСАР (ММСАР) на пороговое значение ПОРОГ(ПОРОГ)3, т.е. если (МСАРi > (ММСАР + ПОРОГ3)). Где МСАРi - это МСАР, полученная для i-го параметра ПВД, ММСАР - это минимальное значение из всех значений МСАР, полученных до данного момента для текущего ВД. В частности, это значение МСАР для лучшего ВД. В предпочтительном варианте воплощения величина ПОРОГ3 может быть выбрана около 768.
Таким образом, схема 110 оценки движения может реализовать схему поиска на параметрах прогнозирования вектора движения, определять текущее значение метрики разности для текущего вектора движения, сравнивать текущее значение метрики разности с предыдущей минимальной метрикой разности, установить новую минимальную метрику разности, если текущая метрика разности ниже предыдущей минимальной метрики разности, завершить схему поиска, если метрика разности превышает предыдущую минимальную метрику на предопределенную величину.
Затем, среди всех ВД, перебираемых на первом этапе, выбирается ВД, который дает самое низкое значение метрики МСАР, и это становится точкой начала второго этапа.
На втором этапе выбирается лучший ВД из первого этапа (т.е. тот, который дает самое низкое значение МСАР) и выполняется поиск вокруг этого ВД. Например, поиск может выполняться по схеме, показанной на Фиг.5. Схема поиска может начаться с центра и раскручиваться по спирали в последовательности, изображенной на Фиг.5 в виде последовательности чисел. Как только лучший ВД найден (т.е. ВД, который дает самое низкое значение МСАР), схема поиска центрируется вокруг нового ВД и спиральная схема поиска начинается сначала. Этот процесс продолжается, пока не выполнено одно из трех условий:
УСЛОВИЕ 1: Значение МСАР ниже порогового значения ПОРОГ4, задаваемого формулой:
ПОРОГ4 = А *Q + B
Где Q - величина шага квантования, используемого кодером для текущего ВД, А и В - постоянные величины. В предпочтительном варианте воплощения А=8 и В=0.
УСЛОВИЕ 2: Максимальное число возможных вариантов N уже рассматривалось на этапе 2. В предпочтительном варианте воплощения N=30.
УСЛОВИЕ 3: Нет улучшения в минимальном значении МСАР (ММСАР) в течение последних М возможных вариантов ВД. Здесь М - это функция индекса позиции последнего возможного варианта ВД в спиральной схеме поиска. Например, поиск начинается с индекса 0. Затем он раскручивается по спирали вокруг точек 1, 2, 3,... Как только находится лучший ВД, схема поиска по спирали центрируется вокруг этого нового ВД и индекс начинается с 0 снова. Этот индекс используется для определения значения М. В предпочтительном варианте воплощения М выбирается из набора величин {4,4,4,4,4,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,9,9} на основе индекса.
Лучший ВД в конце второго этапа выбирается как лучший ВД для макроблока. Этот ВД может быть дополнительно уточнен на последующем этапе с точностью до половины пиксела, четверти пиксела или более высокой точностью с использованием хорошо известных методов.
Как упомянуто выше, схема поиска может быть выбрана так, чтобы давать более широкое покрытие в горизонтальном направлении, чем в вертикальном направлении.
Метрика МСАР может быть предпочтительным признаком изобретения. Хотя метрика модифицированной суммы разностей дает предпочтительные результаты, любая метрика разности может использоваться в каждом варианте воплощения настоящего изобретения, требуя определения метрики суммы абсолютных разностей, метрики модифицированной суммы разностей или любой другой метрики разностей. Метрика МСАР является функцией суммы абсолютных разностей (САР), описанной выше, оцениваемого возможного варианта ВД, и вектора движения параметра прогнозирования (ВДП). ВДП как правило используется видеокодером во время кодирования окончательного вектора движения. Окончательный вектор движения кодируется как разность относительно ВДП, который отличается от ПВД. Например, это может быть однозначный ВД, определенный в рамках стандартов Н.261, Н.263, MPEG-1, MPEG-2 и MPEG-4 для целей кодирования векторов движения. САР - это метрика, используемая в классических алгоритмах оценки движения, как описано выше.
Для макроблока с данным ВДП и для возможного варианта вектора движения ВД МСАР определяется формулой:
МСАР = САР + Смещение,
где Смещение - это любая величина, основанная на метрике разности между ВД и ВДП. Например,
МСАР = САР + С* (| ВДх - ВДПх | + | ВДу - ВДПу|)
где САР - это классическая метрика, используемая для совпадающих блоков, определенных ранее, ВДх и ВДу - это х и у составляющие возможного варианта вектора движения, ВДПх и ВДПу - это х и у составляющие ВДП, и С - постоянная величина. В предпочтительном варианте воплощения С приблизительно равно 5. ВДП, как правило, остается фиксированным для всех возможных вариантов в МБ, в то время как ВД изменяется.
Метрика МСАР является независимой от алгоритма оценки движения и может использоваться, обеспечивая преимущества, практически во всех алгоритмах. Преимущество новой метрики состоит в сокращении числа битов, необходимых для кодирования векторов движения путем смещения алгоритма в сторону ВДП, тем самым улучшая общую эффективность сжатия.
МСАР для нулевого вектора движения, ВД = (0,0), рассматривается как особый случай. Нулевой ВД мог бы потенциально привести к повышенной эффективности сжатия. Но это может произойти только, если результирующий макроблок кодируется в «не кодируемом» режиме в рамках стандартов Н.261, Н.263, MPEG-1, MPEG-2 и MPEG-4.
Это может быть учтено путем смещения САР в случае, когда он ниже определенного порогового значения:
Если (САР < ПОРОГ5)
МСАР =САР - ПОРОГ6
Иначе
МСАР = САР + С*(|ВДПх| + |ВДПу|)
Конец если
С, ВДПх и ВДПу являются таковыми, как описано ранее.
ПОРОГ5 = D*Q +E
ПОРОГ6 = F
где Q - это величина шага квантования, D, E и F - постоянные величины. В предпочтительном варианте воплощения D приблизительно равно 128, Е=0, и F приблизительно равно 100.
Таким образом, схема 110 оценки движения может вычислять метрику разности, вычислять смещение на основе вектора движения для параметра прогнозирования и возможного варианта вектора движения и определять модифицированную метрику разности на основе метрики разности и смещения.
В процессе поиска области поиска различных ПВД могут перекрываться, приводя к повторяющимся возможным вариантам векторов движения. Может поддерживаться регистрация всех возможных уже оцененных вариантов и они не принимаются во внимание, если они уже были рассмотрены.
Изображенные последовательности поиска являются теми, которые используются в предпочтительном варианте воплощения. Они были оптимизированы для получения хорошего совпадения за самое короткое возможное время в широком диапазоне последовательностей видеосигналов. Возможно также использование альтернативных схем поиска.
Раскрытое изобретение не делает каких-либо предположений о диапазоне вектора движения. Любое ограничение на значения вектора движения может накладываться на его возможные варианты, и, если они выходят за пределы допустимого диапазона, они могут быть отклонены.
На втором этапе предпочтительного варианта воплощения центрирование схемы поиска по спирали может быть изменено для получения нового лучшим образом соответствующего возможного варианта ВД. Таким образом, следующая точка, которая должна оцениваться, может быть неизвестна заранее. Следующий потенциально оцениваемый возможный вариант зависит от результата рассмотрения текущего возможного варианта. Следовательно, может стать затруднительно выполнять вычисления МСАР по нескольким возможным вариантам параллельно (которые могут оказаться желательными в некоторых архитектурах аппаратного обеспечения). Для облегчения этой задачи схема поиска может быть центрирована заново, после оценки набора возможных вариантов, обеспечивая возможность параллельной обработки этого набора.
На Фиг.6 показана блок-схема 600, представляющая работу схемы 110 оценки движения согласно одному варианту воплощения. На этапе 610 начинается работа блок-схемы. На этапе 620 схема 110 оценки движения получает множество параметров прогнозирования вектора движения. На этапе 630 схема 110 оценки движения определяет схему поиска. На этапе 640 схема 110 оценки движения проводит поиск вокруг каждого параметра прогнозирования вектора движения. На этапе 650 схема 110 оценки движения определяет окончательный вектор движения. На этапе 660 схема 110 оценки движения выдает окончательный вектор движения.
На Фиг.7 представлена схема 110 оценки движения на основе быстрого поиска прогнозируемого движения согласно возможному варианту воплощения. Схема 110 оценки движения может включать в себя блок 710 хранения параметра прогнозирования вектора движения, блок 710 определения схемы поиска, блок 730 поиска множества параметров движения и блок 740 определения окончательного вектора движения. Схема 110 оценки движения может также включать в себя блок 750 определения глобального вектора движения, блок 760 режима захвата, блок 770 завершения схемы и блок 780 вычисления модифицированной суммы абсолютных разностей. Указанные блоки работают согласно соответствующим им функциям, описанным выше.
Согласно еще одному варианту воплощения способ быстрого поиска прогнозируемого движения может осуществляться в два этапа. На первом этапе могут быть вычислены 7 возможных вариантов параметров ПВД, как описано выше. Затем, для каждого параметра ПВД могут быть оценены все возможные варианты ВД в соответствии со схемой поиска, показанной на Фиг.3, и могут использоваться критерии выхода для выхода из ПВД или перехода в режим захвата. Далее, в режиме захвата, может быть проведен поиск для и вокруг параметра ПВД, изображенного на Фиг.4 с использованием той же самой схемы поиска, как на Фиг.3, и того же критерия выхода. Затем, на втором этапе, может быть выбран лучший ВД из данных первого этапа и поиск может быть выполнен по спирали, как показано на Фиг.5. Спираль может быть центрирована заново и установлена в исходное состояние, индекс может быть установлен на ноль, как только обнаруживается лучшее согласование. Наконец, процесс может быть продолжен, пока не выполнится один из трех критериев выхода.
Согласно еще одному варианту воплощения настоящее изобретение обеспечивает способ выполнения быстрого поиска прогнозируемого движения в системе видеокодера с использованием оценки движения на блочной основе. Способ может включать определение множества параметров прогнозирования вектора движения, реализацию схемы поиска, по меньшей мере, на одном из множества параметров прогнозирования вектора движения, определение лучшего вектора движения, имеющего значение метрики разности выше, чем предопределенное пороговое значение, и реализацию новой схемы поиска вокруг нового набора параметров прогнозирования вектора движения. Этап реализации новой схемы поиска может предусматривать реализацию новой схемы поиска вокруг нового набора параметров прогнозирования вектора движения на основе лучшего вектора движения. Новая схема поиска может быть в большей степени смещена в горизонтальном направлении, чем на вертикальном направлении.
Согласно еще одному варианту воплощения настоящее изобретение может обеспечить способ для выполнения быстрого поиска прогнозируемого движения в системе видеокодера с использованием оценки движения на блочной основе. Способ может включать реализацию схемы поиска вокруг параметра прогнозирования вектора движения, определение текущего значения метрики разности для текущего вектора движения, сравнение текущего значения метрики разности с предыдущим минимумом метрики разности, установление нового минимума метрики разности, если текущее значение метрики разности ниже предыдущего минимума метрики разности, и завершение схемы поиска, если значение метрики разности превосходит предыдущий минимум метрики на предопределенную величину.
Согласно еще одному варианту воплощения настоящее изобретение может обеспечить способ для выполнения быстрого поиска прогнозируемого движения в системе видеокодера с использованием векторов движения, представляющих разницу между координатами макроблока данных в текущем кадре данных изображения и координатами соответственного макроблока данных в эталонном кадре данных изображения. Способ может включать определение схемы поиска, которая является более протяженной в горизонтальном направлении, чем в вертикальном направлении, выполнение возможного варианта поиска на основе определенной схемы поиска и определение окончательного вектора движения.
Раскрытое изобретение может обеспечить высокую степень эффективности сжатия при невысоком уровне сложности. Сложность может быть аналогичной сложности алгоритмов APDZS и PMVFAST. Однако достигаемое качество выше. При сравнении со стандартным алгоритмом полного поиска, который представляет собой эталон, принятый в отрасли, настоящее изобретение достигает приблизительно на 0,6% лучшую эффективность сжатия при фиксированном качестве видеосигнала. Этот результат получен усреднением по 24 различным последовательностям видеосигналов формата QCIF.
Настоящее изобретение может быть использовано в видеокодерах режима реального времени в портативных устройствах. Типичная ширина полосы такого кодированного видеосигнала находится в пределах диапазона от 32 до 512 кбит/с, и типичный размер видеокадра составляет QCIF и CIF.
Способ по настоящему изобретению предпочтительно выполняется на программируемом процессоре. Однако система 100 сжатия видеосигналов, схема 110 оценки движения на основе быстрого поиска прогнозируемого движения и другие элементы могут также выполняться на компьютере общего назначения или компьютере специального назначения, программируемом микропроцессоре или микроконтроллере и периферийных элементах на интегральных схемах, специализированных ИС (ASIC) или других ИС, на электронных или логических схемах аппаратных средств, например на дискретных элементах, программируемом логическом устройстве, таком как PLD, PLA, FPGA или PAL, или подобные. В общем, любое устройство, в котором содержится конечный автомат, способный осуществлять блок-схемы, показанные на чертежах, и описанные способы, может использоваться для выполнения функций процессора в этом изобретении.
Хотя изобретение описано применительно к конкретным вариантам его воплощений, должно быть понятно, что многие альтернативы, модификации и изменения будут очевидны для специалистов в данной области. Например, различные компоненты вариантов воплощений могут взаимно заменяться, добавляться или замещаться в других вариантах воплощения. Соответственно, предполагается, что предпочтительные варианты воплощения изобретения, как они здесь изложены, являются иллюстративными, а не ограничивающими. Различные изменения могут быть сделаны без отступления от сущности и объема настоящего изобретения.
Claims (28)
1. Способ для осуществления поиска прогнозируемого движения в системе видеокодера с использованием векторов движения, представляющих разность между координатами макроблока данных в текущем кадре видеоданных и координатами соответствующего макроблока данных в эталонном кадре видеоданных, заключающийся в том, что получают, по меньшей мере, три параметра прогнозирования вектора движения, причем параметры прогнозирования вектора движения представляют приближения возможных векторов движения для текущего макроблока; определяют схему поиска; после получения всех из упомянутых, по меньшей мере, трех параметров прогнозирования векторов движения осуществляют поиск вокруг каждого параметра прогнозирования вектора движения, по меньшей мере, из трех параметров прогнозирования вектора движения с использованием схемы поиска и определяют окончательный вектор движения.
2. Способ по п.1, дополнительно содержащий вычисление метрики разности, представляющей качество совпадения макроблоков.
3. Способ по п.2, в котором метрика разности является, по меньшей мере, одной из метрики суммы абсолютных разностей и метрики суммы квадратов разностей.
4. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают оцененный глобальный вектор движения.
5. Способ по п.4, в котором оцененный глобальный вектор движения представляет собой усредненное значение по всем окончательным векторам движения в предыдущем кадре, для которых значение метрики разности ниже определенного порогового значения.
6. Способ по п.4, в котором оцененный глобальный вектор движения определяется посредством того, что вычисляют метрику разности для каждого из окончательных векторов движения в предыдущем кадре; сравнивают метрику разности для каждого из окончательных векторов движения в предыдущем кадре с предопределенным пороговым значением и определяют глобальный вектор движения на основе каждого из окончательных векторов движения в предыдущем кадре со значением метрики разности ниже порогового значения.
7. Способ по п.1, в котором этап проведения поиска дополнительно содержит следующие действия: проводят поиск вокруг каждого параметра прогнозирования вектора движения, по меньшей мере, из трех параметров прогнозирования вектора движения с использованием схемы поиска; определяют лучший вектор движения, имеющий значение метрики разности выше, чем предопределенное пороговое значение, и выполняют схему поиска вокруг нового набора параметров прогнозирования вектора движения.
8. Способ по п.1, в котором этап поиска дополнительно содержит следующие действия: выполняют схему поиска для параметров прогнозирования вектора движения; определяют текущее значение метрики разности для текущего вектора движения; сравнивают текущее значение метрики разности с предыдущим минимумом метрики разности; устанавливают новый минимум метрики разности, если текущее значение метрики разности ниже предыдущего минимума метрики разности; и завершают схему поиска, если значение метрики разности превышает предыдущий минимум метрики на предопределенную величину.
9. Способ по п.1, дополнительно содержащий следующие действия: вычисляют метрику разности; вычисляют смещение на основе параметра прогнозирования вектора движения и возможного варианта вектора движения и определяют модифицированную метрику разности на основе метрики разности и смещения.
10. Способ по п.1, в котором этап определения схемы поиска дополнительно содержит определение схемы поиска, которая является более протяженной в горизонтальном направлении, чем в вертикальном направлении.
11. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают нулевой вектор движения.
12. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают вектор движения одинаково расположенного макроблока из предыдущего кадра.
13. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают вектор движения макроблока, расположенного налево от текущего макроблока.
14. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают вектор движения макроблока, расположенного над текущим макроблоком.
15. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают вектор движения макроблока, расположенного над и направо от текущего макроблока.
16. Способ по п.1, в котором, по меньшей мере, три параметра прогнозирования вектора движения включают медианный вектор движения, получающийся из медианных горизонтальной и вертикальной координат вектора движения макроблока, расположенного налево от текущего макроблока, вектора движения макроблока, расположенного над текущим макроблоком, и вектора движения макроблока, расположенного над и направо от текущего макроблока.
17. Устройство для выполнения быстрого поиска прогнозируемого движения в системе видеокодера с использованием векторов движения, представляющих разницу между координатами макроблока данных в текущем кадре видеоданных и координатами соответствующего макроблока данных в эталонном кадре видеоданных, содержащее вход текущего макроблока изображения; схему оценки движения на основе быстрого поиска прогнозируемого движения, связанную с входом макроблока текущего изображения, включающую в себя в блок хранения параметров прогнозирования вектора движения, блок определения схемы поиска, предназначенный для определения схемы поиска, блок поиска, по меньшей мере, для трех параметров прогнозирования вектора движения, связанный с блоком хранения параметров прогнозирования вектора движения и блоком определения схемы поиска, при этом блок поиска, по меньшей мере, для трех параметров прогнозирования вектора движения выполнен с возможностью поиска вокруг каждого параметра прогнозирования вектора движения из, по меньшей мере, трех для текущего макроблока с использованием схемы поиска после получения, по меньшей мере, трех параметров прогнозирования вектора движения, и блок определения окончательного вектора движения; и выход вектора движения.
18. Устройство по п.17, дополнительно содержащее блок компенсации движения, связанный со схемой оценки движения на основе быстрого поиска прогнозируемого движения, и сумматор, связанный с входом текущего макроблока изображения и связанный с блоком компенсации движения.
19. Устройство по п.18, дополнительно содержащее блок дискретного косинусного преобразования, связанный с сумматором; и квантователь, связанный с блоком дискретного косинусного преобразования.
20. Устройство по п.17, в котором схема оценки движения на основе быстрого поиска прогнозируемого движения дополнительно содержит блок определения глобального вектора движения.
21. Устройство по п.17, в котором схема оценки движения на основе быстрого поиска прогнозируемого движения дополнительно содержит блок режима захвата.
22. Устройство по п.17, в котором схема оценки движения на основе быстрого поиска прогнозируемого движения дополнительно содержит блок завершения выполнения схемы поиска, если значение метрики разности превышает предыдущий минимум метрики на предопределенную величину.
23. Устройство по п.17, в котором схема оценки движения на основе быстрого поиска прогнозируемого движения дополнительно содержит схему определения модифицированной суммы абсолютных разностей.
24. Устройство по п.17, в котором блок хранения параметров прогнозирования вектора движения хранит множество параметров прогнозирования вектора движения.
25. Устройство по п.17, в котором множество параметров прогнозирования вектора движения включает в себя нулевой вектор движения.
26. Устройство по п.25, в котором множество параметров прогнозирования вектора движения включает в себя вектор движения одинаково расположенного макроблока из предыдущего кадра.
27. Устройство по п.25, в котором множество параметров прогнозирования вектора движения включает в себя медианный вектор движения, получающийся из медианных горизонтальной и вертикальной координат вектора движения макроблока, расположенного налево от текущего макроблока, вектора движения макроблока, расположенного над текущим макроблоком, и вектора движения макроблока, расположенного над и направо от текущего макроблока.
28. Устройство мобильной связи, содержащее устройство для выполнения быстрого поиска прогнозируемого движения в системе видеокодера с использованием векторов движения, представляющих разницу между координатами макроблока данных в текущем кадре видеоданных и координатами соответствующего макроблока данных в эталонном кадре видеоданных, содержащее вход текущего макроблока изображения; схему оценки данных на основе быстрого поиска прогнозируемого движения, связанную с входом текущего макроблока изображения, включающую в себя блок хранения параметров прогнозирования вектора движения, блок определения схемы поиска, предназначенный для определения схемы поиска, блок поиска множества параметров прогнозирования вектора движения, связанный с блоком хранения параметров прогнозирования вектора движения и блоком определения схемы поиска, причем блок поиска множества параметров прогнозирования вектора движения выполнен с возможностью поиска вокруг каждого параметра прогнозирования вектора движения из множества параметров прогнозирования вектора движения текущего макроблока с использованием схемы поиска после получения множества параметров прогнозирования вектора движения, и блок определения окончательного вектора движения; и выход данных вектора движения.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/212,940 | 2002-08-06 | ||
US10/212,940 US6925123B2 (en) | 2002-08-06 | 2002-08-06 | Method and apparatus for performing high quality fast predictive motion search |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2005106233A RU2005106233A (ru) | 2005-08-10 |
RU2323541C2 true RU2323541C2 (ru) | 2008-04-27 |
Family
ID=31494390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2005106233/09A RU2323541C2 (ru) | 2002-08-06 | 2003-07-25 | Способ и устройство для выполнения высококачественного быстрого поиска прогнозируемого движения |
Country Status (10)
Country | Link |
---|---|
US (2) | US6925123B2 (ru) |
EP (1) | EP1530831B1 (ru) |
JP (1) | JP2005535228A (ru) |
CN (1) | CN100468982C (ru) |
AU (1) | AU2003261250A1 (ru) |
EG (1) | EG23806A (ru) |
MX (1) | MXPA05001447A (ru) |
RU (1) | RU2323541C2 (ru) |
WO (1) | WO2004013985A1 (ru) |
ZA (2) | ZA200500769B (ru) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2477891C1 (ru) * | 2011-09-02 | 2013-03-20 | Открытое акционерное общество "Концерн радиостроения "Вега" | Способ обнаружения модификации электронного изображения (варианты) |
RU2487489C2 (ru) * | 2011-10-18 | 2013-07-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "МИЭТ" | Способ поиска векторов перемещений в динамических изображениях |
RU2493670C2 (ru) * | 2011-12-15 | 2013-09-20 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "МИЭТ" | Способ блочной межкадровой компенсации движения для видеокодеков |
RU2568299C2 (ru) * | 2011-06-29 | 2015-11-20 | Ниппон Телеграф Энд Телефон Корпорейшн | Устройство видеокодирования, устройство видеодекодирования, способ видеокодирования, способ видеодекодирования, программа видеокодирования и программа видеодекодирования |
RU2580942C2 (ru) * | 2010-10-06 | 2016-04-10 | Нтт Докомо, Инк. | Устройство прогнозирующего кодирования изображений, способ прогнозирующего кодирования изображений, программа прогнозирующего кодирования изображений, устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений и программа прогнозирующего декодирования изображений |
Families Citing this family (73)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6765964B1 (en) | 2000-12-06 | 2004-07-20 | Realnetworks, Inc. | System and method for intracoding video data |
KR100603592B1 (ko) * | 2001-11-26 | 2006-07-24 | 학교법인 고황재단 | 영상 화질 향상 인자를 이용한 지능형 파문 스캔 장치 및 그 방법과 그를 이용한 영상 코딩/디코딩 장치 및 그 방법 |
JP2003324743A (ja) * | 2002-05-08 | 2003-11-14 | Canon Inc | 動きベクトル探索装置及び動きベクトル探索方法 |
KR100774296B1 (ko) * | 2002-07-16 | 2007-11-08 | 삼성전자주식회사 | 움직임 벡터 부호화 방법, 복호화 방법 및 그 장치 |
US6925123B2 (en) * | 2002-08-06 | 2005-08-02 | Motorola, Inc. | Method and apparatus for performing high quality fast predictive motion search |
US7792194B2 (en) * | 2003-04-10 | 2010-09-07 | Lefan Zhong | MPEG artifacts post-processed filtering architecture |
US9330060B1 (en) | 2003-04-15 | 2016-05-03 | Nvidia Corporation | Method and device for encoding and decoding video image data |
US8660182B2 (en) * | 2003-06-09 | 2014-02-25 | Nvidia Corporation | MPEG motion estimation based on dual start points |
US7978769B2 (en) * | 2003-06-30 | 2011-07-12 | Ntt Docomo, Inc. | Method and apparatus for coding motion information |
KR100517504B1 (ko) * | 2003-07-01 | 2005-09-28 | 삼성전자주식회사 | B-픽처의 움직임 보상 모드 결정방법 및 장치 |
KR100987764B1 (ko) * | 2003-09-04 | 2010-10-13 | 경희대학교 산학협력단 | 영상 데이터의 예측 부호화를 위한 참조 데이터 유닛 결정방법 및 그 장치 |
US8000392B1 (en) | 2004-02-27 | 2011-08-16 | Vbrick Systems, Inc. | Phase correlation based motion estimation in hybrid video compression |
TWI240214B (en) * | 2004-05-18 | 2005-09-21 | Sunplus Technology Co Ltd | Optimized correlation matching method and system for determining track behavior |
CN100385957C (zh) * | 2004-05-21 | 2008-04-30 | 中国科学院计算技术研究所 | 一种运动矢量预测的方法 |
US20060002472A1 (en) * | 2004-06-30 | 2006-01-05 | Mehta Kalpesh D | Various methods and apparatuses for motion estimation |
TWI252695B (en) * | 2004-07-21 | 2006-04-01 | Realtek Semiconductor Corp | Block-based motion estimation method |
US20060056511A1 (en) * | 2004-08-27 | 2006-03-16 | University Of Victoria Innovation And Development Corporation | Flexible polygon motion estimating method and system |
EP1808024B1 (en) * | 2004-11-04 | 2013-04-17 | Thomson Licensing | Fast intra mode prediction for a video encoder |
US8761259B2 (en) * | 2005-09-22 | 2014-06-24 | Qualcomm Incorporated | Multi-dimensional neighboring block prediction for video encoding |
CN101326550B (zh) * | 2005-12-15 | 2013-12-25 | 美国亚德诺半导体公司 | 利用预测指导的抽取搜索的运动估计 |
US8731071B1 (en) | 2005-12-15 | 2014-05-20 | Nvidia Corporation | System for performing finite input response (FIR) filtering in motion estimation |
KR20070069615A (ko) | 2005-12-28 | 2007-07-03 | 삼성전자주식회사 | 움직임 추정장치 및 움직임 추정방법 |
US8265145B1 (en) * | 2006-01-13 | 2012-09-11 | Vbrick Systems, Inc. | Management and selection of reference frames for long term prediction in motion estimation |
US8724702B1 (en) | 2006-03-29 | 2014-05-13 | Nvidia Corporation | Methods and systems for motion estimation used in video coding |
US8160144B1 (en) * | 2006-05-10 | 2012-04-17 | Texas Instruments Incorporated | Video motion estimation |
US20080002772A1 (en) * | 2006-06-28 | 2008-01-03 | Hong Kong Applied Science and Technology Research Institute Company Limited | Motion vector estimation method |
US8660380B2 (en) | 2006-08-25 | 2014-02-25 | Nvidia Corporation | Method and system for performing two-dimensional transform on data value array with reduced power consumption |
US9307122B2 (en) * | 2006-09-27 | 2016-04-05 | Core Wireless Licensing S.A.R.L. | Method, apparatus, and computer program product for providing motion estimation for video encoding |
JP2008109632A (ja) * | 2006-09-28 | 2008-05-08 | Toshiba Corp | 動きベクトル検出装置及びその方法 |
JP4898415B2 (ja) * | 2006-12-19 | 2012-03-14 | キヤノン株式会社 | 動画像符号化装置及び動画像符号化方法 |
KR101383540B1 (ko) | 2007-01-03 | 2014-04-09 | 삼성전자주식회사 | 복수의 움직임 벡터 프리딕터들을 사용하여 움직임 벡터를추정하는 방법, 장치, 인코더, 디코더 및 복호화 방법 |
US8756482B2 (en) | 2007-05-25 | 2014-06-17 | Nvidia Corporation | Efficient encoding/decoding of a sequence of data frames |
US9118927B2 (en) | 2007-06-13 | 2015-08-25 | Nvidia Corporation | Sub-pixel interpolation and its application in motion compensated encoding of a video signal |
US8873625B2 (en) | 2007-07-18 | 2014-10-28 | Nvidia Corporation | Enhanced compression in representing non-frame-edge blocks of image frames |
US8279936B1 (en) * | 2007-12-11 | 2012-10-02 | Marvell International Ltd. | Method and apparatus for fractional pixel expansion and motion vector selection in a video codec |
US8743972B2 (en) * | 2007-12-20 | 2014-06-03 | Vixs Systems, Inc. | Coding adaptive deblocking filter and method for use therewith |
CN101971209A (zh) * | 2008-01-11 | 2011-02-09 | 卓然(法国) | 超高分辨率视频处理的稀疏几何结构 |
US8120659B2 (en) * | 2008-05-22 | 2012-02-21 | Aptina Imaging Corporation | Method and system for motion estimation in digital imaging applications |
US8831101B2 (en) * | 2008-08-02 | 2014-09-09 | Ecole De Technologie Superieure | Method and system for determining a metric for comparing image blocks in motion compensated video coding |
US8363727B2 (en) | 2008-09-30 | 2013-01-29 | Microsoft Corporation | Techniques to perform fast motion estimation |
US8666181B2 (en) | 2008-12-10 | 2014-03-04 | Nvidia Corporation | Adaptive multiple engine image motion detection system and method |
FR2940736B1 (fr) * | 2008-12-30 | 2011-04-08 | Sagem Comm | Systeme et procede de codage video |
TWI450590B (zh) * | 2009-04-16 | 2014-08-21 | Univ Nat Taiwan | 嵌入式系統及其中移動評估的資料讀取之方法 |
TWI450591B (zh) * | 2009-04-16 | 2014-08-21 | Univ Nat Taiwan | 視訊處理晶片組及其中移動評估的資料讀取之方法 |
TWI452909B (zh) * | 2009-06-29 | 2014-09-11 | Silicon Integrated Sys Corp | 移動向量校正電路、影像產生裝置及相關方法 |
US8462852B2 (en) * | 2009-10-20 | 2013-06-11 | Intel Corporation | Methods and apparatus for adaptively choosing a search range for motion estimation |
US8917769B2 (en) * | 2009-07-03 | 2014-12-23 | Intel Corporation | Methods and systems to estimate motion based on reconstructed reference frames at a video decoder |
US20110002387A1 (en) * | 2009-07-03 | 2011-01-06 | Yi-Jen Chiu | Techniques for motion estimation |
US9654792B2 (en) | 2009-07-03 | 2017-05-16 | Intel Corporation | Methods and systems for motion vector derivation at a video decoder |
US20110150093A1 (en) * | 2009-12-22 | 2011-06-23 | Stephen Mangiat | Methods and apparatus for completion of video stabilization |
US9357228B2 (en) * | 2010-05-27 | 2016-05-31 | The Hong Kong University Of Science And Technology | Motion estimation of images |
CN102447892A (zh) * | 2010-09-30 | 2012-05-09 | 宝利微电子系统控股公司 | 运动估计方法与装置 |
RU2010144450A (ru) | 2010-10-29 | 2012-05-10 | ЭлЭсАй Корпорейшн (US) | Оценка движения для видео транскодера |
TWI590083B (zh) * | 2010-11-18 | 2017-07-01 | 創意電子股份有限公司 | 一種產生影像位移偵測之快速搜尋視窗的方法 |
CN102986224B (zh) | 2010-12-21 | 2017-05-24 | 英特尔公司 | 用于增强的解码器侧运动向量导出处理的系统及方法 |
US9635383B2 (en) * | 2011-01-07 | 2017-04-25 | Texas Instruments Incorporated | Method, system and computer program product for computing a motion vector |
GB2487200A (en) | 2011-01-12 | 2012-07-18 | Canon Kk | Video encoding and decoding with improved error resilience |
EP3627839B1 (en) * | 2011-03-21 | 2021-10-20 | LG Electronics Inc. | Method for selecting motion vector predictor |
FR2966681A1 (fr) * | 2011-05-26 | 2012-04-27 | Thomson Licensing | Procede de codage d'une tranche d'image |
CN102263958A (zh) * | 2011-07-26 | 2011-11-30 | 中兴通讯股份有限公司 | 基于h264运动估计算法的初始点获取方法及装置 |
JP2013074571A (ja) * | 2011-09-29 | 2013-04-22 | Sony Corp | 画像処理装置および方法、プログラム、並びに記録媒体 |
EP2795903A4 (en) * | 2011-12-19 | 2015-03-11 | Intel Corp | PROTOCOL OF SAFEGUARDING AND EXHAUSTIVE RESTORATION OF SUB-MACROBLOC CANDIDATE FORMS FOR MOTION ESTIMATION |
CN104811584B (zh) * | 2014-01-29 | 2018-03-27 | 晨星半导体股份有限公司 | 影像处理电路与方法 |
CN106537918B (zh) * | 2014-08-12 | 2019-09-20 | 英特尔公司 | 用于视频编码的运动估计的系统和方法 |
CN104469381B (zh) * | 2014-12-30 | 2017-06-30 | 合肥工业大学 | 一种h.264运动估计搜索窗口自适应调整算法的vlsi实现系统 |
US10999602B2 (en) | 2016-12-23 | 2021-05-04 | Apple Inc. | Sphere projected motion estimation/compensation and mode decision |
US11259046B2 (en) | 2017-02-15 | 2022-02-22 | Apple Inc. | Processing of equirectangular object data to compensate for distortion by spherical projections |
US10924747B2 (en) | 2017-02-27 | 2021-02-16 | Apple Inc. | Video coding techniques for multi-view video |
US11093752B2 (en) | 2017-06-02 | 2021-08-17 | Apple Inc. | Object tracking in multi-view video |
US10602180B2 (en) * | 2017-06-13 | 2020-03-24 | Qualcomm Incorporated | Motion vector prediction |
US10754242B2 (en) | 2017-06-30 | 2020-08-25 | Apple Inc. | Adaptive resolution and projection format in multi-direction video |
CN107861990B (zh) * | 2017-10-17 | 2020-11-06 | 深圳市梦网视讯有限公司 | 一种视频搜索方法及系统、终端设备 |
JP7264239B2 (ja) * | 2019-04-19 | 2023-04-25 | 日本電気株式会社 | 順序同型照合装置、順序同型照合方法、及び、プログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE469866B (sv) * | 1991-04-12 | 1993-09-27 | Dv Sweden Ab | Metod för estimering av rörelseinnehåll i videosignaler |
JP4294743B2 (ja) * | 1996-12-13 | 2009-07-15 | 富士通株式会社 | 動きベクトル探索装置および動画像符号化装置 |
JPH10210473A (ja) * | 1997-01-16 | 1998-08-07 | Toshiba Corp | 動きベクトル検出装置 |
US6081553A (en) * | 1998-04-06 | 2000-06-27 | Hewlett Packard Company | Block-matching motion estimation technique for video compression of noisy source signals |
KR100739281B1 (ko) * | 2000-02-21 | 2007-07-12 | 주식회사 팬택앤큐리텔 | 움직임 추정 방법 및 장치 |
EP1152621A1 (en) * | 2000-05-05 | 2001-11-07 | STMicroelectronics S.r.l. | Motion estimation process and system. |
US6925123B2 (en) * | 2002-08-06 | 2005-08-02 | Motorola, Inc. | Method and apparatus for performing high quality fast predictive motion search |
-
2002
- 2002-08-06 US US10/212,940 patent/US6925123B2/en not_active Expired - Fee Related
-
2003
- 2003-07-25 CN CNB038189542A patent/CN100468982C/zh not_active Expired - Fee Related
- 2003-07-25 MX MXPA05001447A patent/MXPA05001447A/es active IP Right Grant
- 2003-07-25 EP EP03766912.4A patent/EP1530831B1/en not_active Expired - Lifetime
- 2003-07-25 AU AU2003261250A patent/AU2003261250A1/en not_active Abandoned
- 2003-07-25 JP JP2004526157A patent/JP2005535228A/ja active Pending
- 2003-07-25 WO PCT/US2003/023286 patent/WO2004013985A1/en active Application Filing
- 2003-07-25 RU RU2005106233/09A patent/RU2323541C2/ru not_active IP Right Cessation
-
2005
- 2005-01-26 ZA ZA200500769A patent/ZA200500769B/xx unknown
- 2005-01-26 ZA ZA2005/00796A patent/ZA200500796B/en unknown
- 2005-02-06 EG EGNA2005000020 patent/EG23806A/xx active
- 2005-06-28 US US11/168,584 patent/US7463687B2/en not_active Expired - Fee Related
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2580942C2 (ru) * | 2010-10-06 | 2016-04-10 | Нтт Докомо, Инк. | Устройство прогнозирующего кодирования изображений, способ прогнозирующего кодирования изображений, программа прогнозирующего кодирования изображений, устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений и программа прогнозирующего декодирования изображений |
RU2621688C1 (ru) * | 2010-10-06 | 2017-06-07 | Нтт Докомо, Инк. | Устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений |
RU2654202C1 (ru) * | 2010-10-06 | 2018-05-17 | Нтт Докомо, Инк. | Устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений |
RU2677254C1 (ru) * | 2010-10-06 | 2019-01-16 | Нтт Докомо, Инк. | Устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений |
RU2695776C1 (ru) * | 2010-10-06 | 2019-07-26 | Нтт Докомо, Инк. | Устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений |
RU2720702C1 (ru) * | 2010-10-06 | 2020-05-12 | Нтт Докомо, Инк. | Устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений |
RU2732512C1 (ru) * | 2010-10-06 | 2020-09-18 | Нтт Докомо, Инк. | Устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений |
RU2568299C2 (ru) * | 2011-06-29 | 2015-11-20 | Ниппон Телеграф Энд Телефон Корпорейшн | Устройство видеокодирования, устройство видеодекодирования, способ видеокодирования, способ видеодекодирования, программа видеокодирования и программа видеодекодирования |
US9693053B2 (en) | 2011-06-29 | 2017-06-27 | Nippon Telegraph And Telephone Corporation | Video encoding device, video decoding device, video encoding method, video decoding method, and non-transitory computer-readable recording media that use similarity between components of motion vector |
RU2477891C1 (ru) * | 2011-09-02 | 2013-03-20 | Открытое акционерное общество "Концерн радиостроения "Вега" | Способ обнаружения модификации электронного изображения (варианты) |
RU2487489C2 (ru) * | 2011-10-18 | 2013-07-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "МИЭТ" | Способ поиска векторов перемещений в динамических изображениях |
RU2493670C2 (ru) * | 2011-12-15 | 2013-09-20 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский университет "МИЭТ" | Способ блочной межкадровой компенсации движения для видеокодеков |
Also Published As
Publication number | Publication date |
---|---|
EP1530831B1 (en) | 2015-09-02 |
MXPA05001447A (es) | 2005-06-03 |
US20050238103A1 (en) | 2005-10-27 |
US7463687B2 (en) | 2008-12-09 |
US6925123B2 (en) | 2005-08-02 |
JP2005535228A (ja) | 2005-11-17 |
CN1675848A (zh) | 2005-09-28 |
EG23806A (en) | 2007-09-03 |
US20040028133A1 (en) | 2004-02-12 |
WO2004013985A1 (en) | 2004-02-12 |
RU2005106233A (ru) | 2005-08-10 |
EP1530831A1 (en) | 2005-05-18 |
ZA200500796B (en) | 2006-07-26 |
AU2003261250A1 (en) | 2004-02-23 |
CN100468982C (zh) | 2009-03-11 |
ZA200500769B (en) | 2006-07-26 |
EP1530831A4 (en) | 2011-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2323541C2 (ru) | Способ и устройство для выполнения высококачественного быстрого поиска прогнозируемого движения | |
RU2381630C2 (ru) | Способ и устройство для определения качества соответствия блока | |
JP5044568B2 (ja) | 予測誘導間引き探索を使用する動き推定 | |
KR100534207B1 (ko) | 비디오 부호화기의 움직임 추정기 및 그 방법 | |
US8040948B2 (en) | Method and system for coding moving image signals, corresponding computer program product | |
KR101192026B1 (ko) | 소스 픽쳐의 시퀀스를 코딩하는 방법 또는 장치 | |
JP3801886B2 (ja) | ハイブリッド型高速動き推定方法 | |
KR100964515B1 (ko) | 비디오 인코딩을 위한 비-정수 픽셀 공유 | |
US20150172687A1 (en) | Multiple-candidate motion estimation with advanced spatial filtering of differential motion vectors | |
US7433407B2 (en) | Method for hierarchical motion estimation | |
WO2010070128A1 (en) | Method for multi-resolution motion estimation | |
KR100987581B1 (ko) | 고속 움직임 추정을 위한 부분 블록정합 방법 | |
JP4537136B2 (ja) | 動き推定方法及び動き推定装置、並びにプログラム | |
WO2020129681A1 (ja) | 符号化装置及びプログラム | |
JP2004260251A (ja) | 動きベクトル検出装置及び動きベクトル検出プログラム | |
JP2008072608A (ja) | 画像符号化装置及び画像符号化方法 | |
Wu et al. | Two-pass hexagonal algorithm with improved hashtable structure for motion estimation | |
TWI324482B (en) | Algorithm of video coding | |
Dhara et al. | Video motion estimation using prediction based hybrid approach | |
Wu et al. | Technical Report number RUCS/2005/TR/01/002/A | |
Wu et al. | A novel two pass hexagonal search algorithm for motion estimation | |
Ranjit | Block Based Motion Vector Estimation Using FUHS16, UHDS16 and UHDS8 Algorithms for Video Sequence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PC41 | Official registration of the transfer of exclusive right |
Effective date: 20120626 |
|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20160726 |