Speech recognition in KHotKeys
KHotkeys is a powerful tool which allows you to configure input actions, such as mouse gestures or keyboard shortcuts, in order to perform commands, launch applications, make DCOP calls or other such actions. [screenshot: http://tinyurl.com/dskng] KHotKeys is included in the kdebase package.
I would like to add support for voice recognition as an input mechanism for KHotKeys. This way, the user will be able to command their computer using their voice. The user presses a specified key (or mouse button), says a word into the microphone and then releases the key. The system will compare the sound with reference sounds and activate the configured action or display a passive pop up in case of non-matching.
Think of
saying "Internet" to open the browser;
saying "new email" to open the mail program and write a new
email;
saying "previous" to go back when your are in the web browser;
saying "lock screen" to lock the computer.
Technically, for each reference sound, I will try to compute a signature of the sound in a small vector, using technologies such as Fourier transforms. I will do the same for the sound to test, and compare the "distance" of this vector to all reference vectors, and the smallest distance will correspond to the sound. I've already done a matlab mock up that works rather well. I have taken some signal processing courses that will help me in this project.
The objectives I will try to reach for this bounty:
- Be able to recognise a sound out of at least 10 references sounds;
- Integrate this nicely into KHotkeys;
- Perform the recognition fast enough (~1 second or less).
Of course, voice recognition will probably only work with the user that has configured their own sounds.
Some KDE developers have already approved the idea.
[ Edit ]