2012-01-04 9 views
6

का उपयोग कर डिक्टेशन एप्लिकेशन मेरी आवश्यकताओं this question के समान हैं क्योंकि प्रश्न अब 3 साल का है, मैं अपने लिए विशिष्ट जानकारी के साथ प्रश्न दोबारा पोस्ट कर रहा हूं, मैं एक ऐसा एप्लिकेशन बनाना चाहता हूं जो एक .wav (या कोई अन्य मानक ऑडियो फ़ाइल प्रारूप) और इसे पाठ में परिवर्तित करता है।स्पिंक्स 4

भाषण मान्यता के लिए मैंने स्फिंक्स 4 का उपयोग करने का निर्णय लिया है, मैं स्फिंक्स के साथ प्रदान किए गए ट्रांसक्रिप्बर डेमो को बढ़ाने की कोशिश कर रहा हूं। यह अच्छा है लेकिन यह केवल एक विशिष्ट व्याकरण के लिए काम करता है (.gram और .gxml फ़ाइलों में लिखा गया है)।

EDIT अंग्रेज़ी के साथ इसका उपयोग करने में सक्षम होने के लिए? मैं इसे VoxForge_en_0.4 से कॉन्फ़िगर करने का प्रयास कर रहा हूं। मेरी config.XML फ़ाइल इस तरह दिखती है: -

<?xml version="1.0" encoding="UTF-8"?> 

<!-- 
    Sphinx-4 Configuration file 
--> 

<!-- ******************************************************** --> 
<!-- biship configuration file        --> 
<!-- ******************************************************** --> 

