web-dev-qa-db-ja.com

OpenCV GTK + 2.xエラー

これらの手順に従ってOpenCVをインストールしました()。 1つの例をコンパイルしようとすると、このエラーが発生しました:

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

解決方法

15
Maxian Nicu

最初にlibgtk2.0-devが正しくインストールされているかどうかを確認してください。 aptitudeパッケージマネージャーをインストールした場合は、次を実行します。

Sudo aptitude search libgtk2.0-dev

次のように返されます。

i  libgtk2.0-dev              - development files for the GTK+ library 
p  libgtk2.0-dev:i386         - development files for the GTK+ library

ファイルをもう一度ビルドする必要があります。OpenCVフォルダーを見つけます。新しいフォルダーを作成し、リリースとして名前を付けます。このフォルダーに入ります。例えば

cd /home/user_name/OpenCv
mkdir Release
cd Release

次のコマンドでcmakeを使用してビルドします。

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

忘れずにWITH_GTK=ON cmake中。このステップの後、コマンドを入力します、

make
Sudo make install

これで問題が解決するはずです。libgtk2.0-devの依存関係が壊れている場合は、aptitudeを使用してlibgtk2.0-devの新しいコピーをインストールしてください。

Sudo aptitude install libgtk2.0-dev
18
KiranCP

Opencv-python pipパッケージを使用してOpenCVをインストールした場合は、 https://pypi.python.org/pypi/opencv-python から取った以下の注意事項に注意してください

重要な注意MacOSとLinuxホイールには現在いくつかの制限があります:

  • ビデオ関連機能はサポートされていません(FFmpegでコンパイルされていません)
  • たとえば、cv2.imshow()は機能しません(GTK + 2.xまたはCarbonサポートでコンパイルされていません)

また、別のソースからインストールするには、まずopencv-pythonパッケージを削除する必要があることに注意してください

UbuntuにOpenCVをインストールするには、このガイドに従いましたが、まったく問題なく動作しました: http://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/

10
Nic Szerman

@ Nic Szer's answerを改善するには、Mac OSでこのエラーを修正する方法を3つの簡単な手順で説明します。

  1. インストール済みのOpenCVバージョンを削除して、後で混乱するのを防ぎます

    pip3 uninstall opencv-python 
    
  2. pythonバージョンを3.5に下げます(現在のバージョン3.6には、OpenCVのインストールに使用するcondaに問題があります)

    conda install python=3.5
    
  3. 最後に、condaを使用してOpenCVの作業バージョンをインストールします

    conda install -c menpo opencv3 
    

そして出来事:OpenCVはMac OS(Siera 10.12.4)で動作を開始します。

5
hris.to

Ubuntu 16.04にインストールするAnaconda 3を使用して解決しました。

pythonコードにpycharmエディターを使用しました。

私はpython 3.6バージョンを使用しています。

これらのプロセスを使用して問題を解決しました。

アイデア:pycharmからopencv-contrib-pythonパッケージをインストールする必要があります。

enter image description here

2
MK HASAN

@ oxydron/Elliott Miller:gtk 3が事前にインストールされたUbuntu 16.04 LTS環境があります。 Caffeビルド(マスターブランチ)でも同じエラーが発生しました。次の手順を試してください。うまくいくかもしれません。

Sudo apt-get install libgtk-3-dev
cmake .. (WITH_GTK=ON and other settings), 
make

そして、ビンゴはエラーがなくなった...私のpythonカフェコードで

ご注意ください:

CMAKE構成は、GTK + 2.xではなくGTK + 3.xを反映する必要があります

       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
2
SeCp

私はこの問題に数回対処しなければなりませんでしたが、これがこれまで一貫して機能していることです:

conda remove opencv
conda install -c menpo opencv
pip install --upgrade pip
pip install opencv-contrib-python
1
mrk

上記の回答のいくつかを試しましたが、ubuntuで私のために働いたものは次のステップで言及されています:

  1. まず、端末conda remove opencvで次のコマンドを入力して、システムにインストールされている現在のopencvパッケージを削除します。
  2. pythonバージョンが3.6以上の場合、conda install python=3.5と入力することで実行できる安定バージョンに変更します。
  3. 後で端末conda install -c menpo opencv3に次の入力を指定して、opencvパッケージを再度インストールします
1

私も同じ問題を抱えていたので、単純に opencvを再インストール で修正しました。

最初にアンインストールする必要はありません。

1
Z Cao

私(Arch Linux、Anaconda with Python 3.6)、推奨チャネルmenpoまたはloopbioからインストールしても何も変わりません。私の解決策は

  1. pkg-config(Sudo pacman -Syu pkg-config)をインストールします。
  2. 環境からopencvを削除(conda remove opencv)および
  3. conda-forgeチャネルからopencvを再インストールします(conda install -c conda-forge opencv

conda listopencv 3.3.0 py36_blas_openblas_203 [blas_openblas] conda-forgeを返すようになり、cv2を使用して起動されたすべてのウィンドウは正常に動作しています。

1
F1iX

上記で説明したことが機能しない場合は、以下を試してください。

pip install opencv-python

python2の場合、または

pip3 install opencv-python

python3の

1
Ahmed J.