Abstract
The research focuses on the development of a robust home service robot that is capable of doing multiple types of household chores. This work considers the problem of garment perception and folding procedure by a home service robot, focusing on the task of recognizing a piece of spread-out garment on a flat platform. The robotic platform setup is as general as possible to enable the robot to cater for multiple types of household chores. We propose a novel approach to understand the perception for a piece of garment using particle-based polygonal model and an algorithm to best-fit the model into the garment in an image directly rather than designing the template from a software. The simplest way to analyze the basic configuration of a piece of unknown garment is to spread out the garment on a flat platform. There must be contrast between the background and the garment color to enable proper recognition process. At the moment, the garment is aligned at a certain orientation for simplicity. We defined the particle-based polygonal model for three garment categories: towel, shirt, and trousers. Each category has its own model and parameters. We presume a garment consists of at least one main body and other supplementary parts, for example, collar or sleeve, if they exist. Hence, we consider towel consists of only one main body, whereas shirt and trousers consist of one main body and two supplementary parts. Centroid and contour for each part of garment are measured after the garment is discretized. By matching the particle-based model into its discretized contour and generate the combined model, the parameters for each category of garment can be estimated. Once the parameters of garment are obtained from the proposed model, the folding procedure is then determined. Practical garment folding using different types of garments were executed to evaluate the proposed approach. Based on the experimental results, the proposed particle-based polygonal models for the three types of garments have been successful, where the parameters can be estimated, which provides important decision on the folding algorithm. Using our approach, different types and sizes of garment can be robustly handled by a home service robot.
Introduction
One of the main tasks that are important for home service robot in assisting humans in household chores is to handle deformable objects such as garment. Handling of these deformable objects may seem as a simple task for humans, but for robot to learn these tasks is very challenging due to the complexity of the manipulation itself. From the state of art in laundry robotic research, the difficulty of garment manipulated by general purpose robot is exemplified in different areas such as classification, pose recognition, and unfolding and folding of garment. In the sequential manipulation, the process may fail to proceed possibly due to the limitation in the robot understanding of the situation. Because garment has a very high-dimensional configuration spaces and is flexible and nonrigid, the problem of perception in recognition and manipulation planning is rather challenging, as the shape can easily change. Furthermore, the configuration of garments are easily affected by the external force. Due to the innumerable transformation of configuration in which the garment can be deformed during manipulation, recognition and handling skill based on the perceptual understanding of the deformable object is commonly employed as the key role when considering robotic manipulation especially for the home service robot that needs a knowledge base to manipulate different types and sizes of garments during chores. In the state of art, one of the problems in autonomous garment handling that need to be solved is the ability to recognize the configuration of an unknown garment crudely spread out on a flat platform. For example, if a new rectangular towel is placed on the flat platform, the main body and its parameters such as edges and corners can be easily recognized by robot. But to recognize a new shirt or trousers, the robot should acquire extra ability to learn the addition parameters such as the location of main body, sleeves, collar, height and width of shirt or trousers, and the length of sleeves.
In robotic manipulation, the basic configuration of an unknown garment needs to be understood from the robot’s point of view. One of the simplest ways to extract the parameters from an unknown garment is to analyze its configuration after it is crudely spread out and placed uniformly on the flat platform after unfolding by the robot. The particle-based modeling of deformable object can then be adopted into this proposed approach. The dynamic programming algorithm is used to generate the garment mesh model directly from the image rather than design it from the software such as Maya and Blender. The garment mesh model that is generated from this approach will bridge the gap between physical simulation and real-world robotic manipulation since the parameters of real garment can be easily acquired from the proposed model.
The objective of this article is to describe the basic configuration of an unknown garment by using the parameterized particle-based polygonal model. We presume a piece of garment consists at least one main part followed by its supplementary parts. From this presumption, we are able to discretize the garment into several parts and analyze them separately. In addition, we consider this proposed model to be associated with both polygonal and particle-based models. The polygonal model can be used to classify the garment into different categories. Thereafter, a completed model for each category of garment can be generated automatically by using this algorithm. The extended parameters of different garments based on their own model were collected and embedded into robotic manipulation system. The proposed approach involves computer vision, image analysis, and the perception of garment and manipulation planning. The following points summarizes the main components of this approach: When presented with an unseen garment on the flat platform as shown in Figure 1(a), a contour of the garment is extracted and classified into its category. For each category of garment, we attempt to find a minimum set of discretized parts to describe its configuration from the contour obtained in Figure 1(b). Particle-based polygonal model for each garment category is then constructed. We define a new contour and centroid for each discretized parts as shown in Figure 1(c). The particle-based model is constructed for each discretized part. We optimize the model to find the best-fitting according to the contour of garment. The garment mesh model can be generated by combining all discretized models as shown in Figure 1(d). A set of parameters to describe the configuration of a garment can be defined as shown in Figure 1(e). We use the result obtained from the model as guideline input in the folding process.

