2 votes

Pyzbar manque-t-il vraiment d'un attribut de module qui existe réellement?

Gagner 10 x64, Python 2.7, IDE Spyder

Je utilise un peu de code du blog OpenCV d'Adrian Rosebrock...

import pyzbar
import cv2

# charger l'image d'entrée
image = cv2.imread("exemple_code-barres.png")

# trouver les codes barres dans l'image et décoder chacun des codes barres
barcodes = pyzbar.pyzbar.decode(image)

# boucler sur les codes barres détectés
for barcode in barcodes:
    # extraire l'emplacement de la boîte englobante du code-barres et dessiner la
    # boîte englobante entourant le code-barres sur l'image
    (x, y, w, h) = barcode.rect
    cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 2)

    # les données du code-barres sont un objet bytes, donc si nous voulons le dessiner sur
    # notre image de sortie nous devons d'abord le convertir en chaîne
    barcodeData = barcode.data.decode("utf-8")
    barcodeType = barcode.type

    # dessiner les données du code-barres et le type de code-barres sur l'image
    text = "{} ({})".format(barcodeData, barcodeType)
    cv2.putText(image, text, (x, y - 10), cv2.FONT_HERSHEY_SIMPLEX,
        0.5, (0, 0, 255), 2)

# afficher l'image de sortie
cv2.imshow("Image", image)
cv2.waitKey(0)

Je continue de recevoir l'erreur suivante...

AttributeError: 'module' object has no attribute 'pyzbar'

Pourtant, quand je vérifie le module dans Spyder, il possède en effet cet attribut...

description de l'image

J'ai essayé de lancer à partir de la ligne de commande avec le même résultat.

J'ai également vérifié si mon installation de zbar fonctionne et c'est le cas sans problèmes

description de l'image

S'agit-il d'un problème avec les liaisons Python ou quelque chose de vraiment évident ?

1voto

Buck Stuck Points 29

Essayer :

import pyzbar.pyzbar as pyzbar

Fonctionne pour moi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X