<config>   

    <!-- ******************************************************** --> 
    <!-- frequently tuned properties        --> 
    <!-- ******************************************************** --> 
    <property name="absoluteBeamWidth" value="500"/> 
    <property name="relativeBeamWidth" value="1E-80"/> 
    <property name="absoluteWordBeamWidth" value="20"/> 
    <property name="relativeWordBeamWidth" value="1E-60"/> 
    <property name="wordInsertionProbability" value="1E-16"/> 
    <property name="languageWeight" value="7.0"/> 
    <property name="silenceInsertionProbability" value=".1"/> 
    <property name="frontend" value="epFrontEnd"/> 
    <property name="recognizer" value="recognizer"/> 
    <property name="showCreations" value="false"/> 


    <!-- ******************************************************** --> 
    <!-- word recognizer configuration       --> 
    <!-- ******************************************************** --> 

    <component name="recognizer" 
          type="edu.cmu.sphinx.recognizer.Recognizer"> 
     <property name="decoder" value="decoder"/> 
     <propertylist name="monitors"> 
      <item>accuracyTracker </item> 
      <item>speedTracker </item> 
      <item>memoryTracker </item> 
      <item>recognizerMonitor </item> 
     </propertylist> 
    </component> 

    <!-- ******************************************************** --> 
    <!-- The Decoder configuration        --> 
    <!-- ******************************************************** --> 

    <component name="decoder" type="edu.cmu.sphinx.decoder.Decoder"> 
     <property name="searchManager" value="wordPruningSearchManager"/> 
     <property name="featureBlockSize" value="50"/> 
    </component> 

    <!-- ******************************************************** --> 
    <!-- The Search Manager          --> 
    <!-- ******************************************************** --> 

    <component name="wordPruningSearchManager" 
    type="edu.cmu.sphinx.decoder.search.WordPruningBreadthFirstSearchManager"> 
     <property name="logMath" value="logMath"/> 
     <property name="linguist" value="lexTreeLinguist"/> 
     <property name="pruner" value="trivialPruner"/> 
     <property name="scorer" value="threadedScorer"/> 
     <property name="activeListManager" value="activeListManager"/> 
     <property name="growSkipInterval" value="0"/> 
     <property name="checkStateOrder" value="false"/> 
     <property name="buildWordLattice" value="true"/> 
     <property name="acousticLookaheadFrames" value="1.7"/> 
     <property name="relativeBeamWidth" value="${relativeBeamWidth}"/> 
    </component> 


    <!-- ******************************************************** --> 
    <!-- The Active Lists           --> 
    <!-- ******************************************************** --> 

    <component name="activeListManager" 
      type="edu.cmu.sphinx.decoder.search.SimpleActiveListManager"> 
     <propertylist name="activeListFactories"> 
      <item>standardActiveListFactory</item> 
      <item>wordActiveListFactory</item> 
      <item>wordActiveListFactory</item> 
      <item>standardActiveListFactory</item> 
      <item>standardActiveListFactory</item> 
      <item>standardActiveListFactory</item> 
     </propertylist> 
    </component> 

    <component name="standardActiveListFactory" 
      type="edu.cmu.sphinx.decoder.search.PartitionActiveListFactory"> 
     <property name="logMath" value="logMath"/> 
     <property name="absoluteBeamWidth" value="${absoluteBeamWidth}"/> 
     <property name="relativeBeamWidth" value="${relativeBeamWidth}"/> 
    </component> 

    <component name="wordActiveListFactory" 
      type="edu.cmu.sphinx.decoder.search.PartitionActiveListFactory"> 
     <property name="logMath" value="logMath"/> 
     <property name="absoluteBeamWidth" value="${absoluteWordBeamWidth}"/> 
     <property name="relativeBeamWidth" value="${relativeWordBeamWidth}"/> 
    </component> 

    <!-- ******************************************************** --> 
    <!-- The Pruner            --> 
    <!-- ******************************************************** --> 
    <component name="trivialPruner" 
       type="edu.cmu.sphinx.decoder.pruner.SimplePruner"/> 

    <!-- ******************************************************** --> 
    <!-- TheScorer            --> 
    <!-- ******************************************************** --> 
    <component name="threadedScorer" 
       type="edu.cmu.sphinx.decoder.scorer.ThreadedAcousticScorer"> 
     <property name="frontend" value="${frontend}"/> 
    </component> 

    <!-- ******************************************************** --> 
    <!-- The linguist configuration        --> 
    <!-- ******************************************************** --> 

    <component name="lexTreeLinguist" 
       type="edu.cmu.sphinx.linguist.lextree.LexTreeLinguist"> 
     <property name="logMath" value="logMath"/> 
     <property name="acousticModel" value="wsj"/> 
     <property name="languageModel" value="trigramModel"/> 
     <property name="dictionary" value="dictionary"/> 
     <property name="addFillerWords" value="false"/> 
     <property name="fillerInsertionProbability" value="1E-10"/> 
     <property name="generateUnitStates" value="false"/> 
     <property name="wantUnigramSmear" value="true"/> 
     <property name="unigramSmearWeight" value="1"/> 
     <property name="wordInsertionProbability" 
       value="${wordInsertionProbability}"/> 
     <property name="silenceInsertionProbability" 
       value="${silenceInsertionProbability}"/> 
     <property name="languageWeight" value="${languageWeight}"/> 
     <property name="unitManager" value="unitManager"/> 
    </component>  


    <!-- ******************************************************** --> 
    <!-- The Dictionary configuration       --> 
    <!-- ******************************************************** --> 
    <component name="dictionary" 
     type="edu.cmu.sphinx.linguist.dictionary.FastDictionary"> 
     <property name="dictionaryPath" 
        value="file:src/voxforge-en-0.4/etc/cmudict.0.7a"/> 
     <property name="fillerPath" 
       value="file:src/voxforge-en-0.4/model_parameters/voxforge_en_sphinx.cd_cont_5000/noisedict"/> 
     <property name="addSilEndingPronunciation" value="false"/> 
     <property name="wordReplacement" value="&lt;sil&gt;"/> 
     <property name="unitManager" value="unitManager"/> 
    </component> 


    <!-- ******************************************************** --> 
    <!-- The Language Model configuration       --> 
    <!-- ******************************************************** --> 
    <component name="trigramModel" 
      type="edu.cmu.sphinx.linguist.language.ngram.large.LargeTrigramModel"> 
     <property name="unigramWeight" value=".5"/> 
     <property name="maxDepth" value="3"/> 
     <property name="logMath" value="logMath"/> 
     <property name="dictionary" value="dictionary"/> 
     <property name="location" value="file:src/voxforge-en-0.4/wsj5k.DMP"/> 
<!--  <property name="location" value="file:src/voxforge-Language/language_model.arpaformat.DMP"/>--> 
    </component> 


    <!-- ******************************************************** --> 
    <!-- The acoustic model configuration       --> 
    <!-- ******************************************************** --> 
    <component name="wsj" 
       type="edu.cmu.sphinx.linguist.acoustic.tiedstate.TiedStateAcousticModel"> 
     <property name="loader" value="wsjLoader"/> 
     <property name="unitManager" value="unitManager"/> 
    </component> 

    <component name="wsjLoader" type="edu.cmu.sphinx.linguist.acoustic.tiedstate.Sphinx3Loader"> 
     <property name="logMath" value="logMath"/> 
     <property name="unitManager" value="unitManager"/> 
