exponenta event banner

tforminv

Применение обратного пространственного преобразования

Описание

пример

[U,V] = tforminv(T,X,Y) применяет 2D-to-2D обратное пространственное преобразование, определенное в T для координат массивов X и Y, отображение точки [X(k) Y(k)] в точку [U(k) V(k)].

Оба T.ndims_in и T.ndims_out должно быть равно 2. X и Y обычно являются векторами столбцов, но они могут иметь любую размерность. U и V имеют тот же размер, что и X и Y

[U1,U2,...,U_ndims_in] = tforminv(T,X1,X2,...,X_ndims_out) применяет ndims_outКому-ndims_in обратное преобразование, определенное в T в массивы координат X1,X2,...,X_ndims_out. Преобразование отображает точку [X1(k) X2(k) ... X_ndims_out(k)] в точку [U1(k) U2(k) ... U_ndims_in(k)].

Количество входных массивов координат, ndims_out, должно равняться T.ndims_out. Количество выходных массивов координат, ndims_in, должно равняться T.ndims_in. Множества X1,X2,...,X_ndims_out может иметь любую размерность, но должен иметь одинаковый размер. Выходные массивы U1,U2,...,U_ndims_in также должен быть такого размера.

U = tforminv(T,X) применяет ndims_outКому-ndims_in обратное преобразование, определенное в T выстраивать X.

  • Когда X является 2-D матрицей с размерами m-by-ndims_out матрица, U является 2-D матрицей с размерами m-by-ndims_in. tforminv применяет преобразование к каждой строке X. tforminv отображает точку X(k,:) в точку U(k,:).

  • Когда X является (N + 1) -мерным массивом,tforminv отображает точку X(к1, к2,..., кН,:) в точку U(к1, к2,..., кН,:).

    size(X,N+1) должны равняться ndims_out. U является (N + 1) -мерным массивом, сsize(U,I) равно size(X,I) для I = 1,..., N и size(U,N+1) равно ndims_in.

Синтаксис U = tforminv(X,T) является более старой формой этого синтаксиса, которая по-прежнему поддерживается для обратной совместимости.

[U1,U2,...,U_ndims_in] = tforminv(T,X) сопоставляет один (N + 1) -мерный массив сndims_in N-мерные массивы одинакового размера.

U = tforminv(T,X1,X2,...,X_ndims_out) карты ndims_out N-мерные массивы в один (N + 1) -мерный массив.

Примеры

свернуть все

Создайте аффинное преобразование, которое отображает треугольник с вершинами (0,0), (6,3), (-2,5) в треугольник с вершинами (-1, -1), (0, -10), (4,4).

u = [ 0   6  -2]';
v = [ 0   3   5]';
x = [-1   0   4]';
y = [-1 -10   4]';
tform = maketform('affine',[u v],[x y]);

Проверка сопоставления путем применения tforminv. Результаты должны быть равны u и v.

[um, vm] = tforminv(tform, x, y)
um = 3×1

         0
    6.0000
   -2.0000

vm = 3×1

         0
    3.0000
    5.0000

Входные аргументы

свернуть все

Пространственное преобразование, указанное как TFORM структура пространственного преобразования. Создать T использование maketform, fliptform, или cp2tform.

Типы данных: struct

Входные точки координат, заданные как числовой массив. Размер и размерность X может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

Типы данных: double

Входные точки координат, заданные как числовой массив. Y должен быть того же размера, что и X.

Типы данных: double

Входные точки координат, заданные как несколько числовых массивов. Размер и размерность X1,X2,...,X_ndims_out может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

Типы данных: double

Выходные аргументы

свернуть все

Координатный массив выходных точек, возвращаемый в виде числового массива. Размер и размерность U может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

Координатный массив выходных точек, возвращаемый в виде числового массива. V имеет тот же размер, что и Y.

Координаты точек вывода, возвращаемые в виде нескольких массивов. Размер и размерность U1,U2,...,U_ndims_in может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

См. также

| | |

Представлен до R2006a