KR20230101846A - 기계 학습 보조 공간 잡음 추정 및 억제 - Google Patents

기계 학습 보조 공간 잡음 추정 및 억제 Download PDF

Info

Publication number
KR20230101846A
KR20230101846A KR1020237018257A KR20237018257A KR20230101846A KR 20230101846 A KR20230101846 A KR 20230101846A KR 1020237018257 A KR1020237018257 A KR 1020237018257A KR 20237018257 A KR20237018257 A KR 20237018257A KR 20230101846 A KR20230101846 A KR 20230101846A
Authority
KR
South Korea
Prior art keywords
noise
speech
covariance
probability
suppression gain
Prior art date
Application number
KR1020237018257A
Other languages
English (en)
Inventor
리차드 제이. 카트라이트
닝 왕
Original Assignee
돌비 레버러토리즈 라이쎈싱 코오포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 돌비 레버러토리즈 라이쎈싱 코오포레이션 filed Critical 돌비 레버러토리즈 라이쎈싱 코오포레이션
Publication of KR20230101846A publication Critical patent/KR20230101846A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L21/0232Processing in the frequency domain
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L25/84Detection of presence or absence of voice signals for discriminating voice from noise
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L2021/02161Number of inputs available containing the signal or the noise to be suppressed
    • G10L2021/02166Microphone arrays; Beamforming

Landscapes

  • Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

일 실시형태에서, 방법은: 입력 오디오 신호의 전력 스펙트럼의 대역 및 마이크 공분산을 수신하는 단계, 및 각 대역에 대해: 분류기를 사용하여 어음 및 잡음 각각의 확률을 추정하는 단계; 방향성 모델을 사용하여, 대역에 대한 마이크 공분산 및 확률을 기초로 어음 및 잡음에 대한 평균 세트, 또는 어음 및 잡음에 대한 평균 및 공분산 세트를 추정하는 단계; 레벨 모델을 사용하여 확률 및 전력 스펙트럼을 기초로 잡음 전력의 평균 및 공분산을 추정하는 단계; 방향성 모델에 기초하여 제1 잡음 억제 이득을 결정하는 단계; 레벨 모델에 기초하여 제2 잡음 억제 이득을 결정하는 단계; 입력 오디오 신호의 신호-대-잡음비를 기초로 제1 잡음 억제 이득 또는 제2 잡음 억제 이득 또는 이들의 합을 선택하는 단계; 및 선택된 잡음 억제 이득으로 입력 신호의 시간-주파수 표현을 스케일링하는 단계를 포함한다.

Description

기계 학습 보조 공간 잡음 추정 및 억제
관련 출원에 대한 상호-참조
본 출원은 2020년 11월 5일에 출원된 미국 가출원 제63/110,228호 및 2021년 6월 14일에 출원된 미국 가출원 제63/210,215호에 대한 우선권을 주장하며, 상기 출원의 내용 각각은 그 전체가 참조로써 포함된다.
기술분야
본 개시는 일반적으로 오디오 신호 처리에 관한 것으로, 구체적으로는 음성 통신에서의 잡음 추정 및 억제에 관한 것이다.
음성 통신을 위한 잡음 억제 알고리즘은 전화, 랩톱 및 회의 시스템과 같은 에지 디바이스(edge devices)에서 효과적으로 구현되어 왔다. 양방향 음성 통신이 갖는 보편적인 문제는 각 사용자의 위치에서의 배경 잡음이 사용자의 음성 신호와 함께 송신된다는 것이다. 에지 디바이스에서 수신된 조합 신호의 신호-대-잡음비(SNR)가 너무 낮으면, 재구성된 음성의 명료도가 저하되어 열악한 사용자 경험을 가져올 것이다.
기계 학습 보조 공간 잡음 추정 및 억제를 위한 구현이 개시된다. 일부 실시형태에서, 오디오 처리 방법은: 입력 오디오 신호의 전력 스펙트럼의 대역 및 각 대역에 대한 마이크 공분산을 수신하는 단계 - 상기 마이크 공분산은 입력 오디오 신호를 캡처하는 데 사용되는 마이크의 구성에 기초함 -; 각 대역에 대해: 기계 학습 분류기를 사용하여 어음(speech) 및 잡음 각각의 확률을 추정하는 단계; 방향성 모델을 사용하여, 대역에 대한 마이크 공분산 및 확률을 기초로 어음 및 잡음에 대한 평균 세트, 또는 어음 및 잡음에 대한 평균 및 공분산 세트를 추정하는 단계; 레벨 모델을 사용하여, 확률 및 전력 스펙트럼을 기초로 잡음 전력의 평균 및 공분산을 추정하는 단계; 방향성 모델의 제1 출력을 기초로 제1 잡음 억제 이득을 결정하는 단계; 레벨 모델의 제2 출력을 기초로 제2 잡음 억제 이득을 결정하는 단계; 입력 오디오 신호의 신호 대 잡음비를 기초로 제1 잡음 억제 이득 또는 제2 잡음 억제 이득 중 하나, 또는 제1 잡음 억제 이득과 제2 잡음 억제 이득의 합을 선택하는 단계; 대역에 대해 선택된 제1 잡음 억제 이득 또는 제2 잡음 억제 이득으로 입력 신호의 시간-주파수 표현을 스케일링하는 단계(scaling); 및 시간-주파수 표현을 출력 오디오 신호로 변환하는 단계를 포함한다.
일부 실시형태에서, 방법은: 적어도 하나의 프로세서를 사용하여 다수의 블록/프레임을 포함하는 입력 오디오 신호를 수신하는 단계; 각 블록/프레임에 대해: 적어도 하나의 프로세서를 사용하여 블록/프레임을 부대역으로 변환하는 단계 - 각 부대역은 다른 부대역과 상이한 스펙트럼을 가짐 -; 적어도 하나의 프로세서를 사용하여 부대역을 대역으로 조합하는 단계; 및 적어도 하나의 프로세서를 사용하여 대역화된 전력(banded power)을 결정하는 단계를 더 포함한다.
일부 실시형태에서, 기계 학습 분류기는 입력층, 출력층 및 하나 이상의 은닉층(hidden layers)을 포함하는 신경망이다. 일례에서, 신경망은 셋 이상의 층, 바람직하게는 3개보다 많은 층을 포함하는 심층 신경망이다.
일부 실시형태에서, 마이크 공분산은 정규화된 벡터로서 표현된다.
일부 실시형태에서, 방법은: 제1 잡음 억제 이득을 결정하는 단계를 더 포함하고, 제1 잡음 억제 이득을 결정하는 단계는, 대역에 대한 어음의 확률을 계산하는 단계; 대역에 대한 어음의 확률이 임계값 미만이면 제1 잡음 억제 이득을 최대 억제 이득과 동일하게 설정하는 단계; 및 대역에 대해 계산된 어음의 확률이 임계값 초과이면 이득 램프에 기초하여 제1 잡음 억제 이득을 설정하는 단계를 더 포함한다.
일부 실시형태에서, 방향성 모델에 의해 추정된 어음 및 잡음에 대한 평균 세트 및 공분산을 사용하여 어음의 확률이 계산된다.
일부 실시형태에서, 방향성 모델, 및 다중-변수, 결합 가우시안 밀도 함수(joint Gaussian density function)에 의해 추정된 어음 및 잡음에 대한 평균 세트 및 공분산 벡터를 사용하여 어음의 확률이 계산된다.
일부 실시형태에서, 방법은: 제2 잡음 억제 이득을 결정하는 단계를 더 포함하고, 제2 잡음 억제 이득을 결정하는 단계는, 대역 전력이 제1 임계값 미만이면 제2 잡음 억제 이득을 최대 억제 이득과 동일하게 설정하는 단계; 대역 전력이 제1 임계값과 제2 임계값 사이이면 제2 잡음 억제 이득을 0과 동일하게 설정하는 단계 - 상기 제2 임계값은 제1 임계값보다 높음 -; 및 대역 전력이 제2 임계값보다 높으면 이득 램프에 기초하여 제2 잡음 억제 이득을 설정하는 단계를 더 포함한다.
일부 실시형태에서, 방향성 모델을 사용한 추정은 어음 및 잡음으로서 분류되는 시간-주파수 타일을 사용하지만, 반향(reverberation)으로서 분류되는 시간-주파수 타일은 제외한다.
일부 실시형태에서, 방법은: 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 어음의 확률을 기초로 어음에 대한 평균을 추정하는 단계를 더 포함하고, 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 어음의 확률을 기초로 어음에 대한 평균을 추정하는 단계는, 어음에 대한 평균 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여, 어음에 대한 평균의 시간 에버리지 추정치를 컴퓨팅하고, 및 어음의 확률로 필터에 대한 입력에 가중치를 부여하는 단계를 더 포함한다.
일부 실시형태에서, 방법은: 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 잡음의 확률을 기초로 잡음에 대한 평균을 추정하는 단계를 더 포함하고, 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 잡음의 확률을 기초로 잡음에 대한 평균을 추정하는 단계는, 잡음에 대한 평균 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 잡음에 대한 평균의 시간 에버리지 추정치를 컴퓨팅하고, 및 잡음의 확률로 필터에 대한 입력에 가중치를 부여하는 단계를 더 포함한다.
일부 실시형태에서, 방법은: 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 어음의 확률을 기초로 어음에 대한 공분산을 추정하는 단계를 더 포함하고, 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 어음의 확률을 기초로 어음에 대한 공분산을 추정하는 단계는, 어음에 대한 공분산 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 어음에 대한 공분산의 시간 에버리지 추정치를 컴퓨팅하고, 및 어음의 확률로 필터에 대한 입력에 가중치를 부여하는 단계를 더 포함한다.
일부 실시형태에서, 방법은: 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 잡음의 확률을 기초로 공분산 잡음을 추정하는 단계를 더 포함하고, 방향성 모델 또는 레벨 모델을 사용하여, 대역에 대한 마이크 공분산 및 잡음의 확률을 기초로 공분산 잡음을 추정하는 단계는, 어음에 대한 공분산 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 어음에 대한 공분산의 시간 에버리지 추정치를 컴퓨팅하고, 및 잡음의 확률로 필터에 대한 입력에 가중치를 부여하는 단계를 더 포함한다.
일부 실시형태에서, 시스템은: 하나 이상의 컴퓨터 프로세서; 및 하나 이상의 컴퓨터 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 전술한 방법 중 어느 하나의 동작을 수행하게 하는 명령어를 저장하는 비-일시적 컴퓨터-판독 가능 매체를 포함한다.
일부 실시형태에서, 비-일시적 컴퓨터-판독 가능 매체는 하나 이상의 컴퓨터 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 전술한 방법 중 어느 하나를 수행하게 하는 명령어를 저장한다.
본원에서 개시되는 다른 구현은 시스템, 장치 및 컴퓨터-판독 가능 매체에 관한 것이다. 개시된 구현의 세부사항은 첨부 도면 및 아래의 설명에서 제시된다. 다른 피처(feature), 목적 및 이점은 설명, 도면 및 청구범위로부터 명백하다.
본원에서 개시되는 특정 구현은 다음의 이점 중 하나 이상을 제공한다. 개시된 실시형태는 방향성 및 기계 학습(예컨대, 신경망)을 사용하여 음성 통신 애플리케이션을 위한 저비용, 고품질의 잡음 추정 및 억제를 제공한다. 잡음 추정 및 억제에 대해 개시되는 실시형태는 다양한 에지 디바이스에서 구현될 수 있으며 다수의 마이크를 요구하지 않는다. 신경망의 사용은 배경 잡음의 광범위한 다양성 및 변동성에 대해 스케일링된다.
도면에서, 디바이스, 유닛, 명령어 블록 및 데이터 요소를 나타내는 것과 같은 개략적 요소의 특정 배열 또는 순서가 설명의 용이함을 위해 도시된다. 그러나, 도면에서 개략적 요소의 특정 순서 또는 배열이 처리의 특정 순서 또는 시퀀스, 또는 프로세스의 분리가 요구됨을 의미하는 것이 아님을 당해 기술 분야의 통상의 기술자에 의해 이해되어야 한다. 나아가, 도면에 개략적 요소를 포함하는 것은 그러한 요소가 모든 실시형태에서 요구되거나 그러한 요소에 의해 표현된 피처가 일부 구현의 다른 요소에 포함되거나 다른 요소와 조합되지 않을 수 있음을 의미하는 것은 아니다.
또한, 실선 또는 파선 또는 화살표와 같은 연결 요소가 2개 이상의 다른 개략적 요소 중에서 또는 그 사이에서의 연결, 관계 또는 연관성을 예시하기 위해 사용되는 도면에서, 이러한 임의의 연결 요소의 부재는 연결, 관계 또는 연관성이 존재할 수 없음을 의미하지 않는다. 즉, 요소 간의 일부 연결, 관계 또는 연관성은 본 개시를 모호하게 하지 않기 위해 도면에 도시되지 않는다. 이에 더하여, 예시의 용이함을 위해, 단일 연결 요소가 사용되어 요소 간의 다수 연결, 관계 또는 연관성을 나타낸다. 예를 들어, 연결 요소가 신호, 데이터 또는 명령어의 통신을 나타내는 경우, 그러한 요소는 통신에 영향을 미치기 위해 필요될 수 있는 하나 또는 다수의 신호 경로를 표현한다는 것이 당해 기술 분야의 통상의 기술자에 의해 이해되어야 한다.
도 1은 일부 실시형태에 따른, 기계 학습 보조 공간 잡음 추정 및 억제 시스템의 블록도이다.
도 2는 일부 실시형태에 따른, 레벨 모델에 기초한 잡음 억제 이득 계산을 예시하는 도면이다.
도 3은 일부 실시형태에 따른, 방향성 모델에 기초한 잡음 억제 이득 계산을 예시하는 도면이다.
도 4a 및 도 4b는 일부 실시형태에 따른, 방향성 및 기계 학습을 사용하는 음성 통신에서의 잡음 추정 및 억제를 위한 프로세스의 흐름도를 도시한다.
도 5는 일부 실시형태에 따른, 도 1 내지 도 4를 참조하여 설명된 피처 및 프로세스를 구현하기 위한 시스템의 블록도이다.
다양한 도면에서 사용되는 동일한 참조 부호는 유사한 요소를 나타낸다.
다음의 상세한 설명에서, 설명되는 다양한 실시형태에 대한 철저한 이해를 제공하기 위해 다수의 특정 세부사항이 제시된다. 설명되는 다양한 구현이 이들 특정 세부사항 없이 실시될 수 있다는 것이 당해 기술 분야의 통상의 기술자에게 명백할 것이다. 다른 경우에, 잘 알려진 방법, 절차, 구성요소 및 회로는 실시형태의 측면을 불필요하게 모호하게 하지 않도록 상세하게 설명되지 않았다. 각각이 서로 독립적으로 또는 다른 피처의 임의의 조합과 함께 사용될 수 있는 수개의 피처가 이하에서 설명된다.
명명법
본원에서 사용되는 바와 같이, 용어 "포함하다" 및 그의 변형은 "포함하지만 이에 한정되지 않는다"를 의미하는 개방형 용어로서 해석되어야 한다. "또는"이라는 용어는 문맥에서 달리 명시하지 않는 한 "및/또는"으로 해석되어야 한다. "~에 기초하다"라는 용어는 "적어도 부분적으로 ~에 기초하다"로 해석되어야 한다. "하나의 예시 구현" 및 "일 예시 구현"이라는 용어는 "적어도 하나의 예시 구현"으로 해석되어야 한다. "다른 구현"이라는 용어는 "적어도 하나의 다른 구현"으로 해석되어야 한다. "결정된", "결정하다" 또는 "결정하는"이라는 용어는 획득, 수신, 컴퓨팅, 계산, 추정, 예측 또는 유도하는 것으로 해석되어야 한다. 또한, 다음의 설명 및 청구범위에서, 달리 규정되지 않는 한, 본원에서 사용되는 모든 기술 및 과학 용어는 본 개시가 속하는 당해 기술 분야의 통상의 기술자에 의해 보편적으로 이해되는 것과 동일한 의미를 갖는다.
개요
전통적인 잡음 억제 해결방안은 배경 잡음을 캡처하기 위해 두 개 이상의 마이크를 사용하며, 하나의 마이크는 사용자의 입에 보다 가까이 있고 다른 하나는 이보다 멀리 떨어져 있다. 두 마이크로부터의 신호는 감산(subtracted)되어 양쪽 신호에 공통적인 배경 잡음을 제거한다. 그러나 이 기법은 단일 마이크를 갖는 에지 디바이스에서 동작하지 않거나 휴대폰의 경우에, 사용자는 그들이 말하는 동안 폰을 흔들거나 회전시키고 있다. 다른 잡음 억제 알고리즘은 지속적으로 오디오 신호에서 잡음 패턴을 발견하고 오디오를 프레임별(frame by frame)로 또는 블록별(block by block)로 처리함으로써 이에 적응하려 시도하며, 여기서 각 블록은 둘 이상의 프레임을 포함할 수 있다. 이러한 기존의 적응형 알고리즘은 특정 사용 사례에서 양호하게 동작하지만, 매우 다양하고 가변적인 배경 잡음으로 스케일링(scale)되지 않는다.
최근, 음성 통신에서의 잡음을 억제하기 위해 심층 신경망이 사용되어 왔다. 그러나 이러한 해결방안은 현저한 계산 전력을 요구하며 실시간 통신 시스템에서 구현되기에 곤란하다. 개시되는 실시형태는 방향성 및 기계 학습(예컨대, 심층 신경망)의 조합을 사용하여 음성 통신 애플리케이션을 위한 저비용, 고품질의 잡음 추정 및 억제를 제공한다.
도 1은 일부 실시형태에 따른, 기계 학습 보조 공간 잡음 추정 및 억제 시스템(100)의 블록도이다. 시스템(100)은 필터뱅크(filterbank)(101), 대역화 유닛(banding unit)(102), 기계 학습 분류기(103)(예컨대, 심층 신경망(deep neural network, DNN)과 같은 신경망), 방향 검출 유닛(104), 어음(speech)/잡음 방향성 모델(105), 잡음 레벨 모델(106), 잡음 억제 이득 유닛(107), 승산 유닛(multiplying unit)(108) 및 역 필터뱅크(109)를 포함한다. 일부 실시형태에서, 필터뱅크(101)(예컨대, 단시간 푸리에 변환(short-time Fourier transform, STFT))는 시간-영역 입력 오디오 신호를 수신하고 시간 영역 입력 오디오 신호를 부대역으로 변환하며, 각 부대역은 상이한 주파수 스펙트럼(예컨대, 시간/주파수 타일(tile))을 갖는다. 각 블록/프레임의 부대역은 블록/프레임의 부대역을 음향 심리(psychoacoustic) 모델에 따라 대역으로 조합하고 대역화된 전력(110)(예컨대, dB로 표현되는 대역화된 전력)을 출력하는 대역화 유닛(102)에 입력된다. 필터뱅크(101)에 의해 출력된 부대역은 또한 방향 검출 유닛(104)에 입력되며, 상기 방향 검출 유닛(104)은 마이크 공분산 벡터(112)를 생성 및 출력한다. 일부 실시형태에서, 각 대역에 대해 하나의 공분산 벡터가 있으며 공통 대역화 행렬이 대역화 유닛(102) 및 방향 검출 유닛(104)에서 사용된다. 일부 구현에서, 대역화 유닛(102) 및 방향 검출 유닛(104)은 대역 각각에 대한 공분산 벡터 및 데시벨의 대역 전력을 생성하는 단일 유닛이다.
대역화된 전력(110)은 기계 학습 분류기(103)에 입력된다. 일 실시형태에서, 기계 학습 분류기(103)는 각 블록/프레임 및 각 대역에 대한 어음 클래스, 정적(stationary) 잡음 클래스, 비정적 잡음 클래스 및 반향 클래스를 포함하지만 이에 제한되지 않는 복수의 클래스의 확률(111)을 추정 및 출력하는 미리 훈련된 신경망 분류기이다. 일부 실시형태에서, 정적 잡음 클래스는 어음/잡음 방향성 모델(105) 및 잡음 레벨 모델(106)을 구동하는 데 사용된다.
이어지는 개시에서, 기계 학습 분류기는 어음 및 정적 잡음에 대한 확률을 추정 및 출력한다고 가정된다. 기계 학습 분류기가 반향 확률을 출력하는 일 실시형태에서, 어음, 정적 잡음, 비정적 잡음 및 반향의 추정된 확률은 잡음으로부터 반향을 분리하는 데 사용된다. 일부 실시형태에서, 반향으로 분류되는 임의의 시간-주파수 타일은 어음/잡음 방향성 모델(105) 및 잡음 레벨 모델(106) 중 어느 것에도 추가되지 않는다.
확률(111)은 마이크 공분산 벡터(112)와 함께 어음/잡음 방향성 모델(105)에 입력된다. 확률(111)은 또한 대역화된 전력(110)과 함께 어음/잡음 레벨 모델(106)에 입력된다. 각 대역 및 각 블록/프레임에 대해, 어음/잡음 방향성 모델(105)은 마이크 공분산 벡터(112)에 기초하여 각 대역에 대한 어음 및 잡음에 대해 각각의 평균(mean) 및/또는 공분산(114)을 추정 및 출력한다. 잡음 레벨 모델(106)은 각 블록/프레임에 대한 각 대역에 대해 잡음 전력의 평균 및 분산(113)을 추정 및 출력한다. 일부 실시형태에서, 잡음 레벨 모델(106)은 또한 어음의 평균 및 분산을 출력한다.
잡음 억제 이득 유닛(107)은 개별적으로, 어음/잡음 방향성 모델(105) 및 잡음 레벨 모델(106)의 출력(113, 114), 대역화된 전력(110) 및 마이크 공분산 벡터(112)를 수신한다. 잡음 억제 이득 유닛(107)은 억제 이득을 계산 및 출력하며, 상기 억제 이득은 각 부대역에서의 잡음을 억제하기 위해, 필터뱅크(101)에 의해 출력된 부대역을 스케일링하기 위한 승산 유닛(108)에 의해 사용된다. 그 후, 부대역은 역 필터뱅크(109)에 의해 시간 영역 출력 오디오 신호로 변환된다. 이제 시스템(100)의 구성요소 각각이 아래에서 더 상세하게 설명될 것이다. 일부 실시형태에서, 기계 학습 분류기(103)의 출력은 잡음 억제 이득을 계산하기 위하여, 또는 잡음 이득으로서 직접 사용된다.
기계 학습 분류기
전술한 바와 같이, 기계 학습 분류기(103)는 대역화된 전력(110)을 입력으로 취하고 어음 및 잡음의 확률(111)을 출력으로서 제공하며, 상기 확률(111)은:
Figure pct00001
으로 주어지고, 여기서 t는 블록/프레임 수이고 f는 대역 인덱스이며, 아래 첨자 "s"는 어음을 나타내고 아래 첨자 "n"은 잡음을 나타낸다. 일부 실시형태에서, 많이 움직이지 않는 한 명의 관심 화자가 있고 따라서 잡음 필드가 상대적으로 정적이라는 가정에 기초하여, 잡음은 정적 잡음이다. 만약 이러한 가정이 위반되면 105 및 106에 의해 수행되는 모델링은 부적절할 수 있다. 일부 실시형태에서, 기계 학습 분류기(103)의 출력은 또한 잡음 억제 이득 유닛(107)에 의해 직접 사용될 수 있는 잡음 억제 이득 및 반향 및 비정적 잡음의 확률을 포함할 수 있다.
예시된 예에서, 기계 학습 분류기(103)는 신경망(neural network, NN)을 포함한다. 예시적 NN(103)에 대한 입력은 현재 프레임(current frame)의 61개의 대역화된 전력을 포함하고, 입력 선형 밀집층(dense layer)은 대역화된 전력을 256개의 피처에 매핑한다. 256개의 피처는 각각 256개의 은닉 유닛을 포함하는 GRU층 세트, 및 마지막으로 일부 비선형 커널(kernel)을 갖는 밀집층을 거친다. NN(103)은 소프트맥스 함수(softmax function)를 사용하여 확률로 변환되는 각 대역 및 각 클래스에 대한 상대적 가중치를 출력한다. NN(103)은 잡음이 혼합된 라벨링된(labeled) 음성을 사용하고 교차 엔트로피(cross entropy)를 비용 함수로서 사용하여 훈련된다. 일 실시형태에서, 아담 옵티마이저(Adam optimizer)가 신경망을 훈련시키기 위해 사용된다. 기계 학습 분류기의 다른 예는 k-최근접 이웃(k-nearest neighbor), 서포트 벡터 기계(support vector machine) 또는 의사 결정 트리(decision tree)를 포함하지만 이에 제한되지는 않는다.
일 실시형태에서, NN(103)은 다음과 같이 훈련될 수 있다:
1. 폐쇄-마이크 기록 드라이 클린 어음(close-mic recorded dry clean speech) 세트를 획득한다. 예를 들어, 어음 기술 음성 복제 툴킷을 위한 센터(Centre for Speech Technology Voice Cloning Toolkit)(VCTK);
2. 잡음 데이터 세트를 획득한다. 예를 들어, http://research.google.com/audioset/에서 사용 가능한 오디오세트 데이터(AudioSet data); 및
3. 훈련 프로세스가 시작되기 전에 어음 및 잡음 데이터에 대한 피처를 추출한다. 예를 들어, 대역에 대한 61개의 대역 에너지(dB)는 예컨대, 50Hz와 8000Hz 사이에 있고, 예컨대, 50Hz의 속도로 컴퓨팅된다.
4. 피처 추출 프로세스의 일부로서:
a. 각 어음 벡터에 대한 어음 전력의 측정값(measure)을 결정한다. 예를 들어, 어음 파일은 음성 활동 검출기(voice activity detector, VAD)를 통과하고 VAD를 통과하는 모든 어음에 대해 평균 A-가중 전력(예컨대, dBFS)이 컴퓨팅되며; 그리고
b. 각 잡음 벡터에 대한 잡음 전력의 측정값을 결정한다. 예를 들어, 평균 A-가중 전력(예컨대, dBFS)이 벡터에 걸쳐 컴퓨팅된다.
5. 각 훈련 에포크(epoch)의 각 어음 벡터에 대해:
a. 어음과 연관시킬 잡음 데이터 세트로부터 랜덤 잡음 벡터를 선택한다;
b. 어음과 잡음을 혼합시킬 랜덤 SNR을 도출한다(draw). 예를 들어, 예컨대, 20dB SNR의 평균 및 예컨대, 10dB SNR의 표준 편차를 갖는 정규 분포로부터;
c. 선택된 SNR, 미리 결정된 어음 전력(S) 및 미리 결정된 잡음 전력(N)으로부터 어음과 잡음을 혼합시킬 이득(dB)을, 이득 = SNR - S + N에 따라 결정한다;
d. 어음에 리버브(reverb)를 적용시켜 어느 시간-주파수 타일에 현저한 리버브가 추가되었는지 기록한다;
e. 제공된 이득을 사용하여 반향된 어음과 잡음을 혼합한다. 피처가 dB 스케일에 있기 때문에, 각 시간-주파수 타일에서 이득이 적용된 잡음 전력 및 반향된 어음 전력의 max()를 취하여 "혼합"이 근사화될 수 있다. 그렇게 하는 동안, 어느 시간-주파수 타일에서 잡음이 반향된 어음에 우세하게 되는지 기록한다. 훈련 동안 NN에 제시하기 위한 최종 훈련 벡터는, 위의 절차 중에 각 시간-주파수 타일에서 잡음, 어음 또는 리버브가 우세한지에 기초하여 지상 실측 클래스 라벨(ground truth class label)과 함께 프레임당 61개의 대역 에너지로 구성된다; 그리고
f. 훈련 벡터는 네트워크에 도시되고, 교차-엔트로피 손실은 위의 절차 중에 컴퓨팅된 지상 실측에 대해 하강된다.
마이크 공분산 행렬
일부 실시형태에서, 필터뱅크(101)는 단시간 푸리에 변환(STFT)을 사용하여 구현된다. X t (k)를 모든 마이크 입력에 대한 블록/프레임(t)의 STFT의 k번째 빈 데이터(bin data)(부대역)라고 한다. X t (k)는 길이(N)의 벡터이며, 여기서 N은 마이크 수이고, M은 부대역 수, 및 α는 과거 및 추정된 공분산의 기여(contribution)에 가중치를 부여하는 가중 계수이다. 실시간 오디오 처리에서 대역(f)의 마이크 공분산은:
Figure pct00002
으로 계산되고, 여기서
Figure pct00003
이며, 여기서 B(f)는 대역(f)에 속하는 모든 STFT 빈(즉, 부대역)의 세트이다.
식 [2] 및 [3]은 "직사각형 대역화(rectangular banding)"에 대해 유지되며, 상기 직사각형 대역화에서 각 부대역은 1의 이득을 갖는 정확히 하나의 출력 대역에 기여함에 유의한다. 일반적으로 입력 부대역(k)이 출력 대역(f)에 얼마나 기여하는지 설명하는 범위 [0,1]에서의 일부 가중치(wkf)가 있다. 하나의 부대역(k)에 대해 모든 가중치(wkf)는 모든 대역(f)에 걸쳐 합이 1이 되어야 한다. 이러한 방식으로 임의의 형상의 대역화가 수행될 수 있다. 예를 들어 선형, 로그(log) 또는 멜(Mel) 주파수에서의 코사인 또는 삼각형 형상의 대역화가 직사각형 대역화에 더하여 사용될 수 있다.
Figure pct00004
일 실시형태에서, 대역화된 전력이 필터뱅크(101)로부터 직접 컴퓨팅될 수 있다. 예를 들어, 대역화 스킴(scheme)을 내장시킨 비균일 필터뱅크. 이러한 일 실시형태에서, 데시메이션(decimation)은 사용되지 않으며 블록 레이트(block rate)는 블록 프레임(t)을 규정한다.
표기를 단순화하기 위해 정규화된 공분산 행렬이 실수 벡터(real vector)(112)( v t , f )가 되도록 재배열되며, 이는 공분산 행렬이 에르미트(Hermitian)이고 그 대각 요소가 실수이기 때문이다. 정규화된 공분산은 임의의 레벨 구성요소가 제거된 상태의 방향만을 나타내도록 그 대각합(trace)으로 분할된 공분산 행렬이다.
이 공분산 행렬의 요소가 c m , n 으로 표시되면, 3개의 마이크 시스템에 대해 재배열된 벡터는:
Figure pct00005
로 주어지며, 여기서 mn은 공분산 행렬 요소를 인덱싱(index)한다.
일부 실시형태에서, v t , f 는 정규화된다. 더 많거나 더 적은 마이크를 갖는 시스템은 더 많거나 더 적은 요소를 가지며, 따라서 시스템은 임의의 수의 마이크를 갖는 시스템으로 스케일링 가능하다.
어음/잡음 방향성 모델
일부 실시형태에서, 어음/잡음 방향성 모델(105)은 (대역당 하나의) 공분산 벡터( v t , f ), 및 기계 학습 분류기(103)에 의해 출력된 확률(111)을 입력으로 취하고, v t , f 의 평균 및/또는 공분산 행렬을 추정한다. v t , f 의 평균 및/또는 공분산 행렬을 추정하기 위한 적어도 두 가지의 실시형태가 있으며, 이는 다음과 같이 설명된다.
1. 어음 및 잡음의 평균만을 추정하고, 추정된 평균을 방향성 모델:
Figure pct00006
Figure pct00007
로서 사용한다.
식 [7] 및 [8]에서, μ n (t,f) 및 μ s (t,f)는 개별적으로, 블록/프레임(t) 및 주파수 대역(f)에 대한 잡음 및 어음에 대한 방향성 모델이다. 이들은 정규화된 마이크 공분산 행렬의 평균이다. 식 [7] 및 [8] 및 이하에서 사용되는 w는 시간 에버리징 윈도우(time averaging window)의 길이를 제어하는 가중 계수이며, 상기 시간 에버리징 윈도우의 길이는 어음 및 잡음 또는 평균 및 분산에 대해 상이할 수 있음에 유의한다.
2. 잡음 및 어음에 대한 평균 및 공분산 벡터는 공간 모델을 규정하며, 이는:
Figure pct00008
로서 계산될 수 있다.
잡음 레벨 모델
잡음 레벨 모델(106)은 대역화된 전력(110)(L t , f )(dB)을 입력으로 취하고, 대역(f) 및 블록/프레임(t)에 대한 잡음의 평균 및 분산:
Figure pct00009
을 추정한다.
식 [7] 내지 [14]에서, 랜덤 프로세스가 에르고딕(ergodic)하고 일정 기간 동안 정적이라는 가정 하에 랜덤 변수의 평균 및 공분산(레벨 또는 방향성 중 어느 하나)을 추정하기 위해 시간 에버리지가 사용된다는 점에 유의한다. 에버리지는 1차 저역 통과 필터(low pass filter) 모델을 사용하여 달성되며, 각 프레임에 대해, 저역 통과 필터에 대한 입력(평균 또는 공분산)은 어음 또는 잡음의 확률로 가중치가 부여된다.
레벨 모델에 기초하는 잡음 억제 이득 계산
도 2는 일부 실시형태에 따른, 잡음 레벨 모델(106)에 기초한 잡음 억제 이득(G L (b,f)) 계산을 예시하는 도면이다. 수직축은 이득(dB)이고 수평축은 레벨(dB)이다. 도 2에서, G 0은 최대 억제 이득이며 이득 램프(gain ramp)의 기울기(β) 및 k는 조정(tuning) 매개변수이다:
Figure pct00010
현재 신호 대 잡음 레벨이 미리 규정된 신호 대 잡음비 임계값보다 크면(식 [19] 참조) 잡음 억제 이득은 G L 이고, 그렇지 않으면, G S 를 계산하는 데 어음/잡음 방향성 모델(105)이 사용된다. 시스템은 적어도 두 가지 방법 중 하나를 사용하여 대역(f) 및 블록/프레임(t)에 대한 어음의 확률을 계산한다.
1. 어음/잡음 방향성 모델(105) 및 정규화된 마이크 공분산 벡터(v t , f )의 평균을 사용하여 어음의 확률:
Figure pct00011
을 컴퓨팅한다.
2. 평균 및 벡터(v t , f )를 방향성 모델로서 사용(벡터(v t , f )의 요소를 결합 가우시안(joint Gaussian)으로 가정함)하여 어음의 확률:
Figure pct00012
을 컴퓨팅하며, 여기서 N(x,μ,Σ)은 다중-변수 결합 가우시안 확률 밀도 함수이다.
방향성 모델에 기초하는 잡음 억제 이득 계산
도 3은 어음/잡음 방향성 모델(105)에 기초한 잡음 억제 이득 계산을 예시하는 도면이다. 수직축은 이득(dB)이고, 수평축은 어음의 확률이며, 잡음 억제 이득은:
Figure pct00013
으로 주어지고, 여기서 γk s 는 조정 매개변수이다.
최종 억제 이득(G(t,f))은 각 대역(f) 및 각 블록/프레임(t)에 대해:
Figure pct00014
와 같이 (예컨대, 잡음 억제 이득 유닛(107)에 의해) 계산되고, 여기서 SNR0은 블록/프레임(t)에 대해 미리 규정된 신호 대 잡음비 임계값이고
Figure pct00015
은 추정된 신호 대 잡음비이다.
일부 실시형태에서, [19]의 추정된
Figure pct00016
은, VAD(음성 활동 검출기) 출력을 사용하여, 자동 이득 제어(automatic gain control, AGC) 구성요소(도시되지 않음)를 구동하여 어음 신호를 미리 규정된 전력 레벨(dB)에 레벨링하고, 추정된 잡음 레벨(μ L (t,f))을 미리 규정된 전력 레벨로부터 감산하고 잡음 추정에 사용된 것과 유사한 방법을 사용하여 어음 레벨을 추정함으로써 획득될 수 있으며, 여기서:
Figure pct00017
이고,
Figure pct00018
은:
Figure pct00019
와 같이 계산된다.
최종 억제 이득(G(t,f))은 필터뱅크(101)에 의해 출력된 부대역을 스케일링하여 각 부대역에서의 잡음을 억제하기 위해 승산 유닛(108)에서 사용된다. 예를 들어, 이득(G(t,f))은 대역(f)에 속하는 모든 부대역(k)에 대해 적용되며,
Figure pct00020
여기서 Y t (k)는 승산 유닛(108)의 출력이다.
그 후, 승산 유닛(108)의 출력은 역 필터뱅크(109)에 의해 시간 영역 출력 오디오 신호로 변환되어 잡음 억제된 출력 신호에 도달한다.
예시적 프로세스
도 4a 및 도 4b는 일부 실시형태에 따른, 방향성 및 심층 신경망을 사용하는 음성 통신에서의 잡음 추정 및 억제 프로세스(400)의 흐름도이다. 프로세스(400)는 도 5에 도시된 시스템(500)을 사용하여 구현될 수 있다.
프로세스(400)는 다수의 블록/프레임을 포함하는 입력 오디오 신호를 수신(401)하기 시작한다. 각 블록/프레임에 대해, 프로세스(400)는 블록/프레임을 부대역 - 각 부대역은 다른 부대역과 상이한 스펙트럼을 가짐 - 으로 변환(402)하고, 부대역을 대역으로 조합 및 각 대역에서의 전력을 결정(403)하고, 부대역에 기초하여 마이크 공분산을 결정(404)함으로써 계속된다.
프로세스(400)는 각 대역 및 각 블록/프레임에 대해, 기계 학습 분류기(예컨대, 신경망)를 사용하여 어음 및 잡음 각각의 확률을 추정(405)하고, 방향성 모델을 사용하여 마이크 공분산 및 확률을 기초로 어음 및 잡음에 대한 평균 세트, 또는 어음 및 잡음에 대한 평균 및 공분산 세트를 추정(406)하고, 레벨 모델을 사용하여 확률 및 대역 전력을 기초로 잡음 전력의 평균 및 분산을 추정(407)하고, 방향성 모델의 제1 출력에 기초하여 제1 잡음 억제 이득을 계산(408)하고, 레벨 모델의 제2 출력에 기초하여 제2 잡음 억제 이득을 결정(409)하고, 및 입력 오디오 신호의 신호 대 비율에 기초하여, 제1 잡음 억제 이득 또는 제2 잡음 억제 이득 중 하나, 또는 제1 잡음 억제 이득과 제2 잡음 억제 이득의 합을 선택(410)함으로써 계속된다.
프로세스(400)는 대역에 대해 선택된 제1 잡음 억제 이득 또는 제2 잡음 억제 이득으로 각 대역의 각 부대역을 스케일링(411)하고, 스케일링된 부대역을 출력 오디오 신호로 변환(412)함으로써 계속된다.
예시적 시스템 아키텍처
도 5는 일 실시형태에 따른, 도 1 내지 도 5를 참조하여 설명된 피처 및 프로세스를 구현하기 위한 예시적 시스템의 블록도를 도시한다. 시스템(500)은: 스마트폰, 태블릿 컴퓨터, 웨어러블 컴퓨터, 차량용 컴퓨터, 게임 콘솔, 서라운드 시스템, 키오스크를 포함하지만 이에 제한되지 않는, 오디오를 재생할 수 있는 임의의 디바이스를 포함한다.
도시된 바와 같이, 시스템(500)은 예를 들어, 읽기 전용 메모리(read only memory, ROM)(502)에 저장된 프로그램 또는 예를 들어, 저장 유닛(508)으로부터 랜덤 액세스 메모리(random access memory, RAM)(503)로 로딩된 프로그램에 따라 다양한 프로세스를 수행할 수 있는 중앙 처리 유닛(CPU)(501)을 포함한다. CPU(501)가 다양한 프로세스를 수행할 때 요구되는 데이터가 필요에 따라 RAM(503)에도 저장된다. CPU(501), ROM(502) 및 RAM(503)은 버스(509)를 통해 서로 연결된다. 입출력(I/O) 인터페이스(505)가 또한 버스(504)에 연결된다.
다음의 구성요소인: 키보드, 마우스 등을 포함할 수 있는 입력 유닛(506); 액정 디스플레이(liquid crystal display, LCD)와 같은 디스플레이 및 하나 이상의 스피커를 포함할 수 있는 출력 유닛(507); 하드 디스크 또는 다른 적합한 저장 디바이스를 포함하는 저장 유닛(508); 및 네트워크 카드(예컨대, 유선 또는 무선)와 같은 네트워크 인터페이스 카드를 포함하는 통신 유닛(509)이 I/O 인터페이스(505)에 연결된다.
일부 구현에서, 입력 유닛(506)은 다양한 포맷(예컨대, 모노, 스테레오, 공간, 몰입형 및 기타 적합한 포맷)으로 오디오 신호의 캡처를 가능하게 하는 상이한 위치(호스트 디바이스에 의존함)에 하나 이상의 마이크를 포함한다.
일부 구현에서, 출력 유닛(507)은 다양한 수의 스피커를 갖는 시스템을 포함한다. 도 5에 예시되는 바와 같이, 출력 유닛(507)(호스트 디바이스의 역량에 따라 달라짐)은 다양한 포맷(예컨대, 모노, 스테레오, 몰입형, 바이노럴(binaural) 및 기타 적합한 포맷)으로 오디오 신호를 렌더링할 수 있다.
통신 유닛(509)은 (예컨대, 네트워크를 통해) 다른 디바이스와 통신하도록 구성된다. 요구되는 바에 따라, 드라이브(510)가 또한 I/O 인터페이스(505)에 연결된다. 자기 디스크, 광 디스크, 광자기 디스크, 플래시 드라이브 또는 다른 적합한 이동식 매체와 같은 이동식 매체(511)가 드라이브(510)에 탑재되어, 이로부터 판독된 컴퓨터 프로그램이 필요에 따라 저장 유닛(508)에 설치되도록 한다. 당해 기술 분야의 통상의 기술자는 시스템(500)이 전술한 구성요소를 포함하는 것으로 설명되지만, 실제 응용에서는 이러한 구성요소 중 일부를 추가, 제거 및/또는 대체하는 것이 가능하고 이러한 모든 수정 또는 변경이 본 개시의 범주 내에 모두 속함을 이해할 것이다.
본원에서 설명되는 시스템의 측면들은 디지털 또는 디지털화된 오디오 파일을 처리하기 위한 적절한 컴퓨터-기반 사운드 처리 네트워크 환경에서 구현될 수 있다. 적응형 오디오 시스템의 일부는 컴퓨터 사이에서 송신된 데이터를 버퍼링 및 라우팅하는 역할을 하는 하나 이상의 라우터(도시되지 않음)를 포함하여 임의의 원하는 수의 개별 기계를 포함하는 하나 이상의 네트워크를 포함할 수 있다. 그러한 네트워크는 다양한 상이한 네트워크 프로토콜 상에 구축될 수 있고, 인터넷, 광역 통신망(Wide Area Network, WAN), 근거리 통신망(Local Area Network, LAN) 또는 이들의 임의의 조합일 수 있다.
본 개시의 예시적 실시형태에 따르면, 전술한 프로세스는 컴퓨터 소프트웨어 프로그램으로서, 또는 컴퓨터-판독 가능 저장 매체 상에서 구현될 수 있다. 예를 들어, 본 개시의 실시형태는 기계 판독 가능 매체 상에 유형적(tangibly)으로 구현된 컴퓨터 프로그램을 포함하는 컴퓨터 프로그램 제품을 포함하고, 컴퓨터 프로그램은 방법을 수행하기 위한 프로그램 코드를 포함한다. 이러한 실시형태에서, 컴퓨터 프로그램은 도 5에 도시된 바와 같이, 통신 유닛(509)을 통해 네트워크로부터 다운로드 및 탑재될 수 있으며, 및/또는 이동식 매체(511)로부터 설치될 수 있다.
일반적으로, 본 개시의 다양한 예시적 실시형태는 하드웨어 또는 특수 목적 회로(예컨대, 제어 회로), 소프트웨어, 로직 또는 이들의 임의의 조합으로 구현될 수 있다. 예를 들어, 위에서 논의된 유닛은 제어 회로(예컨대, 도 5의 다른 구성요소와 조합된 CPU)에 의해 실행될 수 있으며, 따라서 제어 회로는 본 개시에서 설명된 동작을 수행할 수 있다. 일부 측면은 하드웨어에서 구현될 수 있는 반면, 다른 측면은 제어기, 마이크로프로세서 또는 다른 컴퓨팅 디바이스(예컨대, 제어 회로)에 의해 실행될 수 있는 펌웨어 또는 소프트웨어에서 구현될 수 있다. 본 개시의 예시적 실시형태의 다양한 측면이 블록도, 흐름도로서, 또는 일부 다른 그림적 표현(pictorial representation)을 사용하여 예시 및 설명되지만, 본원에서 설명되는 블록, 장치, 시스템, 기법 또는 방법은 비제한적 예로서, 하드웨어, 소프트웨어, 펌웨어, 특수 목적 회로 또는 로직, 범용 하드웨어 또는 제어기 또는 기타 컴퓨팅 디바이스, 또는 이들의 일부 조합으로 구현될 수 있음을 이해할 것이다.
추가적으로, 흐름도에 도시된 다양한 블록은 방법 단계로서, 및/또는 컴퓨터 프로그램 코드의 동작으로부터 기인하는 동작으로서, 및/또는 연관된 기능(들)을 수행하도록 구성된 복수의 커플링된(coupled) 로직 회로 소자로서 보여질 수 있다. 예를 들어, 본 개시의 실시형태는 기계 판독 가능 매체 상에 유형적으로 구현되는 컴퓨터 프로그램을 포함하는 컴퓨터 프로그램 제품을 포함하고, 컴퓨터 프로그램은 전술한 바와 같은 방법을 수행하도록 구성된 프로그램 코드를 포함한다.
본 개시의 맥락에서, 기계 판독 가능 매체는 명령 실행 시스템, 장치 또는 디바이스에 의해 또는 이와 연계하여 사용하기 위한 프로그램을 포함하거나 저장할 수 있는 임의의 유형 매체일 수 있다. 기계 판독 가능 매체는 기계 판독 가능 신호 매체 또는 기계 판독 가능 저장 매체일 수 있다. 기계 판독 가능 매체는 비일시적일 수 있으며 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 디바이스 또는 전술한 것의 임의의 적합한 조합을 포함할 수 있지만 이에 제한되지는 않는다. 기계 판독 가능 저장 매체의 보다 구체적인 예는 하나 이상의 전선을 갖는 전기 연결부, 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기-전용 메모리(ROM), 소거 가능한 프로그래밍 가능 읽기-전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 컴팩트 디스크 읽기-전용 메모리(CD-ROM), 광학 저장 디바이스, 자기 저장 디바이스 또는 전술한 것의 임의의 적합한 조합을 포함할 것이다.
본 개시의 방법을 수행하기 위한 컴퓨터 프로그램 코드는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성될 수 있다. 이들 컴퓨터 프로그램 코드는 범용 컴퓨터, 특수 목적 컴퓨터 또는 제어 회로를 갖는 다른 프로그래밍 가능 데이터 처리 장치의 프로세서에 제공될 수 있으며, 프로그램 코드는, 컴퓨터 또는 다른 프로그래밍 가능 데이터 처리 장치의 프로세서에 의해 실행될 때, 흐름도 및/또는 블록도에 명시된 기능/작업이 구현되게 한다. 프로그램 코드는 독립형의 소프트웨어 패키지로서, 전체적으로 컴퓨터에서, 부분적으로 컴퓨터에서, 부분적으로 컴퓨터에서 및 부분적으로 원격 컴퓨터에서 또는 전체적으로 원격 컴퓨터 또는 서버에서 실행되거나, 또는 하나 이상의 원격 컴퓨터 및/또는 서버에 걸쳐 분산될 수 있다.
이 문서는 다수의 특정 구현 세부사항을 포함하지만, 이들은 청구될 수 있는 범주에 대한 제한으로서 해석되어서는 안 되며, 오히려 특정 실시형태에 특정할 수 있는 피처의 설명으로서 해석되어야 한다. 별개의 실시형태의 맥락에서 본 명세서에 설명된 특정 피처는 또한 단일 실시형태에서 조합하여 구현될 수 있다. 역으로, 단일 실시형태의 맥락에서 설명된 다양한 피처가 또한 다수의 실시형태에서 개별적으로 또는 임의의 적합한 하위 조합으로 구현될 수 있다. 나아가, 비록 피처가 특정 조합에서 동작하는 것으로 위에서 설명될 수 있고 심지어 초기에 이에 따라 청구될 수 있더라도, 청구된 조합으로부터의 하나 이상의 피처가 일부 경우에 조합에서 제외될 수 있으며 청구된 조합은 하위 조합 또는 하위 조합의 변형으로 유도될 수 있다. 도면에 도시된 로직 흐름은 원하는 결과를 달성하기 위해 도시된 특정 순서 또는 순차적 순서를 요구하지 않는다. 또한, 다른 단계가 제공되거나 설명된 흐름으로부터 단계가 제거될 수 있으며, 다른 구성요소가 설명된 시스템에 추가되거나 이로부터 제거될 수 있다. 이에 상응하여, 다른 구현은 다음의 청구범위의 범주 내에 있다.

Claims (15)

  1. 오디오 처리 방법으로서,
    적어도 하나의 프로세서를 사용하여, 입력 오디오 신호의 전력 스펙트럼의 대역 및 각 대역에 대한 마이크 공분산을 수신하는 단계 - 상기 마이크 공분산은 상기 입력 오디오 신호를 캡처하는 데 사용되는 마이크의 구성에 기초함 -;
    각 대역에 대해:
    기계 학습 분류기를 사용하여, 어음(speech) 및 잡음 각각의 확률을 추정하는 단계;
    방향성 모델을 사용하여, 상기 대역에 대한 상기 마이크 공분산 및 상기 확률을 기초로 어음 및 잡음에 대한 평균 세트, 또는 어음 및 잡음에 대한 평균 및 공분산 세트를 추정하는 단계;
    레벨 모델을 사용하여, 상기 확률 및 상기 전력 스펙트럼을 기초로 잡음 전력의 평균 및 공분산을 추정하는 단계;
    상기 적어도 하나의 프로세서를 사용하여, 상기 방향성 모델의 제1 출력을 기초로 제1 잡음 억제 이득을 결정하는 단계;
    상기 적어도 하나의 프로세서를 사용하여, 상기 레벨 모델의 제2 출력을 기초로 제2 잡음 억제 이득을 결정하는 단계;
    상기 적어도 하나의 프로세서를 사용하여, 상기 입력 오디오 신호의 신호 대 잡음비를 기초로 상기 제1 잡음 억제 이득 또는 상기 제2 잡음 억제 이득 중 하나, 또는 상기 제1 잡음 억제 이득과 상기 제2 잡음 억제 이득의 합을 선택하는 단계;
    상기 적어도 하나의 프로세서를 사용하여, 상기 대역에 대해 상기 선택된 제1 잡음 억제 이득 또는 제2 잡음 억제 이득으로 입력 신호의 시간-주파수 표현을 스케일링(scaling)하는 단계; 및
    상기 적어도 하나의 프로세서를 사용하여, 상기 시간-주파수 표현을 출력 오디오 신호로 변환하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 적어도 하나의 프로세서를 사용하여, 다수의 블록/프레임을 포함하는 입력 오디오 신호를 수신하는 단계;
    각 블록/프레임에 대해:
    상기 적어도 하나의 프로세서를 사용하여, 상기 블록/프레임을 부대역으로 변환하는 단계 - 각 부대역은 다른 부대역과 상이한 스펙트럼을 가짐 -;
    상기 적어도 하나의 프로세서를 사용하여, 상기 부대역을 대역으로 조합하는 단계; 및
    상기 적어도 하나의 프로세서를 사용하여, 대역화된 전력(banded power)을 결정하는 단계를 더 포함하는, 방법.
  3. 제1항에 있어서, 상기 기계 학습 분류기는 신경망인, 방법.
  4. 제1항 또는 제2항에 있어서, 상기 마이크 공분산은 정규화된 벡터로서 표현되는, 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 제1 잡음 억제 이득을 결정하는 단계는:
    상기 대역에 대한 어음의 확률을 계산하는 단계;
    상기 대역에 대한 상기 어음의 확률이 임계값 미만이면 상기 제1 잡음 억제 이득을 최대 억제 이득과 동일하게 설정하는 단계; 및
    어음의 확률을 증가시키기 위해 상기 최대 억제 이득으로부터 0을 향해 램핑(ramping)함으로써 상기 제1 잡음 억제 이득을 설정하는 단계를 포함하는, 방법.
  6. 제5항에 있어서, 상기 방향성 모델에 의해 추정된 어음 및 잡음에 대한 상기 평균 세트 및 상기 공분산을 사용하여 상기 어음의 확률이 계산되는, 방법.
  7. 제5항에 있어서, 상기 방향성 모델, 및 다중-변수, 결합 가우시안 밀도 함수(joint Gaussian density function)에 의해 추정된 어음 및 잡음에 대한 상기 평균 세트 및 상기 공분산을 사용하여 상기 어음의 확률이 계산되는, 방법.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 제2 잡음 억제 이득을 결정하는 단계는:
    대역 전력(band power)이 제1 임계값 미만이면 상기 제2 잡음 억제 이득을 최대 억제 이득과 동일하게 설정하는 단계;
    어음의 확률을 증가시키기 위해 상기 최대 억제 이득으로부터 0을 향해 램핑함으로써 상기 잡음 억제 이득을 설정하는 단계를 포함하는, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 방향성 모델을 사용한 상기 추정은 어음 및 잡음으로서 분류되는 시간-주파수 타일(time-frequency tile)을 사용하지만 반향(reverberation)으로서 분류되는 시간-주파수 타일은 제외하는, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 방향성 모델 또는 레벨 모델을 사용하여, 상기 대역에 대한 상기 마이크 공분산 및 상기 어음의 확률을 기초로 어음에 대한 평균을 추정하는 단계는:
    어음에 대한 상기 평균 및 상기 마이크 공분산을 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 어음에 대한 상기 평균의 시간 에버리지 추정치(time average estimate)를 컴퓨팅하고, 및 상기 어음의 확률로 상기 필터에 대한 상기 입력에 가중치를 부여하는 단계를 더 포함하는, 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 방향성 모델 또는 레벨 모델을 사용하여, 상기 대역에 대한 상기 마이크 공분산 및 상기 잡음의 확률을 기초로 잡음에 대한 평균을 추정하는 단계는:
    잡음에 대한 상기 평균 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 잡음에 대한 상기 평균의 시간 에버리지 추정치를 컴퓨팅하고, 및 상기 잡음의 확률로 상기 필터에 대한 상기 입력에 가중치를 부여하는 단계를 더 포함하는, 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서, 방향성 모델 또는 레벨 모델을 사용하여, 상기 대역에 대한 상기 마이크 공분산 및 상기 어음의 확률을 기초로 어음에 대한 공분산을 추정하는 단계는:
    어음에 대한 상기 공분산 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 어음에 대한 상기 공분산의 시간 에버리지 추정치를 컴퓨팅하고, 및 상기 어음의 확률로 상기 필터에 대한 상기 입력에 가중치를 부여하는 단계를 더 포함하는, 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 방향성 모델 또는 레벨 모델을 사용하여, 상기 대역에 대한 상기 마이크 공분산 및 상기 잡음의 확률을 기초로 잡음에 대한 공분산을 추정하는 단계는:
    잡음에 대한 상기 공분산 및 마이크 공분산 벡터를 필터에 대한 입력으로서 갖는 1차 저역 통과 필터를 사용하여 잡음에 대한 상기 공분산의 시간 에버리지 추정치를 컴퓨팅하고, 및 상기 잡음의 확률로 상기 필터에 대한 상기 입력에 가중치를 부여하는 단계를 더 포함하는, 방법.
  14. 시스템으로서:
    하나 이상의 컴퓨터 프로세서; 및
    상기 하나 이상의 컴퓨터 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 제1항 내지 제13항 중 어느 한 항의 동작을 수행하게 하는 명령어를 저장하는 비-일시적 컴퓨터-판독 가능 매체를 포함하는, 시스템.
  15. 하나 이상의 컴퓨터 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 제1항 내지 제13항 중 어느 한 항의 동작을 수행하게 하는 명령어를 저장하는, 비-일시적 컴퓨터-판독 가능 매체.
KR1020237018257A 2020-11-05 2021-11-04 기계 학습 보조 공간 잡음 추정 및 억제 KR20230101846A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063110228P 2020-11-05 2020-11-05
US63/110,228 2020-11-05
US202163210215P 2021-06-14 2021-06-14
US63/210,215 2021-06-14
PCT/US2021/058131 WO2022098920A1 (en) 2020-11-05 2021-11-04 Machine learning assisted spatial noise estimation and suppression

Publications (1)

Publication Number Publication Date
KR20230101846A true KR20230101846A (ko) 2023-07-06

Family

ID=78819650

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237018257A KR20230101846A (ko) 2020-11-05 2021-11-04 기계 학습 보조 공간 잡음 추정 및 억제

Country Status (5)

Country Link
US (1) US20230410829A1 (ko)
EP (1) EP4241270A1 (ko)
JP (1) JP2023550605A (ko)
KR (1) KR20230101846A (ko)
WO (1) WO2022098920A1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103907152B (zh) * 2011-09-02 2016-05-11 Gn奈康有限公司 用于音频信号噪声抑制的方法和系统
CN104520925B (zh) * 2012-08-01 2019-02-26 杜比实验室特许公司 噪声降低增益的百分位滤波

Also Published As

Publication number Publication date
EP4241270A1 (en) 2023-09-13
WO2022098920A1 (en) 2022-05-12
JP2023550605A (ja) 2023-12-04
US20230410829A1 (en) 2023-12-21