<!--  <property name="location" value="file:src/hub4opensrc.cd_continuous_8gau"/>--> 
     <property name="location" value="file:src/voxforge-en-0.4/model_parameters/voxforge_en_sphinx.cd_cont_5000" /> 
     <property name="dataLocation" value=""/> 
    </component> 

    <!-- ******************************************************** --> 
    <!-- The unit manager configuration       --> 
    <!-- ******************************************************** --> 

    <component name="unitManager" 
     type="edu.cmu.sphinx.linguist.acoustic.UnitManager"/> 


    <!-- ******************************************************** --> 
    <!-- The frontend configuration        --> 
    <!-- ******************************************************** --> 

    <component name="epFrontEnd" type="edu.cmu.sphinx.frontend.FrontEnd"> 
     <propertylist name="pipeline"> 
      <item>audioFileDataSource </item> 
      <item>dataBlocker </item> 
      <item>speechClassifier </item> 
      <item>speechMarker </item> 
      <item>nonSpeechDataFilter </item> 
      <item>preemphasizer </item> 
      <item>windower </item> 
      <item>fft </item> 
      <item>melFilterBank </item> 
      <item>dct </item> 
      <item>liveCMN </item> 
      <item>featureExtraction </item> 
     </propertylist> 
    </component> 

    <component name="audioFileDataSource" type="edu.cmu.sphinx.frontend.util.AudioFileDataSource"/> 


    <component name="microphone" 
       type="edu.cmu.sphinx.frontend.util.Microphone"> 
     <property name="closeBetweenUtterances" value="false"/> 
    </component> 

    <component name="dataBlocker" type="edu.cmu.sphinx.frontend.DataBlocker"/> 

    <component name="speechClassifier" 
       type="edu.cmu.sphinx.frontend.endpoint.SpeechClassifier"> 
     <property name="threshold" value="13"/> 
    </component> 

    <component name="nonSpeechDataFilter" 
       type="edu.cmu.sphinx.frontend.endpoint.NonSpeechDataFilter"/> 

    <component name="speechMarker" 
       type="edu.cmu.sphinx.frontend.endpoint.SpeechMarker"> 
     <property name="speechTrailer" value="50"/> 
    </component> 

    <component name="preemphasizer" 
     type="edu.cmu.sphinx.frontend.filter.Preemphasizer"/> 

    <component name="windower" 
    type="edu.cmu.sphinx.frontend.window.RaisedCosineWindower"/> 

    <component name="fft" 
     type="edu.cmu.sphinx.frontend.transform.DiscreteFourierTransform"/> 

    <component name="melFilterBank" 
     type="edu.cmu.sphinx.frontend.frequencywarp.MelFrequencyFilterBank"/> 

    <component name="dct" 
      type="edu.cmu.sphinx.frontend.transform.DiscreteCosineTransform"/> 

    <component name="liveCMN" 
       type="edu.cmu.sphinx.frontend.feature.LiveCMN"/> 

    <component name="featureExtraction" 
     type="edu.cmu.sphinx.frontend.feature.DeltasFeatureExtractor"/> 

    <!-- ******************************************************* --> 
    <!-- monitors            --> 
    <!-- ******************************************************* --> 

    <component name="accuracyTracker" 
       type="edu.cmu.sphinx.instrumentation.BestPathAccuracyTracker"> 
     <property name="recognizer" value="${recognizer}"/> 
     <property name="showRawResults" value="false"/> 
     <property name="showAlignedResults" value="false"/> 
    </component> 

    <component name="memoryTracker" 
       type="edu.cmu.sphinx.instrumentation.MemoryTracker"> 
     <property name="recognizer" value="${recognizer}"/> 
     <property name="showDetails" value="false"/> 
     <property name="showSummary" value="false"/> 
    </component> 

    <component name="speedTracker" 
       type="edu.cmu.sphinx.instrumentation.SpeedTracker"> 
     <property name="recognizer" value="${recognizer}"/> 
     <property name="frontend" value="${frontend}"/> 
     <property name="showDetails" value="false"/> 
    </component> 

    <component name="recognizerMonitor" 
       type="edu.cmu.sphinx.instrumentation.RecognizerMonitor"> 
     <property name="recognizer" value="${recognizer}"/> 
     <propertylist name="allocatedMonitors"> 
      <item>configMonitor </item> 
     </propertylist> 
    </component> 

    <component name="configMonitor" 
       type="edu.cmu.sphinx.instrumentation.ConfigMonitor"> 
     <property name="showConfig" value="false"/> 
    </component> 


    <!-- ******************************************************* --> 
    <!-- Miscellaneous components        --> 
    <!-- ******************************************************* --> 

    <component name="logMath" type="edu.cmu.sphinx.util.LogMath"> 
     <property name="logBase" value="1.0001"/> 
     <property name="useAddTable" value="true"/> 
    </component> 
