JPH06348452A - 話されたコマンドを認識する対話式コンピュータ・システム - Google Patents

話されたコマンドを認識する対話式コンピュータ・システム

Info

Publication number
JPH06348452A
JPH06348452A JP6050064A JP5006494A JPH06348452A JP H06348452 A JPH06348452 A JP H06348452A JP 6050064 A JP6050064 A JP 6050064A JP 5006494 A JP5006494 A JP 5006494A JP H06348452 A JPH06348452 A JP H06348452A
Authority
JP
Japan
Prior art keywords
active
vocabulary
command
state
acoustic
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP6050064A
Other languages
English (en)
Other versions
JP2856671B2 (ja
Inventor
Joseph C Andreshak
ジョセフ・チャールズ・アンダーシャック
Gregg H Daggett
グレッグ・エイチ・ダゲット
John Karat
ジョン・カラット
John Lucassen
ジョン・ルカッセン
Stephen E Levy
ステファン・エリック・レビィ
Robert L Mack
ロバート・ローレンス・マック
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06348452A publication Critical patent/JPH06348452A/ja
Application granted granted Critical
Publication of JP2856671B2 publication Critical patent/JP2856671B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Selective Calling Equipment (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 発話を目標コンピュータ・プログラム用のコ
マンド信号に変換する。 【構成】 第1時限間に発生する第1活動状態イメージ
に表示される1つのオブジェクトを識別し、該オブジェ
クトから、目標コンピュータ・プログラムの第1活動状
態で実行できる機能を識別する1つ又は複数の第1活動
状態コマンドのリストを生成する。第1活動状態の音響
コマンド・モデルの第1活動状態語彙に、システム語彙
からの、第1活動状態コマンドを表す音響コマンド・モ
デルが含まれ、第1時限の連続した時間間隔の間に発話
の1つの特徴の値を測定し、特徴信号を第1活動状態語
彙の音響コマンド・モデルと比較して、その発話と各音
響コマンド・モデルとの一致スコアを生成する。音声認
識機構が、第1活動状態語彙からのコマンド・モデルの
うちで最高の一致スコアに対応するコマンド信号を出力
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、使用者が入力装置によ
って、コンピュータ・システム上で実行中の目標コンピ
ュータ・プログラムにコマンドを供給する対話式コンピ
ュータ・システムに関する。この入力装置は、たとえ
ば、キーボード、マウス装置または音声認識機構(本明
細書で使用する用語「音声認識機構」は、ハードウェア
だけではなく、ソフトウェアをも含むものとして広義に
解釈されたい)とすることができる。入力装置ごとに、
その入力装置の生成した入力信号を、目標コンピュータ
・プログラムによって使用できる形態に変換する。
【0002】
【従来の技術】使用者がコマンドを話すことによってコ
マンドを供給できる対話式コンピュータ・システムは、
目標コンピュータ・プログラムによって実行できる機能
を識別するコマンドを有する目標コンピュータ・プログ
ラムを実行するプロセッサから構成できる。このコンピ
ュータ・システムにはさらに、話されたコマンドを認識
し、認識されたコマンドに対応するコマンド信号を出力
するための音声認識機構が含まれる。音声認識機構は、
一連の連続した時間間隔のそれぞれの間に発話の少なく
とも1つの特徴の値を測定して、一連の特徴信号を作
り、測定された特徴信号を複数の音響コマンド・モデル
のそれぞれと比較して、その発話と各音響コマンド・モ
デルの一致スコアを生成し、最高の一致スコアを有する
コマンド・モデルに対応するコマンド信号を出力するこ
とによって、話されたコマンドを認識する。
【0003】音声認識機構が認識できる発話モデルとそ
の発話モデルによって表現される単語の組を、システム
語彙と称する。システム語彙は有限であり、たとえば、
1発話モデルから数千の発話モデルにおよぶ可能性があ
る。各発話モデルは1単語を表しても、連続して(単語
の間に休止をおかないで)話される2つ以上の単語の組
合せを表してもよい。
【0004】システム語彙には、たとえば、目標コンピ
ュータ・プログラムが応答できるコマンドのすべての発
話モデルが含まれてよい。しかし、発話モデルの数が増
えるにつれて、システム語彙全体を使用して発話認識を
実行するのに必要な時間が増え、認識精度が下がる。
【0005】一般に、目標コンピュータ・プログラム
は、一連の時限にわたって発生する一連の活動状態を有
する。活動状態ごとに、その活動状態で実行できる機能
を識別する活動コマンドのリストがあってよい。活動コ
マンドは、システム語彙の小さなサブセットである場合
がある。目標コンピュータ・プログラムによって使用可
能な形態への発話されたコマンドの変換は、目標コンピ
ュータ・プログラムの状態によって異なる可能性があ
る。
【0006】音声認識機構の速度と精度を改良するため
には、音声認識機構が所与の時限内に認識できる発話モ
デルの活動語彙を、その時限内に目標コンピュータ・プ
ログラムによって実行できる機能を識別する活動コマン
ドに制限することが望ましい。この結果を得ようとし
て、活動状態を複写し、目標コンピュータ・プログラム
の活動状態の間で遷移する有限状態機械を、音声認識機
構に設ける場合がある。
【0007】実際には、活動状態を正確に複写し、目標
コンピュータ・プログラムの活動状態の間で遷移する、
音声認識機構用の有限状態を作ることは、不可能である
ことがわかっている。目標コンピュータ・プログラム
は、使用者と対話するだけではなく、前もって状態を知
ることのできないコンピュータ・システムのデータや他
の装置とも対話する。
【0008】たとえば、ファイルをロードするコマンド
は、そのファイルが存在するならばコンピュータ・プロ
グラムにある状態への遷移を起こさせ、そのファイルが
存在しない場合には異なる状態への遷移を起こさせる。
しかし、音声認識機構の有限状態機械は、ファイルが存
在するまたは存在しないという何らかの前提を設けて作
成しなければならない。ファイルをロードするコマンド
が、音声認識機構を使用するコンピュータ・プログラム
に話された場合、音声認識機構の有限状態機械は、その
ファイルが存在するか否かによって、コンピュータ・プ
ログラムの状態を正確に追跡できたりできなかったりす
る。音声認識機構の有限状態機械が、ファイルが存在す
ることを前提にしているが、実際にはそのファイルが存
在しない場合、その音声認識機構の状態機械は、目標コ
ンピュータ・プログラムの状態と異なる状態に入る。そ
の結果、目標コンピュータ・プログラムは、この音声認
識機構から有効な入力を受け取れなくなる。
【0009】
【発明が解決しようとする課題】本発明の目的は、一連
の時限にわたって発生する一連の活動プログラム状態を
有する目標コンピュータ・プログラムを有し、可能なす
べての状況で発生する目標コンピュータ・プログラムの
状態とその状態の間の遷移を前もって予測する必要なし
に、所与の時限の間に音声認識機構によって認識される
コマンドの活動語彙が、その所与の時限に目標コンピュ
ータ・プログラムによって実行できる機能を識別する活
動コマンドのリストに制限される音声認識機構を有す
る、対話式コンピュータ・システムを提供することであ
る。
【0010】
【課題を解決するための手段】本発明によれば、対話式
コンピュータ・システムに、一連の時限にわたって発生
する一連の活動プログラム状態を有する目標コンピュー
タ・プログラムを実行するプロセッサが含まれる。目標
コンピュータ・プログラムは、時限のそれぞれの間に発
生する目標コンピュータ・プログラムの活動状態の活動
状態イメージを表現する活動状態イメージ・データ信号
を生成する。活動状態イメージのそれぞれに、1つまた
は複数のオブジェクトが含まれる。
【0011】この対話式コンピュータ・システムには、
さらに、第1時限の間に発生する第1活動状態の第1活
動状態イメージを少なくとも表示するための手段が含ま
れる。第1活動状態イメージに表示される少なくとも1
つのオブジェクトを識別し、識別されたオブジェクトか
ら、目標コンピュータ・プログラムの第1活動状態で実
行できる機能を識別する1つまたは複数の第1活動状態
コマンドのリストを生成するための手段を設ける。
【0012】また、音響コマンド・モデルのシステム語
彙を記憶するための手段を設ける。音響コマンド・モデ
ルのそれぞれは、その音響コマンド・モデルに関連する
1つまたは複数の単語の発話を表す音響特徴値の1つま
たは複数の連なりを表す。このシステムには、さらに、
第1活動状態に関して音響コマンド・モデルの第1活動
状態語彙を識別するための手段が含まれる。第1活動状
態語彙には、システム語彙からの、第1活動状態コマン
ドを表す音響コマンド・モデルが含まれる。
【0013】この対話式コンピュータ・システムには、
一連の特徴信号を作るため、第1時限の中の一連の連続
した時間間隔のそれぞれの間に発話の少なくとも1つの
特徴の値を測定するための音声認識機構が含まれる。音
声認識機構は測定された特徴信号を、第1活動状態語彙
の音響コマンド・モデルのそれぞれと比較して、その発
話と各音響コマンド・モデルの一致スコアを生成する。
その後、音声認識機構は、第1活動状態語彙からのコマ
ンド・モデルのうちで最高の一致スコアを有するものに
対応するコマンド信号を出力する。
【0014】第1活動状態語彙には、システム語彙から
の音響コマンド・モデルのすべてよりもかなり少ない音
響コマンド・モデルが含まれることが好ましい。音声認
識機構は第1時限の間に測定された特徴信号を、第1活
動状態語彙に含まれない音響コマンド・モデルと比較し
ない。
【0015】本発明による対話式コンピュータ・システ
ムの1実施例では、表示手段が、少なくとも、第1時限
と異なる第2時限の間に発生する第2活動状態に関し
て、第1活動状態イメージと異なる第2活動状態イメー
ジを表示する。オブジェクト識別手段が第2活動状態イ
メージに表示される少なくとも1つのオブジェクトを識
別し、目標コンピュータ・プログラムの第2活動状態で
実行できる機能を識別する1つまたは複数の第2活動状
態コマンドのリストを生成する。
【0016】活動状態語彙識別手段は、第2活動状態の
間に、音響コマンド・モデルの第2活動状態語彙を識別
する。第2活動状態語彙には、システム語彙からの、第
2活動状態コマンドを表す音響コマンド・モデルが含ま
れる。第2活動状態語彙は、少なくとも部分的に、第1
活動状態語彙と異なる。
【0017】音声認識機構は第2時限の中の一連の連続
した時間間隔のそれぞれの間に発話の少なくとも1つの
特徴の値を測定して、一連の特徴信号を作る。音声認識
機構は第2時限の間に測定された特徴信号を、第2活動
状態語彙に含まれる音響コマンド・モデルのそれぞれと
比較して、発話と各音響モデルの一致スコアを生成す
る。その後、音声認識機構は、第2活動状態語彙からの
コマンド・モデルのうちで最高の一致スコアを有するも
のに対応するコマンド信号を出力する。
【0018】目標コンピュータ・プログラムは、たとえ
ば、時限のそれぞれの間に発生する活動状態を1つだけ
有してよい。目標コンピュータ・プログラムには、オペ
レーティング・システム・プログラムだけ、1つのアプ
リケーション・プログラムとオペレーティング・システ
ム・プログラムの組合せ、または、2つ以上のアプリケ
ーション・プログラムとオペレーティング・システム・
プログラムが含まれる。
【0019】活動状態のコマンドのうちの少なくともい
くつかが、その状態の活動状態イメージで識別されたオ
ブジェクトに対して実行できる機能を識別する。
【0020】活動状態イメージ内で識別されるオブジェ
クトには、たとえば、文字、単語、アイコン、ボタン、
スクロール・バー、スライダ、リスト・ボックス、メニ
ュー、チェック・ボックス、コンテナまたはノートのう
ちの1つまたは複数が含まれる。
【0021】本発明の代替実施例では、音声認識機構
が、活動状態語彙からのコマンド・モデルのうちで所与
の時限に関する最高の一致スコアを有する複数のコマン
ド・モデルに対応する2つ以上のコマンド信号を出力で
きる。
【0022】活動状態ごとの音響コマンド・モデルの語
彙に、さらに、目標コンピュータ・プログラムのどの活
動状態でも実行できる機能を識別する大域コマンドを表
す大域音響コマンド・モデルの組を含めることができ
る。
【0023】表示手段には、たとえば、陰極線管表示装
置、液晶表示装置またはプリンタが含まれる。
【0024】表示手段はある時限の間に発生する活動状
態の活動状態イメージと、その時限の間には発生しない
プログラム状態の1つまたは複数のイメージの少なくと
も一部の両方を表示できる。
【0025】本発明によるコンピュータ対話の方法に
は、一連の時限にわたって発生する一連の活動プログラ
ム状態を有する目標コンピュータ・プログラムを、プロ
セッサ上で実行することが含まれる。目標コンピュータ
・プログラムは、それぞれの時限の間に発生する目標コ
ンピュータ・プログラムの活動状態の活動状態イメージ
を表す活動状態イメージ・データ信号を生成する。活動
状態イメージのそれぞれに、1つまたは複数のオブジェ
クトが含まれる。この方法にはさらに、第1時限の間に
発生する第1活動状態の間に少なくとも第1活動状態イ
メージを表示することが含まれる。第1活動状態イメー
ジに表示される少なくとも1つのオブジェクトを識別
し、目標コンピュータ・プログラムの第1活動状態で実
行できる機能を識別する1つまたは複数の第1活動状態
コマンドのリストを、識別されたオブジェクトから生成
する。
【0026】音響コマンド・モデルのシステム語彙を記
憶する。音響コマンド・モデルのそれぞれは、その音響
コマンド・モデルに関連する1つまたは複数の単語の発
話を表す音響特徴値の1つまたは複数の連なりを表す。
第1活動状態に関する音響コマンド・モデルの第1活動
状態語彙を識別する。第1活動状態語彙には、システム
語彙からの音響コマンド・モデルのうちで第1活動状態
コマンドを表すものが含まれる。
【0027】ある発話の少なくとも1つの特徴の値を、
第1時限の中の一連の連続した時間間隔のそれぞれの間
に測定して、一連の特徴信号を作る。測定された特徴信
号を、第1活動状態語彙の音響コマンド・モデルのそれ
ぞれと比較して、その発話と各音響コマンド・モデルの
一致スコアを生成する。第1活動状態語彙からのコマン
ド・モデルのうちで最高の一致スコアを有するものに対
応するコマンド信号を出力する。
【0028】目標コンピュータ・プログラムの活動状態
イメージに表示される少なくとも1つのオブジェクトを
識別し、識別されたオブジェクトから、目標コンピュー
タ・プログラムの活動状態で実行できる機能を識別する
1つまたは複数の活動状態コマンドのリストを生成する
ことによって、可能なすべての状況で発生する目標コン
ピュータ・プログラムの状態とその状態の間の遷移を前
もって予測する必要なしに、音声認識機構の活動状態語
彙を、活動状態コマンドを表すシステム語彙の小さなサ
ブセットに制限することができる。
【0029】
【実施例】図1は、本発明による対話式コンピュータ・
システムの例を示すブロック図である。この対話式コン
ピュータ・システムには、一連の時限にわたって発生す
る一連の活動プログラム状態を有する目標コンピュータ
・プログラムを実行するプロセッサ10が含まれる。目
標コンピュータ・プログラムは、各時限の間に発生する
目標コンピュータ・プログラムの活動状態の活動状態イ
メージを表す活動状態イメージ・データ信号を生成す
る。活動状態イメージのそれぞれに、1つまたは複数の
オブジェクトが含まれる。
【0030】プロセッサは、たとえば、パーソナル・コ
ンピュータ、コンピュータ・ワークステーション、また
は他のマイクロコンピュータ、ミニコンピュータもしく
はメインフレーム・コンピュータとすることができる。
【0031】目標コンピュータ・プログラムは、DO
S、Microsoft Windows(商標)、O
S/2(商標)、AIX (商標)、UNIX(商
標)、X−Windowまたは他のオペレーティング・
システムとすることができる。目標コンピュータ・プロ
グラムに、あるオペレーティング・システム・プログラ
ムと共に実行される1つまたは複数のアプリケーション
・プログラムを含めてよい。アプリケーション・プログ
ラムには、スプレッドシート・プログラム、ワード・プ
ロセッシング・プログラム、データベース・プログラ
ム、教育プログラム、リクリエーション・プログラム、
通信プログラムその他多数が含まれる。
【0032】活動状態イメージのオブジェクトには、文
字、単語、アイコン、ボタン、スクロール・バー、スラ
イダ、リスト・ボックス、メニュー、チェック・ボック
ス、コンテナ、ノートまたは他の項目のうちの1つまた
は複数が含まれる。
【0033】この対話式コンピュータ・システムには、
さらに、表示手段12が含まれ、この表示手段12は、
少なくとも第1時限の間に発生する第1活動状態の第1
活動状態イメージを表示するためのものである。表示手
段は、たとえば、陰極線管表示装置、液晶表示装置また
はプリンタとすることができる。
【0034】図2は、第1時限の間に発生する第1活動
状態の仮定の第1活動状態イメージの例を示す図であ
る。この例では、活動状態イメージに、タイトル・バー
・オブジェクト16、メニュー・バー・オブジェクト1
8、リスト・ボックス・オブジェクト20および押しボ
タン・オブジェクト22を含むフレーム・オブジェクト
14が含まれる。メニュー・バー・オブジェクト18に
は、「items(項目)」オブジェクト、「opti
ons(オプション)」オブジェクトおよび「exit
(終了)」オブジェクトが含まれる。リスト・ボックス
・オブジェクト20には、垂直スクロール・バー・オブ
ジェクト24と、「blue(青)」、「green
(緑)」、「red(赤)」、「orange
(橙)」、「black(黒)」、「white
(白)」および「purple(紫)」のオブジェクト
が含まれる。リスト・ボックス・オブジェクト20内に
は、図2では「blue」、「green」、「re
d」、「orange」および「black」のオブジ
ェクトだけが示されている。「white」オブジェク
トと「purple」オブジェクトは、このリスト・ボ
ックスに含まれており、垂直スクロール・バー・オブジ
ェクト24を用いてスクロールすることで表示できる。
【0035】活動状態イメージ・データ信号は、たとえ
ばオペレーティング・システムの割込み、機能呼出しま
たはアプリケーション・プログラム・インターフェース
呼出しを使用することによって、目標コンピュータ・プ
ログラムによって生成できる。
【0036】下の例Iに、活動状態イメージ・データ信
号を作成するためのCプログラミング言語のソース・コ
ードを示す。
【0037】図1に戻って、この対話式コンピュータ・
システムには、さらに、第1活動状態イメージに表示さ
れる少なくとも1つのオブジェクトを識別し、識別され
たオブジェクトから、目標コンピュータ・プログラムの
第1活動状態で実行できる機能を識別する1つまたは複
数の第1活動状態コマンドのリストを生成するための、
イメージ・オブジェクト識別機能26が含まれる。
【0038】イメージ・オブジェクト識別機能26に
は、オペレーティング・システムの機能呼出しと1つま
たは複数の目標コンピュータ・プログラムが提供するア
プリケーション・プログラム・インターフェースをイン
ターセプト(フック)するように設計されたコンピュー
タ・プログラム・サブルーチンを含めることができ、ま
た、オペレーティング・システムの割込み、機能呼出し
またはアプリケーション・プログラム・インターフェー
ス呼出しを使用して、目標コンピュータ・プログラムの
第1活動状態イメージに表示されるオブジェクトを識別
するためのコンピュータ・プログラム・サブルーチンを
含めることもできる。下の例IIに、活動状態イメージ
に表示される少なくとも1つのオブジェクトを識別する
ためのCプログラミング言語のソース・コードを示す。
【0039】表1は、図2の第1活動状態イメージに表
示されたオブジェクトに関して、目標コンピュータ・プ
ログラムの第1活動状態で実行することのできる機能を
識別する第1活動状態コマンドのリストの仮定の例を示
す表である。
【0040】
【表1】 話された オブジェクト コマンド 機能 Frame FRAME フォーカスをフレーム全体に変更する TOP BORDER 移動するフレーム要素を識別する BOTTOM BORDER 移動するフレーム要素を識別する LEFT BORDER 移動するフレーム要素を識別する RIGHT BORDER 移動するフレーム要素を識別する LEFT フレームまたはフレーム要素を左に移動する RIGHT フレームまたはフレーム要素を右に移動する UP フレームまたはフレーム要素を上に移動する DOWN フレームまたはフレーム要素を下に移動する Title Bar none なし Menu Bar CLOSE MENU メニューを隠す MENU フォーカスをメニュー・バーに変更する SELECT カーソル位置にある項目を選択する "ITEMS" ITEMS 「ITEMS」メニューを活動化する "COLORS" COLORS 「COLORS」メニューを活動化する "NAMES" NAMES 「NAMES」メニューを活動化する "ADDRESSES" ADDRESSES 「ADDRESSES」メニューを活動化す る "OPTIONS" OPTIONS オプション選択用のダイアログを活動化する "EXIT" EXIT 現在のプログラム状態を終了する CANCEL ポップアップ・メニューを隠す System menu CLOSE MENU メニューを隠す MENU 別のメニューがあれば、フォーカスをそのメ ニューに変更する SELECT カーソル位置にある項目を選択する RESTORE ウィンドウを前のサイズと位置に復元する MINIMIZE ウィンドウを最小サイズに縮小する MAXIMIZE ウィンドウを最大サイズに拡大する CLOSE 現在のプログラム状態を終了する WINDOW LISTS 走行中のプログラムのリストを表示する Vertical Scroll Bar SCROLL BAR スクロール・バーにフォーカスをセットする UP リスト・ボックスの表示を上に移動する DOWN リスト・ボックスの表示を下に移動する TOP リスト・ボックスの一番上の表示対象に移動 する BOTTOM リスト・ボックスの一番下の表示対象に移動 する PAGE UP リスト・ボックスの表示を1ページ上に移動 する PAGE DOWN リスト・ボックスの表示を1ページ下に移動 する Push Button PRESS 押しボタンを実行する PUSH BUTTON 押しボタンを実行する "HELP" HELP ヘルプ機能を実行する List Box LIST BOX フォーカスをリスト・ボックスに変更する "BLUE" BLUE その名前の色を選択する "GREEN" GREEN その名前の色を選択する "RED" RED その名前の色を選択する "ORANGE" ORANGE その名前の色を選択する "BLACK" BLACK その名前の色を選択する "WHITE" WHITE その名前の色を選択する "PURPLE" PURPLE その名前の色を選択する
【0041】表1の例からわかるように、各オブジェク
トは、目標コンピュータ・プログラムの第1活動状態で
実行できる機能を識別する0個またはそれ以上のコマン
ドを有する。少なくともいくつかのコマンドが、その状
態の活動状態イメージで識別されたオブジェクトに対し
て実行できる機能を識別する。たとえば、コマンド「F
RAME」によって、フォーカスが図2のフレーム・オ
ブジェクト14全体に変更される。フレーム・オブジェ
クト14全体にフォーカスがある状態で、コマンド「L
EFT」を話すと、そのフレーム・オブジェクトが表示
画面の左に移動される。
【0042】もう一度図1に戻ると、この対話式コンピ
ュータ・システムには、音響コマンド・モデルのシステ
ム語彙を記憶するためのシステム音響コマンド・モデル
語彙記憶域28が含まれる。音響コマンド・モデルのそ
れぞれは、その音響コマンド・モデルに関連する1つま
たは複数の単語の発話を表す音響特徴値の1つまたは複
数の連なりを表す。
【0043】記憶される音響コマンド・モデルは、たと
えば、マルコフ・モデルまたは他の動的プログラミング
・モデルとすることができる。音響コマンド・モデルの
パラメータは、たとえばforward−backwo
rdアルゴリズムによって得られるパラメータの平滑化
によって、既知の発話トレーニング・テキスト(たとえ
ば257文)から評価できる(たとえば、Jeline
k著"Continuous Speech Reco
gnition By Statistical Me
thods」、Proceedings of the
IEEE、Volume 64、No.4、1976
年4月、532−536ページを参照されたい)。
【0044】音響コマンド・モデルのそれぞれが、分離
して話された(すなわち、前後の発話の文脈から独立
な)コマンドを表すことが好ましい。文脈独立の音響コ
マンド・モデルは、たとえば、音素のモデルから手動で
作るか、たとえば米国特許4759068号明細書に記
載の方法もしくは他の既知の文脈独立モデルを生成する
方法によって自動的に作ることができる。
【0045】その代わりに、コマンドの発話を文脈依存
カテゴリにグループ化することによって、文脈独立モデ
ルから文脈依存モデルを作ることができる。文脈は、た
とえば、手動で選択するか、コマンドに対応する特徴信
号のそれぞれにその文脈を用いてタグを付け、その文脈
に従って特徴信号をグループ化して、選択された評価関
数を最適化することによって、自動的に選択できる(た
とえば、米国特許第5195167号明細書を参照され
たい)。
【0046】図1のブロック図からわかるように、この
対話式コンピュータ・システムには、第1活動状態の音
響コマンド・モデルの第1活動状態語彙を識別するため
の、活動状態コマンド・モデル語彙識別機能30が含ま
れる。第1活動状態語彙には、システム音響コマンド・
モデル語彙記憶域28からの音響コマンド・モデルのう
ち、イメージ・オブジェクト識別機能26からの第1活
動状態コマンドを表すものが含まれる。下の例III
に、活動状態語彙を識別するためのC言語のソース・コ
ードを示す。下の例IVに、音声認識機構に対して活動
状態語彙を定義するためのC言語のソース・コードを示
す。
【0047】活動状態語彙には、システム語彙の音響コ
マンド・モデルのすべてよりもかなり少ない音響コマン
ド・モデルが含まれることが好ましい。たとえば、活動
状態語彙のそれぞれに、50ないし200個のコマンド
を含めることができる。システム・コマンド語彙全体に
は、500ないし700またはそれ以上のコマンドが含
まれる可能性がある。音声認識機構は、ある時限の間に
測定された特徴信号を、その時限の活動状態語彙に含ま
れない音響コマンド・モデルと比較しない。
【0048】音声認識機構32は、第1時限の中の一連
の連続した時間間隔のそれぞれの間に発話の少なくとも
1つの特徴の値を測定して、一連の特徴信号を作る。音
声認識機構32は測定された特徴信号を、第1活動状態
語彙の音響コマンド・モデルのそれぞれと比較して、そ
の発話と各音響コマンド・モデルの一致スコアを生成す
る。その後、音声認識機構32は、第1活動状態語彙か
らのコマンド・モデルのうちで最高の一致スコアを有す
るものに対応するコマンド信号を出力する。
【0049】下の例Vは、活動状態語彙からのコマンド
・モデルのうちで最高の一致スコアを有するものに対応
するコマンド信号を出力するためのC言語のソース・コ
ードである。
【0050】図3は、本発明による対話式コンピュータ
・システムのための音声認識機構の例を示すブロック図
である。この例では、音声認識機構32に、システム音
響コマンド・モデル語彙記憶域28からの音響コマンド
・モデルのうち、活動状態コマンド・モデル語彙識別機
能30で識別された活動状態コマンドを表す音響コマン
ド・モデルを含む活動状態語彙を記憶するための活動状
態音響コマンド・モデル記憶域34が含まれる。
【0051】音声認識機構32には、さらに、一連の特
徴信号を作るため活動状態時限のそれぞれの中の一連の
連続した時間間隔のそれぞれの間に発話の少なくとも1
つの特徴の値を測定するための音響プロセッサ36が含
まれる。音響一致スコア・プロセッサ38が音響プロセ
ッサ36からの測定された特徴信号を、活動状態音響コ
マンド・モデル記憶域34の音響コマンド・モデルのそ
れぞれと比較して、その発話と各音響コマンド・モデル
の一致スコアを生成する。出力40は、活動状態語彙か
らのコマンド・モデルのうちで所与の時限に関して最高
のスコアを有するコマンド・モデルに対応する1つまた
は複数のコマンド信号を出力する。
【0052】第1活動状態語彙からのコマンド・モデル
のうちで最高のスコアを有するコマンド・モデルに対応
する1つのコマンド信号だけを出力することが好まし
い。この場合、その唯一の出力コマンドを、即座に実行
できる。活動状態語彙からのコマンド・モデルのうちで
所与の時限に関して最高のスコアを有するコマンド・モ
デルに対応する2つ以上のコマンド信号を出力する場
合、実行されるコマンドをユーザが選択できるように、
認識されたコマンド群を表示することができる。
【0053】音声認識機構は、IBM Voice T
ype II(商標)やIBM Speech Ser
ver Series(商標)など、一般に入手可能な
製品とすることができる。高速音響一致と詳細音響一致
を含む製品では、両方の音響一致を本発明に使用でき
る。あるいは、イメージ・オブジェクト識別機能26と
活動状態コマンド・モデル語彙識別機能30が、音響一
致のためにシステム音響コマンド・モデル語彙記憶域2
8の小さなサブセットだけを選択するので、高速音響一
致を省略することもできる。
【0054】言語モデルを含む音声認識製品では、その
言語モデルを省略できる。その代わりに、活動状態語彙
のすべての単語に、同じ値の言語モデル確率を割り当て
ることができる。
【0055】複数単語仮説を生成するための仮説検索ア
ルゴリズムを有する音声認識機構製品では、ある単語の
認識が、連続した単語の認識に部分的に依存する。この
ような仮説検索アルゴリズムは、各コマンドが連続した
コマンドと独立であることが好ましい本発明と共に使用
する必要がない。
【0056】目標コンピュータ・プログラムと音声認識
機構の両方を、同一の中央処理装置で時分割式に実行す
ることが好ましい。あるいは、目標コンピュータ・プロ
グラムと音声認識機構を、たとえばクライアント・サー
バ・アーキテクチャを使用して、異なる中央処理装置で
実行することもできる。
【0057】本発明による対話式コンピュータ・システ
ムでは、表示手段が、さらに、少なくとも第2活動状態
イメージを表示でき、この第2活動状態イメージは、第
1活動状態イメージと異なり、第1時限と異なる第2時
限の間に発生する第2活動状態に対応する。
【0058】図4は、目標コンピュータ・プログラムの
第2活動状態の第2活動状態イメージの例を示す図であ
る。図4に示された第2活動状態イメージには、フレー
ム・オブジェクト42、タイトル・バー・オブジェクト
44、システム・メニュー・オブジェクト46、垂直ス
クロール・バー・オブジェクト48、水平スクロール・
バー・オブジェクト50およびコンテナ・オブジェクト
52が含まれる。コンテナ・オブジェクト52には、
「editor(エディタ)」オブジェクト、「pho
ne book(電話帳)」オブジェクト、「spre
adsheet(スプレッドシート)」オブジェクト、
「mail(メール)」オブジェクトおよび「soli
taire(ソリティア)」オブジェクトが含まれる。
【0059】オブジェクト識別手段は、第2活動状態イ
メージに表示された少なくとも1つのオブジェクトを識
別し、識別されたオブジェクトから、目標コンピュータ
・プログラムの第2活動状態で実行できる機能を識別す
る1つまたは複数の第2活動状態コマンドのリストを生
成する。
【0060】表2は、目標コンピュータ・プログラムの
第2活動状態で実行できる機能を識別する、図4に示さ
れたオブジェクトごとのコマンドの仮定のリストの例で
ある。
【0061】
【表2】 話された オブジェクト コマンド 機能 Frame FRAME フォーカスをフレーム全体に移動する TOP BORDER 移動するフレーム要素を識別する BOTTOM BORDER 移動するフレーム要素を識別する LEFT BORDER 移動するフレーム要素を識別する RIGHT BORDER 移動するフレーム要素を識別する LEFT フレームまたはフレーム要素を左に移動する RIGHT フレームまたはフレーム要素を右に移動する UP フレームまたはフレーム要素を上に移動する DOWN フレームまたはフレーム要素を下に移動する Title Bar none なし System Menu CLOSE MENU メニューを隠す MENU 別のメニューがあれば、フォーカスをそのメ ニューに変更する SELECT カーソル位置にある項目を選択する RESTORE ウィンドウを前のサイズと位置に復元する MINIMIZE ウィンドウを最小サイズに縮小する MAXIMIZE ウィンドウを最大サイズに拡大する CLOSE 現在のプログラム状態を終了する WINDOW LIST 走行中のプログラムのリストを表示する Vertical Scroll Bar SCROLL BAR 次のスクロール・バーにフォーカスをセット する UP コンテナの表示を上に移動する DOWN コンテナの表示を下に移動する TOP コンテナの一番上の表示対象に移動する BOTTOM コンテナの一番下の表示対象に移動する PAGE UP コンテナの表示を1ページ上に移動する PAGE DOWN コンテナの表示を1ページ下に移動する Horizontal Scroll Bar SCROLL BAR 次のスクロール・バーにフォーカスをセット する LEFT コンテナの表示を左に移動する RIGHT コンテナの表示を右に移動する EXTREME LEFT コンテナの一番左の表示対象に移動する EXTREME RIGHT コンテナの一番右の表示対象に移動する PAGE LEFT コンテナの表示を1ページ左に移動する PAGE RIGHT コンテナの表示を1ページ右に移動する Container CONTAINER フォーカスをコンテナに変更する SELECT ALL コンテナ内のすべてのプログラムを実行する Editor EDITOR Editorプログラムを実行する Phone Book PHONE BOOK Phone Bookプログラムを実行する Spreadsheet SPREADSHEET Spreadsheetプログラムを実行する Mail MAIL Mailプログラムを実行する Solitaire SOLITAIRE Solitaireプログラムを実行する
【0062】図2と図4を比較すると、第1活動状態イ
メージと第2活動状態イメージの間には、第1活動状態
イメージにはメニュー・バー・オブジェクト18、リス
ト・ボックス・オブジェクト20および押しボタン・オ
ブジェクト22があるが、第2活動状態イメージにはな
いという相違がある。垂直スクロール・バー・オブジェ
クト50と、editor、phone book、m
ail、spreadsheetおよびsolitai
reの各オブジェクトは、第2活動状態イメージにはあ
るが、第1活動状態イメージにはない。
【0063】活動状態語彙識別手段は、さらに、第2活
動状態の音響コマンド・モデルの第2活動状態語彙を識
別する。第2活動状態語彙には、システム語彙からの音
響コマンド・モデルのうちで第2活動状態コマンドを表
すものが含まれる。第2活動状態語彙は、少なくとも部
分的に第1活動状態語彙と異なる。
【0064】表1と表2を比較すると、第1活動状態語
彙には、表1にリストされた話されたコマンドが含まれ
る。第2活動状態語彙には、表2にリストされた話され
たコマンドが含まれる。この例では、表に示されるよう
に、第1活動状態語彙が、少なくとも部分的に第2活動
状態語彙と異なる。
【0065】音声認識機構は第2時限の中の一連の連続
した時間間隔のそれぞれの間に発話の少なくとも1つの
特徴の値を測定して、一連の特徴信号を作る。音声認識
機構は第2時限の間に測定された特徴信号を、第2活動
状態語彙の音響コマンド・モデルのそれぞれと比較し
て、その発話と各音響コマンド・モデルの一致スコアを
生成する。音声認識機構は、第2活動状態語彙からのコ
マンド・モデルのうちで最高のスコアを有するコマンド
・モデルに対応するコマンド信号を出力する。
【0066】目標コンピュータ・プログラムは時限の間
に発生する活動状態を、1時限ごとに1つだけ有するこ
とが好ましい。
【0067】図5は、図1のシステム音響コマンド・モ
デル語彙記憶域28の例を示すブロック図である。この
システム語彙には、たとえば、目標コンピュータ・プロ
グラムのすべての活動状態で実行できる機能を識別する
大域コマンドを表す大域音響コマンド・モデルの組を含
めることができる。
【0068】表3に、大域音響コマンド・モデルが表現
する大域コマンドの例をいくつかリストする。
【0069】
【表3】 大域コマンド 話された コマンド 機能 MICROPHONE OFF マイクロフォンをオフにする ENTER キーボード入力バッファにキーストローク「ENTER」を送 る LEET キーボード入力バッファにキーストローク「LEFT ARR OW(←)」を送る RIGHT キーボード入力バッファにキーストローク「RIGHT AR ROW(→)」を送る PASTE フォーカスのあるアプリケーションに、クリップボードの内容 を挿入する WINDOW LIST 走行中のプログラムのリストを表示する EDITOR editorプログラムを実行する DESK top デスク・トップ・ウィンドウをアクティブにする
【0070】システム語彙には、さらに、オブジェクト
の異なる型に関連するオブジェクト型の音響コマンド・
モデルを含めることができる。たとえば、表1と表2に
示されるように、フレーム・オブジェクト型の音響コマ
ンドに、「frame」、「top border」、
「bottom border」、「left bor
der」、「right border」、「lef
t」、「right」、「up」および「down」が
含まれる。垂直スクロール・バー・オブジェクト型の音
響コマンドには、「scroll bar」、「u
p」、「down」、「top」、「bottom」、
「page up」および「page down」が含
まれる。押しボタン・オブジェクト型の音響コマンド・
モデルには、「press」と「push butto
n」が含まれる。
【0071】最後に、システム語彙に、アプリケーショ
ン固有のオブジェクトを表すアプリケーション固有音響
コマンド・モデルが含まれる。表1と表2の例では、ア
プリケーション固有オブジェクトに、単語「ITEM
S」、「COLORS」、「NAMES」、「ADDR
ESSES」、「PHONE BOOK」、「SPRE
ADSHEET」、「MAIL」および「SOLITA
IRE」が含まれる。
【0072】図1の表示手段12は、ある時限の間に発
生する活動状態の活動状態イメージと、その時限の間に
発生しないプログラム状態の1つまたは複数のイメージ
の少なくとも一部の、両方を表示できる。
【0073】図3の音響プロセッサ36の1例を、図6
に示す。この音響プロセッサには、発話に対応するアナ
ログ電気信号を生成するためのマイクロフォン54が含
まれる。マイクロフォン54からのアナログ電気信号
は、アナログ・ディジタル変換器56によってディジタ
ル電気信号に変換される。この目的のために、このアナ
ログ信号はアナログ・ディジタル変換器56によって、
たとえば、20KHzの速度でサンプリングされる。
【0074】ウィンドウ・ジェネレータ58は、たとえ
ば、10ミリ秒(1センチ秒)ごとに、アナログ・ディ
ジタル変換器56からのディジタル信号の20ミリ秒の
持続時間を有するサンプルを取得する。たとえば、20
個の周波数帯域のそれぞれでのディジタル信号サンプル
の振幅を得るために、このディジタル信号の20ミリ秒
サンプルのそれぞれを、スペクトル・アナライザ60に
よって分析する。スペクトル・アナライザ60は、20
ミリ秒ディジタル信号サンプルの全振幅または全出力を
表す第21次元の信号も生成することが好ましい。スペ
クトル・アナライザ60は、たとえば高速フーリエ変換
プロセッサとすることができる。その代わりに、これが
20個の帯域フィルタであってもよい。
【0075】スペクトル・アナライザ60が作る21次
元ベクトルの信号は、適応式雑音キャンセル・プロセッ
サ62によって、暗騒音を除去するよう適合させること
ができる。適応式雑音キャンセル・プロセッサ62は、
適応式雑音キャンセル・プロセッサへ入力された特徴ベ
クトルF(t)から雑音ベクトルN(t)を減算して、
出力の特徴ベクトルF'(t)を作る。適応式雑音キャ
ンセル・プロセッサ62は、前の特徴ベクトルF(t−
1)が雑音または静粛として識別される時に、必ず雑音
ベクトルN(t)を周期的に更新することによって、変
化する雑音レベルに適応する。雑音ベクトルN(t)
は、次式に従って更新される。
【数1】
【0076】ここで、N(t)は、時刻tでの雑音ベク
トル、N(t−1)は、時刻(t−1)での雑音ベクト
ル、kは、適応式雑音キャンセル・モデルの定数係数、
F(t−1)は、時刻(t−1)に適応式雑音キャンセ
ル・プロセッサ62に入力された、雑音または静粛を表
す特徴ベクトル、Fp(t−1)は、特徴ベクトルF
(t−1)に最も近い、プロトタイプ記憶域64からの
静粛プロトタイプ・ベクトルまたは雑音プロトタイプ・
ベクトルである。
【0077】前の特徴ベクトルF(t−1)が雑音また
は静粛として認識されるのは、(a)そのベクトルの全
エネルギが閾値未満であるか、(b)適応プロトタイプ
・ベクトル記憶域66内でその特徴ベクトルに最も近い
プロトタイプ・ベクトルが、雑音または静粛を表すプロ
トタイプである場合である。特徴ベクトルの全エネルギ
を分析するという目的のため、この閾値は、たとえば、
評価中の特徴ベクトルの前の2秒間に作られたすべての
特徴ベクトル(音声と静粛の両方に対応する)の5パー
セント点とすることができる。
【0078】雑音キャンセルの後、入力音声の音量変化
を調節するため、短時間平均正規化プロセッサ68によ
って特徴ベクトルF'(t)を正規化する。短時間平均
正規化プロセッサ68は21次元の特徴ベクトルF'
(t)を正規化して、21次元の正規化特徴ベクトルX
(t)を作る。全振幅または全出力を表す特徴ベクトル
F'(t)の第21次元は捨てられる。時刻tの正規化
特徴ベクトルX(t)の成分iのそれぞれを、たとえば
対数領域で、次式によって与えることができる。
【数2】 Xi(t)=F'i(t)-Z(t) (2)
【0079】ここで、F'i(t)は時刻tでの正規化さ
れないベクトルのi番目の成分であり、Z(t)は下記
の式(3)と式(4)によるF'(t)の諸成分とZ
(t−1)の加重平均である。
【数3】 Z(t)=0.9Z(t-1)+0.lM(t) (3)
【0080】ここで、
【数4】
【0081】正規化された20次元の特徴ベクトルX
(t)を、適応ラベラー70によってさらに処理して、
音声の発音の変動に適合させることができる。適応化さ
れた20次元の特徴ベクトルX'(t)は、適応ラベラ
ー70の入力に供給された20次元の特徴ベクトルX
(t)から20次元の適応ベクトルA(t)を減算する
ことによって生成される。時刻tでの適応ベクトルA
(t)は、たとえば次式によって与えることができる。
【数5】
【0082】ここで、kは適応ラベル化モデルの定数係
数、X(t−1)は時刻(t−1)に適応ラベラー70
に入力された正規化された20次元ベクトル、Xp(t
−1)は時刻(t−1)の20次元特徴ベクトルX(t
−1)に最も近い適応プロトタイプ・ベクトル(適応プ
ロトタイプ・ベクトル記憶域66からの)、A(t−
1)は時刻(t−1)の適応ベクトルである。
【0083】適応ラベラー70からの20次元の適応化
された特徴ベクトル信号X'(t)を、聴覚モデル72
に供給することが好ましい。聴覚モデル72は、たとえ
ば、人間の聴覚系が音信号を知覚する方法のモデルを提
供する。聴覚モデルの例が、米国特許第4980918
号明細書に記載されている。
【0084】本発明によれば、時刻tの適応特徴ベクト
ル信号X'(t)の周波数帯域iごとに、聴覚モデル7
2が下記の式(6)および(7)に従って新しい係数E
i(t)を計算することが好ましい。
【数6】 Ei(t)=K1+K2(X'i(t))(Ni(t-1)) (6)
【0085】ここで、
【数7】 Ni(t)=K3×Ni(t-1)-Ei(t-1) (7)
【0086】ここで、K1、K2およびK3は、この聴覚
モデルの定数係数である。
【0087】センチ秒時間間隔ごとの聴覚モデル72の
出力が、修正された20次元の特徴ベクトル信号にな
る。この特徴ベクトルに、他の20次元の値の自乗和平
方根に等しい値を有する第21次元を補う。
【0088】センチ秒時間間隔ごとに、連結機能74が
現センチ秒時間間隔と、4つの前のセンチ秒時間間隔
と、4つの後のセンチ秒時間間隔とを表す9つの21次
元特徴ベクトルとを連結して、単一の189次元のつな
がれたベクトルを形成することが好ましい。回転機能7
6で、189次元のつながれたベクトルのそれぞれに回
転行列をかけることによって、このつながれたベクトル
を回転し、つながれたベクトルを50次元に縮小するこ
とが好ましい。
【0089】回転機能76で使用される回転行列は、た
とえば、トレーニング・セッションの間に得られた18
9次元のつながれたベクトルの組をM個のクラスに分類
することによって得られる。トレーニング・セット内の
つながれたベクトルのすべてに関する分散行列に、M個
のクラスのすべてのつながれたベクトルのすべてに関す
るクラス内分散行列の逆行列をかける。得られた行列の
最初の50個の固有ベクトルが、回転行列を形成する
(たとえば、"Vector Quantizatio
n Procedure For Speech Re
cognition Systems Using D
iscrete Parameter Phoneme
−Based Markov Word Model
s"、L.R.Bahl他著、IBM Technic
al Disclosure Bulletin、Vo
lume 32,No.7、1989年12月、320
ないし321ページを参照されたい)。
【0090】ウィンドウ・ジェネレータ58、スペクト
ル・アナライザ60、適応式雑音キャンセル・プロセッ
サ62、短時間平均正規化プロセッサ68、適応ラベラ
ー70、聴覚モデル72、連結機能74および回転機能
76は、適当にプログラミングされた専用または汎用の
ディジタル信号プロセッサとすることができる。プロト
タイプ記憶域64と適応プロトタイプ・ベクトル記憶域
66は、上で述べた種類の電子コンピュータ・メモリと
することができる。
【0091】プロトタイプ記憶域64のプロトタイプ・
ベクトルは、たとえば、トレーニング・セットからの特
徴ベクトル信号を複数のクラスタにクラスタ化し、その
後、クラスタごとに平均と標準偏差を計算して、プロト
タイプ・ベクトルの係数値を形成することによって得る
ことができる。トレーニング・スクリプトに、一連の単
語・分節モデル(一連の単語のモデルを形成する)が含
まれ、単語・分節モデルのそれぞれに、単語・分節モデ
ル内で指定された位置を有する一連の基本モデルが含ま
れる時には、各クラスタが単一の単語・分節モデル内の
単一の位置にある単一の基本モデルに対応するよう指定
することによって、特徴ベクトル信号をクラスタ化でき
る。このような方法は、米国特許出願通し番号第730
714号明細書に詳細に記載されている。
【0092】その代わりに、トレーニング・テキストの
発話によって生成された、所与の基本モデルに対応する
音響特徴ベクトルのすべてを、K平均ユークリッド・ク
ラスタ化またはK平均ガウス・クラスタ化もしくはその
両方によってクラスタ化できる。このような方法は、た
とえば、米国特許第5182773号明細書に記載され
ている。
【0093】図7は、音響コマンド・モデルの仮定の例
を示す概略図である。図7に示された仮定のモデルは、
開始状態S1、終了状態S4および開始状態S1から終
了状態S4までの複数の経路を有する。
【0094】図8は、ある音素の音響マルコフ・モデル
の仮定の例を示す概略図である。この例では、音響音素
モデルに、3回の遷移T1の発生、4回の遷移T2の発
生および3回の遷移T3の発生が含まれる。破線で示さ
れた遷移は、空遷移である。
【0095】図7および図8の音響モデルの実線の遷移
のそれぞれが、音響特徴値を含むモデル出力を少なくと
も1つ有する。モデル出力のそれぞれが、出力確率を有
する。空遷移のそれぞれは、出力を有しない。ある状態
からの実線の遷移のそれぞれと破線の遷移のそれぞれ
は、モデルがその状態にある時の発生の確率を有する。
【0096】図9は、図7の音響モデルを通る経路の仮
定の例を示す概略図である。ある発話と音響コマンド・
モデルの一致スコアは、その音響コマンド・モデルを通
るすべての経路に関してその発話の測定された特徴の確
率を合計したものである。経路のそれぞれについて、そ
の発話の測定された特徴の確率は、その経路に沿う遷移
の確率と、測定された特徴のその経路に沿う遷移のそれ
ぞれでの確率の積に等しい。
【0097】本発明による対話式コンピュータ・システ
ムは、汎用ディジタル・コンピュータ・システムを適当
にプログラミングすることによって作られることが好ま
しい。具体的に言うと、プロセッサ10、イメージ・オ
ブジェクト識別機能26および活動状態コマンド・モデ
ル語彙識別機能30は、汎用ディジタル・プロセッサを
適当にプログラミングすることによって作ることができ
る。システム音響コマンド・モデル語彙記憶域28と活
動状態音響コマンド・モデル記憶域34は、電子コンピ
ュータ・メモリとすることができる。表示手段12に
は、陰極線管などのビデオ表示装置、液晶表示装置また
はプリンタを含めることができる。
【0098】上で述べたように、目標コンピュータ・プ
ログラムは、1つまたは複数のアプリケーション・プロ
グラムとオペレーティング・システム・プログラムとす
ることができる。たとえば、目標コンピュータ・プログ
ラムは、IBM OS/2(商標)バージョン2.0お
よびプレゼンテーション・マネージャ(商標)とするこ
とができる。
【0099】IBM社のOS/2バージョン2.0オペ
レーティング・システムおよびプレゼンテーション・マ
ネージャは、Cプログラミング言語、アセンブリ・プロ
グラミング言語およびREXXプログラミング言語を含
むさまざまな言語のアプリケーション・プログラム・イ
ンターフェース呼出しを有する。アプリケーション・プ
ログラム・インターフェース呼出しの完全な集合が、O
S/2 2.0 Technical Library
の一部である。ある言語でのアプリケーション・プログ
ラム・インターフェース呼出しの構文は、その言語での
標準呼出しの動作方法と互換性を有する。特定のアプリ
ケーション・プログラム・インターフェース呼出しの名
前は、言語によって異なる場合がある。また、ある言語
でのアプリケーション・プログラム・インターフェース
の態様の一部が、別の言語ではサポートされない場合が
ある。
【0100】Cプログラミング言語の場合、アプリケー
ション・プログラム・インターフェースは、多数のライ
ブラリ呼出しからなる。Cプログラミング言語のソース
・コードは、IBM C Set/2コンパイラを用い
てコンパイルされる。
【0101】例IないしVに、(a)イメージを作成し
表示し、(b)活動状態イメージに表示される少なくと
も1つのオブジェクトを識別するために活動状態イメー
ジを読み取り、(c)活動状態イメージから語彙を作成
し、(d)音声認識機構に対して語彙を定義し、(e)
活動状態語彙からのコマンド・モデルのうちで最高の一
致スコアを有するコマンド・モデルに対応するコマンド
信号を出力するための、OS/2およびプレゼンテーシ
ョン・マネージャ用のCプログラミング言語のソース・
コードを示す。
【0102】例I 例Iに、図2に示された仮定の第1活動状態イメージを
作成するためのCプログラミング言語のソース・コード
を示す。
【0103】OS/2およびプレゼンテーション・マネ
ージャには、「標準ウィンドウ」という概念がある。標
準ウィンドウとは、複数の一般的に使用されるウィンド
ウの組合せである。図2では、フレーム・ウィンドウ、
タイトル・バー、システム・メニューおよびメニュー・
バーが、標準ウィンドウの一部であるとみなすことがで
きる。標準ウィンドウは、OS/2アプリケーション・
インターフェース呼出しWinCreateStdWi
ndow()を使用する下記のCプログラミング言語ソ
ース・コードを用いて作成される。二重スラッシュ(/
/)の後のコメントで、ソース・コードの動作を説明す
る。
【0104】 #define INCL_WIN // プレゼンテーション・マネージャの定義文 // を得るために必要。 #include <os2.h> // プレゼンテーション・マネージャの定義文 // を得るために必要。 // ウィンドウ・プロシージャのためのプロト // タイプ定義。 MRESULT EXPENTRY SampleProc( HWND hwnd, ULONG ulMsg, MPARAM mp1, MPARAM mp2 ); HWND hwndFrame; // これは、フレーム・ウィンドウへの「ハン // ドル」を保持する変数である。ウィンドウ // ・ハンドルは、ウィンドウごとにユニーク // である。 HWND hwndClient; // これは、クライアント・ウィンドウへの「 // ハンドル」を保持する変数である。 ULONG ulFlags; // これは、作成時に使用されるフレーム・デ // ータのための変数である。 HAB hAB; // プレゼンテーション・マネージャのアンカ // ー・ブロック・ハンドル。この例には重要 // でない。これは、初期設定の間に受け取ら // れ、終了時に使用されるハンドルである。 HMQ hMQ; // メッセージ待ち行列。プレゼンテーション // ・マネージャは、これを使用してアプリケ // ーション・ウィンドウにメッセージを送る。 // どのアプリケーションも、この呼出しを行 // ってプレゼンテーション・マネージャを初 // 期設定しなければならない。 hAB = WinInitialize(0); // プレゼンテーション・マネージャが使用す // るメッセージ待ち行列を作成する。第2パ // ラメータは、省略時サイズのメッセージ待 // ち行列を使用することを意味する。 hMQ = WinCreateMsgQueue( hAB, 0 ); // クライアント・ウィンドウのクラスを登録 // する。ここでは、ウィンドウが知りたいイ // ベントのメッセージを送るのにプレゼンテ // ーション・マネージャが使用する関数を指 // 定する。メッセージの例は、ウィンドウの // サイズが変更されようとしていることをそ // のウィンドウに知らせるWM_SIZE、ウィン // ドウが作成されたことをそのウィンドウに // 知らせるWM_CREATE、ウィンドウ内でマウ // ス・ボタンがクリックされた時を知らせる // WM_BUTTON1DOWNである。 // WinRegisterClass()の引数: // // hAB - WinInitialize()から受け取ったハンド // ル。 // "Generic" - ウィンドウ・クラスの名前。この文字列 // は、そのタイプのウィンドウを作成する // のに使用される。 // SampleProc - 上のプロトタイプを用いて定義されるウ // ィンドウ・プロシージャの名前。 // 0L - クラス・スタイル…なし。 // 0L - アプリケーションが使用するために予約 // される特殊記憶域の量…なし。 WinRegisterClass( hAB, "Generic", SampleProc, 0L, 0L ); // フレーム作成データをセットアップして、 // 望みの特定のウィンドウの一部を指定する。 ulFlags = FCF_TITLEBAR | FCF_SYSMENU | FCF_BORDER; // WinCreateStdWindow()の引数: // // HWND_DESKTOP - 親ウィンドウ。フレームをプレゼンテー // ション・マネージャ・デスク・トップの // 子にする。 // 0L - フレーム・スタイル…なし。 // ulFlags - フレーム作成フラグ。 // "Generic" - 前に登録したウィンドウ・プロシージャ。 // "Title" - タイトル・バーに表示するタイトル。 // 0L - クライアント・ウィンドウ・スタイル… // なし。 // NULLHANDLE - アプリケーション・プログラム・インタ // ーフェース用のOS/2ツールキットの一部 // であるリソース・コンパイラを使用して、 // 結果のEXEにメニュー・バー記述などの // フレーム・リソースをコンパイルするこ // とを意味する。 // 10 - EXE内のリソースのID。 // &hwndClient - アプリケーション・プログラム・インタ // ーフェースが新たに作成されたクライア // ント・ハンドルをコピー・バックできる // ように、クライアント・ウィンドウ・ハ // ンドルのアドレスを渡す。 // hwndFrame = WinCreateStdWindow( HWND_DESKTOP, 0L, &ulFlags, "Generic", "Title", 0L, NULLHANDLE, 10, &hwndClient ); // WinSetWindowPos()を用いて、画面上 // でのフレームのサイズと位置を決め、 // 可視にする。 // WinSetWindowPos()の引数: // // hwndFrame - サイズと位置をセットしたいフレーム // へのハンドル。 // HWND_TOP - このフレームを他のすべてのフレーム // の上にセットし、このフレームが見え、 // 使用できるようにする。 // 10, 20 - 望みの位置(x, y)。 // 300, 500 - 望みのサイズ(幅, 高さ)。 // SWP_... - プレゼンテーション・マネージャに、 // サイズを処理し、ウィンドウを移動し、 // 表示するよう伝えるフラグ。 // WinSetWindowPos( hwndFrame, HWND_TOP, 10, 20, 300, 500, SWP_SIZE | SWP_MOVE | SWP_SHOW ); // プレゼンテーション・マネージャは、メッセージ・ベースの // システムであり、作成呼出しの間に、WM_CREATEメッセージ // が、上で登録したウィンドウ・プロシージャに送られる。他 // の子ウィンドウは、このメッセージの処理中に作成される。 // これを下で示す。 MRESULT EXPENTRY SampleProc( HWND hwndClient, ULONG ulMsg, MPARAM mp1, MPARAM mp2 ) { HWND hwndList; HWND hwndButton; switch ( ulMsg ) { . . . case WM_CREATE: // 作成したばかりのクライアント・ウィンド // ウに対するWM_CREATEメッセージを処理し // ている。渡されたウィンドウ・ハンドルで // あるhwndClientは、WinCreateStdWindow() // の最終パラメータを介して返される。 // ここで子リスト・ボックスを作成する。 // WinCreateWindow()の引数: // // hwndClient - クライアント・ウィンドウ // になる親をセットする。 // WC_LISTBOX - ウィンドウ・クラス。これ // はリスト・ボックスである。 // "" - このリスト・ボックスに関 // 連するタイトル・テキスト // はない。 // WS_... - ウィンドウ・スタイル…可 // 視の押しボタンを作る。 // 0, 0 - ウィンドウを置く初期座標。 // 50, 30 - ウィンドウの初期サイズ。 // hwndClient - クライアント・ウィンドウ // になるオーナーをセットす // る。 // HWND_TOP - このウィンドウを他のすべ // てのウィンドウの上に置く。 // ID_BUTTON - ウィンドウID。 // NULL - コントロール・データなし。 // NULL - プレゼンテーション・パラ // メータなし。 // hwndList = WinCreateWindow( hwndClient, WC_LISTBOX, "", WS_VISIBLE | LS_MULTIPLESEL, 0, 0, 50, 30, hwndClient, HWND_TOP, ID_LISTBOX, NULL, NULL ); // WinCreateWindow()の引数は、ボタン・ク // ラスのための異なるウィンドウ・スタイル // があること、異なるクラス名があること、 // IDが異なること、ボタンに意味のあるテキ // ストがあることを除いて、上と同じである。 // hwndButton = WinCreateWindow( hwndClient, WC_BUTTON, "Help", WS_VISIBLE | BS_PUSHBUTTON, 0, 70, 100, 250, hwndClient, HWND_TOP, ID_BUTTON, NULL, NULL ); // メッセージの処理が終わった。プレゼンテ // ーション・マネージャに制御を返す。 break; . . . } return ( FALSE ); }
【0105】例II 例IIに、活動状態イメージを読み取るためのCプログ
ラミング言語のソース・コードを示す。
【0106】プレゼンテーション・マネージャは、ウィ
ンドウの間でやり取りされるメッセージの待ち行列にア
プリケーションが「フック」を置くためのアプリケーシ
ョン・プログラム・インターフェース呼出しを提供す
る。フックは、メッセージが送られるごとに呼び出され
るコール・バック関数を用いて導入される。フック用の
コール・バック関数は、プレゼンテーション・マネージ
ャのダイナミック・リンク・ライブラリ内に常駐しなけ
ればならない。必要な手順は、コール・バック関数を含
むダイナミック・リンク・ライブラリをロードし、その
後にフックをロードすることである。
【0107】 HMODULE hm; // ロードされたダイナミック・リンク・ライブラ // リのための、フレーム・ウィンドウへのハンド // ル。ウィンドウ・ハンドルは、ウィンドウごと // にユニークである。 // これは、コール・バック関数の関数プロトタイ // プである。これは、IBM Presentation // Manager Programming Reference, Volume III // に記載のSendMsgHookの構文に従っている。 VOID EXPENTRY CallbackProc( HAB hAB, PSMHSTRUCT pSmh, BOOL bTask ); // コールバック関数を含むダイナミック・リンク・ライブラリ // をロードするには、DosLoadModule()を使用する。 // DosLoadModule()の引数は次のとおり: // NULL - エラー情報を返すバッファはない。 // 0 - バッファの長さ。 // "MYDLL" - ロードするDLLの名前。 // &hm - モジュール・ハンドルを返すアドレス。 DosLoadModule( NULL, 0, "MYDLL", &hm ) // ここでフックをセットする。 // WinSetHook()の引数は次のとおり: // // hAB - プレゼンテーション・マネージャの初期設 // 定から返されたアンカー・ブロック・ハン // ドル。 // NULLHANDLE - プレゼンテーション・マネージャのシステ // ム待ち行列にフックする。 // HK_SEND - 送られたメッセージに対してフックを導入 // する。 // CallbackProc - ロード済みのダイナミック・リンク・ライ // ブラリからのコールバック・プロシージャ。 // hm - ロード済みモジュールへのハンドル。 // WinSetHook( hAB, hMQ, HK_SENDMSG, (PFN)CallbackProc, hm ); // フックが導入されると、プログラム・マネージャ内でメッセ // ージが送られるたびに、コール・バック・ルーチンが呼び出 // されるようになる。新しいイメージ(ウィンドウ)がアクテ // ィブであることの情報を含むメッセージの1つが、 // WM_SETFOCUSである。これを下記に従って処理して、アクテ // ィブなフレーム・ウィンドウを得ることができる。 VOID EXPENTRY CallbackProc( HAB hAB, PSMHSTRUCT pSmh, BOOL bTask ) { // 変数をいくつか宣言する。 HWND hwndWithFocus; HWND hwndFrame; HWND hwndParent; HWND hwndDesktop; if (pSmh->msg == WM_SETFOCUS) { // このコール・バックは、 // WM_SETFOCUSメッセージと共に呼 // び出された。 // メッセージの第2パラメータを // アンパックする。これによって、 // このメッセージがフォーカスを // 受け取るウィンドウとフォーカ // スを失うウィンドウのどちらの // ためのものであるのかがわかる。 if (SHORT1FROMMP(pSmh->mp2)) { // このウィンドウは、フォーカス // を受け取ろうとしている。 hwndWithFocus = pSmh->hwnd; // これは、アクティブになる実際 // のイメージの子ウィンドウであ // る可能性がある。フレームであ // る絶対的な親を取得する。可視 // のすべてのウィンドウのルート // であるプレゼンテーション・マ // ネージャ・デスク・トップに達 // するまで調べる。 // 限界に関する比較対象としてデ // スク・トップ・ハンドルを取得 // する。 hwndDesktop = WinQueryDesktopWindow( hAB, NULLHANDLE ); hwndParent = hwndWithFocus; // ウィンドウ・チェーンの最後の // 親を見つけるためのループ。 while ( hwndParent != hwndDesktop ) { hwndFrame = hwndParent; // 次の親を求める問合せ. hwndParent = WinQueryWindow( hwndFrame, QW_PARENT ); } //==================================================== // この時点で、hwndFrameがアクティブ・イメージのフ // レームである! //==================================================== } } }
【0108】例III 例IIIに、活動状態イメージから活動状態コマンドの
リストを識別するためのCプログラミング言語のソース
・コードを示す。
【0109】イメージから活動状態コマンドのリストを
作成するための手順は、次のとおりである。(1)上で
発見したアクティブ・フレームの子(直接または間接
の)であるすべてのウィンドウのリストを作成する。
(2)リスト内のすべてのウィンドウを、そのウィンド
ウ・クラスによって識別する。(3)ユーザにテキスト
を表示するウィンドウ・クラスからのウィンドウについ
て、すべてのウィンドウ・テキスト(隠されているもの
と可視のもの)を問い合わせる。(4)単語の大域リス
トに、ウィンドウ・タイプごとの単語の標準リストと、
ステップ(3)でアプリケーションから問い合わせた単
語を組み合わせる。
【0110】ステップ(4)では、単語の複数の配列を
単語の1つの配列に組み合わせることだけが行われる。
したがって、ステップ(4)のソース・コードは示さな
い。
【0111】 // ステップ(1) 上で発見したアクティブ・フレームの // 子(直接または間接の)であるすべて // のウィンドウのリストを作成する。 // 子ウィンドウが100個を超えることはないと仮定する。 HWND AllWindows[100]; // ウィンドウ・ハンドルを保持する // 配列を宣言する。 int index = 0; // ウィンドウを配列AllWindows[]に // 入れる時のインデックス。 HWND hwndFrame; // 上で輪郭を示したように、 // CallbackProc()でアクティブ・ウ // ィンドウに初期設定されるものと // 仮定する。 // 再帰関数を使用して、すべての子を得る。 // 最初は、フレームを用いて次のように呼び出す。 // // FindChildren( hwndFrame ); VOID FindChildren( HWND hwndParent ) { HENUM hwndList; HWND hwndChild; // このウィンドウをリストに入れる。インデックス // (index)を増分して、配列内の次に使用可能なスロッ // トを指させる。 AllWindows[index] = hwndChild; index = index + 1; // 直接の子ウィンドウの列挙を開始する。列挙ハンドル // hwndListが返される。これを使用して、すべての子ウィ // ンドウを順にアクセスする。 hwndList = WinBeginEnumWindows( hwndParent ); // これ以上ウィンドウがないことを意味する0のウィンド // ウ・ハンドルが列挙から返されるまで、すべての子をル // ープする。 while ( hwndChild = WinGetNextWindow( hwndList ) ) { // ウィンドウ呼出しごとに、この関数で「この」ウィンド // ウのすべての子をもう一度取得する。 FindChildren( hwndChild ); } // 列挙を終了する。 WinEndEnumWindows( hwndList ); } // ステップ(2) リスト内のすべてのウィンドウを、そ // のウィンドウ・クラスによって識別す // る。 // リスト内のウィンドウごとに、その型を取得する。 int i; // カウント用インデックス CHAR szBuffer[200]; // クラス名を取得するバッファ int BufSize = sizeof(szBuffer); HWND hwnd; for (i = 0; i < index; i++ ) { hwnd = AllWindows[i]; // この次の関数は、引数として渡されたバッファに、文字 // 列としてクラス名を返す。 WinQueryClassName( hwnd, BufSize, szBuffer ); // ここに、プレゼンテーション・マネージャで一般ウィン // ドウとして定義されたクラス名がある。実際の文字列は、 // Cプログラミング言語の文字列の慣習に従って、 // 引用符(")で囲まれる。 // // "#1" フレーム・ウィンドウ // "#3" ボタン // "#4" メニュー // "#7" リスト・ボックス // "#8" スクロール・バー } // ステップ(3) ユーザにテキストを表示するウィンド // ウ・クラスからのウィンドウについて、 // すべてのウィンドウ・テキスト(隠さ // れているものと可視のもの)を問い合 // わせる。 // このコード・サンプルでは、あるアプリケーションが表 // 示したテキストを読み取る方法を示す。 // ・この例では、200バイトを越えるテキストがない // ものと仮定する。 // ・pBufferは、ウィンドウが常駐するプロセスに与え // られた共用メモリのバッファを指しているものと仮 // 定する。 // ・classnameに、上の(2)に記載のオブジェクトの // クラス名が書き込まれていると仮定する。 CHAR classname[100]; CHAR *pBuffer; int BufSize = 201; int ListboxCount; int i; // リスト・ボックスとボタンのためのアプリケーション・ // テキストを取得する。 if (strcmp( classname, "#3" ) == 0) { // これはボタンである。そのテキストを取得する。 WinQueryWindowText( hwndButton, Bufsize, pBuffer ); } if (strcmp( classname, "#7" ) == 0) { // これはリスト・ボックスである。項目のすべてをループ // して、すべてのテキストを取得する。リスト・ボックス // とのインターフェースには、プレゼンテーション・マネ // ージャのアプリケーション・プログラム・インターフェ // ース呼出しWinSendMsg()が必要である。これは、必ず下 // 記の4つのパラメータをとる。 // ・ウィンドウ・ハンドル // ・メッセージ // ・メッセージ固有パラメータまたは0 // ・メッセージ固有パラメータまたは0 ListboxCount = WinSendMsg( hwndListbox, LM_QUERYITEMCOUNT, 0, 0 ); // これがループである。 for (i = 0; i < ListboxCount; i++ ) { // 最後の2つのパラメータに、プレゼンテーション・ // マネージャのアプリケーション・プログラム・イン // ターフェースのパッキング・マクロを使用する。最 // 初のパラメータは、2つの数字から作られる。 // // MPFROM2SHORT( 項目のインデックス, // バッファ・サイズ ) // // 2番目のパラメータは、バッファを指すポインタで // ある。 // // MPFROMP( バッファ ) WinSendMsg( hwndListbox, LM_QUERYITEMTEXT, MPFROM2SHORT( i, Bufsize ), MPFROMP( pBuffer ) ); // 現在、1項目分のテキストがバッファに入っている。 // これをコピーして、どこかにセーブしなければなら // ない。 } }
【0112】例IV 例IVに、音声認識機構に対して活動状態語彙を定義す
るためのCプログラミング言語のソース・コードを示
す。
【0113】音声認識機構のためのアプリケーション・
プログラム・インターフェースを使用して、これを認識
用にセットアップする。使用できる可能なアプリケーシ
ョン・プログラム・インターフェースは、IBM Sp
eech Server Series(商標)製品に
付属するSpeech Manager(商標)アプリ
ケーション・プログラム・インターフェースである。同
様のアプリケーション・プログラム・インターフェース
のためのソース・コードを、下に示す。
【0114】 #include "smapi.h" // Speech Managerアプリケーション・プ // ログラム・インターフェースのヘッダ // ・ファイル。 SmArg Args[9]; // ローカル変数−音声システムの初期設 // 定に使用する引数の配列。 int iNumArgs; // 音声システムを初期設定する。パラメータは使用しない。 // SmOpen( 0, NULL ); // 接続を行うのに使用する引数をセットアップする。関数 // SmSetArg()の第2引数は、引数の名前である。第3パラメー // タは、その値である。 // // 認識用の初期設定。 SmSetArg( Args[0], SmNrecognize, TRUE ); // ユーザID。 SmSetArg( Args[3], SmNuserId, "User" ); // ユーザのトレーニング後の統計。 SmSetArg( Args[4], SmNenrollId, "Enroll ID" ); // 使用するテキストの定義域。 SmSetArg( Args[5], SmNtask, "Office System" ); // 音声認識機構がこのアプリケーションと通 // 信するのに使用する、前に作成されたウィ // ンドウ。 SmSetArg( Args[6], SmNwindowHandle, hwndCommunication ); // 音声認識機構から来るメッセージを識別す // るためのID。 SmSetArg( Args[7], SmNconnectionId, 27 ); // アプリケーションの名前。 SmSetArg( Args[8], SmNapplicationName, "Patent Application" ); // 音声認識機構に接続する。この関数の最終パラメータで、こ // の呼出しを非同期にするよう音声認識機構に伝える。 SmConnect( 9, Args, SmAsynchronous ); // この時点で、音声認識機構との接続が存在する。この時点で、 // 上で作成した語彙を定義し、使用可能にし、認識に使用する // ことができる。 // 語彙を定義するには、SmDefineVocab()を使用する。定義の // 間に、音声認識機構が、単語の大きなプールの中を調べて、 // 単語の音声モデルを見つける。音声モデルが存在しない場合、 // その単語を使用する前に、音声モデルを追加しなければなら // ない。存在するモデルに対しては、それらだけを含むテーブ // ルを作って、認識に使用する。 // SmDefineVocab()の引数: // // "Active Vocabulary" - その語彙に関連する名前 // 35 - 語彙に含まれる単語の数 // pWords - アプリケーション・プログラ // ム・インターフェースで指定 // される形式の単語の配列を指 // すポインタ // SmAsynchronous - 呼出しを非同期にする SmDefineVocab( "Active Vocabulary", 35, pWords, SmAsynchronous ); // 認識のために語彙を使用可能にするためには、アプリケーシ // ョン・プログラム・インターフェース呼出し // SmEnableVocab()を使用する。 // SmEnableVocab()の引数: // // "Active Vocabulary" - 使用可能にする語彙の名前 // SmAsynchronous - 呼出しを非同期にする SmEnableVocab( "Active Vocabulary", SmAsynchronous ); // このシステムは現在、認識の準備ができている。認識を開始 // するには、SmMicOn()を使用してマイクロフォンのスイッチ // を入れ、SmRecognizeNextWord()を使用して単語を要求する。 // どちらの呼出しも、ここでは非同期に行われる。 SmMicOn( SmAsynchronous ); SmRecognizeNextWord( SmAsynchronous );
【0115】例V 例Vに、活動状態語彙からのコマンド・モデルのうちで
最高の一致スコアを有するものに対応するコマンド信号
を出力するためのCプログラミング言語のソース・コー
ドを示す。
【0116】まず、コマンドとコマンド対オブジェクト
の関連とのリストを、上で説明したように手動で定義す
る。大域コマンド以外のコマンドのそれぞれに、1つの
オブジェクトが関連する。
【0117】表1の単語「RIGHT」を認識すると仮
定する。コマンド対オブジェクトの関連のリストから、
コマンドの目標がわかる。この目標には、この例ではhw
ndTargetが指定される。 HWND hwndTarget;
【0118】この目標に関して「RIGHT」によって
定義される処置は、前に定義された増分、たとえば10
画素だけ、目標を右に移動することである。 #define INCREMENT_RIGHT 10
【0119】このコマンドは、WinSetWindowPos()とい
う名前のOS/2プレゼンテーション・マネージャ・ア
プリケーション・プログラム・インターフェース呼出し
を使用して、目標に対して実行される。新しい位置を決
定できるように、まず現在のウィンドウ位置を問い合わ
せる必要がある。
【0120】 SWP swp; // ウィンドウ位置のためのプレゼンテーショ // ン・マネージャ構造体 // 初期ウィンドウ位置を得る。 // hwndTarget - 目標のウィンドウまたはオブジェクト // &swp - 目標のウィンドウ機能が返されるアド // レス WinQueryWindowPos( hwndTarget, &swp ); // コマンド"RIGHT"を実行する。 // // hwndTarget - 目標のウィンドウまたはオブジェクト // NULLHANDLE - 必要のないパラメータ // swp.x + INCREMENT_RIGHT // - ウィンドウの新しいX座標 // swp.y - 同一のY座標を使用する // 0, 0, - 必要のないパラメータ // SWP_MOVE - ウィンドウに移動するよう伝える // WinSetWindowPos( hwndTarget, NULLHANDLE, swp.x + INCREMENT_RIGNT, swp.y, 0, 0, SWP_MOVE );
【0121】その代わりに、単語「ORANGE」を認
識すると仮定する。コマンド対オブジェクトの関連のリ
ストから、このコマンドの目標がわかる。これは、この
例ではhwndTargetである。 HWND hwndTarget;
【0122】この目標に関して「ORANGE」によっ
て定義される処置は、リストボックス内の項目を選択す
ることである。このコマンドは、WinSendMsg()という名
前のOS/2プレゼンテーション・マネージャ・アプリ
ケーション・インターフェース呼出しを使用して、リス
トボックスにメッセージLM_SELECTITEMを送ることによ
って、目標に対して実行される。まず、項目のインデッ
クスを見つけなければならない。
【0123】 SHORT sItem; // 問合せのための項目インデックス // リスト内で認識された単語を見つける。 // // hwndTarget - 目標のウィンドウまたはオブジェクト // LM_SEARCHSTRING - 送られるメッセージ // MPFROM2SHORT() - プレゼンテーション・マネージャのパ // ッキング・マクロ // LSS_PREFIX - 次のパラメータの文字列から始まる項 // 目のインデックスを要求する // LIT_FIRST - 一致する最初の項目を要求する // MPFROMP() - プレゼンテーション・マネージャのパ // ッキング・マクロ // pListboxWord - 認識される単語"ORANGE" // sItem = (SHORT)WinSendMsg( hwndTarget, LM_SEARCHSTRING, MPFROM2SHORT( LSS_PREFIX, LIT_FIRST ), MPFROMP( pListboxWord ) ); // 認識された単語を選択する。 // // hwndTarget - 目標のウィンドウまたはオブジェクト // LM_SELECTITEM - 送られるメッセージ // sItem - 処置の対象となる、リスト内の項目 // TRUE - 項目を選択する // WinSendMsg( hwndTarget, LM_SELECTITEM, MPFROMSHORT( sItem ), MPFROMLONG( TRUE ) );
【図面の簡単な説明】
【図1】本発明による対話式コンピュータ・システムの
例を示すブロック図である。
【図2】目標コンピュータ・プログラムの第1活動状態
の第1活動状態イメージの例を示す図である。
【図3】本発明による対話式コンピュータ・システムの
ための音声認識機構の例を示すブロック図である。
【図4】目標コンピュータ・プログラムの第2活動状態
の第2活動状態イメージの例を示す図である。
【図5】本発明による対話式コンピュータ・システムの
システム語彙のための音響コマンド・モデル記憶域の例
を示すブロック図である。
【図6】図3の音声認識機構のための音響プロセッサの
ブロック図である。
【図7】音響コマンド・モデルの例を示す概略図であ
る。
【図8】音響コマンド・モデルを構築するための音素の
音響モデルの例を示す概略図である。
【図9】図7の音響モデルを通る経路の例を示す概略図
である。
【符号の説明】
28 システム音響コマンド・モデル語彙記憶域 30 活動状態コマンド・モデル語彙識別機能 32 音声認識機構 34 活動状態音響コマンド・モデル記憶域 36 音響プロセッサ 38 音響一致スコア・プロセッサ 40 出力 54 マイクロフォン 56 アナログ・ディジタル変換器 58 ウィンドウ・ジェネレータ 60 スペクトル・アナライザ 62 適応式雑音キャンセル・プロセッサ 64 プロトタイプ記憶域 66 適応プロトタイプ・ベクトル記憶域 68 短時間平均正規化プロセッサ 70 適応ラベラー 72 聴覚モデル 74 連結機能 76 回転機能
───────────────────────────────────────────────────── フロントページの続き (72)発明者 グレッグ・エイチ・ダゲット アメリカ合衆国10598 ニューヨーク州ヨ ークタウン・ハイツ コーンウォール・サ ークル70 (72)発明者 ジョン・カラット アメリカ合衆国06831 コネチカット州グ リニッジ ペンバーウィック・ロード26 (72)発明者 ジョン・ルカッセン アメリカ合衆国10025 ニューヨーク州ニ ューヨーク ウェスト・ワンハンドレッ ド・サード・ストリート308 アパートメ ント・ピーエイチ−1 (72)発明者 ステファン・エリック・レビィ アメリカ合衆国10595−1029 ニューヨー ク州ヴァルハラ イーストビュー・ドライ ブ106 (72)発明者 ロバート・ローレンス・マック アメリカ合衆国10598 ニューヨーク州ヨ ークタウン・ハイツ オールド・ヨークタ ウン・ロード3006

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】一連の時限にわたって発生する一連の活動
    プログラム状態を有する目標コンピュータ・プログラム
    を実行するプロセッサであって、前記目標コンピュータ
    ・プログラムが、各時限の間に発生する目標コンピュー
    タ・プログラムの活動状態の活動状態イメージを表す活
    動状態イメージ・データ信号を生成し、各活動状態イメ
    ージが、1つまたは複数のオブジェクトを含む、前記プ
    ロセッサと、 第1時限の間に発生する第1活動状態の第1活動状態イ
    メージを少なくとも表示するための手段と、 第1活動状態イメージに表示された少なくとも1つのオ
    ブジェクトを識別し、識別されたオブジェクトから、目
    標コンピュータ・プログラムの第1活動状態で実行でき
    る機能を識別する1つまたは複数の第1活動状態コマン
    ドのリストを生成するための手段と、 各音響コマンド・モデルがその音響コマンド・モデルに
    関連する1つまたは複数の単語の発話を表す音響特徴値
    の1つまたは複数の連なりを表す、音響コマンド・モデ
    ルのシステム語彙を記憶するための手段と、 第1活動状態コマンドを表すシステム語彙からの音響コ
    マンド・モデルを含む、第1活動状態の音響コマンド・
    モデルの第1活動状態語彙を識別するための手段と、 一連の特徴信号を作るため第1時限内の一連の連続した
    時間間隔のそれぞれの間に発話の少なくとも1つの特徴
    の値を測定するための音声認識機構であって、発話と各
    音響コマンド・モデルの一致スコアを生成するため、測
    定された特徴信号を第1活動状態語彙内の音響コマンド
    ・モデルのそれぞれと比較し、最高の一致スコアを有す
    る第1活動状態語彙からのコマンド・モデルに対応する
    コマンド信号を出力する、前記音声認識機構とを具備す
    る、対話式コンピュータ・システム。
  2. 【請求項2】第1活動状態語彙が、システム語彙からの
    音響コマンド・モデルのすべてよりかなり少ない音響コ
    マンド・モデルを含み、 音声認識機構が、第1時限の間に測定された特徴信号
    を、第1活動状態語彙の中にない音響コマンド・モデル
    と比較しないことを特徴とする、請求項1に記載の対話
    式コンピュータ・システム。
  3. 【請求項3】表示手段が、第1時限と異なる第2時限の
    間に発生する第2活動状態の、第1活動状態イメージと
    異なる第2活動状態イメージを、少なくとも表示し、 オブジェクト識別手段が、第2活動状態イメージに表示
    された少なくとも1つのオブジェクトを識別し、識別さ
    れたオブジェクトから、目標コンピュータ・プログラム
    の第2活動状態で実行できる機能を識別する1つまたは
    複数の第2活動状態コマンドのリストを生成し、 活動状態語彙識別手段が、第2活動状態コマンドを表す
    システム語彙からの音響コマンド・モデルを含み、少な
    くとも部分的に第1活動状態語彙と異なる、第2活動状
    態の音響コマンド・モデルの第2活動状態語彙を識別
    し、 音声認識機構が、一連の特徴信号を作るため第2時限内
    の一連の連続した時間間隔のそれぞれの間に発話の少な
    くとも1つの特徴の値を測定し、前記音声認識機構が、
    発話と各音響コマンド・モデルの一致スコアを生成する
    ため、第2時限の間に測定された特徴信号を第2活動状
    態語彙内の音響コマンド・モデルのそれぞれと比較し、
    前記音声認識機構が、最高の一致スコアを有する第2活
    動状態語彙からのコマンド・モデルに対応するコマンド
    信号を出力することを特徴とする、請求項2に記載の対
    話式コンピュータ・システム。
  4. 【請求項4】目標コンピュータ・プログラムが、各時限
    の間に発生する活動状態を1つだけ有することを特徴と
    する、請求項3に記載の対話式コンピュータ・システ
    ム。
  5. 【請求項5】目標コンピュータ・プログラムが、オペレ
    ーティング・システム・プログラムを含むことを特徴と
    する、請求項4に記載の対話式コンピュータ・システ
    ム。
  6. 【請求項6】目標コンピュータ・プログラムが、アプリ
    ケーション・プログラムとオペレーティング・システム
    ・プログラムとを含むことを特徴とする、請求項5に記
    載の対話式コンピュータ・システム。
  7. 【請求項7】目標コンピュータ・プログラムが、2つ以
    上のアプリケーション・プログラムとオペレーティング
    ・システム・プログラムとを含むことを特徴とする、請
    求項6に記載の対話式コンピュータ・システム。
  8. 【請求項8】活動状態のコマンドの少なくともいくつか
    が、その状態の活動状態イメージで識別されたオブジェ
    クトに対して実行できる機能を識別することを特徴とす
    る、請求項6に記載の対話式コンピュータ・システム。
  9. 【請求項9】活動状態イメージで識別されるオブジェク
    トに、文字、単語、アイコン、ボタン、スクロール・バ
    ー、スライダ、リスト・ボックス、メニュー、チェック
    ・ボックス、コンテナまたはノートのうちの1つまたは
    複数を含むことを特徴とする、請求項8に記載の対話式
    コンピュータ・システム。
  10. 【請求項10】音声認識機構が、所与の時限に関して最
    高の一致スコアを有する活動状態語彙からのコマンド・
    モデルに対応する2つ以上のコマンド信号を出力するこ
    とを特徴とする、請求項9に記載の対話式コンピュータ
    ・システム。
  11. 【請求項11】各活動状態の音響コマンド・モデルの語
    彙が、さらに、目標コンピュータ・プログラムの各活動
    状態で実行できる機能を識別する大域コマンドを表す大
    域音響コマンド・モデルの組を含むことを特徴とする、
    請求項10に記載の対話式コンピュータ・システム。
  12. 【請求項12】表示手段が、表示装置を含むことを特徴
    とする、請求項11に記載の対話式コンピュータ・シス
    テム。
  13. 【請求項13】表示手段が、ある時限の間に発生する活
    動状態の活動状態イメージと、その時限の間に発生しな
    いプログラム状態の1つまたは複数のイメージの少なく
    とも一部との両方を表示することを特徴とする、請求項
    11に記載の対話式コンピュータ・システム。
  14. 【請求項14】一連の時限にわたって発生する一連の活
    動プログラム状態を有する目標コンピュータ・プログラ
    ムであって、前記目標コンピュータ・プログラムが、各
    時限の間に発生する目標コンピュータ・プログラムの活
    動状態の活動状態イメージを表す活動状態イメージ・デ
    ータ信号を生成し、各活動状態イメージが、1つまたは
    複数のオブジェクトを含む、前記目標コンピュータ・プ
    ログラムを、プロセッサ上で実行するステップと、 少なくとも、第1時限の間に発生する第1活動状態の第
    1活動状態イメージを表示するステップと、 第1活動状態イメージに表示された少なくとも1つのオ
    ブジェクトを識別し、識別されたオブジェクトから、目
    標コンピュータ・プログラムの第1活動状態で実行でき
    る機能を識別する1つまたは複数の第1活動状態コマン
    ドのリストを生成するステップと、 各音響コマンド・モデルがその音響コマンド・モデルに
    関連する1つまたは複数の単語の発話を表す音響特徴値
    の1つまたは複数の連なりを表す、音響コマンド・モデ
    ルのシステム語彙を記憶するステップと、 第1活動状態コマンドを表すシステム語彙からの音響コ
    マンド・モデルを含む、第1活動状態の音響コマンド・
    モデルの第1活動状態語彙を識別するステップと、 一連の特徴信号を作るため第1時限内の一連の連続した
    時間間隔のそれぞれの間に発話の少なくとも1つの特徴
    の値を測定するステップと、 発話と各音響コマンド・モデルの一致スコアを生成する
    ため、測定された特徴信号を第1活動状態語彙内の音響
    コマンド・モデルのそれぞれと比較するステップと、 最高の一致スコアを有する第1活動状態語彙からのコマ
    ンド・モデルに対応するコマンド信号を出力するステッ
    プとを含む、コンピュータ対話の方法。
  15. 【請求項15】第1活動状態語彙が、システム語彙から
    の音響コマンド・モデルのすべてよりかなり少ない音響
    コマンド・モデルを含み、 比較のステップが、第1時限の間に測定された特徴信号
    を、第1活動状態語彙の中にない音響コマンド・モデル
    と比較しないことを特徴とする、請求項14に記載のコ
    ンピュータ対話の方法。
  16. 【請求項16】少なくとも、第1時限と異なる第2時限
    の間に発生する第2活動状態の、第1活動状態イメージ
    と異なる第2活動状態イメージを、表示するステップ
    と、 第2活動状態イメージに表示された少なくとも1つのオ
    ブジェクトを識別し、識別されたオブジェクトから、目
    標コンピュータ・プログラムの第2活動状態で実行でき
    る機能を識別する1つまたは複数の第2活動状態コマン
    ドのリストを生成するステップと、 第2活動状態コマンドを表すシステム語彙からの音響コ
    マンド・モデルを含み、少なくとも部分的に第1活動状
    態語彙と異なる、第2活動状態の音響コマンド・モデル
    の第2活動状態語彙を識別するステップと、 一連の特徴信号を作るため、第2時限内の一連の連続し
    た時間間隔のそれぞれの間に発話の少なくとも1つの特
    徴の値を測定するステップと、 発話と各音響コマンド・モデルの一致スコアを生成する
    ため、第2時限の間に測定された特徴信号を第2活動状
    態語彙内の音響コマンド・モデルのそれぞれと比較する
    ステップと、 最高の一致スコアを有する第2活動状態語彙からのコマ
    ンド・モデルに対応するコマンド信号を出力するステッ
    プとをさらに含むことを特徴とする、請求項15に記載
    のコンピュータ対話の方法。
  17. 【請求項17】目標コンピュータ・プログラムが、各時
    限の間に発生する活動状態を1つだけ有することを特徴
    とする、請求項16に記載のコンピュータ対話の方法。
  18. 【請求項18】目標コンピュータ・プログラムが、オペ
    レーティング・システム・プログラムを含むことを特徴
    とする、請求項17に記載のコンピュータ対話の方法。
  19. 【請求項19】目標コンピュータ・プログラムが、アプ
    リケーション・プログラムとオペレーティング・システ
    ム・プログラムとを含むことを特徴とする、請求項18
    に記載のコンピュータ対話の方法。
  20. 【請求項20】目標コンピュータ・プログラムが、2つ
    以上のアプリケーション・プログラムとオペレーティン
    グ・システム・プログラムとを含むことを特徴とする、
    請求項19に記載のコンピュータ対話の方法。
  21. 【請求項21】活動状態のコマンドの少なくともいくつ
    かが、その状態の活動状態イメージで識別されたオブジ
    ェクトに対して実行できる機能を識別することを特徴と
    する、請求項19に記載のコンピュータ対話の方法。
  22. 【請求項22】活動状態イメージで識別されるオブジェ
    クトに、文字、単語、アイコン、ボタン、スクロール・
    バー、スライダ、リスト・ボックス、メニュー、チェッ
    ク・ボックス、コンテナまたはノートのうちの1つまた
    は複数を含むことを特徴とする、請求項21に記載のコ
    ンピュータ対話の方法。
  23. 【請求項23】コマンド信号を出力するステップが、所
    与の時限に関して最高の一致スコアを有する活動状態語
    彙からのコマンド・モデルに対応する2つ以上のコマン
    ド信号の出力を含むことを特徴とする、請求項22に記
    載のコンピュータ対話の方法。
  24. 【請求項24】各活動状態の音響コマンド・モデルの語
    彙が、さらに、目標コンピュータ・プログラムの各活動
    状態で実行できる機能を識別する大域コマンドを表す大
    域音響コマンド・モデルの組を含むことを特徴とする、
    請求項23に記載のコンピュータ対話の方法。
  25. 【請求項25】ある時限の間に発生する活動状態の活動
    状態イメージと、その時限の間に発生しないプログラム
    状態の1つまたは複数のイメージの少なくとも一部との
    両方を表示するステップを更に含むことを特徴とする、
    請求項24に記載のコンピュータ対話の方法。
JP6050064A 1993-04-21 1994-03-22 話されたコマンドを認識する対話式コンピュータ・システム及びコンピュータ対話の方法 Expired - Fee Related JP2856671B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US050950 1987-05-15
US5095093A 1993-04-21 1993-04-21

Publications (2)

Publication Number Publication Date
JPH06348452A true JPH06348452A (ja) 1994-12-22
JP2856671B2 JP2856671B2 (ja) 1999-02-10

Family

ID=21968512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6050064A Expired - Fee Related JP2856671B2 (ja) 1993-04-21 1994-03-22 話されたコマンドを認識する対話式コンピュータ・システム及びコンピュータ対話の方法

Country Status (8)

Country Link
US (1) US5664061A (ja)
EP (1) EP0621531B1 (ja)
JP (1) JP2856671B2 (ja)
KR (1) KR970006403B1 (ja)
CN (1) CN1086484C (ja)
AT (1) ATE185203T1 (ja)
CA (1) CA2115210C (ja)
DE (1) DE69420888T2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08272572A (ja) * 1995-03-30 1996-10-18 Mitsubishi Electric Corp 移動体通信端末
JP2000215022A (ja) * 1998-12-17 2000-08-04 Internatl Business Mach Corp <Ibm> コンピュ―タ制御対話式表示システム、音声コマンド入力方法および記録媒体
JP2001515611A (ja) * 1997-12-30 2001-09-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ コマンド辞書を使用する音声認識装置
JP2002525690A (ja) * 1998-09-21 2002-08-13 トムソン マルチメディア 遠隔制御される装置を含むシステム及び、装置の音声に基づく遠隔制御のための装置
WO2008136081A1 (ja) * 2007-04-20 2008-11-13 Mitsubishi Electric Corporation ユーザインタフェース装置及びユーザインタフェース設計装置
JP2013164601A (ja) * 1998-03-23 2013-08-22 Microsoft Corp オペレーティング・システムのアプリケーション・プログラム・インターフェース
KR20160037182A (ko) * 2013-07-31 2016-04-05 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 다수의 동시적 스피치 인식기들을 사용하는 방법 및 장치

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909666A (en) * 1992-11-13 1999-06-01 Dragon Systems, Inc. Speech recognition system which creates acoustic models by concatenating acoustic models of individual words
US5764852A (en) * 1994-08-16 1998-06-09 International Business Machines Corporation Method and apparatus for speech recognition for distinguishing non-speech audio input events from speech audio input events
JPH09510803A (ja) * 1995-01-18 1997-10-28 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ オペレータ介入により支援しうるヒューマン−マシンダイアログを提供する方法及び装置
JPH09149157A (ja) * 1995-11-24 1997-06-06 Casio Comput Co Ltd 通信端末装置
GB9602701D0 (en) * 1996-02-09 1996-04-10 Canon Kk Image manipulation
US5960395A (en) 1996-02-09 1999-09-28 Canon Kabushiki Kaisha Pattern matching method, apparatus and computer readable memory medium for speech recognition using dynamic programming
US5819225A (en) * 1996-05-30 1998-10-06 International Business Machines Corporation Display indications of speech processing states in speech recognition system
US5867817A (en) * 1996-08-19 1999-02-02 Virtual Vision, Inc. Speech recognition manager
US6654955B1 (en) * 1996-12-19 2003-11-25 International Business Machines Corporation Adding speech recognition libraries to an existing program at runtime
US5897618A (en) * 1997-03-10 1999-04-27 International Business Machines Corporation Data processing system and method for switching between programs having a same title using a voice command
US6192338B1 (en) * 1997-08-12 2001-02-20 At&T Corp. Natural language knowledge servers as network resources
US6301560B1 (en) * 1998-01-05 2001-10-09 Microsoft Corporation Discrete speech recognition system with ballooning active grammar
US6298324B1 (en) * 1998-01-05 2001-10-02 Microsoft Corporation Speech recognition system with changing grammars and grammar help command
US6144938A (en) 1998-05-01 2000-11-07 Sun Microsystems, Inc. Voice user interface with personality
FI981154A (fi) * 1998-05-25 1999-11-26 Nokia Mobile Phones Ltd Menetelmä ja laite puheen tunnistamiseksi
US7082391B1 (en) * 1998-07-14 2006-07-25 Intel Corporation Automatic speech recognition
US6243076B1 (en) 1998-09-01 2001-06-05 Synthetic Environments, Inc. System and method for controlling host system interface with point-of-interest data
US6928614B1 (en) 1998-10-13 2005-08-09 Visteon Global Technologies, Inc. Mobile office with speech recognition
US6240347B1 (en) 1998-10-13 2001-05-29 Ford Global Technologies, Inc. Vehicle accessory control with integrated voice and manual activation
US6230129B1 (en) * 1998-11-25 2001-05-08 Matsushita Electric Industrial Co., Ltd. Segment-based similarity method for low complexity speech recognizer
US7206747B1 (en) 1998-12-16 2007-04-17 International Business Machines Corporation Speech command input recognition system for interactive computer display with means for concurrent and modeless distinguishing between speech commands and speech queries for locating commands
US6192343B1 (en) 1998-12-17 2001-02-20 International Business Machines Corporation Speech command input recognition system for interactive computer display with term weighting means used in interpreting potential commands from relevant speech terms
US6233560B1 (en) 1998-12-16 2001-05-15 International Business Machines Corporation Method and apparatus for presenting proximal feedback in voice command systems
US6937984B1 (en) 1998-12-17 2005-08-30 International Business Machines Corporation Speech command input recognition system for interactive computer display with speech controlled display of recognized commands
US7567677B1 (en) * 1998-12-18 2009-07-28 Gateway, Inc. Noise reduction scheme for a computer system
US6230135B1 (en) 1999-02-02 2001-05-08 Shannon A. Ramsay Tactile communication apparatus and method
US6408301B1 (en) 1999-02-23 2002-06-18 Eastman Kodak Company Interactive image storage, indexing and retrieval system
US6345254B1 (en) * 1999-05-29 2002-02-05 International Business Machines Corp. Method and apparatus for improving speech command recognition accuracy using event-based constraints
US6421655B1 (en) * 1999-06-04 2002-07-16 Microsoft Corporation Computer-based representations and reasoning methods for engaging users in goal-oriented conversations
US6308157B1 (en) * 1999-06-08 2001-10-23 International Business Machines Corp. Method and apparatus for providing an event-based “What-Can-I-Say?” window
US6871179B1 (en) * 1999-07-07 2005-03-22 International Business Machines Corporation Method and apparatus for executing voice commands having dictation as a parameter
US6374226B1 (en) * 1999-08-06 2002-04-16 Sun Microsystems, Inc. System and method for interfacing speech recognition grammars to individual components of a computer program
US6510414B1 (en) 1999-10-05 2003-01-21 Cisco Technology, Inc. Speech recognition assisted data entry system and method
US6594630B1 (en) * 1999-11-19 2003-07-15 Voice Signal Technologies, Inc. Voice-activated control for electrical device
US7319962B2 (en) * 1999-12-24 2008-01-15 Medtronic, Inc. Automatic voice and data recognition for implanted medical device instrument systems
FR2803927B1 (fr) * 2000-01-14 2002-02-22 Renault Procede et dispositif de commande d'equipements embarques sur un vehicule utilisant la reconnaissance vocale
US7047196B2 (en) 2000-06-08 2006-05-16 Agiletv Corporation System and method of voice recognition near a wireline node of a network supporting cable television and/or video delivery
US6408277B1 (en) 2000-06-21 2002-06-18 Banter Limited System and method for automatic task prioritization
US9699129B1 (en) 2000-06-21 2017-07-04 International Business Machines Corporation System and method for increasing email productivity
US8290768B1 (en) 2000-06-21 2012-10-16 International Business Machines Corporation System and method for determining a set of attributes based on content of communications
US6510410B1 (en) * 2000-07-28 2003-01-21 International Business Machines Corporation Method and apparatus for recognizing tone languages using pitch information
JP3774698B2 (ja) * 2000-10-11 2006-05-17 キヤノン株式会社 情報処理装置、情報処理方法及び記憶媒体
US7644057B2 (en) 2001-01-03 2010-01-05 International Business Machines Corporation System and method for electronic communication management
US8095370B2 (en) 2001-02-16 2012-01-10 Agiletv Corporation Dual compression voice recordation non-repudiation system
DE10115899B4 (de) * 2001-03-30 2005-04-14 Siemens Ag Verfahren zur Erstellung von Computer-Programmen mittels Spracherkennung
US7409349B2 (en) * 2001-05-04 2008-08-05 Microsoft Corporation Servers for web enabled speech recognition
US7610547B2 (en) * 2001-05-04 2009-10-27 Microsoft Corporation Markup language extensions for web enabled recognition
US20020178182A1 (en) * 2001-05-04 2002-11-28 Kuansan Wang Markup language extensions for web enabled recognition
US7506022B2 (en) * 2001-05-04 2009-03-17 Microsoft.Corporation Web enabled recognition architecture
US7203188B1 (en) 2001-05-21 2007-04-10 Estara, Inc. Voice-controlled data/information display for internet telephony and integrated voice and data communications using telephones and computing devices
US7020841B2 (en) 2001-06-07 2006-03-28 International Business Machines Corporation System and method for generating and presenting multi-modal applications from intent-based markup scripts
KR101049748B1 (ko) * 2001-07-03 2011-07-19 코닌클리케 필립스 일렉트로닉스 엔.브이. 인터액티브 디스플레이 및 메시지를 디스플레이하는 방법
US8229753B2 (en) 2001-10-21 2012-07-24 Microsoft Corporation Web server controls for web enabled recognition and/or audible prompting
US7711570B2 (en) 2001-10-21 2010-05-04 Microsoft Corporation Application abstraction with dialog purpose
US20040034529A1 (en) * 2002-08-14 2004-02-19 Hooper Howard Gaines Multifunction printer that converts and prints voice data
US7421390B2 (en) * 2002-09-13 2008-09-02 Sun Microsystems, Inc. Method and system for voice control of software applications
US7389230B1 (en) 2003-04-22 2008-06-17 International Business Machines Corporation System and method for classification of voice signals
US20040230637A1 (en) * 2003-04-29 2004-11-18 Microsoft Corporation Application controls for speech enabled recognition
US7363060B2 (en) * 2003-05-02 2008-04-22 Nokia Corporation Mobile telephone user interface
US20050187913A1 (en) 2003-05-06 2005-08-25 Yoram Nelken Web-based customer service interface
US8495002B2 (en) 2003-05-06 2013-07-23 International Business Machines Corporation Software tool for training and testing a knowledge base
US20050009604A1 (en) * 2003-07-11 2005-01-13 Hsien-Ta Huang Monotone voice activation device
US7552055B2 (en) * 2004-01-10 2009-06-23 Microsoft Corporation Dialog component re-use in recognition systems
US8160883B2 (en) 2004-01-10 2012-04-17 Microsoft Corporation Focus tracking in dialogs
CN1691581B (zh) * 2004-04-26 2010-04-28 彭诗力 基于特征值的多模式匹配方法
CN100403255C (zh) * 2005-03-17 2008-07-16 英华达(上海)电子有限公司 一种利用声音操作游戏的方法
JP4667138B2 (ja) * 2005-06-30 2011-04-06 キヤノン株式会社 音声認識方法及び音声認識装置
KR100632400B1 (ko) * 2005-11-11 2006-10-11 한국전자통신연구원 음성 인식을 이용한 입출력 장치 및 그 방법
US8229733B2 (en) * 2006-02-09 2012-07-24 John Harney Method and apparatus for linguistic independent parsing in a natural language systems
WO2008024800A2 (en) * 2006-08-21 2008-02-28 Western Slope Utilities, Inc. Systems and methods for swab transport in pipeline rehabilitation
US8620652B2 (en) * 2007-05-17 2013-12-31 Microsoft Corporation Speech recognition macro runtime
US8538757B2 (en) * 2007-05-17 2013-09-17 Redstart Systems, Inc. System and method of a list commands utility for a speech recognition command system
US8150699B2 (en) * 2007-05-17 2012-04-03 Redstart Systems, Inc. Systems and methods of a structured grammar for a speech recognition command system
US20080312929A1 (en) * 2007-06-12 2008-12-18 International Business Machines Corporation Using finite state grammars to vary output generated by a text-to-speech system
US7962344B2 (en) * 2007-06-29 2011-06-14 Microsoft Corporation Depicting a speech user interface via graphical elements
US8165886B1 (en) 2007-10-04 2012-04-24 Great Northern Research LLC Speech interface system and method for control and interaction with applications on a computing system
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
CN101436404A (zh) * 2007-11-16 2009-05-20 鹏智科技(深圳)有限公司 可会话的类生物装置及其会话方法
US8958848B2 (en) 2008-04-08 2015-02-17 Lg Electronics Inc. Mobile terminal and menu control method thereof
KR20090107365A (ko) * 2008-04-08 2009-10-13 엘지전자 주식회사 이동 단말기 및 그 메뉴 제어방법
US8762963B2 (en) * 2008-12-04 2014-06-24 Beck Fund B.V. L.L.C. Translation of programming code
KR101528266B1 (ko) * 2009-01-05 2015-06-11 삼성전자 주식회사 휴대 단말기 및 그의 응용프로그램 제공 방법
US8606578B2 (en) * 2009-06-25 2013-12-10 Intel Corporation Method and apparatus for improving memory locality for real-time speech recognition
CN101976186B (zh) * 2010-09-14 2013-04-03 方正科技集团苏州制造有限公司 一种计算机语音识别方法及其计算机
US20120089392A1 (en) * 2010-10-07 2012-04-12 Microsoft Corporation Speech recognition user interface
US20120155663A1 (en) * 2010-12-16 2012-06-21 Nice Systems Ltd. Fast speaker hunting in lawful interception systems
WO2012169679A1 (ko) * 2011-06-10 2012-12-13 엘지전자 주식회사 디스플레이 장치, 디스플레이 장치의 제어 방법 및 디스플레이 장치의 음성인식 시스템
WO2013022135A1 (en) * 2011-08-11 2013-02-14 Lg Electronics Inc. Electronic device and method of controlling the same
US9653073B2 (en) * 2013-11-26 2017-05-16 Lenovo (Singapore) Pte. Ltd. Voice input correction
US9589564B2 (en) 2014-02-05 2017-03-07 Google Inc. Multiple speech locale-specific hotword classifiers for selection of a speech locale
KR102281178B1 (ko) * 2014-07-09 2021-07-23 삼성전자주식회사 멀티-레벨 음성 인식 방법 및 장치
US11741951B2 (en) * 2019-02-22 2023-08-29 Lenovo (Singapore) Pte. Ltd. Context enabled voice commands
CN110598671B (zh) * 2019-09-23 2022-09-27 腾讯科技(深圳)有限公司 基于文本的虚拟形象行为控制方法、设备和介质
EP4302178A1 (en) * 2021-03-01 2024-01-10 Apple Inc. Virtual object placement based on referential expressions
CN113590360A (zh) * 2021-08-03 2021-11-02 北京博睿宏远数据科技股份有限公司 一种实现函数hook的方法、装置、计算机设备及存储介质
US12100395B2 (en) * 2021-11-30 2024-09-24 Google Llc Dynamic assistant suggestions during assistant browsing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04163618A (ja) * 1990-10-26 1992-06-09 Oki Electric Ind Co Ltd 音声操作コンピュータ

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH644246B (fr) * 1981-05-15 1900-01-01 Asulab Sa Dispositif d'introduction de mots a commande par la parole.
JPS58195957A (ja) * 1982-05-11 1983-11-15 Casio Comput Co Ltd 音声によるプログラム実行方式
US4704696A (en) * 1984-01-26 1987-11-03 Texas Instruments Incorporated Method and apparatus for voice control of a computer
US4980918A (en) * 1985-05-09 1990-12-25 International Business Machines Corporation Speech recognition system with efficient storage and rapid assembly of phonological graphs
US4759068A (en) * 1985-05-29 1988-07-19 International Business Machines Corporation Constructing Markov models of words from multiple utterances
US4776016A (en) * 1985-11-21 1988-10-04 Position Orientation Systems, Inc. Voice control system
US4839634A (en) * 1986-12-01 1989-06-13 More Edward S Electro-optic slate for input/output of hand-entered textual and graphic information
PH24865A (en) * 1987-03-24 1990-12-26 Ibm Mode conversion of computer commands
US4931950A (en) * 1988-07-25 1990-06-05 Electric Power Research Institute Multimedia interface and method for computer system
US5157384A (en) * 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface
DE3928049A1 (de) * 1989-08-25 1991-02-28 Grundig Emv Sprachgesteuertes archivsystem
EP0438662A2 (en) * 1990-01-23 1991-07-31 International Business Machines Corporation Apparatus and method of grouping utterances of a phoneme into context-de-pendent categories based on sound-similarity for automatic speech recognition
US5182773A (en) * 1991-03-22 1993-01-26 International Business Machines Corporation Speaker-independent label coding apparatus
WO1993003453A1 (en) * 1991-08-02 1993-02-18 Broderbund Software, Inc. System for interactve performance and animation of prerecorded audiovisual sequences

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04163618A (ja) * 1990-10-26 1992-06-09 Oki Electric Ind Co Ltd 音声操作コンピュータ

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08272572A (ja) * 1995-03-30 1996-10-18 Mitsubishi Electric Corp 移動体通信端末
JP2001515611A (ja) * 1997-12-30 2001-09-18 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ コマンド辞書を使用する音声認識装置
JP2013164601A (ja) * 1998-03-23 2013-08-22 Microsoft Corp オペレーティング・システムのアプリケーション・プログラム・インターフェース
JP2002525690A (ja) * 1998-09-21 2002-08-13 トムソン マルチメディア 遠隔制御される装置を含むシステム及び、装置の音声に基づく遠隔制御のための装置
JP2000215022A (ja) * 1998-12-17 2000-08-04 Internatl Business Mach Corp <Ibm> コンピュ―タ制御対話式表示システム、音声コマンド入力方法および記録媒体
WO2008136081A1 (ja) * 2007-04-20 2008-11-13 Mitsubishi Electric Corporation ユーザインタフェース装置及びユーザインタフェース設計装置
KR20160037182A (ko) * 2013-07-31 2016-04-05 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 다수의 동시적 스피치 인식기들을 사용하는 방법 및 장치

Also Published As

Publication number Publication date
CN1105464A (zh) 1995-07-19
CN1086484C (zh) 2002-06-19
US5664061A (en) 1997-09-02
KR970006403B1 (ko) 1997-04-28
CA2115210C (en) 1997-09-23
CA2115210A1 (en) 1994-10-22
DE69420888T2 (de) 2000-04-27
DE69420888D1 (de) 1999-11-04
EP0621531B1 (en) 1999-09-29
JP2856671B2 (ja) 1999-02-10
ATE185203T1 (de) 1999-10-15
EP0621531A1 (en) 1994-10-26

Similar Documents

Publication Publication Date Title
JP2856671B2 (ja) 話されたコマンドを認識する対話式コンピュータ・システム及びコンピュータ対話の方法
US20220156039A1 (en) Voice Control of Computing Devices
US10503468B2 (en) Voice enabling applications
US5960394A (en) Method of speech command recognition with dynamic assignment of probabilities according to the state of the controlled applications
US6092043A (en) Apparatuses and method for training and operating speech recognition systems
US6910012B2 (en) Method and system for speech recognition using phonetically similar word alternatives
EP0974141B1 (en) Extensible speech recognition system that provides a user with audio feedback
US5893063A (en) Data processing system and method for dynamically accessing an application using a voice command
US6311159B1 (en) Speech controlled computer user interface
CN112650831A (zh) 虚拟形象生成方法、装置、存储介质及电子设备
US20140149121A1 (en) Method of Handling Frequently Asked Questions in a Natural Language Dialog Service
US20020123894A1 (en) Processing speech recognition errors in an embedded speech recognition system
US20070239455A1 (en) Method and system for managing pronunciation dictionaries in a speech application
JP3476007B2 (ja) 認識単語登録方法、音声認識方法、音声認識装置、認識単語登録のためのソフトウエア・プロダクトを格納した記憶媒体、音声認識のためのソフトウエア・プロダクトを格納した記憶媒体
US5897618A (en) Data processing system and method for switching between programs having a same title using a voice command
US6963834B2 (en) Method of speech recognition using empirically determined word candidates
JP4499389B2 (ja) 音声処理のためのデシジョン・ツリーの質問を生成するための方法および装置
JP2002062891A (ja) 音素割当て方法
JP3634863B2 (ja) 音声認識システム
Gustafson et al. Experiences from the development of August-a multi-modal spoken dialogue system
US11856674B1 (en) Content-based light illumination
US20240095987A1 (en) Content generation
US20230148275A1 (en) Speech synthesis device and speech synthesis method
WO2019113516A1 (en) Voice control of computing devices
KR20230021395A (ko) 사용자 요구가 반영된 동시 통역 결과를 생성하는 동시 통역 서비스 장치 및 방법

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees