A set of ROS packages for detecting ArUco markers.
- Uninstall opencv-python if it is installed. Having opencv-python and opencv-contrib-python will conflict with each other.
# Use the following for Python 3.
python3 -m pip uninstall opencv-python
- Install ROS geometry msgs, std msgs, and cv-bridge packages.
# Use the following for ROS Noetic.
sudo apt-get install ros-noetic-geometry-msgs ros-noetic-std-msgs ros-noetic-cv-bridge
- Install the following Python packages.
# Use the following for Python 3.
python3 -m pip install opencv-contrib-python>=4.6.0.66 scipy>=1.9.0 --user
- Install sensing-aruco Python package using the linked instructions (link). You should only follow the installation instructions.
Perform the following steps to install the ROS packages.
- Clone the sensing-aruco repository.
cd <catkin workspace>/src
git clone https://github.com/troiwill/sensing-aruco-ros
cd sensing-aruco-ros
- Make the scripts executable.
chmod +x sense_aruco_ros/nodes/aruco_detector_node
- Build the workspaces.
cd <catkin workspace>
catkin build
- Source the catkin workspace.
source devel/setup.bash
Run the Gazebo demo.
# In one terminal tab, run:
roslaunch sense_aruco_simulations run_marker_sim_demo.launch
# In a second terminal tab, run the command to ensure the detector node works:
rostopic echo /aruco_marker_poses