
The one-to-one property of injectivity is a crucial concept in computer-aided design, geometry, and graphics. The injectivity of curves (or surfaces or volumes) means that there is no self-intersection in the curves (or surfaces or volumes) and their images or deformation models. Bézier volumes are a special class of Bézier polytope in which the lattice polytope equals ◻m,n,l,(m,n,l∈Z). Piecewise 3D Bézier volumes have a wide range of applications in deformation models, such as for face mesh deformation. The injectivity of 3D Bézier volumes means that there is no self-intersection. In this paper, we consider the injectivity conditions of 3D Bézier volumes from a geometric point of view. We prove that a 3D Bézier volume is injective for any positive weight if and only if its control points set is compatible. An algorithm for checking the injectivity of 3D Bézier volumes is proposed, and several explicit examples are presented.
Citation: Xuanyi Zhao, Jinggai Li, Shiqi He, Chungang Zhu. Geometric conditions for injectivity of 3D Bézier volumes[J]. AIMS Mathematics, 2021, 6(11): 11974-11988. doi: 10.3934/math.2021694
[1] | Joseph Lifton, Tong Liu, John McBride . Non-linear least squares fitting of Bézier surfaces to unstructured point clouds. AIMS Mathematics, 2021, 6(4): 3142-3159. doi: 10.3934/math.2021190 |
[2] | Syed Ahmad Aidil Adha Said Mad Zain, Md Yushalify Misro . A novel technique on flexibility and adjustability of generalized fractional Bézier surface patch. AIMS Mathematics, 2023, 8(1): 550-589. doi: 10.3934/math.2023026 |
[3] | Yujun Li . Characteristics of planar sextic indirect-PH curves. AIMS Mathematics, 2024, 9(1): 2215-2231. doi: 10.3934/math.2024110 |
[4] | Salwa Syazwani Mahzir, Md Yushalify Misro, Kenjiro T. Miura . Preserving monotone or convex data using quintic trigonometric Bézier curves. AIMS Mathematics, 2024, 9(3): 5971-5994. doi: 10.3934/math.2024292 |
[5] | Samia BiBi, Md Yushalify Misro, Muhammad Abbas . Smooth path planning via cubic GHT-Bézier spiral curves based on shortest distance, bending energy and curvature variation energy. AIMS Mathematics, 2021, 6(8): 8625-8641. doi: 10.3934/math.2021501 |
[6] | Mohammad Ayman-Mursaleen, Md. Nasiruzzaman, Nadeem Rao, Mohammad Dilshad, Kottakkaran Sooppy Nisar . Approximation by the modified $ \lambda $-Bernstein-polynomial in terms of basis function. AIMS Mathematics, 2024, 9(2): 4409-4426. doi: 10.3934/math.2024217 |
[7] | Muhsin Incesu . LS (3)-equivalence conditions of control points and application to spatial Bézier curves and surfaces. AIMS Mathematics, 2020, 5(2): 1216-1246. doi: 10.3934/math.2020084 |
[8] | Hongyu Chen, Li Zhang . A smaller upper bound for the list injective chromatic number of planar graphs. AIMS Mathematics, 2025, 10(1): 289-310. doi: 10.3934/math.2025014 |
[9] | Zhiqun Li, Huadong Su . The radius of unit graphs of rings. AIMS Mathematics, 2021, 6(10): 11508-11515. doi: 10.3934/math.2021667 |
[10] | Abdesslam Boulkhemair, Abdelkrim Chakib, Azeddine Sadik . On a shape derivative formula for star-shaped domains using Minkowski deformation. AIMS Mathematics, 2023, 8(8): 19773-19793. doi: 10.3934/math.20231008 |
The one-to-one property of injectivity is a crucial concept in computer-aided design, geometry, and graphics. The injectivity of curves (or surfaces or volumes) means that there is no self-intersection in the curves (or surfaces or volumes) and their images or deformation models. Bézier volumes are a special class of Bézier polytope in which the lattice polytope equals ◻m,n,l,(m,n,l∈Z). Piecewise 3D Bézier volumes have a wide range of applications in deformation models, such as for face mesh deformation. The injectivity of 3D Bézier volumes means that there is no self-intersection. In this paper, we consider the injectivity conditions of 3D Bézier volumes from a geometric point of view. We prove that a 3D Bézier volume is injective for any positive weight if and only if its control points set is compatible. An algorithm for checking the injectivity of 3D Bézier volumes is proposed, and several explicit examples are presented.
In geometric modeling, 3D Bézier volumes are important and frequently used tools. They are often used in video tracking [1,2,3], which is one of the fundamental issues in computer vision. Video tracking can be applied for target recognition and face recognition, which have broad application prospects in social security and aerospace. Capturing real motion from video sequences is a powerful approach in the automatic construction of a facial deformation model. Three-dimensional Bézier volumes are effective tools for the synthesis and analysis of facial movements, as they are capable of animating geometric facial models of different shapes and structures [4]. A shape is k-dimensional if there is a continuous one-to-one mapping of the k-dimensional cube (ball) on this shape [5]. A shape can exist in an n-dimensional space if k≤n. Mapping functions are maps for which the definition domain is the same as the parameter domain. Three-dimensional Bézier volumes are mapping functions in which both domains have three dimensions.
Toric surfaces were proposed by Krasauskas [6] in 2002. These are polygon surfaces, the essence of which is the projection of the toric variety from higher-dimensional space to low-dimensional affine space. The parameter domain is the convex polytope, which defines the toric ideal. The shape of a toric surface can be modified by its control points and weights. The basis functions of the toric surface are defined by the positive lattice points and the boundary functions of the convex polytope, which are also the generation of the Bernstein basis. The well-known 3D Bézier volumes are a special class of Bézier polytopes proposed by Krasauskas [6].
Many applications in 3D games, model-based video coding, and human–computer interfaces demand realistic human facial animation. A crucial issue in facial animation is deformation modeling. This concerns a feasible approach for imbedding a facial model in a 3D volume, and then completing the deformation by volume deformation. Tao and Huang [4] proposed a 3D Bézier volume deformation (BVD) model for both synthesis and analysis of facial movements. In their work, the facial model was embedded into sixteen 3D Bézier volumes. The deformation of their facial model was completed by the shape morphing of these 3D Bézier volumes. Their model is a kind of piecewise 3D Bézier volume model. In Figure 1, we show two solid models structured by 3D Bézier volumes. Figure 1(a) shows a human hand model defined by a 3D Bézier volume with degree 11×11×11. In Figure 1(b), we show a human foot model defined by a 3D Bézier volume with 1131 control points. These two models are formed by a single 3D Bézier volume. As an effective tool in deformation [4], BVDs reduce the number of deformation volumes and the degrees of freedom in the control points, which is preferable in motion tracking. Moreover, irregular 3D manifolds can be formed. Note that a crucial issue is that the deformation volume is non-self-intersecting. That is, 3D Bézier volumes should be non-self-intersecting. In this paper, we consider the injectivity of 3D Bézier volumes. In Figure 2, we show two 3D Bézier volumes. The Bézier volume in Figure 2(a) has no self-intersection with any choice of positive weights. The non-self-intersecting Bézier volume in Figure 2(b) has self-intersections with certain choices of positive weights. Therefore, the question is: when does a 3D Bézier volume have no self-intersections for any choice of positive weights? In this paper, we attempt to answer this question.
The concept of injectivity comes from the chemical reaction networks developed by Müller et al. [7]. In chemical engineering, if the polynomial map in a dynamical system is injective, then multi-stationarity cannot occur. In geometry, injectivity implies that curves, surfaces, or volumes have no self-intersection. Hoffmann [8] mentioned that the intersection problem is one of the most fundamental issues in the integration of geometry and solid modeling systems. Xu et al. [9] noted that finding a good placement of the inner control points inside the computational domain is a key issue. A basic requirement of the resulting volume parameterization for iso-geometric analysis is that there are no self-intersections, so that it is an injective map from the parameterization domain to the computational domain. Moreover, the self-intersection problem is a major problem in computer-aided design [10,11]. Many researchers have studied the estimation and computation of self-intersections. Patrikalakis and Prakash [12] used an adaptive subdivision algorithm for Bézier surfaces and successfully solved actual intersection problems with diverse features. Motivated by a query from Sabin about constructing an injective transfinite interpolant for use in changing a parametrization, Goodman and Unsworth [13] derived conditions on the Bézier points of a polynomial mapping from R2 to R2. When using surfaces to represent a solid volume, it is necessary to dispose of the self-intersection problem. A divide-and-conquer algorithm for finding the self-intersection curves of surfaces has been developed [14], in which self-intersection is defined as a global intrinsic property of a surface. This led to a necessary condition for surface self-intersection that can be computed from the normal and tangent bounding cones of the surface. Galligo and Pavone [10] presented two different contributions towards the determination of the self-intersection locus of a Bézier bi-cubic surface patch. There are a number of articles considering methods and algorithms for the intersection of two patches (see, e.g., [15,16,17,18]).
Our motivation is different from the above. We consider conditions on the control points for 3D Bézier volumes that are equivalent to there being no self-intersection for any choice of positive weights. When the number of control points is small, the condition is geometrically intuitive. Craciun et al. [19] used ideas from geometry and dynamical systems to explain the influence of control points on the shape of Bézier curves and patches. They proved an injective condition for a certain map and adapted this for toric Bézier function [20]. They also derived the sufficient and necessary injective condition for toric functions in Rd. Their result is a geometric condition on the control points such that the corresponding toric patches are injective for any choice of positive weights. However, there is a minor flaw in that this only guarantees injectivity in the interior of a patch. To refine the result in [20], the injective condition of 2D toric Bézier patches has been proposed by Sottlie and Zhu [21]. The sufficient and necessary conditions for injective 2D and 3D Bézier curves/surfaces have been proposed by Zhu and Zhao [22,23], and the injectivity conditions for toric volumes have been established by Yu et al. [24].
The remainder of this paper is organized as follows. In Section 2, we introduce 3D Bézier volumes [6] and some properties related to our paper. In Section 3, we illustrate our main result, which implies the injectivity of 3D Bézier volumes. An algorithm for checking the injectivity of 3D Bézier volumes is also proposed. Some explicit examples are presented in Section 4.
The definition of 3D Bézier volumes can be found in a number of related references. In this section, we illustrate the definition of 3D Bézier volumes given by Krasauskas [6]. Toric surface patches were proposed by Krasauskas [6], who derived them from toric varieties and toric ideals. Rational Bézier forms are special classes of these toric forms; for example, 3D Bézier volumes are a kind of 3D situation.
Consider a cube ◻m,n,l⊂R3 whose vertices have integer coordinates. A=◻m,n,l∩Z3 is called a lattice points set. ◻m,n,l is a lattice polytope Im×In×Il. It is also the convex hull of A. Let hi(t1,t2,t3)=0,(t1,t2,t3)∈R3,i=1,⋯,6 be the facets of ◻m,n,l. Then, ◻m,n,l can be defined by hi(t1,t2,t3)≥0,i=1,⋯,6. According to Krasauskas [6], the toric Bernstein basis function can be defined as β(t1,t2,t3)=ci,j,kh1(t1,t2,t3)h1(i,j,k)⋯h6(t1,t2,t3)h6(i,j,k),(i,j,k)∈A, where ci,j,k is a positive coefficient. In this paper, ci,j,k=(mi)(nj)(lk)mmnnll. We illustrate the definition of 3D Bézier volumes in the following form.
Definition 1. [6] A 3D Bézier volume associated with a lattice points set Am,n,l={(i,j,k)∈Z3|0≤i≤m,0≤j≤n,0≤k≤l,} is a rational map BAm,n,l,P,ω:◻m,n,l→R3.
BAm,n,l,P,ω(t1,t2,t3):=m∑i=0n∑j=0l∑k=0pi,j,kωi,j,kβi,j,k(t1,t2,t3)m∑i=0n∑j=0l∑k=0ωi,j,kβi,j,k(t1,t2,t3), | (2.1) |
where βi,j,k(t1,t2,t3)=(mi)(nj)(lk)mmnnllti1(m−t1)(m−i)tj2(n−t2)n−jtk3(l−t3)(l−k), (i,j,k)∈Am,n,l.
Here, P={pi,j,k∈R3|i,j,k∈Z,0≤i≤m,0≤j≤n,0≤k≤l} is called the control points set, and βi,j,k(t1,t2,t3)) is the toric Bernstein basis function. Let τ1=t1m,τ2=t2n,τ3=t3l. Then, BAm,n,l,P,ω is called a 3D Bézier volume.
If we do not fix all the coefficients ci,j,k of the basis functions β(t1,t2,t3), they can vary from case to case. It is called Bézier polytope, a straightforward generalization of toric surfaces. Bézier volumes are particular cases with the special coefficients ci,j,k=(mi)(nj)(lk)mmnnll [6]. Definition 1 is equivalent to the traditional definition introduced in much of the literature [25,26,27]. When the lattice polytope is ◻m,n,l, the toric surface will be a 3D Bézier volume. Therefore, 3D Bézier volumes have the same properties as toric surfaces. We will illustrate some of the properties as follows (see [25]):
(1)Affine invariance.
(2)Convex hull property. The 3D Bézier volume BAm,n,l,P,ω is a subset of R3 contained in the convex hull of its control points pi,j,k∈P.
(3)Boundary property. The boundary of the 3D Bézier volume BAm,n,l,P,ω consists of rational Bézier surfaces BAm,n,l|δi,P|δi,ω|δi|δi, i = 1, ..., 6, defined by control points P|δi and weights ω|δi indexed by lattice points δi; δi,i=1,⋯,6, are the facets of ◻m,n,l⊂R3.
Example 1. Let the lattice polytope be ◻1,2,1⊂R3. First, suppose that the control points set is the same as the lattice points set. This 3D Bézier volume is shown in Figure 3(a), and it is obviously injective. Second, we move one of the corner control points [see Figure 3(b)]. The resulting 3D Bézier volume is no longer injective [see Figure 3(c)].
Example 1 implies that the location of each control point has an important impact on the injectivity of the 3D Bézier volume.
Example 2. Let ◻3×3×3⊂R3. The lattice points set A3,3,3=◻3×3×3∩Z3 is shown in Figure 4(a). Suppose that all the weights are equal to 1. With the given control points set P as shown in Figure 4(b), the 3D Bézier volume BA3,3,3,ω,P defined by A3,3,3 and P is shown in Figure 4(c).
Example 2 implies that a 3D Bézier volume lies in the convex hull of its control points. This leads us to ask, is a 3D Bézier volume non-self-intersecting if its control nets have no self-intersections? Our answer is No! In the following section, we will prove some conditions that guarantee the injectivity of 3D Bézier volumes.
Three-dimensional Bézier volumes are useful tools in solid modeling, such as for human face models. When users manipulate the expression or visual speech level of the face model, self-intersection is an undesirable result. In other words, the injectivity of 3D Bézier volumes is a precondition for solid modeling. Therefore, checking the injectivity of a given Bézier volume is an important problem that needs to be carefully considered.
In 2010, Craciun et al. [20] proposed a sufficient and necessary condition that guarantees the injectivity of toric surfaces. In R3, an order list (i1,j1,k1), (i2,j2,k2), (i3,j3,k3), (i4,j4,k4) of affinely independent points[28] determines a positive orientation through the basis
(i1,j1,k1)−(i0,j0,k0),(i2,j2,k2)−(i0,j0,k0),(i3,j3,k3)−(i0,j0,k0). |
Definition 2. The control points P and the lattice points A are compatible if:
● There exist affinely independent lattice points (i1,j1,k1), (i2,j2,k2), (i3,j3,k3), (i4,j4,k4)∈Am,n,l such that pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4 is also affinely independent;
● For any affinely independent points (i′1,j′1,k′1), (i′2,j′2,k′2), (i′3,j′3,k′3), (i′4,j′4,k′4)∈Am,n,l with the same orientation as (i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4), if pi′0,j′0,k′0,pi′1,j′1,k′1,pi′2,j′2,k′2,pi′3,j′3,k′3 is also affinely independent, then it has the same orientation as pi0,j0,k0,pi1,j1,k1,pi2,j2,k2,pi3,j3,k3.
Theorem 1 (Craciun et al., 2010). The map BAm,n,l,P,ω is injective if and only if P and A are compatible.
We can find an example that explains the compatibility of point sets and shows that Theorem 1 does not hold for some control points P that are compatible with A.
Example 3. In this example, the lattice points set is as shown in Figure 5(a). Three different control points set are shown in Figure 5(b), Figure 5(c), and Figure 5(d). It is easy to see that the control points in Figure 5(b) define the same orientation as the lattice points, while the control points in Figure 5(c) define the opposite orientation to the lattice points. The control points set in Figure 5(b) and 5(c) are both compatible. However, the control points set in Figure 5(d) is not compatible.
If we set pi3,j3,k3=pi5,j5,k5, then P and A are still compatible. According to the interpolation property of toric surfaces, this is not injective. Similarly, any control points indexed by the corner point of A coincide with each other, and the toric surface is not injective. Thus, Theorem 1 holds in the interior of the toric surface. Therefore, it also holds in the interior of 3D Bézier volumes. For 3D Bézier volumes, the correct statement of Theorem 1 is Theorem 2.
Theorem 2. The map B∘Am,n,l,P,ω:◻m,n,l→R3 is injective for all positive weights if and only if P and A are compatible.
To prove the injectivity of 3D Bézier volumes, we need to add conditions on their facets. Each boundary surface of a 3D Bézier volume is a tensor product Bézier surface. We add some geometric conditions on the facets of 3D Bézier volumes to complete the injectivity conditions.
Definition 3. The control points set P|δi,(i=1,2,⋯,6) is well-posed if it satisfies the following conditions:
● All the points are in a general position;
● For each subset ˜Am,n,l|δi of Am,n,l|δi, the corresponding control net ˜N|δi connected by the neighboring control points indexed by ˜Am,n,l|δi has no self-intersection;
● For each subset ˜Am,n,l|δi of Am,n,l|δi, the intersection of some control point pi,j,k or a line segment composed of two neighboring control points ¯pi,j,kpˉi,ˉj,ˉk of ˜P|δi and the interior of a triangle or a tetrahedron formed by the control points of {pi0,j0,k0, pi1,j1,k1, pi2,j2,k2,pi3,j3,k3| i>min{i0,i1,i2,i3} or i>max{i0,i1,i2,i3}, j<min{j0,j1,j2,j3} or j>max{j0,j1,j2,j3}} and k<min{k0,k1,k2,k3} or k>max{k0,k1,k2,k3}} is empty.
The second condition in Definition 3 means that control nets including piecewise bilinear patches connected by neighboring four control points have no self-intersection.
Theorem 3. The map BAm,n,l,P|δi,ω:◻m,n,l→R3 is injective for all positive weights if and only if P|δi is well-posed.
We omit the details of the proof of Theorem 3; they can be found in [23].
Definition 4. The control points set P is well-posed if P and A are compatible and the boundary control points sets P|δi(i=1,2,⋯,6) are well-posed.
Theorem 4. Let Am,n,l be lattice points, P be a control points set, and ω>0 be a weight. The map BAm,n,l,P,ω:◻m,n,l↦R3 is injective if and only if its control points set P is well-posed.
Proof of Theorem 4. We use contradiction to complete the proof. First, suppose that P is well-posed and the map BAm,n,l,P,ω is not injective. Then, there exist two points (t1,t2,t3),(t′1,t′2,t′3) ∈Am,n,l such that BAm,n,l,P,ω(t1,t2,t3) =BAm,n,l,P,ω(t′1,t′2,t′3). By Definition 4, the control points set P and the lattice points Am,n,l are compatible and P|δi,i=1,2,⋯6, are well-posed. It is easy to observe that there are three situations for the position of (t1,t2,t3) and (t′1,t′2,t′3).
a) If (t1,t2,t3),(t′1,t′2,t′3)∈◻∘m,n,l, the assumption means that BAm,n,l,P,ω(t1,t2,t3) =BAm,n,l,P,ω(t′1,t′2,t′3) is tenable in the interior of BAm,n,l,P,ω. However, the control points set P and the lattice points Am,n,l are also compatible. Therefore, from Theorem 2, the map BAm,n,l,P,ω:◻∘m,n,l↦R3 is injective. This contradicts the hypothesis.
b) If (t1,t2,t3),(t′1,t′2,t′3)∈δi, δi,i=1,2,⋯,6, are the facets of ◻m,n,l. Then, the assumption means that BAm,n,l,P|δi,ω(t1,t2,t3) =BAm,n,l,P|δi,ω(t′1,t′2,t′3) is tenable on the boundary of BAm,n,l,P,ω. However, P|δi,i=1,2,⋯6, are well-posed. Therefore, from Theorem 3, the map BAm,n,l,P|δi,ω is injective. This contradicts the hypothesis.
c) Only one of (t1,t2,t3) and (t′1,t′2,t′3) is a point of ◻∘m,n,l. Without loss of generality, we suppose that (t1,t2,t3)∈◻∘m,n,l. Let V⊂◻m,n,l be a neighborhood of (t1,t2,t3), and (t′1,t′2,t′3)∉¯V, where ¯V is the closure of V. Thus, the image of V under the map BAm,n,l,P,ω, BAm,n,l,P,ω(V), is a 3D open sphere satisfying BAm,n,l,P,ω(t1,t2,t3) =BAm,n,l,P,ω(t′1,t′2,t′3) ⊂BAm,n,l,P,ω(V). However, if we suppose that U⊂◻m,n,l is a 3D open sphere such that (t′1,t′2,t′3)∈U, then U⊂B−1Am,n,l,P,ω(V)∖V. Thus, the points in U∩◻∘m,n,l satisfy BAm,n,l,P,ω(U∩◻∘m,n,l)⊂BAm,n,l,P,ω(V). This implies that BAm,n,l,P,ω:◻∘m,n,l↦R3 is not injective, which contradicts Theorem 2 because P and the lattice points Am,n,l are compatible.
Therefore, the assumption is incorrect, and so the proof of Theorem 4 is complete.
From the conclusion of Theorem 4, we obtain a method of checking the injectivity of 3D Bézier volumes. We illustrate the main idea of the method in Algorithm 1. This algorithm is a direct application of Theorem 4. The complexity of Algorithm 1 is about O(n4), where n=size(Am,n,l). Although the algorithm has a high computational cost, it is a direct approach. Note that the algorithm terminates quickly in the case of non-well-posed control points. An improved algorithm for checking compatible control points in 2D was recently completed by Yu et al. [29]; an improved algorithm for checking the injectivity of 3D Bézier volumes was left as a topic for future work.
Algorithm 1 Checking the injectivity of 3D Bézier volumes. |
Require: The control points set P and the lattice points Am,n,l;
Ensure: The injectivity of BAm,n,l,P,ω for arbitrary positive weights. 1: if Two or more control points corresponding to the corner lattice points are coincident then return Am,n,l and P are incompatible. 2: end if 3: if Two or more control points corresponding to boundary δi are coincident then return Am,n,l and P are incompatible. 4: end if 5. σ=0 6: for pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4∈P|δi do 7: if ¯pi1,j1,k1pi2,j2,k2,¯pi2,j2,k2pi3,j3,k3,¯pi3,j3,k3pi4,j4,k4 is self-intersecting then 8: σ=0 9: else 10: σ=1 11: end if 12: while (iK,jK,kK)∉conv{(i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4) do 13: if piK,jK,kK∈conv{pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4} then 14: σ=0 15: else K=K+1 16: end if 17: σ=1 18: end while 19: end for 20: if σ=0 then return Am,n,l and P are incompatible. 21: end if 22: while σ=1 do 23: σ1=0, σ2=0 24: for (i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4)∈Am,n,l do 25. t = ((i2,j2,k2)−(i1,j1,k1),(i3,j3,k3)−(i1,j1,k1),(i4,j4,k4)−(i1,j1,k1)) × (pi2,j2,k2−pi1,j1,k1,pi3,j3,k3−pi1,j1,k1,pi4,j4,k4−pi1,j1,k1) 26: if t≠0 then 27. σ2=sign(t) 28: end if 29: if σ1=0 then 30: σ1=σ2 31: else 32: if σ1≠σ2 then return Am,n,l and P are incompatible. 33: end if 34: end if 35: end for 36: end while 37: if σ1=0 then return Am,n,l and P are incompatible. 38: end if 39: if σ1=1 then return Am,n,l and P are compatible. 40: end if |
Example 4. (Continued from Example 2) By Definition 4, we know that the control points set P (as shown in Figure 4(b)) is compatible. By Theorem 4, the 3D Bézier volume BA3,3,3,ω,P is injective. We show some layers of the injective 3D Bézier volume BA3,3,3,ω,P in Figure 4(c).
Example 5. Let ◻3×3×3⊂R3. The lattice points set A3,3,3=◻3×3×3∩Z3 is shown in Figure 6(a). Suppose that all of the weights are equal to 1 with the given control points set P as shown in Figure 6(b). By Definition 4, P is compatible with its lattice points set A3,3,3, because 16 interior control points are coincident. They degenerate to a single point [the red control point in Figure 6(a)]. By Theorem 4, the 3D Bézier volume BA3,3,3,ω,P defined by A3,3,3 and P is injective for any positive weights. The 3D Bézier volume BA3,3,3,ω,P is shown in Figures 6(c) and 6(d).
Example 6. Let ◻2×2×2⊂R3. The lattice points set A2,2,2=◻2×2×2∩Z3 is shown in Figure 7(a). Consider a choice of the control points set P, as shown in Figure 7(b). It is easy to find that P is incompatible with A2,2,2, because one of the control points (shown in red) lies in the convex hull of the other four control points. From Theorem 4, the Bézier volume BA2,2,2,ω,P defined by A2,2,2 and P is not injective with some positive weights. When the weights are set to ω={1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2, 1,1,1,1,20,1,1,1,1}, we can find some self-intersections, as shown in Figure 7(c).
Example 7. For the lattice points set A3,3,3=◻3×3×3∩Z3 shown in Figure 6(a), we change the control points set P as shown in Figure 8(a). It is obvious that P is incompatible with A3,3,3. By Theorem 4, the Bézier volume BA3,3,3,ω,P defined by A3,3,3 and P is not injective with some positive weights. Suppose that all of the weights are equal to 1. In this case, the 3D Bézier volume BA3,3,3,ω,P defined by A3,3,3 and P has self-intersections, as shown in Figures 8(b) and 8(c).
Example 8. For the lattice points set A3,3,3=◻3×3×3∩Z3 shown in Figure 6(a), we use a control points set P in which two corner control points coincide [see the red point in Figure 9(a)]. Then, the 3D Bézier volume BA3,3,3,ω,P defined by A3,3,3 and P is not injective for some positive weights. When all the weights are equal to 1, we find some self-intersections, as shown in Figure 9(b).
Example 9. For the lattice points set A3,3,3=◻3×3×3∩Z3 shown in Figure 6(a), suppose that the points on one boundary of the control points set shown in Figure 6(b) degenerate to a single point [the red point in Figure 10(a)]. Then, we obtain a new control points set P. This control points set is incompatible with A3,3,3. By Theorem 4, the 3D Bézier volume BA3,3,3,ω,P defined by A3,3,3 and P is not injective for some positive weights. When all the weights are equal to 1, we can find some self-intersections [see Figure 10(b)].
Example 10. Consider a 3D sphere S embedded into a 3D Bézier volume [as shown in Figure 10]. By Theorem 4, we know that BA3,3,3,ω,P is injective. Therefore, the sphere S embedded in the interior of BA,ω,P is also injective. For the convenience of shape modeling using the control points, we can embed a half-sphere into four 3D Bézier volumes [as shown in Figure 11(b)]. These four injective Bézier volumes guarantee the injectivity of the half-sphere. This is a simple application in which we can use the injective condition of 3D Bézier volumes to check the injectivity of 3D models.
Example 11. Consider an injective bi-cubic Bézier surface S [see Figure 11](the injectivity of S can be checked by the conclusion in [21,23]). We can embed this into a 3D Bézier volume BA3,3,3,ω,P [see Figure 12(b)]. By Theorem 4, we know that BA3,3,3,ω,P is injective. Therefore, the Bézier surface S embedded in the interior of BA3,3,3,ω,P is also injective. This is another application in which the injectivity of 3D Bézier volumes can be used to check the injectivity of 3D surfaces.
In this paper, we proposed and proved the geometric conditions for injective 3D Bézier volumes. The result is a sufficient and necessary condition that guarantees 3D Bézier volumes are non-self-intersecting for any positive weights. A direct algorithm for checking the injectivity of 3D Bézier volumes was also proposed. The conditions derived in the paper form a beneficial complement to the result in [19]. Our results have potential applications in facial animation and video tracking. More applications and the optimization of Algorithm 1 will be investigated in future work.
This work was supported by the National Natural Science Foundation of China (Grant Nos. 11801053, 12071057) and the Fundamental Research Funds for the Central Universities (Grant No. 3132019180, 3132021195).
All authors declare no conflicts of interest in this paper.
[1] |
A. Yilmaz, O. Javed, M. Shah, Object tracking: a survey, ACM Comput. Surv., 38 (2006), 1-45. doi: 10.1145/1132952.1132953
![]() |
[2] |
E. Trucco, K. Plakas, Video tracking: a concise survey, IEEE J. Ocean. Eng., 31 (2006), 520-529. doi: 10.1109/JOE.2004.839933
![]() |
[3] |
H. Yang, L. Shao, F. Zheng, L. Wang, Z. Song, Recent advances and trends in visual tracking: a review, Neurocomputing, 74 (2011), 3823-3831. doi: 10.1016/j.neucom.2011.07.024
![]() |
[4] | H. Tao, T. S. Huang, Bézier volume deformation model for facial animation and video tracking, In: Modelling & motion capture techniques for virtual environments, International Workshop, CAPTECH'98 Geneva, Switzerland, November 26-27, 1998 Proceedings, Berlin, Heidelberg: Springer, 1998,242-253. |
[5] | V. Savchenko, A. Pasko, Shape modeling, Encycl. Comput. Sci. Technol., 45 (2002), 311-346. |
[6] |
R. Krasauskas, Toric surface patches, Adv. Comput. Math., 17 (2002), 89-113. doi: 10.1023/A:1015289823859
![]() |
[7] |
S. Müller, E. Feliu, G. Regensburger, C. Conradi, A. Shiu, A. Dickenstein, Sign conditions for injectivity of generalized polynomial maps with applications to chemical reaction networks and real algebraic geometry, Found. Comput. Math., 16 (2016), 69-97. doi: 10.1007/s10208-014-9239-3
![]() |
[8] | C. M. Hoffmann, Geometric and solid modeling, San Mateo, California: Morgan Kaufmann Publishers, Inc., 1989. |
[9] |
G. Xu, B. Mourrain, R. Duvigneau, A. Galligo, Analysis-suitable volume parameterization of multi-block computational domain in isogeometric applications, Comput.-Aided Design, 45 (2013), 395-404. doi: 10.1016/j.cad.2012.10.022
![]() |
[10] | A. Galligo, J. P. Pavone, Self-intersections of a Bézier bicubic surface, In: Proceedings of the 2005 international symposium on Symbolic and algebraic computation, 2005,148-155. |
[11] |
L. E. Andersson, T. J. Peters, N. F. Stewart, Self-intersection of composite curves and surfaces, Comput.-Aided Geom. Design, 15 (1998), 507-527. doi: 10.1016/S0167-8396(98)00005-3
![]() |
[12] |
N. M. Patrikalakis, P. V. Prakash, Surface intersections for geometric modeling, J. Mech. Des., 112 (1990), 100-107. doi: 10.1115/1.2912565
![]() |
[13] | T. N. T. Goodman, K. Unsworth, Injective bivariate maps, Ann. Numer. Math., 3 (1996), 91-104. |
[14] | C. C. Ho, E. Cohen, Surface self-intersection, In: Mathematical methods for curves and surfaces, 2001,183-194. |
[15] | M. Hosaka, Modeling of curves and surfaces in CAD/CAM, Springer-Verlag, 1992. |
[16] |
S. Krishnan, D. Manocha, An efficient surface intersection algorithm based on lower dimensional formulation, ACM T. Graphic, 16 (1997), 74-106. doi: 10.1145/237748.237751
![]() |
[17] |
T. W. Sederberg, R. J. Meyers, Loop detection in surface patch intersections, Comput.-Aided Geom. Design, 5 (1988), 161-171. doi: 10.1016/0167-8396(88)90029-5
![]() |
[18] |
M. N. Patrikalakis, T. Maekawa, H. K. Ko, H. Mukundan, Surface to surface intersections, Comput.-Aided Design Appl., 1 (2004), 449-457. doi: 10.1080/16864360.2004.10738287
![]() |
[19] |
G. Craciun, M. Feinberg, Multiple equilibria in complex chemical reaction networks: Ⅰ. The injectivity property, SIAM J. Appl. Math., 65 (2005), 1526-1546. doi: 10.1137/S0036139904440278
![]() |
[20] | G. Craciun, L. D. Garcıa-Puente, F. Sottile, Some geometrical aspects of control points for toric patches, In: Mathematical methods for curves and surfaces, Springer, 2010,111-135. |
[21] | F. Sottile, C. G. Zhu, Injectivity of 2D toric Bézier patches, In: International conference on computer-aided design and computer graphics, 2011,235-238. |
[22] |
C. G. Zhu, X. Y. Zhao, Self-intersections of rational Bézier curves, Graph. Models, 76 (2014), 312-320. doi: 10.1016/j.gmod.2014.04.001
![]() |
[23] |
X. Y. Zhao, C. G. Zhu, Injectivity conditions of rational Bézier surfaces, Comput. Graph., 51 (2015), 17-25. doi: 10.1016/j.cag.2015.05.017
![]() |
[24] |
Y. Y. Yu, Y. Ji, J. G. Li, C. G. Zhu, Conditions for injectivity of toric volumes with arbitrary positive weights, Comput. Graph., 97 (2021), 88-98. doi: 10.1016/j.cag.2021.04.026
![]() |
[25] | D. Lasser, Rational tensor product Bézier volumes, Comput. Math. Appl., 29 (1994), 95-108. |
[26] |
D. Holliday, G. Farin, A geometric interpretation of the diagonal of a tensor-product Bézier volume, Comput.-Aided Geom. Design, 16 (1999), 837-840. doi: 10.1016/S0167-8396(99)00004-7
![]() |
[27] | H. Tao, T. S. Huang, A piecewise Bézier volume deformation model and its applications in facial motion capture, Int. J. Radiat. Oncol. Biol. Phys., 39 (2009), 39-49. |
[28] | D. C. Lay, Linear algebra and its applications, 4 Eds., Addison-Wesley Longman. Inc, 2012. |
[29] |
Y. Y. Yu, Y. Ji, C. G. Zhu, An improved algorithm for checking the injectivity of 2D toric surface patches, Comput. Math. Appl., 79 (2020), 2973-2986. doi: 10.1016/j.camwa.2020.01.001
![]() |
1. | Tehseen Mazhar, Muhammad Amir Malik, Muhammad Asgher Nadeem, Syed Agha Hassnain Mohsan, Inayatul Haq, Faten Khalid Karim, Samih M. Mostafa, Movie Reviews Classification through Facial Image Recognition and Emotion Detection Using Machine Learning Methods, 2022, 14, 2073-8994, 2607, 10.3390/sym14122607 | |
2. | Xuanyi Zhao, Jinggai Li, Ying Wang, Chungang Zhu, Improved algorithms for determining the injectivity of 2D and 3D rational Bézier curves, 2022, 30, 2688-1594, 1799, 10.3934/era.2022091 | |
3. | Mingyu Li, Lifeng Zhu, Yibing Yan, Ziyi Zhao, Aiguo Song, Computational design of planet regolith sampler based on Bayesian optimization, 2023, 116, 00978493, 464, 10.1016/j.cag.2023.09.012 |
Algorithm 1 Checking the injectivity of 3D Bézier volumes. |
Require: The control points set P and the lattice points Am,n,l;
Ensure: The injectivity of BAm,n,l,P,ω for arbitrary positive weights. 1: if Two or more control points corresponding to the corner lattice points are coincident then return Am,n,l and P are incompatible. 2: end if 3: if Two or more control points corresponding to boundary δi are coincident then return Am,n,l and P are incompatible. 4: end if 5. σ=0 6: for pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4∈P|δi do 7: if ¯pi1,j1,k1pi2,j2,k2,¯pi2,j2,k2pi3,j3,k3,¯pi3,j3,k3pi4,j4,k4 is self-intersecting then 8: σ=0 9: else 10: σ=1 11: end if 12: while (iK,jK,kK)∉conv{(i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4) do 13: if piK,jK,kK∈conv{pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4} then 14: σ=0 15: else K=K+1 16: end if 17: σ=1 18: end while 19: end for 20: if σ=0 then return Am,n,l and P are incompatible. 21: end if 22: while σ=1 do 23: σ1=0, σ2=0 24: for (i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4)∈Am,n,l do 25. t = ((i2,j2,k2)−(i1,j1,k1),(i3,j3,k3)−(i1,j1,k1),(i4,j4,k4)−(i1,j1,k1)) × (pi2,j2,k2−pi1,j1,k1,pi3,j3,k3−pi1,j1,k1,pi4,j4,k4−pi1,j1,k1) 26: if t≠0 then 27. σ2=sign(t) 28: end if 29: if σ1=0 then 30: σ1=σ2 31: else 32: if σ1≠σ2 then return Am,n,l and P are incompatible. 33: end if 34: end if 35: end for 36: end while 37: if σ1=0 then return Am,n,l and P are incompatible. 38: end if 39: if σ1=1 then return Am,n,l and P are compatible. 40: end if |
Algorithm 1 Checking the injectivity of 3D Bézier volumes. |
Require: The control points set P and the lattice points Am,n,l;
Ensure: The injectivity of BAm,n,l,P,ω for arbitrary positive weights. 1: if Two or more control points corresponding to the corner lattice points are coincident then return Am,n,l and P are incompatible. 2: end if 3: if Two or more control points corresponding to boundary δi are coincident then return Am,n,l and P are incompatible. 4: end if 5. σ=0 6: for pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4∈P|δi do 7: if ¯pi1,j1,k1pi2,j2,k2,¯pi2,j2,k2pi3,j3,k3,¯pi3,j3,k3pi4,j4,k4 is self-intersecting then 8: σ=0 9: else 10: σ=1 11: end if 12: while (iK,jK,kK)∉conv{(i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4) do 13: if piK,jK,kK∈conv{pi1,j1,k1,pi2,j2,k2,pi3,j3,k3,pi4,j4,k4} then 14: σ=0 15: else K=K+1 16: end if 17: σ=1 18: end while 19: end for 20: if σ=0 then return Am,n,l and P are incompatible. 21: end if 22: while σ=1 do 23: σ1=0, σ2=0 24: for (i1,j1,k1),(i2,j2,k2),(i3,j3,k3),(i4,j4,k4)∈Am,n,l do 25. t = ((i2,j2,k2)−(i1,j1,k1),(i3,j3,k3)−(i1,j1,k1),(i4,j4,k4)−(i1,j1,k1)) × (pi2,j2,k2−pi1,j1,k1,pi3,j3,k3−pi1,j1,k1,pi4,j4,k4−pi1,j1,k1) 26: if t≠0 then 27. σ2=sign(t) 28: end if 29: if σ1=0 then 30: σ1=σ2 31: else 32: if σ1≠σ2 then return Am,n,l and P are incompatible. 33: end if 34: end if 35: end for 36: end while 37: if σ1=0 then return Am,n,l and P are incompatible. 38: end if 39: if σ1=1 then return Am,n,l and P are compatible. 40: end if |