At least one computer-readable storage device storing computer-executable instructions that, when executed by at least one processor, perform a method for extracting a target speech from two input speeches, wherein said input speeches are obtained using at least two speech input devices, said method comprising:
- determining a noise power spectrum, wherein said determination uses at least one of said two input speeches;
- applying a spectrum subtraction process to subtract at least part of said noise power spectrum from a speech spectrum of at least one of said two input speeches to obtain a subtracted power spectrum;
- computing cross-power spectrum phase (CSP) coefficients based on said two input speeches, said CSP coefficients indicative of a direction of a speaker relative to one of said at least two speech input devices;
- applying a gain control to said subtracted power spectrum based on said CSP coefficients, wherein said gain control amplifies speech received from a direction indicated by said CSP coefficients, to obtain a resultant power spectrum;
- and
- applying a flooring process to the resultant power spectrum to obtain a processed power spectrum of the target speech suitable for speech recognition.