imregmtb

Укажите 2D изображения с помощью средних пороговых битовых массивов

Описание

пример

[R1,R2,...,Rn,shift] = imregmtb(M1,M2,...,Mn,F) указывает произвольное число движущихся изображений M1,M2,...,Mn относительно фиксированного (ссылочного) изображения, F, использование среднего порога побитово отображает метод. Зарегистрированные изображения возвращены в R1,R2,...,Rn, и предполагаемое смещение зарегистрированных изображений возвращено в shift.

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

Примеры

свернуть все

Считайте серию изображений с различными воздействиями.

I1 = imread('office_1.jpg');
I2 = imread('office_2.jpg');
I3 = imread('office_3.jpg');
I4 = imread('office_4.jpg');
I5 = imread('office_5.jpg');
I6 = imread('office_6.jpg');

Изображения были получены от фиксированной камеры, и в сцене нет никаких движущихся объектов. В данном примере симулируйте движение камеры или дрожание, путем перевода каждого изображения горизонтально и вертикально случайной суммой в области значений [–30, 30] пиксели. Сохраните значения перевода для всех пяти движущихся изображений в 5 2 матричном t. Определяйте шестое изображение, I6, как фиксированное (или ссылка) изображение. Не применяйте дрожание к этому изображению.

t = randi([-30 30],5,2);
I1 = imtranslate(I1,t(1,:));
I2 = imtranslate(I2,t(2,:));
I3 = imtranslate(I3,t(3,:));
I4 = imtranslate(I4,t(4,:));
I5 = imtranslate(I5,t(5,:));

Чтобы сравнить позиции изображения, отобразите видимую область (ROI) от центра каждого изображения. Векторный roi задает x-и y-координату левого верхнего угла, и ширину и высоту ROI.

roi = [140 260 200 200];
montage({imcrop(I1,roi),imcrop(I2,roi),imcrop(I3,roi), ...
    imcrop(I4,roi),imcrop(I5,roi),imcrop(I6,roi)})
title('Misaligned Images')

Figure contains an axes object. The axes object with title Misaligned Images contains an object of type image.

Укажите пространственно переключенные изображения с помощью средних пороговых битовых массивов. Отобразите ROI от центра каждого изображения.

[R1,R2,R3,R4,R5,shift] = imregmtb(I1,I2,I3,I4,I5,I6);
montage({imcrop(R1,roi),imcrop(R2,roi),imcrop(R3,roi), ...
    imcrop(R4,roi),imcrop(R5,roi),imcrop(I6,roi)})
title('Registered Images')

Figure contains an axes object. The axes object with title Registered Images contains an object of type image.

Изображения хорошо выглядят - выровненный.

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

shift
shift = 5×2

   -26    25
   -25    14
    23    -3
   -25   -28
    -8   -28

Сравните предполагаемое смещение с фактическим смещением. Вспомните что преобразование t был применен к фиксированному изображению, чтобы симулировать дрожание каждого движущегося изображения. Поэтому преобразование -t походит на преобразование, возвращенное shift.

-t
ans = 5×2

   -19    25
   -25    14
    23    -3
   -25   -28
    -8   -28

imregmtb функция делает хорошее задание, оценивающее смещение каждой системы координат.

Входные параметры

свернуть все

Движущиеся изображения в виде ряда полутоновых изображений или RGB отображают с идентичными или переменными воздействиями. Изображения должны иметь тот же размер и тип данных.

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

Фиксированное изображение в виде полутонового изображения или изображение RGB. F должен иметь тот же размер и тип данных как движущиеся изображения, M1,M2,...,Mn.

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

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

свернуть все

Зарегистрированные изображения, возвращенные как ряд полутоновых изображений или изображений RGB. Зарегистрированные изображения имеют тот же размер и тип данных как движущиеся изображения, M1,M2,...,Mn.

Предполагаемое смещение в горизонтальном и вертикальном направлении n, указанного изображения, возвратилось как n-by-2 числовая матрица.

Ссылки

[1] Райнхард, E., В. Хейдрич, П. Дебевек, С. Пэттэнэйк, Г. Уорд, К. Мысзковский. Обработка изображений Расширенного динамического диапазона, Второй Выпуск. Сан-Франциско, CA: Morgan Kaufmann Publishers Inc., 2010, стр 155–170.

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

Смотрите также

| | |

Введенный в R2018a