상술한 목적을 달성하기 위한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템은, 입력된 신호로부터 음성 신호를 인식하고 이를 음성 신호로서 출력하는 음성 신호 인식부와, 상기 음성 신호를 입력받아 주파수 도메인의 신호로 변환하여 음성 신호 프레임을 생성하는 음성 신호 변환부와, 상기 음성 신호 프레임(frame)을 입력받아, 모폴로지(morphological) 연산을 통해 모폴로지 분석에 따른 신호 파형을 가지는 특징 주파수 영역을 생성하는 모폴로지 분석부와, 상기 음성 신호 프 레임 또는 상기 모폴로지 분석에 따른 특징 주파수 영역을 입력받아 상기 음성 신호로부터 다음 단의 음성 처리 시스템에서 요구하는 음성 신호의 특징 정보를 추출하는 음성 신호 특징 정보 추출부와, 기 설정된 판단 조건에 따라 상기 음성 신호 프레임의 하모닉(harmonic) 피크(Peak)를 이용하여 음성 신호의 특징 정보를 추출할 것인지, 하모닉 피크를 이용하지 않을 것인지를 판단하며, 상기 하모닉 피크를 이용할 경우 상기 음성 신호 프레임을 상기 음성 신호 특징 추출부에 입력하고, 상기 하모닉 피크를 이용하지 않을 경우 상기 음성 신호 프레임의 모폴로지 분석 결과에 따른 특징 주파수 영역을 상기 음성 신호 특징 정보 추출부에 입력하여 상기 음성 처리 시스템에서 요구하는 음성 신호 특징 정보를 추출하는 제어부를 포함한다.
또한 음성 신호 특징 정보 추출 방법은, 입력된 신호로부터 음성 신호를 인식하고 이를 추출 및 주파수 도메인(domain) 영역으로 변환하여 음성 신호 프레임을 생성하는 음성 신호 프레임 생성 단계와, 기 설정된 판단 조건에 따라 상기 음성 신호 프레임을 하모닉 피크를 이용하여 음성 신호 특징 정보를 추출할 것인가 아니면 하모닉 피크를 이용하지 않고 음성 신호 특징 정보를 추출할 것인지 여부를 판단하는 하모닉 피크 이용 판단 단계와, 하모닉 피크 이용 판단 결과에 따라, 상기 음성 신호 프레임의 모폴로지 분석을 수행하여 상기 모폴로지 분석 결과에 따른 특징 주파수 영역을 추출하는 모폴로지 분석 단계와, 상기 하모닉 피크 이용 판단 결과에 따라, 상기 특징 주파수 영역 또는 상기 음성 프레임을 이용하여 다음 단의 음성 처리 시스템이 요구하는 음성 신호 특징 정보에 따른 음성 신호 특징 정보를 추출하는 음성 신호 특징 정보 추출 단계와, 상기 추출된 음성 신호 특징 정보를 상기 음성 처리 시스템에 출력하는 음성 신호 특징 정보 출력 단계를 포함한다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 도면들 중 동일한 구성 요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의하여야 한다. 하기 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
먼저 본 발명의 완전한 이해를 돕기 위해, 본 발명의 기본 원리를 설명하면, 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서는, 입력된 음성 신호를 하모닉(harmonic : 고조파) 피크(Peak)를 이용하여 음성 신호의 특징 정보를 추출할 것인지, 하모닉 피크를 이용하지 않을 것인지를 판단한다. 이러한 판단은 입력되는 음성 신호에 따라 또는 다음 단의 음성 처리 시스템의 특성에 따라 결정될 수 있다.
그리고 하모닉 피크를 이용하는 경우에는, 본 발명의 음성 신호 전처리 시스템의 제어부는 입력된 음성 신호를 주파수 도메인(domain)으로 변환하여 생성된 음성 신호 프레임(frame)을 음성 신호 특징 정보 추출부에 입력한다. 여기서 상기 제어부는 다음 단의 음성 처리 시스템이 요구하는 음성 신호 특징 정보에 따라 상기 다수의 음성 신호 특징 정보 추출부들 중 적어도 하나 이상을 선택할 수 있다. 그리고 상기 제어부에 의해 선택된 음성 신호 특징 정보 추출부는 다음 단의 음성 처리 시스템에서 요구하는 음성 신호 특징 정보를 추출한다. 그리고 상기 제어부는 추출된 음성 신호 특징 정보를 출력한다. 여기서 상기 음성 신호의 특징 정보들은 음성 신호의 포락선 정보 또는 음성 신호의 피치 정보 및 음성 신호의 유/무성음 또는 배경잡음 여부의 판단 결과가 될 수 있다.
그리고 만약 하모닉 피크를 이용하지 않는 경우라면, 상기 제어부는 상기 생성된 음성 신호 프레임을 모폴로지(morphological) 분석 기법을 이용하여 모폴로지 분석을 수행한다. 그리고 모폴로지 분석에 따른 신호 파형을 추출하고, 추출된 신호 파형을 음성 신호 프레임 대신에 각각의 음성 신호 특징 정보 추출부들에 입력한다. 그러면 상기 각각의 음성 신호 특징 정보 추출부들은 음성 신호 프레임 대신 상기 모폴로지 분석 결과에 따른 신호 파형을 입력받고, 입력받은 신호 파형을 이용하여 입력된 음성 신호의 특징 정보들을 추출한다. 그리고 상기 제어부는 추출된 음성 신호 특징 정보들을 다음 단의 음성 처리 시스템에 출력한다.
도 1은 이러한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템의 블록 구성을 보이고 있는 도면이다.
도 1을 참조하여 살펴보면, 본 발명의 실시 예에 따른 음성 신호 전처리 시스템은 제어부(100)와 제어부(100)에 연결된 메모리부(102), 모폴로지 분석부(104), 피치 추출부(110), 포락선 추출부(126), 신경망(Neural Network) 시스템(124), 잡음 제거부(122), 음성 신호 특징 정보 출력부(120), 유성음화 정도 연산부(118), 그리고 음성 신호 변환부(116)를 포함한다. 여기서 제어부(100)는 음성 신호를 입력받고, 입력된 음성 신호로부터 다음 단의 음성 처리 시스템이 요구하는 음성 신호의 특징 정보를 추출하기 위해 각 구성부들을 제어한다.
여기서 상기 제어부(100)는 음성 신호를 입력받고 이를 주파수 도메인으로 변환한다. 그리고 입력되는 음성 신호에 따라 또는 다음 단의 음성 처리 시스템의 특성등에 따라 음성 신호 프레임의 하모닉 피크를 사용하여 음성 신호의 특징 정보를 추출할 것인지 여부를 판단한다. 그리고 그 판단 결과에 따라 하모닉 피크 추출부(114)를 통해 검색된 하모닉 피크를 이용하여 음성 신호의 특징 정보를 추출하거나, 상기 음성 신호의 모폴로지 분석 결과를 통해 생성된 신호 파형을 이용하여 음성 신호의 특징 정보를 추출한다.
여기서 모폴로지라는 것은, 영상 신호 처리에서 대부분 사용되며, 수학적 개념의 모폴로지란 이미지의 기하학적(geometric) 구조에 집중하는 비선형적 영상 처리 및 분석 방법을 말하는 것이다. 이러한 모폴로지 분석은, 1차적인 연산(primary operation)인 침식(erosion) 및 팽창(dilation)과 2차적인 연산(secondary operation)인 오프닝(opening) 및 클로징(closing)이 중요한 역할을 한다. 이러한 간단한 모폴로지들의 조합으로 많은 선형, 비선형적인 연산기(operator)들이 구성될 수 있다.
먼저, 이러한 모폴로지 분석의 가장 기본적인 동작은 침식(erosion)이며, 집합 B에 의한 집합 A의 침식에서 A는 입력 이미지, B는 구조물(structuring element)이라고 부른다. 만약 원본(origin)이 구조물 안에 있으면, 침식은 입력 이미지를 줄이려(shrinking)하는 경향을 가진다. 두 번째 기본 동작인 팽창(dilation)은 침식의 이중 연산(dual operation)으로서, 침식의 여집합(set complementation)으로 정의된다. 차선의 동작 중 오프닝(Opening)은 침식과 팽창의 반복(iteration)이며, 클로징(closing)은 오프닝의 이중 연산(dual operation)이 다.
구체적으로 팽창 연산은 음성 신호 이미지의 미리 정해진 각 임계 구간(threshold set)의 최대값(maxima)을 해당 구간의 값으로 결정하는 연산이다. 침식 연산은 음성 신호 이미지의 미리 정해진 각 임계 구간(threshold set)의 최저값(minima)을 해당 구간의 값으로 결정하는 연산이다. 오프닝 연산은 침식 연산 다음에 팽창 연산을 수행하는 연산이며, 스무딩(smoothing) 효과를 나타낸다. 클로징 연산은 팽창 연산 다음에 침식 연산을 수행하는 연산이며, 필링(filling) 효과를 나타낸다.
전술한 바와 같이 본 발명에서 적용되는 모폴로지 연산은 음성 신호 처리 시에는 거의 사용되지 않는 방법이지만, 특징 주파수 추출 시 이용할 경우 하모닉 및 비하모닉의 정확한 분리 추출이 가능하도록 방법이다. 이에 따라 모폴로지 기법을 본 발명에 적용할 경우 유성음 및 무성음의 구분없는 음성 신호로부터 의미있는 특징 주파수를 추출할 수 있게 되어 이를 하모닉 코덱에 적용할 수 있게 된다. 즉, 비하모닉 신호도 모폴로지 기법을 적용할 경우 하모닉 코덱에 적용할 수 있게 된다.
따라서 제어부(100)는 기 판단된 결과가 음성 신호의 하모닉 피크를 사용하지 않는 경우라면, 현재 입력된 음성 신호를 상기 모폴로지 분석을 통해 상기 의미있는 특징 주파수, 즉 모폴로지 분석에 따른 신호 파형을 생성한다. 그리고 이를 하모닉 코덱을 이용하는 것과 유사하게 음성 신호 특징 정보 추출부에 입력하여 상기 입력된 음성 신호의 특징 정보를 추출한다.
그리고 상기한 제어부(100)와 연결되는 메모리부(102)는 롬(ROM: Read Only Memory), 플래시 메모리(Flash memory), 램(RAM: Random Access Memory) 등으로 구성된다. 이 중에서 롬은 제어부(100)의 처리 및 제어를 위한 프로그램과 각종 참조 데이터를 저장한다. 그리고 램은 제어부(100)의 워킹 메모리(working memory)를 제공하며, 플래시 메모리는 갱신 가능한 각종 보관용 데이터를 저장하기 위한 영역을 제공한다.
그리고 음성 신호 인식부(112)는 입력된 신호로부터 음성 신호를 인식하고 이를 음성 신호로서 상기 제어부(100)에 출력한다. 그리고 음성 신호 변환부(116)는 제어부(100)의 제어에 따라 상기 입력된 음성 신호를 주파수 도메인의 신호로 변환하여 음성 신호 프레임을 생성한다. 그리고 잡음 제거부(122)는 상기 음성 신호 프레임으로부터 잡음을 제거한다. 그리고 하모닉 피크 추출부(114)는 제어부(100)의 제어에 따라 상기 음성 신호 프레임으로부터 하모닉 피크를 검색 및 추출한다. 그리고 음성 신호 특징 정보 출력부(120)는 상기 제어부(100)의 제어에 따라 상기 입력된 음성 신호의 특징 정보가 출력되면 이를 다음 단의 음성 처리 시스템에 출력한다.
그리고 모폴로지 분석부(104)는 모폴로지 필터(106) 및 SSS 결정부(108)를 구비하며, 입력된 음성 신호 프레임을 모폴로지 연산을 통해 모폴로지 분석에 따른 신호 파형을 생성한다. 여기서 상기 모폴로지 필터(106)는 모폴로지 클로징(morphological closing)으로 하모닉 피크를 선택하는 동작을 수행한다. 이러한 모폴로지 클로징 수행 후에는 도 2(a)에 도시된 바와 같은 파형이 출력된다. 도 2(a)에 도시된 바와 같은 파형을 전처리(pre-processing)하게 되면, 도 2(b)에 도시된 바와 같이 나머지(remainder or residual) 스펙트럼 형태의 파형이 출력되게 된다. 여기서, 나머지 스펙트럼이란 도 2(a) 상의 점선 형태의 경계층(closure floor) 위에 존재하는 신호들을 의미하며, 전처리 후에는 도 2(b)에 도시된 바와 같이 특징 주파수 영역들만 남게 된다. 즉, 전처리 후에는 모폴로지 클로징 후 출력되는 신호에서 나선계단(staircase) 신호를 빼고 남은 신호가 도 2(b)에 도시된 바와 같은 신호가 되는 것이다. 이러한 전처리 과정을 통해 유성음에서는 하모닉 콘텐츠(content)를 강조하고, 무성음에서는 주요 사인꼴 구성요소(sinusoidal component)를 강조하게 되는 것이다.
이때, 모폴로지 필터(106)의 성능을 최적화하기 위해서는 얼마만큼의 윈도우 크기 단위로 모폴로지 연산을 수행할 것인지를 결정하는 것이 필요하다. 즉, 최적 윈도우 크기 단위에 기반한 모폴로지 연산이 수행되어야 하는 것이다. 이를 위해 본 발명에서는 SSS(structuring set size) 결정부(108)를 모폴로지 분석부(104)에 포함한다. 이 SSS 결정부(108)는 모폴로지 필터(106)의 성능을 최적화하는 SSS를 결정하여 이를 모폴로지 필터(106)에 제공한다. 이러한 SSS 결정 과정은 필요에 따라 선택적으로 이용 가능한 과정으로, 디폴트로 정해질 수도 있으며 하기와 같은 방식에 의해 정해질 수도 있다.
SSS 결정 과정을 설명하면 다음과 같다. 먼저, 하모닉 피크가 가장 큰 신호의 개수 즉, 최대 하모닉 피크의 개수를 N이라고 할 경우 즉, 도 2(b)에서 빗금친 부분에 해당하는 N개의 피크들을 정의할 경우, 이 N개의 선택된 피크를 이용하여 P 값을 산출한다. 이 P는 전체 나머지(remainder) 스펙트럼의 에너지 비율과 N개의 피크들에 대한 에너지 비율을 나타낸다. 예를 들어, 도 2(b)에서는 N=5이며, 빗금친 영역부분을 모두 더한 값이 N개의 피크들에 대한 에너지인 EN 이라고 하며, 전체 나머지 스펙트럼의 에너지를 Etotal 이라고 할 경우, P는 EN / Etotal이다. 이 때, 신호에 대한 어떠한 가정도 하지 않는 상태에서, P값과 SSS와의 비교 과정을 통해 P값이 너무 클 경우(예컨대, SSS < 0.5인 경우) N을 줄이고, P값이 너무 작으면(예컨대, SSS > 0. 5인 경우) N값을 크게 한다. 이에 따라 여성 화자일 경우에는 피치가 높아 전체 하모닉 수가 더 적으므로 남성 화자보다 더 작은 N이 선택된다. 상기한 바와 같은 과정을 통해 주파수 도메인 상의 음성 신호로 변환된 파형에 대해 모폴로지 클로징을 수행하는 모폴로지 필터(106)의 최적의 SSS(Optimum Structuring Set Size)가 결정되게 된다. 만일 N을 조절하여 SSS를 선택하는 방법을 이용하지 않을 경우에는 가장 작은 SSS부터 시작하여 단계적으로 SSS를 크게하여 해당 SSS를 이용할 수도 있다.
한편, 모폴로지 연산은 구성 요소(structuring element)를 어떤 특정 값으로 맞추는데(fitting) 의존하는 고정-이론적인(set-theoretical) 접근 방법이므로, 음성 신호 파형과 같은 1차원 이미지 구성 요소는 이산적인(discrete) 값들의 집합으로 표현된다. 여기서 구성 요소 집합 구간(structuring set)은 원점에 대칭적인 슬라이딩 윈도우(sliding window)에 의해 결정되며, 슬라이딩 윈도우 크기는 모폴로지 연산의 성능을 결정하게 된다.
본 발명의 실시 예에 따르면 윈도우 크기는 하기 수학식 1과 같다.
윈도우 크기= (structuring set size(SSS) * 2 + 1)
상기 수학식 1과 같이 윈도우 크기는 SSS(structuring set size)에 의해 좌우된다. 따라서 구성 요소 집합 크기를 조절하여 모폴로지 연산의 성능을 조절할 수 있다. 따라서 모폴로지 필터(106)는 상기 SSS 결정부(108)에 의해 결정된 구성 요소 집합 크기에 따른 슬라이딩 윈도우를 이용하여 팽창 또는 침식 연산 그리고 오프닝 또는 클로징 등의 모폴로지 연산을 수행할 수 있게 된다.
이에 따라 모폴로지 필터(106)는 SSS 결정부(108)에 의해 결정된 SSS를 이용하여 주파수 도메인 상의 음성 신호 파형에 대해 모폴로지 연산을 수행한다. 즉, 모폴로지 필터(106)는 변환된 음성 신호 파형에 대해 모폴로지 클로징을 수행한 후, 전처리(pre-processing)를 수행한다.
한편, 모폴로지 필터(Morphological filter)의 신호 형태(transform)는 전송된 신호의 기하학적 특징들을 부분적으로 변형하는 비선형적 방법이며, 상기한 네 가지 동작들에 따라 수축(contraction), 확장(expansion), 스무딩(smoothing), (opening), 충전(filling)하는 효과를 가진다. 이러한 모폴로지 필터링의 장점은 계산량이 매우 적으면서도 스펙트럼의 피크나 밸리 정보를 정확하게 추출해낼 수 있다는 점이다. 게다가 비매개(nonparametric)하여 예컨대, 기존의 하모닉 코덱에서는 음성 신호의 하모닉 구조를 가정한 것과 달리 본 발명에서는 입력 신호에 대한 어떠한 가정도 하지 않는다.
여기서, 모폴로지 클로징은 음성 신호 스펙트럼에서 신호 파형 사이의 밸리(valley)를 채우는 효과를 가지고 있으며, 도 2(a)처럼 하모닉 피크들은 그대로 살아 있으면서 작은 스퓨리어스(spurious) 피크들은 클로징한 스펙트럼의 아래에 존재하게 된다.
이에 따라 상기 제어부(100)는 모폴로지 필터(106)에 의한 모폴로지 연산 결과로부터 음성 신호에 들어있는 특징 주파수 영역들만을 선택할 수 있게 된다. 즉, 노이즈가 억압(suppression)되면서 특징 주파수 영역들만을 선택할 수 있게 된다. 이때, 도 2(b)처럼 작은 피크들까지 모두 선택하면, 음성 신호를 표현할 수 있는 특징 주파수 영역이 모두 추출된다. 이러한 특징 주파수들은 유성음의 성질을 가질 경우에는 f0, 2f0,3f0 ,4f0, 5f0,…등과 같이 일정한 주기성을 가지는 하모닉 피크들이 나타나게 된다. 즉, 유성음 및 무성음을 구분하지 않고도 음성 신호에 모폴로지 기법을 적용하게 되면 하모닉 코덱의 하모닉 코딩 시에 피치 주파수 대신에 적용할 수 있는 특징 주파수가 추출되게 된다.
특히 도 2(b)에서 전처리한 후의 나머지(remainder) 피크들은 주요 사인파 구성 요소(major sine wave component)로 인한 것인데, 이러한 주요 사인파 구성요소들이 바로 음성 신호의 특징 주파수가 된다. 이러한 특징 주파수는 일반적인 하모닉 추출 방법과는 달리, 음성 신호를 표현하는 모든 사인파의 주파수 영역을 나타내게 된다.
또한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템은, 입력된 음성 신 호의 특징 정보를 추출하는 음성 신호 특징 정보 추출부로서 피치 추출부(110), 포락선 추출부(126), 그리고 신경망 시스템(124)을 구비한다. 여기서 피치 추출부(110)는 상기 제어부(100)로부터 하모닉 피크가 추출된 특정 음성 신호 프레임 또는 모폴로지 분석의 결과에 따른 신호 파형을 이용하여 피치 정보를 추출한다. 그리고 포락선 추출부(126)는 상기 제어부(100)의 제어에 따라, 하모닉 피크가 추출된 특정 음성 신호 프레임 또는 모폴로지 분석의 결과에 따른 신호 파형으로부터 하모닉 피크들의 포락선 정보 및 비하모닉 피크들의 포락선 정보를 추출하여 이를 제어부(100)에 출력한다. 여기서 제어부(100)는 상기 다음 단의 음성 처리 시스템이 상기 하모닉 피크들의 포락선 정보 및 비하모닉 피크들의 포락선 정보를 요구할 경우, 이를 출력한다. 그러나 이러한 포락선 정보들은 상기 음성 신호 프레임이 유성음인지 무성음인지 또는 배경 잡음 인지를 구분하기 위해 사용되어 질 수도 있다. 이러한 경우, 상기 제어부(100)는 상기 하모닉 피크들의 포락선 정보와 상기 비하모닉 피크들의 포락선 정보에 따른 에너지의 비를 이용하여 상기 음성 신호 프레임이 유성음인지 무성음인지 또는 배경 잡음 인지를 판단한다. 이러한 경우 상기 제어부(100)는 상기 포락선 정보들의 에너지 비를 연산하기 위한 유성음화 정도 연산부(118)를 구비하고, 상기 연산된 유성음화 정도 연산 결과에 따라 상기 음성 신호 프레임의 판단을 수행한다.
그리고 상기 신경망 시스템(124)은, 신경망 인식 방법을 이용하여 상기 음성 신호 프레임 또는 모폴로지 분석 결과에 따른 특징 주파수 영역으로부터 특징 정보를 검출하고, 검출된 특징 정보들마다 기 설정된 가중치를 부여한 후, 신경망 인식 결과에 따라 상기 음성 신호 프레임이 유성음인지 무성음인지 또는 배경 잡음인지에 대한 여부를 판단한다. 여기서 상기 신경망 시스템은, 상기 음성 신호 프레임의 인식 정확도를 높이기 위해 적어도 하나 이상의 복수개의 신경망을 구비할 수도 있다.
이러한 경우, 상기 신경망 시스템은, 1차 신경망 인식에 따른 상기 음성 신호 프레임 또는 상기 특징 주파수 영역에 대응되는 음성 신호의 판단 결과, 유성음이 아닌 경우 이를 판단 보류하고, 적어도 하나 이상의 다른 음성 신호 프레임 또는 특징 주파수 영역들의 1차 신경망에 따른 유/무성음 또는 배경 잡음 판단 결과 및 상기 다른 음성 신호 프레임 또는 특징 주파수 영역들로부터 추출된 다양한 특징 정보들의 2차 통계값을 이용하여 2차 신경망 인식을 수행한 후 그 수행 결과에 따라 상기 입력된 유/무성음 또는 배경잡음 여부를 판단한다. 여기서 상기 2차 통계값이라는 것은 적어도 하나의 음성 신호 프레임 또는 특징 주파수 영역들로부터 추출된 각 특징 정보별로 산출된 통계값을 말한다.
여기서 상기 도 1은 본 발명의 실시 예에 따른 음성 신호 전처리 시스템의 구성 예를 보인 것이다. 따라서 이러한 음성 신호 특징 추출부들을 포함하는 구성 은, 본 발명의 음성 신호 전처리 시스템 다음 단의 음성 처리 시스템에서 요구하는 음성 신호 특징 정보에 따라 변경되거나 더 추가될 수 있음은 물론이다.
도 3은 이러한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서 하모닉 피크 또는 모폴로지 분석 기법을 이용하여 음성 신호의 특징 정보를 출력하는 동작의 흐름을 보이고 있는 도면이다.
도 3을 참조하여 살펴보면, 제어부(100)는 신호가 입력되는 경우, 300단계로 진행하여 상기 음성 신호 인식부(112)를 통해 상기 입력된 신호로부터 음성 신호를 인식하고 이를 추출한다. 그리고 음성 신호 변환부(116) 통해 상기 추출된 음성 신호를 주파수 도메인의 신호로 변환한다. 그리고 제어부(100)는 302단계로 진행하여 잡음 제거부(122)를 통해 상기 추출된 음성 신호로부터 잡음을 제거한다. 여기서 상기 제어부(100)가 잡음을 제거하는 방법에는 다양한 방법이 사용될 수 있다. 이러한 잡음 제거 방법의 예로써, 제어부(100)가 추출된 음성 신호 프레임의 진폭(Amplitude)에 따라 가중치를 설정한 후, 설정된 가중치에 따라 상기 진폭의 제곱 연산을 수행하는 방법을 들 수 있다. 이러한 경우 상기 제어부(100)는 일정 임계치를 설정하고, 임계치 여부에 따라 상기 제곱 결과에 따른 값에 (+), 또는 (-)부호가 설정되도록 함으로써 상기 임계치 이하의 진폭을 가진 신호, 즉 잡음으로 추정되는 신호와 그렇지 않은 신호의 크기 비가 더욱 크게 설정되도록 할 수 있다.
상기 302단계의 잡음 제거 과정을 완료하면, 제어부(100)는 304단계로 진행하여 상기 음성 신호 프레임을 하모닉 피크를 이용하여 음성 신호 특징 정보를 추출할 것인가 아니면 하모닉 피크를 이용하지 않고 음성 신호 특징 정보를 추출할 것인지 여부를 판단한다. 여기서 상기 판단은 상기 입력되는 음성 신호에 따라 또는 다음 단의 음성 처리 시스템의 특성에 따라 결정될 수 있다. 즉, 예를 들어 상기 음성 신호 인식부(112)에 입력되는 신호가 음성 신호의 특징 정보를 추출하기에 충분한 하모닉 피크가 있는 것이 확실한지 여부에 따라 상기 제어부(100)는 음성 신호 특징 정보 추출에 하모닉 피크를 사용할 것인지 여부를 판단할 수 있다. 또한 만약 제어부(100)는 상기 다음 단의 음성 처리 시스템의 요구에 따라서 상기 하모닉 피크를 사용할지 여부를 판단할 수도 있다.
만약 상기 304단계의 판단 결과 하모닉 피크를 사용할 것이라면, 제어부(100)는 306단계로 진행하여 현재 입력된 음성 신호 프레임의 하모닉 피크들이 있는지 여부를 체크한다. 여기서 상기 306단계의 판단 결과 만약 상기 입력된 음성 신호 프레임의 하모닉 피크들이 있는지 없는지 확실하지 않은 경우라면, 제어부(100)는 308단계로 진행하여 하모닉 피크 추출부(114)를 통해 상기 입력된 음성 신호 프레임의 하모닉 피크들을 검출한다. 여기서 상기 제어부(100)는 상기 하모닉 피크들을 검출하기 위한 다양한 알고리즘이 적용된 방법을 사용할 수 있다.
그리고 하모닉 피크들이 있는 경우, 제어부(100)는 310단계로 진행하여 다음 단의 음성 처리 시스템에서 요구되는 음성 신호의 특징 정보들을 추출하는 음성 신호 특징 정보 추출부를 선택한다. 그리고 상기 제어부(100)는 선택된 음성 신호 특징 정보 추출부에 상기 음성 신호 프레임을 입력하여, 상기 음성 신호 프레임의 하모닉 피크들을 통해 상기 입력된 음성 신호의 특징 정보들을 추출한다. 그리고 제어부(100)는 316단계로 진행하여 상기 추출된 음성 신호 특징 정보들을 다음 단의 음성 처리 시스템에 출력한다.
한편 상기 304단계의 판단 결과, 하모닉 피크를 사용하지 않는 경우라면, 제어부(100)는 312단계로 진행하여 상기 음성 신호 프레임을 모폴로지 분석부(104)에 입력한다. 그리고 모폴로지 분석부(104)를 제어하여 모폴로지 연산을 수행하고, 상기 음성 신호 프레임으로부터 상기 모폴로지 분석 결과에 따른 신호 파형을 추출한 다. 그리고 제어부(100)는 314단계로 진행하여 다음 단의 음성 처리 시스템에서 요구되는 음성 신호의 특징 정보들을 추출하는 음성 신호 특징 정보 추출부를 선택한다. 그리고 상기 제어부(100)는 선택된 음성 신호 특징 정보 추출부에 상기 추출된 신호 파형을 입력하여, 상기 모폴로지 분석 결과에 따른 신호 파형으로부터 추출된 하모닉 피크들을 통해 상기 입력된 음성 신호의 특징 정보들을 추출한다. 그리고 제어부(100)는 316단계로 진행하여 상기 추출된 음성 신호 특징 정보들을 다음 단의 음성 처리 시스템에 출력한다.
도 4는 이러한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템 다음 단의 음성 처리 시스템이 요구하는 정보에 따른 음성 신호 특징 정보를 출력하는 동작의 흐름을 도시한 도면이다. 여기서 상기 도 4는 상술한 바와 같이, 본 발명의 실시 예에 따른 음성 신호 전처리 시스템 다음 단의 음성 처리 시스템이, 상기 입력된 음성 신호의 포락선 정보나 피치 정보 또는 유/무성음 판단 결과 정보 중 어느 하나를 요구하는 것을 가정한 것이다.
도 4를 참조하여 살펴보면, 상기 306단계 또는 308단계를 통해 하모니 피크가 존재하는 음성 신호 프레임이 입력되면, 제어부(100)는 400단계로 진행하여 본 발명의 실시 예에 따른 음성 처리 시스템에서 요구되는 음성 신호 특징 정보가 포락선 정보인지, 아니면 피치 정보인지, 또는 유/무성음 또는 배경잡음인지에 대한 판단 결과인지를 체크한다. 그리고 체크 결과에 따라 상기 입력된 음성 신호 프레임을 각각의 음성 신호 특징 추출부에 입력한다.
즉, 예를 들어 상기 음성 처리 시스템이 요구하는 음성 신호 특징 정보가 포 락선 정보인 경우, 제어부(100)는 402단계로 진행하여 상기 음성 신호 프레임을 포락선 추출부(126)에 입력한다. 그리고 제어부(100)는 404단계로 진행하여 상기 입력된 음성 신호 프레임의 하모닉 피크를 이용하여 음성 신호 프레임의 포락선 정보를 추출한다. 여기서 상기 포락선 추출부(126)는 상기 음성 신호 프레임에서 첫 피치 주기동안 최대의 피크를 찾아 첫 번째 하모닉 피크를 검출하고, 그 후 각각의 검색 영역에 따라 하모닉 피크들을 선택하는 과정을 거쳐 하모닉 피크들을 선택한다. 그리고 선택된 하모닉 피크들을 보간법(Interpolation)을 이용하여 포락선 정보를 추출한다.
그리고 상기 포락선 정보가 추출되면 제어부(100)는 316단계로 진행하여 상기 추출된 포락선 정보를 다음 단의 음성 처리 시스템에 출력한다. 그리고 만약 상기 다음 단의 음성 처리 시스템이 상기 하모닉 피크들에 따른 포락선 정보뿐 아니라, 상기 하모닉 피크로 선택되지 않은 다른 피크들의 포락선 정보, 즉 비하모닉 포락선 정보를 요구할 경우 이를 상기 음성 신호 프레임으로부터 추출할 수도 있음은 물론이다. 그러나 여기서 상기 포락선 추출부(126)는, 상기 하모닉 피크들을 이용하여 2차 하모닉 피크에 따른 포락선 정보를 추출할 수도 있다. 여기서 상기 2차 하모닉 피크는 것은, 상기 추출된 포락선으로부터 추출한 하모닉 피크들을 말하는 것이다.
여기서 상기 2차 하모닉 피크들에 따른 포락선 정보는 상기 음성 신호 프레임이 유성음인지, 무성음인지 구별하는 과정에서 정확도를 높이기 위해 사용될 수 있다. 즉, 예를 들어 포락선 정보에 따라 상기 음성 신호 프레임을 유성음/무성음 으로 판단하기 위한 방법 중의 하나로, 상기 하모닉 피크 포락선 정보와 비하모닉 피크 포락선 정보의 에너지비를 이용하는 방법이 사용될 수 있다. 그런데 여기서 만약 상기 2차 하모닉 피크에 따른 포락선을 사용하는 경우, 상기 비하모닉 피크 포락선 정보와 상기 2차 하모닉 피크 포락선 정보에 따른 에너지비는 더욱 커지게 된다. 따라서 이러한 경우, 일반적으로 하모닉 피크들이 주기적으로 존재하는 유성음의 경우, 상기 2차 하모닉 피크에 따른 포락선을 사용한다면 하모닉 피크들이 주기적으로 존재하지 않는 무성음에 비해 더 큰 차이를 나타낸다. 따라서 제어부(100)는 상기 2차 하모닉 피크에 따른 포락선 정보, 즉 2차 하모닉 피크 포락선 정보를 사용할 경우, 상기 입력된 음성 신호가 유성음인지 아니면 무성음인지를 더 정확하게 구분할 수 있다. 이처럼 2차 하모닉 피크에 따른 포락선 정보를 추출하는 과정을 포함하는 본 발명의 실시 예에 따른 포락선 추출부(126)의 동작을 하기 도 5를 참조하여 자세히 살펴보기로 한다.
한편 상기 400단계의 판단 결과 상기 음성 처리 시스템이 요구하는 음성 신호 특징 정보가 피치 정보인 경우라면, 제어부(100)는 상기 입력된 음성 신호 프레임을 피치 추출부(110)에 입력한다. 그러면 제어부(100)는 408단계로 진행하여 상기 입력된 음성 신호 프레임의 하모닉 피크를 이용하여 상가 음성 신호의 피치 정보를 추출한다. 여기서 상기 제어부(100)는 상기 음성 신호로부터 피치 정보를 추출하기 위해 다양한 방법을 사용할 수 있다. 즉, 예를 들어 제어부(100)는 상기 음성 신호 프레임으로부터 하모니 영역과 잡음 영역의 에너지 비율을 검출하고, 상기 검출된 에너지 비율이 최대값인 피크를 피치 정보로 결정하여 추출하는 방법을 사 용할 수도 있다. 그리고 상기 피치 정보가 추출되면 제어부(100)는 316단계로 진행하여 상기 추출된 피치 정보를 다음 단의 음성 처리 시스템에 출력한다.
또한 상기 400단계의 판단 결과 상기 음성 처리 시스템이 요구하는 음성 신호 특징 정보가 상기 음성 신호의 판단 결과인 경우라면, 제어부(100)는 410단계로 진행하여 상기 입력된 음성 신호 프레임을 유/무성음 판단을 위한 음성 신호 특징 정보 추출부에 입력한다. 그리고 제어부(100)는 412단계로 진행하여 상기 음성 신호 프레임의 유/무성음 여부를 판단한다. 여기서 상기 유/무성음 판단은 상기 신경망 시스템(124)의 인식 결과를 이용할 수도 있고(전자), 상기 포락선 추출부(126)를 통해 추출된 2차 하모닉 피크 포락선 정보 및 비하모닉 피크 포락선 정보를 이용할 수도 있다(후자).
전자의 경우, 제어부(100)는 상기 음성 신호 프레임을 신경망 시스템(124)에 입력한다. 그리고 상기 신경망 시스템의 인식 결과에 따라 상기 제어부(100)는 상기 음성 신호가 유성음인지 무성음인지 아니면 배경 잡음인지 여부를 판단한다. 그리고 후자인 경우라면 제어부(100)는 상기 음성 신호 프레임을 포락선 추출부(126)에 입력한다. 그리고 제어부(100)는 상기 포락선 추출부(126)를 통해 2차 하모닉 피크 포락선 정보와 비하모닉 피크 포락선 정보를 추출하고, 추출된 두개의 포락선 정보를 상기 유성음화 정도 연산부(118)에 입력한다. 그러면 상기 유성음화 정도 연산부(118)는 상기 두개의 포락선 정보의 비를 산출하고, 산출된 결과값을 기 설정된 유성음 임계치와 비교한다. 그리고 상기 두개의 포락선 정보의 비가 유성음화 임계치 이상인 경우 상기 입력된 음성 신호를 유성음이라고 판단하고, 그렇지 않은 경우 무성음 또는 배경 잡음이라고 판단한다.
여기서 만약 상기 유성음 임계치 뿐 아니라 무성음 임계치가 설정되어 있는 경우라면, 상기 유성음화 정도 연산부(118)는 상기 두개의 포락선 정보의 비가 유성음 임계치 이상일 경우에 상기 음성 신호를 유성음으로, 그리고 상기 포락선 정보의 비가 유성음 임계치 미만 무성음 임계치 이상일 경우 상기 음성 신호를 무성음으로, 그리고 상기 포락선 정보의 비가 무성음 임계치 미만일 경우 이를 배경 잡음으로 판단할 수도 있다. 이는 배경 잡음인 경우 하모닉 피크가 없지만, 무성음인 경우 하모닉 피크의 주기성이 적을 뿐, 하모닉 피크가 분명 존재하기 때문에, 상기 배경 잡음인 경우의 포락선 정보의 비보다, 무성음인 경우의 포락선 정보의 비가 더 크기 때문이다. 그리고 상기 음성 신호의 판단 결과가 추출되면 제어부(100)는 316단계로 진행하여 상기 판단 결과를 다음 단의 음성 처리 시스템에 출력한다.
이처럼 상기 400단계의 체크 결과 다음 단의 음성 처리 시스템에서 요구하는 음성 신호 특징 정보가 상기 입력 신호의 판단 결과인 경우의 동작 과정을 하기 도 7을 참조하여 자세히 살펴보기로 한다.
도 5는 이러한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서 하모닉 피크를 이용하여 음성 신호의 포락선 정보를 추출하는 동작의 흐름을 보이고 있는 도면이고, 도 6은 본 발명의 실시 예에 따른 2차 하모닉 피크의 예를 보이는 예시도이다.
우선 도 5를 참조하여 살펴보면, 상기 412단계에서 포락선 정보를 이용하여 상기 음성 신호의 유/무성음 판단을 수행하는 경우 또는 상기 402단계에서 상기 음 성 신호 프레임이 포락선 추출부(126)에 입력되는 경우, 제어부(100)는 500단계로 진행하여 2차 하모닉 피크가 필요한지 여부를 판단한다. 여기서 만약 상기 다음 단의 음성 처리 시스템이 2차 하모닉 피크를 요구하는 경우 또는 상기 412단계에서 음성 신호의 유/무성음 판단 시에 2차 하모닉 피크를 수행하는 경우라면, 제어부(100)는 상기 2차 하모닉 피크가 필요한 것으로 판단한다.
그러나 만약 상기 500단계의 판단 결과 하모닉 피크가 필요없는 것으로 판단되면, 제어부(100)는 상기 입력된 음성 신호 프레임으로부터 하모닉 피크들을 선택하고, 선택된 하모닉 피크들에 보간법을 적용하여 포락선 정보를 추출한다. 그리고 제어부(100)는 510단계로 진행하여 하모닉 피크로 선택되지 않은 나머지 피크들에 보간법을 적용하여, 상기 나머지 피크들에 따른 포락선 정보를 비하모닉 피크 포락선 정보로 추출한다. 그런데 만약 상기 비하모닉 피크 포락선 정보가 필요없는 경우, 즉 다음 단의 음성 처리 시스템이 상기 하모닉 피크 포락선 정보만을 요구한 경우라면, 상기 510단계는 생략할 수도 있음은 물론이다.
한편 상기 제어부(100)는 502단계로 진행하여 현재 입력된 음성 신호 프레임으로부터 하모닉 피크들의 포락선 정보를 추출한다. 그리고 제어부(100)는 504단계로 진행하여 상기 추출된 포락선 정보로부터 2차 하모닉 피크를 추출한다. 이를 도 6을 참조하여 살펴보면, 도 6의 (a)에서 보이고 있는 바와 같은 음성 신호 프레임이 입력되는 경우, 제어부(100)는 상기 도 6의 (a)에서 보이고 있는 음성 신호 프레임으로부터 하모니 피크들을 선택하고 보간법을 이용하여 도 6의 (b)에서 보이고 있는 바와 같은 포락선 정보(600)를 추출한다. 그리고 상기 추출된 포락선 정보 로부터 다시 하모닉 피크들만을 선택하여 다시 보간법을 적용하여 2차 하모닉 피크들에 따른 포락선 정보(602)를 추출한다. 그리고 제어부(100)는 510단계로 진행하여 상기 1차 하모닉 피크들의 포락선 정보 추출시 하모닉 피크로 선택되지 않은 나머지 피크들에 보간법을 적용하여, 상기 나머지 피크들에 따른 포락선 정보를 비하모닉 피크 포락선 정보로 추출한다. 여기서 만약 상기 비하모닉 피크 포락선 정보가 필요없는 경우, 즉, 포락선 정보들의 비를 이용하여 유/무성음을 구분하는 경우가 아니거나, 다음 단의 음성 처리 시스템이 2차 하모닉 피크 포락선 정보만을 요구한 경우라면 상기 510단계는 생략할 수도 있음은 물론이다.
도 7은 상술한 바와 같이 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서 하모닉 피크를 이용하여 유/무성음 여부를 판단하는 동작의 흐름을 보이고 있는 도면이다.
상술한 바에 따르면, 제어부(100)는 상기 400단계에서 음성 처리 시스템이 요구하는 음성 신호 정보가 유/무성음 판단 결과인 경우, 410단계로 진행하여 상기 음성 신호 프레임을 유/무성음 판단부에 입력하고, 412단계로 진행하여 상기 음성 신호 프레임의 하모닉 피크를 이용하여 유/무성음 여부를 판단한다. 여기서 상기 제어부(100)는 다양한 방법들을 이용하여 상기 하모닉 피크들을 통해 상기 음성 신호 프레임의 유/무성음 여부를 판단할 수 있다. 그러나 이하의 설명에서는 상술한 설명에서 밝힌바와 같이 포락선 추출부(126)와 유성음화 정도 연산부(118) 또는 신경망 시스템(124)을 이용하여 상기 입력된 음성 신호 프레임의 유/무성음 판단을 하는 것을 가정하여 설명하기로 한다.
이에 따라 상기 유/무성음 판단부는 상기 신경망 시스템(124) 또는 상기 포락선 추출부(126)와 유성음화 정도 연산부(118)가 될 수 있다. 따라서 상기 제어부(100)는 상기 402단계로 진행하면, 700단계로 진행하여 상기 음성 신호 프레임을 포락선 정보를 이용하여 유/무성음 여부를 판단할 것인가, 신경망 시스템을 이용하여 유/무성음 여부를 판단할 것인지를 결정한다. 여기서 제어부(100)는 다음 단의 음성 처리 시스템이 요구하는 정보의 특성 또는 상기 음성 신호 프레임의 유/무성음 여부를 판단하기 위한 계산량 등에 따라 어느 것을 이용하여 상기 음성 신호 프레임의 유/무성음 여부를 판단할지를 결정한다.
그리고 상기 700단계의 결정 결과가, 포락선 정보를 이용하여 음성 신호 프레임의 유/무성음 판단을 수행하는 것이라면, 제어부(100)는 702단계로 진행하여 상기 음성 신호 프레임을 포락선 추출부(126)에 입력하여 2차 하모닉 피크 포락선 정보 및 비하모닉 피크 포락선 정보를 추출한다. 여기서 상기 2차 하모닉 피크 포락선 정보 및 비하모닉 피크 포락선 정보는 상기 도 5에서 서술한 과정을 통해 추출될 수 있다. 그리고 제어부(100)는 704단계로 진행하여 상기 하모닉 피크 포락선 정보와 비하모닉 피크 포락선 정보를 유성음화 정도 연산부(118)에 입력하고, 상기 유성음화 정도 연산부(118)를 통해 상기 음성 신호 프레임의 유성음화 정도를 산출한다. 그리고 제어부(100)는 706단계로 진행하여 상기 추출된 유성음화 정도를 기 설정된 유성음 임계치 또는 유성음 임계치와 무성음 임계치와 비교하여, 상기 입력된 음성 신호가 유성음인지, 무성음인지 또는 배경 잡음 인지를 판단한다.
한편 상기 700단계의 결정 결과, 상기 입력된 음성 신호 프레임의 유/무성음 판단을 위해 신경망 시스템(124)을 이용하는 경우라면, 제어부(100)는 708단계로 진행하여 상기 음성 신호 프레임을 신경망 시스템(124)에 입력하고, 2차 신경망을 이용할지 여부를 결정한다. 여기서 상기 신경망 시스템(124)은 하나의 신경망을 구비하여 상기 음성 신호 프레임의 각종 특징 정보들 별로 기 설정된 가중치에 따라 상기 입력된 음성 신호 프레임이 유/무성음 또는 배경 잡음인지를 판단할 수 있다. 그리고 이러한 경우라면 상기 신경망 시스템(124)은 상기 신경망 인식 결과를 바로 제어부(100)에 반환한다.
그러나 상기 신경망 시스템(124)은 적어도 두개의 신경망을 구비할 수 있음을 앞에서 밝힌바 있다. 그리고 이러한 경우라면 상기 신경망 시스템(124)은 1차 신경망을 통해 도출된 상기 음성 신호 프레임의 유/무성음 또는 배경 잡음 판단 결과 및 상기 음성 신호 프레임으로부터 추출된 다양한 특징 정보들의 2차 통계값을 이용하여 2차 신경망 인식을 수행하고, 그 수행 결과에 따라 상기 입력된 유/무성음 또는 배경잡음 판단 결과를 제어부(100)에 반환한다.
이러한 경우, 즉, 두 개의 신경망을 통해 상기 음성 신호를 판단할 수 있는 경우, 상기 700단계에서 상기 입력된 음성 신호 프레임의 유/무성음 판단을 위해 신경망 시스템(124)을 이용하는 것이 결정되면, 제어부(100)는 708단계로 진행하여 상기 2차 신경망을 이용할지 여부를 결정한다. 여기서 상기 2차 신경망 이용은 여기서 제어부(100)는 다음 단의 음성 처리 시스템이 요구하는 정보의 특성 또는 상기 음성 신호 프레임의 유/무성음 여부를 판단하기 위한 계산량 등에 따라 어느 것을 이용하여 상기 음성 신호 프레임의 유/무성음 여부를 판단할지를 결정한다. 즉, 예를 들어 상기 음성 처리 시스템이 상기 음성 신호가 무성음인지 아니면 배경 잡음인지에 대한 정확한 구분을 요구한다면, 상기 제어부(100)는 1차 신경망을 이용하는 것보다 더 정확하게 무성음과 배경 잡음을 구분할 수 있는 2차 신경망을 이용하여 상기 음성 신호 프레임이 유/무성음 또는 배경 잡음을 판단한다.
그리고 상기 708단계의 판단 결과 2차 신경망을 사용하지 않는 경우라면, 제어부(100)는 710단계로 진행하여 상기 신경망 시스템(124)을 통해 1차 신경망 인식만을 수행하고, 그 판단 결과를 다음 단의 음성 처리 시스템에 출력한다. 그러나 만약 상기 708단계의 판단 결과 2차 신경망을 사용하는 경우라면, 제어부(100)는 712단계로 진행하여 2차 신경망 인식을 수행하고, 그 수행 결과에 따른 상기 음성 신호 프레임의 판단 결과를 상기 음성 처리 시스템에 출력한다.
도 8은 상기 도 7의 동작 과정 중, 2차 신경망 시스템을 이용하는 경우에 따른 동작 과정의 흐름을 보이고 있는 도면이다.
도 8을 참조하여 살펴보면, 708단계의 판단 결과 2차 신경망을 사용하는 경우, 신경망 시스템(124)은 800단계로 진행하여 상기 음성 신호 프레임을 분석하여 상기 음성 신호의 특징 정보들을 추출한다. 여기서 상기 음성 신호의 특징 정보들은 저대역 음성 신호 에너지(energy) 영역의 크기(RMSE : Root Mean Squared Energy of Signal)나 0점 교차 횟수(Zero-crossing count : ZC)등이 될 수 있다.
상기 800단계에서 이러한 음성 신호 프레임의 특징 정보들이 추출되면, 신경망 시스템(124)은 상기 추출된 특징들을 이용하여 상기 음성 신호 프레임의 1차 신경망 인식을 수행한다. 그리고 신경망 시스템(124)은 802단계로 진행하여 상기 1차 신경망 인식의 결과가 유성음인지 여부를 판단한다. 그리고 만약 상기 1차 신경망 인식에 따른 판단 결과가 유성음이 아닌 경우라면 816단계로 진행하여 현재 음성 신호의 유/무성음 또는 배경 잡음 판단을 보류한다. 그리고 신경망 시스템(124)은 새로운 음성 신호 프레임을 입력받는다.
한편 상기 802단계의 판단 결과 상기 1차 신경망 인식에 따른 판단 결과가 유성음인 경우라면, 신경망 시스템(124)은 804단계로 진행하여 상기 음성 신호 프레임의 판단 결과를 제어부(100)에 출력한다. 그러면 제어부(100)는 상기 음성 신호 프레임의 판단 결과를 상기 음성 처리 시스템에 출력한다.
그러면 상기 신경망 시스템(124)은 806단계로 진행하여 현재 판단이 보류된 음성 신호 프레임이 있는지 여부를 체크한다. 그리고 만약 상기 806단계의 체크 결과 판단이 보류된 음성 신호 프레임이 없는 경우라면, 신경망 시스템(124)은 다시 새로운 음성 신호 프레임을 입력받는다. 그러나 만약 상기 806단계의 체크 결과 판단이 보류된 음성 신호 프레임이 있는 경우라면, 신경망 시스템(124)은 808단계로 진행하여 현재 음성 신호 프레임의 특징 정보를 저장한다. 그리고 신경망 시스템(124)은 상기 현재 판단이 보류중인 음성 신호 프레임의 판단을 위해 기 설정된 개수만큼의 음성 신호 프레임들에 대한 특징 정보들이 저장되었는지 여부를 체크한다.
그리고 만약 상기 810단계의 체크 결과, 기 설정된 개수만큼의 음성 신호 프레임들에 대한 특징 정보들이 저장되어 있지 않은 경우라면, 신경망 시스템(124)은 다시 새로운 음성 신호 프레임을 입력받는다. 그러나 상기 810단계의 체크 결과, 기 설정된 개수만큼의 음성 신호 프레임들에 대한 특징 정보들이 저장된 경우라면 신경망 시스템(124)은 812단계로 진행하여 기 설정된 개수만큼의 음성 신호들에 대한 특징 정보들을 2차 신경망에 입력하고, 상기 현재 판단이 보류된 음성 신호의 2차 인식을 수행한다. 그리고 신경망 시스템(124)은 814단계로 진행하여 상기 2차 인식의 수행 결과에 따라 상기 음성 신호 프레임이 무성음인지 또는 배경 잡음인지를 판단하고 이를 제어부(100)에 출력한다. 그러면 제어부(100)는 상기 현재 판단이 보류된 음성 신호 프레임의 판단 결과로서 상기 2차 인식의 수행 결과에 따른 결과를 다음 단의 음성 처리 시스템에 출력한다.
한편 상기 도 3의 304단계의 판단 결과, 하모닉 피크를 사용하지 않는 경우라면, 제어부(100)는 312단계로 진행하여 모폴로지 분석을 수행하고, 그 수행 결과에 따라 음성 신호의 특징 정보를 추출하는 것을 앞서 밝힌 적 있다. 도 9는 이러한 경우 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서 모폴로지 연산에 따라 입력된 음성 신호를 분석하는 모폴로지 분석 과정의 흐름을 보이고 있는 도면이다.
도 9를 참조하여 살펴보면, 상기 도 3의 304단계의 판단 결과, 하모닉 피크를 사용하지 않는 경우라면, 제어부(100)는 900단계로 진행하여 모폴로지 연산 성능을 최적화하기 위한 최적의 SSS(structuring set size)를 결정한다. 최적의 SSS가 결정되면 제어부(100)는 902단계로 진행하여 결정된 최적의 SSS를 이용하여 음성 신호 프레임의 음성 신호 파형에 대해 모폴로지 연산을 수행한 후 전처리(pre-processing)를 수행한다. 이때, 본 발명에서 이용되는 모폴로지 연산은 모폴로지 클로징이며, 이는 팽창(dilation)과 침식(erosion)의 반복(iteration)을 통해 이루어진다. 이러한 모폴로지 클로징은 영상 신호일 경우에는 이미지 주위를 'roll ball'하는 효과를 가지며, 바깥쪽으로부터 필터링하면서 코너를 스무딩(smoothing)하는 영향이 있다.
모폴로지 클로징 후 전처리가 수행되면, 제어부(100)는 904단계로 진행하여 모폴로지 연산 수행 결과 특징 주파수 영역을 추출한다. 구체적으로, 음성 신호를 모폴로지 클로징한 후 상기한 도 2(a)와 같은 신호 파형이 출력되면 전처리하여 도 2(b)에서와 같은 신호 파형을 가지는 특징 주파수 영역을 추출한다. 이러한 특징 주파수 영역은 음성 신호를 표현하는 모든 사인파의 주파수 영역을 나타내게 되며, 이로부터 특징 주파수를 얻는 것이 가능하게 된다.
도 10은 도 9의 동작 과정 중, 모폴로지 분석을 위한 최적의 SSS를 결정하는 동작 과정의 흐름을 보이고 있는 도면이다.
도 10을 참조하면, 제어부(100)는 1000단계에서 음성 신호 프레임이 입력되면 모폴로지 클로징을 수행하여 도 2(a)에 도시된 바와 같은 형태의 파형을 출력한다. 이어, 제어부(100)는 1002단계로 진행하여 전처리를 수행한다. 이때, SSS 결정부(108)에는 최적의 SSS를 결정하기 위해 일부의 테스트 모폴로지 연산 결과가 입력된다.
이어, 제어부(100)는 1004단계로 진행하여 가장 큰 신호의 개수를 N으로 정의하고, 1006단계로 진행하여 N개의 선택된 하모닉 피크를 이용하여 전체 나머지 부분에 대한 에너지와 N개의 선택된 하모닉 피크에 대한 에너지의 비율인 P를 산출 한다. 그리고 제어부(100)는 1008단계로 진행하여 상기 P값과 현재의 SSS를 비교한 후, 1010단계로 진행하여 상기 비교 결과에 따라 N을 조정하여 최적의 SSS를 결정한다. 다시 말하면, P값이 소정값 이상일 경우에는 N을 줄이고, P값이 소정값 이하일 경우에는 N을 크게 한다. 이와 같이 N을 조정함으로써, 최적의 SSS를 찾을 수 있게 된다. 이때, SSS는 모폴로지 연산을 위한 슬라이딩 윈도우 크기를 설정하기 위한 값이며, 슬라이딩 윈도우 크기는 모폴로지 필터(106)의 성능을 좌우한다.
도 11은 이러한 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서, 모폴로지 분석 결과에 따라 출력되는 신호 파형을 이용하여 음성 신호의 특징 정보를 추출하는 동작의 흐름을 보이고 있는 도면이다.
도 11을 참조하여 살펴보면, 상기 모폴로지 분석 결과에 따른 신호 파형을 가진 특징 주파수 영역이 입력되면, 제어부(100)는 1100단계로 진행하여 본 발명의 실시 예에 따른 음성 신호 전처리 시스템 다음 단의 음성 처리 시스템에서 요구되는 음성 신호 특징 정보가 포락선 정보인지, 아니면 피치 정보인지, 또는 유/무성음 또는 배경잡음인지에 대한 판단 결과인지를 체크한다. 그리고 체크 결과에 따라 상기 입력된 상기 모폴로지 분석 결과에 따른 특징 주파수 영역을 각각의 음성 신호 특징 추출부에 입력한다.
즉, 예를 들어 상기 음성 처리 시스템이 요구하는 음성 신호 특징 정보가 포락선 정보인 경우, 제어부(100)는 1102단계로 진행하여 상기 특징 주파수 영역을 포락선 추출부(126)에 입력한다. 그리고 제어부(100)는 1104단계로 진행하여 상기 입력된 상기 특징 주파수 영역의 신호 파형으로부터 하모닉 피크를 추출하여 상기 특징 주파수 영역의 포락선 정보를 추출한다. 여기서 상기 포락선 추출부(126)는 상기 특징 주파수 영역에 따른 신호 파형에서 첫 피치 주기동안 최대의 피크를 찾아 첫 번째 하모닉 피크를 검출하고, 그 후 각각의 검색 영역에 따라 하모닉 피크들을 선택하는 과정을 거쳐 하모닉 피크들을 선택한다. 그리고 선택된 하모닉 피크들을 보간법(Interpolation)을 이용하여 포락선 정보를 추출한다. 그리고 상기 포락선 정보가 추출되면 제어부(100)는 316단계로 진행하여 상기 추출된 포락선 정보를 다음 단의 음성 처리 시스템에 출력한다.
그리고 만약 상기 다음 단의 음성 처리 시스템이 상기 하모닉 피크들에 따른 포락선 정보뿐 아니라, 상기 하모닉 피크로 선택되지 않은 다른 피크들의 포락선 정보, 즉 비하모닉 포락선 정보를 요구할 경우 이를 상기 음성 신호 프레임으로부터 추출할 수도 있음은 물론이다. 또한 상기 포락선 추출부(126)는, 상기 특징 주파수 영역의 하모닉 피크들을 이용하여 상기 특징 주파수 영역의 2차 하모닉 피크에 따른 포락선 정보를 추출할 수도 있다. 여기서 상기 2차 하모닉 피크라는 것은, 상기 특징 주파수 영역에 따른 신호 파형으로부터 추출된 포락선으로부터 다시 추출한 하모닉 피크들을 말하는 것이다.
그리고 이 2차 하모닉 피크들에 따른 포락선 정보는 상기 특징 주파수 영역이 유성음인지, 무성음인지 구별하는 과정에서 정확도를 높이기 위해 사용될 수 있다. 여기서 상기 특징 주파수 영역에 따른 2차 하모닉 피크로부터 포락선 정보를 추출하는 과정을 포함하는 본 발명의 실시 예에 따른 포락선 추출부(126)의 동작을 하기 도 12를 참조하여 자세히 살펴보기로 한다.
한편 상기 1100단계의 판단 결과 상기 음성 처리 시스템이 요구하는 음성 신호 특징 정보가 피치 정보인 경우라면, 제어부(100)는 상기 입력된 상기 특징 주파수 영역을 피치 추출부(110)에 입력한다. 그러면 제어부(100)는 1108단계로 진행하여 상기 입력된 상기 특징 주파수 영역의 하모닉 피크를 이용하여 상가 음성 신호의 피치 정보를 추출한다. 여기서 상기 제어부(100)는 상기 특징 주파수 영역으로부터 피치 정보를 추출하기 위해 다양한 방법을 사용할 수 있다. 즉, 예를 들어 제어부(100)는 상기 특징 주파수 영역으로부터 하모니 영역과 잡음 영역의 에너지 비율을 검출하고, 상기 검출된 에너지 비율이 최대값인 피크를 피치 정보로 결정하여 추출하는 방법을 사용할 수도 있다. 그리고 상기 피치 정보가 추출되면 제어부(100)는 316단계로 진행하여 상기 추출된 피치 정보를 다음 단의 음성 처리 시스템에 출력한다.
또한 상기 1100단계의 판단 결과 상기 음성 처리 시스템이 요구하는 음성 신호 특징 정보가 상기 입력된 음성 신호의 유/무성음 또는 배경 잡음 판단 결과인 경우라면, 제어부(100)는 1110단계로 진행하여 상기 입력된 상기 특징 주파수 영역을 유/무성음 판단을 위한 음성 신호 특징 정보 추출부에 입력한다. 그리고 제어부(100)는 1112단계로 진행하여 상기 특징 주파수 영역을 이용하여 상기 입력된 음성 신호의 유/무성음 여부를 판단한다. 여기서 상기 유/무성음 판단은 상기 신경망 시스템(124)의 인식 결과를 이용할 수도 있고(전자), 상기 포락선 추출부(126)를 통해 추출된 2차 하모닉 피크 포락선 정보 및 비하모닉 피크 포락선 정보를 이용할 수도 있다(후자).
전자의 경우, 제어부(100)는 상기 특징 주파수 영역을 신경망 시스템(124)에 입력한다. 그리고 상기 신경망 시스템의 인식 결과에 따라 상기 제어부(100)는 상기 음성 신호가 유성음인지 무성음인지 아니면 배경 잡음인지 여부를 판단한다. 그리고 후자인 경우라면 제어부(100)는 상기 특징 주파수 영역을 포락선 추출부(126)에 입력한다. 그리고 제어부(100)는 상기 포락선 추출부(126)를 통해 2차 하모닉 피크 포락선 정보와 비하모닉 피크 포락선 정보를 추출하고, 추출된 두개의 포락선 정보를 상기 유성음화 정도 연산부(118)에 입력한다. 그러면 상기 유성음화 정도 연산부(118)는 상기 두개의 포락선 정보의 비를 산출하고, 산출된 결과값을 기 설정된 유성음 임계치와 비교한다. 그리고 상기 두개의 포락선 정보의 비가 유성음화 임계치 이상인 경우 상기 입력된 음성 신호를 유성음이라고 판단하고, 그렇지 않은 경우 무성음 또는 배경 잡음이라고 판단한다.
여기서 만약 상기 유성음 임계치 뿐 아니라 무성음 임계치가 설정되어 있는 경우라면, 상기 유성음화 정도 연산부(118)는 상기 두개의 포락선 정보의 비가 유성음 임계치 이상일 경우에 상기 음성 신호를 유성음으로, 그리고 상기 포락선 정보의 비가 유성음 임계치 미만 무성음 임계치 이상일 경우 상기 음성 신호를 무성음으로, 그리고 상기 포락선 정보의 비가 무성음 임계치 미만일 경우 이를 배경 잡음으로 판단할 수도 있음은 물론이다. 그리고 상기 음성 신호의 판단 결과가 추출되면 제어부(100)는 316단계로 진행하여 상기 판단 결과를 다음 단의 음성 처리 시스템에 출력한다.
이처럼 상기 1100단계의 체크 결과 다음 단의 음성 처리 시스템에서 요구하 는 음성 신호 특징 정보가 상기 입력 신호의 유/무성음 또는 배경 잡음 판단 결과인 경우의 동작 과정을 하기 도 13을 참조하여 자세히 살펴보기로 한다.
도 12는 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서, 모폴로지 분석에 따라 출력되는 신호 파형을 이용하여 음성 신호의 포락선을 추출하는 동작 과정의 흐름을 보이고 있는 도면이다.
우선 도 12를 참조하여 살펴보면, 상기 1112단계에서 특징 주파수 영역의 포락선 정보를 이용하여 상기 음성 신호의 유/무성음 판단을 수행하는 경우 또는 상기 1102단계에서 상기 특징 주파수 영역이 포락선 추출부(126)에 입력되는 경우, 제어부(100)는 1200단계로 진행하여 2차 하모닉 피크가 필요한지 여부를 판단한다. 여기서 만약 상기 다음 단의 음성 처리 시스템이 2차 하모닉 피크를 요구하는 경우 또는 상기 1112단계에서 음성 신호의 유/무성음 판단 시에 2차 하모닉 피크를 수행하는 경우라면, 제어부(100)는 상기 2차 하모닉 피크가 필요한 것으로 판단한다.
그러나 만약 상기 1200단계의 판단 결과 하모닉 피크가 필요없는 것으로 판단되면, 제어부(100)는 상기 입력된 특징 주파수 영역으로부터 하모닉 피크들을 선택하고, 선택된 하모닉 피크들에 보간법을 적용하여 포락선 정보를 추출한다. 그리고 제어부(100)는 1210단계로 진행하여 하모닉 피크로 선택되지 않은 나머지 피크들에 보간법을 적용하여, 상기 나머지 피크들에 따른 포락선 정보를 추출하고 이를 비하모닉 피크 포락선 정보로 추출한다. 그런데 만약 상기 비하모닉 피크 포락선 정보가 필요없는 경우, 즉 다음 단의 음성 처리 시스템이 상기 하모닉 피크 포락선 정보만을 요구한 경우라면, 상기 1210단계는 생략할 수도 있음은 물론이다.
한편 상기 제어부(100)는 1202단계로 진행하여 현재 입력된 특징 주파수 영역으로부터 하모닉 피크들의 포락선 정보를 추출한다. 그리고 제어부(100)는 1204단계로 진행하여 상기 추출된 포락선 정보로부터 2차 하모닉 피크를 추출한다. 그리고 상기 추출된 포락선 정보로부터 다시 하모닉 피크들만을 선택하여 다시 보간법을 적용하여 2차 하모닉 피크들에 따른 포락선 정보들을 추출한다. 그리고 제어부(100)는 1210단계로 진행하여 상기 1차 하모닉 피크들의 포락선 정보 추출시 하모닉 피크로 선택되지 않은 나머지 피크들에 보간법을 적용하여, 상기 나머지 피크들에 따른 포락선 정보를 비하모닉 피크 포락선 정보로 추출한다. 여기서 만약 상기 비하모닉 피크 포락선 정보가 필요없는 경우, 즉, 포락선 정보들의 비를 이용하여 유/무성음을 구분하는 경우가 아니거나, 다음 단의 음성 처리 시스템이 2차 하모닉 피크 포락선 정보만을 요구한 경우라면 상기 1210단계는 생략할 수도 있음은 물론이다.
도 13은 본 발명의 실시 예에 따른 음성 신호 전처리 시스템에서, 모폴로지 분석에 따라 출력되는 신호 파형을 이용하여 유/무성음 여부를 판단하는 동작 과정의 흐름을 보이고 있는 도면이다.
여기서 상기 유/무성음 여부를 판단하는 유/무성음 판단부는, 도 7의 하모닉 피크를 사용하는 경우에 유/무성음 여부를 판단하는 것과 같은 이유로, 상기 신경망 시스템(124) 또는 상기 포락선 추출부(126)와 유성음화 정도 연산부(118)가 될 수 있다. 따라서 상기 제어부(100)는 상기 1012단계로 진행하면, 1300단계로 진행하여 상기 특징 주파수 영역에 따른 포락선 정보를 이용하여 유/무성음 여부를 판 단할 것인가, 신경망 시스템을 이용하여 유/무성음 여부를 판단할 것인지를 결정한다. 여기서 제어부(100)는 다음 단의 음성 처리 시스템이 요구하는 정보의 특성 또는 상기 특징 주파수 영역에 대응되는 음성 신호의 유/무성음 여부를 판단하기 위한 계산량 등에 따라 어느 것을 이용하여 상기 특징 주파수 영역에 대응되는 음성 신호의 유/무성음 여부를 판단할지를 결정한다.
그리고 상기 1300단계의 결정 결과가, 상기 특징 주파수 영역으로부터 추출된 포락선 정보를 이용하여 상기 특징 주파수 영역에 대응되는 음성 신호의 유/무성음 판단을 수행하는 것이라면, 제어부(100)는 1302단계로 진행하여 상기 모폴로지 분석 결과에 따른 특징 주파수 영역을 포락선 추출부(126)에 입력하여 2차 하모닉 피크 포락선 정보 및 비하모닉 피크 포락선 정보를 추출한다. 여기서 상기 2차 하모닉 피크 포락선 정보 및 비하모닉 피크 포락선 정보는 상기 도 12에서 서술한 과정을 통해 추출될 수 있다.
그리고 제어부(100)는 1304단계로 진행하여 상기 하모닉 피크 포락선 정보와 비하모닉 피크 포락선 정보를 유성음화 정도 연산부(118)에 입력하고, 상기 유성음화 정도 연산부(118)를 통해 상기 특징 주파수 영역에 대응되는 음성 신호의 유성음화 정도를 산출한다. 그리고 제어부(100)는 1306단계로 진행하여 상기 추출된 유성음화 정도를 기 설정된 유성음 임계치 또는 유성음 임계치와 무성음 임계치와 비교하여, 상기 입력된 음성 신호가 유성음인지, 무성음인지 또는 배경 잡음 인지를 판단한다.
한편 상기 1300단계의 결정 결과, 상기 입력된 음성 신호 프레임의 유/무성 음 판단을 위해 신경망 시스템(124)을 이용하는 경우라면, 제어부(100)는 1308단계로 진행하여 상기 모폴로지 분석 결과에 따른 특징 주파수 영역을 신경망 시스템(124)에 입력하고, 2차 신경망을 이용할지 여부를 결정한다. 여기서 상기 신경망 시스템(124)은 역시 하나의 신경망을 구비하여 상기 입력된 특징 주파수 영역에 대응되는 음성 신호가 유/무성음 또는 배경 잡음인지를 판단하거나 적어도 두개의 신경망을 통하여 상기 입력된 특징 주파수 영역에 대응되는 음성 신호가 유/무성음 또는 배경 잡음인지를 판단할 수 있다. 그리고 두개의 신경망을 이용하여 상기 음성 신호를 판단하는 경우라면 상기 신경망 시스템(124)은 1차 신경망을 통해 도출된 상기 특징 주파수 영역의 유/무성음 또는 배경 잡음 판단 결과 및 상기 특징 주파수 영역으로부터 추출된 다양한 특징 정보들의 2차 통계값을 이용하여 2차 신경망 인식을 수행하고, 그 수행 결과에 따라 상기 입력된 유/무성음 또는 배경잡음 판단 결과를 제어부(100)에 반환한다.
이러한 경우, 즉, 두 개의 신경망을 통해 상기 음성 신호를 판단할 수 있는 경우, 상기 1300단계에서 상기 특징 주파수 영역에 대응되는 음성 신호의 유/무성음 판단을 위해 신경망 시스템(124)을 이용하는 것이 결정되면, 상기 제어부(100)는 1308단계로 진행하여 상기 2차 신경망을 이용할지 여부를 결정한다. 여기서 상기 2차 신경망 이용은 여기서 제어부(100)는 다음 단의 음성 처리 시스템이 요구하는 정보의 특성 또는 상기 음성 신호 프레임의 유/무성음 여부를 판단하기 위한 계산량 등에 따라 어느 것을 이용하여 상기 음성 신호 프레임의 유/무성음 여부를 판단할지를 결정한다. 즉, 예를 들어 상기 음성 처리 시스템이 상기 음성 신호가 무 성음인지 아니면 배경 잡음인지에 대한 정확한 구분을 요구한다면, 상기 제어부(100)는 1차 신경망을 이용하는 것보다 더 정확하게 무성음과 배경 잡음을 구분할 수 있는 2차 신경망을 이용하여 상기 음성 신호 프레임이 유/무성음 또는 배경 잡음을 판단한다.
그리고 상기 1308단계의 판단 결과 2차 신경망을 사용하지 않는 경우라면, 제어부(100)는 1310단계로 진행하여 상기 신경망 시스템(124)을 통해 1차 신경망 인식만을 수행하고, 그 판단 결과를 다음 단의 음성 처리 시스템에 출력한다. 그러나 만약 상기 1308단계의 판단 결과 2차 신경망을 사용하는 경우라면, 제어부(100)는 1312단계로 진행하여 2차 신경망 인식을 수행하고, 그 수행 결과에 따른 상기 특징 주파수 영역에 대응되는 음성 신호의 유/무성음 또는 배경 잡음 판단 결과를 상기 음성 처리 시스템에 출력한다.
도 14는 도 13의 동작 과정 중, 2차 신경망 시스템을 이용하는 경우에 따른 동작 과정의 흐름을 보이고 있는 도면이다.
도 14를 참조하여 살펴보면, 1308단계의 판단 결과 2차 신경망을 사용하는 경우, 신경망 시스템(124)은 1400단계로 진행하여 상기 모폴로지 분석에 따른 특징 주파수 영역을 분석하여 상기 음성 신호의 특징 정보들을 추출한다. 여기서 상기 음성 신호의 특징 정보들은 저대역 음성 신호 에너지(energy) 영역의 크기(RMSE : Root Mean Squared Energy of Signal)등이 될 수 있다.
상기 1400단계에서 이러한 특징 주파수 영역의 특징 정보들이 추출되면, 신경망 시스템(124)은 상기 추출된 특징들을 이용하여 상기 특징 주파수 영역의 1차 신경망 인식을 수행한다. 그리고 신경망 시스템(124)은 1402단계로 진행하여 상기 1차 신경망 인식의 결과가 유성음인지 여부를 판단한다. 그리고 만약 상기 1차 신경망 인식에 따른 판단 결과가 유성음이 아닌 경우라면 1416단계로 진행하여 현재 입력된 특징 주파수 영역에 대응되는 음성 신호의 유/무성음 또는 배경 잡음 판단을 보류한다. 그리고 신경망 시스템(124)은 새로운 음성 신호에 대응되는 특징 주파수 영역을 입력받는다.
한편 상기 1402단계의 판단 결과 상기 1차 신경망 인식에 따른 판단 결과가 유성음인 경우라면, 신경망 시스템(124)은 1404단계로 진행하여 상기 1차 인식에 따른 판단 결과를 제어부(100)에 출력한다. 그러면 제어부(100)는 상기 판단 결과를 다음 단의 음성 처리 시스템에 출력한다.
그러면 상기 신경망 시스템(124)은 1406단계로 진행하여 현재 판단이 보류된 특징 주파수 영역이 있는지 여부를 체크한다. 그리고 만약 상기 1406단계의 체크 결과 판단이 보류된 특징 주파수 영역이 없는 경우라면, 신경망 시스템(124)은 다시 새로운 특징 주파수 영역을 입력받는다. 그러나 만약 상기 1406단계의 체크 결과 판단이 보류된 특징 주파수 영역이 있는 경우라면, 신경망 시스템(124)은 1408단계로 진행하여 현재 특징 주파수 영역으로부터 추출된 특징 정보를 저장한다. 그리고 신경망 시스템(124)은 상기 현재 판단이 보류중인 특징 주파수 영역에 대응되는 음성 신호의 판단을 위해 기 설정된 개수만큼의 특징 주파수 영역들에 대한 특징 정보들이 저장되었는지 여부를 체크한다.
그리고 만약 상기 1410단계의 체크 결과, 기 설정된 개수만큼의 특징 주파수 영역들에 대한 특징 정보들이 저장되어 있지 않은 경우라면, 신경망 시스템(124)은 다시 새로운 특징 주파수 영역을 입력받는다. 그러나 상기 1410단계의 체크 결과, 기 설정된 개수만큼의 특징 주파수 영역들에 대한 특징 정보들이 저장된 경우라면 신경망 시스템(124)은 1412단계로 진행하여 기 설정된 개수만큼의 특징 주파수 영역들에 대한 특징 정보들을 2차 신경망에 입력하고, 현재 판단이 보류된 특징 주파수 영역에 대응되는 음성 신호의 2차 인식을 수행한다. 그리고 신경망 시스템(124)은 1414단계로 진행하여 상기 2차 인식의 수행 결과에 따라 상기 특징 주파수 영역에 대응되는 음성 신호가 무성음인지 또는 배경 잡음인지를 판단하고 이를 제어부(100)에 출력한다. 그러면 제어부(100)는 상기 현재 판단이 보류된 특징 주파수 영역에 대응되는 음성 신호의 판단 결과로서 상기 2차 인식의 수행 결과에 따른 결과를 다음 단의 음성 처리 시스템에 출력한다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 특히 본 발명의 실시 예에서는 본 발명의 실시 예에 따른 음성 신호 전처리 시스템 다음 단의 음성 처리 시스템이 포락선 정보, 피치 정보, 그리고 유/무성음 및 배경 잡음 여부 판단 정보를 요구하는 것을 가정하였으나, 본 발명이 이에 한정되는 것은 아니다. 또한 본 발명에서는 상기한 포락선 정보, 피치 정보, 그리고 유/무성음 및 배경 잡음 여부 판단 정보를 추출하는 다양한 방법들을 제시하였으나, 본 발명에서 제시하고 있는 방법 외에 다른 동일한 기능을 수행하는 다른 방법이 사용될 수도 있음은 물론이다. 따라서 발명의 범위는 설명된 실시 예에 의해 정할 것이 아니고, 특허청 구범위와 특허청구범위의 균등한 것에 의해 정하여져야 한다.