Ich habe eine Datenbank, die ein Videostreaming enthält. Ich möchte die LBP-Funktionen aus Bildern und MFCC-Audio berechnen und für jedes Bild im Video habe ich eine Anmerkung. Die Anmerkung ist mit den Video-Frames und der Uhrzeit des Videos verknüpft. Daher möchte ich die Zeit, die ich von der Annotation habe, dem Ergebnis des mfcc zuordnen. Ich weiß, dass die sample_rate = 44100Python-Implementierung von MFCC-Algorithmus
from python_speech_features import mfcc
from python_speech_features import logfbank
import scipy.io.wavfile as wav
audio_file = "sample.wav"
(rate,sig) = wav.read(audio_file)
mfcc_feat = mfcc(sig,rate)
print len(sig) //2130912
print len(mfcc_feat) // 4831
Erstens, warum das Ergebnis der Länge des mfcc ist 4831, und wie diese in der Anmerkung zur Karte, die ich in Sekunden habe? Die Gesamtdauer des Videos beträgt 48 Sekunden. Und die Anmerkung des Videos ist überall 0 außer den 19-29sec Fenstern wo ist 1. Wie kann ich die Proben innerhalb des Fensters (19-29) von den Ergebnissen des mfcc lokalisieren?
Nur ein Kommentar: Librosa verschiedene Merkmalsextraktion Methoden hat. Es kann Ihrer Arbeit helfen. https://github.com/librosa/librosa/blob/master/examples/LibROSA%20demo.ipynb – dkato