A Geometric Approach To Robotic Laundry Folding

A Geometric Approach To Robotic Laundry Folding

Abstract

We consider the problem of autonomous robotic laundry folding, and propose a solution to the perception and manipulation challenges inherent to the task. At the core of our approach is a quasi-static cloth model which allows us to neglect the complex dynamics of cloth under significant parts of the state space, allowing us to reason instead in terms of simple geometry. We present an algorithm which, given a 2D cloth polygon and a desired sequence of folds, outputs a motion plan for executing the corresponding manipulations, deemed g-folds, on a minimal number of robot grippers. We define parametrized fold sequences for four clothing categories: towels, pants, short-sleeved shirts, and long-sleeved shirts, each represented as polygons. We then devise a model-based optimization approach for visually inferring the class and pose of a spread-out or folded clothing article from a single image, such that the resulting polygon provides a parse suitable for these folding primitives. We test the manipulation and perception tasks individually, and combine them to implement an autonomous folding system on the Willow Garage PR2. This enables the PR2 to identify a clothing article spread out on a table, execute the computed folding sequence, and visually track its progress over successive folds.

Videos

Autonomous Folding of Long-Sleeved Shirt

(.MP4)

Open-Loop Folding of Short-Sleeved Shirt

(WMV)
Resulting fold, after flipping:

Open-Loop Folding of Long-Sleeved Shirt

(WMV)
Resulting fold, after flipping:

Open-Loop Folding of Pants

(WMV)

Open-Loop Folding of Towel

(WMV)

Code

Our fold-manipulation and perception code can be found in the folding and visual_feedback stacks of ROS. To download these stacks, see our GitHub repository.

For the raw dataset of the articles used in our Shape Models experiment, see this zip file. Check back shortly for annotations, models used, and an explanation on how to test on this dataset.