联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2020-10-18 06:35

Assignment 1, Digital Signal Processing:

Fourier Transform

University of Glasgow, School of Engineering

2020

This assignment is about the Fourier Transform.

Form groups of two, work together and submit one report. Enter your

team into the Wiki on moodle listing your names and matriculation numbers.

Use the moodle forum to find team mates.

1. Record the voice of one member of your group as uncompressed WAV.

Say one complete sentence. It can be any language. Make sure that

you record at least at 44kHz or at a higher sampling rate and that

the audio is not clipping. The full audio spectrum up to 20 kHz needs

to be available. Low quality MP3 downloads from websites are not

allowed. Reports based on recordings at sampling rates below 44kHz

or downloads will not be marked.

2. Load the audio samples into python and plot the audio signal in the

time domain (linear axis) and in the frequency domain (logarithmic

axis for both frequency and amplitude) with proper axis labels (time,

frequency, amplitude, dB). [10%]

3. Explain which peaks in the spectrum correspond to the fundamentals

of the vowels spoken. Explain which frequency range mainly contains

the consonants. [20%]

4. Improve the quality of your voice by increasing the amplitudes of the

base of your voice and the region around 6 ? 10 kHz by using the Fast

?bernd.porr@glasgow.ac.uk

1

Fourier Transform: transform the time domain signal into the frequency

domain, then manipulate the spectrum and then transform it back to

the time domain. Make sure that the audio is not clipping or distorted.

Save the resulting time domain signal as a WAV (16 bit) and include

it in your submission. [30%]

5. We have dialled numbers on a touch tone telephone and uploaded the

files to moodle. There are different files depending on your matric

number and class. Make sure you download the right one. Your task

is to use the Fourier Transform to determine which numbers have been

dialled. The Python program should be written in a way that it can

detect all numbers automatically and prints them on the screen. For

that purpose write

(a) a python function which detects one digit from a chunk of the

recording and then

(b) write the main program as a loop which detects the key presses

and then feeds them into the python function in 5a).

[40%]

The report should be brief, concentrating on the technical aspects and

why you have done the different steps. Complete PYTHON code must be

included in the appendix and submitted via moodle. All figures in the report

must be high quality graphics in vector format. Blurry jpeg figures or

screenshots will not be marked. Submission must be PDF.

Upload your code, data/WAV files to moodle in form as a single zip file.

Follow exactly the naming conventions for all files as specified on moodle.

The scripts will be tested under Linux from the commandline (so not Spyder

or Pycharm). Make sure your code is platform independent. Code that

crashes will result in low marks. The same applies for code which won’t

display any plots.

Your audio files must be original ones. No high level python signal processing

/ filtering commands are allowed except of the FFT and IFFT commands.

Deadline: 19th Oct, 3pm on moodle.


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp