У меня есть функция, которая проецирует точку, используя модель камеры с 7 параметрами:
Vec2 project(const Rot3& R, // camera orientation
const Vec3& T, // camera pos
double f_px, // focal length
const Vec3& X) // point in world;
{
const Vec3 P = R * (X-T); // Subtract camera position and apply rotation
const Vec2 p = P.hnormalized() * f_px; // Normalize and apply focal length
return p;
}
Теперь я хочу расширить функцию, чтобы получить оценку неопределенности проецируемой точки (ковариационная матрица 3×3 — эллипсоид в мировых координатах) и вернуть ковариационную матрицу 2×2 (эллипс в пиксельных координатах).
Я думаю, что ссылка на Хартли & Зиссерман-х Геометрия нескольких видов в компьютерном зрении Вот применяется, но я не могу понять математику этого.
Задача ещё не решена.
Других решений пока нет …