IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立情報通信エンジニアリングの特許一覧

特開2024-126054音声入力支援システム、音声入力支援方法
<>
  • 特開-音声入力支援システム、音声入力支援方法 図1
  • 特開-音声入力支援システム、音声入力支援方法 図2
  • 特開-音声入力支援システム、音声入力支援方法 図3
  • 特開-音声入力支援システム、音声入力支援方法 図4
  • 特開-音声入力支援システム、音声入力支援方法 図5
  • 特開-音声入力支援システム、音声入力支援方法 図6
  • 特開-音声入力支援システム、音声入力支援方法 図7
  • 特開-音声入力支援システム、音声入力支援方法 図8
  • 特開-音声入力支援システム、音声入力支援方法 図9
  • 特開-音声入力支援システム、音声入力支援方法 図10
  • 特開-音声入力支援システム、音声入力支援方法 図11
  • 特開-音声入力支援システム、音声入力支援方法 図12
  • 特開-音声入力支援システム、音声入力支援方法 図13
  • 特開-音声入力支援システム、音声入力支援方法 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024126054
(43)【公開日】2024-09-20
(54)【発明の名称】音声入力支援システム、音声入力支援方法
(51)【国際特許分類】
   G10L 15/10 20060101AFI20240912BHJP
   G10L 15/22 20060101ALI20240912BHJP
