Orhonormal wavelet bases on the 3D ball via volume preserving map from the regular octahedron

We construct a new volume preserving map from the unit ball $\mathbb B^3$ to the regular 3D octahedron, both centered at the origin, and its inverse. This map will help us to construct refinable grids of the 3D ball, consisting in diameter bounded cells having the same volume. On this 3D uniform grid, we construct a multiresolution analysis and orthonormal wavelet bases of $L^2(\mathbb B^3)$, consisting in piecewise constant functions with small local support.


Introduction
Spherical 3D signals occur in a wide range of fields, including computer graphics, medical imaging, cristallography (texture analysis of crystals) and geoscience (geography, geodesy, meteorology, seismology, astronomy, etc). Therefore, we need suitable efficient techniques for manipulating such signals, and one of the most efficient technique consists in using wavelets on the 3D ball (see e.g. [2,4,5] and the references therein). In this paper we propose a construction orthonormal basis of wavelets with small support, defined on the 3D ball B 3 , starting from a multiresolution analysis. Our wavelets will be piecewise constant functions on the cells of a uniform and refinable grid of B 3 . By a refinable (or hierarchical) grid we mean that the cells can be divided successively into a given number of smaller cells of the same volume. By a uniform grid we mean that all the cells at a certain level of subdivision have the same volume. These two very important properties of our grid derive from the fact that it is constructed by mapping a uniform and refinable grid of the 3D regular octahedron, using a volume preserving map onto B 3 . Compared to the wavelets on the 3D ball constructed in [4] and [5], with localized support, our wavelets have local support, and this is very important when dealing with data consisting in big jumps on small portions, as shown in [7]. Another construction of piecewise constant wavelets on the 3D ball was realized in [2], starting from a similar construction on the 2D sphere. The author pretend that his wavelets are the first Haar wavelets on the 3D ball which are orthogonal and symmetric, even though we do not see any symmetry, neither in the cells, nor in the decomposition matrix. Moreover, his 8 × 8 decomposition matrices change in each step of the refinement, the entries depending on the volumes of the cells, which are, in our opinion, difficult to evaluate and for this reason they are not calculated expicitely in [2]. Another advantage of our construction is that our cells are diameter bounded, unlike the cells in [2] containing the origin, which become long and thin after some steps of refinement.
The paper is structured as follows. In Section 2 we introduce some notations used for the construction of the volume preserving map. In Section 3 we construct the volume preserving maps between the regular 3D octahedron and the 3D ball B 3 . In Section 4 we construct a uniform refinable grid of the regular octahedron followed by implementation issues, and its projection onto B 3 . Finally, in Section 5 we construct a multiresolution analysis and piecewise constant wavelet bases of L 2 (B 3 ).

