終於解決了python 3.x import cv2 “ImportError: DLL load failed: 找不到指定的模塊” 及“pycharm關於cv2沒有代碼提示”的問題
在網上找了很多資源,基本前篇一律。下載對應版本opencv python 。然后出問題,給的解決方法就是要安裝下面:
這個東西我重裝了好幾篇。而且也確定該裝的
也是裝了的。
但是還是報錯。然后作為python新人的我,就又一次發揮了愚公精神。憑着以往的經驗,終於“湊”到了一種解決方法。
安裝完opencv_python,之后在python 3.x.x—Lib—site-packages里應該有很多opencv開頭,然后dll結尾的文件。這個時候我們只需要一步操作就行了。
那就是將這些文檔全部放在一個cv2的文件夾下面。 最后將這個cv2文件夾放在Lib目錄下面。一定要注意是lib目錄。如果放在site-packages還是會報錯的。
總之概況為一句話,把安裝到site-packages目錄下cv2目錄移動到Lib目錄下就行!
這樣Tracker的代碼跑起來了,很開心,但是發現pycharm關於cv2沒有代碼提示,這不能忍啊!,最后在Lib\cv2這個目錄,找到__init__.py,修改如下:
import sys import os import importlib os.environ["PATH"] += os.pathsep + os.path.dirname(os.path.realpath(__file__)) from .cv2 import * from .data import * # wildcard import above does not import "private" variables like __version__ # this makes them available globals().update(importlib.import_module('cv2.cv2').__dict__)
之后,測試代碼自動提示,成功

以下為通過opencv+python3.x捕捉usb攝像頭演示例子
#導入opencv模塊 import cv2 if __name__ == '__main__': # 捕捉幀,筆記本攝像頭設置為0即可 capture = cv2.VideoCapture(0) # 循環顯示幀 while (True): ret, frame = capture.read() # 顯示窗口第一個參數是窗口名,第二個參數是內容 cv2.imshow('frame', frame) if cv2.waitKey(1) == ord('q'): # 按Q退出 break

