swt2

Дискретное стационарное 2-D вейвлет

    Описание

    пример

    [A,H,V,D] = swt2(X,N,wname) возвращает коэффициенты приближения A и коэффициенты детализации по горизонтали, вертикали и диагонали H, V, и D, соответственно, стационарного 2-D вейвлет изображения X на уровне N использование вейвлет- wname.

    Примечание

    • swt2 использует периодическое расширение.

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

    [A,H,V,D] = swt2(X,N,LoD,HiD) использует указанные lowpass и highpass вейвлет разложения LoD и HiD, соответственно.

    swc = swt2(___) возвращает коэффициенты приближения и детализации в swc.

    Примеры

    свернуть все

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

    load woman
    imagesc(X)
    colormap(map)
    title('Original')

    Figure contains an axes. The axes with title Original contains an object of type image.

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

    [ca,chd,cvd,cdd] = swt2(X,2,'db6');

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

    A1 = wcodemat(ca(:,:,1),255);
    H1 = wcodemat(chd(:,:,1),255);
    V1 = wcodemat(cvd(:,:,1),255);
    D1 = wcodemat(cdd(:,:,1),255);
    
    A2 = wcodemat(ca(:,:,2),255);
    H2 = wcodemat(chd(:,:,2),255);
    V2 = wcodemat(cvd(:,:,2),255);
    D2 = wcodemat(cdd(:,:,2),255);

    Отобразите приближения и детализации с двух уровней.

    subplot(2,2,1)
    imagesc(A1)
    title('Approximation Coef. of Level 1')
    
    subplot(2,2,2)
    imagesc(H1)
    title('Horizontal Detail Coef. of Level 1')
    
    subplot(2,2,3)
    imagesc(V1)
    title('Vertical Detail Coef. of Level 1')
    
    subplot(2,2,4)
    imagesc(D1)
    title('Diagonal Detail Coef. of Level 1')

    Figure contains 4 axes. Axes 1 with title Approximation Coef. of Level 1 contains an object of type image. Axes 2 with title Horizontal Detail Coef. of Level 1 contains an object of type image. Axes 3 with title Vertical Detail Coef. of Level 1 contains an object of type image. Axes 4 with title Diagonal Detail Coef. of Level 1 contains an object of type image.

    subplot(2,2,1)
    imagesc(A2)
    title('Approximation Coef. of Level 2')
    
    subplot(2,2,2)
    imagesc(H2)
    title('Horizontal Detail Coef. of Level 2')
    
    subplot(2,2,3)
    imagesc(V2)
    title('Vertical Detail Coef. of Level 2')
    
    subplot(2,2,4)
    imagesc(D2)
    title('Diagonal Detail Coef. of Level 2')

    Figure contains 4 axes. Axes 1 with title Approximation Coef. of Level 2 contains an object of type image. Axes 2 with title Horizontal Detail Coef. of Level 2 contains an object of type image. Axes 3 with title Vertical Detail Coef. of Level 2 contains an object of type image. Axes 4 with title Diagonal Detail Coef. of Level 2 contains an object of type image.

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

    Загрузка и просмотр изображения RGB. Изображение является трехмерным массивом типов uint8. Начиная с swt2 требует, чтобы и первое, и вторые измерения делились на степень 2, извлекали фрагмент изображения.

    imdata = imread('ngc6543a.jpg');
    x = imdata(1:512,1:512,:);
    image(x)
    title('RGB Image')

    Figure contains an axes. The axes with title RGB Image contains an object of type image.

    Получите стационарное вейвлет уровня 4 изображения с помощью db4 вейвлет. Верните коэффициенты приближения. Обратите внимание на размерности массива коэффициентов.

    [a,~,~,~] = swt2(x,4,'db4');
    size(a)
    ans = 1×4
    
       512   512     3     4
    
    

    Все коэффициенты имеют тип double. В массиве RGB типа doubleкаждый цветовой компонент является значением от 0 до 1. Переключите коэффициенты приближения уровня 2 на значения от 0 до 1 и просмотрите результат.

    a2 = a(:,:,:,2);
    a2 = (a2-min(a2(:)))/(max(a2(:))-min(a2(:)));
    image(a2)
    title('Level 2 Approximation')

    Figure contains an axes. The axes with title Level 2 Approximation contains an object of type image.

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

    [a,~,~,~] = swt2(x,1,'db4');
    size(a)
    ans = 1×4
    
       512   512     1     3
    
    

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

    a2 = squeeze(a);
    a2 = (a2-min(a(:)))/(max(a(:))-min(a(:)));
    image(a2)
    title('Approximation')

    Figure contains an axes. The axes with title Approximation contains an object of type image.

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

    свернуть все

    Входное изображение, заданное как вещественная 2-D матрица или вещественный трехмерный массив. Если X является 3-D, X принято в качестве изображения RGB, также называемого изображением truecolor, и третьей размерности X должен равняться 3. Для получения дополнительной информации о изображениях truecolor, см. «Типы изображений».

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

    Уровень разложения, заданный как положительное целое число. 2N должны разделить size(X,1) и size(X,2). Использовать wmaxlev для определения максимального уровня разложения.

    Анализ вейвлета, заданный как вектор символов или строковый скаляр. swt2 Поддержки только Тип 1 (ортогональный) или Тип 2 (биортогональные) вейвлеты. Посмотрите wfilters для получения списка ортогональных и биортогональных вейвлеты.

    Вейвлеты Вейвлет-разложения, заданные как пара векторов с четной длиной, действительными значениями. LoD - lowpass разложения, и HiD - фильтр высокочастотного разложения. Длины LoD и HiD должно быть равным. Посмотрите wfilters для получения дополнительной информации.

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

    свернуть все

    Приближения, возвращенные как многомерный массив. Размерности A зависят от размерностей входа X и уровень разложения N.

    • Если X m -by n:

      • Если N больше 1, тогда A m -by- n -by- N. Для 1 ≤ iN, A(:,:,i) содержит аппроксимационные коэффициенты на уровне i.

      • Если N равно 1, тогда A m -by - n.

    • Если X m -by- n -by-3:

      • Если N больше 1, тогда A m -by- n -by-3-by- N. Для 1 ≤ iN и j = 1, 2, 3, A(:,:,j,i) содержит аппроксимационные коэффициенты на уровне i.

      • Если N равно 1, тогда A m -by- n -by-1-by-3. Начиная с MATLAB® удаляет singleton last размерности по умолчанию, третье измерение является singleton.

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

    Коэффициенты детализации, возвращенные как многомерные массивы равного размера. H, V, и D содержат горизонтальный, вертикальный и диагональный коэффициенты детализации, соответственно. Размерности массивов зависят от размерностей входных X и уровень разложения N.

    • Если X m -by n:

      • Если N больше 1, массивы m -by- n -by- N. Для 1 ≤ iN, H(:,:,i), V(:,:,i), и D(:,:,i) содержат коэффициенты детализации на уровне i.

      • Если N равно 1, массивы m -by- n.

    • Если X m -by- n -by-3:

      • Если N больше 1, массивы m -by- n -by-3-by- N. Для 1 ≤ iN и j = 1, 2, 3, H(:,:,j,i), V(:,:,j,i), и D(:,:,j,i) содержат коэффициенты детализации на уровне i.

      • Если N равно 1, массивы m -by- n -by-1-by-3. Для j = 1, 2, 3, H(:,:,1,j), V(:,:,1,j) и D(:,:,1,j) содержать коэффициенты детализации. Поскольку MATLAB по умолчанию удаляет синглтонные последние размерности, третье измерение является синглтоном.

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

    Стационарный вейвлет разложение, возвращенное как многомерный массив. swc является конкатенацией коэффициентов приближения A и коэффициенты детализации H, V, и D.

    • Если X m -by - n и N больше 1, тогда swc = cat(3,H,V,D,A(:,:,N)).

    • Если X m -by - n и N равно 1, тогда swc = cat(3,H,V,D,A).

    • Если X m -by- n -by-3 и N больше 1, тогда swc = cat(4,H,V,D,A(:,:,:,N)).

    • Если X m -by- n -by-3 и N равно to1, тогда swc = cat(4,H,V,D,A).

    Алгоритмы

    свернуть все

    2-D дискретное стационарное преобразование вейвлета

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

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

    где

    • - Свертка строк записи с X фильтра.

    • - Свертка столбцов записи с X фильтра.

    Инициализация

    • <reservedrangesplaceholder1> 0 = s

    • <reservedrangesplaceholder1> 0 = LoD

    • <reservedrangesplaceholder1> 0 = HiD

    • где обозначает upsample.

    Обратите внимание, что size (cAj) = size (cDj(h)) = размер (cDj(v)) = размер (cDj(d)) = s, где s равен размеру анализируемого изображения.

    Массивы коэффициентов Изображение

    Чтобы отличить одноуровневое разложение изображения truecolor от многоуровневого разложения индексированного изображения, массивы коэффициентов приближения и детализации изображений truecolor являются 4-D массивами.

    • Если вы выполняете многоуровневое разложение, размерности A, H, V, и D m -by- n -by-3-by- k, где k - уровень разложения.

    • Если вы выполняете одноуровневое разложение, размерности A, H, V, и D m -by- n -by-1-by-3. Поскольку MATLAB по умолчанию удаляет синглтонные последние размерности, третье измерение массивов является синглтоном.

    Вопросы совместимости

    расширить все

    Поведение изменено в R2017b

    Ссылки

    [1] Nason, G. P., and B. W. Silverman. «Стационарное преобразование вейвлет и некоторые статистические приложения». В Вейвлетах и статистике под редакцией Анестиса Антониадиса и Жоржа Oppenheim, 103: 281-99. Нью-Йорк, Нью-Йорк: Спрингер Нью-Йорк, 1995. https://doi.org/10.1007/978-1-4612-2544-7_17.

    [2] Койфман, Р. Р. и Д. Л. Донохо. «Переводно-инвариантное шумоподавление». В Вейвлетах и статистике под редакцией Анестиса Антониадиса и Жоржа Oppenheim, 103: 125-50. Нью-Йорк, Нью-Йорк: Спрингер Нью-Йорк, 1995. https://doi.org/10.1007/978-1-4612-2544-7_9.

    [3] Pesquet, J.-C., H. Krim, and H. Carfantan. «Инвариантные по времени ортонормальные представления вейвлет». Транзакции IEEE по обработке сигналов 44, № 8 (август 1996 года): 1964-70. https://doi.org/10.1109/78.533717.

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

    .

    См. также

    | |

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