【FI】
G10L15/10 500T
G10L15/22 453
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023034185
(22)【出願日】2023-03-07
(71)【出願人】
【識別番号】000233295
【氏名又は名称】株式会社日立情報通信エンジニアリング
(74)【代理人】
【識別番号】110001689
【氏名又は名称】青稜弁理士法人
(72)【発明者】
【氏名】佐々木 孝章
(72)【発明者】
【氏名】杉山 隆司
(57)【要約】
【課題】入力された音声に含まれる専門用語を精度よく低コストで認識し、その認識結果に応じて、制御対象に対する制御を正しく行う。
【解決手段】専門用語を含む入力された音声の入力状態を判定し、判定の結果に応じて、汎用音声認識エンジンによる認識結果に含まれる文字列と所定の関係にある専門用語の候補文字列の中から、候補文字列についての文字列に関する条件と候補文字列についての時間的な条件とを満たす候補文字列を決定し、決定した候補文字列に対応する、制御対象に対する制御を行うための所定のコマンドを出力する。
【選択図】 図6
【特許請求の範囲】
【請求項1】
プロセッサとメモリとを有したコンピュータにより、入力された音声の認識結果に応じた制御を行うための支援をする音声入力支援システムであって、
前記プロセッサは、
専門用語を含む前記入力された音声の入力状態を判定し、
前記判定の結果に応じて、汎用音声認識エンジンによる認識結果に含まれる文字列と所定の関係にある専門用語の候補文字列の中から、前記候補文字列についての文字列に関する条件と前記候補文字列についての時間的な条件とを満たす候補文字列を決定し、
前記決定した候補文字列に対応する、制御対象に対する制御を行うための所定のコマンドを出力する、
ことを特徴とする音声入力支援システム。
【請求項2】
前記プロセッサは、
前記候補文字列に続く候補文字列があるか否かという前記文字列に関する条件と、前記候補文字列を確定させるための監視時間を経過したか否かという前記時間的な条件とに基づいて、前記候補文字列を決定する、
ことを特徴とする請求項1に記載の音声入力支援システム。
【請求項3】
前記プロセッサは、
前記文字列に関する条件と前記時間的な条件とを満たさない場合、前記音声の入力状態の判定から前記候補文字列の決定までの処理を繰り返す、
ことを特徴とする請求項1に記載の音声入力支援システム。
【請求項4】
前記音声入力支援システムは、
前記候補文字列と前記コマンドと前記文字列に関する条件と前記時間的な条件とを対応付けたテーブルを有し、
前記プロセッサは、
前記テーブルを用いて、前記候補文字列を決定するための処理を行う、
ことを特徴とする請求項1に記載の音声入力支援システム。
【請求項5】
前記プロセッサは、
前記音声の入力状態が音声の入力終了を示す状態にあると判定した場合、前記文字列に関する条件と前記時間的な条件とに基づいて前記候補文字列を決定せずに、前記判定の時点において決定されている候補文字列を採用し、
前記採用した候補文字列に対応するコマンドを出力する、
ことを特徴とする請求項1に記載の音声入力支援システム。
【請求項6】
前記プロセッサは、
歯科医療に関する専門用語を含む前記入力された音声の状態の判定と、前記候補文字列の決定と、前記コマンドの出力とを実行する、
ことを特徴とする請求項1に記載の音声入力支援システム。
【請求項7】
コンピュータにより、入力された音声の認識結果に応じた制御を行うための支援をする音声入力支援方法であって、
専門用語を含む前記入力された音声の入力状態を判定し、
前記判定の結果に応じて、汎用音声認識エンジンによる認識結果に含まれる文字列と所定の関係にある専門用語の候補文字列の中から、前記候補文字列についての文字列に関する条件と前記候補文字列についての時間的な条件とを満たす候補文字列を決定し、
前記決定した候補文字列に対応する、制御対象に対する制御を行うための所定のコマンドを出力する、
ことを特徴とする音声入力支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声入力支援システム、音声入力支援方法に関する。
【背景技術】
【0002】
従来から、音声をテキスト化する音声認識エンジンには、特定領域の分野に特化した専用音声認識エンジンと、一般的な単語やフレーズに対応する汎用音声認識エンジンが知られており、これらのエンジンを用いて、音声入力を支援する技術がある。
【0003】
例えば、特許文献1には、「端末装置1は、音声信号の入力を受け付ける音声入力部11と、音声信号に対する音声認識を行う音声認識部12と、音声信号を音声認識サーバ2に送信する音声送信部14と、サーバ音声認識結果を受信するサーバ音声認識結果受信部15と、複数のコマンドが登録されたコマンド辞書17と、端末内音声認識結果をコマンド辞書17と照合して、端末内音声認識結果およびサーバ音声認識結果のうちいずれの音声認識結果を利用するか決定し、決定された音声認識結果に基づいて音声信号によって示されるコマンドを特定するコマンド照合部16と、コマンド照合部16によって特定されたコマンドを実行するコマンド実行部18と、を備える」ことが記載されている。
【0004】
また、例えば、特許文献2には、「電子内視鏡システムは、観察対象物の観察画像を撮像する撮像部(132)を有する電子内視鏡(100)と;電子内視鏡に対して音声情報及び/又は文字情報を入力可能な入力手段(112、203、301、402、700、710)と;電子内視鏡とは別体で、表示部(208、303)を有する外部機器(200、300)と;を備え、電子内視鏡は、撮像部が撮像した観察画像と、入力手段が入力した音声情報及び/又は文字情報とを含む電子カルテデータを生成する生成部(111)と;生成部が生成した電子カルテデータを保持する保持部(117)と;保持部が保持する電子カルテデータを外部機器に無線送信する無線送信部(118)と;を有する」ことが記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2013-064777号公報
【特許文献2】特開2013-106752号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
入力された音声に含まれる専門用語を正確かつリアルタイムに認識し、その認識結果に応じて、アプリケーション等の実行や端末の操作といった、入力音声に基づく制御を制御対象に対して正しく行うためには、専用音声認識エンジンを使用することが望ましい。しかし、専用音声認識エンジンは汎用音声認識エンジンに比べ高価であり、システムのトータルコストが増えてしまう。また、専用音声認識エンジンは、特定業種に特化されているために、業種に応じてエンジンを使い分ける必要があり、システムを運用する際の負担が大きい。
【0007】
図14は、従来の音声入力システムの一例を示す図である。図14に示すように、従来の音声入力システムでは、利用者Uが操作する端末1401が、アプリケーションを実行する等して、当該利用者Uが発話した専門用語を含む音声(例えば、作業者が塀等の設備の状態を診断して説明を行ったときの音声)を入力するための音声入力処理、当該発話の内容を記録するための発話記録処理を行う。端末1401は、音声入力あるいは発話記録されたこれらの音声に基づくデータを、音声入力システム1402に出力する。音声入力システム1402の音声入力支援プログラム1403は、音声認識制御部1403Aが、上記音声に基づくデータを、専用音声認識エンジン1404Aを有した音声認識システム1404および汎用音声認識エンジン1405Aを有した音声認識システム1405に出力する。
【0008】
そして、コマンド照合部1403Bが、それぞれの認識結果と当該認識結果に対応する所定のコマンドを特定した後、特定したコマンドをコマンド発行部1406に出力するとともに、上記音声に基づくデータから得られるテキストをテキスト登録部1407に出力する。その後、コマンド発行部1406、テキスト登録部1407は、それぞれ、コマンド照合部1403Bから得られたコマンドおよびテキストを、所定のコンピュータ(例えば、作業者が塀の診断結果の説明のために用いる診断用のコンピュータ)に出力する。上記所定のコンピュータのアプリケーション1408は、画面制御プログラム1408Aにより音声入力システム1402から受け取ったコマンドに従って、当該コマンドに基づいた画面制御等の処理を実行するとともに、テキスト記録プログラム1408Bにより音声入力システム1402から受け取ったテキストを、データ(例えば、上記診断の説明を行ったときの音声をテキスト化したデータ)としてアプリケーションの画面1409上に表示する。
【0009】
このように、従来は、専門用語を対象とした音声の認識精度を考慮すると、汎用音声認識エンジンと専用音声認識エンジンとの併用に伴うコスト負担が大きく、システムの運用負担が大きくなっていた。このようなコスト負担や運用負担を避けるため、汎用音声認識エンジンのみで音声認識する場合、専門用語の音声の認識精度が低くなる。その結果、誤認識された認識結果から得られた正確でないコマンドが出力され、制御対象に対して本来意図した制御を行うことができないという新たな問題が生じる。このような問題は、上述のような作業者による塀等の設備の状態を専門的に診断する場合だけでなく、他の専門分野の専門用語を音声認識する場合も同様に生じ得る。このように、様々な専門分野において、専用音声認識エンジンを用いることなく、精度のよい音声認識を低コストで行い、その認識結果から得られるコマンドを正しく変換して出力する技術の開発が求められている。すなわち、入力された音声に含まれる専門用語を精度よく低コストで認識し、その認識結果に応じて、制御対象に対する制御を正しく行うことが可能な技術が求められていた。
【0010】
本発明は、入力された音声に含まれる専門用語を精度よく低コストで認識し、その認識結果に応じて、制御対象に対する制御を正しく行うことが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明にかかる音声入力支援システムは、プロセッサとメモリとを有したコンピュータにより、入力された音声の認識結果に応じた制御を行うための支援をする音声入力支援システムであって、前記プロセッサは、専門用語を含む前記入力された音声の入力状態を判定し、前記判定の結果に応じて、汎用音声認識エンジンによる認識結果に含まれる文字列と所定の関係にある専門用語の候補文字列の中から、前記候補文字列についての文字列に関する条件と前記候補文字列についての時間的な条件とを満たす候補文字列を決定し、前記決定した候補文字列に対応する、制御対象に対する制御を行うための所定のコマンドを出力する、ことを特徴とする音声入力支援システムとして構成される。
【発明の効果】
【0012】
本発明によれば、入力された音声に含まれる専門用語を精度よく低コストで認識し、その認識結果に応じて、制御対象に対する制御を正しく行うことができる。
【図面の簡単な説明】
【0013】
図1】本実施の形態における音声入力支援システムを含む音声情報入力システムの構成例を示す図である。
図2】コンピュータの概略の一例を示す図である。
図3】音声認識結果の概念を説明するための図である。
図4】候補ワードリストの例を示す図である。
図5】実行端末に出力されるコマンドの採用基準を説明するための図である。
図6】本システムで行われる処理(音声入力支援処理)の一例を示すフローチャートである。
図7】コマンド候補テーブルの例を示す図である。
図8】コマンド送信管理テーブルの例を示す図である。
図9図5において説明した採用基準に対応する処理ステップ例(c-1)を説明するための図である。
図10図5において説明した採用基準に対応する処理ステップ例(c-2)を説明するための図である。
図11図5において説明した採用基準に対応する処理ステップ例(c-3)を説明するための図である。
図12図5において説明した採用基準に対応する処理ステップ例(c-4)を説明するための図である。
図13図5において説明した採用基準に対応する他の処理ステップ例(c-1)を説明するための図である。
図14】従来の音声入力システムの一例を示す図である。
【発明を実施するための形態】
【0014】
以下、図面を参照して本発明の実施形態を説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施する事が可能である。特に限定しない限り、各構成要素は単数でも複数でも構わない。
【0015】
図面において示す各構成要素の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面に開示された位置、大きさ、形状、範囲などに限定されない。
【0016】
以下の説明では、「データベース」、「テーブル」、「リスト」等の表現にて各種情報を説明することがあるが、各種情報は、これら以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「XXテーブル」、「XXリスト」等を「XX情報」と呼ぶことがある。識別情報について説明する際に、「識別情報」、「識別子」、「名」、「ID」、「番号」等の表現を用いた場合、これらについてはお互いに置換が可能である。
【0017】
同一あるいは同様な機能を有する構成要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。ただし、これらの複数の構成要素を区別する必要がない場合には、添字を省略して説明する場合がある。
【0018】
また、以下の説明では、プログラムを実行して行う処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU(Central Processing Unit)、GPU(Graphics Processing Unit))によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)および/またはインターフェースデバイス(例えば通信ポート)等を用いながら行うため、処理の主体がプロセッサとされてもよい。同様に、プログラムを実行して行う処理の主体が、プロセッサを有するコントローラ、装置、システム、計算機、ノードであってもよい。プログラムを実行して行う処理の主体は、演算部であれば良く、特定の処理を行う専用回路(例えばFPGA(Field-Programmable Gate Array)やASIC(Application Specific Integrated Circuit))を含んでいてもよい。
【0019】
プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記憶メディアであってもよい。プログラムソースがプログラム配布サーバの場合、プログラム配布サーバはプロセッサと配布対象のプログラムを記憶する記憶資源を含み、プログラム配布サーバのプロセッサが配布対象のプログラムを他の計算機に配布してもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
【0020】
図1は、本実施の形態における音声入力支援システムを含む音声情報入力システムの構成例を示す図である。図1に示すように、音声情報入力システム1000は、利用者Uから専門用語を含む発話を受けて、当該発話から得られる音声を音声入力システム200に出力する利用者端末100と、利用者端末100から受け取った音声を認識し、認識結果に基づいて、制御対象の一例である実行端末300に対する制御を行うためのコマンドを出力するとともに、上記発話のテキスト情報を出力する上記音声入力システム200と、上記音声入力システム200から受け取ったコマンドに基づいて、当該コマンドに応じた制御を行うとともに、上記発話のテキスト情報をディスプレイ等の表示装置400に出力する上記実行端末300と、を有して構成される。専門用語は、ある特定分野や業種で用いられている用語である。
【0021】
上記実行端末300に対する制御には、実行端末300のアプリケーションの実行や、アプリケーション上での動作の制御、実行端末300に接続された表示装置400に対する画面制御をはじめ、広く制御対象に対する制御を含む。利用者端末100、音声入力システム200、実行端末300の具体的な構成については後述する。利用者端末100は、例えば、利用者Uからハンズフリー操作を受け付けて、後述する図2の入力装置1606から入力された専門用語を含む音声を音声入力システム200に出力する。利用者端末100と、音声入力システム200と、実行端末300とは、例えば、図示しない一般的な通信ネットワークを介して、互いに通信可能に接続される。
【0022】
本システムで用いられる利用者端末100、音声入力システム200、実行端末300は、例えば、図2(コンピュータ概略図)に示すような、CPU1601と、メモリ1602と、HDD(Hard Disk Drive)等の外部記憶装置1603と、CD(Compact Disk)やUSBメモリ等の可搬性を有する記憶媒体1608に対して情報を読み書きする読書装置1607と、マイク、キーボード、マウスといった音声を含む各種情報の入力を受け付ける入力装置1606と、入力され、処理に用いられる各種情報を出力するディスプレイ等の出力装置1605と、通信ネットワークに接続するためのNIC(Network Interface Card)等の通信装置1604と、これらを連結するシステムバス等の内部通信線(システムバスという)1609と、を備えた一般的なコンピュータ1600により実現できる。
【0023】
また、各端末やシステムに記憶され、あるいは処理に用いられる様々なデータは、CPU1601がメモリ1602または外部記憶装置1603(例えば、記憶部2014)から読み出して利用することにより実現可能である。また、これらの端末やシステムが有する各機能部(例えば、後述する音声入力支援システム201の音声受信部2011、音声認識制御部2012、解析部2013、音声認識システム202、コマンド発行部203、テキスト登録部204)は、CPU1601が外部記憶装置1603に記憶されている所定のプログラムをメモリ1602にロードして実行することにより実現可能である。
【0024】
上述した所定のプログラムは、読書装置1607を介して記憶媒体1608から、あるいは、通信装置1604を介してネットワークから、外部記憶装置1603に記憶(ダウンロード)され、それから、メモリ1602上にロードされて、CPU1601により実行されるようにしてもよい。また、読書装置1607を介して、記憶媒体1608から、あるいは通信装置1604を介してネットワークから、メモリ1602上に直接ロードされ、CPU1601により実行されるようにしてもよい。
【0025】
以下では、音声入力システム200が、ある1つのコンピュータにより構成される場合を例示するが、これらの機能の全部または一部が、クラウドのような1または複数のコンピュータに分散して設けられ、ネットワークを介して互いに通信することにより同様の機能を実現してもよい。
【0026】
利用者端末100は、利用者Uから、専門用語を含む発話を受けて、音声入力処理や発話記録処理を行い、これらの音声を音声入力システム200に出力する。上記発話としては、例えば、煉瓦腐食などの物性診断、医師や歯科医師が行う患者に対する診察、治療、診療などの医療行為をはじめ、様々な専門分野の知見を必要とする業務の従事者による発話が含まれる。以下では、煉瓦腐食などの物性診断を行って設備を点検する場合の音声認識について説明するが、他の様々な専門分野での音声認識についても同様に適用できる。
【0027】
利用者端末100は、利用者Uの発話の音声を入力して音声入力システム200に出力するための音声入力処理、上記発話の音声を記録して音声入力システム200に出力するための発話記録処理を実行する。これらの処理は、従来から知られている各種アプリケーションを実行することなどで実現される。また、これらの処理は、マイクなどの音声を入力するための入力装置から受信した音声に基づいて行われる。
【0028】
音声入力システム200の音声入力支援システム201では、音声受信部2011が、利用者端末100から得られた、入力および記録された上記発話の音声を受け取り、当該音声を音声認識制御部2012に出力する。音声認識制御部2012では、音声受信部2011から受け取った上記音声に含まれる音声を等間隔(例えば、100msピッチ)に分割する。音声認識制御部2012は、分割した音声を音声認識システム202の汎用音声認識エンジン2021に順次出力し、汎用音声認識エンジン2021により音声認識された音声の認識結果を受け取る。
【0029】
汎用音声認識エンジン2021は、上記音声入力処理および上記発話記録処理に共通して用いられる音声認識エンジンである。汎用音声認識エンジン2021は、リアルタイムに音声認識した音声に含まれる文字列の認識結果を音声認識制御部2012に出力する。汎用音声認識エンジン2021は、特定業種に特化されている専用音声認識エンジンではない、広く様々な業種で用いられる音声認識エンジンである。以下では、文字列やワードといった場合には、単数文字や英数字を含むほか、音声認識の対象となる様々な音声情報を含む。
【0030】
汎用音声認識エンジン2021は、認識した文字列に対応付けて、入力された音声が終了しているか否かの状態の種別を示す「暫定」あるいは「確定」のいずれかを、音声の入力状態を示す認識結果として出力する。これにより、音声認識制御部2012が、上記種別として「暫定」を受け取った場合には、その時点で音声の入力が継続されると判断することができる。また、音声認識制御部2012が、上記種別として「確定」を受け取った場合には、その時点以降の音声の入力が終了していると判断することができる。音声認識制御部2012が受け取った上記種別は、解析部2013に引き継がれる。
【0031】
図3は、音声認識結果の概念を説明するための図である。図3では、専門用語の一例として、「煉瓦塀腐食」という発話から得られた音声が入力された場合を示している。図3に示すように、音声入力システム200に「煉瓦塀腐食」が入力されている場合、音声の入力状態は入力中を示す「暫定」であり、「煉瓦」のほか、「煉瓦」に続く文字列から得られる抽出ワードの候補として「煉瓦塀」や「煉瓦塀腐食」が認識される可能性がある。そのため、汎用音声認識エンジン2021は、これらの認識結果を暫定認識結果T301として出力する。
【0032】
音声認識制御部2012では、汎用音声認識エンジン2021から受け取ったこれらの文字列を解析部2013に出力する。解析部2013では、後述する監視時間が経過するまで、あるいは音声入力が終了するまで、これらの文字列をコマンド発行部203に出力すべきコマンドに対応する抽出ワードの候補として保留し、保持しておく。この例では、解析部2013は、後述する音声入力支援処理において、文字列「煉瓦塀腐食」が認識結果として採用され、コマンド発行部203に対して「煉瓦塀フショク」が出力されたことを示している。
【0033】
音声認識制御部2012は、音声の入力状態が入力終了を示す「確定」になると、それまでの認識結果を確定認識結果T302として出力する。この例では、確定認識結果T302として「煉瓦塀腐食」が出力されているが、後述するように、すでに文字列「煉瓦塀腐食」が認識結果として採用されているため、解析部2013では破棄される。上記採用や破棄は、後述する候補ワードリスト2014Aを用いて判定されるが、その具体的な基準については後述する。そして、音声認識制御部2012は、音声認識システム202から受け取った認識結果を解析部2013に出力するとともに、その認識結果を含む発話の記録をテキスト登録部204に出力する。
【0034】
解析部2013では、音声認識制御部2012から受け取った認識結果と、記憶部2014に記憶されている候補ワードリスト2014Aとを用いて、実行端末300が実行すべきコマンドに対応する専門用語の候補を抽出し、抽出した候補の専門用語が後述する採用基準で示された条件を満たした場合に、その専門用語に対応するコマンドをコマンド発行部203に出力する。
【0035】
図4は、候補ワードリスト2014Aの例を示す図である。候補ワードリスト2014Aは、音声入力システム200が専門用語の認識結果に応じて実行端末300に出力するコマンドの候補を定めたリストである。図4に示すように、候補ワードリスト2014Aは、音声認識制御部2012から受け取った認識結果に含まれる専門用語の候補を示す抽出ワードと、抽出ワードに応じて出力されるコマンドと、抽出ワードに続く別の抽出ワードやこれらの組合せを含む文字列の有無を判定するための抽出フラグと、当該有無を決定するまでの時間である監視時間とが対応付けて記憶されている。抽出フラグには、抽出ワードに続く別の抽出ワードやこれらの組合せがある場合は「確定」が書き込まれ、抽出ワードに続く別の抽出ワードやこれらの組合せがない場合は、「暫定」が書き込まれている。
【0036】
上述した抽出ワードは、一般的なキーワードと異なり、音声の認識結果から抽出され、コマンドとして変換される可能性がある候補となるワードを表す。上記抽出フラグは、候補となる抽出ワードについて、その抽出ワードに続く別の抽出ワードやこれらの組合せを含む文字列に関する条件(抽出ワードに続く別の抽出ワードの有無に関する条件)であり、上記監視時間は、その文字列に含まれる抽出ワードに続く別の抽出ワードやこれらの組合せに関する時間的な条件(抽出ワードを確定させるための(確定させるまでの)経過時間に関する条件)であるといえる。
【0037】
図4では、例えば、認識結果に含まれる文字列が抽出ワード「煉瓦」であると決定されるためには、監視時間が「500ms」を経過することが必要であることを示している。ここでは、抽出ワード「煉瓦」に続く抽出ワードやそれらの組み合わせ(「塀」、「腐食」、「煉瓦塀」、「煉瓦塀腐食」)があるため、抽出ワード「煉瓦」の抽出フラグには「確定」が書き込まれている。抽出ワード「塀」、「腐食」、「煉瓦塀」のそれぞれについても、これらの続く抽出ワードやそれらの組み合わせ「煉瓦塀腐食」があるため、抽出ワード「煉瓦」と同様の監視時間、抽出フラグが書き込まれている。
【0038】
また、例えば、認識結果に含まれる文字列が抽出ワード「煉瓦塀腐食」であると決定されるためには、監視時間の経過は不要(「0ms」)であることを示している。これは、当該抽出ワード「煉瓦塀腐食」に続く抽出ワードやそれらの組み合わせがなく、抽出フラグが「暫定」として書き込まれているためである。
【0039】
このように、図4では、抽出ワード「煉瓦」、「塀」、「腐食」、「煉瓦塀」が記憶されたレコード401a~401dまでの抽出フラグには、これらの次に続く抽出ワード「煉瓦塀腐食」が候補として存在するため「確定」が記憶され、抽出ワード「煉瓦塀腐食」が記憶されたレコード401eの抽出フラグには、これらの次に続く抽出ワードの候補が存在しないため「暫定」が記憶されている。
【0040】
図4では、抽出ワードとして、「煉瓦塀腐食」のような物性診断を行う場合に用いられる専門用語を認識する場合を説明したが、レコード401f、401gのような医療行為で行われる事務処理で用いられる電子カルテの入出力に関する専門用語が抽出ワードとして記憶されてもよい。さらに、これらの専門用語に関連して行われる操作や画面制御などを行うための抽出ワードをレコード401h、401iとして記憶してもよい。もちろん、レコード401j~401nのように、歯科治療や歯科診療などの医療行為で用いられる他の専門分野の専門用語が抽出ワードとして記憶されてもよい。このようなレコードを候補ワードリスト2014Aに登録しておくことにより、様々な専門用語や、その専門用語に関連して用いられる用語に対応するコマンドを精度よく出力することができる。
【0041】
図5は、実行端末300に出力されるコマンドの採用基準を説明するための図である。解析部2013は、当該採用基準に基づいて、実行端末300に送信すべきコマンドを判断する。
【0042】
図5に示すように、解析部2013は、入力された音声の入力状態を示す種別と、上述した抽出フラグとの関係に基づいて、コマンドの採用を判断する解析処理を行う。例えば、解析部2013は、音声の入力状態を示す種別が「暫定」であり、かつ認識結果に含まれる文字列から得られる抽出ワードに対応する抽出フラグが「暫定」である場合、当該抽出ワードに対応するコマンドを、採用するコマンドとして決定する。この場合の例については、処理ステップ例(c-1)としてフローチャートを用いて後述する。
【0043】
また、解析部2013は、音声の入力状態を示す種別が「暫定」であり、かつ認識結果に含まれる文字列から得られる抽出ワードに対応する抽出フラグが「確定」である場合、次の基準に基づいて、採用するコマンドを決定する。まず、1つ目は、認識結果に含まれる文字列から得られる抽出ワードに続いて監視時間内に新たな文字列を受け取らなかった場合、解析部2013は、その時点の文字列から得られる抽出ワードに対応するコマンドを採用する。2つ目は、認識結果に含まれる文字列から得られる抽出ワードに続いて監視時間内に新たな文字列を受け取った場合において、その新たな文字列が抽出ワードでない場合、上記新たな文字列を受け取る前の当該文字列から得られる抽出ワードに対応するコマンドを採用する。これら場合の例については、それぞれ、処理ステップ例(c-2)、(c-3)としてフローチャートを用いて後述する。
【0044】
さらに、解析部2013は、音声の入力状態を示す種別が「確定」である場合、認識結果に含まれる文字列から得られる抽出ワードに対応する抽出フラグにかかわらず(N/A)、当該文字列から得られる抽出ワードに対応するコマンドを採用する。この場合の例については、処理ステップ例(c-4)としてフローチャートを用いて後述する。
【0045】
図1に戻り、コマンド発行部203では、解析部2013から受け取った上記採用されたコマンドを実行端末300に送信する。また、テキスト登録部204では、音声認識制御部2012から受け取った発話の記録を実行端末300に送信する。
【0046】
実行端末300では、画面制御部301が、音声入力システム200から受け取った上記コマンドに従って、表示装置400に対する画面制御や実行端末300に対する操作など、コマンドに応じた制御を実行する。また、テキスト記録部302が、音声入力システム200から受け取った上記発話の記録を表示装置400の画面上に表示する。当該発話の記録は、例えば、テキスト情報であり、画面に表示するだけでなく、所定のデータベースに記録されてもよい。
【0047】
以下具体的に説明するが、本実施例では、従来のように専用音声認識エンジンを使用せずに、汎用音声認識エンジンを用いて専門用語を認識する。また、音声の入力状態に応じて、汎用音声認識エンジンの認識結果に含まれる文字列から得られる抽出ワードの候補の中から、時間的な要素を考慮しながら、採用すべき抽出ワードの適否を判断し、適切と判断された抽出ワードに応じた正しいコマンドを出力している。
【0048】
続いて、本システムで行われる処理について説明する。図6は、本システムで行われる処理(音声入力支援処理)の一例を示すフローチャートである。以下では、入力された音声が汎用音声認識エンジン2021により順次認識されているものとする。
【0049】
図6に示すように、音声入力支援処理では、まず、解析部2013は、汎用音声認識エンジン2021による音声認識の認識結果を受け取る(S1)。解析部2013は、候補ワードリスト2014Aを参照し、当該認識結果に含まれる文字列と合致する抽出ワードおよびコマンドを読み取り、読み取った抽出ワードに対応する文字列の開始位置および長さ(文字数)を、コマンド候補テーブルに登録する(S2)。上記合致には、部分一致および全部一致を含む。また、上記文字列の開始位置は、抽出ワードに合致した、認識結果に含まれる文字列の開始位置である。
【0050】
図7は、コマンド候補テーブル701の例を示す図である。コマンド候補テーブル701は、認識結果に含まれる文字列から得られる抽出ワードと当該抽出ワードに対応するコマンドとを一時的に記憶したワークテーブルである。当該ワークテーブルは、記憶部2014に記憶される。
【0051】
図7に示すように、コマンド候補テーブル701は、認識結果に含まれる文字列に対応する抽出ワードおよびコマンドと、上記文字列の開始位置および長さとが対応付けて記憶されている。例えば、レコード701aでは、解析部2013が、上記認識結果に含まれる文字列に合致する抽出ワードが「煉瓦」である場合、当該抽出ワードと、これに対応するコマンド「煉瓦」とを、候補ワードリスト2014Aから読み取り、コマンド候補テーブル701に書き込む。また、解析部2013は、上記「煉瓦」が認識結果から最初に読み取った文字列に合致した抽出ワードであるため、開始位置に「0」を書き込み、「煉瓦」の長さである「2」を書き込む。
【0052】
続いて、解析部2013は、コマンド候補テーブル701の各レコードの開始位置を読み取り、各レコードをソートする(S3)。当該ソートを行う理由は、開始位置が重複するレコードを判定するためである。
【0053】
解析部2013は、コマンド候補テーブル701の開始位置が重複するレコードについて、長さが最長のレコードを残す(S4)。例えば、解析部2013は、上記認識結果に含まれる文字列と合致する抽出ワードが複数存在した場合、これらの抽出ワードのうち、長さが最も長い抽出ワードのレコードを、採用すべき候補の抽出ワードとして絞り込み、他のレコードをコマンド候補テーブル701から削除する。
【0054】
解析部2013は、入力された音声の入力状態を示す種別が「暫定」であるか否かを判定し(S5)、当該種別が「暫定」でない、すなわち「確定」であると判定した場合(S5;No)、音声入力が終了したと判断し、S9に進む。一方、解析部2013は、当該種別が「暫定」であると判定した場合(S5;Yes)、音声入力が継続していると判断し、S6に進む。解析部2013は、候補ワードリスト2014Aを参照し、S4までの処理で残った抽出ワードに対応する抽出フラグを読み取り、当該抽出フラグが「確定」であるか否かを判定する(S6)。
【0055】
解析部2013は、上記抽出フラグが「確定」でないと判定した場合(S6;No)、後に文字列が続く可能性はないと判断し、S9に進む。一方、解析部2013は、上記抽出フラグが「確定」であると判定した場合(S6;Yes)、後に文字列が続く可能性があると判断し、S7に進む。
【0056】
さらに、解析部2013は、後に続く文字列があり、かつ当該文字列が候補ワードリスト2014Aにない、という条件を満たすか否かを判定する(S7)。当該条件は、上記認識結果に含まれる文字列のうち、候補ワードリスト2014Aに含まれる抽出ワードの候補、すなわち専門用語を含む抽出ワードの候補が、後続の文字列に含まれる可能性があるか否かを判定するための条件である。つまり、上記認識結果に後続の文字列がない場合、あるいは上記認識結果に後続の文字列があっても、その文字列が候補ワードリスト2014Aに記憶された抽出ワードやその組み合わせでない場合は、当該後続の文字列は、抽出ワードとして登録されている専門用語あるいは関連して用いられる用語ではないため、候補ワードリスト2014Aによるコマンドへの変換は不要と判断される。
【0057】
解析部2013は、上記条件を満たすと判定した場合(S7;Yes)、上述のとおりコマンドへの変換は不要と判断し、S9に進む。一方、解析部2013は、上記条件を満たさないと判定した場合(S7;No)、後続の文字列がないか、または後続の文字列が候補ワードリスト2014Aに登録されている抽出ワードを含む可能性があると判断する。そのため、解析部2013は、後続の文字列を含めて候補ワードリスト2014Aによるコマンドへの変換が必要か否かを判断するため、S8に進む。
【0058】
解析部2013は、候補ワードリスト2014Aを参照し、S4までの処理で残った抽出ワードに対応する監視時間を読み取り、当該監視時間が経過したか否かを判定する(S8)。
【0059】
解析部2013は、上記監視時間が経過していないと判定した場合(S8;No)、後続の文字列を含めて候補ワードリスト2014Aによるコマンドへの変換が必要となる可能性があると判断し、S1に戻り、以降の処理を繰り返す。
【0060】
一方、解析部2013は、上記監視時間が経過したと判定した場合(S8;Yes)、後続に上記変換が必要となる文字列がないと判断し、その時点でコマンド候補テーブル701に記憶されているレコードを、コマンド送信管理テーブルに登録する(S9)。
【0061】
図8は、コマンド送信管理テーブルの例を示す図である。図8に示すように、コマンド送信管理テーブル801は、コマンド候補テーブル701と同様の項目を有している。コマンド送信管理テーブル801は、コマンド発行部203に出力するために採用する最終的なコマンドを一時的に記憶したワークテーブルである。当該ワークテーブルは、記憶部2014に記憶される。コマンド送信管理テーブル801の各項目はコマンド候補テーブル701と同様であるため説明を省略するが、レコード801aでは、コマンド発行部203に出力する最終的なコマンド「煉瓦塀」を含むレコード801aが記憶されている。
【0062】
そして、解析部2013は、コマンド送信管理テーブル801に記憶されているレコードに含まれるコマンドをコマンド発行部203に出力し(S10)、コマンド送信管理テーブル801をクリアしてリセットする(S11)。S11の処理が終了すると、図6に示した音声入力支援処理が終了し、その後、コマンド発行部203は、解析部2013から受け取ったコマンドを、実行端末300に送信する。
【0063】
このような音声入力支援処理を実行することにより、専用音声認識エンジンを用いることなく、汎用音声認識エンジンだけで、専門用語を含む発話を精度よくリアルタイムに音声認識し、その認識結果から得られるコマンドを精度よく出力することができるとともに、発話に基づく制御対象に対する制御の即応性を確保することができる。そして、発話の記録を含め、システム全体のコスト負担や運用負担を低減することができる。
【0064】
続いて、図6に示した音声入力支援処理を、具体的な事例を交えて説明する。
【0065】
図9は、図5において説明した採用基準に対応する処理ステップ例(c-1)を説明するための図である。この例では、利用者Uが利用者端末100を用いて、「煉瓦塀腐食」と発話している場合について説明する。
【0066】
図9に示すように、解析部2013は、音声認識システム202から、まず、認識結果として文字列「煉瓦」と、音声の入力状態を示す種別「暫定」を受け取り、上記文字列「煉瓦」に合致する抽出ワード「煉瓦」と、これに対応するコマンド「煉瓦」を候補ワードリスト2014Aから読み取り、開始位置および長さとともにコマンド候補テーブル701に書き込む。この例では、「煉瓦」が認識結果から最初に読み取った文字列に合致した抽出ワードであるため開始位置に「0」が書き込まれ、長さには文字数「2」が書き込まれる(S1、S2)。
【0067】
そして、解析部2013は、S3~S6までの処理を行い、S7まで進む。この例では、文字列「煉瓦」が、音声認識システム202の認識結果から最初に読み取った文字列に合致した抽出ワード(つまり、コマンド候補テーブル701の1レコード目)であり、かつ音声の入力状態を示す種別が「暫定」であり、かつ上記抽出ワード「煉瓦」に対応する抽出コマンドの抽出フラグが「確定」であるため、ステップS6(Yes)までの処理を行う。そして、解析部2013は、S7において、上記認識結果に後続の文字列があり、かつ当該後続の文字列が候補ワードリスト2014Aにあるため(S7;No)、監視時間内において(S8;No)、S1に戻る(L901)。
【0068】
続いて、解析部2013は、上記認識結果の後続の文字列「塀」を受け取り、上記種別「暫定」を受け取っている。そのため、解析部2013は、S2において、上記認識結果に含まれる「煉瓦塀」に合致する候補ワードリスト2014Aの抽出ワードである「煉瓦」、「塀」、「煉瓦塀」を読み取り、開始位置および長さとともにコマンド候補テーブル701に書き込む。この例では、L901において書き込まれた「煉瓦」に対応するレコードに加え、さらに「塀」、「煉瓦塀」に対応するレコードが記憶されている。そして、S3、S4において、S2で記憶したレコードうち、「塀」、「煉瓦塀」に対応するレコードでは、開始位置および長さは、それぞれ、「2」および「1」、「0」および「3」であるため、各レコードがソートされたうえで、長さが最長である「煉瓦塀」のレコードが、コマンド候補テーブル701に保持される。そして、L901の場合と同様、解析部2013は、S7において、上記認識結果に後続の文字列があり、かつ当該後続の文字列が候補ワードリスト2014Aにあるため(S7;No)、監視時間内において(S8;No)、S1に戻る(L902)。
【0069】
さらに、解析部2013は、上記認識結果の後続の文字列「腐食」を受け取り、上記種別「暫定」を受け取っている。そのため、解析部2013は、S2において、上記認識結果に含まれる「煉瓦塀腐食」に合致する候補ワードリスト2014Aの抽出ワードである「煉瓦」、「塀」、「煉瓦塀」、「煉瓦塀腐食」を読み取り、開始位置および長さとともにコマンド候補テーブル701に書き込むが、L902で説明したように、S3、S4において、長さが最長である「煉瓦塀腐食」のレコードが、最終的にコマンド候補テーブル701に保持される。解析部2013は、S5において、音声の入力状態を示す種別が「暫定」であると判定した後(S5;Yes)、S6において、候補ワードリスト2014Aを参照し、「煉瓦塀腐食」に対応する上記抽出フラグが「確定」でないと判定し(S6;No)、S9に進む。そして、解析部2013は、S9において、コマンド候補テーブル701に記憶されている抽出ワード「煉瓦塀腐食」のレコードをコマンド送信管理テーブル801に登録し、当該抽出ワード「煉瓦塀腐食」に対応するコマンド「煉瓦塀フショク」を、コマンド発行部203に出力し、コマンド送信管理テーブル801をリセットし(S10、S11)、S1に戻る(L903)。
【0070】
そして、解析部2013は、上記認識結果の後続の文字列を受け取らず、音声入力が終了したため、上記種別「確定」を受け取る。しかし、解析部2013は、既にコマンドをコマンド発行部203に出力したため、次のS1以降の音声入力支援処理をすべてスキップする(L904)。
【0071】
このように、解析部2013は、音声認識システム202から専門用語を含む認識結果と音声の入力状態を示す種別とを受け取ると、音声の入力が終了するまで、L901~L904まで繰り返し処理を行い、既に音声入力支援処理において出力すべきコマンドが採用されている場合には、音声入力の終了を待たずに、出力すべきコマンドを採用して最終的なコマンドを確定し、確定したコマンドをコマンド発行部203に出力する。
【0072】
続いて、図5において説明した採用基準に対応する処理ステップ例(c-2)について説明する。
【0073】
図10は、図5において説明した採用基準に対応する処理ステップ例(c-2)を説明するための図である。この例では、利用者Uが利用者端末100を用いて、「煉瓦塀」と発話している場合について説明する。図10におけるL1001、L1002の一連の処理は、図9に示したL901、L902の場合と同様であるためここではその説明を省略し、L1003以降の場合について説明する。
【0074】
解析部2013は、上記認識結果の後続の文字列を受け取らず、上記種別「暫定」を受け取っている。そのため、解析部2013は、図9の場合と同様の処理を行い、S3、S4において、長さが最長である「煉瓦塀」のレコードを、最終的にコマンド候補テーブル701に保持する。解析部2013は、S5において、音声の入力状態を示す種別が「暫定」であると判定した後(S5;Yes)、S6において、候補ワードリスト2014Aを参照し、「煉瓦塀」に対応する上記抽出フラグが「確定」であると判定し(S6;Yes)、上記認識結果に後続の文字列がないため(S7;No)、監視時間内において(S8;No)、S1に戻る(L1003)。
【0075】
解析部2013は、L1003の場合と同様、上記認識結果の後続の文字列を受け取らず、上記種別「暫定」を受け取っているため、S1~S7までの処理を行う。そして、解析部2013は、監視時間内でなくなったと判定した場合(S8;Yes)、S9に進み、この時点でコマンド候補テーブル701に記憶されている抽出ワード「煉瓦塀」のレコードをコマンド送信管理テーブル801に登録する(S9)。さらに、解析部2013は、上記抽出ワード「煉瓦塀」に対応するコマンド「煉瓦塀」を、コマンド発行部203に出力し、コマンド送信管理テーブル801をリセットし(S10、S11)、S1に戻る(L1004)。
【0076】
このように、解析部2013は、音声認識システム202から専門用語を含む認識結果と音声の入力状態を示す種別とを受け取ると、音声の入力が終了するまで、L1001~L1004まで繰り返し処理を行い、音声の入力継続中に新たな認識結果を受け取らなくなった場合(例えば、無音区間が一定時間以上継続する場合)でも、音声入力の終了を待たずに、出力すべきコマンドを採用して最終的なコマンドを確定し、確定したコマンドをコマンド発行部203に出力する。
【0077】
続いて、図5において説明した採用基準に対応する処理ステップ例(c-3)について説明する。
【0078】
図11は、図5において説明した採用基準に対応する処理ステップ例(c-3)を説明するための図である。この例では、利用者Uが利用者端末100を用いて、「煉瓦塀です」と発話している場合について説明する。図11におけるL1101、L1102の一連の処理は、図9に示したL901、L902の場合と同様であるためここではその説明を省略し、L1103以降の場合について説明する。
【0079】
解析部2013は、上記認識結果の後続の文字列として文字列「です」を受け取り、上記種別「暫定」を受け取っている。そのため、解析部2013は、S2において、上記認識結果に含まれる「煉瓦塀で」(「で」は「です」の最初の文字)に合致する抽出ワードを候補ワードリスト2014Aから検索するが、存在しないため(S7;Yes)、S9に進む。
【0080】
その後、解析部2013は、L903の場合と同様、この時点でコマンド候補テーブル701に記憶されている抽出ワード「煉瓦塀」のレコードをコマンド送信管理テーブル801に登録する(S9)。さらに、解析部2013は、上記抽出ワード「煉瓦塀」に対応するコマンド「煉瓦塀」を、コマンド発行部203に出力し、コマンド送信管理テーブル801をリセットし(S10、S11)、S1に戻る(L1103)。
【0081】
そして、解析部2013は、上記認識結果の後続の文字列を受け取らず、音声入力が終了したため、上記種別「確定」を受け取る。しかし、解析部2013は、既にコマンドをコマンド発行部203に出力したため、次のS1以降の音声入力支援処理をすべてスキップする(L1104)。
【0082】
このように、解析部2013は、音声認識システム202から専門用語を含む認識結果と音声の入力状態を示す種別とを受け取ると、音声の入力が終了するまで、L1101~L1104まで繰り返し処理を行い、音声の入力が継続中に候補ワードリスト2014Aに存在しない文字列を受け取った場合には、音声入力の終了を待たずに、出力すべきコマンドを採用して最終的なコマンドを確定し、確定したコマンドをコマンド発行部203に出力する。
【0083】
続いて、図5において説明した採用基準に対応する処理ステップ例(c-4)について説明する。
【0084】
図12は、図5において説明した採用基準に対応する処理ステップ例(c-4)を説明するための図である。この例では、利用者Uが利用者端末100を用いて、「煉瓦塀」と発話したときの音声の入力状態を示す種別が「確定」である場合について説明する。図12におけるL1201、L1202の一連の処理は、図9に示したL901、L902の場合と同様であるためここではその説明を省略し、L1203以降の場合について説明する。
【0085】
解析部2013は、上記認識結果の後続の文字列を受け取らず、上記種別「確定」を受け取っている。そのため、解析部2013は、音声入力が終了したと判断する。すなわち、解析部2013は、図9の場合と同様に、S3、S4において、長さが最長である「煉瓦塀」のレコードを、最終的にコマンド候補テーブル701に保持した後、S5において、音声の入力状態を示す種別が「確定」であると判定し(S5;No)、S9に進む。
【0086】
そして、図9の場合と同様、解析部2013は、この時点でコマンド候補テーブル701に記憶されている抽出ワード「煉瓦塀」のレコードをコマンド送信管理テーブル801に登録する(S9)。さらに、解析部2013は、上記抽出ワード「煉瓦塀」に対応するコマンド「煉瓦塀」を、コマンド発行部203に出力し、コマンド送信管理テーブル801をリセットし(S10、S11)、S1に戻る(L1203)。
【0087】
このように、解析部2013は、音声認識システム202から専門用語を含む認識結果と音声の入力状態を示す種別とを受け取ると、音声の入力が終了するまで、L1201~L1203まで繰り返し処理を行い、音声の入力が終了した場合には、その時点でコマンド候補テーブル701に記憶されている抽出ワードに対応するコマンドを、採用すべきコマンドとして最終的に確定し、確定したコマンドをコマンド発行部203に出力する。
【0088】
図9図12に示した事例は、煉瓦腐食などの物性診断を行う場合であったが、歯科診療などの他の専門分野の音声認識を行う場合でも、同様の処理を行うことにより、本システムを適用可能である。
【0089】
図13は、図9を用いて説明した処理ステップ例(c-1)を、歯科診療に適用した場合の例を説明するための図である。この例では、利用者Uが利用者端末100を用いて、「乳歯冠脱離」と発話している場合について説明する。
【0090】
図13に示すように、解析部2013は、音声認識システム202から、まず、認識結果として文字列「乳歯」と、音声の入力状態を示す種別「暫定」を受け取り、上記文字列「乳歯」に合致する抽出ワード「乳歯」と、これに対応するコマンド「乳歯」を候補ワードリスト2014Aから読み取り、開始位置および長さとともにコマンド候補テーブル701に書き込む。この例では、図9の場合と同様、最初に読み取った文字列に合致した抽出ワードであるため開始位置に「0」が書き込まれ、長さには文字数「2」が書き込まれる(S1、S2)。そして、解析部2013は、図9の場合と同様、S3~S6までの処理を行い、S7まで進む。ここでは、音声の入力状態を示す種別が「暫定」であり、かつ上記抽出ワード「乳歯」に対応する抽出コマンドの抽出フラグが「確定」であるため、ステップS6(Yes)までの処理を行う。そして、解析部2013は、S7において、上記認識結果に後続の文字列があり、かつ当該後続の文字列が候補ワードリスト2014Aにあるため(S7;No)、監視時間内において(S8;No)、S1に戻る(L1301)。
【0091】
続いて、解析部2013は、上記認識結果の後続の文字列「冠」を受け取り、上記種別「暫定」を受け取っている。そのため、解析部2013は、S2において、図9の場合と同様、上記認識結果に含まれる「乳歯冠」に合致する候補ワードリスト2014Aの抽出ワードである「乳歯」、「冠」、「乳歯冠」を読み取り、開始位置および長さとともにコマンド候補テーブル701に書き込む。この例では、L1301において書き込まれた「乳歯」に対応するレコードに加え、さらに「冠」、「乳歯冠」に対応するレコードが記憶される。そして、S3、S4において、S2で記憶したレコードうち、長さが最長である「乳歯冠」のレコードに絞り込まれた後、S7において、上記認識結果に後続の文字列があり、かつ当該後続の文字列が候補ワードリスト2014Aにあるため(S7;No)、監視時間内において(S8;No)、S1に戻る(L1302)。
【0092】
さらに、解析部2013は、上記認識結果の後続の文字列「脱離」を受け取り、上記種別「暫定」を受け取っている。そのため、解析部2013は、S2において、図9の場合と同様、上記認識結果に含まれる「乳歯冠脱離」に合致する候補ワードリスト2014Aの抽出ワードである「乳歯」、「冠」、「乳歯冠」、「乳歯冠脱離」の読み取り等を行い、S3、S4において、長さが最長である「乳歯冠脱離」のレコードを最終的にコマンド候補テーブル701に保持する。そして、解析部2013は、図9の場合と同様、S5、S6において、それぞれ、音声の入力状態を示す種別が「暫定」であり(S5;Yes)、「乳歯冠脱離」に対応する上記抽出フラグが「確定」でない(S6;No)と判定した後、S9において、コマンド候補テーブル701に記憶されている抽出ワード「乳歯冠脱離」のレコードをコマンド送信管理テーブル801に登録し、当該抽出ワード「乳歯冠脱離」に対応するコマンド「乳歯冠ダツリ」を、コマンド発行部203に出力し、コマンド送信管理テーブル801をリセットし(S10、S11)、S1に戻る(L1303)。そして、図9の場合と同様、解析部2013は、上記認識結果の後続の文字列を受け取らず、音声入力が終了したため、上記種別「確定」を受け取るが、次のS1以降の音声入力支援処理をすべてスキップする(L1304)。
【0093】
このように、解析部2013は、様々な専門分野の専門用語についても精度よく認識し、その専門用語に対応するコマンドを発行することができる。図10図12の各事例の場合についても同様に、「煉瓦」を「乳歯」、「煉瓦塀」を「乳歯冠」、「煉瓦塀です」を「乳歯冠です」というように読み替えることで適用できる。
【0094】
以上説明したように、本実施例における音声入力支援システムによれば、専門用語を含む音声の入力状態の判定結果に応じて、抽出ワードの中から条件満たすものを決定、対応するコマンド出力できる。具体的には、図5図6のS5-S7等を用いて説明したように、プロセッサとメモリとを有したコンピュータにより、入力された音声の認識結果に応じた制御を行うための支援をする音声入力支援システム201において、プロセッサは、専門用語を含む上記入力された音声の入力状態(例えば、上述した種別「暫定」、「確定」)を判定し、その判定の結果に応じて、汎用音声認識エンジンによる認識結果に含まれる文字列と所定の関係(例えば、上述した「合致」する関係)にある専門用語の候補文字列(抽出ワード)の中から、上記候補文字列についての文字列に関する条件(例えば、図4の抽出フラグが「暫定」の場合には、抽出ワードに続く別の抽出ワードやこれらの組合せを含む文字列があるという条件)と上記候補文字列についての時間的な条件(例えば、その文字列に含まれる抽出ワードに続く別の抽出ワードやこれらの組合せが、図4の「監視時間」内にあるという条件)とを満たす候補文字列を決定し、その決定した候補文字列に対応する、制御対象に対する制御を行うための所定のコマンドを出力する。これにより、専用音声認識エンジンを用いることなく、入力された音声に含まれる専門用語を精度よく低コストで認識し、その認識結果に応じて、制御対象に対する制御を、本来の発話の意図通りに正しく行うことができる。
【0095】
また、図5図6のS5-S7等を用いて説明したように、プロセッサは、上記候補文字列に続く候補文字列があるか否かという文字列に関する条件と、上記候補文字列を確定させるための監視時間を経過したか否かという時間的な条件とに基づいて、上記候補文字列を決定する。これにより、監視時間内に続く候補文字列を精度よく認識し、候補文字列に対応する正しいコマンドを出力することができる。
【0096】
また、図6のS1-S7の繰り返し処理や図6のS8(S8;No)等において説明したように、プロセッサは、上記文字列に関する条件と上記時間的な条件とを満たさない場合、音声の入力状態の判定から上記候補文字列の決定までの処理を繰り返す。これにより、順次入力される音声に含まれる専門用語が似通っているような場合でも精度よく認識し、候補文字列に対応するコマンドを出力することができる。専門用語には呼び方が互いに類似する用語が取り扱われることが多いが、そのような用語であっても、所定の間隔で順次処理を行って繰り返すことにより、これらの用語を正しく区別することができる。
【0097】
また、図4等を用いて説明したように、上記音声入力支援システムは、上記候補文字列と上記コマンドと上記文字列に関する条件と上記時間的な条件とを対応付けたテーブルを有し、プロセッサは、上記テーブルを用いて、上記候補文字列を決定するための処理を行う。このようなテーブルで保持することでコマンドとの対応付けが容易となり、リスト化されたデータを用いて、様々な業種の専門分野の専門用語に対する音声認識にも容易に対応することができる。
【0098】
また、図6のS5(S5;No)等において説明したように、プロセッサは、上記音声の入力状態が音声の入力終了を示す状態(例えば、上述した種別が「確定」の状態)にあると判定した場合、上記文字列に関する条件と上記時間的な条件とに基づいて上記候補文字列を決定せずに、上記判定の時点において決定されている候補文字列を採用し、その採用した候補文字列に対応するコマンドを出力する。これにより、音声の入力状態が確定なら条件判定を行わないため、音声の入力終了とともに速やかにコマンドの出力が可能となる。
【0099】
また、図13等を用いて説明したように、プロセッサは、歯科医療に関する専門用語を含む上記入力された音声の状態の判定と、上記候補文字列の決定と、上記コマンドの出力とを実行する。これにより、専門分野が歯科医療である場合でも本技術を適用することができる。歯科医療の場合、図4の例のように専門用語が部分的に一致する用語が多いほか、虫歯の進行度(C0~C4)、CR(コンポジットレジン)のような略語やその類似が多く存在するが、音声認識において誤認識の可能性が高いこれらの用語や略語についても精度よく認識することができ、これらに対応する正しいコマンドを出力することができる。
【0100】
従来、専用音声認識エンジンは、特定領域の分野では精度高いものの高価であり、また、発話の記録も兼用した場合は、専門用語の誤認識につながり実用的に乏しいことがあったが、本システムによれば、正しい音声認識に基づいて、専門用語のコマンド化を精度よく低コストで実現することができる。例えば、上述した医療行為や物性診断を行う利用者が、キーボードを使わず音声入力を用い、リアルタイムでアプリケーションの操作と発話内容のテキストを記録する場面を考えると、利用者の業種に応じた専門用語(例えば、医療用語、設備状態)を、汎用音声認識エンジンによりテキスト化し、対応するコマンドに変換した上で、電子カルテ、施設点検システムといった制御対象に対する正しいインタフェース情報を提供することができる。その結果、インタフェース情報を受けたシステムや機器等においても、利用者が意図した操作や画面制御などの様々な処理を正確に行うことができ、また、正しい内容を記録することができるようになる。
【0101】
以上、図面を用いて詳細に説明したが、本発明は上述の種々の例に限定されるものではなく、その趣旨を逸脱しない範囲で、種々の変更が可能である。
【符号の説明】
【0102】
1000 音声情報入力システム
100 利用者端末
200 音声入力システム
300 実行端末
400 表示装置
201 音声入力支援システム
2011 音声受信部
2012 音声認識制御部
2013 解析部
2014 記憶部
2014A 候補ワードリスト
202 音声認識システム
203 コマンド発行部
204 テキスト登録部
701 コマンド候補テーブル
801 コマンド送信管理テーブル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14