3d fitting simulation of glasses frames using …art-science.org/nicograph/disk/2010i/paper/s5-3...

6
3D Fitting Simulation of Glasses Frames Using Individual’s Face Model Noriaki TAMURA and Katsuhiro KITAJIMA Tokyo University of Agriculture and Technology, Tokyo, Japan E-mail: [email protected], [email protected] Abstract This paper proposes a novel 3D simulation method of wearing glasses frames that fits an individual’s face. The method is based on our face modeling technique that can quickly generate an individual’s face polygon model with sufficient accuracy from several pieces of image of a digital camera. In the optician’s shops, 2D simulators based on the image composition of a face and glasses frames are widely used at both real optician’s shops and virtual shops. Although 3D simulators have recently been put on the market, little of them are actually used. The main reason is that it is difficult to generate 3D individual’s face models rapidly and in low cost. We solved both problems by applying our 3D face modeling technique which we call the Generalized Free-Form Deformation (GFFD) method. Moreover, in most of conventional 3D simulators, there is such a problem that glasses frames do not fit one’s face because the frames in standard size are just located on the standard position. So, users can not be satisfied with the visual effect of such simulators. We also solved this problem by newly developing a 3D fitting simulator to make glasses frames fit an individual’s face. We achieved this by formulating the fitting (adjustment) procedure that is actually conducted by skilled operators at real optician’s shops and then developed a novel method to automatically scale and deform the glasses frames in standard shape and size into the frames that fit the face. Keywords: glasses, glasses frames, individual’s face model, fitting simulation, GFFD 1. Introduction Simulators of wearing glasses frames are widely used at both real optician’s shops and virtual shops through the Internet. The biggest advantage of using them is that customers can virtually put various types of glasses frames on and can watch their own faces wearing them, even though they are not kept in the real shops. 3D simulators of wearing glasses frames have recently been put on the market [1]. Most of simulators used now are, however, not 3D, but 2D [2, 3, 4]. The main reason why the conventional 3D simulators have never become popular is that they need special expensive devices such as laser scanners and grating pattern projection scanners. Moreover, at real shops, it is necessary to quickly generate an individual’s face model every time a new customer comes to the shops. So, the authors solved the former problem by using digital cameras as input devices, and the latter one by applying our 3D face modeling technique which we call the Generalized Free-Form Deformation (GFFD) method [5] to our simulator of wearing glasses frames. The main advantage of 3D simulators compared to 2D ones is that the face wearing frames can be watched from various directions. However, in conventional 3D simulators, it often occurs that the nose pad or the temple of frames usually intersect or do not touch the face when it is watched from various directions. This reason is that the most of conventional 3D simulators has such a problem that glasses frames do not fit one’s face because the frames in standard size are just located on the standard position and never be adjusted. When we purchase glasses at real optician’s shops, the shop’s operator adjusts frames’ temples, nose pads, etc. to the face so that the frames fit the face untightly and unloosely. This adjustment operation is called ‘fitting’ [6]. By formulating this fitting operation, we have developed a 3D simulator of wearing glasses frames that fits frames to individual’s face models. 2. Geometric Model of Frames and Faces 2.1 Types of frames in terms of their form First, we mention the form of glasses frames we use in our simulator. Frames are classified into three types such as full rim, half rim and rimless in terms of the form of frames’ rims that hold lenses (Fig. 1). Among them, it is rimless frames that can most easily adjust their size to the face’s one because their lens size can be freely decided at the lens edging process. Therefore, taking practical use into consideration, we have first started to target rimless frames. Fig. 2 shows the whole glasses frames and their composing parts. (a) Full rim (metal material ) (b) Full rim ( plastic material ) (c) Half rim (d) Rimless Fig. 1 Glasses frames classified by rim type 91

Upload: lamdien

Post on 07-Apr-2018

223 views

Category:

Documents


3 download

TRANSCRIPT

3D Fitting Simulation of Glasses Frames Using Individual’s Face Model

Noriaki TAMURA and Katsuhiro KITAJIMA

Tokyo University of Agriculture and Technology, Tokyo, Japan

E-mail: [email protected], [email protected]

Abstract This paper proposes a novel 3D simulation method of wearing glasses frames that fits an individual’s face. The

method is based on our face modeling technique that can quickly generate an individual’s face polygon model with

sufficient accuracy from several pieces of image of a digital camera. In the optician’s shops, 2D simulators based

on the image composition of a face and glasses frames are widely used at both real optician’s shops and virtual shops.

Although 3D simulators have recently been put on the market, little of them are actually used. The main reason is

that it is difficult to generate 3D individual’s face models rapidly and in low cost. We solved both problems by

applying our 3D face modeling technique which we call the Generalized Free-Form Deformation (GFFD) method.

Moreover, in most of conventional 3D simulators, there is such a problem that glasses frames do not fit one’s face

because the frames in standard size are just located on the standard position. So, users can not be satisfied with the

visual effect of such simulators. We also solved this problem by newly developing a 3D fitting simulator to make

glasses frames fit an individual’s face. We achieved this by formulating the fitting (adjustment) procedure that is

actually conducted by skilled operators at real optician’s shops and then developed a novel method to automatically

scale and deform the glasses frames in standard shape and size into the frames that fit the face.

Keywords: glasses, glasses frames, individual’s face model, fitting simulation, GFFD

1. Introduction

Simulators of wearing glasses frames are widely used at

both real optician’s shops and virtual shops through the

Internet. The biggest advantage of using them is that

customers can virtually put various types of glasses frames on

and can watch their own faces wearing them, even though they

are not kept in the real shops.

3D simulators of wearing glasses frames have recently been

put on the market [1]. Most of simulators used now are,

however, not 3D, but 2D [2, 3, 4]. The main reason why the

conventional 3D simulators have never become popular is that

they need special expensive devices such as laser scanners and

grating pattern projection scanners. Moreover, at real shops,

it is necessary to quickly generate an individual’s face model

every time a new customer comes to the shops. So, the

authors solved the former problem by using digital cameras as

input devices, and the latter one by applying our 3D face

modeling technique which we call the Generalized Free-Form

Deformation (GFFD) method [5] to our simulator of wearing

glasses frames.

The main advantage of 3D simulators compared to 2D ones

is that the face wearing frames can be watched from various

directions. However, in conventional 3D simulators, it often

occurs that the nose pad or the temple of frames usually

intersect or do not touch the face when it is watched from

various directions. This reason is that the most of

conventional 3D simulators has such a problem that glasses

frames do not fit one’s face because the frames in standard size

are just located on the standard position and never be adjusted.

When we purchase glasses at real optician’s shops, the shop’s

operator adjusts frames’ temples, nose pads, etc. to the face so

that the frames fit the face untightly and unloosely. This

adjustment operation is called ‘fitting’ [6]. By formulating

this fitting operation, we have developed a 3D simulator of

wearing glasses frames that fits frames to individual’s face

models.

2. Geometric Model of Frames and Faces

2.1 Types of frames in terms of their form First, we mention the form of glasses frames we use in our

simulator. Frames are classified into three types such as full

rim, half rim and rimless in terms of the form of frames’ rims

that hold lenses (Fig. 1). Among them, it is rimless frames

that can most easily adjust their size to the face’s one because

their lens size can be freely decided at the lens edging process.

Therefore, taking practical use into consideration, we have first

started to target rimless frames. Fig. 2 shows the whole

glasses frames and their composing parts.

(a) Full rim (metal material) (b) Full rim (plastic material)

(c) Half rim (d) Rimless

Fig. 1 Glasses frames classified by rim type

91

2.2 Geometric model of frames The frames consist of 17 parts. The geometric model for

each part is a triangle polygon. The authors made it from

standard size real frames by 3D modeling software.

2.3 Geometric model of faces As mentioned in 1.introduction, we generate individual’s

face models by using our GFFD method.

It first extracts feature points from the face images of three

views and computes their 3D coordinates. Then, it

transforms a generic face model which we generated as a

polygon model in advance to the individual’s face model by

treating the feature points as the control points of the GFFD

and deforming the space. The method makes it possible to

generate an individual's face model rapidly with sufficient

accuracy without any special expensive devices.

Fig. 3 shows the coordinate system that the face model is

defined. We define the frontal plane, the sagittal plane and

the horizontal plane that are used in the facial restoration

method of forensic medicine as x-y, y-z and z-x plane,

respectively. Then the point that three planes intersect is

determined as the origin.

In the next chapter, we will mention the method of frames

fitting simulation using the models of both frames and faces.

3. Method of Frames Fitting Simulation

3.1 Positioning the frames for a face (Preprocessing) In order to transform the frames’ parts models so that the

whole frames fit a face, we first decide the method of setting

the frames on the face at the position that they are worn. One

of the authors knows how the skilled operators at real optician's

shops set the frames. The process is as follows:

First, we locate the center of frames on the y-z plane of the

face (Fig. 4(a)). Next, we lean the frames so that the angles

between their lenses and the x-y plane will be 10 degrees (Fig.

4(b)). Then, we decide the position of y direction of the

frames so that the center of the lens will be 2mm below the

center of the pupil (Fig. 4(c)). The value 2mm, which is

called ‘eye point height’, is usually adopted at the most of

optician’s shops. Finally, we decide the position of z

direction so that the distance between the lens back and the

center of the pupil will be 12mm (Fig. 4(d)).

(a) Glasses frames

Fig. 2 Name of parts composing glasses flames

(b) Parts

Nose Pad Pad Arm

Bridge

Lens Endpiece

Temple

Screw

Tip Screw

Fig. 3 Coordinate system representing a face model

Frontal plane (x-y plane)

Sagittal plane(y-z plane)

Horizontal plane(z-x plane)

Origin

・x

z

y

・・pupil

lens back surface

(d) Deciding z position

12mm

Fig. 4 Positioning frames to a face

pupil

・1

1

2mm

(c) Deciding y position

(a) Deciding x position

(b) Leaning frames

10 degrees

92

3.2 Bending pad arms and leaning nose pads along nose's shape

After preprocessing, nose pads do not touch the nose surface

but apart from it or might stick into it (Fig. 5).

By bending the pad arms and leaning the nose pads, we can

make the nose-contacting surfaces of the pads fit the nose.

The whole process is divided into the following Steps A, B.

Step A: Making the position of the nose-contacting surface

coincide with that of the nose surface

First, we designate a vertex P on the polygon near the center

of the nose-contacting surface. Next, we obtain the point Q

which is the cross point between the straight line of z direction

from P and the surface of the nose that should contact the nose

pad (Fig. 6). Then, we bend the pad arm by the angle λx

around the vector of x direction passing the point O so that P

will coincide with Q (Fig. 7). The angle λx is calculated as

follows:

, (1)

where (Px, Py, Pz) is the coordinate in a local coordinate system,

the origin of which is the point O.

At this point, the position of the nose-contacting surface

coincides with that of the nose surface, but their orientations

are different each other.

Step B: Making the orientation of the nose-contacting surface

coincide with that of the nose surface

In this step, we rotate the pad to make the orientation of the

nose-contacting surface coincide with that of the nose surface.

The rotating angle α and the vector A for the axis of

rotation (as shown in Fig. 8) are easily calculated using the

inner product and outer product of two vectors, as follows:

, . (2)

where M and N are the average normal vectors of all

faces on the nose-contacting surface of the pad and the nose

surface, respectively.

After Step B, the position of the points P and Q may slightly

change. So, we judge the distance |PQ| between P and Q.

When |PQ| becomes within a certain threshold value Td,

the whole process is over, otherwise it returns to Step A.

Fig. 9 and 10 show the results of the nose pad fitting

procedure for five face models.

)PP

P (cos)

PP

PQP (cos

2

z

2

y

z1

2

z

2

y

z1

+−

+

+= −−

(a) Not touching (b) Sticking

Fig. 5 Examples of nose pad not fitting nose

NM

Distance PQ

Q

P

N−

Fig. 6 Top view for frames and a face

Fig. 7 Bending a pad arm

Fig. 8 Rotating a nose pad

λλλλxxxx

Direction of rotation

O Bending point (Center of rotation)

・ Center of rotation

A : Axis of rotation

))(

(cos1

ΝM

NM

−•

−•= −α

)(

)(

NM

NMA

−×

−×=

93

3.3 Bending endpieces to make tips ride on the ears and adjusting lens width

In general, after the nose pad fitting, the left/right tip does

not fit each ear and the width of frames does not fit that of

one’s face, as shown in Fig. 11.

In the real optician’s shops, skilled operators conduct the

following three procedures to solve the above mentioned state.

They first straighten the tip, then bend the endpieces and finally

change the width of lenses so that the width of frames fits that

of the face. Therefore, we formulated those procedures as the

following three Steps C – E.

Step C: Straightening the tip

Usually, tips are bent at the standard bending point R for a

standard face, as shown in Fig. 12. So, we first straighten the

tips. To straighten a tip, we bend the point R on it. We can

easily obtain the rotation angle β and the direction vector K of rotation axis, by calculating the inner and outer products

of RS and TR .

Step D: Bending the endpiece

We bend the endpiece by φx around the rotation axis that

passes the point B and is parallel to the x-axis so that the tip

should contact the ear at the point E when viewing from x

direction, as shown in Fig. 13. The φx is calculated as

follows:

(3)

where a = m Ey + n Ez, b = n Ey – m Ez, c = n Ty – m Tz,

m = Sy – Ty and n = Sz – Tz.

+−

+

+−

+=

−−

−−

,)0a()ba

b (cos)

ba

c (cos

)0a()ba

c (cos)

ba

b (cos

22

1

22

1

22

1

22

1

<     

≧     

Not touched Fit

(a) Before pads fitting (b) After pads fitting

Fig. 9 An example of nose pads fitting

Fig. 10 Other examples of nose pads fitting for four people

(a) Not touching (b) Sticking

Fig. 11 Tips not riding on ears

RT

ββββS

・TR

RS ・・ RT

S ββββ

Center of rotation

(a) Side view (b) Top view

Fig. 12 Straightening a tip

・ST

H

φφφφxxxx・・

・B

・ST

H

φφφφxxxx・・

・B

・・S

B H

E

T・

・・S

B H

E

T

Fig. 13 Bending an endpiece

y

z

x z

(b) Top view

(a) Side view

94

Step E: Adjustment of the width of the frame

In this step, we adjust the width of the frame by enlarging

the size of the lens by the amount Dx from the contact point E

on the ear to the cross point H between the tip and the vector of

x direction from E. After the endpiece is bent by φx , T and

S move to T' and S', respectively. Then, Dx is calculated as

follows:

. (4)

Fig. 14 shows an example of the whole process.

3.4 Bending tips along the ears

Finally, after making the width of frames fit that of the face,

we bend the tip from the point E1 to En (Fig. 15) along an ear.

This procedure is as follows:

Let iU and iV be i1-i EE and

1iiEE +( 1U = TS ),

respectively, and the angle between iU and iV θi, then it

is obtained as the inner product of iU and iV .

Then, we have to obtain each rotation axis for i, because the

orientation of each axis may alter. Let the outer product of

iU and iV be iG , then the portion from the point Ei to the

tip’s end is rotated by θi around the vector that is parallel to

iG and passes Ei.. In order to rotate the portion, we need to

get the vertices that compose it. Let all vertices that compose

the tip model be Pj (j=1,2,…,k), then we can decide the vertices

composing the portion that Pj satisfy the following expression:

, . (5)

The process is repeated from 1 to n-1for i. Fig. 16 and 17 show the results of the tip fitting procedure

for four face models.

In this chapter, we mentioned how to position the frames in

preprocessing, how to deform the pad arms and lean the nose

pads along the nose’s shape, how to deform the endpieces to

make tips ride on the ears and adjust the lens width and how to

bend tips along the ears. By formulating each method, we

can realize the whole frames fitting simulation for individuals’

faces, which corresponds to what skilled operators at real

optician’s shops do.

4. Experimental results

We conducted some experiments for the whole

procedure by using various types of face models. Fig.

18 shows the results of the simulation that are viewed

from some directions.

The results show that our method of simulation works well

and their visual effects are satisfactory

(a) Model A

'T'S

)'TE )('T'S ('TED

yy

yyxx

xxx

−−−

−−=

0PE jii >•N i

i

i

ii

V

V

U

UN +=

Fig. 14 Tip riding on an ear

(a) Side view (b) Top view

Fig. 15 Bending a tip

・・ ・・Ei

EnE1

Ei-1

・T

S・Ei+1・

Fig. 17 Other examples of tip fitting for three types of face models

Fig. 16 An example of tip fitting

95

(b) Model B

(c) Model C

(d) Model D

5. Conclusion

In this paper, we proposed a novel method which solves the

problems in conventional 3D simulators of wearing glasses.

We can conclude as follows:

(1) We developed a novel method of 3D fitting

simulation of glasses flames. The characteristic

feature of the method is that it can cope with any

individuals’ faces with sufficient accuracy without

any special expensive devices by using the GFFD

method. GFFD is one of the FFD (Free-From

Deformation) methods, which was developed in our

laboratory.

(2) The method is based on the fitting operation that

skilled operators at real optician’s shops are

conducting.

(3) We formulated the fitting operation stepwise. The

whole procedure is roughly divided into the following

three steps:

(a) Bending pad arms and leaning nose pads along the

nose’s surface

(b) Bending endpieces to make tips ride on the ears

and adjusting lens width

(c) Bending tips along the ears

(4) We showed some results of fitting simulation applied

to some people. The results are very satisfactory.

We consider that our 3D fitting simulator of glasses frames

will be used not only at virtual shops but also at real optician’s

shops in the near future.

References

[1] Visionix, 3DiView,

http://www.visionix.com/site/prod/3diview/3diview.asp?s=opti

cians

[2] FramesDirect, FrameFinder Virtual Eyeglass Try-On,

http://www.framesdirect.com/framefinder.asp

[3] FramesRx, Virtual Frame Selector,

http://www.framesrx.com/

[4] Optical Direct, E Try-on,

http://www.opticaldirect.com.au/etryon/tryon_search.pge

[5] K. Kitajima, Y. Akagi, A. Yamauchi, N. Okazawa and Y.

Higuchi: A Study on Facial Modeling Based on the GFFD

Method, Journal of the Japan Society of Precision Engineering,

74(8), pp.883-890, 2008. (in Japanese)

[6] Kazuhiro Tsuji: Scientific Manufacturing of Glasses,

Gawky Publishing Co., Ltd., 1996. (in Japanese)

[7] N. Yoshida, K. Kanou and K. Kitajima: Free-Form

Deformations Based on Gaussian Functions: Fundamental

Theory for Interactive Modeling, Journal of the Japan Society

of Precision Engineering, 65(7), pp.971-975, 1999. (in

Japanese)

Fig. 18 Results of simulation

96