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 :

OpenCV 4 argparse


Sujet :

Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Débutant
    Inscrit en
    Mars 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2020
    Messages : 3
    Par défaut OpenCV 4 argparse
    bonjour,

    j'apprend OpenCV4 à travers le livre "OpenCV4 with Python"

    il utilise argparse pour le passage d'information en ligne de commande.

    quand je tape le code suivant :

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    # -*- coding: utf-8 -*-
    #------ version ---------
    #
    # opencv-python 4.1.2.30
    # numpy1.18.1
    #
    #------------------------
     
    import argparse
    import cv2 as cv
     
    parser=argparse.ArgumentParser()
     
    # nous ajoutons le chemin image comme paramètre en utilisant add_argument() incluant un help.
    #le type du paramètre est une chaine de caractère par défaut
     
    parser.add_argument("D:\PYTHON\7-OPENCV\00 - livre Opencv 4\programmes\images\women.jpg", help="chemin de l'image qui doit être affichée")
     
    # les informations des paramètres du code sont enregistrées dans parser
    # alors, il seront utilisée quand il sont appelée par la fonction parse_args()
     
    args=parser.parse_args()
     
    #nous pouvons maintenant charger l'image
     
    image=cv.imread(args["path_image"])
     
    #les arguments de parse sont enregistrée dans un dictionnaire
    args=vars(parser.parse_args())
    # maintenant nous pouvons aussi charger l'image a partir du disque dur en utilisant args
     
    image2= cv.imread(args["path_image()"])
     
    #nous pouvons afficher l'image
    cv.imshow("image chargé", image)
    cv.imshow("image2 chargé", image2)
     
    # nous attendons une qu'une touche soit pressé
    cv.waitKey(0)
     
    # destruction de toutes les fenêtres
    cv.destroyAllWindows()

    rien ne se passe. j'ai joint aussi le fichier.

    python se trouve :D:\PYTHON\VersionInstalle\V3.8.1

    mes programmes :D:\PYTHON\7-OPENCV\00 - livre Opencv 4\programmes

    mes photos : D:\PYTHON\7-OPENCV\00 - livre Opencv 4\programmes\images

    toutes les librairies que l'on a besoin sont présente.

    je n'ai pas créer d'environnement de développement



    pouvez vous m'aider à comprendre pourquoi cela ne marche pas.

    merci de votre aide.
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut,

    Cet argument "D:\PYTHON\7-OPENCV\00 - livre Opencv 4\programmes\images\women.jpg" tu dois le joindre à ta ligne de commande, pas l'écrire dans le code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    python3 monapp.py monimage
    On se demande pourquoi il y a des répétitions dans ton code ex: args=parser.parse_args()

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Débutant
    Inscrit en
    Mars 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2020
    Messages : 3
    Par défaut solution à tester
    merci de ta réponse.
    ce code est issu du livre. je débute dans ce domaine et je ne maîtrise pas tous, comme tu as pu le remarquer.

    je vais tester ta réponse et je te tiens au courant.

    si tu as un code plus simple, je suis preneur.

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Simple ? Ouais,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    import sys
    import os
    import cv2 as cv
     
    if __name__ == "__main__":
        if len(sys.argv) > 1:
            path = sys.argv[1]
            if os.path.isfile(path):
                image = cv.imread(path)
                cv.imshow("Exemple", image)
                cv.waitKey(0)
                cv.destroyAllWindows()
    À mon avis il doit y avoir des arguments à imshow pour la taille de l'image parce que là il affiche à 100 %. Mon écran a fait un bond !

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Débutant
    Inscrit en
    Mars 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2020
    Messages : 3
    Par défaut apargparse edupython
    merci,

    effectivement il y avait des attributs pour la taille de l'image.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/06/2016, 07h36
  2. Gestion images opencv python par mémoire partagée
    Par Tchef dans le forum Bibliothèques tierces
    Réponses: 0
    Dernier message: 12/08/2009, 15h12
  3. [Python+OpenCv] Lecture Vidéo
    Par vinzrr dans le forum Programmation multimédia/Jeux
    Réponses: 2
    Dernier message: 28/11/2008, 08h54
  4. OpenCV et Python 2.4
    Par avironman dans le forum Général Python
    Réponses: 11
    Dernier message: 31/07/2008, 12h06
  5. Installation d'OpenCV pour Python
    Par xenosender dans le forum OpenCV
    Réponses: 0
    Dernier message: 20/11/2007, 23h16

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