ПОКАДРОВЫЙ, ПОПИКСЕЛЬНЫЙ ПОИСК СОВПАДЕНИЯ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ, РАССЧИТАННЫХ ПО МОДЕЛИ, С ВИДЕОКАМЕРАМИ, ПОЛУЧЕННЫМИ С КАМЕРЫ, ДЛЯ МАШИННОГО ЗРЕНИЯ

1. Способ отслеживания положения и угла обзора калиброванной камеры в режиме реального времени (эго-движение), включающий:
создание априорной модели окружающей обстановки, в которой размещена камера;
получение с камеры исходного, необработанного видеокадра;
формирование для каждого видеокадра небольшого гипотетического набора возможных положений и углов обзора камеры, при которых сделан этот видеокадр;
формирование изображений для каждого видеокадра с помощью графического процессора и данных о вершинах, полученных от априорной модели, по одному изображению для каждого положения и угла обзора камеры из указанного набора; и
выбор лучшего положения и угла обзора для каждого видеокадра путем нахождения изображения, наиболее полно совпадающего с видеокадром.
2. Способ по п.1, отличающийся тем, что для формирования априорной модели окружающей обстановки используют дешевый графический процессор, уже реализованный в уровне техники и применяемый в реалистических графических компьютерных играх.
3. Способ по п.2, отличающийся тем, что первый видеокадр получают при известном положении и угле обзора.
4. Способ по п.3, отличающийся тем, что видеокадры и сформированные изображения имеют одинаковое разрешение и разделены на прямоугольные или квадратные области, перекрывающиеся между собой на 0-100% пикселов.
5. Способ по п.4, отличающийся тем, что число гипотетических наборов положений и углов обзора ограничивают путем вычисления наиболее вероятного вектора движения и угла обзора камеры по двум видеокадрам, следующим один за другим, причем указанное вычисление включает:
выполнение быстрого преобразования Фурье для каждой области в текущем видеокадре, причем каждую область обрабатывают независимо от другой;
выделение фазовых составляющих из полученной матрицы быстрого преобразования Фурье, составление матрицы фазовых составляющих в чистом виде и сохранение этой матрицы фазовых составляющих в памяти;
получение разностей фаз между каждой областью текущего видеокадра, полученного с камеры, и соответствующей области предшествующего видеокадра, полученного с камеры, с использованием матриц фазовых составляющих текущего и предшествующего видеокадров;
выполнение обратного быстрого преобразования Фурье матрицы разностей фаз с получением поверхности фазовой корреляции;
определение положения двумерного максимума на поверхности фазовой корреляции каждой области, формирующего двумерный вектор оптического потока для каждой области; и
расчет наиболее вероятных трехмерных векторов движения и углов обзора камеры по векторам оптического потока всех областей.
6. Способ по п.5, отличающийся тем, что расчет наиболее вероятных трехмерных векторов движения и углов обзора по двумерным векторам оптического потока включает:
определение направления движения во внешней системе координат, а затем определение линии, вдоль которой лежат наиболее вероятные следующие положения;
определение следующих предварительных положений вдоль линии движения на основе предыдущего вычисления скорости;
выбор нескольких наиболее вероятных положений на основе выбора точек в объеме вокруг рассчитанного подходящего положения; и
выбор наилучшего следующего положения среди выбранных точек в объеме с использованием градиентного спуска.
7. Способ по п.5, отличающийся тем, что выбор наиболее полно совпадающего сформированного изображения для каждого видеокадра включает:
выполнение быстрого преобразования Фурье для каждой области сформированного изображения;
выделение фазовых составляющих матрицы быстрого преобразования Фурье каждой области;
составление матриц фазовых составляющих текущего видеокадра и сформированного изображения, получение разности фаз между каждой областью текущего видеокадра и соответствующей областью сформированного изображения с формированием указанными разностями матрицы фазовой корреляции и
выполнение обратного быстрого преобразования Фурье матрицы фазовой корреляции между областью видеокадра, полученного с камеры, и областью сформированного изображения с получением поверхности фазовой корреляции для каждой области,
при этом наиболее полно совпадающим сформированным изображением является изображение с наименьшей суммой квадратов (скалярным произведением) векторов оптического потока, суммированной по всем областям.
8. Способ по п.5, отличающийся тем, что выбор наиболее полно совпадающего сформированного изображения для каждого видеокадра согласно способу, известному как «прямой», включает:
определение для каждого сформированного изображения разности значений зачерненности между сформированным изображением и ведеокадром для каждого пиксела;
вычисление простой суммы квадратов всех указанных разностей для каждой области, при этом выбирают сформированное изображение, имеющее наименьшую сумму квадратов разностей с видеокадром.
9. Способ по п.5, отличающийся тем, что априорную модель создают с использованием известных средств, например AutoCad.
10. Способ по п.5, отличающийся тем, что априорную модель создают путем обработки изображений полученных ранее видеокадров окружающей обстановки, в которой расположена камера, используя известные способы.
11. Способ по п.5, отличающийся тем, что априорную модель создают в режиме реального времени одновременно с оценкой движения, но отдельно от нее, используя известные способы.
12. Устройство для отслеживания положения и угла обзора камеры в режиме реального времени (эго-движения), содержащее:
видеокамеру и ее кадровый буфер, содержание которого обновляют с постоянной частотой кадров;
средства цифровой обработки для вычисления оптического потока от одного видеокадра до другого и формирования на основе анализа указанного оптического потока гипотетического набора предварительных положений камеры и углов обзора;
априорную модель окружающей обстановки;
графический процессор или графические процессоры, выполненный или выполненные с возможностью многократных формирований модели окружающей среды в период времени, необходимый для обновления камерой кадрового буфера;
графические поверхности или буферы изображения для хранения сформированных поверхностей, каждая из которых соответствует одному из предварительных положений и углов обзора в модели окружающей среды; и
средства цифровой обработки для сравнения каждого сформированного изображения с кадровым буфером и последующего выбора наиболее полно совпадающего сформированного изображения с определением таким образом наиболее точного мгновенного положения и угла обзора камеры.
13. Устройство по п.12, отличающееся тем, что указанный дешевый графический процессор, используемый для формирования априорной модели окружающей среды, представляет собой известный процессор, используемый в реалистических графических компьютерных играх.
14. Устройство по п.13, отличающееся тем, что его исходное состояние установлено таким образом, что устройство начинает вычисления на основе известных положения, угла обзора, скорости и угловой скорости.
15. Устройство по п.14, отличающееся тем, что видеокадры и сформированные изображения имеют одинаковое разрешение и поделены на прямоугольные или квадратные области, перекрывающие друг друга на 0-100% пикселов.
16. Устройство по п.15, отличающееся тем, что оно выполнено с возможностью ограничения числа гипотетических наборов положений и углов обзора посредством вычисления наиболее вероятного вектора движения и угла обзора камеры по двум кадрам, следующим один за другим, причем указанное вычисление включает:
выполнение быстрого преобразования Фурье для каждой области текущего видеокадра, причем каждую область обрабатывают независимо от другой;
выделение фазовых составляющих из полученной матрицы быстрого преобразования Фурье, составление матрицы фазовых составляющих в чистом виде и сохранение этой матрицы фазовых составляющих в памяти;
получение разности фаз между каждой областью текущего видеокадра, полученного с камеры, и соответствующей областью предшествующего видеокадра, полученного с камеры, с использованием матриц фазовых составляющих текущего и предшествующего кадров с формированием указанными разностями матрицы фазовой корреляции;
выполнение обратного быстрого преобразования Фурье матрицы фазовой корреляции с получением поверхности фазовой корреляции;
определение положения 2-мерного максимума на поверхности фазовой корреляции каждой области, формирующего вектор оптического потока для каждой области и
расчет наиболее вероятных трехмерных векторов движения и углов обзора камеры по векторам оптического потока всех областей.
17. Устройство по п.16, отличающийся тем, что оно выполнено с возможностью вычисления наиболее вероятных трехмерных векторов движения и углов обзора по векторам оптического потока путем следующих вычислений:
определение направления движения во внешней системе координат с дальнейшим определением линии, вдоль которой лежат наиболее вероятные следующие положения;
определение предварительных следующих положений вдоль линии движения на основе предыдущего вычисления скорости;
выбор нескольких наиболее вероятных положений на основе выбора точек в объеме вокруг рассчитанного предварительного положения и
выбор наилучшего следующего положения среди выбранных в объеме точек с использованием градиентного спуска;
18. Устройство по п.16, отличающееся тем, что оно выполнено с возможностью выбора наиболее полно совпадающего сформированного изображения для каждого видеокадра посредством следующих вычислений:
выполнение быстрого преобразования Фурье для каждой области сформированного изображения;
выделение фазовых составляющих матрицы быстрого преобразования Фурье каждой области;
получение разности фаз между каждой областью текущего видеокадра, полученного с камеры, и соответствующей областью сформированного изображения с использованием матриц фазовых составляющих текущего кадра и сформированного изображения с образованием указанными разностями матрицы фазовой корреляции и
выполнение обратного быстрого преобразования Фурье матрицы фазовой корреляции между областью видеокадра, полученного с камеры, и областью сформированного изображения с получением поверхности фазовой корреляции для каждой области, причем
наиболее полно совпадающим сформированным изображением является изображение с наименьшей суммой квадратов (скалярным произведением) векторов оптического потока, суммированной по всем областям.
19. Устройство по п.16, отличающееся тем, что оно выполнено с возможностью выбора наиболее полно совпадающего сформированного изображения для каждого видеокадра посредством следующих вычислений способом, известным как “прямой”:
определение для каждого сформированного изображения разностей значений зачерненности между сформированным изображением и видеокадром для каждого пиксела и
расчет простой суммы квадратов всех указанных разностей для каждой области, причем
выбираемое сформированное изображение имеет наименьшую сумму квадратов разностей с видеокадром.
20. Устройство по п.16, отличающееся тем, что априорная модель создана с использованием известных средств, например AutoCad.
21. Устройство по п.16, отличающееся тем, что априорная модель создана путем обработки изображений полученных ранее видеокадров окружающей обстановки, в которой размещена камера, с использованием известных способов.
22. Устройство по п.16, отличающееся тем, что априорная модель создана в режиме реального времени одновременно с оценкой движения, но отдельно от нее посредством известных способов.
23. Компьютерный программный продукт, реализующий способы по пп.6-11.