------【 2017.07.14 更新 】-------------------------------------------------------
opencv3 のインストール時には毎回 3rdparty をダウンロードする必要があり、ダウンロードが非常に遅く、失敗することがよくあります。以下にダウンロードリンクと解決策を添付します:
Linux バージョンの 3rdparty ダウンロードリンク: https://pan.baidu.com/s/1kVxE6XL
opencv3.2 のダウンロードリンク: https://pan.baidu.com/s/1dFxQLmp
opencv3.2 は公式ウェブサイトからもダウンロードできます。
まず、opencv3.2 を解凍します。
cd opencv-3.2.0/3rdparty/ippicv
mkdir unpack
次に、ippicv_linux_20151201.tgz を解凍します。
解凍されたディレクトリを unpack ディレクトリに移動します。
ippicv ディレクトリ内の downloader.cmake ファイルの内容を以下のように置き換えます:
#
# The script downloads ICV package
#
# On return this will define:
# OPENCV_ICV_PATH - path to unpacked downloaded package
#
function(_icv_downloader)
# Commit SHA in the opencv_3rdparty repo
set(IPPICV_BINARIES_COMMIT "81a676001ca8075ada498583e4166079e5744668")
# Define actual ICV versions
if(APPLE)
set(OPENCV_ICV_PACKAGE_NAME "ippicv_macosx_20151201.tgz")
set(OPENCV_ICV_PACKAGE_HASH "4ff1fde9a7cfdfe7250bfcd8334e0f2f")
set(OPENCV_ICV_PLATFORM "macosx")
set(OPENCV_ICV_PACKAGE_SUBDIR "/ippicv_osx")
elseif(UNIX)
if(ANDROID AND NOT (ANDROID_ABI STREQUAL x86 OR ANDROID_ABI STREQUAL x86_64))
return()
endif()
set(OPENCV_ICV_PACKAGE_NAME "ippicv_linux_20151201.tgz")
set(OPENCV_ICV_PACKAGE_HASH "808b791a6eac9ed78d32a7666804320e")
set(OPENCV_ICV_PLATFORM "linux")
set(OPENCV_ICV_PACKAGE_SUBDIR "/ippicv_lnx")
elseif(WIN32 AND NOT ARM)
set(OPENCV_ICV_PACKAGE_NAME "ippicv_windows_20151201.zip")
set(OPENCV_ICV_PACKAGE_HASH "04e81ce5d0e329c3fbc606ae32cad44d")
set(OPENCV_ICV_PLATFORM "windows")
set(OPENCV_ICV_PACKAGE_SUBDIR "/ippicv_win")
else()
return() # Not supported
endif()
set(OPENCV_ICV_UNPACK_PATH "${CMAKE_CURRENT_LIST_DIR}/unpack")
set(OPENCV_ICV_PATH "${OPENCV_ICV_UNPACK_PATH}${OPENCV_ICV_PACKAGE_SUBDIR}")
message(STATUS "ICV: Package successfully downloaded")
set(OPENCV_ICV_PATH "${OPENCV_ICV_PATH}" PARENT_SCOPE)
endfunction()
_icv_downloader()
その後、通常通り cmake、make、make install を実行できます。
上記の内容は以下を参考にしました: http://blog.csdn.net/u011028345/article/details/74568109
エラーメッセージ:
** cv2.error: /io/opencv/modules/highgui/src/window.cpp:583: 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 cvShowImage **
この問題は本当に。。RLGL。。。
依存パッケージについては言及しませんが、インストールしてください。特に libgtk2.0-dev と pkg-config です。
opencv2 を手動でインストールする方法を簡単に説明します。
まず、公式ウェブサイトhttp://opencv.org/ にアクセスします。
リリースをクリックします。
opencv-2.4.13 のソースコードパッケージをダウンロードします。
unzip opencv-2.4.13.zip
cd opencv-2.4.13/
cmake -DWITH_GTK=ON -DCMAKE_INSTALL_PREFIX=/usr/local .
make
sudo make install
新しくインストールされた opencv は /usr/local/include/ ディレクトリにあります。
この時点で cv2.so を探します。
/usr/local/lib/python2.7/site-packages/ ディレクトリにある場合もあります
または /usr/local/lib/python2.7/dist-packages/ ディレクトリにある場合もあります
最初の場合は cv2.so を /usr/lib/python2.7/site-packages/ ディレクトリにコピーします
2 番目の場合は /usr/lib/python2.7/dist-packages/ ディレクトリにコピーします
以上です!!!最も厄介な問題がやってきましたが、これで問題は解決されるはずです。
コードを実行してエラーメッセージが表示されなくなった場合は、以下の内容は無視してください。
まだ問題が発生している場合は、/usr/local/lib/python2.7/site-
packages / または /usr/local/lib/python2.7/dist-packages/ ディレクトリに cv2 という名前のフォルダがあるかどうかを確認してください。
それを削除してください!問題が解決されます。
opencv を再インストールするために何度も何度も操作して、崩壊しそうです!