安裝opencv后,運行一個測試程序提示"from .cv2 import *: DLL load failed: 找不到指定的模塊"。于是百度一下解決辦法,結果試了N多方法后也沒能解決這個問題。
最后不得不耐心的下載了dependency walker來查看opencv到底是缺少了哪個dll文件。(dependency walker這個軟件還是很有用的,如果試了好多方法沒有解決安裝問題,可以下載下來試試。運行后,單擊 file->open->"D:\python32\Lib\site-packages\cv2\cv2.cp36-win32.pyd",載入這個文件后,就可以看到到底是缺少哪個dll文件了)我的提示如下圖:
于是我下載了:API-MS-WIN-DOWNLEVEL-SHLWAPI-L1-1-0.DLL這個文件。解壓開后有兩個版本的dll文件。 一個是win7版本,一個是win8版本的。因為我的系統是32位的,我就將32位的dll文件拷貝至D:\python32\Lib\site-packages\cv2\ 文件夾下。結果又提示:DLL load failed: %1 不是有效的 Win32 應用程序。
(該dll文件也可放在window/system32/ 下面,然后注冊一下)
看到這個信息時,覺得真的有些徹底希望了。python都重新安裝了,opencv也試了幾個版本。心想在win7難以實現opencv的安裝了,是不是也像有的朋友介紹的那樣,把系統升級到win10或32位重裝成64位。
最后心想dll文件版本不對,就試試win7的64位dll文件吧,死馬當作活馬醫。沒想到將64位的拷貝過去后,在運行測試程序,順利通過。
(雖然沒有查找到具體的解決辦法,但是搜到的一些解決方法還是給了我一些提示,讓我最終能順利的跨過這些坑)
最后就以測試運行成功加載圖片的結果作為結尾吧!祝查找實現opencv安裝方法的你好運