• 沒有找到結果。

Deformation and re-projection

在文檔中 以骨架驅動之交互參數化 (頁 38-66)

3.5 Part boundary smoothing

3.5.3 Deformation and re-projection

When the base mesh is generated, the last thing we need to do is to deform it to the desired shape we want. This step should be subjected to the convex combination constraints to assure that the deformation result will not fold over. We deform each vertex of the base mesh towards the hint position as much as possible, except the vertex that lies on the boundary of the base mesh. To compute the deformed positions for the vertices, we formulate the following energy minimizing problem:

E(vi) = Em(vi) + whEh(vi), (3.20)

3.5 Part boundary smoothing 28

where Em is the energy we defined in 3.16, wh is weight, and Eh is the hint position approxi-mation energy:

Eh(vi)m =X

i∈S

(vi− vi hint)2, (3.21)

where S is the set of indices of the inner vertices of base mesh, and vi hintis the hint position of the vertex vi. The energy minimization process can be transformed into a matrix form:

A0x = b0, (3.22) A is the n × n matrix we defined in 3.18, H is the hint position coefficient matrix of the base mesh, m is the number of the set of the internal vertex that has hint position vs, s ∈ C, where C = s1, s2, ..., sn is the set of indices of the hint vertices. Using the same idea as forming matrix A, for each element of A0that corresponds to the vertex with hint position, we assign its value to be one, or zero otherwise. For the row element of b0k that are greater than n, we assign its value to be the product of weight wh and the hint position of vk in order to deform the base mesh to the hint position.

Notice that the deformation procedure can not guarantee that the deformed vertex lies ex-actly on the target surface. Therefore, we project the deformed base mesh to the nearest triangle of the target mesh to get the final mapping result. Figure 3.13 shows the result of the dog after the deformation and re-projection process. Since most of the hint positions of the inner ver-tices abide the convex combination constraint, the shape of the deformed source mesh usually close to the shape of the target mesh. Figure 3.14 and 3.15 shows the mapping vertices of the

3.5 Part boundary smoothing 29

dog model before and after the boundary smoothing process. We can observe that the map-ping positions of the vertices are nicely distributed along the part boundaries after the boundary smoothing process.

(a) (b) (c) (d)

Figure 3.13: Mapping from a dog (a) to a wolf (b), (c) after deformation (d) after re-projection.

Figure 3.14: Mapping vertices and edges of the dog model before part boundary smoothing (different edge color represents different parts).

3.5 Part boundary smoothing 30

