説明

電子黒板システム及びプログラム

【課題】光環境の影響を補正して座標入力に用いた入力物体の色を正しく認識し、描画に用いる色を自動的に指定可能にする。
【解決手段】座標検出手段で入力物体の座標を検出する。次に、表示面における座標付近の表示光を表示データから推測し、表示光の影響を除去するための補正値を算出する。表示面に対する操作入力に用いられる入力物体の撮像画像を抽出し、当該撮像画像の色を表示色補正値で補正する。これにより、入力物体に写り込んだ表示光の影響を除去し、入力物体本来の色を識別可能にする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示面に対する入力物体の接触位置又は表示面の手前側に設定された検出面に対する入力物体の操作位置を表示面上の2次元座標として検出できる電子黒板システムと当該システムを構成するコンピュータ上で実行されるプログラムに関する。
【背景技術】
【0002】
電子黒板システムは、表示装置又は投影装置と、それらの表示面に対する入力物体の操作入力を検出する座標検出装置と、検出された操作入力に基づく描画処理やシステム全体の動作を制御するコンピュータとで構成されている。
【0003】
座標検出装置には、所定の又は任意の入力物体が表示面に直接触れた位置(接触位置)を検出するものと、表示面から数センチメートルの範囲に設定された仮想の検出面に入力物体が侵入した位置(操作位置)を光学的に検出するものがある。前者の代表例にタッチパネルがあり、後者の代表例に赤外線式の座標検出装置がある。座標検出装置は、検出位置を表示画面上の2次元座標として出力する。コンピュータは、座標検出装置の2次元座標をコンピュータ操作画面上の2次元座標に変換し、予め指定された色と太さを有するオブジェクトとしてコンピュータ操作画面上に描画する。このコンピュータ操作画面が、表示装置又は投影装置の表示面として利用者に提供される。
【0004】
電子黒板システムは、この座標検出装置による座標の検出からコンピュータ操作画面上の描画までの処理を毎秒何十回も繰り返すことで、入力物体の操作者がコンピュータ操作画面上に文字や図形をあたかも直接筆記したかのような体験を利用者に提供することができる。また、電子黒板システムが入力物体による操作入力をコンピュータに接続したマウスの操作と同等に扱う機能に対応している場合には、表示面に対する入力物体の操作入力を通じてコンピュータを操作することもできる。
【0005】
なお、電子黒板システムのうちコンピュータ操作画面の表示面と座標検出装置が一体となったものはタッチパネルタイプと呼ばれ、コンピュータ操作画面をコンピュータに接続されたプロジェクタを通じて座標の検出面に投影するものはプロジェクションタイプと呼ばれる。この他、電子黒板システムには、コンピュータ操作画面をコンピュータに接続された非投影型の表示装置の表示面に表示し、光学的に形成される座標検出装置の検出面を表示面の手前に配置するタイプもある。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−67183号公報
【特許文献2】特許4266076号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
電子黒板システムの中には、座標指定に用いた入力物体を撮像した画像から入力物体の色を検出し又は識別し、その結果をコンピュータ操作画面上の描画色に反映させる機能を備えているものがある。
【0008】
例えば特許文献1には、カラー撮像素子を有する撮像手段を用いて座標入力領域の全体を撮像し、その撮像画像から抽出された指示物体の被写体像に基づいて指示物体の色情報を検出する色情報検出手段を備える電子黒板システムが開示されている。また、特許文献2には、CCD(Charge Coupled Device)カメラの撮像画像から、情報入力領域を指示した所定物体の色を識別する色識別手段を備える電子黒板システムが開示されている。
【0009】
しかし、入力物体を撮像する際の光環境は必ずしも一様でない。このため、撮像画像から物体色を直接識別する手法では、被写体本来の色を正しく識別できないことがある。例えばタッチパネルタイプの電子黒板システムであれば、表示装置表面からの発光が入力物体の照明光となり、プロジェクションタイプの電子黒板システムであれば、プロジェクタからの投影光が入力物体の照明光となる。このため、これらの照明光が入力物体に重畳し、入力物体が本来とは異なる色で撮像される可能性がある。さらに、照明光の種類や外光の影響の有無によっても、入力物体は本来と異なる色で撮像される可能性がある。
【0010】
そこで、本発明は、操作入力に用いた入力物体に重畳する光環境の影響を撮像画像上で補正し、描画色を入力物体本来の色に自動的に設定できる電子黒板システムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明者は、電子黒板システムとして、以下に示す手段を有するものを提案する。
(a) 表示面に対する入力物体の接触位置又は表示面の手前側に設定された検出面に対する入力物体の操作位置を表示面上の2次元座標として検出する座標検出手段
(b) 座標検出手段が2次元座標を検出できる範囲を撮像可能範囲とし、少なくとも2次元座標が検出された領域付近をカラー画像として撮像する撮像手段
(c) 座標検出手段で検出された入力物体の検出座標付近の表示面が表示する光が入力物体の像に写り込むことで生じる撮像色の変化を補正する表示光補正値を、検出座標付近の表示面の表示色に基づいて算出する表示光補正値算出手段
(d) 撮像手段で撮像されたカラー画像から前記入力物体の像だけを抽出する背景除去手段
(e) 背景除去手段により抽出された入力物体の像の色情報を表示光補正値で補正する色補正手段
(f) 色補正手段による色補正後の入力物体の像の色を識別する色識別手段
(g) 表示面の検出座標に、色識別手段で識別された色と所定の大きさを有するオブジェクトを描画する表示制御手段
【0012】
また、本発明者は、電子黒板システムを構成するコンピュータを、以下に示す手段として機能させるプログラムを提案する。
(a) 表示面に対する入力物体の接触位置又は表示面の手前側に設定された検出面に対する入力物体の操作位置を表示面上の2次元座標として検出する座標検出手段
(b) 座標検出手段で検出された入力物体の検出座標付近の表示面が表示する光が入力物体の像に写り込むことで生じる撮像色の変化を補正する表示光補正値を、検出座標付近の表示面の表示色に基づいて算出する表示光補正値算出手段
(c) 少なくとも2次元座標が検出された領域付近を撮像したカラー画像から入力物体の像だけを抽出する背景除去手段
(d) 背景除去手段により抽出された入力物体の像の色情報を表示光補正値で補正する色補正手段
(e) 色補正手段による色補正後の入力物体の像の色を識別する色識別手段
(f) 表示面の検出座標に、色識別手段で識別された色と所定の大きさを有するオブジェクトを描画する表示制御手段
【図面の簡単な説明】
【0013】
【図1】電子黒板周辺の機器配置例を説明する図。
【図2】コンピュータと周辺機器との接続例を説明する図。
【図3】電子黒板システムを実現するプログラムの論理的な構成を説明する図。
【図4】色識別プログラムのうちカラーバランスの調整に関する処理手順を示す図。
【図5】色識別プログラムのうちメイン処理に関する処理手順を示す図。
【図6】色識別プログラムのうちメイン処理に関する第2の処理手順を示す図。
【発明を実施するための形態】
【0014】
以下、図面に基づいて、発明の実施例を説明する。なお、後述する電子黒板システムはいずれも説明のための一例であり、発明の実施形態は、後述する実施例に限定されるものでない。また、本発明は、後述する電子黒板システムの全ての機能を組み合わせる場合だけでなく、一部の機能のみを搭載する場合、既知の技術を追加する場合、一部機能を既知の技術との置換する場合など、様々な実施形態を含み得る。また、以下の実施例では、各種の処理機能がコンピュータ上で実行されるプログラムとして提供されるものとして説明するが、当該処理機能の一部又は全部を、ハードウェアを通じて実現しても良い。
【0015】
(電子黒板の構成)
図1に、電子黒板100の実施例を示す。なお、図1に示す電子黒板100は、光学式の座標検出方式を採用する場合について表している。この例では、赤外線を使用する。また、図1に示す電子黒板100は、画像の表示にプロジェクタを使用している。すなわち、光学式の座標検出機能とプロジェクション方式の画像表示機能を組み合わせた電子黒板システムについて説明する。
【0016】
電子黒板100は、平板状のボード101に、座標検出器A103、座標検出器B104、再帰反射部材105、CMOSカメラ106を取り付けた構成を有している。これらの付属物は、いずれもボード101の外周部分に配置される。なお、ボード101の中央部分は、プロジェクタ210(図2)からの投影光が投影される表示面102として用いられる。
【0017】
座標検出器A103、座標検出器B104、再帰反射部材105は、座標検出装置のハードウェア部分を構成する。座標検出器A103はボード101の左上隅に配置されており、座標検出器B104はボード101の右上隅に配置されている。再帰反射部材105は光を入射方向と同じ方向に強く反射することができる特殊な構造を有する鏡やテープ状の部材である。再帰反射部材105は、矩形形状を有するボード101の左辺、右辺、下辺の3辺に沿って配置される。再帰反射部材105の反射面は、ボード101の表面に対して垂直に設置される。なお、反射面は無彩色であることが好ましい。また、反射面は、CMOSカメラ106が入力物体を撮像する際に入力物体の背景として撮像されるだけの十分な幅を有していることが好ましい。このように、再帰反射部材105はある種の背景板として用いられる。
【0018】
座標検出器A103及び座標検出器B104は、表示面102の上空近傍に接近又は表示面102に接触した入力物体(人の指、手、ペン、スタイラス(指示棒)等)の検出と、検出された入力物体の表示面上の位置を特定する2次元座標の検出するために用いられる。このため、座標検出器A103及び座標検出器B104には、赤外線を発光するLEDと、再帰反射部材105で反射された赤外線を受光するイメージセンサが格納されている。
【0019】
LEDは赤外光を表示面102に対して平行に射出し、イメージセンサは再帰反射部材105で反射された戻り光を撮像する。ここでの赤外線の光路面が座標検出装置の検出面となる。この実施例の場合、座標検出器A103のLEDは、ボード101の右辺と下辺の全範囲を照射できるように赤外線を広角に射出する。一方、座標検出器B104のLEDは、ボード101の左辺と下辺の全範囲を照射できるように赤外線を広角に射出する。もっとも、ビーム状の赤外線をスキャン走査することで、表示面102の全範囲を照射できるようにしても良い。
【0020】
この赤外光の射出と受光は、PC200(図2)からの定期的な撮像指示に基づいて実行される。LEDが赤外線を発光すると同時に、イメージセンサがその反射光を撮像し、その撮像画像をPC200(図2)に送り返す。この実施例の場合、入射物体の検出座標の算出そのものは、PC200(図2)の座標検出プログラムが実行する。PC200は、電子黒板の筐体上に配置される場合だけでなく、外部接続されていても良い。検出座標は、三角測量の原理を用いて算出される。入力物体が表示面102に接近又は接触する場合、赤外線の反射光が遮られ、座標検出器A103及び座標検出器B104の撮像画像では入力物体が光路上に位置する方向だけが暗く、その他は明るく写る。従って、撮像画像内で像の暗い位置が分かると、赤外線の射出角度(入射角度)を求めることがきる。このように、座標検出器A103と座標検出器B104のそれぞれについて角度情報が得られると、入力物体の検出位置(2次元座標)は2つの光軸の交点として算出することができる。なお、この座標計算機能は、座標検出器やボード101側に設けることもできる。
【0021】
CMOSカメラ106は、ボード101の上辺の中央付近に設置される。CMOSカメラ106の撮像についても、PC200(図2)からの指示により実行される。CMOSカメラ106で撮像された画像はPC200(図2)に出力される。
【0022】
なお、CMOSカメラ106は、検出面(表示面)付近の入力物体をカラー画像として撮像できるように取り付けられている。例えば入力物体がペン形状である場合、ペン先部分を撮像できるように取り付けられている。一般に、ペン先部分には、使用者の経験に合致するように、描画色と同じ色が付されているためである。また、ペン先部分は検出座標とほぼ一致するため入力物体の大きさや形状の違いによらず物体色の抽出が容易になるためである。
【0023】
CMOSカメラ106からPC200(図2)への撮像画像の出力はデジタル信号であることが望ましい。PC200(図2)の信号処理はデジタル信号について実行されるためである。もっとも、PC200(図2)の側でアナログ信号形式の画像信号をデジタル信号形式の画像信号に変換できる機能が搭載されている場合にはアナログ信号による出力でも問題はない。また、本実施例ではCMOS撮像素子を搭載するカメラを使用するが、撮像素子がCCDであっても良いし、その他の撮像素子を用いても良い。
【0024】
CMOSカメラ106は、少なくとも表示面102の全範囲ついて、表示面近傍に位置する入力物体を撮像できるように設置されていることが望ましい。さらに望ましくは、再帰反射部材105の反射面が入力物体の背景として撮像され得るように設置されることが望ましい。入力物体の検出精度を高めるためである。本実施例の場合、CMOSカメラ106には画角が180度程度の魚眼レンズを使用する。図1に示すように、CMOSカメラ106は、撮像方向が表示面102と平行に真下を向くように設置する。
【0025】
ただし、前述の条件を満たす限り、画角が90度程度のCMOSカメラを座標検出器A103及び/又は座標検出器B104の傍らにそれらの機能を妨げないように、かつ、撮像方向が表示面102と平行になるように据え付けても良い。また、複数個のCMOSカメラを、各撮像範囲の全体が表示面102の全範囲をカバーするように据え付けても良い。
【0026】
複数個のCMOSカメラを据え付ける場合において、個々の撮像範囲が互いに重なり合う場合には、座標検出器A103及び座標検出器B104によって検出された入力物体の座標に応じて、入力物体の像がより大きく撮像され得る1つのCMOSカメラを用いて撮像し、撮像された画像をPC200(図2)に送るように構成しても良い。もっとも、この場合でも、全てのCMOSカメラが入力物体を同時に撮像し、各CMOSカメラが撮像した画像をいずれもPC200(図2)に送るように構成しても良い。
【0027】
(コンピュータの内部構成)
図2に、電子黒板100に接続するPC200の内部構成と周辺装置との接続を示す。PC200は、CPU201、ROM202、RAM203、HDD204、ビデオカード205、ディスプレイインターフェース(I/F)206、外部インターフェース(I/F)207、内部バス208で構成される。
【0028】
CPU201は、BIOSプログラム301(図3)、OS302(図3)、電子黒板プログラム303(図3)を実行する演算装置である。ROM202は、PC200の起動時の動作手順及びPC200の内部及び外部の各ハードウェアの基本的な制御手順であるBIOSプログラム301を記録する領域である。RAM203は、BIOSプログラム301、OS302、電子黒板プログラム303その他のプログラム、座標検出器A103、座標検出器B104、CMOSカメラ106で撮像された画像、それらの処理結果等を一時的に記憶する領域である。HDD204は、OS302や電子黒板プログラム303を記録する領域である。ビデオカード205は、表示用データを演算して一時的に蓄積し、表示装置(図2においては、プロジェクタ210)に出力する装置である。ディスプレイI/F206は、ビデオカード205と表示装置を接続するインターフェースである。外部I/F207は、電子黒板100を構成する各種の装置とPC200を接続するインターフェースである。内部バス208は、201〜207間におけるデータのやり取りに使用される。
【0029】
PC200では、次のように動作が実行される。CPU201は、PC200の電源が投入されると、ROM202から読み込んだBIOSプログラム301を読み込み実行する。続いて、CPU201は、HDD204からOS302と電子黒板プログラム303をRAM203にコピーし、順次実行する。CPU201は、BIOSプログラム301、OS302、電子黒板プログラム303に含まれる表示装置への出力命令を実行すると、ビデオカード205に描画命令と描画データを送り込む。ビデオカード205は、描画命令に基づいて描画データを演算し、演算結果を表示用データとして一時的に蓄積した後、ディスプレイI/F206に接続された表示装置に表示用データとして送信し表示させる。CPU201は、BIOSプログラム301、OS302、電子黒板プログラム303に含まれる電子黒板100の操作命令を実行すると、外部I/F207を介して所定の指示を電子黒板100へ送り、その指示の処理結果を受け取ってRAM203に一時的に記憶させる。
【0030】
表示装置としてのプロジェクタ210は、ディスプレイケーブル209を介してPC200に接続されており、当該ケーブルを通じてPC200から送られた表示用データを電子黒板100の表示面102に投影する。
【0031】
電子黒板100を構成する座標検出器A103、座標検出器B104、CMOSカメラ106は、接続ケーブル211を介してPC200に接続されており、当該ケーブルを通じてCPU201から送られた所定の指示に基づいて撮像等の処理を行い、その処理結果を送り返す。
【0032】
(プログラム)
図3に、PC200において実行されるBIOSプログラム301、OS302、電子黒板プログラム303の論理的な構成を示す。なお、言うまでもなく、図3に示すプログラムの構成は、本発明の説明に関連するプログラムだけを選択的に表すものであり、実際には、必要に応じて各種のアプリケーションプログラムが実行されても良い。
【0033】
BIOSプログラム301には、PC200の起動時の動作手順、PC200の内部・外部の各ハードウェアの基本的な制御手順が記述されている。OS302は、PC200のオペレーティングシステムであり、PC200の内部・外部の各ハードウェアを抽象化し、アプリケーションプログラムからの指示に基づいて各ハードウェアを操作する。例えばOS302は、プロジェクタ210に表示用データを投影させたり、電子黒板100のCMOSカメラ106等に画像を撮像させたり、撮像された画像を受け取ったりする。
【0034】
電子黒板プログラム303は、OS302の上で動作するアプリケーションプログラムであり、座標検出プログラム304と、色識別プログラム305と、描画プログラム306により構成される。
【0035】
座標検出プログラム304は、電子黒板100への入力物体の座標を検出するプログラムである。当該プログラムは、座標検出器A103及び座標検出器B104に対し、定期的に画像撮像指示を出し、返された撮像画像に入力物体が写っていればその方角をそれぞれの画像から調べる。さらに、座標検出プログラム304は、予め計測・設定された2つの座標検出器間の水平距離と三角測量の原理を用いて表示面102上における入力物体の接近又は接触した場所の2次元座標を計算し、色識別プログラム305と描画プログラム306に伝える。
【0036】
色識別プログラム305は、電子黒板100への入力物体の色を識別するプログラムである。当該プログラムは、CMOSカメラ106に対して定期的に画像撮像の指示を出し、返されてきた撮像画像から再帰反射部材105の反射面の領域だけを切り出す。色識別プログラム305は、切り出された画像内に入力物体が写っていれば、その色を撮像時の光環境に応じて補正し、補正後の色を入力物体の色として描画プログラム306に伝える。なお、撮像画像から再帰反射部材105の領域だけを切り出す処理は、画像内に写った再帰反射部材105の反射面の座標範囲を手動で予め設定したり、再帰反射部材105の反射面に特徴的な色・模様(単一の無彩色、ある色とその補色で構成される縞模様など)を付して画像処理(周囲との彩度の違いで区別など)したりすることで行えるが、これらの方法に限るものではない。
【0037】
描画プログラム306は、電子黒板100への入力物体で表示面102にあたかも線や字を描いたように見える表示用データを生成するためのプログラムである。描画プログラム306は、座標検出プログラム304から入力物体の座標を受け取ると、その座標を表示用データの生成に使用する座標系に変換する。前回の描画から一定時間以内の場合、描画プログラム306は、前回の描画座標から今回の描画座標までを直線で結ぶものと判定し、色識別プログラム305から受け取った入力物体の色と所定の太さで識別された入力物体の操作軌跡を描画する。一方、その他の場合、描画プログラム306は、変換後の座標を次回の描画まで一時的に記憶する。結果的に、表示面102に触れたまま入力物体が動くことで、検出座標の軌跡に一致する線を含む表示用データが生成され、プロジェクタ210から表示面102に投影される。
【0038】
(カラーバランス機能)
ここでは、電子黒板100を使用する前に実行して好適なカラーバランス機能について説明する。図4に、カラーバランスのためのプログラムの手順例を示す。本プログラムは、撮像した入力物体の色を補正するために使う環境光補正値を求めるものである。本プログラムは、電子黒板プログラム303の起動時に自動的に又は電子黒板システムの使用者の要求により開始される。本プログラムは、色識別プログラム305の一部として実現する。
【0039】
ステップ401において、色識別プログラム305は、環境光補正値測定用画面の表示用データを作成し、OS302にその表示を要求する。これにより、環境光補正値測定用画面がプロジェクタ210から表示面102へ投影される。ここで環境光補正値測定用画面は、被写体のカラーバランスの補正に使われる画面であり、例えば全面白色の画面である。なお、環境光補正値測定用画面には、無彩色入力物体を表示面102に接触させる際の標的位置を示唆する無彩色の図形を含んでも良い。
【0040】
ステップ402において、色識別プログラム305は、CMOSカメラ106に無彩色入力物体の撮像指示を行い、その画像を受け取る。無彩色入力物体とは、環境光に含まれる色情報を正確に検出するために用いられる無彩色(基準色)を付した入力物体をいう。例えばカラーバランス調整用の完全白色板(ホワイトリファレンス)又は同等の機能を有する物体を使用する。ここでの撮像指示は、座標検出プログラム304が無彩色入力物体を検知してその座標を色識別プログラム305へ伝えた時に行っても良いし、一定の時間間隔で行っても良い。後者の場合、連続して撮像した画像間で差分を検出する等の処理を行うと、無彩色入力物体を含む画像を選び出すことができる。
【0041】
ステップ403において、色識別プログラム305は、撮像画像から背景部分を除去し、無彩色入力物体だけを抽出する。この抽出処理は、無彩色入力物体が無い時に撮像した画像との差分を取得して行っても良いし、無彩色入力物体の撮像画像をエッジ抽出して無彩色入力物体の範囲を識別することで行っても良いが、これらの方法に限られるものではない。
【0042】
ステップ404において、色識別プログラム305は、抽出した無彩色入力物体の平均色から環境光補正値を計算し記憶する。ここでの平均色は、例えばRGBモデルで表現すると、抽出した無彩色入力物体が占める領域の全画素のR、G、B値それぞれについて総和を計算し、同領域の総画素数で割ることで求めることができる。ただし、この方法に限るものではない。また、環境光補正値は、照明や外光などプロジェクタ210からの投影光以外の環境光による影響を撮像画像から取り除くための補正値である。環境光補正値は、平均色のRGB値をCenv=(r,g,b)とすると、その正規化した値C’env=(r,g,b)/|Cenv|として求まる。ただし、|Cenv|=sqrt (r*r+g*g+b*b)であり、sqrtは平方根である。ここでは環境光補正値として平均色を正規化した値を例示したが、この限りではない。
【0043】
(色識別プログラムの第1の実行手順)
図5に、本実施例で使用する色識別プログラムによる色識別処理の実行手順を示す。本処理における色補正とは、環境光とプロジェクタ210からの投影光の影響を補正して入力物体の本来色を識別する処理をいう。本処理は、座標検出プログラム304が入力物体の座標を検出した後に開始される。
【0044】
ステップ501において、色識別プログラム305は、CMOSカメラ106に入力物体の撮像を指示し、撮像された画像を受け取る。
【0045】
ステップ502において、色識別プログラム305は、ステップ501で撮像した画像から背景部分を除去して入力物体だけを抽出する。この実施例の場合、入力物体の抽出は、撮像画像の各画素についてHSV(Hue, Saturation, Value)色空間における彩度と明度を計算し、これらの値が所定の閾値以上の画素だけを残すことで行う。なお、抽出処理は、この方法に限るものではなく、ステップ403に挙げた方法やその他の方法で行っても良い。
【0046】
ステップ503において、色識別プログラム305は、抽出した入力物体画像が所定の大きさの領域や形状を有するか否かを判定する。画像撮像時の光環境のゆらぎの影響により、ステップ502の抽出処理においてノイズが抽出画像に残ることがあるためである。例えば数画素程度の大きさの抽出部分はノイズと判断して除去することが必要となる。この際、ノイズ除去後の画像に何も残らなかったり、所定の大きさ以上の画像領域が複数残ったりすることがある。そこで、所定の大きさ以上の画像領域がただ一つだけ残った場合には、抽出に成功したとみなしてステップ505を次に実行し、そうでなければ抽出に失敗したと見なしてステップ504を次に実行する。ここで、所定の大きさとは、入力物体が所定の太さを有する筆記具に限定される場合には、CMOSカメラから表示面102の最遠地点等において撮像され得る最小の画像領域の大きさのことであり、前述の最遠地点に接触した入力物体を予め撮像して得た画像から計測したり、計算で求めたりできる。さらに、所定の形状であることは、抽出画像の幅(画素数)の変動が一定範囲に留まること等から確認できる。
【0047】
ステップ504において、色識別プログラム305は、入力物体の色を所定の無彩色と識別して終了する。
【0048】
ステップ505において、色識別プログラム305は、プロジェクタ210から入力物体付近に投影されている投影光の補正値を計算する。投影光補正値は、入力物体付近に投影されている投影光の影響を撮像画像に写った入力物体から取り除くための補正値である。色識別プログラム305は、OS302から現在の表示用データを取得する一方、座標検出プログラム304から入力物体の座標を取得し、この座標を中心とする一定範囲の表示用データの平均色をステップ404と同様の式で正規化することにより投影光補正値を求める。以下、平均色をCprj、投影光補正値をC’prjと表記する。
【0049】
なお、この実施例では、投影光補正値C’prjとして正規化した平均色Cprjを例示したが、この限りではない。また、平均色Cprjの計算に用いる表示用データの範囲(検出座標を中心とするピクセル数)は、電子黒板100及び電子黒板プログラム303での座標検出精度や、座標から推定可能なCMOSカメラ106から入力物体までの距離、再帰反射部材105の幅と表示面102に対する入力物体の許容傾度(入力物体を一般的な筆記具のようなロケット形状と仮定した場合に表示面102の鉛直方向から測った入力物体の傾き)等からその都度計算したり、予め固定の値を定めたりすれば良い。
【0050】
ステップ506において、色識別プログラム305は、抽出した入力物体画像の平均色を環境光補正値と投影光補正値で補正する。平均色の計算方法には、例えばステップ403に挙げた方法があるが、この限りではない。また、補正後の入力物体色C”inは、入力物体の平均色をCin、その正規化した値をC’inとすると、C”in=|Cin|×Cin/(C’env×C’prj)で求まるが、色の補正方法はここで例示したものに限らない。
【0051】
ステップ507において、色識別プログラム305は、抽出した入力物体画像の彩度と明度の平均値を求め、それぞれの値が所定の閾値以上であるか否かを判定する。色識別プログラム305は、この条件を満たせば(各値が閾値以上であれば)、入力物体の色は有彩色と見なしてステップ508を次に行い、満たさなければ入力物体の色は無彩色と見なしてステップ504を次に行う。
【0052】
ステップ508において、色識別プログラム305は、補正済みの入力物体色から入力物体の色を識別し、描画プログラム306に伝える。色の識別は、例えば電子黒板100に付属のペンの色の特徴(色相など)を色識別プログラムに予め与えておき、補正済み入力物体色に一番近いものを選ぶことで行う。あるいは、補正済み入力物体色をそのまま識別色としてもよい。
【0053】
(第1の実行手順のまとめ)
以上説明したように、色識別プログラムの第1の実行手順を適用する本実施例の場合には、入力物体を照明する外光(投影色及び環境光)の影響を補正した状態で入力物体の色を識別することにより、電子黒板の使用者の認識と合致した色の付いたオブジェクトを表示面上に描画することが可能になる。
【0054】
例えばある色の付いた入力物体を電子黒板の表示面に近づけて描画操作を行った場合を考える。入力物体の色が同じでも、描画を検出した位置で投影色(表示色)の色相や彩度が大きく異なると、入力物体の撮像画像上での色調が本来の色調から変化するであろうことは想像に難くない。従来システムでは、撮像カメラで撮像された直後の画像から入力物体の色を直接識別するため、同じ入力物体を用いながらも描画位置によってオブジェクトの色調が変化する可能性がある。しかし、本実施例の場合には、投影色(表示色)の影響及び環境色の影響を除去してから入力物体の色を識別するため、電子黒板の使用者の認識している色と識別される色を合致させることができる。しかも、本実施例の場合には、常に本来の色調にて入力オブジェクトが描画されるため、従来システムのように描画位置によってオブジェクトの色調が変化することも無い。勿論、操作入力の記録データとしても意図した通りの色調で描画結果を残すことができる。
【0055】
(色識別プログラムの第2の実行手順)
ここでは、入力物体が、投影光や照明光の人影等に入った場合を検討する。この場合、入力物体は、投影光や照明光の影響を受けることがない。その一方で、入力物体は暗く撮像される。しかし、入力物体の明度が低下すると、撮像画面上での色の識別が難しくなるだけでなく、入力物体の抽出自体が困難になるという新たな問題が発生する。
【0056】
この問題は、例えば、座標検出器A103及び座標検出器B104によって検出された入力物体の座標を用い、検出座標付近のカメラの露出量を調整することで解決できる。しかし、この手法による露光の調整中にも、入力物体の位置は変わり、必要な露出量も変化する。このため、この手法では、適正な露出量を維持することが難しい。
【0057】
そこで、以下の形態例においては、周囲の光源により生じる人影や物影に対する入力物体の出入りの影響を低減する目的で、CMOSカメラ106で撮像された画像全体の明度差を縮小変換し、当該変換後の画像内から入力物体を抽出する手法を提案する。また、入力物体への光環境の重畳の有無を判別し、重畳が認められる場合に限り、前述した光環境補正技術を適用し、その他の場合には前述した光環境補正技術を適用しない手法を提案する。
【0058】
図6に、本実施例で使用する色識別プログラムによる色識別処理の実行手順を示す。本処理と第1の実行手順との違いは、撮影画像全体の明度補正を実行する点と、色補正の必要性を判定する点である。本処理は、座標検出プログラム304が入力物体の座標を検出した後に開始される。
【0059】
ステップ601において、色識別プログラム305は、CMOSカメラ106に入力物体の撮像を指示し、撮像された画像を受け取る。このステップ601の処理は、図5におけるステップ501の処理と同じである。
【0060】
ステップ602において、色識別プログラム305は、ステップ601で撮像された画像全体の明度差が縮小するように、各ピクセルのRGB値を補正する。ここでの明度補正処理は、撮像画像内の各ピクセルについてHSV色空間での色相値を変えずに各ピクセル間の明度差を縮小させる画像変換処理を伴う。具体的には、明度の高い領域の明度を下げ、明度の低い領域の明度を上げる処理が実行される。当該明度補正処理は、特許請求の範囲における「明度補正手段」に対応する。
【0061】
この明細書では、各ピクセル間の明度差を縮小させる画像変換処理のことを、各ピクセルのRGB値を正規化する処理ともいう。前述した条件を満たす限り、他の明度補正技術を適用しても良い。例えば、各ピクセルの色相値はそのままに、各ピクセルの明度を一定値に揃える処理を実行しても良い。この明度補正処理の実行により、仮に入力物体が光源の人影・物影に入ったとしても、入力物体の明度を高めることができるので、ステップ603における入力物体の抽出が成功する可能性を高めることができる。
【0062】
ステップ603において、色識別プログラム305は、ステップ602で明度補正した画像から背景部分を除去して入力物体だけを抽出する。この実施例の場合、入力物体の抽出は、明度補正画像の各画素についてHSV(Hue, Saturation, Value)色空間における彩度と明度を計算し、これらの値が所定の閾値以上の画素だけを残すことで行う。なお、抽出処理は、この方法に限るものではなく、ステップ403に挙げた方法やその他の方法で行っても良い。
【0063】
ステップ604において、色識別プログラム305は、ステップ603で抽出された明度補正後の入力物体画像が所定の大きさの領域や形状を有するか否かを判定する。画像撮像時の光環境のゆらぎの影響により、ステップ603の抽出処理においてノイズが抽出画像に残ることがあるためである。例えば数画素程度の大きさの抽出部分はノイズと判断して除去することが必要となる。この際、ノイズ除去後の画像に何も残らなかったり、所定の大きさ以上の画像領域が複数残ったりすることがある。そこで、所定の大きさ以上の画像領域がただ一つだけ残った場合には、抽出に成功したとみなしてステップ606を次に実行し、そうでなければ抽出に失敗したと見なしてステップ605を次に実行する。ここで、所定の大きさとは、入力物体が所定の太さを有する筆記具に限定される場合には、CMOSカメラ106から表示面102の最遠地点等において撮像され得る最小の画像領域の大きさのことであり、前述の最遠地点に接触した入力物体を予め撮像して得た画像から計測したり、計算で求めたりできる。さらに、所定の形状であることは、抽出画像の幅(画素数)の変動が一定範囲に留まること等から確認できる。
【0064】
ステップ605において、色識別プログラム305は、入力物体の色を所定の無彩色と識別して終了する。このステップ605の処理は、図5におけるステップ504の処理と同じである。
【0065】
ステップ606において、色識別プログラム305は、明度補正前の入力物体画像に対して環境光や投影光の補正が必要か否かを判定する。この判定処理は、換言すると、ステップ601における入力物体の撮影時に、入力物体が人影・物影に入っていたか否かを判定することを意味する。ここで、色識別プログラム305は、入力物体が人影・物影に入っていないと判定された場合にはステップ607とステップ608の色補正処理を行い、そうでない場合にはこれらのステップを飛ばしてステップ609を次に実行する。このステップ606で実行される処理を、本明細書では影内判定処理と呼ぶ。当該影内判定処理は、特許請求の範囲における「影内判定手段」に対応する。
【0066】
この実施例の場合、色識別プログラム305は、入力物体を含まない近傍領域の平均明度が他の領域の平均明度より所定の値を超えて下回ると判定される場合に、入力物体が人影・物影に入っていたと判定する。この実施例の場合、明度補正前の撮像画像について判定処理を行う。もっとも、明度補正後の撮像画像を対象として判定処理を行っても良い。また、近傍領域とは、例えば入力物体の領域から数ピクセルから数十ピクセルの範囲をいうものとする。
【0067】
判定基準はこれらに限るものではなく、他の基準を用いて判定しても良い。例えばCMOSカメラ106の撮像画面の一端から他端方向に、明領域→暗領域→明領域が順に出現し、かつ、ステップ603で抽出された入力物体が暗領域に存在する場合、色識別プログラム305は、入力物体が人影・物影に入っていると判定しても良い。
【0068】
ステップ607において、色識別プログラム305は、プロジェクタ210から入力物体付近に投影されている投影光の補正値を計算する。投影光補正値は、入力物体付近に投影されている投影光の影響を撮像画像に写った入力物体から取り除くための補正値である。色識別プログラム305は、OS302から現在の表示用データを取得する一方、座標検出プログラム304から入力物体の座標を取得し、この座標を中心とする一定範囲の表示用データの平均色をステップ404と同様の式で正規化することにより投影光補正値を求める。以下、平均色をCprj、投影光補正値をC’prjと表記する。
【0069】
なお、この実施例では、投影光補正値C’prjとして正規化した平均色Cprjを例示したが、この限りではない。また、平均色Cprjの計算に用いる表示用データの範囲(検出座標を中心とするピクセル数)は、電子黒板100及び電子黒板プログラム303での座標検出精度や、座標から推定可能なCMOSカメラ106から入力物体までの距離、再帰反射部材105の幅と表示面102に対する入力物体の許容傾度(入力物体を一般的な筆記具のようなロケット形状と仮定した場合に表示面102の鉛直方向から測った入力物体の傾き)等からその都度計算したり、予め固定の値を定めたりすれば良い。
【0070】
ステップ608において、色識別プログラム305は、明度補正後の入力物体画像の平均色を環境光補正値と投影光補正値で補正する。ただし、明度補正前の入力物体画像を処理対象とすることも可能である。平均色の計算方法には、例えばステップ403に挙げた方法があるが、この限りではない。また、補正後の入力物体色C”inは、入力物体の平均色をCin、その正規化した値をC’inとすると、C”in=|Cin|×Cin/(C’env×C’prj)で求まるが、色の補正方法はここで例示したものに限らない。
【0071】
ステップ609において、色識別プログラム305は、色補正済みの場合には色補正と明度補正後の入力物体画像について、色補正されていない場合には明度補正後の入力物体画像について、その彩度と明度の平均値を求め、それぞれの値が所定の閾値以上であるか否かを判定する。色識別プログラム305は、この条件を満たせば(各値が閾値以上であれば)、入力物体の色は有彩色と見なしてステップ610を次に行い、満たさなければ入力物体の色は無彩色と見なしてステップ605を次に行う。
【0072】
ステップ610において、色識別プログラム305は、補正済みの入力物体色から入力物体の色を識別し、描画プログラム306に伝える。色の識別は、例えば電子黒板100に付属のペンの色の特徴(色相など)を色識別プログラムに予め与えておき、補正済み入力物体色に一番近いものを選ぶことで行う。あるいは、補正済み入力物体色をそのまま識別色としてもよい。
【0073】
(第2の実行手順のまとめ)
以上説明したように、色識別プログラムの第2の実行手順を適用する本実施例の場合、撮像画像内の各ピクセル間の明度差を縮小させる明度補正処理を行った後に入力物体の抽出を行うので、照明光や投影光により生じる人影や物影に入力物体が入って暗く撮像される場合でも、入力物体をCMOSカメラ106の撮像画像内から容易に抽出することができる。
【0074】
また、入力物体に照明やプロジェクタ投影光が当たっているか、又は、入力物体が人影や物影に入っているのかを判定し、前者の場合にのみ色補正処理を行い、後者の場合には不要な色補正処理を行わないことにより、入力物体色の識別精度を向上することができる。なお、本手順の明度補正処理の場合には、各ピクセルの色相値を変化させないので、色の識別精度には影響しない。
【0075】
(他の実施例)
前述の実施例の説明においては、電子黒板の座標検出方式として再帰反射部材を用いた光学式によるものを例示したが、タッチパネルなど他の方式にも本発明は適用可能である。タッチパネル方式の座標検出装置を用いる場合、図1の電子黒板100で用いた座標検出器A103、座標検出器B104、再帰反射部材105を無くすことができる。なお、再帰反射部材105を用いない場合でも、入力物体の色の識別と色の判別を容易にするため、CMOSカメラ106によって背景として撮像される無彩色の背景板を再帰反射部材105の代わりに配置することが望ましい。すなわち、タッチパネルによる2次元座標の検出が可能な範囲を取り囲む位置から表示面の手前方向に表示面に対して垂直方向に所定長だけ突出する背景板を配置することが望ましい。また、タッチパネルを用いる場合のように投影光を用いない場合には、前述した実施例における投影光補正値を表示光補正値と読み替えるものとする。また、特許請求の範囲では、「表示光補正値」を「投影光補正値」を含む広義の意味で使用する。
【0076】
また、前述の実施例の説明では、入力物体を撮像するためのカメラがボード101に一体的に取り付けられている場合について説明したが、この種のカメラはオプション部品として後付けできるものでも良い。また、既存の黒板(非電子黒板)に後付けするタイプの座標検出装置の場合には、枠型の本体の上部に入力物体撮像用のカメラを取り付ければ良い。
【符号の説明】
【0077】
100…電子黒板、101…ボード、102…表示面、103…座標検出器A、104…座標検出器B、105…再帰反射部材、106…CMOSカメラ、200…PC、201…CPU、202…ROM、203…RAM、204…HDD、205…ビデオカード、206…ディスプレイI/F、207…外部I/F、208…内部バス、209…ディスプレイケーブル、210…プロジェクタ、211…接続ケーブル、301…BIOSプログラム、302…OS、303…電子黒板プログラム、304…座標検出プログラム、305…色識別プログラム、306…描画プログラム。

