wavedec2

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

Описание

пример

[C,S] = wavedec2(X,N,wname) возвращает разложение вейвлета матричного X на уровне N использование вейвлета wname. Выходная структура разложения состоит из вектора разложения вейвлета C и бухгалтерский матричный S, который содержит количество коэффициентов уровнем и ориентацией.

[C,S] = wavedec2(X,N,Lod,Hid) возвращает разложение вейвлета с помощью заданного lowpass, и highpass разложение фильтрует LoD и HiD, соответственно. Смотрите wfilters для деталей.

Примеры

свернуть все

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

Загрузите изображение. Выполните разложение вейвлета уровня 2 изображения с помощью haar вейвлет.

load woman
[c,s]=wavedec2(X,2,'haar');

Извлеките приближение уровня 1 и детализируйте коэффициенты.

[H1,V1,D1] = detcoef2('all',c,s,1);
A1 = appcoef2(c,s,'haar',1);

Используйте wcodemat повторно масштабировать коэффициенты на основе их абсолютных значений. Отобразите перемасштабированные коэффициенты.

V1img = wcodemat(V1,255,'mat',1);
H1img = wcodemat(H1,255,'mat',1);
D1img = wcodemat(D1,255,'mat',1);
A1img = wcodemat(A1,255,'mat',1);

subplot(2,2,1)
imagesc(A1img)
colormap pink(255)
title('Approximation Coef. of Level 1')

subplot(2,2,2)
imagesc(H1img)
title('Horizontal Detail Coef. of Level 1')

subplot(2,2,3)
imagesc(V1img)
title('Vertical Detail Coef. of Level 1')

subplot(2,2,4)
imagesc(D1img)
title('Diagonal Detail Coef. of Level 1')

Извлеките приближение уровня 2 и детализируйте коэффициенты.

[H2,V2,D2] = detcoef2('all',c,s,2);
A2 = appcoef2(c,s,'haar',2);

Используйте wcodemat повторно масштабировать коэффициенты на основе их абсолютных значений. Отобразите перемасштабированные коэффициенты.

V2img = wcodemat(V2,255,'mat',1);
H2img = wcodemat(H2,255,'mat',1);
D2img = wcodemat(D2,255,'mat',1);
A2img = wcodemat(A2,255,'mat',1);

figure
subplot(2,2,1)
imagesc(A2img)
colormap pink(255)
title('Approximation Coef. of Level 2')

subplot(2,2,2)
imagesc(H2img)
title('Horizontal Detail Coef. of Level 2')

subplot(2,2,3)
imagesc(V2img)
title('Vertical Detail Coef. of Level 2')

subplot(2,2,4)
imagesc(D2img)
title('Diagonal Detail Coef. of Level 2')

Этот пример показывает структуру wavedec2 выходные матрицы.

Загрузите и отобразите изображение.

load woman
imagesc(X)
colormap(map)

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

origMode = dwtmode('status','nodisplay');

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

dwtmode('per');
 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!  WARNING: Change DWT Extension Mode  !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                         
*****************************************
**  DWT Extension Mode: Periodization  **
*****************************************
                                         

Выполните разложение уровня 3 изображения с помощью db1 (Хаар) вейвлет.

[c,s] = wavedec2(X,3,'db1');

Возвратите число элементов в изображении X и вектор коэффициентов c. Подтвердите, что число элементов в каждом равно.

numel(X)
ans = 65536
numel(c)
ans = 65536

Отобразите бухгалтерский матричный s. Первая строка отображает размерности крупного приближения шкалы изображения. Последняя строка отображает размерности оригинального изображения. Промежуточные строки отображают размерности коэффициентов детали на трех уровнях разложения, происхождения крупного к прекрасной шкале.

s
s = 5×2

    32    32
    32    32
    64    64
   128   128
   256   256

Дискретный вейвлет сброса преобразовывает дополнительный режим к своему исходному режиму. dwtmode функционируйте отображает сообщение, указывающее, что дополнительный режим DWT изменяется.

dwtmode(origMode);
 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!  WARNING: Change DWT Extension Mode  !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                       
