IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Calcul de dérivées discretes dans le plan


Sujet :

Algorithmes et structures de données

  1. #41
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    644
    Détails du profil
    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 644
    Points : 754
    Points
    754
    Par défaut
    Le calcul numérique des dérivées peut être sujet à bien du bruit. Par ailleurs on peut ne pas correctement détecter les plus forts gradients si les lignes de plus grandes pentes ne sont pas sur des axes.
    Afin de détecter les variations de température
    Si le problème est la dédection des forts changements, je suggèrerais plutôt la décomposition en ondelettes.

  2. #42
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    La décomposition en ondelettes ???
    nickoko a déjà assez de problèmes avec juste une dérivée, je pense pas que ça soit une bonne idée...
    D'autant plus qu'il faut choisir la base d'ondelettes: Haar; Daubechies etc...

    Enfin bref, oui, mais pas tant que nickoko n'est pas sur qu'une simple dérivée ne répond pas à son problème!

  3. #43
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Je pense que si on veut s'attaquer à qqc de plus compliqué que les dérivées discrètes, il faut aussi avoir le bagage mathématique adéquat pour ne pas manipuler qqch qu'on ne comprend vraiment pas.

  4. #44
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 71
    Points : 15
    Points
    15
    Par défaut
    j'ai la possibilité d'utiliser deux méthodes (je coderais ce week end, je ne peux pas avant) qui sont les dérivées partielles et la morphologie mathématques (méhode du chapeau haut de forme).
    tu penses que la dérivée est moins précise que le chapeau? si ça fait un peu de bruit ce n'est pas tres grave car je pense que les variations seront assez flagrantes.

  5. #45
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Le top hat? C'est assez utilisé en détection de contours...
    il s'agit de la différence entre l'image ouverte et l'image initiale
    Ma foi, pourquoi pas?

    Quand à dire si une des méthodes est mieux que l'autre, je pense que c'est difficile à dire. Les deux font parti du bagage simple de traitement d'images.

    J'ai une préférence personnelle pour la morpho math, car c'est parfois très puissant. Etant donné que c'est relativement simple à mettre en place, je te conseille d'essayer les deux (résultats semblables d'après moi)

  6. #46
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    D'accord...
    Par contre, même si l'algo est en C++, tu peux largement t'en inspirer pour le transcrire en C...
    Inutile de réinventer la roue !

  7. #47
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Au fait, top-hat, ça va pas te donner la dérivée...
    Je crois que ce que tu cherches, c'est de la détection de contours en fait...
    Alors Sobel marchera mieux (moins sensible au bruit)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    [ -1   0   1]
    [ -2   0   2]
    [ -1   0   1]
    La convolution, tu trouveras comment la faire sur Internet.
    En gros, tu places ce masque au centre du pixel qui t'intéresse sur l'image de départ, et tu fais le produit terme à terme avec les pixels correspondant, que tu sommes...
    Bref, tu verras, c'est pas bien compliqué.

    Plus dur, la morpho math, là il te faut définir un élément structurant, puis il te faut définir l'érosion et la dilatation pour ensuite pouvoir faire une ouverture....


    Bonne chance

  8. #48
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Enfin, Sobel, c'est pour les débutants, il existe des algos plus corrects - mon directeur de thèse en cours de DEA pour le cours de traitement d'image, il parle de Sobel et dit qu'il espère que personne ne l'utilisera, ça ne se fait plus, j'étais amusé de la manière dont il présentait ça -. Enfin, tout ça pour dire qu'il ne faut pas s'attendre à des miracles.

  9. #49
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 71
    Points : 15
    Points
    15
    Par défaut
    je veux pas de la detection de contour mais vraiment du calcul de dérivée.
    si quelq'un connait une biblio en c qui fait le produit de convolution je suis preneur!
    je prends donc bien la 1ere matrice que tu m'as donné? ou sobel?
    je continue mes recherches!

  10. #50
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    En fait, Sobel, c'est aussi une approximation de la dérivée...

  11. #51
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    oui, aussi...

    @Miles : C'est vrai que c'est pas le top! Mais je crois que ton prof s'adressait à un public averti qui matrisait les dérivées discrètes

    Pour la détection de contours, il y a maintenant les snakes, les ondelettes etc...
    Mais pour une simple dérivée, Sobel conviendra bien, non?

    EDIT: je suis en école d'ingé de traitement d'images, je te rassure, Sobel ne nous a pas été présenté comme le dieu moderne de la détection de contours !

  12. #52
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Oui, je suis d'accord, Sobel marche bien pour une dérivée, comme dit, c'est une manière de faire la dérivée discrète, comme on en a présenté d'autres

  13. #53
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Alors tu prends une autre formule qui ne décale pas, une version simplifiée des filtres qu'on t'a proposé - parce qu'en fait, c'est ça que tu fais sans le savoir, une convolution -

  14. #54
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 71
    Points : 15
    Points
    15
    Par défaut
    sans le savoir, sans le savoir! tu restes calme!
    je convolutionnais déja que tu n'etais pas encore né!

  15. #55
    Membre chevronné
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Points : 2 107
    Points
    2 107
    Par défaut
    Oui, ce que proposait Miles, c'était en fait la matrice [-1 1] à convoluer...
    Prend comme Matrice [-1 0 1], ça permet de ne pas décaler, mais fait une vraie recherche sur "comment fait-on un produit de convolution en 2D"!

    Une fois que t'auras ça, c'est OK

    Je répète, tu peux t'inspirer des algos de C++. Mise à part la syntaxe, c'est pareil (t'auras juste pas le droit aux vector et c'est tout)

Discussions similaires

  1. Réponses: 0
    Dernier message: 08/03/2015, 16h31
  2. Calcul des coordonnées d'un point dans un plan à 2 dimensions
    Par Séléné dans le forum Mathématiques
    Réponses: 4
    Dernier message: 16/02/2010, 11h15
  3. Calcul de dérivées discretes dans l'espace
    Par nickoko dans le forum C
    Réponses: 33
    Dernier message: 19/06/2006, 17h03
  4. Calcul du temps passé dans les procédures ...
    Par Jloox dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 05/10/2005, 15h31
  5. codage du calcul de dérivée d'une fonction mathématique
    Par pispa2005 dans le forum Mathématiques
    Réponses: 5
    Dernier message: 08/01/2005, 21h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo