1
Я Matplotlib Lib, установленный с помощью пип, но когда я запускаю этот код дает мне эту ошибку:Matplotlib: ImportError: не может импортировать имя 'pyplot'
[email protected] ~ $ python3 opencv.py
Traceback (most recent call last):
File "opencv.py", line 3, in <module>
from matplotlib import pyplot as plt
ImportError: cannot import name 'pyplot'
Мой код:
import numpy as np
import cv2
from matplotlib import pyplot as plt
img1 = cv2.imread('/home/shar/home.jpg',0) # queryImage
img2 = cv2.imread('/home/shar/home2.jpg',0) # trainImage
# Initiate SIFT detector
orb = cv2.ORB()
# find the keypoints and descriptors with SIFT
kp1, des1 = orb.detectAndCompute(img1,None)
kp2, des2 = orb.detectAndCompute(img2,None)
# create BFMatcher object
bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)
# Match descriptors.
matches = bf.match(des1,des2)
# Sort them in the order of their distance.
matches = sorted(matches, key = lambda x:x.distance)
# Draw first 10 matches.
img3 = cv2.drawMatches(img1,kp1,img2,kp2,matches[:10], flags=2)
plt.imshow(img3),plt.show()
Я также попытался установить matplotlib из источника, и это все еще дает мне ошибку.
Какую команду вы использовали для его установки, как с пипсом, так и из источника? Вы запускаете программу с помощью 'python3', возможно ли, что вы установили ее для python 2? Опубликуйте вывод 'pip -version', чтобы узнать, какую версию python он использует. –
Вы пытались сменить свой код на 'import matplotlib.pyplot as plt'? Я думаю, вы, вероятно, разработали этот код на Python 2 и теперь пытаетесь запустить его на Python 3, где [неявный относительный импорт не будет работать.] (Http://stackoverflow.com/questions/12172791/changes-in-import- statement-python3) –
Почему вы назвали свой скрипт 'opencv.py'? У вас тоже есть «matplotlib.py»? Что делает 'import matplotlib; print (matplotlib .__ file __) 'произвести? –