exponenta event banner

imregtform

Оценка геометрического преобразования, которое выравнивает два 2-D или 3-D изображения

Описание

пример

tform = imregtform(moving,fixed,transformType,optimizer,metric) оценивает геометрическое преобразование, которое выравнивает движущееся изображение moving с фиксированным изображением fixed. transformType - строковый скалярный или символьный вектор, определяющий тип преобразования для оценки. optimizer - это объект, описывающий метод оптимизации метрики. metric - объект, определяющий количественную меру подобия между изображениями для оптимизации. Продукция tform - объект геометрического преобразования, отображающий moving кому fixed.

tform = imregtform(moving,Rmoving,fixed,Rfixed,transformType,optimizer,metric) оценивает геометрическое преобразование, где Rmoving и Rfixed укажите объекты пространственных ссылок, связанные с moving и fixed изображения. Продукция tform - объект геометрического преобразования в единицах, определяемых объектами пространственной ссылки; Rmoving и Rfixed.

tform = imregtform(___,Name,Value) оценивает геометрическое преобразование с использованием пар имя-значение для управления аспектами операции.

Примеры

свернуть все

Прочитайте два изображения. В этом примере используются два магнитно-резонансных (МРТ) изображения колена. Фиксированное изображение представляет собой спинное эхо-изображение, а движущееся изображение представляет собой спинное эхо-изображение с инверсионным восстановлением. Два сагиттальных фрагмента были получены одновременно, но немного не выровнены.

fixed = dicomread('knee1.dcm');
moving = dicomread('knee2.dcm');

Просмотр несовпадающих изображений.

imshowpair(fixed, moving,'Scaling','joint')

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

Создайте оптимизатор и метрику, установив модальность как 'multimodal' поскольку изображения поступают от различных датчиков.

[optimizer, metric] = imregconfig('multimodal')
optimizer = 
  registration.optimizer.OnePlusOneEvolutionary

  Properties:
         GrowthFactor: 1.050000e+00
              Epsilon: 1.500000e-06
        InitialRadius: 6.250000e-03
    MaximumIterations: 100
metric = 
  registration.metric.MattesMutualInformation

  Properties:
    NumberOfSpatialSamples: 500
     NumberOfHistogramBins: 50
              UseAllPixels: 1

Настройте свойства оптимизатора, чтобы задача сходилась на глобальных максимумах и допускала больше итераций.

optimizer.InitialRadius = 0.009;
optimizer.Epsilon = 1.5e-4;
optimizer.GrowthFactor = 1.01;
optimizer.MaximumIterations = 300;

Найдите геометрическое преобразование, отображающее регистрируемое изображение (moving) к опорному изображению (fixed).

tform = imregtform(moving, fixed, 'affine', optimizer, metric)
tform = 
  affine2d with properties:

                 T: [3x3 double]
    Dimensionality: 2

Применить преобразование к регистрируемому изображению (moving) с использованием imwarp функция. В примере используется 'OutputView' параметр для сохранения мировых пределов и разрешающей способности эталонного изображения при формировании преобразованного изображения.

movingRegistered = imwarp(moving,tform,'OutputView',imref2d(size(fixed)));

Просмотр зарегистрированных изображений.

figure
imshowpair(fixed, movingRegistered,'Scaling','joint')

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

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

свернуть все

Регистрируемое изображение, указанное как 2-D или 3-D изображение в градациях серого.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Пространственная ссылочная информация, связанная с регистрируемым изображением, указанная как imref2d или imref3d объект.

Ссылочное изображение в целевой ориентации, указанное как 2-D или 3-D изображение в градациях серого.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Пространственная ссылочная информация, связанная с опорным (фиксированным) изображением, указанная как imref2d или imref3d объект.

Геометрическое преобразование, применяемое к регистрируемому изображению, указанное как одно из следующих значений:

СтоимостьОписание
'translation'(x, y) перевод.
'rigid'Жесткое преобразование, состоящее из перемещения и вращения.
'similarity'Нерефлексивное преобразование подобия, состоящее из перемещения, вращения и масштаба.
'affine'Аффинное преобразование, состоящее из перемещения, вращения, масштаба и сдвига.

'similarity' и 'affine' типы преобразования всегда включают нерефлективные преобразования.

Типы данных: char | string

Метод оптимизации метрики подобия, указанный как RegularStepGradientDescent или OnePlusOneEvolutionary объект оптимизатора.

Метрика подобия изображения, которая должна быть оптимизирована во время регистрации, указана как MeanSquares или MattesMutualInformation метрический объект.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'DisplayOptimization',1 включает режим подробной оптимизации.

Флаг подробной оптимизации, заданный как разделенная запятыми пара, состоящая из 'DisplayOptimization'и логическое значение true или false. Управляет тем, imregister отображает информацию об оптимизации в окне команд во время процесса регистрации.

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

Начало геометрического преобразования, определяемого как разделенная запятыми пара, состоящая из 'InitialTransformation' и affine2d или affine3d объект.

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

Пример: 'PyramidLevels',4 устанавливает количество уровней пирамиды равным 4.

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

свернуть все

Геометрическое преобразование, возвращенное как affine2d или affine3d объект. Если входные матрицы 3-D, imregtform возвращает affine3d объект.

Совет

  • При наличии пространственной ссылочной информации важно предоставить эту информацию imregtform, используя объекты пространственных ссылок. Эта информация помогает imregtform более быстрое сближение для получения лучших результатов, поскольку можно рассмотреть различия в масштабе.

  • Оба imregtform и imregister использовать один и тот же алгоритм регистрации. imregister выполняет дополнительный этап повторной выборки moving для получения зарегистрированного выходного изображения из оценки геометрического преобразования, вычисленной imregtform. Использовать imregtform когда требуется доступ к связывающему геометрическому преобразованию moving кому fixed. Использовать imregister когда требуется зарегистрированное выходное изображение.

  • Получение хороших результатов от регистрации изображения на основе оптимизации обычно требует изменения настроек оптимизатора и/или метрики для пары регистрируемых изображений. imregconfig функция предоставляет конфигурацию по умолчанию, которая должна рассматриваться только как начальная точка. См. выходные данные imregconfig для получения дополнительной информации о различных параметрах, которые могут быть изменены.

Представлен в R2013a