# Patent

## Title
Microphone array structure able to reduce noise and improve speech quality and method thereof

## Abstract

The present invention discloses a microphone array structure able to reduce noise and improve speech quality and a method thereof. The method of the present invention comprises steps: using at least two microphone to receive at least two microphone signals each containing a noise signal and a speech signal; using FFT modules to transform the microphone signals into frequency-domain signals; calculating an included angle between a speech signal and a noise signal of the microphone signal, and selecting a phase difference estimation algorithm, a noise reduction algorithm or both to reduce noise according to the included angle; if the phase difference estimation algorithm is used, calculating phase difference of the microphone signals to obtain a time-space domain mask signal; and multiplying the mask signal and the average of the microphone signals to obtain the speech signals of the microphone signals. Thereby is eliminated noise and improve speech quality.

## Background
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a technology for eliminating noise from a microphone, particularly to a microphone array structure able to reduce noise and improve speech quality and a method thereof.
2. Description of the Related Art
Microphones may pick up audio signals by a single-channel or dual-channel way. In a single-channel microphone system, the signal/noise ratio (SNR) thereof should be taken into consideration. In a dual-channel microphone system, microphones are arrayed to form a directional microphone system according to a beamforming technology. The directional microphone system is less sensitive to background noise but more sensitive to human voices. The directional microphone system is pointed to a person to receive his voices. However, the beam formed by two microphones is very large, and the directionality thereof is insufficient.
The common devices to reduce indoor or in-vehicle noises for mobile phones usually adopt numerous microphones, various filters and a great amount of matrix computation, which greatly increase the hardware cost of a mobile phone. Further, directionality of the conventional technologies, which have existed in products, patents and documents, is too low to effectively reduce noises without speech distortion.
Accordingly, the present invention proposes a microphone array structure able to reduce noise and improve speech quality and a method thereof to overcome the abovementioned problems. The technical contents and embodiments of the present invention are described in detail below.
SUMMARY OF THE INVENTION
The primary objective of the present invention is to provide a microphone array structure able to reduce noise and improve speech quality and a method thereof, wherein a phase difference estimation algorithm or a noise reduction algorithm is selected to reduce noise according to whether the angle included by a speech signal and a noise signal is a zero degree angle or a non-zero degree angle.
Another objective of the present invention is to provide a microphone array structure able to reduce noise and improve speech quality and a method thereof, wherein a GSS (Golden Section Search) algorithm is used to search for an optimal ITD (Interaural Time Difference) threshold, whereby the speech signals have the best quality at all angles.
To achieve the abovementioned objectives, the present invention proposes a microphone array structure able to reduce noise and improve speech quality, which comprises at least two microphones, at least two FFT (Fast Fourier Transform) modules, a processing module, a phase difference estimation module, a mask estimation module, and an IFFT (inverse-FFT)-OLA (overlap-and-add) module. The microphones receive at least two microphone signals each containing a noise signal and a speech signal. The FFT modules transform the microphone signals into frequency-domain signals. The processing module calculates an angle included by a noise signal and a speech signal. According to the included angle, the processing unit selects a combination of a phase difference estimation algorithm and a mask estimation algorithm, a noise reduction algorithm or both to reduce noise. The phase difference estimation module calculates the phase difference of the microphones and interaural time difference (ITD) and finds out optimized ITD thresholds corresponding to different included angles. The mask estimation module uses the threshold to obtain a mask signal according to a binary mask principle, and multiplies the mask signal and the average of the microphone signals to obtain the speech signals of the microphone signals. The IFFT-OLA module transforms the frequency-domain speech signals into time-domain signals.
The present invention also proposes a method for realizing a microphone array structure able to reduce noise and improve speech quality, which comprises steps: receiving at least two microphone signals and using FFT modules to transform the microphone signals into frequency-domain signals; calculating an angle included by a speech signal and a noise signal of the microphone signal, and selecting a combination of a phase difference estimation algorithm and a mask estimation algorithm, a noise reduction algorithm or both to reduce noise according to the included angle; calculating phase difference of the microphone signals and finding out interaural time difference (ITD); using a GSS (Golden Section Search) algorithm to search for optimized ITD thresholds corresponding to different included angles; using the threshold to obtain a mask signal according to a binary mask principle; multiplying the mask signal and the average of the microphone signals to obtain the speech signals of the microphone signals; and using an IFFT-OLA module to transform the frequency-domain speech signals into time-domain signals.
Below, the embodiments are described in detail to make easily understood the objectives, technical contents, characteristics and accomplishments of the present invention.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a diagram schematically showing a microphone array structure able to reduce noise and improve speech quality according to one embodiment of the present invention; and
FIG. 2 is a flowchart of a method for realizing a microphone array structure able to reduce noise and improve speech quality according to one embodiment of the present invention.



