以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰り返さない。
図1は、本発明の実施の形態の1つにおける会議システムの一例を示す図である。図1を参照して、会議システム1は、MFP(Multifunction Peripheral)100と、PC200,200A〜200Dと、カメラ機能付プロジェクタ210と、ホワイトボード221と、を含む。MFP100と、PC200,200A〜200Dと、カメラ機能付プロジェクタ210とは、ローカルエリアネットワーク(以下「LAN」という)2に接続される。
MFP100は、情報処理装置の一例であり、スキャナ機能、プリンタ機能、コピー機能、ファクシミリ機能等の複数の機能を備える。MFP100は、LAN2を介してカメラ機能付プロジェクタ210およびPC200,200A〜200Dと通信可能である。なお、MFP100と、PC200,200A〜200Dと、カメラ機能付プロジェクタ210とをLAN2で接続する例を示すが、通信が可能であれば、シリアル通信ケーブルで接続してもよいし、パラレル通信ケーブルで接続するようにしてもよい。なお、通信形態は、有線に限らず、無線であってもよい。
本実施の形態における会議システム1においては、会議の発表者が発表用の資料であるソースコンテンツを、MFP100に記憶させる。ソースコンテンツは、コンピュータで表示することが可能なデータであればよく、例えば、画像、文字、グラフ、またはそれらを組み合わされたデータである。ここでは、ソースコンテンツを、画像を含む1ページのデータとする場合を例に説明する。
MFP100は、カメラ機能付プロジェクタ210を制御して、カメラ機能付プロジェクタ210にソースコンテンツの少なくとも一部の画像を投影させることにより、ホワイトボード221に画像を表示させる表示制御装置として機能する。具体的には、MFP100は、ソースコンテンツの少なくとも一部を表示部分とし、表示部分の画像を表示画像としてカメラ機能付プロジェクタ210に送信し、カメラ機能付プロジェクタ210に表示画像を表示させる。表示画像は、カメラ機能付プロジェクタが表示可能な画像のサイズと同じである。したがって、ソースコンテンツの全体が表示画像のサイズよりも大きい場合は、ソースコンテンツの一部が表示部分に設定され、ソースコンテンツの全体が表示画像のサイズ以下の場合は、ソースコンテンツの全部が表示部分に設定される。
なお、MFP100からカメラ機能付プロジェクタ210にソースコンテンツを送信しておき、MFP100からカメラ機能付プロジェクタ210を遠隔操作することによって、カメラ機能付プロジェクタに表示画像を表示させても良い。この場合においても、ソースコンテンツの少なくとも一部が表示部分に設定され、ソースコンテンツの表示部分の表示画像が表示される。MFP100からカメラ機能付プロジェクタ210に送信される表示画像は、カメラ機能付プロジェクタ210が受信および解釈可能であれば、そのフォーマットは限定されない。
カメラ機能付プロジェクタ210は、液晶表示装置、レンズおよび光源を備え、MFP100から受信する表示画像をホワイトボード221の描画面に投影する。液晶表示装置は表示画像を表示し、光源から発せられる光は、液晶表示装置を透過し、レンズを介してホワイトボード221に照射される。カメラ機能付プロジェクタ210から照射される光が、ホワイトボード221の描画面に照射されると、液晶表示装置に表示された表示画像を拡大した表示画像が描画面に映し出される。ここでは、ホワイトボード221の描画面を、カメラ機能付プロジェクタ210が表示画像を投影する投影面としている。
また、カメラ機能付プロジェクタ210は、カメラ211を備え、カメラ211で撮像して得られる撮像画像を出力する。MFP100は、カメラ機能付プロジェクタ210を制御して、ホワイトボード221の描画面に表示された画像を撮像させ、カメラ機能付プロジェクタ210から出力される撮像画像を取得する。例えば、会議の発表者または参加者がホワイトボードの描画面に手書きで文字などを描画することによって、表示された表示画像に追記する場合、カメラ機能付プロジェクタ210が出力する撮像画像は、表示画像に手書きの描画を含む画像となる。
PC200,200A〜200Dは、一般的なコンピュータであり、そのハードウエア構成および機能は周知なのでここでは説明を繰り返さない。ここでは、MFP100が、カメラ機能付プロジェクタ210に表示させている表示画像と同じ表示画像をPC200,200A〜200Dに送信する。このため、PC200,200A〜200Dそれぞれのディスプレイにおいて、ホワイトボード221に表示された表示画像と同じ表示画像が表示される。したがって、PC200,200A〜200Dのユーザは、ホワイトボード221またはPC200,200A〜200Dのディスプレイのいずれかに表示された表示画像を見ながら、会議の進行を確認することができる。
さらに、PC200,200A〜200Dそれぞれに、タッチパネル201、201A,201B,201C,201Dが接続される。PC200,200A〜200Dのユーザは、タッチペン203を用いて、タッチパネル201、201A,201B,201C,201Dに手書きの文字を入力することができる。PC200,200A〜200Dそれぞれは、タッチパネル201、201A,201B,201C,201Dに入力された手書きの文字を含む手書画像を、MFP100に送信する。
MFP100は、PC200,200A〜200Dのいずれかから手書画像が入力されると、それまでカメラ機能付プロジェクタ210に出力していた表示画像に、手書画像を合成することによって合成画像を生成し、合成画像をカメラ機能付プロジェクタ210に出力し、表示させる。このため、PC200,200A〜200Dのいずれかを使用する参加者が手書きした手書画像が、ホワイトボード221に表示される。
なお、ホワイトボード221を、その描画面がタッチパネルで構成されるようにし、MFP100とホワイトボード221とをLAN2で接続するようにしてもよい。この場合、ホワイトボード221は、描画面がペンなどで指示されると、ペンにより指示された描画面における座標を位置情報として取得し、位置情報をMFP100に送信する。したがって、ユーザがペンでホワイトボード221の描画面に文字または図形を描くと、描画面に描かれた文字または図形を構成する線に含まれるすべての座標を含む位置情報がMFP100に送信されるので、MFP100においては、位置情報からユーザによりホワイトボード221に描かれた文字または図形の手書画像を構成することができる。MFP100は、ホワイトボード221に描かれた手書画像を、上述したPC200,200A〜200Dのいずれかから入力される手書画像と同様に処理する。
図2は、MFPのハードウエア構成の一例を示すブロック図である。図2を参照して、MFP100は、メイン回路110と、原稿を読み取るための原稿読取部123と、原稿を原稿読取部123に搬送するための自動原稿搬送装置121と、原稿読取部123が原稿を読み取って出力する静止画像を用紙等に形成するための画像形成部125と、画像形成部125に用紙を供給するための給紙部127と、ユーザインターフェースとしての操作パネル129と、音を集音するマイクロホン131と、を含む。
メイン回路110は、CPU111と、通信インターフェース(I/F)部112と、ROM(Read Only Memory)113と、RAM(Random Access Memory)114と、EEPROM(Electronically Erasable and Programmable ROM)115と、大容量記憶装置としてのハードディスクドライブ(HDD)116と、ファクシミリ部117と、ネットワークI/F118と、フラッシュメモリ119Aが装着されるカードインターフェース(I/F)119とを含む。CPU111は、自動原稿搬送装置121、原稿読取部123、画像形成部125、給紙部127および操作パネル129と接続され、MFP100の全体を制御する。
ROM113は、CPU111が実行するプログラム、およびそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。
操作パネル129は、MFP100の上面に設けられ、表示部129Aと操作部129Bとを含む。表示部129Aは、液晶表示装置、有機ELD(Electroluminescence Display)等の表示装置であり、ユーザに対する指示メニューや取得した表示データに関する情報等を表示する。操作部129Bは、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受け付ける。操作部129Bは、表示部129A上に設けられたタッチパネルをさらに含む。
通信I/F部112は、MFP100を他の装置とシリアル通信ケーブルで接続するためのインターフェースである。なお、接続形態は、有線であっても無線であってもよい。
ファクシミリ部117は、公衆交換電話網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部117は、受信したファクシミリデータを、HDD116に記憶する、または画像形成部125に出力する。画像形成部125は、ファクシミリ部117により受信されたファクシミリデータを用紙に印刷する。また、ファクシミリ部117は、HDD116に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
ネットワークI/F118は、MFP100をLAN2に接続するためのインターフェースである。CPU111は、ネットワークI/F118を介してLAN2に接続されたPC200,200A〜200Dおよびカメラ機能付プロジェクタ210と通信が可能である。また、CPU111は、LAN2がインターネットに接続されている場合、インターネットに接続されたコンピュータと通信可能である。インターネットに接続されるコンピュータには、電子メールを送受信する電子メールサーバを含む。ネットワークI/F118はLAN2に限らず、インターネット、ワイドエリアネットワーク(WAN)、公衆交換電話網等に接続するようにしてもよい。
マイクロホン131は、音を集音し、集音した音をCPU111に出力する。ここでは、MFP100が会議室に設置され、マイクロホン131は、会議室の音を集音する。なお、MFP100にマイクロホン131を有線または無線で接続するようにして、会議室にいる発表者または参加者がマイクロホン131に音声を入力するようにしてもよい。この場合には、MFP100を会議室に設置する必要はない。
カードI/F119は、フラッシュメモリ119Aが装着される。CPU111は、カードI/F119を介してフラッシュメモリ119Aにアクセス可能であり、フラッシュメモリ119Aに記憶されたプログラムをRAM114にロードして実行可能である。なお、CPU111が実行するプログラムは、フラッシュメモリ119Aに記憶されたプログラムに限られず、他の記憶媒体に記憶されたプログラムでもよく、HDD116に記憶されたプログラムであってもよく、さらに、通信I/F部112を介してLAN2に接続された他のコンピュータによりHDD116に書き込みされたプログラムであってもよい。
なお、プログラムを記憶する記憶媒体としては、フラッシュメモリ119Aに限られず、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable and Programmable ROM)などの半導体メモリでもよい。
ここでいうプログラムは、CPU111が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
図3は、MFPが備えるCPUの機能の概要を示すブロック図である。図3に示す機能は、MFP100が備えるCPU111が、ROM113またはフラッシュメモリ119Aに記憶された表示プログラムを実行することにより、実現される。図3を参照して、CPU111により実現される機能は、ソースコンテンツを取得するソースコンテンツ取得部151と、カメラ機能付プロジェクタを制御する投影制御部153と、ソースコンテンツに含まれるサブコンテンツを抽出するサブコンテンツ抽出部155と、複数のサブコンテンツのうちから処理対象となる対象サブコンテンツを決定する処理対象決定部161と、外部から入力される入力コンテンツを受け付ける入力コンテンツ受付部157と、ユーザにより入力される挿入指示を受け付ける挿入指示受付部167と、改変コンテンツを生成するコンテンツ改変部169と、合成部177と、を備える。
ソースコンテンツ取得部151は、ソースコンテンツを取得する。ここでは、ソースコンテンツの一例としてHDD116に予め記憶された発表データを例に説明する。具体的には、発表者が発表資料として生成した発表データをHDD116に予め記憶しておき、発表者が操作部129Bを操作して、発表データを指示する操作を入力すれば、ソースコンテンツ取得部151は、指示された発表データをHDD116から読み出すことにより発表データを取得する。ソースコンテンツ取得部151は、取得された発表データを、投影制御部153、サブコンテンツ抽出部155、コンテンツ改変部169および合成部177に出力する。
投影制御部153は、ソースコンテンツ取得部151から入力される発表データの少なくとも一部の表示部分の画像を表示画像として、カメラ機能付プロジェクタ210に出力し、カメラ機能付プロジェクタ210に表示画像を表示させる。ここでは、発表データは、1ページの画像からなるので、発表データのうち発表者が操作部129Bに入力する操作によって特定される表示部分の画像を表示画像としてカメラ機能付プロジェクタ210に出力する。表示データの画像のサイズが、カメラ機能付プロジェクタ210が投影可能な画像のサイズより大きい場合があり、この場合には、表示データの一部を表示部分としてカメラ機能付プロジェクタ210に出力し、投影させる。この場合、発表者が操作部129Bにスクロール操作を入力すると、投影制御部153は、発表データの表示部分を変更する。
投影制御部153は、後述する合成部177から合成画像が入力される場合、合成画像の少なくとも一部の表示部分の画像を表示画像として、カメラ機能付プロジェクタ210に出力し、カメラ機能付プロジェクタ210に表示画像を表示させる。投影制御部153は、合成画像のサイズがカメラ機能付プロジェクタ210の投影可能な画像のサイズより大きい場合、上述した表示データの場合と同様に、発表者によるスクロール操作に応じて、合成画像の表示部分を変更する。
サブコンテンツ抽出部155は、ソースコンテンツ取得部151から入力される表示データに含まれるサブコンテンツを抽出する。サブコンテンツとは、ソースコンテンツ、ここでは表示データに含まれる一群の文字列の塊、図形、画像等である。換言すれば、サブコンテンツは、ソースコンテンツ中で空白の領域で囲まれた領域であり、隣り合う2つのサブコンテンツの間は空白の領域が存在する。例えば、ソースコンテンツの画像を、上下左右に分割した複数のブロックにおいて、ブロックごとに属性を判別し、隣接する同じ属性のブロックを同じサブコンテンツに含めることにより、サブコンテンツを抽出する。属性とは、文字が表された文字属性、グラフ等の線画が表された図形属性、写真が表された写真属性等である。ソースコンテンツから複数のサブコンテンツが抽出される場合、同じ属性のサブコンテンツが複数あってもよいし、すべてが異なる属性であってもよい。サブコンテンツ抽出部155は、抽出されたサブコンテンツと、そのサブコンテンツのソースコンテンツ中の位置を示す位置情報との組を処理対象決定部161に出力する。
サブコンテンツ抽出部155は、複数のサブコンテンツを抽出する場合、複数のサブコンテンツそれぞれを位置情報と組にして処理対象決定部161に出力する。サブコンテンツのソースコンテンツ中の位置を示す位置情報は、ここでは、ソースコンテンツを1ページの画像を含む表示データとしているので、表示データにおけるサブコンテンツが示す領域の重心の座標で示される。なお、ソースコンテンツである表示データが複数ページのページデータで構成される場合、位置情報は、ページ番号と、そのページ番号のページデータにおけるサブコンテンツの領域の重心の座標とで示される。
入力コンテンツ受付部157は、手書画像受付部159を含む。手書画像受付部159は、通信I/F部112がPC200,200A〜200Dのいずれかから手書画像を受信すると、受信された手書画像を受け付ける。手書画像受付部159は、受け付けられた手書画像を、合成部177に出力する。なお、入力コンテンツ受付部157が受け付ける入力コンテンツは、手書画像に限らず、文字列であってもよいし、画像であってもよい。また、ここでは入力コンテンツは、PC200,200A〜200Dのいずれから送信される手書画像の例を示すが、入力コンテンツは、MFP100の原稿読取部123が原稿を読み取って取得する画像であってもよいし、HDD116に記憶されたデータであってもよい。
処理対象決定部161は、サブコンテンツ抽出部155から複数のサブコンテンツが入力される場合、複数のサブコンテンツのうちから処理対象となる1つの対象サブコンテンツを決定する。処理対象決定部161は、音声受付部163および音声認識部165を含む。処理対象決定部161は、音声自動トレース機能がONに設定されている場合、音声受付部163および音声認識部165を能動化する。音声自動トレース機能は、ユーザがMFP100に予め設定することにより、ONまたはOFFのいずれかに設定される。
音声受付部163は、マイクロホン131により集音され、マイクロホン131が出力する音を受け付ける。音声受付部163は、受け付けた音を音声認識部165に出力する。音声認識部165は、入力される音を音声認識し、文字列を出力する。処理対象決定部161は、複数のサブコンテンツのうちから、それぞれに含まれる文字列と、音声認識部165が出力する文字列とを比較し、音声認識部165が出力する文字列と同じ文字列を含むサブコンテンツを対象サブコンテンツに決定する。
発表者は、通常、ホワイトボード221に投影された表示画像に従って、発声し、参加者は、表示画像を見て発声する。このため、発表者または参加者が発声する単語を含むサブコンテンツが、現在会議の参加者で議論されている部分である可能性が高い。したがって、音声自動トレース機能がONに設定されている場合、会議の進行に伴って対象サブコンテンツが変動する。処理対象決定部161は、対象サブコンテンツが変更になるごとに、変更後の対象サブコンテンツの位置情報をコンテンツ改変部169に出力する。上述したように、サブコンテンツの位置情報は、ソースコンテンツ中の位置を特定するための情報であり、ソースコンテンツの座標値で表される。
処理対象決定部161は、音声自動トレース機能がOFFに設定されている場合、投影制御部153がカメラ機能付プロジェクタ210に出力している表示画像と同じ表示画像を表示部129Aに表示し、ユーザが表示画像中の任意の位置を操作部129Bに入力すると、入力された位置を指示位置として受け付け、表示画像中で指示位置に配置されたサブコンテンツを対象サブコンテンツに決定する。そして、処理対象決定部161は、決定された対象サブコンテンツの位置情報をコンテンツ改変部169に出力する。
なお、PC200,200A〜200DのユーザがMFP100を遠隔操作することによって、PC200,200A〜200Dのユーザが指示位置を入力するようにしてもよい。この場合、処理対象決定部161は、通信I/F部112がPC200,200A〜200Dのいずれかから指示位置を受信すると、指示位置を受け付ける。
コンテンツ改変部169は、ソースコンテンツ取得部151から表示データが入力され、処理対象決定部161から対象サブコンテンツの位置情報が入力され、挿入指示受付部167から挿入指示が入力される。挿入指示受付部167は、操作部129Bに予め定められたキーがユーザにより押下されると、挿入指示を受け付ける。挿入指示受付部167は、挿入指示が受け付けられると、挿入指示をコンテンツ改変部169に出力する。なお、PC200,200A〜200DのユーザがMFP100を遠隔操作することによって、PC200,200A〜200Dのユーザが挿入指示を入力するようにしてもよい。この場合、挿入指示受付部167は、通信I/F部112がPC200,200A〜200Dのいずれかから挿入指示を受信すると、挿入指示を受け付ける。なお、音声認識部165が、予め定められた文字列、例えば「そうにゅうしじ」を出力する場合に、挿入指示受付部167が、挿入指示を受け付けてもよい。
コンテンツ改変部169は、挿入指示が入力されると、表示データ中で対象サブコンテンツが配置されている位置を基準にして定まる位置に入力コンテンツを配置するための挿入領域を追加した改変コンテンツを生成する。具体的には、コンテンツ改変部169は、挿入指示が入力される直前に処理対象決定部161から入力された位置情報に従って、表示データに含まれるサブコンテンツのうちから対象サブコンテンツを特定する。そして、対象サブコンテンツの周辺に配置位置を特定する。
配置位置は、表示画像中における対象サブコンテンツの位置により定まる。例えば、対象サブコンテンツが表示画像中の半分より上側に位置すれば、対象サブコンテンツの直ぐ下を配置位置に決定し、対象サブコンテンツが表示画像中の半分より下側に位置すれば、対象サブコンテンツの直ぐ上を配置位置に決定する。なお、配置位置は、対象サブコンテンツの周辺であれば、対象サブコンテンツの上下左右いずれであっても良い。
なお、ここでは対象サブコンテンツの上下方向に配置位置を決定する例を示すが、配置位置を決定する方向は、ソースコンテンツである表示データの表示部分に含まれる複数のサブコンテンツが配列される方向によって定めるようにしてもよい。表示データの表示部分に含まれる複数のサブコンテンツが左右方向に配列される場合は、対象サブコンテンツの左右のいずれかに配置位置を決定すればよい。
ここでは、対象サブコンテンツの下方を配置位置に特定する場合を例に説明する。コンテンツ改変部169は、生成された改変コンテンツと挿入領域の重心位置である挿入位置とを合成部177に出力する。対象コンテンツの近傍に配置位置を決定することにより、後述する挿入領域に含まれる画像と対象コンテンツとの関係を明確にすることができる。
コンテンツ改変部169は、配置変更部171と、縮小部173と、除外部175と、を含む。コンテンツ改変部169は、ソースコンテンツである表示データ中で表示の対象となっている表示部分において空白部分の高さの合計がしきい値T1以上ならば配置変更部171を能動化し、空白部分の高さの合計がしきい値T1より小さく、かつ、しきい値T2以上ならば縮小部173を能動化し、空白部分の高さの合計がしきい値T2より小さければ除外部175を能動化する。ただし、しきい値T1は、しきい値T2よりも大きい。
配置変更部171は、表示データの表示部分に含まれる複数のサブコンテンツの配置を変更することによって改変コンテンツを生成する。具体的には、表示データの表示部分に含まれる複数のサブコンテンツのうち配置位置より上側に配置されたサブコンテンツを上方に移動し、配置位置より下側に配置されたサブコンテンツを下方に移動することにより、対象サブコンテンツの下方に空白の挿入領域を確保する。表示データの表示部分に含まれる複数のサブコンテンツを配置位置から距離が遠いものから順に、表示部分内で配置を変更する。表示部分内のサブコンテンツの配置を移動するので、サブコンテンツの配置を移動する前後で表示部分内に含まれるサブコンテンツの数に変動はない。換言すれば、表示される複数のサブコンテンツは改変コンテンツを生成する前後で変わらない。このため、改変コンテンツが表示されても、同じ内容が表示される。
表示データの表示部分に含まれる複数のサブコンテンツのうち最も上側に配置されたサブコンテンツを、表示部分の最も上に配置し、表示データの表示部分に含まれる複数のサブコンテンツのうち最も下側に配置されたサブコンテンツを、表示部分の最も下に配置する。配置を変更した後の隣り合う2つのサブコンテンツの間の距離を予め定めておき、最上部および最下部に配置されたサブコンテンツから順に、残りのサブコンテンツを2つのサブコンテンツ間の距離が予め定められた距離となるように配置する。換言すれば、表示データの表示部分に含まれる複数のサブコンテンツ間の間隔を縮小することによって、複数のサブコンテンツの配置を表示部分内で変更する。
配置変更部171は、ソースコンテンツである表示データの表示部分に含まれる複数のサブコンテンツの配置を変更することによって改変コンテンツを生成することによって、改変コンテンツにおいて配置位置に空白の領域が確保される。配置変更部171は、改変コンテンツに確保された空白の領域を挿入領域に設定する。配置変更部171は、挿入領域の重心の座標を挿入位置に設定し、改変コンテンツと挿入位置とを合成部177に出力する。
縮小部173は、ソースコンテンツである表示データの表示部分に含まれる複数のサブコンテンツを縮小することによって改変コンテンツを生成する。具体的には、表示データの表示部分に含まれる複数のサブコンテンツを縮小し、縮小された複数のサブコンテンツのうち配置位置より上側に配置された縮小後のサブコンテンツを上方に移動し、配置位置より下側に配置された縮小後のサブコンテンツを下方に移動することにより、対象サブコンテンツの下方に空白の挿入領域を確保する。縮小部173は、表示データの表示部分に含まれる複数のサブコンテンツを縮小する点で上記配置変更部171と異なるが、表示部分において縮小後のサブコンテンツの配置を変更する点で上記配置変更部171と同じである。縮小部173は、挿入領域の重心の座標を挿入位置に設定し、改変コンテンツと挿入位置とを合成部177に出力する。
ソースコンテンツである表示データの表示部分に含まれる複数のサブコンテンツを縮小した後に配置を移動するので、サブコンテンツの配置を移動する前後で表示部分内に含まれるサブコンテンツの数に変動はない。換言すれば、表示される複数のサブコンテンツは改変コンテンツを生成する前後で変わらない。このため、改変コンテンツが表示されても、サイズは小さくなるが同じ内容が表示される。
除外部175は、ソースコンテンツである表示データの表示部分に含まれる複数のサブコンテンツのうち少なくとも1つを表示部分から除外した改変コンテンツを生成する。具体的には、除外部175は、表示データのうち表示部分に含まれる複数のサブコンテンツのうち配置位置より最も遠いサブコンテンツを表示部分の外に配置し、残りのサブコンテンツのうち配置位置より上側に配置されたサブコンテンツを上方に移動し、配置位置より下側に配置されたサブコンテンツを下方に移動することにより、対象サブコンテンツの下方に空白の挿入領域を確保する。
除外部175は、表示データの表示部分に含まれる複数のサブコンテンツのうちから少なくとも1つを表示部分の外に配置する点で、上記配置変更部171と異なるが、表示部分において残りのサブコンテンツの配置を変更する点で上記配置変更部171と同じである。除外部175は、改変コンテンツにおいて、配置位置に確保された空白の領域を挿入領域に設定し、改変コンテンツ中の挿入領域の重心の座標を挿入位置に設定し、生成した改変コンテンツと挿入位置とを合成部177に出力する。なお、表示データの表示部分に含まれる複数のサブコンテンツのうちから少なくとも1つを表示部分の外に配置し、残りのサブコンテンツを配置変更部171と同様に配置を変更するようにしたが、表示部分内で残りのサブコンテンツを縮小部173と同様に、縮小した後に配置を変更するようにしても良い。
ソースコンテンツである表示データの表示部分に含まれる複数のサブコンテンツのうち少なくとも1つを表示部分の外に配置し、後に残りのサブコンテンツの配置を表示部分内で移動するので、少なくとも、表示部分の外に配置されたサブコンテンツが移動前に表示部分において占めていた領域を挿入領域に置き換えることができる。
除外部175は、表示部分の外にサブコンテンツを配置する場合、表示データのサイズが固定されている場合、表示データに新たなページのページデータを、処理対象としているページデータの前または後に追加し、表示データに含まれる複数のサブコンテンツのうち少なくとも1つを新たなページのページデータに配置する。表示部分の外に配置するサブコンテンツが表示部分の上側に配置される場合には、新たなページのページデータを表示データの前に追加し、表示データの最上部に配置されたサブコンテンツを新たなページのページデータに配置する。表示部分の外に配置するサブコンテンツが表示部分の下側に配置される場合には、新たなページのページデータを表示データの後に追加し、表示データの最下部に配置されたサブコンテンツを新たなページのページデータに配置する。また、表示部分の外に配置するサブコンテンツを、新たなページのページデータに配置するようにしてもよい。
合成部177は、ソースコンテンツ取得部151からソースコンテンツが入力され、コンテンツ改変部169から改変コンテンツと挿入位置とが入力され、入力コンテンツ受付部157から入力コンテンツが入力される。改変コンテンツは、表示データの表示部分に挿入領域を追加したものであり、入力コンテンツは手書画像である。合成部177は、改変コンテンツの挿入位置で特定される挿入領域に手書画像を合成した合成画像を生成し、合成画像の少なくとも一部を表示部分に設定し、表示部分の表示画像を投影制御部153に出力する。また、合成部177は、ソースコンテンツと、改変コンテンツと、挿入位置と、入力コンテンツとを関連付けてHDD116に記憶する。ソースコンテンツと、改変コンテンツと、挿入位置と、入力コンテンツとが関連付けられて記憶されるので、後にそれらから、合成画像を再現することができる。
投影制御部153においては、新たな表示画像が入力されると、それまで表示していた表示画像に代えて新たな表示画像を表示する。これにより、ホワイトボード221に、手書画像がサブコンテンツと重ならない画像が表示される。
図4は、表示データと表示部分との関係の一例を示す第1の図である。図4を参照して、ソースコンテンツである表示データ301は、7つのサブコンテンツ311〜317を含む。5つのサブコンテンツ311〜314,317は、文字が表されており、サブコンテンツ315はグラフが表されており、サブコンテンツ316は写真が表されている。
表示部分321は、表示データ301に含まれる7つのサブコンテンツ311〜317のうちのサブコンテンツ311〜314を含む。表示データ301の表示部分321が表示画像としてカメラ機能付プロジェクタ210により投影され、ホワイトボード221に表示される。図4においては、音声自動トレース機能がONに設定されており、音声認識される文字列が、矢印323で示される行に含まれる場合を例に示している。矢印323で示される行は、サブコンテンツ314に含まれるため、サブコンテンツ314が対象サブコンテンツに決定される。ここでは、対象サブコンテンツ314の下方に空白の領域がないので、対象サブコンテンツ314の上側が配置位置に決定される。
図5は、改変コンテンツの一例を示す第1の図である。図5に示す改変コンテンツは、図4に示した表示データを改変した一例である。図5を参照して、改変コンテンツ301Aは、図4に示した表示データ301と同様に、7つのサブコンテンツ311〜317を含む。表示部分321は、改変コンテンツ301Aに含まれる7つのサブコンテンツ311〜317のうちのサブコンテンツ311〜314を含む。表示部分321において、サブコンテンツ311が最上部に配置され、その下にサブコンテンツ312,313が所定の間隔で配置され、サブコンテンツ314が最下部に配置され、サブコンテンツ314の上部に挿入領域331が配置される。
改変コンテンツ301Aの表示部分321が表示画像としてホワイトボード221に投影されると、改変コンテンツ301Aの表示部分321は挿入領域331を含むので、ユーザは、ホワイトボード221に投影された表示画像の挿入領域331に手書きで描画が可能になる。また、ホワイトボード221に描画された画像は、対象コンテンツ314の近傍となるので、ユーザは対象コンテンツ314に関連する情報を手書きで追加することができる。
また、改変コンテンツ301Aの表示部分321は、図4に示した表示データ301の表示部分321と同様にサブコンテンツ311〜314を含むので、挿入領域331が表示される前後で表示される内容を変えることなく、挿入領域331を表示することができる。また、挿入領域331が表示される位置が対象サブコンテンツ314の近傍であることをユーザは容易に理解することができる。
図6は、表示データと表示部分との関係の一例を示す第2の図である。図6を参照して、ソースコンテンツである表示データ301は、7つのサブコンテンツ311〜317を含む。5つのサブコンテンツ311〜314,317は、文字が表されており、サブコンテンツ315はグラフが表されており、サブコンテンツ316は写真が表されている。
表示データ301の表示部分321は、表示データ301に含まれる7つのサブコンテンツ311〜317のうちの5つのサブコンテンツ313〜317を含む。表示データ301の表示部分321が表示画像としてカメラ機能付プロジェクタ210により投影され、ホワイトボード221に表示される。図6においては、音声自動トレース機能がONに設定されており、音声認識される文字列が、矢印323で示される行に含まれる場合を例に示している。矢印323で示される行は、サブコンテンツ314に含まれるため、サブコンテンツ314が対象サブコンテンツに決定される。ここでは、対象サブコンテンツ314の下方が配置位置に決定される。
図7は、改変コンテンツの一例を示す第2の図である。図7に示す改変コンテンツは、図6に示したソースコンテンツである表示データを改変した一例である。図7を参照して、改変コンテンツ301Bは、図6に示した表示データ301に含まれていたサブコンテンツ311,312と、表示データ301に含まれていたサブコンテンツ313〜317をそれぞれ縮小したサブコンテンツ313A〜317Aを含む。
改変コンテンツ301Bの表示部分321は、改変コンテンツ301Bに含まれる7つのサブコンテンツ311,312,313A〜317Aのうちのサブコンテンツ313A〜317Aを含む。改変コンテンツ301Bの表示部分321において、サブコンテンツ313Aが最上部に配置され、その下にサブコンテンツ314Aが所定の間隔で配置され、サブコンテンツ317Aが最下部に配置され、その上にサブコンテンツ315Aおよびサブコンテンツ316Aが所定の間隔で配置され、サブコンテンツ314Aの下部に挿入領域331Aが配置されている。
改変コンテンツ301Bの表示部分321が表示画像としてホワイトボード221に投影されると、改変コンテンツ301Bの表示部分321は挿入領域331Aを含むので、ユーザは、ホワイトボード221に投影された表示画像の挿入領域331に手書きで描画が可能になる。また、ホワイトボード221に描画された画像は、対象コンテンツ314Aの近傍となるので、ユーザは対象コンテンツ314Aに関連する情報を手書きで追加することができる。
また、改変コンテンツ301Bの表示部分321は、図6に示した表示データ301の表示部分321に含まれていたサブコンテンツ313〜317をそれぞれ縮小したサブコンテンツ313A〜317Aを含むので、挿入領域331Aが表示される前後で、表示される形状は縮小されるが内容を変えることなく、挿入領域331を表示することができる。また、挿入領域331Aが表示される位置が縮小された対象サブコンテンツ314Aの近傍であることをユーザは容易に理解することができる。
図8は、改変コンテンツの一例を示す第3の図である。図8に示す改変コンテンツ301C,301Dは、空白部分の高さと比較するしきい値T2を、図5に示した改変コンテンツ301Aが生成される場合よりも大きな値とした場合に生成される。図8に示す改変コンテンツ301C,301Dは、図4に示したソースコンテンツである表示データ301の表示部分321に含まれるサブコンテンツ311を表示部分321の外に配置する場合に生成される一例である。
まず、図4を参照して、ソースコンテンツである表示データ301において、対象サブコンテンツ314が決定されると、表示データ301の表示部分321に含まれるサブコンテンツ311〜314のうち対象サブコンテンツ314の上側が配置位置に決定される。そして、配置位置より最も遠いサブコンテンツ311を表示部分321の外に配置する。この場合、図8を参照して、新たなページのページデータが改変コンテンツ301Dとして生成され、その改変コンテンツ301Dに表示部分321から除外されたサブコンテンツ311が配置される。また、図4において、表示データ301の表示部分321に含まれる残りのサブコンテンツ312,313,314のうち配置位置より上側に配置されたサブコンテンツ312,313を上方に移動し、配置位置より下側に配置されたサブコンテンツ314を下方に移動することにより、図8に示すように対象サブコンテンツ314の上方に空白の挿入領域331Bを配置した改変コンテンツ301Cが生成される。
改変コンテンツ301Cの表示部分321が表示画像としてホワイトボード221に投影されると、改変コンテンツ301Cの表示部分321は挿入領域331Bを含むので、ユーザは、ホワイトボード221に投影された表示画像の挿入領域331Bに手書きで描画が可能になる。また、ホワイトボード221に描画された画像は、対象コンテンツ314の近傍となるので、ユーザは対象コンテンツ314に関連する情報を手書きで追加することができる。
また、改変コンテンツ301Cの表示部分321は、図4に示した表示データ301の表示部分321に含まれていた4つのサブコンテンツ311〜314のうち3つのサブコンテンツ312〜314を含むので、挿入領域331Bが表示される前後で表示される内容の変化を可能な限り少なくして、挿入領域331Bを表示することができる。また、挿入領域331Bが表示される位置が対象サブコンテンツ314の近傍であることをユーザは容易に理解することができる。
図9は、改変コンテンツの一例を示す第4の図である。図9に示す改変コンテンツ301E,301Fは、空白部分の高さと比較するしきい値T2を、図7に示した改変コンテンツ301Bが生成される場合よりも大きな値とした場合に生成される。図9に示す改変コンテンツ301E,301Fは、図6に示したソースコンテンツである表示データ301の表示部分321に含まれるサブコンテンツ317を表示部分321の外に配置する場合に生成される一例である。
まず、図6を参照して、ソースコンテンツである表示データ301において、対象サブコンテンツ314が決定されると、表示データ301の表示部分321に含まれるサブコンテンツ313〜317のうち対象サブコンテンツ314の下方が配置位置に決定される。そして、配置位置より最も遠いサブコンテンツ317を表示部分321の外に配置する。この場合、図9を参照して、新たなページのページデータが改変コンテンツ301Fとして生成され、その改変コンテンツ301Fに表示部分321から除外されたサブコンテンツ317が配置される。また、図6において、表示データ301の表示部分321に含まれる残りのサブコンテンツ313〜316のうち配置位置より上側に配置されたサブコンテンツ313,314を上方に移動し、配置位置より下側に配置されたサブコンテンツ315,316を下方に移動することにより、図9に示すように対象サブコンテンツ314の下方に空白の挿入領域331Cを配置した改変コンテンツ301Eが生成される。
改変コンテンツ301Eの表示部分321が表示画像としてホワイトボード221に投影されると、改変コンテンツ301Eの表示部分321は挿入領域331Cを含むので、ユーザは、ホワイトボード221に投影された表示画像の挿入領域331Cに手書きで描画が可能になる。また、ホワイトボード221に描画された画像は、対象コンテンツ314の近傍となるので、ユーザは対象コンテンツ314に関連する情報を手書きで追加することができる。
また、改変コンテンツ301Eの表示部分321は、図6に示した表示データ301の表示部分321に含まれていた5つのサブコンテンツ313〜317のうち4つのサブコンテンツ313〜316を含むので、挿入領域331Cが表示される前後で表示される内容の変化を可能な限り少なくして、挿入領域331Cを表示することができる。また、挿入領域331Cが表示される位置が対象サブコンテンツ314の近傍であることをユーザは容易に理解することができる。
図10は、表示処理の流れの一例を示すフローチャートである。表示処理は、MFP100が備えるCPU111が、ROM113またはフラッシュメモリ119Aに記憶された表示プログラムを実行することによりCPU111により実行される処理である。図10を参照して、CPU111は、ソースコンテンツを取得する。具体的には、HDD116に予め記憶された表示データを読み出すことにより、表示データをソースコンテンツとして取得する。なお、PC200,200A〜200Dのいずれかから表示データを受信してもよいし、LAN2がインターネットに接続されている場合には、インターネットに接続されたコンピュータからデータを受信してもよい。受信されたデータをソースコンテンツとすることができる。
次のステップS02においては、ステップS01において取得されたソースコンテンツからサブコンテンツを抽出する。表示データからそれに含まれる一群の文字列の塊、図形、画像等をサブコンテンツとして抽出する。例えば、表示データの画像を、上下左右に分割した複数のブロックにおいて、ブロックごとに属性を判別し、隣接する同じ属性のブロックを同じサブコンテンツに含めることにより、サブコンテンツを抽出する。
ステップS03においては、ソースコンテンツの表示部分を表示画像に設定する。表示データの表示部分が表示画像に設定される。表示画像は、カメラ機能付プロジェクタ210が表示可能なサイズである。このため、表示データがカメラ機能付プロジェクタ210の表示可能なサイズよりも大きい場合、表示データの一部の表示部分が表示画像に設定される。次のステップS04においては、表示画像をカメラ機能付プロジェクタ210に出力する。これにより、表示画像がホワイトボード221に投影され、ホワイトボード221に表示画像が表示される。
ステップS05においては、挿入指示を受け付けたか否かを判断する。挿入指示を受け付けたならば処理をステップS06に進め、そうでなければ処理をステップS28に進める。ユーザが、挿入を指示する操作を操作部129Bにすると、挿入指示を受け付ける。ステップS06においては、音声自動トレース機能がONに設定されているか否かを判断する。音声自動トレース機能とは、集音された音声を音声認識して得られる文字列でソースコンテンツをトレースして、ソースコンテンツ中の位置を決定する機能である。音声自動トレース機能は、ユーザがMFP100に予め設定することにより、ONまたはOFFのいずれかに設定される。音声自動トレース機能がONに設定されているならば、処理をステップS07に進めるが、そうでなければ処理をステップS11に進める。
ステップS07においては、マイクロホン131により集音された音を取得する。そして、取得された音を音声認識する(ステップS08)。さらに、音声認識して得られる文字列に基づいて、ステップS02においてソースコンテンツから抽出された複数のサブコンテンツのうちから対象サブコンテンツを決定する。具体的には、複数のサブコンテンツそれぞれに含まれる文字列と、音声認識して得られる文字列とを比較し、音声認識して得られる文字列と同じ文字列を含むサブコンテンツを対象サブコンテンツに決定する。
次のステップS10においては、決定された対象サブコンテンツの近傍を配置位置に決定する。ここでは、対象サブコンテンツの下側または上側を配置位置に決定し、処理をステップS13に進める。
一方、ステップS11においては、指示位置を受け付けるまで待機状態となり、指示位置を受け付けると、処理をステップS12に進める。表示部129Aに、ステップS03において設定された表示画像を表示し、ユーザが表示画像中の任意の位置を操作部129Bに入力すると、入力された位置を指示位置として受け付ける。そして、受け付けられた指示位置を配置位置に決定し(ステップS12)、処理をステップS13に進める。
ステップS13においては、改変コンテンツ生成処理を実行し、処理をステップS14に進める。改変コンテンツ生成処理についての詳細は後述するが、ソースコンテンツの配置位置に挿入領域を配置した改変コンテンツを生成する処理である。したがって、改変コンテンツ生成処理が実行されると、挿入領域を含む改変コンテンツが生成される。ここでは、改変コンテンツ中に配置された挿入領域の重心の座標を挿入位置という。
次のステップS14においては、改変コンテンツの表示部分を表示画像に設定する。改変コンテンツは、表示データに挿入領域を追加した画像なので、表示データの表示部分に挿入領域が追加された画像を表示画像に設定する。次のステップS15においては、表示画像をカメラ機能付プロジェクタ210に出力し、表示画像をホワイトボードに投影させる(ステップS15)。表示画像は、挿入領域の画像を含み、挿入領域は空白の画像なので、発表者または参加者であるユーザは、ホワイトボード221に空白の領域が確保され、手書きで描画することが可能となる。
ステップS16においては、入力コンテンツを取得するまで待機状態となり、入力コンテンツを取得すると、処理をステップS17に進める。具体的には、カメラ機能付プロジェクタ210を制御して、ホワイトボード221の描画面に表示された画像を撮像させ、カメラ機能付プロジェクタ210から出力される撮像画像を取得する。そして、撮像画像とステップS04において設定された表示画像とで異なる部分を、入力コンテンツとして取得する。
なお、通信I/F部112がPC200,200A〜200Dのいずれかから手書画像を受信する場合、受信された手書画像を入力コンテンツとしてもよい。また、入力コンテンツは、原稿読取部123が原稿を読み取って出力する画像であってもよいし、HDD116に記憶されたデータであってもよい。この場合は、原稿読取部123に原稿を読み取らせる操作が入力されると、原稿読取部123が原稿を読み取って出力する画像を入力コンテンツとして取得する。また、HDD116に記憶されたデータを指定する操作が入力されると、指定されたデータをHDD116から読み出すことにより、読み出されたデータを入力コンテンツとして取得する。
次のステップS18においては、取得された入力コンテンツを文字認識する。そして、文字認識することにより得られるテキストデータを、ステップS13において生成された改変コンテンツおよび決定された挿入位置と関連付けてHDD116に記憶する。
次のステップS19においては、ステップS13において生成された改変コンテンツの挿入位置にステップS16において取得された入力コンテンツを合成することにより合成画像を生成する。改変コンテンツは、表示データに挿入領域を追加したものであるため、挿入領域に手書画像が合成される。そして、合成画像の表示部分を表示画像に設定し、出力する(ステップS20)。
次のステップS21においては、スクロール指示を受け付けたか否かを判断する。スクロール指示を受け付けたならば処理をステップS22に進めるが、そうでなければ処理をステップS27に進める。ステップS27においては、終了指示を受け付けたか否かを判断し、終了指示を受け付けたならば処理を終了するが、そうでなければ処理をステップS05に戻す。
ステップS22においては、スクロール操作に従って表示画像を切り換え、スクロール表示し、処理をステップS23に進める。スクロール操作が表示画像の上側の画像を表示する指示ならば、合成画像のうち表示画像に設定されている表示部分の上側の部分を新たに表示画像に設定するための表示部分とし、スクロール操作が表示画像の下側の画像を表示する指示ならば、合成画像のうち表示画像に設定されている表示部分の下側の部分を新たに表示画像に設定するための表示部分とする。合成画像の表示部分の表示画像がカメラ機能付プロジェクタ210によって投影され、ホワイトボード221に表示される。
ステップS23においては、撮像画像を取得する。カメラ機能付プロジェクタ210のカメラ211が撮像した画像を、カメラ機能付プロジェクタ210から取得する。そして、表示画像と撮像画像とを比較する(ステップS24)。表示画像と撮像画像との間に相違部分があれば(ステップS25でYES)、処理をステップS26に進めるが、そうでなければ(ステップS25でNO)、ステップS26をスキップして処理をステップS27に進める。
ステップS26においては、ユーザに警告し、処理をステップS27に進める。警告は、ホワイトボード221に手書文字が描かれたままであることの通知であり、例えば「ホワイトボードの描画を消してください。」のメッセージを、カメラ機能付プロジェクタ210に表示させる。また、警告音を発生するようにしてもよい。
一方、処理がステップS28に進む場合、挿入指示がユーザから受け付けられる前の段階である。この場合には、ステップS28において、スクロール指示を受け付けたか否かを判断する。スクロール指示を受け付けたならば処理をステップS29に進めるが、そうでなければステップS29をスキップして、処理をステップS27に進める。ステップS29においては、スクロール表示し、処理をステップS27に進める。スクロール表示は、スクロール操作に従って表示画像を切り換え、切り換え後の表示画像の表示である。スクロール操作が表示画像の上側の画像を表示する指示ならば、表示データの表示部分の上側の部分を新たに表示部分に設定し、スクロール操作が表示画像の下側の画像を表示する指示ならば、表示データの表示部分の下側の部分を新たに表示部分に設定する。ステップS27においては、終了指示を受け付けたか否かを判断し、終了指示を受け付けたならば処理を終了するが、そうでなければ処理をステップS05に戻す。
図11は、改変コンテンツ生成処理の流れの一例を示すフローチャートである。改変コンテンツ生成処理は、図10のステップS13において実行される処理である。図11を参照して、CPU111は、ソースコンテンツの空白部分を算出する(ステップS31)。ここでは、複数のサブコンテンツが上下方向(垂直方向)に順次配列されているので、ソースコンテンツである表示データの表示部分に含まれる空白部分の上下方向の長さ算出する。空白部分が複数の場合は、複数の空白部分の上下方向の長さの合計を算出する。
そして、空白部分の高さの合計がしきい値T1以上か否かを判断する(ステップS32)。空白分の高さの合計がしきい値T1以上ならば処理をステップS33に進め、そうでなければ処理をステップS34に進める。ステップS33においては、ソースコンテンツ内の配置位置を中心に、複数のサブコンテンツを表示部分内で上下に移動することにより改変コンテンツを生成し、処理をステップS44に進める。
ステップS34においては、空白部分の高さの合計がしきい値T2以上か否かを判断する。空白分の高さの合計がしきい値T2以上ならば処理をステップS35に進め、そうでなければ処理をステップS37に進める。ステップS35においては、ソースコンテンツの表示部分に含まれる複数のサブコンテンツを縮小する。そして、配置位置を中心に、縮小された複数のサブコンテンツを表示部分内で上下に移動することにより改変コンテンツを生成し(ステップS36)、処理をステップS44に進める。
ステップS37においては、配置位置が表示画像の上部か否かを判断する。表示画像の上下方向の中心よりも上ならば上部と判断する。配置位置が表示画像の上部ならば処理をステップS38に進めるが、そうでなければ処理をステップS41に進める。ステップS38においは、新規に次のページのページデータを生成し、ソースコンテンツに追加する。新規に生成される次のページのページデータは空白のページである。次のステップS39においては、配置位置より下側で最も遠くに配置されたサブコンテンツを、新規に生成された次のページのページデータに配置する。次のステップS40においては、配置位置より下側に配置されたサブコンテンツを下側に移動させ、処理をステップS44に進める。配置位置より下側に配置されたサブコンテンツを、表示部分に含まれていたサブコンテンツのうち最も下側のサブコンテンツが表示部分の外に配置されるまで移動させる。これにより、配置位置より下側に、挿入領域が確保される。
ステップS41においは、ステップS38においは、新規に前のページのページデータを生成し、ソースコンテンツに追加する。新規に生成される前のページのページデータは空白のページである。次のステップS42においては、配置位置より上側で最も遠くに配置されたサブコンテンツを、新規に生成された前のページのページデータに配置する。次のステップS43においては、配置位置より上側に配置されたサブコンテンツを上側に移動させ、処理をステップS44に進める。配置位置より上側に配置されたサブコンテンツを、表示部分に含まれていたサブコンテンツのうち最も上側のサブコンテンツが表示部分の外に配置されるまで移動させる。これにより、配置位置より上側に、挿入領域が確保される。
ステップS44においては、ステップS33、ステップS36、ステップS40またはステップS43において生成された改変コンテンツと挿入位置とをソースコンテンツと関連付けてHDD116に記憶し、処理を表示処理に戻す。挿入位置は、改変コンテンツに含まれる挿入領域の重心の座標である。
<第2の実施の形態>
第1の実施の形態における会議システム1においては、音声自動トレース機能によって、またはユーザが指示位置をMFP100に入力することによって対象サブコンテンツを決定するようにした。第2の実施の形態における会議システム1においては、会議の発表者または参加者が、ホワイトボード221にペンなどで描画した画像に基づいて対象サブコンテンツを決定するようにしたものである。この場合、第1の実施の形態における会議システム1において用いた音声自動トレース機能は用いることなく、また、ユーザによる指示位置の入力は受け付ける必要はない。
第2の実施の形態における会議システムの全体概要は、図1に示したのと同じであり、MFP100のハードウエア構成は、図2に示したのと同じである。
図12は、第2の実施の形態におけるMFPが備えるCPUの機能の概要を示すブロック図である。図12に示す機能は、MFP100が備えるCPU111が、ROM113またはフラッシュメモリ119Aに記憶された表示プログラムを実行することにより、実現される。図12を参照して、図3に示したブロック図と異なる点は、処理対象決定部161が処理対象決定部161Aに変更された点、および撮像画像取得部181が追加された点である。その他の機能は、図3に示したのと同じなので、ここでは説明を繰り返さない。
撮像画像取得部181は、通信I/F部112を介してカメラ機能付プロジェクタ210を制御し、カメラ211により撮像された撮像画像を取得する。そして、取得された撮像画像を、処理対象決定部161Aに出力する。
処理対象決定部161Aは、撮像画像取得部181から撮像画像が入力され、投影制御部153から表示画像が入力され、サブコンテンツ抽出部155からサブコンテンツが入力される。処理対象決定部161Aは、サブコンテンツ抽出部155から複数のサブコンテンツが入力される場合、複数のサブコンテンツのうちから1つの対象サブコンテンツを決定する。具体的には、表示画像と撮像画像とを比較し、撮像画像に含まれるが表示画像に含まれない差分画像を抽出する。
そして、処理対象決定部161Aは、差分画像の色相を、表示画像の差分画像に該当する部分の色相と比較し、両色相の差が所定のしきい値TC以内ならば対象サブコンテンツを決定するが、両色相の差が所定のしきい値TCを超える場合は対象サブコンテンツを決定しない。処理対象決定部161Aは、差分画像の色と表示画像の該当する部分の色とが同じ色相の場合、複数のサブコンテンツのうちから差分画像と同じ位置、または、その近傍に配置されたサブコンテンツを対象サブコンテンツに決定し、対象サブコンテンツの位置情報をコンテンツ改変部169に出力する。
表示画像と差分画像の色相が所定のしきい値TC以内の場合は、発表者または参加者がホワイトボード221に描画したペンの色相が、表示画像と同じかまたは類似する色相の場合に相当する。この場合には、発表者または参加者が、ペンでホワイトボード221にメモを描画したとみなせる。処理対象決定部161Aは、対象サブコンテンツの位置情報をコンテンツ改変部169に出力するので、コンテンツ改変部169においては、発表者または参加者が追加した描画が表示画像と重ならないように挿入領域を確保した改変コンテンツが生成される。
一方、表示画像と差分画像の色相が所定のしきい値TCより大きい場合、発表者または参加者がホワイトボード221に描画したペンの色相が、表示画像と異なる色相の場合に相当する。この場合は、発表者または参加者が、ペンでホワイトボード221に表示画像を補完するための情報を描画したとみなせる。処理対象決定部161Aは、対象サブコンテンツの位置情報をコンテンツ改変部169に出力しないので、表示画像がそのまま表示され、描画を表示画像に重畳した状態が維持される。
したがって、発表者または参加者は、ホワイトボード221に描画するペンの色を、選択することによって、改変コンテンツを生成させるか否かを決定することができる。
図13は、表示データおよび撮像画像の一例を示す図である。図13を参照して、ソースコンテンツである表示データ301および表示部分321は、図6に示した表示データ301および表示部分321と同じである。表示部分321内に、撮像画像351、352が含まれる。撮像画像351は文字列「down」を含み、文字列「down」は、サブコンテンツ315の色相と同じ色相としている。撮像画像352は文字列「保留」を含み、文字列「保留」は、サブコンテンツ314の色相と異なる色相としている。なお,撮像画像351,352は、点線で示しているが、実際には点線は存在しない。この場合、サブコンテンツ314が対象サブコンテンツに決定される。ここでは、サブコンテンツ314の下方を配置位置にする場合を例に説明する。
図14は、改変コンテンツの一例を示す第5の図である。図14に示す改変コンテンツは、図13に示したソースコンテンツである表示データ301を改変した一例である。図14を参照して、改変コンテンツ301E,301Fは、図9に示した改変コンテンツ301E,301Fと同じであり、新たなページのページデータが改変コンテンツ301Fとして生成され、その改変コンテンツ301Fに表示部分321から除外されたサブコンテンツ317が配置される。また、図13において、表示データ301の表示部分321に含まれる残りのサブコンテンツ313〜316のうち対称コンテンツ314の下方に決定された配置位置より上側に配置されたサブコンテンツ313,314を上方に移動し、配置位置より下側に配置されたサブコンテンツ315,316を下方に移動することにより、図14に示すように対象サブコンテンツ314の下方に空白の挿入領域331Cを配置した改変コンテンツ301Eが生成される。
改変コンテンツ301Eの表示部分321は、改変コンテンツ301Eに含まれる6つのサブコンテンツ311〜316のうちのサブコンテンツ313〜316を含む。改変コンテンツ301Eの表示部分321において、サブコンテンツ313が最上部に配置され、その下にサブコンテンツ314が所定の間隔で配置され、サブコンテンツ315およびサブコンテンツ316が所定の間隔で最下部に配置され、サブコンテンツ314の下部に挿入領域331Cが配置されている。
表示データ301が改変コンテンツ301E,301Fに変更になった後でも、改変コンテンツ301Eの表示部分321が表示画像としてホワイトボード221に投影されると、撮像画像351,352の表示部分321における位置は変動しない。このため、撮像画像352は、サブコンテンツ314に重畳されたままであるが、撮像画像352はサブコンテンツ314と異なる色相なので、ユーザは両者を判別することができる。一方、撮像画像351は、改変コンテンツ301Eの挿入領域331Cに配置されるので、ユーザは、撮像画像351の文字列「down」がサブコンテンツ315と同じ色相であっても両者を判別することができる。
図15は、表示処理の一例を示す第2のフローチャートである。表示処理は、第2の実施の形態におけるMFP100が備えるCPU111が、ROM113またはフラッシュメモリ119Aに記憶された表示プログラムを実行することによりCPU111により実行される処理である。図15を参照して、図10と異なる点は、ステップS06〜ステップS19に代えて、ステップS51〜ステップS65が実行される点である。ステップS01〜ステップS05、およびステップS20〜ステップS29の処理は、図10に示した処理と同じなのでここでは説明を繰り返さない。
CPU111は、ステップS05において挿入指示を受け付けると、ステップS51において、カメラ機能付プロジェクタ210にホワイトボード221を撮像させ、カメラ機能付プロジェクタ210からカメラ211が撮像して得られる撮像画像を取得する。
そして、ステップS04またはステップS29においてカメラ機能付プロジェクタ210に出力した表示画像と、ステップS51において取得された撮像画像とを比較する(ステップS52)。次のステップS53においては、表示画像と撮像画像とに相違する領域が存在するか否かを判断する。表示画像と撮像画像との間で相違する相違領域が存在すれば処理をステップS54に進めるが、そうでなければ処理をステップS05に戻す。
ステップS54においては、表示画像と撮像画像との間で相違する相違領域またはその近傍に配置されたサブコンテンツを対象サブコンテンツに決定する。そして、撮像画像と表示画像とから差分画像を生成する(ステップS55)。そして、差分画像と表示画像とを比較し、表示画像中で差分画像と同じ位置の色相と、差分画像の色相とを比較する(ステップS56)。色相の差が所定値TC以下か否かを判断する。色相の差が所定値TC以下ならば(ステップS57でYES)、処理をステップS58に進めるが、そうでなければ(ステップS57でNO)、処理をステップS66に進める。
ステップS58においては、図11に示した改変コンテンツ生成処理を実行し、処理をステップS59に進める。ステップS59においては、改変コンテンツの表示部分を表示画像に設定する。次のステップS60においては、表示画像をカメラ機能付プロジェクタ210に出力し、表示画像をホワイトボード221に投影させる。表示画像は、挿入領域の画像を含み、挿入領域は空白の画像なので、発表者または参加者であるユーザは、ホワイトボード221に描画した部分と、表示画像とが重ならない画像を見ることができる。
ステップS61においては、撮像画像を取得する。カメラ機能付プロジェクタ210のカメラ211が撮像した画像を、カメラ機能付プロジェクタ210から取得する。そして、表示画像と撮像画像とから差分画像を生成する(ステップS62)。差分画像は、撮像画像に存在し、表示画像に存在しない画像であり、ホワイトボード221に手書きで追加された描画を含む。次のステップS63においては、差分画像を文字認識する(ステップS63)。これにより、差分画像中の文字がテキストデータとして得られる。
そして、文字認識することにより得られるテキストデータを、ステップS58において生成された改変コンテンツおよび決定された挿入位置と関連付けてHDD116に記憶する(ステップS64)。次のステップS65においては、表示画像と差分画像とを合成した合成画像を生成し、処理をステップS20に進める。表示画像には、ステップS59において改変コンテンツの表示部分が設定されており、差分画像は発表者または参加者がホワイトボード221に手書きで追加した画像を含むので、合成画像は、改変コンテンツに手書きの画像を合成した画像となる。改変コンテンツは、手書きの画像と重畳する部分に挿入領域を含むので、手書きの画像が他のサブコンテンツと重畳しない合成画像が生成される。次のステップS20においては、合成画像が新たな表示画像に設定されて、カメラ機能付プロジェクタ210に出力され、合成画像がホワイトボード221に表示される。
一方、ステップS66においては、ステップS63と同様に、差分画像を文字認識する。次のステップS67においては、文字認識して得られるテキストデータをステップS54において対象サブコンテンツに決定されたサブコンテンツと関連付けて、HDD116に記憶する。そして、表示画像と差分画像とを合成した合成画像を生成し、処理をステップS20に進める。次のステップS20においては、合成画像が新たな表示画像に設定されて、カメラ機能付プロジェクタ210に出力され、合成画像がホワイトボード221に表示される。処理がステップS29から進む場合、表示される合成画像の表示部分は、表示データに手書きの画像を合成した画像である。対象コンテンツと、手書きの画像とは色相が異なるので、重なっていても発表者または参加者は、対象コンテンツおよび手書きの画像とを区別することができ、それぞれを判別することができる。
<改変コンテンツの変形例>
次に、改変コンテンツの変形例について説明する。図16は、表示データと表示部分との関係の一例を示す第3の図である。図16を参照して、ソースコンテンツである表示データ351は、6つのサブコンテンツ361〜366を含む。4つのサブコンテンツ361〜364は、文字が表されており、サブコンテンツ365はグラフが表されており、サブコンテンツ366は写真が表されている。
表示部分321は、表示データ351のサイズと同じであり、表示データ351のすべてが表示部分321に含まれる。図16においては、音声自動トレース機能がONに設定されており、音声認識される文字列が、矢印323で示される行に含まれる場合を例に示している。矢印323で示される行は、サブコンテンツ364に含まれるため、サブコンテンツ364が対象サブコンテンツに決定される。ここでは、対象サブコンテンツ364の下方に空白の領域がないので、対象サブコンテンツ364の上側が配置位置に決定される。
図17は、改変コンテンツの一例を示す第6の図である。図17に示す改変コンテンツは、図16に示した表示データを改変した一例である。図17を参照して、改変コンテンツ351Aは、図16に示した表示データ351と同様に、6つのサブコンテンツ361〜366を含むが、2つのサブコンテンツ363,364の位置が異なる。サブコンテンツ363は、サブコンテンツ361,362の右側に配置され、サブコンテンツ364は元々サブコンテンツ363が配置されていた位置に配置される。また、改変コンテンツ351Aは、サブコンテンツ361が配置されていた位置に挿入領域331Dを含み、サブコンテンツ363が移動されたことを示す矢印371と、サブコンテンツ364が移動されたことを示す矢印372とを含む。
改変コンテンツ351Aが表示画像としてホワイトボード221に投影されると、改変コンテンツ351Aは挿入領域331Dを含むので、ユーザは、ホワイトボード221に投影された表示画像の挿入領域331Dに手書きで描画が可能になる。また、ホワイトボード221に描画された表示画像は、対象コンテンツ364の近傍となるので、ユーザは対象コンテンツ364に関連する情報を手書きで追加することができる。
また、改変コンテンツ351Aは、図16に示した表示データ351と同様にサブコンテンツ361〜366を含むので、挿入領域331Dが表示される前後で表示される内容を変えることなく、挿入領域331Dを表示することができる。また、挿入領域331Dが表示される位置が対象サブコンテンツ314の近傍であることをユーザは容易に理解することができる。
さらに、改変コンテンツ351Aは、矢印371,372を含むので、表示データ351と改変コンテンツ351Aとの違いを容易に把握することができる。
図18は、表示データおよび手書画像の一例を示す図である。図18を参照して、ソースコンテンツである表示データ351および表示部分321は、図16に示した表示データ351および表示部分321と同じである。表示部分321内に、手書画像381が含まれる。手書画像381は、撮像画像と同じである。手書画像381はサブコンテンツ363をマスキングする画像を含み、サブコンテンツ363の色相と同じ色相としている。ここでは、手書画像381をサブコンテンツ363に重畳した線画で示している。なお,手書画像381を点線で囲んで示しているが、実際には点線は存在しない。
図18においては、音声自動トレース機能がONに設定されており、音声認識される文字列が、矢印323で示される行に含まれる場合を例に示している。矢印323で示される行は、サブコンテンツ364に含まれるため、サブコンテンツ364が対象サブコンテンツに決定される。ここでは、対象サブコンテンツ364の上側が配置位置に決定される。
図19は、改変コンテンツの一例を示す第7の図である。図19に示す改変コンテンツは、図18に示した表示データを改変した一例である。まず、図18を参照して、表示データ351に含まれるサブコンテンツ361〜366のうち手書画像381によってマスキングされた対象コンテンツ363を表示部分321の外に配置する。この場合、図19を参照して、新たなページのページデータが改変コンテンツ351Cとして生成され、その改変コンテンツ351Cに表示部分321から除外されたサブコンテンツ363が配置される。また、図18において、サブコンテンツ363が配置されていた位置に挿入領域331Eを配置した改変コンテンツ331Eが生成される。
以上説明したように本実施の形態における会議システム1は、MFP100において、ソースコンテンツである表示データから複数のサブコンテンツを抽出し、複数のサブコンテンツのうちから1つの対象サブコンテンツを決定し、表示データ中で対象サブコンテンツの近傍の配置位置を基準にして定まる位置に入力コンテンツである手書画像を配置するための挿入領域を追加した改変コンテンツを生成し、改変コンテンツに付加された挿入領域に、手書画像を配置した合成画像をカメラ機能付プロジェクタ210に表示される。このため、表示データの表示部分の内容に変更を加えることなく手書画像を表示データに含まれるサブコンテンツと重ならないように配置することができる。
また、コンテンツ改変部169は、配置変更部171を含み、表示データの表示部分に含まれる複数のサブコンテンツの配置を変更する。このため、表示されている複数のサブコンテンツの配置が変更されるので、配置を変更する前後で表示内容が変更しない。このため、表示データの表示内容を変更することなく、手書画像を配置することができる。
また、コンテンツ改変部169は、縮小部173を含み、表示データの表示部分含まれる複数のサブコンテンツを縮小し、縮小後の複数のサブコンテンツの配置を変更する。このため、表示されている複数のサブコンテンツが縮小され、配置が変更されるので、縮小および配置を変更する前後で表示内容が変更しない。このため、表示データの表示内容を変更することなく、手書画像を配置することができる。
また、コンテンツ改変部169は、除外部175を含み、表示データの表示部分含まれる複数のサブコンテンツの少なくとも1つを表示部分の外に配置し、残りのサブコンテンツの配置を変更する。このため、表示されている複数のサブコンテンツをできるだけ残して、配置が変更されるので、配置を変更する前後で表示内容を可能な限り変更しないようにすることができる。このため、表示データの表示内容の変更をできるだけ少なくして、手書画像を配置することができる。
また、第2の実施の形態におけるMFP100は、表示データに含まれる複数のサブコンテンツのうち、表示画像中において手書画像と重なる部分に位置するサブコンテンツを対象コンテンツに決定する。このため、手書画像と重なるサブコンテンツを、見やすくすることができる。
さらに、MFP100は、ソースコンテンツである表示データ、改変コンテンツおよび入力コンテンツである手書画像を関連付けて記憶し、手書画像を、改変コンテンツに配置される挿入位置および対象サブコンテンツがソースコンテンツに配置される位置とさらに関連付けて記憶する。このため、表示データ、改変コンテンツおよび手書画像から合成画像を再現することができる。
なお、上述した実施の形態においては、会議システム1および情報処理装置の一例としてMFP100を説明したが、図10および図11、または図15に記載した処理をMFP100に実行させる表示方法またはその表示方法をMFP100を制御するCPU111に実行させるための表示プログラムとして発明を捉えることができるのは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
<付記>
(1) 前記配置変更手段は、前記表示装置に表示されている複数のサブコンテンツ間の間隔を縮小する、請求項3に記載の会議システム。