Digital Signal Processing

By Steven W. Smith, Ph.D.

- 1: The Breadth and Depth of DSP
- 2: Statistics, Probability and Noise
- 3: ADC and DAC
- 4: DSP Software
- 5: Linear Systems
- 6: Convolution
- 7: Properties of Convolution
- 8: The Discrete Fourier Transform
- 9: Applications of the DFT
- 10: Fourier Transform Properties
- 11: Fourier Transform Pairs
- 12: The Fast Fourier Transform
- 13: Continuous Signal Processing
- 14: Introduction to Digital Filters
- 15: Moving Average Filters
- 16: Windowed-Sinc Filters
- 17: Custom Filters
- 18: FFT Convolution
- 19: Recursive Filters
- 20: Chebyshev Filters
- 21: Filter Comparison
- 22: Audio Processing
- 23: Image Formation & Display
- 24: Linear Image Processing
- 25: Special Imaging Techniques
- 26: Neural Networks (and more!)
- 27: Data Compression
- 28: Digital Signal Processors
- 29: Getting Started with DSPs
- 30: Complex Numbers
- 31: The Complex Fourier Transform
- 32: The Laplace Transform
- 33: The z-Transform
- 34: Explaining Benford's Law

Your laser printer will thank you!

Homomorphic Processing

Enjoy learning about Benford's law, but don't lose sight of the purpose of this chapter. Focus on the overall method:

"If the tool you have is a hammer,

make the problem look like a nail."

In DSP this approach is called **homomorphic processing**, meaning "the
same structure." In science and engineering it is common to encounter
signals that are difficult to understand or analyze. The strategy of
homomorphic processing is to convert this unmanageable situation into
a conventional linear system, where the analysis techniques are well
understood. This is done by applying whatever mathematical transforms
or tricks are needed for the particular application.

For instance, the classic use of homomorphic processing is to separate
signals that have been multiplied, such as: *a(t) = b(t) × c(t)*. This can be
converted into a linear system, i.e., signals that are added together, by
taking the logarithm: *log[a(t)] = log[b(t)] + log[c(t)]*. Notice that this is
taking the log of the dependent parameter. In our analysis of Benford's
law we will take the log of the independent parameter. Two different
techniques to keep in your bag of DSP tricks. In the next section several
other tricks will be presented, such as inventing the *Ones Scaling Test*,
and evoking a *sampling function*.

It this sounds complicated, you're right; it certainly can be. There is no guarantee that it is even possible to convert an arbitrary problem into the form of a linear system. Even if it is possible, it may require a series of nasty steps that take considerable time to develop. However, if you are successful in applying the homomorphic approach the rewards will immediately flow. You can say goodbye to a difficult problem, and hello to a representation that is simple and straightforward.

The following analysis of Benford's law is conducted in three steps. In
step one we will define a statistical procedure for determining how well a set
of numbers follows Benford's law, called the *Ones Scaling Test*. In step two
we will move from statistics to probability, expressing the problem in the
form of a convolution. In step three we use the Fourier Transform to solve
the convolution, giving us the explanation we are looking for.