Skip to content
Related Articles

Related Articles

Hamming in Numpy
  • Last Updated : 26 Jun, 2019

The Hamming window is a taper formed by using a weighted cosine

Parameters(numpy.hamming(M)): 

M : int Number of points in the output window.
    If zero or less, an empty array is returned.

Returns: 
out : array

The window, with the maximum value normalized to one (the value one appears only if the number of samples is odd).
Example:




import numpy as np 
print(np.hamming(12))

Output:

[ 0.08        0.15302337  0.34890909  0.60546483  0.84123594  0.98136677
  0.98136677  0.84123594  0.60546483  0.34890909  0.15302337  0.08      ]

Plotting the window and its frequency response (requires SciPy and matplotlib):
For Window:




import numpy as np 
import matplotlib.pyplot as plt 
from numpy.fft import fft, fftshift 
  
window = np.hamming(51)
  
plt.plot(window) 
plt.title("Hamming window")
plt.ylabel("Amplitude"
plt.xlabel("Sample"
plt.show() 

Output:

hamming_window



For frequency:




import numpy as np 
import matplotlib.pyplot as plt 
from numpy.fft import fft, fftshift 
  
window = np.hamming(51)
  
plt.figure()
  
A = fft(window, 2048) / 25.5
mag = np.abs(fftshift(A))
freq = np.linspace(-0.5, 0.5, len(A))
response = 20 * np.log10(mag)
response = np.clip(response, -100, 100)
  
plt.plot(freq, response)
plt.title("Frequency response of Hamming window")
plt.ylabel("Magnitude [dB]")
plt.xlabel("Normalized frequency [cycles per sample]")
plt.axis('tight')
plt.show()

Output:

hamming_frequency

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.

My Personal Notes arrow_drop_up
Recommended Articles
Page :