A piece of garment fitted using particle-based polygonal model.
The content of the article is organized as follows. The “Related work” section discusses the related work on the recognition and manipulation of garment in robotic system. The “Particle-based polygonal model” section describes the algorithm to generate the mesh model of garment by using the particle-based polygonal model. The “Experiments” section demonstrates the experimental result and discussion of the proposed approach. The “Conclusion” section concludes the current work and discusses some possible future improvement.
Related work
Robotic manipulation tasks such as autonomous laundry service has attracted much attention among researchers in recent years. From the state of art, developing a generic robot to perform end-to-end home services such as laundry task has yet to be successful, not achieving the required robustness and stability. In the literature, numerous efforts and contributions have been made from different aspects. Generally, the garment-handling procedure in robotic manipulation can be categorized into several research domains as shown in Figure 2. A series of works had been reported by Kita and collaborators on state estimation of a hanging garment being held by a single end effector using single view and stereo images. 1,2 In their works, the three-dimensional (3-D) garment model was matched to the silhouette of a hanging garment from a collection of captured images. The objective of this process is to obtain the best-fitting model from matching between the precomputed deformable models and image observed data.

Overview of garment-handling procedure in robotic manipulation process.
Willimon et al. 3,4 proposed an approach using interactive perception to classify the category of a piece of garment in pile from an color image, where only single robotic arm is utilized to isolate the garment in their handling process. Their method is highly dependent to the color-based segmentation to distinguish the garments in pile. Hamajima and Kakikura 5 proposed a classification and planning strategy to unfold a piece of garment start from a pile of clothes. Kobori and collaborators 6 proposed the extended work of clothes manipulation planning toward flattening and spreading. Osawa et al. 7 proposed the approach of unfolding a garment using template matching by comparing between the current garment configuration with their sample database. Yamakazi and Inaba 8 presented an algorithm for humanoid robots to detect the location of clothes based on the recognition of wrinkles in images. Sahari and collaborators 9 proposed an approach to trace a piece of cloth from one corner to another through its edge using an inchworm gripper to unfold it.
Miller and collaborators presented a series of works in garment recognition and manipulation by using PR2 robot. Initially, they proposed an autonomous strategy of towel folding based on vision detection and recognition of the corners of towel to perform a sequential manipulation process. 10 Later, a parametric polygonal model for different categories of garments such as towel, shirt, and trousers had been proposed. 11 Applying the image segmentation process, the contour of a garment placed on a flat surface had been fitted by their proposed model iteratively and then its category and parameters can be estimated from their model. The manipulation and perception tasks had been combined and implemented into their autonomous folding system. Similar methods were used to recognize the configuration of socks by applying local fitting of their textile and silhouette with shape matching method. 12 Cusumano et al. 13 proposed a clothing recognition and manipulation technique by using the PR2 robot that is capable of handling the task of folding and unfolding a garment.
Doumanoglou et al. 14 proposed a dual-arm industrial robot to unfold different garments such as sweater and trousers. They focused on classification and pose recognition of hanging garment and then proceeded to unfold it into desired configuration. The manipulating process was highly dependent on depth images captured from range sensors and then applying random decision forests algorithm to estimate the best two grasping key points for their manipulator.
Li et al. proposed a series of laundry works using the Baxter robot. First, the database was based on simulated deformable model of hanging garments and then trained to recognize the category and pose of garment using support vector machine. 15 In a later work, they then used the Kinect Fusion technique to reconstruct a deformable 3-D model and then to predict the pose of garment. 16 They also proposed an approach of trajectory optimization in garment folding. 17 In their work, the robotic gripper followed the trajectory that optimized from offline simulation to fold the garment in order to prevent it from sliding.
The previous works that are closest to this research work were conducted by Miller et al. 18 and Stria et al. 19 Miller and his collaborators proposed a shape-based classification method to obtain the related parameters to best-fit their polygonal model to a piece of garment that is crudely spread out and reveal its regular shape on a flat surface before folding. 18 However, some failures of their polygonal model were reported due to lack of detailed structure information and poor initialization to distinguish the landmarks to the garment in their model fitting algorithm.
Similar work was also reported by Stria and his collaborators 19 by using the polygonal model incorporating relative angle and length of contour segments. They reported their results may fail mainly caused by their proposed vision sensing algorithm and robotic manipulation range limitation. In addition, they also reported that the most problematic task in their model is to determine the exact locations of shoulders that at times were confused with the neckline in shirt, but these errors were neglected in the automated folding technique proposed by them.
Particle-based polygonal model
As a preliminary step in the process of garment manipulation by robot, the robustness and stability to classify the category and recognize its current configuration is very challenging. In this algorithm, we presume a piece of garment that is crudely spread out and placed on a flat platform with contrasting background color with respect to the garment. We perform a computer vision task by utilizing a single color image captured from the top view of the garment. Several types of image processing methods are used to suppress irrelevant information from original image. Basic morphology operations are used to remove the noise and also optimize the edges of object in the images. The contour of garment is extracted from the segmentation task. The category of garment is estimated by measuring its silhouette and structure acquired from segmentation. Next, the garment can be discretized into the main body and its supplementary parts based on its category and each part then fitted by a particle grid. Once the particle-based polygonal models are matched and optimized, the parameters such as corners and edges are known and predictable in the folding process. The applied image processing methodology is described in Figure 3.

