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 :

Histogramme d'une image couleur


Sujet :

Images

  1. #1
    Membre du Club
    Doctorante
    Inscrit en
    Avril 2009
    Messages
    56
    Détails du profil
    Informations professionnelles :
    Activité : Doctorante

    Informations forums :
    Inscription : Avril 2009
    Messages : 56
    Points : 47
    Points
    47
    Par défaut Histogramme d'une image couleur
    Bonjour,

    je veux afficher l'histogramme d'une image couleur, mais je ne sait pas comment
    dans le cas d'une image niveau de gris, on utilise la fonction imhist, mais cette fonction ne marche pas dans le cas d'une image couleur, j'essaye de transformer l'image en une image indexée ensuite affiche l'histogramme:

    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
    function histogramme=histo_color()
     
    img=imread('peppers.png');
     
    [y,map]=rgb2ind(img);
     
     
     
    histo=imhist(y);
     
    subplot(1,3,1);imshow(img);title('image couleur');
     
    subplot(1,3,2);imshow(y,map);title('image indexee');
     
    subplot(1,3,3);plot(histo);title('histogramme');
    quand j'exécute le programme, il affiche juste une ligne verticale mais c'est faux

    j'essaye aussi d'afficher l'histogramme de chaque plan couleur(rouge, vert, bleu)

    est ce que quelqu'un peut m'aider à comment on peut afficher l'histogramme d'une image couleur?

    merci d'avance.

  2. #2
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonsoir,

    Une image couleur en RGB possède trois spectres de niveaux, Rouge Vert et Bleu. Pour afficher afficher l’histogramme d'une tel image, ilm suffit de calculer l'histogramme pour chaque spectre.

    Solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >> im = imread('peppers.png') ;
    >> hr = imhist(im(:,:,1)) ;
    >> hv = imhist(im(:,:,2)) ;
    >> hb = imhist(im(:,:,3)) ;
    >> plot([hr hv hb])

  3. #3
    Membre du Club
    Doctorante
    Inscrit en
    Avril 2009
    Messages
    56
    Détails du profil
    Informations professionnelles :
    Activité : Doctorante

    Informations forums :
    Inscription : Avril 2009
    Messages : 56
    Points : 47
    Points
    47
    Par défaut
    salut;

    merci pour ta réponse

    j'ai fait cette solution où j'ai tracé l'histogramme de chaque plan couleur, puis les afficher dans le même histogramme

    le problème est que l'histogramme contient trois courbes qui correspond à chaque plan mais je veux un seul courbe, est ce que c'est possible?

    merci

  4. #4
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonjour,

    La réponse est ici :
    l'histogramme contient trois courbes qui correspond à chaque plan

    Tu peux faire aussi une conversion en niveau de gris :


Discussions similaires

  1. Histogramme d'une image BMP en niveaux de gris?
    Par bahiatoon dans le forum C++Builder
    Réponses: 13
    Dernier message: 19/11/2008, 16h36
  2. Histogramme 2D pour image couleur
    Par hanane78 dans le forum Images
    Réponses: 6
    Dernier message: 18/01/2007, 15h04
  3. Tramage d'une image couleur
    Par sandball22 dans le forum Images
    Réponses: 2
    Dernier message: 15/01/2007, 16h58
  4. Quantification d'une image couleur
    Par sandball22 dans le forum Images
    Réponses: 2
    Dernier message: 02/12/2006, 22h32

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