top of page
  • Yingnan

AR QR Marker (Fiducial Marker)

已更新:2022年9月12日

目标:通过机器视觉二维码识别进行高精度定位


git clone https://github.com/machinekoder/ar_track_alvar.git -b noetic-devel

cd ~/ar_tracker_alvar_ws/

catkin_make

Create Fiducial Code:

rosrun ar_track_alvar createMarker



This package bridges opencv and ROS.




Test Package Dependancies:

roscpp rospy rosmsg tf2 tf2_ros tf2_geometry_msgs std_msgs geometry_msgs image_transport cv_bridge message_generation


Launch File:

<launch> <param name="robot_description" textfile="$(find formal01_rplidar_hector)/urdf/urdf/roban_chassis.urdf" /> <node pkg="rviz" type="rviz" name="rviz" args="-d $(find formal02_ar_marker_tracker)/config/ar_tracker.rviz"/> <node pkg="joint_state_publisher" type="joint_state_publisher" name="joint_state_publisher" /> <node pkg="robot_state_publisher" type="robot_state_publisher" name="robot_state_publisher" />

以上为原机器人底盘模型,rviz调用 <arg name="open_rviz" default="true"/> <arg name="marker_size" default="2.0"/> <arg name="max_new_marker_error" default="0.08"/> <arg name="max_track_error" default="0.2"/> <arg name="cam_image_topic" default="/camera/rgb/image_raw"/> <arg name="cam_info_topic" default="/camera/rgb/camera_info"/> <arg name="output_frame" default="/camera_link"/>

以上为launch文件变量参数 <include file="$(find astra_camera)/launch/astra.launch"/>

调用astra s深度相机 <node name="ar_track_alvar" pkg="ar_track_alvar" type="individualMarkersNoKinect" respawn="false" output="screen">

<param name="marker_size" type="double" value="$(arg marker_size)"/> <param name="max_new_marker_error" type="double" value="$(arg max_new_marker_error)"/> <param name="max_track_error" type="double" value="$(arg max_track_error)"/> <param name="output_frame" type="string" value="$(arg output_frame)"/> <remap from="camera_image" to="$(arg cam_image_topic)"/> <remap from="camera_info" to="$(arg cam_info_topic)"/> </node>

调用ar marker节点 </launch>


Topics:

rostopic echo tf

发布目标坐标系变化

23 次查看0 則留言

2022 Yingnan Bao All Rights Reserved

linkedin-logo-512x512_edited_edited.png
bottom of page