wake-up-neo.net

"DLL-Laden fehlgeschlagen" beim Import von cv2 (opencv)

Ich habe viele Stunden damit verbracht, dieses Problem zu lösen, aber ich kann keine Lösung finden. Bitte haben Sie einen Hinweis, den Sie mit mir teilen können. 

in [Windows-Server 2012 R2 x64, Python 3.7 64x]

pip install opencv-contrib-python

ohne Fehler installiert.
und wenn ich versuche, es zu importieren 

import cv2

zeige mir diesen Fehler:

Traceback (most recent call last):
  File "test.py", line 1, in <module>
    import cv2
  File "C:\Program Files\Python37\lib\site-packages\cv2\__init__.py", line 3, in
 <module>
    from .cv2 import *
ImportError: DLL load failed: The specified module could not be found.

und ich sehe ein anderes Thema zu diesem Fehler, aber ihre Lösung funktioniert nicht für mich:
- DLL Fehler beim Laden beim Import von cv2
- Fehler beim Import von cv2 in Python: DLL Laden fehlgeschlagen
- und viele Seiten in hier

Einige sagen über Anakonda über dieses Problem, und ich habe keine Anakonda. und viele sagen, dass problem 32 oder 64 version, ich versuche beides und enttäuschung. viele über Systemvariablen ...
welche dll konnte nicht geladen werden? cv2? Warum?

was ich bis jetzt versuche:
- Python-Version ändern: 3.5, 3.7, 2.7 in 86x und 64x (letzte Version deinstallieren und alle verbleibenden Dateien in Programmdateien löschen ... dann neue installieren) 
- Versuchen Sie es mit anderen Paketen wie: opencv-python, opencv-contrib. Versuchen Sie, bestimmte Versionen mit .whl zu installieren (in einem bestimmten Thema habe ich darüber gelesen, also installieren Sie numpy-1.14.5 + mkl-cp37-cp37m-win_AMD64.whl und opencv_python-3.4.3 + contrib-cp37-cp37m-win_AMD64.whl, aber alles ändert sich nicht)
- importiere vor jedem vv2 numpy 
- installiertes Microsoft Visual C++ 2015 Redistributable Update 3, 2008, 2010, 2017 für 64x

bitte hilf mir. 

UPDATE 
NÄCHSTER 2. TAG 
Ich versuche, die dll-Basis auf Dependency Walker zu verwalten, die in dem folgenden Post erwähnt wird, alle dll herunterladen und sie in System 32 einfügen, es ist ein guter Hinweis, aber das Problem ist nicht gelöst .

TAG 4,5
mein nächster Schritt, OpenCV auf meinem Rechner kompilieren, Visual Studio 2012 installieren und auf document 2 kompilieren, Version 2 und 64x und 32 kompilieren, das Kompilieren selbst hat eine Menge Probleme (wie etwa das Fehlen von lib in c lang und müssen Visual C++ Redistributable für Visual Studio 2012 installieren ...) und ich löse alle, dann habe ich 2 kompilierte Erfolge, aber beide haben das gleiche Problem mit dll, der Kompilierungsprozess ist so langsam und gib 2 tag von mir. Wenn also bei dieser Mission ein Fehler auftritt:/Ich suche einen neuen Weg ...

TAG 6
mein nächster schritt ist zu versuchen, openCV auf meinem Rechner mit Docker auszuführen (ich versuche aber Docker-Fenster einfach auf Windows 10 und Windows Server 2016 zu installieren), also suche ich nach einer Alternative. Ich habe Vagrant gefunden, der wie Docker arbeitet, aber mit VM (Sichtbox) heute meine Zeit für diese Artikel verbringe, es ist erstaunlich, das Konzept von Docker und Vagrant ist so attraktiv, und ich spiele damit so, dass ich ein neues Puzzle habe :) erste Fehleranzeige bei ... und unbegrenzte Fehler gehen weiter: /

Tag 7
Vagrant-Tests sind auch fehlgeschlagen, da mein Windows-Server 2012 eine virtuelle Maschine (Visual Server) ist und eine visuelle Box in einer anderen visuellen Box ausgeführt wird! Ich brauche also neue Hinweise :(

Tag 8-9
Versuchen Sie, Vagrant mit VMware zu installieren. Ich lade VMware herunter. Leider ist dieses Plugin nicht kostenlos (79 $). Ich versuche also, mit pythonanywhere.com that 'zu arbeiten, damit Sie auf Computer mit einer vollständigen Python-Umgebung zugreifen können bereits installiert.' In diesem kostenlosen Konto können Sie nicht mit urllib öffnen und begrenzen ....... Ich möchte versuchen, Ubuntu in VMware selbst zu installieren ... Ich lese hier die Ergebnisse nach der Arbeit. es ist aus demselben Grund nicht möglich (Visual Box)

5
Neo Anderson

Dies kann passieren, wenn Sie die Windows 10 N-Distribution verwenden. Die N-Distributionen sind nicht mit dem Windows Media Feature Pack vorinstalliert. Dies ist ab OpenCV Version 3.4 erforderlich.

Die bevorzugte Lösung ist die Installation des Feature-Packs unter: https://www.Microsoft.com/en-us/software-download/mediafeaturepack

Achten Sie darauf, die Version auszuwählen, die mit Ihrer aktuellen Version von Windows funktioniert.

Wenn dies keine Option ist, greifen Sie auf eine frühere Version von OpenCV zurück, die keine DLL-Abhängigkeiten hat. Sie können dies tun, indem Sie Folgendes tun: pip install opencv-python=3.3.0.9

Da Windows seine N-Version ausgelaufen ist, ist dieses Problem an vielen Stellen aufgetreten und hat viele Auswirkungen auf die Windows-Umgebung. Der schnellste Weg, um festzustellen, ob dieses Problem vorliegt, ist das Öffnen von Youtube im Edge-Browser , Das ist das Problem.

4
anand_v.singh

Ich hatte den gleichen Fehler (obwohl ich OpenCV selbst kompiliert habe), in meinem Fall fehlten einige DLL - Abhängigkeiten. Sie können das mit dem Programm Dependency Walker überprüfen.

Laden Sie Dependency Walker herunter, führen Sie es aus und öffnen Sie die Datei cv2.pyd mit Dependency Walker. Wenn das Pip-Paket ordnungsgemäß installiert ist, sollte es in C:\Program Files\Python37\lib\site-packages\cv2\ sein.

Dieses Programm sucht dann nach Abhängigkeiten (dies kann einige Minuten dauern) und zeigt fehlende DLL -Dateien in Rot an.

3
Venify

Python 3.7 unterstützt möglicherweise einige Module nicht. 

  • Installieren Sie Python 3.6.4 
  • Verwenden Sie die Eingabeaufforderung "pip install Opencv" oder "pip install opencv-python".
  • Importiere cv2
2
Vikhyat Agarwal

Können Sie versuchen, opencv zu deinstallieren und stattdessen eine Raddatei zu installieren? Hier ist eine Website mit vielen für Windows kompilierten Versionen von OpenCV. Suchen Sie nach der gewünschten Version und installieren Sie sie einfach mit dem Befehl pip.

Wenn Sie also Python 3.6 (64 Bit) haben und OpenCV 3.4.3 installieren möchten, laden Sie die Raddatei herunter: opencv_python‑3.4.3‑cp36‑cp36m‑win_AMD64.whl

2
Rakshith Gb

Nach 15 Tagen Brainstorming funktionierte diese Lösung für mich. Und ich bin sicher, dass es auch für Sie funktionieren wird. Ich habe Anaconda installiert, um OpenCV 3.1.0 zu verwenden. Ich habe folgende Schritte befolgt:

1) Ich habe das 64-Bit-Installationsprogramm anaconda-5.3 (614,3 MB) installiert, das Python 3.7 verwendet. Sie können Anaconda unter folgendem Link herunterladen: https://www.anaconda.com/download/#windows

2) Öffnen Sie nach der Installation von Anaconda Anaconda Prompt, indem Sie auf der Windows-Startschaltfläche "Anaconda Prompt" eingeben. Öffnen Sie mit "Als Administrator ausführen".

3) Sie müssen eine neue Umgebung erstellen, um das OpenCV-Modul installieren und verwenden zu können. Schreiben Sie die folgenden Befehle, um eine neue Umgebung zu erstellen und zu aktivieren:
>conda create --name myNewEnv python=3.5.0
>activate myNewEnv
"myNewEnv" ist der Name einer neuen Umgebung.

4) Nun müssen Sie die Voraussetzung für OpenCV installieren, die numpy ist, und dann opencv3 installieren. Starten Sie das Internet, bevor Sie die folgenden Befehle ausführen:
>conda install numpy
>conda install anaconda-client
>conda install --channel https://conda.anaconda.org/menpo opencv3

5) OpenCV3 wurde installiert. Überprüfen Sie nun die Installation, indem Sie die folgenden Befehle ausführen:
(myNewEnv) C:\Users\Nilesh> python
>>>import cv2
>>>cv2.__version__

Befolgen Sie die unten angegebenen Schritte, wenn Sie OpenCV3 ein zweites Mal starten möchten:

1) Öffnen Sie "Anaconda Command Promt" aus dem Startmenü mit den Berechtigungen "Als Administrator ausführen"
2) Geben Sie den Befehl> Aktivieren Sie Ihren_Umweltnamen
3) Angenommen, Sie möchten eine Datei ausführen, die sich auf dem Desktop befindet, für den folgenden Befehl:
> cd C:\Users\Nilesh\Desktop
4) Ihr Arbeitsverzeichnis ist jetzt Desktop.
5) Geben Sie folgenden Befehl ein, um einen beliebigen Code auszuführen (zum Beispiel test.py).
> python test.py
Hinweis: Hier bedeutet Python Version-3.

Ich hoffe, dass diese Lösung für Sie funktioniert.

1
Nell

Ich bin mit dem ähnlichen Problem in Windows Server 2012 r2 konfrontiert. Nach vielen Befunden fand ich, dass mfplat.dll fehlt, was mit Window Media Service zusammenhängt.

Daher müssen Sie die Features manuell installieren, damit Sie eine mit Windows Media-Service verknüpfte DLL erhalten können.

  1. Schalte Windows Funktionen ein oder aus
  2. Überspringen Sie den Rollenbildschirm und wechseln Sie direkt zum Funktionsbildschirm
  3. Wählen Sie "Desktop Experience" unter "Benutzeroberflächen und Infrastruktur" aus.

Danach wäre alle erforderliche DLL von opencv verfügbar.

1
Biks

ich hatte das gleiche Problem "DLL load failed" nachdem ich Tonnen von Antworten und Artikeln gelesen hatte. Ich bekam eine Lösung.

ich weiß nicht, ob das bei Ihnen funktioniert oder nicht, aber probieren Sie es aus.

von mir verwendete Tools und Versionen: Anaconda - 5.3.1, Python - 3.7, 10 (64 Bit) gewinnen

Schritte, die ich durchgeführt habe:

step1: Ich habe opencv 3.4.4 von here installiert und dann in das Laufwerk C entpackt (Sie können das tun, wo immer Sie möchten)

step2: Kopieren Sie die Datei cv2.pyd von [C:\opencv\build\python\cv2\python-3.7] hier nach [C:\Benutzer\"Benutzername"\Anaconda3\Lib\site-packages]. Hier.

step3: run Abhängigkeitsläufer, um zu ermitteln, welche dll -Dateien fehlen. Nach dem Ausführen des Abhängigkeitsläufers zeigte es in meinem Fall, dass zwei DLL-Dateien nicht geladen werden ) OPENCV_WORLD344.DLL und (2) IESHIMS.DLL . Ich kenne Ihre Situation nicht, aber Sie können dies tun.

step4: Öffnen Sie Systemeigenschaften -> Erweitert -> Umgebungsvariablen. Bearbeiten Sie nun den Pfad und fügen Sie C:\opencv\build\x64\vc14\bin hinzu (in meinem Fall war dies der Ort, an dem OPENCV_WORLD344.DLL gespeichert ist) und Anschließend importieren Sie cv2 in Python.

Wenn meine Antwort nicht funktioniert, fügen Sie einen Kommentar hinzu.

0
Rhythm sharma

Es hat für mich gut funktioniert. * Die Antwort lautet "Müssen Sie die Datei cv2.pyd in Ihre virtuelle Umgebung einfügen". müssen unter zwei Ordner von envs setzen,

  • zuerst befindet sich im DLLS-Ordner und zweitens unter Lib/site-packages

Um cv2.pyd> herunterzuladen, klicken Sie auf diesen Link https://sourceforge.net/projects/opencvlibrary/ und extrahieren Sie die heruntergeladene Datei

Sie erhalten den opencv-Ordner. Gehen Sie anschließend in den opencv-Ordner wie Downloads\opencv\build\python\2.7 und gehen Sie in einen tieferen Ordner, der von Ihrer 32- oder 64-Fenster-Version abhängt

Cv2.pyd kopieren Wichtig **** Nach dem Kopieren der cv2.pyd-Datei in Ihr Envs müssen Sie cv2.pyd in _cv2.pyd umbenennen

0
kaythi swetun

Ich hatte ein ähnliches Problem, außer dass ich Anaconda3 verwende und dieser Code hier gelöst wurde: 

conda install -c anaconda py-OpenCV
0
Omda asli