目录
Signal Processing Toolbox Functions - By Category
Signal Generation and Preprocessing
Smoothing and Denoising
Waveform Generation
Resampling
Measurements and Feature Extraction
Descriptive Statistics
Pulse and Transition Metrics
Spectral Measurements
Correlation and Convolution
Digital and Analog Filters
Digital Filter Design
Digital Filter Analysis
Digital Filtering
Multirate Signal Processing
Analog Filters
Transforms
Spectral Analysis
Spectral Estimation
Parametric Spectral Estimation
Subspace Methods
Windows
Spectral Measurements
Time-Frequency Analysis
Signal Modeling
Autoregressive and Moving Average Models
Linear Predictive Coding
Vibration Analysis
Signal Processing Toolbox Functions - By Category
Signal Generation and Preprocessing
Smoothing and Denoising
detrend |
Remove linear trends |
filloutliers |
Detect and replace outliers in data |
hampel |
Outlier removal using Hampel identifier |
isoutlier |
Find outliers in data |
medfilt1 |
1-D median filtering |
movmad |
Moving median absolute deviation |
movmedian |
Moving median |
sgolay |
Savitzky-Golay filter design |
sgolayfilt |
Savitzky-Golay filtering |
smoothdata |
Smooth noisy data |
Waveform Generation
chirp |
Swept-frequency cosine |
diric |
Dirichlet or periodic sinc function |
gauspuls |
Gaussian-modulated sinusoidal pulse |
gmonopuls |
Gaussian monopulse |
pulstran |
Pulse train |
randn |
Normally distributed random numbers |
rectpuls |
Sampled aperiodic rectangle |
sawtooth |
Sawtooth or triangle wave |
sin |
Sine of argument in radians |
sinc |
Sinc function |
square |
Square wave |
stem |
Plot discrete sequence data |
tripuls |
Sampled aperiodic triangle |
vco |
Voltage controlled oscillator |
buffer |
Buffer signal vector into matrix of data frames |
demod |
Demodulation for communications simulation |
modulate |
Modulation for communications simulation |
seqperiod |
Compute period of sequence |
shiftdata |
Shift data to operate on specified dimension |
unshiftdata |
Inverse of shiftdata |
strips |
Strip plot |
udecode |
Decode 2n-level quantized integer inputs to floating-point outputs |
uencode |
Quantize and encode floating-point inputs to integer outputs |
marcumq |
Generalized Marcum Q function |
Resampling
decimate |
Decimation — decrease sample rate by integer factor |
downsample |
Decrease sample rate by integer factor |
fillgaps |
Fill gaps using autoregressive modeling |
fillmissing |
Fill missing values |
interp |
Interpolation — increase sample rate by integer factor |
interp1 |
1-D data interpolation (table lookup) |
pchip |
Piecewise Cubic Hermite Interpolating Polynomial (PCHIP) |
resample |
Resample uniform or nonuniform data to new fixed rate |
spline |
Cubic spline data interpolation |
upfirdn |
Upsample, apply FIR filter, and downsample |
upsample |
Increase sample rate by integer factor |
Measurements and Feature Extraction
Descriptive Statistics
cummax |
Cumulative maximum |
cummin |
Cumulative minimum |
envelope |
Signal envelope |
max |
Maximum elements of an array |
mean |
Average or mean value of array |
meanfreq |
Mean frequency |
medfreq |
Median frequency |
median |
Median value of array |
min |
Minimum elements of an array |
movmad |
Moving median absolute deviation |
movmedian |
Moving median |
peak2peak |
Maximum-to-minimum difference |
peak2rms |
Peak-magnitude-to-RMS ratio |
rms |
Root-mean-square level |
rssq |
Root-sum-of-squares level |
seqperiod |
Compute period of sequence |
std |
Standard deviation |
var |
Variance |
alignsignals |
Align two signals by delaying earliest signal |
cusum |
Detect small changes in mean using cumulative sum |
dtw |
Distance between signals using dynamic time warping |
edr |
Edit distance on real signals |
findchangepts |
Find abrupt changes in signal |
finddelay |
Estimate delay(s) between signals |
findpeaks |
Find local maxima |
findsignal |
Find signal location using similarity search |
Pulse and Transition Metrics
dutycycle |
Duty cycle of pulse waveform |
midcross |
Mid-reference level crossing for bilevel waveform |
pulseperiod |
Period of bilevel pulse |
pulsesep |
Separation between bilevel waveform pulses |
pulsewidth |
Bilevel waveform pulse width |
statelevels |
State-level estimation for bilevel waveform with histogram method |
falltime |
Fall time of negative-going bilevel waveform transitions |
overshoot |
Overshoot metrics of bilevel waveform transitions |
risetime |
Rise time of positive-going bilevel waveform transitions |
settlingtime |
Settling time for bilevel waveform |
slewrate |
Slew rate of bilevel waveform |
undershoot |
Undershoot metrics of bilevel waveform transitions |
Spectral Measurements
bandpower |
Band power |
enbw |
Equivalent noise bandwidth |
instfreq |
Estimate instantaneous frequency |
meanfreq |
Mean frequency |
medfreq |
Median frequency |
obw |
Occupied bandwidth |
pentropy |
Spectral entropy of signal |
pkurtosis |
Spectral kurtosis from signal or spectrogram |
powerbw |
Power bandwidth |
sfdr |
Spurious free dynamic range |
sinad |
Signal to noise and distortion ratio |
snr |
Signal-to-noise ratio |
thd |
Total harmonic distortion |
toi |
Third-order intercept point |
Correlation and Convolution
corrcoef |
Correlation coefficients |
corrmtx |
Data matrix for autocorrelation matrix estimation |
xcorr |
Cross-correlation |
xcorr2 |
2-D cross-correlation |
xcov |
Cross-covariance |
cconv |
Modulo-N circular convolution |
conv |
Convolution and polynomial multiplication |
conv2 |
2-D convolution |
convmtx |
Convolution matrix |
cov |
Covariance |
deconv |
Deconvolution and polynomial division |
alignsignals |
Align two signals by delaying earliest signal |
dtw |
Distance between signals using dynamic time warping |
edr |
Edit distance on real signals |
finddelay |
Estimate delay(s) between signals |
findsignal |
Find signal location using similarity search |
Digital and Analog Filters
Digital Filter Design
butter |
Butterworth filter design |
buttord |
Butterworth filter order and cutoff frequency |
cheby1 |
Chebyshev Type I filter design |
cheb1ord |
Chebyshev Type I filter order |
cheby2 |
Chebyshev Type II filter design |
cheb2ord |
Chebyshev Type II filter order |
designfilt |
Design digital filters |
ellip |
Elliptic filter design |
ellipord |
Minimum order for elliptic filters |
polyscale |
Scale roots of polynomial |
polystab |
Stabilize polynomial |
yulewalk |
Recursive digital filter design |
cfirpm |
Complex and nonlinear-phase equiripple FIR filter design |
designfilt |
Design digital filters |
fir1 |
Window-based FIR filter design |
fir2 |
Frequency sampling-based FIR filter design |
fircls |
Constrained-least-squares FIR multiband filter design |
fircls1 |
Constrained-least-squares linear-phase FIR lowpass and highpass filter design |
firls |
Least-squares linear-phase FIR filter design |
firpm |
Parks-McClellan optimal FIR filter design |
firpmord |
Parks-McClellan optimal FIR filter order estimation |
gaussdesign |
Gaussian FIR pulse-shaping filter design |
intfilt |
Interpolation FIR filter design |
kaiserord |
Kaiser window FIR filter design estimation parameters |
maxflat |
Generalized digital Butterworth filter design |
rcosdesign |
Raised cosine FIR pulse-shaping filter design |
sgolay |
Savitzky-Golay filter design |
digitalFilter |
Digital filter |
double |
Cast coefficients of digital filter to double precision |
dspfwiz |
Create Simulink filter block using Realize Model panel |
filt2block |
Generate Simulink filter block |
fvtool |
Open Filter Visualization Tool |
info |
Information about digital filter |
isdouble |
Determine if digital filter coefficients are double precision |
issingle |
Determine if digital filter coefficients are single precision |
single |
Cast coefficients of digital filter to single precision |
Digital Filter Analysis
abs |
Absolute value or complex magnitude |
angle |
Phase angle |
freqz |
Frequency response of digital filter |
grpdelay |
Average filter delay (group delay) |
phasedelay |
Phase delay of digital filter |
phasez |
Phase response of digital filter |
unwrap |
Correct phase angles to produce smoother phase plots |
zerophase |
Zero-phase response of digital filter |
zplane |
Zero-pole plot for discrete-time systems |
impz |
Impulse response of digital filter |
impzlength |
Impulse response length |
stepz |
Step response of digital filter |
filtord |
Filter order |
filternorm |
2-norm or infinity-norm of digital filter |
firtype |
Type of linear phase FIR filter |
isallpass |
Determine whether filter is allpass |
isfir |
Determine if digital filter has finite impulse response |
islinphase |
Determine whether filter has linear phase |
ismaxphase |
Determine whether filter is maximum phase |
isminphase |
Determine whether filter is minimum phase |
isstable |
Determine whether filter is stable |
fvtool |
Open Filter Visualization Tool |
Digital Filtering
bandpass |
Bandpass-filter signals |
bandstop |
Bandstop-filter signals |
highpass |
Highpass-filter signals |
lowpass |
Lowpass-filter signals |
fftfilt |
FFT-based FIR filtering using overlap-add method |
filter |
Filter data with recursive (IIR) or nonrecursive (FIR) filter |
filter2 |
2-D digital filter |
filtfilt |
Zero-phase digital filtering |
filtic |
Initial conditions for transposed direct-form II filter implementation |
hampel |
Outlier removal using Hampel identifier |
latcfilt |
Lattice and lattice-ladder filter implementation |
medfilt1 |
1-D median filtering |
residuez |
Z-transform partial-fraction expansion |
sgolayfilt |
Savitzky-Golay filtering |
sosfilt |
Second-order (biquadratic) IIR digital filtering |
conv |
Convolution and polynomial multiplication |
conv2 |
2-D convolution |
convmtx |
Convolution matrix |
deconv |
Deconvolution and polynomial division |
cell2sos |
Convert second-order sections cell array to matrix |
eqtflength |
Equalize lengths of transfer function's numerator and denominator |
latc2tf |
Convert lattice filter parameters to transfer function form |
sos2cell |
Convert second-order sections matrix to cell array |
sos2ss |
Convert digital filter second-order section parameters to state-space form |
sos2tf |
Convert digital filter second-order section data to transfer function form |
sos2zp |
Convert digital filter second-order section parameters to zero-pole-gain form |
ss |
Convert digital filter to state-space representation |
ss2sos |
Convert digital filter state-space parameters to second-order sections form |
ss2tf |
Convert state-space representation to transfer function |
ss2zp |
Convert state-space filter parameters to zero-pole-gain form |
tf |
Convert digital filter to transfer function |
tf2latc |
Convert transfer function filter parameters to lattice filter form |
tf2sos |
Convert digital filter transfer function data to second-order sections form |
tf2ss |
Convert transfer function filter parameters to state-space form |
tf2zp |
Convert transfer function filter parameters to zero-pole-gain form |
tf2zpk |
Convert transfer function filter parameters to zero-pole-gain form |
zp2sos |
Convert zero-pole-gain filter parameters to second-order sections form |
zp2ss |
Convert zero-pole-gain filter parameters to state-space form |
zp2tf |
Convert zero-pole-gain filter parameters to transfer function form |
zpk |
Convert digital filter to zero-pole-gain representation |
dspfwiz |
Create Simulink filter block using Realize Model panel |
filt2block |
Generate Simulink filter block |
Multirate Signal Processing
decimate |
Decimation — decrease sample rate by integer factor |
downsample |
Decrease sample rate by integer factor |
fillgaps |
Fill gaps using autoregressive modeling |
interp |
Interpolation — increase sample rate by integer factor |
interp1 |
1-D data interpolation (table lookup) |
pchip |
Piecewise Cubic Hermite Interpolating Polynomial (PCHIP) |
resample |
Resample uniform or nonuniform data to new fixed rate |
spline |
Cubic spline data interpolation |
upfirdn |
Upsample, apply FIR filter, and downsample |
upsample |
Increase sample rate by integer factor |
Analog Filters
besself |
Bessel analog filter design |
butter |
Butterworth filter design |
cheby1 |
Chebyshev Type I filter design |
cheby2 |
Chebyshev Type II filter design |
ellip |
Elliptic filter design |
freqs |
Frequency response of analog filters |
freqspace |
Frequency spacing for frequency response |
besselap |
Bessel analog lowpass filter prototype |
bilinear |
Bilinear transformation method for analog-to-digital filter conversion |
buttap |
Butterworth filter prototype |
cheb1ap |
Chebyshev Type I analog lowpass filter prototype |
cheb2ap |
Chebyshev Type II analog lowpass filter prototype |
ellipap |
Elliptic analog lowpass filter prototype |
impinvar |
Impulse invariance method for analog-to-digital filter conversion |
lp2bp |
Transform lowpass analog filters to bandpass |
lp2bs |
Transform lowpass analog filters to bandstop |
lp2hp |
Transform lowpass analog filters to highpass |
lp2lp |
Change cutoff frequency for lowpass analog filter |
Transforms
abs |
Absolute value or complex magnitude |
angle |
Phase angle |
fft |
Fast Fourier transform |
ifft |
Inverse fast Fourier transform |
fftshift |
Shift zero-frequency component to center of spectrum |
dftmtx |
Discrete Fourier transform matrix |
fft2 |
2-D fast Fourier transform |
ifft2 |
2-D inverse fast Fourier transform |
instfreq |
Estimate instantaneous frequency |
czt |
Chirp Z-transform |
goertzel |
Discrete Fourier transform with second-order Goertzel algorithm |
dct |
Discrete cosine transform |
idct |
Inverse discrete cosine transform |
envelope |
Signal envelope |
fwht |
Fast Walsh-Hadamard transform |
ifwht |
Inverse Fast Walsh-Hadamard transform |
hilbert |
Discrete-time analytic signal using Hilbert transform |
cceps |
Complex cepstral analysis |
icceps |
Inverse complex cepstrum |
rceps |
Real cepstrum and minimum phase reconstruction |
bitrevorder |
Permute data into bit-reversed order |
digitrevorder |
Permute input into digit-reversed order |
Spectral Analysis
Spectral Estimation
cpsd |
Cross power spectral density |
findpeaks |
Find local maxima |
mscohere |
Magnitude-squared coherence |
pentropy |
Spectral entropy of signal |
periodogram |
Periodogram power spectral density estimate |
plomb |
Lomb-Scargle periodogram |
pmtm |
Multitaper power spectral density estimate |
poctave |
Generate octave spectrum |
pspectrum |
Analyze signals in the frequency and time-frequency domains |
pwelch |
Welch’s power spectral density estimate |
tfestimate |
Transfer function estimate |
db |
Convert energy or power measurements to decibels |
db2mag |
Convert decibels to magnitude |
db2pow |
Convert decibels to power |
mag2db |
Convert magnitude to decibels |
pow2db |
Convert power to decibels |
Parametric Spectral Estimation
findpeaks |
Find local maxima |
pburg |
Autoregressive power spectral density estimate — Burg’s method |
pcov |
Autoregressive power spectral density estimate — covariance method |
pmcov |
Autoregressive power spectral density estimate — modified covariance method |
pyulear |
Autoregressive power spectral density estimate — Yule-Walker method |
db |
Convert energy or power measurements to decibels |
db2mag |
Convert decibels to magnitude |
db2pow |
Convert decibels to power |
mag2db |
Convert magnitude to decibels |
pow2db |
Convert power to decibels |
Subspace Methods
peig |
Pseudospectrum using eigenvector method |
pmusic |
Pseudospectrum using MUSIC algorithm |
rooteig |
Frequency and power content using eigenvector method |
rootmusic |
Root MUSIC algorithm |
Windows
barthannwin |
Modified Bartlett-Hann window |
bartlett |
Bartlett window |
blackman |
Blackman window |
blackmanharris |
Minimum 4-term Blackman-Harris window |
bohmanwin |
Bohman window |
chebwin |
Chebyshev window |
enbw |
Equivalent noise bandwidth |
flattopwin |
Flat top weighted window |
gausswin |
Gaussian window |
hamming |
Hamming window |
hann |
Hann (Hanning) window |
kaiser |
Kaiser window |
nuttallwin |
Nuttall-defined minimum 4-term Blackman-Harris window |
parzenwin |
Parzen (de la Vallée Poussin) window |
rectwin |
Rectangular window |
taylorwin |
Taylor window |
triang |
Triangular window |
tukeywin |
Tukey (tapered cosine) window |
wvtool |
Open Window Visualization Tool |
dpss |
Discrete prolate spheroidal (Slepian) sequences |
dpssclear |
Remove discrete prolate spheroidal sequences from database |
dpssdir |
Discrete prolate spheroidal sequences database directory |
dpssload |
Load discrete prolate spheroidal sequences from database |
dpsssave |
Discrete prolate spheroidal or Slepian sequence database |
Spectral Measurements
bandpower |
Band power |
enbw |
Equivalent noise bandwidth |
instfreq |
Estimate instantaneous frequency |
meanfreq |
Mean frequency |
medfreq |
Median frequency |
obw |
Occupied bandwidth |
pentropy |
Spectral entropy of signal |
pkurtosis |
Spectral kurtosis from signal or spectrogram |
powerbw |
Power bandwidth |
sfdr |
Spurious free dynamic range |
sinad |
Signal to noise and distortion ratio |
snr |
Signal-to-noise ratio |
thd |
Total harmonic distortion |
toi |
Third-order intercept point |
Time-Frequency Analysis
emd |
Empirical mode decomposition |
fsst |
Fourier synchrosqueezed transform |
hht |
Hilbert-Huang transform |
ifsst |
Inverse Fourier synchrosqueezed transform |
instfreq |
Estimate instantaneous frequency |
kurtogram |
Visualize spectral kurtosis |
pentropy |
Spectral entropy of signal |
pkurtosis |
Spectral kurtosis from signal or spectrogram |
pspectrum |
Analyze signals in the frequency and time-frequency domains |
spectrogram |
Spectrogram using short-time Fourier transform |
tfridge |
Time-frequency ridges |
xspectrogram |
Cross-spectrogram using short-time Fourier transforms |
Signal Modeling
Autoregressive and Moving Average Models
arburg |
Autoregressive all-pole model parameters — Burg’s method |
arcov |
Autoregressive all-pole model parameters — covariance method |
armcov |
Autoregressive all-pole model parameters — modified covariance method |
aryule |
Autoregressive all-pole model parameters — Yule-Walker method |
invfreqs |
Identify continuous-time filter parameters from frequency response data |
invfreqz |
Identify discrete-time filter parameters from frequency response data |
prony |
Prony method for filter design |
stmcb |
Compute linear model using Steiglitz-McBride iteration |
Linear Predictive Coding
corrmtx |
Data matrix for autocorrelation matrix estimation |
levinson |
Levinson-Durbin recursion |
lpc |
Linear prediction filter coefficients |
rlevinson |
Reverse Levinson-Durbin recursion |
schurrc |
Compute reflection coefficients from autocorrelation sequence |
xcorr |
Cross-correlation |
xcov |
Cross-covariance |
ac2poly |
Convert autocorrelation sequence to prediction polynomial |
ac2rc |
Convert autocorrelation sequence to reflection coefficients |
is2rc |
Convert inverse sine parameters to reflection coefficients |
lar2rc |
Convert log area ratio parameters to reflection coefficients |
lsf2poly |
Convert line spectral frequencies to prediction filter coefficients |
poly2ac |
Convert prediction filter polynomial to autocorrelation sequence |
poly2lsf |
Convert prediction filter coefficients to line spectral frequencies |
poly2rc |
Convert prediction filter polynomial to reflection coefficients |
rc2ac |
Convert reflection coefficients to autocorrelation sequence |
rc2is |
Convert reflection coefficients to inverse sine parameters |
rc2lar |
Convert reflection coefficients to log area ratio parameters |
rc2poly |
Convert reflection coefficients to prediction filter polynomial |
Vibration Analysis
envspectrum |
Envelope spectrum for machinery diagnosis |
orderspectrum |
Average spectrum versus order for vibration signal |
ordertrack |
Track and extract order magnitudes from vibration signal |
orderwaveform |
Extract time-domain order waveforms from vibration signal |
rpmfreqmap |
Frequency-RPM map for order analysis |
rpmordermap |
Order-RPM map for order analysis |
rpmtrack |
Track and extract RPM profile from vibration signal |
tachorpm |
Extract RPM signal from tachometer pulses |
tsa |
Time-synchronous signal average |
modalfit |
Modal parameters from frequency-response functions |
modalfrf |
Frequency-response functions for modal analysis |
modalsd |
Generate stabilization diagram for modal analysis |
rainflow |
Rainflow counts for fatigue analysis |