The solution is then obtained by solving 2N simul-
taneous equations, where the two equations for each
P
n
are
∂H(u,v)
∂u
n
= 0,
∂H(u,v)
∂v
n
= 0.
To simplify the search of neighboring points, we
record the observed 3D points P
n
in a depth image
D(i, j), where each pixel (i
n
, j
n
) has the 3D coordi-
nates of the point observed in the pixel direction. We
sample the surface points from D(i, j) with some in-
terval d to obtain a reasonable number of points P
d
n
(n = 1, ...,N
d
) for practically solving the simultaneous
equations. Although a small sampling width yields
high-resolution flattening, the calculation of a large
number of equations without an appropriate initial es-
timate is time-consuming and leads to instability. To
avoid this, we start with a large d and use the result as
the initial state for high-resolution flattening.
Fig. 2 shows an example of these processes us-
ing the artificial 3D shape in 2(a), which is synthe-
sized through the simulation of physical deformation
of the clothing model in Fig. 3(a), when the cloth-
ing item is held at one bottom corner using Maya
nCloth(GOULD, 2004). The grey dots and orange
points in Fig. 2(b) illustrate the 3D points recorded in
D(i, j) and points P
12
n
sampled with the interval of 12
pixels. Figs. 2(c) and 2(d) show the initial state using
(u
n
,v
n
) = (i
n
, j
n
) and the result of solving the mini-
mization of Eq. (2), respectively: the blue points and
green lines illustrate P
12
n
and pairs of B(n
1
,n
2
) = 1.
Using the result as the initial state of points P
6
n
sam-
pled with the interval of 6 pixels, the flattened state for
a high resolution is calculated as shown in Fig. 2(e).
By interpolating the inside area based on Delaunay
triangulation using the resultant points as its vertices,
as shown in Fig. 2(f), the flattened image of the 3D
surface in Fig. 2(a), F(u, v), is obtained, as shown in
Fig. 2(g).
In order to use the attribute of each pixel of the
flattened view at the following alignment stage, we
record nine attributes for each pixel in F(u, v) by in-
heriting ones of the corresponding 3D point: color in-
formation (r, g,b), 3D coordinates (x,y,z), and normal
directions (n
x
,n
y
,n
z
).
4 INTEGRATION OF
FLATTENED VIEWS
The integration of flattened views is performed by
aligning them on the flattened view plane. This strat-
egy has the advantage of decreasing the search space
of the alignment from the 3D space into the 2D space,
that is, six degrees of freedom to three degrees of free-
dom, which increases the stability and efficiency of
the alignment.
Under the scenario in which a clothing item is
held by a (robot) hand, the clothing surface is curved
and/or folded, mainly in the horizontal direction. To
observe hidden parts behind the leftmost (or right-
most) boundaries of the clothing regions, the cloth-
ing item is rotated along the vertical axis through the
holding position. Here, we call the leftmost (or right-
most) boundary as an “occluding edge “ if the bound-
ary divides one surface into visible and hidden parts.
4.1 Calculation of the Appropriate
Rotation Angle
We start with the observed data taken from the view
direction that provides the largest observed area of the
clothing surface. The flattened view calculated from
the data is extended by adding a flattened view calcu-
lated from a new observation after rotating the item
so that the parts around the occluding edge move to
more center. To align a new flattened view to the
current view correctly, a sufficient overlapping area
is necessary between the current and additional flat-
tened views. From this viewpoint, the rotation angle
should be small. By contrast, if the angle is too small,
the newly added area is small and meaningless.
To automatically determine an appropriate ro-
tation angle, we adopt the following processes. To
simplify the explanation, we explain the processes by
considering only the leftmost occluding edge. In the
case of the rightmost occluding edge, the steps of 3
and 4 are slightly changed to fit the right side.
1. Calculate the Z-angle of each pixel in the current
flattened view
We focus on the component of the surface normal
that is perpendicular to the Z-axis, the vertical axis,
and calculate its angle from the X-axis (the direction
of the camera) as illustrated in the diagram under
Fig. 4(a). The value is tan
−1
(n
y
/n
x
) ∗ 180/π, and
is called the Z-angle hereafter. The Z-angle of each
pixel in the current flattened view F(u,v) is stored as
F(u, v).a. The intensity values in Fig. 4(a) show the
value of (F(u,v).a+ 90) of the flattened view in Fig.
2(g) under the assumed range of the measurement
limit of the range sensor |F(u,v).a| < A
w
. We used
A
w
= 50 degrees in all the experiments in this study.
In the process below, only the pixels within the range
are considered.