DETAILED DESCRIPTION OF THE INVENTION
The present invention proposes a microphone array structure able to reduce noise and improve speech quality and a method thereof, wherein phase difference of two microphone signals is used to obtain the mask of the microphone signals in a frequency domain and a time domain, whereby to reduce noise and improve speech quality.
Refer to FIG. 1 a diagram schematically showing a microphone array structure able to reduce noise and improve speech quality according to one embodiment of the present invention. The microphone array structure of the present invention comprises at least two microphones 14 and 14′, at least two FFT modules 16 and 16′, a processing module 18, a phase difference estimation module 20, a noise reduction module 22, a mask estimation module 24, an IFFT (inverse-FFT)-OLA (overlap-and-add) module 26, and an automatic speech recognition module 28. A speech source 10 and a noise source 12 send out their signals, and the microphones 14 and 14′ receive microphone signals that contain noise signals and speech signals. The FFT modules 16 and 16′ transform the microphone signals into frequency-domain signals. The processing unit 18 calculates an angle included by a noise signal and a speech signal of the microphone signal, and selects a combination of a phase difference estimation algorithm and a mask estimation algorithm, or a noise reduction algorithm to reduce noise according to the included angle. The phase difference estimation module 20 calculates phase difference of the microphones 14 and 14′ and interaural time difference (ITD) and finds out the optimized ITD thresholds corresponding to different included angles. The mask estimation module 24 uses the threshold to obtain a mask signal according to a binary mask principle, and multiplies the mask signal and the average of the microphone signals to obtain the speech signals of the microphone signals. The noise reduction module 22 uses a noise reduction algorithm to eliminate the noise signals from the microphone signals. The IFFT-OLA module 26 transforms the frequency-domain speech signals into time-domain signals. The automatic speech recognition module 28 receives the speech signals output by the IFFT-OLA module 26 and undertakes speech recognition.
Refer to FIG. 2 a flowchart of a method for realizing a microphone array structure able to reduce noise and improve speech quality according to one embodiment of the present invention. In Step S10, the noise signals and speech signals of two microphone signals are received by the microphones, and the microphone signals are transformed into frequency-domain signals via a Hamming window and FFT. The two microphone signals P1(k,l) and P2(k,l) are respectively expressed by Equation (1) and Equation (2):




  
    
      
        
          
            P
            1
          
          ⁡
          
            (
            
              k
              ,
              l
            
            )
          
        
        =
        
          
            X
            ⁡
            
              (
              
                k
                ,
                l
              
              )
            
          
          +
          
            
              ∑
              
                i
                =
                1
              
              V
            
            ⁢
            
              
                N
                i
              
              ⁡
              
                (
                
                  k
                  ,
                  l
                
                )
              
            
          
        
      
    
    
      
        (
        1
        )
      
    
  
  
    
      
        
          
            P
            2
          
          ⁡
          
            (
            
              k
              ,
              l
            
            )
          
        
        =
        
          
            X
            ⁡
            
              (
              
                k
                ,
                l
              
              )
            
          
          +
          
            
              ∑
              
                i
                =
                0
              
              V
            
            ⁢
            
              
                e
                
                  
                    -
                    
                      jω
                      k
                    
                  
                  ⁢
                  
                    
                      d
                      i
                    
                    ⁡
                    
                      (
                      
                        k
                        ,
                        l
                      
                      )
                    
                  
                
              
              ⁢
              
                
                  N
                  i
                
                ⁡
                
                  (
                  
                    k
                    ,
                    l
                  
                  )
                
              
            
          
        
      
    
    
      
        (
        2
        )
      
    
  




wherein (k, l) denotes the kth frequency and the lth frame, X a speech signal, Ni the ith noise source, Pm the signal received by the mth microphone, and N the length of FFT, and

wherein ωk=2πk/N, and 0≦k≦N/2−1.

In Step S12, calculate the angle included by a noise signal and a speech signal of the microphone signal P1(k,l) or P2(k,l), i.e. the angle included by the speech source and the noise source, and select a combination of a phase difference estimation algorithm and a mask estimation algorithm, a noise reduction algorithm or both to reduce noise according to the included angle.
In Step S14, determine whether the included angle is a zero degree angle. If the included angle is a non-zero degree angle, the process proceeds to Step S16 to calculate phase difference of the noise signal and the speech signal and an ITD threshold.
Suppose that the speech signals are in the front of the microphones. Thus, ITD is zero. ITD of the noise signals from other directions are expressed by di(k, l). ITD correlates with time and frequency. Suppose that a time-frequency domain signal bin(kj, lj) is dominated by a strongest interference. Thus, Equations (1) and (2) can be simplified into Equations (3) and (4):

P1(kj,lj)≈Nn(kj,lj)  (3)

P2(kj,lj)≈e−jωkjdn(kj,lj)Nn(kj,lj)  (4)

Thus, ITD can be obtained via calculating phase difference of the two microphones according to Equation (5):





  
    
      
        
          
          
            
              d
              n
            
            ⁡
            
              (
              
                
                  k
                  j
                
                ,
                
                  l
                  j
                
              
              )
            
          
          
        
        ≈
        
          
            1
            
              
              
                ω
                
                  k
                  j
                
              
              
            
          
          ⁢
          
            
              min
              r
            
            ⁢
            
              
              
                
                  ∠
                  ⁢
                  
                    
                  
                  ⁢
                  
                    
                      P
                      1
                    
                    ⁡
                    
                      (
                      
                        
                          k
                          j
                        
                        ,
                        
                          l
                          j
                        
                      
                      )
                    
                  
                
                -
                
                  ∠
                  ⁢
                  
                    
                  
                  ⁢
                  
                    
                      P
                      2
                    
                    ⁡
                    
                      (
                      
                        
                          k
                          j
                        
                        ,
                        
                          l
                          j
                        
                      
                      )
                    
                  
                
                -
                
                  2
                  ⁢
                  π
                  ⁢
                  
                    
                  
                  ⁢
                  r
                
              
              
            
          
        
      
    
    
      
        (
        5
        )
      
    
  




The ITD threshold is needed in Step S18. Thus, a method, such as a GSS (Golden Section Search) algorithm, is used to search for the optimized ITD thresholds τ corresponding to different included angles in Step S16. Suppose that a function f(x) is continuous and has only a minimum in [a, b]. Select Point c and Point d from [a, b]. Suppose that




  
    
      
        
          
            ca
            _
          
          
            ba
            _
          
        
        =
        
          
            3
            -
            
              5
            
          
          2
        
      
    
    
      
        (
        9
        )
      
    
  




wherein d is a symmetric point of c in Line Segment ab. Compare f(c) and f(d). If f(c)<f(d), the searched range becomes [a, d]. If f(c)>f(d), the searched range becomes [c, b]. Next, select a point in the new searched range, and compare the functional values of the point and a point symmetric to the point. Repeat the abovementioned process to keep on decreasing size of the searched range. When the range has been decreased to an acceptable size, the function value f(x) is regarded as the minimum function value in [a, b]. According to Taylor's theorem, when x approaches xm, the function value of x approximates

f(x)≈f(xm)+1⁄2f′′(xm)(x−xm)2  (10)

If x approaches xm sufficiently, the rear second derivative item is very small and can be neglected. In such a case, Equation (10) can be expressed by Equation (11):

