Skip to content

Perception

Quintin edited this page Jun 8, 2022 · 39 revisions

ArUco Markers

Overview

ArUco markers (which are a type of fiducial markers) are special patterns than encode numbers:

image

Often time the course will have these placed around so we can orient our rover and execute a certain task.

Detection Method

We use a modified version of the aruco_detect package to detect AR tags. OpenCV is used to run detection on the camera stream. This gives us information about where the tag is in pixel space, specifically its four corners. We can then fuse this with point cloud data, which gives us the xyz position for any given pixel relative to the camera. Specifically, we query the pointcloud at the center of the marker and thus find its transform relative to the rover.

image

We then publish the tags to the tf tree.

Visual Odometery

Obstacle Detection

Starter project: use OpenCV to detect the target

Glossary

  • AruCo: Special pattern of black and white blocks that encode a number. Often times called a fiducial marker
  • Stereo Camera: A camera that uses stereo rectification to produce point clouds
  • Zed 2i: The stereo camera that we use
  • OpenCV: A computer vision library
  • Point Cloud: A collection of 3D points that roughly describe a scene
  • Odometry: The "pose" of an object, in other words description of where it is in the world (usually position and rotation)
  • Pixel Space (or Camera Space): x and y coordinates of where a pixel is in an image
Clone this wiki locally