Как вычислить новые внешние размеры камеры после преобразования системы координат? - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь вычислить новые внешние параметры камеры после преобразования координат.Скажем, старые внешние признаки (вращение и преобразование) - это R0, T0.Сначала я поворачиваю систему координат α вдоль оси X, затем β вдоль оси Y, а затем γ вдоль оси Z, αβγ в радианах, а вращение следует правилу правой руки.Также я перевожу систему координат по Tt.

Обозначим:

Rx = {1, 0, 0; 
      0, cosα, -sinα;
      0, sinα, cosα}

Ry = {cosβ, 0, sinβ; 
      0, 1, 0;
      -sinβ, 0, cosβ}

Rz = {cosγ, -sinγ, 0; 
      0, 1, 0;
      sinγ, cosγ, 1}

Итак, после этого преобразования новые внешние элементы станут R = R0 * Rx * Ry * Rz и T = T0 + Tt?

Также мне интересно, какими будут новые координаты данной 3D-точки.Скажем, старые трехмерные координаты - это P0 (3X1), станут ли его новые координаты Rx * Ry * Rz * P0 - Tt?

Большое спасибо!

1 Ответ

0 голосов
/ 12 февраля 2019

Я получил ответ после большого количества тестов.После преобразования новые внешние данные будут:

R = R0 * Rx ^ (- 1) * Ry ^ (- 1) * Rz ^ (- 1);// - 1 является инверсией или транспонированием (они равны)

T = Rz * Ry * Rx * T0 + Tt;

// Новые координаты: P = Rz * Ry *Rx * P0 + Tt;

NB. Легко делать ошибки для T. T не T0 + Tt

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...