मैं बिट्स और टुकड़े ऑनलाइन पढ़ रहा हूं, लेकिन मैं अभी यह सब एक साथ नहीं कर सकता। मुझे संकेतों / डीएसपी सामानों की कुछ पृष्ठभूमि ज्ञान है जो इसके लिए पर्याप्त आवश्यक शर्तें होनी चाहिए। मैं अंततः इस एल्गोरिथ्म को जावा में कोडिंग में दिलचस्पी रखता हूं, लेकिन मैं इसे अभी तक पूरी तरह से समझ नहीं पाया हूं कि मैं यहां क्यों हूं (यह गणित के रूप में गिना जाता है?)।
यहाँ मुझे लगता है कि यह मेरी जानकारी के अंतराल के साथ कैसे काम करता है।
अपने ऑडियो भाषण नमूने के साथ शुरू करें, एक .wav फ़ाइल कहें, जिसे आप एक सरणी में पढ़ सकते हैं। इस सरणी कॉल , जहां से पर्वतमाला (ताकि नमूने)। मान ऑडियो की तीव्रता के अनुरूप हैं जो मुझे लगता है - आयाम।एन ० , १ , … , एन - १ एन
ऑडियो सिग्नल को 10ms के अलग-अलग "फ्रेम" में विभाजित करें या जहां आप भाषण सिग्नल को "स्थिर" मानते हैं। यह परिमाणीकरण का एक रूप है। इसलिए यदि आपकी नमूना दर 44.1KHz है, तो 10ms 441 नमूनों के बराबर है, या मान हैं ।
एक फूरियर रूपांतरण (गणना के लिए एफएफटी) करें। अब यह पूरे सिग्नल पर या प्रत्येक अलग फ्रेम पर किया जाता है ? मुझे लगता है कि एक अंतर है क्योंकि सामान्य रूप से फूरियर ट्रांसफॉर्म एक सिग्नल के सभी तत्वों को देखता है, इसलिए साथ शामिल हो गया। साथ शामिल हो गए जहां छोटे फ्रेम हैं। वैसे भी, हम कहते हैं कि हम कुछ FFT करते हैं और बाकी के लिए साथ समाप्त होते हैं ।एफ ( एक्स [ एन ] ) ≠ एफ ( एक्स 1 [ एन ] ) एफ ( एक्स 2 [ एन ] ) ... एफ ( एक्स एन [ एन ] ) x मैं [ एन ] एक्स [ कश्मीर ]
मेल पैमाने पर मैपिंग, और लॉगिंग। मुझे पता है कि नियमित आवृत्ति संख्याओं को मेल स्केल में कैसे बदला जाए। प्रत्येक के लिए के : ( "X- अक्ष 'अगर तुम मुझे अनुमति देंगे), आप सूत्र यहाँ कर सकते हैं http://en.wikipedia.org/wiki/Mel_scale । लेकिन कैसे "y- मान" या के आयाम के बारे में ? क्या वे केवल एक ही मान बने रहते हैं लेकिन नए मेल (x-) अक्ष पर उपयुक्त स्थानों पर स्थानांतरित हो जाते हैं? मैंने कुछ कागजों में देखा कि के वास्तविक मूल्यों को लॉग करने के बारे में कुछ था क्योंकि अगर जहां उन संकेतों में से एक को शोर होने के लिए माना जाता है जो आप नहीं चाहते हैं , इस समीकरण पर लॉग ऑपरेशन गुणात्मक शोर को additive शोर में बदल देता है, जो उम्मीद है कि फ़िल्टर किया जा सकता है (?)।
अब अंतिम चरण ऊपर से अपने संशोधित का डीसीटी लेना है (हालांकि यह संशोधित हो रहा है)। फिर आप इस अंतिम परिणाम के आयाम लेते हैं और वे आपके एमएफसीसी हैं। मैं उच्च आवृत्ति मूल्यों को दूर फेंकने के बारे में कुछ पढ़ता हूं।
तो मैं वास्तव में लोहे की कोशिश कर रहा हूं कि कैसे इन लोगों को कदम से गणना करें, और स्पष्ट रूप से कुछ चीजें मुझे ऊपर से हटा रही हैं।
इसके अलावा, मैंने "फिल्टर बैंकों" (मूल रूप से बैंड पास फिल्टर की एक सरणी) का उपयोग करने के बारे में सुना है और यह नहीं जानता कि क्या यह मूल सिग्नल से फ्रेम बनाने के लिए संदर्भित करता है, या शायद आप एफएफटी के बाद फ्रेम बनाते हैं?
अंत में, वहाँ कुछ मैं MFCC 13 गुणांक होने के बारे में देखा है?