2010-09-09 3 views
6

Я создал простую тестовую заявку для выполнения перевода (T) и вращения (R) Оценка из основной матрицы. KGОценка T и R из основной матрицы

  1. Сгенерировать 50 случайных Баллов.
  2. Рассчитать прогноз pointSet1.
  3. Transform Точки с помощью матрицы (R | T).
  4. Рассчитать новый прогноз pointSet2.
  5. Затем вычислить основную матрицу F.
  6. Экстракт необходимой матрицы, как E = K2^T F K1 (K1, K2 - внутренние матрицы для фотоаппаратов).
  7. Используйте SVD для получения UDV^T.

И вычислить restoredR1 = UWV^T, restoredR2 = UW^T. И посмотрите, что один из них равен начальному R.

Но когда я вычисляю вектор перевода, restoredT = UZU^T, я нормализую T.

restoredT*max(T.x, T.y, T.z) = T

Как восстановить правильный вектор перевода?

ответ

1

Я понимаю! На этом этапе мне не нужна оценка реальной длины. Когда я получаю первое изображение, я должен установить метрическое преобразование (масштабный коэффициент) или оценить его по калибровке из известного объекта. После того, как я получу второй кадр, я вычислил нормированный T и используя известные 3d координаты из первого кадра для решения уравнения (sx2, sy2, 1) = K (R | lambda T) (X, Y, Z); и найти лямбда - чем лямбда T будет правильным метрическим переводом ...

Я проверяю его, и это правда/Итак ... может быть, кто знает более простое решение?

+0

Это звучит как решение, предложенное Bae et al. in * Computational Re-Photography * (2010), я искал googled и не нашел другого подхода. – oarfish

Смежные вопросы