MATLAB Answers

Sound processing dividing words

2 views (last 30 days)
Leon Ellis
Leon Ellis on 13 Sep 2021
Commented: Star Strider on 14 Sep 2021
Good day, I'm audioreading a audio file with words said seperately, I.G, "One, two, three, four, five, six" till twenty. I plotted it and used the movemax() function to obtain a better idea of where the words start and end. The problem however is, to determine the starting point and ending point of each word. Everything I've tried fails and it's this task is due for tommorrow. Some of the words such as "six-teen" has two syllables and shouldn't have 2 start and ending points. This is what I have:
You can see the later words have 2 syllables and this is what makes most my ideas fail. I want to then use these startpoints and endpoints to plot word alone. (I've already made this function). Help would be extremely appreciated!! I really don't have much time left for this project and still have many others.

Accepted Answer

Image Analyst
Image Analyst on 13 Sep 2021
You can do this easily for well separated words (that have silence between them) by thresholding.
mask = y > 0.01; % Whatever. It's a word if the amplitude is higher than 0.01
% Don't include "words" less than 5 elements long (or whatever you want);
mask = bwareaopen(mask, 5);
% Label each word with a unique identifying number ("label").
[labeledSignal, numWords] = bwlabel(mask);
% Extract each word
for k = 1 : numWords
indexes = ismember(labeledSignal, k)
thisWord = y(indexes);
% Do whatever you want with thisWord.
end
  6 Comments
Star Strider
Star Strider on 14 Sep 2021
My impression is that this is a homework assignment:
Everything I've tried fails and it's this task is due for tommorrow.
I really don't have much time left for this project and still have many others.
I decided to propose a solution to the problem of separating the words, since a complete solution would not be in the long-term best interests of the OP, and leave the rest. I’ve deleted my Answer.
.

Sign in to comment.

More Answers (0)

Products


Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!