The Feature Module

The FeatureSet Object

Topics on this page:

What is it good for?

How to create a FeatureSet

How to create a single Feature


Further information about the module:

What is it good for?

The FeatureSet Object does the signal preprocessing for the JANUS speech recognizer. Audio signals can be read in and can be processed in many different ways using the methods of the FeatureSet. The results can be used for recognition or can be stored for later use.

The FeatureSet object consists of Features either of type SVector or FMatrix.

How to create a FeatureSet

A FeatureSet is created similar to other JANUS objects by using the type name FeatureSet and a user definded name:

% FeatureSet fs
Main properties of a FeatureSet are the standard sampling rate in kHz and the standard frame shift in ms which can be read or set with the configure command:

% fs configure -samplingRate
% fs configure -frameShift
Using the name of the FeatureSet as a command gives the names of the Features in the FeatureSet:

% fs
ADC melscale
A single feature can be accessed using a ':'. Properties of the Features are the feature's sampling rate in kHz and the frame shift in ms which can be different from the standard values of the FeatureSet. SVector features also have a number of samples sampleN and FMatrix features a number of frames and coefficients frameN and coeffN.
% fs:ADC configure
{-samplingRate 16} {-shift 0} {-sampleN 35168} 
% fs:melscale configure
{-samplingRate 16} {-shift 10} {-frameN 219} {-coeffN 16} 

How to create a single Feature

A Feature can only be defined within a FeatureSet. So first you have to create the FeatureSet then you can define a new Feature using the FeatureSet methods FMatrix or SVector:

FeatureSet fs
fs FMatrix matA   {{11 12 13} {21 22 23} {31 32 33}}
fs FMatrix matB
fs SVector dirac  {1 0 0 0 0 0 0 0 0 0 0 0 0 0}
fs SVector zero   100
Here 'matB' is an empty matrix and the SVector feature 'zero' contains 100 zeros. Instead of typing the matrix or vector it can also be read from a file:

fs FMatrix matA   @matA_fileName
Speech recordings or already calculated speech features are stored in a binary form and can be read with the methods readADC and read:
fs readADC   AUDIO      audioFileName
fs read      MELSCALE   melscaleFileName
Notice that 'AUDIO' is an SVector feature whereas 'MELSCALE' is an FMatrix feature.


[1] L.R.Rabiner, R.W.Schafer: Digital Processing of Speech Signals; Prentice Hall 1978