Designing a signal recovery web-application that depicts the Nyquist rate, using streamlit, an open source framework.
- generating sinusoidal signals at the user-specified frequency and amplitude.
- Reading of csv signal files and the sampled points are marked on the signal.
- Adjusting the sample frequency with sample rate slider or slider of maximum frequency scale.
- Reconstructing the signal from the sampled points.
- The sum of the generated sinusoidals, and the reconstructed ones are shown on a single graph, where user can choose which to be shown.
- A button to delete the user-choosen sinusoidal.
- A slider for adding noise to the signal by a user-specified SNR value.
- Saving the reconstructed signal to the user's computer using download button.
To deploy this project run
pip install -r requirements.txt
streamlit run app.py
- Default Signal
- Sampling an added signal without noise
- Sampling an added signal with noise
- This project was made for a task in the fifth semester of SBME, for digital signal processing course, and was submitted to the course's doctor in 10/31/2022
Name | Section | Bench Number |
---|---|---|
Habiba Fathallah | 1 | 27 |
Sohaila Mahmoud | 1 | 45 |
Ahmed Hassan | 1 | 4 |
Sara Amgad | 1 | 38 |