以下に添付図面を参照して、表示装置、カメラ位置制御方法、およびプログラムの実施の形態を詳細に説明する。以下の説明では、表示装置、カメラ位置制御方法、およびプログラムを画像処理システムに適用した例について説明する。
<システムの概要>
図1は、本実施の形態にかかる画像処理システムの全体構成の一例を示す図である。図1に示すように、本実施の形態では、画像処理システムは、説明を簡略化するために、2台の電子黒板2a,2bおよびこれに付随する電子ペン4a,4b等を有しているが、3台以上の電子黒板や電子ペン等を有していても良い。
図1に示すように、画像処理システム1は、複数の電子黒板2a,2b(表示装置の一例)、複数の電子ペン4a,4b、USB(Universal Serial Bus)メモリ5a,5b、ノートPC(Personal Computer)6a,6b、テレビ(ビデオ)会議端末7a,7b、およびPC8を有する。また、電子黒板2a,2bおよびPC8は、通信ネットワーク9を介して通信可能に接続されている。さらに、複数の電子黒板2a,2bは、それぞれディスプレイ3a,3b(表示画面の一例)が設けられている。
また、電子黒板2aは、電子ペン4aによって生じたイベント(ディスプレイ3a上での電子ペン4aのペン先または電子ペン4aのペン尻によるタッチ操作)により描画されたストローク画像等の各種画像を、ディスプレイ3aに表示することができる。また、電子黒板2aは、電子ペン4aだけでなく、ユーザの手Ha等によって生じたイベント(拡大、縮小、ページめくり等のジェスチャ)に基づいて、ディスプレイ3a上に表示している各種画像を変更することもできる。また、電子黒板2aは、ディスプレイ3aの前方の撮像範囲を撮像可能に設けられ、かつ当該ディスプレイ3aの左右方向に当該撮像範囲を移動可能なカメラcaを有する。
また、電子黒板2aは、USBメモリ5aが接続可能であり、電子黒板2aはUSBメモリ5aからPDF(Portable Document Format)等の電子ファイルを読み出したり、電子黒板2aはUSBメモリ5aに電子ファイルを記録したりすることができる。また、電子黒板2aは、DisplayPort、DVI(Digital Visual Interface)、HDMI(High-Definition Multimedia Interface:登録商標)、およびVGA(Video Graphics Array)等の規格による通信が可能なケーブル10a1を介して、ノートPC6a等の映像出力機器に接続されている。そして、電子黒板2aは、ディスプレイ3aに対するタッチ操作に応じてイベントを発生させ、このイベントを示すイベント情報を、マウスやキーボード等の入力装置からのイベントと同様に、ノートPC6aに送信する。また、電子黒板2aは、上記規格による通信が可能なケーブル10a2を介して、テレビ(ビデオ)会議端末7aと接続されている。ノートPC6a、およびテレビ会議端末7aは、Bluetooth(登録商標)等の各種無線通信プロトコルに準拠した無線通信により、電子黒板2aと通信してもよい。
一方、電子黒板2bが設置されている他の拠点では、上記と同様に、ディスプレイ3bを備えた電子黒板2b、電子ペン4b、USBメモリ5b、ノートPC6b、テレビ会議端末7b、ケーブル10b1、ケーブル10b2、カメラcbが利用される。更に、ユーザの手Hb等によって生じたイベントに基づいて、ディスプレイ3b上に表示されている各種画像を変更させることもできる。
これにより、一の拠点で電子黒板2aのディスプレイ3a上に表示された各種画像は、他の拠点で電子黒板2bのディスプレイ3b上にも表示され、逆に他の拠点で電子黒板2bのディスプレイ3b上に表示された各種画像は、一の拠点で電子黒板2aのディスプレイ3a上に表示される。このように、画像処理システム1では、遠隔地において同じ画像を共有する遠隔共有処理を行うことができるため、遠隔地での会議等に用いると、非常に便利である。
以下では、複数の電子黒板2a,2b等のうち任意の電子黒板を示す場合には「電子黒板2」と示す。複数のディスプレイ3a,3bのうち任意のディスプレイを示す場合には「ディスプレイ3」と示す。複数の電子ペン4a,4bのうち任意の電子ペンを示す場合には「電子ペン4」と示す。複数のUSBメモリ5a,5bのうち任意のUSBメモリを示す場合には「USBメモリ5」と示す。複数のノートPC6a,6bのうち任意のノートPCを示す場合には「ノートPC6」と示す。複数のテレビ会議端末7a,7bのうち任意のテレビ会議端末を示す場合には「テレビ会議端末7」と示す。また、複数のユーザの手Ha,Hbのうち任意の手を示す場合には「手H」と示す。複数のケーブル10a1,10a2,10b1,10b2のうち任意のケーブルを示す場合には「ケーブル10」と示す。また、複数のカメラca,cbのうち任意のカメラを示す場合には、「カメラc」と示す。
また、本実施の形態では、表示装置の一例として、電子黒板2を説明するが、これに限るものではなく、表示装置の他の例として、電子看板(デジタルサイネージ)、スポーツや天気予報等で利用されるテレストレータ、または遠隔画像(映像)診断装置等であってもよい。また、情報処理端末の一例として、ノートPC6を説明するが、これに限るものではなく、情報処理端末の他の例として、デスクトップ型PCやタブレット型PC、PDA(Personal Digital Assistant)、デジタルビデオカメラ、デジタルカメラ、ゲーム機等の画像フレームを供給可能な端末であってもよい。さらに、通信ネットワーク9には、インターネット、LAN(Local Area Network)、携帯電話通信網等が含まれる。また、本実施形態では、記録媒体の一例として、USBメモリ5を説明するが、これに限るものではなく、記録媒体の他の例として、SDカード等の各種記録メディアであってもよい。
<電子黒板のハードウェア構成>
続いて、図2Aを用いて、本実施の形態の電子黒板2のハードウェア構成を説明する。図2Aは、本実施の形態にかかる電子黒板のハードウェア構成の一例を示す図である。
図2Aに示すように、電子黒板2は、電子黒板2全体を制御する制御部121と、電子黒板2用のプログラム等の各種データを記憶するSSD(Solid State Drive)104、通信ネットワーク9との通信を制御するネットワークI/F105、およびUSBコネクタ122を介してUSBメモリ5との通信を制御する外部記憶コントローラ106を備えている。本実施の形態では、制御部121は、電子回路でありかつ電子黒板2全体の動作を制御するプロセッサとしてのCPU(Central Processing Unit)101、IPL(Initial Program Loader)等のCPU101の駆動に用いられるホワイトボードアプリケーションやテレビ会議アプリケーション等の各種プログラムを記憶するROM(Read Only Memory)102、およびCPU101のワークエリアとして使用されるRAM(Random Access Memory)103を有する。
ここで、ホワイトボードアプリケーションは、後述するタッチパネル115により検出されたタッチ操作等に応じて、ディスプレイ3に対する各種画像の表示処理等を実行するアプリケーションである。テレビ会議アプリケーションは、カメラcの撮像により得られた撮像画像や後述するマイク126により集音された音等を、予め設定された外部装置(本実施の形態では、他の電子黒板2)に送信したり、当該外部装置から撮像画像や音等を受信したりするアプリケーションである。
また、電子黒板2は、USBコネクタ123を介して、ノートPC6やタブレットやスマートフォン等の映像出力機器と接続され、当該映像出力機器から各種情報を取得するキャプチャデバイス111を有する。また、キャプチャデバイス111は、VGA(Video Graphics Array)コネクタ124を介して、ノートPC6等の映像出力機器のディスプレイに対して映像情報を静止画または動画として表示させる。本実施の形態では、キャプチャデバイス111は、VGAコネクタ124を介して、ノートPC6等の映像出力機器と接続されているが、これに限定するものではなく、例えば、HDMI(High Definition Multimedia Interface)やDP(Display Port)等の規格に従ったコネクタを介して、ノートPC6等の映像出力機器と接続されていても良い。また、キャプチャデバイス111は、USBコネクタ125を介して、マイク126から、当該マイク126により集音された音を取得する。ここで、マイク126は、電子黒板2の周囲の音を集音可能に設けられている。また、電子黒板2は、ディスプレイ3に表示させる各種画像を生成するGPU(Graphics Processing Unit)112、および当該GPU112により生成された各種画像をディスプレイ3やテレビ会議端末7へ出力するディスプレイコントローラ113を備えている。
さらに、電子黒板2は、赤外線遮断方式等によって、ディスプレイ3上でのタッチ操作を検出するタッチパネル115(検出部の一例)を有する。本実施の形態では、タッチパネル115は、当該タッチパネル115全体の動作を制御するセンサコントローラ114、ディスプレイ3上に赤外線を照射する赤外線LED127と、ディスプレイ3上でタッチ操作による赤外線の遮光により発生した影を検出するカメラ128と、当該カメラ128による影の検出結果に基づいて、ディスプレイ3上でのタッチ操作を検出するタッチパネルドライバ129と、を有する。
また、タッチパネル115としては、赤外線遮断方式に限らず、静電容量の変化を検知することによりディスプレイ3上でのタッチ操作を検出する静電容量方式のタッチパネル、対向する2つの抵抗膜の電圧変化によってディスプレイ3上でのタッチ操作を検出する抵抗膜方式のタッチパネル、接触物体が表示部に接触することによって生じる電磁誘導を検知してディスプレイ3上でのタッチ操作を検出する電磁誘導方式のタッチパネルなどの種々の検出手段を用いてもよい。
また、電子黒板2は、電子ペンコントローラ116を備えている。この電子ペンコントローラ116(検出部の一例)は、電子ペン4と通信することで、ディスプレイ3上でのペン先の接触やペン尻によるタッチ操作を検出する。電子ペンコントローラ116が、電子ペン4のペン先およびペン尻だけでなく、電子ペン4のユーザが握る部分や、その他の電子ペン4の部分によるディスプレイ3上でのタッチ操作を検出するようにしても良い。
また、電子黒板2は、カメラcを備えている。本実施の形態では、カメラcは、ディスプレイ3の左右方向に移動することにより、撮像範囲を移動させる。具体的には、カメラcは、Webカメラ130と、モータ132と、を有する。Webカメラ130は、ディスプレイ3の前方の撮像範囲を撮像可能に設けられている。また、Webカメラ130は、ディスプレイ3の上端に沿って移動して、当該ディスプレイ3の前方の撮像範囲を移動可能である。モータ132は、Webカメラ130を、ディスプレイ3の上端に沿って移動させる。
さらに、電子黒板2は、制御部121、SSD104、ネットワークI/F105、外部記憶コントローラ106、キャプチャデバイス111、GPU112、タッチパネル115、電子ペンコントローラ116、およびカメラcを、図2Aに示すように電気的に接続するためのアドレスバスやデータバス等のバスライン120を備えている。電子黒板2用のプログラムは、CD−ROM等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
図2Bは、本実施の形態にかかる電子黒板が有するカメラの構成の一例を説明するための図である。図2Bに示すように、本実施の形態では、Webカメラ130は、ディスプレイ3の背面に取り付けられている。本実施の形態では、Webカメラ130には、バネSおよびベルトbを介して、モータ132に接続されている。そして、Webカメラ130は、モータ132が回転駆動することによって、ディスプレイ3の上端に沿って左右方向に移動可能である。例えば、Webカメラ130は、図2B(b)に示すように、モータ132が回転駆動することによって、ベルトbが巻き取られてバネSが縮むと、ディスプレイ3の前方から見て、左側に移動する。一方、Webカメラ130は、図2B(a)に示すように、モータ132が回転駆動することによって、バネSが伸びると、ディスプレイ3の前方から見て、右側に移動する。
本実施の形態では、電子黒板2は、Webカメラ130を移動させることによって、Webカメラ130の撮像範囲を、ディスプレイ3の左右方向に移動させているが、Webカメラ130の撮像範囲を、ディスプレイ3の左右方向に移動させるものであれば、これに限定するものではない。
<電子黒板の機能構成>
続いて、図3〜図16を用いて、電子黒板2の機能構成について説明する。まず、図3を用いて、電子黒板2の全体的な機能構成について説明する。図3は、本実施の形態にかかる電子黒板の機能ブロックの一例を示す図である。
電子黒板2は、図2Aに示すハードウェア構成およびプログラムによって、図3に示す各機能構成を有する。電子黒板2は、最初に遠隔共有処理を開始する「主催装置」となり得ると共に、既に開始されている遠隔共有処理に後から参加する「参加装置」にもなり得る。ここで、遠隔共有処理とは、複数の電子黒板2間において、同様の画像をディスプレイ3に表示させる処理である。電子黒板2は、大きく分けて、クライアント部20およびサーバ部90を含む。クライアント部20およびサーバ部90は、電子黒板2の1台の筐体内で実現される機能である。そして、電子黒板2が主催装置となる場合には、この電子黒板2では、クライアント部20およびサーバ部90が実現される。また、電子黒板2が参加装置となる場合には、この電子黒板2では、クライアント部20は実現されるが、サーバ部90は実現されない。すなわち、図1において、電子黒板2aが主催装置で、電子黒板2bが参加装置となる場合、電子黒板2aのクライアント部20は、同じ電子黒板2a内に実現されたサーバ部90を介して、他の電子黒板2bのクライアント部20と通信を行う。一方、電子黒板2bのクライアント部20は、他の電子黒板2a内に実現されたサーバ部90を介して、他の電子黒板2aのクライアント部20と通信を行う。
〔クライアント部20の機能構成〕
続いて、図3を用いて、クライアント部20の機能構成について説明する。クライアント部20は、映像取得部21、座標検知部22、自動調整部23、接触検知部24、イベント振分部25、操作処理部26、ジェスチャ処理部27、映像重畳部28、画像処理部30、および通信制御部60を有する。
映像取得部21は、ケーブル10に接続されたノートPC6等の映像出力機器で表示される出力画像の信号である画像信号を取得する。映像取得部21は、映像出力機器から画像信号を取得すると、この画像信号を解析して、この画像信号によって形成される出力画像のフレームの解像度や、このフレームの更新頻度などの画像情報を導出し、画像処理部30に出力する。また、映像取得部21は、電子黒板2が備えるカメラcの撮像により得られた撮像画像を取得し、当該取得した撮像画像を画像処理部30に出力する。
座標検知部22は、ディスプレイ3上でユーザによって生じたイベント(ディスプレイ3上でのユーザの手Hによるタッチ操作等)が検出された検出位置の座標を検出する。すなわち、座標検知部22は、タッチパネル115によってディスプレイ3上でのタッチ操作が検出された検出位置の座標を検出する。また、座標検知部22は、ディスプレイ3上でのユーザの手H等がタッチ操作した面積も検出する。自動調整部23は、電子黒板2の起動時に起動され、タッチパネル115が座標検知部22に適切な値を出力できるように、タッチパネル115の光センサ方式におけるセンサーカメラの画像処理のパラメータを調整する。
接触検知部24は、ユーザによって生じたイベント(ディスプレイ3上での電子ペン4のペン先または電子ペン4のペン尻によるタッチ操作等)が検出された検出位置の座標を検出する。すなわち、接触検知部24は、電子ペンコントローラ116によってディスプレイ3上での電子ペン4のタッチ操作が検出された検出位置の座標を検出する。イベント振分部25は、座標検知部22によって検出された座標と接触検知部24によって検出された座標を、ストローク描画、UI操作、およびジェスチャ操作の各イベントに振り分ける。
ここで、「ストローク描画」は、ディスプレイ3上に後述のストローク画像B(図16参照)が表示されている場合に、ユーザがディスプレイ3に電子ペン4を接触させた状態で、電子ペン4を移動させ、最終的にディスプレイ3上から電子ペン4を離すまでのイベントである。このストローク描画により、例えば、アルファベット「S」や「T」等がディスプレイ3上に描画される。なお、この「ストローク描画」には、画像を描画するだけでなく、既に描画された画像を削除したり、描画された画像を編集したりするイベントも含まれる。
「UI操作」は、ディスプレイ3上に後述のUI画像A(図16参照)が表示されている場合に、ユーザが電子ペン4または手Hによって所定の位置にタッチ操作するイベントである。このUI操作により、例えば、電子ペン4により描画される線の色や幅等が設定される。「ジェスチャ操作」は、ディスプレイ3上に後述のストローク画像B(図16参照)が表示されている場合に、ユーザが手Hでディスプレイ3にタッチ操作したり移動させたりするイベントである。このジェスチャ操作により、例えば、ユーザがディスプレイ3に手Hを接触させた状態で手Hを移動させることで、画像の拡大(若しくは縮小)、表示領域の変更、またはページ切り換え等を行うことができる。
操作処理部26は、イベント振分部25によってUI操作と判断されたものから、イベントが発生されたUIの要素に従って、各種処理を実行する。このUIの要素としては、例えば、ボタン、リスト、チェックボックス、テキストボックスが挙げられる。ジェスチャ処理部27は、イベント振分部25によってジェスチャ操作と判断されたものに対応した処理を実行する。
映像重畳部28は、後述の表示重畳部36で重畳された画像を映像出力機器(ディスプレイ3等)に対して表示する。また、映像重畳部28は、映像出力機器(ノートPC6等)からの出力画像に対して、他の映像出力機器(テレビ会議端末7等)から送られて来た撮像画像をピクチャ・イン・ピクチャする。さらに、映像重畳部28は、ピクチャ・イン・ピクチャされてディスプレイ3の一部に表示された撮像画像を、ディスプレイ3の全体に表示させるための切り替えを行う。
画像処理部30は、ディスプレイ3に表示する出力画像のレイヤの重畳処理(図16参照)等を行う。画像処理部30は、画像取得部31、ストローク処理部32、UI画像生成部33、背景生成部34、レイアウト管理部35、表示重畳部36、ページ処理部37、ファイル処理部40、ページデータ記憶部300、および遠隔ライセンス管理テーブル記憶部310を有している。
画像取得部31は、映像取得部21により取得された画像信号によって形成される出力画像、または他の電子黒板2に接続された映像出力機器からの出力画像を取得する。画像取得部31は、取得した出力画像を、ページ処理部37に出力する。出力画像は、映像出力機器(ノートPC6等)において表示される出力画像C(図16参照)に相当する。また、画像取得部31は、通信制御部60により他の電子黒板2から受信した撮像画像(他の電子黒板2のカメラcの撮像により得られた撮像画像)を、表示重畳部36に出力する。さらに、画像取得部31は、映像取得部21により取得された撮像画像(電子黒板2のカメラcの撮像により得られた撮像画像)を、通信制御部60に出力する。ストローク処理部32は、イベント振分部25によって割り振られたストローク描画に係るイベントに基づいて、ストローク画像B(図16参照)を描画したり、描画されたストローク画像Bを削除したり、描画されたストローク画像Bを編集する。また、このストローク描画に基づいたストローク画像Bの描画、削除、編集の各結果は、後述の操作データとして、操作データ記憶部840(図5参照)に記憶される。UI画像生成部33は、電子黒板2に予め設定されているUI(ユーザインターフェース)画像A(図16参照)を生成する。
背景生成部34は、ページ処理部37がページデータ記憶部300から読み出したページデータのうちのメディアデータ(背景画像D(図16参照))を、ページ処理部37から受信する。背景生成部34は、この受信したメディアデータを表示重畳部36に出力する。背景画像Dは、例えば、無地、グリッド表示等である。
レイアウト管理部35は、表示重畳部36に対して、画像取得部31、ストローク処理部32、およびUI画像生成部33(または背景生成部34)から出力された各種画像のレイアウトを示すレイアウト情報を管理している。これにより、レイアウト管理部35は、表示重畳部36に対して、出力画像Cおよびストローク画像B(図16参照)を、UI画像Aおよび背景画像D(図16参照)中のどの位置に表示させるかまたは非表示にさせるかを指示することができる。
表示重畳部36は、レイアウト管理部35から出力されたレイアウト情報に基づき、画像取得部31、ストローク処理部32、およびUI画像生成部33(背景生成部34)から出力された各種画像を重畳した重畳画像を生成する。また、表示重畳部36は、画像取得部31により取得した撮像画像を、ピクチャ・イン・ピクチャによって重畳画像に重畳する。
ページ処理部37は、ストローク画像B(図16参照)と出力画像C(図16参照)を、1つのページデータとしてページデータ記憶部300に記憶する。ストローク画像B(図16参照)は、ストローク配列データID(図6参照)で示されるストローク配列データとして、ページデータの一部とする。出力画像C(図16参照)は、メディアデータID(図6参照)で示されるメディアデータとして、ページデータの一部とする。そして、メディアデータは、ページデータ記憶部300から読み出されると、背景画像D(図16参照)として取り扱われる。
また、ページ処理部37は、ページデータ記憶部300に記憶されたページデータのうちのメディアデータを、背景生成部34を介して表示重畳部36に送信することで、映像重畳部28が背景画像D(図16参照)をディスプレイ3に再表示させることができる。また、ページ処理部37は、ページデータのうちのストローク配列データ(各ストロークデータ)を、ストローク処理部32に戻すことで、ストロークの再編集ができる状態にすることができる。更に、ページ処理部37は、ページデータを削除したり複製したりすることもできる。
すなわち、ページ処理部37がページデータ記憶部300にページデータを記憶する時点でディスプレイ3上に表示されている出力画像C(図16参照)は、一旦、ページデータ記憶部300に記憶され、その後にページデータ記憶部300から読み出される際には、背景画像D(図16参照)を示すメディアデータとして読み出される。そして、ページ処理部37は、ページデータ記憶部300から読み出したページデータのうち、ストローク画像B(図16参照)を示すストローク配列データを、ストローク処理部32に出力する。また、ページ処理部37は、ページデータ記憶部300から読み出したページデータのうち、背景画像D(図16参照)を示すメディアデータを、背景生成部34に出力する。
表示重畳部36は、画像取得部31からの出力画像C(図16参照)、ストローク処理部32からのストローク画像B(図16参照)、UI画像生成部33からのUI画像A(図16参照)、および背景生成部34からの背景画像D(図16参照)を、レイアウト管理部35によって指定されたレイアウトに従って重畳する。これにより、図16に示されているように、各画像が重なってもユーザが見える順に、UI画像A、ストローク画像B、出力画像C、および背景画像Dの各レイアの構成となった画像を生成する。
また、表示重畳部36は、出力画像C(図16参照)と背景画像D(図16参照)を切り替えて、UI画像A(図16参照)およびストローク画像B(図16参照)に対して排他的に重畳することも可能である。例えば、UI画像A(図16参照)、ストローク画像B(図16参照)および出力画像C(図16参照)が表示されている状態で、電子黒板2と映像出力機器(ノートPC6等)との間のケーブル10が抜かれた場合には、レイアウト管理部35によって、出力画像C(図16参照)を重畳対象から外し、背景画像D(図16参照)を表示させることができる。この場合に、また、表示重畳部36は、表示の拡大、表示の縮小、表示領域の移動処理も行う。
ページデータ記憶部300は、図6に示すページデータを記憶する。図6は、本実施の形態にかかる電子黒板が記憶するページデータの一例を示す概念図である。ページデータは、ディスプレイ3に表示される1ページ分のページデータ(ストローク配列データ(各ストロークデータ)およびメディアデータ)である。
ここで、図6〜9を用いて、ページデータの詳細について説明する。ページデータは、図6に示すように、各ページデータを識別するためのページデータID、このページデータの表示を開始した時刻を示す開始時刻、ストロークやジェスチャ等によるページの内容の書き換えが行われなくなった時刻を示す終了時刻、電子ペン4やユーザの手Hによるストロークによって生じたストローク配列データを識別するためのストローク配列データID、およびメディアデータを識別するためのメディアデータIDが関連付けて記憶されている。ストローク配列データは、ストローク画像B(図16参照)をディスプレイ3上に表示するためのデータである。メディアデータは、背景画像D(図16参照)をディスプレイ3上に表示するためのデータである。
このようなページデータにより、例えば、ユーザが電子ペン4によってアルファベット「S」を描く場合は一筆書きとなるため、ストローク配列データIDが1つで一文字のアルファベット[S]が示される。ところが、ユーザが電子ペン4によってアルファベット「T」を描く場合、二筆書きとなるため、ストローク配列データIDが2つで一文字のアルファベット「T」が示されることになる。
また、ストローク配列データは、図7に示す詳細な情報を含む。図7は、本実施の形態にかかる電子黒板が記憶するストローク配列データの一例を示す概念図である。図7に示すように、1つのストローク配列データは、複数のストロークデータによって表される。そして、1つのストロークデータは、このストロークデータを識別するためのストロークデータID、1つのストロークの書き始めの時刻を示す開始時刻、1つのストロークの書き終わりの時刻を示す終了時刻、ストロークの色、ストロークの幅、およびストロークの通過点の配列を識別するための座標配列データIDを示している。
さらに、この座標配列データは、図8に示す詳細な情報を含む。図8は、本実施の形態にかかる電子黒板が記憶する座標配列データの一例を示す概念図である。図8に示すように、座標配列データは、ディスプレイ3上においてストロークが通過する各点(X座標値、Y座標値)、各点を通過したときのストロークの開始時刻からの差分の時刻(ms)、および各点における電子ペン4の筆圧等を含む。すなわち、図8に示す座標配列データによって表される点の集まりが、ストロークとなる。例えば、ユーザが電子ペン4によってアルファベット「S」を描く場合、一筆書きとなるが、「S」を描き終えるまでに、複数の通過点を通過するため、座標配列データは、これら複数の通過点の情報を含む。
また、図6に示すページデータのうちのメディアデータは、図9に示す詳細な情報を含む。図9は、本実施の形態にかかる電子黒板が記憶するメディアデータの一例を示す概念図である。図9に示すように、メディアデータは、図6に示すページデータにおけるメディアデータID、メディアデータのデータ種類、ページ処理部37からページデータ記憶部300にページデータが記憶された記録時刻、ページデータによってディスプレイ3上に表示される画像の位置(X座標値、Y座標値)、画像のサイズ(幅、高さ)、およびメディアデータの内容を示すデータを含む。このうち、ページデータによってディスプレイ3上に表示される画像の位置は、ディスプレイ3の左上端の座標を(X座標値,Y座標値)=(0,0)とした場合に、ページデータによって表示される画像の左上端の位置を示している。
図3に戻り、遠隔ライセンス管理テーブル記憶部310は、遠隔共有処理を実行するために必要なライセンスデータを管理する。図10は、本実施の形態にかかる電子黒板が記憶する遠隔ライセンス管理テーブルの一例を示す図である。図10に示すように、遠隔ライセンス管理テーブル記憶部310では、電子黒板2のプロダクトID、認証に用いられるライセンスID、および当該ライセンスIDの有効期限を関連付ける遠隔ライセンス管理テーブルを記憶する。
(ファイル処理部40の機能構成)
図4を用いて、図3に示すファイル処理部40の機能構成について説明する。図4は、本実施の形態にかかる電子黒板が有するファイル処理部の機能ブロックの一例を示す図である。
ファイル処理部40は、リカバリ処理部41、ファイル入力部42a、ファイル出力部42b、ファイル変換部43、ファイル送信部44、アドレス帳入力部45、バックアップ処理部46、バックアップ出力部47、設定管理部48、設定ファイル入力部49a、設定ファイル出力部49b、およびアドレス帳入力部50を有する。さらに、ファイル処理部40は、アドレス帳管理テーブル記憶部410、バックアップデータ記憶部420、設定ファイル記憶部430、および接続先管理テーブル記憶部440を有している。
このうち、リカバリ処理部41は、電子黒板2が異常終了した後に、異常終了を検知し、未保存のページデータを復旧する。例えば、正常終了の場合は、ページデータがPDFファイルとしてファイル処理部40を介してUSBメモリ5に記録されるが、電源がダウンした等の異常終了の場合は、ページデータがページデータ記憶部300に記録されたままになっている。そのため、再び、電源オンになった際に、リカバリ処理部41は、ページデータ記憶部300からページデータを読み出すことで復旧させる。
ファイル入力部42aは、USBメモリ5から、PDFファイルを読み込み、各ページをページデータとしてページデータ記憶部300に記憶する。ファイル変換部43は、ページデータ記憶部300に記憶されているページデータを、PDF形式のファイルに変換する。ファイル出力部42bは、ファイル変換部43によって出力されたPDFファイルをUSBメモリ5に記録する。
ファイル送信部44は、ファイル変換部43によって生成されたPDFファイルを、電子メールに添付して送信する。このファイルの送信先は、表示重畳部36によってディスプレイ3上に、アドレス帳管理テーブル記憶部410に記憶されたアドレス帳管理テーブルの内容を表示し、ファイル送信部44がユーザによるタッチパネル115等の入力装置の操作により、宛先の選択を受け付けることによって決定される。図11は、本実施の形態にかかる電子黒板が記憶するアドレス帳管理テーブルの一例を示す図である。アドレス帳管理テーブル記憶部410は、図11に示すように、宛先の名前および宛先の電子メールのメールアドレスを関連付けるアドレス帳管理テーブルを記憶する。また、ファイル送信部44が、ユーザによるタッチパネル115等の入力装置の操作により、宛先としてのメールアドレスの入力を受け付けることもできる。
アドレス帳入力部45は、USBメモリ5から電子メールアドレスの一覧ファイルを読み込み、アドレス帳管理テーブル記憶部410に保存する。バックアップ処理部46は、ファイル出力部42bによって出力されたファイルや、ファイル送信部44によって送信されたファイルを、バックアップデータ記憶部420に記憶することでバックアップする。ユーザがバックアップ設定しない場合は、バックアップの処理は行われない。図12は、本実施の形態にかかる電子黒板が記憶するバックアップデータの一例を示す図である。バックアップ処理部46は、図12に示すように、PDF形式のバックアップデータをバックアップデータ記憶部420に保存する。
バックアップ出力部47は、バックアップされたファイルをUSBメモリ5に記録する。バックアップ出力部47は、USBメモリ5にファイルを記録する際、ユーザによるタッチパネル115等の入力装置の操作により、セキュリティのために入力されたパスワード等を用いて、認証を行い、当該認証に成功した場合に、USBメモリ5にファイルを記録する。
設定管理部48は、電子黒板2の各種設定情報を設定ファイル記憶部430に記憶したり読み出したりする。各種設定情報は、例えば、ネットワーク設定、日付や時刻の設定、地域や言語の設定、メールサーバの設定、アドレス帳の設定、接続先リストの設定、バックアップに関する設定が挙げられる。ネットワーク設定は、例えば、電子黒板2のIPアドレスの設定、ネットマスクの設定、デフォルトゲートウェイの設定、またはDNS(Domain Name System)の設定等である。
設定ファイル出力部49bは、電子黒板2の各種設定情報を、設定ファイルとしてUSBメモリ5に保存する。設定ファイルは、セキュリティの観点から、ユーザは中身を見ることができない。設定ファイル入力部49aは、USBメモリ5に記憶されている設定ファイルを読み込み、各種設定情報を電子黒板2の各種設定に反映させる。
アドレス帳入力部50は、USBメモリ5から遠隔共有処理の接続先IPアドレスの一覧ファイルを読み込み、接続先管理テーブル記憶部440に管理する。図13は、本実施の形態にかかる電子黒板が記憶する接続先管理テーブルの一例を示す図である。図13に示すように、接続先管理テーブル記憶部440が記憶する接続先管理テーブルは、電子黒板2が遠隔共有処理に参加しようとする参加装置である場合、この参加装置のユーザが主催装置としての役割を果たす電子黒板2のIPアドレスを入力する手間を削減するために、予め、主催装置となる電子黒板2のIPアドレスを記憶するテーブルである。接続先管理テーブルでは、参加されることが可能な主催装置としての電子黒板2が設置されている拠点の名称、および主催装置としての電子黒板2のIPアドレスが関連付けて管理されている。
接続先管理テーブルは、無くてもよい。ただし、接続先管理テーブルを記憶していない場合、参加装置のユーザは、主催装置との間で遠隔要求処理を開始するために、タッチパネル115等の入力装置によって、主催装置のIPアドレスを入力する必要がある。そのため、参加装置のユーザは、電話や電子メール等によって、主催装置のユーザから、主催装置のIPアドレスを取得する。
(通信制御部60の機能構成)
次に、図5を用いて、通信制御部60の機能構成について説明する。図5は、本実施の形態にかかる電子黒板が有する通信制御部の機能ブロックの一例を示す図である。
通信制御部60は、通信ネットワーク9を介して、他の電子黒板2と行う通信や、サーバ部90における後述の通信制御部70と行う通信を制御する。そのため、通信制御部60は、遠隔開始処理部61、遠隔参加処理部62、遠隔画像送信部63、遠隔画像受信部64、遠隔操作送信部65、遠隔操作受信部66、および参加拠点管理テーブル記憶部610を有している。
このうち、遠隔開始処理部61は、同じ電子黒板2のサーバ部90に対して、新たに遠隔共有処理を開始する要求を行い、サーバ部90から要求の結果を受信する。この場合、遠隔開始処理部61は、遠隔ライセンス管理テーブル記憶部310を参照し、ライセンス情報(プロダクトID、ライセンスID、および有効期限)が記憶されている場合には、遠隔共有処理を開始する要求を行うことができる。ただし、ライセンス情報が記憶されていない場合には遠隔共有処理を開始する要求を行うことができない。
参加拠点管理テーブル記憶部610が記憶する参加拠点管理テーブルは、電子黒板が主催装置である場合、現在、遠隔共有処理に参加している参加装置としての電子黒板を記憶するテーブルである。図14は、本実施の形態にかかる電子黒板が記憶する参加拠点管理テーブルの一例を示す図である。この参加拠点管理テーブルでは、図14に示すように、参加中の電子黒板2が設置されている拠点の名称および当該電子黒板2のIPアドレスが関連付けて管理されている。
遠隔参加処理部62は、通信ネットワーク9を介して、既に遠隔共有処理を開始している主催装置としての電子黒板2のサーバ部90における遠隔接続要求受信部71に対して、遠隔共有処理への参加要求を行う。この場合も、遠隔参加処理部62は、遠隔ライセンス管理テーブル記憶部310を参照する。また、遠隔参加処理部62が、既に開始されている遠隔共有処理に参加する場合には、接続先管理テーブル記憶部440を参照して、参加先の電子黒板2のIPアドレスを取得する。遠隔参加処理部62によって接続先管理テーブルが参照されず、ユーザによるタッチパネル115等の入力装置の操作により参加先の電子黒板2のIPアドレスが入力されてもよい。
遠隔画像送信部63は、映像取得部21から画像取得部31を介して送られて来た出力画像C(図16参照)および撮像画像の少なくとも一方を、サーバ部90に送信する。遠隔画像受信部64は、サーバ部90から、他の電子黒板2に接続された映像出力機器からの画像データおよび他の電子黒板2のカメラcの撮像により得られた撮像画像の少なくとも一方を受信し、画像取得部31を介して、表示重畳部36に出力することで、遠隔共有処理を可能にする。
遠隔操作送信部65は、遠隔共有処理に必要な各種操作データをサーバ部90に送信する。この各種操作データとしては、例えば、ストロークの追加、ストロークの削除、ストロークの編集(拡大、縮小、移動)、ページデータの記憶、ページデータの作成、ページデータの複製、ページデータの削除、表示されているページの切り替え等に関するデータが挙げられる。また、遠隔操作受信部66は、サーバ部90から、他の電子黒板2で入力された操作データを受信し、画像処理部30に出力することで、遠隔共有処理を行う。
〔サーバ部の機能構成〕
続いて、図5を用いて、サーバ部90の機能構成について説明する。サーバ部90は、各電子黒板2に設けられており、いずれの電子黒板2であっても、サーバとしての役割を果たすことができる。そのため、サーバ部90は、通信制御部70、およびデータ管理部80を有している。
(通信制御部70の機能構成)
次に、図5を用いて、通信制御部70の機能構成について説明する。通信制御部70は、同じ電子黒板2内のクライアント部20における通信制御部60、および通信ネットワーク9を介して他の電子黒板2内のクライアント部20における通信制御部70との通信を制御する。データ管理部80は、操作データや画像データ等を管理する。
更に詳細に説明すると、通信制御部70は、遠隔接続要求受信部71、遠隔接続結果送信部72、遠隔画像受信部73、遠隔画像送信部74、遠隔操作受信部75、および遠隔操作送信部76を有している。遠隔接続要求受信部71は、遠隔開始処理部61からの遠隔共有処理の開始要求を受信したり、遠隔参加処理部62からの遠隔共有処理に対する参加要求を受信したりする。遠隔接続結果送信部72は、遠隔開始処理部61へ遠隔共有処理の開始要求の結果を送信したり、遠隔参加処理部62へ遠隔共有処理に対する参加要求の結果を送信したりする。
遠隔画像受信部73は、遠隔画像送信部63からの画像データ(出力画像C(図16参照)および撮像画像の少なくとも一方)を受信し、後述の遠隔画像処理部82に送信する。遠隔画像送信部74は、遠隔画像処理部82から画像データを受信し、遠隔画像受信部64に対して、この画像データを送信する。遠隔操作受信部75は、遠隔操作送信部65からの操作データ(ストローク画像B(図16参照)等のデータ)を受信し、後述の遠隔操作処理部83に送信する。遠隔操作送信部76は、遠隔操作処理部83から操作データを受信し、遠隔操作受信部66に対して、この操作データを送信する。
(データ管理部の機能構成)
次に、図5を用いて、データ管理部80の機能構成について説明する。データ管理部80は、遠隔接続処理部81、遠隔画像処理部82、遠隔操作処理部83、操作合成処理部84、およびページ処理部85を有している。更に、データ管理部80は、パスコード管理部810、参加拠点管理テーブル記憶部820、画像データ記憶部830、操作データ記憶部840、およびページデータ記憶部850を有している。
このうち、遠隔接続処理部81は、遠隔共有処理の開始、および遠隔共有処理の終了を行う。また、遠隔接続処理部81は、遠隔接続要求受信部71によって遠隔開始処理部61から遠隔共有処理の開始要求と共に受信したライセンス情報、または遠隔参加処理部62から遠隔共有処理の参加要求と共に受信したライセンス情報に基づいて、ライセンスの有無やライセンスの期間内であるかを確認する。さらに、遠隔接続処理部81は、クライアントとしての他の電子黒板2からの参加要求が予め定められた参加可能数を超えていないかを確認する。
さらに、遠隔接続処理部81は、他の電子黒板2から遠隔共有処理に対する参加要求があった際に送られて来たパスコードが、パスコード管理部810で管理されているパスコードと同じであるか否かを判断し、同じである場合には、遠隔共有処理の参加を許可する。このパスコードは、新たに遠隔共有処理を開始する際に、遠隔接続処理部81によって発行され、遠隔共有処理に参加しようとする参加装置としての電子黒板2のユーザが、主催装置としての電子黒板2のユーザから、電話や電子メール等により伝えられる。これにより、遠隔共有処理に参加しようとする参加装置のユーザが、タッチパネル115等の入力装置によって参加装置にパスコードを入力して参加要求することで、参加が許可されることになる。セキュリティよりもユーザの使い勝手を優先して、ライセンス状況の確認だけで、パスコードの確認を省略してもよい。
また、電子黒板2が主催装置の場合、遠隔接続処理部81は、参加装置の遠隔参加処理部62から通信ネットワーク9を介して送られて来た参加要求に含まれる参加拠点情報を、サーバ部90の参加拠点管理テーブル記憶部820に記憶する。そして、遠隔接続処理部81は、参加拠点管理テーブル記憶部820に記憶されている遠隔拠点情報を読み出し、遠隔接続結果送信部72に送信する。遠隔接続結果送信部72は、同じ主催装置のクライアント部20における遠隔開始処理部61に遠隔拠点情報を送信する。遠隔開始処理部61は、参加拠点管理テーブル記憶部610に、遠隔拠点情報を記憶する。これにより、主催装置では、クライアント部20およびサーバ部90の両方で、遠隔拠点情報を管理することになる。
遠隔画像処理部82は、遠隔共有処理中の各電子黒板2のクライアント部20(画像取得部31)により取得された画像データ(出力画像C(図16参照)および撮像画像の少なくとも一方)を受信して画像データ記憶部830に記憶するとともに、主催装置である自己の電子黒板2のサーバ部90に届いた時間順で遠隔共有処理すべき画像データの表示順を判定する。また、遠隔画像処理部82(送信部の一例)は、参加拠点管理テーブル記憶部820を参照し、遠隔共有処理に参加中の全ての電子黒板2(外部装置の一例)のクライアント部20(主催装置である自己の電子黒板2のクライアント部20を含む)に、通信制御部70(遠隔画像送信部74)を介して、上記判定した順番で画像データを送信する。
遠隔操作処理部83は、遠隔共有処理中の各電子黒板2のクライアント部20(主催装置である自己の電子黒板のクライアント部20を含む)で描画されたストローク画像等の各種操作データ(ストローク画像B(図16参照)等)を受信し、主催装置である自己の電子黒板2のサーバ部90に届いた時間順で遠隔共有処理すべき画像の表示順を判定する。各種操作データは、上述の各種操作データと同じである。また、遠隔操作処理部83は、参加拠点管理テーブル記憶部820を参照し、遠隔共有処理中の全ての電子黒板2のクライアント部20(主催装置である自己の電子黒板のクライアント部20を含む)に操作データを送信する。
操作合成処理部84は、遠隔操作処理部83から出力された各電子黒板2の操作データを合成し、この合成結果としての操作データを、操作データ記憶部840に記憶するとともに遠隔操作処理部83に戻す。この操作データは、遠隔操作送信部76から、主催装置である電子黒板2のクライアント部20、および参加装置である電子黒板2のクライアント部20のそれぞれに送信されることで、各電子黒板2で同じ操作データに係る画像が表示される。
図15は、本実施の形態にかかる電子黒板における画像の表示に用いる操作データの一例を示す図である。操作データは、図15に示されているように、SEQ(Sequence)と、操作データの操作名と、操作データの送信元である電子黒板2のIPアドレスおよびクライアント部20(またはサーバ部90)のPort No.と、操作データの送信先である電子黒板2のIPアドレスおよびクライアント部20(またはサーバ部90)のPort No.と、操作データの操作種類と、操作データの操作対象と、並びに操作データの内容を示すデータと、が関連付けられて示されている。
例えば、SEQ1では、主催装置である電子黒板(IPアドレス:192.0.0.1)のクライアント部20(Port No.:50001)でストロークが描画されると、同じ主催装置である電子黒板(IPアドレス:192.0.0.1)のサーバ部90(Port No.:50000)に操作データが送られたことが示されている。この場合の操作種類は「STROKE」、操作対象はページデータID「p005」、および操作データの内容を示すデータはストロークを示すデータである。また、SEQ2では、主催装置である電子黒板(IPアドレス:192.0.0.1)のサーバ部90(Port No.:50000)から、参加装置である他の電子黒板(IPアドレス:192.0.0.1)のクライアント部20(Port No.:50001)に、操作データが送られたことが示されている。
操作合成処理部84は、当該操作合成処理部84に操作データが入力された順に合成を行うため、通信ネットワーク9が混雑していなければ、各電子黒板2のユーザによるストローク順に、遠隔共有処理中の全ての電子黒板2のディスプレイ3にストローク画像B(図16参照)が表示される。ページ処理部85は、クライアント部20の画像処理部30におけるページ処理部37と同様の機能を有し、サーバ部90でも、図6〜8に示すページデータを、ページデータ記憶部850に記憶する。ページデータ記憶部850は、画像処理部30におけるページデータ記憶部300と同じ内容であるため、その説明を省略する。
<実施の形態の処理又は動作>
続いて、図16〜18を用いて、本実施の形態の処理または動作について説明する。図16は、本実施の形態にかかる電子黒板において表示する画像の一例を示す図である。図17および図18は、本実施の形態にかかる電子黒板の処理を示したシーケンス図である。
図17および図18に示す実施の形態では、電子黒板2aが遠隔共有処理を主催する主催装置(サーバ部90およびクライアント部20)としての役割を果たしており、電子黒板2b,2cが遠隔共有処理に参加する参加装置(クライアント部20)としての役割を果たす場合について説明する。また、ここでは、電子黒板2a,2b,2cには、それぞれディスプレイ3a,3b,3cが接続され、さらに、それぞれノートPC6a,6b,6cが接続されている。また、電子黒板2a,2b,2cでは、それぞれ電子ペン4a,4b,4cが使用される。
(参加の処理)
まずは、図17を用いて、電子黒板2b,2cが遠隔共有処理に参加するための処理について説明する。ユーザが電子黒板2aの電源スイッチをオンにすると、電子黒板2aのクライアント部20が起動する。そして、ユーザがタッチパネル115等の入力装置によってサーバ部90を起動させる操作をすると、クライアント部20の遠隔開始処理部61から同じ電子黒板2aのサーバ部90における遠隔接続要求受信部71に、サーバ部90の処理を開始させる指示を出力する。これにより、電子黒板2aでは、クライアント部20だけでなくサーバ部90も各種処理を開始可能となる(ステップS21)。
次に、電子黒板2aのクライアント部20におけるUI画像生成部33が電子黒板2aとの接続を確立するための接続情報を生成し、映像重畳部28が、UI画像生成部33から表示重畳部36を介して得た接続情報をディスプレイ3aに表示させる(ステップS22)。この接続情報には、主催装置のIPアドレス、および今回の遠隔共有処理のために生成されたパスコードが含まれている。この場合、パスコード管理部810に記憶されているパスコードは、図5に示す遠隔接続処理部81によって読み出され、遠隔接続結果送信部72、遠隔開始処理部61の順に送信される。さらに、パスコードは、遠隔開始処理部61を含む通信制御部60から、図3に示す画像処理部30に送信され、最終的にUI画像生成部33に入力される。これにより、接続情報には、パスコードが含まれる。そして、接続情報は、電子黒板2aのユーザによって、電話や電子メールにより、電子黒板2b,2cのユーザに伝えられる。接続先管理テーブル記憶部440があれば、接続情報には、主催装置のIPアドレスが含まれていなくても、参加装置は参加要求を行うことができる。
次に、電子黒板2b,2cでは、各ユーザによるタッチパネル115等の入力装置の操作によって接続情報の入力を受け付けると、各電子黒板2b,2cのクライアント部20における遠隔参加処理部62が、接続情報のIPアドレスに基づき、通信ネットワーク9を介して、電子黒板2aのサーバ部90における通信制御部70に対してパスコードを送信して参加要求を行う(ステップS23,S24)。これにより、通信制御部70の遠隔接続要求受信部71は、各電子黒板2b,2cから、参加要求(パスコードを含む)を受信し、このパスコードを遠隔接続処理部81に出力する。
次に、遠隔接続処理部81は、各電子黒板2b,2cから受信したパスコードに対し、パスコード管理部810で管理されているパスコードを用いて認証する(ステップS25)。そして、遠隔接続結果送信部72が、各電子黒板2b,2cのクライアント部20に認証結果を通知する(ステップS26,S27)。ステップS25の認証により、各電子黒板2b,2cが正当な電子黒板であると判断されていた場合には、主催装置である電子黒板2aと、参加装置である電子黒板2b,2cとの遠隔共有処理の通信が確立され、各電子黒板2b,2cのクライアント部20における遠隔参加処理部62が、それぞれ他の電子黒板との間の遠隔共有処理の開始を可能にする(ステップS28,S29)。
(出力画像の表示)
続いて、図17を用いて、遠隔共有処理における出力画像Cが表示される処理について説明する。まず、電子黒板2bは、ディスプレイ3bに出力画像Cを表示する(ステップS30)。具体的には、電子黒板2bの画像取得部31が、ノートPC6bから映像取得部21を介して、ノートPC6bで表示されている出力画像Cを受信し、表示重畳部36および映像重畳部28を介してディスプレイ3bに送信することで、ディスプレイ3bは出力画像Cを表示する。
次に、電子黒板2bの画像取得部31を含む画像処理部30が、遠隔画像送信部63に出力画像Cを送信することで、遠隔画像送信部63を含む通信制御部60が通信ネットワーク9を介して、主催装置である電子黒板2aの通信制御部70に出力画像Cを送信する(ステップS31)。これにより、電子黒板2aの遠隔画像受信部73は、出力画像Cを受信し、遠隔画像処理部82に出力することで、遠隔画像処理部82が画像データ記憶部830に出力画像Cを記憶する。
次に、主催装置である電子黒板2aは、ディスプレイ3aに出力画像Cを表示する(ステップS32)。具体的には、電子黒板2aの遠隔画像処理部82は、遠隔画像受信部73から受信した出力画像Cを、遠隔画像送信部74に出力する。遠隔画像送信部74は、同じ主催装置である電子黒板2aのクライアント部20における遠隔画像受信部64に、出力画像Cを出力する。遠隔画像受信部64は、表示重畳部36に出力画像Cを出力する。表示重畳部36は、映像重畳部28に出力画像Cを出力する。映像重畳部28は、ディスプレイ3aに出力画像Cを出力する。これにより、ディスプレイ3aは、出力画像Cを表示する。
次に、主催装置としての電子黒板2aのサーバ部90における遠隔画像送信部74を含む通信制御部70は、通信ネットワーク9を介して、出力画像Cの送信元である電子黒板2b以外の電子黒板2cの通信制御部60に出力画像Cを送信する(ステップS33)。これにより、参加装置である電子黒板2cの遠隔画像受信部64は、出力画像Cを受信する。
次に、電子黒板2cは、ディスプレイ3cに出力画像Cを表示する(ステップS34)。具体的には、電子黒板2cの遠隔画像受信部64が、上記ステップS33によって受信された出力画像Cを、電子黒板2cの表示重畳部36に出力する。表示重畳部36は、映像重畳部28に出力画像Cを出力する。映像重畳部28はディスプレイ3cに出力画像Cを出力する。これにより、ディスプレイ3cは、出力画像Cを表示する。
出力画像Cだけでなく、UI画像A、ストローク画像Bの各データが、映像重畳部28に入力されている場合には、表示重畳部36が、図16に示すように、出力画像C、UI画像A、およびストローク画像Bを重畳した画像である重畳画像が生成される。映像重畳部28は、ディスプレイ3cに重畳画像のデータを出力する。また、テレビ会議端末7から映像重畳部28に、テレビ会議用の撮像画像が送られて来ている場合には、映像重畳部28は、重畳画像にピクチャ・イン・ピクチャによりテレビ会議用の撮像画像を重畳して、ディスプレイ3cに出力する。
(重畳画像の表示)
続いて、図18を用いて、遠隔共有処理における重畳画像が表示される処理について説明する。まず、電子黒板2bは、ユーザが電子ペン4bを用いて電子黒板2bにストローク画像Bを描画する(ステップS41)。次に、電子黒板2bの表示重畳部36は、図16に示すように、UI画像Aおよび出力画像Cに対して、ストローク画像Bを重畳した重畳画像を、映像重畳部28が電子黒板2bのディスプレイ3b上に表示させる(ステップS42)。具体的には、電子黒板2bのストローク処理部32が、座標検知部22および接触検知部24からイベント振分部25を介して、操作データとしてのストローク画像Bを受信し、表示重畳部36に送信する。これにより、表示重畳部36は、UI画像Aおよび出力画像Cに対して、ストローク画像Bを重畳することができ、映像重畳部28が電子黒板2bのディスプレイ3b上に重畳画像を表示させることができる。
次に、電子黒板2bのストローク処理部32を含む画像処理部30が、遠隔操作送信部65にストローク画像Bを送信することで、電子黒板2bの遠隔操作送信部65は、通信ネットワーク9を介して、主催装置である電子黒板2aの通信制御部70にストローク画像Bを送信する(ステップS43)。これにより、電子黒板2aの遠隔操作受信部75は、ストローク画像Bを受信し、遠隔操作処理部83に出力することで、遠隔操作処理部83が操作合成処理部84にストローク画像Bを出力する。このようにして、電子黒板2bで描画されたストローク画像Bは、描画される度に、主催装置である電子黒板2aの遠隔操作処理部83に順次送信される。このストローク画像Bは、図7に示されているストロークデータID毎に示されるデータである。よって、例えば、上述したように、ユーザが電子ペン4によってアルファベット「T」を描く場合は二筆書きとなるため、2つのストロークデータIDのそれぞれで示されるストローク画像Bのデータが順次送信される。
次に、主催装置である電子黒板2aは、ディスプレイ3aに、電子黒板2bから送られて来たストローク画像Bが含まれた重畳画像を表示する(ステップS44)。具体的には、電子黒板2aの操作合成処理部84は、遠隔操作処理部83を介して順次送られて来た複数のストローク画像Bを合成して、操作データ記憶部840に記憶するとともに遠隔操作処理部83に戻す。これにより、隔操作処理部83は、操作合成処理部84から受信した、合成後のストローク画像Bを、遠隔操作送信部76に出力する。遠隔操作送信部76は、同じ主催装置である電子黒板2aのクライアント部20における遠隔操作受信部66に、合成後のストローク画像Bを出力する。遠隔操作受信部66は、画像処理部30における表示重畳部36に、合成後のストローク画像Bを出力する。よって、表示重畳部36は、UI画像Aおよび出力画像Cに対して、合成後のストローク画像Bを重畳する。最後に、映像重畳部28が、表示重畳部36によってストローク画像Bが重畳された重畳画像をディスプレイ3a上に表示させる。
次に、主催装置としての電子黒板2aのサーバ部90における遠隔操作送信部76を含む通信制御部70は、通信ネットワーク9を介して、ストローク画像Bの送信元である電子黒板2b以外の電子黒板2cの通信制御部60に、合成後のストローク画像Bを送信する(ステップS45)。これにより、参加装置である電子黒板2cの遠隔操作受信部66は、合成後のストローク画像Bを受信する。
次に、電子黒板2cは、ディスプレイ3cに重畳画像を表示する(ステップS46)。具体的には、電子黒板2cの遠隔操作受信部66が、上記ステップS45によって受信された合成後のストローク画像Bを、電子黒板2cの画像処理部30に出力する。画像処理部30の表示重畳部36は、UI画像Aおよび出力画像Cの各データに対して、合成後のストローク画像Bを重畳した重畳画像を、映像重畳部28に出力する。映像重畳部28は、ディスプレイ3cに重畳画像を出力する。これにより、ディスプレイ3cは、重畳画像を表示する。
上記処理では、ディスプレイ3上に出力画像Cが表示されているが、図16に示すように、この出力画像Cに代えて、背景画像Dを表示してもよい。また、出力画像Cと背景画像Dとの排他的な関係をやめて、出力画像Cと背景画像Dとの両方を同時にディスプレイ3上に表示させてもよい。
(参加の終了)
続いて、図18を用いて、参加装置が遠隔共有処理への参加を終了する処理について説明する。図18に示す実施の形態では、電子黒板2cが参加を終了する処理が示されている。まず、電子黒板2cでは、ユーザによるタッチパネル115等の入力装置の操作によって参加の終了要求を受け付けると、遠隔参加処理部62は、主催装置としての電子黒板2aのサーバ部90における通信制御部70に、参加の終了要求を行う(ステップS47)。これにより、通信制御部70の遠隔接続要求受信部71は、電子黒板2cから、参加の終了要求を受信し、遠隔接続処理部81に、電子黒板2cのIPアドレスとともに参加の終了要求を出力する。そして、電子黒板2aの遠隔接続処理部81は、遠隔接続要求受信部71から送られて来たIPアドレスに基づいて、参加拠点管理テーブル記憶部820から、参加の終了要求を行った電子黒板2cのIPアドレスおよび電子黒板2cが設置されている拠点の名称を削除し、遠隔接続結果送信部72に、電子黒板2cのIPアドレス及び削除した旨の通知を出力する。
次に、遠隔接続結果送信部72を含んだ通信制御部70が、通信ネットワーク9を介して、電子黒板2cのクライアント部20における通信制御部60に、参加の終了を指示する(ステップS48)。これにより、電子黒板2cにおける通信制御部60の遠隔参加処理部62が、遠隔共有処理の通信を切断することで、参加の終了処理を行うことで、参加が終了する(ステップS49)。
次に、図19および図20を用いて、本実施の形態にかかる電子黒板2によるカメラcの撮像範囲の制御方法について説明する。図19は、従来の電子黒板におけるカメラの撮像範囲の制御方法の一例を説明するための図である。図20は、本実施の形態にかかる電子黒板によるカメラの撮像範囲の制御方法の一例を説明するための図である。
図19(a)に示すように、ディスプレイ3の前方から見て、当該ディスプレイ3の左側の領域に対する筆記者のタッチ操作がタッチパネル115によって検出された場合、Webカメラ130を、ディスプレイ3の前方から見て、左側に移動させると、Webカメラ130の撮像範囲hの大部分が筆記者により占められてしまい、Webカメラ130は、会議等に出席している他の出席者等を撮像することができない。また、図19(b)に示すように、ディスプレイ3の前方から見て、当該ディスプレイ3の右側の領域に対する筆記者のタッチ操作がタッチパネル115によって検出された場合、Webカメラ130を、ディスプレイ3の前方から見て、右側に移動させると、Webカメラ130の撮像範囲Hの大部分が筆記者により占められてしまい、Webカメラ130は、会議等に出席している他の出席者等を撮像することができない。
そこで、本実施の形態では、図20(a)に示すように、ディスプレイ3の前方から見て、当該ディスプレイ3の左側の領域に対する筆記者のタッチ操作がタッチパネル115によって検出された場合、制御部121は、Webカメラ130を、ディスプレイ3の前方から見て、右側に移動させる。これにより、制御部121は、Webカメラ130の撮像範囲hも、ディスプレイ3の前方から見て、右側に移動させる。一方、図20(b)に示すように、ディスプレイ3の前方から見て、当該ディスプレイ3の右側の領域に対する筆記者のタッチ操作がタッチパネル115によって検出された場合、制御部121は、Webカメラ130を、ディスプレイ3の前方から見て、左側に移動させる。これにより、制御部121は、Webカメラ130の撮像範囲hも、ディスプレイ3の前方から見て、左側に移動させる。
すなわち、制御部121は、ディスプレイ3の左右方向において、タッチパネル115によってタッチ操作が検出された領域(検出位置の一例)とは反対方向に、Webカメラ130の撮像範囲hを移動させる。これにより、Webカメラ130の撮像範囲hの大部分が筆記者によって占められることを防止できるので、会議等に出席している他の出席者等も撮像することができる。
次に、図21を用いて、本実施の形態にかかる電子黒板におけるカメラの撮像範囲の制御方法の流れについて説明する。図21は、本実施の形態にかかる電子黒板によるカメラの撮像範囲の制御方法の流れの一例を示すフローチャートである。
制御部121は、ホワイトボードアプリケーションおよびテレビ会議アプリケーションの実行が指示されると、まず、タッチパネル115を起動させる(ステップS2101)。次いで、制御部121は、モータ132を回転駆動させて、Webカメラ130を、ディスプレイ3の左右方向において、ディスプレイ3の上端の中央部に移動させる(ステップS2102)。その後、制御部121は、タッチパネル115によって、ディスプレイ3上でのタッチ操作が検出されるのを待つ(ステップS2103)。
タッチパネル115によって、ディスプレイ3上でのタッチ操作が検出されると(ステップS2103:Yes)、制御部121は、座標検知部22から、ディスプレイ3上において、タッチ操作が検出された検出位置の座標を取得する(ステップS2104)。次いで、制御部121は、取得された座標が、ディスプレイ3上において、当該ディスプレイ3の前方から見て、左側にあるか否かを判断する(ステップS2105)。取得された座標が、ディスプレイ3上において、当該ディスプレイ3の前方から見て、左側にある場合(ステップS2105:Yes)、制御部121は、モータ132を回転駆動させて、Webカメラ130を、ディスプレイ3の前方から見て、右側に移動させる(ステップS2106)。
一方、取得された座標が、ディスプレイ3上において、当該ディスプレイ3の前方から見て、右側にある場合(ステップS2105:No)、制御部121は、モータ132を回転駆動させて、Webカメラ130を、ディスプレイ3の前方から見て、左側に移動させる(ステップS2107)。次いで、制御部121は、タッチパネル115によってタッチ操作が検出されなくなり、ディスプレイ3に対する電子ペン4等による接触が解除されたか否かを判断する(ステップS2108)。タッチパネル115によってタッチ操作が検出されている場合(ステップS2108:No)、制御部121は、ステップS2104に戻り、座標検知部22から、ディスプレイ3上においてタッチ操作が新たに検出された検出位置の座標を取得する。
一方、タッチパネル115によってタッチ操作が検出されなくなった場合(ステップS2108:Yes)、制御部121は、ホワイトボードアプリケーションおよびテレビ会議アプリケーションの終了が指示されて、タッチパネル115によるタッチ操作の検出処理が終了したか否かを判断する(ステップS2109)。タッチパネル115によるタッチ操作の検出処理が終了していない場合(ステップS2109:No)、制御部121は、ステップS2103に戻り、タッチパネル115によって新たなタッチ操作が検出されるのを待つ。一方、タッチパネル115によるタッチ操作の検出処理が終了した場合(ステップS2109:Yes)、制御部121は、Webカメラ130の位置の制御処理を終了する。
このように、本実施の形態にかかる電子黒板2によれば、当該電子黒板2の近傍で筆記をする場合でも、Webカメラ130の撮像範囲hの大部分が筆記者によって占められることを防止できるので、会議等に出席している他の出席者等も撮像することができる。
なお、本実施の形態の電子黒板2で実行されるプログラムは、ROM等に予め組み込まれて提供される。本実施の形態の電子黒板2で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、本実施の形態の電子黒板2で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態の電子黒板2で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。