KR20220114365A - 풀 밴드 신호의 노이즈 제거 방법 및 장치 - Google Patents

풀 밴드 신호의 노이즈 제거 방법 및 장치 Download PDF

Info

Publication number
KR20220114365A
KR20220114365A KR1020210017784A KR20210017784A KR20220114365A KR 20220114365 A KR20220114365 A KR 20220114365A KR 1020210017784 A KR1020210017784 A KR 1020210017784A KR 20210017784 A KR20210017784 A KR 20210017784A KR 20220114365 A KR20220114365 A KR 20220114365A
Authority
KR
South Korea
Prior art keywords
band
signal
noise
energy
processor
Prior art date
Application number
KR1020210017784A
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 라인플러스 주식회사
Priority to KR1020210017784A priority Critical patent/KR20220114365A/ko
Priority to US17/665,939 priority patent/US20220254364A1/en
Publication of KR20220114365A publication Critical patent/KR20220114365A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/21Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being power information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0072Speech codec negotiation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal 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/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques

Abstract

풀 밴드 신호의 노이즈 제거 방법 및 장치를 개시한다. 본 실시예에 따른 노이즈 제거 노이즈를 포함하는 제1 대역의 입력음성신호를 다운-샘플링하여 제1 대역보다 낮으면서 동시에 제1 대역에 포함되는 제2 대역의 신호를 생성하는 단계, 제2 대역의 신호의 노이즈를 제거하는 단계, 노이즈가 제거된 제2 대역의 신호에 기반하여 제1 대역에서 제2 대역을 제외한 제3 대역의 대역 별 에너지를 추정하는 단계 및 추정된 대역 별 에너지에 기반하여 제3 대역의 노이즈가 제거된 신호를 생성하는 단계를 포함할 수 있다.

Description

풀 밴드 신호의 노이즈 제거 방법 및 장치{METHOD AND APPARATUS FOR NOISE REDUCTION OF FULL BAND SIGNAL}
실시예들은 풀 밴드 신호의 노이즈 제거 방법 및 장치와 관련된다.
최근, VoIP와 같은 인터넷 통화에 대한 관심과, 기타 음성/사운드 신호를 활용하는 콘텐츠의 개발 및 제공에 대해 관심이 높아짐에 따라, 음성 신호로부터 노이즈를 제거하는 기술에 대한 관심 역시 높아지고 있다.
기존의 딥러닝을 활용한 노이즈 제거 기술은 주로 16 kHz의 샘플링 레이트를 갖는 신호를 타겟으로 개발되었다. 이와 같은 종래기술을 풀 밴드(샘플링 레이트 48 kHz 및 최대 주파수 24 kHz) 대역의 신호로 확장하는 경우에는 입력되는 신호의 구간이 늘어나기 때문에, 연산량이 급격하게 증가하여 실시간으로 동작하는 VoIP(Voice over Internet Protocol)와 같은 서비스에 적용하기 어렵다는 문제점이 있다.
[선행기술문헌번호]
한국공개특허 제10-2018-0067608호(공개일 2018년 06월 20일)
상기에서 설명된 정보는 단지 이해를 돕기 위한 것이며, 종래 기술의 일부를 형성하지 않는 내용을 포함할 수 있으며, 종래 기술이 통상의 기술자에게 제시할 수 있는 것을 포함하지 않을 수 있다.
상대적으로 적은 연산량으로 풀 밴드(샘플링 레이트 48kHz 및 최대 주파수 24kHz)의 신호의 노이즈를 제거할 수 있는 노이즈 제거 방법 및 장치를 제공한다.
적어도 하나의 프로세서를 포함하는 컴퓨터 장치의 노이즈 제거 방법에 있어서, 상기 적어도 하나의 프로세서에 의해, 노이즈를 포함하는 제1 대역의 입력음성신호를 다운-샘플링하여 상기 제1 대역보다 낮으면서 동시에 상기 제1 대역에 포함되는 제2 대역의 신호를 생성하는 단계; 상기 적어도 하나의 프로세서에 의해, 상기 제2 대역의 신호의 노이즈를 제거하는 단계; 상기 적어도 하나의 프로세서에 의해, 상기 노이즈가 제거된 제2 대역의 신호에 기반하여 상기 제1 대역에서 상기 제2 대역을 제외한 제3 대역의 대역 별 에너지를 추정하는 단계; 및 상기 적어도 하나의 프로세서에 의해, 상기 추정된 대역 별 에너지에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 생성하는 단계를 포함하는 것을 특징으로 하는 노이즈 제거 방법을 제공한다.
일측에 따르면, 상기 제3 대역의 대역 별 에너지를 추정하는 단계는, 상기 노이즈가 제거된 제2 대역의 신호에 FFT(Fast Fourier Transform)를 적용하여 주파수 계수에 대한 진폭 값을 계산하는 단계; 및 상기 계산된 진폭 값 및 딥러닝 모델을 이용하여 상기 제3 대역의 대역 별 에너지를 추정하는 단계를 포함하는 것을 특징으로 할 수 있다.
다른 측면에 따르면, 상기 딥러닝 모델은 제2 대역의 신호에 대한 진폭 값을 입력 데이터로, 계산된 제3 대역의 대역 별 에너지를 라벨로 이용하여 학습되어, 입력되는 진폭 값에 대해 제3 대역의 대역 별 에너지를 출력하도록 학습되는 것을 특징으로 할 수 있다.
또 다른 측면에 따르면, 상기 딥러닝 모델은 256 개의 진폭 값을 입력으로 받아 16 개의 대역 별 에너지를 출력하도록 학습되는 것을 특징으로 할 수 있다.
또 다른 측면에 따르면, 상기 제3 대역의 노이즈가 제거된 신호를 생성하는 단계는, 상기 제1 대역의 입력음성신호에서 하이 패스 필터를 이용하여 상기 제2 대역의 신호를 제거하여 제3 대역의 신호를 생성하는 단계; 상기 생성된 제3 대역의 신호에 FFT를 적용하여 주파수 계수를 계산하는 단계; 상기 생성된 제3 대역의 신호의 대역 별 에너지를 계산하는 단계; 및 상기 추정된 대역 별 에너지, 상기 계산된 대역 별 에너지 및 상기 주파수 계수에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 계산하는 단계를 포함하는 것을 특징으로 할 수 있다
또 다른 측면에 따르면, 상기 제3 대역의 노이즈가 제거된 신호를 계산하는 단계는, 상기 주파수 계수에 상기 추정된 대역 별 에너지의 상기 계산된 대역 별 에너지의 비를 대역별로 적용하여 대역별로 노이즈가 제거된 신호를 생성하는 것을 특징으로 할 수 있다.
또 다른 측면에 따르면, 상기 노이즈 제거 방법은 상기 적어도 하나의 프로세서에 의해, 상기 노이즈가 제거된 제2 대역의 신호를 업-샘플링하여 제2 대역의 노이즈가 제거된 제1 대역의 신호를 생성하는 단계; 및 상기 적어도 하나의 프로세서에 의해, 상기 제2 대역의 노이즈가 제거된 제1 대역의 신호와 상기 제3 대역의 노이즈가 제거된 신호를 믹싱하여 복원음성신호를 생성하는 단계를 더 포함할 수 있다.
또 다른 측면에 따르면, 상기 제1 대역은 48kHz 샘플링 레이트를 갖는 신호의 주파수 대역을 포함하고, 상기 제2 대역은 0부터 8 kHz 미만의 주파수 대역을 포함하고, 상기 제3 대역은 8 kHz부터 24 kHz 이하의 주파수 대역을 포함하는 것을 특징으로 할 수 있다.
또 다른 측면에 따르면, 상기 제2 대역의 신호의 노이즈를 제거하는 단계는, 상기 제2 대역의 신호를, 시간 영역에서 노이즈가 제거된 음성을 추론하도록 훈련된 유넷(u-net) 구조의 제1 네트워크에 입력하여 위상이 복원되고 노이즈가 1차로 제거된 제1 음성 신호를 생성하는 단계; 상기 제1 음성 신호에 제1 윈도우를 적용하는 단계; 상기 제1 윈도우가 적용된 제1 음성 신호에 FFT를 수행하여 진폭 신호 및 위상 신호를 획득하는 단계; 상기 진폭 신호에 대해 적용될 마스크를 추정하도록 훈련된 유넷 구조의 제2 네트워크에 상기 진폭 신호를 입력시키고, 상기 제2 네트워크의 출력으로서 상기 진폭 신호에 대해 적용될 마스크를 획득하는 단계; 상기 진폭 신호에 상기 획득된 마스크를 적용하는 단계; 상기 마스크가 적용된 진폭 신호 및 상기 위상 신호를 사용하여 상기 제1 윈도우가 적용된 제1 음성 신호에 IFFT(Inverse Fast Fourier Transform)를 수행하여 노이즈가 2차로 제거된 제2 음성 신호를 생성하는 단계; 및 상기 제2 음성 신호에 제2 윈도우를 적용하는 단계를 포함할 수 있다.
컴퓨터 장치와 결합되어 상기 방법을 컴퓨터 장치에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램을 제공한다.
상기 방법을 컴퓨터 장치에 실행시키기 위한 프로그램이 기록되어 있는 컴퓨터 판독 가능한 기록매체를 제공한다.
컴퓨터 장치에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서에 의해, 노이즈를 포함하는 제1 대역의 입력음성신호를 다운-샘플링하여 상기 제1 대역보다 낮으면서 동시에 상기 제1 대역에 포함되는 제2 대역의 신호를 생성하고, 상기 제2 대역의 신호의 노이즈를 제거하고, 상기 노이즈가 제거된 제2 대역의 신호에 기반하여 상기 제1 대역에서 상기 제2 대역을 제외한 제3 대역의 대역 별 에너지를 추정하고, 상기 추정된 대역 별 에너지에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 생성하는 것을 특징으로 하는 컴퓨터 장치를 제공한다.
상대적으로 적은 연산량으로 풀 밴드(샘플링 레이트 48 kHz 및 최대 주파수 24 kHz)의 신호의 노이즈를 제거할 수 있다.
도 1은 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다.
도 2는 본 발명의 일실시예에 따른 노이즈 제거 과정의 예를 도시한 도면이다.
도 4는 본 발명의 일실시예에 있어서, 딥러닝 모델의 예를 도시한 도면이다.
도 5는 본 발명의 일실시예에 있어서, 저대역(0~8 kHz의 주파수 대역)의 신호에 대한 노이즈를 제거하는 과정의 예를 도시한 도면이다.
도 6 및 도 7은 본 발명의 일실시예에 따른 유넷 구조의 네트워크들의 예를 도시한 도면들이다.
도 8은 본 발명의 일실시예에 따른 노이즈 제거 방법의 예를 도시한 흐름도이다.
도 9는 본 발명의 일실시예에 있어서, 저대역의 신호의 노이즈를 제거하는 과정의 예를 도시한 흐름도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일실시예에 따른 컴퓨터 장치의 예를 도시한 블록도이다. 컴퓨터 장치(Computer device, 100)는 도 1에 도시된 바와 같이, 메모리(Memory, 110), 프로세서(Processor, 120), 통신 인터페이스(Communication interface, 130) 그리고 입출력 인터페이스(I/O interface, 140)를 포함할 수 있다. 메모리(110)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(110)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 장치(100)에 포함될 수도 있다. 또한, 메모리(110)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(110)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(110)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(130)를 통해 메모리(110)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(Network, 160)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 장치(100)의 메모리(110)에 로딩될 수 있다.
프로세서(120)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(110) 또는 통신 인터페이스(130)에 의해 프로세서(120)로 제공될 수 있다. 예를 들어 프로세서(120)는 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 인터페이스(130)은 네트워크(160)를 통해 컴퓨터 장치(100)가 다른 장치와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 장치(100)의 프로세서(120)가 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(130)의 제어에 따라 네트워크(160)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(160)를 거쳐 컴퓨터 장치(100)의 통신 인터페이스(130)를 통해 컴퓨터 장치(100)로 수신될 수 있다. 통신 인터페이스(130)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(120)나 메모리(110)로 전달될 수 있고, 파일 등은 컴퓨터 장치(100)가 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.
입출력 인터페이스(140)는 입출력 장치(I/O device, 150)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(140)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(150)는 컴퓨터 장치(100)와 하나의 장치로 구성될 수도 있다.
또한, 다른 실시예들에서 컴퓨터 장치(100)는 도 1의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 장치(100)는 상술한 입출력 장치(150) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
도 2는 본 발명의 일실시예에 따른 노이즈 제거 과정의 예를 도시한 도면이다. 도 2에서는 입력음성신호(210)로부터 노이즈가 제거된 복원음성신호(290)를 획득하는 과정에 대해 설명한다. 도 2에 도시된 다운-샘플러(220), 노이즈 억제부(230), 고대역 에너지 추정부(240), 저대역 필터링부(250), 고대역 신호 생성부(260), 업-샘플러(270) 및 믹서(280)는 도 1을 통해 설명한 컴퓨터 장치(100)의 프로세서(120)가 컴퓨터 프로그램의 제어에 따라 입력음성신호(210)로부터 노이즈를 제거하여 복원음성신호(280)를 획득하기 위한 동작들의 기능적 표현(functional expression)일 수 있다.
입력음성신호(110)는 일례로, 샘플링 레이트가 48 kHz일 수 있으며, 실시간 연산을 위해 프레임 단위로 입력되는 신호일 수 있다. 각 프레임의 크기는 30 ms(1440 샘플)일 수 있고, 홉 크기(Hope size)는 15 ms(720 샘플, 50% 오버랩)일 수 있다.
다운-샘플러(220)는 샘플링 레이트 48 kHz의 입력음성신호(110)를 다운-샘플링하여 샘플링 레이트 16 kHz의 신호를 생성할 수 있다. 생성되는 16 kHz의 신호는 프레임 크기가 30 ms(480 샘플)일 수 있으며, 홉 크기가 15 ms(240 샘플, 50% 오버랩)일 수 있다.
노이즈 억제부(230)는 저대역(0~8 kHz의 주파수 대역 또는 8kHz 미만의 주파수 대역)의 신호에 대한 노이즈를 제거할 수 있다. 다시 말해, 노이즈 억제부(230)는 다운-샘플러(220)에 의해 생성된 16 kHz의 신호를 입력받아 노이즈를 제거하여 클린한 저대역 신호를 생성할 수 있다. 노이즈 억제부(230)에 대해서는 이후 더욱 자세히 설명한다. 본 명세서에서 "클린"은 노이즈가 없거나 제거된 상태를 의미할 수 있다.
고대역 에너지 추정부(240)는 노이즈 억제부(230)에 의해 노이즈가 제거된 신호와 딥러닝 모델에 기반하여 고대역(8~24 kHz의 주파수 대역)의 고대역 에너지를 추정할 수 있다 딥러닝 모델을 이용하여 고대역 에너지를 추정하는 과정에 대해서는 이후 도 3을 통해 더욱 자세히 설명한다.
저대역 필터링부(250)는 신호에 대해 대역 별 에너지를 조절하기 위하여 입력음성신호(210)에서 저대역(0~8 kHz의 주파수 대역) 신호를 제거할 수 있다. 일례로, 저대역 필터링부(250)는 입력음성신호(210)에 8 kHz 하이 패스 필터(8kHz High pass filter)를 적용하여, 저대역 신호를 제거할 수 있다.
고대역 신호 생성부(260)는 고대역 에너지 추정부(240)에서 추정된 클린한 신호의 대역 별 에너지(이하, 'CE')가 적용되도록 저대역 필터링부(250)에서 얻어지는 노이즈를 포함하는 고대역 신호에 2048-point-FFT를 적용하여 주파수 계수 S(f)를 계산하고, 대역 별 에너지(이하, 'NE')를 계산할 수 있다. 이때, 고대역 신호 생성부(260)는 아래 수학식 1과 같이 각 대역 별로 FFT 주파수 계수 S(f)에 (CE/NE)의 값을 곱하여 클린한 고대역 신호 S'(f)를 생성할 수 있다.
Figure pat00001
업-샘플러(270)는 노이즈 억제부(230)에 의해 생성된 클린한 저대역 신호를 업-샘플링(up-sampling)하여 고대역 신호를 생성할 수 있다.
믹서(280)는 업-샘플러(270)에 의해 생성되는 고대역 신호와 고대역 신호 생성부(260)에 의해 생성되는 클린한 고대역 신호를 믹싱(mixing)하여 최종적인 고대역의 클릭 음성을 생성할 수 있다.
이처럼, 클린한 저대역(0~8 kHz의 주파수 대역) 신호를 이용하여 고대역(8~24 kHz의 주파수 대역)의 클린 신호를 생성함으로써, 클린 음성을 추론하기 위한 딥러닝 모델에 입/출력 크기를 줄일 수 있기 때문에, 적은 연산량으로 고대역 클린 신호를 생성할 수 있다.
도 3은 본 발명의 일실시예에 따른 딥러닝 모델의 예를 도시한 도면이다. 딥러닝 모델(310)을 이용하여 고대역 에너지(320)를 추정하기 위해, 도 2에서 설명한 고대역 에너지 추정부(240)는 노이즈가 제거된 신호에 대해 512-point-FFT(Fast Fourier Transform)를 수행할 수 있으며, FFT 계수 값을 사용하여 256개의 주파수 계수에 대한 진폭 값(330)을 계산할 수 있다. 또한, 고대역 에너지 추정부(240)는 고대역 에너지를 추론하기 위해 계산된 진폭 값(330)을 학습된 딥러닝 모델(310)에 입력할 수 있다.
이러한 딥러닝 모델(310)은 256개의 저대역(0~8 kHz의 주파수 대역)의 주파수 진폭을 입력받아, 16개의 고대역(8~24 kHz의 주파수 대역)의 에너지를 추정하도록 설계 및 학습될 수 있다. 저대역과 고대역의 최대 주파수는 3배의 차이가 나기 때문에, 같은 시간 길이에 대한 샘플 수도 3배의 차이가 난다. 따라서, 저대역은 480 샘플에 대해 512-point-FFT가 적용될 수 있고, 고대역은 1440 샘플에 대해 2048-point-FFT가 적용될 수 있다. FFT는 2의 n승 단위로 적용되기 때문에 1440개의 샘플을 위해 2048-point-FFT가 이용될 수 있다. 고대역에 대해서는 소리를 인식하는 주파수 해상도가 낮다는 심리음향학의 이론에 따라, 딥러닝 모델(310)은 1 kHz 대역 단위로 클린 에너지를 추론하도록 설계될 수 있다. 다시 말해, 8~24 kHz에 해당하는 16 kHz 구간을 1 kHz의 대역 단위로 나누어, 총 16개의 대역으로 나뉘게 된다.
또한, 딥러닝 모델(310)을 학습시키기 위해서 입력되는 저대역 신호를 클린한 음성으로 가정하고, 클린한 고대역의 에너지를 추론하도록 설계하였다. 이를 위해, 딥러닝 모델(310)의 학습에 사용될 입력 신호로 샘플링 레이트 16 kHz의 클린 음성을 사용할 수 있으며, 샘플링 레이트 48 kHz 클릭 음성에 대한 고대역의 대역 별 에너지를 계산하여 출력 신호의 라벨(label, 타겟)로서 사용할 수 있다.
도 4는 본 발명의 일실시예에 있어서, 딥러닝 모델의 예를 도시한 도면이다. 이러한 도 4는 8~24 kHz의 주파수 대역의 클린 에너지를 추론하는 네트워크의 구조를 나타내고 있다. 이때, 도 4에서 x(n)은 현재 프레임에서 클린한 신호로 추론된 저대역의 진폭을 나타낼 수 있다. 또한, n은 현재 프레임, n-1은 과거의 첫 번째 프레임, n-2는 과거의 두 번째 프레임을 나타낼 수 있다. 이러한 도 4의 네트워크는 5 레이어의 MLP(Multi Layer Perceptron)로 구현되어 있으며, 각 레이어에서 과거의 두 개의 프레임의 출력(일례로, MLP1(n)을 위한 MLP1(n-1) 및 MLP1(n-2))을 저장하여, 다음 프레임의 입력으로 사용할 수 있다. 이와 같은 네트워크의 구조를 사용하면, 적은 크기의 딥러닝 모델을 사용하여 많은 과거의 값을 참조할 수 있다. 음성 신호는 연속성을 갖기 때문에, 과거의 값을 참조하는 네트워크를 사용함으로써, 적은 연산량으로 높은 정확도를 갖는 딥러닝 모델을 생성할 수 있다.
도 5는 본 발명의 일실시예에 있어서, 저대역(0~8 kHz의 주파수 대역)의 신호에 대한 노이즈를 제거하는 과정의 예를 도시한 도면이다. 도 5에서는 노이즈 억제부(230)가 저대역 신호를 입력받아 노이즈가 제거된 클린한 저대역 신호를 생성하는 과정의 예를 나타내고 있다. 이때, 저대역의 신호는 16 kHz의 샘플링 레이트를 갖는 신호일 수 있으며, 한 프레임의 길이는 480 샘플(sample)일 수 있다. 홉 크기는 240 샘플에 50% 오버랩 애드(overlap add)로 동작할 수 있다.
강한 잡음 환경에서의 음성 신호의 위상을 복원하고 노이즈를 1차로 제거하기 위해, 저대역 신호의 로(raw) 파형을 시간 NS(Noise Suppressor) 네트워크(510)의 입력으로 사용할 수 있다. 시간 NS 네트워크(510)는 유넷(u-net) 구조로 설계된 네트워크일 수 있으며, 인공신경망(예컨대, CNN, DNN 또는 Dense)을 통해 구현될 수 있다. 예를 들어, 총 12개로 구성된 각 레이어의 크기가 512-256-128-64-32-16-16-32-64-128-256-512 와 같이 이전 레이어의 절반이 되도록 구성될 수 있다. 이러한 시간 NS 네트워크(510)의 구성으로서 유넷을 사용한다는 것이 중요할 뿐, 세부 사항은 튜닝에 따라 달라질 수 있다. 시간 NS 네트워크(510)의 출력은 1차로 추정된 로(raw)한 제1 음성 신호로서, 제1 음성 신호에는 약한 화이트 노이즈(white noise) 성분이 섞여 있다.
제1 음성 신호에 FFT(530)를 수행하기 전에, FFT(530)의 출력 특성을 좋게 만들기 위한 제1 윈도우(520)가 적용할 수 있다. 또한 이전 프레임과 현재 프레임간의 오버랩 애드 구간에서의 불연속성에 의해 발생하는 잡음을 제거하기 위해서도 제1 윈도우(520)가 적용될 수 있다. 도 5에서는 FTT(530)를 수행하기 전에 제1 윈도우(520)가, IFFT(550) 이후에 제2 윈도우(560)가 각각 적용됨을 나타내고 있다. 적용 가능한 윈도우는 여러 종류가 있으며, 일례로, MDCT(Modified Discrete Cosine Transform)에서의 TDAC(time domain aliasing cancellation)를 위해 사용하는 KBD(Kaiser-bessel-derived) 윈도우가 활용될 수 있다. 원래의 목적과는 다르지만, KBD 윈도우는 오버랩 구간에서의 윈도우의 제곱 합이 1을 만족하여, FFT(530)의 이전과 IFFT(550)의 이후에 동시에 윈도우 적용(KBD 윈도우(520, 560))이 가능하다. 이와 같이 두 구간에서 윈도우를 적용하면, 프레임 간의 불연속에 의한 잡음을 더욱 효과적으로 제거할 수 있다. 실제 구현된 기술에서 KBD 윈도우를 적용할 경우 최상의 성능을 나타내었다.
한편, 제1 윈도우(520)가 적용된 제1 음성 신호에는 FFT(530)가 수행될 수 있고, 이러한 FFT(530)가 수행된 제1 음성 신호로부터 저대역 신호의 진폭(magnitude)을 나타내는 진폭 신호와, 위상(phase)을 나타내는 위상 신호가 각각 획득될 수 있다.
이때, 도 5의 실시예에서 노이즈 억제부(230)는 예컨대, 8 kHz 미만의 주파수 대역폭에 속하는 진폭 신호를 주파수 NS 네트워크(540)를 사용하여 복원할 수 있다. 한편, 8 kHz 이상의 대역폭에 속하는 진폭 신호는 바크 스케일 단위로 구분될 수 있으며, 구분된 진폭 신호의 평균 에너지가 주파수 NS 네트워크(540)로 입력되어 복원될 수 있다. 또한, 위상 신호는 특별한 처리 없이 IFFT(160)의 수행을 위해 사용될 수 있다. 또한, 8 kHz 미만의 대역폭에 속하는 진폭 신호와 함께, 8 kHz 미만의 대역폭에 속하는 진폭 신호에 기반하여 생성된 MFCC(Mel frequency cepstral coefficient)(들)이 주파수 NS 네트워크(540)에 파라미터로서 입력될 수 있다. 주파수 NS 네트워크(540)는 예컨대, 인공신경망(예컨대, CNN, DNN 또는 Dense)을 통해 유넷 구조로 구현될 수 있다.
주파수 NS 네트워크(540)로부터의 출력은 FFT(530)로부터 출력된 FFT 계수로서의 진폭에 대해 적용하기 위한 마스크일 수 있다. 이러한 마스크가 적용된 진폭과 FFT(530)로부터 출력된 FFT 계수로서의 위상 신호를 사용하여 노이즈가 2차로 제거될 수 있다. 예컨대, 마스크가 적용된 진폭과 위상 신호를 사용하여 제1 음성 신호의 FFT 계수가 복원될 수 있고, IFFT(550)가 수행됨으로써 노이즈가 2차로 제거되어 클린한 저대역 신호가 출력될 수 있다. 이때, 이미 설명한 바와 같이, IFFT(550)의 출력에 대해 제2 윈도우(560)가 적용되어 프레임의 불연속에 의한 노이즈를 최소화할 수 있다.
실시예에서는, (가령, 8 kHz 이상의 주파수 대역폭에 속하는 진폭 신호를 그대로 주파수 NS 네트워크(540)로 입력시키는 경우에 비해) 8 kHz 이상의 대역폭에 속하는 진폭 신호를 사용하여 노이즈를 제거하기 위한 연산량이 현저하게 감소될 수 있다.
이처럼, 실시예에서는 저대역(0~8 kHz의 주파수 대역)의 신호에 대해 주파수 영역과 시간 영역에 대한 각각의 네트워크를 구성하여 두 네트워크가 상호 호완적으로 좋은 성능을 낼 수 있도록 학습을 진행함에 따라 잡음이 심한 환경에서도 우수한 노이즈 제거 성능을 제공할 수 있다.
도 6 및 도 7은 본 발명의 일실시예에 따른 유넷 구조의 네트워크들의 예를 도시한 도면들이다. 유넷 구조는 도 6에 나타난 바와 같이 각 레이어의 크기가 512-256-128-64-32-16-16-32-64-128-256-512 와 같이 이전 레이어의 절반이 되도록 구성되는 특징을 가지며, 이러한 레이어들의 모양이 "U"를 나타내고 있다. 도 6에서는 도 5을 통해 설명한 시간 NS 네트워크(510)이 CNN의 총 12 개의 레이어들을 사용하여 구현되는 예를 나타내고 있으며, 도 7에서는 도 5을 통해 설명한 주파수 NS 네트워크(540)가 Dense의 총 6개의 레이어들을 사용하여 구현되는 예를 나타내고 있다. 이는 시간 NS 네트워크(510)와 주파수 NS 네트워크(540)를 구성하는 하나의 실시예일뿐 이에 한정되지 않는다.
또한, 도 5 내지 도 7의 실시예는 저대역 신호의 노이즈를 제거하는 과정의 한 예일 뿐, 저대역 신호의 노이즈를 제거하는 방법이 본 실시예로 한정되는 것은 아니다. 이미 16 kHz의 샘플링 레이트를 갖는 신호를 타겟으로 개발된 다양한 기술들이 존재함을 설명한 바 있다.
도 8은 본 발명의 일실시예에 따른 노이즈 제거 방법의 예를 도시한 흐름도이다. 본 실시예에 따른 노이즈 제거 방법은 도 1을 통해 설명한 컴퓨터 장치(100)에 의해 수행될 수 있다. 이때, 컴퓨터 장치(100)의 프로세서(120)는 메모리(110)가 포함하는 운영체제의 코드나 적어도 하나의 컴퓨터 프로그램의 코드에 따른 제어 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 프로세서(120)는 컴퓨터 장치(100)에 저장된 코드가 제공하는 제어 명령에 따라 컴퓨터 장치(100)가 도 8의 방법이 포함하는 단계들(810 내지 860)을 수행하도록 컴퓨터 장치(200)를 제어할 수 있다.
단계(810)에서 컴퓨터 장치(100)는 노이즈를 포함하는 제1 대역의 입력음성신호를 다운-샘플링하여 제1 대역보다 낮으면서 동시에 제1 대역에 포함되는 제2 대역의 신호를 생성할 수 있다. 여기서, 제1 대역은 풀 밴드 신호(48kHz의 샘플링 레이트를 갖는 신호)의 주파수 대역을 포함할 수 있고, 제2 대역은 저대역(0부터 8 kHz 미만의 주파수 대역)을 포함할 수 있다.
단계(820)에서 컴퓨터 장치(100)는 제2 대역의 신호의 노이즈를 제거할 수 있다. 제2 대역의 신호의 노이즈를 제거하는 방법에 대해서는 이후 더욱 자세히 설명한다.
단계(830)에서 컴퓨터 장치(100)는 노이즈가 제거된 제2 대역의 신호에 기반하여 제1 대역에서 제2 대역을 제외한 제3 대역의 대역 별 에너지를 추정할 수 있다. 여기서, 제3 대역은 고대역(8 kHz부터 48 kHz 이하의 주파수 대역)을 포함할 수 있다. 일례로, 컴퓨터 장치(100)는 노이즈가 제거된 제2 대역의 신호에 FFT를 적용하여 주파수 계수에 대한 진폭 값을 계산할 수 있으며, 계산된 진폭 값 및 딥러닝 모델을 이용하여 제3 대역의 대역 별 에너지를 추정할 수 있다. 이때, 딥러닝 모델은 제2 대역의 신호에 대한 진폭 값을 입력 데이터로, 계산된 제3 대역의 대역 별 에너지를 라벨로 이용하여 학습되어, 입력되는 진폭 값에 대해 제3 대역의 대역 별 에너지를 출력하도록 학습할 수 있다. 예를 들어, 딥러닝 모델은 256개의 진폭 값을 입력으로 받아 16개의 대역 별 에너지를 출력하도록 학습될 수 있다.
단계(840)에서 컴퓨터 장치(100)는 추정된 대역 별 에너지에 기반하여 제3 대역의 노이즈가 제거된 신호를 생성할 수 있다. 일례로, 컴퓨터 장치(100)는 제1 대역의 입력음성신호에서 하이 패스 필터를 이용하여 상기 제2 대역의 신호를 제거하여 제3 대역의 신호를 생성하고, 생성된 제3 대역의 신호에 FFT를 적용하여 주파수 계수를 계산할 수 있다. 또한, 컴퓨터 장치(100)는 생성된 제3 대역의 신호의 대역 별 에너지를 계산할 수 있으며, 추정된 대역 별 에너지, 계산된 대역 별 에너지 및 주파수 계수에 기반하여 제3 대역의 노이즈가 제거된 신호를 계산할 수 있다. 보다 구체적인 예로, 컴퓨터 장치(100)는 주파수 계수에 추정된 대역 별 에너지의 상기 계산된 대역 별 에너지의 비를 대역별로 적용하여 대역별로 노이즈가 제거된 신호를 생성할 수 있다. 여기서, 주파수 계수, 추정된 대역 별 에너지 및 계산된 대역 별 에너지는 각각 수학식 1에서 S(f), CE 및 NE에 각각 대응될 수 있다.
단계(850)에서 컴퓨터 장치(100)는 노이즈가 제거된 제2 대역의 신호를 업-샘플링하여 제2 대역의 노이즈가 제거된 제1 대역의 신호를 생성할 수 있다.
단계(860)에서 컴퓨터 장치(100)는 제2 대역의 노이즈가 제거된 제1 대역의 신호와 제3 대역의 노이즈가 제거된 신호를 믹싱하여 복원음성신호를 생성할 수 있다.
도 9는 본 발명의 일실시예에 있어서, 저대역의 신호의 노이즈를 제거하는 과정의 예를 도시한 흐름도이다. 도 9의 단계들(910 내지 970)은 도 8의 단계(820)에 포함될 수 있다.
단계(910)에서 컴퓨터 장치(100)는 제2 대역의 신호를, 시간 영역에서 노이즈가 제거된 음성을 추론하도록 훈련된 유넷(u-net) 구조의 제1 네트워크에 입력하여 위상이 복원되고 노이즈가 1차로 제거된 제1 음성 신호를 생성할 수 있다. 여기서, 제2 대역의 신호는 도 8을 통해 설명한 단계(810)에서 생성된 신호일 수 있으며, 제1 네트워크는 도 5를 통해 설명한 시간 NS 네트워크(510)에 대응할 수 있다. 이미 설명한 바와 같이, 시간 NS 네트워크(510) 유넷 구조를 활용하여 입력 음성 신호의 위상을 복원하고 노이즈를 1차로 제거하도록 미리 학습될 수 있다. 단계(910)에서 출력되는 제1 음성 신호는 약한 화이트 노이즈 성분을 포함할 수 있다.
단계(920)에서 컴퓨터 장치(100)는 제1 음성 신호에 제1 윈도우를 적용할 수 있다. 이미 설명한 바와 같이 제1 윈도우는 MDCT에서의 TDAC를 위해 사용하는 KBD 윈도우를 포함할 수 있으나 이에 한정되지는 않는다.
단계(930)에서 컴퓨터 장치(100)는 제1 윈도우가 적용된 제1 음성 신호에 FFT를 수행하여 진폭 신호 및 위상 신호를 획득할 수 있다. 일례로, 컴퓨터 장치(100)는 제1 윈도우가 적용된 제1 음성 신호에 대해 512 FFT를 수행할 수 있다.
단계(940)에서 컴퓨터 장치(100)는 진폭 신호에 대해 적용될 마스크를 추정하도록 훈련된 유넷 구조의 제2 네트워크에 진폭 신호를 입력시키고, 제2 네트워크의 출력으로서 진폭 신호에 대해 적용될 마스크를 획득할 수 있다. 예를 들어, 컴퓨터 장치(100)는 512 FFT의 출력에 대해 진폭 성분을 추출하여 256의 진폭 데이터를 제2 네트워크에 입력으로 사용할 수 있다. 여기서 제2 네트워크는 도 5를 통해 설명한 주파수 NS 네트워크(540)와 같은 머신러닝 모델에 대응할 수 있으며, 입력되는 진폭 신호에 대해 적용될 마스크를 추정하도록 훈련될 수 있다.
제2 대역의 신호의 진폭 신호(및/또는 해당 진폭 신호로부터 얻어진 파라미터)는 제2 네트워크에서의 추론을 수행하기 위한 입력 파라미터가 될 수 있다.
단계(950)에서 컴퓨터 장치(100)는 진폭 신호에 획득된 마스크를 적용할 수 있다. 예를 들어, 컴퓨터 장치(100)는 제2 네트워크에 의해 출력되는 마스크를 제1 윈도우가 적용된 제1 음성 신호의 진폭 신호에 대해 적용함으로써(예컨대, 곱함으로써), 주파수 영역의 노이즈가 제거된 진폭 신호가 얻어질 수 있다.
단계(960)에서 컴퓨터 장치(100)는 마스크가 적용된 진폭 신호 및 위상 신호를 사용하여 제1 윈도우가 적용된 제1 음성 신호에 IFFT(Inverse Fast Fourier Transform)를 수행하여 노이즈가 2차로 제거된 제2 음성 신호를 생성할 수 있다.
단계(970)에서 컴퓨터 장치(100)는 제2 음성 신호에 제2 윈도우를 적용할 수 있다. 이미 설명한 바와 같이 제1 윈도우 및 제2 윈도우는 MDCT에서의 TDAC를 위해 사용하는 KBD 윈도우를 포함할 수 있으나 이에 한정되지는 않는다. 제1 윈도우와 제2 윈도우는 입력 음성 신호에 대해 모바일 환경에서 실시간으로 기술을 적용하기 위해, 프레임 단위의 연산을 수행함에 따라 프레임의 불연속에 의해 발생하는 노이즈를 최소화하기 위해 활용될 수 있다.
도 9의 실시예는 저대역(제2 대역)의 신호의 노이즈를 제거하기 위한 하나의 실시예로, 저대역의 신호의 노이즈를 제거하는 방법이 본 실시예로 제한되는 것은 아니다. 이미 16 kHz의 샘플링 레이트를 갖는 신호를 타겟으로 개발된 다양한 기술들이 존재함을 설명한 바 있다.
이때, 본 발명의 실시예들에 따르면, 저대역인 제2 대역의 신호에 대한 노이즈를 제거하고, 노이즈가 제거된 제2 대역의 신호에 기반하여 딥러닝 모델을 통해 고대역인 제3 대역의 신호 노이즈를 제거함으로써, 딥러닝 모델의 입력 및 출력 크기를 줄일 수 있고, 따라서 적은 연산량으로 고대역 클린 신호를 생성할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (15)

  1. 적어도 하나의 프로세서를 포함하는 컴퓨터 장치의 노이즈 제거 방법에 있어서,
    상기 적어도 하나의 프로세서에 의해, 노이즈를 포함하는 제1 대역의 입력음성신호를 다운-샘플링하여 상기 제1 대역보다 낮으면서 동시에 상기 제1 대역에 포함되는 제2 대역의 신호를 생성하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 제2 대역의 신호의 노이즈를 제거하는 단계;
    상기 적어도 하나의 프로세서에 의해, 상기 노이즈가 제거된 제2 대역의 신호에 기반하여 상기 제1 대역에서 상기 제2 대역을 제외한 제3 대역의 대역 별 에너지를 추정하는 단계; 및
    상기 적어도 하나의 프로세서에 의해, 상기 추정된 대역 별 에너지에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 생성하는 단계
    를 포함하는 것을 특징으로 하는 노이즈 제거 방법.
  2. 제1항에 있어서,
    상기 제3 대역의 대역 별 에너지를 추정하는 단계는,
    상기 노이즈가 제거된 제2 대역의 신호에 FFT(Fast Fourier Transform)를 적용하여 주파수 계수에 대한 진폭 값을 계산하는 단계; 및
    상기 계산된 진폭 값 및 딥러닝 모델을 이용하여 상기 제3 대역의 대역 별 에너지를 추정하는 단계
    를 포함하는 것을 특징으로 하는 노이즈 제거 방법.
  3. 제2항에 있어서,
    상기 딥러닝 모델은 제2 대역의 신호에 대한 진폭 값을 입력 데이터로, 계산된 제3 대역의 대역 별 에너지를 라벨로 이용하여 학습되어, 입력되는 진폭 값에 대해 제3 대역의 대역 별 에너지를 출력하도록 학습되는 것을 특징으로 하는 노이즈 제거 방법.
  4. 제2항에 있어서,
    상기 딥러닝 모델은 256 개의 진폭 값을 입력으로 받아 16 개의 대역 별 에너지를 출력하도록 학습되는 것을 특징으로 하는 노이즈 제거 방법.
  5. 제1항에 있어서,
    상기 제3 대역의 노이즈가 제거된 신호를 생성하는 단계는,
    상기 제1 대역의 입력음성신호에서 하이 패스 필터를 이용하여 상기 제2 대역의 신호를 제거하여 제3 대역의 신호를 생성하는 단계;
    상기 생성된 제3 대역의 신호에 FFT를 적용하여 주파수 계수를 계산하는 단계;
    상기 생성된 제3 대역의 신호의 대역 별 에너지를 계산하는 단계; 및
    상기 추정된 대역 별 에너지, 상기 계산된 대역 별 에너지 및 상기 주파수 계수에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 계산하는 단계
    를 포함하는 것을 특징으로 하는 노이즈 제거 방법.
  6. 제5항에 있어서,
    상기 제3 대역의 노이즈가 제거된 신호를 계산하는 단계는,
    상기 주파수 계수에 상기 추정된 대역 별 에너지의 상기 계산된 대역 별 에너지의 비를 대역별로 적용하여 대역별로 노이즈가 제거된 신호를 생성하는 것을 특징으로 하는 노이즈 제거 방법.
  7. 제1항에 있어서,
    상기 적어도 하나의 프로세서에 의해, 상기 노이즈가 제거된 제2 대역의 신호를 업-샘플링하여 제2 대역의 노이즈가 제거된 제1 대역의 신호를 생성하는 단계; 및
    상기 적어도 하나의 프로세서에 의해, 상기 제2 대역의 노이즈가 제거된 제1 대역의 신호와 상기 제3 대역의 노이즈가 제거된 신호를 믹싱하여 복원음성신호를 생성하는 단계
    를 더 포함하는 노이즈 제거 방법.
  8. 제1항에 있어서,
    상기 제1 대역은 48 kHz 샘플링 레이트를 갖는 신호의 주파수 대역을 포함하고,
    상기 제2 대역은 0부터 8 kHz 미만의 주파수 대역을 포함하고,
    상기 제3 대역은 8 kHz부터 24 kHz 이하의 주파수 대역을 포함하는 것
    을 특징으로 하는 노이즈 제거 방법.
  9. 제1항에 있어서,
    상기 제2 대역의 신호의 노이즈를 제거하는 단계는,
    상기 제2 대역의 신호를, 시간 영역에서 노이즈가 제거된 음성을 추론하도록 훈련된 유넷(u-net) 구조의 제1 네트워크에 입력하여 위상이 복원되고 노이즈가 1차로 제거된 제1 음성 신호를 생성하는 단계;
    상기 제1 음성 신호에 제1 윈도우를 적용하는 단계;
    상기 제1 윈도우가 적용된 제1 음성 신호에 FFT를 수행하여 진폭 신호 및 위상 신호를 획득하는 단계;
    상기 진폭 신호에 대해 적용될 마스크를 추정하도록 훈련된 유넷 구조의 제2 네트워크에 상기 진폭 신호를 입력시키고, 상기 제2 네트워크의 출력으로서 상기 진폭 신호에 대해 적용될 마스크를 획득하는 단계;
    상기 진폭 신호에 상기 획득된 마스크를 적용하는 단계;
    상기 마스크가 적용된 진폭 신호 및 상기 위상 신호를 사용하여 상기 제1 윈도우가 적용된 제1 음성 신호에 IFFT(Inverse Fast Fourier Transform)를 수행하여 노이즈가 2차로 제거된 제2 음성 신호를 생성하는 단계; 및
    상기 제2 음성 신호에 제2 윈도우를 적용하는 단계
    를 포함하는 것을 특징으로 하는 노이즈 제거 방법.
  10. 컴퓨터 장치와 결합되어 제1항 내지 제9항 중 어느 한 항의 방법을 컴퓨터 장치에 실행시키기 위해 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  11. 제1항 내지 제9항 중 어느 한 항의 방법을 컴퓨터 장치에 실행시키기 위한 프로그램이 기록되어 있는 컴퓨터 판독 가능한 기록매체.
  12. 컴퓨터 장치에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서에 의해,
    노이즈를 포함하는 제1 대역의 입력음성신호를 다운-샘플링하여 상기 제1 대역보다 낮으면서 동시에 상기 제1 대역에 포함되는 제2 대역의 신호를 생성하고,
    상기 제2 대역의 신호의 노이즈를 제거하고,
    상기 노이즈가 제거된 제2 대역의 신호에 기반하여 상기 제1 대역에서 상기 제2 대역을 제외한 제3 대역의 대역 별 에너지를 추정하고,
    상기 추정된 대역 별 에너지에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 생성하는 것
    을 특징으로 하는 컴퓨터 장치.
  13. 제12항에 있어서,
    상기 제3 대역의 대역 별 에너지를 추정하기 위해, 상기 적어도 하나의 프로세서에 의해,
    상기 노이즈가 제거된 제2 대역의 신호에 FFT를 적용하여 주파수 계수에 대한 진폭 값을 계산하고,
    상기 계산된 진폭 값 및 딥러닝 모델을 이용하여 상기 제3 대역의 대역 별 에너지를 추정하는 것
    을 특징으로 하는 컴퓨터 장치.
  14. 제12항에 있어서,
    상기 제3 대역의 노이즈가 제거된 신호를 생성하기 위해, 상기 적어도 하나의 프로세서에 의해,
    상기 제1 대역의 입력음성신호에서 하이 패스 필터를 이용하여 상기 제2 대역의 신호를 제거하여 제3 대역의 신호를 생성하고,
    상기 생성된 제3 대역의 신호에 FFT를 적용하여 주파수 계수를 계산하고,
    상기 생성된 제3 대역의 신호의 대역 별 에너지를 계산하고,
    상기 추정된 대역 별 에너지, 상기 계산된 대역 별 에너지 및 상기 주파수 계수에 기반하여 상기 제3 대역의 노이즈가 제거된 신호를 계산하는 것
    을 특징으로 하는 컴퓨터 장치.
  15. 제12항에 있어서,
    상기 적어도 하나의 프로세서에 의해,
    상기 노이즈가 제거된 제2 대역의 신호를 업-샘플링하여 제2 대역의 노이즈가 제거된 제1 대역의 신호를 생성하고,
    상기 제2 대역의 노이즈가 제거된 제1 대역의 신호와 상기 제3 대역의 노이즈가 제거된 신호를 믹싱하여 복원음성신호를 생성하는 것
    을 특징으로 하는 컴퓨터 장치.
KR1020210017784A 2021-02-08 2021-02-08 풀 밴드 신호의 노이즈 제거 방법 및 장치 KR20220114365A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210017784A KR20220114365A (ko) 2021-02-08 2021-02-08 풀 밴드 신호의 노이즈 제거 방법 및 장치
US17/665,939 US20220254364A1 (en) 2021-02-08 2022-02-07 Method and apparatus for noise reduction of full-band signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210017784A KR20220114365A (ko) 2021-02-08 2021-02-08 풀 밴드 신호의 노이즈 제거 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20220114365A true KR20220114365A (ko) 2022-08-17

Family

ID=82705041

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210017784A KR20220114365A (ko) 2021-02-08 2021-02-08 풀 밴드 신호의 노이즈 제거 방법 및 장치

Country Status (2)

Country Link
US (1) US20220254364A1 (ko)
KR (1) KR20220114365A (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6678656B2 (en) * 2002-01-30 2004-01-13 Motorola, Inc. Noise reduced speech recognition parameters
GB2473267A (en) * 2009-09-07 2011-03-09 Nokia Corp Processing audio signals to reduce noise
US11227586B2 (en) * 2019-09-11 2022-01-18 Massachusetts Institute Of Technology Systems and methods for improving model-based speech enhancement with neural networks
US11587575B2 (en) * 2019-10-11 2023-02-21 Plantronics, Inc. Hybrid noise suppression
US20200184987A1 (en) * 2020-02-10 2020-06-11 Intel Corporation Noise reduction using specific disturbance models

Also Published As

Publication number Publication date
US20220254364A1 (en) 2022-08-11

Similar Documents

Publication Publication Date Title
US10014002B2 (en) Real-time audio source separation using deep neural networks
US20210256379A1 (en) Audio processing with neural networks
US9842609B2 (en) Real-time adaptive audio source separation
KR20220018271A (ko) 딥러닝을 이용한 시간 및 주파수 분석 기반의 노이즈 제거 방법 및 장치
KR20110044990A (ko) 특성 추출을 사용하여 음성 향상을 위한 오디오 신호를 프로세싱하기 위한 장치 및 방법
US11074925B2 (en) Generating synthetic acoustic impulse responses from an acoustic impulse response
KR101712475B1 (ko) 부-대역 도메인 내의 자유롭게 선택가능한 주파수 변이를 위한 장치, 방법 및 컴퓨터 프로그램
CN108604452A (zh) 声音信号增强装置
US20230162758A1 (en) Systems and methods for speech enhancement using attention masking and end to end neural networks
Yu et al. Speech enhancement using a DNN-augmented colored-noise Kalman filter
JP2020086434A (ja) 音声検出のための雑音除去変分オートエンコーダ基盤の統合トレーニング方法および装置
KR102410850B1 (ko) 잔향 제거 오토 인코더를 이용한 잔향 환경 임베딩 추출 방법 및 장치
CN112712816A (zh) 语音处理模型的训练方法和装置以及语音处理方法和装置
CN117136407A (zh) 用于音频处理的深度神经网络去噪器掩模生成系统
CN114667567B (zh) 模态混响的模式选择
JP2023536104A (ja) 機械学習を用いたノイズ削減
Hammam et al. Blind signal separation with noise reduction for efficient speaker identification
KR20220114365A (ko) 풀 밴드 신호의 노이즈 제거 방법 및 장치
US11900902B2 (en) Deep encoder for performing audio processing
US20210166128A1 (en) Computer-implemented method and device for generating frequency component vector of time-series data
KR20230172288A (ko) 딥러닝을 기반의 잡음 제거 방법 및 장치
KR20210105688A (ko) 머신러닝 모델을 사용하여 노이즈를 포함하는 입력 음성 신호로부터 노이즈가 제거된 음성 신호를 복원하는 방법 및 장치
Nasretdinov et al. Hierarchical encoder-decoder neural network with self-attention for single-channel speech denoising
JP2023035921A (ja) 非自己回帰音声合成方法及びシステム
Saoud et al. DSP Real-Time Implementation of DOST Algorithm Used for Speech Enhancement