Homomorphic filtering explained

Homomorphic filtering is a generalized technique for signal and image processing, involving a nonlinear mapping to a different domain in which linear filter techniques are applied, followed by mapping back to the original domain. This concept was developed in the 1960s by Thomas Stockham, Alan V. Oppenheim, and Ronald W. Schafer at MIT[1] and independently by Bogert, Healy, and Tukey in their study of time series.[2]

Image enhancement

Homomorphic filtering is sometimes used for image enhancement. It simultaneously normalizes the brightness across an image and increases contrast. Here homomorphic filtering is used to remove multiplicative noise. Illumination and reflectance are not separable, but their approximate locations in the frequency domain may be located. Since illumination and reflectance combine multiplicatively, the components are made additive by taking the logarithm of the image intensity, so that these multiplicative components of the image can be separated linearly in the frequency domain. Illumination variations can be thought of as a multiplicative noise, and can be reduced by filtering in the log domain.

To make the illumination of an image more even, the high-frequency components are increased and low-frequency components are decreased, because the high-frequency components are assumed to represent mostly the reflectance in the scene (the amount of light reflected off the object in the scene), whereas the low-frequency components are assumed to represent mostly the illumination in the scene. That is, high-pass filtering is used to suppress low frequencies and amplify high frequencies, in the log-intensity domain.[3]

Operation

Homomorphic filtering can be used for improving the appearance of a grayscale image by simultaneous intensity range compression (illumination) and contrast enhancement (reflection).

m(x,y)=i(x,y)\bulletr(x,y)

Where,

m = image,

i = illumination,

r = reflectance

We have to transform the equation into frequency domain in order to apply high pass filter. However, it's very difficult to do calculation after applying Fourier transformation to this equation because it's not a product equation anymore. Therefore, we use 'log' to help solve this problem.

ln(m(x,y))=ln(i(x,y))+ln(r(x,y))

Then, applying Fourier transformation

\digamma(ln(m(x,y)))=\digamma(ln(i(x,y)))+\digamma(ln(r(x,y)))

Or

M(u,v)=I(u,v)+R(u,v)

Next, applying high-pass filter to the image. To make the illumination of an image more even, the high-frequency components are increased and low-frequency components are decrease.

N(u,v)=H(u,v)\bulletM(u,v)

Where

H = any high-pass filter

N = filtered image in frequency domain

Afterward, returning frequency domain back to the spatial domain by using inverse Fourier transform.

n(x,y)=invF(N(u,v))

Finally, using the exponential function to eliminate the log we used at the beginning to get the enhanced image

newImage(x,y)=exp(n(x,y))

[4]

The following figures show the results of applying the homomorphic filter, high-pass filter, and the both homomorphic and high-pass filter. All figures were produced using Matlab.

According to figures one to four, we can see how homomorphic filtering is used for correcting non-uniform illumination in the image, and the image become clearer than the original. On the other hand, if we apply the high pass filter to the homomorphic filtered image, the edges of the images become sharper and the other areas become dimmer. This result is similar to applying only a high-pass filter to the original image.

Anti-homomorphic filtering

It has been suggested that many cameras already have an approximately logarithmic response function (or more generally, a response function which tends to compress dynamic range), and display media such as television displays, photographic print media, etc., have an approximately anti-logarithmic response, or an otherwise dynamic range expansive response. Thus homomorphic filtering happens accidentally (unintentionally) whenever we process pixel values f(q) on the true quantigraphic unit of light q. Therefore it has been proposed that another useful kind of filtering is anti-homomorphic filtering in which images f(q) are first dynamic-range expanded to recover the true light q, upon which linear filtering is performed, followed by dynamic range compression back into image space for display.[5] [6] [7] [8]

Audio and speech analysis

Homomorphic filtering is used in the log-spectral domain to separate filter effects from excitation effects, for example in the computation of the cepstrum as a sound representation; enhancements in the log spectral domain can improve sound intelligibility, for example in hearing aids.[9]

Surface electromyography signals (sEMG)

Homomorphic filtering has been used to remove the effect of the stochastic impulse train, which originates the sEMG signal, from the power spectrum of the sEMG signal itself. In this way, only information about motor unit action potential (MUAP) shape and amplitude was maintained; this was then used to estimate the parameters of a time-domain model of the MUAP itself.[10]

Neural decoding

How individual neurons or networks encode information is the subject of numerous studies and research. In central nervous system it mainly happens by altering the spike firing rate (frequency encoding) or relative spike timing (time encoding).[11] [12] Time encoding consists of altering the random inter-spikes intervals (ISI) of the stochastic impulse train in output from a neuron. Homomorphic filtering was used in this latter case to obtain ISI variations from the power spectrum of the spike train in output from a neuron with[13] or without[14] the use of neuronal spontaneous activity. The ISI variations were caused by an input sinusoidal signal of unknown frequency and small amplitude, i.e. not sufficient, in absence of noise to excite the firing state. The frequency of the sinusoidal signal was recovered by using homomorphic filtering based procedures.

See also

Further reading

A.V. Oppenheim, R.W. Schafer, T.G. Stockham "Nonlinear Filtering of Multiplied and Convolved Signals" Proceedings of the IEEE Volume 56 No. 8 August 1968 pages 1264-1291

External links

Notes and References

  1. A. V. Oppenheim and R. W. Schafer, “From frequency to quefrency: A history of the cepstrum,” IEEE Signal Process. Mag., vol. 21, no. 5, pp. 95–106, Sep. 2004.
  2. B. P. Bogert, M. J. R. Healy, and J. W. Tukey: "The Quefrency Alanysis of Time Series for Echoes: Cepstrum, Pseudo Autocovariance, Cross-Cepstrum and Saphe Cracking". Proceedings of the Symposium on Time Series Analysis (M. Rosenblatt, Ed) Chapter 15, pp. 209–243. New York: Wiley, 1963.
  3. Book: Digital signal processing handbook . Douglas B. Williams and Vijay Madisetti . CRC Press . 1999 . 0-8493-2135-2 .
  4. Book: Gonzalez, Rafael C. Digital Image Processing. 2008. Prentice Hall . 978-0-13-168728-8.
  5. Manders, Corey. "LIGHTSPACE: A NATURAL DOMAIN FOR." PhD diss., University of Toronto, 2006.
  6. Ai, Tao, et al., "Real-time HDR video imaging on FPGA with compressed comparametric lookup tables." In 2014 IEEE 27th Canadian Conference on Electrical and Computer Engineering (CCECE), pp. 1-6. IEEE, 2014.
  7. Mann, Steve. "Comparametric equations with practical applications in quantigraphic image processing." IEEE transactions on image processing 9, no. 8 (2000): 1389-1406.
  8. Dufaux, Frédéric, Patrick Le Callet, Rafal Mantiuk, and Marta Mrak, eds. High dynamic range video: from acquisition, to display and applications. Academic Press, 2016.
  9. Book: Readings in Speech Recognition . Alex Waibel and Kai-Fu Lee . 1-55860-124-4 . 1990 . Morgan Kaufmann .
  10. G. Biagetti, P. Crippa, S. Orcioni, and C. Turchetti, “Homomorphic deconvolution for muap estimation from surface emg signals,” IEEE Journal of Biomedical and Health Informatics, vol. 21, no. 2, pp. 328–338, March 2017.
  11. E.R. Kandel, J.H. Schwartz, T.M. Jessell, Principles of Neural Science, 4th Ed., McGraw-Hill, New York, 2000.
  12. E. Izhikevich, Dynamical systems in neuroscience, The Geometry of Excitability and Bursting, MIT, Cambridge, 2006.
  13. S. Orcioni, A. Paffi, F. Camera, F. Apollonio, and M. Liberti, “Automatic decoding of input sinusoidal signal in a neuron model: Improved SNR spectrum by low-pass homomorphic filtering,” Neurocomputing, vol. 267, pp. 605–614, Dec. 2017.
  14. S. Orcioni, A. Paffi, F. Camera, F. Apollonio, and M. Liberti, “Automatic decoding of input sinusoidal signal in a neuron model: High pass homomorphic filtering,” Neurocomputing, vol. 292, pp. 165–173, May 2018.