(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023168391
(43)【公開日】2023-11-24
(54)【発明の名称】情報処理装置、情報処理システム、情報処理方法及びプログラム
(51)【国際特許分類】
G06F 3/16 20060101AFI20231116BHJP
G10L 15/10 20060101ALI20231116BHJP
G10L 15/32 20130101ALI20231116BHJP
【FI】
G06F3/16 650
G10L15/10 200W
G10L15/32 220C
G06F3/16 620
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023152926
(22)【出願日】2023-09-20
(62)【分割の表示】P 2021111146の分割
【原出願日】2021-07-02
(71)【出願人】
【識別番号】398018021
【氏名又は名称】株式会社アドバンスト・メディア
(74)【代理人】
【識別番号】100127384
【弁理士】
【氏名又は名称】坊野 康博
(72)【発明者】
【氏名】鈴木 清幸
(72)【発明者】
【氏名】吉川 洋太郎
(57)【要約】
【課題】音声認識を用いて情報を入力する際に、より迅速かつ適切に音声入力結果を得ること。
【解決手段】情報処理装置1は、音声認識処理部53と、認識結果演算部54と、を備える。音声認識処理部53は、複数の音声認識処理を並列的に実行することにより、複数の音声認識結果を取得する。認識結果演算部54は、音声認識処理部53によって取得された複数の音声認識結果において、第1の音声認識結果と第2の音声認識結果とを論理演算することにより、文字列のデータを取得する。
【選択図】
図8
【特許請求の範囲】
【請求項1】
特定の単語の発音を表す音声が入力された場合に、当該特定の単語の文字列のデータを音声認識結果として出力する特定単語認識手段と、
前記特定の単語と、ユーザインターフェース画面に対する操作内容とが対応付けて記憶された操作内容データ記憶手段と、
前記特定単語認識手段によって前記特定の単語が出力されることに対応して、前記操作内容データ記憶手段を参照し、当該特定の単語に対応付けられた前記ユーザインターフェース画面に対する操作内容を取得する操作内容取得手段と、
前記操作内容取得手段によって取得された前記ユーザインターフェース画面に対する操作内容を実行する実行手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記特定の単語に対応付けられた前記操作内容として、前記ユーザインターフェース画面における指示操作を行うためのコマンド、及び、前記ユーザインターフェース画面に対するデータの入力を行うためのプロパティが定義され、
前記特定単語認識手段は、前記コマンドまたはプロパティを表す音声が入力された場合に、前記コマンドまたは前記プロパティを表す単語の文字列のデータを音声認識結果として出力し、
前記実行手段は、前記コマンドまたは前記プロパティとして定義された前記ユーザインターフェース画面に対する操作内容を実行することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記コマンドは、前記ユーザインターフェース画面の領域を選択する1または複数のプロセスによって構成され、
前記プロパティは、前記ユーザインターフェース画面に対するデータを入力するための1つのプロセスによって構成されることを特徴とする請求項2に記載の情報処理装置。
【請求項4】
入力された音声の文字列のデータを音声認識結果として出力するディクテーションのための音声認識手段を備え、
前記特定単語認識手段及び前記ディクテーションのための前記音声認識手段による音声認識を並列的に実行することを特徴とする請求項1から3に記載の情報処理装置。
【請求項5】
入力された音声の文字列のデータを音声認識結果として出力するディクテーションのための音声認識手段を備え、
前記実行手段は、前記コマンドとしてフリーテキスト入力欄への入力を実行する場合、当該フリーテキスト入力欄を選択するプロセス、及び、入力されるフリーテキストを前記ディクテーションのための前記音声認識手段によって取得するプロセスを実行することを特徴とする請求項2または3に記載の情報処理装置。
【請求項6】
前記特定単語認識手段及び前記ディクテーションのための前記音声認識手段において用いられる音声認識エンジンを操作内容に応じて選択する音声認識エンジン選択手段を備えることを特徴とする請求項4または5に記載の情報処理装置。
【請求項7】
前記操作内容取得手段は、ユーザの制御対象装置に対する指示の発話の音声認識結果を解析することにより、当該音声認識結果に含まれる前記特定の単語に対応付けられた前記操作内容を取得し、
前記実行手段は、ユーザの前記制御対象装置に対する指示の発話の音声データまたは当該音声データの音声認識結果を蓄積し、設定されたタイミングで、前記操作内容取得手段によって取得された前記操作内容を自動的に実行することを特徴とする請求項1から6のいずれか1項に記載の情報処理装置。
【請求項8】
前記実行手段は、前記制御対象装置を制御するアプリケーションを動作させることにより、当該制御対象装置を自動運転することを特徴とする請求項7に記載の情報処理装置。
【請求項9】
複数の情報処理装置を含む情報処理システムであって、
特定の単語の発音を表す音声が入力された場合に、当該特定の単語の文字列のデータを音声認識結果として出力する特定単語認識手段と、
前記特定の単語と、ユーザインターフェース画面に対する操作内容とが対応付けて記憶された操作内容データ記憶手段と、
前記特定単語認識手段によって前記特定の単語が出力されることに対応して、前記操作内容データ記憶手段を参照し、当該特定の単語に対応付けられた前記ユーザインターフェース画面に対する操作内容を取得する操作内容取得手段と、
前記操作内容取得手段によって取得された前記ユーザインターフェース画面に対する操作内容を実行する実行手段と、
を備えることを特徴とする情報処理システム。
【請求項10】
1または複数の情報処理装置が実行する情報処理方法であって、
特定の単語の発音を表す音声が入力された場合に、当該特定の単語の文字列のデータを音声認識結果として出力する特定単語認識ステップと、
前記特定単語認識ステップにおいて前記特定の単語が出力されることに対応して、前記特定の単語と、ユーザインターフェース画面に対する操作内容とが対応付けて記憶された操作内容データ記憶手段を参照し、当該特定の単語に対応付けられた前記ユーザインターフェース画面に対する操作内容を取得する操作内容取得ステップと、
前記操作内容取得ステップにおいて取得された前記ユーザインターフェース画面に対する操作内容を実行する実行ステップと、
を含むことを特徴とする情報処理方法。
【請求項11】
コンピュータに、
特定の単語の発音を表す音声が入力された場合に、当該特定の単語の文字列のデータを音声認識結果として出力する特定単語認識機能と、
前記特定単語認識機能によって前記特定の単語が出力されることに対応して、前記特定の単語と、ユーザインターフェース画面に対する操作内容とが対応付けて記憶された操作内容データ記憶手段を参照し、当該特定の単語に対応付けられた前記ユーザインターフェース画面に対する操作内容を取得する操作内容取得機能と、
前記操作内容取得機能によって取得された前記ユーザインターフェース画面に対する操作内容を実行する実行機能と、
を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
従来、音声認識を用いて情報を入力する技術が知られている。
例えば、特許文献1には、N個の音声認識エンジンを並列で動作させ、それぞれの音声認識結果をM個の言語理解処理部に入力して、M×N個のアウトプットを統合処理部で統合して、音声入力の結果を得る技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術においては、音声認識結果に対して言語処理を行い、所定の単語を特定化し除外する等の手順を経て、適切な入力結果を得ることとしている。
このような手順を経ることによって入力結果を得る場合、言語処理に相当な時間を要するために、リアルタイムな音声入力に支障を生じる等、充分な処理速度を得ることが困難となる。
また、言語処理の結果が目的とする精度を充足するものでない場合、適切な音声入力結果を得ることができない。
このように、従来の技術においては、音声認識を用いて情報を入力する際に、迅速かつ適切に情報を入力することが困難であった。
【0005】
本発明の課題は、音声認識を用いて情報を入力する際に、より迅速かつ適切に情報を入力することである。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の一態様の情報処理装置は、
複数の音声認識処理を並列的に実行することにより、複数の音声認識結果を取得する音声認識手段と、
前記音声認識手段によって取得された複数の音声認識結果において、第1の音声認識結果と第2の音声認識結果とを論理演算することにより、文字列のデータを取得する論理演算手段と、
を備えることを特徴とする。
【0007】
また、本発明の他の態様の情報処理装置は、
ユーザの制御対象装置に対する指示の発話を音声認識する音声認識手段と、
前記音声認識手段によって取得された音声認識結果を解析することにより、前記指示に対応する処理内容を取得する解析手段と、
前記音声認識手段によって取得された音声認識結果を蓄積し、設定されたタイミングで、前記解析手段によって取得された前記処理内容を自動的に実行する自動実行手段と、
を備えることを特徴とする。
【0008】
また、本発明の他の態様の情報処理装置は、
アプリケーションの入力インターフェースに対する操作のための音声を認識する音声認識手段と、
前記アプリケーションの入力インターフェースに対する操作を表す1または複数のプロセスによって構成される操作内容データを記憶する操作内容データ記憶手段と、
前記音声認識手段によって、前記操作内容データを識別する発話が認識された場合に、当該発話によって識別される前記操作内容データを前記操作内容データ記憶手段から読み出し、前記操作内容データを構成する前記1または複数のプロセスに対応する操作を前記入力インターフェースに対して実行する操作実行手段と、
を備えることを特徴とする。
【0009】
また、本発明の他の態様の情報処理装置は、
1つの音声認識処理による音声認識結果に対して、異なる機能を有する複数の処理を並列的に実行することにより、複数の処理結果を取得する処理結果取得手段と、
前記処理結果取得手段によって取得された複数の処理結果において、第1の処理結果と第2の処理結果とを論理演算することにより、文字列のデータを取得する論理演算手段と、
を備えることを特徴とする。
【0010】
また、本発明の一態様の情報処理システムは、
複数の情報処理装置を含む情報処理システムであって、
前記複数の情報処理装置のいずれかに入力された音声を音声認識処理する音声認識手段と、
前記音声認識処理による音声認識結果の構文を解析する構文解析手段と、
前記構文解析手段の解析結果に基づいて、アプリケーションに対する情報の入力を制御する情報入力手段と、
前記情報入力手段による前記アプリケーションに対する情報の入力に従って、当該アプリケーションを実行するアプリケーション実行手段と、
を備えることを特徴とする。
【発明の効果】
【0011】
本発明によれば、音声認識を用いて情報を入力する際に、より迅速かつ適切に情報を入力することができる。
【図面の簡単な説明】
【0012】
【
図1】情報処理装置1のハードウェア構成を示す模式図である。
【
図2】情報処理装置1の機能的構成を示すブロック図である。
【
図3】音声認識処理部53がディクテーション及び単語抽出の音声認識処理を行う場合の情報処理装置1の機能構成例を示す模式図である。
【
図4】情報処理装置1が実行する音声認識・演算処理の流れを示すフローチャートである。
【
図5】音声認識・演算処理のステップS3において実行される並列音声認識処理の流れを示すフローチャートである。
【
図6】情報処理装置1による処理が適用されるアプリケーションの具体例を示す模式図である。
【
図7】音声認識処理部53の音声認識結果の一例を示す模式図である。
【
図8】第2実施形態に係る情報処理装置1の機能的構成を示すブロック図である。
【
図9】情報処理装置1が実行する音声入力インターフェース構築処理の流れを示すフローチャートである。
【
図10】情報処理装置1が実行する情報入力処理の流れを示すフローチャートである。
【
図11】
図6に示すアプリケーションの入力画面において、操作者が「プロパティ」を音声入力する場合の動作を表す説明図である。
【
図12】
図6に示すアプリケーションの入力画面において、操作者が「コマンド」を音声入力する場合の動作を表す説明図である。
【
図13】複数画面に渡る情報入力を行う場合の概念を示す模式図である。
【
図14】1つの音声認識エンジンによって音声認識処理された結果を異なる機能を有する複数の処理部によって並列的に処理する情報処理装置1の機能構成例を示す模式図である。
【
図15】第4実施形態における情報処理装置1が実行する情報入力処理の流れを示すフローチャートである。
【
図16】情報処理装置1によって構成される情報処理システムSの構成を示す模式図である。
【
図17】複数ユーザの協業を支援する情報処理システムSの機能を示す模式図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について、図面を用いて説明する。
[第1実施形態]
本実施形態に係る情報処理装置は、入力された音声のデータを複数の音声認識エンジンを用いて並列的に音声認識処理し、複数の音声認識結果を組み合わせて利用することにより、複数の音声認識結果それぞれを集合させた情報よりも有用な情報を取得する。例えば、本実施形態に係る情報処理装置は、音声認識結果における時間情報を参照しながら、複数の音声認識結果それぞれに含まれる情報を論理演算(除外や置換等)することにより、1つの音声認識処理における音声認識結果のみからは抽出することが困難な情報をさらに取得する。
これにより、本実施形態に係る情報処理装置では、音声認識を用いて情報を入力する際に、より迅速かつ適切な音声入力結果を得ることを可能としている。
以下、本実施形態に係る情報処理装置を具体的に説明する。
【0014】
[ハードウェア構成]
図1は、情報処理装置1のハードウェア構成を示す模式図である。
図1に示すように、情報処理装置1は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、バス14と、入力部15と、出力部16と、記憶部17と、通信部18と、ドライブ19と、撮像部20と、を備えている。
【0015】
CPU11は、ROM12に記録されているプログラム、または、記憶部17からRAM13にロードされたプログラムに従って各種の処理を実行する。
RAM13には、CPU11が各種の処理を実行する上において必要なデータ等も適宜記憶される。
【0016】
CPU11、ROM12及びRAM13は、バス14を介して相互に接続されている。バス14には、入力部15、出力部16、記憶部17、通信部18及びドライブ19が接続されている。
【0017】
入力部15は、情報処理装置1に対する各種情報の入力を受け付ける。本実施形態において、入力部15は、マウスやキーボード等によって表示画面を介した操作入力を受け付ける操作入力部15aと、マイク等によって音声の入力を受け付ける音声入力部15bとを備えている。
出力部16は、ディスプレイやスピーカ等で構成され、画像や音声を出力する。
記憶部17は、ハードディスクあるいはDRAM(Dynamic Random Access Memory)等で構成され、各サーバで管理される各種データを記憶する。
通信部18は、ネットワークを介して他の装置との間で行う通信を制御する。
【0018】
ドライブ19には、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリ等よりなる、リムーバブルメディア31が適宜装着される。ドライブ19によってリムーバブルメディア31から読み出されたプログラムは、必要に応じて記憶部17にインストールされる。
撮像部20は、レンズ及び撮像素子等を備えた撮像装置によって構成され、被写体のデジタル画像を撮像する。
なお、上記ハードウェア構成は、情報処理装置1の基本的構成であり、一部のハードウェアを備えない構成としたり、付加的なハードウェアを備えたり、ハードウェアの実装形態を変更したりすることができる。例えば、情報処理装置1は、撮像部20を備えない構成としたり、音声認識処理を高速に実行するためのDSP(Digital Signal Processor)を備えたりすることができる。また、情報処理装置1は、入力部15をタッチセンサによって構成し、出力部16のディスプレイに重ねて配置することにより、タッチパネルを備える構成とすることも可能である。
【0019】
[機能的構成]
次に、情報処理装置1の機能的構成について説明する。
図2は、情報処理装置1の機能的構成を示すブロック図である。
図2に示すように、情報処理装置1のCPU11においては、音声データ受付部51と、前処理部52と、音声認識処理部53と、認識結果演算部54と、アプリケーション実行部55と、が機能する。また、情報処理装置1の記憶部17には、音声認識辞書データベース(音声認識辞書DB)71と、単語辞書データベース(単語辞書DB)72と、音声認識結果データベース(音声認識結果DB)73と、が形成される。
なお、本実施形態においては、音声認識処理を実行する音声認識エンジンとして、入力された音声データ全体をテキストデータに変換するディクテーションを目的としたものと、音声データに含まれる特定の単語を抽出してテキストデータに変換する単語抽出の音声認識処理を目的としたものが用いられる。
【0020】
音声認識辞書DB71には、複数の音声認識エンジンそれぞれが使用する各種辞書及びモデル(音響モデル、言語モデル及び発音辞書等)のデータが記憶されている。例えば、音声認識辞書DB71には、音声の特徴量と音素モデルとが対応付けて格納された音響モデル、文字列あるいは単語列が言語として用いられるパターンを統計処理した結果が格納された言語モデル、及び、言語モデルの単語と音響モデルの音素とが対応付けて格納された発音辞書のデータが記憶されている。
【0021】
単語辞書DB72には、抽出対象となる単語が予め登録された単語抽出用の辞書が記憶されている。本実施形態において、単語辞書DB72には、単語抽出の音声認識処理を実行する複数の音声認識エンジンそれぞれが使用する単語抽出用の辞書が記憶されている。単語辞書DB72の各単語には、読み(発音)が付されており、単語抽出の音声認識処理が実行される場合、読み(発音)の情報を基に、予め登録された単語が抽出される。これにより、音声認識の精度と速度の向上を図ることができる。
音声認識結果DB73には、音声認識結果(後述する最終認識結果を含む。)のデータが、入力された音声データ及びそれに含まれる単語の発話開始時刻及び発話終了時刻と対応付けて記憶されている。
【0022】
音声データ受付部51は、入力部15の音声入力部15bを介して入力された音声データを受け付ける。音声データ受付部51によって受け付けられた音声データは、音声認識結果DB73に記憶されると共に、前処理部52に出力される。
前処理部52は、音声データ受付部51によって受け付けられた音声データに対し、雑音除去等の前処理を実行する。
【0023】
音声認識処理部53は、前処理が実行された後の音声データに対し、複数の音声認識エンジンによって、並列的に音声認識処理を実行する。音声認識処理によって取得された各音声認識結果は、音声認識結果DB73に記憶されると共に、認識結果演算部54に出力される。
図2に示すように、音声認識処理部53は、第1音声認識部53-1~第n音声認識部53-n(nは2以上の整数)を備えており、第1音声認識部53-1~第n音声認識部53-nは、それぞれ異なる音声認識エンジンを用いて音声認識処理を実行する。第1音声認識部53-1~第n音声認識部53-nにおいて、いずれの音声認識エンジンを用いた音声認識処理を実行するか、及び、第1音声認識部53-1~第n音声認識部53-nの数をいくつとするかについては、情報処理装置1の使用目的や情報処理能力等の具体的な実装条件に応じて決定することができる。
なお、音声認識処理部53は、フィラー除去等の補助的な処理を適宜実行することとしてもよい。
【0024】
認識結果演算部54は、第1音声認識部53-1~第n音声認識部53-nの音声認識結果に基づいて、音声認識処理の目的となる処理結果(以下、「最終認識結果」と称する。)を取得する。認識結果演算部54によって取得された最終認識結果は、音声認識結果DB73に記憶されると共に、アプリケーション実行部55に出力される。本実施形態において、認識結果演算部54は、第1音声認識部53-1~第n音声認識部53-nの音声認識結果を組み合わせて、最終認識結果を取得することができる。例えば、認識結果演算部54は、第1音声認識部53-1~第n音声認識部53-nの音声認識結果の1つに対して、他の音声認識結果を除外したり、置換したりした演算結果を最終認識結果とすることができる。また、認識結果演算部54は、その演算結果をさらに処理した結果(演算結果から抽出された単語等)を最終認識結果とすることができる。なお、認識結果演算部54は、第1音声認識部53-1~第n音声認識部53-nの音声認識結果のいずれかを選択して、最終認識結果としてもよい。
【0025】
アプリケーション実行部55は、認識結果演算部54によって取得された最終認識結果に基づいて、アプリケーションを実行する。例えば、アプリケーション実行部55は、認識結果演算部54によって取得された最終認識結果を、アプリケーションに対する操作のためのコマンドのデータや入力される実体的なデータを表すデータ列とすることにより、アプリケーションにおける所定の動作を実行する。これにより、認識結果演算部54によって取得された最終認識結果が、操作入力部15aを介した操作入力に代わるアプリケーションの操作手段として機能する。
【0026】
[具体的機能構成例]
図3は、音声認識処理部53がディクテーション及び単語抽出の音声認識処理を行う場合の情報処理装置1の機能構成例を示す模式図である。
図3に示すように、音声認識処理部53がディクテーション及び単語抽出の音声認識処理を行う場合、音声認識処理部53において、第1音声認識部53-1と、第2音声認識部53-2とが形成される。
【0027】
第1音声認識部53-1は、ディクテーション音声認識部501と、第1認識結果特定部502と、第1認識結果出力部503と、を備えている。
ディクテーション音声認識部501は、ディクテーションを行うための音声認識エンジンにより音声データを処理し、入力された音声データ全体をテキストデータに変換する。
第1認識結果特定部502は、ディクテーション音声認識部501の処理結果から、音声認識結果を一意に特定する。例えば、第1認識結果特定部502は、ディクテーション音声認識部501によって取得された音声認識結果の候補の中から、音声認識処理の過程で付与されるスコアに基づいて、最も確度が高いものを音声認識結果として特定する。
第1認識結果出力部503は、第1認識結果特定部502によって特定された音声認識結果を認識結果演算部54に出力する。
【0028】
第2音声認識部53-2は、単語抽出音声認識部511と、第2認識結果特定部512と、第2認識結果出力部513と、を備えている。
単語抽出音声認識部511は、単語抽出の音声認識処理(ここでは、ルールグラマーの音声認識処理またはDNN(Deep Neural Network)を用いた音声認識処理とする。)を行うための音声認識エンジンにより音声データを処理し、音声データに含まれる特定の単語を抽出してテキストデータに変換する。
第2認識結果特定部512は、単語抽出音声認識部511の処理結果から、音声認識結果を一意に特定する。例えば、第2認識結果特定部512は、単語抽出音声認識部511によって取得された音声認識結果の候補において、同音異字語の中から、単語辞書DB72に登録されている単語を音声認識結果として特定する。
第2認識結果出力部513は、第2認識結果特定部512によって特定された音声認識結果を認識結果演算部54に出力する。
【0029】
このように、第1音声認識部53-1によって出力されたディクテーション結果と、第2音声認識部53-2によって出力(抽出)された単語とに基づいて、認識結果演算部54は、音声認識結果の論理演算を実行することができる。例えば、第2音声認識部53-2によって出力される単語は、音声認識結果としての確度が高いものであるため、認識結果演算部54は、第1音声認識部53-1によって出力されたディクテーション結果から、第2音声認識部53-2によって出力された単語の時間情報(単語の発話開始時刻と発話終了時刻)を参照してその単語を除外し、除外後の音声認識結果に含まれるテキストデータを対象として、単語の抽出を行うこと等が可能である。これにより、音声データが入力された場合に、音声データ全体を広範に認識した音声認識結果の中で、確度がより高い音声認識結果(抽出された単語)が得られている部分については、確度がより高い音声認識結果を採用して最終認識結果とすること等が可能となる。なお、本実施形態においては、第1音声認識部53-1によって出力されたディクテーション結果と、第2音声認識部53-2によって出力された単語とを組み合わせて最終認識結果を取得する場合、それぞれの音声認識結果における時間情報を参照し、2つの音声認識結果における対応関係を正確に合致させて、論理演算が行われる。
【0030】
[動作]
次に、情報処理装置1の動作を説明する。
[音声認識・演算処理]
図4は、情報処理装置1が実行する音声認識・演算処理の流れを示すフローチャートである。
音声認識・演算処理は、情報処理装置1において、音声認識・演算処理の実行を指示する操作が行われることに対応して開始される。
【0031】
音声認識・演算処理が開始されると、ステップS1において、音声データ受付部51は、処理対象となる音声データの入力を受け付ける。
ステップS2において、前処理部52は、音声データ受付部51によって受け付けられた音声データに対し、雑音除去等の前処理を実行する。
ステップS3において、音声認識処理部53は、前処理が実行された後の音声データに対し、複数の音声認識エンジンによって、並列的に音声認識処理を実行する。具体的には、ステップS3において、音声認識処理部53は、並列音声認識処理(
図5参照)を実行する。
ステップS4において、認識結果演算部54は、第1音声認識部53-1~第n音声認識部53-nの音声認識結果に基づいて(例えば、論理演算する等)、音声認識処理の目的となる最終認識結果を取得する。
【0032】
ステップS5において、アプリケーション実行部55は、認識結果演算部54によって取得された最終認識結果に基づいて、アプリケーションを実行する。
ステップS6において、音声認識処理部53は、処理対象となる音声データの入力が終了したか否かの判定を行う。
処理対象となる音声データの入力が終了していない場合、ステップS6において、NOと判定されて、処理はステップS1に移行する。
一方、処理対象となる音声データの入力が終了した場合、ステップS6において、YESと判定されて、音声認識・演算処理は終了する。
【0033】
[並列音声認識処理]
次に、音声認識・演算処理のステップS3においてサブフローとして実行される並列音声認識処理について説明する。
図5は、音声認識・演算処理のステップS3において実行される並列音声認識処理の流れを示すフローチャートである。
並列音声認識処理が開始されると、ステップS31-1~S31-nにおいて、第1音声認識部53-1~第n音声認識部53-nは、それぞれの音声認識エンジンによって、第1の音声認識処理~第nの音声認識処理を並列的に実行する。
【0034】
ステップS32-1~ステップS32-nにおいて、第1音声認識部53-1~第n音声認識部53-nは、第1の音声認識処理~第nの音声認識処理の処理結果において、それぞれの音声認識結果を一意に特定する。
ステップS33-1~S33-nにおいて、第1音声認識部53-1~第n音声認識部53-nは、特定された第1の音声認識処理~第nの音声認識処理の音声認識結果を認識結果演算部54に出力する。
ステップS33-1~S33-nの後、処理は音声認識・演算処理に戻る。
【0035】
[適用されるアプリケーションの具体例]
図6は、情報処理装置1による処理が適用されるアプリケーションの具体例を示す模式図である。
図6に示すように、情報処理装置1による処理は、電子カルテのアプリケーションに対する画面入力に適用することが可能である。
【0036】
図6に示す画面例では、患者の識別番号を入力する「患者」フィールドと、患者の氏名を入力する「患者氏名」フィールドと、患者の年齢を入力する「年齢」フィールドと、患者の性別を入力する「性別」フィールドとが画面上覧に表示されている。また、画面中央には、所見の入力対象として、「肝臓」、「門脈」、「胆嚢」、「肝外胆管」、「膵臓」、「脾臓」、「腎臓」、「大動脈」、「その他の所見」を表すタブが表示され、
図6に示す画面例では、「肝臓」のタブが選択された状態が示されている。「肝臓」タブの表示領域には、肝臓に関する所見を入力する複数のフィールドが表示されており、例えば、肝臓の外観的な所見を表す「辺縁」フィールド、「表面」フィールド、「実質」フィールド、肝内胆管の所見を表す「拡張」フィールド、「内部異物」フィールド、「大きさ」フィールド、腫瘤の所見を表す「腫瘤大きさ」フィールド、「形状」フィールド、「エコーレベル」フィールド、「局在」フィールド、備考をフリーテキスト入力する「備考入力」フィールドが表示されている。さらに、画面下欄には、病名を入力する「病名」フィールドが複数表示されている。
【0037】
図6に示す電子カルテの画面入力に操作入力部15aのマウスやキーボード等を用いる場合、入力を行うフィールドを探索して選択し、プルダウン表示されたメニューからいずれかを選択したり、フィールドに文字列を入力したりすることで、データが入力される。
これに対し、音声認識・演算処理によって、
図6に示す電子カルテの画面入力を行う場合、操作者は、例えば、入力を行うフィールド名、そのフィールドに入力するデータの発話を繰り返し行うことで、目的とするフィールドにデータを入力することができる。
【0038】
[音声認識結果の論理演算例]
情報処理装置1において、音声認識・演算処理の結果を用いてアプリケーションを実行(電子カルテの画面入力等)する場合、操作者の発話をディクテーションした音声認識結果と、操作者の発話から特定の単語を抽出する単語抽出の音声認識結果とを組み合わせた最終認識結果が、アプリケーションの実行に適用される。
【0039】
図7は、音声認識処理部53の音声認識結果の一例を示す模式図である。
図7に示す例では、第1音声認識部53-1がディクテーションによる音声認識処理を行い、第2音声認識部53-2~第n音声認識部53-nが単語抽出の音声認識処理を行った状態が示されている。
【0040】
第1音声認識部53-1~第n音声認識部53-nの音声認識結果には、共通する時間軸における時間情報が付与されており、例えば、第2音声認識部53-2で抽出された特定の単語が、第1音声認識部53-1のディクテーションによる音声認識結果において、いずれの時間帯に相当するかが正確に識別可能となっている。
図7に示す例では、第2音声認識部53-2が、時刻t1~t2において単語W2-1を抽出し、時刻t3~t4において単語W2-2を抽出している。また、第n音声認識部53-nが、時刻t5~t6において単語Wn-1を抽出し、時刻t7~t8において単語Wn-2を抽出し、時刻t9~t10において単語Wn-3を抽出している。
【0041】
ここで、第1音声認識部53-1では、より汎用性の高い音声認識が行われ、多様な発話を音声認識可能である一方、第2音声認識部53-2~第n音声認識部53-nでは、特定の単語の発話を待ち受けて抽出するため、抽出された単語の音声認識結果としての確度が高いものとなる。
即ち、第2音声認識部53-2~第n音声認識部53-nによって単語が抽出されている場合、第1音声認識部53-1の音声認識結果に含まれる同時間帯のディクテーション結果よりも、第2音声認識部53-2~第n音声認識部53-nによって抽出された単語の方が、高精度の音声認識結果となる可能性が高い。
【0042】
このような特徴を利用し、本実施形態においては、例えば、
図7において「除外結果」として示すように、第1音声認識部53-1の音声認識結果から、第2音声認識部53-2~第n音声認識部53-nの音声認識結果を除外する論理演算を行うことができる。
これにより、ディクテーションによる音声認識結果が用いられる範囲を限定することが可能となる。
【0043】
また、本実施形態においては、例えば、
図7において「置換(再構成)結果」として示すように、第1音声認識部53-1の音声認識結果において、第2音声認識部53-2~第n音声認識部53-nの音声認識結果が取得されている部分を、第2音声認識部53-2~第n音声認識部53-nの音声認識結果(抽出された単語)に置換する論理演算を行うことができる。
これにより、第1音声認識部53-1のディクテーション結果の一部が、第2音声認識部53-2~第n音声認識部53-nによる確度の高い音声認識結果に置換され、入力された音声データのディクテーション結果をより高精度なものに再構成することが可能となる。
【0044】
また、第2音声認識部53-2~第n音声認識部53-nによる確度の高い音声認識結果と、その後に続く第1音声認識部53-1のディクテーション結果とは、その語順により特定のフォーマット(データの入力形式)を構成していると捉えることができるため、そのフォーマットに基づくデータの取得を行うことで、音声認識を用いた情報の入力をより高精度に行うことが可能となる。
【0045】
以上のように、本実施形態における情報処理装置1は、入力された音声のデータを複数の音声認識エンジンを用いて並列的に音声認識処理し、複数の音声認識結果を組み合わせる(論理演算する等)ことにより、複数の音声認識結果それぞれを集合させた情報よりも有用な情報となる最終認識結果を取得する。
そのため、言語処理によって音声認識結果の精度を高める場合に比べ、より迅速な処理が可能であると共に、より高精度な音声認識結果を用いて、最終認識結果を取得することができる。
したがって、音声認識を用いて情報を入力する際に、より迅速かつ適切に音声入力結果を得ることが可能となる。
【0046】
[第2実施形態]
次に、本発明の第2実施形態について説明する。
第1実施形態における情報処理装置1では、音声認識処理部53で並列的に実行される音声認識処理が予め決められている例について説明した。これに対し、本実施形態に係る情報処理装置1は、音声認識処理部53で並列的に実行される音声認識処理を選択することにより、音声認識処理部53の構成を動的に変化させたり、状況に応じて特定の音声認識処理を動作させたりすることが可能となっている。
【0047】
また、第1実施形態における情報処理装置1では、認識結果演算部54の最終認識結果がアプリケーション実行部55に順次受け渡され、アプリケーションの実行に適用される例について説明した。これに対し、本実施形態に係る情報処理装置1は、認識結果演算部54の最終認識結果をアプリケーションの情報入力におけるインターフェースに適合させる機能を実装し、より高精度かつ多様な形態で、アプリケーションを実行するための情報入力を行うことが可能となっている。
以下、本実施形態に係る情報処理装置を具体的に説明する。
なお、以下の説明において、第1実施形態と同様の構成については、第1実施形態の説明を参照することとし、第1実施形態と異なる部分を主として説明する。
【0048】
[機能的構成]
図8は、第2実施形態に係る情報処理装置1の機能的構成を示すブロック図である。
図8に示すように、情報処理装置1のCPU11においては、ユーザインターフェース制御部(UI制御部)151と、音声入力インターフェース構築部152と、音声認識エンジン選択部153と、音声データ受付部51と、前処理部52と、音声認識処理部53と、認識結果演算部54と、データ入力・プロセス実行部155と、アプリケーション実行部55と、が機能する。また、情報処理装置1の記憶部17には、音声認識エンジンデータベース(音声認識エンジンDB)171と、コマンド・プロパティデータベース(コマンド・プロパティDB)172と、音声認識辞書DB71と、単語辞書DB72と、音声認識結果DB73と、が形成される。
これらのうち、音声データ受付部51、前処理部52、認識結果演算部54、アプリケーション実行部55、音声認識辞書DB71、単語辞書DB72、及び、音声認識結果DB73の構成は、第1実施形態と同様である。
【0049】
音声認識エンジンDB171には、情報処理装置1において音声認識処理に用いることが可能な複数種類の音声認識エンジンが記憶されている。例えば、音声認識エンジンDB171には、ディクテーションのための複数種類の音声認識エンジンや、単語抽出の音声認識処理を実行するための複数種類の音声認識エンジンが記憶されている。
【0050】
コマンド・プロパティDB172には、音声入力によって実行されるアプリケーションのコマンド及びプロパティに関するデータが記憶されている。具体的には、コマンド・プロパティDB172には、アプリケーションの入力画面に表示される操作対象となる領域(以下、「操作部」と称する。)の位置と、その操作の名称とが対応付けて記憶されている。本実施形態において、「コマンド」及び「プロパティ」は、アプリケーションにおける動作の単位を表すプロセスによって定義されており、「プロパティ」は1つのプロセスによって表されると共に、「コマンド」は1または複数のプロセスによって表される。例えば、
図6に示す電子カルテのアプリケーションにおいて、「プロパティ」は、肝臓の所見を入力する場合の「辺縁」フィールドを選択するプロセスによって定義され、「辺縁」という名称が付されている。また、「コマンド」は、例えば、患者を選択するプロセス、電子カルテを開くプロセス、「肝臓」タブを選択するプロセスの組み合わせによって定義され、「肝臓所見入力」という名称が付されている。音声入力によって「コマンド」及び「プロパティ」が実行される場合、そのコマンドあるいはプロパティに応じて、具体的なデータ(当日の所見等)が併せて音声入力される。
【0051】
UI制御部151は、情報処理装置1の操作者が各種操作を行う際の各種入出力画面(以下、「UI画面」と称する。)の表示を制御する。例えば、UI制御部151は、後述する音声入力インターフェース構築処理及び情報入力処理を実行する際のUI画面の表示を制御する。
音声入力インターフェース構築部152は、後述する音声入力インターフェース構築処理を実行することにより、アプリケーションに対して音声による情報入力を行うための定義情報を生成する。即ち、音声入力インターフェース構築部152は、アプリケーションを利用する操作者の操作に応じて、その操作者が音声による情報入力を行うことを意図するコマンドやプロパティのデータ(定義情報)を生成する。音声入力インターフェース構築部152によって生成されたコマンド及びプロパティのデータは、コマンド・プロパティDB172に記憶される。
【0052】
音声認識エンジン選択部153は、操作者の操作または情報入力処理で情報を入力する対象となるアプリケーション(より詳しくは入力画面)に応じて、音声認識処理を行う音声認識エンジンを選択する。以下、音声認識エンジン選択部153が音声認識エンジンを選択するための情報(操作者の操作または情報入力処理で情報を入力する対象となるアプリケーションから決定される情報)を適宜「選択条件情報」と称する。そして、音声認識エンジン選択部153は、選択した音声認識エンジンを音声認識エンジンDB171から読み出して、音声認識処理部53で音声認識処理を実行する音声認識エンジンとして設定する。
【0053】
音声認識処理部53は、前処理が実行された後の音声データに対し、音声認識エンジン選択部153に設定された音声認識エンジンによって、音声認識処理を実行する。
図8に示すように、本実施形態における音声認識処理部53は、第1音声認識部53-1~第n音声認識部53-n(nは2以上の整数)と、特定音声認識部154とを備えている。第1音声認識部53-1~第n音声認識部53-nは、音声認識エンジン選択部153に設定された複数の音声認識エンジンによって、並列的に音声認識処理を実行する。また、特定音声認識部154は、音声認識エンジン選択部153によって、特定の音声認識エンジンが音声認識処理を実行する音声認識エンジンとして設定された場合、その特定の音声認識エンジンによって音声認識処理を実行する。音声認識処理によって取得された各音声認識結果は、音声認識結果DB73に記憶されると共に、認識結果演算部54に出力される。
【0054】
データ入力・プロセス実行部155は、認識結果演算部54によって取得された最終認識結果に基づいて、コマンド・プロパティDB172を参照し、コマンドまたはプロパティとして定義されたプロセスを実行する。また、データ入力・プロセス実行部155は、コマンド及びプロパティの実行において入力されるデータを最終認識結果から取得し、コマンド及びプロパティとして定義された操作部に対応するデータとして入力する。
例えば、
図7に示す音声認識結果の例において、単語W2-1がプロパティとして定義された「腫瘤大きさ」という単語である場合、時刻t2~t3のディクテーション結果において、「腫瘤大きさ」のデータ(一例として、「3mm×9mm」等)が取得される。また、単語Wn-1がコマンドとして定義された「備考入力」という単語である場合、備考入力のための音声認識エンジン(特定の音声認識エンジン)が起動され、時刻t6~t7において、備考入力のための音声認識エンジンによるディクテーション結果(「前回検査と比較しました・・・」)がデータとして取得される。なお、コマンドによって特定の音声認識エンジンを起動することの他、プロパティの定義において、特定の音声認識エンジンを起動することとしておき、プロパティに対応するデータの入力を特定の音声認識エンジンによる音声入力で行うことも可能である。
【0055】
これにより、マウスやキーボード等を用いて行われていたアプリケーションに対する情報の入力を、音声入力で置換することが可能となる。また、このとき、アプリケーション側の機能を変更する必要がないため、既存のアプリケーションに対して、本発明を容易に適用することができる。
【0056】
[動作]
次に、情報処理装置1の動作を説明する。
[音声入力インターフェース構築処理]
図9は、情報処理装置1が実行する音声入力インターフェース構築処理の流れを示すフローチャートである。
音声入力インターフェース構築処理は、情報処理装置1において、音声入力インターフェース構築処理の実行を指示する操作が行われることに対応して開始される。
なお、本実施形態においては、音声入力インターフェース構築処理の実行に際し、デフォルトで設定される1または複数の音声認識エンジンがユーザによって指定される。
【0057】
音声入力インターフェース構築処理が開始されると、ステップS41において、音声入力インターフェース構築部152は、プロセスの生成を行うか否か(コマンドまたはプロパティのプロセスを設定するか否か)の判定を行う。
プロセスの生成を行わない場合、ステップS41においてNOと判定されて、処理はS53に移行する。
一方、プロセスの生成を行う場合、ステップS41においてYESと判定されて、処理はステップS42に移行する。
【0058】
ステップS42において、音声入力インターフェース構築部152は、音声入力の対象となる画面の表示操作を受け付ける。即ち、操作者は、アプリケーションにおいて、音声による情報入力を行う画面を表示させる。
ステップS43において、音声入力インターフェース構築部152は、操作者の操作に応じて、操作内容の追跡機能をオンにする。これにより、以後の操作者の操作内容が記録される状態となる。なお、操作内容とは、操作者がコマンドあるいはプロパティを定義するために行った定義用操作の内容を表し、具体的には、画面における定義用操作の操作位置及び定義用操作の種類を表している。即ち、画面における特定の位置で、操作者が特定の定義用操作(例えば、左シングルクリック、左ダブルクリック、右シングルクリック等のマウス操作やEnterキー押下等のキーボード操作等)を行うと、定義用操作の種類に対応するアプリケーション上の動作(プロセス)が定義される。例えば、
図6において、肝臓の所見を入力するための「辺縁」フィールド上で左シングルクリックを行った場合、「辺縁」フィールドに対して、音声入力によりデータを記入するプロパティが定義される。また、
図6において、備考を特定の音声認識エンジンによりフリーテキスト入力するための「備考入力」フィールド上で左シングルクリックを行って、後述するように、使用される音声認識エンジンの設定を併せて行うことでコマンドが定義される。なお、音声入力を用いるプロセスで使用される音声認識エンジンは、音声入力を用いるプロセスが定義される毎に設定する他、一連のプロパティまたはコマンドの定義が終了した後に、別途設定することとしてもよい。ただし、プロセスで使用される音声認識エンジンが、デフォルトの音声認識エンジンである場合には、音声認識エンジンの設定を省略することができる。
【0059】
ステップS44において、音声入力インターフェース構築部152は、操作者による画面への手動操作(1つの定義用操作)を受け付ける。
ステップS45において、音声入力インターフェース構築部152は、ステップS44において受け付けた手動操作で定義されるプロセスが、特定の音声認識エンジンによる音声入力を行うプロセスであるか否かの判定を行う。特定の音声認識エンジンによる音声入力を行うプロセスとは、そのプロセスの実行に特定の音声認識エンジンによる音声認識処理を伴うプロセスであり、例えば、ディクテーションが行われるプロセス、1つのプロセスからなるプロパティまたはコマンドを表すプロセス、一連のクリック操作を表す複数のプロセスにおける先頭のクリック操作を表すプロセス(即ち、コマンド名の入力に対応して実行される最初のプロセス)等が該当する。
ステップS44において受け付けた手動操作で定義されるプロセスが、特定の音声認識エンジンによる音声入力を行うプロセスでない場合、ステップS45においてNOと判定されて、処理はステップS48に移行する。
一方、ステップS44において受け付けた手動操作で定義されるプロセスが、特定の音声認識エンジンによる音声入力を行うプロセスである場合、ステップS45においてYESと判定されて、処理はステップS46に移行する。
【0060】
ステップS46において、音声入力インターフェース構築部152は、画面において音声入力が行われる位置(手動操作が行われた位置)を特定する。
ステップS47において、音声入力インターフェース構築部152は、プロセスの実行に用いられる音声認識エンジンの候補を表すリストから、操作者による特定の音声認識エンジンの選択を受け付ける。
ステップS48において、音声入力インターフェース構築部152は、画面において操作が行われる位置(手動操作が行われた位置)と手動操作の内容(例えば、左シングルクリック、左ダブルクリック、右シングルクリック等のマウス操作やEnterキー押下等のキーボード操作等)を特定する。
【0061】
ステップS49において、音声入力インターフェース構築部152は、操作内容の追跡機能をオフにする操作が行われたか否かの判定を行う。
操作内容の追跡機能をオフにする操作が行われていない場合、ステップS49においてNOと判定されて、処理はステップS51に移行する。
一方、操作内容の追跡機能をオフにする操作が行われた場合、ステップS49においてYESと判定されて、処理はステップS50に移行する。
ステップS50において、音声入力インターフェース構築部152は、操作内容の追跡機能をオフにする。
ステップS50の後、処理はステップS42に移行する。
【0062】
ステップS51において、音声入力インターフェース構築部152は、プロセスの設定を終了する操作が行われたか否かの判定を行う。プロセスの設定を終了する操作は、例えば、特定のキー(Enterキー等)の操作や、画面上に表示された「終了ボタン」のクリック操作等とすることができる。
プロセスの設定を終了する操作が行われていない場合、ステップS51においてNOと判定されて、処理はステップS44に移行する。
一方、プロセスの設定を終了する操作が行われた場合、ステップS51においてYESと判定されて、処理はステップS52に移行する。
【0063】
ステップS52において、音声入力インターフェース構築部152は、操作内容の追跡機能をオフにする。
ステップS53において、音声入力インターフェース構築部152は、コマンドまたはプロパティを登録するか否かの判定を行う。
コマンドまたはプロパティを登録しない場合、ステップS53においてNOと判定されて、処理はステップS55に移行する。
一方、コマンドまたはプロセスを登録する場合、ステップS53においてYESと判定されて、処理はステップS54に移行する。
【0064】
ステップS54において、音声入力インターフェース構築部152は、1または複数のプロセスによって定義されたコマンドまたはプロパティに名前を設定して、コマンド・プロパティDB172に記憶(登録)する。
ステップS55において、音声入力インターフェース構築部152は、音声入力インターフェース構築処理の終了が指示されたか否かの判定を行う。
音声入力インターフェース構築処理の終了が指示されていない場合、ステップS55においてNOと判定されて、処理はステップS42に移行する。
一方、音声入力インターフェース構築処理の終了が指示された場合、ステップS55においてYESと判定されて、音声入力インターフェース構築処理は終了する。
【0065】
このように、音声入力インターフェースが実行されることにより、1または複数のプロセスによって定義されたコマンドまたはプロパティが生成される。これら、コマンドまたはプロパティの名称が音声入力されると、定義されたプロセスの動作が実行される。
【0066】
[情報入力処理]
図10は、情報処理装置1が実行する情報入力処理の流れを示すフローチャートである。
情報入力処理は、情報処理装置1において、情報入力処理の実行を指示する操作が行われることに対応して開始される。なお、情報入力処理が実行される場合、情報入力が行われるアプリケーションが起動された状態とされる。また、情報入力処理において、入力されるべき音声(例えば、「プロパティ」あるいは「コマンド」の後の必要な「データ」の音声)が入力されない場合、入力を促すメッセージを出力したり、エラーとして情報入力処理を中止(または再実行)したりする等の予め設定された処理が実行される。
【0067】
情報入力処理が開始されると、ステップS61において、UI制御部151は、音声認識処理を行う音声認識エンジンを選択するための選択条件情報を取得する。
ステップS62において、音声認識エンジン選択部153は、取得した選択条件情報に基づいて、使用する音声認識エンジンの選択を行う。即ち、操作者の操作または情報入力処理で情報を入力する対象となるアプリケーションに応じた音声認識エンジンが選択される。
ステップS63において、音声認識エンジン選択部153は、選択した音声認識エンジンを音声認識エンジンDB171から読み出して、音声認識処理部53で音声認識処理を実行する音声認識エンジンとして設定する。これにより、要求に応じた音声認識処理部53の機能が構成され、選択された音声認識エンジンによって音声認識処理が行われる状態となる。
【0068】
ステップS64において、音声データ受付部51は、処理対象となる音声データの入力を受け付ける。
ステップS65において、前処理部52は、音声データ受付部51によって受け付けられた音声データに対し、雑音除去等の前処理を実行する。
ステップS66において、音声認識処理部53は、前処理が実行された後の音声データに対し、複数の音声認識エンジンによって、並列的に音声認識処理を実行する。
ステップS67において、認識結果演算部54は、第1音声認識部53-1~第n音声認識部53-nの音声認識結果に基づいて、音声認識処理の目的となる最終認識結果を取得する。
【0069】
本実施形態において、ステップS67で取得される最終認識結果には、1つのコマンドまたはプロパティを表すテキストデータが含まれている場合、及び、複数のコマンドまたはプロパティを表すテキストデータが含まれている場合が想定される。複数のコマンドまたはプロパティを表すテキストデータが含まれている場合、最終認識結果がバッファに記憶され、以降のプロセスで、最終認識結果に含まれるテキストデータが順次処理される。
ステップS68において、データ入力・プロセス実行部155は、最終認識結果がプロパティの入力を行うものであるか否かの判定を行う。
最終認識結果がプロパティの入力を行うものでない場合、ステップS68においてNOと判定されて、処理はステップS70に移行する。
一方、最終認識結果がプロパティの入力を行うものである場合、ステップS68においてYESと判定されて、処理はステップS69に移行する。
【0070】
ステップS69において、データ入力・プロセス実行部155は、最終認識結果におけるプロパティの名称に続くディクテーション結果を参照し、プロパティに対応するデータの入力を実行する。例えば、
図6に示す電子カルテのアプリケーションにおいて、プロパティ名として「辺縁」が抽出された場合、最終認識結果の「辺縁」に続く時間において、「辺縁」に対応するデータ(例えば、「鋭利」等)が取得され、「辺縁」に対する所見を表すデータとして入力される。
ステップS69の後、処理はステップS79に移行する。
【0071】
ステップS70において、データ入力・プロセス実行部155は、最終認識結果がコマンドの入力を行うものであるか否かの判定を行う。
最終認識結果がコマンドの入力を行うものでない場合、ステップS70においてNOと判定されて、処理はステップS79に移行する。
一方、最終認識結果がコマンドの入力を行うものである場合、ステップS70においてYESと判定されて、処理はステップS71に移行する。
【0072】
ステップS71において、データ入力・プロセス実行部155は、コマンドを構成するプロセスを実行する。
ステップS72において、データ入力・プロセス実行部155は、コマンドを構成するプロセスが特定の音声認識処理を行うものであるか否かの判定を行う。
コマンドを構成するプロセスが特定の音声認識処理を行うものでない場合、ステップS72においてNOと判定されて、処理はステップS79に移行する。
一方、コマンドを構成するプロセスが特定の音声認識処理を行うものである場合、ステップS72においてYESと判定されて、処理はステップS73に移行する。
【0073】
ステップS73において、音声認識エンジン選択部153は、プロセスと対応付けられている特定の音声認識エンジンを起動する。これにより、特定音声認識部154が特定の音声認識エンジンによって音声認識処理を実行する状態となる。
ステップS74において、音声データ受付部51は、特定の音声認識処理を行うプロセスに対応するデータとして、音声データの入力を受け付ける。
ステップS75において、前処理部52は、音声データ受付部51によって受け付けられた音声データに対し、雑音除去等の前処理を実行する。
ステップS76において、特定音声認識部154は、特定の音声認識エンジンによって音声認識処理を実行する。
【0074】
ステップS77において、データ入力・プロセス実行部155は、特定音声認識部154の音声認識結果を、特定の音声認識処理を行うコマンドに対応するデータとして、アプリケーションに対する入力を実行する。
ステップS78において、特定音声認識部154は、特定の音声認識処理が終了したか否かの判定を行う。
特定の音声認識処理が終了していない場合、ステップS78においてNOと判定されて、処理はステップS74に移行する。
一方、特定の音声認識処理が終了した場合、ステップS78においてYESと判定されて、処理はステップS79に移行する。
【0075】
ステップS79において、データ入力・プロセス実行部155は、コマンドに残りのプロセスが含まれているか否かの判定を行う。
コマンドに残りのプロセスが含まれていない場合、ステップS79においてNOと判定されて、処理はステップS80に移行する。
一方、コマンドに残りのプロセスが含まれている場合、ステップS79においてYESと判定されて、処理はステップS71に移行する。
【0076】
ステップS80において、データ入力・プロセス実行部155は、最終認識結果に残りのプロパティまたはコマンドが含まれているか否かの判定を行う。
最終認識結果に残りのプロパティ及びコマンドが含まれていない場合、ステップS80においてNOと判定されて、処理はステップS81に移行する。
一方、最終認識結果に残りのプロパティまたはコマンドが含まれている場合、ステップS80においてYESと判定されて、処理はステップS68に移行する。
ステップS81において、データ入力・プロセス実行部155は、現在選択されている音声認識エンジンによる並列音声認識の終了条件が充足されたか否かの判定を行う。なお、現在選択されている音声認識エンジンによる並列音声認識の終了条件としては、例えば、先行するステップにおいて実行されたコマンドの内容が、並列音声認識に用いる音声認識エンジンの変更を伴うものであった場合や、ユーザが現在選択されている音声認識エンジンによる並列音声認識の終了を指示する音声入力または操作を行った場合等を定義できる。
【0077】
現在選択されている音声認識エンジンによる並列音声認識の終了条件が充足されていない場合、ステップS81においてNOと判定されて、処理はステップS64に移行する。
一方、現在選択されている音声認識エンジンによる並列音声認識の終了条件が充足された場合、ステップS81においてYESと判定されて、処理はステップS82に移行する。
【0078】
ステップS82において、データ入力・プロセス実行部155は、音声認識エンジンの変更が必要か否かの判定を行う。
音声認識エンジンの変更が必要である場合、ステップS82においてYESと判定されて、処理はステップS61に移行する。
一方、音声認識エンジンの変更が必要でない場合、ステップS82においてNOと判定されて、情報入力処理は終了する。
【0079】
以上のように、本実施形態における情報処理装置1は、特定の音声認識エンジンを用いた音声認識処理によって音声入力を行うことにより、さらに高精度な音声認識結果を得ることができる。
また、本実施形態における情報処理装置1は、入力された音声のデータを複数の音声認識エンジンを用いて並列的に音声認識処理し、複数の音声認識結果を組み合わせる(論理演算する等)ことにより、複数の音声認識結果それぞれを集合させた情報よりも有用な情報となる最終認識結果を取得する。
そのため、言語処理によって音声認識結果の精度を高める場合に比べ、より迅速な処理が可能であると共に、より高精度な音声認識結果を得ることができる。また、このように取得されたより高精度な音声認識結果を用いて、複数の音声認識結果それぞれを集合させた情報よりも有用な情報となる最終認識結果を取得することができる。
【0080】
また、本実施形態における情報処理装置1は、入力された音声のデータを並列的に音声認識処理するための音声認識エンジンを選択し、音声認識処理部53の機能を動的に変更することが可能である。
そのため、処理対象となる音声に対し、より適切な音声認識処理を実行することができるため、より高精度な音声認識結果を取得することができる。
【0081】
また、本実施形態における情報処理装置1は、アプリケーションに対する1または複数のプロセスによって定義されるコマンドあるいはプロパティを予め登録しておき、コマンド名あるいはプロパティ名の発話に対応して、定義されたプロセスを自動的に実行することができる。
そのため、操作者は、アプリケーションの画面における操作位置を都度探索し、マウスやキーボード等を操作して画面の所定位置を操作する場合に比べ、迅速かつ簡単に情報を入力することができる。
即ち、本実施形態における情報処理装置1は、アプリケーションに変更を加えることなく、任意のアプリケーションとユーザとの間で機能し、アプリケーションに対する音声による情報の入力を支援することができる。
このように、本実施形態における情報処理装置1によれば、音声認識を用いて情報を入力する際に、より迅速かつ適切に情報を入力することが可能となる。
【0082】
[第3実施形態]
次に、本発明の第3実施形態について説明する。
本実施形態においては、第2実施形態の情報処理装置1を具体的なアプリケーションの入力に適用する状況を想定し、情報の入力が行われる実践的な例について説明する。
なお、以下の説明において、第1実施形態の
図6及び
図7を適宜参照するものとする。
【0083】
[1画面内での情報入力例(1)]
情報処理装置1は、
図6に示すように、1画面における複数のフィールドに対し、音声入力による情報の入力を行うことができる。
図11は、
図6に示すアプリケーションの入力画面において、操作者が「プロパティ」を音声入力する場合の動作を表す説明図である。
「プロパティ」を音声入力する場合、
図6に示すアプリケーションの入力画面が表示され、情報入力処理を実行させた状態で、操作者は、例えば、「辺縁、鋭利」との発話を行う(ステップP1)。
なお、「辺縁」はプロパティとして登録されており、
図6の「辺縁」フィールドの位置に情報を入力するよう定義されている。
【0084】
このとき、情報処理装置1の音声認識処理部53は、複数の音声認識エンジンによって、並列的に音声認識処理を実行する(ステップP2)。
ここでは、音声認識処理部53において、第1音声認識部53-1~第3音声認識部53-3が動作しているものとし、第1音声認識部53-1は、汎用のディクテーションを実行し、第2音声認識部53-2はプロパティとして登録された単語を抽出する単語抽出の音声認識処理、第3音声認識部53-3はコマンドとして登録された単語を抽出する単語抽出の音声認識処理を実行しているものとする。
【0085】
このとき、第1音声認識部53-1~第3音声認識部53-3の音声認識結果は、以下の通りであったとする。なお、説明の簡潔化のため、プロパティやコマンドの発話開始時刻と発話終了時刻は発話開始時刻を時間「0」とした相対時間で示し、時間を表す数値の単位は[ms]とする。
第1音声認識部53-1の音声認識結果:「へんえん」(開始時刻:0、終了時刻:500)、「鋭利」(開始時刻:501、終了時刻:1000)
第2音声認識部53-2の音声認識結果:「辺縁」(開始時刻:0、終了時刻:500)
第3音声認識部53-3の音声認識結果:エラー(認識失敗)
【0086】
上記音声認識結果において、第2音声認識部53-2の音声認識結果は、確度が高いものであるため、
図7に示す論理演算が行われ、第1音声認識部53-1の音声認識結果における「へんえん」(開始時刻:0、終了時刻:500)を除外し、同時間帯の第2音声認識部53-2の音声認識結果である「辺縁」(開始時刻:0、終了時刻:500)に置換する処理が行われる(ステップP3)。
この結果、最終認識結果として、プロパティ「辺縁」、データ「鋭利」が取得される。
次いで、プロパティ「辺縁」の定義が参照され、入力画面における「辺縁」フィールドの位置をクリックする操作がアプリケーションに行われる(ステップP4)。
さらに、「辺縁」フィールドに対するデータとして、「鋭利」のテキストデータが入力される(ステップP5)。
【0087】
[1画面内での情報入力例(2)]
図12は、
図6に示すアプリケーションの入力画面において、操作者が「コマンド」を音声入力する場合の動作を表す説明図である。
「コマンド」を音声入力する場合、
図6に示すアプリケーションの入力画面が表示され、情報入力処理を実行させた状態で、操作者は、例えば、「備考入力」との発話を行う(ステップQ1)。
なお、「備考入力」はコマンドとして登録されており、
図6の「備考入力」フィールドの位置に情報を入力するよう定義されている。
【0088】
このとき、情報処理装置1の音声認識処理部53は、複数の音声認識エンジンによって、並列的に音声認識処理を実行する(ステップQ2)。
ここでは、音声認識処理部53において、第1音声認識部53-1~第3音声認識部53-3が動作しているものとし、第1音声認識部53-1は、汎用のディクテーションを実行し、第2音声認識部53-2はプロパティとして登録された単語を抽出する単語抽出の音声認識処理、第3音声認識部53-3はコマンドとして登録された単語を抽出する単語抽出の音声認識処理を実行しているものとする。
【0089】
このとき、第1音声認識部53-1~第3音声認識部53-3の音声認識結果は、以下の通りであったとする。
第1音声認識部53-1の音声認識結果:「備考」(開始時刻:0、終了時刻:300)、「入力」(開始時刻:301、終了時刻:600)
第2音声認識部53-2の音声認識結果:エラー(認識失敗)
第3音声認識部53-3の音声認識結果:「備考入力」(開始時刻:0、終了時刻:600)
【0090】
上記音声認識結果において、第3音声認識部53-3は、コマンドの入力を待ち受けている状態であるため、「備考入力」の単語が抽出されることに対応して、コマンド「備考入力」の定義が参照され、定義された複数のプロセスが実行される(ステップQ3)。さらに、入力画面における「備考入力」フィールドの位置をクリックする操作及び備考入力用の音声認識エンジンが起動される(ステップQ4)。なお、備考入力用の音声認識エンジンが起動された後、第1音声認識部53-1~第3音声認識部53-3は、音声認識処理をバックグラウンドで実行することが可能である。
【0091】
次いで、「備考入力」フィールドのデータとして、備考入力用の音声認識エンジンによるディクテーション結果が入力される(ステップQ5)。
図6に示す例では、「前回検査と比較しました・・・」というテキストデータが「備考入力」フィールドのデータとして入力されている。
そして、備考入力が完了した場合、操作者は「備考入力終了」との発話を行う(ステップQ6)。
【0092】
なお、「備考入力終了」は、ディクテーション終了コマンドとして備考入力用の音声認識エンジンに登録されており、「備考入力終了」の発話(ステップQ6)によりディクテーションが終了する(ステップQ7)。これにより、備考入力用の音声認識エンジンでディクテーションが行われる状態が終了し、第1音声認識部53-1~第3音声認識部53-3による音声認識処理を待つ状態になる。
【0093】
[複数画面に渡る情報入力例]
上述の例では、情報処理装置1において表示されている画面を操作者が視認しながら、表示されているフィールドに対して音声入力により情報を入力する場合について説明した。
これに対し、情報処理装置1において定義される「コマンド」及び「プロパティ」は、画面が表示されているか否かに関わらず、プロセスを定義することができる。
そして、操作者が音声入力によって情報を入力する場合、現在表示されている画面以外の画面におけるコマンドあるいはプロパティについても、連続的に発話を行って、情報を入力することができる。
【0094】
図13は、複数画面に渡る情報入力を行う場合の概念を示す模式図である。
図13に示すように、情報処理装置1で実行されるアプリケーションにおいては、画面V1の操作部を操作すると画面V2に遷移し、画面V2の操作部を操作すると画面V3に遷移し、画面V3の操作部を操作すると画面V4に遷移するものとする。また、画面V1には、データD1を入力するためのフィールドが含まれ、画面V3にはデータD2を入力するためのフィールドが含まれ、画面V4には特定の音声認識エンジンを使用したディクテーションによって入力を行うためのフィールドが含まれているものとする。
このようなアプリケーションに対して音声認識により情報を入力する場合、画面V1~V4に遷移する毎に、表示された画面の表示内容を確認した上で、表示された画面内におけるプロパティあるいはコマンドを発話することが可能である。
【0095】
一方、操作に慣れた操作者等は、画面が遷移する以前に、操作後の画面に表示される内容を認識している可能性があるため、このような場合には、画面遷移を待つことなく、操作者が意図する操作内容を音声入力できることで利便性が高まる。
そこで、本実施形態における情報処理装置1は、操作者の連続的な発話(スピーチ)に含まれる複数のコマンドあるいはプロパティを受け付け、コマンドあるいはプロパティとして定義されたプロセスを順次実行すると共に、遷移後の画面におけるコマンドあるいはプロパティについては、画面の遷移を待って実行するものとする。
【0096】
このような機能を実現するため、本実施形態の情報処理装置1は、
図10に示す情報入力処理を実行する場合に、ステップS67までに、複数のコマンドあるいはプロパティを含む操作者の連続的な発話(スピーチ)を受け付け、受け付けた発話の音声認識結果をRAM13等に形成されたバッファに一時的に記憶する。
そして、データ入力・プロセス実行部155が、コマンドあるいはプロパティにおけるプロセスを1つずつ実行すると共に、画面遷移を伴うプロセスについては、画面遷移を待つためのウェイト処理を実行した後、次のプロセスを実行する。
【0097】
図13において、発話T1に含まれる特定単語及びデータは、それぞれ以下の内容を表すものとする。
特定単語K1:画面V1においてデータD1の入力フィールドにテキストを入力するためのプロパティ
データD1:データD1の入力フィールドに入力される発話のデータ
特定単語K2:画面V1において画面V2への遷移を伴うコマンド
特定単語K3:画面V2から画面V3に遷移を伴うコマンド
特定単語K4:画面V3においてデータD2の入力フィールドにテキストを入力するためのプロパティ
データD2:画面V3におけるデータD2の入力フィールドに入力される発話のデータ
特定単語K5:画面V3から画面V4への遷移を伴い、特定の音声認識エンジンによって発話T2のディクテーションを行うためのコマンド
【0098】
発話T1は、画面V1が表示されている状態で情報処理装置1に入力され、特定単語K3以降の発話は、表示されていない画面V2~V4における情報の入力に関するものである。
このような発話T1が入力された場合、情報処理装置1は、発話T1の最終認識結果をバッファに記憶し、特定単語K1から順に処理する。
即ち、画面V1が表示された状態において、特定単語K1として定義されたプロパティにより、データD1の入力フィールドに情報を入力する状態となる。
【0099】
そして、画面V1において、データD1の入力フィールドにテキストのデータD1が入力される。
次いで、特定単語K2として定義されたコマンドにより、画面V1における操作部を操作する入力が行われる。
ここで、特定単語K2として定義されたコマンドが実行されると、画面V1から画面V2への遷移が発生する。
この場合、特定単語K3として定義されたコマンドを直ちに実行すると、画面V1から画面V2への遷移が完了する前に、特定単語K3として定義されたコマンドの実行が開始される可能性がある。
【0100】
そこで、情報処理装置1は、特定単語K2として定義されたコマンドを実行した後、所定時間のウェイト処理を挿入する。そして、画面の遷移が完了することを待って、画面V2において、特定単語K3として定義されたコマンド(操作部の操作)を実行する。
同様に、特定単語K3として定義されたコマンドは、画面V2から画面V3への遷移を伴うため、情報処理装置1は、特定単語K3として定義されたコマンドを実行した後、所定時間のウェイト処理を挿入する。これにより、画面の遷移が完了した後、画面V3において、特定単語K4として定義されたプロパティにより、データD2の入力フィールドに情報を入力する状態となる。
【0101】
そして、画面V3において、データD2の入力フィールドにテキストのデータD2が入力される。
次いで、特定単語K5として定義されたコマンドにより、画面V3における操作部を操作する入力が行われる。
この後、画面V3から画面V4に遷移し、発話T2を待つ状態となる。
このような処理により、現在表示されている画面以外の画面におけるコマンドあるいはプロパティについて、操作者が連続的に発話を行った場合でも、発話に含まれるコマンドあるいはプロパティを適切に実行しながら、音声による情報入力を行うことが可能となる。
即ち、本実施形態の情報処理装置1によれば、マウス操作やキーボード入力を前提とするインターフェースを有するアプリケーション(コンピュータプログラム)に対して、音声認識と、知識ベースの構築及び利用とに関する新たな仕組みを実現することで、既存のアプリケーションに変更を加えることなく、人間が行っていたマウス操作やキーボード入力等による情報入力プロセスをコンピュータに代替させることができる。
そのため、入力処理時間の削減及び入力精度の向上を図ることができる。
【0102】
[変形例1]
上述の実施形態において、複数の音声認識エンジンによる音声認識処理を並列的に実行する場合を例に挙げて説明したが、これに限られない。例えば、1つの音声認識エンジン(例えば、汎用のディクテーションを行う音声認識エンジン等)によって音声認識処理された結果を異なる機能を有する複数の処理部によって並列的に処理し、処理負荷の増大を抑制しつつ、単独の音声認識処理による処理結果よりも有用な情報を得ることができる。
【0103】
図14は、1つの音声認識エンジンによって音声認識処理された結果を異なる機能を有する複数の処理部によって並列的に処理する情報処理装置1の機能構成例を示す模式図である。
図14に示す構成例では、第1実施形態の
図3に示す機能構成例において、音声認識処理部53及び認識結果演算部54の構成が異なっている。
即ち、
図14に示す情報処理装置1は、音声データ受付部51と、前処理部52と、音声認識処理部53Aと、並列処理部600と、処理結果演算部54Aと、アプリケーション実行部55と、を備えている。
これらのうち、音声データ受付部51、前処理部52及びアプリケーション実行部55の構成は、
図3に示す情報処理装置1の構成と同様である。
【0104】
音声認識処理部53Aは、前処理が実行された後の音声データに対し、1つの音声認識エンジンによって音声認識処理を実行する。音声認識処理によって取得された各音声認識結果は、音声認識結果DB73に記憶されると共に、並列処理部600に出力される。
並列処理部600は、音声認識処理部53Aによって取得された1つの音声認識結果(テキストデータ)に対し、異なる機能を有する複数の処理部によって並列的な処理を実行する。
具体的には、並列処理部600は、第1認識結果処理部601と、第2認識結果処理部602と、を備えている。
第1認識結果処理部601は、所定の言語処理(意味内容の解釈)を実行し、言語処理の結果を処理結果演算部54Aに出力する。
第2認識結果処理部602は、単語抽出処理(ターゲットとする単語の抽出)を実行し、単語抽出処理の結果を処理結果演算部54Aに出力する。
【0105】
処理結果演算部54Aは、第1認識結果処理部601及び第2認識結果処理部602によって入力された複数の処理結果に基づいて、音声認識処理の目的となる処理結果(最終認識結果)を取得する。例えば、処理結果演算部54Aは、第1実施形態の認識結果演算部54と同様に、第1認識結果処理部601及び第2認識結果処理部602の処理結果の1つに対して、他の処理結果を除外したり、置換したりした演算結果を最終認識結果とすることができる。
【0106】
なお、ここでは説明の便宜のために、並列処理部600が2つの処理部を有する場合を例に挙げて説明したが、並列処理部600が、異なる処理を実行する3つ以上の処理部を有する構成とすることも可能である。
即ち、本変形例の情報処理装置1は、入力された音声を、ディクテーションを行う音声認識エンジンによって音声認識処理し、音声データがテキスト化されたテキストデータに対し、所定の言語処理(意味内容の解釈)と、単語抽出処理(ターゲットとする単語の抽出)とを並列的に実行することができる。そして、これらの並列的な処理結果に対する演算処理等を行うことにより、最終認識結果を得ることができる。
このような構成とすることによっても、音声認識を用いて情報を入力する際に、より迅速かつ適切な音声入力結果を得ることができる。
【0107】
[第4実施形態]
次に、本発明の第4実施形態について説明する。
上述の第2実施形態においては、発話を音声認識処理によりテキスト化し、発話のテキストデータにおける所定項目のデータを自動的に入力するプロパティと、手動操作を自動化すると共に、自動化された操作で起動された特定の音声認識エンジンによる音声認識によって次の発話をテキスト化してデータ入力するコマンドと、を実行する情報処理装置1について説明した。即ち、第3実施形態における情報処理装置1では、リアルタイムに入力される音声データを待ち受け、プロパティまたはコマンドとして逐次解釈しながら、発話によってデータ入力を行うものとした。
【0108】
これに対し、本実施形態における情報処理装置1は、入力された音声データを蓄積しておき、所定のタイミングで、バッチ処理として音声データをプロパティまたはコマンドとして解釈することにより、発話の履歴(蓄積された音声データ)に基づいて、データ入力を自動的に行うものである。
なお、本実施形態において、入力された音声データを蓄積しておくことの他、入力された音声データと、その音声認識結果であるテキストデータとを対応付けて蓄積しておき、これらを発話の履歴として、データ入力を自動的に行うことも可能である。以下の説明においては、入力された音声データを蓄積するものとして説明する。
本実施形態における情報処理装置1の機能的構成は、第2実施形態の
図8に示す機能的構成とほぼ同様である。
また、本実施形態における情報処理装置1は、
図10に示す情報入力処理に対し、一部の処理が異なる情報入力処理を実行する。
【0109】
図15は、本実施形態における情報処理装置1が実行する情報入力処理の流れを示すフローチャートである。
図15に示す情報入力処理は、蓄積された音声データに対し、バッチ処理として実行されることから、
図10に示す情報入力処理のうち、ステップS64及びステップS74の処理が異なるものとなっている。なお、
図15に示す情報入力処理に先立ち、情報処理装置1では、蓄積された音声データの構文解析(音声認識結果における「プロパティ」、「コマンド」、「データ」の判定)が実行され、音声データの各単語の属性が予め把握されるものとする。例えば、データ入力・プロセス実行部155が、コマンド・プロパティDB172を参照し、蓄積された音声データの音声認識結果が、コマンドまたはプロパティとして定義されたプロセスに該当するか否かを判定することにより、構文解析を実行することができる。そして、情報入力処理が実行される場合には、「プロパティ」あるいは「コマンド」と、これらに対応する「データ」とが、対応付けられた「区分データ」(後述)として取り扱われる。ただし、「プロパティ」あるいは「コマンド」と、これらに対応する「データ」とを対応付けられた「区分データ」として取り扱うことの他、処理対象となる区分データが「プロパティ」あるいは「コマンド」であると判定された場合に、逐次、後続の「データ」を取得することとしてもよい。
以下、ステップS64と異なる部分であるステップS64A及びステップS74と異なる部分であるステップS74Aについて説明する。
【0110】
図15に示す情報入力処理のステップS64Aにおいて、音声データ受付部51は、処理対象となる一連の音声データの区分データを順に取得する。なお、音声データの区分データは、一連の音声データの部分を構成するデータであり、無音区間や明示的な区分を示す情報で区切られた部分的なデータとすることができる。また、ステップS64Aにおいては、「プロパティ」あるいは「コマンド」と、これらに対応する「データ」とが、上述したように、対応付けられた「区分データ」として、まとめて取得される。
【0111】
ステップS64Aにおいて取得された区分データは、順に前処理(ステップS65)、並列音声認識処理(ステップS66)等を経て、プロパティとして実行されたり(ステップS69)、コマンドとして実行されたりする(ステップS71)。
そして、コマンドを構成するプロセスが特定の音声認識処理を行うものである場合(ステップS72でYESの場合)、プロセスと対応付けられている特定の音声認識エンジンが起動される(ステップS73)。
【0112】
ステップS74Aにおいて、音声データ受付部51は、特定の音声認識処理を行うプロセスに対応するデータとして、ステップS64Aでまとめて取得された「コマンド」及び「データ」の区分データから、特定の音声認識処理を行うプロセス(コマンド)に対応する一連の音声データの区分データを取得する。なお、ステップS65で前処理が実行されていることから、本実施形態の情報入力処理では、
図10におけるステップS75の前処理は不要となっている。
ステップS74Aにおいて取得された区分データは、特定の音声認識エンジンによる音声認識処理(ステップS76)を経て、アプリケーションに対するデータとして入力される(ステップS77)。
この後、一連の音声データの処理が終了するまで、情報入力処理が繰り返される。
なお、上述したように、プロパティの定義において、特定の音声認識エンジンを起動することとしておき、プロパティに対応するデータの入力を特定の音声認識エンジンによる音声入力で行うことも可能である。この場合、蓄積された音声データの構文解析には、汎用のディクテーションを行う音声認識エンジンを使用し、プロパティに対応するデータの抽出時には、特定の音声認識エンジンを用いること等が可能である。
【0113】
このような処理により、蓄積された音声データをバッチ処理によって、所定のタイミングでプロパティまたはコマンドとして解釈し、発話された内容の実行(即ち、データ入力)を行うことができる。
例えば、過去にアプリケーションに対する入力内容を発話した履歴(過去の音声データ)を基に、アプリケーションに対するデータの入力を任意のタイミングで実行することができる。
【0114】
また、今後実行すべきアプリケーションに対するデータの入力内容を予め発話して記録しておき、指定した時間に、記録された音声データに基づくデータの入力を実行することができる。
本実施形態に係る情報処理装置1の使用形態として、例えば、ユーザが1日の作業履歴を夕方までに音声データとして逐次記録しておき、深夜等に、情報処理装置1が作業履歴をまとめてアプリケーションに入力する作業を実行する形態が想定される、また、他の例として、ユーザが翌朝までにやっておきたいことを、深夜に取得可能となるデータ(深夜1時に配信されるデータ等)を使用する前提で音声によって記録しておき、早朝等に、ユーザが作業から離れている状況下で、情報処理装置1が音声データに基づく作業を自動的に実行する形態等が想定される。
【0115】
[第5実施形態]
次に、本発明の第5実施形態について説明する。
本実施形態における情報処理装置1は、情報処理装置1と他の装置とが連携することにより、多様な適用形態及び付加的な機能等を実現するものである。
即ち、本実施形態における情報処理装置1は、他の装置と共に情報処理システムSを構成し、情報処理システムSに入力される音声を情報処理システムSに含まれるいずれかの装置で音声認識処理すると共に、音声認識処理を行った装置または他の装置において、音声認識処理の結果(テキストデータ)に基づいて、アプリケーションに対する情報入力を実行する。また、蓄積された音声データの音声認識結果に基づき、アプリケーションに対する情報入力を行う場合、音声認識処理の結果に対して構文解析(「プロパティ」、「コマンド」あるいは「データ」の判定等)が行われるが、情報処理システムSに含まれるいずれかの装置において、構文解析を行うことができる。
したがって、本実施形態における情報処理システムSでは、(1)音声データの入力、(2)音声データに対する音声認識処理、(3)音声認識結果(テキストデータ)の構文解析、(4)音声認識結果の実行(アプリケーションへの情報入力)を情報処理システムSに含まれるいずれかの装置で自動的に実行することで、目的とする機能のためのシステムの自動実行を実現することができる。
このような機能を備えることにより、本実施形態における情報処理装置1及び情報処理システムSは、音声入力によって、コンピュータの自動運転(目的とする処理の自動実行)を可能とするものである。
なお、本実施形態において、情報処理システムSを構成する各装置には、1または複数のアプリケーションを実装することが可能であり、他の装置に対して、アプリケーションの出力データを送信することが可能となっている。
【0116】
図16は、情報処理装置1によって構成される情報処理システムSの構成を示す模式図である。
図16に示すように、情報処理装置1は、他の装置として、例えば、スマートフォン等の端末装置TとネットワークNを介して通信可能な情報処理システムSを構築することができる。
なお、
図16に示す情報処理システムSにおいては、複数の端末装置Tが含まれると共に、端末装置Tとして複数種類の装置(スマートフォン、タブレット端末あるいはパーソナルコンピュータ等)を用いることができる。
【0117】
図16に示す情報処理システムSにおいて、各ユーザは、端末装置Tを使用するものとし、各ユーザは自身が使用する端末装置Tに発話(音声入力)するものとする。なお、各端末装置Tは、それぞれのユーザが使用する1または複数のアプリケーションを実装することが可能であり、各端末装置Tを上述の各実施形態のいずれかの情報処理装置1として構成することができる。
このような構成とした場合、例えば、端末装置Tにおいて音声認識処理を行うことができ、音声認識処理の結果取得されるテキストデータは、音声データと対応付けられて、情報処理装置1に送信される。端末装置Tにおいて音声認識処理を実行することで、日常的に当該ユーザの発話を音声認識し、学習またはカスタマイズ等された音声認識機能によって、ユーザの発話をより正確にテキストデータに変換することができる。また、例えば、端末装置Tにおいて上述の各実施形態における情報入力処理を実行することができ、情報入力処理の結果取得されるアプリケーションの出力データは、情報処理装置1に送信される。なお、端末装置Tにおいてアプリケーションを実行することなく、端末装置Tから情報処理装置1に対して、入力された音声データをそのまま送信することとしてもよい。
【0118】
情報処理装置1は、各端末装置Tから送信された音声データ、音声認識結果(テキストデータ)と音声データ、あるいは、アプリケーションの出力データを各端末装置Tのユーザと対応付けてデータベースに記憶する。
また、情報処理装置1は、1つのアプリケーションまたは機能が異なる複数のアプリケーションを実装することができる。
情報処理装置1では、各端末装置Tから送信された音声データ、音声認識結果(テキストデータ)と音声データ、あるいは、アプリケーションの出力データを対象として、ユーザが指定した時刻あるいは情報処理装置1に設定された時刻等の所定のタイミングにおいて、音声認識結果(テキストデータ)の構文解析及び第4実施形態における情報入力処理を実行する。
ただし、音声認識結果(テキストデータ)に対して情報入力処理を実行する場合、端末装置Tにおいて音声認識処理が行われているため、情報処理装置1は、音声認識処理を実行することなく、テキストデータを順に取得しながら、コマンドあるいはプロパティを実行することができる。
即ち、情報処理システムSにおいては、端末装置Tがユーザの音声入力を受け付け、音声入力を受け付けた端末装置Tまたは他の端末装置T、あるいは、情報処理装置1が音声認識処理を実行し、音声認識処理の結果に基づいて、情報処理装置1が情報入力処理を実行する。また、このとき、いずれかの装置において、音声認識結果(テキストデータ)の構文解析を行うことができる。
【0119】
これにより、音声認識を用いた情報入力を行う上で、利便性の向上を図ることができる。
また、本実施形態における情報処理装置1及び情報処理システムSは、事前に音声入力で指示を行うことによって、ユーザが予め設定した処理を自動実行する機能を有するため、操作者のリアルタイムでの操作を不要として、コンピュータの自動運転を実現することができる。
また、音声データまたは音声認識結果を取得する装置とは異なる装置によって、音声入力処理を実行することができるため、アプリケーションに対して音声により情報を入力するための機能を適切な形態で分散して実装することができる。
また、端末装置Tあるいは情報処理装置1に実装された1または複数のアプリケーションに対して、データ入力を自動的に行うことができる。
また、クラウドシステムとして情報処理システムSを構成することで、複数の装置が分担する処理を最適化すること等により、音声認識処理の高精度化、処理負荷に適応的に対応することによる処理速度の向上、音声認識処理あるいはアプリケーションの機能改良による利便性の向上、実行されるアプリケーションの数や種類の増加による目的とする処理の高速化・高機能化等を図ることができる。
【0120】
本実施形態に係る情報処理システムSの使用形態として、例えば、複数のユーザによる協業を効率的に行うシステムが想定される。
図17は、複数ユーザの協業を支援する情報処理システムSの機能を示す模式図である。
図17に示す例では、情報処理システムSを用いて、複数の社員A,B・・・及びその管理職Xが、日常業務における業務報告及び資料の取りまとめを行う場合を示している。
図17に示すように、情報処理システムSのユーザである社員A,B・・・は、一日の業務が終了するタイミング等で、当日の業務内容を自身が使用する端末装置Tに音声入力する。
図17に示す例では、社員Aが、「本日の実績は、売上実績、A1社n円及びA2社m円の2件、営業実績A3社、A4社、A5社の3件、そのうち、見込みが高いのはA4社でした。」と端末装置Tに音声入力することで、業務報告を行っている。
同様に、他の社員も、自身の業務報告を端末装置Tに音声入力し、業務報告を行っている。
これら社員A,B・・・の端末装置Tには、各社員が使用する1または複数のアプリケーションが実装されており、各社員は、自身が情報を入力する対象のアプリケーションを特定して音声入力する。
図17に示す例では、各社員が端末装置Tに実装された業務報告用のアプリケーションに対して、業務報告の音声入力を行う例を示している。なお、業務報告用のアプリケーションを情報処理装置1に実装し、端末装置Tから情報処理装置1に音声データを送信して、業務報告用のアプリケーションに対する音声入力処理を実行することとしてもよい。
また、管理職Xは、各社員からの業務報告がアップロードされることを見越して、各社員の業務報告を取りまとめる旨のタスクを自身の端末装置Tに対して音声入力する。なお、
図17に示す例では、管理職Xの端末装置Tでは、アプリケーションへの情報入力が行われず、音声認識処理のみが行われるものとする。
【0121】
すると、各社員の業務報告の音声入力がそれぞれの端末装置Tにおいて音声認識され、情報入力処理が実行される結果、アプリケーションの出力データが取得される。これらアプリケーションの出力データは、情報処理装置1に逐次送信される。各社員の端末装置Tからのアプリケーションの出力データは、各社員の業務報告の内容を表すデータである。この業務報告の内容を表すデータは、情報処理装置1において、各社員と対応付けて所定のデータベースに格納され、データとして利用することが可能となる。
また、管理職Xのタスクの音声入力が管理職の端末装置Tにおいて音声認識され、音声認識結果(テキストデータ)が情報処理装置1に送信される。
なお、
図17に示す例では、各社員の業務報告及び管理職Xのタスクの音声入力は、夕方までに行われるものとする。
そして、当日の深夜等、予め設定されたタイミングになると、情報処理装置1は、管理職Xのタスクに対応するテキストデータを対象として、情報入力処理(
図15参照)を実行する。
図17に示す例では、管理職Xが入力したタスクに対応するテキストデータを対象として、プレゼンテーション用のアプリケーションに対する情報入力処理が実行されている。即ち、情報処理装置1では、コンピュータの自動運転が行われている。なお、管理職Xの端末装置Tにプレゼンテーション用のアプリケーションを実装し、情報処理装置1のデータベースを参照しながら、管理職Xの端末装置Tがプレゼンテーション用のアプリケーションに対する音声入力処理を実行することとしてもよい。
【0122】
管理職Xが入力したタスクの内容が情報入力処理で実行されると、プレゼンテーション用のアプリケーションにデータ入力が行われ、各社員の業務報告のデータを参照しながら、プロパティまたはコマンドとして定義された取りまとめ結果の作成(部署全体の業務報告の作成)等が実行される。これにより、翌朝には管理職Xが求める取りまとめ結果(部署全体の業務報告)が利用できる状態となる。
即ち、本実施形態の情報処理システムSによれば、データの内容等は異なるものの、作業の枠組みが決められている業務を、スピーチに基づくプロセスオートメーションとして実現することができる。
また、複数のアプリケーションに対して情報入力処理を実行することにより、自動的にデータ入力を行い、そのアプリケーションの出力データを対象として、さらに情報入力処理を実行することで、アプリケーションに対するより高度なデータ入力を行ったり、より複雑なデータを生成したりすることが可能となる。
また、情報処理システムS及び情報処理システムSを構成する情報処理装置1によれば、事前に音声入力で指示を行うことによって、ユーザが予め設定した処理が自動実行されるため、操作者のリアルタイムでの操作を不要として、コンピュータの自動運転を実現することができる。
【0123】
なお、上記手順を一般的な作業手順として行った場合、各社員が当日の夕方以降または翌日等に業務報告を作成し、管理職Xに提出することとなる。管理職Xは、全員の業務報告が提出された後、当日の夜以降または翌日等に業務報告の取りまとめを行い、取りまとめ結果(部署全体の業務報告)を作成する。
そのため、部署全体の業務報告をミーティング等で使用できるのは、通常の勤務時間帯で作業を行った場合、各社員の業務報告を締め切った翌日夕方または翌々日以降となる可能性が高い。また、これらの業務報告内容を全てデータ入力する必要がある場合、各社員の業務報告のタイミングがさらに遅れることになる。
【0124】
これに対し、情報処理システムSによって協業を支援した場合、各社員は業務報告内容を発話すればよく、管理職Xは、各社員の業務報告を待つことなく、各社員の業務報告を取りまとめる旨のタスクを発話すればよい。
そして、各社員の業務報告を締め切った翌朝には、管理職Xが望む部署全体の業務報告書が作成されていることとなり、ミーティング等のタイミングを早めることが可能となる。
【0125】
なお、各社員が業務報告を行う場合に、他の社員の業務報告を参照する必要がある場合、当該他の社員の業務報告内容を参照する旨を発話しておけば、情報処理装置1が情報入力処理を実行する際に、目的とする他の社員の業務報告内容を参照するコマンドを実行し、情報の欠落がない業務報告が作成できることとなる。
【0126】
ここで、上述の例においては、コンピュータとして構成される情報処理装置1を対象として、自動運転を行う場合について説明したが、制御対象となる装置は、各種機能を有する機器とすることができる。例えば、家庭またはオフィス用の清掃ロボットを制御対象としたり、各種家電及び住宅設備を制御するスマートハウス用制御装置を制御対象としたりすることができる。
【0127】
以上のように構成される情報処理装置1は、音声認識処理部53と、認識結果演算部54と、を備える。
音声認識処理部53は、複数の音声認識処理を並列的に実行することにより、複数の音声認識結果を取得する。
認識結果演算部54は、音声認識処理部53によって取得された複数の音声認識結果において、第1の音声認識結果と第2の音声認識結果とを論理演算することにより、文字列のデータを取得する。
これにより、複数の音声認識結果を組み合わせて利用することができるため、複数の音声認識結果の中から確度の高い部分の音声認識結果を適宜選択したり、1つの音声認識結果を用いて他の音声認識結果の一部を除外または置換したり、1つの音声認識結果を参照して、他の音声認識結果の認識精度を高めたりすることができる。
したがって、言語処理等を行うことなく、より迅速かつ適切に音声入力結果を得ることができる。
【0128】
認識結果演算部54は、複数の音声認識結果における時間情報を用いて、第1の音声認識結果と第2の音声認識結果との論理演算を行う。
これにより、音声認識結果の精度に関わらず、複数の音声認識結果の論理演算をより適切に行うことができる。
【0129】
音声認識処理部53は、異なる種類の音声認識処理を並列的に実行する。
認識結果演算部54は、当該音声認識処理による異なる種類の音声認識結果を論理演算することにより、文字列のデータを取得する。
これにより、異なる種類の音声認識結果を組み合わせて利用することができるため、それぞれの種類の音声認識結果のうち、より有効な部分を選択することで、複数の音声認識結果から、より適切な文字列のデータを取得することが可能となる。
【0130】
音声認識処理部53は、ディクテーションを行う音声認識処理と、単語抽出を行う音声認識処理とを並列的に実行する。
認識結果演算部54は、単語抽出を行う音声認識処理の音声認識結果に基づいて、ディクテーションを行う音声認識処理の音声認識結果の一部を除外または置換する。
単語抽出を行う音声認識処理によって抽出された単語は、音声認識結果としての確度が高いため、ディクテーションを行う音声認識処理のディクテーション結果から、抽出された単語を除外または置換することで、ディクテーションを行う音声認識処理の音声認識結果を用いる部分が限定的となり、より適切な文字列のデータを取得することが可能となる。
【0131】
音声認識処理部53は、複数の音声認識結果または文字列のデータが特定の音声認識処理と対応付けられている場合、当該特定の音声認識処理を実行し、複数の音声認識結果に代えて、当該特定の音声認識処理の結果を出力する。
これにより、複数の音声認識結果または文字列のデータによって、特定の音声認識処理が必要であることが判明した場合に、特定の音声認識処理を実行することにより、高精度な音声認識結果を迅速に出力することができる。
【0132】
また、情報処理装置1は、データ入力・プロセス実行部155を備える。
データ入力・プロセス実行部155は、認識結果演算部54によって取得された文字列に基づいて、後段の処理に対する情報の入力を制御する。
また、データ入力・プロセス実行部155は、音声認識結果から取得された文字列のデータに基づいて、表示画面に対する操作によって入力可能な情報を後段の処理に入力する。
これにより、マウス操作やキーボード入力等により表示画面に対する操作によって入力される情報を、高精度な認識結果を速やかに得ることが可能な音声認識処理によって入力できるため、音声による高精度で高速な情報入力を行うことが可能となる。
【0133】
また、情報処理装置1は、音声入力インターフェース構築部152を備える。
音声入力インターフェース構築部152は、表示画面に対する操作を表すプロセスと音声認識処理による情報の入力のための文字列とを対応付ける。
データ入力・プロセス実行部155は、音声認識結果から取得された文字列のデータに基づいて、音声入力インターフェース構築部152によって文字列のデータと対応付けられた表示画面に対する操作を表すプロセスの実行を制御する。
これにより、表示画面に対する操作を表すプロセスと音声認識処理による情報の入力のための文字列のデータとを対応付けることができるため、ユーザの目的に応じて、音声認識による種々の情報の入力のための文字列を定義し、音声認識処理による多様な情報の入力を迅速に行うことが可能となる。また、複数の操作に対応するプロセスを組み合わせて、音声認識処理による情報の入力のための文字列を定義することができるため、表示画面に対する操作でユーザが行っていた操作位置の探索やマウスポインタの移動等に要する時間を短縮することができ、より迅速に情報の入力を行うことが可能となる。
【0134】
また、情報処理装置1は、音声認識エンジン選択部153を備える。
音声認識エンジン選択部153は、音声認識処理部53において並列的に実行される音声認識処理を選択する。
これにより、並列的に実行される複数の音声認識処理として適切なものを選択することができるため、より高精度な音声認識結果を取得することが可能となる。
【0135】
音声認識処理部53は、リアルタイムに入力された音声のデータに対して、複数の音声認識処理を並列的に実行することにより、複数の音声認識結果を取得する。
これにより、入力された音声のデータから、高精度な音声認識結果を逐次取得することができる。
【0136】
音声認識処理部53は、過去に入力されて蓄積された音声のデータに対して、複数の音声認識処理を並列的に実行することにより、複数の音声認識結果を取得する。
これにより、任意のタイミングで、音声のデータから高精度な音声認識結果を取得することができる。
【0137】
情報処理装置1は、音声認識処理部53と、データ入力・プロセス実行部155と、を備える。
音声認識処理部53は、ユーザの制御対象装置に対する指示の発話を音声認識する。
データ入力・プロセス実行部155は、音声認識処理部53によって取得された音声認識結果を解析することにより、前記指示に対応する処理内容を取得する。
データ入力・プロセス実行部155は、音声認識処理部53によって取得された音声認識結果を蓄積し、設定されたタイミングで、取得された処理内容を自動的に実行する。
これにより、事前に音声入力で指示を行うことによって、ユーザが予め設定した処理を自動実行させることが可能となる。
【0138】
データ入力・プロセス実行部155は、制御対象装置を制御するアプリケーションを動作させることにより、当該制御対象装置を自動運転する。
これにより、操作者のリアルタイムでの操作を不要として、制御対象装置の自動運転を実現することができる。
【0139】
情報処理装置1は、音声認識処理部53と、コマンド・プロパティDB172と、データ入力・プロセス実行部155と、を備える。
音声認識処理部53は、アプリケーションの入力インターフェースに対する操作のための音声を認識する。
コマンド・プロパティDB172は、アプリケーションの入力インターフェースに対する操作を表す1または複数のプロセスによって構成される操作内容データを記憶する。
データ入力・プロセス実行部155は、音声認識処理部53によって、操作内容データを識別する発話が認識された場合に、当該発話によって識別される操作内容データをコマンド・プロパティDB172から読み出し、操作内容データを構成する1または複数のプロセスに対応する操作を入力インターフェースに対して実行する。
これにより、操作者が連続的に発話を行った場合でも、発話に含まれるコマンドあるいはプロパティ等の操作内容データを適切に実行しながら、音声による情報入力を行うことが可能となる。
この結果、マウス操作やキーボード入力を前提とするインターフェースを有するアプリケーション(コンピュータプログラム)に変更を加えることなく、人間が行っていたマウス操作やキーボード入力等による情報入力プロセスをコンピュータに代替させることができる。
そのため、入力処理時間の削減及び入力精度の向上を図ることができる。
【0140】
情報処理装置1は、並列処理部600と、処理結果演算部54Aと、を備える。
並列処理部600は、1つの音声認識処理による音声認識結果に対して、異なる機能を有する複数の処理を並列的に実行することにより、複数の処理結果を取得する。
処理結果演算部54Aは、並列処理部600によって取得された複数の処理結果において、第1の処理結果と第2の処理結果とを論理演算することにより、文字列のデータを取得する。
これにより、処理負荷の増大を抑制しつつ、単独の音声認識処理による処理結果よりも有用な情報を得ることができる。
【0141】
情報処理システムSは、複数の情報処理装置(端末装置T及び情報処理装置1)を備える。
音声認識処理部53は、複数の情報処理装置のいずれかに入力された音声を音声認識処理する。
データ入力・プロセス実行部155は、音声認識処理による音声認識結果の構文を解析する。
データ入力・プロセス実行部155は、解析結果に基づいて、アプリケーションに対する情報の入力を制御する。
アプリケーション実行部55は、データ入力・プロセス実行部155によるアプリケーションに対する情報の入力に従って、当該アプリケーションを実行する。
これにより、音声認識を用いた情報入力を行う上で、利便性の向上を図ることができる。
また、アプリケーションに対して音声により情報を入力するための機能を適切な形態で分散して実装することができる。
【0142】
情報処理システムSには、複数の前記アプリケーションが実装される。
アプリケーション実行部55は、データ入力・プロセス実行部155による構文の解析結果が、他のアプリケーションの実行結果を参照することを示している場合、当該他の前記アプリケーションの実行結果を参照して、実行対象の前記アプリケーションを自動的に実行する。
これにより、アプリケーションに対するより高度なデータ入力を自動的に行ったり、より複雑なデータを自動的に生成したりすることが可能となる。
【0143】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
例えば、上述の実施形態において、情報処理装置1を単体の装置として構成し、本発明を1つの装置において実行する例について説明したが、これに限られない。即ち、情報処理装置1が備える機能をネットワークを介して通信可能に接続された複数の装置に実装し、情報処理システムとして本発明を実現することとしてもよい。例えば、音声入力インターフェース構築処理と情報入力処理とを異なる装置で実行することとし、コマンド及びプロパティの定義を行う機能と、アプリケーションに対する情報入力を行う機能とを異なる装置に実装することとしてもよい。
また、上述の実施形態において、データを表す単語については、同義語を特定の単語に集約することとしてもよい。例えば、「辺縁」プロパティに対するデータとして、「シャープ」という音声入力が行われた場合、同義語である「鋭利」に変換して入力すること等が可能である。
【0144】
また、上述の実施形態に記載された例を適宜組み合わせて、本発明を実施することが可能である。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、
図2,3,8の機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が情報処理装置1に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に
図2,3,8の例に限定されない。
また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【0145】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【0146】
プログラムを記憶する記憶媒体は、装置本体とは別に配布されるリムーバブルメディア、あるいは、装置本体に予め組み込まれた記憶媒体等で構成される。リムーバブルメディアは、例えば、磁気ディスク、光ディスク、光磁気ディスクあるいはフラッシュメモリ等により構成される。光ディスクは、例えば、CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk),Blu-ray Disc(登録商標)等により構成される。光磁気ディスクは、MD(Mini-Disk)等により構成される。フラッシュメモリは、例えば、USB(Universal Serial Bus)メモリあるいはSDカードにより構成される。また、装置本体に予め組み込まれた記憶媒体は、例えば、プログラムが記憶されているROMやハードディスク等で構成される。
【0147】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
【符号の説明】
【0148】
1 情報処理装置、11 CPU、12 ROM、13 RAM、14 バス、15 入力部、15a 操作入力部、15b 音声入力部、16 出力部、17 記憶部、18 通信部、19 ドライブ、20 撮像部、31 リムーバブルメディア、51 音声データ受付部、52 前処理部、53,53A 音声認識処理部、53-1~53-n 第1音声認識部~第n音声認識部、54 認識結果演算部、54A 処理結果演算部、55 アプリケーション実行部、71 音声認識辞書データベース(音声認識辞書DB)、72 単語辞書データベース(単語辞書DB)、73 音声認識結果データベース(音声認識結果DB)、151 ユーザインターフェース制御部(UI制御部)、152 音声入力インターフェース構築部、153 音声認識エンジン選択部、154 特定音声認識部、155 データ入力・プロセス実行部、171 音声認識エンジンデータベース(音声認識エンジンDB)、172 コマンド・プロパティデータベース(コマンド・プロパティDB)、501 ディクテーション音声認識部、502 第1認識結果特定部、503 第1認識結果出力部、511 単語抽出音声認識部、512 第2認識結果特定部、513 第2認識結果出力部、600 並列処理部、601 第1認識結果処理部、602 第2認識結果処理部、S 情報処理システム、T 端末装置、N ネットワーク