wdecenergy

Мультисигнальное распределение энергии разложения 1-D

Синтаксис

[E,PEC,PECFS] = wdecenergy(DEC)
[E,PEC,PECFS,IDXSORT,LONGS] = wdecenergy(DEC,'sort')
[E,PEC,PECFS] = wdecenergy(DEC,OPTSORT,IDXSIG)
[E,PEC,PECFS,IDXSORT,LONGS] = wdecenergy(DEC,OPTSORT,IDXSIG)

Описание

[E,PEC,PECFS] = wdecenergy(DEC) вычисляет вектор E, который содержит энергию (L2-Norm) каждого разложенного сигнала, матрицу PEC, который содержит процент энергии для каждого вейвлета компонента (приближения и детали) каждого сигнала, и матрицы PECFS, который содержит процент энергии для каждого коэффициента.

  • E (i) является энергией (L2-norm) i-го сигнала.

  • PEC (i, 1) - процент энергии для приближения уровня MAXLEV = DEC.level i-го сигнала.

  • PEC (i, j), j = 2,..., MAXLEV + 1 - процент энергии для детализации уровня (MAXLEV + 1-j) i-го сигнала.

  • PECFS (i, j), является процентом энергии для j-ых коэффициентов i-го сигнала.

[E,PEC,PECFS,IDXSORT,LONGS] = wdecenergy(DEC,'sort') возвращает PECFS, отсортированный (по строкам) в порядке возрастания, и вектор индекса IDXSORT.

  • Замена 'sort' на 'ascend' возвращает тот же результат.

  • Замена 'sort' на 'descend' возвращает PECFS, отсортированный в порядке убывания.

LONGS является вектором, содержащим длины каждого семейства коэффициентов.

[E,PEC,PECFS] = wdecenergy(DEC,OPTSORT,IDXSIG) возвращает значения для сигналов, индексы которых заданы IDXSIG вектор.

[E,PEC,PECFS,IDXSORT,LONGS] = wdecenergy(DEC,OPTSORT,IDXSIG) возвращает значения для сигналов, индексы которых заданы вектором IDXSIG, вектором индекса IDXSORT и LONGS, который является вектором, содержащим длины каждого семейства коэффициентов. Допустимыми значениями для OPTSORT являются 'none', 'sort', 'ascend', 'descend'.

Примеры

свернуть все

Загрузите 23-канальные данные EEG Espiga3 [1]. Каналы расположены столбчато. Данные отбираются с частотой дискретизации 200 Гц.

load Espiga3

Выполните разложение на уровне 2, используя db2 вейвлет.

dec = mdwtdec('c',Espiga3,2,'db2')
dec = struct with fields:
        dirDec: 'c'
         level: 2
         wname: 'db2'
    dwtFilters: [1x1 struct]
       dwtEXTM: 'sym'
      dwtShift: 0
      dataSize: [995 23]
            ca: [251x23 double]
            cd: {[499x23 double]  [251x23 double]}

Вычислите распределение энергии.

[e,pec,pecfs] = wdecenergy(dec);

Отобразите общую энергию и распределение энергии для каждого вейвлет-компонента (A2, D2, D1) во втором канале.

idx = 2;
e(idx)
ans = 8.0761e+05
perA2D2D1 = pec(idx,:)
perA2D2D1 = 1×3

   99.0583    0.8535    0.0882

Сравните распределение энергии коэффициента для сигнала 1 и сигнала 10. Поскольку большая часть энергии находится в коэффициентах приближения, масштабируйте ось X на количество коэффициентов приближения.

sigA = 1;
sigB = 10;
pecfsA = pecfs(sigA,:);
pecfsB = pecfs(sigB,:);
plot(pecfsA,'r--')
hold on
plot(pecfsB,'b')
grid on
legend('pecfsA','pecfsB')
xlim([0 size(dec.ca,1)])

Figure contains an axes. The axes contains 2 objects of type line. These objects represent pecfsA, pecfsB.

Ссылки

[1] Меса, Гектор. «Адаптированные вейвлеты для обнаружения шаблона». В Прогресс Pattern Recognition, Image Analysis and Applications, под редакцией Альберто Санфелиу и Мануэля Лазо Кортеса, 3773: 933-44. Берлин, Гейдельберг: Спрингер Берлин Гейдельберг, 2005. https://doi.org/10.1007/11578079_96 .

См. также

|

Введенный в R2012a