Pipeline for image processing of particle-based polygonal model.
Segmentation
Image segmentation is one of the important parts in this image analysis. In the early assumption, the color of garment is supposed sufficiently different from the color of background (platform). Initially, an image with only the background platform without any garment is captured. The region of garment in the image can be measured by computing the difference between new image and background image at each pixel. The silhouette of garment can be acquired from the image by using GrabCut algorithm. 20 The foreground region that represents the garment can be extracted from background region. Later, the color image is converted into grayscale image. Some morphology operations such as thresholding, erosion, and dilation are used to remove noise and enhance the regions of a real object. The silhouette of garment can be improved from thresholding by labeling the ith pixel as pi based on the equation
where t1 and t2 are the lower and upper thresholds, respectively.
Contour finding
Contour finding is a key role in understanding the observed data in an image. The classifier for object recognition can be further developed from the exact contour description. In this research, 3-D garment is represented in a two-dimensional (2-D) plane where thickness is neglected. Based on this assumption, a silhouette can be computed in two dimensions from an image. The contour of garment can be considered as a polygon with numerous points depending on its shape complexity. As an example, for a piece of shirt shown in Figure 1(b), the contour and centroid of the garment in a binary image can be measured after the segmentation process using contour finding algorithm in OpenCV is executed. Furthermore, additional parameters such as area, maximum width, and height to form a rectangle can be approximated. Due to the unavoidable noise and disturbance obtained from the texture and pattern of garment, the contour with maximum area is selected and its information is used to classify the category of the garment. We define the parameters of contour by the components
where x and y represent the position of the centroid from the image.
where bn represents the element of boundary of contour
The difference between these two rectangles is the straight bounding rectangle does not consider the rotation of the contour but the rotated rectangle drawn with minimum area enclosing the contour, where x and y represent the starting position of rectangle, and w and h represent the width and height of rectangle, respectively. θ represents the angle of rotation
where O represents the centroid of contour, B represents the boundary elements of contour, A represents the area of contour, and Rsb represents the straight bounding rectangle that covers the contour and Rrot represents the rotated rectangle with minimum area as shown in Figure 4.

The detail of contour in an image.
Category classification
The parameters obtained from contour finding are used to classify the category of the garment. The angle of rotation from rotated rectangle is used to estimate the relative angle between x and y axes. The orientation of captured image is rotated according to the angle of rotation and the contour can be optimized before classification. To reduce the complexity, the position and orientation of garment is presumed that uniformly placed in the same direction after unfolding by robot. The captured image and the proposed model are rotated back to their initial orientation after the analysis is completed. The category of garment can be estimated by using simple multiple lines detection and comparison with the contour. We distinguish the width and height of garment into five layers in its contour. Starting from the centroid of rectangle, the distance ratio dr between one layer to another layer can be approximated as
where G represents the gap ratio of the nearest layer to the rectangle and N represents the number of layers. In this case, the N = 5 and empirically we set G = 0.06, the distance ratios are approximately 0.22w and 0.22 h, where w and h represent the width and height of rectangle R obtained from contour finding, respectively. Figure 5 shows more information about the polygonal model for each category of garments. Each polygonal model is determined by its width (

Polygonal model for each category of garment. Measurement of the vertices position, width, and height at different layers and determination of its relationship with respect to its centroid.
Garment discretization
Depending on the shape complexity for each garment, the garment can be discretized into separated parts such as main body, collar, and sleeve. We extract the parameters of a garment and learn its perception from the captured image. In this process, these separated parts of garment are more closely similar to the 2-D pattern of the garment design before seaming process. After the garment is categorized, the garment can be discretized into several parts by exacting the main body and followed by its supplementary parts. In order to exact the main body from the garment, the width and height of the rectangle are computed using the data measured from the category classification. Consider a piece of shirt and a pair of trousers, they can be divided into its branches with one main body and two sleeves from their category as shown in Figure 6.

Shirt (top) and trousers (bottom) labeling with main body (M) and sleeves (S1 and S2), respectively.
Referring to Figure 5, the rectangle
where As and Am represent the area of supplementary part and the area of main body, respectively, that are measured from the testing samples.
Particle grid fitting
For each category of garment, its contour can be described by using a polygonal model. There are three categories of garments discussed in this article: towel, trousers, and shirt. For each polygonal model, they are discretized into separated parts based on its complexity as shown in Figure 7.

Centroid (red) for each discretized part and landmarks (black) of garment for each category.
They are determined by their own centroid and contour for each discretized part. Every separated parts including main body and supplementary parts have their individual parameters obtained from contour finding approach. In the category of shirt, it consists of three discretized parts and it can be approximated by filling a rectangle into each region as shown in Figure 10(a). To transform rectangle R(w, h) into the particle grid for each discretized parts of garment, simple rectangular grid with symmetry mesh size m × n is utilized in this work. The odd number that is greater than or equal to three is allowable and used as grid size in order to preserve the centroid and structure of contour. Thus, a mesh of m × n particles in the rectangular grid with arrangement
The grid size is determined manually for each discretized part in different garment categories. For a towel, the grid size of 5 × 5 is applied into its contour because the main body can be represented by a simple rectangular mesh. Meanwhile, the lowest grid size of 3 × 3 is applied to the supplementary parts ns of the shirt and trousers. Referring to Figure 9, if the grid size of supplementary part ns is known, the grid size of main body nm for trousers and shirt can be approximated as
where

Transforming the rectangle into particle grid.

Details of grid size for shirt (left) and trousers (right).

Applying the particle grid into the rectangle of discretized parts in shirt.
Each contour surrounded by the rectangle can be reconstructed as a rectangular mesh in lattice structure by connecting a number of particles as shown in Figure 10(b).
Model matching
Once the particle grid is applied, the outer particles (grid’s boundary) are matched to the contour of discretized part. To optimize the contour matching, the position of particles along the edge are realigned before applying the edge matching algorithm. Later, the inner particles located inside the grid can be realigned in order to preserve the mesh structure of the model. The mesh structure of the main body and supplementary parts can be combined to form a completed particle-based polygonal model. The dynamic programming algorithm of particle-based model matching procedure can be divided into four main components: Contour matching: match the particles at the edge of grid to the contour. Edge realignment: realign the particles at the edge of grid before contour matching. Mesh realignment: realign the particles inside the mesh structure of grid. Model combination: combine the nearest particles along edge of grid to another grid.
Contour matching
The grid’s boundary are separated into four edges as shown in Figure 11. They can be grouped into four edges and contour matching for each edge can be applied separately. To optimize the contour matching, the contour matching with edge realignment is implemented rather than directly matching all particles to the contour. To avoid the particles mapped at the same point, the adjustable enclosing box is used to control the range of particles during the matching process. The distance between the outer particle P along to the contour C within the enclosing box can be measured. Then the outer particle P can be aligned to the nearest point cn of the contour C. The minimum distance d between the particle P and the point c of the contour C can be computed as
where c(x, y) represents the position along the contour C within the enclosing box, P(x, y) represents the position of particle, and

Contour matching using particle grid.
Edge realignment
The outer particles at the neighbor edge will be realigned before contour matching based on the previous edge that is already mapped to the contour as shown in Figure 12. The algorithm of edge realignment is considered as an additional optimization process before edge matching is applied to the outer particles to the contour. Depending on the category of garment, the contour matching can be initiated at any edge and direction in the particle grid either top/bottom before left/right or vice versa. The purpose of this algorithm is to optimize the precision of the particles of edge to match to the complex contour such as the inclined edge of sleeve in the shirt and trousers. The particles located on left/right edge will realign vertically after top/bottom edge matches the contour. Similarly, the particles located at top/bottom edge will realign horizontally after the left/right edge matching is completed. The average width of top edge wt and bottom edge wb and the average height of left edge hl and right edge hr can be computed as

Edge realignment for left edge after contour matching of top and bottom edges.
The new position of outer particles for each edge (top Pt, bottom Pb, left Pl, and right Pr) can be realigned as
For the main body of garment, the contour matching starting at the top and bottom edges are applied simultaneously. The edge alignment followed by the contour matching is applied to the left and right edges. For the shirt, there are several different supplementary parts due to the inclined edge of the sleeve. First, the contour matching starting at the top edge is applied. The edge alignment followed by contour matching at the left and right edges are then applied. Lastly, the edge alignment and contour matching are applied to the bottom edge.
Mesh realignment
This algorithm is applied after contour matching where the outer particles at the grid’s boundary are aligned to the contour of discretized parts. The purpose of this approach is to realign the inner particles in the mesh structure to be more organized as shown in Figure 13. The distance between the particles in the mesh structure can be optimized. The average width along each row wj and the average height along each column hi can be computed as

Mesh alignment is employed after contour matching.
The new position of the inner particle can be computed as
Model combination
The algorithm is only applied to garments that consist of supplementary parts such as shirt and trousers. After the contour matching process is completed for all discretized parts, the particle-based model of supplementary parts can be combined with the main body to form a complete model as shown in Figure 14. The outer particles of the supplementary parts that are near to the main body can be combined with the particles of the main body. The new position of the particle Pnew after model combination can be computed as
where Pm and Ps represent the position of the particle of main body and supplementary parts, respectively. Furthermore, the distance dp between the particle Pi,j and its neighbor Pn in the model as shown in Figure 15 can be computed as
where

Model combination between discretized parts of garment. The first (red) and second (blue) of supplementary parts combine with main body, respectively.

The particle and its neighbors in particle-based model.
A completed particle-based polygonal model can then be constructed as shown in Figure 16. The process to discretize garments into separate parts and model matching is described in algorithm 1.

A completed particle-based polygonal model for towel (left), shirt (middle), and trousers (right).
Applying folded models
The proposed approach for this particle-based polygonal model can only be used for garments that are spread out on a flat surface. Furthermore, the particle arrangement in this proposed model can be used as an end-to-end guideline for a robot to fold the garment from initial stage to its final configuration. The images can be captured for each step when the garment is folded. The parameters can be extracted from the proposed model after matching it with the real garment. The robotic grasping point and folding line can then be approximated by specifying the particle in the proposed model. Thus, the folded model can be estimated before the real garment is manipulated by the robot. A static folded model where the real garment does not slip during the folding process is proposed, where the system will be able to track the configuration for each step in folding procedure. For the garment folding process, the sequence of the folded models can be described as shown in Figure 17.

Folded models for the category of garments: towel (top), shirt (middle), and trousers (bottom) and the sequences start from left to right.
Experiments
We performed two sets of experiment to test the proposed methods. The “Experiments on the data set of images” subsection shows the performance of the particle-based polygonal modeling on the data set of static images. The “Experiments on the folding test bed” subsection describes the folding procedure performed on the flat platform. The test bed consists of one Baxter robot with a flat platform. The control system is built on the Robot Operating System (ROS Indigo). The algorithms are written in Python. Figure 18 shows the current test bed and the images captured from the camera on the right hand of the Baxter robot. The right arm of Baxter robot is moved to a fixed point at position (x, y, z) and the height z of camera is approximately 68 cm perpendicular to the platform for image capturing.

Our experiment test bed using Baxter robot.
Experiments on the data set of images
We tested the proposed particle-based polygonal model on different spread-out garments. The images contain 550 × 550 pixels extracted from the original image and one pixel roughly corresponds to 0.167 cm in world coordinates. The irrelevant background in the image is removed. An unknown garment is crudely spread out when viewed from the camera. The specified locations of landmarks were annotated manually. A total of 45 sample images (15 towels, 15 shirts, and 15 trousers) were tested using this algorithm. For each image, the contour and centroid of the garment are first measured. Then, the garment is discretized into its main body and other supplementary parts, if they exist. Lastly, all discretized parts can be fitted by the particle grid according to their contour and matched to form a combined particle-based polygonal model. In this experiment, different sizes of towels were fixed by grid size 5 × 5 and their results are shown pictorially in Figure 19. The results show that the performance of the approach was good and the landmarks such as corners and edges can be estimated from the proposed model.

Different kinds of towels were fitted by the proposed model using grid size 5 × 5. (a) Centroids. (b) Landmarks. (c) Particle-based model.
Different shirts and trousers were also tested and the results are shown in Figures 20 and 21, respectively. To validate the effectiveness of the proposed algorithm, different positions and orientations of the garments are also tested as shown in Figure 22. Table 1 summarizes the particle-based polygonal model of various categories of garments. For the shirt model, the main body and sleeves of short-sleeved shirt were fitted by grid size of 7 × 7 and 3 × 3 particles, respectively. The contour can be well fitted by the proposed model but the shortcoming of this model is that the particle cannot fit to the corner of the sleeve precisely. For trousers, the main body and supplementary parts were fitted by grid size of 5 × 5 and 3 × 3 particles, respectively. The particle grid of main body is highly dependent on the length between the waist and the crotch. Table 2 summarizes the distance of particles computed from the model compared to the actual annotations. Figure 23 visualizes location of particles and landmarks for different configurations of the garments. The experimental result showed that the particles were fitted well in towel’s edges and corners. The maximum distance of the particle from the towel’s landmark is about 1.73 cm and the average distance of particles located from its landmarks is about 0.44 cm. For shirts, the result showed that identifying the sleeves landmarks is less precise compared with other landmarks since the sleeves are inclined and inconsistent in shape. For trousers, the waists and crotch landmarks are most problematic tasks in the model as shown in Figure 24. These landmarks are mostly affected by the crotch position. The particle that aligned to the edge rather than the corner in its contour will influence the accuracy of the proposed model when fitted to the garment. However, the particles are located near to the landmarks since the mesh structure of the object is considered in the particle-based model. In addition, different grid sizes using the proposed model are tested to the same garments as shown in Figure 25, and Tables 3, 4, and 5 summarize the details of different grid sizes applied to the same towel, shirt, and trousers, respectively.

Different kinds of shirts were fitted by the proposed model using grid size 7 × 7 and 3 × 3 for main body and supplementary parts, respectively. (a) Centroids. (b) Landmarks. (c) Particle-based model.

Different kinds of trousers were fitted by the proposed model using grid size 5 × 5 and 3 × 3 for main body and supplementary parts, respectively. (a) Centroids. (b) Landmarks. (c) Particle-based model.

Different positions and orientations of garments are tested. (a) Towels. (b) Shirts. (c) Pants.
Details of particle-based polygonal model to different categories of garments.
Location of the particles found by fitting the proposed model to various categories of garments.

Locations of the specified particles from the proposed model (red) and the manually marked landmarks (green).

Inaccurate landmarks of waist and crotch of trousers from the proposed model.

Different grid sizes of the proposed model are tested to the same towel (top), shirt (middle), and trousers (bottom) from coarse to fine. M: main body; S: supplementary part.
Details of towel model using different grid sizes.
Details of shirt model using different grid sizes.
Details of trousers model using different grid sizes.
The algorithms were implemented in Python and the result was evaluated on the desktop with Intel Core i7-6700 CPU of 3.40 GHz and 8 GB memory. The average time to generate the particle-based polygonal model from an image is less than 5 s. The polygonal model proposed by Miller et al. 18 and Stria et al. 19 is used to detect the landmark points through the contour of garment, which did not consider the entire structure of garment. Compared with their works, the particle-based polygonal model proposed in our work can be used to analyze an unknown garment, which includes the parameters such as landmarks, edges, and internal structure. Furthermore, the garment mesh model from coarse to fine can be generated directly from an image by using this algorithm and then used in the garment manipulation strategies such as category and pose recognition of deformable objects. It will bridge the gap between physical simulation and real-world robotic manipulation for the garment since the parameters of garment can be acquired from this proposed algorithm. The overall results obtained from the particle-based polygonal model are acceptable and the proposed model can be used to estimate the configuration for each garment category in the folding process.
Experiments on the folding test bed
We performed several experiments on the test bed to test the proposed folding algorithms. First, a piece of garment was spread manually on the platform in front of the robot without any rotating motion. After the model is fitted, the proposed predefined folding procedures were executed. For each step, the configuration of the garment is perceived using the camera on hand of Baxter robot. Based on the image, the configuration of the garment is tracked by the proposed model. From this particle-based polygonal model, the position of grasping points and placing points can be estimated. Thus, the control strategy of the garment folding for each step can be planned based on the deformation of this proposed model. Different garments were tested and the folding processes at each step are displayed in Figure 26 (towels), Figure 27 (shirts), and Figure 28 (trousers). In this experiment, simple planning strategies such as vertical and horizontal folding were applied in these garments in order to test the reliability and consistency of the proposed model. The experimental results show that our proposed methods were successful.

The system tracks each folding sequence of towel. (a) A piece of towel matched with the proposed model. (b) Folding the main body from bottom to top. (c) Folding the main body from left to right.

The system tracks each folding sequence of short-sleeved shirt. (a) Folding the first sleeve. (b) Folding the second sleeve. (c) Folding the main body from bottom to top. (d) Folding the main body from left to right.

The system tracks each folding sequence of trousers. (a) A pair of trousers matched with the proposed model. (b) Folding it from left to right. (c) Folding it from bottom to top.
Conclusion
We have proposed a novel approach to extract the parameters of an unknown garment by using particle-based polygonal model. A garment that is crudely spread out is represented by particle-based polygonal model. Once the contour and centroid for each part of the garment were identified, the particle grid fitting and model matching can be applied to the contour. The landmarks of the garment can then be estimated. The garment mesh model from coarse to fine can be generated directly from the image by using this algorithm. This approach has been proven to be important in form of successful garment folding by robot. There are several limitations for this approach at the moment, where simple and direct category classification method is applied to these three categories of garment in this work. The color of garment should also be sufficiently different from the color of platform due to the limitation of hardware since only one color camera is used. In addition, the particle grid fitting and model matching algorithm will fail if incorrect category classification is applied to the garment in the earlier stage, but this failure is easily detectable and the process can be repeated again and again until the process is correct and complete. For further improvement, we would like to consider the depth or stereo sensor and design of a new platform to solve the difficulties in separation of garment from background due to the color issue. We would also like to work on more complex unknown garment based on this proposed approach to satisfy the demand in actual household chores. Advanced folding strategy and algorithm can be further developed to solve more complex garment to improve its dexterity in manipulation. Furthermore, we would like to conduct simulation of the garment using particle-based simulation that will enable us to consider its physical properties in the development of a more advanced garment manipulation.
Footnotes
Declaration of conflicting interests
The authors declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work is supported by the Ministry of Higher Education, Malaysia, through research grant 20140127/FRGS/V3500.
