Since the resulting synthesis filter is only C
0
-
continuous and requires one additional texture inter-
polation, there is no apparent advantage compared to
the C
1
-continuous h
Doo-Sabin
filter.
5.4 C
2
-Continuous Filter
The C
2
-continuous synthesis filter corresponding to
the bicubic B-spline subdivision scheme can be con-
structed easily in our notation with the help of one
additional convolution with a 2× 2 box filter:
h
cubic
⊗
↑
g ≡ h
ց
box
⊗
h
Doo-Sabin
⊗
↑
g
.
Permutations of the components of this construc-
tion result in less symmetric and/or less smooth syn-
thesis filters. On the other hand, the construction of
higher-order B-spline filters by additional convolu-
tions with 2 × 2 box filters should now be obvious.
Note, however, that h
ց
box
and h
տ
box
should appear in al-
ternating order as discussed in Section 3.
5.5 (Quasi-)Interpolating Filters
Unfortunately, the construction of aC
1
-continuous in-
terpolation synthesis filter is considerably more dif-
ficult than the approximation synthesis filter corre-
sponding to B-splines. If quasi-interpolation is suffi-
cient, the image data of the coarsest level can be con-
volved with a filter before the synthesis is performed.
The computation of appropriate convolution filters is
discussed by Litke et al. (Litke et al., 2001). For
example, a convolution filter for quasi-interpolation
with bicubic B-splines can be constructed that is im-
plementable with three texture interpolations:
1
24
−1 −2 −1
−2 36 −2
−1 −2 −1
≡
0 0 0
0
10
6
0
0 0 0
−
16
24
h
3×3
Bartlett
.
Our recommendation for an actually interpolat-
ing, C
1
-continuous synthesis filter corresponds to the
tensor-product generalization of the four-point sub-
division scheme. Since it is separable by construc-
tion, it can be implemented by a synthesis operation
for the rows followed by a synthesis operation for the
columns. This appears to result in the most efficient
implementation using 4.5 bilinear texture interpola-
tions per pixel of the resulting image.
6 CONCLUSION
In this work, a set of discrete pyramid filters that are
suitable for an efficient implementation based on bi-
linear texture interpolation has been presented. A
new, precise and consistent notation for convolutions
with these filters enabled us to construct appropriate
filters in a systematic way and helped us to discuss
many important implementation details. In particular,
we have proposed an efficient implementation of bi-
quadratic (and higher-order) B-spline analysis filters
and of bicubic (and higher-order) B-spline synthesis
filters.
Apart from applications of these filters, our plans
for future work on pyramid filters include more effi-
cient interpolating synthesis filters, three-dimensional
filters, and efficient implementations of derivative fil-
ters and nonlinear filters.
REFERENCES
Burt, P. J. (1981). Fast Filter Transforms for Image Pro-
cessing. Computer Graphics and Image Processing,
16:20–51.
Catmull, E. and Clark, J. (1978). Recursively Generated
B-Spline Surfaces on Arbitrary Topological Meshes.
Computer Aided Design, 10(6):350–355.
Green, S. (2005). Image Processing Tricks in OpenGL. Pre-
sentation at GDC 2005.
Kr
¨
uger, J. and Westermann, R. (2003). Linear Algebra Op-
erators for GPU Implementation of Numerical Algo-
rithms. ACM Transactions on Graphics, 22(3):908–
916.
Lefebvre, S., Hornus, S., and Neyret, F. (2005). Octree Tex-
tures on the GPU. In Pharr, M., editor, GPU Gems 2,
pages 595–613. Addison Wesley.
Litke, N., Levin, A., and Schroeder, P. (2001). Fitting Sub-
division Surfaces. In Proceedings IEEE Visualization
2001, pages 319–324.
Sigg, C. and Hadwiger, M. (2005). Fast Third-Order Tex-
ture Filtering. In Pharr, M., editor, GPU Gems 2,
pages 313–329. Addison Wesley.
Strengert, M., Kraus, M., and Ertl, T. (2006). Pyramid
Methods in GPU-Based Image Processing. In Pro-
ceedings Vision, Modeling, and Visualization 2006,
pages 169–176.
Williams, L. (1983). Pyramidal Parametrics. In Proceed-
ings ACM SIGGRAPH ’83, pages 1–11.
Zorin, D., Schr
¨
oder, P., DeRose, T., Kobbelt, L., Levin, A.,
and Sweldens, W. (2000). Subdivision for Modeling
and Animation. SIGGRAPH 2000 Course Notes.
GRAPP 2007 - International Conference on Computer Graphics Theory and Applications
28