Enlever certains points sur une courbe sous Matlab
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Enlever certains points sur une courbe sous Matlab



  1. #1
    ellymimi

    Enlever certains points sur une courbe sous Matlab


    ------

    Bonjour,

    Je voudrais solliciter votre aide pour trouver une méthode afin d'enlever certains points sur mon signal que je ne veux pas tracer. Ces point impliquent un "saut" à mon signal. Je veux donc les enlever lorsqu'il y en a moins de 10...
    Je veux faire ca automatiquement.
    J'ai pensé à ajouter une condition dans la commande plot mais je ne sais pas comment faire...

    Jetez donc un coup d'oeil sur l'image ci-contre et merci d'avance

    -----
    Images attachées Images attachées  

  2. #2
    stefller

    Re : Enlever certains points sur une courbe sous Matlab

    Bonjour,

    Je ne peux pas encore voir la pièce jointe.
    Mais pourquoi tu ne créerais pas une boucle de test dans laquelle tu crées une nouvelle matrice avec les bons points.

    Tu fais une boucle itérative avec à l'intérieur une boucle test qui conserve les points dans un certain intervalle.

  3. #3
    lou_ibmix_xi

    Re : Enlever certains points sur une courbe sous Matlab

    si tes mesures sont dans le vecteur x, alors
    Code:
    outliers = find (abs (diff (x)) > dx_max)
    contiendra les indices où se trouvent les "discontinuitées" de tes mesures, du coup si
    Code:
    outliers(n+1) - outliers(n)
    est le nombres de mesures erronées pour la discontinuitée n, donc
    Code:
    k = find (diff (outliers) < 10)
    devrait contenir les indices des indices des discontinuitées contenant moins de 10 éléments...

  4. #4
    ellymimi

    Re : Enlever certains points sur une courbe sous Matlab

    Merci beaucoup pour vos réponses!! J'ai des idées maintenant!

  5. A voir en vidéo sur Futura
  6. #5
    ellymimi

    Re : Enlever certains points sur une courbe sous Matlab

    Voici mon code et là où je suis bloquée (je suis débutante en programmation comme en Matlab):

    liste=dir(fullfile('C:\Users\j chhieng\Documents\MATLAB\5','* .txt')); //cherche le fichier dans la liste des dossiers
    data=load(liste(5).name);// définit le fichier

    for i=i:length(data(:,2))-1// parcourt le fichier à partir de la deuxième ligne

    outliers=find(abs(diff(data(:, 2))>20))

    if(outliers(i+1)-outliers(i));

    y=find(diff(outliers)<10)

    else(isempty(y))

    y=0
    end

    end

    disp(y)

    et Matlab me retourne : "Undefined function or variable 'y'"

  7. #6
    lou_ibmix_xi

    Re : Enlever certains points sur une courbe sous Matlab

    Je ne comprends pas cette ligne:
    if(outliers(i+1)-outliers(i));
    même si j'imagine que le ";" est une faute de frappe.

Discussions similaires

  1. Tracer une courbe qui contient plus que 4000 points-Matlab?
    Par merins dans le forum Programmation et langages, Algorithmique
    Réponses: 6
    Dernier message: 02/06/2014, 21h19
  2. fitter des points expérimentaux sous matlab
    Par invite56f662a8 dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 22/06/2012, 12h20
  3. Detecteur de points HARRIS:sous MATLAB ???
    Par IHCAAMEL dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 27/12/2011, 23h22
  4. matlab points limites courbe
    Par invite1ca7ba4c dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 13/08/2008, 10h20
  5. le chainage des points sous matlab
    Par invite6173ac4b dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 02/08/2008, 15h15