SignalAnalysis.jl

Signal analysis toolbox for Julia
Author org-arl
Popularity
42 Stars
Updated Last
3 Months Ago
Started In
October 2019

CI doc-stable doc-dev Codecov

SignalAnalysis.jl

Signal analysis toolbox for Julia

While a few great signal processing packages (e.g. DSP.jl, SignalOperators.jl) are available, they have limited time-frequency analysis, sonar analysis, and baseband analysis capabilities. This SignalAnalysis.jl package aims to fill that gap. The package has grown out of my research needs, but I hope to expand it over time to provide a wide variety of time-frequency analysis, and baseband signal processing tools.

The SignalAnalysis.jl works closely with, and complements other package like DSP.jl, Plots.jl and InteractiveViz.jl, to provide its functionality. While some overlap is inevitable, we mostly leverage functionality already available in those packages, and avoid duplicating it. In some cases, simpler wrappers are provided, or some symbols are re-exported for convenience. The package also works closely with Unitful.jl for common real-world units.

While this package works with most array-like data types, it uses the SignalBase.jl API to represent multichannel 1D signals (time, frequency or spatial domain). While the package adopts a SampledSignal data type to carry sampling rate information with the sampled signal, the API design allows sampling rate to be provided as a keyword argument in most cases, enabling the user to pass in any array-like data.

Various APIs: