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

MATLAB Discussion :

[imread] Lire plusieurs images


Sujet :

MATLAB

  1. #1
    Invité
    Invité(e)
    Par défaut [imread] Lire plusieurs images
    Bonjour à tous,
    actuellement je lis une photo en format .tiff avec la fonction imread().
    Je doits lire plusieurs photos du même format je voulais donc savoir si j'étais obligé d'utiliser la fonction imread() à chaque fois ou si je pouvais passer en paramètre de la fonction tous les fichiers à lire?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    D=imread('D:\Documents and Settings\denicod\Desktop\Etude thrift-tif\Affichage multilayer-extraction .TIFF\Resultats\ImageVIS.tif');
    Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour la réponse Dut
    Si je veux maintenant récupérer toutes les métadonnées comprises dans chaque fichier .tiff que je viens de lire,je peux donc utiliser la même méthode OU toutes mes infos se trouvent dans la variable img?

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Il suffit d'utiliser imfinfo et de construire un tableau de structures :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    d = dir('*.tiff');
     
    for n = 1:numel(d)
        infos(n) = imfinfo(d(n).name);
    end
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  5. #5
    Invité
    Invité(e)
    Par défaut
    Le problème c'est que lorsque je veux afficher le contenu de infos(n) en faisant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    d = dir('*.tiff');
    for n = 1:numel(d)
        infos(n) = imfinfo(d(n).name);
        disp(infos(n))
    end
    Rien ne ce passe
    De même avec le imread() précèdent.Lorsque je veux afficher l'intégralité des images tiff j'utilise la fonction imagesc() mais même problème.

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Le chemin doit bien entendu être correct, vérifie que la variable d n'est pas vide.

    Par contre, évite de mettre des espace et des caractère spéciaux (comme le ".") dans le nom des dossiers :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    D:\Documents and Settings\denicod\Desktop\Etude thrift-tif\Affichage multilayer-extraction .TIFF\Resultats\
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bon j'avoue ne pas trop comprendre le problème...
    J'ai bien changé le nom de mon chemin en enlevant les caractères spéciaux et les espaces.
    Dans mes variables j'ai bien d qui est une structure.
    Du coup j'ai tenté ce code mais toujours le même problème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    %% Extraction des métadonnées.
     
    rep = 'D:\Documents and Settings\denicod\Desktop\Etude-thrift-tif\Affichage multilayer-extraction .TIFF\Resultats\';
    ext = '*.tiff';
    chemin = fullfile(rep,ext);
     
    d = dir(chemin);
    for n = 1:numel(d)
        infos(n) = imfinfo(d(n).name);
        disp(infos(n));
     
    end

  8. #8
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    infos(n) = imfinfo(fullfile(rep, d(n).name));
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  9. #9
    Invité
    Invité(e)
    Par défaut
    Je vais finir par abandonner
    J'ai donc tenté ton code de cette manière:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    %% Extraction des métadonnées.
    
    rep = 'D:\Documents and Settings\denicod\Desktop\Etude thrift-tif\Affichage-multilayer-extraction-TIFF\Resultats\';
    ext = '*.tiff';
    chemin = fullfile(rep,ext);
    
    d = dir(chemin);
    
    for n = 1:numel(d)
        %infos(n)=imfinfo(d(n).name);
        infos(n) = imfinfo(fullfile(rep, d(n).name));
        disp(infos(n));
        
    end
    Mais toujours pareil....

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 230
    Points : 352
    Points
    352
    Par défaut
    Dans la structure de d, est-ce que tu obtiens bien des valeurs pour les différents champs ?

    Si oui, est-ce que les premiers noms de fichiers ne seraient pas "." et ".." ?
    Je ne réponds pas aux questions techniques via MP. Le but du forum est de permettre de trouver des solutions ensembles pour aider un ensemble de personnes.

    Loi du Chaos Informatique
    L’informatique, ça tient du chaos : une fois ça marche, une fois ça foire, tu sais pas pourquoi, c’est juste que tu viens de changer de lobe sur l’attracteur étrange.

  11. #11
    Invité
    Invité(e)
    Par défaut
    C'est bon j'ai trouvé
    Alors si je mets ext='*.tiff' ça remplit ma variable mais ça ne fonctionne pas par contre si je mets ext='*.tif' sa me remplit la variable et ça marche
    En tout cas merci pour vos réponses et votre temps.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment lire plusieurs images a la fois
    Par usthb23 dans le forum Images
    Réponses: 9
    Dernier message: 05/04/2022, 00h56
  2. lire plusieurs images à partir de SQL SERVER
    Par regisyves dans le forum ASP.NET
    Réponses: 9
    Dernier message: 11/03/2013, 21h41
  3. lire plusieurs images à partir de SQL SERVER
    Par regisyves dans le forum ASP.NET
    Réponses: 1
    Dernier message: 11/03/2013, 09h41
  4. lire une image JPG avec imread
    Par wahidred dans le forum Images
    Réponses: 7
    Dernier message: 20/10/2011, 10h07
  5. [imread] Accéder à plusieurs images
    Par hello05 dans le forum Images
    Réponses: 5
    Dernier message: 12/06/2011, 12h06

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