KR19990087730A - 불특정 화자에 대한 실시간 음성인식 시스템 및 이것의 방법 - Google Patents

불특정 화자에 대한 실시간 음성인식 시스템 및 이것의 방법

Info

Publication number
KR19990087730A
KR19990087730A KR1019980707199A KR19980707199A KR19990087730A KR 19990087730 A KR19990087730 A KR 19990087730A KR 1019980707199 A KR1019980707199 A KR 1019980707199A KR 19980707199 A KR19980707199 A KR 19980707199A KR 19990087730 A KR19990087730 A KR 19990087730A
Authority
KR
South Korea
Prior art keywords
signal
audible
frequency
processor
digital
Prior art date
Application number
KR1019980707199A
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 KR19990087730A publication Critical patent/KR19990087730A/ko

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Telephonic Communication Services (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 가청 시그날에 포함된 음운타입을 식별하는 장치 및 방법에 관한 것이다. 이러한 시스템은 마이크로폰(12)과 조건부회로(14)를 포함하며, 가청 시그날을 수신받아 전형적인 전기 신호로 바꿔주게 된다. 그 다음에 상기 전기신호는 샘플링을 거쳐 아날로그-디지틀 변환기(34)를 사용하여 디지틀 가청 시그날로 전환시켜주게 된다. 상기 디지틀 가청 시그널은 음성을 디지틀 처리하여 여러개의 시간영역과 주파수 영역의 음성특성을 추출해내는 프로그램 디지틀 음성 프로세서(18)에 입력된다. 이러한 음성특성은 이것을 표준 음성 데이터와 비교하는 프로그램 호스트 음성 프로세서(20)로 보내진다. 호스트 음성 프로세서(20)는 이 음성특성과 표준 음성 데이터를 비교한 다음 언어 프로세싱 방법으로 음운을 영어단어나 다른 언어 단어로 바꿔주는 것을 포함하고 있다. 이러한 단어는 데이터나 명령어로 사용하는 호스트 프로세서(22)로 보내지게 된다.

Description

불특정 화자에 대한 실시간 음성인식 시스템 및 이것의 방법
일반적으로 언어학자와 과학자 그리고 기술자들은 오랫동안 음성을 인식할 수 있는 장치를 개발하기 위하여 노력해 왔다. 그 결과로 최근에 일부 측면에서는 인식할 수 있었지만 현재 통용되고 있는 장치로는 인간의 음성과 가장 가깝게 인식할 수는 없었다.
원래 음성을 충분하게 인식하지 못하는 것은 개인의 어음(語音) 차이에 기인되고, 이 차이가 서로 다른 발성을 내는 사람들이 폭넓은 청각적인 차이를 야기시키고 있다.
단순히 음색은 40개 또는 소위 음운 이라고 불리는 음성시퀀스를 고려하게 된다. 혀나 입술 그리고 턱과 같은 조음기관을 움직여주는 근육 조절에 따라 발성관이 여러 형태로 바뀌면서 다른 음색 또는 음운을 만들게 내게 된다.
음운의 조합이 단어나 어구로 표현이 된다. 그래서, 음성시그널에 포함되어 있는 특별한 음운을 뽑아내는 것으로 음성을 인식할 수 있게 되는 것이다. 그렇지만 음운을 축출하는 것을 몹시 어렵게 하는 여러 가지 요인이 있다.
일예로, 같은 음운이지만 다른 화자가 이야기할 때마다 다양한 청각적인 변차가 있다. 이것은 성도(聲道)의 길이와 같은 발성기관의 차이에 기인하게 된다. 게다가, 한사람이 냈던 음운을 다시 내더라도 청각적으로는 다른 음운으로 나타나게 되고, 또한 음운과 다른 단어 사이에도 종종 동일하다고 할 수 있는 한계가 없게 된다.
다른 차이점은 방언, 억양, 리듬, 스트레스, 볼륨과 피치에 따라 다양하게 이야기하는 것에 기인하게 된다. 결국, 음성시그널은 음운을 정확하게 구분하거나 분리하는데 따른 어려움을 야기시키는 음성과 관련된 소리(noises) 함께 다양한 변화를 얻게 된다. 상기 음성인식장치는 제한된 기능과 성능으로 상술한 문제점과 변화를 최소화할 수 있는 것이다. 일예로, 현존하는 많은 장치는 화자가 누구든 관계없는 시스템(불특정 화자 시스템)으로 분류되어 있다. 불특정화자는 특정한 화자가 이야기하는 각각의 단어에 대한 데이터베이스를 얻고 저장하는 방법으로 한사람의 화자의 음성을 인식하게 된다. 이러한 방식의 장치가 갖는 큰 단점은 한사람의 화자를 위한 시스템이기 때문에 트레이닝 과정을 완벽하게 거친 화자만이 사용할 수 있다는 것이다. 게다가, 이 장치의 어휘는 데이터 베이스에 저장된 특정한 어휘로 제한을 받게 된다. 마지막으로, 이 장치는 계속하여 이야기하는 것을 자연스럽게 인식하지 못하여, 화자가 단어를 정확하게 끊어 발음해야하는 문제점이 있다.
물론, 통상적으로 사용되는 불특정화자 시스템은 기능적인 면에서 제약이 있다. 트레닝을 받지 않은 화자가 이 장치를 사용하게 되면 이 장치는 오직 매우 작은 어휘로 단어를 인식하게 된다. 게다가, 이 장치는 단어 사이를 정확하게 끊어 분리되도록 이야기해야 하기 때문에 연속하여 이야기하는 것은 자연스럽게 인식하지 못하게 된다.
본 발명은 일반적인 음성 인식장치 및 그 방법에 관한 것으로, 더욱 상세하게는 화자(話者)가 이야기하는 음성을 지속적이고 정확하게 인식할 수 있는 음성 인식장치 및 그 방법에 관한 것이다.
본 발명의 기술 내용과 장점, 그리고 목적을 얻기 위해 위에서 기술한 내용을 보다 구체적인 내용은 첨부도면에서 도시된 특별한 구현예를 참조하여 설명하기로 한다. 첨부도면은 본 발명에 따른 전형적인 실시예를 도시한 것으로 그 범위만으로 한정하는 것은 아니다,
도 1은 본 발명에 따른 음성 인식장치의 기능을 상세하게 나타내는 블록 다이아그램,
도 2는 음성인식장치를 설명하기 위해 더욱 상세하게 나타낸 블록 다이아그램,
도 3A 내지 3Y는 도 2의 기능블럭을 구성하는 회로를 상세하게 설명하기 위한 개략도,
도 4는 본 발명에 따른 전체 프로그램 방법을 설명하는 플로우 챠트,
도 5A 내지 5B는 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 6 내지 6D는 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 7은 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 8 내지 8C는 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 9는 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 10 내지 도10C는 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 11은 도 4의 기능별 블록중 한가지 수단을 나타내는 프로그램 방법을 설명하는 플로우 챠트,
도 12A 내지 12C는 표준 음성 데이터를 나타내는 x-y 플로트이다.
본 발명의 바람직한 구현예를 참조하여 간략하게 요약해보면, 가청 음성시그널(audio speech signal)은 화자로부터 받아 가청 프로세서 수단에 입력이 된다. 가청 프로세서 수단은 이 시그널 입력받아 이와 유사한 전기 데이터 방식으로 바꿔주고, 그 다음에 시퀀스 디지틀 샘플링에 적합한 상태로 바뀌게 된다.
상기 가청 음성시그널은 가청 전기시그널로 전환되어 A/D 컨버터로 보내지게 된다. 이 A/D컨버터 수단은 오디어 전기시그널 적당한 샘플링 비율로 바꿔 디지틀 가청 시그널 출력하게 된다.
그 다음에, 이 디지틀 가청 시그널은 음성인식수단에서 어느 정도 프로세스 처리되어 여러 가지시간 영역과 주파수 영역을 갖는 음질로 추출되고, 가청 음성시그널 포함하는 특수 음운 타입으로 인식된다. 이 특수추출과 음운인식으로 음성인식은 가청 음성시그널과는 무관하게 되는 것이다. 더욱 중요한 것은, 사용자가 자신의 개인적인 음성특성을 이 장치에 인식시킬 필요가 없다는 것이다. 게다가, 이 프로세서는 화자가 단어 사이를 끊지 않고 일반 대화속도로 이야기할 수 있도록 실시간에 데이터를 처리하게 된다.
상기 음성 인식수단은 가청 음성시그널의 인입으로부터 음운타입을 추출하는 것 외에도 조합된 단어나 어구가 연결되도록 음운을 바꿔주는 다양한 언어학적인 프로세스 기능을 갖추고 있다. 이것은 기본적으로 어떤 언어라도 음운 타입으로 완전하게 만들어 주게 된다.
본 발명의 바람직한 구현예에서, 음성인식수단은 디지틀 음성 프로세서 수단과 호스트 음성 프로세서 수단으로 구성되어 있다. 디지틀 음성 프로세서 수단은 프로그램 장치와 연산로직을 포함하여 가청 음성시그널 프로세스 처리하여 프로그램 과정을 수행한 다음에 여러가지 시간적 영역과 주파수 영역의 음성특성을 추출하게 된다. 그 다음에 이 음성특성 데이터는 가청 시그널 조합시켜주는 데이터 구조에 저장된다.
상기 호스트 음성 프로세서 수단은 프로그램 장치와 연산로직을 포함하게 된다. 이 수단은 데이터 구조 내에서 여러가지 음성 특성을 처리하는데 필요한 단계를 수행하게 되고, 특정한 특성이 조합된 음성타입을 형성하게 된다. 음운을 식별하는 것 외에, 본 발명의 호스트 음성 프로세서는 전체 방법을 언어연산기(linguistic processing porting)를 실행하는데 필요로 하는 프로그램 과정을 수행하게 된다. 이러한 방식으로 음운의 인입은 표면적인 단어나 어구로 번역이 이루어지게 된다.
본 발명의 바람직한 다른 실시예에서는 음성인식수단에 접속되는 전기적수단을 포함하게 되며, 이 수단은 식별된 음운의 입력흐름으로부터 번역된 단어나 어구를 수신하게 된다. 퍼스털 컴퓨터와 같은 전기적 수단은 단어를 데이나 입력, 워드프로세서에의 적용, 시스템을 작동시켜주는 명령과 같은 명령어 입력이 요구된다.
위에서 상세하게 설명한 내용은 2개 부분으로 구분되어 있다. 제 1부분에서, 시스템 전체는 상술한 시스템을 구성하는 기능별 블록과 다양한 기능별 블록을 서로 연결시켜주는 수단에 대한 상세한 설명을 포함하고 있다.
1. 시스템
첨부도면 1은 본 발명에 따른 전체 음성인식장치의 실시예를 나타내는 도면으로, 도면부호 10으로 표시되어 있다. 상기 음성인식장치(10)는 가청 인식시그널 받아 표면적인 가청 전기시그널로 전환시켜주는 가청 프로세서를 포함하고 있다. 본 발명의 바람직한 구현예에서, 상기 가청 프로세서 수단은 가청 시그널을 입력받아 전기적 시그널로 바꿔주는 도면부호 12로 표시된 표준 컨덴서 마이크로폰이 구성되어 있다. 물론, 많은 다른 입력장치는 가청 시그널을 입력받아 사용하고 있지만 구술녹음기, 텔레폰 또는 무선 마이크로폰과 같이 사용에 제한을 두고 있지는 않다.
상기 가청 프로세서 수단은 마이크폰(12) 외에 부수적으로 사용할 수 있는 가청 프로세서 회로(14)를 포함하고 있다. 상기 회로(14)는 마이크로폰(12)으로부터 발생한 전기전 시그널을 받아 디지틀 샘플링을 하기에 적당한 전기적 상태가 되도록 유도하는 기능을 하게 된다.
게다가, 상기 회로(14)는 A/D변환수단과 전기적으로 접속되어 있으며, 실시예에서는 A/D변환회로(34)로 도시되어 있다. 상기 변환회로(34)는 아날로그로 포맷된 가청 전기회로를 받아 디지틀 로 포맷시켜 디지틀화된 가청 시그널로 출력을 하게 된다.
이 디지틀 가청 시그널은 실시예에서 도면부호 16으로 표시된 음성인식 프로세서 회로인 음성인식수단을 통과하게 된다. 일반적으로, 상기 음성인식 프로세서 회로(16)는 이 가청 시그널을 디지틀 버전으로 분석하고, 이것을 다양한 청각적 특성을 갖도록 추출하게 된다. 이렇게 청각적 특성이 얻어지면 상기 회로(16)는 가청 음성시그널에 포함된 특별한 음운타입으로 인식하게 된다. 결과적으로, 상기 음운의 식별은 각 화자의 음성특성을 비교하지 않고도 가능하게 되고 그 결과 화자가 일반적인 대화속도로 이야기하는 것이 가능하게 된다.
상기 음성인식 프로세서 회로(16)는 두가지 방법으로 필수적인 청각적 특성을 얻게 된다. 첫째는 가청 시그널의 시간 영역을 검출하는 것으로, 이러한 개념으로부터 추출은 가청 시그널 내에서 포함된 음운 타입의 다양한 변수를 재연할 수 있게 된다. 이러한 음운 타입은 유성음이나 무성음 또는 무음한 것까지도 포함하게 된다.
두 번째는 상기 음성인식 프로세서 회로(16)가 가청 시그널의 주파수 영역을 검출하는 것이다. 특히, 이러한 검출은 여러개로 나누어진 주파수를 검출할 수 있도록 미리 준비된 많은 필터를 사용하여 가청 시그널의 시간 영역을 계속적으로 걸러서 얻게 된다. 그 결과 여러개로 쪼개져서 걸러진 많은 수의 시그널을 얻게 되고, 낱개의 시그널 파형으로 검출된 것들은 복합 가청 시그널 파형으로 조합하게 된다. 상기 음성인식 프로세서 회로(16)는 필터로 걸러진 각 시그널을 측정하고, 각 시그널의 주파수와 진폭을 포함하는 주파수 영역 데이터를 추출하게 된다. 이 주파수 영역 특성은 시간 영역 특성과 마찬가지로 가청 시그널에 대하여 충분한 정보를 제공하여 프로세서 회로(16)가 여기에 포함된 음운을 식별하게 된다.
상기 음성인식 프로세서 회로(16)는 조합된 음운을 추출하고, 이것을 언어 프로그램 툴(linguistic program tools)을 포함하게 된다. 이 같은 방법으로 상기 프로세서 회로(16)는 식별된 음운을 음절이나 단어 또는 어구를 조합하게 된다.
첨부도면 1에서, 음성인식 프로세서 회로(16)는 호스트 컴퓨터(22)에 전기적으로 접속되어 있다. 본 발명의 바람직한 구현예에서, 상기 호스트 컴퓨터(22)는 표준 탁상용 개인 컴퓨터로, 데이터의 입출력이나 제어에 필요한 컴퓨터를 운용할 수 있는 장치가 구비되어 있다. 일예로, 상기 호스트 컴퓨터(22)는 데이터 엔트리 시스템(data entry system)으로 자동 화물출하, 화물저장, 품질제어, 디자인이나 제조용 컴퓨터, 그리고 다양한 제어용 시스템에서 이용되는 것이다.
상기 프로세서 회로(16)가 음운열을 인식함에 따라 조합된 단어나 어구는 호스트 컴퓨터(22)로 보내지게 되고, 전용 프로그램 제어하에서 호스트 컴퓨터(16)는 단어나 어구를 작동장치나 응용제어, 웨드 프로세서나 데이터 베이스와 같은 직접 입력하여 응용하는 데이터로 사용하게 된다.
첨부도면 2는 본 발명에 따른 음성인식장치를 보다 상세하게 도시하여 보여주고 있다. 가청 음성시그널마이크로폰(22)이나 이와 유사한 장치에서 수신받게 된다. 그리고 나서 상술한 전형적인 가청 전기시그널는 본 장치의 가청 프로세서 회로(16)를 통과하게 된다. 이 회로의 바람직한 구현예를 참조하여 살펴보면, 상기 가청 전기시그널은 증폭회로(26)와 같은 시그널증폭수단으로 입력되어 적당한 레벨로 증폭이 이루어지게 된다. 이와 유사한 다양한 회로에서 이러한 기능을 구현하고 있기 때문에, 본 발명의 바람직한 구현예서 증폭회로(26)는 약 300 게인(gain)을 얻을 수 있게 배치된 2단으로 증폭기가 구비되어 있다. 이러한 구성으로, 약 60dbm으로 입력되는 마이크로폰(12)과 함께 상기 증폭기회로(26)는 라인 레벨과 가까운 출력시그널을 얻게 된다.
본 발명의 바람직한 구현예에서, 상기 증폭된 가청전기시그널은 가청시그널의 출력레벨을 제한하는 수단을 통과하여 상기 시스템(10) 내에서 다른 구성품에 과부하 상태가 되는 것을 막아주게 된다. 이 제한수단은, 일예로 첨부도면 3에서 도시한 바와 같이, 여러 가지 기술로 사용되는 제한증폭회로(28)가 구비되어 있다.
그 다음, 증폭된 가청전기시그널은 안티 에어리어싱(anti-aliasing) 필터회로(30)를 통과하면서 전기적 가청시그널로부터 고주파수를 걸러주게 된다. 이 회로는 회로구성의 많은 방법중에서 어느 한가지를 사용하더라도 시스템(10) 내에서 다른 회로를 통과하는 고주파수를 제한하게 된다. 본 발명의 바람직한 구현예에서, 상기 필터회로(30)는 시그날의 주파수를 12㎑ 이하로 제한하게 된다.
아날로그로 포맷된 상기 가청 전기적 시그날은 디지틀 신호로 바꿔주기 위해 A/D컨버터회로(34)로 도시된 아날로그-디지틀 컨버터를 통과하게 된다. 본 발명의 바람직한 구현예에서, A/D컨버터회로(34)는 시그마-델타 샘플링 기술에 기인하는 디지틀 변환장치에 16비트 아날로그를 적용하고 있다. 또한, 상기 장치는 에어리어링 에러를 피할 수 있는 충분한 비율로 인입되는 아날로그 시그널을 샘플링할 수 있다. 최소한 샘플링 비율은 적어도 인입되는 음성파의 최고 주파수의 2배로 하게 되는데, 본 발명의 바람직한 구현예에서의 샘플링 비율은 44.1㎑이다. 상기 A/D변환장치는 통상적으로 많이 사용되는 것들중에서 하나를 사용하고 있으며, 첨부도면 3에서 도시한 바와 같이 통상적인 여러 가지 지원회로이다.
첨부도면 2와 같이 살펴보면, 가청 전기시그널이 디지틀 방식으로 변환됨에 따라 디지틀 시그널이 음성인식 프로세서 회로(16)로 보내진다. 본 발명의 바람직한 구현예에서, 상기 음성인식 프로세서 회로(16)는 프로그램장치를 포함하는 디지틀 음성 프로세서와 호스트 음성 프로세서가 구비되어 있다. 물론, 일정한 조건하에서 상기 음성인식 프로세서 회로(16)는 시그날 프로그램장치를 사용하기에 적당한 등가회로가 갖추어져 있다.
본 발명의 바람직한 구현예에서, 상기 디지틀 음성 프로세서는 도트박스(18) 내에 여러 가지의 회로구성요소를 포함하고 있으며, 디지틀 음성 프로세서 회로로 언급되어 있다. 상기 회로는 디지틀 가청 시그날을 받아 프로그램 조작으로 여러 가지의 음성 특성을 추출하게 된다. 특히, 상기 회로(18)는 시간영역에서 디지틀 가청 시그날을 분석하고 그 중에서 하나를 추출하게 된다. 이 시간영역에서의 특성으로 가청 시그날이 음소가 유성음인지 무성음인지 그리고 무음인지를 결정하게 된다.
물론, 상기 디지틀 음성 프로세서 회로(18)는 디지틀 가청 시그날을 조작하여 이 시그날에 대한 여러개의 주파수 영역과 관련된 정보를 얻게 된다. 이것은 가청 시그날을 여러개의 필터 밴드를 통과시키면서 걸러주고 걸러진 시그날을 조합하여 얻게 되는 것이다. 상기 회로(18)는 각 파형을 나열하여 다양한 특성을 측정하게 되고, 적어도 가청 시그날의 주파수 영역의 음성 특성을 추출하게 된다. 상기 주파수 영역의 특성은 필터링 과정을 거친 각 시그날의 주파수, 진폭과 슬로프를 포함하게 된다. 이러한 특성은 저장되었다가 가청 시그날에 포함된 음소 타입을 결정하는데 사용하게 된다.
첨부도면 2에서, 디지틀 음성 프로세서 회로(18)는 디지틀 음성 프로세서(36)와 같이 프로그램 제어하에서 디지틀 가청 시그날을 분석할 수 있는 프로그램수단이 구비되어 있다. 디지틀 음성 프로세서(36)는 Motorola DSP56001와 같은 프로그램할 수 있는 24비트 일반 디지틀 시그널 프로세서장치이다. 물론, 통상적으로 사용되는 여러 가지 디지틀 시그널 프로세서를 사용할 수 있다.
상기 디지틀 음성 프로세서(36)는 - 표준 주소, 데이터, 그리고 버스타입의 배치(38)를 제어하는 - 여러 가지 다른 구성 요소와 접속되어 있다. 이러한 구성요소에는 DSP 프로그램 메모리(40)와 같이 DSP를 실행하기 위해 프로그램 과정을 저장하기 위한 프로그램 저장수단과, DSP데이타 메모리(42)와 같이 DSP(36)을 사용하기 위한 데이터를 저장하는 데이터 저장수단과, 여러 가지 표준시간과 어드레스와 데이터를 게이팅하고 맵핑(gating and mapping)하는 기능별 제어를 적절하게 실행시키기 위한 컨트롤 로직(44)이 포함되어 있다. 여러 가지 다른 구성요소와 기능을 갖는 분야에서의 기술로 디지틀 음성 프로세서(36)에 연결하여 사용하는 것이 바람직하다.
본 발명의 바람직한 구현예를 나타내는 첨부도면 2에서, 상기 호스트 음성 프로세서 수단은 도트 박스(20) 안에 여러개의 회로 구성요소가 구성되어 호스트 음성 프로세서 회로와 관련되어 있다. 상기 호스트 음성 프로세서 회로(20)는 전기적으로 호스트 인터페이스(52)를 경유하여 디지틀 음성 프로세서 회로(18)에 접속되어 있다. 일반적으로, 이 회로(20)는 디지틀 음성 프로세서 회로(28)로부터 발생된 여러 가지의 가청 시그날 특성정보를 받게 된다. 상기 호스트 음성 프로세서 회로(20)는 이 정보를 분석하여 화자가 묘사하는 단면을 테스트하여 얻어지는 표준 음성 데이터와 시그널 특성을 비교하여 가청 시그널에 포함된 음운 타입으로 인식하게 된다. 상기 호스트 음성 식별 회로(20)는 음운을 인식하여 다양한 언어 연산 방식으로 음운을 음절이나 단어 또는 어구로 바꿔주게 된다.
상기 호스트 음성 프로세서 회로(20)는 호스트 음성 프로세서(54)와 같은 프로그램 제어하에서 디지틀 가청 시그날 특성을 분석하기 위한 제 2프로그램수단을 구비하고 있는 것을 보여주고 있다. 상기 호스트 프로세서(36)는 프로그램 가능한 Motorola 68EC030과 같은 32비트 CPU장치로, 통상 프로그램 가능한 프로세서로 많이 사용되는 것을 사용하는 것이다.
이미 보여준 바와 같이, 상기 호스트 음성 프로세서(54)는 표준이 되는 주소데이터와 제어용 버스타입 배열(standard address, data and control bus-type arrangement)(56)에 의하여 여러 가지 다른 구성요소들이 접속되어 있다. 이러한 구성요소로는 호스트 프로그램 메모리(58)과 같이 호스트 음성 프로세서에서 실행하는 프로그램 단계를 저장하기 위한 프로그램 메모리 수단과, 호스트 데이타 메모리(60)와 같은 호스트 음성 프로세서(54)에서 이용되는 데이터를 저장하는 데이터 저장수단과, 어드레스와 데이터를 게이팅하고 맵핑하는(address and data gating and mapping) 기능과 같은 여러 가지 표준시간과 제어기능을 실행하기 위한 적절한 제어로직(64)이 구비되어 있다. 상기 호스트 음성 프로세서(54)에 접속되어 사용되는 여러 가지 구성 요소와 기능은 그 분야에서 사용되는 기술로 이루어진 것들이다
본 발명의 바람직한 구현예에서는 호스트 음성 프로세서 회로(20)를 외부 전기장치와 공유시켜주는 인터페이스가 구비되어 있다. 상기 인터페이스는 표준 RS-232 인터페이스 회로(66)를 의미하며 표준 RS-232 케이블로 연결되어 있다. 물론, 다른 인터페이스 배치 예를 들어, 표준 병렬포트 인터페이스, 음향장치용 디지틀 인터페이스(MIDI), 또는 비표준 전기 인터페이스 배치도 사용할 수 있다.
본 발명의 바람직한 구현예에서, 상기 호스트 음성 프로세서 회로(20)는 이 회로에서 조합된 단어를 받아 데이터 입력이나 명령어 입력으로서의 단어로 연산시켜주는 전기적인 수단에 연결시켜주게 된다. 일예로 제한을 두지 않았지만, 상기 전기수신수단은 표준 퍼스널 컴퓨터와 같은 호스트 컴퓨터(22)를 포함하게 된다. 상기 호스트 컴퓨터(22)는 RS-232 인터페이스(66)와 케이블(24)로 호스트 음성 프로세서 회로(20)에 접속되어 있으며, 적당한 프로그램 방법으로 인입된 워드를 워드프로세서에 적용되는 텍스트와 같은 데이터로 이용하거나 작동시스템이나 적용프로그램에서 사용되는 명령어로 사용하게 된다. 바람직하기로는 상기 호스트 컴퓨터(22)는 실제로 명령어 입력에 있어 데이터를 요구하는 전기장치인 것이다.
위에서처럼 구성하여 사용하는 전기회로의 일예로서의 블록 다이아그램은 첨부도면 3A 내지 3Y에 잘 나타나 있다. 첨부도면은 상호접속상태와 각 회로 요소로 사용하는 부품번호나 용도를 보여주는 전기 다이아그램이다. 첨부도면 3A 내지 3Y는 첨부도면 2에서 기술한 기능별 블록을 실행하는 수단에 사용되는 회로의 일예를 보여주고 있다. 물론, 이 수단은 만족할만한 실행을 얻을 수 있도록 설계되어 있다.
이하, 본 시스템에 의하여 사용되는 오버올 프로그램 방법의 바람직한 일실시예를 보여주는 도 4의 기능 플로우 차트를 참조하여 설명한다.
도시한 바와 같이, 상기 프로그램 방법은 음성 인식 시스템(10)이 입력음성신호를 연속적으로 수신할 수 있도록 하고, 이 신호의 음성내용을 산출하기 위하여 전자적으로 연산처리하는 동시에 상기 음성내용과 일치하는 낱말 또는 낱말의 열을 산출하게 된다.
상기 방법은 화자(話者)가 일인이든, 다수이든 화자(話者)의 수에 제한되지 않는다.
좀 더 상세하게는, 일정 언어를 표현하는 화자의 연속적인 발성음을 인식하는데 제한되지 않는다.
다음은 본 방법에 의하여 실행되는 오버올 기능들을 설명한 것이다.
더욱 상세하게는, 상기 기능들이 실행되는데 사용되는 프로그램의 각 단계를 설명한다.
도면부호 100으로 지시된 첫 번째 단계를 설명하면, 상기 시스템의 오디오 프로세서(16)는 마이크로폰(12)에서의 오디오 음성신호를 수신하게 되고, 상기 A/D변환회로(34)는 적절한 샘플링 범위에서 아날로그 신호를 디지틀로 변환시키게 된다.
상기 바람직한 샘플링 범위는 44.1kHz 이다.
다른 샘플링 범위가 사용될수도 있지만, 이는 별명(alias)문제를 피하도록 나이키스트(Nyquist) 샘플링 범위에 준하는 만큼에서 사용될 수 있다.
상기 디지틀화 된 음성신호는 연속적인 "시간구획(Time segments)"으로 변환되어진다.
바람직한 상기 각각의 시간구획는 10,240 데이터 포인트를 포함하거나, 232 밀리세컨(millisecond)의 시간 정의구역 데이터(Time domain data)를 갖는다.
상기 10,240 데이터 포인트를 갖는 시간구획은 도면부호 102에 도시한 바와 같이 시간 정의구역 평가(Evaluate Time Domain)로 명명된 연산영역를 거치게 된다.
본 방법의 상기 시간 정의구역 평가에서는 상기 각 시간구획이 연속적인 시간세부구획(time slice)으로 더욱 세밀하게 나누어지게 된다.
상기 각 시간세부구획은 256 데이터 포인트 또는 5.8 밀리세컨(millisecond)의 시간 정의구역 데이터(Time domain data)를 갖는다.
다음으로, 상기 각 시간 정의구역 데이터에 포함된 다양한 음색이 추출되어진다.
특히, 상기 각 시간 정의구역 데이터안에 포함된 음성신호용 영교차율(Zero crossing rate), 절대평균 포장진폭(envelope amplitude), 절대차이평균이 계산되어지고, 일치된 데이터 구성안에 저장되어진다.
상기 다양한 음색으로부터, 시간세부구획안에 포함된 특정음이 소리가 나는것인지, 나지 않는 것인지를 결정하게 된다.
또한, 상기 다양한 음색정보는 상기 시간세부구획의 일치된 데이터구성에 저장되어진다.
오버올 연산방식으로서, 다음단계는 도면부호 104로 지시된 바와 같이 "분석(Decompose)" 단계이다.
상기 분석단계에서는, 다수의 필터밴드의 사용으로 시간세부구획이 연속적으로 여과됨으로써, 상기 시간세부구획이 각각의 구성 파형들로 분석되어진다.
상기 각 여과된 신호로부터, 상기 분석기능은 상기 신호를 "측정" 함으로서, 확인된 음색을 추출하게 된다.
상기 확인된 음색들은 상기 시간세부구획이 유성음일때의 주파수와 각 음상신호의 진폭과 주파수를 포함한다.
상기 음색정보는 시간세부구획과 일치되는 데이터 구성에 저장되어진다.
다음단계는 도면부호 106으로 지시된 "최고 지능점(Point of Maximum Intelligence)" 단계이다.
이 프로그램 단계에서는, 가장 적절하게 확인된 음성 데이터를 포함하는 시간세부구획이 "최고 지능점"으로 확인되어지고, 이외의 시간세부구획은 무시되어진다.
언어의 최소단위인 음소를 확인하는 정확성을 향상시키기 위하여, 상기 최고 지능점 기능은 시간세부구획에 포함된 음성을 확인하기 위하여 과도하게 요구되는 연산량을 감소시키게 된다.
상기 시간세부구획을 확인함과 동시에 시간세부구획에 포함된 특정음을 확인할 필요가 있는데, 이에 본 시스템은 도면부호 110으로 지시된 "평가(Evaluate)"단계의 기능을 실행하게 된다.
상기 평가 연산단계에서는, 각 시간세부구획의 일치된 데이터 구성에 포함된 모든 정보가 분석되어지는데, 상기 시간세부구획에 포함된 가장 확실한 음성(예를들어, 음소)들을 5개까지 분석하게 된다.
상기 각 음성은 확실성을 갖는 수준별로 할당되는 동시에 차례로 배열되어진다.
상기 확인된 음성과 확실성은 상기 특정 시간세부구획의 데이터 구성내에 저장되어진다.
상기 각 음소단위 음성은 "PASCII" 값을 참조로 하여 동일한 하나의 수에 의하여 확인되어진다.
다음단계는 도면부호 110으로 표시된 "단음 압축(Compress phone)" 단계이다.
상기 단음압축 기능에서는 상기 최고 지능점과 부합되지 않는 시간세부구획이 제거되어진다.
특정음을 확인하는데 필수적인 데이터를 포함하는 시간세부구획만이 유일하게 남게 된다.
또한, 상기 소리가 나지 않는 "무음(quiet)"부를 갖는 시간세부구획은 결합되어짐으로써, 상기 시간세부구획의 전체 수는 감소하게 된다.
다시, 상기 단음압축 단계는 음성인식 실제시간이 용이하게 발생되도록 연산량을 감소시키게 된다.
또한, 상기 단음압축 단계에서는, 시간세부구획의 열이 게속 남아있게되는데, 이 각각의 시간 세부구획은 시간영역과 주파수 영역으로부터 발췌된 다양한 음색을 포함하는 일치된 데이터 구성을 갖는다.
상기 각 데이터 구성은 상기 특정 음색과 일치하는 가장 적절한 음소를 확인하게 된다.
다음단계는 도면부호 112로 표시된 "언어 연산기(Linguistic processor)"단계이다.
상기 언어 연산기는 데이터 구성을 수신하고, 영문자, 음절, 낱말 또는 절 이되도록 음소의 열을 해석하게 된다.
상기 해석은 본 시스템에 순차적으로 입력된 음소와 조합시키는 다양한 언어 연산 기능을 수행함으로써 달성되어진다.
상기 바람직한 언어 연산 기능은 음성학 사전을 찾아보기, 문맥활용기능, 데이터베이스, 기본문법활용기능이 있다.
가령, 특정 낱말 또는 절이 확인되면, 도면부호 114로 표시된 "명령 연산기(Command Processor)" 연산 단계를 경유하게 된다.
상기 명령연산기는 워드프로세서와 같이 고수준 적용을 위한 데이터로서 구성된 문자가 낱말인지 절인지를 결정하게 된다.
상술한 바와 같이, 상기 데이터 구성은 시스템 메모리 내에 256개의 디지틀화 된 음성 데이터 샘플과 5.8 밀리세컨의 음성을 갖는 각각의 시간세부구획 데이터로 유지되어진다.
상기 데이터 구성은 이하 "히긴스(Higgins)"구성으로 칭하고, 이 데이터 구성의 목적은 다양한 음색을 저장하는데 있고, 이 데이터는 일치되는 시간세부구획에 포함된 특정음소단위를 확인하는데 사용되어진다.
또한 상기 히긴스 구성에 다른 정보가 저장할 수 있는데, 이는 표 1에 나타낸 목차의 내용 범위내에서 가능하다.
상기 데이터 구성과 이것의 내용를 이하 상세하게 설명한다.
표.1
변수명 내 용
형태(Type) 무성음인지, 유성음인지, 무음인지 아닌지를 연산.
위치(LOCATION) 시간세부구획의 위치 배열을 시작
크기 시간세부구획내에 샘플데이터의 수
Ls 시간영역내의 신호평균진폭
fo 신호의 기준이 되는 주파수
FFREQ 시간세부구획내에 함유된 각 여과 신호의 주파수를 포함하는 배열
AMPL 각 여과 신호의 진폭을 포함하는 배열
Zcr 시간영역내의 신호에 대한 영교차율
PMI 최대 포르만트(Formant) 안정성을 지시하는 변수; 값은 지속적이다.
sumSlope 여과 신호 슬로프의 절대값 총계
실행할 수 있는 음소 각 음소를 포함하는 시간세부구획에서 음소를 5개까지 배열하고, 확신수준, 상대진폭용 표준, Zcr용 표준, 음소를 지속시키기 위한 표준
상기와 같은 각각의 단계는 도 4에 도시한 방법을 실행하는데 사용되는 것으로서, 이하 본발명의 바람직한 실시예로서, 상세하게 설명한다.
상기 각각의 프로그램 단계는 도 5내지 도 11에 도시한 플로어 차트를 참조하여 상세하게 이해될 것이며, 도 4의 각 기능을 수행하는 바람직한 형태로서 이해될 것이다.
도 5A를 참조하면, 시간정의구역 평가와 부합되는 각각의 프로그램 단계는 도 4에서 도면부호 102로 표시되어 설명되어 있다.
상술한 바와 같이, 상기 오디오 프로세서(16)는 마이크로폰(12)으로부터 가청음성신호를 수신하게 된다.
다음, 상기 A/D 변환회로(34)는 미리 설정된 샘플링 범위(바람직한 샘플링 범위는 44.1 kHz)에서 상기 신호를 디지틀로 변환시키게 된다.
상기 시간영역데이터는 분할되어지는 바, 미리 설정된 길이의 시간구획으로 분할되어진다.
바람직한 상기 시간구획은 232밀리세컨(millisecond)이고, 10,240의 디지틀화된 데이터 포인트로 구성되어진다.
다음으로, 상기 각 시간구획은 도 5A에 도면부호 116으로 표시된 상기 시간 정의구역 평가 기능으로 향하게 된다.
상기 시간 정의구역 평가 기능에서 상기 각 시간구획은 다시 미리 설정된 수의 시간세부구획으로 분할되어진다.
상기 각 시간구획당 시간세부구획은 40개로 나누어지고, 각 시간세부구획은 256 데이터 포인트로 구성되고, 5.8 밀리세컨의 음성을 가진다
상기 디지틀 사운드 프로세서(36)은 프로그램 루프로 입력되어 단계 118을 실행하게 된다.
상기 단계에서는 시간세부구획 프로세서(36)는 시간에 따라 변화되는 음향특색을 추출하게 된다.
예를들어, 바람직한 상기 프로세서는 DSP로서, 이 DSP(36)는 시간세부구획 신호의 절대평균진폭(Ls)과, 시간세부구획 신호의 절대차이평균(LD)과, 시간세부구획의 영교차율(ZCR) 측정하게 된다.
상기 절대평균진폭치는 상기 시간세부구획에 포함된 데이터 포인트의 절대평균치이다.
또한, 상기 절대차이평균은 시간세부구획에 포함된 데이터 포인트들간의 차이이다.(예를들면, 어떤 하나의 데이터 포인트 절대치와 다음에 위치된 데이터 포인트간의 평균 차이이다.)
상기 영교차율은 256개의 데이터 포인트의 수를 갖는 시간세부구획에서 발생되는 영교차의 수가 분할 측정되어지고, 이를 백분율로 나타낸 것이다.
상기 영교차의 수는 시간 영역 데이터와 X-축 방향으로 교차하는 시간의 수와 동일하고, + 에서 - 로 또는 -에서 +로 교차하게 된다.
상기 다양한 음향 특성의 크기는 각 시간세부구획에 포함된 음성의 일반적인 유형과 동일하게 되도록 사용되어진다.
예를들어, "유성음"의 소리 근원은 일반적으로 "무성음"보다 저주파수들로 되어 있고, 무성음의 진폭은 유성음의 진폭보다 낮게 되어 있다.
이는, 모든 화자에 적용되는 사실이고, 일반적인 범위는 다양한 화자(남녀노소)로부터 음성데이터를 분석되어짐으로써, 달성되어진다.
상기 미리 설정된 범위에 대한 다양한 음향색들을 비교함으로써, 상기 음성의 유형은 특정화자에 관계없이 결정되어진다.
따라서, 이전 단계에서 확정된 음향색을 기초로 하여, 상기 DSP(36)는 시간세부구획에 포함된 소리의 유형을 확인하는 프로그램 루프를 연산하게 된다.
시간세부구획에 포함된 음성이 무음인지, 유성음인지, 무성음인지를 테스트 데이터로부터 얻어진 이전의 확인된 범위를 기초로하여, 코드로 만들어준다.
단계 120에서는, 절대평균진폭(LS)이 설정된 "무음 레벨(quiet level)" 또는 "QLEVEL"(예를들어 고요함과 부합되는 진폭크기수준)과 비교된다
바람직한 상기 QLEVEL 은 250이지만, 이 값은 200에서 500사이일 수 있다.
어떤 특정의 "무음레벨"은 어떤 환경이나 적용조건(예를들어, 배경음이 고수준이고, A/D 변환기에 high d.c 오프셋이 나타나거나, 입력신호가 다른 수준으로 증폭되어진다)에 의존된다
만일, LS가 QLEVEL 이하이면, 시간세부구획내의 음성은 "무음"으로 간주되고, 상기 프로세서(36)는 단계 122를 실행시키게 된다.
상기 단계 122에서, 상기 DSP(36)는 DSP 데이터 메모리(42)안에 포함된 시간세부구획의 흐름열을 위하여 히긴스 데이터 구성을 만들기 시작한다.
상기 프로세서(36)는 상기 시간세부구획용 히긴스 데이터 구성의 플래그(Flag)를 "Q"에서 "type"으로 인식하게 된다.
만일, LS가 QLEVEL 이하이면, 시간세부구획내의 음성은 무음이 아닌 바, 상기 프로세서(36)는 음성이 유성음인지를 결정하기 위하여 단계 124를 실행시키게 된다.
상기 결정을 위하여, 영교차율(ZCR)이 다수의 화자의 유성음을 지정하여 미리설정한 영교차율 값과 비교되어진다.
낮은 영교차율은 저주파수를 의미하는데, 이 영교차율이 약 10이거나 그 이하이면 유성음이 틀림없다.
만일, 영교차율(ZCR)이 10 이하로 떨어지게 되면, 상기 음성이 유성음으로 결정되기 이전에 또 다른 음향색이 평가되어진다
상기 음향색은 LD의 비율과 LS의 비율을 측정함으로써 확인되어지고, 화자의 유성음과 일치되는 컷오프 포인트와 부합되도록 한 설정값에 대한 비율과 비교하게 된다.
만일 상기 LD와 LS가 약 15이거나 그 이하이면, 음성신호는 유성음이다.
따라서, 단계 124에서, 영교차율(ZCR)이 10 이거나, 그 이하이면, 또한 LD/ LS가 15이거나 그 이하이면, 음성은 유성음(/U/, /d/, /w/, /i/, /e/, 등)의 형태로 간주되어진다.
유성음이라면, 상기 프로세서(36)는 단계 126을 실행시키게 되고, 상기 시간세부구획용 히긴스 데이터 구성의 플래그(Flag)를 "V"에서 "type"으로 대신 인식하게 된다.
유성음이 아니라면, 상기 프로세서(36)는 테스트 데이터로부터 얻어진 범위까지 상기 단계 118에서 확인된 음향특성과 비교함으로써, 음성이 무성음으로 대신될 것인지를 결정하기 위하여 프로그램 단계 120을 실행시킨다.
이를 실행하기 위하여, 상기 프로세서(36)는 영교차율(ZCR)이 약 20이거나 그 이상인지, LD/ LS가 30이거나 그 이상인지를 결정하게 된다.
상기 양 조건이 충족되어지면, 상기 음성은 무성음으로 간주되어진다.
무성음의 경우에, 상기 프로세서는 단계 130을 실행시키게 되고, 상기 시간세부구획용 히긴스 데이터 구성의 플래그(Flag)를 "U"에서 "type"으로 대신 인식하게 된다.
어떤 음성은 단계 124와 128사이(영교차율(ZCR)이 약 11과 19사이이고, LD/ LS는 약 16과 29사이임)에 위치되어지고, 다른 음성특색은 음성이 유성음인지 무성음인지를 결정되도록 평가되어져야만 한다.
132단계에 표시된 바와 같이, "유성음인가"로 언급된 프로그램 단계가 실행됨으로써, 본 프로그램 방법이 실행되는데, 132단계는 도 5B에 도시한 바와 같이 실행되어진다.
단계 141에서 시간세부구획 데이터를 수신한 후, 디지틀 저통과 필터가 DSP(36)에 장착된 프로세서는 단계 142를 실행시키게 된다.
다음으로, 시간세부구획에 포함된 음성 신호는 상기 필터를 통과하게 된다.
상기 필터는 3000Hz 이상의 주파수를 제거하고, 상술한 바와 같은 영교차율을 재검출하게 된다.
어떤 유성 마찰음은 신호의 영교차율을 증가시키는 경향을 띠는 고주파수 소음인자를 가진다.
상기 고주파수 요소가 제거됨에 따라, 다른 유성음에 부합되는 수준까지 영교차율은 떨어지게 된다
반대로, 음성이 무성마찰음이라면, 상기 영교차율은 크게 변하지 않고, 비교적 고수준으로 남게 되는데, 이는 대부분의 신호가 고주파수이기 때문이다.
이때 새로운 영교차율이 측정되면, 프로그램 단계 144가 실행되는데, 음성이 유성음인지, 무성 마찰음인지를 평가하게 된다.
여기서 상기 시간세부구획의 절대 최소진폭점이 위치되어진다.
상기 절대 최소진폭점이 위치되면, 상기 프로세서(36)는 절대 최소진폭점과 최소점으로부터 설정거리 만큼 떨어져 위치된 또다른 파형의 데이터 포인트간의 규정된 라인의 슬로프(예를들면, 최초 파생어)를 계산하게 된다.
상기 설정 거리는 50 데이터 포인트이지만, 다른 거리값도 사용될 수 있다.
유성마찰음의 경우에, 상기 슬로프는 신호가 주기적이기 때문에 비교적 높고, 진폭의 변화가 현격하다.
반대로 상기 무성마찰음의 경우에는 슬로프가 비교적 낮은데, 그 이유는 신호가 주기적이지 않고, 여과되어지며, 일정한 진폭을 갖는 어떤소음으로 구성되어지기 때문이다.
상기 영교차율과 슬로프가 계산되어지면, 상기 프로세서(36)는 단계 146을 실행시키게 되고, 대부분의 화자가 갖는 유성마찰음과 일치되는 설정값에 대하여 진폭을 비교하게 된다.
상기 영교차율이 약 8 이하이면, 상기 슬로프는 약 35이고, 시간세부구획에 포함된 음성은 유성음으로 간주되어지고, 부합되는 "True" 플래그는 단계 150에 설정된다.
반면에, 상기 음성이 무성음으로 간주되어지면, "False" 플래그는 단계 148에 설정되어진다.
상기 플래그가 한번 설정되어지면, "유성음인가"하는 부름루틴으로 프로그램 열은 도 5A에 도시한 단계 132로 복귀되어진다
도 5A에 도시한 단계 134에서, 이전 단계인 132의 결과를 기초로 하여, 적절한 식별자 "U" 또는 "V"는 시간세부구획용 데이터의 플래그 "Type"로 대체되어진다.
특정 시간세부구획에 포함된 음성이 유성음잊지, 무성음인지, 무음인지가 결정되어지면, 상기 히긴스 데이터 구성은 단계 122, 126, 130, 134에서 갱신되어지고, DSP(36)는 단계 136을 연산하게 되며, 상기 특정 시간구획용 256개의 시간세부구획의 마지막까지 연산완료되었는지를 검출하게 된다.
상기 DSP(36)가 주부름루틴으로 복귀는 단계 140에 표시한 바와 같다.
또한, 상기 DSP(36)는 단계 138에서 다음 시간세부구획을 얻게 되고, 상술한 바와 같은 방식으로 연산을 하게 된다.
다시 도 4를 참조하여, 도면부호 102로 표시된 "시간 정의구역 평가 변수" 기능이 완료되어지면, 104로 표시된 "음성 신호 분석" 연산부가 실행되어진다.
상술한 바와 같이, 시간세부구획에 포함된 음성을 정확하게 인식하기 위하여 부가적인 인식 특성이 신호로부터 발췌되어야 한다.
부가적인 인식특성은 시간세부구획에 포함된 복잡한 파형을 만드는 다양한 구성 신호의 진폭과 주파수에 관한 것이다.
상기의 특성 정보는 시간세부구획의 다양한 구성 신호가 연속정으로 여과됨으로써, 얻어지게 된다.
이전에는, 상기 "분석" 단계는 음성신호상의 패스트 푸리에 트랜스폼(Fast Fourier Transform) 이 실행되어짐으로써, 완료되어졌다.
그러나, 이 표준 접근법은 화자에 상관없는 음성의 실제시간을 평가하기에 충분치 못하였다.
많은 음성에 대한 각각의 구성주파수를 정확하게 인식하는 것은 매우 어려웠는 바, 이를 인식하더라도, 스펙트럼의 누출이 FFT 출력상에 나타나게 된다.
또한, 음성신호에 포함된 포르만트 신호는 진폭으로 변조되고, 성문(聲門)이 축축한 상태이며, 대부분의 음성신호가 비주기적이기 때문에 FFT는 충분치 못한 수단에 불과하다.
그러나 상기 음성 정보는 정확한 요구 수준을 갖는 화자에 관계없는 음성인식을 달성하는데 지표가 되어진다
상기 문제점을 해결하기 위하여, 바람직한 음성신호 분석 연산에 있어, 상기 FFT를 사용하지 않는다.
대신에, DSP(36)가 시간세부구획신호를 다양한 구성의 여과신호로 여과시키게 된다
더욱 상세하게는, 주파수 영역 데이터는 각각의 여과 신호로부터 직접 검출될 수 있도록 하고, 이 데이터는 시간세부구획에 포함된 특정음소의 특성을 결정하는데 사용되어진다.
도 6을 참조하여 각 기능별 프로그램 단계를 보다 상세하게 설명한다.
프로그램 단계 152를 참조하면, 시간구획의 흐름열(10,240 데이터 샘플; 232밀리세컨의 지속)을 수신하게 된다.
다음, 상기 프로그램은 루프로 입력되어지고, 단계 154를 실행하게 되는데, 시간구획의 흐름열에 포함된 음성신호는 특정 주파수 밴드를 갖는 디지틀 밴드패스필터에 의하여 각각의 구성 파형으로 연속적으로 여과되어진다.
상기 주파수 밴드는 미리 측정된 것이고, DSP프로그램 메모리(40)에 저장되어진다.
단계 154에서, 상기 프로세서(36)는 최초 주파수 밴드를 얻게 되는데, 미리 측정된 필터 컷오프 주파수의 표로부터 저주파수(fL)와 고주파수(fH)로서 지시되어진다.
바람직한 상기 필터 컷오프 주파수는 0 Hz, 250 Hz, 500 Hz, 1000 Hz, 1500 Hz, 2000 Hz, 2500 Hz, 3000 Hz, 4000 Hz, 4500 Hz, 5000 Hz, 6000 Hz, 7000 Hz, 8000 Hz, 9000 Hz, 10000 Hz 로 정하여 진다.
이외의 다른 컷오프 주파수도 사용될 수 있다.
따라서, 처음에는 상기 단계 154에서 시작되는 루프를 통과하는 동안, 저주파수(fL)는 0 Hz로 설정되고, 고주파수(fH)는 250 Hz로 설정되어진다.
두 번째로 통과하는 동안에는 저주파수(fL)는 250 Hz 까지로 설정되고, 고주파수(fH)는 500 Hz로 설정되어진다.
상기 적절한 디지틀 필터 변수가 설정되어지면, 상기 프로세서(36)는 실제적인 시간구획의 여과가 이루어지는 단계 158을 실행시키게 된다.
실제적인 시간구획의 여과가 이루기 위하여, 상기 단계는 도 6A에 도시한 바와 같은 "필터패스 실행(Do Filter Pass)" 로 명명된 기능을 불러오게 되는데, 이를 설명하면 다음과 같다.
단계 168의 "필터패스 실행(Do Filter Pass)"에서, 이전에 측정되었던 필터 변수와 시간구획데이터(10,240데이터 포인트)가 수신되어진다.
단계 170에서, 필터상수가 각각의 다른 필터 밴드와 일치되어 미리 설정된 상수의 표로부터 얻게 된다.
또한, 상기 상수는 각 새로운 필터밴드용 프로세서(36)에 의하여 재측정되어진다.
상기 필터상수를 측정하게 되면, 상기 프로세서(36)는 시간구획의 흐름열이 디지틀 필터로 로드(Load)시키는 프로그램 단계 172를 실행하게 된다
선택적으로, 모든 데이터 샘플을 로딩한다기 보다, 신호는 단지 n번째의(nth) 포인트만을 로딩하고 나머지는 제거되어지는 바, 상기 n은 하나에서 네 개의 범위이다.
상기 신호가 제거되기 전에, 저패스로 여과되어 감소된 주파수는 2*n에 의하여 분할된 실제 샘플율과 동일하거나, 그 이하이다.
단계 174에서, 필터 동작은 시간구획 데이터의 흐름열에서 실행된다.
상기 필터 동작의 결과로서, DSP데이터 메모리(42)의 시간구획데이터의 정해진 위치와 일치되며 실행되어진다.
다양한 디지틀 필터들중에 하나를 데이터를 여과하는데 사용할 수도 있지만, 바람직한 디지틀 밴드패스 필터는 버터워스 반응(Butterworth response)을 갖는 IIR 캐스캐이드형 필터이다.
상기 필터 동작이 완료되어지면, 프로세서(36)는 필터 동작의 결과를 평가하는 176 단계를 실행시키게 된다.
176 단계는 "필터데이터 평가(Evaluate Filtered Data)"로 명명된 것으로서, 도 6B에 보다 상세하게 도시되어 있는 바, 이를 보다 상세히 설명하면 다음과 같다.
"필터데이터 평가(Evaluate Filtered Data)"의 단계 182에서, 이미 여과된 시간구획의 시간세부구획을 수신하게 된다.
다음 단계인 183 단계가 실행되면, 상기 여과된 신호의 진폭이 측정되는데, 이 진폭은 다음과 같은 식으로 측정된다.
여기서, Max = 시간세부구획에서 가장 높은 진폭, Min = 시간세부구획에서 가장 낮은 진폭.
단계 184에서, 상기 여과된 신호의 주파수가 측정되는데,도 6C에 "여과된 신호의 주파수 측정(Measure Frequency of a Filtered Signal)"로 명명되어 있다.
도 6C를 참조하여, 단계 192에서 상기 여과된 시간세부구획이 수신되어진다
단계 194에서, 상기 프로세서(36)는 각 데이터 포인트에서의 여과된 신호의 슬로프(최초 파생어)를 측정한다.
상기 슬로프는 이전의 데이터 포인트와 슬로프가 측정용 데이터 포인트와, 그 밖의 데이터 포인트에 의하여 형성된 라인에 관하여 측정되어지고, 다른 방법으로도 측정할 수 잇다.
단계 196을 실행시키게 되면, + 값에서 - 값으로 변화하는 슬로프와 일치되는 각 데이터 포인트의 위치가 정해지게 된다.
영교차는 여과된 신호의 최대 진폭값에서 최초 결정되고, 적어도 3개의 여교차를 실행시킨다.
상기 최대 진폭값은 겹쳐진 음성의 폐쇄음을 나타낸다.
상기 겹쳐진 음성의 폐쇄음이 가장 정확한 주파수 측정으로 확인된 후, 이 주파수 측정을 받아들이게 된다.
단계 198에서, 영교차 포인트간의 평균거리가 측정되어진다.
상기 평균거리는 신호의 평균주기의 크기이고, 따라서 상기 각 시간세부구획에 포함된 신호의 평균주파수는 상기 평균주기에 의한 샘플율을 분할시킴으로써 측정할 수 있다.
단계 200에서, 신호의 주파수와 평균주기의 크기는 "여과된 데이터 평가(Evaluate Filtered Data)"로 명명된 기능으로 복귀되어진다.
다음으로, 도 6B에 도시한 단계 184에서 연산이 계속 실행되어진다.
도 6B를 다시 참조하여, 상기 신호의 주파수가 결정되어지면, 단계 186에서 주파수가 필터밴드의 컷오프주파수에 속하는지를 결정하게 된다.
단계 188이 시랭되어지면, 주파수와 진폭은 시간세부구획의 일치된 히긴스 구성의 배열인 "ffreq" 와 "ampl"에 저장되어진다.
상기 주파수가 필터밴드의 컷오프주파수에 포함되지 않으면, 이 주파수는 제거되어지고, 단계 190이 실행되어진다.
따라서, DSP(36)는 부름기능 "필터패스 실행"으로 복귀시키게 하여 도 6A에 도시한 단계 176을 연속하여 실행시키게 된다.
도 6A에 도시한 바와 같이, 주파수와 주파수 밴드의 진폭이 결정되어지면, DSP(36)은 다음단계인 단계 178을 실행시키게 된다.
이 단계는 마지막 시간세부구획인지를 연산하게 된다.
만일, 마지막 시간세부구획이 아니라면, 다음 순서의 시간세부구획상에 필터밴드가 다시 작동되도록 단계 176으로 연산을 진행시키게 된다.
만일, 마지막 시간세부구획이라면, 단계 180이 실행되어지고, 프로세서(36)는 도 6에 도시된 단계 158에서 연산이 계속 진행되도록 "음성신호 분석(Decompose a Speech Signal)"로 복귀한다.
도 6을 참조로 하여, 상기 프로세서는 최초필터밴드가 시간구획용으로 사용되어지는지를 단계 159에서 결정하게 된다.
그렇다면, "기준 주파수로 받아들임(Get Fundamental Frequency)"으로 명명된 다음단계 162단계를 연산하게 되고, 이를 도 6D를 참조하여 설명하면 다음과 같다.
단계 202에서 시작하여, 시간구획의 열과 관련된 데이터가 수신되어진다.
다음으로, 상기 프로세서(36)는 프로그램 단계 204를 실행하게 되고, 각각의 "ffreq" 배열 위치의 목차들에 대하여 물음으로써, 인식하게 된다.
상기 시간세부구획의 일부는 350 Hz 이하인 주파수 구성을 가진다.
상기 주파수의 범위는 0 에서 350 Hz 선택되어지는데, 그 이유는 대부분 화자의 기준 주파수가 70에서 350 Hz 사이의 범위에 놓여 있기 때문이다.
상기 범위를 지정하는데 한정되는 것은 기준 주파수를 정해주어야 하는 점이다.
상기 시간세부구획이 정해지면, 상기 범위내 주파수에 위치되어지고, 히스토그램형 데이터 구성으로 놓여지게 된다.
상기 히스토그램은 0에서 350Hz 사이의 범위내에서 50hz 블록과 일치하는 "빈스(bins)"로 분석되어진다.
상기 히스토그램이 완료되면, DSP(36)는 단계 206을 실행시키게 되고, 히스토그램의 빈스가 가장 큰 주파수를 가진 것인지를 결정하게 된다.
다음, 상기 각 빈스에 포함된 주파수를 평균으로 구하는 바, 이 결과가 시간구획용 평균 기준 주파수(Average Fundamental Frequency(FO))가 된다. 이 데이터 값은 DSP 데이터 메모리(42)에 저장되어진다
단계 208에서, DSP(36)는 평균 기준 주파수의 평균 "이동(Moving)"을 측정하는 바, 이전에 시간구획용으로 측정된 FO의 평균과 동일하게 측정되어진다
상기 평균 이동은 약 2초의 음성과 일치하는 8개의 시간구획 평균 기준 주파수의 평균으로 연산측정한다.
또한 상기 평균 이동은 볼륨, 피치 변화와 같은 화자의 목소리의 유형을 감지하고자 프로세서(36)에 의하여 사용될 수 있다.
상기 시간구획용 평균 기준 주파수와 기준 주파수의 평균 이동이 측정 완료되면, 상기 프로세서는 기준 주파수 성분을 가지는 시간구획의 열을 만드는 각각의 시간세부구획을 검출하기 위한 루프를 입력하게 된다.
상기 검출은 단계 210에서 이루어지는 바, 최초의 시간세부구획을 시작으로 상기 프로세서(36)는 시간세부구획의 다양한 주파수 성분(이전에 일치된 데이터 구성의 ffreq 내에 저장되고 인식된 것)과 단계 206에서 인식된 평균 기준 주파수 FO를 비교하게 된다.
만일 상기 주파수중 하나가 그 값의 약 30%내에 있다면, 단계 214에 나타낸 바와 같이 시간세부구획 히긴스 데이터 구성에 기준 fO로서 저장되어진다.
단계 212에 나타낸 바와 같이, 상기 비교는 각 시간세부구획을 위하여 행하여진다.
단계 216에서, 각 시간세부구획이 분석되어진 후, 상기 DSP(36)는 음성신호 분석 루틴으로 복귀하고, 연속하여 도 6의 단계 162가 실행시킨다.
단계 160에서는 상기 프로세서(36)가 컷오프 주파수(fL,fH)의 마지막 한쌍이 사용되었는지를 분석하게 된다.
사용되지 않았다면, 상기 프로세서(36)는 단계 154에서의 루프를 실행하게 되고, 다음의 필터밴드용 컷오프 부파수의 다음의 열을 얻게 된다.
다음으로, 상기 DSP(36)는 필터밴드의 마지막이 각각의 시간세부구획을 여과하기 위하여 사용완료할때까지 상술한 바와 같은 필터 연산을 계속해서 실행하게 된다.
따라서 상기 각 시간구획은 각 필터밴드에서 여과되어진다.
여과 완료후, 각 시간세부구획용 히긴스 데이터 구성은 다양한 필터 밴드에 포함된 정확히 인식된 주파수와, 그것의 진폭으로 갱정되어진다.
이에따라 상기 주파수 데이터는 FFT 접근법을 사용하지 않고 달성될 수 있고, 기존의 수단과 관련된 문제점이 배제되는 장점이 있다.
마지막 한쌍의 컷오프 주파수가 단계 160에서 사용되면, 단계 166은 도 4에 도시된 주프로그램으로 DSP(36)가 복귀실행되도록 한다.
프로그램 방법의 음성신호 분석이 완료되면, 각 시간세부구획용 히긴스 데이터 구성이 이루어지게 된다.
상기 구성내에는 시간영역 데이터와 주파수 영역 데이터로부터 분석된 다양한 음성특징들이 포함된다.
상기 특징은 신호로부터 실행되어진 특정 음성, 음소을 정확히 인식하는데 사용될 수 있다.
바람직한 실시예로서, 상기 프로그램 단계의 열은 호스트 프로그램 메모리(58)에 저장되고, 호스트 음성 프로세서(54)에 의하여 실행되어진다.
상기 호스트 음성 프로세서(54)에 의하여 실행되는 최초 기능은 도 4에 106으로 표시된 "최고 지능점"이다.
이 기능단계에서는, 상기 프로세서(54)가 시간구획내에 포함된 음소에 대한 인식의 기준이 되는 히긴스 데이터 구성중 하나를 평가하게 된다
음소를 인식하게 되면 연산량은 감소되고, 음소가 정확하게 인식되었음을 알 수 있다.
상기 기능을 사용하는 보다 상세한 프로그램 단계의 일실시예를 도 7를 참조하여 설명하면 다음과 같다.
연산은 단계 230에서 시작하는 바, 호스트 음성 프로세서(54)가 호스트 인터페이스(52)를 경유하는 시간구획용 각 히긴스 데이터 구성을 수신한다.
단계 232에서, 상기 시간세부구획이 유성음을 포함함에도 불구하고, 각 여과된 신호 주파수의 슬로프 절대값이 측정되는 동시에 합산이 되어진다.
상기 여과된 신호의 슬로프는 시간세부구획에 위치된 신호의 주파수에 관련하여 측정되어진다.
따라서 두 번째 주파수 밴드와 관련된 여과 신호는 시간세부구획의 여과신호주파수와 일치된 주파수를 참조하여 측정되어진다.
상기 시간세부구획용 여과신호의 슬로프의 절대값 합계는 히긴스 데이터 구성의 다양한 합계슬로프에 저장되어진다.
다음으로, 상기 프로세서(54)는 단계 232를 실행시킨다.
이 단계에서는 검색은 최대치로 된 평균 진폭(LS)과 최소치로 된 합계슬로프를 갖는 시간세부구획용으로 실행된다.
상기 양기준을 만족시키기 위한 시간세부구획은 포르만트 주파수최소로 변하는 시간세부구획이고, 또한 음성이 가장 높은 평균 진폭이 있는 시간세부구획이며, 따라서, 시간세부구획은 목표로 하는 음성에 근접된 동적음성이 되도록 한다.
상기 양기준을 만족시키는 시간세부구획은 "최고지능점"으로서 인식되고, 히긴스 데이터내의 PMI변수에는 PMI값이 채워지게 된다.
다른 시간세부구획은 상기 목표로 하는 음성까지의 주파수 성분을 포함하고, 따라서, 특정 음소의 인식과 관련이 적은 정보가 포함하게 된다.
"유성음" 시간세부구획이 "최고지능점"으로 간주될 수 있음을 인식하게 되면, 동일하게 "무성음"을 포함하는 모든 시간세부구획도 인식하게 된다.
이것은 최고지능점으로 인식된 최대치로 완료된 평균 진폭 LS을 갖는 무성음 시간세부구획이 있는 단계 236에서 실행되어진다.
다시, 적절한 히긴스 데이터 구성내에 일치된 PMI 변수에 PMI값이 채워지게 된다.
다음으로, 상기 호스트 프로세서(54)는 프로그램 단계 238을 실행시키게 되는 바, PMI로서 인식된 각 시간세부구획의 "지속"은 마지막 PMI시간세부구획이 발생된 후 일어나는 시간세부구획의 수를 측정함으로써 검출되어진다.
다음으로, 상기 호스트 프로세서(54)는 단계 240에 표시된 바와 같이 도 4에 도시한 주부름루틴으로 복귀되어진다.
상기 도 4를 참조하면, 다음 기능 블록은 108로 표시된 "평가(Evaluate)"를 실행하게 된다.
상기 기능은 최고 지능점으로 인식된 각 시간세부구획의 음성특색을 분석하게 되고, 상기 시간세부구획에서 발생되는 가장 유사한 음성을 검출하게 된다.
이것은 측정된 소리특성와 표준소리특성의 열을 비교함으로써, 달성된다.
도 8을 참조하여, 상기 평가기능을 사용하는 프로그램 단계의 일실시예를 설명하면 다음과 같다.
단계 242가 시작점으로서, PMI점으로 인식된 각 시간세부구획이 수신되어진다.
단계 244에서, 상기 호스트 프로세서(54)는 "하모닉 포르만트 기준 측정(Calculate Harmonic Formant Standard)"로서 명명된 기능을 실행시킨다.
"하모닉 포르만트 기준 측정(Calculate Harmonic Formant Standard)" 기능은 다음과 같이 동작되어진다.
특정 음성내의 주파수의 위치는 "하프스텝(Half-steps)" 식으로 표현될 수 있다.
상기 하프스텝은 음정 문맥에서 통상 사용되는데, 음성의 분석에 도움이된다.
음정 또는 반음계의 범위에서, 음색의 주파수는 모든 옥타브의 두배이다.
상기 옥타브내의 12개 음색이 있는 바, 두 개의 음색에 대한 주파수는 다음과 같은 공식이 적용된다.
고음(Upper note)= (저음(Lower Note))*2n/12
상기 n은 하프스텝의 수이다.
두 개의 주파수 또는 음이 주어지고, 이것들간의 하프스텝의 수가 다음의 식에 의하여 주어진다.
따라서, 특정 음성내의 다양한 주파수는 각 주파수 성분과 하프스텝에 관한 기준 주파수간의 거리를 측정함으로써, 음정과 관련됨을 알수 있다.
상기 사항은 매우 중요한데, 그 이유는 기준 주파수와 음성의 다른 주파수 성분간의 거리는 남녀노소가 모두 비슷한 바, 주어진 음성을 찾아야 하기 때문이다.
"하모닉 포르만트 기준 측정(Calculate Harmonic Formant Standard)" 기능은 모든 음성에 대한 음정 표준 테이블을 만듬으로써, 사용할 수 있다.
특히, 상기 테이블은 기준 주파수로부터의 거리에 관하여 각 음성의 주파수 성분의 위치가 포함되어진다.
상기 거리는 하프스텝의 수로써 정하여진다.
화자로부터 취해진 샘플데이터를 경유하여 얻어진 음성형태로서 나타난 신호특성으로부터 표준 음정 테이블은 유도되어진다.
특히, 음성 샘플은 약 70Hz에서 350Hz의 범위의 기준 주파수를 갖는 대표적인 화자 그룹으로부터 취해진 것이다.
상기 음성 샘플은 영어을 만들어진 각 음소용이거나 40개 모두를 포함하도록 선택되어진 것이다.
다음, 각 음소용 시간영역신호가 평가되어지고, 모든 주파수 성분이 같은 주파수 밴드를 사용하는 분석 기능으로서, 이전과 같은 방식으로 추출되어진다.
또한, 마찬가지로 상기 각 주파수 성분용 진폭도 측정되어진다.
상기의 데이터로부터, 특정 음소의 기준 주파수와 각 음성의 주파수 성분간의 하프스텝의 수가 결정되어진다.
분리형 X-Y 플롯은 각 음성용 주파수 밴드용으로 준비되어진다.
각 화자의 샘플 포인트는 플롯되어지는데, X 축상에는 화자의 기준 주파수가 플롯되고, Y축상에는 측정밴드 주파수와 기준주파수간의 거리가 플롯되어진다.
다음으로, 상기 선분의 곡면부는 결과 데이터로 실행되고, 이 결과는 가장 적절한 선으로 그려진다
상기 플롯의 일실시예는 도 12A 내지 도 12C 에 도시된 바와 같고, 음성용 대표적인 데이터 포인트는 "Ah"(PASCII 음성 024)로 표시되고, 최초 세 개의 주파수 밴드는 B1, B2, B3로 표시되어진다.
상기 형태의 그래프는 모든 음소형태에 대하여 준비되어지고, 각 음성을 위한 각 주파수 밴드용 y-인터셉트 식과 슬로프가 유도되어지는 바, 이 결과는 표에 기입되어진다.
이는 첨부물 A의 표II 에 기입한 바와 같다
표에 기입한 바와 같이, 상기 표는 음소와 각 밴드패스 주파수와, 연속곡선의 Y- 인터셉트를 포함한다.
또한, 모든 화자를 위한 신호 진폭의 수단이 포함되어 있다.
도 12A-12C에 도시된 그래프를 살펴보면, 테스트 그룹의 각 화자용 데이터 포인트는 연속곡선에 대하여 조밀하게 모여있게 된다.
이와 동일한 형태가 대부분의 모든 음성에 존재하게 되는 바, 이 형태는 샘플 데이터를 발생시키는데 사용되는 것 이외의 화자까지 확장된다
사실상, 기준주파수와 주파수 밴드위치(하프 스텝에서)는 주어진 사용자에 의하여 발생된 어떤 음성용으로 사용되어지고, 일치된 음성(음소)는 상기 표준값과 비교함으로써, 결정되어진다.
"하모닉 포르만트 기준 측정(Calculate Harmonic Formant Standard)" 기능은 상기 표준 음성의 방정식 데이터(표 II)를 사용하게 되는데, 이는 각 음성용 표준 하프스텝 거리를 포함하는 음정을 나타내는 표를 작성하기 위함이다
더욱이, 상기 표준이 되는 표는 상기 특정 기준 주파수에 관련되도록 작성되고, 특히, 평가되어진 시간세부구획의 기준주파수를 사용한다.
또한 상기 기능은 시간세부구획의 측정 데이터(예를들면, 히긴스 구성 fO와 ffreq 데이터)용 음정 표를 만든다.
다음, 상기 시간세부구획의 측정 데이터는 음성"표준"데이터와 비교되어지고, 가장 근접된 비교는 음소를 지시하게 된다.
다양한 주파수 성분과 기준 주파수간의 하프스텝 거리를 비교한다는 것은 본질적으로, 주어진 음성이 각 화자에 대하여 일관성있도록 하고, 음성은 특정 화자와 상관없이 인식하여야 한다.
"하모닉 포르만트 기준 측정(Calculate Harmonic Formant Standard)" 기능을 실행하기 위한 상세한 프로그램 단계는 도 8A에 도시한 바와 같고, 이를 설명하면 다음과 같다.
단계 280을 시작으로, 시간세부구획용 히긴스 구성을 수신하게 된다.
다음, 단계 282는 시간세부구획을 음정 크기로 변환시킨다.
이것은 기준 주파수가 위치되어진 각 주파수 성분(분석기능에서 인식되고, ffreq 배열에 저장됨)의 하프스텝수를 측정함으로써 완료된다.
상기 거리는 다음과 같은 식으로 측정되어진다.
여기서, 분석기능에서 측정된 각각의 다른 주파수와 일치되고, 시간세부구획용 ffreq에 저장된 상기 N= 1에서 15이고, fO= 시간세부구획용 기준주파수이다.
상기 값 60은 하프스텝의 가장 적절한 최대수가 되도록 하프스텝의 수를 표준화시키는데 사용한다.
상기 측정의 결과는 호스트 프로세서 데이터 메모리(60)에 배열되도록 호스트 프로세서(54)에 의하여 저장되어진다.
상기 음정으로 시간세부구획이 변환되어지면, 상기 프로세서(54)는 일치된 음성 표준 표를 만들기 위하여 루프로 입력된다.
다시 표준 방정식 데이터를 포함하여 실행되어지고, 호스트 프로세서 데이터 메모리(60)에 배열되며 저장된다.
단계 284를 시작으로, 상기 호스트 프로세서(54)는 음성용 표준 방정식 데이터를 얻게 되고, 시간세부구획이 유성음을 포함하는가를 질의한다.
그렇지 않다면, 상기 프로세서(54)는 프로그램 단계 290을 실행하게 되고, 하프스텝의 수와 주파수 성분이 기준 주파수로부터 지정된 것인지를 측정하게 된다.
새로운 "표준" 이 시간세부구획의 기준주파수에 대하여 측정되어진다.
상기 거리를 측정하기 위하여 다음과 같은 식을 사용한다.
여기서 m= 이전에 인식된 표준 방정식의 슬로프; b= 이전에 인식된 표준 방정식의 y- 인터셉트; fO= 시간세부구획의 기준 주파수; 그리고 수치 60은 하프스텝의 근접된 최대치를 위한 하프스텝의 수를 표준화시키는데 사용한다.
상기 측정은 15개의 주파수 밴드를 완성한다.
무성음은 기준 주파수를 가지지 않고, 데이터 구성의 fO변수에 저장되어진다.
프로그램 단계 290의 목적을 위하여, 최초 주파수 밴드에서 인식된 주파수값이 "기준"으로 사용되어진다.
단계 284에서 시간세부구획이 유성음이라면, 상기 호스트 음성 프로세서(54)는 프로그램 단계 286을 실행시키게 되고, 표준음성이 마찰음인가의 물음을 한다.
만일 마찰음이라면, 프로세서(54)는 모든 주파수 밴드용 표준을 측정하기 위하여 단계 290을 실행시키게 된다.
만일 마찰음이 아니라면, 상기 호스트 프로세서(54)는 단계 288을 진해시키게 되고, 이 단계에서는 상기 표준이 단계 290에서와 같은 방법으로 측정되어지는데, 단지 주파수 밴드는 1에서 11이다.
상기 프로그램 단계 288 또는, 단계 290이 완료된 후, 상기 프로세서(54)는 단계 292를 실행시키게 되는데, 여기서는 표에 존재하는 마지막 표준음성이 시간세부구획용으로 실행완료되었는지의 물음을 하게 된다.
그렇치 않으면, 다음 음성과 이 음성과 관련된 슬로프와 인터셉트 데이터가 얻어지게 되고, 단계 284에서 시작하는 루프가 재실행되어진다.
만일 음성이 없다면, 음정에 관하여 표현된 표준값의 새로운 표가 시간세부구획(음정 크기로 변환되어진 것)용으로 완성되어진다.
상기 호스트 프로세서(54)는 도 8에 도시한 바와 같이, 단계 294에서 루틴으로 빠져나가게 되고, 단계 244에서 평가 기능으로 복귀한다.
다시, 도 8을 참조하면, 상기 프로세서(54)는 사긴세부구획이 유성음인가의 물음을 하는 단계 250을 실행시키게 된다.
만일 그렇치 않다면, 상기 프로세서(54)는 "다변수 패턴 인식(Multivariate Pattern Recognition)"으로서 명명된 프로그램 단계 246을 실행시킨다.
이 기능은 "측정된" 시간세부구획을 갖는 "표준" 음성 데이터를 비교하고, 얼마나 근접되었는지를 평가하게 된다.
또한 상기 기능은 주파수(하프스텝으로 표현된)와 주파수에 대한 표준 음성의 각 진폭 성분(하프스텝으로 표현된)과 시간세부구획의 진폭성분을 비교하게 된다.
"다변수 패턴 인식(Multivariate Pattern Recognition)"으로서 명명된 프로그램 단계의 일실시예가 도 8B에 도시한 바와 같고, 이를 설명하면 다음과 같다.
단계 260을 시작으로, 표준 음성 주파수 성분 위치와 이것의 진폭을 포함하는 배열, 시간세부구획 주파수 성분 위치와 이것의 진폭을 포함하는 배열을 수신한다.
상기 주파수의 위치는 기준 주파수로부터 하프스텝 거리에 관하여 표현된 것이고, 하모닉 포르만트 기준 측정 기능에서 측정된 것이다.
상기 표준 진폭값은 상술한 바와 같은 테스트 데이터로부터 얻어진 것이고, 표 II 에 나타낸 바와 같으며, 시간세부구획용 진폭 성분은 히긴스 구성 "진폭" 배열에 포함되어진다.
단계 262에서, 표준 배열에 포함된 최초 음성 표준은 일치된 시간세부구획 데이터와 비교되어진다.
특히, 각 시간세부구획과 진폭 "데이터 포인트"는 음성 표준 주파수와 진폭 "데이터 포인트"와 비교되어진다.
다음 프로그램 단계 264에서, 데이터 포인트가 가장 근접되도록, 시간세부구획과 일치된 표준 데이터간의 유클리드(Euclidean) 거리를 측정하게 된다.
유클리드 거리(ED)는 다음과 같은 식으로 측정되어진다.
여기서 상기 n = 비교할 데이터 포인트의 수; "f"는 주파수, "a"는 진폭을 나타낸다.
포로그램 단계 266에서, 상기 거리는 다른 음성 표준을 찾기 위한 거리와 비교되어진다.
최소 5개중의 하나가 멀게 찾아진다면, 일치된 표준 음성은 단계 268에 배열된 가능성 음소(POSSIBLE PHONEMES)에 히긴스구성으로 저장된다.
다음으로 상기 프로세서는 배열상에 마지막 음성 표준인지를 결정하는 단계 270을 실행킨다.
그렇지 않다면, 다음 표준이 프록램 단계 272에서 얻어지게 된다.
다음 동일한 비교루프가 다음 표준 음성으로 위하여 수행되어진다.
만일 단계 266에서 유크리드 거리가 상기 찾아진 5개의 최소거리중에 하나가 아니라면, 상기 프로세서(54)는 가능성을 갖는 음성을 배출하게 되고, 단계 270을 진행시켜 배열내에 최종 표준 음성인지를 분석하게 된다.
그렇치 않다면, 다음 음성 표준은 단계 272에서 얻어지게 되고, 비교루프가 재실행되어진다.
상기 루프는 표준 음성 데이터와 시간세부구획의 열을 특정 시간세부구획용 음성표준이 남아 있지 않다는 것을 단계 270에서 결정할때까지, 연속적으로 비교한다.
단계 274에서 이전에 확인된 가능성 음성의 각각이 가능성의 순서가 감소되도록 우선순위로 서열화되어진다.
여기서 상기 ED= 음성용 유크리드 거리; SM = 인식된 음성 가능성의 모든 ED의 합
상기 가능성 값이 높을수록, 일치된 음성이 시간세부구획내에 포함된 음성에 더 많다.
각 가능성 음성의 가능성이 결정되어지면, 프로세서(54)는 단계 276을 실행시키고, 도 8에 도시된 단계 246의 부름루틴평가로 복귀되어진다.
히긴스 구성은 특정 시간세부구획과 일치하는 대부분의 음소(5가지까지)의 배열을 포함한다.
다음, 호스트 프로세서(54)는 단계 248을 실행시켜 평가될 또다른 시간세부구획이 있는지를 결정하게 된다.
있다면, 상기 프로세서(54)는 다음 시간세부구획을 얻기위하여 단계 242에서 루프로 재기입되어진다.
시간세부구획이 없다면, 상기 프로세서(54)는 단계 260을 실행시키고, 도 4에 도시된 주부름루틴으로 복귀되어진다.
만일 단계 250에서, 시간세부구획이 유성음을 포함하는지를 대신에 결정되려면, 상기 프로세서는 프로그램 단계 252를 실행시키게 된다.
상기 호스트 프로세서(54)는 시간세부구획에서 수행된 음성이 유성마찰음인지를 결정하거나, 또다른 형태의 유성음인지를 결정하게 된다.
상기 결정은 상대진폭(RA: Relative Amplitude)값과 ffreq 배열에 포함된 주파수 값을 조사함으로써 이루어진다.
만일, RA가 비교적 낮으면, 그 값은 65이하이고, 주파수 성분이 비교적 높으면, 그 주파수는 6kHz 이상인 바, 그 음성은 유성 마찰음이고, 호스트(54)는 프로그램 단계 254를 실행시키게 되며, 그렇치 안으면 프로그램 단계 256을 실행시키게 된다.
프로그램 단계 254와 256은 "다변수 패턴 인식(Multivariate Pattern Recognition)"루틴을 실행시키고, 5개의 가능성 음성까지 포함하는 히긴스 구성을 복귀시키다.
상기 단계 254를 실행한 후, 호스트 프로그램(54)는 단계 248에서 지시된 다음 시간세부구획을 얻게 될 것이다.
프로그램 단계 258이 완료되면, 호스트 프로세서(54)는 "상대진폭 조절(Adjust for Relative Amplitude)" 프로그램 단계 258을 실행시키게 된다.
상기 기능단계는 "다변수 패턴 인식(Multivariate Pattern Recognition)"에 의하여 인식된 각 가능성 음성에 대한 가능성 수준을 할당하게 되고, 히긴스 데이터 구성에 저장한다.
가능성이 있는 상기 조절은 시간세부구획과 표준음성 데이터간의 또 다른 비교를 기초로 한다.
도 8C를 참조하여 상기 기능을 설명하면 다음과 같다.
단계 300을 시작으로 하여, 시간세부구획용 상대 진폭(RA)이 다음식으로 측정되어진다.
여기서 상기 LS는 히긴스 구성에 저장된 시간세부구획용 진폭의 절대평균이고, MaxAmpl은 데이터의 시간구획(10,240데이터 포인트)용 최대 LS의 이전 2초이상의 "평균이동" 이다.
다음으로, 상기 호스트 프로세서(54)는 프로그램 단계 304를 실행시키게 되고, 단게 300에서 측정된 표준상태진폭과 히긴스 데이터 구성에 포함된 가능성 음성의 표준상대진폭간의 차이를 측정하게된다.
상기 표준진폭데이터는 화자의 대표적 샘플로부터 얻어진 평균진폭으로 구성되고, 그 실시예는 표III과 같다.
다음, 프로그램 단계 306에서 상기 차이는 가장 큰 등급을 갖는 가장 작은 차이 그리고 가장 작은 등급을 갖는 가장 큰 차이로서 분류되어진다.
다음으로 단계 308을 진행시키면, 가능성 음성용의 새로운 가능성 값이 단계 306에서 측정된 이전의 수준을 평균화시켜 측정되어진다.
도 8을 참조하여 상대 진폭루틴 조절이 완료되어지면, 호스트 음성 프로세서는 프로그램 단계 248을 실행시키게 되고, 또다른 시간세부구획이 남아 있는지를 결정하게 된다.
남아 있다면, 상기 프로세서는 단계 242에서 루프를 다시 기입하고, 상술한 바와 같은 동일한 방법으로 새로운 시간세부구획이 연산되어진다.
남아있지 않다면, 상기 프로세서(54)는 단계 260을 실행하고, 도 4에서 주부름루틴으로 복귀하게 된다.
다음단계는 음성인식 호스트 프로세서에 의하여 실행되는 바, 도 4에 110으로 도시된 바와 같이 "집약음(Compress Phone)"기능으로 명명된 단계가 실행되어진다.
이미 상술한 바와 같이, 상기 기능은 최고지능점으로 지시되지 않은 시간세부구획을 제거하게 되고, 무음으로 나타난 연속적인 시간세부구획을 조합하게 된다.
불필요한 시간세부구획을 제거함으로써, 시간구획에 포함된 음소를 인식하기 위해 필요한 시간세부구획만이 남게 된다.
상기 단계는 전체 연산 요구치가 감소하게 되어 시스템이 실제시간의 음성인식을 할 수 있는 성능을 갖게 된다.
도 9에 도시한 바와 같이, "집약음(Compress Phone)"기능에 대하여 보다 상세히 설명하면 다음과 같다.
단계 316을 시작으로 하여, 상기 호스트 음성 프로세서(54)는 관련된 히긴스 데이터 구성과 존재하는 시간세부구성의 열을 수신한다.
단계 318에서 상기 프로세서(54)는 PMI 포인트를 포함하지 않는 모든 히긴스 구성을 제거한다.
다음으로 단계 320에서는 프로세서(54)가 무음을 포함하는 연속적인 데이터 구성을 인식하게 되는 동시에 하나의 대표적인 데이터 구성으로 상기 연속적인 데이터 구성이 감소되어진다.
상기 하나의 데이터 구성에서의 PMI 지속치는 연속적인 무음 구성의 모두를 나타내기 위하여 증가한다.
상기 상태에서 호스트 프로세서 데이터 메모리(60)에는 음성 특색을 포함하는 각각의 히긴스 데이터 구성의 열 히긴스 데이터 구성의 연속적인 열이 존재하게 된다
모두가 불필요하다면, 시간구획의 관련이 있는 것이든 관련된 없는 것이든 남아 있는 데이터의 열이 입력되는 음성 신호의 "존재(essence)"를 표시하기 위하여 제거되어진다.
특히, 본질적인 특징은 특정 화자가 누구든지 관계없이 음성신호를 발췌하게 된다.
더욱이는, 음성 신호가 실질적으로 실제시간에서 연산되어지며 발췌된다는 것이다. 즉, 입력은 수신되는 동시에 음성의 표준율로서 연산되어진다.
히긴스 구성 데이터를 감소시키면, 집약음 기능은 음성 인식 호스트 프로세서(54)가 프로그램 단계 324에서 호스트 데이터 메모리(60)의 데이터로 위치되도록 한다.
상기 단계 326 이 실행되면, 호스트 음성 프로세서(54)는 도 4에서의 프로그램 방법의 주요부로 복귀된다.
"언어 연산기"로서 명명된 다음 프로그램 단계를 설명한다.
상기 언어 연산기는 히긴스 구성 데이터를 분석하는 방법으로서, 높은 수준의 언어 연산기능의 열을 적용시킴으로써, 입력되는 음성신호의 시간세부구획에 포함된 낱말이나 절이 인식되어진다.
다른 언어 연산 기술과 평가가 사용되더라도, 언어 연산기에 사용되는 프로그램 단계가 도 10에 도시한 바와 같이 실행되어진다.
상기 기능의 프로그램 단계 350을 시작으로 하여, 상기 호스트 음성 프로세서(54)가 이전에 추출한 집약음 기능에 의하여 창출된 히긴스 구성의 열을 수신한다.
이미 설명한 바와 같이, 상기 데이터는 입력 음성 신호의 시간구획에 포함된 음소의 열을 나타낸다.
프로그램 단계 352에서 프로세서(54)는 "사전찾기(Dictionary Lookup)"로 명명된 기능으로 상기 데이터가 지나가게 한다.
상기 사전찾기 기능은 영문단어의 철자가 포함된 음성 영어사전을 사용하게 된다.
상기 사전은 특정 음소의 열과 일치되는 영어 단어를 인식하기 위하여 사용되어진다.
상기 사전은 다수의 분리 사전들로 분리가능하게 되어 있는 바, 예를들어, 최초 사전은 주로 영어단어의 데이터베이스이다.
또다른 사전은 보다 이해가 쉬운 단어의 웹스터와 같은 데이터베이스를 포함한다.
또한, 상기 사전들은 표준화된 단어로 구성되고, 다양한 분야 예를들어 의학사전, 법률사전등등에 적용가능하다.
모든 언어는 특정 음성에 관하여 기술될 수 있는 바, 영어단어사전을 사용하게 되지만, 비영어 사전도 사용가능하다.
사전찾기는 완성된 낱말, 또는 사용가능한 말의 형태로 된 입력 음성의 열을 결정하기 위하여 실행된다.
이를 위하여 상기 음성은 음성사전과 사용가능한 말의 시작과 끝에 의하여경경로 또는 감지를 위한 "순차열"로 위치되어진다.
따라서 상기 각 음성이 수신되고, 미완성된 "순차열"의 끝에 추가되어진다.
각 순차열은 사용가능한 말이 따르게 되는지를 결정하기 위한 사전의 내용으로 준비된다.
정확한 낱말(사용가능한 말의 열)이 인식되어지면, 프로그램의 언어 연산기에 포함된 다음 기능 블록으로 경유하게 된다.
제한되지 않는 실시예로서, 도 10A는 사전찾기 기능을 사용하기 위한 프로그램 단계의 열을 나타낸다.
상기 기능은 히긴스 구성의 열을 수신하게 되는 프로그램 단계 380에서 시작하게 된다.
프로그램 단계 384에서, 호스트 음성 프로세서(54)는 음소(히긴스 구성으로 표현된)를 얻게 되고, 최초 실행 순차열과 일치되는 사전에 찾기 포인터가 위치된 프로그램 386을 실행하게 된다.
상기 "실행(Active)" 순차열은 새로운 음성의 이외의 음성을 갖는 낱말로 부분적으로 형성된다.
반대로, 새로운 음성 이외의 낱말을 형성하는 가능성이 없는 것으로 결정되어지면, 순차열은 "비실행(inactive)"으로 간주되어진다.
단계 386에서 새로운 음성은 최초 실행순차열에 첨부된다.
프로그램 단계 388에서, 호스트 프로세서(54)는 사전내용을 검색함으로써,순차열이 낱말로 되어 있는지, 또다른 음성이 첨부된 낱말이 부분적으로 형성될 수 있는지를 결정하게 된다.
다음으로 단계 392에서, 호스트 프로세서는 순차열이 확정된 낱말로 형성되는지를 결정하게 된다.
만일 그러하다면, "새로운 순차열" 프래그는 새로운 순차열이 다음 음성과 함께 시작되며 형성될 수 있음을 지시하게되는 단계 394에서 설정되어진다.
만일, 정확한 낱말이 형성되지 않았다면, 프로세서(54)는 단계 394를 건너띄게 된다.
만일, 사전 데이터베이스를 검색한 후, 단계 388에서 호스트 프로세서(54)를 대신하여 순차열이 정확한 낱말로 따르지 않고, 심지어는 추가 음성이 추가되다면, 프로그램 단계 398를 실행시킨다.
상기 단계에서, 상기 순차열은 "비실행(inactive)"으로 정하여지고, 프로세서(54)는 단계 396을 실행시키게 된다.
단계 396에서, 프로세서(54)는 음성이 추가될 수 있도록 더 많은 실행 순차열을 분석하게 된다.
만일 그렇다면, 프로그램 단계 400이 실행되고, 다음 실행 순차열의 은성이 추가된다.
다음으로, 상기 프로세서는 프로그램 단계 388을 재실행시키고, 상술한 방법과 동일하게 순차열을 실행시킨다.
단계 396에서 순차열이 남아 있지 않다는 것을 결정하면, 호스트 프로세서(54)는 단계 402를 실행시킨다.
새로운 순차열 플래그가 단계 394에서 설정되었는지의 결정을 실행시키게 된다. 따라서 이전의 음성은 실행 순차열과 조화되는 정확한 낱말로 창출되어진다.
만일, 설정이 되었다면, 프로세서는 프로그램 단계 406을 실행시키고, 새로운 순차열을 만들게 되며, 프로그램 단계 408을 실행시키게 된다.
만일, 설정되지 않았다면, 프로세서(54)는 404단계를 실행시키게 되고, 모든 순차열이 비실행인지를 결정하게 된다.
단계 408에서, 호스트 음성 프로세서(54)는 초기낱말이 완료되었는지를 비실행 순차열의 분석에 의하여 평가하게 되고, 최초 실행 낱말은 통상의 낱말로 나타나게 된다.
만일 그러하다면, 상기 프로세서(54)는 언어 연산기의 주부름루틴에 대하여 정확한 낱말로 출력하게 된다.
또한, 상기 프로세서(54)는 비실행 순차열을 제거하는 동시에 다음의 히긴스 구성 음성을 얻기 위하여 단계 384를 실행시키게 된다.
단계 408에서, 초기 낱말이 아직 종료되지 않았음을 결정하게 되면, 상기 프로세서(54)는 다음의 히긴스 구성 음성을 얻기 위하여 프로그램 단계를 곧바로 실행시키게 된다.
새로운 음성이 단계 384에서 얻어지게 되면, 호스트 프로세서(54)는 곧바로 단계 386을 실행시키게 되는 동시에 상술한 바와 같은 연산을 계속 실행시키게 된다.
사전찾기 기능이 히긴스 구성 데이터로부터 낱말을 추출해낼 때, 풀리지 않는 어떤 가능성 단어 있을 수 있다.
따라서, 언어 연산기는 남아 있는 가능성 낱말을 풀기 위하여 다른 기능을 포함하게 된다.
상기 다른 기능은 도 10에 블록 354로 표시된 "낱말배치(Word Collocation)" 으로 명명된 기능이다.
일반적으로 상기 낱말배치 기능은 낱말이 일상의 낱말배치인지를 검색하는 사전찾기 기능에 의하여 인식되어진 가능성 낱말을 감지하게 된다.
상기 일상의 낱말 배치의 열은 사전 메모리(64)에 포함된 분리형 사전 데이터베이스에 저장되어진다.
이에, 상기 어떤 가능성 낱말은 제거될 수 있고, 최소로 할당된 확정수준이 감소되는데, 그 이유는 일상 낱말 할당으로 간주된 것에 적당치 않기 때문이다.
상기 프로그램 단계의 바람직한 실시예로서, 도 10B를 참조하여 설명하면 다음과 같다.
프로그램 단계 420을 시작으로, 가능성 낱말이 수신된다.
상기 단계 422에서 낱말의 열중에 하나를 시작하면, 호스트 음성 프로세서(54)는 다음의 프로그램 단계 424를 실행시키는 바, 낱말이 연산됨으로써, 형성된 어떤 할당을 얻게 된다.
상기 할당의 존재는 사전내용을 할당하기 위하여 연속적으로 비교할 수 있는 낱말과 절에 의하여 결정되어진다.
만일 상기 낱말의 배치가 이루어지면, 상기 가능성 낱말은 배치 목록에 적합한지를 검색하는 시험을 하게 되는 바, 단계 428에서, 적절치 못한 낱말 배치는 제거되어진다.
다음으로, 프로세서(54)는 가능성 낱말이 남아 있는지를 결정하기 위하여 단계 430을 실행시키게 되고, 남아있다면, 남아 있는 낱말이 프로그램 단계 422에서 시적되는 배치 목록에 속하는지를 시험하게 된다.
상기 연산처리는 모든 가능성 낱말에 적용되는 바, 주 언어 연산기 루틴에 대하여 프로그램 단계 436을 경유하여 복귀되기 전에 프로세서(54)는 배치가 적당하게 된 낱말을 인식하게 된다.
상기 배치 루틴의 결과를 기초로 하여, 남아 있는 가능성 낱말이 제거될 수 있고, 최소로 할당된 확정 수준이 감소하게 된다.
또 다른 선택 기능으로서, 남아 있는 가능성 낱말을 해석하는데 사용하는 "문법 검사(Grammar Check)" 기능이 있고, 이는 도 10에 도시된 블록 356에 나타낸 바와 같다.
상기 기능은 문법적인 법칙을 적용함으로써, 가능성 낱말을 평가하게 되고, 낱말이 문법에 맞는지를 결정하게 된다.
문법적으로 적당치 못한 낱말은 제거되고, 할당된 확정 수준이 감소하게 된다.
상기 문법 검사기능은 도 10C에 도시한 바와 같고, 단계 440에서 연산되는 낱말과 뒤따르는 낱말이 수신되어진다.
다음, 단계 442에서, 호스트 음성 프로세서 메모리에 저장된 문법적인 법칙은 "음성의 각 구성부"가 연산되는 낱말과 뒤따르는 낱말의 문법적인 문맥에 적당한 것이지를 결정하게 된다.
만일 가능성 낱말이 단계 444에서 상기 음성의 각 구성부와 일치되어지면, 이 낱말은 단계 446의 언어 연산기로 복귀되기 전에 고확정 수준으로 할당되어진다.
또한, 상기 낱말이 단계 444에서 문법적으로 "최적(best fit)"으로 판단되지 않으면, 이는 단계 446으로 복귀되며 저수준으로 할당되어진다.
상기 확정수준은 남아 있는 가능성 낱말을 제거하는데, 사용될 수 있다.
도 10을 참조하여, 상기 다양한 기능이 입력되는 음성신호의 낱말 목록을 인식하게 되면, 언어 연산기 기능은 호스트 음성 프로세서(54)가 주어진 히긴스 구성열을 계속 남아있도록 낱말 가능성의 수를 결정하게 한다.
상기 낱말 가능성이 인식되지 않는다면, 상기 프로세서(54)는 단계 366에서 아직 찾지 못한 음성 사전 데이터베이스(특정화된 사전, 사용자 정의 사전등)가 남아 있는지를 결정하게 된다.
결정되어지면, 상기 프로세서(54)는 단계 368에서 새로운 사전을 얻게 되고, 단계 352를 시작으로 하는 연산을 재실행하게 된다.
만일 사전이 남아 있지 않는다면, 인식되지 않은 음성의 열(인식되지 않은 "낱말")이 호스트 컴퓨터(22)에 존재하는 프로그램 방법의 명령연산으로 보내어진다
만일, 하나 이상의 가능성 낱말이 남아 있다면, 프로그램 단계 358에서 남아 있는 낱말을 명령 연산기로 보내게 된다.
또한, 단지 하나의 가능성 낱말만이 남아 있다면, 이 낱말은 명령 연산기로 직접 보내어진다.
상기 낱말 또는 가능성 낱말이 출력되면, 프로그램 단계 370은 호스트 음성 프로세서(54)가 도 4에 도시된 주연산으로 복귀되도록 한다.
낱말이 언어 연산기에 의하여 입력되는 음성 신호로부터 추출되면, 이 낱말은 도 4에 기능블럭 114로 "명령 연산기(Command processor)"로 명명된 전체 프로그램 단계상의 다음 단계를 지나게 된다.
본 발명의 바람직한 구현예에서, 명령 프로세서는 표준 데스크탑 퍼스날 컴퓨터와 같은 호스트 컴퓨터(22)에 의해 실행되는 프로그램 단계를 거치게 된다. 이미 알려진 바와 같이, 상기 호스트 컴퓨터(22)는 표준 RS-232와 인터페이스(66)와 같은 적당한 통신매체에 의해 인입된 단어를 수신받게 된다. 이때, 상기 명령 프로세서는 각 입력단어를 수신받아 호스트 컴퓨터(22)에서 사용되는 방식을 결정하게 된다. 예를 들어, 구술된 말은 직접 텍스트로 적용되어 마치 워드프로세서 문서로 입력이 된다. 반대로, 이 말은 명령어로서 작동시스템이나 장치응용에서 전해지게 된다.
첨부도면 11은 명령 프로세서를 사용하기 위한 프로그램과정의 일예이다. 먼저, 프로그램과정(450)은 호스트 컴퓨터(22)가 언어연산기에 의해 창충된 단어를 수신받게 된다. 이때, 상기 호스트 컴퓨터(22)는 452단계에서,수신받은 이 언어가 작동시스템 명령인지를 결정하게 된다. 이것은 모든 단어가 작동시스템의 명령으로 구성되었는지를 판정할 수 있는 한정파일 데이터 베이스의 구성을 비교하여 결정하게 된다. 만일, 만일 이런 명령을 받게 되면 프로그램 과정454에서 도시된 호스트 컴퓨터(22)에 직접 전해지게 된다.
만일, 입력어가 작동시스템 명령어로 구성되어 있지 않으면 456단계가 실행되어 워드 프로세서나 전자계산서에서 명령어와 같이 작용명령어로 결정이 되는 것이다. 다시 이러한 결정은 이 단어와 적용명령어를 구성하는 모든 단어를 정의하는 다른 한정파일 데이터베이스를 비교하게 된다. 만일, 이 단어가 적용 명령어라면 직접 458단계로 가서 의도적인 적용을 하게 된다.
그리고 나서 상기 입력어가 작동시스템의 명령이나 적용 명령이 아니면 프로그램과정 460이 실행이 되어 아직 명령 프로세서가 명령모드에 있도록 확정하게 된다. 이렇게 되면 상기 입력어는 464과정에서 버려지게 되어 무시하게 된다. 물론, 상기 명령 프로세서가 명령 모드가 아니면 이 단어는 텍스트로 실제 적용을 위해 직접 보내지게 된다.
만일, 이 단어가 작동시스템이나 응용에 명으로 작용하게 되면 프로그램 과정 454와 458이 실행으로, 상기 호스트 컴퓨터(22)는 466과정을 실행하여 특수 명령열이 아직까지 완전한지를 결정하게 된다. 이 단어가 완벽하지 않으면 상기 알고리즘은 명령 모드로 남겨 입력어를 계속 모니터하여 각 작동시스템이나 응용에 명령하게 된다. 만일 이 명령열이 466단계에서 완벽해지게 되면 상기 알고리즘은 470단계로 빠져나가게 된다.
이와 같은 방법으로, 상기 명령 프로세서는 전후로 호스트 컴퓨터(22)를 실행시켜주는 작동시스템이나 응용을 동작하게 된다. 각 새로운 단어를 받게 되면 선택적으로 적당한 컴퓨터 임의자원으로 유도하게 된다. 이와 같은 방법에 의한 실행으로 본 발명에 따른 상기 시스템과 방법은 데이터나 명령으로 표준 퍼스날 컴퓨터를 실행하게 된다. 그래서, 상기 시스템은 본질적으로 키보드나 포인팅 장치와 같은 다른 컴퓨터 입력장치를 대신하거나 보완하게 된다.
요약해보면, 본 발명에 따른 음성을 인식하기 위한 시스템과 방법은 불특정화자의 음성인식 시스템을 제공하기 위하여 성능이 우수하고 필요한 도구 제공한다. 특히, 상기 시스템과 방법은 입력된 음성시그날로부터 기본적인 요소를 추출하는 것이다. 게다가, 상기 시스템은 이러한 방법으로 구성요소를 분리시켜 모든 화자에게 공동적으로 기본적인 음성 특성을 확인하고, 음성시그날로 조합된 음소를 정확하게 확인하여 사용하게 된다. 이러한 것은 상기 시스템과 방법으로 사용자가 특수한 음성 특성을 시스템에 인식시키지 않고도 어떤 화자라도 주어진 언어로부터 음성을 인식할 수 있는 것이다.
더 나가 본 발명에 따른 시스템과 방법은 사용자와 관계없이 이러한 수단으로 음성을 실질적으로 실시간에 인식할 수 있게 된다. 그 결과, 화자는 통상적인 대화속도로 이야기를 할 수 있게 되고, 대화중에 단어 사이를 끊지 않아도 되는 것이다.
마지막으로, 상기 시스템은 여러 가지 언어 프로세스 기술을 사용하여 어떠한 언어로 조합된 단어나 어구일지라도 음운을 식별하게 된다. 음운이 지속적으로 있게 되면 본 발명의 시스템은 단어와 어구로 이루어진 어휘로 인식하게 된다.
본 발명에 따른 시스템과 방법에서 제시한 실시예와 구현예는 그 정신이나 기본적인 특성을 벗어나지 않고 구체적인 방법이나 형태로 구현한 것이다. 그러므로, 상술한 실시예와 일예는 제한적인 것이 아니라 예증적인 것으로 고려해야 한다. 여기서, 본 발명의 범위는 앞서 설명한 상세한 설명보다는 청구범위에 잘 나타나 있으며, 청구범위에 상당하는 범위와 내용의 모든 변경은 그 범주에 내에 속한다.
이하, 본 발명의 참조되는 표를 첨부한다.
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
111111111111111 123456789101112131415 23.92543.100654.545360.793462.709266.904668.904270.939473.865776.654278.5660000 0.06390.1169640.11320.1119160.09890.1052480.1011590.1027080.1038710.1096610.1055450000 0.733780.082420.010250.012570.062350.074150.0980.055730.02970.016060.021960000
333333333333333 123456789101112131415 31.081837.637554.882459.88261.842867.457769.828271.936374.127575.614379.33440000 0.09480.07870.1159360.1034870.0972350.1077120.1064780.1040270.1052460.1029060.1066650000 0.76390.22790.026020.052870.117880.108250.048730.029850.022710.009360.011440000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
77777777777777 13456789101112131415 35.808155.923259.274664.350266.891270.589572.356174.662376.82579.54160000 0.1175130.1222360.1053290.1115960.1057260.1109070.1083490.1080320.110560.1102160000 0.71510.056510.2010.159080.108520.074660.037630.026010.01840.026380000
242424242424242424242424242424 123456789101112131415 26.364543.494650.79660.694965.277166.948171.032772.538876.008277.338578.62430000 0.07720.0950610.09740.1220100.1164030.1061860.11144220.1088710.1169950.1126690.1049590000 0.58200.719810.466480.053320.038060.057350.036540.030310.013780.0170.015910000
999999999999999 123456789101112131415 27.380846.016157.450359.86367.121668.570272.189273.849677.130878.058681.62350000 0.08910.1177440.1321570.1139960.1305640.1199710.1224770.119080.1251790.1184210.1254730000 0.68730.69690.22880.31640.167260.104750.045610.042290.025190.029610.025070000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
141414141414141414141414141414 123456789101112131415 29.997640.729855.041758.492165.837765.909370.951472.51975.318276.546379.44910000 0.09670.09010.1170450.1072110.1195860.1003990.1136840.1078960.1131990.1081460.1098360000 0.60350.731740.243440.109040.045170.051830.035640.023980.019060.014250.019290000
171717171717171717171717171717 123456789101112131415 26.975651.883450.906160.21163.481767.115570.982671.101474.293276.563480.24670000 0.0769840.1484190.09550.1117770.104960.1060360.1129580.09970.1061160.1071090.01141590000 0.846560.13270.064940.017220.017040.011870.01020.008440.004980.00430.003280000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
212121212121212121212121212121 123456789101112131415 35.698742.928451.609159.620264.031766.909770.266671.733875.272776.784779.53330000 0.1188740.1044480.1067090.1088020.1079570.104840.1079290.1021960.11120.1079230.1091770000 0.81690.62820.099540.010040.015190.013940.016640.011720.00420.003340.00760000
262626262626262626262626262626 123456789101112131415 94.16128.809955.629740.990863.770356.751464.702297.957666.786572.768574.63680000 0.3464150.04480.1077130.0250.1038670.06150.07920.229010.07080.0874920.08650000 0.46870.84660.097510.144430.088470.025780.023440.012380.004210.006330.006210000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
292929292929292929292929292929 123456789101112131415 37.558929.142255.532556.764462.094866.534268.316471.961673.293175.662577.43810000 0.134410.04260.112150.0959040.1036640.1047910.09820.1049080.1002590.1021990.09890000 0.73030.64090.14210.185530.046580.011320.00950.011730.004550.005030.005250000
313131313131313131313131313131 123456789101112131415 24.053546.375450.935256.821460.841563.903466.710469.110771.937873.622477.20130000 0.0653560.1231270.0913690.09480.0897370.09060.08940.08790.0940150.09130.09410000 0.590220.060930.041070.028010.03190.025790.010220.009560.008270.003890.005620000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
333333333333333333333333333333 123456789101112131415 36.168340.767751.080957.283761.36564.168967.461366.91872.554774.377177.54360000 0.1361960.09970.09380.09610.09250.09240.09440.08060.09510.0951190.09660000 0.63860.085790.019470.020640.023140.017280.007540.004040.005250.002640.0030000
363636363636363636363636363636 123456789101112131415 25.12842.983450.533157.157460.367964.123267.770269.96771.808274.6677.04750000 0.06770.1103960.09180.09350.08720.09160.09530.09340.09160.09750.09550000 0.64280.111440.043020.01870.037210.036110.016580.0130.006730.006140.007220000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
909090909090909090909090909090 123456789101112131415 34.55945.761652.557760.445265.077966.982870.272572.009275.453776.839879.51010000 0.1176810.1237350.1109830.1165820.1137630.1078160.1088670.1062490.1131030.1102250.1109440000 0.84550.68970.049240.00760.008720.01520.011780.013690.007050.005620.009610000
949494949494949494949494949494 123456789101112131415 33.0119.599254.233758.736162.801769.18270.186471.85675.822976.183579.86820000 0.103040.02220.1026150.1065570.1063120.1203430.1080330.1053120.1143870.105750.1109510010 0.93530.68940.146310.127560.022570.021350.008810.005610.001940.001510.001820000
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
585858585858585858585858585858 123456789101112131415 30.515541.147352.677557.335561.88165.119368.057469.564372.754474.55177.33279.571782.197284.51586.3601 00.1043150.0980.1010270.09760.09680.09690.09710.0922990.09790.0966850.0989280.0950930.09590.09620.0958 0.53170.09450.058750.044130.039210.032650.027730.020980.016370.014330.019970.013850.012630.014250.01486
606060606060606060606060606060 123456789101112131415 29.820945.099254.320558.452964.909266.877871.366672.453974.897877.144979.582782.353684.72286.951588.7968 0.0977510.1177470.105930.105630.1123610.1071160.1151050.1078430.109410.1104710.1105230.1106650.1089120.1095660.10925 0.58430.089340.085910.058370.043660.05140.031340.024060.017060.015270.020610.012260.012520.010570.01331
SOUND PASCIIVALUE 주파수 밴드#(FREQBAND#) 슬로프 (SLOPE)m Y-INTERCEPT(b) 진폭(AMPLITUDE)
626262626262626262626262626262 123456789101112131415 30.331239.170455.268558.399865.024766.672870.191572.275574.813576.398478.479781.14284.369685.9688.0833 0.1095820.08090.1136070.1053090.1139360.1052470.1083960.1061310.108550.1062340.1031040.1041070.1078840.104250.15053 0.5660.057560.047230.029060.025630.023940.01950.020910.030410.036230.082690.050080.038960.033010.02503
666666666666666666666666666666 123456789101112131415 24.926948.385854.549658.300964.946766.473769.280471.530473.73376.563678.822681.167884.350186.113287.6284 0.07890.1353150.1092840.1006430.113280.1034520.1049050.1033330.1036750.1087940.1079650.105510.1084370.1060130.103334 0.61880.061550.022820.075830.10370.15550.12630.09810.08390.063580.08130.031630.017380.011690.00849
PHONEMESOUND PASCIIVALUE RELATIVEAMPLITUDESTANDARD
ahuhahoauereAooIweerylshngchmnsijtgk~thzshdvbpfth 232224219192975173851948290653611631336611541484760626176425840395759 959595958585857575757575757575756565555550505040404040403535303030252520

Claims (35)

  1. 가청 시그널내에 포함된 음운타입을 식별하기 위한 음성인식시스템은:
    가청시그날을 수신받아 대표적인 가청 전기 시그날로 변환시켜주는 가청 프로세스 수단과;,
    이 가청 전기 시그날을 이미 정해진 샘플링 비율의 디지틀 데이터인 디지틀 가청 시그날로 변환시켜주는 A/D변환수단과;,
    디지틀 가청 시그날을 시간영역으로 분석하여 적어도 하나의 상기 가청 시그날의 시간영역을 식별하고, 절단된 주파수를 미러 정해주는 다필터밴드로 디지틀 가청 시그날을 여과후 세분된 시간영역을 조합하여 여과된 각 시그날의 주파수 영역을 적어도 하나의 음성 특성으로 측정하고, 적어도 하나의 상기 시간 영역특성과 주파수 영역특성을 근거로 가청 시그날 내에서 적어도 하나의 음운타입을 식별하는 가청음성인식수단으로 이루어진 것을 특징으로 하는 음성인식 시스템.
  2. 제 1 항에 있어서, 상기 가청 프로세스 수단은 가청 시그날을 입력받아 가청 전기 신호로 변환시켜주는 수단과, 이 가청 전기신호에 조건을 설정하여 적당한 디지틀 샘플링을 갖는 대표적인 전기적 형태로 바꿔주는 수단을 포함하는 것을 특징으로 하는 음성인식 시스템
  3. 제 1 항에 있어서, 상기 조건수단은 가청 전기 시그날을 미리 정해진 레벨로 증폭시켜주는 시그널 증폭수단과;, 증폭된 가청 전기시그널이 정해진 출력레벨로 맞춰주는 증폭제한수단과;, 이 증폭제한수단에 접속되어 가청 전기시그날이 정해진 최대 주파수를 제한하여 전형적인 가청 전기 시그널로 공급하는 필터수단을 포함하는 것을 특징으로 하는 음성인식 시스템
  4. 제 1 항에 있어서, 미리 선택된 언어 조합으로 이루어진 적어도 하나의 단어를 가청 시그날에 포함된 적어도 하나의 음운타입으로 수신하고, 적어도 하나의 단어를 데이터 입력이나 명령어 입력으로 처리하는 것을 특징으로 하는 전기수단이 구비되어 있는 것을 특징으로 하는 음성인식 시스템
  5. 제 1 항에 있어서, 상기 적어도 하나의 시간영역 특성은 가청 시그날의 평균진폭과 가청 시그날의 절대차 평균과 가청 시그날의 제로교차율 중에서 적어도 하느를 포함하는 것을 특징으로 하는 음성인식 시스템
  6. 제 1 항에 있어서, 적어도 하나의 주파수 영역특성은 위에서 기술한 것과 같이 여과된 시그날에서 적어도 하나의 주파수와 이 시그날에서 적어도 하나의 진폭중에서 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템
  7. 가청 시그날에 포함된 음운타입을 식별하기 위한 음성 인식시스템은;.
    가청 시그날을 수신받아 대표적인 가청 전기신호로 변환시켜주는 가청 프로세서 수단과;,
    상기 가청 전기신호를 미리 정해진 샘플링율을 적용하여 디지틀 적으로 검출하여 디지틀 가청 시그날로 변환시켜주는 아날로그/디지틀 변환기와;,
    다음과 같은 프로그램 과정을 수행하는 음성인식수단:
    (a) 디지틀 가청 시그날을 시간 영역으로 분석하여 이 디지틀 시그
    널의 시간영역에 대한 음성특성을 적어도 하나를 식별해내는 과
    정과,
    (b) 다수의 필터밴드를 사용하여 미리 정해진 절단된 주파수를 걸러
    분리된 시간영역에서의 조합시켜주는 과정과,
    (c) 상술한 바와 같이 여과된 각 시그날을 주파수 영역에서 적어도
    하나의 음성 특성을 측정하는 과정과,
    (d) 적어도 하나의 시간 영역에서의 특성과 적어도 하나의 주파수 영
    역에서의 특성을 근거로 적어도 하나의 가청 시그날에 포함된 음
    운타입을 식별하는 과정
    으로 이루어진 것을 특징으로 하는 음성인식 시스템
  8. 제 7 항에 있어서, 상기 가청 프로세서 수단은 가청 시그널을 입력받아 가청 전기신호로 변환시켜주는 수단과;, 가청 전기 시그날을 필요조건으로 디지틀 샘플링을 하는데 적당한 전기적 형태로 바꿔주는 수단을 포함하는 것을 특징으로 하는 음성인식 시스템
  9. 제 8 항에 있어서, 상기 조건부수단은 가청 전기신호를 미리 정해진 레벨까지 증폭시켜주는 시그날 증폭수단과;, 이 전기신호가 미리 정해진 출력레벨보다 높아지지 않도록 제한하는 수단과;, 이 제한수단에 접속되어 가청 전기신호가 미리 정해진 주파수를 넘지 않게 제한하여 정해진 전기신호로 제공하는 필터수단으로 구성되어 있는 것을 특징으로 하는 음성인식 시스템
  10. 제 9 항에 있어서, 상기 적어도 하나의 시간영역에서의 특성은 가청 시그날의 평균진폭과, 가청 시그날의 절대차 평균과, 가청 시그날의 제로 교차율 중에서 적어도 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템
  11. 제 10 항에 있어서, 상기 적어도 하나의 주파수 영역에서의 특성은 상기와 같이 여과된 시그날의 주파수와, 이 시그날 중에서 적어도 하나의 진폭중에서 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템
  12. 제 11 항에 있어서, 상기 가청 시그날에 포함된 적어도 하나의 음운타입은 음운타입과 결합관계에 있는 음운표준으로 적어도 하나를 주파수 영역의 특성으로 측정하고, 측정된 주파수 영역에서의 특성을 가장 밀접하게 잘 어울리는 음성표준타입으로 적어도 하나를 식별하여 표준 주파수 영역의 음운타입으로 조합할 수 있게 한 것을 특징으로 하는 음성인식 시스템
  13. 제 12 항에 있어서, 상술한 것과 같이 측정된 적어도 하나의 주파수 영역 특성과 다수의 표준 주파수 영역 특성은 크로매틱 스케일로 표현되는 것을 특징으로 하는 음성인식 시스템
  14. 제 13 항에 있어서, 상기 전기수단은 가청 시그날 내에 포함된 적어도 하나의 음운을 조합한 미리 선택된 언어로 이루어진 적어도 하나의 단어를 받아 데이터입력 또는 명령어 입력으로 적어도 하나의 단어로 처리하는 것을 특징으로 하는 음성인식 시스템
  15. 가청 시그날에 포함된 음운타입을 식별하기 위한 음성인식시스템은:
    가청 시그날을 수신받아 이 시그날을 대표적인 가청 전기신호로 변환시켜주는 가청 프로세서 수단과;
    상기 가청 전기신호를 미리 정해진 샘플링율을 적용하여 디지틀 적으로 검출하여 디지틀 가청 시그날로 변환시켜주는 아날로그/디지틀 변환기와;
    디지틀 가청 시그날을 시간 영역으로 분석하여 이 디지틀 시그널의 시간영역에 대한 음성특성을 적어도 하나를 식별하고, 다수의 필터밴드를 사용하여 미리 정해진 절단된 주파수를 걸러 분리된 시간영역에서의 조합시켜 각 시그날을 주파수 영역에서 적어도 하나의 음성 특성을 측정하는 디지틀 프로세서 수단과;
    적어도 하나의 시간영역 특성과 적어도 하나의 주파수 영역 특성으로 가청 시그날에 포함된 적어도 하나의 음운타입을 식별하고, 이 하나의 음운타입을 하나의 대표적인 선택된 언어로 바꿔주는 호스트 음성 프로세서 수단으로 이루어진 것을 특징으로 하는 음성인식 시스템
  16. 제 15 항에 있어서, 상기 가청 프로세서 수단은 가청 시그날을 수신하고 이것을 가청 전기신호롤 변환시켜주는 수단과, 이 가청 전기신호를 조건처리하여 이것을 디지틀 로 샘플링하기에 적당한 대표적인 전기적 형태로 바꿔주는 수단으로 이루어진 것을 특징으로 하는 음성인식 시스템
  17. 제 16 항에 있어서, 조건부수단은 가청 전기신호를 미리 정해진 레벨까지 증폭시켜주는 시그날 증폭수단과;, 이 전기신호가 미리 정해진 출력레벨보다 높아지지 않도록 제한하는 수단과;, 이 제한수단에 접속되어 가청 전기신호가 미리 정해진 주파수를 넘지 않게 제한하여 정해진 전기신호로 제공하는 필터수단으로 구성되어 있는 것을 특징으로 하는 음성인식 시스템
  18. 제 15 항에 있어서, 상기 전기수단은 가청 시그날 내에 포함된 적어도 하나의 음운을 조합한 미리 선택된 언어로 이루어진 적어도 하나의 단어를 받아 데이터입력 또는 명령어 입력으로 적어도 하나의 단어로 처리하는 것을 특징으로 하는 음성인식 시스템
  19. 제 15 항에 있어서, 상기 적어도 하나의 시간영역에서의 특성은 가청 시그날의 평균진폭과, 가청 시그날의 절대차 평균과, 가청 시그날의 제로 교차율 중에서 적어도 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템
  20. 제 15 항에 있어서, 상기 적어도 하나의 주파수 영역에서의 특성은 상기와 같이 여과된 시그날의 주파수와, 이 시그날 중에서 적어도 하나의 진폭중에서 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템
  21. 제 15 항에 있어서, 상기 디지틀 음성 프로세서 수단은 미리 정해진 프로그램 단계를 실해하는 제 1프로그램 수단과, 이 프로그램 수단에서 이용되는 프로그램 단계가 저장된 프로그램 메모리 수단과, 상기 프로그램 수단에서 사용하기 위해 디지틀 저장면적을 분할하는 데이터 메모리수단으로 이루어진 것을 특징으로 하는 음성인식 시스템
  22. 제 15 항에 있어서, 상기 호스트 음성 프로세서 수단은 미리 정해진 프로그램 과정을 실행하는 제 2 프로그램수단과, 이 프로그램 수단에서 이용되는 프로그램 단계가 저장된 프로그램 메모리 수단과, 상기 프로그램 수단에서 사용하기 위해 디지틀 저장면적을 분할하는 데이터 메모리수단으로 이루어진 것을 특징으로 하는 음성인식 시스템.
  23. 가청 시그날에 포함된 음운타입을 식별하기 위한 음성 인식시스템은;.
    가청 시그날을 수신받아 대표적인 가청 전기신호로 변환시켜주는 가청 프로세서 수단과;,
    상기 가청 전기신호를 미리 정해진 샘플링율을 적용하여 디지틀 적으로 검출하여 디지틀 가청 시그날로 변환시켜주는 아날로그/디지틀 변환기와;,
    다음과 같은 프로그램 과정을 수행하는 디지틀 음성인식수단:
    (a) 디지틀 가청 시그날을 시간 영역으로 분석하여 이 디지틀 시그
    널의 시간영역에 대한 음성특성을 적어도 하나를 식별해내는 과
    정과,
    (b) 다수의 필터밴드를 사용하여 미리 정해진 절단된 주파수를 걸러
    분리된 시간영역에서의 조합시켜주는 과정과,
    (c) 상술한 바와 같이 여과된 각 시그날을 주파수 영역에서 적어도
    하나의 음성 특성을 측정하는 과정,;
    다음과 같은 프로그램 과정을 수행하는 호스트 음성 프로세서 수단;
    (a) 적어도 하나의 시간영역 특성과 적어도 하나의 주파수 영역 특성
    에 의거하여 가청 시그날 내에 포함된 적어도 하나의 음운타입을
    식별하는 과정과,
    (b) 적어도 하나의 음운 타입을 적어도 선택된 언어로 이루어진 대표
    단어로 번역하는 과정;
    으로 이루어진 것을 특징으로 하는 음성인식 시스템.
  24. 제 23 항에 있어서, 상기 가청 프로세서 수단은 가청 시그날을 수신하고 이것을 가청 전기신호롤 변환시켜주는 수단과, 이 가청 전기신호를 조건처리하여 이것을 디지틀 로 샘플링하기에 적당한 대표적인 전기적 형태로 바꿔주는 수단으로 이루어진 것을 특징으로 하는 음성인식 시스템
  25. 제 24 항에 있어서, 상기 조건부수단은 가청 전기신호를 미리 정해진 레벨까지 증폭시켜주는 시그날 증폭수단과;, 이 전기신호가 미리 정해진 출력레벨보다 높아지지 않도록 제한하는 수단과;, 이 제한수단에 접속되어 가청 전기신호가 미리 정해진 주파수를 넘지 않게 제한하여 정해진 전기신호로 제공하는 필터수단으로 구성되어 있는 것을 특징으로 하는 음성인식 시스템
  26. 제 25 항에 있어서, 상기 적어도 하나의 시간영역에서의 특성은 가청 시그날의 평균진폭과, 가청 시그날의 절대차 평균과, 가청 시그날의 제로 교차율 중에서 적어도 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템.
  27. 제 26 항에 있어서, 상기 적어도 하나의 주파수 영역에서의 특성은 상기와 같이 여과된 시그날의 주파수와, 이 시그날 중에서 적어도 하나의 진폭중에서 어느 하나를 포함하는 것을 특징으로 하는 음성인식 시스템.
  28. 제 27 항에 있어서, 상기 가청 시그날에 포함된 적어도 하나의 음운타입은 음운타입과 결합관계에 있는 음운표준으로 적어도 하나를 주파수 영역의 특성으로 측정하고, 측정된 주파수 영역에서의 특성을 가장 밀접하게 잘 어울리는 음성표준타입으로 적어도 하나를 식별하여 표준 주파수 영역의 음운타입으로 조합할 수 있게 한 것을 특징으로 하는 음성인식 시스템.
  29. 제 28 항에 있어서, 상술한 것과 같이 측정된 적어도 하나의 주파수 영역 특성과 다수의 표준 주파수 영역 특성은 크로매틱 스케일로 표현되는 것을 특징으로 하는 음성인식 시스템.
  30. 제 29 항에 있어서, 상기 전기수단은 가청 시그날 내에 포함된 적어도 하나의 음운을 조합한 적어도 하나의 단어를 받아 데이터입력 또는 명령어 입력으로 적어도 하나의 단어로 처리하는 것을 특징으로 하는 음성인식 시스템.
  31. 가청 시그날에 포함된 음운타입을 식별하는 방법은:
    (a) 가청 시그날을 수신하는 과정과:
    (b) 이 가청 시그날을 대표적인 가청 전기신호로 변환시켜주는 과정과:
    (c) 가청 전기신호를 미리 정해진 샘플링율로 디지틀 화하여 디지틀
    가청 신호로 바꿔주는 과정과:
    (d) 이 디지틀 가청 시그날을 시간 영역으로 분석하여 상기 가청 시그
    날을 적어도 하나의 시간 영역 특성으로 식별하는 과정과:
    (e) 다수의 필터밴드를 사용하여 미리 정해진 절단된 주파수를 걸러
    분리된 시간영역에서의 조합시켜주는 과정과,
    (f) 상술한 바와 같이 여과된 각 시그날을 주파수 영역에서 하나의 음
    성 특성을 측정하는 과정,
    (g) 적어도 하나의 시간영역 특성과 적어도 하나의 주파수 영역 특성에
    의거하여 가청 시그날 내에 포함된 적어도 하나의 음운타입을 식별
    하는 과정:,
    으로 이루어진 것을 특징으로 하는 음성인식 방법.
  32. 제 31 항에 있어서, 상기 적어도 하나의 시간영역에서의 특성은 가청 시그날의 평균진폭과, 가청 시그날의 절대차 평균과, 가청 시그날의 제로 교차율 중에서 적어도 어느 하나를 포함하는 것을 특징으로 하는 음성인식 방법.
  33. 제 31 항에 있어서, 상기 적어도 하나의 주파수 영역에서의 특성은 상기와 같이 여과된 시그날의 주파수와, 이 시그날 중에서 적어도 하나의 진폭중에서 어느 하나를 포함하는 것을 특징으로 하는 음성인식 방법.
  34. 제 31 항에 있어서, 상기 가청 시그날에 포함된 적어도 하나의 음운타입은 음운타입과 결합관계에 있는 음운표준으로 적어도 하나를 주파수 영역의 특성으로 측정하고, 측정된 주파수 영역에서의 특성을 가장 밀접하게 잘 어울리는 음성표준타입으로 적어도 하나를 식별하여 표준 주파수 영역의 음운타입으로 조합할 수 있게 한 것을 특징으로 하는 음성인식 방법.
  35. 제 34 항에 있어서, 상술한 것과 같이 측정된 적어도 하나의 주파수 영역 특성과 다수의 표준 주파수 영역 특성은 크로매틱 스케일로 표현되는 것을 특징으로 하는 음성인식 방법.
KR1019980707199A 1996-03-11 1996-03-11 불특정 화자에 대한 실시간 음성인식 시스템 및 이것의 방법 KR19990087730A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1996/003140 WO1997034293A1 (en) 1996-03-11 1996-03-11 User independent, real-time speech recognition system and method

Publications (1)

Publication Number Publication Date
KR19990087730A true KR19990087730A (ko) 1999-12-27

Family

ID=22254816

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980707199A KR19990087730A (ko) 1996-03-11 1996-03-11 불특정 화자에 대한 실시간 음성인식 시스템 및 이것의 방법

Country Status (8)

Country Link
EP (1) EP0886854B1 (ko)
JP (1) JP2000506995A (ko)
KR (1) KR19990087730A (ko)
AT (1) ATE378673T1 (ko)
AU (1) AU5359196A (ko)
DE (1) DE69637326D1 (ko)
ES (1) ES2297839T3 (ko)
WO (1) WO1997034293A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100707727B1 (ko) * 2004-07-15 2007-04-16 주식회사 현원 휴대용 파일 재생기

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003280684A (ja) * 2002-03-25 2003-10-02 Electronic Navigation Research Institute カオス論的診断感度増感装置
RU2466468C1 (ru) * 2011-06-30 2012-11-10 Даниил Александрович Кочаров Система и способ распознавания речи

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3969972A (en) * 1975-04-02 1976-07-20 Bryant Robert L Music activated chromatic roulette generator
US4181813A (en) * 1978-05-08 1980-01-01 John Marley System and method for speech recognition
US4817154A (en) * 1986-12-09 1989-03-28 Ncr Corporation Method and apparatus for encoding and decoding speech signal primary information
US4852170A (en) * 1986-12-18 1989-07-25 R & D Associates Real time computer speech recognition system
US5027410A (en) * 1988-11-10 1991-06-25 Wisconsin Alumni Research Foundation Adaptive, programmable signal processing and filtering for hearing aids

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100707727B1 (ko) * 2004-07-15 2007-04-16 주식회사 현원 휴대용 파일 재생기

Also Published As

Publication number Publication date
EP0886854A4 (en) 1999-09-22
WO1997034293A1 (en) 1997-09-18
EP0886854B1 (en) 2007-11-14
JP2000506995A (ja) 2000-06-06
ES2297839T3 (es) 2008-05-01
EP0886854A1 (en) 1998-12-30
AU5359196A (en) 1997-10-01
DE69637326D1 (de) 2007-12-27
ATE378673T1 (de) 2007-11-15

Similar Documents

Publication Publication Date Title
US5873062A (en) User independent, real-time speech recognition system and method
US10410623B2 (en) Method and system for generating advanced feature discrimination vectors for use in speech recognition
US5758023A (en) Multi-language speech recognition system
JP3055691B2 (ja) 音声認識装置
Vergin et al. Generalized mel frequency cepstral coefficients for large-vocabulary speaker-independent continuous-speech recognition
JP3162994B2 (ja) 音声のワードを認識する方法及び音声のワードを識別するシステム
US6553342B1 (en) Tone based speech recognition
Nwe et al. Detection of stress and emotion in speech using traditional and FFT based log energy features
US20010010039A1 (en) Method and apparatus for mandarin chinese speech recognition by using initial/final phoneme similarity vector
Arslan et al. Frequency characteristics of foreign accented speech
Pao et al. Combining acoustic features for improved emotion recognition in mandarin speech
KR101560833B1 (ko) 음성 신호를 이용한 감정 인식 장치 및 방법
Hasija et al. Recognition of Children Punjabi Speech using Tonal Non-Tonal Classifier
KR100391123B1 (ko) 피치 단위 데이터 분석을 이용한 음성인식 방법 및 시스템
KR19990087730A (ko) 불특정 화자에 대한 실시간 음성인식 시스템 및 이것의 방법
RU2763124C1 (ru) Способ дикторонезависимого распознавания фонемы в речевом сигнале
JPH1097269A (ja) 音声検出装置及び方法
KR100393196B1 (ko) 음성인식장치및방법
Patro et al. Statistical feature evaluation for classification of stressed speech
Kaminski Developing A Knowledge-Base Of Phonetic Rules
JPH03120434A (ja) 音声認識装置
Gayvert et al. ESPRIT: A signal processing environment with a visual programming interface
Yunik et al. Microcomputer system for analysis of the verbal behavior of patients with neurological and laryngeal diseases
JPH0451039B2 (ko)
Delmege et al. Effects of tree structure and statistical methods on broad phonetic classification

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application