СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ВЕКТОРА ДВИЖЕНИЯ

1. Способ кодирования вектора движения, причем способ содержит:
выбор из первого режима и второго режима, причем первый режим в котором кодируется информация, указывающая предиктор вектора движения из по меньшей мере одного предиктора вектора движения или второй режим в котором кодируется информация, указывающая генерирование предиктора вектора движения на основании пикселей, включенных в ранее кодированную область, смежную с текущим блоком;
определение предиктора вектора движения текущего блока, в соответствии с выбранным режимом, и кодирование информации о предикторе вектора движения текущего блока; и
кодирование вектора разницы между вектором движения текущего блока и предиктором вектора движения текущего блока;
при этом второй режим является режимом, в котором кодируется информация, указывающая генерирование предиктора вектора движения с помощью установки диапазона, в котором предиктор вектора движения должен быть найден, на основании по меньшей мере одного предиктора вектора движения, и с помощью поиска внутри диапазона поиска с использованием пикселей, включенных в ранее кодированную область.
2. Способ по п.1, в котором выбор первого режима или второго режима содержит выбор первого режима или второго режима на основании глубины, указывающей степень уменьшения от размера максимального элемента кодирования текущего изображения или фрагмента до размера текущего блока.
3. Способ по п.1, в котором выбор первого режима или второго режима содержит выбор первого режима или второго режима в элементе текущего изображения, содержащем текущий блок, или в элементе фрагмента, содержащем текущий блок.
4. Способ по п.1, в котором выбор первого режима или второго режима содержит выбор первого режима или второго режима на основании того, кодирован ли текущий блок в режиме пропуска.
5. Способ по п.1, в котором по меньшей мере один предиктор вектора движения содержит первый вектор движения блока, смежного с левой стороной текущего блока, второй вектор движения блока, смежного с верхней стороной текущего блока, и третий вектор движения блока, смежного с правой верхней стороной текущего блока.
6. Способ по п.5, в котором по меньшей мере один предиктор вектора движения дополнительно содержит медианное значение первого вектора движения, второго вектора движения и третьего вектора движения.
7. Способ по п.5, в котором по меньшей мере один предиктор вектора движения дополнительно содержит предиктор вектора движения, генерированный на основании вектора движения блока, совмещенного с текущим блоком в опорном изображении, и временного расстояния между опорным изображением и текущим изображением.
8. Способ по п.7, в котором кодирование информации о предикторе вектора движения текущего блока содержит кодирование информации, указывающей, является ли блок, совмещенный с текущим блоком, блоком изображения, предшествующего по времени текущему изображению, или блоком изображения, следующего по времени за текущим изображением.
9. Способ по п.8, в котором в заголовок фрагмента, содержащего текущей блок, вставляется информация, указывающая, является ли блок, совмещенный с текущим блоком, блоком изображения, предшествующего по времени текущему изображению, или блоком изображения, следующего по времени за текущим изображением.
10. Устройство для кодирования вектора движения, причем устройство содержит:
элемент прогнозирования, который выбирает из первого режима и второго режима, причем первый режим в котором кодируется информация, указывающая предиктор вектора движения из по меньшей мере одного предиктора вектора движения или второй режим в котором кодируется информация, указывающая генерирование предиктора вектора движения на основании пикселей, включенных в ранее кодированную область, смежную с текущим блоком;
первый кодер, который определяет предиктор вектора движения текущего блока в соответствии с выбранным режимом и кодирует информацию о предикторе вектора движения текущего блока; и
второй кодер, который кодирует вектор разницы между вектором движения текущего блока и предиктором вектора движения текущего блока,
при этом второй режим является режимом, в котором кодируется информация, указывающая генерирование предиктора вектора движения с помощью установки диапазона, в котором предиктор вектора движения должен быть найден, на основании по меньшей мере одного предиктора вектора движения, и с помощью поиска внутри диапазона поиска с использованием пикселей, включенных в ранее кодированную область.
11. Способ декодирования вектора движения, причем способ содержит:
декодирование информации о предикторе вектора движения текущего блока, кодированной в соответствии с режимом, выбранным из первого режима и второго режима;
декодирование вектора разницы между вектором движения текущего блока и предиктором вектора движения текущего блока;
генерирование предиктора вектора движения текущего блока на основании декодированной информации о предикторе вектора движения текущего блока; и
восстановление вектора движения текущего блока на основании генерированного предиктора вектора движения и декодированного вектора разницы;
при этом первый режим является режимом, в котором кодируется информация, указывающая предиктор вектора движения из по меньшей мере одного предиктора вектора движения, а второй режим является режимом, в котором кодируется информация, указывающая генерирование предиктора вектора движения с помощью установки диапазона, в котором предиктор вектора движения должен быть найден, на основании по меньшей мере одного предиктора вектора движения, и с помощью поиска внутри диапазона поиска с использованием пикселей, включенных в ранее кодированную область, смежную с текущим блоком.
12. Способ по п.11, в котором режим, выбранный из первого режима и второго режима, является режимом, выбранным на основании глубины, указывающей степень уменьшения фаз от размера максимального элемента кодирования текущего изображения или фрагмента до размера текущего блока.
13. Способ по п.11, в котором режим, выбранный из первого режима и второго режима, является режимом, выбранным в элементе текущего изображения, содержащего текущий блок, или элементе фрагмента, содержащей текущий блок.
14. Устройство для декодирования вектора движения, причем устройство содержит:
первый декодер, который декодирует информацию о предикторе вектора движения текущего блока, кодированную в соответствии с режимом, выбранным из первого режима и второго режима;
второй декодер, который декодирует вектор разницы между вектором движения текущего блока и предиктором вектора движения текущего блока,
элемент прогнозирования, который генерирует предиктор вектора движения текущего блока на основании декодированной информации о предикторе вектора движения текущего блока; и
устройство восстановления вектора движения, которое восстанавливает вектор движения текущего блока на основании генерированного предиктора вектора движения и декодированного вектора разницы;
при этом первый режим является режимом, в котором кодируется информация, указывающая предиктор вектора движения из по меньшей мере одного предиктора вектора движения, а второй режим является режимом, в котором кодируется информация, указывающая генерирование предиктора вектора движения с помощью установки диапазона, в котором предиктор вектора движения должен быть найден, на основании по меньшей мере одного предиктора вектора движения, и с помощью поиска внутри диапазона поиска с использованием пикселей, включенных в ранее кодированную область, смежную с текущим блоком.
15. Считываемый компьютером носитель записи, имеющий записанную на нем компьютерную программу для выполнения способа по одному из п.п.1-9 и 11-13.