# Decomposing a 1-d signal into arbitary basis functions

Hi all,

The short-time fourier transform decomposes a signal window into a sin/cosine series.

How would one approximate a signal in the same way, but using a set of arbitrary basis functions instead of sin/cos? These arbitrary basis functions are likely in my case to be very small discrete chunks of a 1-dimensional non-periodic waveform.

Is this something wavelets are used for?

Please excuse my tag, 'signal-analysis' does not exist and I can not create it.

Wavelets are generally used for nonperiodic signals. They're often used in earthquake detection and things like that. There are many books on the subject, a quick look for "Wavelets" in amazon.com should reveal many.

The Haar Wavelet and Daubchies Wavelet might be good choices. Haar may be better if you don't need a smooth decomposition, the wavelet decomposition their is much easier.

Google scholar (scholar.google.com) may be a good place to look, just look up "Wavelet decomposition" and your particular topic.

You can make your own wavelets per your particular needs, but it's not particularly easy, they need to fulfill certain conditions

This may be useful

Generalized multi-resolution analyses and a construction procedure for all wavelet sets in R^n

If you can get this down to 1-d you may have your answer.

• Thanks, this is helpful. Looks like wavelets will be my initial angle of attack. Might be a few weeks before I can approve any answers though! – Alex Oct 25 '09 at 11:50

You can use an arbitrary set of basis functions that can be placed or scaled at any point along your signal, if I understand what you want. The problem you'd be solving would be to find placement locations (another set of parameters) and scales (another set), to minimize squared error relative to the original signal (or some other measure that is easy to minimize). I think the main issue will be ensuring that you get a single solution (if there are many) or prevent situations where some basis functions cancel out the others. One way to do this would be to use something like wavelets, indeed, though there you don't have an arbitrary set. Another would be to enforce some sort of regularization on the parameters (e.g. a penalty that would make most of them 0). I don't know too much about this myself but the thing to look for is "overcomplete basis".

If we talk about the time periodic signals, may be used every set of functions with scalar product (Hilbert space), and optimise to minimize mean squared error relative to the original signal. In signal theory there are some functions frequently used in this scope such us the Legendre, Tchebyshev ore Hermite polynomials. For initiate in this theory you can read the book "LINEAR SPACES IN ENGINEERING" by FAZLIOLLAH REZA, GINN AND COMPANY, TORONTO-LONDON, 1971.

• How does your answer change if my signal is not periodic? – Alex Oct 24 '09 at 19:45

If the signal is not periodic we talk about the integral transform of the signal (in case of Fourier transform) and it have a continuum spectrum but not discreet. In case of polynomial decomposition the desired accuracy of approximation is valid in the finite interval in which the basis functions are orthogonal. Outside, the error can be significant.

• "... not discreet". I wonder what kind of a spectrum it is, a flamboyant one maybe? :) – Willie Wong Oct 7 '10 at 10:36