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

Images Discussion :

seuillage par maximum d'entropie


Sujet :

Images

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Juin 2008
    Messages : 107
    Par défaut seuillage par maximum d'entropie
    Bonjour,

    Je pensai n'avoir que le probleme de la sauvegarde, mais je dois egalement realiser un algorithme pour le seuillage par maximum d'entropie.
    Est-ce que quelqu'un l'aurait deja fait ? Je suis un peu pommee dans la synthaxe sous matlab. Je vais continuer a essayer a partir de la version ecrite en java que j'ai.

    Merci d'avance.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2007
    Messages : 552
    Par défaut
    Je connais pas cette méthode de seuillage. Regarde si elle n'est pas déjà implémenté dans l'Image processing toolbox (il y a une fonction entropyfilt par exemple) ou sur le net.
    Sinon, il faut implémenté l'algorithme que tu semble déjà avoir. Dans ce cas, demande de l'aide si tu es bloqué sur un problème précis.

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Juin 2008
    Messages : 107
    Par défaut
    La technique du seuillage par maximum d'entropie consiste a trouver le meilleur seuil pour une image, mais je ne sais pas exactement comment elle marche, c'est dans le forum algo que l'on m'en a parle.
    J'ai le code en java mais ca ne m'aide pas bcp, je vous le met au cas ou qqn le comprendrai.

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    // normalized histogram 
    	double[] hist = histogramNormalized(glimg);
     
    	// Cumulative distribution function
    	double[] cdf = new double[256];
    	cdf[0] = hist[0];
    	for (int i = 1; i < 256; i++)
    		cdf[i] = cdf[i-1] + hist[i];
     
    	// compute low and high entropy for each possible threshold value
    	double[] h_low  = new double[256];
    	double[] h_high = new double[256];
    	for (int t = 0; t < 256; t++) {
     
    		// low-threshold entropy
    		double count_low = cdf[t];
    		if (count_low > 0) {
    			for (int i = 0; i <= t; i++)
    				if (hist[i] > 0) h_low[t] -= (hist[i]/count_low) * Math.log(hist[i]/count_low);
    		}
     
    		// high-threshold entropy
    		double count_high = 1.0 - count_low;
    		if (count_high > 0) {
    			for (int i = t + 1; i < 256; i++)
    				if (hist[i] > 0) h_high[t] -= (hist[i]/count_high) * Math.log(hist[i]/count_high);
    		}
    	}
     
    	// Find threshold value with the maximum total entropy
    	double h_max = h_low[0] + h_high[0];
    	int best = 0;
    	for (int t = 1; t < 256; ++t) {
    		double h = h_low[t] + h_high[t];
    		if (h > h_max) {
    			h_max = h;
    			best = t;
    		}
    	}

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Juin 2008
    Messages : 107
    Par défaut
    J'ai une question plus precise, je n'arrive pas a trouver comment normaliser un histogramme ?
    Si qqn a la reponse, je suis preneuse, merci.

  5. #5
    Hew
    Hew est déconnecté
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 142
    Par défaut
    Salut,
    La méthode de maximisation de l'entropie consiste à trouver le seuil s entre 0 et 255 pour lequel tu maximises l'entropie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    E(s) = - somme (i=1:s)[p(i/C0,S)*log(p(i/C0,S))] - somme(i=s+1:255)[p(i/C1,s)*log(p(i/C1,s))]
     
    Avec :
    p(i/C0,S) = h(i) / N0,s
    h(i) : histogramme à la valeur i
    N0,s = population de la classe C0,s
    (on appelle ça une probabilité à postériori.
    Tu cherches donc s0 tel que :
    Je ne l'ai jamais implémentée
    Par contre il parait que cette méthode a un rendu visuel moyen par rapport à d'autres méthodes, mais elle permet de voir des petits détails sur l'image.

    Bon courage !

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Juin 2008
    Messages : 107
    Par défaut
    Merci mais je ne comprend pas bien comment implementer ca
    i correspond au niveau de gris ? Et C0 et s ??
    Je suis desolee, je travaille sur matlab depuis 2 semaines seulement et c'est beaucoup d'informations d'un coup.
    Merci de ton aide.

Discussions similaires

  1. Seuillage par Isodata
    Par Ange_blond dans le forum Traitement d'images
    Réponses: 3
    Dernier message: 15/05/2015, 19h29
  2. effectuer un seuillage par le max d'entropie dans matlab
    Par magntar dans le forum Traitement d'images
    Réponses: 1
    Dernier message: 28/11/2008, 09h52
  3. Décodage par maximum de vraisemblance
    Par adrian07 dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 10/06/2008, 10h48
  4. Seuillage par hysteresis
    Par Flo. dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 18/07/2006, 10h25
  5. Seuillage par entropie.
    Par parp1 dans le forum Traitement d'images
    Réponses: 5
    Dernier message: 12/05/2006, 21h57

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