tforminv

Примените обратный N-D пространственное преобразование

tforminv функция не рекомендуется для 2D и 3-D геометрических преобразований. Используйте transformPointsInverse функцию вместо этого. Для получения дополнительной информации см. Вопросы совместимости.

Описание

пример

[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 2D матрица с размерностями m-by-ndims_out матрица, U 2D матрица с размерностями m-by-ndims_in. tforminv применяет преобразование к каждой строке X. tforminv сопоставляет точку XK:) к точке UK:).

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

    size(X,N+1) должен равняться ndims_outU (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 функция.

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

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

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

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

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

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

свернуть все

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

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

Вопросы совместимости

развернуть все

Не рекомендуемый запуск в R2018b

Расширенные возможности

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте