Sota?

#navi(Sota/IntelEdsion版): No child page like: Sota/IntelEdsion版/Foo

サブページ

#navi(contents-page-name): You already view the result


Edison版に音が同時に再生できない問題が有ります。 もしかしたらRaspberryPi版もあるかもしれません。

dmixを導入したらいいらしいですが、まだ試せてません。

起動

※Windowsでの手順を説明します。

・CP210xブリッジドライバをインストール

http://jp.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

・USBMicroBをPCと接続 ・デバイスマネージャで「Silicon Labs CP210x USB to UART」のCOM番号を確認 ・Terminalソフト(Putty、Teratermなど)で上記COM番号で接続する。  ボーレート:115200、バリティー:無し、ストップビット:1、フロー制御:なし

※以降、RaspberryPi版 取扱説明書参照 ・電源ケーブルを接続 ・電源ボタンを押し、ボタンが緑に光り、電源が入っていることを確認

ログイン

User:root
Password:edison00

・SotaSample****がJavaのサンプルソースです。

パッケージマネージャの設定

Sota/IntelEdsion版/opkg?

インストーラ作成について

・Oracleからjdk-8u40-linux-i586.tar.gzをダウンロードして.debにいれる。 それか以下でダウンロードさせる

wget --no-check-certificate --no-cookies - --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u40-b25/jdk-8u40-linux-i586.tar.gz

解凍

root@edison:~# tar zxvf jdk-8u40-linux-i586.tar.gz

.debに含める 添付append_bashprofile.plもあとで消す用に /home/vstone/tmp 等誰も命名しそうにない名前のディレクトリを作り入れておく vsmd_eも。

インストール手順

解凍。先に解答して.debでインストールでも可。

tar zxvf jdk-8u40-linux-i586.tar.gz

あったらコピー出来ないから、一度削除して解答したディレクトリをコピー

mkdir /usr/local
mkdir /usr/local/java
mv jdk1.8.0_40 /usr/local/java/jdk1.8.0_40/

パスを通す

perl append_bashprofile.pl /etc/profile "export PATH=$PATH:/usr/local/java/jdk1.8.0_40/bin"

vsmdをインストール

/home/vstone/vstonemagic/vsmd_e

vsmdをログイン時に実行するように設定 以下を.shで実行。

if [ -e /etc/rc.local ]; then
    # exist
perl -i -p -e 's/exit 0/ /g;' /etc/rc.local
perl append_bashprofile.pl /etc/rc.local "/home/vstone/vstonemagic/vsmd_e >/dev/null &"
perl append_bashprofile.pl /etc/rc.local "exit 0"
else
    # not exist
perl append_bashprofile.pl /etc/rc.local "#!/bin/sh -e"
perl append_bashprofile.pl /etc/rc.local "/home/vstone/vstonemagic/vsmd_e >/dev/null &"
perl append_bashprofile.pl /etc/rc.local "exit 0"
fi
chown root /etc/rc.local
chmod 755 /etc/rc.local

・vsmdを起動しておく /home/vstone/vstonemagic/vsmd_e >/dev/null &

Opencv 苦悩の道

画像キャプチャ http://webcam-capture.sarxos.pl/

java -classpath ../libs 
javac -encoding utf-8 -classpath .:/home/root/SotaSample_prot/libs/webcam-capture-0.3.10.jar:/home/root/SotaSample_prot/libs/bridj-0.6.2.jar:/home/root/SotaSample_prot/libs/slf4j-api-1.7.2.jar  
java -classpath .:/home/root/SotaSample_prot/libs/webcam-capture-0.3.10.jar:/home/root/SotaSample_prot/libs/bridj-0.6.2.jar:/home/root/SotaSample_prot/libs/slf4j-api-1.7.2.jar  

JMF

インストール http://d.hatena.ne.jp/kambara/20081231/1230672145

export JMFHOME=/home/vstone/JMF-2.1.1e
export CLASSPATH=.:$JMFHOME/lib/jmf.jar:${CLASSPATH}
export LD_LIBRARY_PATH=$JMFHOME/lib:${LD_LIBRARY_PATH}

https://github.com/drejkim/edi-cam

JMFでは画像取れんかった。
libv4lとかを入れてなかったからかもしれない。 
入れればできるかもしれない。

ffmpeg

http://johnvansickle.com/ffmpeg/

wget http://johnvansickle.com/ffmpeg/builds/ffmpeg-git-32bit-static.tar.xz
tar Jxvf ffmpeg-git-32bit-static.tar.xz

staticなので、必要であればパスを通す

#静止画撮影

