4.2 Timing information
Table 4.1 lists the performance summary of the proposed skeleton-driven cross-parameterization present in figure 4.7 - 4.19, 4.25 - 4.40. All the results are performed on Intel Core 2 Duo CPU E6600 2.4GHz with 4GB DDR2 memory, using a single thread implementation. Since our segmentation process is based on the skeleton-to-skeleton and the skeleton-to-surface mapping information, the process can be done quickly within a second. It usually takes five to seven sec-onds for users to specify the matching points by the users for each part pair. Our method does not implement space subdivision on models to accelerate the point-in-triangle test that used in the part cross-parameterization, boundary smooth, and re-projection process. We only apply some simple tests to filter out the triangles that are far from the vertex. Therefore, when the fineness of the input models increase, the processing time increases.
Table 4.1: Performance summary
Model Source Target Matching Point Time(sec)
Source Target #V #F #V #F #MP Part Segmentation Part Cross-Param. Part Boundary Smooth Re-Projection
Dog Wolf 4,530 9,056 4,712 9,420 14 0.093 24.530 2.422 2.547
Lion Cat 5,196 10,388 5,046 10,088 16 0.078 32.313 2.672 3.453
Horse1 Horse2 15,002 30,000 15,002 30,000 16 0.218 209.05 9.109 26.312
Dragon Wolf 14,331 28,658 15,651 31,298 19 0.328 408.12 10.750 19.391
Camel Horse 10,020 20,036 10,002 20,000 14 0.171 87.063 5.859 17.156
Note: second column: the number of vertices (#V) and faces (#F) of the source model; third column: the number of vertices (#V) and faces (#F) of the target model; fourth column: the number of user-specified pairs of matching points (#MP); fifth column: the process time of the segmentation, part cross-parameterization, part boundary smoothing, and re-projection.
C H A P T E R 5
Conclusions
We give a brief summary of the proposed cross-parameterization algorithm in this chapter. We also discuss the limitation of our system, and propose several future works.
5.1 Summary
We have presented a novel algorithm that generates the cross-parameterization between the source and the target mesh with only a few matching points specify on part boundaries. Our method utilizes the correspondence information of the surface and
skeleton-to-skeleton to measure the mapping error for cross-parameterization. To derive the cross-parameterization, we iteratively push every vertex towards a position that has lower mapping error while
preserv-ing the shape of the mesh until the optimization converges. To satisfy such relaxation scheme, we required the medium to be a 2D planer domain. In order to parameterize mesh onto the planer domain without folding, we consistent segment input models into several parts in cor-respondence by using the skeleton-to-surface and skeleton-to-skeleton mapping information.
Since the relaxation is done through the 2D parameterize domain, we can ensure that the
pinch-56
5.2 Limitations 57
ing and foldover artifacts that are usually encountered in traditional deformation driven ap-proach will not occur in our method. A smoothing process is invoked at the end to smooth the cross-parameterization along the part boundaries and generate the mapping for the vertices that are near the part boundaries. The algorithm is fast and efficient as the energy minimization pro-cess can be formulated into a sparse linear system. Differ from general approaches that require users to specify the corresponding constraint points. Our approach requires users to specify the matching points with similar orientation on the part boundaries of source and target model.
Specifying these matching points are much easier and more intuitive than assigning the general corresponding constraint points.
5.2 Limitations
The proposed algorithm uses a mapping error and geometry stretch to determine if a vertex’s mapping position is reasonable or not. This works well in most cases, but when the input models are perfect symmetry (e.g. a cylinder) with high vertex stretch on the parameterization domain, it could be hard to decide the desired mapping positions. As in Figure 5.1, the proposed error metric can not recognize the case when the red points’ mapping position rotate with respect to the skeleton node on the mapping slice.
Since the corresponding skeleton positions of these red colored does merely changes after the rotation, the skeleton mapping position difference will not increase. And the L2stretch can only response to the combined effects of the maximal and minimal Eigen value of the embedded triangle. Therefore, it can not deal with the case that the triangles is long and narrow (as the triangles with red edges in Figure 5.1).
5.2 Limitations 58
on parameterize domain
skeleton mapping position
Figure 5.1: L2 stretch can not recognize the distortion caused by the rotation along the indicate direction.
Currently we suggest a method to deal with the perfect symmetry problem, by adding the symmetry information to the mesh (a dense symmetry line segments that lies inside the mesh).
With this information, we can generate the rotation angle for each vertex according to the clos-est symmetric line: As illustrated in Figure 5.2, we project a vertex to the plane which passing through the mapped skeleton node and having the normal direction L to get the project point vi0, where L = (SkelDir × SymmLineDir) × SymmLineDir. Then, we dot the line direction K to the symmetry line to get the rotation angle θ, where K = vi0− si. After each vertex generate the rotation angle, we can calculate the rotation angle difference to prevent the perfect symme-try rotation problem with the similar approach we proposed in Subsection 3.4.2 However, to automatically generate the dense and consistent symmetry lines that do not affect by the poses or local features is not an easy task.
5.2 Limitations 59
Figure 5.2: Illustration of orientation angle calculation.
Also, in the smoothing process for part boundary, we have to guarantee that the local pa-rameterization domain used for interpolation must contain all the mapping positions. If the out-growing region has more than two boundaries, the local parameterization domain will have at least one hole inside and violate our assumption. Therefore, our method does not support the local out-growing region with more than two boundaries.
Our method does not support user to assign the corresponding constaint points as previous deformation-driven approaches. Usually, these additional constraints may violate the convex combination constraint and result in folding after the relaxation(as shown in Figure 5.3).
Since our parameterization method needs to guarantee the segment part to be embedded on the planer domain without folding, we can not deal with the segment part with genus greater than zero.