質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.59%

PythonでOpen CVを使おうとすると、ImportError: DLL load failed: 指定されたモジュールが見つかりませんと言われます。

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 6,885

Aki1000

score 41

 前提・実現したいこと

PythonでOpen CVを使おうとしています。OSはwindows7です。PythonのホームページからPython3.7のインストーラをダウンロードしてインストール。その後、コマンドプロンプトからpip install opencv-pythonでopencvをインストール。その後pythonでpythonのモード入りimport cv2と打つと
、「from .cv2 import*」「importerror dll load failed: 指定されたモジュールが見つかりません。 」
と出て、使えません。teratail等ネット上の類似トラブルを見ながら、Visual Studio をインストールしてみたり、OpenCVのホームページからopencvのインストーラをダウンロード実行して出来た、cv2.pydを\Lib\site-packagesのフォルダにコピーしたりしてみたのですが同じです。

 発生している問題・エラーメッセージ

>>>import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python\Python37\Lib\site-packages\cv2\init.py", line 3, in <module>
from .cv2 import*
ImportError: DLL load failed: 指定されたモジュールが見つかりません。

 

 試したこと

Visual Studio をインストール。
Microsoft Visual C++ 2015 Redistributable Update 3をインストール。

OpenCVのホームページからopencv-3.4.0-vc14_vc15.exeをダウンロード実行して出来た、opencv\build\python\2.7\x64の中のcv2.pydを\Lib\site-packagesのフォルダにコピー(teratailの類似例にこれで解決したとあるが、これは2.7用なのでダメな気がする。ダメだった)。

python 3.7をアンインストールし、3.5及び3.6をインストールして試してみた。
pip uninstall opencv-pythonの後、pip install opencv-pythonした。
openCVのホームページからwhlファイルを落としてきて、pip uninstall opencv-pythonの後、pip install opencv_python-3.4.3+contrib-cp37-cp37m-win_amd64.whl
でインストール。

どうしても、ImportError: DLL load failed: 指定されたモジュールが見つかりませんとなってしまいます。
是非、よろしくお願いします。分かる人が居るとありがたいです。

追記します

anacondaは使用していないです。

pip install opencv-pythonの結果は
Name: opencv-python
Version: 3.4.3.18
Summary: Wrapper package for OpenCV python bindings.
Home-page: https://github.com/skvark/opencv-python
Author: None
Author-email: None
License: MIT
Location: c:\python\python37\lib\site-packages
Requires: numpy
Required-by:
です。

opencv-python --ignore-installedでキャッシュを無効にして入れ直してもダメです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • Aki1000

    2018/10/17 02:25 編集

    Anacondaは利用していないです。
    pip install opencv-pythonの結果は、Name: opencv-python Version: 3.4.3.18 Summary: Wrapper package for OpenCV python bindings. Home-page: https://github.com/skvark/opencv-python Author: None Author-email: None License: MIT Location: c:\python\python37\lib\site-packages Requires: numpy Required-by: です。

    キャンセル

  • tachikoma

    2018/10/17 09:14

    うーん、本来あるはずのdllが消えてしまってるようですが、原因がよく分かりませんね。あとはpip install opencv-python --ignore-installedを試すとか

    キャンセル

  • Aki1000

    2018/10/18 00:29

    opencv-python --ignore-installedでキャッシュを無効にして入れ直してもダメです。

    キャンセル

回答 1

check解決した方法

0

英語サイトで同様の問題に当たっている人たち事例から解決にたどり着いた。

Dependecy Walkerでcv2.cp36-win_amd64.pydの依存関係を調べると、いくつかのファイルにエラーが見つかる。
そのうち、 API-MS-WIN-DOWNLEVEL-SHLWAPI-L1-1-0.DLLがこの問題の正体。

API-MS-WIN-DOWNLEVEL-SHLWAPI-L1-1-0.DLLをcドライブを検索して探す。(ウェブ上の情報だとDLL集めたあやしげなサイトからダウンロードしてたが)
幸い、ローカルのC:\$WINDOWS.~BT\Sourcesにファイルがあった。
このAPI-MS-WIN-DOWNLEVEL-SHLWAPI-L1-1-0.DLL
をWindows\SysWOW64とsystem32にコピーすると問題なく動くようになった。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.59%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • トップ
  • Windows 7に関する質問
  • PythonでOpen CVを使おうとすると、ImportError: DLL load failed: 指定されたモジュールが見つかりませんと言われます。