Voice Recognition 2 Question
1 view (last 30 days)
Show older comments
I have found a code in voice recognition. http://crunchmodo.com/digital-signal-processing-voice-recognition-in-matlab-source-code/
1.-what does the y axis and x axis represent? Does y represent the value of data and x the number of samples? 2.-why does he use abs? to make the signal positive? if yes why he want to make it positive? it is more efficient to compare two sound file in positive value?
0 Comments
Answers (2)
Walter Roberson
on 26 Jan 2014
X represents the number of samples. The Y is the intensity at that sample number.
What does class(usertemp) show after you run the code? If it shows anything other than 'uint8' then the intensities returned by wavrecord() are both positive and negative and abs() should not be used. If it is 'uint8' then the intensities returned are only positive and the abs() does not change anything. I would therefore remove the abs() for both the wavread() and wavrecord(). The comment about cropping to the part that contains speech is incorrect.
0 Comments
JOJO
on 26 Jan 2014
Edited: JOJO
on 26 Jan 2014
1 Comment
Walter Roberson
on 26 Jan 2014
The data being read is the distance above or below the middle intensity unless you are using uint8. Quiet sounds are below the middle intensity. abs() on the data is not going to clip the data (like the comment says), it is going to transform the very quiet data to look like it is very loud data, which is going to give you a very misleading idea of the sound.
It is not more efficient to compare tw0 sounds by only considering the positive values: it will be more inaccurate. And it will sound wrong when you play it.
See Also
Categories
Find more on Speech Recognition in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!