Raspberry Pi 3でOpenCVを起動時に自動実行させるおはなし
はじめに
Raspberry pi 3でOpenCVを起動時に自動実行させようとしたら、かなり苦戦したので備忘録とします。
環境
- Raspberry Pi 3 Model B
- OS : RASPBIAN JESSIE
ハマり
まずはこちらのサイトを参考にし、/etc/rc.localファイルに実行したい処理(20行目)を書き込みました。なお、自動ログインの記述に関しては、自動でpiユーザーとしてログインする設定になっていたため、行っていません。
LXTerminalで
sudo vi /etc/rc.local
を実行します。
exit 0の前に実行したいプログラムを書きこみました。
gistca3de95acd1220af4a5b4c631a7e5d9e
しかし、起動中に
Gtk-WARNING **: cannot open display:
というエラーメッセージが表示され、起動後に自動実行しませんでした。
どうやら、GUIに対応していないようなので、sudoの代わりにgksudoを使用してみました。
それでも、同じエラーメッセージとなり、やはり自動実行されませんでした。
原因
上述の方法でプログラムを実行後、piユーザーとしてログイン、プロファイルを読み込んでいたことが原因のようです。
解決策
LXTerminalで、
vi .profile
を実行し、プロファイルを読み込みます。
gist643b5647d436b3af49fc84247dcf8630
最後に、実行したいプログラムを書きます。
今度は、起動後に自動でOpenCVが実行されました。
今回実行したプログラムはこちらです。