0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

RaspberryPiにJAVA用のOpenCVをインストールしてWindows+Eclipseからリモートデバッグする方法①

Last updated at Posted at 2021-02-27

記)2021/02/27
具体的な導入方法を順次追加する。
Windows10を基準に書く。Macは持っていないので不明
無茶苦茶長いので、頑張って読み込んで下さい。

ちなみに、以下の記事(英語)を読めばわかると言えば身も蓋もないので日本語で詳しく書くことにする。
https://qengineering.eu/install-opencv-4.5-on-raspberry-pi-4.html

①RaspberryPiにOSをインストールする。
https://www.raspberrypi.org/software/
image.png
あ)Windows10PCにマイクロSDカード(16gでも実験だけなら可能だが、実用的なものを作るには最低でも32G以上を推奨)をセットし前記ソフトをインストールし起動。指示に従い書き込み
い)マイクロSDをラズベリパイへセットし起動
う)VNC、SSHを有効化する。
え)キャッシュを増やす

swapon
sudo sed -i -e 's/SWAPSIZE=.*/SWAPSIZE=2048/g' /etc/dphys-swapfile
sudo systemctl restart dphys-swapfile.service
swapon

②以下の記事に従ってbellsoftのJDKとsambaまで導入をすませる。
https://qiita.com/kamoshika9999/items/a7cffb954220e4afed10
Windows10からラズパイで実行するjavaFXプログラムをリモートデバッグする方法~環境構築からデバッグ実行まで②~

③依存関係をインストールする。Windows10でVNCからターミナルを起動し、コピ&ペースト&実行
この依存関係にあるパッケージだが詳しく調査出来ていない。OpenCVの使われ方によってはパッケージが不足し実行時エラーが出るかもしれない。

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install cmake gfortran
$ sudo apt-get install libjpeg-dev libtiff-dev libgif-dev
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
$ sudo apt-get install libgtk2.0-dev libcanberra-gtk*
$ sudo apt-get install libxvidcore-dev libx264-dev libgtk-3-dev
$ sudo apt-get install libtbb2 libtbb-dev libdc1394-22-dev libv4l-dev
$ sudo apt-get install libopenblas-dev libatlas-base-dev libblas-dev
$ sudo apt-get install libjasper-dev liblapack-dev libhdf5-dev
$ sudo apt-get install protobuf-compiler

④2021/02/27時点で4系の最新版である4.5.1をダウンロード

wget https://codeload.github.com/Itseez/opencv/zip/4.5.1

image.png

image.png
/home/pi/に4.5.1のアーカイブがダウンロードされる。

⑤フォルダ作成、移動、解凍する

mv 4.5.1 opencv.zip
unzip opencv.zip 
cd opencv-4.5.1/

image.png

⑥ANTのインストール

sudo apt-get install ant

⑦ANT_HOMEとJAVA_HOMEの設定 .bashrcの編集

sudo nano ~/.bashrc

image.png
追記する。パスは適宜修正必要

⑧ANTのシンボリックリンクの修正
これをやらないとcmake-guiでパスが通らない

ln -snf /usr/share/ant/bin/ant /bin/ant

⑨ビルド用フォルダ作成
ここにopencv-4.5.1.jaraとネイティブライブライブラリである.soファイルが作成される
今回この2ファイルを作成できれば成功

mkdir build
cd build

⑩cmake-guiを実行 sudoをつけないとエラーが出るので注意
image.png
⑪ソースコードとビルドフォルダを選択する
image.png
⑫GroupedとAdvancedにチェックを入れてConfigreボタンを押す
image.png
⑬CMakeSetupダイアログが出るのでそのままFinishボタンを押す

image.png
⑭Configuring doneと表示されれば一応成功だが....肝心のJAVAラッパーが作成できていない
image.png
image.png

⑮エントリにJAVA_HOMEが無いのが原因
image.png

⑯エントリを追加する。間違いやすいところなので詳しく書く
あ)現在選択されているJDKを確認する
image.png

  • 1 /usr/lib/jvm/bellsoft-java13-arm32-vfp-hflt/bin/java
    が選択されているので

    /usr/lib/jvm/bellsoft-java13-arm32-vfp-hflt/

    をクリップボードへコピーしておく。
    bin/javaまで選択しないこと
    image.png

い)CMake-guiへ戻り、Add Entryボタンを押す
image.png
う)出てきたダイアログに先ほどクリップボードにコピーしたパスをValue値に張り付け、OKを押す
NameにJAVA_HOME
TypeにPATHを選択
image.png

え)エントリの最上部に追加されるので確認する
この時点ではJAVAのエントリグループにグループ化されて入らず、Configureを実行した後でグループ化される

お)Configureボタンを押す
完了後、ログのjavaの項目を確認するとYESに変わっているはず
image.png

か)もう一度Configreボタンを押す。するとUngrouped EntriesとOPENCVのエントリが赤から白に変わる
image.png
き)Generateボタンを押す。Generating doneと表示されればcmake-guiでの作業は終了。
cmake-guiを閉じる
image.png

⑰カレントフォルダが/home/pi/opencv-4.5.1/buildになっていることを確認してからmakeを実行する。
約6時間

sudo make -j3

今回はコア3つで実行することにする
失敗する場合は依存関係のパッケージが不足していのでログをよく見て適宜インストールすること

⑱カレントフォルダが/home/pi/opencv-4.5.1/buildになっていることを確認してからインストールする

sudo make install

⑲/home/pi/opencv-4.5.1/buildフォルダの
binに opencv-4.5.1.jar
libに libopencv-4.5.1.so
がそれぞれ入っているので確認しておく。
結局必要なのはこの二つで、どこに置いてもよいのでclasspathとDjava.library.pathで設定された位置にあれば良い

今回はここまで、次回はopencvのテスト起動とeclipseからリモートデバッグする方法を書く予定

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?