Julius – large vocabulary continuous speech recognition decoder software

Julius is a high-performance, two-pass large vocabulary continuous speech recognition (LVCSR) engine.

It supports N-gram based dictation, DFA grammar based parsing, and one- pass isolated word recognition. Phone context dependencies are supported up to triphone. It can perform a multi-model decoding, a recognition using several LMs and AMs simultaneously with a single processor, and also supports “hot plugging” of arbitrary modules at run time.

The acoustic models and language models are pluggable, and you can build various types of speech recognition system by building your own models and modules to be suitable for your task. It also adopts standard formats to cope with other toolkit such as HTK, CMU-Cam SLM toolkit, etc. The core engine is implemented as embeddable library, to aim to offer speech recognition capability to various applications. The recent version supports plug-in capability so that the engine can be extended by user.

Features include:

  • Real-time, hi-speed, accurate recognition based on 2-pass strategy.
  • Low memory requirement: less than 32MBytes required for work area (<64MBytes for 20k-word dictation with on-memory 3-gram LM).
  • Supports LM of N-gram, grammar, and isolated word.
  • Language and unit-dependent: Any LM in ARPA standard format and AM in HTK ascii hmmdefs format can be used.
  • Highly configurable: can set various search parameters. Also alternate decoding algorithm (1-best/word-pair approx., word trellis/word graph intermediates, etc.) can be chosen.
  • Full source code documentation and manual in Engligh / Japanese.
  • On-the-fly recognition for microphone and network input.
  • GMM-based input rejection.
  • Successive decoding, delimiting input by short pauses.
  • N-best output.
  • Word graph output.
  • Forced alignment on word, phoneme, and state level.
  • Confidence scoring.
  • Server mode and control API.
  • Many search parameters for tuning its performance.
  • Character code conversion for result output.
  • Long N-gram support.
  • Run with forward / backward N-gram only.
  • Confusion network output.
  • Arbitrary multi-model decoding in a single thread.
  • Rapid isolated word recognition.
  • User-defined LM function embedding.

Website: github.com/julius-speech/julius
Support: Documentation
Developer: Lee Akinobu
License: Open source license

Julius is written in C. Learn C with our recommended free books and free tutorials.

Return to Speech Recognition Tools Home Page | Return to Universal Access Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.

The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.