【実施例1】
【0013】
[システム構成]
図1は、実施例1に係るプレゼンテーション支援システムの構成を示す図である。
図1に示すプレゼンテーション支援システム1は、文書ファイルに含まれるページ画面、例えばスライドのうち表示装置5に表示されるページの中で音声認識の結果に対応する領域をハイライト表示させるプレゼンテーション支援サービスを提供する。
【0014】
かかるプレゼンテーション支援サービスの一環として、プレゼンテーション支援システム1は、表示中のスライドの中でハイライト表示を行う領域が移行される距離に対応する頻度が閾値未満である場合、移行先の領域に関する音声認識のスコアが閾値以上となる頻度が高まるまでハイライト表示の移行を保留する。
【0015】
これによって、一側面として、誤認識が原因となってハイライト表示がプレゼンタの説明箇所から離れた後にプレゼンタの説明箇所に戻るといったハイライト表示の移行が抑制される。したがって、ハイライト表示がばたつくのを抑制できる。他の側面として、移行先の領域に関する音声認識のスコアが閾値以上となる頻度が高まると保留は解除される。それ故、ハイライト表示が実行中である領域からの距離と反比例する重みを音声認識の結果へ付与する場合のように、ハイライト表示の移動が大幅に遅れたり、又は、プレゼンタの説明箇所をハイライト表示の移行先として正しく判断できないといった事態が生じるのは抑制できる。
【0016】
ここで、以下では、一例として、上記のハイライト表示に関する機能がプレゼンテーションソフトにアドオンされる場合を想定し、当該プレゼンテーションソフトを用いて作成された文書ファイルが含む1または複数のスライドを表示装置5に表示させることによってプレゼンテーションが進行される場合を想定する。かかるスライドには、テキストや図形を始め、他のアプリケーションプログラムによって作成されたコンテンツをインポートすることができる。例えば、ワープロソフトで作成された文書、表計算ソフトで作成された表やグラフをインポートしたり、撮像装置で撮像された画像や動画、さらには、画像編集ソフトで編集された画像や動画などをインポートしたりすることができる。
【0017】
図1に示すように、プレゼンテーション支援システム1には、マイク3と、表示装置5と、入力装置7と、プレゼンテーション支援装置10とが収容される。これらマイク3、表示装置5及び入力装置7などの周辺機器と、プレゼンテーション支援装置10との間は、有線または無線により接続される。
【0018】
マイク3は、音声を電気信号に変換する装置であり、マイクロフォンと呼ばれることもある。例えば、マイク3は、プレゼンテーションを実施するプレゼンタに装着させることができる。この場合、ヘッドセット型やタイピン型のマイクをプレゼンタの身体や衣服の所定位置に装着させたり、ハンド型のマイクをプレゼンタに携帯させたりすることができる。また、マイク3は、プレゼンタの発話が集音できる範囲の所定位置に設置することもできる。この場合、マイク3には、取付け型や据置き型のマイクを採用することもできる。これらいずれの場合においても、マイク3には、任意のタイプの指向性を持つマイクを採用できるが、プレゼンタの発話以外の音声、例えば聴講者等の発話や騒音などの雑音が集音されるのを抑制するために、マイクの感度をプレゼンタの発声方向に限定することもできる。なお、マイク3には、ダイナミック型、エレクトレットコンデンサ型、コンデンサ型などの任意の変換方式を採用することができる。
【0019】
このマイク3に音声を採取することにより得られたアナログ信号は、デジタル信号へ変換された上でプレゼンテーション支援装置10へ入力される。
【0020】
表示装置5は、各種の情報を表示する装置である。例えば、表示装置5には、発光により表示を実現する液晶ディスプレイや有機EL(electroluminescence)ディスプレイなどを採用することもできるし、投影により表示を実現するプロジェクタを採用することもできる。また、表示装置5の設置台数は、必ずしも1台に限定されずともよく、複数の台数であってかまわない。以下では、一例として、プレゼンテーションの参加者であるプレゼンタ及び聴講者の両者が閲覧する共用の表示装置としてプロジェクタ及びプロジェクタが投影する画像を映すスクリーンが実装される場合を想定する。
【0021】
この表示装置5は、一例として、プレゼンテーション支援装置10からの指示にしたがってプレゼンテーション画面を表示する。例えば、表示装置5は、プレゼンテーション支援装置10上で動作するプレゼンテーションソフトが開く文書ファイルのスライドを表示する。この場合、表示装置5は、文書ファイルが含むスライドのうちプレゼンタが入力装置7を介して指定する任意のスライドを表示させることもできるし、プレゼンテーションソフトが有するスライドショーの機能がON状態に設定された場合、各スライドが作成されたページ順に文書ファイルが含むスライドを切り替えて表示させることもできる。
【0022】
入力装置7は、各種の情報に対する指示入力を受け付ける装置である。例えば、表示装置5がプロジェクタとして実装される場合、スクリーンに映し出されたスライド上の位置を指し示すレーザポインタを入力装置7として実装することもできる。すなわち、レーザポインタの中には、スライドのページを進めたり、戻したりする各種のボタンなどの操作部が設けられたリモコン機能付きのレーザポインタも存在する。このリモコン機能付きのレーザポインタが有する操作部を入力装置7として援用することもできる。この他、マウスやキーボードを入力装置7として採用したり、レーザポインタによって指し示されたポインタの位置のセンシング、プレゼンタの視線検出やジェスチャ認識を行うためにスクリーンまたはプレゼンタの所定の部位が撮像された画像を入力する画像センサを入力装置7として採用することもできる。なお、表示装置5が液晶ディスプレイとして実装される場合、入力装置7には、液晶ディスプレイ上に貼り合わせられたタッチセンサを採用することもできる。
【0023】
この入力装置7は、一例として、プレゼンテーション支援装置10上でプレゼンテーションソフトに実行させる文書ファイルの指定、スライドのページを進める操作やスライドのページを戻す操作などを受け付ける。このように入力装置7を介して受け付けられた操作は、プレゼンテーション支援装置10へ出力されることになる。
【0024】
プレゼンテーション支援装置10は、プレゼンテーションソフトが実行されるコンピュータである。
【0025】
一実施形態として、プレゼンテーション支援装置10には、デスクトップ型またはノート型のパーソナルコンピュータなどの情報処理装置を採用することができる。この他、プレゼンテーション支援装置10には、上記のパーソナルコンピュータなどの据置き型の端末のみならず、各種の携帯端末装置を採用することもできる。例えば、携帯端末装置の一例として、スマートフォン、携帯電話機やPHS(Personal Handyphone System)などの移動体通信端末、さらには、PDA(Personal Digital Assistants)などのスレート端末などがその範疇に含まれる。
【0026】
なお、本実施例では、あくまで一例として、プレゼンテーション支援装置10が上記のプレゼンテーションソフトを外部のリソースに依存せずに単独で実行するスタンドアローンで上記のプレゼンテーション支援サービスを提供する場合を想定する。詳細は後述するが、上記のプレゼンテーション支援サービスは、スタンドアローンで提供される実装に限定されない。例えば、プレゼンテーションソフトを実行するクライアントに対し、上記のプレゼンテーション支援サービスを提供するサーバを設けることによってクライアントサーバシステムとして構築したり、シンクライアントシステムとして構築したりすることもできる。
【0027】
[プレゼンテーション支援装置10の構成]
続いて、本実施例に係るプレゼンテーション支援装置10の機能的構成について説明する。
図2は、実施例1に係るプレゼンテーション支援装置10の機能的構成を示すブロック図である。
図2に示すように、プレゼンテーション支援装置10は、入出力I/F(InterFace)部11と、記憶部13と、制御部15とを有する。なお、
図2には、データの入出力の関係を表す実線が示されているが、
図2には、説明の便宜上、最小限の部分について示されているに過ぎない。すなわち、各処理部に関するデータの入出力は、図示の例に限定されず、図示以外のデータの入出力、例えば処理部及び処理部の間、処理部及びデータの間、並びに、処理部及び外部装置の間のデータの入出力が行われることとしてもかまわない。
【0028】
入出力I/F部11は、マイク3、表示装置5及び入力装置7などの周辺機器との間で入出力を行うインタフェースである。
【0029】
一実施形態として、入出力I/F部11は、入力装置7から入力された各種の操作を制御部15へ出力する。また、入出力I/F部11は、制御部15から出力されたスライドの画像データを表示装置5へ出力したり、スライドに含まれる領域に対するハイライト指示またはそのキャンセル指示を表示装置5へ出力したりする。また、入出力I/F部11は、マイク3から入力された音声データを制御部15へ出力する。
【0030】
記憶部13は、制御部15で実行されるOS(Operating System)やプレゼンテーションソフトを始め、アプリケーションプログラムなどの各種プログラムに用いられるデータを記憶するデバイスである。
【0031】
一実施形態として、記憶部13は、プレゼンテーション支援装置10における主記憶装置として実装される。例えば、記憶部13には、各種の半導体メモリ素子、例えばRAM(Random Access Memory)やフラッシュメモリを採用できる。また、記憶部13は、補助記憶装置として実装することもできる。この場合、HDD(Hard Disk Drive)、光ディスクやSSD(Solid State Drive)などを採用できる。
【0032】
記憶部13は、制御部15で実行されるプログラムに用いられるデータの一例として、文書データ13a、抽出単語データ13b、認識単語データ13c及び頻度データ13dを記憶する。なお、上記の文書データ13a以外の抽出単語データ13b、認識単語データ13c及び頻度データ13dは、制御部15の説明で併せて説明することとする。また、記憶部13には、上記のデータ以外にも、他の電子データ、例えばハイライト表示に関する定義データなども併せて記憶することもできる。
【0033】
文書データ13aは、文書に関するデータである。
【0034】
一実施形態として、文書データ13aには、プレゼンテーションソフトを用いて1または複数のスライドが作成された文書ファイルを採用できる。かかるスライドには、テキストや図形を始め、他のアプリケーションプログラムによって作成されたコンテンツをインポートすることができる。例えば、ワープロソフトで作成された文書、表計算ソフトで作成された表やグラフをインポートしたり、撮像デバイスで撮像された画像や動画、さらには、画像編集ソフトで編集された画像や動画などをインポートしたりすることができる。このように、テキスト以外のコンテンツには、音声認識によるキーワード検索を実現するために、プレゼンテーションの開始前までに当該コンテンツの説明語句や説明文などの文字列を含むメタ情報を付与しておくことができる。
【0035】
制御部15は、各種のプログラムや制御データを格納する内部メモリを有し、これらによって種々の処理を実行するものである。
【0036】
一実施形態として、制御部15は、中央処理装置、いわゆるCPU(Central Processing Unit)として実装される。なお、制御部15は、必ずしも中央処理装置として実装されずともよく、MPU(Micro Processing Unit)やDSP(Digital Signal Processor)として実装されることとしてもよい。また、制御部15は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。
【0037】
制御部15は、各種のプログラムを実行することによって下記の処理部を仮想的に実現する。例えば、制御部15は、
図2に示すように、抽出部15aと、認識部15bと、解析部15cと、第1算出部15dと、第2算出部15eと、決定部15fと、表示制御部15gとを有する。
【0038】
抽出部15aは、文書ファイルに含まれるスライドから音声認識で用いる辞書データに登録する単語を抽出単語データ13bとして抽出する処理部である。
【0039】
一実施形態として、抽出部15aは、上記の抽出単語データ13bを抽出する処理を自動的に開始することもできるし、手動設定で開始することもできる。例えば、自動的に開始する場合、プレゼンテーションソフトが文書ファイルを記憶部13に保存した上で閉じる場合、あるいはプレゼンテーションを介する文書ファイルの編集中に文書ファイルが記憶部13に保存された場合に、処理を起動させることができる。また、手動設定で開始する場合、入力装置7を介してプレゼンテーションの前処理の実行指示を受け付けた場合に、処理を起動させることができる。いずれの場合においても、記憶部13に記憶された文書データ13aが含む文書ファイルのうち、保存または実行指示に対応する文書ファイルを読み出すことによって処理が開始される。
【0040】
かかる抽出単語データ13bの生成について説明すると、抽出部15aは、記憶部13に記憶された文書データ13aが含む文書ファイルのうち保存が実行された文書ファイルあるいはプレゼンテーションの前処理の実行指示を受け付けた文書ファイルを読み出す。ここでは、一例として、抽出部15aが記憶部13から文書ファイルを読み出す場合を例示したが、文書ファイルの入手経路はこれに限定されない。例えば、抽出部15aは、ハードディスクや光ディスクなどの補助記憶装置またはメモリカードやUSB(Universal Serial Bus)メモリなどのリムーバブルメディアから文書ファイルを取得することもできる。また、抽出部15aは、外部装置からネットワークを介して受信することによって文書ファイルを取得することもできる。
【0041】
続いて、抽出部15aは、先に読み出した文書ファイルに含まれるスライドを複数の領域へ分割する。例えば、抽出部15aは、一文、行、段落などの単位でスライドを分割する。この場合、抽出部15aは、スライドが含む文字列を走査して、スペース、句点または改行に対応する区切り文字を検出し、当該区切り文字を領域の境界に設定する。かかる境界を前後に、抽出部15aは、スライドが含む文字列を区切る。これによって、スライドが複数の領域へ区切り文字ごとに分割される。その上で、抽出部15aは、スライドの分割によって得られた領域に当該領域を識別するインデックスを割り当てる。なお、ここでは、スライドを自動的に分割する場合を例示したが、入力装置7等を介して領域の境界を指定させることによってスライドを手動設定で分割することとしてもかまわない。
【0042】
スライドの分割後に、抽出部15aは、当該スライドに含まれる複数の領域のうち領域を1つ選択する。続いて、抽出部15aは、先に選択された領域が含む文字列に対し、自然言語処理を実行することによって単語及びその読みを抽出する。例えば、抽出部15aは、領域内の文字列に形態素解析等を実行することにより得られた形態素のうち品詞が名詞である単語及び単語の読みを抽出する。その後、抽出部15aは、スライドが含む領域が全て選択されるまで上記の単語及び単語の読みの抽出を繰り返し実行する。その上で、抽出部15aは、単語、単語の読み及び単語が含まれる領域のインデックスが対応付けられた抽出単語データ13bを記憶部13へ登録する。
【0043】
スライドの分割後に、抽出部15aは、当該スライドに含まれる複数の領域のうち領域を1つ選択する。続いて、抽出部15aは、先に選択された領域が含む文字列に対し、自然言語処理を実行することによって単語を抽出する。例えば、抽出部15aは、領域内の文字列に形態素解析等を実行することにより得られた形態素のうち品詞が名詞である単語や、文節を形成する単語などを抽出する。そして、抽出部15aは、先に抽出された各単語に当該単語が含まれる領域に割り当てられたインデックスを付与する。その後、抽出部15aは、スライドが含む領域が全て選択されるまで上記の単語の抽出及び上記のインデックスの付与を繰返し実行する。
【0044】
このようにして全ての領域から単語が抽出された後に、抽出部15aは、スライドに含まれる単語ごとに当該単語kの文書中の出現回数を算出する。かかる文書中の出現回数は、一例として、単語kが文書中に出現する回数を集計することによって算出される。その上で、抽出部15aは、単語k、インデックスidx及び単語kの文書中の出現回数が対応付けられた抽出単語データ13bを記憶部13へ登録する。
【0045】
認識部15bは、音声認識を実行する処理部である。
【0046】
一実施形態として、認識部15bは、プレゼンテーションソフトが文書ファイルを開いた状態でプレゼンテーションの開始指示を受け付けた場合に起動し、マイク3から所定時間長の音声信号が入力されるまで待機する。例えば、少なくとも1フレーム分の時間長、例えば10msecの音声信号が入力されるのを待機する。そして、認識部15bは、マイク3から所定時間長の音声信号が入力される度に、当該音声信号にワードスポッティングなどの音声認識を実行する。このとき、認識部15bは、記憶部13に記憶された抽出単語データ13bのうちプレゼンテーションソフトが実行中である文書ファイルが含むスライドであり、かつ表示装置5に表示中であるスライドに関する抽出単語データ13bをワードスポッティングに適用する。これによって、認識部15bは、プレゼンタの発話の中に表示中のスライドに含まれる各領域から抽出された単語が存在するか否かを認識する。そして、認識部15bは、音声信号から単語の読みが認識された場合、当該単語及びその単語が認識された時間が対応付けられた認識単語データ13cを記憶部13へ登録する。なお、同一の単語が時間経過に伴って複数回にわたって認識される場合には、最後、すなわち最新に認識された時刻が記憶部13へ登録される。
【0047】
その後、認識部15bは、記憶部13に記憶された認識単語データ13cのうち記憶部13へ登録されてから所定の期間が経過した単語が存在するか否かを判定する。例えば、認識部15bは、認識単語データ13cに含まれる単語ごとに、当該単語に対応付けて登録された時間と、認識部15bが認識単語データ13cを参照する時間、すなわち現時間との差が所定の閾値を超過するか否かを判定する。このとき、認識部15bは、スライドが分割された単位、例えば一文、行や段落などによって上記の判定に用いる閾値を変えることができる。例えば、スライドが行単位で分割される場合、1つの領域で読み上げられる文字数はおよそ20〜30文字であると想定できる。この場合、上記の閾値の一例として、説明音声の平均的な読み上げ速度である、7拍/秒〜8拍/秒から読み上げに必要な時間を計算して、3秒を用いることができる。また、スライドが段落単位で分割される場合、行単位よりも長い時間が読み上げに割かれると想定できる。この場合、上記の閾値の一例として、(行数×3)秒を用いることができる。
【0048】
ここで、記憶部13へ登録されてから所定の期間、例えば3秒間が経過した単語が存在する場合、当該単語を含むスライドの領域に関する説明が終了している可能性が高まる。このような単語を残しておくと、説明が終了している領域がハイライトで表示される可能性も高まる。よって、認識部15bは、記憶部13に記憶された認識単語データ13cから当該単語に関するレコードを削除する。一方、記憶部13へ登録されてから所定の期間が経過した単語が存在しない場合、認識単語データ13cに含まれる単語が出現するスライドの領域に関する説明が終了していない可能性が高まる。この場合、説明が終了している領域がハイライトで表示される可能性は低い。よって、認識部15bは、記憶部13に記憶された認識単語データ13cに含まれる単語を削除せずにそのまま残す。
【0049】
また、認識部15bは、表示装置5に表示されるスライドのページが変更されたか否かを判定する。例えば、認識部15bは、スライドショーによりスライドが切り替えられたり、入力装置7を介してスライドのページを進める操作またはスライドのページを戻す操作を受け付けたりしたかを判定する。このとき、表示装置5に表示されるスライドのページが変更された場合、プレゼンタの説明も変更前のページのスライドから変更後のページのスライドへ切り替わった可能性が高い。この場合、認識部15bは、記憶部13に記憶された認識単語データ13cを削除する。一方、表示装置5に表示されるスライドのページが変更されていない場合、プレゼンタが説明するページにも変りがない可能性が高い。この場合、認識部15bは、記憶部13に記憶された認識単語データ13cに含まれる単語を削除せずにそのまま残す。
【0050】
これら一連の動作により、認識部15bは、表示中であるスライドの中でプレゼンタが説明中である可能性が高い単語を認識する。以下では、抽出単語データ13bに含まれる単語のことを「抽出単語」と記載すると共に、認識単語データ13cに含まれる単語のことを「認識単語」と記載し、互いのラベルを区別する場合がある。
【0051】
解析部15cは、文書ファイルのレイアウトを解析する処理部である。
【0052】
一実施形態として、解析部15cは、表示装置5に表示されるスライドのページが変更された場合、変更後のスライド内のレイアウトの解析を開始する。例えば、解析部15cは、スライドに含まれるテキストボックスの面積と、スライドに含まれるテキストボックス以外のコンテンツ、例えば図形、静止画及び動画の面積とを求める。その上で、解析部15cは、スライドに占めるテキストボックスの面積の割合が所定値以上である場合、当該スライドのレイアウト種別を「テキスト」と判断する。また、解析部15cは、スライドに占めるテキストボックス以外のコンテンツの割合が所定値以上である場合、当該スライドのレイアウト種別を「図形」と判断する。また、解析部15cは、スライドに占めるテキストボックスの面積の割合が所定値未満であり、かつスライドに占めるテキストボックス以外のコンテンツの割合が所定値未満である場合、当該スライドのレイアウト種別を「混在」と判断する。
【0053】
第1算出部15dは、表示中であるスライド内の領域ごとに、当該領域に含まれる認識単語からスコアを算出する処理部である。
【0054】
一実施形態として、第1算出部15dは、表示装置5に表示中であるスライドが含む領域のインデックスのうちインデックスを1つ選択する。続いて、第1算出部15dは、認識単語データ13cに含まれる認識単語のうち先に選択されたインデックスの領域に含まれる認識単語を抽出する。このとき、抽出単語データ13bを参照することにより、単語kの文書中の出現回数を取得することができる。その上で、第1算出部15dは、認識単語xの文書中の出現回数f(x)、認識単語xのモーラ数m(x)、認識結果の確からしさc(x)を用いて、認識単語xの単語スコアs(x)を算出する。ここで言う「確からしさ」とは、認識結果が単語の標準モデルに含まれる各音素のスペクトラムとの間でどれだけ類似しているかを表し、例えば、完全に一致している場合には、その値が1.0となる。
【0055】
より具体的には、第1算出部15dは、下記の式(1)に上記の認識単語xの文書中の出現回数f(x)、xのモーラ数m(x)及び認識結果の確からしさc(x)などのパラメータを代入することにより、認識単語xの単語スコアs(x)を計算する。ここで、min(a,b)は、a及びbのうち値が小さい方を出力する関数を指し、また、Mは、定数とし、例えば、6などが採用される。その後、第1算出部15dは、領域dに含まれる認識単語ごとに単語スコアs(x)を算出した上で全ての認識単語の単語スコアを合計することにより、ハイライトスコアS(d)を算出する。なお、上記の式(1)では、認識単語xの単語スコアs(x)を算出するのに、認識単語xの文書中の出現回数f(x)、認識単語xのモーラ数m(x)及び認識結果の確からしさc(x)の3つのパラメータを用いる例を説明したが、これらのうち任意のパラメータだけを使っても良いし、また、求め方もこれに限るものではない。
【0056】
s(x)=1/f(x)×min(1.0,m(x)/M)×c(x)・・・(1)
【0057】
第2算出部15eは、表示中のスライドに含まれる領域間の距離を算出する処理部である。
【0058】
一実施形態として、第2算出部15eは、第1算出部15dにより領域ごとに算出されたハイライトスコアのうち最高スコアが所定の閾値Th1、例えば「2」以上であるか否かを判定する。このとき、第2算出部15eは、最高スコアが閾値Th1以上である場合、ハイライト表示が実行中であるか否かをさらに判定する。そして、第2算出部15eは、ハイライト表示が実行中である場合、第1算出部15dにより最高スコアが算出された領域のインデックスと、ハイライト表示が実行中である領域のインデックスとが一致するか否かを判定する。なお、最高スコアが閾値Th1未満である場合、ハイライト表示が実行中でない場合、又は、前回と今回の間で最高スコアを持つ領域に変動がない場合には、そもそもハイライト表示が行われていなかったり、ハイライト表示が行われていても移行が発生しないので、領域間の距離は算出されずともかまわない。
【0059】
ここで、第2算出部15eは、第1算出部15dにより最高スコアが算出された領域とハイライト表示が実行中である領域とが異なる場合、これら2つの領域の間で互いの距離を算出する。
【0060】
図3は、領域間の距離の算出方法の一例を示す図である。
図3には、レイアウト種別が「テキスト」である横書きのスライド200が例示されている。かかるスライド200には、見出し項目「技術ポイント」、(1)の箇条書き「○○」、(2)の箇条書き「△△」を含む領域E1と、見出し項目「想定サービス」、(イ)の箇条書き「★★」、(ロ)の箇条書き「××」を含む領域E2とが含まれる。なお、ここでは、ハイライト表示が移動する方向がスライドの上から下である場合には符号を正とし、ハイライト表示が移動する方向がスライドの下から上である場合には符号を負として距離が算出される場合を想定する。
【0061】
例えば、第2算出部15eは、領域E1が持つ左上の頂点LT1の座標及び領域E2が持つ左上の頂点LT2の座標の間で距離d1を算出することができる。また、第2算出部15eは、領域E1の重心G1の座標及び領域E2の重心G2の座標の間で距離d2を算出することもできる。さらには、第2算出部15eは、領域E1の下端及び領域E2の上端との間で垂直方向の差を距離d3として算出することもできる。また、第2算出部15eは、領域E1の上端及び領域E2の下端との間で垂直方向の差を距離d4として算出することもできる。この他、図示は省略したが、第2算出部15eは、領域E1及び領域E2を結ぶ最短の直線の長さを距離d5として算出することもできる。これらd1〜d5のうちいずれか1つもしくは複数の距離の統計値が領域間の距離dとして算出される。
【0062】
その上で、第2算出部15eは、第1算出部15dにより最高スコアが算出された領域が領域E1であり、かつハイライト表示が実行中である領域が領域E2である場合には正の符号を距離dへ付与する一方で、ハイライト表示が実行中である領域が領域E1であり、かつ第1算出部15dにより最高スコアが算出された領域が領域E2である場合には負の符号を距離dへ付与する。さらに、第2算出部15eは、先に求めた領域E1及び領域E2の間の距離dを正規化する。例えば、スライドの最上端から最下端まで移動する場合の距離を「1」とし、スライドの最下端から最上端まで移動する場合の距離を「−1」とし、−1から1までの値に正規化された距離Dを算出する。
【0063】
決定部15fは、ハイライト表示を実施する領域を決定する処理部である。
【0064】
一実施形態として、決定部15fは、第1算出部15dにより算出されたハイライトスコアの中に上記の閾値Th1以上であるハイライトスコアを持つ領域が存在する場合、次のようにしてハイライト表示を実行する領域を決定する。例えば、決定部15fは、ハイライト表示が実行中でない場合には、最高スコアを持つ領域に関するハイライト表示の実行を決定する。一方、決定部15fは、ハイライト表示が実行中である場合、第1算出部15dにより最高スコアが算出された領域とハイライト表示が実行中である領域とが同一であるならば、実行中のハイライト表示を維持する。
【0065】
ここで、第1算出部15dにより最高スコアが算出された領域とハイライト表示が実行中である領域とが異なる場合、決定部15fは、レイアウト種別ごとに領域間の距離とハイライト表示の移行が発生する頻度とが対応付けられた頻度データを参照して、解析部15cにより解析された表示中のスライドのレイアウト種別、及び、第2算出部15eにより算出された領域間の距離に対応するハイライト表示の移行頻度を導出する。
【0066】
図4は、頻度データ13dの一例を示す図である。
図4には、レイアウト種別が「テキスト」である場合の頻度データ13dが示されている。
図4に示すグラフの横軸は、領域間の距離を指し、例えば、スライドの最上端から最下端まで移動する場合の距離を「1」とし、スライドの最下端から最上端まで移動する場合の距離を「−1」とし、−1から1までの値に正規化されている。また、縦軸は、ハイライト表示が移行する頻度を指す。
図4に示すように、頻度データ13dは、ハイライト表示が移行する頻度の分布状況を表すデータである。かかる頻度データ13dによれば、レイアウト種別が「テキスト」である場合、ハイライト表示の移行の約82%がスライド全体の1/5以内の距離であり、約96%がスライド全体の半分以内の距離であることがわかる。このような頻度データ13dは、一例として、誤認識のない正解データにしたがってハイライト表示の移行が行われること、並びに、一定回数以上のハイライト表示の移行が計測されることなどを条件とし、事前に実験や調査を行うことにより得られる。なお、
図4には、レイアウト種別が「テキスト」である場合の頻度の分布状況が示されているが、実際には、レイアウト種別が「図形」である場合の頻度の分布状況、及び、レイアウト種別が「混在」である場合の頻度の分布状況も記憶部13に記憶されていることとする。
【0067】
このようにハイライト表示の移行頻度が導出された後、決定部15fは、ハイライト表示の移行頻度が所定の閾値Th2未満、例えば0.1であるか否かを判定する。このとき、ハイライト表示の移行頻度が閾値Th2を超過する場合、決定部15fは、ハイライト表示が実行中である領域から第1算出部15dにより最高スコアが算出された領域へハイライト表示を移行させる。一方、ハイライト表示の移行頻度が閾値Th2未満である場合、誤認識が原因となって誤った領域に移行される可能性が残るため、決定部15fは、第1算出部15dにより算出された最高スコアが閾値Th1以上となる頻度が所定の閾値Th3、例えば5秒間に2回以上であるか否かを判定する。
【0068】
ここで、最高スコアが閾値Th1以上となる頻度が閾値Th3以上である場合、誤認識が発生している可能性は低くなったと推定できるため、ハイライト表示が移行頻度が小さい領域に移行される。この場合、決定部15fは、ハイライト表示が実行中である領域から第1算出部15dにより最高スコアが算出された領域へハイライト表示を移行させる。一方、最高スコアが閾値Th1以上となる頻度が閾値Th3未満である場合、誤認識によりハイライト表示が移行されるおそれも残る。この場合、決定部15fは、ハイライト表示の移行を保留し、実行中のハイライト表示を維持する。
【0069】
なお、ここでは、ハイライト表示の移行頻度が閾値Th2未満である場合に第1算出部15dにより算出された最高スコアが閾値Th1以上となる頻度を判定する場合を例示したが、前回に最高スコアが閾値Th1以上と判定されてから今回に最高スコアが閾値Th1以上と判定されるまでの期間が所定の期間、例えば3秒間以内であるか否かを判定することとしてもかまわない。
【0070】
表示制御部15gは、表示装置5に対する表示制御を実行する処理部である。
【0071】
一実施形態として、表示制御部15gは、プレゼンテーションソフトにより文書ファイルが開かれた場合、当該文書ファイルが含むスライドを表示装置5に表示させる。このとき、表示制御部15gは、文書ファイルが含むスライドのうち最初のページのスライドを表示させることとしてもよいし、最後に編集が行われたページのスライドを表示させることとしてもよい。その後、表示制御部15gは、決定部15fからの指示にしたがって決定部15fにより決定される領域に関するハイライト表示を実行したり、ハイライト表示をキャンセルしたりする。ここで言う「ハイライト表示」は、狭義のハイライト表示、すなわち背景色を明るくしたり、反転したりする表示制御に留まらず、広義のハイライト表示を意味する。例えば、領域の塗りつぶしの強調、フォント(フォントサイズ、下線や斜体)の強調などのように、強調表示の全般を任意に実行することができる。
【0072】
また、表示制御部15gは、入力装置7を介してページの切替え指示を受け付けた場合、表示装置5に表示させるスライドを変更する。例えば、ページを進める操作を受け付けた場合、表示制御部15gは、表示中のスライドの次ページのスライドを表示装置5に表示させる。また、ページを戻る操作を受け付けた場合、表示制御部15gは、表示中のスライドの前ページのスライドを表示装置5に表示させる。
【0073】
[処理の流れ]
次に、本実施例に係るプレゼンテーション支援装置10の処理の流れについて説明する。なお、ここでは、プレゼンテーション支援装置10によって実行される(1)抽出単語データの生成処理、(2)音声認識処理、(3)ハイライトの表示制御処理の順に説明することとする。
【0074】
(1)抽出単語データの生成処理
図5は、実施例1に係る抽出単語データの生成処理の手順を示すフローチャートである。この処理は、自動的に開始することもできるし、手動設定で開始することもできる。例えば、自動的に開始する場合、プレゼンテーションソフトが文書ファイルを記憶部13に保存した上で閉じる場合、あるいはプレゼンテーションを介する文書ファイルの編集中に文書ファイルが記憶部13に保存された場合に、処理を起動させることができる。また、手動設定で開始する場合、入力装置7を介してプレゼンテーションの前処理の実行指示を受け付けた場合に、処理を起動させることができる。いずれの場合においても、記憶部13に記憶された文書データ13aが含む文書ファイルのうち、保存または実行指示に対応する文書ファイルを読み出すことによって処理が開始される。
【0075】
図5に示すように、抽出部15aは、文書ファイルに含まれるスライドを一文、行または段落などの単位で複数の領域へ分割する(ステップS101)。続いて、抽出部15aは、ステップS101で得られた領域に各領域を識別するインデックスを割り当てる(ステップS102)。
【0076】
そして、抽出部15aは、ステップS102で割り当てられたインデックスのうちインデックスを1つ選択する(ステップS103)。続いて、抽出部15aは、ステップS103で選択されたインデックスの領域内の文字列に形態素解析等を実行することにより得られた形態素のうち品詞が名詞である単語を抽出する(ステップS104)。その後、抽出部15aは、ステップS104で抽出された各単語に当該単語が含まれる領域に割り当てられたインデックスを付与する(ステップS105)。
【0077】
そして、抽出部15aは、ステップS102で割り当てられたインデックスが全て選択されるまで(ステップS106No)、上記のステップS103〜ステップS105までの処理を繰返し実行する。
【0078】
その後、ステップS102で割り当てられたインデックスが全て選択された場合(ステップS106Yes)、抽出部15aは、スライドに含まれる単語ごとに当該単語kの出現頻度f
kを算出する(ステップS107)。その上で、抽出部15aは、単語k、インデックスidx及び出現頻度f
kが対応付けられた抽出単語データ13bを記憶部13へ登録し(ステップS108)、処理を終了する。
【0079】
(2)音声認識処理
図6は、実施例1に係る音声認識処理の手順を示すフローチャートである。この処理は、プレゼンテーションソフトが文書ファイルを開いた状態でプレゼンテーションの開始指示を受け付けた場合に起動し、プレゼンテーションの終了指示を受け付けるまで繰返し実行される。
【0080】
図6に示すように、認識部15bは、マイク3から所定時間長の音声信号が入力されるまで、例えば少なくとも1フレーム分の時間長、例えば10msecの音声信号が入力されるまで待機する(ステップS301)。
【0081】
そして、マイク3から所定時間長の音声信号が入力されると(ステップS301Yes)、認識部15bは、当該音声信号にワードスポッティングなどの音声認識を実行する(ステップS302)。かかるステップS302でワードスポッティングが実行される場合には、記憶部13に記憶された抽出単語データ13bのうちプレゼンテーションソフトが実行中である文書ファイルが含むスライドであり、かつ表示装置5に表示中であるスライドに関する抽出単語データが辞書データとして適用される。
【0082】
このとき、音声信号から単語が認識された場合(ステップS303Yes)、認識部15bは、ステップS302で認識された単語及びその単語が認識された時間が対応付けられた認識単語データ13cを記憶部13へ登録し(ステップS304)、ステップS305の処理へ移行する。
【0083】
一方、マイク3から所定時間長の音声信号が入力されていない場合、あるいは音声信号から単語が認識されなかった場合(ステップS301NoまたはステップS303No)、以降の処理を飛ばしてステップS305の処理へ移行する。
【0084】
ここで、認識部15bは、記憶部13に記憶された認識単語データ13cのうち記憶部13へ登録されてから所定の期間が経過した単語が存在するか否かを判定する(ステップS305)。そして、記憶部13へ登録されてから所定の期間が経過した単語が存在する場合(ステップS305Yes)、認識部15bは、記憶部13に記憶された認識単語データ13cから当該単語に関するレコードを削除する(ステップS306)。なお、記憶部13へ登録されてから所定の期間が経過した単語が存在しない場合(ステップS305No)には、ステップS306の処理を飛ばしてステップS307の処理へ移行する。
【0085】
その後、認識部15bは、表示装置5に表示されるスライドのページが変更されたか否かを判定する(ステップS307)。このとき、表示装置5に表示されるスライドのページが変更された場合(ステップS307Yes)、認識部15bは、記憶部13に記憶された認識単語データ13cを削除する(ステップS308)。さらに、解析部15cは、表示装置5に表示されるスライドのレイアウトを解析する(ステップS309)。このようにして解析されたスライドのレイアウト種別が決定部15fにより参照される内部メモリのワークエリアに登録される。
【0086】
そして、ステップS301の処理へ戻り、上記のステップS301以降の処理が繰り返し実行される。なお、表示装置5に表示されるスライドのページが変更されていない場合(ステップS307No)、ステップS308の処理を実行せずにステップS301の処理へ戻る。
【0087】
(3)ハイライトの表示制御処理
図7は、実施例1に係るハイライトの表示制御処理の手順を示すフローチャートである。この処理は、
図6に示した音声認識処理と並行して実行される処理であり、プレゼンテーションソフトが文書ファイルを開いた状態でプレゼンテーションの開始指示を受け付けた場合に起動し、プレゼンテーションの終了指示を受け付けるまで繰返し実行される。なお、処理の実行が繰り返される周期は、
図6に示した音声認識処理と同様であってもよいし、異なってもよく、
図6に示した音声認識処理と同期して実行されることとしてもよいし、非同期で実行されることとしてもかまわない。
【0088】
図7に示すように、第1算出部15dは、表示中のスライドに含まれる領域ごとに当該領域のハイライトスコアを算出する(ステップS501)。その後、第2算出部15eは、第2算出部15eにより領域ごとに算出されたハイライトスコアのうち最高スコアが所定の閾値Th1以上であるか否かを判定する(ステップS502)。
【0089】
このとき、最高スコアが閾値Th1未満である場合(ステップS502No)、処理を終了する。
【0090】
一方、最高スコアが閾値Th1以上である場合(ステップS502Yes)、第2算出部15eは、ハイライト表示が実行中であるか否かをさらに判定する(ステップS503)。そして、ハイライト表示が実行中でない場合(ステップS503No)には、決定部15fは、最高スコアを持つ領域に関するハイライト表示の実行を決定し(ステップS510)、処理を終了する。
【0091】
ここで、ハイライト表示が実行中である場合(ステップS503Yes)、第2算出部15eは、ステップS501で最高スコアが算出された領域のインデックスと、ハイライト表示が実行中である領域のインデックスとが一致するか否かを判定する(ステップS504)。なお、ステップS501で最高スコアが算出された領域とハイライト表示が実行中である領域とが同一である場合(ステップS504No)、決定部15fは、実行中のハイライト表示を維持し(ステップS510)、処理を終了する。
【0092】
このとき、ステップS501で最高スコアが算出された領域とハイライト表示が実行中である領域とが異なる場合(ステップS504Yes)、第2算出部15eは、これら2つの領域の間で互いの距離を算出する(ステップS505)。
【0093】
続いて、決定部15fは、上記の頻度データ13dを参照して、
図6に示したステップS309で解析された表示中のスライドのレイアウト種別、及び、ステップS505で算出された領域間の距離に対応するハイライト表示の移行頻度を導出する(ステップS506)。
【0094】
その後、決定部15fは、ハイライト表示の移行頻度が所定の閾値Th2未満であるか否かを判定する(ステップS507)。このとき、ハイライト表示の移行頻度が閾値Th2未満である場合(ステップS507Yes)、誤認識が原因となってハイライト表示が遠く離れた領域に移行される可能性が残る。この場合、決定部15fは、ステップS501で算出された最高スコアが閾値Th1以上となる頻度が所定の閾値Th3以上であるか否かを判定する(ステップS508)。
【0095】
ここで、最高スコアが閾値Th1以上となる頻度が閾値Th3以上である場合(ステップS508Yes)、ハイライト表示が遠く離れた領域に移行されるが、誤認識が発生している可能性は低くなったと推定できる。この場合、決定部15fは、ハイライト表示が実行中である領域からステップS501で最高スコアが算出された領域へハイライト表示を移行させ(ステップS509)、処理を終了する。一方、最高スコアが閾値Th1以上となる頻度が閾値Th3未満である場合(ステップS508No)、誤認識によりハイライト表示が移行されるおそれも残る。この場合、決定部15fは、ハイライト表示の移行を保留して実行中のハイライト表示を維持し(ステップS510)、処理を終了する。
【0096】
一方、ハイライト表示の移行頻度が閾値Th2を超過する場合(ステップS507No)、ハイライト表示が近隣の領域に移行される可能性が高く、ハイライト表示が移行されてもばたつきが生じる可能性は低いとみなすことができる。この場合、決定部15fは、ハイライト表示が実行中である領域から第1算出部15dにより最高スコアが算出された領域へハイライト表示を移行させ(ステップS509)、処理を終了する。
【0097】
[効果の一側面]
上述してきたように、本実施例に係るプレゼンテーション支援装置10は、表示中のスライドの中でハイライト表示を行う領域が移行される距離に対応する頻度が閾値未満である場合、移行先の領域に関する音声認識のスコアが閾値以上となる頻度が高まるまでハイライト表示の移行を保留する。それ故、誤認識が原因となってハイライト表示がプレゼンタの説明箇所から離れた後にプレゼンタの説明箇所に戻るといったハイライト表示の移行が抑制される。したがって、本実施例に係るプレゼンテーション支援装置10によれば、ハイライト表示がばたつくのを抑制できる。
【実施例2】
【0098】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【0099】
[角度の利用]
上記の実施例1では、ハイライト表示の移行を保留する条件の1つとして、ハイライト表示の移行頻度を用いる場合を例示したが、他のパラメータを上記の条件に用いることとしてもよい。例えば、プレゼンテーション支援装置10は、ハイライト表示が移行する前後でプレゼンタまたは聴講者の視線が変化する角度を用いることができる。
【0100】
すなわち、焦点から所定の角度、例えば5度(画面の1/4程度)外れた場所では、聴講者の視力は、焦点の場所に比べて約30%にまで低下する。つまり、ハイライト表示が5度以上離れた場所に誤って移行された場合に聴講者の視線までハイライト表示に合わせて移動されると、聴講者は実際の説明箇所を読めなくなってしまう。そこで、プレゼンテーション支援装置10は、一例として、聴講者の焦点が5度以上にわたってずれる位置にハイライト表示が移行する場合に、最高スコアが閾値Th1以上となる頻度が閾値Th3以上になるまでハイライト表示の移行を保留することもできる。
【0101】
図8は、角度の一例を示す図である。
図8には、聴講者がプロジェクタのスクリーンでスライドを閲覧する場合が示されている。さらに、
図8では、高さが1.5mである100インチ程度のスクリーンが聴講者から5mの距離に配置されている場合を想定する。
図8に示すように、ハイライト表示がスクリーンの上端及び下端の中央からスクリーンの面方向、例えば鉛直方向に距離「0.44m」離れた位置へ移動する場合、tanθ≒0.44/5の関係が成立する。このため、角度θは、tanの逆関数であるarctanを用いて、arctan(0.44/5)=θの計算を行うことにより求めることができる。このようにして求まる角度θ≒5°となる。この場合、例えば、資料が文字の大きさ及び行間が等しい10行で作られていたとすると、4行以上にわたってハイライト表示が移動し、5度以上焦点がずれることになる。したがって、ハイライト表示の移行が保留される。これによって、ハイライト表示が5度以上離れた場所に誤って移行された場合に聴講者の視線までハイライト表示に合わせて移動されるのを抑制できる。
【0102】
図9は、角度の一例を示す図である。
図9には、聴講者がモニタでスライドを閲覧する場合が示されている。さらに、
図9では、高さが40cmである24インチ程度のスクリーンが聴講者から100cmの距離に配置されている場合を想定する。
図9に示すように、ハイライト表示がスクリーンの上端及び下端の中央からスクリーンの面方向、例えば鉛直方向に距離「8.7cm」離れた位置へ移動する場合、tanθ≒8.7/100の関係が成立する。このため、角度θは、tanの逆関数であるarctanを用いて、arctan(8.7/100)=θの計算を行うことにより求めることができる。このようにして求まる角度θ≒5°となる。この場合、例えば、資料が文字の大きさ・行間が等しい10行で作られていたとすると、3行以上にわたってハイライト表示が移動し、5度以上ハイライトが飛ぶことになる。したがって、ハイライト表示の移行が保留される。これによって、ハイライト表示が5度以上離れた場所に誤って移行された場合に聴講者の視線までハイライト表示に合わせて移動されるのを抑制できる。
【0103】
このように、プレゼンテーション支援装置10は、スクリーンの大きさと、スクリーンの表示面の法線方向に規定される所定の定点までの距離と、スクリーンの表示面と平行な面方向に規定される領域間の距離とを用いて、定点からハイライト表示の移行前の領域への視線がハイライト表示の移行後の領域への視線に変化する場合の角度を求める。その上で、プレゼンテーション支援装置10は、当該角度が所定の閾値、上記の例では5度以上である場合に、最高スコアが閾値Th1以上となる頻度が閾値Th3以上になるまでハイライト表示の移行を保留する。
【0104】
[応用例1]
上記の実施例1では、最高スコアが閾値Th1以上である領域をハイライト表示させる場合を例示したが、最高スコアが閾値Th1以上であるからといって必ずしも当該領域のハイライト表示を行わずともよい。例えば、最高スコアが閾値Th1以上であることに加え、第1算出部15dにより算出される最高スコアが他の全ての区間のハイライトスコアの所定倍、例えば1.2倍以上である場合に最高スコアが閾値Th1以上である領域をハイライト表示させ、所定倍未満である場合にハイライト表示させないこととしてもかまわない。これによって、僅差のハイライトスコアを持つ領域が存在する場合に対応付け誤りを抑制できる。
【0105】
[応用例2]
上記の実施例1では、最高スコアが閾値Th1以上である領域をハイライト表示させる場合を例示したが、最高スコアが閾値Th1よりも大きい閾値Th4、例えば「3」以上である場合には、ハイライト表示の移行頻度にかかわらず最高スコアが閾値Th4以上である領域をハイライト表示させることもできる。これによって、明らかに大きなハイライトスコアの場合は迅速に移行することで、より素早い対応付けが可能となる。
【0106】
[応用例3]
上記の実施例1では、決定部15fは、第1算出部15dにより算出されたハイライトスコアの中に上記の閾値Th1以上であるハイライトスコアを持つ領域が存在しない場合、何も処理を行わずに処理を終了するとしているが、この際、ハイライト表示が実行中である領域があればそのハイライト表示を消去するようにしても良いし、ハイライト表示が実行中の領域のハイライトスコアが閾値Th1未満となってから一定時間(例えば10秒)以上経過した場合にハイライト表示を消去するようにしても良い。これによって、例えば説明において文書中に書かれていない話題の説明に移行した場合などに、ハイライト表示が一定時間経過後に消去されるため、聴講者にハイライト表示箇所の話題が続いているという誤解を与えることがなくなる。
【0107】
[文書ファイルの応用例]
上記の実施例1では、プレゼンテーションソフトによって作成された文書ファイルを用いる場合を例示したが、他のアプリケーションプログラムによって作成された文書ファイルを用いることができる。すなわち、表示時に画面単位で表示されるページを含む文書ファイルであれば、ワープロソフトの文書ファイルが有するページをスライドに読み替えたり、表計算ソフトの文書ファイルが有するシートをスライドに読み替えることによって
図5〜
図7に示した処理を同様に適用できる。
【0108】
[他の実装例]
上記の実施例1では、プレゼンテーション支援装置10が上記のプレゼンテーションソフトを外部のリソースに依存せずに単独で実行するスタンドアローンで上記のプレゼンテーション支援サービスを提供する場合を例示したが、他の実装形態を採用することもできる。例えば、プレゼンテーションソフトを実行するクライアントに対し、上記のプレゼンテーション支援サービスを提供するサーバを設けることによってクライアントサーバシステムとして構築することもできる。この場合、パッケージソフトウェアやオンラインソフトウェアとして上記のプレゼンテーション支援サービスを実現するプレゼンテーション支援プログラムをインストールさせることによってサーバ装置を実装できる。例えば、サーバ装置は、上記のプレゼンテーション支援サービスを提供するWebサーバとして実装することとしてもよいし、アウトソーシングによって上記のプレゼンテーション支援サービスを提供するクラウドとして実装することとしてもかまわない。この場合、クライアントは、サーバ装置に対し、プレゼンテーションに用いる文書ファイル及びプレゼンテーションを実施する会場の識別情報をアップロードした後に、プレゼンテーションが開始される。プレゼンテーションが開始されると、クライアントは、マイク3から採取された音声信号をリアルタイムでアップロードし、表示装置5に表示中のスライドのページが切り替わる度にスライドのページ情報をアップロードする。これによって、サーバ装置は、
図5〜
図7に示した処理が実行可能となる。さらに、クライアントは、入力装置7に関する操作情報をサーバへ伝送し、サーバから伝送される処理結果だけを表示装置5に表示させることにより、シンクライアントシステムとして構築することもできる。この場合には、各種のリソース、例えば文書データもサーバにより保持されると共に、プレゼンテーションソフトもサーバで仮想マシンとして実装されることになる。なお、上記の実施例1では、プレゼンテーション支援プログラムがプレゼンテーションソフトにアドオンされる場合を想定したが、ライセンス権限を有するクライアントからプレゼンテーション支援プログラムをライブラリとして参照する要求を受け付けた場合に、プレゼンテーション支援プログラムをプラグインさせることもできる。
【0109】
[遠隔会議システムへの適用]
上記の実施例1では、1つの表示装置に表示された文書が複数人により共有して閲覧される場合を例示したが、複数の端末を遠隔会議システム等を介して接続し、複数の端末のうちいずれかの端末が共有文書とハイライトを指定し、他の端末へ情報を送信する場合にも同様に適用できる。
【0110】
[プレゼンテーション支援プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、
図10を用いて、上記の実施例と同様の機能を有するプレゼンテーション支援プログラムを実行するコンピュータの一例について説明する。
【0111】
図10は、実施例1及び実施例2に係るプレゼンテーション支援プログラムを実行するコンピュータのハードウェア構成例を示す図である。
図10に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180とを有する。これら110〜180の各部はバス140を介して接続される。
【0112】
HDD170には、
図10に示すように、上記の実施例1で示した抽出部15a、認識部15b、解析部15c、第1算出部15d、第2算出部15e、決定部15f及び表示制御部15gと同様の機能を発揮するプレゼンテーション支援プログラム170aが記憶される。このプレゼンテーション支援プログラム170aは、
図2に示した抽出部15a、認識部15b、解析部15c、第1算出部15d、第2算出部15e、決定部15f及び表示制御部15gの各構成要素と同様、統合又は分離してもかまわない。すなわち、HDD170には、必ずしも上記の実施例1で示した全てのデータが格納されずともよく、処理に用いるデータがHDD170に格納されればよい。
【0113】
このような環境の下、CPU150は、HDD170からプレゼンテーション支援プログラム170aを読み出した上でRAM180へ展開する。この結果、プレゼンテーション支援プログラム170aは、
図10に示すように、プレゼンテーション支援プロセス180aとして機能する。このプレゼンテーション支援プロセス180aは、RAM180が有する記憶領域のうちプレゼンテーション支援プロセス180aに割り当てられた領域にHDD170から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、プレゼンテーション支援プロセス180aが実行する処理の一例として、
図5〜
図7に示す処理などが含まれる。なお、CPU150では、必ずしも上記の実施例1で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【0114】
なお、上記のプレゼンテーション支援プログラム170aは、必ずしも最初からHDD170やROM160に記憶されておらずともかまわない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ100がこれらから各プログラムを取得して実行するようにしてもよい。