./ffmpeg -f video4linux2 -s 2592x1944 -i /dev/video0 -vframes 1 ./test5.jpg
./ffmpeg -f video4linux2 -s 2592x1944 -i /dev/video0 -vframes 1 ./test5.jpg
javac -classpath :/home/vstone/javacv/javacv-bin/javacv.jar:/home/vstone/javacv/javacv-bin/javacpp.jar:/home/vstone/javacv/javacv-bin/opencv-linux-x86.jar

Javaコンパイル、実行

#.shでコンパイルする

CLASSPATH=:/home/vstone/vstonemagic/sotalib.jar
CLASSPATH==$CLASSPATH:/home/vstone/javacv/javacv-bin/javacv.jar
CLASSPATH=$CLASSPATH:/home/vstone/javacv/javacv-bin/javacpp.jar
CLASSPATH=$CLASSPATH:/home/vstone/javacv/javacv-bin/javacv-linux-x86_64.jar
CLASSPATH=$CLASSPATH:/home/vstone/javacv/javacv-cppjars/opencv-2.4.8-linux-x86_64.jar
CLASSPATH=$CLASSPATH:/home/vstone/JMF-2.1.1e/lib/jmf.jar
export CLASSPATH
export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so
javac -encoding utf-8 jp/vstone/opencv/COpenCVTest.java

#引数のクラスを、jarをclasspathを与えて実行

CLASSPATH=:/home/vstone/vstonemagic/sotalib.jar
CLASSPATH==$CLASSPATH:/home/vstone/javacv/javacv-bin/javacv.jar
CLASSPATH=$CLASSPATH:/home/vstone/javacv/javacv-bin/javacpp.jar
CLASSPATH=$CLASSPATH:/home/vstone/javacv/javacv-bin/javacv-linux-x86_64.jar
CLASSPATH=$CLASSPATH:/home/vstone/javacv/javacv-cppjars/opencv-2.4.8-linux-x86_64.jar
CLASSPATH=$CLASSPATH:/home/vstone/JMF-2.1.1e/lib/jmf.jar
export CLASSPATH
export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so
java $1

OpenCVできた。

#パッケージマネージャの設定

vi /etc/opkg/base-feeds.conf

以下を追記

src/gz all http://repo.opkg.net/edison/repo/all
src/gz edison http://repo.opkg.net/edison/repo/edison
src/gz core2-32 http://repo.opkg.net/edison/repo/core2-32

#Intelリポジトリの登録

vi /etc/opkg/intel-iotdk.conf

以下を追記

src intel-iotdk http://iotdk.intel.com/repos/1.1/intelgalactic
src intel-all http://iotdk.intel.com/repos/1.1/iotdk/all
src intel-i586 http://iotdk.intel.com/repos/1.1/iotdk/i586
src intel-x86 http://iotdk.intel.com/repos/1.1/iotdk/x86

#パッケージリストのアップデート

opkg update

#OpenCV環境を作る

opkg install libv4l
opkg install libv4l-dev
opkg install opencv

v4l2が入っていないかも。その場合python-opencvとかを入れてみる

opkg install python-opencv
 

javaCV-0.7入れる https://javacv.googlecode.com/files/javacv-0.7-bin.zip https://javacv.googlecode.com/files/javacv-0.7-cppjars.zip

※wgetでダウンロード出来ないかも。ホストPCで落としてSCPで転送? /home/vstone/javacvに入れて解凍

Eclipseで使う場合、ホストPCでも解凍する

#添付サンプルをSCP転送。unzipで解凍。

#Eclipseを使うならホストPCで解凍、ワークスペースにプロジェクトをインポート Windowsならsend2Edison.cmdを右クリックし、[Open With]->[Default Editer] を選択すると.cmd内で指定したディレクトリににbinディレクトリが転送される。 上記を1度行うと、以降ダブルクリックで実行可。

以下を外部Jarまたはプロジェクトにjavacvごとコピーしてパスを通す

javacv-bin/javacv.jar
javacv-bin/javacpp.jar
javacv-bin/javacv-linux-x86.jar
javacv-cppjars/opencv-2.4.8-linux-x86_64.jar

#解凍した場合src、Eclipseを使う場合binディレクトリに移動

#シェルスクリプトに実行権限を与える

chmod +x java_compile.sh
chmod +x java_run.sh

※binにはjava_compile.shはない。

#コンパイル

./java_compil.sh jp/vstone/sample/FeceDetect

コンパイルエラーの場合、javacvのファイルパスがあっているか確認する。

#実行

./java_run.sh jp/vstone/sample/FeceDetect

実行エラーの場合、vsmdの起動有無、opkgでインストールしたopencvパッケージが正しく入っているか確認する

jp/vstone/sample/StillImageを実行すると画像ファイルができるのでTeratermなどのSCPで転送

/home/rootjavacvsample/bin/testimg.png