Bonjour / bonsoir à tous

Je suis actuellement en train de traiter un signal comportant 10 "battements cardiaques"
Je souhaiterais diviser mon vecteur en dix autres entités de manière "automatique".
Dans un premier temps j'ai appliqué un seuil d'amplitude pour supprimer le bruit lorsqu'il n'y a pas de perturbation importante en amplitude correspondant à mes signaux cardiaques.

Voici le vecteur initial, suivi d'un autre vecteur sans le bruit quand le signal est au "repos".
cardiaque_mike_150k_01.rarcardiaque_mike_modif.rar

Voici le visuel des deux signaux
Nom : signaux_card.png
Affichages : 1866
Taille : 14,8 Ko

Le code pour générer tout ça

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
v1 = pas_mike_150k_01.Y(1,1).Data;
j=1; k=1; m =0;
Nv1 = length(v1);
for i = 1 : Nv1
    Tv1(1,i) = j/10000; j = j+1; 
end 
 
for j =1:Nv1
    if abs(v1(1,j)) >= 0.025
        V1(1,k) = v1(1,j);
        k = k+1; m = 1;
    elseif abs(v1(1,j)) < 0.025 && m <=10
        m = m+1;
        V1(1,k) = v1(1,j);
        k = k+1;
    elseif abs(v1(1,j)) < 0.025 && m >10
        V1(1,k) = 0;
        k = k+1;
        m = m+1;
    end 
end
 
figure(4)
plot(Tv1,v1,'b','LineWidth',3)
grid on
hold on 
plot(Tv1,V1,'r','LineWidth',3)