Pick and Place progress - OSU-AIMS/tic-tac-toe GitHub Wiki
Static Camera Mount with rectangular prism object
Paper w/ edge detection:
- Used OpenCV Contour/edge detection to find a rectangle from a live video feed (top down view)
- A static “landing pad” ( a piece of paper ) was used as a reference frame for the output position, used the known size of the paper as scale for pixel to centimeter conversion.
- Robot position was based on origin of paper in relation to robot origin
- Object orientation (z-axis) found in image frame of camera, multiplied by a rotation matrix when passing orientation angle to robot
Limitations/Issues:
- Accuracy decreases when object on outer bounds of paper/camera frame, the contour detection sees the side of the object as the top
- Overall precision of the output position was unreliable. The 6mm stroke of the PGN64 gripper requires a more precise object centroid position.
- Object is limited to the landing pad
- Landing pad dimensions has to be known
- Gripper can only pick up at specified angle
Relevant files:
Robot Camera Mount with rectangular prism object
Edge detection w/ no paper:
- Used OpenCV Contour/edge detection to find a rectangle from an image (top down view)
- No landing pad, object can be anywhere in the view of the camera
- Contour detection looks for the largest rectangle in view
- Extracting object info from a single image is easier to work with than continuous video feed
Limitations/Issues:
- No reference object for pixel to centimeter conversion limits camera to a fixed height
- Requires a solid color background or will detect table characteristics as contours
- Successful and consistent contour detection depends on lighting conditions of environment
Relevant files:
Color vision:
- Used OpenCV image manipulation capabilities to filter color channels before running through contour detection filter
- filters out background to make contour detection easier and more accurate
- helps with filtering out the shadows of the robot and the object itself