OnePlusOneEvolutionary

Один плюс один эволюционная настройка оптимизатора

Описание

OnePlusOneEvolutionary объект описывает одну плюс одну эволюционную настройку оптимизации, которую вы передаете функции imregister решать регистрационные задачи изображений.

Создание

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

  • imregconfig — Возвращает OnePlusOneEvolutionary объект, соединенный с соответствующей метрикой для регистрации многомодальных изображений

  • Ввод

    metric = registration.optimizer.OnePlusOneEvolutionary;
    на командной строке создает OnePlusOneEvolutionary объект с настройками по умолчанию

Свойства

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

Фактор роста поискового радиуса в виде положительной скалярной величины. Оптимизатор использует GrowthFactor управлять уровнем, на который поисковый радиус растет в пространстве параметров. Если вы устанавливаете GrowthFactor к большому значению оптимизация быстра, но она может привести к нахождению только локальных экстремальных значений метрики. Если вы устанавливаете GrowthFactor к маленькому значению оптимизация медленнее, но она, вероятно, будет сходиться на лучшем решении.

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

Минимальный размер поискового радиуса в виде положительной скалярной величины. Epsilon управляет точностью сходимости путем корректировки минимального размера поискового радиуса. Если вы устанавливаете Epsilon к маленькому значению оптимизация метрики более точна, но расчет занимает больше времени. Если вы устанавливаете Epsilon к большому значению время вычисления уменьшается за счет точности.

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

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

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

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

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

Примеры

свернуть все

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

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

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

Просмотрите неправильно выровненные изображения.

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

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

Создайте объект настройки оптимизатора, подходящий для регистрации многомодальных изображений.

optimizer = registration.optimizer.OnePlusOneEvolutionary
optimizer = 
  registration.optimizer.OnePlusOneEvolutionary

  Properties:
         GrowthFactor: 1.050000e+00
              Epsilon: 1.500000e-06
        InitialRadius: 6.250000e-03
    MaximumIterations: 100

Создайте метрический объект настройки, подходящий для регистрации многомодальных изображений.

metric = registration.metric.MattesMutualInformation;

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

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 object. The axes object contains an object of type image.

Алгоритмы

Эволюционный алгоритм выполняет итерации, чтобы найти набор параметров, которые приводят к самому лучшему регистрационному результату. Это делает это путем беспокойства, или видоизменение, параметры от последней итерации (родительский элемент). Если новые (дочерние) параметры приводят к лучшему результату, то дочерний элемент становится новым родительским элементом, параметры которого встревожены, возможно, более настойчиво. Если родительский элемент приводит к лучшему результату, это остается, родительский элемент и следующее возмущение менее агрессивны.

Ссылки

[1] Styner, M., К. Бречбуехлер, Г. Сзекели и Г. Джериг. "Параметрическая оценка неоднородности интенсивности применилась к MRI". Транзакции IEEE на Медицинской Обработке изображений. Издание 19, Номер 3, 2000, стр 153-165.

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

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