opencv-python 安裝過程簡述


安裝時間和安裝環境

安裝時間

2017.5.8-2017.5.9

安裝環境

fedora24系統

安裝原因

dnf install opencv*

上述命令可以直接安裝opencv-python的,當使用大部分的函數沒有什么問題。但是當使用cv2.SIFT()的時候產生了問題,經過詳細的看資料(http://www.pyimagesearch.com/2015/07/16/where-did-sift-and-surf-go-in-opencv-3/),我發現好像不得不源碼安裝。

在源碼安裝之后,sift特征還是不能使用,再次仔細閱讀該網站,發現還有一個opencv_contrib模塊需要安裝,於是查找資料,之后可以使用sift特征函數,此時的使用方法變為cv2.xfeatures2d.SIFT_create()。

安裝步驟

1、預先環境的配置。

參考資料:https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_setup/py_setup_in_fedora/py_setup_in_fedora.html#install-opencv-python-in-fedora

dnf install cmake
dnf install python-devel numpy
dnf install gcc gcc-c++

dnf install gtk2-devel
dnf install libdc1394-devel
dnf install libv4l-devel
dnf install ffmpeg-devel
dnf install gstreamer-plugins-base-devel

dnf install libpng-devel
dnf install libjpeg-turbol-devel
dnf install jasper-devel
dnf install openexr-devel
dnf install libtiff-devel
dnf install libwebp-devel

dnf install tbb-devel

dnf install eigen3-devel

dnf install python-sphinx

dnf install texlive

2、源碼的下載及編譯

參考資料:

官方參考:

opencv的安裝:https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_setup/py_setup_in_fedora/py_setup_in_fedora.html#install-opencv-python-in-fedora

opencv_contrib的安裝:https://github.com/opencv/opencv_contrib

私人安裝:http://coderlin.coding.me/2016/03/02/Install-OpenCV-3-1-0-in-Ubuntu-14-04-13-10/

源碼的網址:https://github.com/opencv/opencv(曾用網址:https://github.com/Itseez/opencv/)

		https://github.com/opencv/opencv__contrib(曾用網址:https://github.com/Itseez/opencv_contrib)

在安裝時注意:opencv_contric和opencv的版本一致,但貌似都是從官網下載,好像都是最新版。

git clone 網址

cd /opencv  // /opencv為opencv的文件夾

mkdir build
cd build

//我的編譯選項
cmake -D CMAKE_BUILED_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_EIGEN=ON -D BUILD_DOCS=ON -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_EXAMPLES=OFF ..

//將opencv_contrib編譯進去opencv源碼
cmake -D OPENCV_EXTRA_MODULES_PATH=/home/glen-z/Downloads/opencv_contrib/modules -DBUILD_opencv_dnn=OFF /home/glen-z/Downloads/opencv
//-DBUILD_opencv_dnn=OFF 加這一段代碼時不要將該模塊編譯進去,是有一個新的問題出現,沒有辦法排除,只能這樣處理
//該問題並未被記錄,很遺憾,但是在編譯時好像會看到總在編譯dnn相關代碼出錯。

cmake -D ENABLE_PRECOMPILED_HEADERS=OFF ..  //這個解決的問題下面解釋

make -j4 //用4個線程跑程序
make install

3、遇到的問題及解決思路

(1)、undefined reference to `jpeg_default_qtables’

參考資料:https://apilevel.wordpress.com/2014/03/23/imagemagick-on-rhel-6-x86_64-troubleshoot-small-deligate-issues-during-installation/

//http://imagemagick.org/download/delegates/  下載jpegsrc.v9a.tar.gz

tar -xzvf jpegsrc.v9a.tar.gz
cd jpeg-9a
./configure
make libdir=/usr/lib64
make libdir=/usr/lib64 install
//我的問題通過該方法得到解決。

(2)、stdlib.h: Nosuch file or directory

參考資料:http://stackoverflow.com/questions/40262928/error-compiling-opencv-fatal-error-stdlib-h-no-such-file-or-directory

cmake -D ENABLE_PRECOMPILED_HEADERS=OFF ..  //我的問題這樣解決了,另外-D和Enable之間的空格似乎可有可有無,操											//作兩個都沒錯,我也有點迷糊

(3)、好不容易編譯完了,忘了make install

4、學到的知識點

多看Stack Overflow解決問題的速度比較快。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM