Digital Signal Processing (DSP) MATLAB homework, engineering help

User Generated

te3lm3e0

Engineering

Description

According to a study1 , “the main melody (spectral/pitch information) is most often carried by the highest-pitched voice, and the rhythm (temporal foundation) is most often laid down by the lowest-pitched voice.” In particular, the study used neural recordings to show that rhythmic timing information is carried in lower-pitched sound sources. In order to test this notion, you need to design a filter to cut the high-frequency components of a provided song recording that has strong beat. The desired specifications for the design is a Butterworth filter operating at 44,100 Hz sampling rate, with a stopband attenuation of 45 dB at 1,000 Hz and at least -0.9 dB passband edge at 500 Hz. 1. What type of filter (e.g., lowpass, highpass) do you need to design? Explain your reasoning. 2. (a) Design a continuous-time (CT) Butterworth filter to meet the specifications by providing the order and cutoff frequency of the filter (passband specifications must remain fixed); provide all computation steps. (b) Use Matlab to design the CT Butterworth filter; provide the plot of the magnitude response |H(jΩ)| and your Matlab code. (relevant Matlab functions: buttord.m, butter.m, freqs.m) 3. (a) Use the impulse invariance method to obtain the discrete-time (DT) design from the CT design; provide the DT filter specifications. (b) Use Matlab to design the DT Butterworth filter; provide the plot of the magnitude response |H(e jω)| and your Matlab code. (relevant functions: impinvar.m, freqz.m) 4. Repeat 3(a) and (b) using the bilinear transformation method. (relevant functions: bilinear.m, freqz) 5. Load the data in Matlab using load shake your bootay data.mat. Filter the data using the Matlab command filter.m, and name the filtered data data out. Use sound(data,fs) and sound(data out,fs), with sampling frequency fs, to send the original and filtered data to your PC speaker. Provide time-frequency transformation plots of the original and filtered data (see sample code below) and discuss the effect of the filter on the filtered data.



I HAVE ATTACHED THE QUESTION IN THE ATTACHMENTS.

Unformatted Attachment Preview

Assignment 4, EEE407/591, Spring 2017 Due date: April 25, 2017 To submit the required Matlab plots/code, generate a single pdf file, name the file LastName Assignment4 DSP.pdf (where LastName is your last name, and submit the pdf file using Messenger on Blackboard. According to a study1 , “the main melody (spectral/pitch information) is most often carried by the highest-pitched voice, and the rhythm (temporal foundation) is most often laid down by the lowest-pitched voice.” In particular, the study used neural recordings to show that rhythmic timing information is carried in lower-pitched sound sources. In order to test this notion, you need to design a filter to cut the high-frequency components of a provided song recording that has strong beat. The desired specifications for the design is a Butterworth filter operating at 44,100 Hz sampling rate, with a stopband attenuation of 45 dB at 1,000 Hz and at least -0.9 dB passband edge at 500 Hz. 1. What type of filter (e.g., lowpass, highpass) do you need to design? Explain your reasoning. 2. (a) Design a continuous-time (CT) Butterworth filter to meet the specifications by providing the order and cutoff frequency of the filter (passband specifications must remain fixed); provide all computation steps. (b) Use Matlab to design the CT Butterworth filter; provide the plot of the magnitude response |H(jΩ)| and your Matlab code. (relevant Matlab functions: buttord.m, butter.m, freqs.m) 3. (a) Use the impulse invariance method to obtain the discrete-time (DT) design from the CT design; provide the DT filter specifications. (b) Use Matlab to design the DT Butterworth filter; provide the plot of the magnitude response |H(ejω )| and your Matlab code. (relevant functions: impinvar.m, freqz.m) 4. Repeat 3(a) and (b) using the bilinear transformation method. (relevant functions: bilinear.m, freqz) 5. Load the data in Matlab using load shake your bootay data.mat. Filter the data using the Matlab command filter.m, and name the filtered data data out. Use sound(data,fs) and sound(data out,fs), with sampling frequency fs , to send the original and filtered data to your PC speaker. Provide time-frequency transformation plots of the original and filtered data (see sample code below) and discuss the effect of the filter on the filtered data. Nfft=256; window=140; overlap=window-1; [SP,freq,time]=spectrogram(data,window,overlap,Nfft,fs); [SP_filtered,freq,time]=spectrogram(data_out,window,overlap,Nfft,fs); figure(1); subplot(211); samp_freq=30; freq_short=freq(1:samp_freq); imagesc(time,freq_short,abs(SP(1:samp_freq,:))); axis xy xlabel(’Time, s’); ylabel(’Frequency, Hz’); title(’Song recording’); figure(1); subplot(212) imagesc(time,freq_short,abs(SP_filtered(1:samp_freq,:))); axis xy xlabel(’Time, s’); ylabel(’Frequency, Hz’); title(’Filtered song recording’); 1 M. J. Hove, C. Marie, I. C. Bruce, L. J. Trainor, “Superior time perception for lower musical pitch explains why bass-ranged instruments lay down musical rhythms,” Proceedings of the National Academy of Sciences, vol. 111, pp. 10383-10388, 2014.
Purchase answer to see full attachment
User generated content is uploaded by users for the purposes of learning and should be used following Studypool's honor code & terms of service.

Explanation & Answer


Anonymous
I was struggling with this subject, and this helped me a ton!

Studypool
4.7
Trustpilot
4.5
Sitejabber
4.4

Related Tags