Ich hatte OpenCV folgendermaßen installiert () . Nachdem ich versucht hatte, ein Beispiel zu kompilieren, bekam ich folgende Fehlermeldung:
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow, file /home/nick/.Apps/opencv/modules/highgui/src/window.cpp, line 516
terminate called after throwing an instance of 'cv::Exception'
what(): /home/nick/.Apps/opencv/modules/highgui/src/window.cpp:516: error: (-2) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function cvNamedWindow
CMakeLists.txt
cmake_minimum_required(VERSION 2.8.4)
project(threadTest)
find_package( OpenCV REQUIRED )
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wextra -pthread")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "/home/nick/ClionProjects/threadTest")
set(SOURCE_FILES main.cpp)
add_executable(threadTest ${SOURCE_FILES})
target_link_libraries( threadTest ${OpenCV_LIBS} )
Wie man es löst?
Prüfen Sie zunächst, ob libgtk2.0-dev ordnungsgemäß installiert ist. Wenn Sie aptitude package manager installiert haben, führen Sie Folgendes aus:
Sudo aptitude search libgtk2.0-dev
Es sollte so zurückkehren:
i libgtk2.0-dev - development files for the GTK+ library
p libgtk2.0-dev:i386 - development files for the GTK+ library
Sie müssen die Dateien erneut erstellen. Suchen Sie Ihren OpenCV-Ordner. Erstellen Sie einen neuen Ordner und nennen Sie ihn als Release. In diesen Ordner eintragen. Zum Beispiel
cd /home/user_name/OpenCv
mkdir Release
cd Release
Erstellen Sie nun mit cmake mit folgendem Befehl:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_GTK=ON -D WITH_OPENGL=ON ..
Denken Sie daran, WITH_GTK=ON
während cmake einzugeben. Nach diesem Schritt geben Sie den Befehl ein.
make
Sudo make install
Dies sollte Ihr Problem lösen. Wenn Sie die Abhängigkeiten für libgtk2.0-dev gebrochen haben, installieren Sie eine neue Kopie von libgtk2.0-dev mit aptitude.
Sudo aptitude install libgtk2.0-dev
Wenn Sie OpenCV mit dem Paket opencv-python pip installiert haben, beachten Sie die folgenden Hinweise aus https://pypi.python.org/pypi/opencv-python
WICHTIGE NOTIZ Für MacOS- und Linux-Laufwerke gelten derzeit einige Einschränkungen:
- videofunktion wird nicht unterstützt (nicht mit FFmpeg kompiliert)
- zum Beispiel funktioniert
cv2.imshow()
nicht (nicht mit GTK + 2.x oder Carbon Support kompiliert)
Beachten Sie außerdem, dass Sie zur Installation von einer anderen Quelle zunächst das Paket opencv-python entfernen müssen
Um OpenCV in Ubuntu zu installieren, bin ich dieser Anleitung gefolgt und es hat perfekt funktioniert: http://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/
Um die Antwort von @Nic Szer zu verbessern, möchte ich Ihnen in drei einfachen Schritten erklären, wie Sie diesen Fehler unter Mac OS beheben können.
1.Entfernen Sie die installierte OpenCV-Version, um ein späteres Durcheinander zu vermeiden
pip3 uninstall opencv-python
2.Niedrigen Sie die Python-Version auf 3.5 (die aktuelle Version 3.6 hat andere Probleme mit Conda, die wir zur Installation von OpenCV verwenden werden).
conda install python=3.5
3.Bitte verwenden Sie Conda, um die funktionierende Version von OpenCV zu installieren
conda install -c menpo opencv3
Und dann voila: OpenCV arbeitet an Ihrem Mac OS (Siera 10.12.4).
Ich habe das Problem gelöst, indem ich Anaconda 3 auf Ubuntu 16.04 installiere.
Ich habe den Pycharm-Editor für meinen Python-Code verwendet.
Ich verwende die Version Python 3.6.
Ich habe das Problem mit diesen Prozessen gelöst.
IDEE: Wir müssen das Paket opencv-contrib-python vom pycharm installieren.
@ oxydron/Elliott Miller: Ich habe Ubuntu 16.04 LTS-Umgebung mit gtk 3 vorinstalliert . Ich habe den gleichen Fehler für Caffe Build (Master Branch).... für dich.
Sudo apt-get install libgtk-3-dev
cmake .. (WITH_GTK=ON and other settings),
make
Und Bingo, der Fehler war weg ... in meinem Python-Caffe-Code
Bitte beachten Sie:
Die CMAKE-Konfiguration sollte GTK + 3.x anstelle von GTK + 2.x widerspiegeln
GUI:
-- QT: NO
-- GTK+ 3.x: YES (ver 3.18.9)
-- GThread : YES (ver 2.48.2)
-- GtkGlExt: NO
-- OpenGL support: NO
-- VTK support: NO
Ich habe mich ein paar Mal mit diesem Thema beschäftigen müssen, das hat bisher konsequent funktioniert:
conda remove opencv
conda install -c menpo opencv
pip install --upgrade pip
pip install opencv-contrib-python
Ich habe mehrere der oben genannten Antworten ausprobiert, die in Ubuntu für mich in den folgenden Schritten verwendet wurden:
conda remove opencv
eingeben.conda install python=3.5
eingeben.conda install -c menpo opencv3
folgende Eingabe vornehmen: Ich hatte das gleiche Problem und es wurde behoben, indem einfach Neuinstallation von opencv
Sie müssen es nicht zuerst deinstallieren.
Für mich (Arch Linux, Anaconda mit Python 3.6) hat das Installieren der vorgeschlagenen Kanäle menpo
oder loopbio
nichts geändert. Meine Lösung war zu
Sudo pacman -Syu pkg-config
),conda remove opencv
) undconda install -c conda-forge opencv
).conda list
gibt jetzt opencv 3.3.0 py36_blas_openblas_203 [blas_openblas] conda-forge
zurück und alle mit cv2 gestarteten Fenster funktionieren einwandfrei.
Falls das, was sie oben erwähnt haben, nicht funktioniert, versuchen Sie Folgendes:
pip install opencv-python
für Python2 oder
pip3 install opencv-python
für python3