2017-08-29 5 views
0

Eine ähnliche Frage zu meinen existiert, aber es beantwortet meine Frage nicht. HierPython + opencv mit PyCharm- 'opencv' hat kein Attribut 'imread'

ist das, was ich arbeite mit:.

Python v 3.6.2
opencv 1.0.1
PyCharm Community Edition 2017 .2.2
macOS Sierra Version 10.12.6

Ich versuche, imread für die Bildverarbeitung zu verwenden. Ich habe mir die Dokumentation angeschaut und verwende die Funktion korrekt. Hier ist der Testcode, der mit der opencv Bibliothek kommt:

import opencv 
img = cv.imread('background.png') 
if img is None: 
    print("Image not loaded!") 
else: 
    print("Image is loaded!") 

Ich kann meine Python-Dateien und und Module im Projekt-Explorer sehen. Wenn ich den Code ausführen, bekomme ich folgende Fehlermeldung:

/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6/Users/LMC/Desktop/pywerk/opencvpractice Traceback (jüngste Aufforderung last): Datei "/ Benutzer/LMC/Desktop/pywerk/opencvpractice", Zeile 4, in img = cv.imread ('background.png') Attribute: module 'opencv' hat kein Attribut 'imread'

Ich habe alles aus der Neuinstallation von Python und dem Opencv-Modul zum Umschalten von Python-Versionen auf 2.7 versucht (und mit dem entsprechenden Opencv-Modul) und ich bekomme den gleichen Fehler.

Gibt es eine Art von Systemkonfiguration, die ich vermissen könnte? Jede Hilfe würde sehr geschätzt werden.

+3

Gibt es einen besonderen Grund, warum Sie das veraltete OpenCV 1.x anstelle von OpenCV 2.x oder 3.x mit dem 'cv2' Modul verwenden? Das 'cv2'-Modul verwendet ein' numpy'-Backend zum Speichern von Bildern, so dass es für die Arbeit mit den Daten weit überlegen ist.Wie auch immer, die Antwort unten sollte dich reparieren; Sie importieren 'opencv' noch mit dem Namespace' cv', den Sie nicht definiert haben. –

+1

OpenCV ** 1.0.1 **? [Keine solche Version wurde veröffentlicht] (http://code.opencv.org/projects/opencv/wiki/ChangeLog_v10-v21#10), aber selbst wenn es so wäre, würde Python 3.0 um etwa 2 Jahre älter sein. Scheint so etwas Unsinn ... vielleicht [dieses bisschen Müll] (https://pypi.python.org/pypi/opencv/1.0.1) im Paket-Index. –

Antwort

1

Es stellte sich heraus, dass es eine Kombination aus mehreren von diesen war Vorschläge; Wenn ich Alexander Reynolds die Antwort geben könnte, wäre das am genauesten. Ich folgte einem veralteten Tutorial und endete mit einer veralteten Version von opencv. Ich heruntergeladen opencv die Anweisungen unter Verwendung von hier, für alle anderen, die für die genauen Befehle sucht:

https://pypi.python.org/pypi/opencv-python/3.1.0.3

Hier ist, was ich am Ende mit:

import cv2 

img = cv2.imread('background.png') 
if img is None: 
    print("Image not loaded!") 
else: 
    print("Image is loaded!") 
für die Hilfe

Dank!

1

vielleicht sollten Sie versuchen mit opencv.imread?

import opencv 
img = opencv.imread('background.png') 
if img is None: 
    print("Image not loaded!") 
else: 
    print("Image is loaded!") 

oder alternativ import opencv as cv:

import opencv as cv 
img = cv.imread('background.png') 
if img is None: 
    print("Image not loaded!") 
else: 
    print("Image is loaded!") 
1

Für OpenCV, sollte sie als

import cv 

oder import cv2 importiert werden (Wenn Sie opencv V2.x ändern möchten oder 3. x)

Verwandte Themen