"I Think, I Conceptualize, I Analyze, I Design, and I Create." ~ Puneet Kalra

Cognitive Robotics Research Centre Of University Of Wales, Newport Puneet Kalra

Home Studies Research Projects Tutorials Portfolio

Puneet Kalra - www.puneetk.com - Socializing Robots

Expanding Dictionary Of Acoustic Model

January 5th, 2010

Hello Everyone,

Today I’m going to tell you how to expand dictionary of acoustic model for Sphinx4. In simple words, This tutorial will tell you how you can add more words in Sphinx’s words database (Dictionary) and let it recognize those words, which are not available in default acoustic models provided by CMU Sphinx. This tutorial is based on “HelloWorld” example provided by CMU Sphinx.

Important Files in this example :
1 ) HelloWorld.java
2) hello.gram
3) helloworld.config.xml

Acoustic Model used in this example :
WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar

Lets say, We are creating a SR system for ABC National airlines. Everything will go fine and Sphinx will recognize most of the words except the name of cities and states of India.  Now, I will tell you, How to add name of cities and states in dictionary.

PART ONE
Step 1 :
Create a txt file “words.txt”, Write all the names of cities and states in it and save.
Step 2 : Open this link : http://www.speech.cs.cmu.edu/tools/lmtool.html
Step 3 : On that page, go to “Sentence corpus file:” section, Browse to “words.txt” file and click “Compile Knowledge Base”.
Step 4 : On next page, Click on “Dictionary” link and save that .DIC file.

PART TWO
Step 1 : Extract WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar file.
Step 2 : Go to edu\cmu\sphinx\model\acoustic\WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz\dict folder.
Step 3 : Open “cmudict.0.6d” file in that folder.
Step 4 : Copy data from .DIC file, you have downloaded in PART ONE, paste it in “cmudict.0.6d” file and save.
Step 5 : Zip the extracted hierarchy back as it was and Zip file named should be same as JAR file.

Now, remove “WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar” file from Project’s CLASSPATH and add “WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.zip” instead of it.

That’s it ! We are done.  Now Sphinx will also recognize all name of cities and states that we wrote in “words.txt” file.
Now, FAQ time. I will be posting FAQ and few important notes in comments. :)

If you have any quires, Please feel free to ask.
Regards,

I’m still alive

November 24th, 2009

Hello everyone,

It’s been almost a month, I haven’t updated my website.  Just 3 weeks left to my final exams for 2 years technical diploma (ANIIT) from NIIT.  And i will have to attend 2 exams ( EJB 3.0, and Software Testing / Quality Assurance ) plus I will have to submit a project before i can attend those exams.  My topic for project is “Image processing”. I’m not really worried about exams and project. Project is almost done. :)

My current research topics :
Computational linguistics , and Continuous Speech Recognition Algorithms

Now a days, I’m working with Spain based company named <UNDEFINED> is Official Adobe’s Enterprise Solution Partner. They have a long list of technologies for developing Desktop and Web based RIA’s but they mainly work on : Adobe Flex, Adobe AIR, Adobe Flash With PHP and Java.  Company’s Website

That’s it for now ! Signing off.

Puneet Kalra

Sphinx 4.0 Framework

October 25th, 2009

Sphinx 4.0 Framework
This image describes the framework components and working of Sphinx 4.0

Stay tuned!

October Update

October 20th, 2009

Hey everyone,

First of all, Wishing you a very Happy Diwali. :D

Just to let you all know that I’m still alive. The first reason that kept me away from updating my blog was Text-to-Speech ( FreeTTS ) and Speech-to-Text ( Sphinx ). I have got really great response from my followers and guests. I have created few sample applications on both of them.

And, the second reason is Exams. The next and the final one for this session is Java Servlet, JSP And Apache Struts on 24th of this month. I’m not really worried about the exam, right now my focus is on SphinxTrain and SphinxDecoder.

That’s it for now, I will be updating again soon.

Finally FreeTTS Worked :)

October 4th, 2009

Hello everyone!

After long long research on Speech Synthesizer and working on projects based on Speech Recognizer.  Finally I made FreeTTS work using Eclipse SDK. I have tested it on Windows XP, Vista and Mac, Working fine on all the Operating systems. I found it little confusing but once you start working on something, Everything starts to solve out one by one.

About FreeTTS :

FreeTTS is a speech synthesis engine written entirely in the Java(tm) programming language. FreeTTS was written by the Sun Microsystems Laboratories Speech Team and is based on CMU’s Flite engine. FreeTTS also includes a partial JSAPI 1.0

Link To FreeTTS Website

Soon, I will be posting a “FreeTTS with Eclipse” tutorial.

So , Stay tuned!