Работа с Image Sequences как многомерными массивами

Создайте многомерный массив, представляющий Image Sequence

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

  • Если у вас есть последовательность 2-D полутоновых, двоичных или индексированных изображений, соедините изображения в третьей размерности, чтобы создать трехмерный массив размера m-на-n-p. Каждое из p изображений имеет размер m на n.

  • Если у вас есть последовательность 2-D изображений RGB, соедините изображения по четвертой размерности, чтобы создать 4-D массив размера m-на-n-на-3-на-p. Каждое из p изображений имеет размер m на n на 3.

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

Используйте cat функция для конкатенации отдельных изображений. Для примера этот код объединяет группу изображений RGB вдоль четвертой размерности.

A = cat(4,A1,A2,A3,A4,A5)

Примечание

Некоторые функции работают с определенным типом многомерного массива, вызывают multiframe массив. В многоадресном массиве изображения конкатенируются по четвертой размерности независимо от количества цветовых каналов, которые имеют изображения. Мультикадровый массив полутоновых, двоичных или индексированных изображений имеет размер m-на-n-на-1-на-p. Если вам нужно преобразовать мультифреймовый массив полутоновых изображений в трехмерный массив для использования с другими функциями тулбокса, то можно использовать squeeze функция для удаления синглтонной размерности.

Отобразите последовательности изображений

Существует несколько способов отображения последовательностей изображений. Чтобы отображать по одной системе координат за раз, используйте приложение Image Viewer или imshow. Чтобы одновременно отобразить все системы координат в последовательности изображений, используйте montage функция.

Чтобы анимировать последовательность изображений или обеспечить навигацию в последовательности, используйте приложение Video Viewer (implay). Приложение Video Viewer предоставляет элементы управления воспроизведением, которые можно использовать для навигации между системами координат в последовательности.

Обработка Image Sequences

Многие функции тулбокса могут работать с многомерными массивами и, следовательно, могут работать с последовательностями изображений. Для примера, если вы передаете многомерный массив в imtransform функция, она применяет то же 2-D преобразование ко всем плоскостям 2-D вдоль большей размерности.

Однако некоторые функции тулбокса, которые принимают многомерные массивы, по умолчанию не интерпретируют массив m-на-n-на-p или m на-n-на-3-на-p как последовательность изображений. Чтобы использовать эти функции с последовательностями изображений, вы должны использовать конкретный синтаксис и знать о других ограничениях. В таблице перечислены эти функции тулбокса и приведены рекомендации по их использованию для обработки последовательностей изображений.

Функция

Размерности последовательности изображений

Руководство при использовании с Image Sequence

bwlabeln

m-на-n-на-p только

Необходимо использовать bwlabeln(BW,conn) синтаксис с 2-D связями.

deconvblind

m-на-n-на-p или
m-на-n-на-3-на-p

PSF аргумент может быть либо 1-D, либо 2-D.

deconvlucy

m-на-n-на-p или
m-на-n-на-3-на-p

PSF аргумент может быть либо 1-D, либо 2-D.

edgetaper

m-на-n-на-p или
m-на-n-на-3-на-p

PSF аргумент может быть либо 1-D, либо 2-D.

entropyfilt

m-на-n-на-p только

nhood аргумент должен быть 2-D.

imabsdiff

m-на-n-на-p или
m-на-n-на-3-на-p

Последовательности изображений должны быть одинакового размера.

imadd

m-на-n-на-p или
m-на-n-на-3-на-p

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

imbothat

m-на-n-на-p только

SE аргумент должен быть 2-D.

imclose

m-на-n-на-p только

SE аргумент должен быть 2-D.

imdilate

m-на-n-на-p только

SE аргумент должен быть 2-D.

imdivide

m-на-n-на-p или
m-на-n-на-3-на-p

Последовательности изображений должны быть одинакового размера.

imerode

m-на-n-на-p только

SE аргумент должен быть 2-D.

imextendedmax

m-на-n-на-p только

Необходимо использовать imextendedmax(I,h,conn) синтаксис с 2-D связями.

imextendedmin

m-на-n-на-p только

Необходимо использовать imextendedmin(I,h,conn) синтаксис с 2-D связями.

imfilter

m-на-n-на-p или
m-на-n-на-3-на-p

С полутоновыми изображениями, h может быть 2-D. С изображениями truecolor (RGB), h может быть 2-D или 3-D.

imhmax

m-на-n-на-p только

Необходимо использовать imhmax(I,h,conn) синтаксис с 2-D связями.

imhmin

m-на-n-на-p только

Необходимо использовать imhmin(I,h,conn) синтаксис с 2-D связями.

imlincomb

m-на-n-на-p или
m-на-n-на-3-на-p

Последовательности изображений должны быть одинакового размера.

immultiply

m-на-n-на-p или
m-на-n-на-3-на-p

Последовательности изображений должны быть одинакового размера.

imopen

m-на-n-на-p только

SE аргумент должен быть 2-D.

imregionalmax

m-на-n-на-p только

Необходимо использовать imextendedmax(I,conn) синтаксис с 2-D связями.

imregionalmin

m-на-n-на-p только

Необходимо использовать imextendedmin(I,conn) синтаксис с 2-D связями.

imsubtract

m-на-n-на-p или
m-на-n-на-3-на-p

Последовательности изображений должны быть одинакового размера.

imtophat

m-на-n-на-p только

SE аргумент должен быть 2-D.

imwarp

m-на-n-на-p или
m-на-n-на-3-на-p

TFORM аргумент должен быть 2-D.

padarray

m-на-n-на-p или
m-на-n-на-3-на-p

PADSIZE аргумент должен быть двухэлементным вектором.

rangefilt

m-на-n-на-p только

NHOOD аргумент должен быть 2-D.

stdfilt

m-на-n-на-p только

NHOOD аргумент должен быть 2-D.

tformarray

m-на-n-на-p или
m-на-n-на-3-на-p

  • T должен быть 2-D, чтобы 2-D (совместимо с imtransform).

  • R должен быть 2-D.

  • TDIMS_A и TDIMS_B должен быть 2-D, то есть [2 1] или [1 2].

  • TSIZE_B должен быть двухэлементным массивом [D1 D2], где D1 и D2 являются первой и второй размерностями преобразования выхода пространства.

  • TMAP_B должен быть [TSIZE_B 2].

  • F может быть скаляром или массивом p-на-1, для массивов m-на-n-на-p. Или F может быть скаляром 1 на p; массив 3 на 1; или массив 3 на p, для массивов m на n на 3 на p.

watershed

m-на-n-на-p только

Необходимо использовать watershed(I,conn) синтаксис с 2-D связями.

Похожие темы