Laptop computers are increasingly being used as recording devices
to capture meetings, interviews, and lectures using the laptop’s local
microphone. In these scenarios, the user frequently also uses
the same laptop to make notes. Because of the close proximity of
the laptop’s microphone to its keyboard, the captured speech signal
is significantly corrupted by the impulsive sounds the user’s
keystrokes generate. In this paper we propose an algorithm to automatically
detect and remove keystrokes from a recorded speech
signal. The detection and removal stages both operate by exploiting
the natural correlations present in speech signals, but do so in
different ways. The proposed algorithm is computationally efficient,
requires no user-specific training or enrollment, and results
in significantly enhanced speech. The proposed keystroke removal
algorithm was evaluated through user listening tests and speech
recognition experiments on speech recordings made in a realistic