Preliminaries
Consider the ball of radius r centered at the origin O, defined as B 3 = (x, y, z) ∈ R 3 , x 2 + y 2 + z 2 ≤ r 2 and the regular octahedron K of the same volume, centered at O and with vertices on the coordinate axes K = (x, y, z) ∈ R 3 , |x| + |y| + |z| ≤ a . Since the volume of the regular octahedron is 4a 3 /3, we have The parametric equations of the ball are x = ρ cos θ sin ϕ, y = ρ sin θ sin ϕ, where ϕ ∈ [0, π] is the colatitude, θ ∈ [0, 2π) is the longitude and ρ ∈ [0, r] is the distance to the origin. A simple calculation shows that the volume element of the ball is dV = ρ 2 sin ϕ dρ dθ dϕ.
The ball and the octahedron can be split into eight congruent parts, each part being situated in one of the eight octants I ± i , i = 0, 1, 2, 3, Let B s i and K s i be the regions of B 3 and K, situated in I s i , respectively. Next we will construct a map U : B 3 → K which preserves the volume, i.e. U satisfies where vol(D) denotes the volume of a domain D. For an arbitrary point (x, y, z) ∈ B 3 we denote (X, Y, Z) = U(x, y, z) ∈ K.
3 Construction of the volume preserving map U and its inverse We focus on the region B + 0 ⊂ I + 0 where we consider the points A = (r, 0, 0), B = (0, r, 0), C = (0, 0, r) and the vertical plane of equation y = x tan α with α ∈ (0, π/2) (see Figure 2 (left)). We denote by M its intersection with the great arc AB of the sphere of radius r. More precisely, M = (r cos α, r sin α, 0). The volume of the spherical region OAMC equals r 3 α/3. Now we intersect the region K + 1 of the octahedron with the vertical plane of equation y = x tan β and denote by M ′ (m, n, 0) its intersection with the edge A ′ B ′ , where A ′ (a, 0, 0) , B ′ (0, a, 0) (see Figure 2 (right)). Then m + n = a and from n = m tan β we find m = a · 1 1 + tan β , n = a · tan β 1 + tan β .
If we want the volume of the region OAMC of the unit ball to be equal to the volume of OA ′ M ′ C ′ , we obtain This give us a first relation between (x, y, z) and (X, Y, Z): Using the spherical coordinates (2) we obtain In order to obtain a second relation between (x, y, z) and (X, Y, Z), we impose that, for an arbitrary ρ ∈ (0, r] the region Then, the volume preserving condition (4) implies ℓ = a· ρ/r, with a satisfying (1). Thus, and in spherical coordinates this can be written as In order to have a volume preserving map, the modulus of the Jacobian J(U) of U must be 1, or, equivalently, taking into account the volume element (3), we must have Taking into account formula (7), we have Further, using relation (6) we get For the last equality, we have multiplied the first row by −2θ/(π − 2θ) and we have added it to the second row. Then, using the expression for J(U) obtained in (8) we get the differential equation The integration with respect to ϕ gives and further, for finding C(θ, ρ) we use the fact that, for ϕ = π/2 we must obtain Z = 0. Thus, for ϕ = π/2 we have Thus, Z = 0 is obtained for and finally, the map U restricted to the region I + 0 is In the other seven octants, the map U can be obtained by symmetry as follows. A point (x, y, z) ∈ B 3 , can be written as (x, y, z) = (sgn(x) · |x|, sgn(y) · |y|, sgn(z) · |z|), with (|x|, |y|, |z|) ∈ I + 0 .
Therefore, if we denote by (X, Y , Z) = U(|x|, |y|, |z|), then we can define U(x, y, z) as Next we deduce the formulas for the inverse of U. First, from (6) we and from (7) we have Adding (9) and (10), after some more calculations we obtain and further Finally, the inverse U −1 : K → B 3 is defined by for (X, Y, Z) ∈ K + 0 , and for the other seven octants the formulas can be calculated as in (12).

Uniform and refinable grids of the regular octahedron and of the ball
In this section we construct a uniform refinement of the regular octahedron K of volume vol(K), more precisely a subdivision of K into 64 cells of two shapes, each of them having the volume vol(K)/64. This subdivision can be repeated for each of the 64 small cells, the resulting 64 2 cells of volume vol(K)/64 2 being of one of the two types from the first refinement. Next, the volume preserving map U will allow us the construction of uniform and refinable grids of the 3D ball B 3 by transporting the octahedral uniform refinable 3D grids, and further, the construction of orthonormal piecewise constant wavelets on the 3D ball.

Refinement of the octahedron
The initial octahedron K consists in four congruent cells, each situated in one of the octants Figure 3). We will say that this type of cell is T 0 , the index 0 of T 0 being the coarsest level of the refinement. For simplifying the writing we denote by N 0 the set of positive natural numbers and by N n = {1, 2, . . . , n}, for n ∈ N 0 .  Similarly we refine the other three cells situated in I + i ∪ I − i , i = 1, 2, 3, therefore the total number of cells after the first step of refinement is 32, more precisely 24 of type T 1 and 8 of type M 1 .

Second step of refinement
A cell of type T 1 will be subdivided in the same way as a cell of type T 0 , i.e. into six cells of type T 2 and two cells of type M 2 . Their volumes will be vol( Therefore, from the subdivision of the 6 cells of type T 1 we have 36 cells of type T 2 and 12 cells of type M 2 . For a cell (OMNP ) of type M 1 , which is a regular tetrahedron of edge ℓ 1 = a √ 2/2, we take the mid-points of the six edges (see Figures 6 and 7). This will give four cells of type T 2 in the middle and four cells of type M 2 , i.e regular tetrahedrons of edge ℓ 2 = a √ 2/2 2 . From the subdivision of the two cells of type M 1 we have 8 cells of type T 2 and 8 cells of type M 2 .
In conclusion, the second step of subdivision yields in I + 0 ∪I − 0 t 2 = 44 cells of type T 2 and m 2 = 20 cells of type M 2 , each having the volume vol(T 0 )/64, therefore the total number of cells after the second refinement will be 4 · 8 2 , more precisely 76 of type T 2 and 80 of type M 2 .

The general step of refinement
Let m j and t j denote the numbers of cells of type M j and T j , respectively, resulted at the step j of the subdivision, starting from one cell of type T 0 . At this step, each of the t j−1 cells of type T j−1 is subdivided into 6 cells of type T j and 2 cells of type M j , and each of the m j−1 cells of type M j−1 is with t 0 = 1, m 0 = 0 and A = 6 4 2 4 . After some calculations we obtain the total number of cells of K + 1 ∪ K − 1 at step j being t j + m j = 8 j , and 4 · 8 j for the whole octahedron K. Each of the cells of type T j and M j has the volume vol(T 0 )/8 j .

Implementation issues
Every cell of the polyhedron is identified by the coordinates of its four vertices. We have two types of cells, which will be denoted T and M. A cell of type T has the same coordinates x and y for the first two vertices. The z coordinate of the first vertex is greater than the z coordinate of the second vertex and the mean value of these z coordinates gives the value of the z coordinate of the third and fourth vertices of T.
A cell of type M has two pairs of vertices at the same altitude (the same value of the z coordinate).
At every step of refinement, every cell T is divided into 6 cells of type T and two cells of type M. Suppose [p 1 , p 2 , p 3 , p 4 ] is the array giving the coordinates of the four vertices of a T cell. The coordinates of the vertices of the next level cells are computed as follows next level cell number 1 : next level cell number 2 : next level cell number 3 : next level cell number 4 : next level cell number 5 : next level cell number 6 : next level cell number 7 : next level cell number 8 : The cells 1-6 are of type T and the cells 7 and 8 are of type M (see Figure  4). Every cell M consists in 4 cells of type T and 4 cells of type M. Suppose [p 1 , p 2 , p 3 , p 4 ] is the array giving the coordinates of the four vertices of the cell M and let p k = (p kx , p ky , p kz ), k = 1, 2, 3, 4. We rearrange these four vertices in ascending order with respect to the z coordinate. Let [q 1 , q 2 , q 3 , q 4 ] be the vector [p 1 , p 2 , p 3 , p 4 ] sorted ascendingly with respect to the z coordinate of the vertices, i.e. q 1z ≤ q 2z ≤ q 3z ≤ q 4z . Similarly, let [r 1 , r 2 , r 3 , r 4 ] be the rearrangement of vertices p 1 , . . . , p 4 such that r 1x ≤ r 2x ≤ r 3x ≤ r 4x . Let, also, [s 1 , s 2 , s 3 , s 4 ] be the array of rearranged vertices with respect to the y coordinate in ascending order. The coordinates of the vertices of the cells at the next level are computed as follows: next level cell number 1 : next level cell number 2 : next level cell number 3 : next level cell number 4 : 1 2 [q 3 + q 4 , q 1 + q 2 , s 1 + s 2 , r 3 + r 4 ] next level cell number 5 : next level cell number 6 : next level cell number 7 : next level cell number 8 : To verify whether a point p = (p x , p y , p z ) is inside a cell with vertices [p 1 , p 2 , p 3 , p 4 ], we compute the following numbers: p y p 2y p 3y p 4y p z p 2z p 3z p 4z 1 1 1 1 , d 5 = sgn p 1x p 2x p 3x p 4x p 1y p 2y p 3y p 4y p 1z p 2z p 3z p 4z 1 1 1 1 .
We calculate v = |d 1 |+|d 2 |+|d 2 |+|d 3 |+|d 4 |+|d 5 |. If |d 1 +d 2 +d 3 +d 4 +d 5 | = v, then for v = 5 the point p is in the interior of the cell, for v = 4 the point p is on one of the faces of the cell, for v = 3 the point p is situated on one of the edges of the cell, and for v = 2 the point p is one of the vertices of the cell. If

Uniform and refinable grids of the ball B 3
If we transport the uniform and refinable grid on K onto the ball B 3 using the volume preserving map U −1 , we obtain a uniform and refinable grid of B 3 . Figures 8, 9 and 10 show the images on B 3 of different cells of K.
Besides the multiresolution analysis and wavelet bases, which will be constructed in Section 5, another useful application is the construction of a uni- Continuing the refinement process as we described in Section 4, we obtain a decomposition D j of K, for j ∈ N 0 , |D j | = 4 · 8 j . For a fixed j ∈ N 0 we assign to each domain D j k ∈ D j , k ∈ N j := N 4·8 j , the function ϕ D j k : K → R, where χ D j k is the characteristic function of the domain D j k . Then we define the spaces of functions V j = span{ϕ D j k , k ∈ N j } of dimension 4 · 8 j , consisting of piecewise constant functions on the domains of D j . Moreover, we have ϕ D j k L 2 (K) = 1, the norm being the usual 2-norm of the space L 2 (K). For A j ∈ D j = {D j k , j ∈ N j }, let A j+1 k , k ∈ N 8 , be the refined subdomains obtained from A j . One has in L 2 (K), equality which implies the inclusion V j ⊆ V j+1 , for all j ∈ N 0 . With respect to the usual inner product ·, · L 2 (K) , the spaces V j are Hilbert spaces, with the corresponding usual 2-norm · L 2 (K) . In conclusion, the sequence of subspaces V j has the following properties: i.e. the sequence {V j , j ∈ N 0 } constitutes a multiresolution analysis of the space L 2 (K). Let W j denote the orthogonal complement of the coarse space V j in the fine space V j+1 , so that The dimension of W j is dim W j = 28 · 8 j . The spaces W j are called wavelet spaces and their elements are called wavelets. In the following we construct an orthonormal basis of W j . To each domain A j ∈ D j , seven wavelets supported on D j will be associated in the following way: with a ℓj ∈ R, ℓ ∈ N 7 , j ∈ N 8 . We have to find conditions on the coefficients a ℓj which ensure that the set {ψ ℓ A j , ℓ ∈ N 7 , A j ∈ D j } is an orthonormal basis of W j . First we must have If A j = S j , the equality is immediate, since supp ψ ℓ A j ⊆ supp ϕ A j and supp ϕ A j ∩ supp ϕ S j is either empty or an edge, whose measure is zero. If A j = S j , evaluating the inner product (16) we obtain Then, each of the orthogonality conditions is equivalent to a ℓ ′ 1 a ℓ1 + a ℓ ′ 2 a ℓ2 + . . . + a ℓ ′ 8 a ℓ8 = δ ℓℓ ′ , ℓ, ℓ ′ ∈ N 7 . In fact, one requires the orthogonality of the 8 × 8 matrix M = (a ij ) i,j with the entries of the first row equal to 1/(2 √ 2). A particular case was considered in [1], where the authors divide a tetrahedron into eight small tetrahedrons of the same area using Bey's method and for the construction of the orthonormal wavelet basis they take the Haar matrix If we consider the map Π : L 2 (B 3 ) → L 2 (K) induced by U, defined by , for all f ∈ L 2 (B 3 ), and its inverse Π −1 : L 2 (K) → L 2 (B 3 ), (Π −1 f )(ξ) = f (U(ξ)), for all f ∈ L 2 (K), then Π is a unitary map, that is Equality (17) suggests us the construction of orthonormal scaling functions and wavelets defined on B 3 . The scaling functions ϕ D j k : B 3 → R will be and the wavelets will be defined similarly, From equality (17) we can conclude that the spaces constitute a multiresolution analysis of L 2 (B 3 ), each of the set { ϕ D j k , k ∈ N j } being an orthonormal basis for the space V j . Moreover, the set is an orthonormal basis of W j .