УСОВЕРШЕНСТВОВАННЫЕ ТЕХНОЛОГИИ ИНТЕРПОЛЯЦИИ ДЛЯ КОМПЕНСАЦИИ ДВИЖЕНИЯ ПРИ КОДИРОВАНИИ ВИДЕО

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