liftingScheme

Создайте схему подъема для подъема вейвлет

    Описание

    Используйте liftingScheme объект для создания схемы подъема, которую можно эффективно применить к сигналу 1-D. Можно задать одну из многих встроенных схем подъема liftingScheme обеспечивает. Можно также создать схему подъема с помощью заданных шагов подъема. Схема подъема может также быть создана путем определения lowpass, сопоставленных с ортогональными или биортогональными вейвлетами.

    Создание

    Описание

    lscheme = liftingScheme создает схему подъема для 'lazy' вейвлет с нормализацией, установленной на 1.

    пример

    lscheme = liftingScheme(Name,Value) создает схему подъема со свойствами, заданными парами "имя-значение". Для примера, lscheme = liftingScheme('Wavelet','db2') создает схему подъема, связанную со db2 ортогональный вейвлет. Заключайте имя свойства в кавычки. Можно создать схему подъема с помощью одного из следующих синтаксисов:

    • lscheme = liftingScheme ('Wavelet', wname)

    • lscheme = liftingScheme ('CustomLowpassFilter', фильтр)

    • lscheme = liftingScheme ('LiftingSteps', liftingSteps,' NormalizationFactors ', normFactors)

    Свойства

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

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

    Семейство вейвлетWavelet
    Daubechies'lazy', 'haar', 'db1', 'db2', 'db3', 'db4', 'db5', 'db6', 'db7', и 'db8'
    Symlet'sym2', 'sym3', 'sym4', 'sym5', 'sym6', 'sym7', и 'sym8'
    Коэн-Добеши-Фиво'cdf1.1', 'cdf1.3', 'cdf1.5', 'cdf2.2', 'cdf2.4', 'cdf2.6', 'cdf3.1', 'cdf3.3', 'cdf3.5', 'cdf4.2', 'cdf4.4', 'cdf4.6', 'cdf5.1', 'cdf5.3', 'cdf5.5', 'cdf6.2', 'cdf6.4', и 'cdf6.6'
    Coiflet'coif1', и 'coif2'
    Биоортогональный'bior1.1', 'bior1.3', 'bior1.5', 'bior2.2', 'bior2.4', 'bior2.6', 'bior2.8', 'bior3.1', 'bior3.3', 'bior3.5', 'bior3.7', 'bior3.9', 'bior4.4', 'bior5.5', 'bior6.8', 'bs3', и '9.7'
    Обратный биортогональный'rbs3', 'r9.7', 'rbio1.1', 'rbio1.3', 'rbio1.5', 'rbio2.2', 'rbio2.4', 'rbio2.6', 'rbio2.8', 'rbio3.1', 'rbio3.3', 'rbio3.5', 'rbio3.7', 'rbio3.9', 'rbio4.4', 'rbio5.5', и 'rbio6.8'

    Пример: lscheme = liftingScheme('Wavelet','bior3.7') создает схему подъема, связанную со 'bior3.7' биортогональный вейвлет.

    Lowpass, сопоставленные со схемой подъема, заданные как вектор или массив ячеек векторов 1 на 2.

    • Чтобы создать схему подъема, связанную с ортогональным вейвлетом, установите CustomLowpassFilter на LoD, где LoD - lowpass, сопоставленный с вейвлетом.

    • Чтобы создать схему подъема, связанную с биортогональным вейвлетом, установите CustomLowpassFilter на {LoPrimal,LoDual}, где LoPrimal и LoDual являются lowpass, сопоставленными с биортогональным вейвлетом.

    Когда вы задаете коэффициенты фильтра, Wavelet свойство автоматически устанавливается на 'custom'.

    Пример: lscheme = liftingScheme('CustomLowpassFilter',[sqrt(2)/2 sqrt(2)/2]) создает схему подъема, связанную с вейвлетом Haar.

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

    Подъемные шаги, сопоставленные со схемой подъема, заданы как массив структур, полученных из liftingStep. Создание схемы подъема с помощью LiftingSteps, вы также должны задать NormalizationFactors свойство. Когда вы задаете эти два свойства, Wavelet свойство автоматически устанавливается на 'custom'.

    Пример: lscheme = liftingScheme('LiftingSteps',ELS,'NormalizationFactors',NF) создает схему подъема с помощью liftingStep структуры, указанные в ELS и коэффициенты, указанные в NF.

    Коэффициенты нормализации, связанные со схемой подъема, задаются как K или [K 1/K], где K является ненулевым скаляром. Коэффициент K задает диагональные элементы матрицы нормализации 2 на 2. Если задан как вектор, продукт векторных элементов должно равняться 1 в пределах точности.

    Создание схемы подъема с помощью NormalizationFactors, вы также должны задать LiftingSteps свойство. Когда вы задаете эти два свойства, Wavelet свойство автоматически устанавливается на 'custom'.

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

    Функции объекта

    addliftДобавьте элементарные шаги подъема
    deleteliftУдалите элементарные шаги подъема
    ls2filtИзвлечение вейвлет из схемы подъема
    dispОтобразите схему подъема

    Примеры

    свернуть все

    Создайте схему подъема, связанную с вейвлетом Haar.

    lscheme = liftingScheme('Wavelet','haar')
    lscheme = 
     	 Wavelet              : 'haar' 
     	 LiftingSteps         : [2 × 1] liftingStep 
     	 NormalizationFactors : [1.4142 0.7071] 
     	 CustomLowpassFilter  : [] 
    
    
     Details of LiftingSteps :
                Type: 'predict'
        Coefficients: -1
            MaxOrder: 0
    
                Type: 'update'
        Coefficients: 0.5000
            MaxOrder: 0
    
    

    Получите вейвлет сигнала уровня 2 с помощью схемы подъема. Осмотрите приближения и детализации.

    sig = 0:7;
    [appC,detC]=lwt(sig,'LiftingScheme',lscheme,'Level',2);
    appC
    appC = 2×1
    
        3.0000
       11.0000
    
    
    detC{1}
    ans = 4×1
    
        0.7071
        0.7071
        0.7071
        0.7071
    
    
    detC{2}
    ans = 2×1
    
        2.0000
        2.0000
    
    

    Получите обратное преобразование и продемонстрируйте совершенную реконструкцию.

    xrec = ilwt(appC,detC,'LiftingScheme',lscheme);
    max(abs(xrec(:)-sig(:)))
    ans = 2.6645e-15
    

    Создайте две схемы подъема, связанные с db6 вейвлет. Используйте фильтр реконструкции lowpass, чтобы создать первую схему подъема, и имя вейвлета, чтобы создать вторую схему.

    wv = 'db6';
    [~,~,LoR,~] = wfilters(wv);
    LS = liftingScheme('CustomLowpassFilter',LoR);
    LSW = liftingScheme('Wavelet',wv);

    Подтвердите, что фильтры, извлеченные из обеих схем, равны.

    [lod,hid,lor,hir] = ls2filt(LS);
    [lodw,hidw,lorw,hirw] = ls2filt(LSW);
    max(abs(lod-lodw))
    ans = 4.1633e-16
    
    max(abs(hid-hidw))
    ans = 4.1633e-16
    
    max(abs(lor-lorw))
    ans = 4.1633e-16
    
    max(abs(hir-hirw))
    ans = 4.1633e-16
    

    Создайте схему подъема, связанную с биортогональной bior2.2 вейвлет.

    lscheme = liftingScheme('Wavelet','bior2.2');

    Вейвлет с N исчезающие моменты ортогональны к степени N-1 полиномы. The bior2.2 вейвлет имеет два момента исчезновения. Создайте сигнал путем дискретизации полинома степени 1.

    sig = 1:16;

    Примените схему подъема к сигналу. Просмотрите коэффициенты детализации в самой мелкой шкале. The bior2.2 вейвлет ортогональен полиному степени 1. Подтвердите, что за исключением ненулевого коэффициента на контуре, коэффициенты детализации равны нулю.

    [A,D] = lwt(sig,'LiftingScheme',lscheme);
    D{1}
    ans = 8×1
    
             0
             0
             0
             0
             0
             0
             0
        5.6569
    
    

    Теперь создайте схему подъема, связанную с вейвлет Haar.

    lschemeH = liftingScheme('Wavelet','haar');

    Примените схему подъема к сигналу. Подтвердите, что коэффициенты детализации все ненулевые. Поскольку вейвлет Хаара имеет только один исчезающий момент, вейвлет не ортогональен полиному степени 1.

    [AH,DH] = lwt(sig,'LiftingScheme',lschemeH);
    DH{1}
    ans = 8×1
    
        0.7071
        0.7071
        0.7071
        0.7071
        0.7071
        0.7071
        0.7071
        0.7071
    
    

    См. также

    | |

    Введенный в R2021a
    Для просмотра документации необходимо авторизоваться на сайте