상기한 목적을 달성하기 위한 본 발명의 특징에 따른 음성 검출 방법은,
순수 음성과 잡음의 DFT 계수가 가우시안 분포를 따른다고 가정하며,
(여기서, M은 전체 주파수 대역의 개수이고, T는 전치행렬을 나타냄)이 잡음에 오염된 음성 신호(잡음 음성 신호)의 이산 푸리에 변환(DFT) 계수의 벡터를 나타내고,
가 k번째 bin의 DFT 계수를 나타내는 경우에 있어서,
균등최강력(Uniformly Most Powerful; UMP) 테스트에 기초한 음성 검출(VAD; Voice Activity Detection) 방법으로서,
(1) 입력된 음성 신호에 대하여 고속 푸리에 변환(FFT)을 수행하여 주파수 영역의 음성 신호로 변환시키는 단계;
(2) 상기 주파수 영역으로 변환된 음성 신호의 묵음 구간으로부터 잡음 신호 의 분산(
)을 추정하는 단계;
(3) 상기 추정 단계에서 추정된 잡음 신호의 상기 분산(
)에 기초하여, 고정된 거짓 경고(false alarm) 확률 값(
)을 이용하여 다음 수학식 1에 의해 임계값(
)을 계산하는 단계;
(4) 상기 임계값 계산 단계에서 계산된 상기 임계값(
) 및 상기 잡음 음성 신호의 크기에 대하여 프레임 단위로 구해진 기하평균(geometric mean)을 이용하여 다음 수학식 2에 의해 음성 검출 결정 값(D)을 계산하는 단계; 및
(5) 상기 결정 값 계산 단계에서 계산된 상기 결정 값(D)이 0보다 크면 음성이 존재하는 것으로, 아니면 음성이 존재하지 않는 것으로 판단하는 단계
를 포함하는 것을 그 특징으로 한다.
본 발명의 또 다른 특징에 따른 음성 검출 시스템은,
순수 음성과 잡음의 DFT 계수가 가우시안 분포를 따른다고 가정하며,
(여기서, M은 전체 주파수 대역의 개수이고, T는 전치행렬을 나타냄)가 잡음에 오염된 음성 신호(잡음 음성 신호) 의 이산 푸리에 변환(DFT) 계수의 벡터를 나타내고,
가 k번째 bin의 DFT 계수를 나타내는 경우에 있어서,
균등최강력(Uniformly Most Powerful; UMP) 테스트에 기초한 음성 검출 시스템(Voice Activity Detecting System)으로서,
(1) 입력된 음성 신호에 대하여 고속 푸리에 변환(FFT)을 수행하여 주파수 영역의 음성 신호로 변환시키는 고속 푸리에 변환기;
(2) 상기 고속 푸리에 변환기에 의해 주파수 영역으로 변환된 상기 음성 신호의 묵음 구간으로부터 잡음 신호의 분산(
)을 추정하는 잡음 신호 분산 추정부;
(3) 상기 잡음 신호 분산 추정부에 의해 추정된 상기 잡음 신호의 분산(
)에 기초하여, 고정된 거짓 경고(false alarm) 확률 값(
)을 이용하여 다음 수학식 1에 의해 임계값(
)을 계산하는 임계값 계산부;
<수학식 1>
(4) 상기 임계값 계산부에 의해 계산된 상기 임계값(
) 및 상기 잡음 음성 신호의 크기에 대하여 프레임 단위로 구해진 기하평균(geometric mean)을 이용하여 다음 수학식 2에 의해 음성 검출 결정 값(D)을 계산하는 음성 검출 결정 값 계산부; 및
<수학식 2>
(5) 상기 음성 검출 결정 값 계산부에서 계산된 상기 결정 값(D)이 0보다 크면 음성이 존재하는 것으로, 아니면 음성이 존재하지 않는 것으로 판단하는 음성 검출 판단부
를 포함하는 것을 그 특징으로 한다.
이하에서는 본 발명의 실시예를 도면을 참조하여 상세히 설명한다.
먼저, 통계적 음성 검출 방법에 대해서 간단히 설명한 후, 본 발명에 따른 UMP 테스트에 기초한 음성 검출 방법에 대하여 상세히 설명하기로 한다.
1. 통계적 음성 검출 방법
음성 신호를 분석하기 위해서, 음성 신호에는 비상관 잡음(uncorrelated noise)이 섞여 있다는 가정을 한다. 이러한 가정으로부터 각각의 프레임별 신호의 형태를 다음과 같은 두 가지로 가정할 수 있다.
여기서,
는 잡음에 오염된 음성 신호(잡음 음성 신호)의 DFT 계수 벡터를 나타내고,
는 잡음 신호의 DFT 계수 벡터를 나타내며,
는 원래 음성 신호의 DFT 계수 벡 터를 나타낸다. 상기 수학식들에서 M은 전체 주파수 대역의 개수이고 T는 전치행렬을 나타낸다.
잡음 음성 신호의 번째 bin의 DFT 계수는
로 표시하는데, 이것은
와 같이 실수부와 허수부의 합으로 표현할 수 있으며, 실수부와 허수부는 각각 독립이라고 가정한다.
실수부와 허수부의 분포가 각각 가우시안 분포 형태를 갖는다고 가정하면, 실수부와 허수부가 서로 독립이기 때문에 두 부분을 곱함으로써 다음 수학식 3 및 수학식 4와 같은
의 분포를 얻을 수 있다.
여기서,
는
의 분산 값을 나타내고, u와 v는 각각 실수부와 허수부의 값을 나타낸다.
가우시안 분포를 가정한 기존의 음성 검출 방법은, H
0과 H
1 상태에서의
의 확률 밀도 함수를 통하여 우도비 테스트(LRT) 식을 구하게 된다. 이러한 방법을 통하여 구한 식은 다음 수학식 5와 같다.
여기서,
는 잡음 신호에 대한 분산이며,
와
는 각각 선행 SNR과 사후 SNR을 뜻한다.
상기 수학식 5를 참조하면, 음성 검출을 위해 필요한 파라미터는 선행 SNR과 사후 SNR이다. 선행 SNR은 DD 추정 방식을 이용하여 구할 수 있으며, 사후 SNR은 입력된 신호의 잡음과 잡음 음성 신호를 이용하여 구할 수 있다.
2.
균등최강력
테스트(
UMP
테스트)
다음으로 본 발명에서 이용하고 있는 균등최강력(UMP) 테스트에 대하여 예를 들어 간단히 설명하기로 한다.
상기 두 가지 가설 상태에서, A의 값은 알지 못하나 A > 0인 상태를 갖는다고 하자. 여기서, w[n]은 분산이
인 백색 가우시안 잡음(white Gaussian noise; WGN)이다. 이러한 가설을 통하여 H
1의 결정식을 유도하면 다음 수학식 6과 같다.
양 변에 로그를 취하면 다음 수학식 7 또는 수학식 8을 얻을 수 있다.
상기 수학식 8에서 A > 0이므로, 다시 정리하면 다음 수학식 9를 얻는다.
여기서 중요한 점은, A의 정확한 값을 알지 못하더라도 어떠한 상태인지를 결정할 수 있다는 것이다. 이런 테스트의 형태를 균등최강력(UMP) 테스트라고 부른다. 주의할 점은, UMP 테스트는 특정한 A의 값이 0보다 큰 값만을 갖거나 혹은 0보다 작은 값만을 갖는 경우, 즉 one-sided 테스트에서만 적용할 수 있다는 것이다.
3.
UMP
테스트를 이용한 음성 검출 방법
이제 본격적으로 UMP 테스트를 이용한 새로운 음성 검출 방법을 유도한다. 본 발명에서 제안하고 있는 새로운 음성 검출 방법도 기존의 음성 검출 방법에서와 동일한 가정으로부터 출발한다. 즉, 음성과 잡음의 분포는 가우시안 분포를 따른다고 가정한다.
앞서 유도했던 수학식 5를 다시 살펴보기로 한다.
상기 수학식 10에서, 잡음의 분산인
는 입력된 음성 신호의 처음 시작되는 묵음 구간을 통해 구할 수 있다. 그리고 음성의 분산 값인
의 값은 그 값이 항상 0보다 큰 값을 갖고 있음을 알고 있다. 즉, 우리는
의 값을 안다고 가정할 수 있고, 알려지지 않은 변수
는 양의 값을 갖는다는 것을 알고 있다. 즉, 두 값을 통하여 UMP 테스트를 설계할 수 있게 된다.
상기 수학식 10을 UMP 테스트를 통하여 정리하면 다음 수학식 11과 같다.
상기 수학식 11을 더 정리하면 다음 수학식 12를 얻게 된다.
상기 수학식 12에서 z = Xk이므로 최종적으로 다음 수학식 13을 얻게 된다.
마지막으로, 상기 수학식 13에 대하여 프레임 단위로 기하평균(geometric mean)을 구함으로써 최종 결정 식인 수학식 14를 얻을 수 있다.
상기 수학식 14의 좌변에서, 잡음 음성 신호
의 절대값을 구하기 위하여 입력된 잡음 음성 신호
를 실수부와 허수부로 나누어 다루는 대신, 본 발명에서는 크기 분포를 기반으로 다루었다. 즉, 음성을
와 같이, 크기
와 위상
로 표현하고, 이를 바탕으로
의 분포를 식으로 구해보면, k번째 주파수 bin의 크기
의 분포는,
가 가우시안 분포를 따르므로, 아래 수학식 15와 같은 Rayleigh 분포를 갖게 됨을 알 수 있다.
여기서,
는 단위 계단 함수(unit-step function)이다.
또한, 각각의 주파수 bin에 대한 크기의 제곱인
의 분포를 구하면, 다음 수학식 16과 같은 지수 분포 형태를 갖는다.
상기 수학식 15를 이용하여 잡음만 존재하는 경우와 잡음과 음성이 섞여 존재하는 경우의 두 가지 가설에 대해 식을 재정리하면 다음 수학식 17 및 수학식 18과 같다.
상기 수학식 17 및 수학식 18을 이용하여, 입력된 음성 신호의 분포 형태를 잡음만 존재하는 경우와 잡음과 음성이 섞여 존재하는 경우로 나누어 분석할 수 있 다. 즉, 위 두 식을 통하여 최종 결정 식인 상기 수학식 14를 수행할 수 있다.
4. 임계값 결정
상기 수학식 14에는 임계값
가 존재하는데, 이 값을 결정하는 것이 음성을 검출하는 데에 있어서 또 하나의 중요한 요소이다.
본 발명에서는, 다음 수학식 19와 같이, 거짓 경고(false alarm, FA) 확률(오탐률)을 이용하여 임계값을 구한다.
의 값은 2-degree Chi-squared 분포 형태로 이루어지는데, 이러한 거짓 경고 확률을 통해서 임계값을 얻을 수 있다.
임계값을 구하기 위하여
라 두고,
을 이용하여 상기 수학식 19를 정리하면 다음 수학식 20과 같다.
상기 수학식 20을
에 대해서 정리하면, 임계값에 대한 최종 결과식인 수학식 21을 얻을 수 있다.
수학식 21에서 주목할 점은, 고정된 거짓 경고 확률(오탐률) 상태에서 임계값은 오직 잡음 신호의 분산에만 의존한다는 것이다.
5. 실험 결과
본 발명에서 제안한 UMP 테스트에 기초한 음성 검출 방법의 성능을 테스트하기 위하여 여러 가지 실험을 하였다. 실험 방법은 음성 신호에 배블 잡음(babble noise)과 백색 잡음(white noise)의 두 가지 잡음 신호를 섞어서 이를 제안한 음성 검출 방법에 적용하는 것이었다. 그리고 각각의 잡음이 섞인 정도를 각각 0dB, 5dB, 10dB, 15dB로 달리하여 실험하였다. 본 발명의 음성 검출 방법과 가우시안 분포를 기반으로 하는 기존의 음성 검출 방법과의 비교를 통하여 제안한 음성 검출 방법의 성능을 객관적으로 평가하여 보았다. 성능을 테스트하기 위해서는 음성 검출 확률(
)과 거짓 경고 확률(
)을 알아야 한다.
는 음성 프레임에 대하여 실제로 정확하게 음성이라고 판단한 확률을 뜻하며,
는 비음성을 음성이라 잘못 판단한 확률을 뜻한다.
와
의 값을 계산하기 위하여, 32초의 음성을 10 ms 단위로 수동 레이블링하여 기준으로 삼았다. 수동 표시된 실제 음성의 비율은 54.97%이고, 이 중 46.46%는 유성음(voiced sounds)이며 8.41%는 무성음(unvoiced sounds)이었다. 잡음 음성 신호를 만들기 위해, 백색 잡음 및 배블 잡음을 NOISEX-92 잡음으로부터 SNR을 변화시키면서 원래의 음성 신호에 첨가하였다. 음성 검출 테스트는 10 ms의 프레임에 대하여 수행하였다.
먼저, 본 발명에서 제안한 UMP 테스트를 이용하여 구한 우도비 테스트 식에서
의 분포가 Rayleigh 분포를 따르는지를 확인하였다. 이를 위하여, 배블 잡음과 백색 잡음에 오염된 음성 신호에서 k가 8일 경우의
분포 값을 구하였다. 수동으로 확인한 음성과 비음성 구간별로 나눈 후, 각각의 경우의 분포를 그려보았다.
도 1은 배블 잡음이 섞인 음성 신호에서의
의 분포를 보여준다. 도 1의 가장 위의 분포는 입력 SNR이 0dB일 때의 분포이며, 차례대로 5dB, 10dB, 15dB의 분포를 나타낸다. 좌측의 분포는 입력 신호가 잡음만이 존재하는 가설 H
0 상태의 분포이며 우측의 분포는 H
1 상태의 분포이다. y축의 값은 각각의 분포를 정규화 하여 나타내었다. 실선은
을 토대로 그린 Rayleigh 분포이다.
도 2는 백색 잡음에 오염된 음성 신호에서의
의 분포를 나타낸 도면이며, 실험 방법은 도 1의 경우와 동일하다.
도 1과 도 2를 살펴보면,
의 분포가 Rayleigh 분포 형태를 가짐을 확인 할 수 있다. H
0의 분포는 0에 가까운 값을 많이 갖는 상태이며 H
1의 분포는 H
0의 분포에 비하여 큰 값으로 분포가 더 퍼져 있음을 알 수 있다. 이 두 가지 분포를 비교하여 본 발명에서 제안한 음성 검출을 할 수 있게 된다.
(2) 음성 검출
본 발명에서 제안한 방법을 이용하여 음성 검출을 하는 과정을 제시하고자 한다. 도 3 및 도 4는 각각 배블 잡음 및 백색 잡음에 오염된 음성에 대하여 제안된 음성 검출 방법의 실제 수행 과정을 나타낸 것이다. 각각에서 첫 번째 도면은 실험에 사용한 잡음 음성 신호의 파형을 나타내는 도면이다. 두 번째 도면은
의 값과 임계값과의 관계를 나타내는 것이고, 마지막 세 번째 도면은 두 값의 비교 후 음성의 유무를 판별한 것이다. 음성일 경우 1을 비음성일 경우 0의 값을 갖는다.
(3)
ROC
곡선
본 발명에서 제안한 음성 검출 방법의 성능을 알아보기 위해서,
의 분포와 임계값
을 통하여 검출 확률
와 거짓 경고 확률
을 구할 수 있다. 이 두 가지 값의 관계를 표현한 것이 수신기 동작 특성(receiver operating characteristic; ROC) 곡선이다. 도 5는 배블 잡음이 더해진 음성 신호에서의 ROC 곡선을 나타낸 도면이다. 각각 SNR이 0dB에서 15dB까지의 경우를 나타내고 있다. ROC 곡선을 통하여 음성 검출 방법의 성능을 알아볼 수 있는데, 가우시안 분포를 가정한 기존의 음성 검출 방법의 ROC를 함께 비교하여 제시함으로써, 본 발명에서 제안한 방식의 음성 검출 방법과 기존의 음성 검출 방법의 성능을 비교하였다.
x축은 거짓 경고 확률
을 나타내고, y축은 음성 검출 확률
을 나타낸다. 배블 잡음이 섞인 경우의 ROC 곡선을 살펴보면 기존의 검출 방법에 비하여 성능이 우수함을 확인할 수 있다. 입력 신호의 SNR 값이 작을 경우에는 확연히 더 좋은 성능을 보임을 확인할 수 있으며, SNR이 클 경우에는
값이 작을 때 일부 구간에서 기존의 음성 검출 방법에 비해 뒤처지는 경향이 있으나, 기존의 음성 검출 방법보다 더욱 빠르게
값이 1에 근접함을 알 수 있다.
도 6은 백색 잡음이 더해진 음성 신호에서의 ROC 곡선을 나타내는 도면이다. 도면으로부터
값이 매우 작은 경우를 제외하면 전반적으로 기존의 음성 검출 방법보다 우수한 성능을 가짐을 확인할 수 있다.
다음은 본 발명의 실시예에 따른, 균등최강력 테스트를 이용한 새로운 음성 검출 시스템에 대하여 설명한다.
도 7은 본 발명의 실시예에 따른 음성 검출 시스템을 나타내는 도면이다. 도 7에 도시한 바와 같이, 본 발명의 실시예에 따른 음성 검출 시스템은 고속 푸리에 변환기(10, Fast Fourier Transformer; FFT), 잡음 신호 분산 추정부(20), 임계값 계산부(30), 음성 검출 결정 값 계산부(40), 및 음성 검출 판단부(50)를 포함한다.
고속 푸리에 변환기(10)는 입력된 음성 신호에 대하여 고속 푸리에 변환(FFT)을 수행하여 주파수 영역의 음성 신호로 변환시킨다. 잡음 신호 분산 추정 부(20)는 상기 고속 푸리에 변환기(10)에 의해 주파수 영역으로 변환된 상기 음성 신호의 묵음 구간으로부터 잡음 신호의 분산(
)을 추정한다. 임계값 계산부(30)는 상기 잡음 신호 분산 추정부(20)에 의해 추정된 상기 잡음 신호의 분산(
)에 기초하여, 고정된 거짓 경고 확률 값(
)을 이용하여 수학식 1(
)에 의해 임계값(
)을 계산한다. 음성 검출 결정 값 계산부(40)는 상기 임계값 계산부(30)에 의해 계산된 임계값(
) 및 상기 잡음 음성 신호의 크기에 대하여 프레임 단위로 구해진 기하평균 이용하여 수학식 2(
)에 의해 음성 검출 결정 값(D)을 계산한다. 마지막으로, 음성 검출 판단부(50)는 상기 음성 검출 결정 값 계산부(40)에서 계산된 상기 결정 값(D)이 0보다 크면 음성이 존재하는 것으로, 아니면 음성이 존재하지 않는 것으로 판단한다.
이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.