*******************************************************
**  DWT Extension Mode: Symmetrization (half-point)  **
*******************************************************
                                                       

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

свернуть все

Входные данные, заданные как M с действительным знаком-by-N матрица, представляющая индексируемое изображение или M-by-N-by-3 массив, представляющий изображение истинного цвета. Для получения дополнительной информации об изображениях истинного цвета смотрите RGB (Истинный цвет) Изображения (MATLAB).

Уровень разложения, заданный как положительное целое число. wavedec2 не осуществляет ограничение максимального уровня. Используйте wmaxlev определить максимальный уровень разложения, возможный из матричного X использование вейвлета wname. Максимальный уровень в последний раз находится на одном уровне, для которого по крайней мере один коэффициент правилен.

Анализ вейвлета, заданного как вектор символов или скаляр строки.

Примечание

wavedec2 поддержки только (ортогональный) Тип 1 или Тип 2 (биоортогональные) вейвлеты. Смотрите wfilters для списка ортогональных и биоортогональных вейвлетов.

Фильтры разложения вейвлета сопоставлены с ортогональным или биоортогональным вейвлетом, заданным как ровная длина векторы с действительным знаком. LoD фильтр разложения lowpass и HiD highpass фильтр разложения. Смотрите wfilters для деталей.

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

свернуть все

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

Векторный C организован как A (N), H (N), V (NDN ), H (N- 1), V (N- 1), D (N- 1), …, H (1), V (1), D (1), где A, H, V и D - каждый вектор-строка. Каждый вектор является постолбцовым устройством хранения данных матрицы.

  • A содержит коэффициенты приближения.

  • H содержит горизонтальные коэффициенты детали.

  • V содержит вертикальные коэффициенты детали.

  • D содержит диагональные коэффициенты детали.

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

  • S(1,:) = размер коэффициентов приближения (N).

  • S(i,:) = размер коэффициентов детали (N-i+2) для i = 2... N+1 и S(N+2,:) = size(X).

Следующая схема показывает отношение между C и S в разложении вейвлета 512 512 матрицы.

Когда X представляет индексируемое изображение, выходные массивы cA, cH, cV, и cD является m-by-n матрицы. Когда X представляет изображение истинного цвета, это - m-by-n-by-3 массив, где каждый m-by-n матрица представляет красную, зеленую, или синюю цветную плоскость, конкатенированную по третьему измерению. Размер векторного C и размер матричного S зависьте от типа анализируемого изображения.

Для изображения истинного цвета, вектор разложения C и соответствующий бухгалтерский матричный S может быть представлен как показано.

Алгоритмы

Для изображений алгоритм, похожий на одномерный случай, возможен для двумерных вейвлетов и масштабирующихся функций, полученных из одномерных векторов продуктом тензора. Этот вид двумерного DWT приводит к разложению коэффициентов приближения на уровне j в четырех компонентах: приближение на уровне j +1 и детали в трех ориентациях (горизонталь, вертикальная, и диагональная).

График описывает основной шаг разложения для изображений:

где

  • — Столбцы Downsample: сохраните ровные индексированные столбцы.

  • — Строки Downsample: сохраните даже индексированные строки.

  • — Примените операцию свертки с фильтром к X строки записи.

  • — Примените операцию свертки с фильтром к X строки записи.

и

Инициализация: cA 0 = s.

Так, для J = 2, двумерное дерево вейвлета имеет форму

Ссылки

[1] Daubechies, я. Десять лекций по вейвлетам, CBMS-NSF региональный ряд конференции в прикладной математике. Филадельфия, PA: SIAM Эд, 1992.

[2] Mallat, S. G. “Теория для Разложения Сигнала Мультиразрешения: Представление Вейвлета”, Транзакции IEEE согласно Анализу Шаблона и Искусственному интеллекту. Издание 11, Выпуск 7, июль 1989, стр 674–693.

[3] Мейер, Y. Вейвлеты и операторы. Переведенный Д. Х. Сэлинджером. Кембридж, Великобритания: Издательство Кембриджского университета, 1995.

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

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

| | | |

Представлено до R2006a