OpenCV on Raspberry Pi - Using Java(4)- 在 Raspberry Pi 安裝與測試 OpenCV by Michael | CodeData
top

OpenCV on Raspberry Pi - Using Java(4)- 在 Raspberry Pi 安裝與測試 OpenCV

分享:

OpenCV on Raspberry Pi – Using Java(3)- 在 Mac OS 安裝與測試 OpenCV << 前情

準備工作

  • RASPBERRY PI 3 MODEL B
    • 已經安裝好RASPBIAN JESSIE作業系統
    • Raspberry Pi可以連線到網際網路
  • 個人電腦
    • 可以使用PuTTY(Windows)或ssh(Mac OS)連線到Raspberry Pi
    • 已經安裝好OpenCV
    • 已經安裝與設定好NetBeans,並且測試OpenCV應用程式

Raspberry Pi作業系統安裝與網路連線設定請參考:

建置 OpenCV 程式庫

在個人電腦連線到Raspberry Pi的視窗,執行下列的指令安裝需要的套件(需要花費一些時間,請耐心等候):

sudo apt-get -y install ant build-essential cmake cmake-curses-gui

同樣在連線到Raspberry Pi的視窗,執行下列下載OpenCV套件與解壓縮的指令:

cd ~
wget https://github.com/Itseez/opencv/archive/3.1.0.zip
unzip 3.1.0.zip

同樣在連線到Raspberry Pi的視窗,執行下列建立建置資料夾的指令,建置的檔案存放在建立好的「build」資料夾:

cd  ~/opencv-3.1.0
mkdir build
cd build

執行下列的指令,建立OpenCV程式庫的設定資訊(需要花費一些時間,請耐心等候):

cmake -D ANT_EXECUTABLE=/usr/bin/ant \
-D BUILD_PERF_TESTS=OFF \
-D BUILD_SHARED_LIBRARY=OFF \
-D BUILD_TESTS=OFF \
-D BUILD_opencv_python3=OFF \
-D CMAKE_BUILD_TYPE=RELEASE \
-D JAVA_AWT_INCLUDE_PATH=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include \
-D JAVA_AWT_LIBRARY=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include/jawt.h \
-D JAVA_INCLUDE_PATH=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include \
-D JAVA_INCLUDE_PATH2=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include/linux \
-D JAVA_JVM_LIBRARY=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include/jni.h \
-D WITH_JPEG=OFF ..

執行完成的畫面:

OpenCVJava_04_001

執行下列的指令建置OpenCV程式庫,指令執行以後需要花費一些時間(Pi 3大約需要30分鐘,其它版本需要1到2個小時):

make -j4

執行中的畫面,左側會顯示目前的進度:

OpenCVJava_04_002

執行完成的畫面:

OpenCVJava_04_003

NetBeans 遠端開發環境

依照你的作業系統,參考下列的說明,確定已經在個人電腦安裝與建立好NetBeans開發環境:

安裝好NetBeans開發工具以後,為了方便撰寫與測試應用程式,為NetBeans加入遠端執行的設定,寫好應用程式以後,就可以讓NetBeans自動傳送包裝好的檔案到Raspberry Pi,啟動應用程式以後,也可以在NetBeans中監控應用程式的執行狀態。依照下列的步驟執行設定的工作:

  1. 啟動Raspberry Pi。
  2. 在工作電腦啟動已經安裝與設定好的NetBeans。
  3. 選擇NetBeans功能表「Tools -> Java Platforms」,在開啟的視窗選擇「Add Platform…」:

    OpenCVJava_04_004

  4. 選擇「Remote Java Standard Edition」後選擇下一步:

    OpenCVJava_04_005

  5. 依照下列說明輸入需要的資訊:

    • Platform Name:為這個遠端的Raspberry Pi Java平台取一個名稱。
    • Host:Raspberry Pi的IP位址。
    • Username:Raspberry Pi的使用者名稱pi。
    • Password:使用者pi的密碼。
    • Remote JRE Path:儲存在Raspberry Pi的JRE位置,Java SE 8的位置在「/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt」。
    • Working Dir:應用程式上傳到Raspberry Pi的儲存位置。
  6. 輸入完成後選擇「Finish」完成設定:

    OpenCVJava_04_006

  7. NetBeans會連線到指定的Raspberry Pi執行一些測試,如果設定的資訊都沒有問題,NetBeans就會儲存這個Java遠端執行環境的設定。在「Exec Prefix」欄位輸入「sudo」。最後選擇「Close」關閉這個視窗:

    OpenCVJava_04_007

在 Raspberry Pi 執行 OpenCV 應用程式

依照下列的步驟,執行應用程式專案的遠端執行環境的設定:

  1. 在HelloOpenCV專案目錄上按滑鼠右鍵,選擇「Properties」。在開啟的視窗選擇「Run」目錄後選擇「New…」按鈕,準備為這個專案建立一個新的執行設定檔:

    OpenCVJava_04_008

  2. 在對話框輸入一個名稱後選擇「OK」按鈕:

    OpenCVJava_04_009

  3. 「Runtime Platform」選擇剛才建立的遠端Raspberry Pi Java平台,在「VM Options」輸入下面的內容:

    -Djava.library.path=/home/pi/opencv-3.1.0/build/lib

    最後選擇「OK」完成設定:

    OpenCVJava_04_010

  4. 在專案目錄上按滑鼠右鍵後選擇「Run」,NetBeans在包裝好應用程式後,傳送到Raspberry Pi執行。

  5. 如果執行後顯示下面的內容,表示遠端執行環境與Raspberry Pi的OpenCV,都已經正確的安裝與設定:

    mat = [  1,   0,   0;
       0,   1,   0;
       0,   0,   1]    

在開發的過程,可以採用上面說明的方式,讓你的應用程式在Raspberry Pi執行測試。如果需要在Raspberry Pi直接執行應用程式,在個人電腦連線到Raspberry Pi的視窗,執行下列切換資料夾與執行應用程式的指令:

cd ~/NetBeansProjects/HelloOpenCV/dist
java -Djava.library.path=/home/pi/opencv-3.1.0/build/lib -jar HelloOpenCV.jar

後續 >> OpenCV on Raspberry Pi – Using Java(5)- 使用 OpenCV 拍攝照片(USB Webcam)

分享:
按讚!加入 CodeData Facebook 粉絲群

相關文章

留言

留言請先。還沒帳號註冊也可以使用FacebookGoogle+登錄留言