Some people may remember the whistled platform I [limpkin] designed a while back, which recognizes different whistles to control your lighting. Recently, I designed a firmware that transforms the board into a word recognition device, as the 50MHz ARM Cortex M4′s processing capabilities are good enough to do so.
The simple algorithm works by correlating successive Fast Fourier Transforms (FFT) of the amplified microphone output with the FFTs of a template word previously stored in memory. Simply connect the Whistled to your power supply, say the word you’d like it to recognize and you’re good to go.
As you will see in the video embedded after the break (sorry for the accent…), I briefly explain basic principles about word/sound recognition and what you can do to improve your algorithm performances. The source files can be downloaded, as well as the code for my whistle detection algorithm which wasn’t available the first time we looked at the project.