it-swarm.dev

OpenCV GTK + 2.x Fehler

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?

12
Maxian Nicu

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
14
KiranCP

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/

7
Nic Szer

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).

4
hris.to

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.

 enter image description here

1
MK HASAN

@ 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
1
SeCp

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
0
mrk

Ich habe mehrere der oben genannten Antworten ausprobiert, die in Ubuntu für mich in den folgenden Schritten verwendet wurden:

  1. Entfernen Sie zunächst das aktuelle opencv-Paket, das in Ihrem System installiert ist, indem Sie den folgenden Befehl in das Terminal conda remove opencv eingeben.
  2. Wenn Ihre Python-Version 3.6 oder höher ist, ändern Sie sie in die stabile Version, indem Sie conda install python=3.5 eingeben.
  3. Installieren Sie das opencv-Paket später erneut, indem Sie im Terminal conda install -c menpo opencv3 folgende Eingabe vornehmen: 
0

Ich hatte das gleiche Problem und es wurde behoben, indem einfach Neuinstallation von opencv

Sie müssen es nicht zuerst deinstallieren.

0
Z Cao

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

  1. installiere pkg-config (Sudo pacman -Syu pkg-config),
  2. entfernen Sie opencv aus der Umgebung (conda remove opencv) und
  3. installieren Sie opencv erneut über den Conda-Forge-Kanal (conda 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.

0
F1iX

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

0
Ahmed J.