</config> 

क्या उनकी कॉन्फ़िगरेशन में कुछ भी गलत है? Plz मदद ....

+0

इस प्रश्न का कोई स्पष्ट ध्यान और सुंदर बेकार नहीं है। –

+1

क्या आप समझ नहीं सकते ....? इरादा लाइन से स्पष्ट है "मैं एक ऐसा एप्लिकेशन बनाना चाहता हूं जो एक .wav (या कोई अन्य मानक ऑडियो फ़ाइल प्रारूप) लेता है और इसे टेक्स्ट में परिवर्तित करता है।" शेष प्रश्नों की तुलना में मैंने समझाया है कि मैंने इसके लिए क्या किया है और मुझे किस त्रुटि का सामना करना पड़ रहा है? – aProgrammer

+0

"मैं एक ऐसा एप्लिकेशन बनाना चाहता हूं जो एक .wav (या कोई अन्य मानक ऑडियो फ़ाइल प्रारूप) लेता है और इसे टेक्स्ट में परिवर्तित करता है" एक कथन है, यह कोई सवाल नहीं है।आप वोक्सफोर्ज मॉडल का उपयोग करने पर भी भ्रामक हैं जिसका उपयोग आप नहीं करना चाहिए। आप यह भी वर्णन नहीं करते कि आपको वास्तव में क्या समस्या है। –

उत्तर

2

वाक् पहचान के लिए मैं sphinx4 उपयोग करने के लिए फैसला किया है, मैं डेमो Transcriber.jar स्फिंक्स के साथ प्रदान की भागने की कोशिश कर रहा हूँ। जब मैं कुछ अन्य फाइल इनपुट के रूप में देता हूं तो यह काम नहीं करता है।

आप अपने मुद्दों को बेहतर वर्णन यदि आपको यह समस्या

मैं कैसे आगे बढ़ना है के बारे में अधिक निश्चित मदद मिल सकती है?

ट्यूटोरियल

http://cmusphinx.sourceforge.net/wiki/tutorial

मुझे लगता है कि Sphinx4 साथ इस्तेमाल किया जा सकता यूएस अंग्रेज़ी के लिए भाषा का मॉडल कहां मिल सकते हैं पढ़ें?

आप उन्हें CMUSphinx वेबसाइट से और अन्य स्थानों से डाउनलोड कर सकते हैं। आप उन्हें स्वयं भी बना सकते हैं। संभावित स्थानों में से एक

http://www.keithv.com/software/csr/

किसी भी ब्लॉग/ट्यूटोरियल उपयोगी होगा,

हैं ऊपर

देखें हालांकि इस ट्यूटोरियल में उपयोग की गई फ़ाइलों differrent एक्सटेंशन के हैं , मैं इस चरण में फंस गया हूं मैं तय नहीं कर सकता कि कॉन्फ़िगरेशन में कौन सा पथ दिया जाना चाहिए। Plz सहायता,

sphinx4/परीक्षण/प्रदर्शन/voxforge_en/voxforge.config.xml में उदाहरण कॉन्फ़िगरेशन देखें। इसमें सभी आवश्यक पथ हैं

+0

धन्यवाद .... जब मैं इनपुट के रूप में कुछ अन्य .wav फ़ाइल देता हूं तो डेमो क्लासकास्ट अपवाद देता है ... – aProgrammer

+0

पूर्ण अपवाद टेक्स्ट प्रदान करें। आप जिस संस्करण का उपयोग कर रहे हैं उसके बारे में जानकारी प्रदान करें। आपके द्वारा किए गए संशोधनों के बारे में अधिक जानकारी प्रदान करें। फिर सुनिश्चित करें कि आपकी समस्या को हल करना बहुत आसान होगा। –

+0

मुझे लगता है कि नमूना अनुप्रयोग और मेरी .way फ़ाइल द्वारा उपयोग की जाने वाली बिट दर अलग है, इसलिए मैं परिणाम बदलने की कोशिश कर रहा हूं जो परिणाम पोस्ट करेगा। मैं sphinx4-1.0beta6 का उपयोग कर रहा हूँ। – aProgrammer

संबंधित मुद्दे