Digital Filter Designer Suite is a powerful desktop application developed using PyQt that empowers users to design digital filters with precision. This suite provides an interactive environment for designing filters on the unit circle, offering visualizations of phase and magnitude responses. Users can manipulate filters by adding poles and zeros, either as single entities or in conjugate pairs, and can dynamically adjust their positions.
-
Interactive Unit Circle Design: Design filters directly on the unit circle, visualizing both phase and magnitude responses.
-
Pole and Zero Manipulation:
- Add poles and zeros individually or as conjugate pairs.
- Ctrl+click on the unit circle to add poles and zeros.
- Drag and drop poles and zeros to reposition them.
- Double-click on a pole or zero to delete it.
-
All Pass Filters: Incorporate different all-pass filters to correct phase-related characteristics.
-
Signal Visualization:
- Upload signals to visualize the filter design.
- Create custom signals using the touchpad for more personalized testing.
- Python 3.6 or higher
- PyQt6
- Clone this repository to your local machine.
git clone https://github.com/bodykudo/digital-filter-designer-suite.git
- Install the required dependencies.
pip install requirements.txt
- Run the application.
python main.py
- Filter Design:
- Design filters by adding poles and zeros on the unit circle.
- Use Ctrl+click to add poles/zeros and drag-drop to reposition them.
- Double-click on a pole/zero to delete it.
-
All Pass Filters:
- Explore and apply different all-pass filters to correct phase responses.
-
Signal Integration:
- Upload signals to visualize the impact of the filter design.
- Create custom signals using the touchpad for precise testing.
Abdallah Magdy |
Abdelrahman Emad |
Mohamed Alaa |
Mohamed Ibrahim |
Explore the world of digital filter design with precision using the Digital Filter Designer Suite!