1⁄2f′′(xm)(x−xm)2<ε|f(xm)|  (11)

wherein ε is equal to 10−3. Suppose that the parameters of the function of the GSS algorithm include the speech distortion, noise elimination ratio, quality of the total speech signals. τ can be expressed by Equation (12):

τ=−0.000056θ2+0.0108θ−0.0575  (12)

wherein θ is an angle included by a speech signal and a noise signal. The τ values obtained from Equation (12) can make the processed signals have the best speech quality.

After the optimized ITD thresholds have been obtained, the process proceeds to Step S18, and a binary mask principle is used to work out a microphone mask signal according to Equation (6):




  
    
      
        
          B
          ⁡
          
            (
            
              
                k
                j
              
              ,
              
                l
                j
              
            
            )
          
        
        =
        
          {
          
            
              
                
                  1
                  ,
                
              
              
                
                  
                    if
                    ⁢
                    
                      
                    
                    ⁢
                    
                      
                      
                        
                          d
                          n
                        
                        ⁡
                        
                          (
                          
                            
                              k
                              j
                            
                            ,
                            
                              l
                              j
                            
                          
                          )
                        
                      
                      
                    
                  
                  ≤
                  τ
                
              
            
            
              
                
                  0.01
                  ,
                
              
              
                otherwise
              
            
          
        
      
    
    
      
        (
        6
        )
      
    
  




wherein only the signals having ITD smaller than τ are regarded as target speech signals.

The resultant speech signal S(k,l) can be obtained via multiplying the mask signal B(kj,lj) and the average of the two microphone signals P(k,l). The average of the two microphone signals P(k,l) and the resultant speech signal S(k,l) are respectively expressed by Equation (7) and Equation (8):




  
    
      
        
          
            P
            _
          
          ⁡
          
            (
            
              k
              ,
              l
            
            )
          
        
        =
        
          
            1
            2
          
          ⁢
          
            {
            
              
                
                  P
                  1
                
                ⁡
                
                  (
                  
                    k
                    ,
                    l
                  
                  )
                
              
              +
              
                
                  P
                  2
                
                ⁡
                
                  (
                  
                    k
                    ,
                    l
                  
                  )
                
              
            
            }
          
        
      
    
    
      
        (
        7
        )
      
    
  




S(k,l)=B(k,l) P(k,l)  (8)

After the speech signals are separated from the noise signals in Step S18, the process proceeds to Step S22, and the IFFT (inverse-FFT) and OLA (overlap-and-add) methods are used to convert the frequency-domain speech signals into time-domain signals, and the time-domain signals are output. Then, the process proceeds to Step S24, and the automatic speech recognition module recognizes the output speech signals.
If the included angle is determined to be a non-zero degree angle in Step S14, the process proceeds to Step S20, and a noise reduction algorithm is used to eliminate noise signals from microphones signals with speech signals being preserved. Next, the process proceeds to Step S22, and the IFFT and OLA methods are used to convert the frequency-domain speech signals into time-domain signals, and the time-domain signals are output. Then, the process proceeds to Step S24, and the automatic speech recognition module recognizes the output speech signals.
Summarily, the method of the present invention determines whether the angle included by a speech signal and a noise signal is a zero degree angle. If the included angle is a zero degree angle, a noise reduction algorithm is used to reduce noise. If the included angle is a non-zero degree angle, a phase difference estimation algorithm is used to reduce noise. The phase difference estimation algorithm provides optimized ITD thresholds to attain the best noise reduction effect and the best speech quality at all included angles.
The embodiments described above are only to exemplify the present invention but not to limit the scope of the present invention. Any equivalent variation or modification according to the spirit of the present invention is to be also included within the scope of the present invention.

## Claims

1. A microphone array structure able to reduce noise and improve speech quality, comprising:
at least two microphones respectively receiving at least two microphone signals each containing a noise signal and a speech signal;
at least two FFT (Fast Fourier Transform) modules transforming said microphone signals into frequency-domain signals;
a processing unit calculating an included angle between said noise signal and said speech signal of said microphone signals and, selectively executing a spatial noise masking including a combination of a phase difference estimation with a masking estimation responsive to a non-zero value of said included angle, and executing a noise reduction to reduce noise responsive to a zero value of said included angle;
a phase difference estimation module calculating phase difference and interaural time difference (ITD) of said microphone signals and identifying optimized ITD thresholds corresponding to said included angles, said thresholds are identified with a GSS (Golden Section Search) module;
a mask estimation module using said thresholds to obtain a mask signal according to a binary mask, and multiplying said mask signal and an average of said microphone signals to obtain said speech signal of said microphone signal; and
an IFFT (inverse-FFT)-OLA (overlap-and-add) module transforming said frequency-domain signals into time-domain signals;
wherein said GSS module selects two points from a continuous range; said GSS module then compares function values of said two points and decreases size of said continuous range; and said GSS module then selects two additional points and compares function values thereof to continue decreasing size of said continuous range until a minimum function value is identified in said continuous range.

2. The microphone array structure able to reduce noise and improve speech quality according to claim 1 further comprising a noise reduction module using said noise reduction to eliminate noise when said included angle is a zero-degree angle.

3. The microphone array structure able to reduce noise and improve speech quality according to claim 1, wherein said phase difference estimation module calculates said phase difference and said interaural time difference when said included angle is greater than zero.

4. The microphone array structure able to reduce noise and improve speech quality according to claim 2, wherein both said noise reduction module and said phase difference estimation module are connected with said processing unit.

5. The microphone array structure able to reduce noise and improve speech quality according to claim 1, wherein said IFFT-OLA module includes an IFFT (inverse-FFT) module and an OLA (overlap-and-add) module.

6. The microphone array structure able to reduce noise and improve speech quality according to claim 1, wherein when a source of said speech signal is in front of said microphones, said interaural time difference is zero.

7. The microphone array structure able to reduce noise and improve speech quality according to claim 1 further comprising an automatic speech recognition module receiving speech signals output by said IFFT-OLA module and undertaking speech recognition.

8. A method for realizing a microphone array structure able to reduce noise and improve speech quality, comprising steps:
receiving at least two microphone signals and using at least two FFT modules to respectively transform said microphone signals into frequency-domain signals;
calculating an included angle between a noise signal and a speech signal of said microphone signals, selectively executing at least one of a combination of a phase difference estimation with a mask estimation, and a noise reduction according to said included angle to eliminate said noise signals from said microphone signals with said speech signals being preserved; and
using an IFFT (inverse-FFT)-OLA (overlap-and-add) module to transform said speech signals into a time-domain signal, wherein the phase difference estimation includes a GSS (Golden Section Search) executed to identify an optimized interaural time difference (ITD) threshold corresponding to said included angle, wherein said GSS includes steps: arbitrarily selecting two points from a continuous range; comparing function values of said two points and decreasing size of said continuous range; and repeating steps of arbitrarily selecting two points and comparing function values thereof to iteratively decrease size of said continuous range until a minimum function value is found in said continuous range.

9. The method for realizing a microphone array structure able to reduce noise and improve speech quality according to claim 8, wherein said IFFT-OLA module transforms said speech signals of frequency domain into a signal of time domain.

10. The method for realizing a microphone array structure able to reduce noise and improve speech quality according to claim 8, wherein when a source of said speech signal is in front of said microphones, said interaural time difference is zero.

11. The method for realizing a microphone array structure able to reduce noise and improve speech quality according to claim 8, wherein said noise reduction is used to eliminate said noise signal when said included angle is a zero-degree angle.

12. The method for realizing a microphone array structure able to reduce noise and improve speech quality according to claim 8, wherein said minimum function value and a Taylor's theorem are used to identify said threshold.

13. The method for realizing a microphone array structure able to reduce noise and improve speech quality according to claim 8, wherein said microphone signal is regarded as said speech signal when said interaural time difference is smaller than said threshold.

14. The method for realizing a microphone array structure able to reduce noise and improve speech quality according to claim 8, further comprising an automatic speech recognition module receiving speech signals output by said IFFT-OLA module and undertaking speech recognition.