Friday, 28 April 2017

Basic operation on DSP PROCESSOR

Basic operations on DSP processor

The operations were performed on a DSP Processor(TMS320F28335). The TI Code Composer Studio(CCS) was used for programming the DSP processor.The various operations carried out were Arithmetic Operations which included Addition Subtraction Multiply Divide, Logical Operations like And and Not and Shifting Operations like Logical Shift Left, Logical Shift Right, Rotate Right, Rotate Left.

Wednesday, 26 April 2017

Signal Processing Application

ERROR CORRECTION IN SPEECH RECOGNITION


PATENT REVIEW:
Patent name: Error Correction in Speech Recognition

Inventors: Daniell Stevens; Robert Roth, Joel M. Gould, Michael J. Newman, Dean Sturtevant, Charles E. Ingold, David Abrahams, Allan Gold

Patent Number : US 7,315,818 B2
Patent Date: Jan. 1, 2008

Review:

In this patent, new techniques and system for error correction in speech recognition have been discussed. These techniques can be implemented in a standard desktop environment, or a mobile environment, which are suitable for receiving and processing speech. As explained in the patent, a method of correcting error includes performing speech recognition on the utterance to produce recognition result and producing a list of words for the recognised word. There are several levels of correction and each level has a different time duration. The grammar of the received text can also be checked and corrected.

Patent link : Error Correction in Speech Recognition 

PAPER REVIEW:
Paper Name : Speech Recognition Error Correction by using Combinational Measures

Authors: Baoxiang Li, Fengxiang Chang, Jun Guo, Gang Liu

Review:

This paper has put forth the idea of post processing technique for correcting misrecognition results from a continuous speech recogniser. The proposed idea is based on Word Activation Force (WAF) mode. This model has the ability to correct syntactic and semantic errors by considering neighbours' information. The error correction algorithm corrects recognition errors by creating a candidate list. Then elimination of words based on some criterion reduces the number of possibilities. Then a word is chosen.

Paper link: Speech recognition error correction  

Sunday, 23 April 2017

FIR Filter Design using Frequency Sampling Method

This is another way to design linear phase FIR filters. The method to find desired frequency response is identical to that of windowing method. After getting the desired frequency response, it is sampled in frequency domain. After this, its inverse is calculated which gives the filter response. In lab, Scilab was used to get filter response. Formulae for DFT and IDFT were used in the code and on putting the filter parameters as input, the filter response was plotted. 

FIR Filter Design using Windowing Method

The IIR filters correspond to infinite impulse response. FIR filters have finite impulse response i. e. length of h[n] is finite. In windowing method, To obtain desired h[n], IDTFT of desired frequency response is calculated. But this desired h[n] has infinite samples. To obtain finite h[n], window functions are used. Selection of window function depends on  parameter As. On putting the values of As, Ap, fs, and fp in the code, the appropriate window function was selected and order was calculated.

Chebyshev Filter Design

In Chebyshev filter response, ripples are seen either in stop band or in pass band. Chebyshev filter has two types:a] Chebyshev 1 which implies ripples in PB and monolithic in SB. b] Chebyshev 2 which implies ripples in SB and monolithic in PB. Order of the Chebyshev filter can be calculated using the number of ripples in its response. The difference in the code of Butterworth filter and Chebyshev filter is the formula used for calculating the parameters of analog filter. Remaining processes of design are identical. 

Butterworth Filter Design

IIR filters were designed using Scilab. The first type of IIR filter is Butterworth filter. Its response has no ripple in passband and stopband. BLT method was used to design the filter. By putting the values of required parameters As, Ap,Ws,Wp and sampling frequency, both high pass and low pass filters were designed. As BLT method is used, frequency bands are compressed in digital filters.

Wednesday, 15 March 2017

Overlap Add Method and Overlap Save Method

Overlap Add Method and Overlap Save Method

This experiment focussed on filtering of a long input data sequence. Overlap Add and Overlap Save methods are block processing techniques. These methods are used to decrease the delay in obtaining the output for real time signals.
These methods decompose the input signal into smaller blocks of finite length. Overlap Add method performs Linear Convolution on the blocks of data using FFT. The overlapped values are added to obtain the output signal. Overlap Save Method performs Circular Convolution on the blocks of data using FFT. The overlapped values are not taken.   

Fast Fourier Transform

Fast Fourier Transform

The result of Fast fourier transform of a signal is same as that of discrete fourier transform of the same input signal. But, the computational part is reduced in FFT as it uses Cooley and Tuckey's algorithm to compute the result. The algorithm used in FFT computation divides the N point sequence in 2 sequences : even and odd. Thus decomposition reduces calculations.
In this experiment, FFT of 4 point and 8 point sequence was calculated using DITFFT. The comparison of number of real and complex additions and multiplications required for FFT and DFT showed that FFT required less calculations due to parallel processing.

Discrete Fourier Transform

Discrete Fourier Transform

Using DFT, discrete time data is converted into a discrete frequency representation. The experiment focussed on finding the DFT of input signal x[n]. In the first case, the input signal was a N point sequence, so the output of DFT was also a N point sequence. In the second case, the length of input signal was increased by zero padding. The result showed that, frequency spacing for output signal decreased. As a result, approximation error decreased.
DFT gives an approximate spectrum and is computationally slow.

Convolution and Correlation

Convolution and Correlation

Convolution

This experiment focussed on calculating the linear convolution, circular convolution and linear convolution using circular convolution of an input signal x[n] with the impulse response h[n] and storing the output in y[n].
For linear convolution, the length of output signal is (N = L+M-1) where L is length of x[n] and M is length of h[n].
For circular convolution, the length of output signal is N = Max(L,M) where L and M have same meaning as above.
For linear convolution using circular convolution, the length of output signal is (N>= L+M-1).
Convolution finds its application in design and implementation of finite impulse response filters and image processing.

Correlation

Correlation is used to find the degree of similarity between two input signals.
This experiment focussed on calculating auto-correlation and cross correlation of two input signals.
If a signal is correlated with itself, the resulting signal is called an Auto-correlated signal. This was the first case. The results showed that autocorrelation signal is an even signal. The value of autocorrelated signal at n=0 gives the energy of the signal. The second case was auto-correlation of a delayed input signal. The result showed that auto-correlation of delayed input signal is same as autocorrelation of original input signal. The third case was cross-correlation of two signals.