affine3d

3-D аффинное геометрическое преобразование

Описание

Система координат affine3d объект хранит информацию о 3-D аффинном геометрическом преобразовании и позволяет осуществлять прямое и обратное преобразования.

Создание

Можно создать affine3d объект с использованием следующих методов:

  • imregtform - оценивает геометрическое преобразование, которое преобразует движущееся изображение в фиксированное изображение с помощью оптимизации подобия

  • randomAffine3d - Создает рандомизированное 3-D аффинное преобразование

  • The affine3d функция, описанная здесь

Описание

tform = affine3d создает affine3d объект с настройками свойств по умолчанию, соответствующими преобразованию тождеств.

пример

tform = affine3d(A) устанавливает свойство T с действительным аффинным преобразованием, заданным несингулярной матрицей A.

Свойства

расширить все

Прямое 3-D аффинное преобразование, заданное как несингулярная числовая матрица 4 на 4.

Матрица T использует конвенцию:

[x y z 1] = [u v w 1] * T

где T имеет форму:

 [a b c 0;
  d e f 0;
  g h i 0;
  j k l 1];

Значение по умолчанию T - преобразование тождеств.

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

Описывает размерность геометрического преобразования как для входной, так и для выходной точек, заданную как значение 3.

Функции объекта

invertИнвертировать геометрическое преобразование
isRigidОпределите, является ли преобразование твердым преобразованием
isSimilarityОпределите, является ли преобразование преобразованием подобия
isTranslationОпределите, является ли преобразование чистым переводом
outputLimitsНахождение выходных пространственных пределов заданных входных пространственных пределов
transformPointsForwardПрименить прямое геометрическое преобразование
transformPointsInverseПрименить обратное геометрическое преобразование

Примеры

свернуть все

Создайте affine3d объект, который масштабирует 3-D изображение на другой коэффициент в каждой размерности.

Sx = 1.2;
Sy = 1.6;
Sz = 2.4;
tform = affine3d([Sx 0 0 0; 0 Sy 0 0; 0 0 Sz 0; 0 0 0 1])
tform = 
  affine3d with properties:

                 T: [4x4 double]
    Dimensionality: 3

Загрузите том 3-D в рабочую область.

load('mri');
D = squeeze(D);

Применить геометрическое преобразование к изображению можно используя imwarp.

B = imwarp(D,tform);

Визуализируйте осевой срез через центр каждого тома, чтобы увидеть эффект смещения шкалы. Обратите внимание, что центральный срез преобразованного объема имеет другой индекс, чем центральный срез исходного объема, из-за масштабирования z-размера.

figure
imshowpair(D(:,:,14),B(:,:,33),'montage');

Figure contains an axes. The axes contains an object of type image.

Оригинальное изображение находится слева, а преобразованное - справа. Преобразованное изображение масштабируется больше в вертикальном направлении, чем в горизонтальном, как и ожидалось с Sy больше Sx.

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

.
Введенный в R2013a