wavedec3

3-D разложение вейвлета

Синтаксис

WDEC = wavedec3(X,N,wname)
WDEC = wavedec3(X,N,wname,'mode','ExtM')
WDEC = wavedec3(X,N,{LoD,HiD,LoR,HiR})

Описание

wavedec3 является 3D аналитической функцией вейвлета.

WDEC = wavedec3(X,N,wname) возвращает разложение вейвлета трехмерного массива X на уровне N, с помощью вейвлета, заданного вектором символов или скаляром строки wname или конкретные фильтры вейвлета, которые вы задаете. Это использует режим 'sym' расширения по умолчанию. Смотрите dwtmode. N должен быть положительным целым числом.

WDEC = wavedec3(X,N,wname,'mode','ExtM') использует заданный дополнительный режим DWT.

WDEC = wavedec3(X,N,{LoD,HiD,LoR,HiR}) использует фильтры разложения и реконструкции, которые вы задаете в массиве ячеек.

WDEC является выходной структурой разложения со следующими полями:

sizeINI

Размер 3D массива X

level

Уровень разложения

mode

Имя вейвлета преобразовывает дополнительный режим

filters

Структура с 4 полями, LoD, HiD, LoR, HiR, которые содержат фильтры, используемые для DWT.

dec

N x 1 массив ячеек, содержащий коэффициенты разложения. N равен 7*WDEC.level+1.

dec{1} содержит lowpass компонент (приближение) на уровне разложения. Приближение эквивалентно операциям 'LLL' фильтрации.

dec{k+2},...,dec{k+8} с k = 0,7,14,...,7*(WDEC.level-1) содержит 3-D коэффициенты вейвлета для мультиразрешения начиная с самого грубого уровня когда k=0.

Например, если WDEC.level=3, dec{2},...,dec{8} содержит коэффициенты вейвлета для уровня 3 (k=0), dec{9},...,dec{15} содержат коэффициенты вейвлета для уровня 2 (k=7), и dec{16},...,dec{22} содержит коэффициенты вейвлета для уровня 1 (k=7*(WDEC.level-1)).

На каждом уровне коэффициенты вейвлета в dec{k+2},...,dec{k+8} в следующем порядке: 'HLL', 'LHL', 'HHL', 'LLH', 'HLH', 'LHH', 'HHH'.

Последовательность букв дает распоряжение, в котором отделимые операции фильтрации применяются слева направо. Например, 'LHH' означает, что lowpass (масштабирующий) фильтр с субдискретизацией, применяется к строкам X, сопровождаемого highpass (вейвлет), фильтр с субдискретизацией применился к столбцам X. Наконец, фильтр highpass с субдискретизацией применяется к 3-й размерности X.

sizes

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

Примеры

свернуть все

Найдите 3-D DWT объема. Создайте 8 8 8 матрицами целых чисел 1 - 64 и сделайте данные 3-D.

M = magic(8);
X = repmat(M,[1 1 8]);

Получите 3-D дискретный вейвлет, преобразовывают на уровне 1 с помощью вейвлета Хаара и самого главного по умолчанию симметричный дополнительный режим.

wd1 = wavedec3(X,1,'db1');

Задайте фильтры разложения и реконструкции как массив ячеек. Создайте 8 8 8 матрицами целых чисел 1 - 64 и сделайте данные 3-D.

M = magic(8);
X = repmat(M,[1 1 8]);

Получите 3-D дискретный вейвлет, преобразовывают вниз к уровню 2 с помощью Daubechies экстремальный вейвлет фазы с двумя исчезающими моментами. Введите фильтры разложения и реконструкции как массив ячеек. Используйте периодический дополнительный режим.

[LoD,HiD,LoR,HiR] = wfilters('db2');
wd2 = wavedec3(X,2,{LoD,HiD,LoR,HiR},'mode','per');

Сравните вывод wavedec3 и dwt3, чтобы проиллюстрировать упорядоченное расположение 3-D коэффициентов вейвлета, описанных в описании поля dec.

X = reshape(1:512,8,8,8);
dwtOut = dwt3(X,'db1','mode','per');
wdec = wavedec3(X,1,'db1','mode','per');
max(abs((wdec.dec{4}(:)-dwtOut.dec{2,2,1}(:))))
ans = 0
max(abs((wdec.dec{5}(:)-dwtOut.dec{1,1,2}(:))))
ans = 0

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

| | | | |

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