Jetson Nano ros melodic+realsense+aruco

一、realsense SDK和realsense-ros安装

参考链接:Ubuntu18.04 + ROS melodic 安装使用 RealSenseD435i_Lynn_mg的博客-CSDN博客_ubuntu18安装realsenseicon-default.png?t=N7T8https://blog.csdn.net/Lynn_mg/article/details/103149489

(一)安装realsense SDK

1.下载source

git clone https://github.com/IntelRealSense/librealsense

cd librealsense

2.安装依赖项

sudo apt-get install libudev-dev pkg-config libgtk-3-dev

sudo apt-get install libusb-1.0-0-dev pkg-config

sudo apt-get install libglfw3-dev

sudo apt-get install libssl-dev

3.安装权限脚本

sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/

sudo udevadm control --reload-rules && udevadm trigger

4.编译安装

mkdir build

cd build

cmake ../ -DBUILD_EXAMPLES=true

make

sudo make install

5.测试

进入librealsense/build/examples/capture,测试效果:

./rs-capture

或直接使用realsense-viewer工具查看效果:

realsense-viewer

(二)安装realsense-ros 

1.下载编译

mkdir realsense_ws

cd realsense_ws

mkdir src

cd src

git clone https://github.com/IntelRealSense/realsense-ros.git

git clone https://github.com/pal-robotics/ddynamic_reconfigure.git

cd ..

catkin_make

如果出现错误:

CMake Error at /opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake或者出现其他bridge的编译错误,解决方法都类似,只需修改错误提示中的cmake文件即可。

原因: ros默认的opencv路径是/usr/include,/usr/lib,/usr/share三个目录,而nano的官方镜像自带的opencv是opencv4。

解决方法:

修改上述cv_bridgeConfig.cmake文件中的第96行,把 /usr/include/opencv 改为/usr/include/opencv4。如果是我们自己从opencv官网源码编译安装的opencv是装在usr/local/include目录下,修改96行的/usr/include/opencv为/usr/local/include/opencv4。然后重新 catkin_make并source一下

source devel/setup.sh

2.测试

realsense相机出厂时标定过参数,可以通过以下方法查看:

打开相机

roslaunch realsense2_camera rs_camera.launch

查看realsense所发布的话题

rostopic list

rostopic echo /camera/color/camera_info (查看相机内参)

 二、aruco-ros安装

参考链接:
使用USB网络摄像头和ROS跟踪ArUco Markers_W_Tortoise的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/learning_tortosie/article/details/83147232

 1.下载编译

mkdir -p ~/aruco_catkin_ws/src

cd ~/aruco_catkin_ws/src

git clone https://github.com/pal-robotics/aruco_ros.git

cd ..

catkin_make install

source install/setup.bash

 如果出现错误:xxx version要求,意思就是找不到camke文件中所指向的依赖包或者版本不符,可通过修改错误提示中相应cmake中所指指向的依赖包版本为当前系统中所安装的版本或者安装其相应版本解决。

 2.安装USB摄像头的ROS驱动

sudo apt-get install ros-melodic-usb-cam

 3.修改single.launch文件内容

在aruco_ros这个包中有三个launch文件,分别是single、double、publish,原本是通过USB摄像头工作的,对于realsense相机需要修改参数。

gedit src/aruco_ros/aruco_ros/launch/single.launch

 修改前

<launch>
 
    <arg name="markerId"        default="582"/>
    <arg name="markerSize"      default="0.034"/>    <!-- in m -->
    <arg name="eye"             default="left"/>
    <arg name="marker_frame"    default="aruco_marker_frame"/>
    <arg name="ref_frame"       default=""/>  <!-- leave empty and the pose will be published wrt param parent_name -->
    <arg name="corner_refinement" default="LINES" /> <!-- NONE, HARRIS, LINES, SUBPIX -->
 
 
    <node pkg="aruco_ros" type="single" name="aruco_single">
<!--        <remap from="/camera_info" to="/stereo/$(arg eye)/camera_info" />-->
<!--        <remap from="/image" to="/stereo/$(arg eye)/image_rect_color" />-->
        <remap from="/camera_info" to="/camera/color/camera_info" />
        <remap from="/image" to="/camera/color/image_raw" />
        <param name="image_is_rectified" value="True"/>
        <param name="marker_size"        value="$(arg markerSize)"/>
        <param name="marker_id"          value="$(arg markerId)"/>
        <param name="reference_frame"    value="$(arg ref_frame)"/>   <!-- frame in which the marker pose will be refered -->
<!--        <param name="camera_frame"       value="stereo_gazebo_$(arg eye)_camera_optical_frame"/>-->
        <param name="camera_frame"       value="/camera_link"/>
        <param name="marker_frame"       value="$(arg marker_frame)" />
        <param name="corner_refinement"  value="$(arg corner_refinement)" />
    </node>
 
</launch>
 

修改后 

<remap from="/camera_info" to="/camera/color/camera_info" />       

<remap from="/image" to="/camera/color/image_raw" />



<param name="camera_frame"       value="/camera_link"/>

编辑完成后,返回到aruco_catkin_ws重新source一下

  三、运行

1.生成aruco码

 从下方网址生成实验所需的aruco码,注意设置为original aruco,参数设置要和上面修改的launch一样,如下图。

Online ArUco markers generator (chev.me)icon-default.png?t=N7T8https://chev.me/arucogen/

2.运行

 roslaunch realsense2_camera rs_camera.launch

 roslaunch aruco_ros single.launch

# 观察识别效果

rosrun image_view image_view image:=/aruco_single/result

# 查看位姿

rostopic echo /aruco_single/pose

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值