WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
New Computation of Normal Vector and Curvature Hyoung-Seok Kim Department of Multimedia Engineering, Dong-Eui University 995 Eomgwangro, Busanjingu, Busan, 614-714, KOREA
[email protected] Ho-Sook Kim Division of Advanced Computer Information, Dong-Eui Institute of Technology 152 Yangji 5 ro, Busanjingu, Busan, 614-715, KOREA
[email protected] Abstract: - The local geometric properties such as curvatures and normal vectors play important roles in analyzing the local shape of objects. The result of the geometric operations such as mesh simplification and mesh smoothing is dependent on how to compute the normal vectors and the curvatures of vertices, because there are no exact definitions of the normal vector and the discrete curvature in meshes. Therefore, the discrete curvature and normal vector estimation play the fundamental roles in the fields of computer graphics and computer vision. In this paper, we propose new methods for computing normal vector and curvature well, which are more intuitive than the previous methods. Our normal vector computation algorithm is able to compute the normal vectors more accurately and is available to meshes of arbitrary topology. It is due to the properties of local conformal mapping and the mean value coordinates. Secondly, we point out the fatal error of the previous discrete curvature estimations, and then propose a new discrete sectional-curvature estimation to be able to overcome the error. The method is based on the parabola interpolation and the geometric properties of Bezier curve. It is confirmed by experiment that the normal vector and the curvature generated by our algorithm are more accurate than that of the previous methods. Key-Words: - Normal vector, curvature, local geometric property, mesh segmentation
1 Introduction
2 Previous Works
The complicated objects dealt in the field of computer graphics may be obtained by acquiring 3D position information by using 3D scanners, or generated by operating 3D modeling tools such as 3D Studio MAX or Maya. In order to efficiently deal with the objects, they may be represented by a form of mesh which includes the position information of vertices and the connectivity of them. According to the demand of users, the geometric operations such as mesh simplification and smoothing are applied to the objects[1,2,3]. In order to accomplish such geometric operations efficiently, we have to find out rightly the local properties of the mesh. In general, normal vector and curvature play the important roles as the local properties in the field of differential geometry such as curve and surface [19,20]. So the users want to use the same properties in the discrete space such as polygon and mesh as they were. However, there is not the exact formula of such properties because mesh is a discrete type. Therefore, we need a more exact measure of the local properties. Especially, the normal vector of vertices plays an important role in the rendering process which makes much account of reality.
There are two approaches in the computation of normal vectors [4,5]. The first approach is to approximate the surface interpolating a vertex and compute the normal vector of the surface at the vertex. The result of this approach is tightly dependent on the configuration of the 1-ring neighborhood vertices and the degree of approximated surface. The second approach is to combine the normal vectors of faces adjacent to a vertex. Gouroud proposed the first algorithm of this approach that uses the average ( N G ) of the normal vectors of adjacent faces to the vertex in a triangular mesh [6]. This method is simple so that it is fast. However, it never uses the geometric information of the neighborhood of the vertex so that we can not apply a variety of geometric operations directly. Moreover, this method may bring the different normal vectors according to the change of topology as shown in Figure 1.
ISSN: 1109-2750
2.1 Normal Vector
1661
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
proposed a new area-weighted normal vector ( N C ) computation the weight of which is the value of the area of an adjacent face divided by the length of the line segment between the given vertex and the center of the face. The normal vertex of a vertex v is defined by
N
n
NC =
N
∑ ω Nf
i
∑ ω Nf
i
i
1 n
i
,
ωi =
fi gi − v
1
where f i and g i are the area of face
fi
and the center
of mass of fi , respectively. This normal vector is affected by the non-adjacent vertices as well as the two adjacent vertices so that this method may cause inaccurate normal vectors. Figure 2 shows an example that two faces have the same local geometric property but the different weights.
Fig.1 The change of normal vector according to the topology
Thurmer et al. proposed a more improved method that is based on the angle-weight ( N T ) in order to resolve the topology-dependent problem of Gouroud’ method [7]. This method uses only the interior angle without the information such as the area of adjacent faces and the length of incident edges. It is not considered that this method prefectly reflect the geometric properties.
1 n N G = ∑ Nf i , n 1 n
NT =
∑ Nf ∑ Nf
Fig. 2: Two faces with the same local geometric property and the different weights
i
1 n
,
In this paper, we propose a new normal vector computation method which considers the interior angle and the length of adjacent edges simultaneously. Our method applies conformal mapping to the 1-ring neighborhood vertices of a given vertex, and then computes the mean value coordinates of the vertex with respect to the middle points between the mapped adjacent vertices and the Origin. Finally, the normal vector of the vertex is represented by linear combination of the edge normal vectors with the mean value coordinates. The edge normal vector is the average of the normal vectors of two adjacent faces. It is well-known that the conformal mapping reflects the local geometric properties well and the mean value coordinate is continuous over the entire domain. Our experimental results show that our method can compute the more exact normal vectors than the previous algorithms. Moreover, we may resolve the problem of phong shading that the intensity at a point is dependent on how to choose a coordinate system of world
i
1
n
NM =
∑f
i
Nf i
∑f
i
Nf i
1 n 1
Taubin [8] and Max [9] proposed area-weight normal vector ( N M ) algorithms in 1995 and 1999. The normal vector of a vertex by these methods is generated when we approximate a surface interpolating the vertex and represent the surface with Taylor series. The area-weight is induced when the normal vector of the surface is converted to a mesh. It is not considered that they derived a more exact normal vector because the parameter used in their Taylor’s series is not geodesic so that the error of approximation is large. In order to improve the area-weighted normal vector computation, Chen [10]
ISSN: 1109-2750
1662
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
spacce because thhe mean valuue coordinatee is unrelated to the world w space’s coordinates system.
d an adjacennt vertex andd the curve is i representeed by and Tay ylor series. However, H theey make the same s mistakee that they adopt the distance d betw ween the giv ven vertex annd its adjacent neighbbor vertex ass the parameeter of the seeries. Fig gure 3 show ws their drrawback. Th here are seeveral pollygons of diifferent interrior angles, all of whichh are circcumscribed by b circles of the same rad dius. The disscrete currvatures estim mated by thoose methodss are the sam me as that of the circlee. It is quite alien to univ versal conceppts.
2.2 Curvaturre The estimation of o curvaturees in triangullar meshes plays impoortant role in many appplications such s as surfface segm mentation, annisotropic rem meshing or rendering. A lot of effforts have been b devotedd to this problem, but therre is no consensus c onn the approopriate way[12-18]. Poppular methhods includee quadratic fitting, f wherre the estimaated curvvature is the one o of the quuadratic that best b fits a cerrtain neigghborhood of o a vertexx locally. Most recenntly, Golddfeather propposed the usse of a cubicc approximaation scheeme that takkes into accoount vertex normals in the 1-rinng[14]. The accuracy a of thhese curvatuure estimationns is depeendent of thaat of fitting. If I the one-rinng neighborhhood has many verticces or has a oscillated shape, then the apprroximated suurface does not n resemblee the local shhape and these estim mations may yield a higgh error. Other O methhods typicallly consider some s definitiion of curvaature that can be exteended to thee polyhedrall setting. Thhese methhods compute Gaussiian curvatuure and Mean M curvvature based on the Gauuss-Bonnet thheory and Euler E theoory. Taubin presented p a method m to esttimate the tennsor of curvature c of a surface at a vertices of o a mesh [17]. Watanabe propoosed a simplle method off estimating the princcipal curvatuures of a disccrete surfacee [18]. Meyer et. al prroposed a discrete d analoog of the Laplace-Beltr L rami operrator to estim mate the discrrete curvaturre[13].
In this paper, we presennt symmetricc parabola-bbased disccrete curvatuure estimation in order to solve suuch a pro oblem in com mputing the sectional curvatures c byy the preevious discreete curvaturee estimationss. Our methood is bassed on the parabola p inteerpolation. We W show thaat our metthod has a good g geomettric property y so that we may derrive a more simple form mula and ressembles the local shaape better thhan the previious method ds. Moreoverr, we detect a fatal errror of the ciircle-based discrete d curvvature estiimations.
3 Normal Vector V Computatiion In this section, we explainn the mean value v coordinates that is a generallization of thhe bary-centrric coordinatee and intrroduce our normal n vecttor computattion base onn the mean value cooordinates.
3.1 1 Mean Vaalue Coord dinates Wee have been often o asked a question “C Can we repressent a poiint inside a polygon as a linear com mbination of o the verrtices of the polygon uniiquely?”. If possible, p we may rep present all off informationn of a point inside a pollygon witth the inform mation of thee vertices. There T is a coonvex com mbination appproach as a general solution off the pro oblem. Speciially, the reepresentativee solution of the app proach is thhe mean value coordinaate proposed by Flo oater [11].
U m −1
P
U2 U m −1
α2 α m −1 α1 αm
U2
U1 Um Um U1 Fig. 4: Coonfiguration oof mean value coordinates 3 Several Pollygons with thhe same Figure 3. discrete curvature c
Equ uation (1) shows a geeneral form m of the coonvex com mbination appproach that is a linear co ombination of o the verrtices U i , i = 1, L , m of the polygon n for an arbiitrary
Mosst of these methods m com mpute directtly the sectioonal curvvatures for each e adjacennt edge of a vertex. They T assuume the norm mal curve inteerpolate both the given veertex
ISSN: 1109-2750
inteerior point P of a polygoon as shown in i Figure 3.
1663
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
m
Hyoung-Seok Kim, Ho-Sook Kim
ur algorithm m for In this subsecction, we inntroduce ou com mputing the normal vecttor of a verttex based onn the mean value cooordinates. Wee assume thatt a vertex V has adjacent verttices V1 , V2 , L , Vm . Theen the vertexx V is
m
P = ∑ λ i U i , ∑ λ i = 1, λ i ≥ 0. i =1
(1)
i =1
Floaater defined the t coefficiennts of the linnear combinaation satissfying the above equationn by the folloowing manneer:
λi =
ωj
,
m
∑ω k =1
ωj =
k
t tan(
α j −1
surrounded witth faces f i = ΔViVVi +1 , i = 1, L , m . We den note the unitt normal vecctor of a facce f i = ΔViV VVi +1
αj
) + tan( ) 2 2 Uj −P
by Nf i and thee unit normall vector of th he common edge
ei of faces f i and f i +1 bby Nei . In order to get the relaationship of V with respect to the adjjacent verticees Vi , we apply thee conformaal mapping to the 1-ring o the vertex V as show wn in the Figuure 6. neighborhood of n of the 1-ring Thee left figurre is the cconfiguration neighborhood, and a the rightt is the resultt of the confoormal map pping of the neighborhoood. The vertiices V and Vi are
Figuure 5 shows an examplee of excellennce of the mean m valuue coordinatee. The same color meanss the same mean m valuue coordinatee with respecct to the verrtex of a reggular 7-goon, which iss on the y-aaxis. The lefft and the right r figurres are the results r for a convex pollygon and for fo a conccave polygonn, respectively. The uppeer and the loower figurres are generated by the mean valuee coordinate and the barycentric b c coordinate, reespectively. The mean vaalue coorrdinate systeem generatess the continuuous coefficcient whetther or not a point is insidde or outsidee, and whetheer or not the t polygon is i convex or concave. Onn the other haand, the result r generaated by the baarycentric cooordinate sysstem is very v confused and thee value of coefficientss is discoontinuous. The T continuitty of the coeffficient plays an impoortant role inn a variety off applicationn such as surfface interrpolation.
map pped to thhe vertices P and U i , respectiively, satiisfying the foollowing connditions:
P i = VVi , α i = PU
∑θ j =1
V
Nf m
j
Nf 1 V2
Vm
V1 U2
U3
α2 (b)
.
Ne1
θ m θ1
Vm −1
(a)
2π m
α1
P αm
x
U1 Um
U m−1
Fig. F 6: Conforrmal mapping: (a) 3D Mesh h (b) 2D polyggon
(c)
Wee define a new w normal veector based on o the mean value v coo ordinates annd a local conformal mapping m byy the folllowing mannner:
(d)
Fig.5: Mean M value coordinates (uppper) vs. Barycen tric coordinnates (lower) for a c convex polygon (a ,c) and a concave polygon (b,d)
m
N CM =
3.2 Normal Vector V Com mputation
∑ λ Ne i
1 m
∑ λ Ne i
1
ISSN: 1109-2750
1664
i
, i
λi =
ωi m
∑ωk
,
k =1
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
ωk =
tan(
α k −1
) + tan(
2 Uk − P
αk 2
Hyoung-Seok Kim, Ho-Sook Kim
N· g s
) .
p
s N·T
s
N · N)
Because N ⋅T = 0 and N ⋅N = 1, the above equation may be changed to the following simple equation:
The normal vector ( N CM ) of our method may be regarded as that it reflects the local geometric property better than the previous methods because it is generated by applying the conformal mapping and the mean value coordinates. In general, the geometric property of a vertex in a 3D mesh has a tendency to resemble the property of the surface interpolating the 1-ring neighborhood and the vertex. The edges of the 1-ring neighborhood are approximated to the surface better than the faces because of the interpolating condition. So our method is very intuitive.
κ p
2 N· g s s
p
The previous methods define the C-discrete curvature κC (p) by assuming that the parameter of the series is the distance between two vertices: κC p
2 N· g s p |g s p|
Now, we point out the fatal error of the c-Discrete method. First of all, we find out the set of points with the same discrete curvature α. For the convenience of computation, we assume that p=(0,0), pi = (x, y) and N = (0, -1). Then the formula of the C-discrete curvature of p is as follows:
4 Curvature Computation First of all, we review the circle-based discrete curvature estimation adopted in the previous methods of estimating the discrete curvature of meshes. This method utilizes the Taylor series of a curve and adopts the distance between two vertices as parameter of the curve. It makes the trajectory of points with the same curvature be a circle. So, in this paper we call this method as C-discrete curvature.
κC p
2 N· g s p |g s p|
2y x y
α
4.1 C-Discrete Curvature Formula Most of the previous discrete curvature estimation directly compute the sectional discrete curvature whether they use the tensor of curvature or Laplacian Operator [13,14,17]. All of them compute the curvature by using the Taylor series of a curve interpolating two vertices. Let p and pi be a given vertex and its adjacent vertex, respectively and let g(s) be a continuous curve passing through the two vertices: g(0) = p, g ( s ) = pi . Then the curve may be represented by its Taylor series:
Figure 7. The set of points with curvature α
Then, x2 + ( y + 1/α)2 = 1/α2The trajectory is the circle of center (0, -1/α) and radius 1/α as shown in Figure 7. That is, whenever the adjacent vertex pi is on the radius of the circle though it makes the different interior angle with the given vertex p, the sectional C-discrete curvature of p to the direction ppi is the same as that of the circle. In general, the interior angle of a triangle is sharper than those of square and octagon. So, we may consider that the curvature of a vertex in triangles is greater than that of other regular polygons (see Figure 3). The result of the C-discrete curvature estimation breaks the general concepts. Moreover, there is another drawback of this method that the range of the value is restricted. If ||ppi|| >1,
g ′(0) g ′′(0) 2 s+ s + O(s 3 ) 1! 2! N g ( s) = g (0) + T ⋅ s + ⋅ κ ( p) ⋅ s 2 + O( s 3 ) 2 g ( s ) = g ( 0) +
where T and N are the unit tangent vector of the unit normal vector, respectively, and κ(p) is the sectional curvature of g(s) at point p to the direction ppi. By applying the inner product to both sides with N, we may get the following equation:
ISSN: 1109-2750
1665
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
thenn y/(x2+y2) < 1. Hence,
Hyoung-Seok Kim, Ho-Sook Kim
. Therefore,
we have h known that this method cannot reflect the loocal shappe although thhe adjacent vertices v havee a sharp inteerior anglle because off the upper boound of curvvature values(see Figuure 8).
kno own that thee concept off curvature is derived froom a currve and it is a quantity to measure thee local bendinng of currves. Therefoore, the best method to reesemble the local shaape, followinng the originaal definition of a curvatuure is to use the quuadratic currve interpollating the three con nsecutive verrtices. Wee adopt a quuadratic Bezier curve ass an interpollating currve because it has a goood geometrric property. Let A, B, B C be three consecutive vertices. Th he general forrm of a qu uadratic Bezzier curve is aas follows: P(t) = P0 B02(t) + P1 B12(t) + P2 B22(t), where Pi are thee control poinnts of the Beezier curve annd
Figure 8. An counter-eexample of C--discrete curvaature
B t
Figuure 9 shows an a example that t indicates the drawbaacks of thhe C-discretee curvature estimation. e T vertices of a The polyygon lie on thhe union of tw wo circles of the same raddius. By C-type C estimaation, there are a two types of the curvaature valuue: one is the curvature off a point adjaccent to pointts on diffeerent circles,, the other iss that of a pooint adjacennt to poinnts on the sam me circle. Thhe former is shown by grreen squaare, the otheer is shown by red discc. Although the poinnts of the seccond type have h the sam me curvature, the interrior angles arre not same. For examplee, the left veertex has a smaller inteerior angle thhan the otherr vertices, so that we may m guess thhat its curvatture is larger than the othhers. Therrefore, it is a contrst to t the resultt of the C-ttype curvvature estimaation.
n i
1
t
t
mials of degrree n. In genneral, are the Bernsteein polynom B curvee that there are several methods tto find the Bezier inteerpolates the given verticces. That is, the t conditionns for two o end verticees are alreadyy determined d as follows: P(0) = A, A P(1) = C, so the methood is determiined accordinng to when the curve passes throuugh the interm mediate verteex B. Thiis problem is i a parametterization off curves. Wee can con nsider the folllowing two m methods: z
Standaard : P(1/2) = B
z
Lengthh-based : P( || AB || / (||A AB||+||BC|| ) ) = B
p ation is simp ple to derivee the Thee standard parameteriza goo od geometrric relationss, where the t length-bbased parrameterizatioon well reseembles the local shapee but yields more com mplex formuula. In this paaper, we adoppt the stan ndard parameterization soo that we maay find out a good relaationship between the ccurvature of a curve andd the disccrete curvatuure of a polyggon. Firsst of all, we compute c the three contro ol points P0, P1, P2 of the quadratiic Bezier cuurve, satisfy ying the stanndard parrameterizatioon condition:
Figurre 9. The geom metric meaninng of C-discrete curvature
P0 = A, P
4.2. Parabola-B Based Disccrete Curvaature
4B
A
C /2 , P2 = C.
i g Bezier curve is as follow ws: Theerefore, the interpolating In thhis subsectionn, we introduuce a new diiscrete curvaature estim mation based on the parabola p interpolation. The form mula has a goood geometriic property, so the curvaature estim mated by ourr method weell resembless the local shhape of poolygons. In general, g the local l shape of o a polygon at a verteex is deterrmined by the geomettric relationsship betw ween the verrtex and its adjacent verrtices. We have h
ISSN: 1109-2750
P(t) = A B02(t) + (4B-A A-C)/2 B12(t)) + C B22(t). o P(t) at t=0.5 is Thee curvature of κP(0.5) = || P” (0.5 ) × P’( 00.5 ) || / ||P’(0 0.5)||3
1666
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
= || 4(A-2B+C)) × (C-A) || / ||C-A||3. Hence, we can define a neew Parabolaa-based disccrete curvvature of the given vertexx B as follow ws: κP p
4 A
B C C 2B ||C A||
A
Figuure 11. Polygons with the diifferent p-curvatture values
Firstt of all, we find f out the geometric properties p off the P-discrete curvaature formulaa. Let V=(C C-A)/2 and G = A-2B B+C. The P--discrete curvvature formuula is 2 4G 2V ||2V||
κP p
Tab ble 1. The P-discrete curvatuure and its rad dius of curvatuure of the sampled poinnts on the circlle of radius 1
G ssin θ V
n Currvature rad dius
wherre θ is the inn-between anngle of the vectors v G andd V. The numerator of o the abovee equation iss the area off the paraallelogram BD DEF and is foour times as much m as the area a of thhe triangle BC CF as shownn in Figure 100. Therefore,, the P-discrete curvatture formula is κP (B) = (22h) / v2, wherre, h and v are the heeight and thee width of thhe triangle BCF, B respectively.
3 4.00 0.25
4 2.00 0.50
5 1.53 0.65
6 1.33 0.75
1000 1.000 1.000
Fig gure 11 and Table 1 shoow the several polygons on a circcle of radiuss 1 and theirr P-discrete curvature vaalues. Thiis result is an a excellent contrast to that t of C-disscrete currvature estim mation (Figurre 3). The C-type C estim mation wisshes that thee curvature oof the sampled vertices may beccome that off a circle because the verttices are sam mpled on the circle. The T method pputs emphasiis on the poiint of view that the vertices v are oon a circle. However, H it goes agaainst the conccept of curvaatures. It losees the inform mation on the local shape. s On tthe other haand, our meethod recognizes the vertices v of poolygons on th he circle to have a shaarper angle, not n to be on a circle. Thatt is, the P-disscrete currvature of vertices v of a triangle iss 4 and thaat of recttangle is 2.00 (see Figurre 11). Morre the number of verrtices increasses to the inffinity, less the curvature value v deccreases to 1. Therefore, T ouur method reesembles the local shaape of verticces more thhan the C-d discrete curvvature estiimation.
Figurre 10. The geoometric meaninng of P-curvaturre formula
4.3 3. Symmetrric P- Discrrete Curvatture In orrder to verifyy the proprietty of the P-diiscrete curvaature, we regularly r sam mple n pointts on a circlee of radius r and com mpute their P--discrete curvvature. Let pi= ( r cos ((2 π i) /n), r sin ((2 π i) /n) ), i = 0, … , n-1, be the vertices of a n-goon on the circcle. By trigonnometry, we can computee the valuues of v and h as follows: v = r sinn ((2 π i) /n), h = r(1 - cos ((2 π i) /n ) ). Therrefore, as thee number of sampling pooints increasees to the infinity, i the value v of curvvature at a verrtex of the n--gon becoomes that of the circle.
lim κ p
lim
ISSN: 1109-2750
2π π i n 2π i n
2 r 1 – cos r sin
Figgure 12. Polyggons with the same p-curvatture values
Theere is an example thaat the P-diiscrete curvvature estiimation is not yet the peerfect solutio on of resembbling the local shapee of polygonns. Figure 12 1 contains three pollygons each of o which hass the same wiidth of 2v annd the sam me height of o h. So, thhey have th he same disscrete currvature. How wever, we cann expect that the third pollygon hass the largest curvature c am mong them because the vertex v
1 r
1667
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
of the last polygon has a sharper angle than the others. In order to solve this imperfection, we propose the symmetric parabola-based discrete curvature estimation using a symmetric parabola.
where Nv i is the unit normal vector of a vertex Vi of the approximated sphere and N is the normal vector of the unit sphere.
4.1 SP-Discrete Curvature Formula Let N be the unit vector bisecting the interior angle of B: N = ( BA/||BA|| + BC/||BC|| ) / || BA/||BA|| + BC/||BC|| ||. Then, we can consider two right-angled triangles AA'B and CC'B as shown in Figure 13. One has the width of length vA and the height of hA , the other has the width of length vC and the height of hC:
Fig. 14: Approximated Spehres Table 2. Mean error for mesh generated by recursive method No. Of 10 34 130 514 2050 vertices
Figure 13. Polygon and its Parabola
hA = N ⋅ BA, vA = || BA - (N ⋅BA) N ||, hC = N ⋅ BC, vC = || BC - (N ⋅BC) N ||. Then, we can consider the right-angled triangle MM'B with the width vm = (vA+ vC)/2 and the height hm = (hA + hC)/2. Therefore, we define the symmetric P-type discrete curvature of the vertex B as κSP(B)≡ (2 hm)/vm2.
N G [2]
0.00E-08 7.25E-03 1.48E-03 3.41E-04 7.00E-05
N T [3]
0.00E-08 3.57E-03 6.98E-04 1.35E-04 2.50E-05
N M [4]
0.00E-08 1.42E-02 2.89E-03 6.47E-04 1.31E-04
N C [6]
0.00E-08 7.42E-04 3.57E-04 9.30E-05 2.00E-05
NCM
0.00E-08 5.22E-04 1.41E-04 3.10E-05 6.00E-06
Table 3. Mean error for mesh generated by parametric method No. of 23 50 122 262 578 Vertices
5 Experimental Results
NG [2]
4.03E-03 7.86E-04 2.22E-04 5.20E-05 2.40E-05
N T [3]
1.41E-03 5.54E-04 1.11E-04 6.00E-05 6.00E-06
5.1 Normal Vector
N M [4]
8.87E-03 1.96E-03 5.88E-04 6.30E-04 6.30E-05
N C [6]
1.77E-03 1.11E-03 1.11E-04 5.00E-05 5.00E-06
N CM
7.89E-04 4.63E-04 5.70E-05 1.60E-05 2.00E-06
Figure 14 shows a variety of polyhedrons which are approximations of a unit sphere. The upper polyhedrons are generated by recursively subdividing a regular tetrahedron, and the lower ones are generated by using the parameters of longitude and latitude. The upper cases are more irregular than the lower cases because the triangles of a different size may be appear, so that the error of the normal vector of a vertex in recursively generated polyhedrons may be larger than the others.
According to the result of experiment, the normal vector computation proposed by Chen [10] is better than the other previous methods. However, the exactness of our method is two times than that of Chen. So we argue that our method is the best of all. Figure 15 shows the results of rendering generated by Phong shading which are based on the N G method, N C
Table 2 and 3 show the mean error of normal vectors of a vertex in the approximated polyhedral of the unit sphere. In order to measure the exactness of the normal vectors, we used the following error energy
method, and N CM method. The positions of camera and light are the same so that the highlighted region should symmetrically appear near the vertex positioned in the center of the rendering. Figure 14(a) is the wire-frame of a cube. It has irregular topology. The vertex positioned in
E (vi ) = 1− < Nvi , N > ,
ISSN: 1109-2750
1668
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
(0))/2 t2, f ′′(0) = (2 (f(t) - f(0)))) / t2 = (2 hm)/vm2. Thereefore, the symmetric parabora-bassed discrete curvature is i the sam me as the currvature of thee curve g(t): κg(0) = κSP(pp).
′′
the center c is adjaacent to 4 triaangles on the upper rectanngle, wherre it is adjaccent to a trianngle on the left and the right r rectaangles, respeectively. Theerefore, the highlighted h a area shouuld be shiftedd up and dow wn. Figure 155 (b) and (c)) are the results r of N G method annd N C methood, respectivvely. Figuure 15 (d) generated g byy our methood shows more m realiistic renderring than the other methods. The highhlighted area of our methhod looks moore realistic than t the others. o
(a) Wiree-frame
(b) NG meth od
(c) N C method m
(d) N CM methhod
Tab ble 4 The com mparison of SP P-curvature wiith C-curvaturre SP-Discrete C-Discreete Curvaturre Curvature C Formula κSP(B) = (2 N⋅B κC(B) = (2 BA) /|| BA - (N N⋅BA)/ || AB||2 BA)N||2 ⋅B Parameter Distancee Horizontal H Distance D Range κC(B) ≤ 2 if κSP(B) < ∞ ||AB|| ≥ 1 Trajectory circle paarabola Magnitude κC(B) ≤ κSP(B)
Thee differencess of C-discreete curvaturee and SP-disscrete currvature are shhown in Tabble 4. It inclu udes the form mulae of curvatures, c the parameters of the currves in the Taylor seriies, the trajecctory of points with the co onstant curvaature, the range of currvature valuees, and the co omparison off their magnitudes.
6 Conclusiion
F 15 resultss of rendering Fig.
Thee analysis onn the local prroperties of 3D meshes plays p an important roole in the appplications su uch as morphing, sim mplification, smoothing. In this pap per, we propposed new w computation algorithm ms of the no ormal vectorr and currvature at a vertex of meshhes of arbitraary topologyy. Our norrmal vector computation c applies con nformal mapppings to the t 1-ring neeighborhood of a vertex and a computees the mean value cooordinates of tthe vertex with w respect to t the verrtices of thee neighborhoood. So, th he normal vector v gen nerated by our o method may well reflect the local geo ometric propperty due to the conform mal mapping, and preeserve the continuity c oof the coeffficients overr the map pped domainn. Therefore,, it could be confirmed byy our exp perimental results r that our method computess the norrmal vectors of vertices of a mesh morre accuratelyy than oth hers. Moreover, this methhod may be ap pplied to nott only triaangular meshhes but also the meshes with an arbiitrary top pology, and has the advvantage of getting g the more realistic renderiing. As a futu ture research, we will devvelop the main algoritthms of Phonng shading based on the result r of this t research.
C n of SP-DC and a C-DC 5.2 Comparison We compared the t symmetric parabolaa-based disccrete curvvature with the circle-bbased discrette curvaturee by using the Taylorr series of cuurves interpoolating the giiven two points. Thee C-curvaturre adopts thhe distance BM betw ween two points as thee parameterr of the cuurve, wherreas the SP-curvature addopts the horrizontal distaance MM M' between theem (see Figuure 13). First of all, we deerive the analytic form mula of thee symmetric parabora-baased discrrete curvatuure by using the Taylor series. For the convvenience of deriving, wee assume thhat the biseccting unit vector is N =(0, = -1), a givven vertex iss p = (0, hm), and its adjacent verteex is pi (vm, 0). 0 Then, thee parabola g((t) = ( t, f(t)) f( interpolaating two verttices is symm metric so thatt the unit normal vector at p is thhe same as N and f ’(0))=0. Hence, the first and a second derivatives d of the parabolla at ’ ” the vertex p aree $g (0) = (1, 0), g (00) = (0, f “(0)). ( Therrefore, we caan compute the t curvaturee of the curvve at the vertex v p as foollows: κ
g
0 g 0 g 0
f
By exploiting the more exxact computtation of noormal vecctors, we arre able to compute th he right disscrete currvature of vertices. The common previous p metthods com mpute direcctly the secctional curv vatures for each onee-ring neighbbor, and thenn derive the gaussian curvvature and d the mean curvature c ussing the secttional curvattures.
0
In orrder to comppute the secoond derivativve of f(t), we use the Taylor seriees of f(t). Because B f(t) is a quadrratic funcction, the forrm is as folloows: f(t) = f((0) + f ′ (0) t + f
ISSN: 1109-2750
1669
Issue 10, Volume 8, October 2009
WSEAS TRANSACTIONS on COMPUTERS
Hyoung-Seok Kim, Ho-Sook Kim
All of them use the circle-based discrete curvature to compute the sectional curvature. In this paper, we point out the fatal error of C-type discrete curvature computation, and proposed the parabola-based discrete curvature computation to resolve the problem. Our method may be the basis of normal vector estimation and segmentation of meshes.
References: [1] Dennis Maier, Jürgen Hesser, Reinhard Männer, Fast and Accurate Closest Point Search on Triangulated Surfaces and its Application to Head Motion Estimation, Wseas Transactions on Computers, Issue 4, Vol. 2, pp 874-878, 2003 [2] Jifang Li and Renfang Wang, Robust Denoising of Point-Sampled Surfaces Wseas Transactions on Computers, Issue 1, Vol. 8, pp 153-162, 2009 [3] Ravi S. Gautam and Sachin B. Patkar, Fitting convex surface to scattered data points with applications to medical imaging, Wseas Transactions on Computers, Issue 1, Vol. 3, pp 50-56, 2004 [4] Hyoungseok Kim and Hosook Kim, Computing Vertex Normals from Aribitrary Meshes, Proceeding of the 9th WSEAS Int. Conference on Signal Processing, Computational Geometry & Artificial Vision(ISCGAV’09), pp 68-72, 2009 [5] Shuangshuang Jin, Robert R. Lewis, and David West, A Comparison of Algorithms for Vertex Normal Computation, The Visual Computer, Vol. 21, No. 1-2, pp 71-82, 2005 [6] Henri Gouraud, Continuous Shading of Curved Surfaces, IEEE Transactions of Computers, Vol. 20, No. 6, pp 623-629, 1971 [7] Grit Thurmer and Charles A. Wuthrich, Computing vertex normals from polygonal facets, Journal of Graphics Tools, 3(1), pp 43-46, 1998 [8].G. Taubin, Estimating the tensor of curvature of a surface from a polyhedral approximation, Proceeding of the Fifth International Conference on Computer Vision, pp 902-907, 1995 [9] N Max, Weights for computing vertex normals from facet normals, Journal of Graphics Tools, 4(2), pp 1-6, 1999 [10] Sheng-Gwo Chen and Jyh-Yang Wu, Estimating normal vectors and curvatures by centroid weights, Computer Aided Geometric Design 21(5), p 447-458, 2004 [11] Michael S. Floater, Mean value coordinates, Comp. Aided Geom. Design Vol. 20, p 19-27, 2003. [12] Sylvain Petitjean, A Survey of Methods for Recovering Quadrics in Triangle Meshes, ACM Computing Surveys, Vol. 34, No. 2, pp 211—262 (2002).
ISSN: 1109-2750
1670
[13] Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr, Discrete Differential Geometry Operators for Triangulated 2-Manifolds, Proc of VisMath, (2002) [14] J. Goldfeather and V. Interrante, A novel cubic-order algorithm for approximating principal direction vectors, ACM Transaction on Graphics, Vol . 23, No. 1, pp 45—63 (2004) [15] Holger Theisel, Christian Rossl, Rhaleb Zayer, and Hans-Peter Seidel, Normal Based Estimation of the Curvature Tensor for Triangular Meshes, Proc. of Pacific Graphics'04, pp 288—297 (2004) [16] Tatiana Surazhsky, Evgeny Magid, Octavian Soldea, Gershon Elber, and Ehud Rivlin, A Comparison of Gaussian and Mean Curvatures Estimation Methods on Triangular Meshes, Proc. of 2003 IEEE International Conference on Robotics and Automation, (2003) [17] Gabriel Taubin, Estimating the Tensor of Curvature of a Surface from Polyhedral Approximation, Proc. of the Fifth International Conference on Computer Vision, (1995) [18] Kouki Watanabe and Alexander G. Belyaev, Detection of Salient Curvatures Features on Polygonal Surfaces, Computer Graphics Forum, Vol. 20, No. 3, (2001) [19] David Cohen-Steiner and Jean-Marie Morvan, Restricted Delaunay Triangulations and Normal Cycle, ACM Symposium of Computational Geometry, (2003) [20] M. Garland and P. S. Heckbert, Surface simplification using quadratic error metrics, SIGGRAPH ‘97, pp 209—216 (1997)
Issue 10, Volume 8, October 2009