exponenta event banner

imregister

Регистрация изображения на основе интенсивности

Описание

пример

moving_reg = imregister(moving,fixed,transformType,optimizer,metric) преобразует 2-D или 3-D изображение в градациях серого, moving, чтобы она была зарегистрирована с эталонным изображением, fixed. transformType определяет тип выполняемого преобразования. metric определяет количественную меру подобия между изображениями для оптимизации. optimizer описывает метод оптимизации метрики. Функция возвращает зарегистрированное изображение, moving_reg.

[moving_reg,R_reg] = imregister(moving,Rmoving,fixed,Rfixed,transformType,optimizer,metric) преобразует пространственно привязанное изображение moving чтобы он был зарегистрирован с пространственно привязанным изображением fixed. Rmoving и Rfixed пространственные ссылочные объекты, которые описывают мировые координатные пределы и разрешение moving и fixed.

___ = imregister(___,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;

Выполните регистрацию.

movingRegistered = imregister(moving, fixed, 'affine', optimizer, metric);

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

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

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

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

свернуть все

Изображение, которое будет зарегистрировано, определенное как числовая матрица, представляющая 2-е изображение оттенков серого или 3D числовое множество, представляющее 3D объем оттенков серого.

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

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

Справочное изображение в целевой ориентации, определенной как числовая матрица, представляющая 2-е изображение оттенков серого или 3D числовое множество, представляющее 3D объем оттенков серого. Эталонное изображение должно иметь те же размеры, что и регистрируемое изображение. moving.

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

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

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

СтоимостьОписание
'translation'(x, y) перевод в 2-D или (x, y, z) перевод в 3-D.
'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.

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

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

свернуть все

Зарегистрированное изображение, возвращенное как 2-я числовая матрица, представляющая 2-е изображение оттенков серого или 3D числовое множество, представляющее 3D объем оттенков серого. Любые введенные пикселы заливки, которые не соответствуют местоположениям в исходном изображении 0.

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

Совет

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

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

  • Если пространственное масштабирование изображений отличается более чем на 10%, измените их размер с помощью imresize перед их регистрацией.

  • Использовать imshowpair или imfuse визуализировать результаты регистрации.

  • Вы можете использовать imregister в автоматизированном рабочем процессе для регистрации нескольких изображений.

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

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