scatteringTransform

Вейвлет 1D рассеивание преобразовывает

Описание

s = scatteringTransform(sf,x) возвращает вейвлет 1D преобразование рассеивания x с метаданными для сети рассеивания времени вейвлета, sfX вектор с действительным знаком, матрица или трехмерный массив.

Точность рассеивающихся коэффициентов зависит от точности, заданной в рассеивающейся сети sf.

пример

[s,u] = scatteringTransform(sf,x) также возвращает scalogram коэффициенты для каждого из рассеивающихся порядков.

Точность scalogram коэффициентов зависит от точности, заданной в рассеивающейся сети sf.

Примеры

свернуть все

В этом примере показано, как возвратить вейвлет 1D преобразование рассеивания вещественного сигнала.

Загрузите сигнал ECG, произведенный на уровне 180 Гц.

load wecg
Fs = 180;

Создайте сеть рассеивания времени вейвлета, чтобы примениться к сигналу. Вычислите рассеивающееся преобразование сигнала.

sf = waveletScattering('SignalLength',numel(wecg),...
    'SamplingFrequency',Fs)
sf = 
  waveletScattering with properties:

          SignalLength: 2048
       InvarianceScale: 5.6889
        QualityFactors: [8 1]
              Boundary: 'periodic'
     SamplingFrequency: 180
             Precision: 'double'
    OversamplingFactor: 0
          OptimizePath: 0

[S,U] = scatteringTransform(sf,wecg);

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

t = [0:length(wecg)-1]/Fs;
subplot(2,1,1)
plot(t,wecg)
grid on
axis tight
xlabel('Seconds')
title('ECG Signal')
subplot(2,1,2)
plot(S{1}.signals{1},'x-')
grid on
axis tight
title('Zeroth-Order Scattering Coefficients')

Figure contains 2 axes objects. Axes object 1 with title ECG Signal contains an object of type line. Axes object 2 with title Zeroth-Order Scattering Coefficients contains an object of type line.

Визуализируйте scattergram для первого порядка scalogram коэффициенты.

figure
scattergram(sf,U,'FilterBank',1)

Figure contains an axes object. The axes object with title Scattergram -- Scalogram Coefficients Filter Bank 1 contains an object of type surface.

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

свернуть все

Сеть рассеивания времени вейвлета в виде waveletScattering объект.

Входные данные в виде вектора с действительным знаком, матрицы или трехмерного массива. Если x вектор, количество отсчетов в x должен равняться SignalLength значение sf. Если x матрица или трехмерный массив, количество строк в x должен равняться SignalLength значение sf. Если x 2D, первая размерность принята, чтобы быть время и столбцы x приняты, чтобы быть отдельными каналами. Если x 3-D, размерности x время каналом пакетом.

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

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

свернуть все

Рассеивание коэффициентов, возвращенных как NO-by-1 массив ячеек, где NO является количеством порядков в sf.

Каждый элемент s MATLAB® таблица со следующими переменными:

Рассеивание коэффициентов, возвращенных как массив ячеек. Если x вектор, каждый элемент signals Ns-by-1 вектор, где Ns является количеством рассеивающихся коэффициентов. Если x 2D, каждый элемент signals Ns-by-Nc матрица, где Nc является количеством каналов в x. Если x 3-D, каждый элемент signals Ns-by-Nc-by-Nb массив, где Nb является количеством пакетов в x.

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

Рассеивание пути, используемого, чтобы получить рассеивающиеся коэффициенты, возвратилось как вектор-строка. Каждый столбец path соответствует одному элементу пути. Скаляр 0 обозначает исходный сигнал. Положительные целые числа в Lth столбец обозначает, что соответствующий вейвлет просачивается (L-1)th набор фильтров. Полосовые фильтры вейвлета упорядочены путем уменьшения центральной частоты.

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

Полоса пропускания рассеивающихся коэффициентов, возвращенных как скаляр. Если вы задаете частоту дискретизации в рассеивающейся сети, полоса пропускания находится в герц. В противном случае полоса пропускания находится в циклах/выборке.

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

Основывайте 2 логарифмических разрешения рассеивающихся коэффициентов, возвращенных как скаляр.

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

Коэффициенты Scalogram, возвращенные как NO-by-1 массив ячеек, где NO является количеством порядков в sf. i th элемент u scalogram коэффициенты для i th строка s.

Каждый элемент u таблица MATLAB со следующими переменными:

Коэффициенты Scalogram, возвращенные как массив ячеек. Если x вектор, каждый элемент coefficients Nu-by-1 вектор, где Nu является количеством scalogram коэффициентов. Если x 2D, каждый элемент coefficients Nu-by-Nc матрица, где Nc является количеством каналов в x. Если x 3-D, каждый элемент coefficients Nu-by-Nc-by-Nb массив, где Nb является количеством пакетов в x.

Обратите внимание на то, что u{1} содержит исходные данные в содействующей переменной.

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

Рассеивание пути, используемого, чтобы получить scalogram коэффициенты, возвратилось как вектор-строка. Каждый столбец path соответствует одному элементу пути. Скаляр 0 обозначает исходный сигнал. Положительные целые числа в Lth столбец обозначает, что соответствующий вейвлет просачивается (L-1)th набор фильтров. Полосовые фильтры вейвлета упорядочены путем уменьшения центральной частоты.

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

Полоса пропускания scalogram коэффициентов, возвращенных как скаляр. Если вы задаете частоту дискретизации в рассеивающейся сети, полоса пропускания находится в герц. В противном случае полоса пропускания находится в циклах/выборке.

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

Основывайте 2 логарифмических разрешения scalogram коэффициентов, возвращенных как скаляр.

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

Советы

  • scatteringTransform вызовы функции featureMatrix сгенерировать рассеивание и scalogram коэффициенты. Если вы только требуете самих коэффициентов для улучшенной производительности, рекомендуемый подход должен использовать featureMatrixИспользование scatteringTransform если вы также интересуетесь содействующими метаданными.

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

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

|

Введенный в R2018b