A Casual Approach to Causal Wavelets

I figured I would put my undergraduate dissertation here. It's been a while since I've looked it, and it seems been too easy to forget the details of something I worked months on. So let's recap the details here.

Here's a pdf of the report

Time-Frequency Analysis

It's common to represent signals with amplitude as a function of time or "in the time domain". It's also common, using a Fouirer transform, to represent signals with amplitude as a function of frequency or "in the frequency domain". Time-frequency representations of signals are three-dimensional representations, providing the amplitude of a signal given the time and frequency. Common techniques for obtaining this kind of representation include the short-time Fourier transform and the Wavelet transform.

Spectrograms of short audio recordings of a drum (left) and a piano (right) playing.
Spectrograms of short audio recordings of a drum (left) and a piano (right) playing.

Unlike a Fourier transform, the wavelet transform does not represent the signal using infinite wave trains (sines and cosines), rather it employs oscillations known as wavelets, shifted in time and frequency. The wavelets are generated from a 'mother' wavelet, a function which, given parameters for time and scale, generates a wavelet of that scale, compactly supported for a given time. The matrix representing the amplitude of these wavelets at time and scale is the wavelet decomposition of the signal. This allows for sparse representation of the signal, which is why the wavelet transform is a common tool for compression; and since it allows for the representation of transients within signals, it is also a useful tool for analysis of music, seismic data, and many other signals.

The admissibility condition defines the properties of acceptable wavelets. Within this constraint there is still an infinite number of possible wavelets. As such, different wavelets have been designed throughout different fields, selected for the properties that best suit their applications.

This project focused on the application of "causal" wavelets in the continuous wavelet transform. Since most wavelets are symmetric, the wavelet transform results in the component of a signal being represented in time before it begins. Causal wavelets are wavelets that have been designed for the express purpose of ensuring causality in the wavelet transform, such that components of a signal should only be represented as, or after, they occur. Causal wavelets are non-symmetric, and a result of their use is that the transform becomes distorted in time and frequency. The objective of this project was to produce causal wavelets that minimise this distortion. This would be useful for analysis of a signal in which causal representation of the components is necessary (e.g. an active sonar system).

A challenge of the project was the implementation of metrics with regards to causality and distortion. The method for calculating a measurement of causality calculated the difference between a prediction of the start of the transform and the start of the signal. The method to calculate the distortion sought the local maxima of the transform over two scales and associated specific maxima in order to trace the angles of distortion within the transform, calculating an average to provide a rough measure of distortion. When tested against test signals and real audio, these methods seemed to perform as expected, with the use of the causal wavelet resulting in transforms with more causal behaviour and greater angles of distortion (as evaluated by these metrics).

At the time of writing, I was aware that these metrics weren't sound, but since central conceit of the project was reliant on these measurements, and since I was keenly aware of my own limitations when it came to mathematical understanding and time constraints, I went ahead with them anyway. I would say the same thing about my conclusions regarding the relationships between wavelet scale and distortion, and also the attempts to design a causal wavelet with minimal distortion. I'm honestly not all that embarrassed to admit this either, since I remember finding often during the project that my attempts to build a complete understanding, from the fundamentals, often paralysed my progress. In retrospect I'm glad I went ahead with the methodoly, however flawed it was, since it allowed me to finish the project and maintain at least some of my sanity.