• 沒有找到結果。

Shape matching results for some non-ideal cases

6.2 The Potential-Based Shape Matching

6.3.2 Shape matching results for some non-ideal cases

Shape matching based on a partial view

To simulate the shape matching for input objects with incomplete surface descriptions, e.g., due to a partial view, it is assumed that only the vertices of a portion of the polygons of a shape model are available as input data. Fig. 6.9 shows partial object surfaces of some shape models and the corresponding shape matching results. Similar results for objects with more complex boundary descriptions are shown in Fig. 6.10. Table 6.1 shows the computation

(a) (b)

(c) (d)

Figure 6.6: Shape matching results obtained for four input objects.

Figure 6.7: Shape matching results for propane (left) and piston (right).

ÇÁÈÇ

Figure 6.8: The CPU time spent in the shape matching for propane as a function of the amount of input data.

times as well as the amounts of different boundary elements, 3 and the percentages of these numbers with respect to those of the complete object boundary, of the input objects shown in Figs. 6.9 and 6.10.

For each of the input objects which has been considered earlier in the previous subsection for shape matching, there is a reduction in the CPU time in this case due to a reduction of the amount of boundary elements (vertices) used. However, the former is not proportional to the latter in general since the effective shape of the input object is changed.

Input data with noise contamination

To simulate the shape matching for input data with data acquisition errors, noises are added to the locations of point samples of the input object. To just demonstrate the basic idea, the noise condition is simplified by considering only the perturbation in one dimension. For each of the two cylindrical objects shown in Fig. 6.7, perturbations are introduced by adding noises uniformly distributed between ±5% and ±10%, respectively, of the coordinates of object vertices measured from its centroid along the direction of the cylinder’s axis. Fig.

3Although vertices, not polygons, of an input object are used in shape matching, the percentage of the latter will be a good estimate of the former for an evenly and densely sampled object surface.

Partial Object Surfaces Matching Results

Figure 6.9: Matching results using partial views of, from top to bottom, dean, dodecahdrn, M − 104, M − 110, and M − 112.

Table 6.1: Boundary elements and CPU times for examples shown in Figs. 12 & 13 vertices/polygons(percentages) CPU time (sec)

dean 8/3(73%/36%) 2.66

dodecahdrn 16/6(80%/50%) 2.38

M-104 17/11(77%/55%) 5.24

M-110 20/9(71%/41%) 4.91

M-112 47/26(72%/62%) 29.88

propane 97/33(76%/50%) 26.62

piston 259/192(67%/50%) 381.76

Partial Object Surfaces Matching Results

Figure 6.10: Matching results using partial views of propane and piston.

6.11 shows the shape matching results with the above additive noises. While these results are consistent to those obtained for the noise-free case, the noises result in a small drop in the final size of the input object.

Effects of sampling

Intuitively, in order to properly represent an object with point samples on its surface, it would be desirable that these samples are dense enough and have a near uniform distribu-tion. Nevertheless, for the shape matching examples considered in the previous subsections, the vertices of the corresponding shape models, or a subset of such vertices, are used directly as simulated input data (point samples) of an object. Despite the satisfactory shape match-ing results presented so far, there are certain occasions when usmatch-ing such data will cause a problem.

Fig. 6.12(a) shows an unsuccessful shape matching example for a cap-shaped object whose boundary consists of two cylindrical surfaces of different cross-sections, the rim con-necting them, and two circular bases. While there are 128 vertices along each circumference of the two circular bases, there are 383 vertices located at the rim. Due to such a highly uneven distribution of point samples, the matching process yields a final, minimal potential, configuration of the input object which moves the above (heavily sampled) rim near the cen-tral region of the shape template, and in turn pushes one of the bases against the template’s

(a)

(b)

Figure 6.11: Matching results with (a) 5% and (b) 10% noise contamination in the input data.

(a) (b)

Figure 6.12: (a) An unsuccessful shape matching result due to a highly uneven distribution of input data. (b) The result obtained by using a subset of the input data.

