I have created a stand-alone Matlab demo of the noise-robust Automatic Speech Recognition (ASR) techniques I worked on over the past few years. All these techniques rely on finding a sparse, linear combination of noise-free speech exemplars, which is then either used to make an estimate of the clean speech, or to perform exemplar based ASR. For an overview of the methods and the relevant background, my thesis  is a good starting point. The demo works on a noise robust digit recognition task, AURORA-2 .
You can grab the full archive here (81 Mb, includes exemplar dictionary and example noisy speech files), or an archive with just the Matlab codes here. To get started quickly, simply execute the top-level Matlab script sparse_ASR.m.
UPDATE (September 2014): A version of the Matlab code package which includes feature extraction of a user-provided sentence (use in conjunction with the full version which contains the exemplar dictionary). Grab it here.
The techniques implemented in the demo
What is included in the demo
What is NOT included in the demo
To get started quickly, simply execute the top-level Matlab script sparse_ASR.m. This will execute all methods in turn on 4 SNR conditions: clean speech, 5 dB., 0 dB. and -5 dB. You can vary the noise type and test sets by modifying the setlist and condlist variables.
You then may want to examine the effect of various parameters, such as the number of speech (and noise) exemplars in the dictionary (numspeechexemplars and numnoiseexemplars), the sliding window size (windowlength) and the windowshift (Delta). For SI, interesting parameters are the mask threshold that governs the balance between features labelled as uncorrupted by noise and corrupted by noise (si.mask_thr), the minimum number of uncorrupted features in a window (si.num_reliables_thr) and the number or iterations used to obtain a sparse representation (si.numiterations). For SC/FE/SCFE, interesting parameters are the speech and noise sparsity regularisation (nmf.sparsity_speech and nmf.sparsity_noise) and the number of iterations used to obtain a sparse representation (nmf.numiterations). For SCFE, interesting parameters that govern the balance between the SC and FE-GMM stream (scfe.streamweight.sc and scfe.streamweight.gmm)
Another interesting aspect is the impact of the acoustic model that is used to evaluate the clean speech estimates. With the variable gmm_modeltype you can choose between a model trained on clean speech and a model trained on noisy speech (several noise conditions down to 5 dB.). Finally, it may be worthwhile comparing the different visualization options governed by visualisation.meanvar: when set to 1 or 2, the spectrograms are (1) mean or (2) mean&variance normalized, which gives a more accurate picture of how the subsequent speech recognizer (which employs mean&variance normalization) interprets the features.
The Technical University Munich has released openBliSSART, a C++ toolbox for NMF-based blind source separation. On his website, Emanuel Vincent also has a number of software tools for performing and evaluating source separation. The SMALL project has released a toolbox for audio inpainting, a field that has some similarities with missing data imputation for ASR.
The demo Matlab code is released under the GNU General Public License. The included Matlab codes from other authors fall under the licenses indicated in their respective headers.
I acknowledge my collaborators Tuomas Virtanen, Antti Hurmalainen and Hugo Van hamme for their contributions to the code. I also acknowledge the authors of the included Matlab codes solvelasso.m (from Sparselab), strdist.m and hmmViterbiC.m (from PMTK3).
 Noise robust ASR: Missing data techniques and beyond (Jort F. Gemmeke), PhD thesis, Radboud Universiteit Nijmegen, The Netherlands, 2011. [bib][pdf]
 The Aurora experimental framework for the performance evaluation of speech recognition systems under noisy condition (H.G.Hirsch, D. Pearce), Proceedings of the ISCA workshop ASR2000, Paris, France, 2000. [pdf]
 Compressive Sensing for Missing Data Imputation in Noise Robust Speech Recognition (Jort F. Gemmeke, Hugo Van hamme, Bert Cranen, Lou Boves), In IEEE Journal of Selected Topics in Signal Processing, volume 4, 2010. ([pdf]) [bib]
 Sparse imputation for large vocabulary noise robust ASR (Jort F. Gemmeke, B. Cranen, U. Remes), In Computer Speech & Language, volume 25, 2011. ([pdf])[bib] [doi]
 Exemplar-based sparse representations for noise robust automatic speech recognition (Jort F. Gemmeke, Tuomas Virtanen, Antti Hurmalainen), In IEEE Transactions on Audio, Speech and Language processing, volume 19, 2011. ([pdf]) [bib] [doi]
 Advances in noise robust digit recognition using hybrid exemplar-based techniques (Jort F. Gemmeke, Hugo Van hamme), In Proc. INTERSPEECH, 2012. ([pdf]) [bib]
 Automatic speech recognition using missing data techniques: Handling of real-world data (Jort F. Gemmeke, Maarten Van Segbroeck, Yujun Wang, Bert Cranen, Hugo Van hamme), Chapter in Robust Speech Recognition of Uncertain or Missing Data (Dorothea Kolossa, Reinhold Haeb-Umbach, eds.), Springer Verlag, 2011. ([pdf]) [bib] [pdf]
 Mask estimation and imputation methods for missing data speech recognition in a multisource reverberant environment (Sami Keronen, Heikki Kallasjoki, Ulpu Remes, Guy J Brown, Jort F. Gemmeke, Kalle J. Palomäki), In Accepted for publication in: Computer Speech & Language, 2012. ([pdf]) [bib]
 Non-negative matrix deconvolution in noise robust speech recognition (Antti Hurmalainen, Jort F. Gemmeke, Tuomas Virtanen), In Proc. International Conference on Acoustics, Speech and Signal Processing, 2011. ([pdf]) [bib]
 An Hierarchical Exemplar-based Sparse Model of Speech, with an Application to ASR (Jort F. Gemmeke, Hugo Van hamme), In Automatic speech recognition and understanding Workshop, 2011. ([pdf]) [bib]
 Observation uncertainty measures for sparse imputation (Jort F. Gemmeke, Ulpu Remes, Kalle J. Palomäki), In Proc. INTERSPEECH, 2010. ([pdf]) [bib]
 Uncertainty measures for improving exemplar-based source separation (Heikki Kallasjoki, Ulpu Remes, Jort F. Gemmeke, Tuomas Virtanen, Kalle J. Palomäki), In Proc. INTERSPEECH, 2011. ([pdf]) [bib]
 Sparse Imputation for noise robust speech recognition using soft masks (Jort F. Gemmeke, B. Cranen), In Proc. International Conference on Acoustics, Speech and Signal Processing, 2009. ([pdf]) [bib]