A Local Construction for Nonuniform Spline Tight Wavelet Frames Martin Reimers Abstract. We present a construction for tight wavelet frames for nonuniform spline type spaces. Our basic requirement is that the twoscale matrices are row stochastic as this admits the local construction of a set of framelets for each scaling function. The framelets have one vanishing moment, small support, and can be designed to have symmetry properties. We apply our method to univariate splines and to linear splines over arbitrary, refined triangulations. §1. Introduction 0 1 Let V ⊂ V ⊂ · · · → V = L2 (Ω) be a sequence of nested spaces over some domain Ω ⊆ Rd , and let h·, ·i denote the L2 inner-product. A sequence Φ0 , Ψ0 , Ψ1 , · · · of vectors of functions with the Φ0 in V 0 and the Ψk in V k+1 such that ||f ||2 = ||hΦ0 , f i||2 + ∞ X ||hΨk , f i||2 , ∀f ∈ V, (1) k=0 is called a tight wavelet frame (TWF) for V . Here hΦ0 , f i means the row vector with elements hφ0j , f i and so forth. TWFs have many useful properties, and generalize in some sense orthonormal wavelet systems, yielding redundant multi-resolution representations f = hΦ0 , f iΦ0 + ∞ X hΨk , f iΨk . (2) k=0 Previous work on TWFs applies for the most part to uniform spaces where shift invariance, dilation and elegant Fourier techniques can be used, see e.g. [3] or [4] for a general introduction. Tight frames for nonuniform Conference Title Editors pp. 1–6. c 2005 by Nashboro Press, Brentwood, TN. Copyright O ISBN 0-0-9728482-x-x All rights of reproduction in any form reserved. 1 2 M. Reimers linear B-splines where first constructed in [10]. In [5] a framework for nonuniform spline tight frames with vanishing moments on a bounded domain was developed. An approach for constructing tight wavelet frames on bounded domains using global matrix factorization was proposed in [8]. We consider TWFs with one vanishing moment in the nonuniform case where no shift invariance or dilation properties of the V k spaces can be assumed. The typical example we have in mind is that V k is a nonuniform spline space over a partition of Ω so that V k ⊂ V k+1 by some form of mesh refinement. We assume that there exists for each k a row vector B k of functions with local support such that V k = span(B k ), and so that B k form a partition of unity on Ω. The nestedness of the spaces implies that there exist two-scale matrices P̃ k such that B k = B k+1 P̃ k . (3) We will assume that P̃ k is row stochastic, i.e., that each row has nonnegative elements which sum to 1. A typical example is to let B k be B-splines on an arbitrary knot-vector tk , such that tk+1 is a refinement of tk . In this case B k are locally supported, form a partition of unity, and the knot insertion matrix P̃ k is row-stochastic, see e.g. [6] and [11]. Our objective is to construct TWFs in the setting described above, in which Fourier techniques are not available. Our inspiration is in particular [5] and [8] which both construct TWFs for splines using algebraic techniques. The basic approach can be described as follows. We first define for each k a row vector Φk of scaling functions in V k so that lim ||hΦk , f i||2 = ||f ||2 , ∀f ∈ V. k→∞ (4) Secondly, we find a row vector Ψk of “framelets” in V k+1 such that ||hΦk+1 , f i||2 = ||hΦk , f i||2 + ||hΨk , f i||2 , ∀f ∈ V. (5) Repeated application of this equation yields ||hΦk+1 , f i||2 = ||hΦ0 , f i||2 + k+1 X ||hΨl , f i||2 , l=0 and letting k → ∞ one can show that (1) holds for all f ∈ V and hence we have a TWF, see [8] for details. Our contribution is a simple method for the local construction of framelets satisfying (5), described in the next two sections. In Section 4 we apply our constructions to splines in one and two variables. We finish the paper with some remarks and suggestions for future work. Spline Tight Frames 3 §2. Tight Wavelet Frame Construction In the following we will omit the superscript k whenever possible, so that Q = Qk and P = P k etc. We let (Mj ) denote a row vector, or a block matrix with Mj in the jth column if the Mj are matrices. Boldface font is used for vectors, and 0 and 1 have all elements equal to 0 and 1 respectively. The identity matrix is I and diag(v) is the diagonal matrix with v on the diagonal. q We first define scaling functions by setting φkj := Bjk / hBjk , 1i. With q Sk = diag(sk ), where sk = (skj ) and skj = hBjk , 1i, we have Φk = B k Sk−1 , (6) and from (3) we obtain the two-scale relation Φk = Φk+1 P, P := Sk+1 P̃ k Sk−1 . (7) So for the jth column pj of P , we have φkj = Φk+1 pj , pj = Sk+1 p̃j (skj )−1 . (8) Let us verify that (4) is satisfied if the supports shrink under refinement. Proposition 1. Φk satisfy (4) if B k forms a partition of unity and lim max {diam support(Bjk ) } = 0. (9) k→∞ j R P Proof: Define f k (x) := j hφkj , f iφkj (x) = Ω f (y)K k (x, y)dy, where the P kernel K k (x, y) := j Bjk (x)Bjk (y)/hBjk , 1i is nonnegative and Z k K (x, y)dy = Ω Z X k Bj (x)Bjk (y) Ω j Now (9) implies that limk→∞ hBjk , 1i R |x−y|> dy = X Bjk (x) = 1, x ∈ Ω. j |K k (x, y)|dy = 0 for all > 0. This yields ||f k − f || → 0, and consequently hf k , f i = ||hΦk , f i||2 → ||f ||2 . The next step is to find a set of framelets such that (5) holds. It is straightforward to show that this is the case for Ψk = Φk+1 Q, (10) if Q satisfy the framelet equation QQT = R := I − P P T . (11) 4 M. Reimers This nonlinear matrix equation can be solved by finding a matrix square root Q of the symmetric matrix R, provided it is positive semidefinite (PSD). In Proposition 1 we will show that this is always the case for our chosen scaling. A square root of a PSD matrix can be computed in a number of ways, usually involving global factorization methods such as Cholesky as in [5] and [8]. Alternatively, one can use the symmetric principal square root √ (12) Q = U ΛU T , where R = U ΛU T is the spectral factorization. Although R is sparse, these can be too expensive to compute in practice. Moreover, the resulting framelets often lack symmetry, translational properties, and might have large support. §3. A Local Construction Instead of using methods like global matrix factorizations, we propose to compute framelets locally by decomposing the matrix R into a sum of simple matrices of small size. The following lemma, which is easy to prove, is key to our construction. P Lemma 1. M M T = Mj MjT for a matrix of the form M = (Mj ). We can use this to decompose (11) into a set of simple equations, one per column pj of P or, equivalently, per scaling function φkj . P Lemma 2. The matrix R in (11) can be decomposed as R = Rj , where Rj := diag(p̃j ) − pj pTj . (13) P Proof: Since P̃ is row stochastic, p̃j = 1 and hence I = diag(1) = P P diag(p̃j ). The result follows from Lemma 1 since P P T = pj pTj . The Rj matrices will play an important role and so we next derive their basic properties. Let rj be the number of nonzeros in pj . Lemma 3. The matrix Rj in (13) has nonzero elements forming a rj square matrix with positive diagonal and negative off-diagonal elements. Moreover, it is PSD and Rj sk+1 = 0sk+1 . Proof: The nonzero elements of pj pTj are positive and form a rj square sub-matrix, so the nonzero elements of Rj form a rj symmetric sub-matrix with negative off-diagonal elements. For the diagonal of Rj , use (8) to get p̃Tj Sk+1 sk+1 = p̃Tj hB k+1 , 1iT = hBjk , 1i = (skj )2 . (14) Spline Tight Frames 5 Rj = − = Figure 1. The matrices Rj have only rj × rj non-zeros. The diagonal is non-negative since p2jj = p̃jj p̃jj (sk+1 )2 j (skj )2 p̃jj (sk+1 )2 j = p̃jj P ≤ p̃jj . k+1 2 ) i p̃ij (si Using (14), we have Rj sk+1 = diag(p̃j )sk+1 − p̃j (skj )2 Sk+1 p̃j p̃Tj Sk+1 sk+1 = S (p̃ − ) = 0. k+1 j (skj )2 (skj )2 This implies that Sk+1 Rj Sk+1 1 = 0, and since the diagonal elements of Sk+1 Rj Sk+1 are non-negative and the off-diagonal elements are nonpositive, we conclude that this matrix is weakly diagonal dominant and therefore PSD. Finally, Rj is PSD since Sk+1 is positive definite. Since R is the sum of PSD matrices, our choice of scaling yields the following result. P Theorem 1. The matrix R := I − P P T = Rj is positive semidefinite. Therefore (11) is solvable and there exist framelets Ψk satisfying (5). Since each Rj is PSD we can compute a square root Qj by any method of our choosing, and the collection of these solve the framelet equation. Proposition 2. Equation (11) is solved by Q = (Qj ), where j ranges over the columns of P , if Qj QTj = Rj . (15) P P Proof: Applying Lemma 2, we obtain QQT = Qj QTj = Rj = R. Since Rj can be identified with a “local” matrix with dimensions rj ×rj , we can compute Qj locally. Therefore, in the following we will identify p̃j with a local vector consisting of the rj nonzero elements of row j in P̃j , so that Rj will be the corresponding rj square matrix, and similarly for Sk+1 etc, see Figure 1. We are also free to choose the ordering of the elements, as long as we do it in a consistent manner. 6 M. Reimers It is straightforward to solve (15) by computing some square root of Rj , resulting in a rj × rj local framelet matrix Qj . It is however often desirable with as few framelet functions as possible, i.e. a square root Qj with a minimum number of columns. Since rank(Qj ) = rank(Rj ), this number is the minimal number of columns a square root of Rj might have. Lemma 4. The rj − 1 square matrix A resulting from removing one row/column pair from Rj is positive definite. Hence rank(Rj ) = rj − 1. Proof: We showed in the proof of Lemma 3 that Sk+1 Rj Sk+1 is weakly diagonal dominant. Removing a negative off-diagonal element yields strict diagonal dominance, and hence positive definiteness of A. One alternative √ for finding a square root with only rj − 1 columns is to take Qj = U Λ, since one of the eigenvalues in the diagonal matrix Λ is zero. Another approach is to seek a rj × (rj − 1) matrix of the form T q Qj = , (16) M where q is a vector, and M is a square matrix such that T q q qT M T a bT Qj QTj = = = Rj . Mq MMT b A (17) The following lemma yields a solution to this problem. Lemma 5. Equation (17) holds if M satisfies M M T = A and q = M −1 b. Proof: A is positive definite by Lemma 4, and so one can find M such that M M T = A and M q = M M −1 b = b. To show that q T q = a, write sk+1 = (v0 , v T ) and note since Rj sk+1 = 0 that (a, bT )sk+1 = 0 and (b, A)sk+1 = 0. Therefore bT v = −av0 and b = −Av/v0 , and so q T q = bT (M −1 )T M −1 b = bT A−1 b = −bT A−1 Av/v0 = a. There is a significant degree of freedom in the construction, both in the number of framelets and in their properties. The ordering of the coefficients in Qj and the type of matrix square root can be chosen. Taking, e.g., M in (16) to be the principal square root of A yields symmetric coefficients with respect to all but the first scaling function. If symmetry with respect to B k is desired, one can instead find the square root of −1 −1 R̃j := Sk+1 Rj Sk+1 . One can argue that the framelets have translational and rotational symmetries, although not in the strict sense. With our approach, one can construct rj − 1 framelets, each with support contained in thePsupport of the associated φkj . The total number of framelets in V k+1 is (rj − 1), i.e. the number of off-diagonal non-zero elements in P . The next result shows that the framelets have first vanishing moments. Spline Tight Frames 7 Proposition 3. The framelets satisfy hΨk , 1i = 0. Proof: Using Lemma 3 with Ψkj := Φk+1 Qj , the result follows from ||hΨkj , 1i||2 = hΦk+1 , 1iQj QTj hΦk+1 , 1iT = sTk+1 Rj sk+1 = 0. §4. Examples In this section we apply the proposed approach to construct tight wavelet frame systems for splines in one and two variables. 4.1. Univariate splines Let us first consider univariate B-splines of degree d on an arbitrary initial knot vector t = t0 . We insert knots to obtain refined knot-vectors t1 , t2 , · · · with a corresponding sequence of nested spline spaces V k = Sd,tk spanned by the B-splines B k = (Bj,d,tk ). Then the two-scale matrix P̃ k is called a knot-insertion matrix which can be computed by e.g. the Osloalgorithm [6], and is known to be row-stochastic. As for scaling, we have the identity hBj,d,t , 1i = (tj+d+1 − tj )/(d + 1). If the knots are inserted so that limk→∞ maxj (tkj+1 − tkj ) = 0, it is clear that the supports shrink as required in (9) and that V = L2 (Ω). Therefore the construction outlined in the previous sections can be applied. Example 1 (Linear splines) Consider d = 1, uniform knots and uniform refinement, i.e. t0j = j and t1i = i/2. A linear B-spline Bj,1,t0 has a corresponding column j in P̃ with the elements (..., 0, 1/2, 1, 1/2, 0, ...), and so the nonzero elements can be arranged in the local coefficient vector as p̃j = (1, 1/2, 1/2). The scaling factors are hBj,1,t0 , 1i = 1 and hBi,1,t1 , 1i = 1/2, hence pj = √12 p̃j . We take Qj as in Lemma 5 with M equal to the principal square root of A to obtain −2 −2 4 −2 −2 √ √ 1 1 −2 3 −1 , Rj = Qj = 1 + √2 1 − √2 . 8 4 −2 −1 3 1− 2 1+ 2 The columns of Qj contains the framelet coefficients with respect to the scaling functions, in our chosen ordering. To obtain the coefficients Q̃j √ −1 with respect to B k , we scale Qj with (sk+1 ) = 2. See Figure 2. i Example 2 (Cubic Bernstein) Let d = 3 and t0 = (0, 0, 0, 0, 1, 1, 1, 1) and insert one new knot at z = 1/3, so that 1 0 0 0 2 1 0 0 3 32 1 P̃ = 0 3 32 01 . 0 0 3 3 0 0 0 1 8 M. Reimers 1.0 1.0 0.5 0.5 0.5 1.0 1.5 2.0 0.5 -0.5 -0.5 -1.0 -1.0 1.0 1.5 2.0 Figure 2. Linear B-spline scaling function with corresponding framelets. 1.0 1 0.5 0.2 0.4 0.6 0.8 1.0 -1 0.2 0.4 0.6 0.8 1.0 0.2 0.4 0.6 0.8 1.0 -0.5 -2 -1.0 1.0 1.0 0.5 0.5 0.2 -0.5 -1.0 0.4 0.6 0.8 1.0 -0.5 -1.0 Figure 3. Cubic spline framelets with respect to one new knot at z = 1/3. The scaling factors are s0 = (1, 1, 1, 1)/4 and s1 = (1/3, 1, 1, 1, 2/3)/4. A column in P̃ has two nonzero elements which leads to Rj matrices of dimension two. We can thus find one framelet per scaling function, each with two nonzero coefficients. As an example, the second B-spline yields q ! ! 2 2 − 3√ − 23 3 3 R2 = , Q2 = . √ 2 2 − 3√ 2 9 3 3 We have depicted the four resulting framelets in Figure 3. In Figure 4 we have depicted two of the four framelets corresponding to a cubic uniform B-spline on the interval [0, 4]. The remaining two are reflections around x = 2. Spline Tight Frames 9 0.8 0.4 0.6 0.4 0.2 0.2 1 2 3 4 1 2 3 4 -0.2 -0.2 -0.4 -0.6 Figure 4. Two of the framelets constructed for a cubic uniform B-spline. From spline theory it can be shown that we in general need at most d + 1 framelets per inserted knot. A wavelet system would on the other hand result in just one wavelet per new knot, but with significantly larger or even global support, see [12]. We could hence say that the redundancy factor for our TWF construction is d + 1. 4.2. Linear multivariate splines Consider now a regular triangulation T = T 0 , and let T 1 , T 2 , · · · be uniform dyadic refinements of T and Njk be the set of neighbors of vertex j in T k . We let V k = S11 (T k ) be the continuous, piecewise linear splines over T k . The Courant hat-functions B k span V k , form a partition of unity, satisfy (9), and the corresponding two-scale matrix P̃ is row-stochastic with 1 if i = j; 1/2 if i ∈ Njk ; p̃ij = 0 otherwise. For the scaling, we have hBjk , 1i = area(support(Bjk ))/3. The coefficients of a given scaling function φkj can be ordered as p̃j = (1, 1/2, · · · , 1/2), with dj = |Njk+1 | elements equal 1/2. The local Rj matrix then has the form (17), where A corresponds to the dj vertices in Njk+1 . Using Lemma 5 k we obtain a framelet ψji for each neighbor i of j. Example 3 (Type-I triangulation) Let T 0 be a type-I triangulation so that T k have triangles of uniform size. For an interior vertex, the scaling becomes uniform with pj = 12 p̃j . The corresponding Rj and Qj matrices √ with the principal square root, scaled by 16 and 288, respectively, reads 12 −2 −2 −2 −2 −2 −2 −2 7 −1 −1 −1 −1 −1 −2 −1 7 −1 −1 −1 −1 −2 −1 −1 7 −1 −1 −1 −2 −1 −1 −1 7 −1 −1 −2 −1 −1 −1 −1 7 −1 −2 −1 −1 −1 −1 −1 7 , −6 11 −1 −1 −1 −1 −1 −6 −1 11 −1 −1 −1 −1 −6 −1 −1 11 −1 −1 −1 −6 −1 −1 −1 11 −1 −1 −6 −1 −1 −1 −1 11 −1 −6 −1 −1 −1 −1 −1 11 . 10 M. Reimers −6 3 −1 11 −1 −1 7 −1 −6 −1 −1 −1 −6 −1 −1 11 −1 −6 −1 Figure 5. Left: Framelet supports (grey) and coefficients with respect to B k for a type-I mesh (up to scaling). Right: framelets on a non-uniform mesh. There are three types of boundary framelets: with dj = 2, 3, 4. We order the coefficients with the central vertex j first and then the neighbors in clockwise sequence,√starting √ on the√boundary. Using Lemma 5, we get Qj matrices scaled by 32, 128 and 288 respectively as √ √ ! √ −6 −6√2 −6√2 −6 −2√3 −2√3 −2√6 −4√ −2 6 √3 11 − 2 − 2 −1 √ √ −1 − 2 √7 √ 3 −1 10 −2 −√2 , , − √2 . − 2 − 2 √6 −1 3 −1 − 2 7 − 2 −1 − −2 √ 2 − 10 √ 2 − 2 11 Figure 5 (left) depicts the coefficients of each of the four types of framelets −1 with respect to the spline basis B k , taking the first columns of Sk+1 Qj . Our construction yields two framelets per edge in T k , while a wavelet construction like the one used in [7] yields one. One could therefore say that our construction has a redundancy factor of two. On the other hand, the framelets have smaller support and fewer nonzero mask coefficients. k k Rotational symmetry in the sense ψji (v ` ) = ψj` (v i ) can be achieved by −1 −1 instead computing symmetric square roots of R̃j := Sk+1 Rj Sk+1 . Figure 5 (right) depicts a framelet on a nonuniform mesh. Let us briefly discuss two applications of these framelets. Equation (1) shows that discarding coefficients from (2) yields an approximation with a squared L2 error equal to the squared l2 norm of the discarded coefficients. It is therefore reasonable to remove small coefficients for e.g. data compression. Figure 6 (middle) shows such a multi-resolution approximation f˜ for a well known f (Lena). Another property of wavelets and framelets Spline Tight Frames 11 Figure 6. Linear spline TWFs on a type-I mesh applied for data compression and edge detection. is their ability to detect steep gradients in the data. Figure 6 (right) is the result of removing from f˜ the scaling coefficients hΦ0 , f i and small k framelet coefficients hψji , f i, emphasizing the edges in the image, see [9]. §5. Final Remarks We have presented a construction of TWFs for nested spaces with rowstochastic refinement matrices. Our scaling guarantees the existence of framelets and enables us to use a simple matrix decomposition. The resulting construction is local, there are many degrees of freedom and the resulting framelets have small support. Compared to wavelet constructions, the TWF systems typically have more but simpler elements with smaller supports, which could be attractive in some applications. We can think of several topics for future research. It would be interesting to compare the performance of the framelets with wavelets in filter-bank algorithms as in e.g. [7]. The total number of framelet filter coefficients is only slightly larger, and there is no need to solve linear systems. Decomposition is simply performed by taking inner-products. It would also be interesting to study their performance in e.g. image processing applications. There are many examples of spaces that satisfy the assumptions made in this paper, e.g. tensor product splines, multivariate splines and box-splines, as well as subdivision type of schemes. One could consider alternative inner-products, different ways to partition the matrix R, and other ways of computing square roots Qj . The construction of framelets with more vanishing moments as in [5] would be attractive and so would similar constructions for two-scale matrices that are not row-stochastic, e.g. for interpolatory subdivision schemes. While completing this work we discovered that Charina and Stöckler [1],[2] have recently developed a construction similar to ours. 12 M. Reimers References 1. M. Charina and J. Stöckler. Tight Wavelet Frames for Irregular Multiresolution Analysis. Technical Report 337, Dep. of Math., Univ. of Dortmund, 2006. 2. M. Charina and J. Stöckler. Tight Wavelet Frames for Subdivision. Technical Report 338, Dep. of Math., Univ. of Dortmund, 2006. 3. O. Christensen. An Introduction to Frames and Riesz Bases. Birkhäuser, Boston, 2003. 4. C. K. Chui. An introduction to wavelets. Academic Press, San Diego, 1992. 5. C.K. Chui, W. He, and J. Stöckler. Nonstationary Tight Wavelet Frames, I: Bounded intervals. Appl. Comput. Harmonic Anal., 17:141– 197, 2004. 6. E. Cohen, T. Lyche, and R. Riesenfeld. Discrete B-splines and subdivision techniques in computer-aided geometric design and computer graphics. Comput. Graphics Image Proc., 14:87–111, 1980. 7. M. S. Floater, E. G. Quak, and M. Reimers. Filter bank algorithms for piecewise linear prewavelets on arbitrary triangulations. J. Comp. Appl. Math., 119:185–207, 2000. 8. M-J. Lai and K. Nam. Tight wavelet frames over bounded domains. In Wavelets and splines: Athens 2005, pages 314–327, 2005. 9. K. Nam. Tight Wavelet Frame Construction and Its Application for Image Processing. PhD thesis, University of Georgia, USA, 2005. 10. A. Ron and Z. Shen. Affine Systems in L2 (Rd ): The Analysis of the Analysis Operator. J. of Functional Analysis, 148:408–447(40), 1997. 11. L. Schumaker. Spline functions: Basic theory. Wiley-Interscience, 1980. 12. K. Mørken T. Lyche and E. Quak. Theory and algorithms for nonuniform spline wavelets. In N. Dyn, D. Leviatan, D. Levin, and A. Pinkus, editors, Multivariate Approximation and Applications, pages 152–187. Cambridge University Press, 2001. Martin Reimers Centre of Mathematics for Applications University of Oslo Norway martinre@ifi.uio.no http://folk.uio.no/martinre