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

Contribuez Python Discussion :

[Tutoriel] Proposition de tutoriel Traitement d'images sur la base de numarray/pil [Fait]


Sujet :

Contribuez Python

  1. #1
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut [Tutoriel] Proposition de tutoriel Traitement d'images sur la base de numpy/pil
    Bon voila j'ai pas mal galeré avec numarray pour faire un peu de traitement d'image...

    Des erreurs betes ,solutionné grace a _GIUGIU en general!

    Voila Je me propose donc a faire un petit tutoriel Python pour faire du traitement d'image de base en python a l'aide de numarray et PIL.

    Voila!
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  2. #2
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    C'est une très bonne idée.
    Par contre le traitement d'images, c'est assez vaste. Donc il faudra bien définir au départ l'objectif que ca ne parte pas dans tous les sens.

    Par contre, je ne sais pas si une base sur numarray est judicieuse comme la bibliothèque est en phase terminale et plutôt préférer NumPy (par contre, la documentation est moins complète que pour numarray ( http://www.tramy.us/scipybooksample.pdf et http://numeric.scipy.org/numpydoc/numdoc.htm )

    http://numeric.scipy.org/
    Numarray is another implementation of an arrayobject for Python written after Numeric and before NumPy. Sponsors of numarray have indicated they will be moving to NumPy as soon as is feasible for them so that eventually numarray will be phased out.
    En tout cas, si à un moment ou un autre tu as besoin d'aide ou de conseils, je devrais être en mesure de pouvoir en apporter.

  3. #3
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    OK je vais essayer de me mettre a Numpy. je l'ai telechargé et jai telecharger la doc officielle.

    Pour le traitement d'image je voulais juste, a l'aide de la PIL, ouvrir une image, calculer l'image apres moyennage , une binarisation, une dilatation, erosion,et detection de contour.

    Faut que je voie si le module morphology existe toujour avec numpy... Sinon ca sera a refaire.!

    En revanche je ne peux pas me prononcer sur la date de publication ...J'espere que vous ne m'en voudrais pas!
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  4. #4
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Y'a aucune obligation au niveau de la date (mieux vaut un truc propre et qui prend un peu plus de temps qui truc fait rapidement et qui est finalement inutilisable).
    Normalement dans numpy, on doit tout retrouver ce qu'on peut faire dans numarray (bon, je dis ça, je n'ai jamais touché à numpy )

    Sinon, avec Pil, on doit pouvoir faire du traitement d'images simples (genre tout ce qui est érosion, dilatation, ... ( http://www.pythonware.com/library/pi...magefilter.htm )
    Après tout dépend aussi de la structure de son objet image (si il est basé sur une image Pil ou sur un tableau Numpy/numarray).

    Il peut aussi être intéressant de présenter la construction complète d'un algo (parce que parfois les fonctions fournies dans ces bibliothèques ne sont pas très claires (notamment au niveau des effets de bord)).

    Voilà, ce sont simplement quelques réflexions.
    Mais au final, ce sera à toi de jouer

  5. #5
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    J'ai commencer a lire la doc ... et en fait c'est plus une mise a jour de numeric que de numarray en effet ils ont renommer les modules qui étaient utilisés dans numeric pour la plus part . CF page 15 du PDF donné ci dessus!
    Je vais essayer de bien d'ecortiqué tout ca et essayer de faire quelque chose de propre.


    Pour ce qui est de la PIL ... j'aimerai savoir au niveau temps de calcul parce qu'avec numarray j'etais impressionné, comme je bosse a la base sur des image plus ou moins médicale...
    parcque je pense qu'il serait peut etre plus interessant de refaire une class ou l'on refait tout les traitement primaire.

    Mais la ca devient un projet personnel!

    Le fait de travailler sur des matrices comme avec numpy, peut etre interessant.... ca pourrait peut etre permettre de faire un cours de morphologie mathématique avec des exemples dans les applications.

    Tu vois presenter la chose un peu comme ca:

    Version theorie avec les formules ensemblistes...
    Version programmation car il n'est pas toujour simple de mettre les formule en forme.




    DERNIERE CHOSE! J'edite le document sous quel format ? PDF? format .txt .doc??? si j'ai le temps je pourrais faire une version HTML! mais la c'est THE CHERRY ON THE CAKE!!!
    Bonne continuation
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  6. #6
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Citation Envoyé par parp1
    DERNIERE CHOSE! J'edite le document sous quel format ? PDF? format .txt .doc??? si j'ai le temps je pourrais faire une version HTML! mais la c'est THE CHERRY ON THE CAKE!!!
    Bonne continuation
    En général, les articles sont générés dans un document xml (on a un éditeur qui nous aide bien) et mis au gabarit automatiquement. Pour cela, je peux de te donner les droits d'accès pour récupérer les outils de mise aux gabarits des articles.
    Il suffit que par MP tu me donnes un nom de domaine (genre pseudo.developpez.com ou nom.developpez.com ou prenomnom.developpez.com, ...) où tu pourras uploadé tes contributions et une adresse email valide pour que l'on t'envoie tes codes d'accès.
    Plus tôt tu les auras plus rapidement tu pourras te familiariser avec ces outils. Exemples :

    Tutoriels et cours de formation Python : http://python.developpez.com/cours/
    Livre Python : Apprendre à programmer avec Python 3 par Gérard Swinnen http://python.developpez.com/cours/apprendre-python3/

  7. #7
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    Salut, Euh pour le nom de dommaine. Je n'en est pas. Si je t'envoi truc.developpez.com c'est toi qui le crée? Si c'est le cas je tenverrai le nom de dommaine. et une @ mail .
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  8. #8
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Citation Envoyé par parp1
    Salut, Euh pour le nom de dommaine. Je n'en est pas. Si je t'envoi truc.developpez.com c'est toi qui le crée? Si c'est le cas je tenverrai le nom de dommaine. et une @ mail .
    c'est ça (enfin, ce sont plutôt les administrateurs qui se chargeront de le créer)

  9. #9
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    Salut _GUIGUI.

    Bon j'ai pas mal avancer dans l'art de publier des articles... ca reste tres modeste. Tu peux aller voir juste sur ma page perso

    Pour ce qui est de la correction... est ce que je te donne ca toi direct vu que tu es le responsable PYTHON .... ou je met ca ds le forum hebergement.?? MERCI
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  10. #10
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    S'il s'agit de question sur le gabarit ou correction orthographique, il vaut mieux utiliser le forum hébergement (parce que je suis loin d'être un expert sur ce sujet).
    Si ce sont des questions relativement à la rédaction de l'article sur Python, tu peux les poser ici (surtout que je ne visite rarement le forum hébergement).

    En tout cas, je vois déjà que tu maîtrises les bases de la rédaction d'articles .

  11. #11
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Ca en est où, cette idée de tuto ? Ca m'aurait intéressé

  12. #12
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    Bah ecoute il est terminé. mais le probleme j'ai pas trop le temps de le mettre en forme je peux te file l'adresse si tuveux.

    http://francoislouislaillier.develop...tutoriel/TUTO1

    Deplus je programme peu en pyhon ces dernier temps cause des études. Dslé
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  13. #13
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Merci pour le renseignement

  14. #14
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    Voila c'est fait !

    Je vous met le lien.

    J'ai pris le temps d'ajouter ton code _GUIGUI.

    http://francoislouislaillier.develop...onNumpy/Tuto1/

    Au fait ou pourra t on voire l'acces a ce tutoriel?
    Dans la section tuto python?

    Merci encore a toi _GUIGUI
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  15. #15
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Si mes souvenirs sont bons, dans PIL, on peut utiliser un asarray pour transformer une image en numpy.array...

  16. #16
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Citation Envoyé par Miles
    Si mes souvenirs sont bons, dans PIL, on peut utiliser un asarray pour transformer une image en numpy.array...
    Le tableau retourné est en read-only aussi

    Je préfère la méthode traditionnelle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import Image, numpy
    im = Image.open("Python.jpg") 
    data = numpy.array(list(im.getdata()))
    data.shape = (im.size[1], im.size[0]) ## si nécessaire

  17. #17
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par Guigui_
    Le tableau retourné est en read-only aussi

    Je préfère la méthode traditionnelle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import Image, numpy
    im = Image.open("Python.jpg") 
    data = numpy.array(list(im.getdata()))
    data.shape = (im.size[1], im.size[0]) ## si nécessaire
    Ca dépend des occasions, si on peut utiliser un simple tableau en read-only - par exemple si on fait un filtre médian, ou même ici pour faire dilatation ou erosion -, ça évite une recopie tout de même. Je ne considère pas cela comme de l'optimisation outrancière.
    De toute manière, si le PEP sur numpy passe, PIL pourra utiliser nativement les arrays de numpy, donc ça devrait être encore plus transparent

  18. #18
    Membre émérite
    Avatar de parp1
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    829
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 829
    Par défaut
    Qu'est ce que je fait? Je mets en resolut....? Ou j'applique la modification??
    [SIZE="2"]Dis moi qui tu suis, je te dirais qui je Hais!
    Heureux est l'étudiant, qui comme la rivière suit son cours sans sortir de son lit

    Mon premier Tutoriel


    A 80% des cas je résouts mon problème en rédigeant une nouvelle discussion, du coup je ne poste que 20% de mes problèmes...

  19. #19
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Citation Envoyé par parp1
    Qu'est ce que je fait? Je mets en resolut....? Ou j'applique la modification??
    Le mieux est de le finaliser comme il est. Tu pourras toujours le modifier ultérieurement si tu vois qu'il y a des améliorations à faire.

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

Discussions similaires

  1. traitement d'image sur matlab
    Par zinette dans le forum Images
    Réponses: 1
    Dernier message: 25/03/2010, 20h30
  2. Traitement d'image sur des chéques
    Par Thomsafe dans le forum Traitement d'images
    Réponses: 9
    Dernier message: 14/01/2008, 12h52
  3. Réponses: 9
    Dernier message: 02/12/2007, 02h54
  4. Traitements d'image sur PNG avec transparence
    Par Ingham dans le forum Langage
    Réponses: 16
    Dernier message: 02/08/2004, 16h42

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