exponenta event banner

liftingScheme

Создание подъемной схемы для подъемного вейвлет-преобразования

    Описание

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

    Создание

    Описание

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

    пример

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

    • lscheme = liftingScheme('Wavelet',wname)

    • lscheme = liftingScheme('CustomLowpassFilter',filter)

    • 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' биорогональный вейвлет.

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

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

    • Для создания схемы подъема, связанной с биоргональным вейвлетом, установите CustomLowpassFilter кому {LoPrimal,LoDual}, где LoPrimal и LoDual - фильтры нижних частот, связанные с биоргональным вейвлетом.

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

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

    Типы данных: 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Схема подъема дисплея

    Примеры

    свернуть все

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

    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 вейвлет. Используйте фильтр реконструкции нижних частот для создания первой схемы подъема и имя вейвлета для создания второй схемы.

    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 многочленов. bior2.2 вейвлет имеет два исчезающих момента. Создайте сигнал путем выборки многочлена степени 1.

    sig = 1:16;

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

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

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

    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