lwtcoef

Извлечение или восстановление 1-D вейвлет и ортогональных проекций

    Описание

    y = lwtcoef(ca,cd) возвращает коэффициенты приближения уровня 1, которые соответствуют коэффициентам приближения и детализации, ca и cd, соответственно. ca и cd являются выходами lwt.

    пример

    y = lwtcoef(ca,cd,Name,Value) задает опции, используя один или несколько аргументов имя-значение. Для примера, y = lwtcoef(ca,cd,'OutputType','coefficients') задает выходные коэффициенты.

    Примеры

    свернуть все

    Загрузите 1-D сигнал длины 2048. Постройте график сигнала.

    load wecg
    plot(wecg)
    title('Signal')
    ylabel('Amplitude')
    axis tight

    Figure contains an axes. The axes with title Signal contains an object of type line.

    Создайте схему подъема, связанную со db4 вейвлет. Используйте схему подъема, чтобы получить вейвлет сигнала до максимального уровня. Подтвердите, что длина массива ячеек коэффициентов детализации равна floor(log2(N)), где N - длина сигнала.

    wv = 'db4';
    lsc = liftingScheme('Wavelet',wv);
    [ca,cd] = lwt(wecg,'LiftingScheme',lsc);
    [length(cd) floor(log2(length(wecg)))]
    ans = 1×2
    
        11    11
    
    

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

    approxCf = lwtcoef(ca,cd,'LiftingScheme',lsc,'OutputType','coefficients','Level',3);
    [2048/(2^3) length(approxCf)]
    ans = 1×2
    
       256   256
    
    
    plot(approxCf)
    title('Level 3 Approximation Coefficients')
    ylabel('Amplitude')
    axis tight

    Figure contains an axes. The axes with title Level 3 Approximation Coefficients contains an object of type line.

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

    approx3 = lwtcoef(ca,cd,'LiftingScheme',lsc,'OutputType','projection','Level',3);
    det3 = lwtcoef(ca,cd,'LiftingScheme',lsc,'OutputType','projection','Level',3,'Type','detail');
    det2 = lwtcoef(ca,cd,'LiftingScheme',lsc,'OutputType','projection','Level',2,'Type','detail');
    det1 = lwtcoef(ca,cd,'LiftingScheme',lsc,'OutputType','projection','Level',1,'Type','detail');
    subplot(4,1,1)
    plot(approx3)
    title('Projection - Approximation')
    axis tight
    subplot(4,1,2)
    plot(det3)
    title('Projection - Level 3 Details')
    axis tight
    subplot(4,1,3)
    plot(det2)
    title('Projection - Level 2 Details')
    axis tight
    subplot(4,1,4)
    plot(det1)
    title('Projection - Level 1 Details')
    axis tight

    Figure contains 4 axes. Axes 1 with title Projection - Approximation contains an object of type line. Axes 2 with title Projection - Level 3 Details contains an object of type line. Axes 3 with title Projection - Level 2 Details contains an object of type line. Axes 4 with title Projection - Level 1 Details contains an object of type line.

    Подтвердите, что сумма четырех проекций равна исходному сигналу.

    max(abs(wecg-(approx3+det3+det2+det1)))
    ans = 1.3323e-15
    

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

    свернуть все

    Аппроксимационные (lowpass) коэффициенты на самом грубом уровне, заданные как скаляр, вектор или матрица. Коэффициенты являются выходом lwt.

    Типы данных: single | double
    Поддержка комплексного числа: Да

    Коэффициенты детализации, заданные как массив ячеек L -на-1, где L - уровень преобразования. Элементы cd - в порядке уменьшения разрешения. Коэффициенты являются выходом lwt.

    Типы данных: single | double
    Поддержка комплексного числа: Да

    Аргументы в виде пар имя-значение

    Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

    Пример: y = lwtcoef(ca,cd,'LiftingScheme',lsc,'OutputType','coefficients','Level',2) использует схему подъема lsc для извлечения коэффициентов приближения на уровне 2.

    Ортогональный или биортогональный вейвлет, заданный в виде вектора символов или строкового скаляра. Смотрите свойство Wavelet liftingScheme для списка поддерживаемых вейвлеты. Для идеальной реконструкции заданный вейвлет должен быть таким же вейвлетом, который использовался для получения коэффициентов ca и cd.

    Вы не можете задать 'Wavelet' и 'LiftingScheme' аргументы имя-значение одновременно.

    Схема подъема для использования, заданная как liftingScheme объект. Для идеальной реконструкции заданная схема подъема должна быть такой же схемой подъема, которая использовалась для получения коэффициентов ca и cd.

    Вы не можете задать 'Wavelet' и 'LiftingScheme' аргументы имя-значение одновременно.

    Выходной тип, заданный как один из:

    • 'coefficients' - Извлечь приближение или детальные коэффициенты

    • 'projection' - Верните проекцию (реконструкцию) коэффициентов приближения или деталей

    Пример: y = lwtcoef(ca,cd,'OutputType','projection','Type','detail') возвращает проекцию, соответствующую коэффициентам детализации в самой мелкой шкале.

    Тип коэффициентов для извлечения или восстановления, заданный как 'approximation' или 'detail'.

    Пример: y = lwtcoef(ca,cd,'Type','detail') извлекает коэффициенты детализации в самой мелкой шкале.

    Уровень коэффициентов для извлечения или восстановления, заданный как целое число в области значений [1,N], где N - длина cd.

    Пример: y = lwtcoef(ca,cd,'LiftingScheme',lsc,'Level',3) использует схему подъема lsc для извлечения коэффициентов приближения на уровне 3.

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

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

    свернуть все

    Извлеченные коэффициенты или проекция, возвращенные в виде вектора или матрицы. Если ca является скаляром или вектором, и элементами cd являются векторами, тогда y является вектором. Если ca и элементы cd матрицы, тогда y является матрицей, где каждый столбец является извлечением или проекцией соответствующих столбцов в ca и cd.

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

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

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

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

    См. также

    | |

    Введенный в R2021a