Linux下安裝並使用Java開發opencv的配置

mx's Blog發表於2015-03-25

今天花了四個小時, 終於在linux下把eclipse下java開發opencv給搞定了… 至於為什麼花這麼久的時間… 且聽我慢慢講…

linux編譯安裝opencv

首先, linux下安裝opencv其實不麻煩的, 參考文件即可完成: http://docs.opencv.org/trunk/doc/tutorials/introduction/linux_install/linux_install.html

大致有以下幾個步驟:

1) 安裝gcc以及cmake等等亂七八糟的軟體(不過ubuntu下預設差不多都有了吧…)

sudo apt-get install build-essential python-dev cmake

2) 下載opencv-2.4.8.zip並解壓縮

3) 新建一個build資料夾

cd ~/opencv
mkdir build
cd build

4) 在終端裡輸入:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install

make命令會花費幾十分鐘時間… 然後理論上就結束了… 如果不用java開發的話 就OK了 比如 可以執行sample資料夾下的python程式碼…

但是, 如果要使用java開發的話 需要接著這樣做…..

安裝opencv-java

這一步非常DT, 因為官網上還有一個文件, 專門講怎麼用java開發的…http://docs.opencv.org/doc/tutorials/introduction/desktop_java/java_dev_intro.html

1) 首先, 需要安裝ant:

sudo apt-get install ant

2) 其次 需要執行cmake, 關鍵是cmake的引數, 官網給的是這樣的:

export JAVA_HOME=/usr/lib/jvm/java-6-oracle#這句不加應該也可以的
cmake -DBUILD_SHARED_LIBS=OFF ..

注意看輸出的, 如果”To be built”裡面有java這一項的話, 就應該是OK的…. 接下來只要make -j8 就可以了…

最坑爹的地方來了, 以這樣的引數執行cmake以後, 執行make -j8總是不成功, 說有錯誤…..

查了半天, 發現這是一個BUG: http://code.opencv.org/issues/2859

那麼試一試加上引數: -DBUILD_TESTS=OFF 吧…

所以cmake的引數要這樣寫才可以:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DBUILD_TESTS=OFF ..

3) 用上面那樣的引數執行cmake以後, 再:

make -j8
sudo make install

這樣就可以成功make了…

如何判斷是否安裝成功?

以上操作結束後, 看看build資料夾, bin目錄下是不是有一個opencv-248.jar檔案:

如果有的話 就說明成功安裝了opencv的java元件…

!!注意!! 不能用windows下opencv安裝目錄下的那個opencv-248.jar!! 剛才生成那個jar和windows下的jar不一樣的!! (我查了MD5碼… 其實看檔案大小也能看出來!!)

Eclipse下的配置

這裡有一篇非常好的帖子, 寫的非常到位, 我就不重複了, 連結:

http://exintopro.net/blog/2013/10/02/setting-up-eclipse-for-using-opencv-java-in-ubuntu/

這個帖子雖然很好, 但是沒有介紹編譯的那一部分, 由於安裝java元件時的編譯過程和官網給的不一樣, 所以才導致我廢了半天的時間啊!……

相關文章