Similar Documents

Publication Publication Date Title
US10446171B2 (en) Online dereverberation algorithm based on weighted prediction error for noisy time-varying environments
CN111418010B (zh) 一种多麦克风降噪方法、装置及终端设备
US10210883B2 (en) Signal processing apparatus for enhancing a voice component within a multi-channel audio signal
US10123113B2 (en) Selective audio source enhancement
KR102470962B1 (ko) 사운드 소스들을 향상시키기 위한 방법 및 장치
CN104520925B (zh) 噪声降低增益的百分位滤波
US9536536B2 (en) Adaptive equalization system
US10553236B1 (en) Multichannel noise cancellation using frequency domain spectrum masking
CN108172231A (zh) 一种基于卡尔曼滤波的去混响方法及系统
US10755728B1 (en) Multichannel noise cancellation using frequency domain spectrum masking
US8306821B2 (en) Sub-band periodic signal enhancement system
US20160012828A1 (en) Wind noise reduction for audio reception
US8199928B2 (en) System for processing an acoustic input signal to provide an output signal with reduced noise
JP2023536104A (ja) 機械学習を用いたノイズ削減
US10438608B2 (en) Noise suppression circuit, communication device, noise suppression method, and non-transitory computer-readable recording medium storing program
EP2660814B1 (en) Adaptive equalization system
KR20230101846A (ko) 기계 학습 보조 공간 잡음 추정 및 억제
WO2022068440A1 (zh) 啸叫抑制方法、装置、计算机设备和存储介质
CN114678038A (zh) 音频噪声检测方法、计算机设备和计算机程序产品
CN116547753A (zh) 机器学习辅助的空间噪声估计和抑制
JP2006178333A (ja) 近接音分離収音方法、近接音分離収音装置、近接音分離収音プログラム、記録媒体
CN113299308A (zh) 一种语音增强方法、装置、电子设备及存储介质
JP2006126841A (ja) 周期信号増強システム
CN109905811B (zh) 一种经济型声反馈控制的方法及装置
CN112312258B (zh) 一种具有听力防护及听力补偿的智能耳机