How to extract specific MFCC from .wav files?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
When I use the "audioFeatureExtractor" to extract MFCC, since there are 13 MFCC features, I am not sure how to use the setExtractorParams function to pick specific MFCC features? For example, MFCC 1, 4 , 6, and 11.
aFE = audioFeatureExtractor("SampleRate",fs, ...
"mfcc",true);
idx = info(aFE) % output below.
setExtractorParams(aFE,"mfcc",) % not sure how to pick the MFCC features. I don't need all of them.
idx = struct with fields:
mfcc: [1 2 3 4 5 6 7 8 9 10 11 12 13]
0 commentaires
Réponse acceptée
jibrahim
le 7 Nov 2019
Hi Ibrahim,
Here you go:
setExtractorParams(aFE,"mfcc","NumCoeffs",11)
2 commentaires
jibrahim
le 17 Déc 2020
Sorry, let me clarify.
You use setExtractorParams to set the number of MFCC coefficients to compute. NumCoeffs is a scalar value. This function does not enable you to "pick" specific coefficients But that is easy to do by simply indexing into the output of the audioFeatureExtractor.
[audioIn,fs] = audioread('speech_dft.wav');
aFE = audioFeatureExtractor("SampleRate",fs, ...
"mfcc",true);
% Set the max number of mfccs to compute
setExtractorParams(aFE,"mfcc","NumCoeffs",11)
features = extract(aFE,audioIn);
% Extract the coefficients you are interested in
mfccs = features(:,[1 4 6 11])
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Measurements and Spatial Audio dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!