imfuse

Составной объект двух изображений

Описание

пример

C = imfuse(A,B) создает составное изображение из двух изображений, A и B. Если A и B различные размеры, imfuse заполняет меньшие размерности нулями так, чтобы оба изображения были одного размера прежде, чем создать составной объект. Выход, C, числовая матрица, содержащая сплавленную версию изображений A и B.

пример

[C RC] = imfuse(A,RA,B,RB) создает составное изображение из двух изображений, A и B, использование пространственной информации о ссылке, предоставленной в RA и RB. Выход RC задает пространственную информацию о ссылке для сплавленного выхода, отображают C.

пример

C = imfuse(___,method) использует алгоритм, заданный method.

пример

C = imfuse(___,Name,Value) задает дополнительные опции с одним или несколькими Name,Value парные аргументы, с помощью любого из предыдущих синтаксисов.

Примеры

свернуть все

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

A = imread('cameraman.tif');
B = imrotate(A,5,'bicubic','crop');

Создайте смешанное изображение наложения, масштабируя интенсивность A и B совместно как один набор данных. Просмотрите сплавленное изображение.

C = imfuse(A,B,'blend','Scaling','joint');
imshow(C)

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

Сохраните получившийся образ как .png файл.

imwrite(C,'my_blend_overlay.png');

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

A = imread('cameraman.tif');
B = imrotate(A,5,'bicubic','crop');

Создайте смешанное изображение наложения, с помощью красного для изображения A, зеленый для изображения B, и желтый для областей подобной интенсивности между двумя изображениями. Затем отобразите изображение наложения.

C = imfuse(A,B,'falsecolor','Scaling','joint','ColorChannels',[1 2 0]);
imshow(C)

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

Сохраните получившийся образ как .png файл.

imwrite(C,'my_blend_red-green.png');

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

A = dicomread('knee1.dcm');
RA = imref2d(size(A));

Создайте второе изображение путем изменения размеров изображения A и создайте пространственный объект привязки, сопоставленный с тем изображением.

B = imresize(A,2);
RB = imref2d(size(B));

Установите параметры объекта привязки, чтобы задать пределы координат в мировых координатах.

RB.XWorldLimits = RA.XWorldLimits;
RB.YWorldLimits = RA.YWorldLimits;

Создайте смешанное изображение наложения с помощью цвета, чтобы указать на области подобной интенсивности. Этот пример использование, красное для изображения A, зеленый для изображения B, и желтый для областей подобной интенсивности между двумя изображениями.

C = imfuse(A,B,'falsecolor','Scaling','joint','ColorChannels',[1 2 0]);

Отобразите сплавленное изображение. Отметьте, как изображения, кажется, не совместно используют много областей подобной интенсивности. В данном примере сплавленное изображение уменьшается для более легкого отображения.

C = imresize(C,0.5);
imshow(C)

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

Создайте новое сплавленное изображение, на этот раз с помощью пространственной информации о ссылке в RA и RB.

[D,RD] = imfuse(A,RA,B,RB,'ColorChannels',[1 2 0]);

Отобразите новое сплавленное изображение. В этой версии изображение кажется желтым потому что изображения A и B имейте ту же степень в системе мировой координаты. Изображения на самом деле выравниваются, даже при том, что B дважды размер A. В данном примере сплавленное изображение уменьшается для более легкого отображения.

D = imresize(D,0.5);
imshow(D)

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

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

свернуть все

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

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

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

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

Пространственная информация о ссылке, сопоставленная с входом, отображает AВ виде пространственного объекта привязки класса imref2d.

Пространственная информация о ссылке, сопоставленная с входом, отображает BВ виде пространственного объекта привязки класса imref2d.

Алгоритм раньше комбинировал изображения в виде одного из следующих значений.

МетодОписание
'falsecolor'Создает составное изображение RGB, показывающее A и B наложенный в различных цветных полосах. Серые области в составном изображении показывают, где два изображения имеют ту же интенсивность. Пурпурные и зеленые области показывают, где интенсивность отличается. Это - метод по умолчанию.
'blend'Оверлейные программы A и B использование альфа-смешивания.
'checkerboard'Создает изображение с чередованием прямоугольных областей от A и B.
'diff'Создает изображение различия из A и B.
'montage'Помещает A и B друг рядом с другом в том же изображении.

Аргументы name-value

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

Пример: 'Scaling','joint' масштабирует значения интенсивности A и B вместе как один набор данных.

Опция масштабирования интенсивности в виде одного из следующих значений:

'independent'Масштабирует значения интенсивности A и B независимо, когда C создается.
'joint'Масштабирует значения интенсивности в изображениях совместно, как будто они были вместе в том же изображении. Эта опция полезна, когда это необходимо, чтобы визуализировать регистрацию мономодальных изображений, где одно изображение содержит значения заливки, которые находятся вне динамического диапазона другого изображения.
'none'Никакое дополнительное масштабирование.

Канал цвета вывода для каждого входа отображает в виде одного из следующих значений:

[R G B]Три вектора элемента, которые задают который изображение присвоить красным, зеленым, и синим каналам. R, G, и значения B должны быть 1 (для первого входного изображения), 2 (для второго входного изображения), и 0 (ни для какого изображения).
'red-cyan'Ярлык для векторного [1 2 2], который подходит для красных/голубых анаглифов стерео
'green-magenta'Ярлык для векторного [2 1 2], который является опцией высокой контрастности, идеалом для людей со многими видами дальтонизма

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

свернуть все

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

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

Пространственная информация о ссылке, возвращенная как пространственный объект привязки.

Советы

  • Использование imfuse создать составную визуализацию, которую можно сохранить в файл. Использование imshowpair отобразить составную визуализацию на экран.

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

| |

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