## Introduction

What do I propose to show you? (Certainly not all in one post.)

My understanding is neither complete nor rigorous. But wavelets and scaling functions, and their coefficients g and h, respectively, have a lot of properties. I want to sort them out.

I’m not trying for rigor. (Heresy!) I’m laying things out on a table so I can begin to relate them to each other.

The properties which I want to show you seem to fall into 4 categories.

1. Where do the dilation equation and wavelets come from?
2. What can we deduce from the dilation equation?
3. What can we deduce from the requirement that the scaling function and its integer translates be orthogonal?
4. A few things that I really, really don’t understand yet.

There is a fair bit of repetition in here. In particular, it seemed worthwhile to repeat things within the examples. Read the rest of this entry »

## Happenings May 23

As with so many things, the post explaining where those miscellaneous facts about wavelets come from is getting longer and more complicated. I do, however, know how to fix that: break it into pieces.

Last weekend was “Seminar Day” at Caltech; that is our reunion weekend. Other schools may have parties — we have lectures.
Read the rest of this entry »

## introduction

The impetus for this post is figure 1.4 on page 6 of Burrus et al. (Since it’s been a while, that’s Burrus, C. Sidney; Gopinath, Ramesh A.; Guo, Haitao. Introduction to Wavelets and Wavelet Transforms, A Primer. Prentice Hall, 1998.ISBN 0 13 489600 9.)

They offered the figure as an illustration of four different scaling functions; in addition, these scaling functions were parameterized by two angles.

Now I know how to produce the drawings of those scaling functions — and I also know how to produce drawings of the corresponding mother wavelets, which they did not show on page 6. It also turns out that they have interchanged the legends for figures (a) and (b) — and when we can produce the drawings ourselves, that mistake becomes almost irrelevant.

This post also serves to reiterate the calculation sequence for plotting a scaling function and its corresponding mother wavelet. Read the rest of this entry »

## Mother wavelet from scaling function: D4 and Haar

We can compute the mother wavelet from the scaling function. Let me show you how to do this for Daubechies’s D4.

First, we need the scaling function.

the D4 scaling function again, quickly

This is review. There is a matrix M0 which has an eigenvector with eigenvalue 1, and that eigenvector gives me the values of the scaling function $\varphi$ at the integers. Once I have initial values, I can compute $\varphi$ by recursion (and because of the specific form of the recursion, only at points whose denominator is a power of 2).

I start by constructing the matrix M0 in principle… Read the rest of this entry »

## Happenings May 8

Well, last Saturday morning I woke up determined to do mathematics, and knowing exactly what I was going to do. It was a very productive day, but at the end of it I was completely worn out. I didn’t stop to write about what was happening, and I didn’t let the kid do any mathematics of his own.

Not for a while, anyway. He has moved on to finite fields. There are two interesting facts that served as a starting point.
Read the rest of this entry »

## introduction

edit jun 13: corrected one of the 4 equations at the end.

I have shown you one way to compute the D4 scaling function. I am not entirely comfortable with the method, but I don’t need to be: I can do better.

The method I’ve shown you begins with a terrible approximation — a constant function or signal — and improves it by repeatedly applying a fixed filter to it.

The primer by Burrus et al. also provides MATLAB® code for a quite different method. It turns out that we can find the exact values of the D4 scaling function at the integers. The dilation equation can then be used to find the exact values at the halves… then the exact values at the quarters… and so on. It’s called a dyadic expansion because it works for points whose denominator is a power of 2.

Their code, however, was challenging to figure out.

But I don’t need to figure it out. I can do better.

I can do so much better that it must be illegal, immoral, and fattening. Read the rest of this entry »

## the math

All too long ago, it seems, I showed you how to approximate the D4 scaling function. Let me fill in more of the details of the calculations.

I defined four functions and used three of them: two for upsampling – only one of which I used – , one for downsampling, and one for convolution. Let me do what I want other people to do for me: show me the code and show me what it does. Whether I can produce the same code in the same language, or corresponding code in another language, the output serves as a check.

First, let’s see what the code does.

playing with upsample & downsample Read the rest of this entry »