matlab, image gif inversée à l'affichage
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

matlab, image gif inversée à l'affichage



  1. #1
    DervishSatori

    matlab, image gif inversée à l'affichage


    ------

    Bonjour à tous,

    J'aurais besoin, pour un exercice avec matlab, d'afficher une image gif en ndg.
    Je fais donc un imread imshow et, bizaremment, matlab m'affiche le négatif de mon image.
    Alors ok on peut retrouver l'image de base, mais j'aimerais savoir pourquoi il prend des initiatives comme ça.

    Voilà, merci.

    -----

  2. #2
    fiatlux

    Re : matlab, image gif inversée à l'affichage

    Salut, bienvenue sur le forum,
    Je sais pas si je peux te répondre comme ça. Tu peux mettre l'image en pièce jointe stp?
    (ou l'insérer directement avec la balise image en l'hébergeant sur un site genre http://imageshack.us/ pour éviter de devoir attendre qu'un modérateur la valide)
    La pie niche-t-elle haut ? Oui, la pie niche haut.

  3. #3
    DervishSatori

    Re : matlab, image gif inversée à l'affichage

    Salut, merci.

    J'ai mis l'image içi
    C'est juste que j'ai jamais vu ça avant, je sais pas pourquoi notre prof
    nous donne des exercices avec des images gif, c'est pas top en traitement d'image.
    Dernière modification par yoda1234 ; 28/10/2010 à 03h49.

  4. #4
    fiatlux

    Re : matlab, image gif inversée à l'affichage

    Salut,
    C'est ce que je pensais. Ton image est en format indexé (indexed), par opposition au format truecolor. La différence (cf aide matlab) entre les 2:
    An indexed image stores colors as an array of indices into the figure colormap. A true color image does not use a colormap; instead, the color values for each pixel are stored directly as RGB triplets.
    En gros si tu prends une image couleur au format truecolor et que va voir sa valeur en 1 pixel, il te renvoie un triplet (R,G,B) correspondant au valeur de rouge,bleu,vert des 3 canaux de l'image (la pluaprt des images sont stockées comme ça). Mais si tu vas lire la valeur d'un pixel d'une image indexée, il te renvoie un nombre que tu sais pas exactement à quoi il correspond, puisqu'en fait il correspond à une couleur bien spécifique via une table de conversion elle aussi stockée dans l'image, mais séparément. D'où le fait que si tu fait:
    img = imread('felixg.gif');
    ..dans img, tu n'auras que des nombres sans signification d'un point de vue couleur, puisqu'il correspondent uniquement à des indices d'un tableau (nommé colormap) de conversion entre les indices et la table de couleurs. Donc il faut lire l'image comme suit:
    [img,map] = imread('felixg.gif');
    Puis l'afficher comme suit (il faut fournir la colormap à imshow, évidemment, sinon lui non plus ne peut pas faire la conversion)
    imshow(img,map);
    et tu verras d'ailleurs que felix est en réalité sur un fond jaune

    Ou sinon, tu convertis simplement ton image indexée en une image truecolor (et donc nettement plus pratique et moins barbare ):
    [img,map] = imread('felixg.gif');
    img = ind2rgb(img,map);
    imshow(img);

    et cette fois c'est bon.

    Pour résumé:
    - au format indexé, ton image felix n'a qu'un canal (avec 1 indice par pixel, indice qui correspond à une couleur dans la colormap), tandis que sa colormap (séparée de l'image elle-même, je te rappelle) est une matrice 3 canaux (pour les 3 couleurs rgb) où chaque indice correspond à une ligne de cette matrice, et donc à une couleur bien définie.
    - au format truecolor RGB, ton image a cette fois les 3 canaux incorporés directement en elle et chaque pixel possède directement l'info couleur via un triplet RGB.
    -ton image n'était donc pas réellement en négatif mais en niveaux de gris qui, par pur hasard, donnaient l'impression d'un négatif, alors que les valeurs en questions n'était en réalité que des indices et non des niveaux de gris. Mais comme tu ne fournissais pas la colormap à imshow, il a supposé que c'était une image 1 canal en niveau de gris.
    Dernière modification par fiatlux ; 27/10/2010 à 22h47.
    La pie niche-t-elle haut ? Oui, la pie niche haut.

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

    Re : matlab, image gif inversée à l'affichage

    Citation Envoyé par fiatlux Voir le message
    (ou l'insérer directement avec la balise image en l'hébergeant sur un site genre http://imageshack.us/ pour éviter de devoir attendre qu'un modérateur la valide)
    Mauvaise idée: Voir ici où il est écrit explicitement:
    Bien que la possibilité existe, nous ne sommes pas du tout favorables à l'insertion d'images personnelles hébergées sur des serveurs extérieurs
    J'ai dégradé le lien donné par DervishSatori.
    Merci d'en tenir compte la prochaine fois.


    Pour la modération.
    Là où l'ignorance est un bienfait, c'est de la folie d'être sage (Thomas Gray).

  7. #6
    fiatlux

    Re : matlab, image gif inversée à l'affichage

    Désolé
    La pie niche-t-elle haut ? Oui, la pie niche haut.

  8. #7
    DervishSatori

    Re : matlab, image gif inversée à l'affichage

    Merci pour tes explications fiatlux.
    Et désolé modo, je le referais plus.

    Bonne journée

Discussions similaires

  1. Image Skype webcam inversée sous Ubuntu
    Par jeantou dans le forum Matériel - Hardware
    Réponses: 2
    Dernier message: 12/09/2010, 12h30
  2. Matlab image segmentation
    Par invite3d51c4a1 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 06/04/2009, 05h08
  3. Jumelle, image inversée.
    Par invitedcd45209 dans le forum Physique
    Réponses: 0
    Dernier message: 15/08/2007, 12h45
  4. histogramme image matlab
    Par invitee98002ab dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 12/07/2007, 13h49
  5. image et matlab
    Par inviteb5529bee dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 18/03/2005, 08h39
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...