Digital signal processing: Difference between revisions

Content deleted Content added
Ww (talk | contribs)
+speaker example application
Citation bot (talk | contribs)
Add: article-number, bibcode, authors 1-1. Removed URL that duplicated identifier. Removed access-date with no URL. Removed parameters. Some additions/deletions were parameter name changes. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 672/1032
 
(965 intermediate revisions by more than 100 users not shown)
Line 1:
{{short description|Mathematical signal manipulation by computers}}
'''Digital signal processing''' ('''DSP''') is the study of [[Signal (information theory)|signal]]s in a [[digital]] representation and the processing methods of these signals. DSP and [[analog signal processing]] are subfields of [[signal processing]]. DSP has at least four major subfields: [[audio signal processing]], [[control engineering]], [[digital image processing]] and [[speech processing]].
{{Redirect|Digital transform|the impact of digital technology on society|Digital transformation}}
{{More citations needed|date=May 2008}}
{{Use American English|date=January 2025}}
 
'''Digital signal processing''' ('''DSP''') is the use of [[digital processing]], such as by computers or more specialized [[digital signal processor]]s, to perform a wide variety of [[signal processing]] operations. The [[digital signal]]s processed in this manner are a sequence of numbers that represent [[Sampling (signal processing)|samples]] of a [[continuous variable]] in a ___domain such as time, space, or frequency. In [[digital electronics]], a digital signal is represented as a [[pulse train]],<ref>{{cite book |author=B. SOMANATHAN NAIR |title=Digital electronics and logic design |date=2002 |isbn=9788120319561 |publisher=PHI Learning Pvt. Ltd. |quote=Digital signals are fixed-width pulses, which occupy only one of two levels of amplitude. |page=289}}</ref><ref>{{cite book |author=Joseph Migga Kizza |isbn=9780387204734 |date=2005 |publisher=Springer Science & Business Media |title=Computer Network Security}}</ref> which is typically generated by the switching of a [[transistor]].<ref>{{cite book |title=2000 Solved Problems in Digital Electronics |date=2005 |publisher=[[Tata McGraw-Hill Education]] |isbn=978-0-07-058831-8 |page=151 |url=https://books.google.com/books?id=N6FDii6_nSEC&pg=PA151}}</ref>
Since the goal of DSP is usually to measure or filter continuous real-world analog signals, the first step is usually to convert the signal from an analog to a digital form, by using an [[analog to digital converter]]. Often, the required output signal is another analog output signal, which requires a [[digital to analog converter]].
 
Digital signal processing and [[analog signal processing]] are subfields of signal processing. DSP applications include [[Audio signal processing|audio]] and [[speech processing]], [[sonar]], [[radar]] and other [[sensor array]] processing, [[spectral density estimation]], [[statistical signal processing]], [[digital image processing]], [[data compression]], [[video coding]], [[audio coding]], [[image compression]], signal processing for [[telecommunications]], [[control system]]s, [[biomedical engineering]], and [[seismology]], among others.
The [[algorithm]]s required for DSP are sometimes performed using specialized [[computer hardware|computers]], which make use of specialized microprocessors called [[digital signal processor]]s (also abbreviated ''DSP''). These process signals in [[real time]] and are generally purpose-designed [[application-specific integrated circuit]]s (ASICs). When flexibility and rapid development are more important than unit costs at high volume, DSP algorithms may also be implemented using [[field-programmable gate array]]s (FPGAs).
 
DSP can involve linear or nonlinear operations. Nonlinear signal processing is closely related to [[nonlinear system identification]]<ref>{{cite book |last=Billings |first=Stephen A. |title=Nonlinear System Identification: NARMAX Methods in the Time, Frequency, and Spatio-Temporal Domains |publisher=Wiley |isbn=978-1-119-94359-4 |date=Sep 2013 |___location=UK}}</ref> and can be implemented in the [[Time ___domain|time]], [[Frequency ___domain|frequency]], and [[Spacetime|spatio-temporal domains]].<!--sort of a flip stab at a wikilink for this concept. Readers ''might'' get the idea.-->
== DSP domains ==
 
In DSP, engineers usually study digital signals in one of the following domains: [[time ___domain]] (one-dimensional signals), spatial ___domain (multidimensional signals), [[frequency]] ___domain, [[autocorrelation]] ___domain, and [[wavelet]] domains. They choose the ___domain in which to process a signal by making an educated guess (or by trying different possibilities) as to which ___domain best represents the essential characteristics of the signal. A sequence of samples from a measuring device produces a time or spatial ___domain representation, whereas a [[discrete Fourier transform]] produces the frequency ___domain information, that is the [[frequency spectrum]]. Autocorrelation is defined as the [[cross-correlation]] of the signal with itself over varying intervals of time or space.
The application of digital computation to signal processing allows for many advantages over analog processing in many applications, such as [[error detection and correction]] in transmission as well as [[data compression]].<ref>{{cite book |title=Digital Signal Processing: Instant access |last1=Broesch |first1=James D. |last2=Stranneby |first2=Dag |last3=Walker |first3=William |date=2008-10-20 |publisher=Butterworth-Heinemann-Newnes |edition=1 |isbn=9780750689762 |page=3}}</ref> Digital signal processing is also fundamental to [[digital electronics|digital technology]], such as [[digital telecommunication]] and [[wireless communications]].<ref name="Srivastava">{{cite book |last1=Srivastava |first1=Viranjay M. |last2=Singh |first2=Ghanshyam |title=MOSFET Technologies for Double-Pole Four-Throw Radio-Frequency Switch |date=2013 |publisher=[[Springer Science & Business Media]] |isbn=9783319011653 |page=1 |url=https://books.google.com/books?id=fkO9BAAAQBAJ&pg=PA1}}</ref> DSP is applicable to both [[streaming data]] and static (stored) data.
 
== Signal sampling ==
''{{Main article: [[|Sampling (signal processing)]]''}}
 
To digitally analyze and manipulate an analog signal, it must be digitized with an [[analog-to-digital converter]] (ADC).<ref>{{cite journal |last=Walden |first=R. H. |date=1999 |title=Analog-to-digital converter survey and analysis |journal=IEEE Journal on Selected Areas in Communications |volume=17 |issue=4 |pages=539–550 |doi=10.1109/49.761034}}</ref> Sampling is usually carried out in two stages, [[discretization]] and [[Quantization (signal processing)|quantization]]. Discretization means that the signal is divided into equal intervals of time, and each interval is represented by a single measurement of amplitude. Quantization means each amplitude measurement is approximated by a value from a finite set. Rounding [[real numbers]] to integers is an example.
With the increasing use of [[computer]]s the usage and need of digital signal processing has increased. In order to use an analog signal on a computer it must be digitized with an [[analog to digital converter]] (ADC).
Sampling is usually carried out in two stages, [[discretization]] and [[quantization]]. In the discretization stage, the space of signals is partitioned into [[equivalence class]]es and discretization is carried out by replacing the signal with representative signal of the corresponding equivalence class.
In the quantization stage the representative signal values are approximated by values from a finite set.
 
The [[Nyquist–Shannon sampling theorem]] states that a signal can be exactly reconstructed from its samples if the sampling frequency is greater than twice the highest frequency component in the signal. In practice, the sampling frequency is often significantly higher than this.<ref>{{cite journal |last1=Candes |first1=E. J. |last2=Wakin |first2=M. B. |date=2008 |title=An Introduction To Compressive Sampling |journal=IEEE Signal Processing Magazine |volume=25 |issue=2 |pages=21–30 |doi=10.1109/MSP.2007.914731|bibcode=2008ISPM...25...21C |s2cid=1704522 |url=https://resolver.caltech.edu/CaltechAUTHORS:CANieeespm08 }}</ref> It is common to use an [[anti-aliasing filter]] to limit the signal bandwidth to comply with the sampling theorem, however careful selection of this filter is required because the reconstructed signal will be the filtered signal plus residual [[aliasing]] from imperfect [[stop band]] rejection instead of the original (unfiltered) signal.
To ensure that a sampled analog signal can be exactly reconstructed the [[Nyquist-Shannon sampling theorem]] must be satisfied. In short, the [[sampling frequency]] must be greater than twice the bandwidth of the signal (provided it is filtered perfectly - in practice the sampling frequency is always more than twice the required bandwidth). The most common bandwidth scenarios are: DC - BW<sub>x</sub> ("baseband"); and F<sub>c</sub> +/-BW<sub>x</sub>, a frequency band centered on a carrier frequency ("direct demodulation").
 
Theoretical DSP analyses and derivations are typically performed on [[discrete-time signal]] models with no amplitude inaccuracies ([[quantization error]]), created by the abstract process of [[Sampling (signal processing)|sampling]]. Numerical methods require a quantized signal, such as those produced by an ADC. The processed result might be a frequency spectrum or a set of statistics. But often it is another quantized signal that is converted back to analog form by a [[digital-to-analog converter]] (DAC).
A [[digital to analog converter]] (DAC) is used to convert the digital signal back to analog. The use of a digital computer is a key ingredient into [[digital control|digital control systems]].
 
== Time and space domainsDomains ==
DSP engineers usually study digital signals in one of the following domains: [[time ___domain]] (one-dimensional signals), spatial ___domain (multidimensional signals), [[frequency ___domain]], and [[wavelet]] domains. They choose the ___domain in which to process a signal by making an informed assumption (or by trying different possibilities) as to which ___domain best represents the essential characteristics of the signal and the processing to be applied to it. A sequence of samples from a measuring device produces a temporal or spatial ___domain representation, whereas a [[discrete Fourier transform]] produces the frequency ___domain representation.
The most common processing approach in the time or space ___domain is enhancement of the input signal through a method called filtering. Filtering generally consists of some transformation of a number of surrounding samples around the current sample of the input or output signal. There are various ways to characterize filters; for example:
 
=== Time and space domains ===
* A "linear" filter is a [[linear transformation]] of input samples; other filters are "non-linear." Linear filters satisfy the superposition condition, i.e. if an input is a weighted linear combination of different signals, the output is an equally weighted linear combination of the corresponding output signals.
[[Time ___domain]] refers to the analysis of signals with respect to time. Similarly, space ___domain refers to the analysis of signals with respect to position, e.g., pixel ___location for the case of image processing.
 
The most common processing approach in the time or space ___domain is enhancement of the input signal through a method called filtering. [[Digital filter]]ing generally consists of some linear transformation of a number of surrounding samples around the current sample of the input or output signal. The surrounding samples may be identified with respect to time or space. The output of a linear digital filter to any given input may be calculated by [[convolution|convolving]] the input signal with an [[impulse response]].
* A "causal" filter uses only previous samples of the input or output signals; while a "non-causal" filter uses future input samples. A non-causal filter can usually be changed into a causal filter by adding a delay to it.
 
=== Frequency ___domain ===
* A "time-invariant" filter has constant properties over time; other filters such as [[adaptive filter]]s change in time.
{{Main|Frequency ___domain}}
 
Signals are converted from time or space ___domain to the frequency ___domain usually through use of the [[Fourier transform]]. The Fourier transform converts the time or space information to a magnitude and phase component of each frequency. With some applications, how the phase varies with frequency can be a significant consideration. Where phase is unimportant, often the Fourier transform is converted to the power spectrum, which is the magnitude of each frequency component squared.
* Some filters are "stable", others are "unstable". A stable filter produces an output that converges to a constant value with time, or remains bounded within a finite interval. An unstable filter produces output which diverges.
 
The most common purpose for analysis of signals in the frequency ___domain is analysis of signal properties. The engineer can study the spectrum to determine which frequencies are present in the input signal and which are missing. Frequency ___domain analysis is also called ''spectrum-'' or ''spectral analysis''.
* A "finite impulse response" ([[Finite impulse response|FIR]]) filter uses only the input signal, while an "infinite impulse response" filter ([[IIR]]) uses both the input signal and previous samples of the output signal. FIR filters are always stable, while IIR filters may be unstable.
 
Filtering, particularly in non-realtime work, can also be achieved in the frequency ___domain, applying the filter and then converting back to the time ___domain. This can be an efficient implementation and can give essentially any filter response, including excellent approximations to [[brickwall filter]]s.
Most filters can be described in Z-___domain (a superset of the frequency ___domain) by their [[transfer function]]s. A filter may also be described as a [[difference equation]], a collection of [[Zero (complex analysis)|zeroes]] and [[pole (complex analysis)|pole]]s or, if it is an FIR filter, an [[impulse response]] or [[step response]]. The output of an FIR filter to any given input may be calculated by [[convolution|convolving]] the input signal with the [[impulse response]]. Filters can also be represented by block diagrams which can then be used to derive a sample processing [[algorithm]] to implement the filter using hardware instructions.
 
There are some commonly used frequency ___domain transformations. For example, the [[cepstrum]] converts a signal to the frequency ___domain through Fourier transform, takes the logarithm, then applies another Fourier transform. This emphasizes the harmonic structure of the original spectrum.
== Frequency ___domain ==
Signals are converted from time or space ___domain to the frequency ___domain usually through the [[Fourier transform]]. The Fourier transform converts the signal information to a magnitude and phase component of each frequency. Often the Fourier transform is converted to the power spectrum, which is the magnitude of each frequency component squared.
 
===Z-plane analysis===
The most common purpose for analysis of signals in the frequency ___domain is analysis of signal properties. The engineer can study the spectrum to get information of which frequencies are present in the input signal and which are missing.
Digital filters come in both [[infinite impulse response]] (IIR) and [[finite impulse response]] (FIR) types. Whereas FIR filters are always stable, IIR filters have feedback loops that may become unstable and oscillate. The [[Z-transform]] provides a tool for analyzing stability issues of digital IIR filters. It is analogous to the [[Laplace transform]], which is used to design and analyze analog IIR filters.
 
===Autoregression analysis===
There are some commonly used frequency ___domain transformations. For example, the [[cepstrum]] converts a signal to the frequency ___domain through Fourier transform, takes the logarithm, then applies another Fourier transform. This emphasizes the frequency components with smaller magnitude while retaining the order of magnitudes of frequency components.
A signal is represented as linear combination of its previous samples. Coefficients of the combination are called autoregression coefficients. This method has higher frequency resolution and can process shorter signals compared to the Fourier transform.<ref name = "Marple">{{Cite book| publisher = Prentice Hall| isbn = 978-0-13-214149-9| last = Marple| first = S. Lawrence| title = Digital Spectral Analysis: With Applications| ___location = Englewood Cliffs, N.J| date = 1987-01-01}}</ref> [[Prony's method]] can be used to estimate phases, amplitudes, initial phases and decays of the components of signal.<ref name = "Ribeiro" /><ref name = "Marple" /> Components are assumed to be complex decaying exponents.<ref name = "Ribeiro">{{Cite journal| doi = 10.1006/mssp.2001.1399| issn = 0888-3270| volume = 17| issue = 3| pages = 533–549| last1 = Ribeiro| first1 = M.P.| last2 = Ewins| first2 = D.J.| last3 = Robb| first3 = D.A.| title = Non-stationary analysis and noise filtering using a technique extended from the original Prony method| journal = Mechanical Systems and Signal Processing| access-date = 2019-02-17| date = 2003-05-01| bibcode = 2003MSSP...17..533R| url = http://linkinghub.elsevier.com/retrieve/pii/S0888327001913998| url-access = subscription}}</ref><ref name = "Marple" />
 
===Time-frequency analysis===
== Applications ==
A time-frequency representation of a signal can capture both temporal evolution and frequency structure of the signal. Temporal and frequency resolution are limited by the [[uncertainty principle]] and the tradeoff is adjusted by the width of the analysis window. Linear techniques such as [[Short-time Fourier transform]], [[wavelet transform]], [[filter bank]],<ref>{{Cite conference| last1 = So| first1 = Stephen| last2 = Paliwal| first2 = Kuldip K.| title = Improved noise-robustness in distributed speech recognition via perceptually-weighted vector quantisation of filterbank energies| book-title = Ninth European Conference on Speech Communication and Technology| date = 2005}}</ref> non-linear (e.g., [[Wigner–Ville transform]]<ref name = "Ribeiro" />) and [[autoregressive]] methods (e.g. segmented Prony method)<ref name = "Ribeiro" /><ref>{{Cite journal| doi = 10.1515/acgeo-2015-0012| issn = 1895-6572| volume = 63| issue = 3| pages = 652–678| last1 = Mitrofanov| first1 = Georgy| last2 = Priimenko| first2 = Viatcheslav| title = Prony Filtering of Seismic Data| journal = Acta Geophysica| date = 2015-06-01| bibcode = 2015AcGeo..63..652M| s2cid = 130300729| doi-access = free}}</ref><ref>{{Cite journal| doi = 10.20403/2078-0575-2020-2-55-67| issn = 2078-0575| issue = 2| pages = 55–67| last1 = Mitrofanov| first1 = Georgy| last2 = Smolin| first2 = S. N.| last3 = Orlov| first3 = Yu. A.| last4 = Bespechnyy| first4 = V. N.| title = Prony decomposition and filtering| journal = Geology and Mineral Resources of Siberia| access-date = 2020-09-08| date = 2020| s2cid = 226638723| url = http://www.jourgimss.ru/en/SitePages/catalog/2020/02/abstract/2020_2_55.aspx| url-access = subscription}}</ref> are used for representation of signal on the time-frequency plane. Non-linear and segmented Prony methods can provide higher resolution, but may produce undesirable artifacts. Time-frequency analysis is usually used for analysis of non-stationary signals. For example, methods of [[fundamental frequency]] estimation, such as RAPT and PEFAC<ref>{{Cite journal| doi = 10.1109/TASLP.2013.2295918| issn = 2329-9290| volume = 22| issue = 2| pages = 518–530| last1 = Gonzalez| first1 = Sira| last2 = Brookes| first2 = Mike| title = PEFAC - A Pitch Estimation Algorithm Robust to High Levels of Noise| journal = IEEE/ACM Transactions on Audio, Speech, and Language Processing| date = February 2014| bibcode = 2014ITASL..22..518G| s2cid = 13161793}}</ref> are based on windowed spectral analysis.
The main applications of DSP are [[audio signal processing]], [[audio compression]], [[digital image processing]], [[video compression]], [[speech processing]], [[speech recognition]] and [[digital communication]]s. Specific examples are [[speech compression]] and transmission in digital [[mobile phone]]s, room matching equalisation of sound in [[Hifi]] and [[sound reinforcement]] applications, [[weather forecasting]], [[economic forecasting]], [[seismology|seismic]] data processing, analysis and control of [[industrial process]]es, computer-generated [[animation]]s in [[Film|movie]]s, [[medical imaging]] such as [[CAT]] scans and [[MRI]], [[computer graphics|image manipulation]], high fidelity loudspeaker crossovers and equalization, and [[sound effect|audio effects]] for use with [[electric guitar]] [[amplifiers]].
 
===Wavelet===
A further application is [[very low frequency]] (VLF) reception with a PC soundcard [http://www.vlf.it/harald/strangerec.htm].
[[File:Jpeg2000 2-level wavelet transform-lichtenstein.png|thumb|300px|An example of the 2D discrete wavelet transform that is used in [[JPEG2000]]. The original image is high-pass filtered, yielding the three large images, each describing local changes in brightness (details) in the original image. It is then low-pass filtered and downscaled, yielding an approximation image; this image is high-pass filtered to produce the three smaller detail images, and low-pass filtered to produce the final approximation image in the upper-left.]]
In [[numerical analysis]] and [[functional analysis]], a [[discrete wavelet transform]] is any [[wavelet transform]] for which the [[wavelet]]s are discretely sampled. As with other wavelet transforms, a key advantage it has over [[Fourier transform]]s is temporal resolution: it captures both frequency ''and'' ___location information. The accuracy of the joint time-frequency resolution is limited by the [[Uncertainty principle#Signal processing|uncertainty principle]] of time-frequency.
 
===Empirical mode decomposition===
Empirical mode decomposition is based on decomposition signal into [[intrinsic mode function]]s (IMFs). IMFs are quasi-harmonical oscillations that are extracted from the signal.<ref>{{Cite journal| doi = 10.1098/rspa.1998.0193| issn = 1364-5021| volume = 454| issue = 1971| pages = 903–995| last1 = Huang| first1 = N. E.| last2 = Shen| first2 = Z.| last3 = Long| first3 = S. R.| last4 = Wu| first4 = M. C.| last5 = Shih| first5 = H. H.| last6 = Zheng| first6 = Q.| last7 = Yen| first7 = N.-C.| last8 = Tung| first8 = C. C.| last9 = Liu| first9 = H. H.| title = The empirical mode decomposition and the Hilbert spectrum for nonlinear and non-stationary time series analysis| journal = Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences| access-date = 2018-06-05| date = 1998-03-08| bibcode = 1998RSPSA.454..903H| s2cid = 1262186| url = http://rspa.royalsocietypublishing.org/cgi/doi/10.1098/rspa.1998.0193}}</ref>
 
== Implementation ==
DSP [[algorithm]]s may be run on general-purpose computers<ref>{{Cite book |last1=Weipeng |first1=Jiang |last2=Zhiqiang |first2=He |last3=Ran |first3=Duan |last4=Xinglin |first4=Wang |title=7th International Conference on Communications and Networking in China |chapter=Major optimization methods for TD-LTE signal processing based on general purpose processor |date=August 2012 |pages=797–801 |doi=10.1109/ChinaCom.2012.6417593|isbn=978-1-4673-2699-5 |s2cid=17594911 }}</ref> and [[digital signal processor]]s.<ref>{{Cite book |last1=Zaynidinov |first1=Hakimjon |last2=Ibragimov |first2=Sanjarbek |last3=Tojiboyev |first3=Gayrat |last4=Nurmurodov |first4=Javohir |chapter=Efficiency of Parallelization of Haar Fast Transform Algorithm in Dual-Core Digital Signal Processors |date=2021-06-22 |title=2021 8th International Conference on Computer and Communication Engineering (ICCCE) |publisher=IEEE |pages=7–12 |doi=10.1109/ICCCE50029.2021.9467190 |isbn=978-1-7281-1065-3|s2cid=236187914 }}</ref> DSP algorithms are also implemented on purpose-built hardware such as [[application-specific integrated circuit]] (ASICs).<ref>{{Cite journal |last=Lyakhov |first=P.A. |date=June 2023 |title=Area-Efficient digital filtering based on truncated multiply-accumulate units in residue number system 2 n - 1 , 2 n , 2 n + 1 |journal=Journal of King Saud University - Computer and Information Sciences |language=en |volume=35 |issue=6 |article-number=101574 |doi=10.1016/j.jksuci.2023.101574|doi-access=free }}</ref> Additional technologies for digital signal processing include more powerful general-purpose [[microprocessor]]s, [[graphics processing unit]]s, [[field-programmable gate array]]s (FPGAs), [[digital signal controller]]s (mostly for industrial applications such as motor control), and [[stream processing|stream processors]].<ref>{{cite book |title=Digital Signal Processing and Applications |last1=Stranneby |first1=Dag |last2=Walker |first2=William |edition=2nd |publisher=Elsevier |year=2004 |isbn=0-7506-6344-8 |url=https://books.google.com/books?id=NKK1DdqcDVUC&pg=PA241}}</ref>
 
For systems that do not have a [[real-time computing]] requirement and the signal data (either input or output) exists in data files, processing may be done economically with a general-purpose computer. This is essentially no different from any other [[data processing]], except DSP mathematical techniques (such as the [[Discrete cosine transform|DCT]] and [[FFT]]) are used, and the sampled data is usually assumed to be uniformly sampled in time or space. An example of such an application is processing [[digital photograph]]s with software such as [[Photoshop]].
 
When the application requirement is real-time, DSP is often implemented using specialized or dedicated processors or microprocessors, sometimes using multiple processors or multiple processing cores. These may process data using fixed-point arithmetic or floating point. For more demanding applications [[FPGA]]s may be used.<ref>{{cite web |last=JPFix |title=FPGA-Based Image Processing Accelerator |url=http://www.jpfix.com/About_Us/Articles/FPGA-Based_Image_Processing_Ac/fpga-based_image_processing_ac.html |date=2006 |access-date=2008-05-10}}</ref> For the most demanding applications or high-volume products, [[ASIC]]s might be designed specifically for the application.
 
Parallel implementations of DSP algorithms, utilizing multi-core CPU and many-core GPU architectures, are developed to improve the performances in terms of latency of these algorithms.<ref name=":0">{{Cite book |last1=Kapinchev |first1=Konstantin |last2=Bradu |first2=Adrian |last3=Podoleanu |first3=Adrian |title=2019 13th International Conference on Signal Processing and Communication Systems (ICSPCS) |chapter=Parallel Approaches to Digital Signal Processing Algorithms with Applications in Medical Imaging |date=December 2019 |chapter-url=https://ieeexplore.ieee.org/document/9008720 |pages=1–7 |doi=10.1109/ICSPCS47537.2019.9008720|isbn=978-1-7281-2194-9 |s2cid=211686462 |url=https://kar.kent.ac.uk/80930/1/Kapinchev2019.pdf }}</ref>
 
'''{{vanchor|Native processing}}''' is done by the computer's CPU rather than by DSP or outboard processing, which is done by additional third-party DSP chips located on extension cards or external hardware boxes or racks. Many [[digital audio workstation]]s such as [[Logic Pro]], [[Cubase]], [[Digital Performer]] and [[Pro Tools]] LE use native processing. Others, such as [[Pro Tools]] HD, [[Universal Audio (company)|Universal Audio]]'s UAD-1 and [[TC Electronic]]'s Powercore use DSP processing.
 
== Applications ==
General application areas for DSP include
{{Div col|colwidth=20em}}
*[[Audio signal processing]]
*[[Audio data compression]] e.g. [[MP3]]
*[[Video data compression]]
*[[Computer graphics]]
*[[Digital image processing]]
*[[Photo manipulation]]
*[[Speech processing]]
*[[Speech recognition]]
*[[Data transmission]]
*[[Radar]]
*[[Sonar]]
*[[Financial signal processing]]
*[[Economic forecasting]]
*[[Seismology]]
*[[Biomedicine]]
*[[Weather forecasting]]
{{Div col end}}
 
Specific examples include [[speech coding]] and transmission in digital [[mobile phone]]s, [[room correction]] of sound in [[hi-fi]] and [[sound reinforcement]] applications, analysis and control of [[industrial process]]es, [[medical imaging]] such as [[Computed axial tomography|CAT]] scans and [[MRI]], [[audio crossover]]s and [[equalization (audio)|equalization]], [[digital synthesizer]]s, and audio [[effects unit]]s.<ref>{{cite book |last1=Rabiner |first1=Lawrence R. |author1-link=Lawrence Rabiner |last2=Gold |first2=Bernard |date=1975 |title=Theory and application of digital signal processing |___location=Englewood Cliffs, NJ |publisher=Prentice-Hall, Inc. |isbn=978-0139141010 |url-access=registration |url=https://archive.org/details/theoryapplicatio00rabi }}</ref> DSP has been used in [[hearing aid]] technology since 1996, which allows for automatic directional microphones, complex digital [[noise reduction]], and improved adjustment of the [[frequency response]].<ref>{{Cite journal |last1=Kerckhoff |first1=Jessica |last2=Listenberger |first2=Jennifer |last3=Valente |first3=Michael |date=October 1, 2008 |title=Advances in hearing aid technology |url=https://digitalcommons.wustl.edu/audio_hapubs/28 |journal=Contemporary Issues in Communication Science and Disorders |volume=35 |pages=102–112 |doi=10.1044/cicsd_35_F_102}}</ref>
Digital signal processing is often implemented using [[Digital signal processor|specialised micro processors]] such as the MC56000 and the TMS320. These often process data using [[fixed-point arithmetic]]. For slow applications such as flame scanning, a traditional slower processor such as a microcontroller can cope.
 
== Techniques ==
{{Div col|colwidth=20em}}
* [[Bilinear transform]]
* [[Discrete Fourier transform]]
* [[Discrete-time Fourier transform]]
* [[Filter design]]
* [[Goertzel algorithm]]
* [[Least-squares spectral analysis]]
* [[LTI system theory]]
* [[Minimum phase]]
* [[s-plane]]
* [[Transfer function]]
* [[Z-transform]]
{{Div col end}}
* [[Goertzel algorithm]]
 
== Related fields ==
{{Div col|colwidth=20em}}
* [[Analog signal processing]]
* [[Automatic control]]
* [[Computer Scienceengineering]]
* [[Computer science]]
* [[Data compression]]
* [[Dataflow programming]]
* [[Discrete cosine transform]]
* [[Electrical engineering]]
* [[Fourier analysis]]
* [[Information theory]]
* [[Machine learning]]
* [[Noise, Vibration, and Harshness]]
* [[Real-time computing]]
* [[Seismology|Seismic Data Processing]]
* [[TelecommunicationStream processing]]
* [[Telecommunications]]
* [[Time series]]
* [[Wavelet]]
{{Div col end}}
 
== ReferencesFurther reading ==
{{wikibooks|Digital Signal Processing}}
<div class="references-small">
{{refbegin|30em}}
*[[Alan V Oppenheim|Alan V. Oppenheim]], [[Ronald W Schafer|Ronald W. Schafer]], John R. Buck : ''Discrete-Time Signal Processing'', Prentice Hall, ISBN 0-13-754920-2
*{{cite book | last1 = Ahmed | first1 = Nasir | author-link1 = Nasir Ahmed (engineer) | last2 = Rao | first2 = Kamisetty Ramamohan | title = ICASSP '76. IEEE International Conference on Acoustics, Speech, and Signal Processing | chapter = Orthogonal transforms for digital signal processing | author-link2 = K. R. Rao | date = 1975-08-07 | volume = 1 | pages = 136–140 | publisher = [[Springer Science+Business Media|Springer-Verlag]] | publication-place = New York | doi = 10.1109/ICASSP.1976.1170121 | isbn = 978-3540065562 | lccn = 73018912 | ol = OL22806004M | oclc = 438821458 | s2cid = 10776771 | df = dmy-all}}
*Richard G. Lyons: ''Understanding Digital Signal Processing'', Prentice Hall, ISBN 0-13-108989-7
*[[Jonathan (Y)M. Stein]]Blackledge, Martin Turner: ''Digital Signal Processing: Mathematical and Computational Methods, aSoftware ComputerDevelopment Scienceand PerspectiveApplications'', WileyHorwood Publishing, {{ISBN 0|1-471898563-2954648-9}}
*SenJames MD. Kuo, Woon-Seng GanBroesch: ''Digital Signal Processors: Architectures, Implementations, andProcessing ApplicationsDemystified'', Prentice HallNewnes, {{ISBN 0|1-13878707-03521416-47}}
*{{ cite book | editor-last1 = Yovits | editor-first1 = Marshall C. | last1 = Dyer | first1 = Stephen A. | last2 = Harms | first2 = Brian K. | chapter = Digital Signal Processing | title = Advances in Computers | date = 1993-08-13 | volume = 37 | pages = 59{{hyphen}}118 | publisher = [[Academic Press]] | doi = 10.1016/S0065-2458(08)60403-9 | isbn = 978-0120121373 | issn = 0065-2458 | lccn = 59015761 | chapter-url = https://books.google.com/books?id=vL-bB7GALAwC&pg=PA104 | ol = OL10070096M | oclc = 858439915 | df = dmy-all}}
*Bernard Mulgrew, Peter Grant, John Thompson: ''Digital Signal Processing - Concepts and Applications'', Palgrave Macmillan, ISBN 0-333-96356-3
*Paul M. Embree, Damon Danieli: ''C++ Algorithms for Digital Signal Processing'', Prentice Hall, {{ISBN|0-13-179144-3}}
*Steven W. Smith: ''Digital Signal Processing - A Practical Guide for Engineers and Scientists'', Newnes, ISBN 0-7506-7444-X
*PaulHari A.Krishna Lynn, Wolfgang FuerstGarg: ''Introductory Digital Signal Processing with Computer ApplicationsAlgorithms'', JohnCRC Wiley & SonsPress, {{ISBN |0-4718493-979847178-83}}
*James DP. BroeschGaydecki: ''Foundations Of Digital Signal Processing: Theory, Algorithms And Hardware DemystifiedDesign'', NewnesInstitution of Electrical Engineers, {{ISBN 1|0-87870785296-16431-75}}
*JohnAshfaq G. Proakis, Dimitris ManolakisKhan: ''Digital Signal Processing - PrinciplesFundamentals'', AlgorithmsCharles andRiver Applications'', PearsonMedia, {{ISBN 0|1-1358450-394289281-9}}
*HariSen KrishnaM. GargKuo, Woon-Seng Gan: ''Digital Signal ProcessingProcessors: AlgorithmsArchitectures, Implementations, and Applications'', CRCPrentice PressHall, {{ISBN |0-849313-7178035214-34}}
*PPaul A. GaydeckiLynn, Wolfgang Fuerst: ''Foundations OfIntroductory Digital Signal Processing: Theory,with AlgorithmsComputer And Hardware DesignApplications'', InstitutionJohn ofWiley Electrical& EngineersSons, {{ISBN |0-85296471-43197984-58}}
*PaulRichard MG. Embree, Damon DanieliLyons: ''C++ Algorithms forUnderstanding Digital Signal Processing'', Prentice Hall, {{ISBN |0-13-179144108989-37}}
*AnthonyVijay ZaknichMadisetti, Douglas B. Williams: ''NeuralThe Networks for IntelligentDigital Signal Processing Handbook'', WorldCRC Scientific Pub Co IncPress, {{ISBN 981|0-2388493-3058572-05}}
*Vijay[[James MadisettiH. McClellan]], Douglas[[Ronald BW. WilliamsSchafer]], Mark A. Yoder: ''The Digital Signal Processing HandbookFirst'', CRCPrentice PressHall, {{ISBN |0-849313-8572090999-58}}
*StergiosBernard StergiopoulosMulgrew, Peter Grant, John Thompson: ''AdvancedDigital Signal Processing Handbook: TheoryConcepts and Implementation for Radar, Sonar, and Medical Imaging Real-Time SystemsApplications'', CRCPalgrave PressMacmillan, {{ISBN |0-8493333-369196356-03}}
*JoyceBoaz Van De VegtePorat: ''FundamentalsA ofCourse in Digital Signal Processing'', Prentice HallWiley, {{ISBN |0-13471-01607714961-6}}
*AshfaqJohn KhanG. Proakis, [[Dimitris Manolakis]]: ''Digital Signal Processing: Principles, Algorithms and FundamentalsApplications'', Charles4th Rivered, MediaPearson, ISBNApril 1-58450-2812006, {{ISBN|978-90131873742}}
*John G. Proakis: ''A Self-Study Guide for Digital Signal Processing'', Prentice Hall, {{ISBN|0-13-143239-7}}
*Jonathan M. Blackledge, Martin Turner: ''Digital Signal Processing: Mathematical and Computational Methods, Software Development and Applications'', Horwood Publishing, ISBN 1-898563-48-9
*Charles A. Schuler: ''Digital Signal Processing: A Hands-On Approach'', McGraw-Hill, {{ISBN|0-07-829744-3}}
*Bimal Krishna, K. Y. Lin, Hari C. Krishna: ''Computational Number Theory & Digital Signal Processing'', CRC Press, ISBN 0-8493-7177-5
*Doug Smith: ''Digital Signal Processing Technology: Essentials of the Communications Revolution'', American Radio Relay League, {{ISBN |0-87259-819-5}}
*{{cite book|url=http://www.dspguide.com|title=Digital Signal Processing: A Practical Guide for Engineers and Scientists|last=Smith|first=Steven W.|date=2002|publisher=Newnes|isbn=0-7506-7444-X}}
*Henrique S. Malvar: ''Signal Processing with Lapped Transforms'', Artech House Publishers, ISBN 0-89006-467-9
*Charles{{cite A.book|title Schuler: ''=Digital Signal Processing:, Aa Hands-OnComputer Approach'',Science McGrawPerspective|last =Stein|first =Jonathan Yaakov|date =2000-Hill,10-09|publisher ISBN=Wiley|isbn =0-07471-82974429546-39}}
*{{cite book|title =Advanced Signal Processing Handbook: Theory and Implementation for Radar, Sonar, and Medical Imaging Real-Time Systems|last =Stergiopoulos|first =Stergios|date =2000|publisher =CRC Press|isbn =0-8493-3691-0}}
*[[James H. McClellan]], [[Ronald W Schafer|Ronald W. Schafer]], Mark A. Yoder: ''Signal Processing First'', Prentice Hall, ISBN 0-13-090999-8
*{{cite book|title =Fundamentals of Digital Signal Processing|last =Van De Vegte|first =Joyce|date =2001|publisher =Prentice Hall|isbn =0-13-016077-6}}
*Artur Krukowski, Izzet Kale: ''DSP System Design: Complexity Reduced Iir Filter Implementation for Practical Applications'', Kluwer Academic Publishers, ISBN 1-4020-7558-8
*{{Cite book|title =Discrete-Time Signal Processing|last1=Oppenheim|first1=Alan V.|last2=Schafer|first2=Ronald W.|publisher=Pearson|year=2001|isbn=1-292-02572-7}}
*John G. Proakis: ''A Self-Study Guide for Digital Signal Processing'', Prentice Hall, ISBN 0-13-143239-7
*Hayes, Monson H. Statistical digital signal processing and modeling. John Wiley & Sons, 2009. (with [https://www.mathworks.com/matlabcentral/fileexchange/2183-statistical-digital-signal-processing-and-modeling?s_tid=prof_contriblnk MATLAB scripts])
</div>
{{refend}}
 
==External linksReferences==
{{Reflist}}
*{{dmoz|Science/Technology/Electronics/Signal_Processing/Digital_Signal_Processing_-_DSP/|Digital Signal Processing}}
* [http://dspwiki.com/ DSPwiki.com] A Wiki dedicated to DSP and Synthesis.
*[[wikibooks:Digital Signal Processing|Digital Signal Processing Wikibook]]
 
{{Digital systems}}
{{DSP}}
 
{{Authority control}}
[[Category:Digital electronics]]
[[Category:Digital signal processing|*]]
 
[[da{{DEFAULTSORT:Digital signalbehandling]]Signal Processing}}
[[Category:Digital signal processing| ]]
[[de:Digitale Signalverarbeitung]]
[[Category:Digital electronics]]
[[es:Procesamiento digital de señales]]
[[Category:Computer engineering]]
[[fr:Traitement numérique du signal]]
[[Category:Telecommunication theory]]
[[it:Elaborazione numerica dei segnali]]
[[Category:Radar signal processing]]
[[he:עיבוד אותות דיגיטלי]]
[[hu:Digitális jelfeldolgozás]]
[[ms:Pemprosesan isyarat digital]]
[[ja:デジタル信号処理]]
[[nn:Digital signalhandsaming]]
[[pl:Cyfrowe przetwarzanie sygnałów]]
[[ru:Цифровая обработка сигналов]]
[[sl:Digitalno procesiranje signalov]]
[[fi:Digitaalinen signaalinkäsittely]]
[[sv:DSP-processor]]
[[th:การประมวลผลสัญญาณดิจิทัล]]
[[zh:数字信号处理]]