Matlab - Transformada wavelet

 
Vista:
sin imagen de perfil
Val: 24
Ha aumentado su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Transformada wavelet

Publicado por Maria (14 intervenciones) el 07/09/2017 23:34:16
Buen día
Necesito aplicar a una señal la transformada Wavelet con el comando 'cwt', pero debo crear el tipo de wavelet que voy a usar dado que ninguna de las ya definidas en MATLAB cumple mi propósito. Mi pregunta es: ¿cómo puedo crear una wavelet nueva (wavelet quadratic spline - WQS) si tengo los filtros de descomposición y reconstrucción?

He probado con el comando 'wavemngr' pero cuando coloco la wavelet creada en los argumentos del comando cwt me regresa un error.
Anexo el código.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
%% Esta es la wavelet quadratic spline
function [psi, = quaspliwavf_tipoIV()
Dlow=[0.2500 0.7500 0.7500 0.2500];
Rlow =Dlow;
Dhigh = [-0.5 0.5];
Rhigh =[-0.5 0.5];
[PHIS,PSIS,PHIA,PSIA,XVAL] = bswfun(Dlow,Dhigh,Rlow,Rhigh,'plot');
psi=PHIS;
close all;
 
%% Aqui creo la wavelet
function crear_wavelet_nueva
wavemngr('del','quaspli');
FN='quadratic spline';
FSN='quaspli';
WT=4;
NUMS='';
FILE='quaspliwavf_tipoIV';
wavemngr('add',FN,FSN,WT,NUMS,FILE,[-1,1]);
wavemngr('read')
 
%% Uso de mi wavelet
function [pxR, pyR]=detectar_R(senal_filtrada)
 
[S_ECG]=Prueba1_v3();
% senal_filtrada=filtrar_senal()
close all
senal_filtrada = S_ECG;
cwsib = cwt(senal_filtrada,1:1:9,'quaspli');
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Transformada wavelet

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 08/09/2017 01:28:02
1
2
3
4
5
6
7
function [psi]= quaspliwavf_tipoIV()
Dlow=[0.2500 0.7500 0.7500 0.2500];
Rlow =Dlow;
Dhigh = [-0.5 0.5];
Rhigh =[-0.5 0.5];
[PHIS,PSIS,PHIA,PSIA,XVAL] = bswfun(Dlow,Dhigh,Rlow,Rhigh,'plot');
psi=PHIS;


1
2
3
4
5
6
7
8
9
function crear_wavelet_nueva
wavemngr('del','quaspli');
FN='quadratic spline';
FSN='quaspli';
WT=4;
NUMS='';
FILE='quaspliwavf_tipoIV';
wavemngr('add',FN,FSN,WT,NUMS,FILE,[-1,1]);
wavemngr('read')


1
2
3
4
5
6
7
8
function [pxR, pyR]=detectar_R(senal_filtrada)
%[S_ECG]=Prueba1_v3();
load vonkoch
senal_filtrada=vonkoch(1:510);
% senal_filtrada=filtrar_senal()
close all
%senal_filtrada = S_ECG;
cwsib = cwt(senal_filtrada,1:1:9,'sym2','quaspli');


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab



http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 24
Ha aumentado su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Transformada wavelet

Publicado por Maria (14 intervenciones) el 08/09/2017 03:01:04
Muchas gracias, ha sido de gran ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar