ВЫВЕДЕНИЕ ВЕКТОРА ДВИЖЕНИЯ ПРИ ВИДЕОКОДИРОВАНИИ

1. Способ обработки видеоданных, содержащий этапы, на которых:
определяют подходящий вектор движения для выведения информации движения текущего блока видеоданных, причем информация движения указывает движение текущего блока относительно опорных видеоданных; и
определяют выведенный вектор движения для текущего блока на основе этого определенного подходящего вектора движения, причем определение выведенного вектора движения содержит выполнение поиска движения для первого набора опорных данных, который соответствует второму набору опорных данных вне текущего блока.
2. Способ по п.1, в котором определение подходящего вектора движения содержит этап, на котором выбирают подходящий вектор движения из списка кандидатов, содержащего множество записей.
3. Способ по п.2, дополнительно содержащий этап, на котором генерируют список кандидатов, причем каждая запись в списке кандидатов содержит вектор движения и связанный с ним опорный индекс.
4. Способ по п.3, в котором генерирование списка кандидатов содержит этап, на котором идентифицируют один или более векторов движения исходя из пространственного соседа текущего блока, временного соседа текущего блока, или выводят вектор движения, используя технологию выведения вектора движения.
5. Способ по п.3, в котором генерирование списка кандидатов содержит этап, на котором генерируют список кандидатов и список подходящих векторов движения режима слияния одним и тем же способом.
6. Способ по п.3, в котором генерирование списка кандидатов содержит этап, на котором выполняют экстраполяцию или интерполяцию поля движения изображения, содержащего текущий блок, и определяют один или более подходящих векторов движения исходя из экстраполированного или интерполированного поля движения.
7. Способ по п.3, в котором генерирование списка кандидатов содержит этап, на котором отбрасывают дублированные подходящие вектора движения из списка кандидатов.
8. Способ по п.3, дополнительно содержащий этап, на котором масштабируют подходящие вектора движения, используя фиксированное опорное изображение из списка опорных изображений для текущего блока, причем фиксированное опорное изображение представляет собой исходное изображение в списке опорных изображений для текущего блока.
9. Способ по п.2, в котором выбор подходящего вектора движения содержит этап, на котором выбирают подходящий вектор движения, который показывает наилучшее совпадение между первым набором опорных данных и вторым набором опорных данных.
10. Способ по п.2, в котором выбор подходящего вектора движения содержит этап, на котором выбирают подходящий вектор движения на основе стоимости вектора движения, связанной с подходящим вектором движения, причем стоимость вектора движения содержит разницу между подходящим вектором движения и центром области поиска опорного изображения, в отношении которого проводится поиск для определения выведенного вектора движения.
11. Способ по п.2, дополнительно содержащий этапы, на которых:
получают пару векторов движения для каждого подходящего вектора движения из списка кандидатов;
выполняют процесс двустороннего согласования для соответствующих пар векторов движения; и
при этом выбор одного или более подходящих векторов движения содержит этап, на котором выбирают один или более векторов движения из процесса двустороннего согласования.
12. Способ по п.11, в котором получение пары векторов движения для каждого подходящего вектора движения содержит этап, на котором определяют первый вектор движения данной пары из соответствующего подходящего вектора движения и определяют второй вектор движения упомянутой пары на основе опорного изображения из списка опорных изображений для текущего блока.
13. Способ по п.1, в котором уточнение определенного подходящего вектора движения содержит этапы, на которых:
определяют окно поиска в опорном изображении на основе подходящего вектора движения;
выполняют поиск опорных данных с наилучшим совпадением, используя процесс выведения информации движения в этом определенном окне поиска; и
определяют выведенный вектор движения для текущего блока на основе опорных данных с наилучшим совпадением.
14. Способ по п.13, в котором поиск наилучшего совпадения содержит выполнение одного или нескольких из полного поиска, трехэтапного поиска, ромбовидного поиска, поиска с градиентным спуском на основе блоков и неограниченного ромбовидного поиска со смещенным центром.
15. Способ по п.13, в котором поиск опорных данных с наилучшим совпадением содержит этап, на котором определяют стоимость вектора движения для вектора движения, связанного с опорными данными с наилучшим совпадением.
16. Способ по п.1, дополнительно содержащий этап, на котором декодируют текущий блок видеоданных, используя выведенный вектор движения, каковое декодирование текущего блока содержит этапы, на которых:
определяют опорный блок в опорном изображении на основе выведенного вектора движения;
декодируют остаточные данные из кодированного битового потока; и
комбинируют декодированный остаток и упомянутый определенный опорный блок для реконструкции текущего блока.
17. Способ по п.1, дополнительно содержащий этап, на котором кодируют текущий блок, каковое кодирование текущего блока содержит этап, на котором кодируют остаточные данные для текущего блока в кодированный битовый поток, причем кодированный битовый поток не включает в себя данные, указывающие информацию движения.
18. Способ по п.1, дополнительно содержащий этап, на котором:
генерируют исходный список подходящих векторов движения для выведения информации движения для текущего блока видеоданных;
при этом определение подходящего вектора движения содержит этап, на котором выбирают подходящий вектор движения из исходного списка на основе стоимости согласования, связанной с подходящим вектором движения;
при этом уточнение подходящего вектора движения содержит этап, на котором выполняют поиск опорных данных с наилучшим совпадением, используя процесс выведения информации движения в окне поиска, указываемом подходящим вектором движения; и
при этом определение выведенного вектора движения для текущего блока содержит этап, на котором определяют выведенный вектор движения на основе опорных данных с наилучшим совпадением.
19. Устройство для обработки видеоданных, содержащее:
память, приспособленную для хранения текущего блока видеоданных; и
один или более процессоров, выполненных с возможностью:
определять подходящий вектора движения для выведения информации движения текущего блока видеоданных, причем информация движения указывает движение текущего блока относительно опорных видеоданных; и
определять выведенный вектор движения для текущего блока на основе этого определенного подходящего вектора движения, каковое определение выведенного вектора движения содержит выполнение поиска движения для первого набора опорных данных, который соответствует второму набору опорных данных вне текущего блока.
20. Устройство по п.19, в котором для определения подходящего вектора движения один или более процессоров выполнены с возможностью выбирать подходящий вектор движения из списка кандидатов, содержащего множество записей.
21.Устройство по п.20, в котором один или более процессоров дополнительно выполнены с возможностью генерировать список кандидатов, причем каждая запись в списке кандидатов содержит вектор движения и связанный с ним опорный индекс.
22. Устройство по п.21, в котором для генерирования списка кандидатов один или более процессоров выполнены с возможностью идентифицировать один или более векторов движения исходя из пространственного соседа текущего блока, временного соседа текущего блока или выводить вектор движения, используя способ выведения вектора движения.
23. Устройство по п.21, в котором для генерирования списка кандидатов один или более процессоров выполнены с возможностью генерировать список кандидатов и список подходящих векторов движения режима слияния одним и тем же способом.
24. Устройство по п.21, в котором для генерирования списка кандидатов один или более процессоров выполнены с возможностью осуществлять экстраполяцию или интерполяцию поля движения изображения, содержащего текущий блок, и определять один или более подходящих векторов движения исходя из экстраполированного или интерполированного поля движения.
25. Устройство по п.21, в котором для генерирования списка кандидатов один или более процессоров выполнены с возможностью отбрасывать дублированные подходящие вектора движения из списка кандидатов.
26. Устройство по п.21, в котором один или более процессоров дополнительно выполнены с возможностью масштабировать подходящие вектора движения, используя фиксированное опорное изображение из списка опорных изображений для текущего блока, причем фиксированное опорное изображение представляет собой исходное изображение в списке опорных изображений для текущего блока.
27. Устройство по п.20, в котором для выбора подходящего вектора движения один или более процессоров выполнены с возможностью выбирать подходящий вектор движения, который показывает наилучшее совпадение между первым набором опорных данных и вторым набором опорных данных.
28. Способ по п.20, в котором для выбора подходящего вектора движения один или более процессоров выполнены с возможностью выбирать подходящий вектор движения на основе стоимости вектора движения, связанной с подходящим вектором движения, причем стоимость вектора движения содержит разницу между подходящим вектором движения и центром области поиска опорного изображения, в отношении которого проводится поиск для определения выведенного вектора движения.
29. Устройство по п.20, в котором один или более процессоров дополнительно выполнены с возможностью:
получать пару векторов движения для каждого подходящего вектора движения из списка кандидатов;
выполнять процесс двустороннего согласования для соответствующих пар векторов движения; и
при этом для выбора одного или более подходящих векторов движения один или более процессоров выполнены с возможностью выбирать один или более векторов движения из процесса двустороннего согласования.
30. Устройство по п.29, в котором для получения пары векторов движения для каждого подходящего вектора движения один или более процессоров выполнены с возможностью определять первый вектор движения данной пары из соответствующего подходящего вектора движения и определять второй вектор движения упомянутой пары на основе опорного изображения из списка опорных изображений для текущего блока.
31. Устройство по п.19, в котором для уточнения упомянутого определенного подходящего вектора движения один или более процессоров выполнены с возможностью:
определять окно поиска в опорном изображении на основе подходящего вектора движения;
выполнять поиск опорных данных с наилучшим совпадением, используя процесс выведения информации движения в этом определенном окне поиска; и
определять выведенный вектор движения для текущего блока на основе опорных данных с наилучшим совпадением.
32. Устройство по п.31, в котором для поиска наилучшего совпадения один или более процессоров выполнены с возможностью осуществления одного или нескольких из полного поиска, трехэтапного поиска, ромбовидного поиска, поиска с градиентным спуском на основе блоков и неограниченного ромбовидного поиска со смещенным центром.
33. Устройство по п.31, в котором для поиска опорных данных с наилучшим совпадением один или более процессоров выполнены с возможностью определять стоимость вектора движения для вектора движения, связанного с опорными данными с наилучшим совпадением.
34. Устройство по п.19, в котором один или более процессоров дополнительно выполнены с возможностью декодировать текущий блок видеоданных, используя выведенный вектор движения, причем для декодирования текущего блока один или более процессоров выполнены с возможностью:
определять опорный блок в опорном изображении на основе выведенного вектора движения;
декодировать остаточные данные из кодированного битового потока; и
комбинировать декодированный остаток и упомянутый определенный опорный блок для реконструкции текущего блока.
35. Устройство по п.34, дополнительно содержащее дисплей, выполненный с возможностью отображения декодированного блока.
36. Устройство по п.19, в котором один или более процессоров дополнительно выполнены с возможностью кодировать текущий блок, причем для кодирования текущего блока один или более процессоров выполнены с возможностью кодировать остаточные данные для текущего блока в кодированный битовый поток, причем кодированный битовый поток не включает в себя данные, указывающие выведенный вектор движения.
37. Устройство по п.36, дополнительно содержащее камеру, выполненную с возможностью захвата изображения, которое включает в себя блок видеоданных.
38. Устройство по п.19, причем устройство содержит по меньшей мере одно из:
интегральной схемы;
микропроцессора; и
устройства беспроводной связи.
39. Устройство по п.19, в котором один или более процессоров дополнительно выполнены с возможностью:
генерировать исходный список подходящих векторов движения для выведения информации движения для текущего блока видеоданных;
при этом для определения подходящего вектора движения один или более процессоров выполнены с возможностью выбирать подходящий вектор движения из исходного списка на основе стоимости согласования, связанной с подходящим вектором движения;
при этом для уточнения подходящего вектора движения один или более процессоров выполнены с возможностью поиска опорных данных с наилучшим совпадением, используя процесс выведения информации движения в окне поиска, указываемом подходящим вектором движения; и
при этом для определения выведенного вектора движения для текущего блока один или более процессоров выполнены с возможностью определять выведенный вектор движения на основе опорных данных с наилучшим совпадением.
40. Устройство для обработки видеоданных, содержащее:
средство для определения подходящего вектора движения для выведения информации движения текущего блока видеоданных, причем информация движения указывает движение текущего блока относительно опорных видеоданных; и
средство для определения выведенного вектора движения для текущего блока на основе этого определенного подходящего вектора движения, причем средство для определения выведенного вектора движения содержит средство для выполнения поиска движения для первого набора опорных данных, который соответствует второму набору опорных данных вне текущего блока.
41. Долговременный машиночитаемый носитель, на котором хранятся инструкции, которые при их исполнении предписывают одному или более процессорам:
определять подходящий вектор движения для выведения информации движения текущего блока видеоданных, причем информация движения указывает движение текущего блока относительно опорных видеоданных; и
определять выведенный вектор движения для текущего блока на основе этого определенного подходящего вектора движения, причем для определения выведенного вектора движения инструкции предписывают одному или более процессорам выполнять поиск движения для первого набора опорных данных, который соответствует второму набору опорных данных вне текущего блока.