# Difference between revisions of "Graph Filterbanks"

## General Information

• This website provides source code for two-channel wavelet transforms on graphs.
• Publications describing these transforms can be found at:
• Email: narang.sunil at gmail dot com

## Source Code

• Graph Wavelets Matlab Source Code
• It contains demo examples implementing two-channel graph-QMF and graphBior wavelet filterbanks, on the vertices of an undirected weighted graph. The algorithms and proposed formulations can be found in:
1. S. K. Narang and Antonio Ortega, "Perfect Reconstruction Two-Channel Wavelet Filter-Banks For Graph Structured Data", in IEEE Transactions on Signal Processing PDF format
2. S. K. Narang and Antonio Ortega, "Compact Support Biorthogonal Wavelet Filterbanks for Arbitrary Undirected Graphs", in IEEE Transactions on Signal Processing PDF format

## Installation

• The code is written in Matlab(c) version R2011a.
• To install the code, simply unpack the directory in a Matlab folder.

## How to run demos

• Demo 1 implements a 2-dimensional graph-QMF filterbank on an 8-connected graph-formulation of any 2D digital image.
• For a K-level wavelet-tree decomposition, the algorithm automatically crops the input image into a square image of size multiple of 2^K.
• The output is graph wavelet-coefficients ordered in the image format as shown

• To run the demo, execute any of the following commands:

1 filterbanks on a default image and parameters

```  [wav_coeffs] = QMF_filterbank_demo_1();
```

2 filterbanks on a given image

```  filename = 'sample1.jpg';
filetype = 'jpeg';
[wav_coeffs] = QMF_filterbank_demo_1(filename,filetype);
```

3 filterbanks on a given image with optional parameters

```  opt = struct('max_level',3,'filterlen',20,'nnz_factor',1);
filename = 'sample1.jpg';
filetype = 'jpeg';
[wav_coeffs] = QMF_filterbank_demo_1(filename,filetype,opt);
% where max_level is the number of decomposition level,
% filterlen is length of approximated FIR Meyer kernel
% nnz_factor is the fraction of non-zero high-pass coefficients used in reconstruction

```
• Demo 2 implements a 2-dimensional graph-QMF filterbank on the Minnesota traffic graph.
• To run the demo, execute in Matlab
```  [wav_coeffs, channel_info] = QMF_filterbank_demo_2();
% where wav_coeffs are the output wavelet coefficients ordered as a vector
% channel_info(i).name is the name of subband,
% channel_info(i).nodes is the set of indices of wavelet coefficients in the ith subband.
```

## Contact

• Comments, questions or concerns should be directed to: Sunil K. Narang (narang.sunil at gmail dot com)

## Related Publications

• S. K. Narang and Antonio Ortega, "Perfect Reconstruction Two-Channel Wavelet Filter-Banks For Graph Structured Data", In IEEE Transactions of Signal Processing, also available at Tech. Rep. arXiv:1106.3693v3
• S.K. Narang and A. Ortega, "Downsampling Graphs Using Spectral Theory",IEEE Intl. Conf. on Acoustics, Speech and Signal Processing (ICASSP'11), PDF format, Poster