zetav: Evaluate Localized Tight-Frame Filter Functions

View source: R/zetav.R

zetavR Documentation

Evaluate Localized Tight-Frame Filter Functions


zetav evaluates the filters associated with a specific tight-frame construction.


zetav(x, k, b = 2)



A vector representing the support on which to evaluate the filter


A scalar representing the scale index.


A scalar parameter that governs the number of scales (b=2 default).


The function zetav evaluates the partition of unity functions \psi following the methodology described in the references similar to the Littlewood-Paley type, based on a partition of unity, as proposed in the reference papers. This approach, inspired by frame theory, facilitates the construction of filter banks, ensuring effective spectral localization.

A finite collection (\psi_j)_{j=0, \ldots, J} is a finite partition of unity on the compact interval [0, \lambda_{\mathrm{max}}]. It satisfies:

\psi_j : [0,\lambda_{\mathrm{max}}] \rightarrow [0,1]~\textrm{for all}~ j \in \{1,\ldots,J\}~\textrm{and}~\forall \lambda \in [0,\lambda_{\mathrm{max}}],~\sum_{j=0}^J \psi_j(\lambda)=1.

Let \omega : \mathbb R^+ \rightarrow [0,1] be a function with support in [0,1]. It's defined as:

\omega(x) = \begin{cases} 1 & \text{if } x \in [0,b^{-1}] \\ b \cdot \frac{x}{1 - b} + \frac{b}{b - 1} & \text{if } x \in (b^{-1}, 1] \\ 0 & \text{if } x > 1 \end{cases}

For a given b > 1. Based on this function \omega, the partition of unity functions \psi are defined as:

\psi_0(x) = \omega(x)

and for all j \geq 1:

\psi_j(x) = \omega(b^{-j} x) - \omega(b^{-j+1} x)

where J is defined by:

J = \left \lfloor \frac{\log \lambda_{\mathrm{max}}}{\log b} \right \rfloor + 2

Given this finite partition of unity (\psi_j)_{j=0, \ldots, J}, the Parseval identity implies that the following set of vectors forms a tight frame:

\mathfrak F = \left \{ \sqrt{\psi_j}(\mathcal{L})\delta_i : j=0, \ldots, J, i \in V \right \}.


Returns a numeric vector of evaluated filter values.


Coulhon, T., Kerkyacharian, G., & Petrushev, P. (2012). Heat kernel generated frames in the setting of Dirichlet spaces. Journal of Fourier Analysis and Applications, 18(5), 995-1066.

Göbel, F., Blanchard, G., von Luxburg, U. (2018). Construction of tight frames on graphs and application to denoising. In Handbook of Big Data Analytics (pp. 503-522). Springer, Cham.

Leonardi, N., & Van De Ville, D. (2013). Tight wavelet frames on multislice graphs. IEEE Transactions on Signal Processing, 61(13), 3357-3367.

de Loynes, B., Navarro, F., Olivier, B. (2021). Data-driven thresholding in denoising with Spectral Graph Wavelet Transform. Journal of Computational and Applied Mathematics, Vol. 389.


## Not run: 
  x <- seq(0, 2, by = 0.1)
  g <- zetav(x, 1, 2)
  plot(x, g, type = "l")

## End(Not run)

gasper documentation built on Oct. 27, 2023, 1:07 a.m.