以下、本発明の実施の形態を図面に基づいて説明する。
図1は、全体処理の概要を説明するための図である。図1に示す音声文字化システム100は、電話回線網で接続された2以上の局交換機11、12・・・と、これら局交換機11、12・・・の各々から送信される通話中の音声を文字に変換する音声文字化サーバー5とで構成される。携帯端末31、32・・・と、音声認識を必要とするサービス提供会社に設置される通話着信可能な端末50とは、所定の電波塔21、22・・・を介してこの音声文字化システム100を利用し、PC(Personal Computer)6はネットワーク網を介して音声文字化サーバー5と接続し音声文字化サーバー5が提供するサービスを受ける。音声文字化サーバー5は、CPUによって制御されるコンピュータ装置であり、主記憶装置、補助記憶装置などの記憶領域と、ネットワーク網に接続するための通信装置と、入出力装置と、表示装置とを有する。
図1において、発声者Aと発声者Bとが各自で所有する携帯電話機31と32とを用いて互いに通話する場合で全体処理の概要を説明する。以下、本実施例において、「発声者」は、携帯電話機などを利用して通話相手と通話する場合には「通話者」を意味し、インターネットなどを介して音声文字化サーバー5が提供するサービスを利用する場合には「利用者」を意味する。
例えば、発声者Aが相手側として携帯電話機31から発声者Bにダイヤル発信すると、携帯電話機31の位置をエリア内とする電波塔21を介して局交換機11で受信され、更に電話回線網を介して発声者B側の局交換機12で所定の通信手順を経て着呼する。局交換機12は、発声者Bの携帯電話機32の位置がエリア内となる電波塔22を介して携帯電話機32で着信する。発声者Bの携帯電話機31で発声者Aによるダイヤル発信を着信することによって音声通話が開始される。
発声者A側の局交換機11は、回線が切断されるまで通信を継続させると共に、開始された音声通話のうち発声者Aの音声を、通信回線を介して音声データを収集して文字データに変換する音声文字化サーバー5へ送信する。同様に、発声者B側の局交換機12からも発声者Bの音声が音声文字化サーバー5へと送信される。以下、発声者Aに係る音声データに対する処理で説明するが、発声者Bに係る音声データに対しても同様の処理がなされる。
音声文字化サーバー5は、発声者Aが音声処理のために、音声データ、発声者名、日時、場所、及び前後文脈などの付加情報を発声者情報として蓄積することに同意しているか否かを含めて、発声者DB(データベース)41を用いて発声者Aの認証を行う(ステップS1)。
発声者Aが認証され、かつ同意していることが確認された場合のみ以下の処理が継続して行われる。発声者Aの認証が失敗した場合、又は認証は成功したものの同意していない場合は、以下の処理を実行することなく発声者Aの音声データに係る処理を終了する。音声文字化サーバー5は、同意・否同意を含む認証結果を局交換機11に対して通知するようにする。認証され同意確認された場合のみ局交換機11と音声文字化サーバー5との間で発声者Aに係る1つのセッションが成立し、局交換機11から発声者Aの音声をデジタル化した音声データが音声文字化サーバー5に送信されることにより音声処理が実行される。このような認証により、プライバシー問題を考慮したうえでの音声処理の実行することができる。なお、発声者Aの携帯電話を他の人が利用する場合、音声収集を行いたくない通話である場合などに対応するために、通話の前に音声収集を行わない設定を可能とするようにしてもよい。通話の前に音声収集を行わない設定がなされた場合は、認証時に上述した同意が確認された場合であっても音声収集を行わない。つまり、否同意を示す認証結果を局交換機11に対して通知すればよい。
音声文字化サーバー5は、局交換機11から音声データを受信すると、音声アナログ信号の大きさを二進の数値データとして表現されたデジタル信号に変換して、音声が無い部分を区切りにした発声音節ごとのフレーム単位に分割した音声データを音声データファイル42に保存する。音声が無い部分とは、デジタル値で表わされる音声の強度のうち所定の強度以下となる部分で定義される。その際、音声文字化サーバー5は、音声データファイル42毎に保存された音声デジタル信号を全て加算した数値をチェックサムとして計算して音声データファイル42に付加する(ステップS2)。
そして、音声文字化サーバー5は、算出したチェックサムと発声者名などの付加情報とが一致する音声データが音声DB43に登録されているか否かを、音声DB43を検索することによって確認する(ステップS3)。チェックサムを利用することによって、音声デジタル信号による一致検索に比べ、より高速に検索処理を行うことができる。
ステップS3において、音声データが音声DB43に登録されていない場合、後述される所定の区切り方法で音声データを分割し、分割した音声データ毎にチェックサムを算出して、同様に、算出したチェックサムと発声者名などの付加情報とが一致する音声データが音声DB43に登録されているか否かを、音声DB43を検索することによって確認する。
そして、音声文字化サーバー5は、検索により登録されていたかを判断する(ステップS4)。音声データが分割された場合、分割した音声データ毎に登録の判断処理を行う。音声文字化サーバー5は、音声DB43を検索して読み出した文字データを発声者Aの発声者IDと共に送信待機DB47に保存する(ステップS5)。
音声文字化サーバー5は、発声者DB41に発声者Aの発声者情報に保存されている文字データへの変換結果を送信するための変換結果送信タイミングの条件が成立するまで、送信待機DB47に保存しておく。変換結果送信タイミングの条件が成立したら、音声文字化サーバー5は、発声者DB41から発声者Aの発声者情報に保存されている発信方法に従って文字データを送信する(ステップS6)。
一方、音声データを分割しても音声DB43から対応する文字データを検索できなかった場合、つまり音声データが未登録の場合、音声文字化サーバー5は、音声認識機能及び言語解析機能を使って音声データを文字データに変換し、音声データと、文字データと、付加情報とを発声者Aの発声者IDに対応させて音声DB43に登録する(ステップS7)。音声データファイル42に格納されている音声データのうち、音声DB43から検索できなかった音声データのみが文字データに変換される。付加情報として、チェックサムなどの項目が含まれる。音声DB43のデータ構成については後述される。
そして、音声文字化サーバー5は、音声認識の精度や発声者Aの契約条件に基づく発声者DB41のオペレータ校正フラグの状態からオペレータによる校正を行うか否かを判断する(ステップS8及びS9)。オペレータ校正フラグがON(値「1」)の場合、音声文字化サーバー5は、発声者Aの発声者ID、音声データ、変換した文字データ、付加情報などを含む校正依頼情報を校正依頼キュー49に保存する(ステップS10)。一人又は複数のオペレータによって必要に応じて校正を行ったうえで音声DB43に登録し、校正依頼キュー49から登録済みの校正依頼情報を削除する(ステップS11)。
また、オペレータは、発声者Aの契約条件において既に音声DB43に登録されている音声データに基づく文字データの校正が指定されている場合、所定のタイミングで音声DB43に保存されている文字データを校正するようにしてもよい。音声DB43に保存されている文字データを校正により修正する際には、オペレータによる校正パターンを蓄積しておいてもよい。また、音声DB43の検索効率を高める目的などで古いデータを削除する場合もある。校正作業においては、オペレータが変換精度を上げるために、音声認識機能および言語解析機能に対するオプションをカスタマイズすることができるようにする方法も含まれる。
音声認識機能と言語解析機能の解析能力が完全でないために、音声データを音声認識機能と言語解析機能の相互補完によって変換したうえで、オペレータなどの人間による校正作業及び校正パターンという情報を加えることにより、次回の音声処理時にフィードバッグさせ、音声認識及び言語解析率を高めるようにすることができる。結果として、例えば、音声データが音声認識機能によって「すいぞっかんいゆく」と認識された場合でも、「すいぞくかんにいく」と認識された場合でも同様に「水族館に行く」に変換するようにできる。
また、発声者Aが自身の携帯電話31やPC6などから認証後に音声DB43に保存されている自分の音声データから変換された文字データを確認するインタフェースを設け、既に変換されている文字データを校正するようにしてもよい。
ステップS11にてオペレータによって校正された文字データは、発声者Aの発声者IDと共に送信待機DB47に保存され、発声者DB41に発声者Aの発声者情報に保存されている送信タイミングの条件が成立した時に、音声文字化サーバー5によって、発声者DB41から発声者Aの発声者情報に保存されている発信方法に従って文字データが送信される(ステップS12)。
送信待機DB47に発声者Aの発声者IDに対応させて蓄積されている文字データは、発声者Aが文字データを提供するサービスを要求して認証された場合に、発声者Aの発声者情報に保存されている送信タイミングと発信方法とに基づいて文字データを提供する。送信タイミングとして、リアルタイム、n文字単位、通話完了後などが指定される。発信方法として、Webでの情報提供、電子メールでの提供方法などが指定される。発声者Aによる通話が完了後に、発声者A宛に電子メールによって通話による音声データから変換された文字データが送信される。発声者Aが発声者Bの電子メールを指定しておいて、発声者Bにも文字データを送信するようにもできる。
上述では、発声者Aの音声データに対する処理を説明したが、通話相手の発声者Bの音声データに対しても同様である。また、発声者A又はBが音声認識を必要とするサービス提供会社の着信機能を備えた装置33へダイヤルする場合においても同様の処理が行われる。
また、携帯電話機31及び32を用いて音声データが収集される例を説明したが、公衆電話機やホーム電話機のようなネットワークを介さない所定位置に設置される設置型電話機、ネットワークを用いたIP電話機なども適応可能である。
図2は、音声データを文字データに変換して登録する音声登録処理を説明するためのフローチャート図である。図2において、音声文字化サーバー5は、発信者と受信者の電話番号或いは利用者IDを取得する(ステップS51)。例えば、発声者Aと発声者Bとが通話する場合、音声文字化サーバー5は、発声者Aの電話番号と発声者Bの電話番号とを夫々の側の局交換機11及び12から取得する。一方、発声者として登録済みの利用者が、変換された文字データの提供を受けるために音声文字化サーバー5にアクセスした場合、音声文字化サーバー5は利用者から発声者IDを取得する。
音声文字化サーバー5は、ステップS51で取得した電話番号又は発声者IDを用いて発声者DB41から発声者情報を検索して取得する(ステップS52)。音声文字化サーバー5は、発声者情報を取得でき、かつ音声データから文字データへの変換サービスの利用を希望しているか否かを判断する(ステップS53)。発声者情報を取得できなかった場合、又は取得できたが音声データから文字データへの変換サービスの利用を希望してない場合、音声文字化サーバー5は、発声者(又は利用者)が未登録であると判断して、この音声登録処理が終了する。
一方、発声者情報を取得できた場合、音声文字化サーバー5は、発声者(又は利用者)が登録済みであると判断して、通話状態であるか否かを判断する(ステップS54)。通話状態の判断は、例えば、ステップS51にて取得した情報が電話番号であった場合に、対応する局交換機11又は12から通話終了の通知を受けているならば、ステップS54−2へと進む。
一方、通話終了の通知を受けていないならば通話中であると判断し、音声データを取り込んで(ステップS55)、アナログの音声データをデジタルの音声データに変換(A/D変換)する(ステップS56)。局交換機11又は12から受信した音声データがデジタルで提供される場合には、ステップS56は省略される。
音声文字化サーバー5は、音声データを解析して、音声がない部分を区切りとしてフレーム単位に分割して、フレーム毎に音声データファイル42を作成する(ステップS57)。音声文字化サーバー5は、音声データファイル42毎に音声データのデジタル値を合算してチェックサムを算出し、音声データファイル42に設定しておく(ステップS58)。そして、音声文字化サーバー5は、音声データファイル42毎に、ステップS52で取得した発声者情報の発声者IDとステップS58で算出したチェックサムとを用いて同じ音声データが音声DB43に登録されているか否かを、音声DB43を検索して確認する(ステップS59及びS60)。
全ての音声データファイル42について音声データが音声DB43に登録されていることを確認した場合、ステップS60−2へ進み、図5に示す文字データキューイング処理を行った後、ステップS54へ戻って上述同様の処理を繰り返す。
一方、音声データファイル42のうち音声データの登録の確認ができなかったファイルがあった場合、音声文字化サーバー5は、その音声データファイル42の音声データが細分割済みのファイルであるか否かを判断する(ステップS61)。細分割済みのファイルである場合、ステップS62へ進む。一方、細分割されていない音声データが保存された音声データファイル42である場合、音声文字化サーバー5は、保存されている1フレームに相当する音声データを所定の区切り方法で細分割して音声データファイル42を作成する(ステップS61−2)。この場合、音声データファイル42の所定記憶領域に細分割を示すフラグを設定しておけばよい。所定の区切り方法として、例えば、予め定められた時間軸又はバイト数、或いは文字単位で区切る方法がある。その後、音声文字化サーバー5は、ステップS58へ戻り、細分割による音声データファイル42に対して上述した方法でチェックサムを算出するなど、上記同様の処理を繰り返す。
細分割しても音声データの登録の確認ができなかった場合、音声文字化サーバー5は、既存の音声認識機能を使用して文字に変換して音声データから文字データを作成し(ステップS62)、発声者IDと対応付けて音声DB43に登録する(ステップS63)。
そして、音声文字化サーバー5は、文字データを解析して音声認識が不完全であるか否かを判断し、また、ステップS52で取得した発声者情報のオペレータ校正フラグをチェックして校正サービスを希望しているか否かを判断する(ステップS64)。音声認識が不完全で、かつ校正サービスを希望している場合に、音声文字化サーバー5は、発声者ID、音声データ、変換した文字データ、付加情報などを含む校正依頼情報を校正依頼キュー49に保存して(ステップS65)、文字データキューイング処理を実行した後(ステップS65−2)、ステップS54へと戻って上記同様の処理を繰り返す。音声認識が完全に行われた場合や、音声認識が不完全であっても校正サービスを希望していない場合には、音声文字化サーバー5は、ステップS65を行わず、文字データキューイング処理を実行した後(ステップS65−2)、ステップS54へと戻って上記同様の処理を繰り返す。
図3は、アナログの音声データを量子化する方法例を示す図である。図3(A)において、アナログ音声の波形2pを時間の関数F(t)とし、次に時間軸に沿って時間点列T0、T1、T2、・・・Tnをとり、各店での波高値F(tk)を読み取る標本化(サンプリング)を行う。標本の結果得られる値を標本値という。次に、図3(B)において、標本値としての波高値は連続量(アナログ)であるため一般に小数点以下の値が存在するが、その値に最も近い整数値で近似してそれを波高値とみなす整数化を行う。これを量子化という。
例えば、アナログ音声の波形2pは、時間間隔Wiごとの時間T0、T1、T2、・・・Tnにおいて波高値1、9、13、13、10、6、6、6、7、5、1の値でデジタル化される。
上述したような標本化と量子化とによって元のアナログ音声の波形2pは適当な整数値の集合として表現でき、この整数値を電気パルス列に置き換えてA/D変換を行うことにより、元のアナログ音声の波形が対応する電気パルスの集まったデジタルの音声データとして扱えるようになる。
図4は、音声データを分割する処理を説明するための図である。図4(A)に示す音声データの例において、図4(B)に示すように、音声がない部分を区切りにしてフレーム毎に音声データを分割する。音声データを分割して得られたフレームA1からAnは、各々の音声データファイル42に保存される。例えば、「おはよう」、「吉岡です」・・・などが各々音声データファイル42に保存される。音声がない部分の判断は、図3(B)に示すように量子化されたデジタル値が所定値以下である場合に区切るようにすればよい。
得られたフレームA1からAn毎に量子化されたデジタル値を合算したチェックサムを、各々の音声データファイル42に設定するようにする。
次に、文字データを送信する処理について図5及び図6で説明する。図5は、図2に示す音声登録処理から呼び出される文字データキューイング処理を説明するためのフローチャート図である。図5において、音声文字化サーバー5は、発声者IDを用いて発声者DB41から発声者情報を取得する(ステップS71)。そして、音声文字化サーバー5は、文字データの送信要求があったか否かを判断する(ステップS72)。文字データの送信要求がなかった場合、音声文字化サーバー5は、この文字データキューイング処理を終了し、音声登録処理(図2)へ戻る。一方、文字データの送信要求があった場合、音声文字化サーバー5は、発声者情報で指定される送信タイミングを解析する(ステップS73)。
送信タイミングが「(a)発声から規定時間後に送信」である場合、音声文字化サーバー5は、現時間に設定した時間を加算して、送信時間を決定する(ステップS74)。送信タイミングが「(b)すぐに送信」である場合、音声文字化サーバー5は、送信時間を現時間に設定する(ステップS75)。送信タイミングが「(c)通話終了後」である場合、音声文字化サーバー5は、通話が終了した場合は、送信時間の設定を現在時間に設定し、終了していない場合はNULLに設定する(ステップS76)。送信タイミングが「(d)規定文字数に到達した時」である場合、音声文字化サーバー5は、送信する文字数と送信待機DB47に設定されている文字数の合計が、利用者が事前に設定した文字数に達していれば、送信時間を現時間に設定する(ステップS77)。
送信時間を設定した後、音声文字化サーバー5は、発声者情報を参照して、完全認識できない文字をフィードバックするか否かを判断する(ステップS78)。発声者情報でフィードバックが指定されていない場合、音声文字化サーバー5は、ステップS80へ進む。一方、フィードバックが指定されている場合、音声文字化サーバー5は、認識できない文字を認識できた文字とは異なる書体もしくは色に変更して目立つようにハイライト表示にする(ステップS89)。また、音声文字化サーバー5は、必要であればその部分の音声データも送信する。
更に、音声文字化サーバー5は、発声者情報を参照して、暗号化の指定があるか否かを判断する(ステップS80)。暗号化の指定がない場合、音声文字化サーバー5は、ステップS82へと進む。一方、暗号化の指定がある場合、音声文字化サーバー5は、文字データを所定の方法で暗号化する(ステップS81)。
その後、音声文字化サーバー5は、送信待機DB47に文字データと、送信時間と、発声者情報とを含む送信情報を格納することによりキューイングし(ステップS82)、音声登録処理からの実行されるこの文字データキューイング処理を終了して、呼び出し元の音声登録処理へと戻る。
図6は、文字データ送信処理を説明するためのフローチャート図である。図6に示す文字データ送信処理は、所定の間隔で音声文字化サーバー5が停止されるまで繰り返して行われる。音声文字化サーバー5は、送信待機DB47にキューイングされている文字データに係る送信情報のうち送信時間が現時間と同じか又は経過している送信情報を検索する(ステップS91)。音声文字化サーバー5は、検索された送信情報毎に発声者情報で指定される送信方法を特定する(ステップS92)。
送信方法が「(a)文字データをファイルに保存」を示す場合、音声文字化サーバー5は、文字データをファイルに保存して発声者情報で指定される宛先に送信する(ステップS93)。送信方法が「電子メール」を示す場合、音声文字化サーバー5は、電子メールで通話内容を文字にして送信する。送信方法が「(c)RSS(Rich Site Summary)」を示す場合、音声文字化サーバー5は、RSSで文字を送信する(ステップS95)。この場合、音声文字化サーバー5は画面表示設定を行うようにしてもよい。送信方法が「(d)電子掲示板、CHATなど」を示す場合、音声文字化サーバー5は、ある特定のサーバーに文字データを送信する(ステップS96)。この場合、特定のサーバーにてアクセス可能な有資格者がリアルタイムに参照することができる。
特定した送信方法にて文字データを提供した後、音声文字化サーバー5は、ステップS91へ戻り、音声文字化サーバー5が停止されるまで上述した処理を繰り返す。
次に、発声者として登録されている利用者による文字データの校正処理について説明する。この場合、音声文字化サーバー5はWebサーバーとして動作し、利用者が文字データを更新するためのサービスを提供する。図7は、利用者による音声DBに保存されている文字データの校正処理を説明するためのフローチャート図である。図7において、発声者として登録された利用者が、使用しているPCのブラウザから音声文字化サーバー5が提供する文字データの校正処理を行うサービスにアクセスすると(ステップS101)、音声文字化サーバー5は、利用者に発声者ID及びパスワードを要求し、利用者から取得した発声者ID及びパスワードで発声者DB41を用いてユーザ認証を行う(ステップS102)。
次に、音声文字化サーバー5は、発声者IDを用いて、音声DB43から過去に登録された文字データを検索し(ステップS103)、利用者が指定した順番でブラウザに一覧8aを表示する(ステップS104)。一覧8aを表示する順番として、例えば、音声DB43への登録が新しい順、最近使われた文字データの順、音声認識が不完全であった文字データの順などである。文字データに例えば「**」などの特殊文字が含まれる場合、音声認識が不完全であったことを示す。ブラウザに一覧を表示した画面から順番を指定できるようにしてもよいし、ユーザ認証後に予め利用者から所望の順番を取得しておいてもよい。
ブラウザの一覧8aを表示する画面から、利用者は音声認識によって変換された文字と対になっている再生アイコンをクリックして音声を再生し、それと認識された文字とを照らし合わせて、必要があれば校正した文字を校正後文字蘭に入力する(ステップS105)。そして、利用者は、校正後文字による更新で良ければ、更新ボタン8bをクリックする(ステップS106)。
利用者によるこれら操作に応じて、ブラウザから校正された文字データが音声文字化サーバー5に送信され、音声文字化サーバー5は、利用者によって入力された文字列による文字データで音声DB43を更新する。
図8は、校正依頼キューに登録された自動認識後の文字データのオペレータによる校正処理を説明するためのフローチャート図である。図8において、音声文字化サーバー5は、校正依頼キュー49に校正したい文字データが登録されると、複数のオペレータ端末のうち待機状態のオペレータ端末を検索する(ステップS201)。音声文字化サーバー5は、検索により待機状態のオペレータ端末があったか否かを判断する(ステップS202)。待機状態のオペレータ端末がない場合、音声文字化サーバー5はステップS201へ戻り、校正依頼キュー49に新たに文字データが登録されるのを待つ。
一方、音声文字化サーバー5は、待機状態のオペレータ端末がある場合、待機状態のオペレータ端末の何れか1台を選択し、その端末を使用状態に定義する(ステップS203)。そして、音声文字化サーバー5は、オペレータ端末に注意を促すアラームを出力して、校正すべき音声がオペレータのヘッドセットで再生されると、更に音声に対する1以上の文字変換候補をオペレータ端末に表示する(ステップS204)。
音声文字化サーバー5は、利用者によって変換候補から1つ選択されたか否かを判断する(ステップS205)。利用者が変換候補を選択した場合、音声文字化サーバー5は、選択された変換候補で音声DB43を更新するためにステップS207へ進む。一方、利用者が変換候補を選択しなかった場合、音声文字化サーバー5は、変換候補の選択の代わりに、オペレータ端末のキーボードから文字入力を受け付けるか、音声認識機能及び言語解析機能を用いてオペレータが発音し直した音声を文字列に変換する(ステップS206)。
音声文字化サーバー5は、オペレータ端末から取得した選択又は入力などによって校正された文字列を文字データとして音声DB43を更新し(ステップS207)、オペレータ端末を待機状態に定義して(ステップS208)、ステップS201へ戻って上述した同様の処理を繰り返す。
図9は、利用者として登録する発声者DBのテーブル構成例を示す図である。図9において、発声者DB41は、発声者ID、発声者パスワード、発声者登録日時、住所、電話番号、携帯電話番号、PC識別コード、音声→文字変換サービス利用フラグ、オペレータ校正フラグ、暗号化対応フラグ、送信タイミングフラグ、送信タイミングの規定数、送信方法、送信先、フィードバックフラグなどの項目を有する。
発声者IDは、音声文字化サーバー5によるサービスを利用する利用者としての発声者を識別するためのIDであり、例えば「0800010001」などの発声者の携帯電話番号が設定される。発声者パスワードは、音声文字化サーバー5に利用登録する際に利用者によって設定された認証用の文字列である。発声者登録日時は、例えば「0803281030」のように登録した年月日時間を示す。発声者指名は、利用者としての発声者の名前が例えば「富士通太郎」のように登録時に設定される。住所は、例えば「山中湖のほとり」などのように発声者によって登録時に設定される。電話番号及び携帯電話番号は、例えば「042xxxxxxx」及び「0800010001」のように登録時に設定される。PC識別コードは、例えば「01.109.xx.xx」などのIPアドレス、又はMACアドレスが設定される。
音声→文字変換サービス利用フラグには、音声データから文字データへの変換サービスを利用する場合には「1」が設定され、利用しない場合には「0」などの「1」以外の値が設定される。オペレータ校正フラグには、オペレータによる校正サービスを利用する場合には「1」が設定され、利用しない場合には「0」などの「1」以外の値が設定される。暗号化対応フラグには、文字データを暗号化する場合には「1」が設定され、暗号化しない場合には「0」などの「1」以外の値が設定される。
送信タイミングフラグには、発声から規定時間後に送信する場合には「1」が設定され、すぐに送信する場合には「2」が設定され、通話終了後に送信する場合には「3」が設定され、所定文字数に達したら送信する場合には「4」が設定される。送信タイミングの規定数に設定される値は、送信タイミングフラグが「1」の場合には規定時間を示し、「4」の場合には文字数が示す。
送信方法は、「FILE」、「MAIL」、「RSS」、「SERVER」のいずれかで指定される。更に、ファクスなどの送信手段を設定することも可能である。送信先は、送信方法に応じた宛先が設定され、例えば、送信方法が「MAIL」である場合は1つ以上の電子メールアドレスが指定される。自身と通話相手の電子メールアドレスなど複数の送信先を設定してもよい。フィードバッグフラグは、音声認識が完全に出来なかった場合にフィードバッグを行うときは「1」が設定され、フィードバッグを行わないときは「0」など「1」以外の値が設定される。
電話番号、携帯電話番号、PC識別コードは、発声者が利用する装置を特定するための装置特定情報である。
図10は、音声データから変換された文字データを保存する音声DBのテーブル構成例を示す図である。図10において、音声DB43は、発声者ID、チェックサム、音声データ情報、認識文字、校正後文字、最新の参照日時、参照回数、音声データ登録日時、校正日時などの項目を有する。
発声者IDは、利用者として発声者DB41に登録した発声者IDである。発声者DB41に携帯電話番号を発声者IDとして登録した場合、その携帯電話番号が設定される。チェックサムには、音声データのデジタル値の合計値が設定される。音声データ情報には、デジタル化された音声データの保存先を示す情報が設定される。ファイルに保存されている場合にはファイル名が設定される。
認識文字には、音声データから自動認識された文字列が文字データとして設定される。校正後文字には、オペレータ又は発声者として登録されている利用者によって校正された文字列が文字データとして設定され、校正されていない場合は空白となる。発声者IDとチェックサムとによって音声データの登録が検索された場合、校正後文字に設定された文字データを認識文字に設定された文字データよりも優先的に使用し、校正後文字が空白の場合に認識文字の文字データを使用する。
最新の参照日時は、音声データ情報の保存先に保存されている音声データから認識又は校正された文字データが利用された最後の日時を示す。参照回数は、この文字データが利用された回数を示す。音声データ登録日時は、この音声データを文字データに変換し登録した日時を示す。校正日時は、認識文字に保存される文字データをオペレータ又は利用者が校正した日時を示す。
次に、上述したような音声文字化サーバー5が適用される利用形態について説明する。図11は、携帯電話機で通話する利用形態での適用例を示す図である。図11において、発声者A及びBが携帯電話機2a及び2bを用いた通話による各音声信号は、各々の携帯基地局3a及び3bで受信され、電話回線網7aを介して各々の中継交換局4a及び4bによって双方の携帯電話機2a及び2bに送信される。中継交換局4a及び4bは、通信可能なデータ回線網によって音声文字化サーバー5に接続されており、音声文字化サーバー5により携帯電話番号などで認証確認後、更に音声→文字変換サービス利用フラグによりサービスの利用を確認後、音声データと自動認識によって変換された文字データとを音声文字化サーバー5に蓄積する。音声文字化サーバー5は、所定の送信タイミングで指定された送信先へ文字データを送信する。
図12は、IP電話機で通話する利用形態での適用例を示す図である。図12において、発声者A及びBがIP電話機2c及び2dを用いた通話による各音声信号は、光ファイバー又はデジタル専用回線などに接続される無線アンテナ3c及び3eによってIP網7cを介して送受信される。IP網7cに接続される音声文字化サーバー5は、IP網7cを形成するルーターから転送されるIP電話機2c及び2dを夫々識別するIPアドレスによって認証確認し、更に音声→文字変換サービス利用フラグによりサービスの利用を確認後、IP電話機2c及び2d夫々からの音声データと自動認識によって変換された文字データとを音声文字化サーバー5に蓄積する。
発声者A又はBが公衆電話ボックスやコンビニなどに設置されるIP電話機から通話する場合においても同様である。このような利用形態では、図9に示される発声者DB42のPC識別コードを用いて認証などを行えばよい。
図13は、P2Pネットワークを介してIP電話により通話する利用形態での適用例を示す図である。図13において、一般のノードとなるPC端末62は、インターネット68を介して音声文字化サーバー5で認証後、複数のスーパーノード61で構成されるP2Pネットワーク67に接続され、スーパーノード61を介して相手方のPC端末62に接続され、IP電話による通話が開始される。
通話開始後、各PC端末62が通話中の音声データを音声文字化サーバー5へ転送することにより、音声データと自動認識によって変換された文字データとを音声文字化サーバー5に蓄積する。
図14は、音声文字化サーバーの機能構成例を示す図である。図14において、音声文字化サーバー5は、CPU、メモリ、記憶装置、表示ユニット、出力ユニット、入力ユニット、通信ユニット、外部記憶装置I/Fなどを備えたコンピュータ装置であり、CPUがプログラムを実行することによって実現される音声データ受信処理部501と、ユーザ認証及びサービス利用確認部502と、音声データA/D変換部503と、フレーム分割部504と、音声データ登録確認部505と、文字データ変換部506と、オペレータ校正部509と、利用者校正部510と、文字データ配信部511と、表示処理部521と、入出力処理部522と、通信制御部523と、インストーラ524とを有する。また、発声者DB41と、音声データファイル42と、音声DB43と、送信待機DB47とは記憶装置に保持される。音声データファイル42は、音声データが音声DB43に登録されるデータファイルである。
表示処理部521は、表示ユニットへのデータの表示を制御する。入出力処理部522は、入力ユニット及び出力ユニットへのデータの入出力を制御する。通信制御部523は、ネットワークを介して行われるデータ通信を制御する。インストーラ524は、本発明に係るプログラムを記録した記録媒体520から外部記憶装置I/Fを介して該プログラムをインストールする。記録媒体520は、コンピュータが読み取り可能な媒体であればよい。
音声データ受信処理部501は、図2のステップS51及びS52に相当し、通信制御部523によって音声データが受信されると、音声データと共に送信される電話番号を用いて発声者DB41を検索して発声者情報を取得して、音声データと発声者情報とを作業用の記憶領域に格納する。認証後は、格納しておいた音声データが取り込まれ必要に応じてA/D変換されて、文字データへの変換が行われる。また、音声データ受信処理部501は、通信制御部523から発声者IDが通知された場合には、発声者IDを用いて発声者DB41を検索して発声者情報を取得し、発声者情報を作業用の記憶領域に格納する。
ユーザ認証及びサービス利用確認部502は、図2のステップS53からS54に相当し、音声データ受信処理部501によって取得した発声者情報を用いて、通話中の発声者又はインターネットを介してアクセスする利用者に対するユーザ認証を行うと共に、発声者情報の音声→文字変換サービス利用フラグを参照することによって、音声データから文字データへの変換サービスの利用を確認する。
音声データA/D変換部503は、図2のステップS56に相当し、アナログの音声データを図3に示す所定のアルゴリズムに従ってデジタルの音声データに変換する。フレーム分割部504は、図2のステップS57に相当し、デジタルに変換された音声データをフレームに分割し、分割したフレーム毎にデジタル値を合算してチェックサムを算出する。
音声データ登録確認部505は、図2のステップS58からS60に相当し、フレーム分割部504によって算出されたチェックサムを用いて音声データの登録を確認する。音声データが音声DB43に登録されている場合、変換された文字データが音声DB43に登録されていることを意味する。
文字データ変換部506は、図2のステップS62及びS63に相当し、音声認識機能507及び言語解析機能508を用いて文字データに変換したのち音声DB63に登録する。
オペレータ校正部509は、図8のステップS201からS208に相当し、発声者情報のオペレータ校正フラグを参照することによってオペレータによる校正を希望していると判断した場合に実行される。
利用者校正部510は、図7のステップS101からS107に相当し、ネットワークを介してアクセスする利用者がユーザ認証及びサービス利用確認部502によって認証された場合に、音声DB42に登録されている音声データを視聴可能とし、変換された文字データの校正を許可し、利用者によって確認された文字データで音声DB42の更新を行う。
文字データ配信部511は、図5のステップS71からS82と図6のステップS91から96とに相当し、発声者情報の送信タイミングフラグ、送信タイミングの規定数、送信方法、送信先などを参照して、変換された文字データを送信する。
上述したように、音声文字化サーバー5を利用することによって、例えば、騒音又は難聴により通話がはっきりしない場合であっても、変換された文字の提供によって通話が理解し易くなる。
音声文字化サーバー5では、文字データを変換する前段階における受信した音声データのチェックサムで音声DB43を検索して音声データの音声DB43の登録確認をするため、登録済みの場合は、既に音声データに対応させて格納されている文字データを提供することができ、より高速に音声データから文字データへの変換を行うことができる。また、発声者IDで関連付けられるチェックサムの値で検索するため、文字データに変換するための個々の発声者の音声の特性を詳細に解析する必要がない。
通話中の音声データに対するオペレータによる文字データの校正を可能にすることで、タイムリーにより精度の高い文字データを提供することができる。また、通話後に発声者によって直接文字データを校正することを可能とすることで、更に精度の高い文字データを提供することができる。
また、音声文字化サーバー5によって、電話中の通話が文字データに変換可能であるため、発声者は通常の電話機又は自身の携帯電話機を利用するのみで音声認識機能や言語解析機能などを備えた特別な装置を別途備える必要がなく、また、そのような特別な装置が設置されている場所に制限されることがない。
実施例において、日本語に変換する例で説明したが、日本語に限定されることなく、英語やその他の言語でも可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
通話中の発声者の音声データを通信回線を介して受信する音声データ受信手段と、
前記音声データを文字データに変換する音声文字変換手段と、
前記文字データを前記発声者に配信する配信手段とを有する音声文字化サーバー。
(付記2)
音声データのチェックサムと該音声データから変換された文字データとを対応させて音声データベースに格納することによって、該音声データを登録する音声登録手段と、
前記音声データ受信手段が受信した発声者の音声データが前記音声データベースに登録されているか否かを該音声データのチェックサムの一致で判断する音声登録判断手段とを有し、
前記配信手段は、前記チェックサムの一致した音声データに対応する文字データを前記発声者に配信する付記1記載の音声文字化サーバー。
(付記3)
前記音声データ受信手段によって受信した音声データを発生音節毎のフレーム単位に分割するフレーム単位分割手段と、
前記フレーム単位にチェックサムを算出するチェックサム算出手段とを有し、
前記音声登録判断手段は、前記フレーム単位に算出された前記チェックサムを用いて前記音声データベースへの前記音声データの登録を判断する付記2記載の音声文字化サーバー。
(付記4)
前記音声登録判断手段によって前記音声データが未登録であると判断した場合、前記フレーム単位の音声データを所定の区切り方法で細分割し、前記チェックサム算出手段により該細分割された音声データに対してチェックサムを算出させ、前記音声登録判断手段により該チェックサムの一致する音声データが登録されているか否かを判断させるようにする付記3記載の音声文字化サーバー。
(付記5)
前記音声文字変換手段は、前記音声データが前記音声データベースに登録されていない場合、音声認識機能を用いて該音声データを文字データに変換し、
前記音声認識機能による変換誤りをオペレータ又は前記発声者によって校正可能とする校正手段と、
前記変換誤りが修正された文字データで前記音声データベースを更新手段とを有する付記2乃至4のいずれか一項記載の音声文字化サーバー。
(付記6)
前記配信手段は、所定の送信タイミングによって前記発声者の音声データから変換された文字データを送信する際に、前記音声認識機能によって認識できた文字データと認識できなかった文字データとを区別可能なようにフィードバックする付記5記載の音声文字化サーバー。
(付記7)
前記音声データと共に受信する通話装置を特定する装置特定情報を用いて前記発声者を認証する発声者認証手段を有し、
前記発声者認証手段によって認証が成功した場合に前記音声文字変換手段と前記配信手段とを有効にする付記1乃至6のいずれか一項記載の音声文字化サーバー。
(付記8)
前記発声者を識別する発声者IDに対応づけて、前記装置特定情報と前記文字データの送信方法とを含む発声者情報を発声者データベースに格納して管理する発声者情報管理手段と、
前記配信手段は、前記送信方法で指定される手段によって前記文字データを配信する付記7記載の音声文字化サーバー。
(付記9)
音声文字化サーバーとして機能するコンピュータが、
通話中の発声者の音声データを通信回線を介して受信する音声データ受信手順と、
前記音声データ受信手順によって受信した音声データを発生音節毎のフレーム単位に分割するフレーム単位分割手順と、
前記音声データを前記フレーム単位で文字データに変換する音声文字変換手順と、
前記文字データを前記発声者に配信する配信手順と実行する音声文字化方法。
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。