Software Algorithm

Five software band pass filters were used to filter the incoming signal. Each of these band pass filters is connected to 2 envelope detectors which work at different speeds. The fast envelope detector is used to mark the time of the start of the voice and the slow envelope detector identifies if it is the target voice or not. A value will be obtained from each of the 5 fast and 5 slow envelope detectors which will be compared with similar values stored in memory. These stored values are obtained when the device is put in training mode and samples of background noise and target voice are processed in a similar way as the above. During the comparison, a "vote" process occurs (best 3/5) to determine if the sampled signal is more similar to the voice sample than the background noise sample. If it is determined to be the target voice, a mouse click will occur. The time of the mouse click will be slightly later than the voice response because of the required processing time and sampling time. This time laps is determined by subtracting the stored time of the fast band pass filter.

When the device is triggered it sends a mouse click signal to the computer. Once this is done, the device will wait a certain amount of time (this wait time is determined by the user controls) before it is ready to detect another signal.

(click on the drawing for a PDF version)


Digital Filters

 

Click here to see the digital filter code

Click here to see the code for the Low Pass Filter

 
>>Back to the Top<<