boundary. 4

To examine the effect of sampling further on an empirical basis, the following simple adjustment to the above problem is considered: only a subset of the vertices, i.e., the 256 vertices on the circumferences of the two bases, are used as input data. Fig. 6.12(b) shows the shape matching result thus obtained. One can see easily that the aforementioned problem is not presented here.

Discussions

In the previous subsections, the proposed shape matching method is shown to work for certain non-ideal cases. However, it is easy to see that, like other shape matching approaches, such an approach will fail to work at some point as the situation gets worse. For example, depending on the viewing angle or the severity of an occlusion, input data obtained from partial object surfaces may not convey enough information regarding the object shape that the shape matching process will generate an erroneous result. Similar arguments also apply to the noise condition.

On the other hand, it is possible for the proposed approach to use raw data of an input object, in form of object points, without first establishing a structural relationship among the data points if the points have a, dense or sparse, fairly uniform distribution and cover enough shape features of the object.

For input data not possessing such desirable attributes, the processes of (i) fitting (poly-hedral) surfaces to the raw data, and (ii) obtaining near uniformly distributed point samples from these surfaces may be necessary before desirable object samples can be obtained.5

Such issues have been considered by several researchers, e.g., those in [48].

Fig. 6.13(a) shows a 240 × 240 range image of adapter. Since very dense (about 40,000) point samples are obtained for the visible surfaces of the object, the above (i) and (ii) are not performed. Instead, in order to reduce the computation complexity, the set of samples are downsized by randomly selecting about 300 of them. Figs. 6.13(b) and (c) illustrate the top and side views of the shape matching result, respectively, using these subset of samples directly. Fig. 6.13(d) shows the matching result using the range image of the object.

4While the vertices are uniformly distributed along each of the above circumferences, this is not true for the 383 vertices at the rim. Thus, a tilt can be observed from the shape matching result.

5Ideally, the process should perform a ”coarse feature extraction” to get ”meaningful” samples. mini-mization of the potential is not noticeable.

(a) (b)

(c) (d)

Figure 6.13: Shape matching result for range data (see text).

Figure 6.14: Another unsuccessful shape matching result.

There are certain types of objects for which the proposed isotropic scaling scheme will not perform perfectly. For example, for bigwye shown in Fig. 6.5, an input object of identical shape will not grow fully after the matching process, as shown in Fig. 6.14. (As a simpler 2-D example of such a problem, consider the process of growing an size-reduced I-shaped object in the corresponding 2-D shape model.)

More involved scaling scheme will need to be developed to overcome such a problem.

6.4 Summary

A novel approach of shape matching and recognition of 3-D objects using generalized po-tential fields is proposed in this thesis. The popo-tential-based model assumes that 3-D object boundaries are uniformly charged. An initially small input object placed inside a template object can translate and reorient itself to reduce the repulsive potential. If the input object is allowed to increase its size in template objects of different shapes, the template object which allows the largest final size of the input object will correspond to the best match.

Such an approach is intrinsically invariant under translation, rotation and size changes of the input object.

For an input object represented by its boundary samples, the above process of potential reduction can be carried out efficiently since the resultant potential gradients, in forms of repulsive force and torque exerted on the object, are analytically tractable. Simulation results show that the potential-based shape matching scheme has the time complexity as a linear function of the boundary samples and works to some extent for a partial view of an object.

Moreover, due to the nature of the potential model, such a scheme performs satisfactorily against noise contamination in the input data. The proposed shape matching scheme is not based on any hypothesis of feature correspondence. Therefore, feature extraction for a structured object representation is not needed.

Chapter 7

Conclusions and Future Works

In this thesis, we propose a potential-based algorithm for the path planning of a robot ma-nipulator in 2-D environment. The proposed algorithm uses an artificial potential field to model the workspace wherein object boundaries are assumed to be charged with various source distributions. Simulation results show that a path thus derived is always spatially smooth while its safety level can be adjusted easily by selecting proper charge distributions for the potential-based workspace model. Since the proposed approach uses workspace in-formation directly, it is readily applicable to manipulators of high DOFs. According to the simulations, manipulators with DOFs up to 9 have been tested with satisfactory results.

An extended potential-based algorithm for a robot manipulator is proposed to solve path planning problems of 3-D workspace. The approach is similar to that done in 2-D manipulator, except the DOFs of joints and adopted potential model. In a 3-D environment, to give a general direction of the path, a sequence of GPs instead of guide lines (GLs) to be reached by the manipulator are assumed to be given in advance in the workspace. As a GP is an intermediate or final goal for the end-effector of a manipulator to reach, it also helps to establish certain motion constraints for adjusting manipulator configuration during path planning. According to such constraints, the proposed approach derives the path for a manipulator by adjusting its configurations at different locations along the path to minimize the potential using the above force and torque. Simulations show that a path thus derived is always spatially smooth and effective. While only the static environments are considered in this thesis, the proposed approach can be extended to workspace of moving obstacles with essentially no change in the path planning algorithm.

Furthermore, a potential-based path planning is also proposed for articulated robots with moving bases. The proposed approach is similar to that done in 3-D manipulator.

According to the adopted potential model, surfaces of workspace obstacles are assumed to be uniformly charged and the links of the articulated robot are represented as a set of charged sampling points. The repulsive force and torque between links and obstacles thus modeled are analytically tractable. While the base of a manipulator is fixed, the base of an articulated robot is movable. Since the base of an articulated robot is not fixed, the force exerted on a link due to the torque of other links does not longer exist. Thus, a sequential planning strategy is adopted to speedup the computation. Simulation results show that a path thus derived always stays away from obstacles and is spatially smooth.

Finally, a novel approach of shape matching and recognition of 3-D objects using gen-eralized potential fields is also proposed in this thesis. The potential-based model assumes that 3-D object boundaries are uniformly charged. An initially small input object placed inside a template object can translate and reorient itself to reduce the repulsive potential.

If the input object is allowed to increase its size in template objects of different shapes, the template object which allows the largest final size of the input object will correspond to the best match. Such an approach is intrinsically invariant under translation, rotation and size changes of the input object. For an input object represented by its boundary samples, the above process of potential reduction can be carried out efficiently since the resultant poten-tial gradients, in forms of repulsive force and torque exerted on the object, are analytically tractable. Simulation results show that the potential-based shape matching scheme has the time complexity as a linear function of the boundary samples and works to some extent for a partial view of an object. Due to the nature of the potential model, such a scheme performs satisfactorily against noise contamination in the input data. Moreover, the approach is also practicable to objects with incomplete surface descriptions, e.g., due to a partial view.

Appendix A

A Potential-Based Generalized Cylinder Representation

The generalized cylinder (GC)-based shape representation is a popular representation for 3-D objects. A GC is a solid defined by its axis, a cross-section curve, and a scaling function.

The solid is obtained by sweeping a planar region, its cross-section, as the region is moved and deformed according to the scaling function along a space curve, its axis. These cross-sections are also good candidates of initial GPs for path planning discussed in Chapter 4 and 5.

A.1 GC Axis Generation

Since the GC axis usually lies in the middle of an object, which is in a way similar to an object skeleton, the approach proposed in [62] adopts the potential-based skeletonization algorithm presented in [18], as reviewed next, to obtain the GC axis. The potential-based skeletonization algorithm identifies the potential valleys connecting several input seed points, which are selected as the convex vertices of the object (i.e., end points of the derived object skeleton), to obtain the object skeleton. The algorithm for generating the GC axis is es-sentially the same as the skeletonization algorithm except that the input seeds are selected as the centroids of two cross-sections of the object instead the convex vertices. With the boundary of a polyhedron charged according to the generalized potential model described in the previous section, the basic requirement for skeletonization, i.e., the potential will diverge at boundaries of polyhedral objects, is guaranteed. Inside the object boundary, the potential valley corresponds to 3D locations where the potential has locally minimal value in the 2D subspace perpendicular to the direction of the potential gradient. The skeletonization

ap-proach proposed in [18] obtained the object skeleton by, starting from selected seed points, traversing the corresponding potential valleys until a potential minimum is reached. The basic computation of the MAT skeleton, starting with one of the seed point, is described in the following algorithm :

Algorithm Potential Skeleton

Step 1: Follow the direction of the force to traverse the skeleton (potential valley) until a zero force is obtained, i.e., a potential minimum is reached.

Step 2: Repeat Step 1 for each of the seed points.

Step 3: End the skeleton computation if there is only one potential minimum.

Step 4: Derive additional skeleton branches by identifying potential valleys connecting neighboring potential minima.

In Step 1, the force following is performed inside the polyhedral boundary. For a closed polyhedron, there exists at least one potential minimum since the potential and thus the force field will diverge at its surface [1]. If the number of potential minima obtained from the above force following procedure is equal to one, the complete skeleton is generated and Step 4 is not necessary. Otherwise, the potential minima need to be connected to form the complete MAT skeleton. To estimate the potential skeleton between these potential minima, we first connect each pair of neighboring minima with a virtual line segment1. Equally spaced point samples are then selected along the line segment as initial guesses of point samples along the associated skeleton branch. The potential valley between the two minima is then estimated by searching the minimum potential location in the 2D subspace perpendicular to the virtual line segment at each of these samples.

Fig. A.1(a) shows the skeleton of a rectangular hexahedron obtained with Poten-tial Skeleton. The seed points, where the force following procedure of the algorithm start, are selected as the eight convex corners of the object. (In the computer implementation, the selected seed points are located inside the object boundary and are slightly away from those convex corners.) The derived skeleton is closely related to the media surface derived

1In some complex cases where the line segment intersects the object boundary, a more refined estimation based on the visibility graph method is necessary. See [18] for more detailed discussion.

in [63], as discussed in [18]. Obviously, the derived skeleton differs from the GC axis which is defined in Sec. 1 as the principal axis in reflecting the topology of an object. However, if we select the seed points as the centroid points of the two ends (cross-sections) of the object instead of the eight corners, a GC axis will be obtained directly with the same algorithm, as shown in Fig. A.1(b)2.

(a) (b)

Figure A.1: (a) A rectangular hexahedron and its MAT skeleton. (b) A GC axis of the rectangular hexahedron.

The main difference between the GC axis and the object skeleton in describing the object shape can be stated most conveniently by considering prismatic objects. While the axis and the cross-section of GC will simply be the principal axis and the cross-section of a prism, respectively, the object skeleton obtained with the proposed approach are more complex near the two ends of the prism where the topology of the skeleton is determined through the selection of seeds (which are convex vertices of the cross-sections in our case).

In general, for an object consists of elongated parts, both representations will reflect similar topological (skeletal) properties of each part of the object, except for the above differences, and in turn those of the whole object.

In addition, different from the object skeleton, the GC representation is not unique in general. For example, the GC axis can have either horizontal or vertical direction for a rectangle in the 2D space. As shown in Fig. A.2(a), we may select points X and Y as two seeds and generate the GC axis XY . Similarly, points M and N can also be selected as seeds to generate the GC axis in a different direction, as shown in Fig. A.2(b). Figs. A.2(c) and (d) show the GC cross-sections corresponding to XY and MN , respectively. In Sec. A.2.1, some suggestions for seed point selection will be given from the observation on the different GC axes and cross-sections.

2Theoretically, the MAT skeleton and GC axis are both continuous curves, however, they are searched step by step in our implementation and then yield a discrete form of MAT skeleton and GC axis.

H

Figure A.2: The GC axis and cross-sections of a rectangle in the 2D space.