Skip to content

A desktop application for illustrating signal sampling and recovery based on the Nyquist–Shannon theorem. Users can load and compose signals, sample at various frequencies, visualize original and reconstructed signals in real-time, and explore different reconstruction methods, noise effects, and aliasing.

License

Notifications You must be signed in to change notification settings

AhmedAmgadElsharkawy/Sampling-Theory-Studio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sampling-Theory-Studio

A desktop application illustrating signal sampling and recovery based on the Nyquist–Shannon theorem. Users can load and compose signals, sample at various frequencies, visualize original, sampled, and reconstructed signals in real-time, and explore different reconstruction methods while adding noise and investigating aliasing effects.

Table of Contents

Demo

Sampling-Theory-Studio-Demo.mp4

Prerequisites

  • Python 3.6 or higher

Installation

  1. Clone the repository:

    git clone https://github.com/AhmedAmgadElsharkawy/Sampling-Theory-Studio.git
    
  2. Install The Dependincies:

    pip install -r requirements.txt
    
  3. Run The App:

    python main.py
    

Features

  • Load Signal: Support loading pre-recorded signals from CSV files.
  • Signal Mixer: Compose custom signals by summing sinusoids with different frequencies, magnitudes, and phase shifts, with real-time generation.
  • Export Signal: Save composed signals to CSV files, allowing you to load and share them at any time.
  • Signal Sampling: Sample signals and display the sampling frequency in either actual or normalized form (0×fmax to 4×fmax).
  • Signal-to-Noise Ratio (SNR): Control the SNR to introduce noise into signals.
  • Signal Reconstruction: Provide five different signal reconstruction options: Whittaker–Shannon, Lanczos, Cubic Spline, Zero-Order Hold, and First-Order Hold.

Contributors

About

A desktop application for illustrating signal sampling and recovery based on the Nyquist–Shannon theorem. Users can load and compose signals, sample at various frequencies, visualize original and reconstructed signals in real-time, and explore different reconstruction methods, noise effects, and aliasing.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages