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' расширения по умолчанию. Смотрите dwtmodeN должно быть положительное целое число.

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