-
Realsenseパッケージをインストール
sudo apt-key adv --keyserver keys.gnupg.net --keyserver-option http-proxy=http://proxy.uec.ac.jp:8080 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo focal main" -u sudo apt-get install librealsense2-dkms sudo apt-get install librealsense2-utils sudo apt-get install ros-noetic-rgbd-launch sudo apt-get install ros-noetic-realsense2-camera
※1つ目のコマンドはproxyを設定しているので,学外でインストールするときは注意
-
物体認識rosパッケージと依存ライブラリをダウンロード
pip install open3d opencv-python pip install opencv-contrib-python pip install gdown cd ~/catkin_ws/src git clone https://github.com/naka-lab/ros_vision.git git clone https://github.com/naka-lab/ros_utils.git
-
realsenseを起動
roslaunch realsense2_camera rs_rgbd.launch align_depth:=True
-
物体検出・認識ノード起動
rosrun ros_vision tabletop_object_recognition.py
-
物体認識結果の受信
- String型の
/object_rec/object_info
というトピック名でyaml形式の文字列送信されます - 受信方法は,これを参照
- String型の
- 物体検出・認識のパラメータはrosparamで設定
rosrun ros_utils param_setting_gui.py
でGUIからも設定可能- 設定可能なパラメータ
point_cloud/rotate_image
:画像を回転するかどうかobject_rec/plane_detection/depth_skip_num
:計算に利用する点の間隔.大きくすると高速になるが精度が下がる可能性がある.object_rec/plane_detection/distance_threshold
:平面に含まれる点の距離object_rec/plane_detection/ransac_n
:平面のパラメータを計算するのに使われる点の数object_rec/plane_detection/num_iterations
:ransacの繰り返し回数object_rec/plane_detection/min_dist_from_plane
:計算に利用するポイントクラウドの平面からの距離の最小値object_rec/plane_detection/max_dist_from_plane
:計算に利用するポイントクラウドの平面からの距離の最大値object_rec/pointcloud_clustering/eps
:1つの物体に含まれる点の密度object_rec/pointcloud_clustering/min_points
:物体として検出される最小の点の数object_rec/pointcloud_clustering/rect_min
:物体として検出される最小の縦と横の長さobject_rec/pointcloud_clustering/rect_max
:物体として検出される最大の縦と横の長さobject_rec/show_result
:結果を表示するかどうか
~/catkin_ws/src/ros_vision/scripts/objects/
内に000
,001
,・・・というディレクトリに認識対象物体の画像を入れる- ディレクトリ名
000
,001
,・・・が認識された際のlabelになる - 物体画像の保存
rosrun ros_vision image_saver.py
- ウィンドウに表示されている画像をドラッグして保存領域を設定
s
をを押すと画像が連番で,~/catkin_ws/src/ros_vision/scripts/tmp_img/
に保存される- 保存された画像を
~/catkin_ws/src/ros_vision/scripts/objects/
内に000
,001
,・・・へ移動する
-
realsenseを起動
roslaunch realsense2_camera rs_rgbd.launch align_depth:=True
-
物体検出・認識ノード起動
rosrun ros_vision ssd_object_recognition.py
-
物体認識結果の受信
- 物体検出・認識のパラメータはrosparamで設定
rosrun ros_utils param_setting_gui.py
でGUIからも設定可能- 設定可能なパラメータ
ssd_object_rec/conf_thresh
:物体検出するconfidenceのしきい値ssd_object_rec/show_result
:結果を表示するかどうか
-
realsenseを起動
roslaunch realsense2_camera rs_rgbd.launch align_depth:=True
-
ARマーカー認識ノード起動
rosrun ros_vision ar_marker_recognition.py
-
物体認識結果の受信
- String型の
/ar_marker_rec/object_info
というトピック名でyaml形式の文字列送信されます - 受信方法は,これを参照
- 物体のlabel番号にARマーカーのIDが入る
- String型の
point_cloud/rotate_image
:画像を回転するかどうか
-
realsenseを起動
roslaunch realsense2_camera rs_rgbd.launch align_depth:=True
-
OpenPoseノード起動
rosrun ros_vision open_pose.py
初回起動時はモデルをダウンロードしてくるため起動に時間がかかる
-
姿勢推定結果の受信
- String型の
/open_pos/pose_info
というトピック名でyaml形式の文字列送信されます - 受信方法は,これを参照
- String型の