【特許請求の範囲】
【請求項1】
表示面に対する入力物体の接触位置又は表示面の手前側に設定された検出面に対する入力物体の操作位置を前記表示面上の2次元座標として検出する座標検出手段と、
前記座標検出手段が2次元座標を検出できる範囲を撮像可能範囲とし、少なくとも2次元座標が検出された領域付近をカラー画像として撮像する撮像手段と、
前記座標検出手段で検出された入力物体の検出座標付近の表示面が表示する光が前記入力物体の像に写り込むことで生じる撮像色の変化を補正する表示光補正値を、前記検出座標付近の表示面の表示色に基づいて算出する表示光補正値算出手段と、
前記画像撮像手段で撮像されたカラー画像から前記入力物体の像だけを抽出する背景除去手段と、
前記背景除去手段により抽出された入力物体の像の色情報を前記表示光補正値で補正する色補正手段と、
前記色補正手段による色補正後の入力物体の像の色を識別する色識別手段と、
前記表示面の前記検出座標に、前記色識別手段で識別された色と所定の大きさを有するオブジェクトを描画する表示制御手段と、
を有することを特徴とする電子黒板システム。
【請求項2】
請求項1に記載の電子黒板システムにおいて、
前記表示面に環境光補正値測定用画面を表示させる環境光補正値測定用画面表示制御手段と、
前記環境光補正値測定用画面表示制御手段による環境光補正値測定用画面の表示中に、前記座標検出手段で入力物体が検出された場合、前記背景除去手段により抽出される参照用の無彩色領域を有する無彩色入力物体の像に基づいて、環境光の写り込みにより生じる撮像色の変化を補正する環境光補正値を算出する環境光補正値算出手段とを有し、
前記色補正手段は、前記入力物体の像を前記環境光補正値と前記表示光補正値に基づいて補正する
ことを特徴とする電子黒板システム。
【請求項3】
請求項1又は2に記載の電子黒板システムにおいて、
前記色識別手段は、
前記背景除去手段が背景除去に失敗した場合又は前記色補正後の入力物体の像の彩度と明度の両方又はいずれか一方が所定の判定範囲にある場合における入力物体の色を、所定のいずれかの無彩色として識別する
ことを特徴とする電子黒板システム。
【請求項4】
請求項1又は2に記載の電子黒板システムにおいて、
前記画像撮像手段で入力物体の像が撮像される場合において、前記入力物体の背景として撮像される背景板を有し、
前記背景板は、前記座標検出手段が2次元座標を検出できる範囲を取り囲む位置から手前方向に前記表示面に対して垂直方向に所定長だけ突出する
ことを特徴とする電子黒板システム。
【請求項5】
請求項4に記載の電子黒板システムにおいて、
前記背景板は所定の無彩色を有する
ことを特徴とする電子黒板システム。
【請求項6】
電子黒板システムを構成するコンピュータを、
表示面に対する入力物体の接触位置又は表示面の手前側に設定された検出面に対する入力物体の操作位置を前記表示面上の2次元座標として検出する座標検出手段と、
前記座標検出手段で検出された入力物体の検出座標付近の表示面が表示する光が前記入力物体の像に写り込むことで生じる撮像色の変化を補正する表示光補正値を、前記検出座標付近の表示面の表示色に基づいて算出する表示光補正値算出手段と、
少なくとも2次元座標が検出された領域付近を撮像したカラー画像から前記入力物体の像だけを抽出する背景除去手段と、
前記背景除去手段により抽出された入力物体の像の色情報を前記表示光補正値で補正する色補正手段と、
前記色補正手段による色補正後の入力物体の像の色を識別する色識別手段と、
前記表示面の前記検出座標に、前記色識別手段で識別された色と所定の大きさを有するオブジェクトを描画する表示制御手段と、
として機能させるプログラム。
【請求項7】
請求項6に記載のプログラムは、
前記コンピュータを、
前記表示面の環境光補正値測定用画面を表示させる環境光補正値測定用画面表示制御手段と、
前記環境光補正値測定用画面表示制御手段による環境光補正値測定用画面の表示中に、前記座標検出手段で入力物体が検出された場合、前記背景除去手段により抽出される参照用の無彩色領域を有する無彩色入力物体の像に基づいて、環境光の写り込みにより生じる撮像色の変化を補正する環境光補正値を算出する環境光補正値算出手段として機能させるプログラムを更に有し、
前記色補正手段は、前記入力物体の像を前記環境光補正値と前記表示光補正値に基づいて補正する
ことを特徴とするプログラム。
【請求項8】
請求項6又は7に記載のプログラムは、
前記色識別手段としての機能時、
前記背景除去手段が背景除去に失敗した場合又は前記色補正後の入力物体の像の彩度と明度の両方又はいずれか一方が所定の判定範囲にある場合における入力物体の色を、所定のいずれかの無彩色として識別する
ことを特徴とするプログラム。
【請求項9】
請求項1又は2に記載の電子黒板システムにおいて、
前記撮像手段で撮像されたカラー画像の各ピクセルの色相を変えずに明度差を縮小させる明度補正手段と、
前記撮像手段で撮像したカラー画像において前記入力物体が影内に入っているか否か判定する影内判定手段とを有し、
前記背景除去手段は、前記明度補正手段によって明度を補正した後のカラー画像から前記入力物体の像だけを抽出し、
前記色補正手段は、前記影内判定手段により前記入力物体が影に入っていないと判定された場合にのみ所定の色補正を行う、
ことを特徴とする電子黒板システム。
【請求項10】
請求項6又は7に記載のプログラムは、
前記コンピュータを、
前記撮像手段で撮像されたカラー画像の各ピクセルの色相を変えずに明度差を縮小させる明度補正手段と、
前記撮像手段で撮像したカラー画像において前記入力物体が影内に入っているか否か判定する影内判定手段として機能させるプログラムを更に有し、
前記背景除去手段は、前記明度補正手段によって明度を補正した後のカラー画像から前記入力物体の像だけを抽出し、
前記色補正手段は、前記影内判定手段により前記入力物体が影に入っていないと判定された場合にのみ所定の色補正を行う、
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−66564(P2012−66564A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2011−4873(P2011−4873)
【出願日】平成23年1月13日(2011.1.13)
【出願人】(000233055)株式会社日立ソリューションズ (1,610)
【Fターム(参考)】