Jetson Nano MouseのROSサンプルコード集です。
- Jetson Nano Mouse
- Remote Computer (オプション)
- Ubuntu 18.04 LTS
- jetbot_image_v0p4p0.zip (L4T R32.3.1)
- イメージファイルはこちらからダウンロードできます。
- jetbot_image_v0p4p0.zip (L4T R32.3.1)
- ROS
- Raspberry Pi Mouse ROS package
- Ubuntu 18.04 LTS
- ROS
Jetson Nano用のOS、L4Tのセットアップはこちらのブログ記事をご覧ください。
ROSのセットアップはこちらのブログ記事をご覧ください。
cd ~/catkin_ws/src
# Clone ROS packages
git clone https://github.com/rt-net/jnmouse_ros_examples.git
git clone https://github.com/rt-net/jetson_nano_csi_cam_ros.git
git clone https://github.com/rt-net/gscam.git
git clone https://github.com/ryuichiueda/raspimouse_ros_2.git
# Install dependencies
rosdep install -r -y -i --from-paths .
# make & install
cd ~/catkin_ws && catkin build
source devel/setup.bash
本パッケージのスクリプトを実行する際はCPUのパフォーマンスを優先するMAXNモードを推奨します。下記コマンドでMAXNモードに変更できます。
sudo nvpmodel -m 0
CPUパフォーマンスとエネルギー消費を抑える5Wモードに戻す場合は下記コマンドを実行します。
sudo nvpmodel -m 1
左カメラでキャプチャした黒線を使ってライントレースを行うコード例です。
詳細は https://rt-net.jp/mobility/archives/15597 に記載しています。
次のコマンドでノードを起動します。
roslaunch jnmouse_ros_examples line_following.launch
ライントレースのコース上で実行すればJetson Nano Mouseがコースに沿って移動します。
実行中は/line_follower_imgに追跡中のラインを示す画像が配信されます。
リモートでrqt_image_viewなどを使用すれば、実際にどのラインを検出しているのかが分かるようになっています。
rqt_image_view
ステレオカメラ画像の歪み補正とステレオ平行化を行うコード例です。
詳細は https://rt-net.jp/mobility/archives/17588 に記載しています。
こちらのNotebookでカメラパラメータファイルを作成しconfig/camera_param_fisheye.npz
を作成したものと置き換えます。
次のコマンドでノードを起動します。
roslaunch jnmouse_ros_examples image_undistortion.launch
/camera_l/image_rect_color、/camera_r/image_rect_colorに歪み補正とステレオ平行化された画像が配信されます。
リモートでrqt_image_viewなどを使用すれば、補正前と補正後の画像を見比べることができます。
rqt_image_view
下記コマンドで歪み補正した画像を用いてライントレースを行います。
roslaunch jnmouse_ros_examples line_following_undistortion.launch
スマホVRでJetson Nano Mouseを操作するためのコード例です。
詳細は https://rt-net.jp/mobility/archives/16161 に記載しています。
次のコマンドでノードを起動します。
roslaunch jnmouse_ros_examples teleop_vr.launch
VRグラスをセットしたスマートフォンから http://jnmouse.local:8085/jnmouse_ros_examples/ にアクセスします。
ステレオカメラ画像から深度推定を行うコード例です。
詳細は https://rt-net.jp/mobility/archives/18036 に記載しています。
image_undistortionによる補正済み画像を用いるため、image_undistortionの環境構築と動作確認を行ってください。
次のコマンドでノードを起動します。
roslaunch jnmouse_ros_examples stereo_depth_estimation.launch
/depth/image_rectに深度画像が配信されます。
リモートでrvizなどを使用すれば、深度画像を見ることができます。
rviz
下記コマンドを実行した場合はカメラ**に写った物体までの推定距離がターミナルに表示されます。また目印として深度画像**に円が描画されます。
roslaunch jnmouse_ros_examples stereo_depth_estimation.launch debug:=true
(C) 2020 RT Corporation <support@rt-net.jp>
各ファイルはライセンスがファイル中に明記されている場合、そのライセンスに従います。特に明記されていない場合は、Apache License, Version 2.0に基づき公開されています。 ライセンスの全文はLICENSEまたはhttps://www.apache.org/licenses/LICENSE-2.0から確認できます。
※このソフトウェアは基本的にオープンソースソフトウェアとして「AS IS」(現状有姿のまま)で提供しています。本ソフトウェアに関する無償サポートはありません。 バグの修正や誤字脱字の修正に関するリクエストは常に受け付けていますが、それ以外の機能追加等のリクエストについては社内のガイドラインを優先します。