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

Python Discussion :

Python_Comparer deux images raster (.tif)


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut Python_Comparer deux images raster (.tif)
    Bonsoir les amis j'ai un problème que voici :
    je voudrais comparer deux images raster (.tif) afin de déterminer laquelle des deux est la plus grande avec python.
    Pour cela, j'ai pensé déterminer la longueur et la largeur de chaque image."corrigez moi si ce n'est pas la bonne approche"
    A ce niveau étend un débutant en python je ne sais pas comment trouver les longueurs et largeurs des images sans utiliser le module" PIL"

    Je voudrais pouvoir n'utiliser que des modules ou bibliothèques installé par défaut avec python 2.7
    Dans l'attente de vos réponses et recommandation je vous remercie.
    Cordialement

  2. #2
    Membre averti Avatar de nekcorp
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 592
    Points : 383
    Points
    383
    Par défaut
    Salut,

    afin de déterminer laquelle des deux est la plus grande avec python.
    Qu'entends tu par laquelle des deux est la plus grande ? Est ce que c'est les dimensions de l'image (ce qui serait en accord avec la suite de ton message) ou alors son poids en octet ?

    Ensuite je n'ai jamais vue de traitements d'images sans utiliser une bibliothèque tierce.

    Souvent si des bibliothèques tierces existent c'est que de base les bibliothèques de Python ne permettent de traiter certaines fonctions ou alors de manière très succincte.

    Donc sans utiliser PIL je ne vois pas comment faire simplement.

    Pourquoi tu ne veux pas utiliser PIL ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Salut nekcorp
    je m'interesse à la taille de l'image.
    En fait à l'origine j'ai pensé pouvoir n'utiliser que des modules téléchargé par défaut dans le soucis de permettre à l'utilisateur de mon mini programme de l'utiliser sans une contrainte "supplémentaire"(téléchargement de modules ou bibliothèque).

    Puisque cela semble pas possible pourrait tu me donner quelques pistes pour y arriver avec le module PIL.
    merci d'avance

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par midochel Voir le message
    Puisque cela semble pas possible pourrait tu me donner quelques pistes pour y arriver avec le module PIL.
    olà, voilà qui est fort compliqué:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    from PIL import Image
     
    with Image.open(filename) as im:
        width, height = im.size
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Merci je vais l'essayer de suite puis je reviens

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Je viens de l'essayer mais j'ai le message d'erreur que voici:
    with Image.open(filename) as im:
    File "C:\PROGRA~1\QGISES~1\apps\Python27\lib\site-packages\PIL\Image.py", line 1980, in open
    raise IOError("cannot identify image file")
    IOError: cannot identify image file

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par midochel Voir le message
    Je viens de l'essayer mais j'ai le message d'erreur que voici:
    with Image.open(filename) as im:
    File "C:\PROGRA~1\QGISES~1\apps\Python27\lib\site-packages\PIL\Image.py", line 1980, in open
    raise IOError("cannot identify image file")
    IOError: cannot identify image file
    PIL détermine le type d'une Image à partir des informations contenues dans l'en-tête du fichier.
    Le message d'erreur dit seulement que votre fichier "image" n'est pas reconnu/supporté par PIL.
    Probable que votre fichier soit corrompu.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Ok précédemment j'utilisais une image découpée .
    j'ai donc changé l'image et prise une autre et voici ce que j'ai :
    Traceback (most recent call last):
    File "<input>", line 1, in <module>
    File "C:\PROGRA~1\QGISES~1\apps\Python27\lib\site-packages\PIL\Image.py", line 1952, in open
    fp = __builtin__.open(fp, "rb")
    IOError: [Errno 2] No such file or directory: 'D:/rep/IMG_SPOT6_MS_001_A.tif'
    pourtant j'ai d'abord définir le repertoire de travail en faisant :
    os.chdir('D:/rep')

  9. #9
    Membre averti Avatar de nekcorp
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 592
    Points : 383
    Points
    383
    Par défaut
    Citation Envoyé par midochel Voir le message
    Ok précédemment j'utilisais une image découpée .
    j'ai donc changé l'image et prise une autre et voici ce que j'ai :
    Traceback (most recent call last):
    File "<input>", line 1, in <module>
    File "C:\PROGRA~1\QGISES~1\apps\Python27\lib\site-packages\PIL\Image.py", line 1952, in open
    fp = __builtin__.open(fp, "rb")
    IOError: [Errno 2] No such file or directory: 'D:/rep/IMG_SPOT6_MS_001_A.tif'
    pourtant j'ai d'abord définir le repertoire de travail en faisant :
    os.chdir('D:/rep')
    Peux tu mettre ton code en entier ?

    Merci

  10. #10
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par midochel Voir le message
    Ok précédemment j'utilisais une image découpée .
    j'ai donc changé l'image et prise une autre et voici ce que j'ai :
    Traceback (most recent call last):
    File "<input>", line 1, in <module>
    File "C:\PROGRA~1\QGISES~1\apps\Python27\lib\site-packages\PIL\Image.py", line 1952, in open
    fp = __builtin__.open(fp, "rb")
    IOError: [Errno 2] No such file or directory: 'D:/rep/IMG_SPOT6_MS_001_A.tif'
    pourtant j'ai d'abord définir le repertoire de travail en faisant :
    os.chdir('D:/rep')
    Si vous donnez un nom complet pour accéder au fichier (c'est le message d'erreur qui indique cela), .chdir ne changera rien: il n'y a pas de fichier de ce nom là.


    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  11. #11
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Si vous donnez un nom complet pour accéder au fichier (c'est le message d'erreur qui indique cela), .chdir ne changera rien: il n'y a pas de fichier de ce nom là.


    - W
    Justement j'ai bien mis le fichier dans le répertoire et plus encore j'ai copié le chemin entier du fichier dans la variable "filename"

  12. #12
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par midochel Voir le message
    Justement j'ai bien mis le fichier dans le répertoire et plus encore j'ai copié le chemin entier du fichier dans la variable "filename"
    Essayez de raconter çà à votre ordinateur...
    Il se contentera de répéter "No such file or directory".

    Vous pouvez lui demander autrement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> filename = 'D:/rep/IMG_SPOT6_MS_001_A.tif'
    >>> import os
    >>> os.path.exists(filename)
    où lister les noms de fichiers dans D:/rep, via:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    >>> os.listdir('D:/rep')
    et tester:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    >>> 'IMG_SPOT6_MS_001_A.tif' in os.listdir('D:/rep')
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  13. #13
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Merci pour tes réponses, je crois que mes images n'arrivent à etre lu par PIL.
    Car voici le message d'erreur que j'ai actuellement
    Traceback (most recent call last):
    File "<input>", line 1, in <module>
    File "C:\PROGRA~1\QGISES~1\apps\Python27\lib\site-packages\PIL\Image.py", line 1980, in open
    raise IOError("cannot identify image file")
    IOError: cannot identify image file

  14. #14
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2016
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Finalement j'ai trouvé un moyen de récupérer déjà le Xmin, Xmax, Ymax et le Ymin d'une image
    http://www.forumsig.org/archive/index.php/t-40443.html

  15. #15
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par midochel Voir le message
    Finalement j'ai trouvé un moyen de récupérer déjà le Xmin, Xmax, Ymax et le Ymin d'une image
    http://www.forumsig.org/archive/index.php/t-40443.html
    Cà veut juste dire que vos fichiers sont au format geoTiff et non Tiff et que votre version de PIL ne supporte pas encore cette variante du format Tiff.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

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

Discussions similaires

  1. [ImageMagick] Générer deux images à partir du même script
    Par molesqualeux dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 07/01/2006, 01h42
  2. [PIL] Difference entre deux images
    Par t_om84 dans le forum Calcul scientifique
    Réponses: 4
    Dernier message: 26/12/2005, 12h45
  3. conversion d une image jpg,tif en image bmp
    Par b.yassine dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 21/12/2005, 11h53
  4. superposer deux images ?
    Par terminoz dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 20/08/2005, 09h04
  5. Réponses: 10
    Dernier message: 30/06/2005, 12h20

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