Sound processing dividing words

4 Ansichten (letzte 30 Tage)
Leon Ellis
Leon Ellis am 13 Sep. 2021
Kommentiert: Star Strider am 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.

Akzeptierte Antwort

Image Analyst
Image Analyst am 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 Kommentare
Leon Ellis
Leon Ellis am 14 Sep. 2021
I cannot thank you enough, I had to just change the elements used to determine words with 1 syllable and 2. This was a great solution and work perfectly! I will change it up quite a bit but the concept will stay the same. Thank you very very much!
Star Strider
Star Strider am 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.
.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by