Getting Started¶
This page helps you understand the QSP ecosystem and choose a starting point.
What is QSP?¶
QSP (Quaternionic Signal Processing) is a modular Python package family for signal processing workflows that require principled handling of orientation, phase, and polarization. It is built around a consistent set of quaternionic primitives that flow through transforms, filters, modulation tools, and orientation estimators.
QSP does not replace NumPy, SciPy, or standard DSP libraries. It extends them with geometric representations suited to problems where scalar or complex types are insufficient.
Who is QSP for?¶
QSP is designed for:
- Signal processing engineers working with polarized, multi-axis, or orientation-sensitive signals
- Communications researchers building modulation schemes that use phase-space geometry
- Navigation and sensing engineers who need orientation estimation in quaternion form
- Researchers exploring quaternionic extensions of classical DSP theory
Choose your starting point¶
Install qsp-stack for access to the full ecosystem in one command:
Then read the Ecosystem page to understand how the packages fit together.
If you have a specific need, install only what you need:
| Need | Package |
|---|---|
| Quaternion math, shared types | qsp-core |
| FFT and spectral analysis | qsp-fft |
| Filtering and conditioning | qsp-filter |
| Modulation and symbols | qsp-modulation |
| Orientation and attitude | qsp-orientation |
See Choosing a Package for more guidance.
Start with qsp-stack to validate your workflow end-to-end, then refactor to use specific packages as your dependency requirements become clear. See Migration Paths.
Recommended reading order¶
- Installation
- Ecosystem
- Concepts: Overview
- First Workflow
- Package pages for the packages you plan to use