Figure 3.15: Mapping vertices and edges of the dog model after part boundary smoothing (dif-ferent edge color represents dif(dif-ferent parts or the overlapping regions).

C H A P T E R 4

Experimental Result

In this chapter, we present the experimental result of the cross-parameterization with the pro-cessing time required, including cross-parameterization, part boundary smoothing, and repro-jection.

4.1 Result

In this section, we demonstrate the experimental result of our cross-parameterization method.

The cross-parameterization between the two models is generated by minimizing the combi-nation error we proposed. Our method utilizes the skeleton-to-skeleton mapping and the dense skeleton-to-surface mapping to construct the cross-parameterization between two models. There-fore, we can generate the cross-parameterization for each pair of corresponding parts by speci-fying only two to three matching points on the part boundary such that part boundaries aligned on the parameterized domain. Figure 4.1 and Figure 4.2 shows the skeleton-to-surface mapping by coloring the surface with the same color of the correspondent skeleton node, which changes smoothly along the surface. The dense skeleton-to-surface mapping slices are shown in Figure

31

4.1 Result 32

4.3.

Figure 4.1: The visualization of skeleton-to-surface mapping of the dog model.

Figure 4.2: The visualization of skeleton-to-surface mapping of the wolf model.

4.1 Result 33

Figure 4.3: The visualization of the skeleton-to-surface mapping slices.

The skeleton-to-skeleton mapping is constructed by matching the junction and terminal skeleton node first. And the rest of the skeleton nodes are mapping through a linear interpola-tion along the skeleton path. Figure 4.4 shows the correspondence of the juncinterpola-tion and terminal skeleton node, each pair of the corresponding skeleton nodes are marked with same number.

Figure 4.5 demonstrates the skeleton-to-skeleton mapping between the dog and wolf, we draw each skeleton node of the dog model with the mapping position on the skeleton path of the wolf model to visualize the skeleton-to-skeleton mapping.

4.1 Result 34

Figure 4.4: The skeleton node correspondence between the dog and wolf model

Figure 4.5: The skeleton-to-skeleton mapping between the dog and wolf model.

Figure 4.6 shows the matching points we assigned for each pair of parts The red colored edges are the part boundaries and the green colored edges represent the open boundaries which will be closed during the parameterization.

4.1 Result 35

Figure 4.6: The segmented parts and matching points colored in red and blue specified on the part boundaries.

Since the proposed method measures the mapping error between two vertices by using the distance between their corresponding skeleton points along the skeleton. Therefore, the method can handle the cases in which models have feature parts in different orientations and size. Fig-ure 4.7 shows the cross-parameterization result between the dog and wolf, who have ears in extremely different orientation. We visualize the mapping results by texture mapping the target models with a check board texture.

Figure 4.7: The cross-parameterization between the dog and wolf model.

4.1 Result 36

With the skeleton-to-skeleton mapping and the dense skeleton-to-surface mapping informa-tion, the object features between models can be matched automatically. To closely observe the mapping result for the local regions, we increase the texture repeat cycles and showed the re-sult in Figure 4.8, Figure 4.9, and Figure 4.10. Since the mapping error is defined only as the distance on the skeleton, some twists may happen along the direction which perpendicular to tangent of the skeleton due to the lack of the orientation information (as shown in the indicative region in Figure 4.10).

Figure 4.8: The cross-parameterization of the heads between the dog and wolf model.

(a) (b)

Figure 4.9: The cross-parameterize result of the limbs between the dog and wolf model. (a) front legs (b) back legs.

4.1 Result 37

Figure 4.10: The twist effect due to the lack of the orientation information on the slice region.

We also test our work on the lion and cat models with different size of parts, such as fore-head, ears, neck, limbs, belly, etc. As shown in Figure 4.11 - Figure 4.14, the lion has larger forehead and smaller ears than that of cat. Also, the length and the shapes of their limbs are different. Our method matches these features well without much distortion.

Figure 4.11: The cross-parameterization between the lion and cat model.

4.1 Result 38

Figure 4.12: The cross-parameterization of the head part between the lion and cat model.

Figure 4.13: The cross-parameterization of the front legs between the lion (top) and cat (bot-tom). The texture repeat cycle is doubled from left to right to clarify the result.

4.1 Result 39

Figure 4.14: The cross-parameterization of the back legs between the lion (top) and cat (bot-tom). The texture repeat cycle is doubled from left to right to clarify the result.

Since the vertices around the tip of an object part usually map to the same skeleton node, the mapping error of these vertices are the same. Therefore, it is hard to map the tip region well if the skeleton does not protrude close enough to the surface. As shown in the squared region in Figure 4.9 and Figure 4.15, the tip region of the left back leg maps to the same skeleton node and higher geometry distortion is induced in the tip area. Compare to mapping results of the front legs in Figure 4.13, we observe that the mapping results around the tip regions of the front legs are better than that of the back legs between the lion and the cat model. This is because the shape of the front legs between the lion and the cat are similar. In this situation, we can easily find the optimal cross-parameterization that minimizes the energy without much distortion. Thus the area around the tip region can be matched well automatically even when

4.1 Result 40

the skeleton does not protrude close enough to the surface.

Figure 4.15: The cross-parameterization and slicing of the skeleton-to-surface mapping of the left back leg of the lion and cat model.

(a) (b) (c)

Figure 4.16: The cross-parameterization of the front legs between the lion (top) and cat (bottom) model with different cut positions. (a) upper one-third (b) middle (c) lower one-third.

4.1 Result 41

In Figure 4.16, we show the mapping result for the parts resulting from different cutting po-sitions. The dotted lines represent the cutting positions in the segmentation process. We observe that inappropriate segmentation often results in cross-parameterization of higher distortions; as shown in the squared region. Since cut in these positions, one of the segment parts that shared the cut boundary is large and having higher stretch on the parameterize domain. As in Figure 4.16(c), cutting in the lower one-third of the legs makes the front belly of the lion and cat be-come much larger, and result in cross-parameterization of higher distortion compare to (a) and (b).

We also derived the cross-parameterization for the models in different poses. Since the object has similar topology, the cross-parameterization between them can be easily done with our approach. In Figure 4.17 - Figure 4.19 we demonstrate the cross-parameterization between the horse in the standing pose and in normal pose. We observe that our method is insensitive to the pose.

Figure 4.17: The cross-parameterization between the horse models in the standing pose and in normal pose.

4.1 Result 42

Figure 4.18: The cross-parameterization between the head parts of the horse model in different poses.

Figure 4.19: The cross-parameterization between the left front legs of the horse models in different poses.

4.1 Result 43

Next, we change the weight for the mapping error term to show its influence in the opti-mization process. To show the influence of the mapping error with different weights, we test the parts that have extremely different sizes and fineness. In the example, we enlarge the cat ears and do the subdivision such that the ear has four times number of faces as the lion’s ears.

The cross-parameterization results with mapping error of different weights are shown in Figure 4.20. When the weight wm of the mapping error increases, we observe that the mapping area of the cat’s eats lies closer to the place with lower mapping error. However, if the weight wmis too high, the mapping area will suffer in high stretches and distortions on the target surface. Also, as shown in Figure 4.21, we observe a nearly opposite trend compares to Figure 4.20 when the influence of the stretch error increases.

wm= 1.0 wm= 1.5 wm= 2.0 wm= 2.5

Figure 4.20: The mapping result from a long ear cat head to the lion head with different mapping error weights.

4.1 Result 44

Figure 4.21: The mapping result from a long ear cat head to the lion head with different stretch error weights.

In general, we set wsa little bit higher than wmdue to our mapping error lacks the orientation information. Setting wshigher can prevent the shape from distorting a lot during the relaxation process (as shown in Figure 4.20 (e)). But when the size and fineness of the parts differs a lot, setting wmhigher than wsis necessary (as shown in Figure 4.20 (c)), since the high stretch error constrain the vertex from moving further to the ideal position during the relaxation process.

We also show the cross-parameterization between the parts with extremely different sizes and fineness. In Figure 4.22 - 4.24, we can observe that the ear parts still can approximately match to each other.

4.1 Result 45

Figure 4.22: The cross-parameterization between the long ear cat head and lion head (side view).

Figure 4.23: The cross-parameterization between the long ear cat head and lion head (front view).

4.1 Result 46

Figure 4.24: The cross-parameterization between the long ear cat head and lion head (top view).

If the mapping error is carefully tuned by the users during the mapping error relaxation, our method can be applied to the models which have extremely different appearance. User can tune the weight wmto be a little bit higher if the distance between the vertex and the reasonable mapping positions are far after the relaxation. On the other hand, if user observes high distortion of the mapping polygons, user may lower the weight wm and let the weight wsto be higher. In Figure 4.25 - Figure 4.29, we demonstrate an example of the cross-parameterization between the dragon and the wolf model. Since the shapes of the two models are extremely different, high distortion observed in these cases usually can not be avoided (as shown in Figure 4.30).

4.1 Result 47

Figure 4.25: The cross-parameterization between the dragon and wolf model.

Figure 4.26: The cross-parameterization of the head part between the dragon and the wolf model.

4.1 Result 48

(a) (b)

Figure 4.27: The cross-parameterization of the limbs between the dragon and wolf model. (a) right front leg (b) left front leg.

(a) (b)

Figure 4.28: The cross-parameterization of the limbs between dragon and wolf model. (a) right back leg (b) left back leg.

4.1 Result 49

Figure 4.29: The cross-parameterization of the tail part between the dragon and wolf model.

Figure 4.30: The visualization of slice mapping from the dragon to the wolf model.

We also demonstrate the partial mapping skeletons of the dragon and wolf model; as shown

4.1 Result 50

in Figure 4.31. Skeleton paths that linked by the matched skeleton nodes are corresponded accordingly. The mappings of the skeleton nodes inside the skeleton path are generated auto-matically through a linear interpolation along the skeleton path. For those nodes that do not have correspondences, their corresponding positions are the nearest node that has correspon-dence. For example, the three protrusions on the dragon’s tail will be corresponded to the skeleton node 12 of the wolf model. Therefore, the mapping of these unique feature parts will be constrained to the nearby area on the target model by minimizing both of the stretch and mapping error. Since the mapping error can only constrain the mapping position of the unique feature parts in nearby approximated regions, the qualities of the mapping still have room for improvement.

Figure 4.31: Skeleton node correspondence between the dragon and wolf model.

Figure 4.32: Partial mapping of horns from the dragon to the wolf model.

4.1 Result 51

Figure 4.33: Partial mapping of the left two claws from the dragon to the wolf model.

Figure 4.34: Partial mapping of the right two claws from the dragon to the wolf model.

Figure 4.35: Partial mapping of tails from the dragon to the wolf model.

4.1 Result 52

Figure 4.36: The slicing of the skeleton-to-surface mapping of the camel and the horse model.

Our approach uses the skeleton-to-surface mapping information to determine the map-ping error.The cross-parameterization between the models can not be well constructed if the skeleton-to-surface mapping is not good. As shown in Figure 4.36, the body of the camel has a strong bulge at the center which results in the unsatisfactory skeleton-to-surface mapping result.

The cross-parameterization between the horse and the camel has higher distortion around the body and the upper part of the limbs, which are connected to the body after the segmentation (as shown in Figure 4.38 and Figure 4.39).

4.1 Result 53

Figure 4.37: The cross-parameterization between the hose and camel model.

Figure 4.38: The cross-parameterization of the body between the horse and camel model.

4.1 Result 54

(a) (b)

Figure 4.39: The cross-parameterization of the limbs between the horse and the camel model.

(a) front legs (b) back legs. The dotted lines represent the approximate segmentation positions in the segmentation process.

Finally, we show the partial mapping result between the horse and camel model. Since the shape of the tail part is quite simple, the partial mapping between the horse and the camel can be well done; as shown in Figure 4.40.

Figure 4.40: Partial mapping of tail from the camel to horse model.

在文檔中 以骨架驅動之交互參數化 (頁 38-66)

相關文件