Saturday, August 1, 2009

Julius Speech Recognition and Tools

I did not work for longer time on Speech Recognition Engines. Say around 3-4 months of work. I had to do some sort of research on which ASR can be best suited for the idea we had in mind. Julius topped our list. Sphinx 4 is exciting as its in Java and I expect it to mature even more as time goes on.
So as I mentioned in my previous post, from Julius home page you won't get much details other than source code ans a handbook. To try out your hands immediately on Julius download Julius Quick Start Demo from voxforge.

Julius is a written in C and compiled using GCC. So if you are using Windows then you will be needing cygwin to run or compile and build the Julius source.

Juilus provides you with a set of tools which are pretty useful in building you SR system. These executable will be found in 'bin' folder. I am going to include on 3 of those handy tools which we will use mostly.

  • 'Julius' - The main recognizer module that does all recognition part of speech. Julius needs a language model and an acoustic model to run as a speech recognizer. You can use HMM acoustic model, language model (word N-gram, grammar, isolated word). Input can be either in wave or mfc format or direct mic or even voice data from Network. Note that for waveform file input, only WAV (no compression) and RAW (mono, 16bit, big endian) are supported by default. There are options where one can specify a list of input files to be recognized in form of a file. There are dozens of command line options available. Going through Julius manual will give better idea. Its always better to use these options in a configuration file and pass this parameter to Julius.
  • 'adinrec' - This tool helps you in recording voice in Julius acceptable audio format. The audio format is 16 bit, 1 channel, in WAV format. Here too like Julius one can set sampling frequency to record even at 48k Hz. The tools records every utterance as a single file.
  • 'adintool' - This tool is similar to adinrec along with other options. All the Julius options like can be set, but since its just an audio tool other options will be skipped without any error. One interesting option is 'adinnet'. This option lets you run Julius in 'server mode'. With adinnet we can specify a port number which julius can listen to and a server name using -server option. This will make Julius receive data directly from adintool for recognition. Say the Julius recognition is on server side and you are running a SR program on client side. This option can indeed let you do real time recognition.

In my next post we will see a small example on how to run Julius in server mode. Explore Julius till then !


/A

15 comments:

  1. Does the 'adintool' need to be installed on the client in order to stream live mic data to Julius on the server side? For example, if I am making a web application that has a feature for voice recognition, is it possible to use the users' microphone to send data to Julius without having the user download anything?

    ReplyDelete
  2. How can you make a web-app using adintool ? Its an executable file. You then need to have say a Signed Java Applet that will record the sound and send it to Julius for recognition.


    I think you should have a look @ Simon which is built upon Julius and runs Julius on Server mode.

    ReplyDelete
  3. whan u said that accuracy of sphinx less than 50%,
    is that after use sphinxtrain?

    did u tried to train ur voice?

    ReplyDelete
  4. Yeah. If my memory is correct. After training, with Sphinx4 I got accuracy of ~65%.
    Whereas with another trained model Julius it was ~85%.
    Now I really dont know if I made any mistakes in training or creating models :)

    ReplyDelete
  5. How's things going? Would love an update.

    ReplyDelete
  6. It is unlikely air conditioners only mover air and do not adjust its temperature.
    Therefore, environment conscious people often encourage the use of ceiling
    fans with lights. We can mix-and-match one brand to another to create a look no one else goes as far
    to offer.

    Also visit my web-site: annu-cd-dvd.com

    ReplyDelete
  7. There is one word you can describe ceiling
    fans with lights - practical. so that the fan does not become so loose that
    it might fall. Depending on the homeowner's choice, they can either have up lights or down lights in them.

    Look into my web blog: www.nollysource.com

    ReplyDelete
  8. Α great deal of men and women will be tooκ аdvantage of уouг effοrts .


    Alsο viѕit mу web blοg: http://www.radabg.com

    ReplyDelete
  9. No matter if some one searches for his vital thing, thus he/she desires to be available that in detail, so that
    thing is maintained over here.

    Here is my website - Voyance

    ReplyDelete
  10. Wow, аmazіng blog layout! How long have you been blоgging
    foг? you made blogging look easy. The overall loоk of уour ωebsіte is eхcellent, let
    alone the сontent!

    Аlsο visit my web pagе :: peintre en batiment

    ReplyDelete
  11. Hey! I just want to give a huge thumbs up for the nice information you will
    have here on this post. I can be coming again to your weblog for
    more soon.

    my website SEO

    ReplyDelete
  12. I'm extremely pleased to uncover this page. I wanted to thank you for your time just for this wonderful read!! I definitely really liked every little bit of it and i also have you book-marked to look at new information in your website.

    My site; meuble salle de bain

    ReplyDelete
  13. Thanks for some other magnificent article. Where else may just anyone get
    that type of information in such a perfect method of writing?

    I have a presentation next week, and I'm at the look for such info.

    my web-site: voyance Gratuite

    ReplyDelete
  14. Havе yοu eѵer consіderеd publishing аn ebook or guеѕt аuthorіng οn
    οther blogѕ? I have a blog based upon οn the ѕamе infοrmatіon you
    ԁіѕcuss anԁ would reallу like to have you
    shаre ѕome storіeѕ/informаtion.
    ӏ know my audiеnсе would enjoy уour work.

    Ӏf you are even remotely intereѕted,
    feel free to shoot me an еmail.

    Feel freе to ѕurf tο my page comparatif ssd

    ReplyDelete
  15. Odds and payouts for each roulette recreation differ, however you’ll find the same betting terms cropping up. Inside and outside bets are the 2 primary kinds of roulette bets. Inside bets see you guess on numbers, therefore why the percentages are so much greater. Outside bets embrace betting on purple or black and odd or 점보카지노 even. A long-time player who has skilled dizziness from watching the wheel spin so many times? Regardless of your roulette experience, our educated staff of specialists assume you’ll find their high five on-line roulette strategy tips helpful.

    ReplyDelete