なにかいいこと語ればいいね - はてブ出張所 -

▼元GoogleBlogger「なにかいいこと語ればいいね」(現在非公開) のはてなブログ出張所▼こちらにはプログラム・IT関連の記事をまとめています▼修了後も頑張って更新したい▼

Raspberry Pi 3 ROS で Webカメラをブラウザに表示する

mjpeg_serverを使って,ラズパイに接続したウェブカメラをブラウザで見られるようにしてみる.

作業ディレクトリを作っていなかったので,追加する.
例によってSSH接続.

$ ssh ubuntu@***.***.***.***
$ mkdir -p ~/ros_catkin_ws/src
$ cd ~/ros_catkin_ws/src
$ catkin_init_workspace
$ cd ..
$ catkin_make

環境変数の書き換え.

$ vi ~/.bashrc

コメントアウトして,
#source /opt/ros/kinetic/setup.bash
以下の行を追加する.
source ~/ros_catkin_ws/devel/setup.bash
反映させるのを忘れないように.

$ source ~/.bashrc

依存関係を入れる.

$ sudo -E apt-get update
$ sudo -E apt install ros-kinetic-cv-bridge
$ sudo -E apt install ros-kinetic-cv-camera
$ sudo -E apt install ros-kinetic-image-transport-plugins

$ cd ~/ros_catkin_ws/src
$ git clone https://github.com/RobotWebTools/mjpeg_server.git
$ cd ..
$ catkin_make

…gitの仕組みが未だにわかっていない
git@github.com:RobotWebTools/mjpeg_server.git では繋がらなかったので.

gitのプロキシ設定については前回あたりに書いていたはず.

これで使えるようになった.

$ roscore

別端末から

$ rosrun cv_camera cv_camera_node


別端末から動作確認コマンド.数字の羅列が表示されれば,動作成功.ctrl+cで止める.

$ rostopic echo /cv_camera/image_raw


再び別端末.

$ rosrun mjpeg_server mjpeg_server _port:=10000

portは任意

http://***.***.***.***:10000/stream?topic=/cv_camera/image_raw
をブラウザで見る.IPはラズパイの方.

これで監視カメラが作れた.
出先で見るようにするにはVPNが必要だったりとちょい面倒なので省略.

ちなみにこれでフレームレートを変更できる.下の例は10fps

$ rosparam set /cv_camera/rate 10



参考文献は前回と同じく「Raspberry Piで学ぶ ROSロボット入門」
みんな買おう!!


次回はカメラの映像をROSで共有する.
質問がありましたらコメントまたはTwitterにてお願いします.