etin algorithms in signal processors
play

ETIN Algorithms in Signal Processors Projects Tekn.Dr. Mikael - PowerPoint PPT Presentation

ETIN Algorithms in Signal Processors Projects Tekn.Dr. Mikael Swartling Lund Institute of Technology Department of Electrical and Information Technology Projects Some suggested projects. Speech recognition. Speech synthesis.


  1. ETIN  — Algorithms in Signal Processors Projects Tekn.Dr. Mikael Swartling Lund Institute of Technology Department of Electrical and Information Technology

  2. Projects Some suggested projects. ◮ Speech recognition. ◮ Speech synthesis. ◮ Speech separation. ◮ Adaptive line enhancer. ◮ Adaptive echo canceller. ◮ Adaptive gain controller. ◮ Digital communication. ◮ Beat detection. ◮ Instrument e ff ects.

  3. O ffl ine vs. Realtime Processing O ffl ine processing in Matlab has some advantages. ◮ Non-causal or anti-causal filtering. ◮ Unlimited memory and processing resources. ◮ The entire signal is available at all times. Realtime considerations. ◮ Limited memory and processing resources. ◮ The algorithm must run faster than the sample time. ◮ Sample based processing when delay must be minimised. ◮ Block processing can reduce the e ff ective processing time.

  4. Block Processing Process in blocks rather than individual samples. ◮ Wait for N samples before processing. ◮ Process all N samples at the same time. ◮ The supplied framework provides block processing. x ( n ) → → y ( n )

  5. Block Processing Process in blocks rather than individual samples. ◮ Wait for N samples before processing. ◮ Process all N samples at the same time. ◮ The supplied framework provides block processing. x ( n ) → → y ( n )

  6. Block Processing Process in blocks rather than individual samples. See the function buffer in Matlab for block processing. ◮ xb = buffer(x, n) function myproject x = audioread(’input.wav ’); xb = buffer(x, 320); [M, N] = size(xb); yb = zeros(M, N); for n = 1:N yb(:, n) = process(xb(:, n)); end y = yb (:); end function y = process(x) ... end

  7. Recursive Averaging Sometimes long-time averaging is required. ◮ Low memory prevents long bu ff ers for linear averaging. N − 1 P ( n ) = 1 � x ( n − k ) 2 N k =0 ◮ Recursive averaging allows averaging without memory. P ( n ) = αP ( n − 1) + (1 − α ) x ( n ) 2

  8. Linear Prediction The  -step forward linear prediction filter. ◮ Wiener problem with analytical or adaptive solutions. ◮ The filter describes deterministic properties of the signal. ◮ Common in speech processing. ◮ Describes formants or acoustic resonance . ◮ Filter a is normalized and pitch-independent. x ( n ) y ( n ) d ( n ) z − 1 + e ( n ) a −

  9. Speech Modeling Formants and stationarity. ◮ Formants show up as lines over time. ◮ Stationary over roughly  ms for speech. 4000 3500 3000 2500 2000 1500 1000 500 0 0.5 1 1.5 2 2.5 3

  10. Speech Recognition Recognize spoken words from a pre-defined database. ◮ Frame the signal into blocks. ◮ Calculate the prediction filter. ◮ Compare the LP coe ffi cients to a database. Pre-emph. Framing x ( n ) LPC v k

  11. Speech Synthesis Transform speech into a robotic voice. ◮ Frame the signal into blocks. ◮ Calculate the prediction filter. ◮ Calculate the pitch from the error signal. ◮ Construct a new excitation signal for di ff erent e ff ects. ◮ Filter with the inverse of the prediction filter. a − 1 x ( n ) e ( n ) e ′ ( n ) x ′ ( n ) a

  12. Speech Synthesis Linear prediction analysis. Input signal and error signal. 1 0.2 0.8 0.15 0.6 0.1 0.4 0.05 0.2 0 0 -0.2 -0.05 -0.4 -0.1 -0.6 -0.15 -0.8 -1 -0.2 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08

  13. Speech Synthesis Linear prediction synthesis. Synthetic error signal and reconstructed output signal. 0.2 1 0.8 0.15 0.6 0.1 0.4 0.05 0.2 0 0 -0.2 -0.05 -0.4 -0.1 -0.6 -0.15 -0.8 -0.2 -1 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08

  14. Speech Separation Separate two simultaneous speech sources. ◮ Speech excite narrow frequency bands at short times. ◮ Di ff erent speech sources rarely overlap. ◮ Separate di ff erent sources with selective masking.  X ( ω,τ ) if source n is active in ( ω,τ ),   Y n ( ω,τ ) =   0 otherwise.  

  15. Adaptive Line Enhancer Remove tonal components from a signal. ◮ Delays a signal and attempt to predict it. ◮ Extract uncorrelated components such as speech. ◮ Suppress correlated components such as tonal sounds. s ( n ) d ( n ) y ( n ) − z − D + w ∆ w e ( n ) x ( n ) LMS

  16. Adaptive Echo Cancellation Remove echo form a signal. ◮ Identify the far-end to near-end channel. ◮ Extract near-end speech. ◮ Suppress far-end speech or disturbance. x ( n ) ∆ w LMS H w y ( n ) − d ( n ) e ( n ) +

  17. Adaptive Gain Controller Adjusts a gain to compress or expand the signal. ◮ Suppress high signal levels. ◮ Pass normal signal levels. ◮ Suppress background noise levels. � ( · ) 2 AGC x ( n ) y ( n )

  18. Digital Communication Transmit digital information using modulation. ◮ Implement a transmitter and a receiver structure. ◮ Decide on modulation method and parameters: ◮ PSK, FSK, UWB modulation format. ◮ Communication protocol. ◮ Message length and synchronization. ◮ Error correction. x ( n ) y ( n ) y ′ ( n ) x ( n ) ˆ TX RX

  19. Beat Detection Find beats in music. ◮ Beats in a music dictates its rhythm. ◮ Mixing of music relies on beat matching. 1 0.5 0 -0.5 -1 0 0.5 1 1.5 2 2.5 3 3.5 4 0.25 0.2 0.15 0.1 0.05 0 0.5 1 1.5 2 2.5 3 3.5 4

  20. Instrument E ff ects Bank of audio e ff ects for instruments. Time based e ff ects. ◮ Delay, echo, reverb. Modulation based e ff ects. ◮ Chorus, flanger, ring modulator, tremolo. g ( n ) z − f ( n ) x ( n ) + y ( n )

  21. Your own project Or choose your own project... ◮ Base on your own personal interest or field of research. ◮ Project details and focus can be adapted as necessary.

Recommend


More recommend