プロジェクタ装置および操作検出方法
【課題】専用の入力デバイスを用いずに投影画像に対する操作を検出して種々の機能を実現することができるプロジェクタ装置および操作検出方法を提供する。
【解決手段】プロジェクタ装置は、スクリーンに投影画像を投射する投射装置2と、投影画像が投射されるスクリーンを含む撮像範囲を撮像するステレオカメラ3と、制御装置4とを備える。制御装置4は、ステレオカメラ3の2つの撮像素子から出力される2つの画像に基づいて撮像範囲の距離画像を生成する距離画像生成手段41と、距離画像に基づいて、投影画像が投射されるスクリーンから所定の距離の範囲内に存在する物体を、投影画像に対して操作入力を行う入力部として検出する入力部検出手段43と、検出された入力部の位置または動きに基づいて、投影画像に対する入力操作を解析する解析手段46とを備える。
【解決手段】プロジェクタ装置は、スクリーンに投影画像を投射する投射装置2と、投影画像が投射されるスクリーンを含む撮像範囲を撮像するステレオカメラ3と、制御装置4とを備える。制御装置4は、ステレオカメラ3の2つの撮像素子から出力される2つの画像に基づいて撮像範囲の距離画像を生成する距離画像生成手段41と、距離画像に基づいて、投影画像が投射されるスクリーンから所定の距離の範囲内に存在する物体を、投影画像に対して操作入力を行う入力部として検出する入力部検出手段43と、検出された入力部の位置または動きに基づいて、投影画像に対する入力操作を解析する解析手段46とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロジェクタ装置および操作検出方法に関する。
【背景技術】
【0002】
従来、スクリーンに投影画像を投射するプロジェクタ装置が知られている。プロジェクタ装置は、装置自体は小型でも大画面の画像を表示できるため、例えば、会議や講演において多数の聴衆に資料を見やすく表示するためのツールとして、広く利用されている。また近年では、プロジェクタ装置に対して、投影画像に絵や文字などを書き込めるようにする機能や、投影画像の拡大縮小、ページ送りなどの操作を簡便に行えるようにする機能を持たせることが求められ、そのような機能を実現するための技術開発が行われている。
【0003】
例えば、特許文献1には、プロジェクタ装置の投影画像に絵や文字を書き込めるようにする技術が開示されている。この特許文献1に記載の技術は、ホワイトボード上に投射された投影画像をカメラで撮影するとともに、赤外光発光部と超音波発生部とを備えた電子ペンのホワイトボード上の位置を、赤外線受光部と超音波受信部とを備えた信号処理器により演算し、電子ペンのホワイトボード上の位置を、カメラで撮影した画像から求めた投影画像のホワイトボード上の位置によって正規化することで、投影画像上における電子ペンの位置を正確に得られるようにしている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の技術では、プロジェクタ装置の投影画像に絵や文字を書き込むためには、赤外光発光部と超音波発生部を備えた電子ペンを用いる必要がある。また、投影画像が投射される投射面に、予め赤外線受光部と超音波受信部とを備えた信号処理器を設けておく必要がある。このように、特許文献1に記載の技術では、予め準備された環境で専用の入力デバイスを用いた場合にのみ、プロジェクタ装置の投影画像に絵や文字を書き込む機能が実現されるため、汎用性がなく、装置コストも嵩むといった問題があった。
【0005】
本発明は、上記に鑑みてなされたものであって、専用の入力デバイスを用いずに投影画像に対する操作を検出して種々の機能を実現することができるプロジェクタ装置および操作検出方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明に係るプロジェクタ装置は、投影画像を投射面に投射する投射手段と、前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得する距離取得手段と、前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出する入力部検出手段と、前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析する解析手段と、を備えることを特徴とする。
【0007】
また、本発明に係る操作検出方法は、投影画像を投射面に投射する投射手段と、前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、を備えるプロジェクタ装置において実行される操作検出方法であって、複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得するステップと、前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出するステップと、前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析するステップと、を含むことを特徴とする。
【発明の効果】
【0008】
本発明によれば、投影画像の投射面を含む撮像範囲に存在する物体の距離情報を取得し、投射面から予め定めた所定距離の範囲内に存在する物体を、投影画像に対して入力操作を行う入力部と認識して、その入力部の位置または動きに基づいて投影画像に対する入力操作を解析するので、専用の入力デバイスを用いずに投影画像に対する入力を検出して種々の機能を実現することができるという効果を奏する。
【図面の簡単な説明】
【0009】
【図1】図1は、実施形態に係るプロジェクタ装置の正面図である。
【図2】図2は、実施形態に係るプロジェクタ装置の内部構成を示すブロック図である。
【図3】図3は、スクリーンに投射された投影画像の大きさとステレオカメラの撮像範囲の大きさとの関係を示す図である。
【図4】図4は、ステレオカメラの構造の一例を説明する図である。
【図5】図5は、制御装置の機能構成を示す機能ブロック図である。
【図6】図6は、ステレオカメラを用いた距離計測の原理を説明する図である。
【図7】図7は、投影画像に文字や絵を書き込む操作を検出する例を説明する図である。
【図8】図8は、投影画像内に含まれるボタンの操作を検出する例を説明する図である。
【図9】図9は、投影画像のページ送りの操作を検出する例を説明する図である。
【図10】図10は、投影画像を拡大する操作や縮小する操作を検出する例を説明する図である。
【図11】図11は、制御装置による一連の処理を示すフローチャートである。
【図12】図12は、従来の台形補正処理の概要を示す図である。
【図13】図13は、ステレオカメラの各測距点の測距結果を距離に応じた濃淡で表した図である。
【図14】図14は、半導体ウェハ上に形成された多数の撮像素子のうちの2つを一体に切り出す様子を示す模式図である。
【発明を実施するための形態】
【0010】
以下に添付図面を参照して、この発明に係るプロジェクタ装置および操作検出方法の実施の形態を詳細に説明する。
【0011】
図1は、本実施形態に係るプロジェクタ装置1の正面図であり、図2は、本実施形態に係るプロジェクタ装置1の内部構成を示すブロック図である。
【0012】
本実施形態に係るプロジェクタ装置1は、その正面(前面)1aがスクリーン(投射面)100と対向するように設置される。ここで、スクリーン100は任意であり、例えば部屋の壁面やホワイトボードなど、様々なものをスクリーン100として利用することができる。また、プロジェクタ装置1は、例えば、専用ケーブルもしくはUSB(Universal Serial Bus)ケーブルなどの汎用ケーブルを介して、パーソナルコンピュータなどの外部の情報処理装置(以下、PC101と表記する。)と、双方向に通信可能に接続される。なお、プロジェクタ装置1は、既知の無線通信プロトコルに従った無線通信により、PC101と双方向に通信可能に接続されてもよい。
【0013】
プロジェクタ装置1の正面1a側には、図1に示すように、投射装置2の投射レンズ2aと、ステレオカメラ3とが配設されている。また、プロジェクタ装置1の内部には、図2に示すように、投射装置2やステレオカメラ3に加えて、制御装置4、記憶装置5、および通信装置6が設けられている。
【0014】
投射装置2は、制御装置4による制御のもとで、投射レンズ2aを用いてスクリーン100に投影画像を投射する。投射装置2がスクリーン100に投射する投影画像は、例えば、PC101からプロジェクタ装置1に送られた画像である。つまり、PC101の表示部に表示されている画像が、投射装置2によって、投影画像としてスクリーン100に投射される。なお、以下では便宜的に、スクリーン100の横方向(プロジェクタ装置1の幅方向)に沿った方向をX方向、スクリーン100の縦方向(プロジェクタ装置1の高さ方向)に沿った方向をY方向、スクリーン100とプロジェクタ装置1とが対向する方向(プロジェクタ装置1の奥行き方向)に沿った方向をZ方向と表記する。
【0015】
ステレオカメラ3は、複数の撮像素子を備え、これら複数の撮像素子を用いて所定の撮像範囲を撮像する。ステレオカメラ3の撮像範囲は、少なくともスクリーン100に投射された投影画像を含む、プロジェクタ装置1の正面1a前方の所定の範囲である。図3は、スクリーン100に投射された投影画像の大きさとステレオカメラ3の撮像範囲の大きさとの関係を示す図である。ステレオカメラ3は、想定される投影画像の大きさ(スクリーン100のサイズ)と、スクリーン100からプロジェクタ装置1が設置される位置までの標準的な距離などを考慮して、スクリーン100に投射される投影画像の大きさよりも広範囲を撮像できるように、撮像素子に光学像を結像するレンズの画角などが設計されている。
【0016】
ここで、ステレオカメラ3の具体的な構造例について説明する。図4は、ステレオカメラ3の構造の一例を説明する図であり、図4(a)はステレオカメラ3の概略断面図、図4(b)は複数の撮像素子(本例では2つの撮像素子30a,30b)が形成された撮像素子基板34の平面図である。ステレオカメラ3は、図4(a)に示すように、筐体31と、レンズアレイ32と、アパーチャアレイ33と、撮像素子基板34と、回路基板35と、を備える。
【0017】
筐体31は、その内部に撮像素子基板34および回路基板35を収容する。また、筐体31は、その前面側(図4(a)の上側)にて、レンズアレイ32およびアパーチャアレイ33を固定支持する。レンズアレイ32およびアパーチャアレイ33は、筐体31により、撮像素子基板34に対して位置決めされた状態で支持される。ステレオカメラ3の筐体31は、その前面側がプロジェクタ装置1の正面1aに向くように、プロジェクタ装置1の内部に配設される。
【0018】
レンズアレイ32は、Y方向に沿って配列される一対のレンズ32a,32bが一体形成されてなる。レンズアレイ32は、例えば、透明樹脂材を成形して作製される。レンズ32aは、撮像範囲の画像を撮像素子30aに結像させる光学部品である。レンズ32bは、撮像範囲の画像を撮像素子30bに結像させる光学部品である。
【0019】
アパーチャアレイ33は、2つのアパーチャを有し、一方のアパーチャからレンズ32aを露出させ、他方のアパーチャからレンズ32bを露出させるように、レンズアレイ32上に配置される。アパーチャアレイ33は、2つのアパーチャ以外の部分で光を反射することで、レンズ32a,32b以外の部分から筐体31内部に光が入射することを防止する。
【0020】
撮像素子基板34には、2つの撮像素子30a,30bが所定の間隔で一体に形成されている。撮像素子30aは、レンズアレイ32のレンズ32aと対向し、撮像素子30bは、レンズアレイ32のレンズ32bと対向する。レンズアレイ32は、レンズ32aが撮像素子30aの中心と一致し、レンズ32bが撮像素子30bの中心と一致するように位置決めされている。撮像素子30aの中心と撮像素子30bの中心との間の距離、つまりレンズアレイ32のレンズ32aとレンズ32bとの光軸間の距離は、基線長と呼ばれる。本実施形態では、基線長は5〜30mm程度を想定している。
【0021】
撮像素子30a,30bは、例えば図4(b)に示すように、半導体ウェハ上に周知の半導体プロセスによって一体に形成されたCCDやCMOSなどの2次元イメージセンサである。各撮像素子30a,30bの撮像領域(受光面)30a1,30b1には、多数の受光素子(画素)が格子状に配列されている。
【0022】
レンズアレイ32のレンズ32aとレンズ32bは、光軸が互いに平行であり、画角も同じである。また、これらレンズ32a,32bは、それぞれ入射する被写体光が対応する各撮像素子30a,30bの撮像領域30a1,30b1に結像するような焦点距離を有している。
【0023】
回路基板35には、撮像素子30a,30bの出力信号を処理する信号処理回路が形成されている。回路基板35は、例えば、撮像素子基板35の背面(撮像素子30a,30bが形成された面とは逆の面)側に配置されている。本実施形態では、ステレオカメラ3の回路基板35に、撮像素子30a,30bが出力するアナログ信号に対してノイズ除去処理や増幅、AD変換などを行うAFE(アナログフロントエンド)回路が実装されているものとする。また、本実施形態では、回路基板35に、温度センサおよび温度補正回路が設けられているものとする。温度補正回路は、温度センサの検出値を用いて、温度変化に起因する撮像素子30a,30bの出力誤差を補正する。この温度補正回路による補正処理により、温度変化によってレンズアレイ32が膨張または収縮し、レンズ32a,32b間の距離(基線長)が変化したとしても、正しい出力が得られるようにしている。
【0024】
制御装置4は、記憶装置5を利用しながら各種の演算処理を行って、プロジェクタ装置1の動作を統括的に制御する。この制御装置4は、例えば、制御プログラムを実行するCPUや、ステレオカメラ3から出力される撮像範囲の画像信号(デジタルデータ)を処理するDSP(Digital Signal Processor)、入出力インターフェース回路などを備えた制御用IC(Integrated Circuit)として構成することができる。
【0025】
記憶装置5は、制御装置4が各種の演算を行うために用いる記憶装置であり、画像を一時的に保持するフレームメモリや、CPUのワークエリアとして利用されるRAM、制御プログラムや各種の制御用データが格納されるROMなどを含む。
【0026】
通信装置6は、プロジェクタ装置1がPC101との間で通信を行うための各種制御を実施する。
【0027】
図5は、本実施形態のプロジェクタ装置1において特徴的な制御装置4の機能構成を示す機能ブロック図である。これら図5に示す各機能構成は、例えば、制御装置4のCPUが制御プログラムを実行することによって実現される。また、これら各機能構成のうちの一部または全部を、例えばASIC(Application Specific Integrate Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより構成することもできる。
【0028】
制御装置4は、スクリーン100に投射された投影画像に対する操作者の操作入力を検出し、その操作入力に応じた処理を実行するための機能構成として、図5に示すように、距離画像生成手段(距離情報取得手段)41と、候補特定手段42と、入力部検出手段43と、位置検出手段44と、動き検出手段45と、解析手段46と、画像処理手段47と、を備える。なお、制御装置4は、これらの機能のほかに、ステレオカメラ3の画像を利用したオートフォーカス機能および台形補正機能を備えるが、これらの機能については後述する。
【0029】
距離画像生成手段41は、ステレオカメラ3の2つの撮像素子30a,30bが出力する2つの画像に基づいて、ステレオカメラ3の撮像範囲の距離画像を生成する。距離画像は、ステレオカメラ3の撮像範囲内に存在する様々な物体について、ステレオカメラ3の位置(つまりプロジェクタ装置1の設置位置)を起点とした各物体までの距離を表す画像(距離情報)である。なお、本実施形態では距離情報を距離画像として取得する例を説明するが、これに限られるものではない。
【0030】
例えば、距離画像生成手段41は、まず2つの撮像素子30a,30bが出力する2つの画像の対応関係を、例えば窓相関法などの既知の方法により特定する。窓相関法は、一方の画像に設定した窓領域との相関値が高い領域を、他方の画像から検索する処理である。相関値としては、例えば画像の輝度情報を利用することができる。
【0031】
距離画像生成手段41は、2つの撮像素子30a,30bが出力する2つの画像の対応関係を特定したら、次に、以下の原理により、ステレオカメラ3の撮像範囲内に存在する各物体(領域)までの距離を算出し、距離画像を生成する。なお、本実施形態では、ステレオカメラ3の撮像範囲内に存在する物体の距離情報を距離画像として取得するが、物体のXY方向の位置とプロジェクタ装置1からの距離(Z方向の位置)を特定できる情報を得られればよく、距離画像以外の情報を用いるようにしてもよい。
【0032】
図6は、ステレオカメラ3を用いた距離計測の原理を説明する図である。ステレオカメラ3の撮像範囲に物体Mが存在する場合、物体Mの光学像(被写体像)は、レンズ32aを介して撮像素子30aに結像するとともに、レンズ32bを介して撮像素子30bに結像する。撮像素子30aに結像する被写体像をma、撮像素子30bに結像する被写体像をmbとすると、撮像素子30a,30b上における被写体像maが結像する画素位置と被写体像mbが結像する画素位置とは、視差Δだけ離れている。
【0033】
ここで、レンズ32a,32bの光軸間の距離(基線長)をD、レンズ32a,32bと物体Mとの間の距離をL、レンズ32a,32bの焦点距離をfとし、Lがfよりも十分に大きな値であるとすると、下記の式(1)が成り立つ。
L=D×f/Δ ・・・(1)
【0034】
上記式(1)において、Dとfは既知の値であるため、2つの撮像素子30a,30bが出力する2つの画像から視差Δを検出することで、ステレオカメラ3の撮像範囲に存在する物体Mまでの距離Lを算出することができる。
【0035】
距離画像生成手段41は、例えば、2つの撮像素子30a,30bが出力する2つの画像の対応する窓領域のそれぞれについて、上記の方法によって距離Lを算出することにより、ステレオカメラ3の撮像範囲内に存在する物体までの距離を表す距離画像を生成する。
【0036】
候補特定手段42は、ステレオカメラ3の2つの撮像素子30a,30bのうち、少なくとも一方が出力する画像を用いて、ステレオカメラ3の撮像範囲内に存在する物体の中から、スクリーン100に投射された投影画像に対する操作入力を行う入力部の候補となる物体を特定する。本実施形態では、投影画像に対する操作入力を行う入力部として、例えば、スクリーン100に接触している、もしくはスクリーン100に極めて近い位置にある操作者の指を想定する。この場合、指の形状(細長い棒状)や指の色(肌色)などの指を特徴付ける情報が、記憶装置5に特徴量として記憶されている。
【0037】
候補特定手段42は、ステレオカメラ3の2つの撮像素子30a,30bのうち、少なくとも一方が出力する画像を解析し、例えば既知のパターンマッチングなどの手法により、この画像の中から記憶装置5に記憶されている特徴量との相関が高い物体を検出する。そして、候補特定手段42は、画像の中からパターンマッチングなどにより検出した物体を、入力部の候補として特定する。例えば、指の特徴量が記憶装置5に記憶されている場合、候補特定手段42は、ステレオカメラ3の撮像範囲内に存在する人の指を入力部の候補として検出する。なお、候補特定手段42は、操作者の指だけでなく、例えば、一般的な形状のペンやポインタなど、その特徴量を記憶装置5に記憶させておくことで、様々な物体を入力部の候補として検出することができる。
【0038】
入力部検出手段43は、距離画像生成手段41により生成された距離画像を用いて、スクリーン100からプロジェクタ装置1側に向かって所定の距離の範囲内に存在する物体を、投影画像に対する操作入力を行う入力部として検出する。具体的には、入力部検出手段43は、まず距離画像生成手段41により生成された距離画像からスクリーン100を特定して、スクリーン100までの距離(Z方向の位置)を求める。次に、入力部検出手段43は、距離画像からスクリーン100までの距離との差分が所定の距離の範囲内である物体を探索する。そして、入力部検出手段43は、得られた物体の形状が例えば操作者の指などの予め定めた形状に近ければ、その物体を入力部として検出する。なお、所定の距離は、例えば100〜150mm程度である。
【0039】
ここで、入力部の検出に用いる距離画像は、2つの撮像素子30a,30bが出力する画像の正確な対応付けが困難なため、物体の輪郭などが不正確である場合が多い。また、距離画像は色の情報を持たないため、例えば操作者の指などの入力部を距離画像のみから正しく検出することは難しい。そこで、入力部検出手段43は、距離画像を用いてスクリーン100から所定の距離の範囲内に存在する物体を探索し、距離画像から該当する物体が探索されたら、その物体のうち、候補特定手段42によって入力部の候補として特定された物体を、入力部として検出する。なお、距離画像から探索された物体と候補特定手段42によって入力部の候補として特定された物体との対応付は、例えば、画像のXY平面上における座標位置の情報を用いればよい。また、距離画像から入力部を精度よく検出できる場合は、入力部検出手段43は、距離画像のみから入力部を検出するようにしてもよい。この場合は、入力部検出手段43は不要となる。
【0040】
位置検出手段44は、入力部検出手段43が検出した入力部のX方向およびY方向における位置、より詳しくは、例えば操作者の指が入力部として検出された場合、スクリーン100に投射された投影画像上における指先の位置を検出する。指先は、指の形状から特定することができる。また、画像のXY平面上における指先の位置と投影画像の位置との関係から、投影画像上における指先の位置を検出することができる。
【0041】
動き検出手段45は、ステレオカメラ3の2つの撮像素子30a,30bのうち、少なくとも一方が連続的に出力する複数の画像を用いて、入力部検出手段43が検出した入力部の動きを検出する。例えば操作者の指が入力部として検出された場合、動き検出手段45は、スクリーン100に投射された投影画像上における指先の動きを検出する。この動き検出手段45の処理は、例えば、デジタルカメラなどにおける被写体追尾の手法を応用して実現することができる。
【0042】
すなわち、動き検出手段45は、例えば入力部検出手段43によりスクリーン100の近傍に存在する指が入力部として検出されると、撮像素子30aまたは撮像素子30bが出力する画像から、対応する指を検出して追尾のターゲットに設定し、その形状や色などの情報(ターゲット情報)を保持する。次に、動き検出手段45は、保持したターゲット情報を用いて、その後、撮像素子30aまたは撮像素子30bが次々に出力する画像から、対応する指を探索する。そして、動き検出手段45は、撮像素子30aまたは撮像素子30bが連続的に出力する画像間における指のXY平面における位置の変化を、入力部である指の動きとして検出する。
【0043】
この動き検出手段45による処理は、入力部検出手段43が入力部を検出しなくなった時点、すなわち、上記の例で説明すると、スクリーン100の近傍に存在していた操作者の指がスクリーン100から離れ、所定の距離の範囲外になった時点で終了する。そして、その後、入力部検出手段43が新たに入力部を検出すると、動き検出手段45は、新たな入力部の動きの検出を行う。なお、入力部検出手段43による処理と動き検出手段45による処理は、例えば、1/30sec〜1/60secごとの処理周期で同期して行われる。
【0044】
解析手段46は、位置検出手段44が検出した入力部の位置や、動き検出手段45が検出した入力部の動きに基づいて、スクリーン100に投射された投影画像に対する操作者の入力操作を解析する。以下では、投影画像に対する操作者の入力操作の具体例を例示するが、以下で例示する入力操作に限らず、様々な入力操作を解析することができる。
【0045】
解析手段46は、例えば図7に示すように、入力部として検出された操作者の指の動きから、投影画像に文字や絵を書き込む操作を検出できる。すなわち、操作者の指がスクリーン100から所定の距離の範囲内にない場合、つまりスクリーン100から離れている場合は、操作者の指は入力部として検出されていない。その後、操作者の指がスクリーン100に近づいて所定の距離の範囲内に入ると、操作者の指が入力部として検出され、指の動きの検出が開始される。その後、スクリーン100の近くで指が動くとその動きが検出され、指がスクリーン100から離れると動きの検出が終了する。このように、指がスクリーン100の近傍に存在するときだけ指の動きが検出されるので、その指先の位置の軌跡を、投影画像に書き込む文字や絵として認識することができる。
【0046】
投影画像に文字や絵を書き込む操作が解析手段46により検出されると、書き込む文字や絵の形状および画像上の書き込み位置(座標)の情報が、解析手段46から画像処理手段47へと送られる。画像処理手段47は、通信装置5が受信するPC101からの画像に対して、解析手段46からの情報に基づいて文字や絵を重畳する。そして、画像処理手段47によって文字や絵が重畳された画像が投射装置2に送られる。これにより、操作者の入力操作に応じて文字や絵が描き込まれた投影画像がスクリーン100に投射される。なお、画像処理手段47がPC101からの画像に文字や絵を重畳する代わりに、文字や絵の形状および画像上の書き込み位置の情報を、書き込み処理を指示するコマンドとともに通信装置5からPC101に送信してもよい。この場合、PC101側で文字や絵が重畳された画像がプロジェクタ装置1に送られて、操作者の入力操作に応じて文字や絵が描き込まれた投影画像がスクリーン100に投射される。
【0047】
また、解析手段46は、例えば図8に示すように、入力部として検出された操作者の指の投影画像上における位置に基づいて、投影画像内に含まれるボタンの操作を検出することができる。すなわち、操作者の入力を受け付けるボタンが投影画像に含まれており、操作者の指先が投影画像上のボタンの位置に所定時間とどまっている場合に、操作者が当該ボタンを操作したものと認識することができる。
【0048】
投影画像に含まれるボタンの操作が解析手段46により検出されると、そのボタン操作に対応するコマンドが通信装置5からPC101に送信される。PC101は、プロジェクタ装置1から送信されたコマンドに応じた処理を実行する。これにより、操作者の投影画像上でのボタン操作に応じた処理を実行することができる。
【0049】
また、解析手段46は、例えば図9に示すように、入力部として検出された操作者の指の動きから、投影画像のページ送りの操作を検出することができる。すなわち、操作者の指先がスクリーン100上で高速に移動し、移動距離や方向が所定の範囲内であるとき、操作者が投影画像のページ送りの操作をしたものと認識することができる。
【0050】
投影画像のページ送りの操作が解析手段46により検出されると、ページ送りの操作に対応するコマンドが通信装置5からPC101に送信される。PC101は、プロジェクタ装置1から送信されたコマンドに応じて、プロジェクタ装置1に送信する画像を次のページまたは前のページに切り替える処理を実行する。これにより、操作者のページ送りの操作に応じて、スクリーン100に投射される投影画像のページの切り替えを行うことができる。
【0051】
また、解析手段46は、例えば図10に示すように、入力部として検出された操作者の2本の指の動きから、投影画像を拡大する操作や縮小する操作を検出することができる。すなわち、操作者の2本の指が互いに広がるような動きをした場合、操作者が投影画像を拡大する操作を行ったものと認識することができる。また、操作者の2本の指が互いに近づくような動きをした場合、操作者が投影画像を縮小する操作を行ったものと認識することができる。
【0052】
投影画像の拡大や縮小の操作が解析手段46により検出されると、投影画像の拡大や縮小の操作に対応するコマンドが通信装置5からPC101に送信される。PC101は、プロジェクタ装置1から送信されたコマンドに応じて、プロジェクタ装置1に送信する画像を拡大する処理や縮小する処理を実行する。これにより、操作者の投影画像上での操作に応じて、スクリーン100に投射される投影画像を拡大したり縮小したりすることができる。
【0053】
図11は、制御装置4の上述した各機能構成により投影画像に対する操作者の操作入力を検出し、その操作入力に応じた処理を実行するまでの一連の処理を示すフローチャートである。以下、このフローチャートに沿って、制御装置4の処理の概要を説明する。
【0054】
まず、ステップS101において、距離画像生成手段41が、ステレオカメラ3の2つの撮像素子30a,30bから出力される2つの画像に基づいて、ステレオカメラ3の撮像範囲の距離画像を生成する。
【0055】
次に、ステップS102において、入力部検出手段43が、ステップS101で距離画像生成手段41が生成した距離画像に基づいて、プロジェクタ装置1から投影画像が投射されているスクリーン100までの距離を算出する。
【0056】
次に、ステップS103において、候補特定手段42が、ステレオカメラ3の2つの撮像素子30a,30bの一方から出力される画像を用いて、ステレオカメラ3の撮像範囲内に存在する物体の中から、入力部の候補となる物体を特定する。
【0057】
次に、ステップS104において、入力部検出手段43が、ステップS102で求めたスクリーン100までの距離を基準として、このスクリーン100の位置から所定の距離の範囲内に存在する物体を特定し、その物体のうち、ステップS103で候補特定手段42が入力部の候補として特定した物体を、入力部として検出する。
【0058】
次に、ステップS105において、位置検出手段44が、ステップS104で入力部検出手段43が検出した入力部の投影画像上における位置を検出する。
【0059】
次に、ステップS106において、動き検出手段45が、ステレオカメラ3の2つの撮像素子30a,30bの一方から連続的に出力される複数の画像を用いて、ステップS104で入力部検出手段43が検出した入力部が、投影画像上で動いているか否かを判定する。そして、投影画像上で入力部が動いていれば(ステップS106:Yes)、動き検出手段45は、ステップS107において、複数の画像間で入力部を追尾して入力部の動きを検出する。一方、投影画像上で入力部が動いていなければ(ステップS106:No)、ステップS107での動きの検出は行われずにステップS108に進む。
【0060】
次に、ステップS108において、解析手段46が、ステップS105で位置検出手段44が検出した入力部の位置や、ステップS107で動き検出手段45が検出した入力部の動きに基づいて、スクリーン100に投射された投影画像に対する操作者の操作入力を解析する。そして、ステップS109において、ステップS108で解析手段46が解析した操作入力の内容に従って、投影画像に対する処理が実行される。
【0061】
以上のように、本実施形態に係るプロジェクタ装置1では、ステレオカメラ3を用いて投影画像に対する操作者の操作入力を検出するため、操作者の操作入力を精度よく検出することができる。すなわち、ステレオカメラ3の距離画像を用いると、ステレオカメラ3の撮像範囲に存在する物体について、画像の面内(X,Y方向)の位置だけでなく、奥行き方向(Z方向)の位置、つまり物体までの距離を検出することができる。したがって、ステレオカメラ3の撮像範囲に存在する物体のうち、投影画像が投射されているスクリーン100に近い位置にある物体のみを、投影画像に対して操作入力を行う入力部として検出することができる。そして、検出した入力部の投影画像上における位置やX,Y方向の動きに基づいて、投影画像に対する操作者の操作入力を精度よく検出することができる。
【0062】
従来、ステレオカメラではない単眼カメラを備えるプロジェクタ装置は知られているが、単眼カメラでは、その撮像範囲に存在する物体までの距離(奥行き)を検出することができず、物体の3次元の座標位置を求めることができない。そのため、例えば特許文献1に記載の技術では、ボード(スクリーン)にタッチすると赤外線を発光するとともに超音波を発生する特殊なペンを入力部として用いることで、投影画像に文字や絵を書き込めるようにしている。しかしながら、この技術では、投影画像に文字や絵を書き込むためには特殊なペンを用いる必要があり、また、赤外線を受光したり超音波を受信したりする信号処理器をボードに設置する必要があるため、汎用性がなく、装置コストも嵩むといった問題がある。これに対して、本実施形態に係るプロジェクタ装置1では、特殊なペンなどを用いずに、例えば操作者の指で投影画像に文字や絵を書き込むことができる。また、本実施形態に係るプロジェクタ装置1は、例えば投影画像の拡大や縮小など、特殊なペンを用いた操作では実現しにくい様々な操作入力を適切に検出することができる。
【0063】
また、単眼カメラで撮像された画像から操作者の指の位置や動きなどを検出して投影画像に対する操作入力を解析するようにした場合、投影画像に同じような形状の指などが画像として含まれている場合に、その指を操作入力の対象として誤検出して誤った処理を行ってしまう虞がある。これに対して、ステレオカメラ3の距離画像を用れば、投影画像としてスクリーン100に投射されている指と、スクリーン100近傍で操作入力を行っている指とを明確に区別できるので、上記のような誤検出を防止することができる。
【0064】
なお、ステレオカメラ3の距離画像は、色の情報を持たず、また、物体の輪郭が正確でない場合が多いなどの欠点がある。このため、投影画像に対して操作入力を行う操作者の個人差や操作入力のシーン、条件などの違いによって、距離画像だけから操作者の指を検出することが困難な場合がある。このような場合は、上述したように、ステレオカメラ3の撮像素子30a,30bのいずれか一方から出力される画像を解析して撮像範囲内に存在する指を検出しておき、距離画像を用いてスクリーン100の近くに存在する指を特定することで、検出精度を高めることができる。
【0065】
ところで、プロジェクタ装置は一般的に、起動時に投影画像の焦点を自動で合わせるオートフォーカス機能や、投影画像の台形歪みを補正する台形補正機能などが搭載されているものが多い。このような機能を実現するため、従来のプロジェクタ装置では、様々なセンサを搭載していた。例えば、プロジェクタ装置にオートフォーカス機能を持たせるために、例えば特開2003−42733号公報に記載されるような光学センサを用い、投影画像が投射されるスクリーンまでの距離を計測して、その距離に合わせて投射レンズの位置を調整することが知られている。また、プロジェクタ装置に台形補正機能を持たせるために、特開2000−122617号公報に記載されているように、プロジェクタ装置の前面の異なる位置に複数の距離センサを設け、制御マイコンがこれらの検出結果に基づき投射面に対するプロジェクタ装置の傾斜角度を算出することが知られている。
【0066】
これに対して、本実施形態に係るプロジェクタ装置1はステレオカメラ3を備えるため、このステレオカメラ3を用いてオートフォーカス機能や台形補正機能を実現することができる。つまり、本実施形態に係るプロジェクタ装置1では、オートフォーカス機能を実現するための光学センサや、台形補正機能を実現するための複数の距離センサなどを別途設けることなく、ステレオカメラ3の距離画像を用いてスクリーン100までの距離やプロジェクタ装置1に対するスクリーン100の傾斜を検出することで、オートフォーカス機能や台形補正機能を実現することができる。以下では、本実施形態に係るプロジェクタ装置1におけるオートフォーカス機能や台形補正機能の具体例について説明する。
【0067】
プロジェクタ装置1のオートフォーカス動作は、例えば、制御装置4による制御のもとで、プロジェクタ装置1の起動時における初期設定動作の1つとして行われる。プロジェクタ装置1の電源スイッチがオンされると、まず、制御装置4が、投射装置2を起動して、記憶装置5などに予め格納されているオープニング画面の画像を投射装置2に供給する。そして、投射装置2がオープニング画像の投影画像をスクリーン100に投射する。また、制御装置4は、ステレオカメラ3を起動して、スクリーン100に投射されたオープニング画像の投影画像を含む撮像範囲の撮像を開始させる。オープニング画像には、例えば会社のロゴマークなどが含まれている。
【0068】
ステレオカメラ3の撮像素子30a,30bは、それぞれ撮像範囲の画像信号を出力し、この信号がデジタルデータに変換されて制御装置4に入力される。制御装置4(距離画像生成手段41)は、これらステレオカメラ3からの画像を用いて距離画像を生成し、例えば、距離画像の中からオープニング画像に含まれるロゴマークまでの距離を検出することで、プロジェクタ装置1からスクリーン100までの距離を検出する。
【0069】
そして、制御装置4は、検出したスクリーン100までの距離に基づいて、投射装置2の投射レンズ2aを光軸方向に移動させるための駆動制御信号を投射装置2に送る。投射装置2は、制御装置4からの駆動制御信号に応じて、投射レンズ2aを合焦位置に移動させる。これにより、ピントの合った投影画像をスクリーン100に投射することができる。
【0070】
一般にプロジェクタ装置では、スクリーン100に対する投影画像の投射角度がずれると台形歪み(キーストン歪とも呼ばれる)と呼ばれる歪んだ画面が投射されてしまう。そのため従来は、プロジェクタ装置の前面に2つの距離センサを設置して、これら2つの距離センサで測定したスクリーン100までの距離に基づきプロジェクタ装置とスクリーン100との傾斜角度θを算出し、算出した傾斜角度に基づいて投射画面の台形歪みを補正していた。
【0071】
図12は、従来の台形補正処理の概要を示す図である。図12に示すように、2つの距離センサ201,202を距離dだけ離してプロジェクタ装置200の前面側に設ける。このとき2つの距離センサ201,202からスクリーン100までの距離出力値をD1,D2とすると、プロジェクタ装置200とスクリーン100との傾斜角度θは、下記式(2)で表される。
tanθ=(D1−D2)/d ・・・(2)
【0072】
このような従来の方式では次のような問題がある。すなわち、2つの距離センサ201,202の距離出力値D1,D2からは、X軸周りの傾斜だけしか測定できない。Y軸周りの傾斜も測定するためには、さらに2つの距離センサを設けることが必要となる。また、2つの距離センサ201,202の間隔dは、プロジェクタ装置200の幅以上には大きくできない。そのため、傾斜を測定できる範囲は、大きなスクリーン100中のプロジェクタ装置200の幅以下の狭い範囲に過ぎず、スクリーン100全体の傾きを検知することはできない。
【0073】
本実施形態に係るプロジェクタ装置1では、上述したように、プロジェクタ装置1に対するスクリーン100の傾斜を検出するためにステレオカメラ3を用いる。ステレオカメラ3を用いる場合、ステレオカメラ3のレンズ32a,32bを広角に設計することで撮像範囲を広範囲にできるため、広範囲の測距を行うことができる。例えば対角画角を65degとすれば、プロジェクタ装置1の2m先にある100インチのスクリーン100全面の測距を行うことができる。したがって、図12に示したように、プロジェクタ装置200の前面に設けた2つの距離センサ201,202を用いてスクリーン100の傾斜角度θを検知するよりも、はるかに広範囲の傾斜を正確に検出することができる。
【0074】
また、ステレオカメラ3の撮像素子30a,30bは2次元センサであるため、測距点を撮像素子30a,30bの画素数に応じて多数設けることができる。例えばVGAサイズ(640×480画素)の撮像素子30a,30bを使用し、8×6画素を1つの単位としてマッチングしていくとすれば、80×80の測距点を設けることができる。図13は、この80×80の各測距点の測距結果を距離に応じた濃淡で表した図である。スクリーン100に傾斜がなく面内の距離がすべて等しい場合は、図13(b)のように面内の濃度が均一になる。一方、スクリーン100が左または右に傾いていれば、図13(a)または図13(b)のように、傾きに応じた不均一な濃度となる。
【0075】
以上のようにスクリーン100の面内の各測距点における距離が分かると、プロジェクタ装置1に対するスクリーン100の傾斜角度θを、下記式(3)から導き出すことができる。なお、下記式(3)において、L1はプロジェクタ装置1からスクリーン100に投射された投影画像の中心までの距離であり、L2はプロジェクタ装置1からスクリーン100に投射された投影画像の端部までの距離であり、αはステレオカメラ3のレンズ32a,32bの画角である。
tanθ=(L2−L1)/L2×tan(α/2) ・・・(3)
【0076】
ここではスクリーン100の左右の傾きについてのみ示したが、勿論、スクリーン100の上下の傾きも同様に検出可能である。また、ステレオカメラ3を用いて多数の測距点で測距を行うことにより、スクリーン100の面内で微小な傾きムラがあるような場合に、その面内の微小な傾きムラを検出することも可能である。なお、ここでは傾きの検出についてのみ述べたが、傾きを正確に検出できれば、従来と同様の方法によって投影画像の台形歪みを精度よく補正することができる。
【0077】
本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3では、上述したように、2つの撮像素子30a,30bが撮像素子基板34上に一体に形成されている。このような2つの撮像素子30a,30bは、例えば図14に示すように、半導体ウェハ50上に周知の半導体プロセスによって形成された多数の撮像素子30のうちの2つを、図中の一点鎖線の枠で示すように一体に切り出すことによって得ることができる。
【0078】
半導体ウェハ50上の多数の撮像素子30は、マスクを用いてパターニングが行われているので、これら多数の撮像素子30の中から切り出した撮像素子30a,30bは高精度に位置合わせされており、撮像素子30a,30b間の画素マトリックスは平行である。また、半導体ウェハ50の表面は精度の良い平面であるので、撮像素子30a,30bの法線も平行である。したがって、撮像素子30a,30bの位置ずれおよび角度ずれを補正するための作業を行うことなく、撮像素子30a,30bを精度よく配置することができる。そして、このような撮像素子30a,30bを備えるステレオカメラ3を用いることで、スクリーン100やスクリーン100の手前の撮像範囲内に存在する物体までの距離を正確に検出することができる。
【0079】
また、ステレオカメラ3が備える撮像素子30a,30bのサイズは、デジタルカメラなどに使用される撮像素子のサイズ(1/2.3インチ程度)に比べて大幅に小さくてもよい。例えば、携帯電話のカメラモジュールに使われている1/10インチ程度の小さな撮像素子を用いることができる。
【0080】
一般にサイズの小さい撮像素子は素子に入る光量が少なくなるため暗い場所に弱い、という欠点があるが、本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3は、投影画像が投射されているスクリーン100を撮像するため、光量は十分確保されている。したがって、サイズの小さい撮像素子を用いても十分に性能を発揮することができ、サイズの小さい撮像素子を用いることでステレオカメラ3の小型化を実現することができる。
【0081】
さらに携帯電話のカメラモジュール用の撮像素子は、大量生産されているのでコスト面でも有利であり、特に安価なものはVGA(640×480画素)サイズの撮像素子である。よって、周知の半導体プロセスで半導体ウェハ50上に形成された例えば、VGAサイズの多数の撮像素子のうちの2つを一体に切り出すことにより、図4(b)に示したような撮像素子基板34上に一体形成された2つの撮像素子30a,30bを低コストに得ることができる。これにより、ステレオカメラ3の低コスト化も図ることができる。
【0082】
なお、本実施形態ではステレオカメラ3が2つの撮像素子30a,30bを備えるものとして説明したが、ステレオカメラ3は3つ以上の撮像素子を備える構成であってもよい。この場合、半導体ウェハ50上に形成された多数の撮像素子のうち、一列に並んだ3つ以上の撮像素子を一体に切り出して、ステレオカメラ3の撮像素子として用いればよい。このようにすると、一列に並んだ3つ以上の撮像素子のうちの両端の撮像素子間の距離を基線長Dとして、この基線長Dを大きくすることができるため、上記式(1)からも分かるように、視差Δ(=D×f/L)が大きくなり、高精度な測距が可能となる。
【0083】
また、本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3では、上述したように、撮像素子30a,30bに光学像を結像させるレンズ32a,32bが、レンズアレイ32として一体に形成されている。これは、視差Δを高精度に検出するために、2つのレンズ32a,32bが別々の動きをしないようにするためである。例えば2つのレンズ32a,32bのうちのどちらか一方が位置ずれを起こした場合でも、両者が一体化していれば、他方のレンズも同じ方向に同じ量だけ位置ずれするため、2つのレンズ32a,32bの間隔である基線長Dは一定のまま保たれる。上記式(1)から分かるように、基線長Dとレンズ焦点距離fとが一定に保たれれば、視差Δも一定に保たれる。
【0084】
本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3は、上記のように一体化された撮像素子30a,30bと一体化されたレンズ32a,32bとを備えることで、振動や温度変化や経時変化が起こった場合でも、常に2つのレンズ32a,32bと、2つの撮像素子30a,30bとが一体で連動して動くため、視差Δは振動や温度変化や経時変化に対して安定である。これにより安定して高精度に距離の検出を行うことができる。一般にプロジェクタ装置は大画面を明るく表示させるために熱を発する大きな光源を搭載している。またその光源を冷やすために冷却用のファンが付いている。そのためプロジェクタ装置は熱や振動を持つことになるが、本実施形態に係るプロジェクタ装置1では、一体化された撮像素子30a,30bと一体化されたレンズ32a,32bとを備えたステレオカメラ3を用いるため、熱や振動に対して安定であり、精度の良い距離の検出を行うことができる。
【0085】
本実施形態に係るプロジェクタ装置1では、上述した制御装置4の特徴的な機能構成(図5参照)を、一例として、制御装置4のCPUが制御プログラムを実行することにより実現することができる。この場合、制御装置4のCPUが実行する制御プログラムは、例えば、記憶装置5に含まれるROMなどに予め組み込まれて提供される。
【0086】
また、制御装置4のCPUが実行する制御プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク、CD−R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、制御装置4のCPUが実行する制御プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、制御装置4のCPUが実行する制御プログラムを、インターネットなどのネットワーク経由で提供または配布するように構成してもよい。
【0087】
制御装置4のCPUが実行する制御プログラムは、例えば、距離画像生成手段41、候補特定手段42、入力部検出手段43、位置検出手段44、動き検出手段45、解析手段46および画像処理手段47を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMから制御プログラムを読み出して実行することにより上記各部が主記憶装置(例えばRAM)上にロードされ、距離画像生成手段41、候補特定手段42、入力部検出手段43、位置検出手段44、動き検出手段45、解析手段46および画像処理手段47が主記憶装置上に生成されるようになっている。
【0088】
以上、本発明の具体的な実施形態について説明したが、本発明は、上述した実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。例えば、上述した実施形態では、距離画像の生成を制御装置4側で行うようにしているが、ステレオカメラ3にデジタル信号を処理するDSPなどを搭載すれば、ステレオカメラ3において距離画像を生成して、生成した距離画像を制御装置4に送ることもできる。また、上述した実施形態では、投影画像に対する操作者の操作入力をプロジェクタ装置1において検出するようにしているが、ステレオカメラ3の距離画像をPC101に送信し、PC101側で投影画像に対する操作者の操作入力を検出するようにしてもよい。
【産業上の利用可能性】
【0089】
以上のように、本発明は、プロジェクタ装置からスクリーンに投射された投影画像に対する操作入力を検出する技術として有用である。
【符号の説明】
【0090】
1 プロジェクタ装置
2 投射装置
3 ステレオカメラ
4 制御装置
5 記憶装置
30a,30b 撮像素子
32a,32b レンズ
41 距離画像生成手段
42 候補特定手段
43 入力部検出手段
44 位置検出手段
45 動き検出手段
46 解析手段
100 スクリーン
【先行技術文献】
【特許文献】
【0091】
【特許文献1】特許第3950837号公報
【技術分野】
【0001】
本発明は、プロジェクタ装置および操作検出方法に関する。
【背景技術】
【0002】
従来、スクリーンに投影画像を投射するプロジェクタ装置が知られている。プロジェクタ装置は、装置自体は小型でも大画面の画像を表示できるため、例えば、会議や講演において多数の聴衆に資料を見やすく表示するためのツールとして、広く利用されている。また近年では、プロジェクタ装置に対して、投影画像に絵や文字などを書き込めるようにする機能や、投影画像の拡大縮小、ページ送りなどの操作を簡便に行えるようにする機能を持たせることが求められ、そのような機能を実現するための技術開発が行われている。
【0003】
例えば、特許文献1には、プロジェクタ装置の投影画像に絵や文字を書き込めるようにする技術が開示されている。この特許文献1に記載の技術は、ホワイトボード上に投射された投影画像をカメラで撮影するとともに、赤外光発光部と超音波発生部とを備えた電子ペンのホワイトボード上の位置を、赤外線受光部と超音波受信部とを備えた信号処理器により演算し、電子ペンのホワイトボード上の位置を、カメラで撮影した画像から求めた投影画像のホワイトボード上の位置によって正規化することで、投影画像上における電子ペンの位置を正確に得られるようにしている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の技術では、プロジェクタ装置の投影画像に絵や文字を書き込むためには、赤外光発光部と超音波発生部を備えた電子ペンを用いる必要がある。また、投影画像が投射される投射面に、予め赤外線受光部と超音波受信部とを備えた信号処理器を設けておく必要がある。このように、特許文献1に記載の技術では、予め準備された環境で専用の入力デバイスを用いた場合にのみ、プロジェクタ装置の投影画像に絵や文字を書き込む機能が実現されるため、汎用性がなく、装置コストも嵩むといった問題があった。
【0005】
本発明は、上記に鑑みてなされたものであって、専用の入力デバイスを用いずに投影画像に対する操作を検出して種々の機能を実現することができるプロジェクタ装置および操作検出方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明に係るプロジェクタ装置は、投影画像を投射面に投射する投射手段と、前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得する距離取得手段と、前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出する入力部検出手段と、前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析する解析手段と、を備えることを特徴とする。
【0007】
また、本発明に係る操作検出方法は、投影画像を投射面に投射する投射手段と、前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、を備えるプロジェクタ装置において実行される操作検出方法であって、複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得するステップと、前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出するステップと、前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析するステップと、を含むことを特徴とする。
【発明の効果】
【0008】
本発明によれば、投影画像の投射面を含む撮像範囲に存在する物体の距離情報を取得し、投射面から予め定めた所定距離の範囲内に存在する物体を、投影画像に対して入力操作を行う入力部と認識して、その入力部の位置または動きに基づいて投影画像に対する入力操作を解析するので、専用の入力デバイスを用いずに投影画像に対する入力を検出して種々の機能を実現することができるという効果を奏する。
【図面の簡単な説明】
【0009】
【図1】図1は、実施形態に係るプロジェクタ装置の正面図である。
【図2】図2は、実施形態に係るプロジェクタ装置の内部構成を示すブロック図である。
【図3】図3は、スクリーンに投射された投影画像の大きさとステレオカメラの撮像範囲の大きさとの関係を示す図である。
【図4】図4は、ステレオカメラの構造の一例を説明する図である。
【図5】図5は、制御装置の機能構成を示す機能ブロック図である。
【図6】図6は、ステレオカメラを用いた距離計測の原理を説明する図である。
【図7】図7は、投影画像に文字や絵を書き込む操作を検出する例を説明する図である。
【図8】図8は、投影画像内に含まれるボタンの操作を検出する例を説明する図である。
【図9】図9は、投影画像のページ送りの操作を検出する例を説明する図である。
【図10】図10は、投影画像を拡大する操作や縮小する操作を検出する例を説明する図である。
【図11】図11は、制御装置による一連の処理を示すフローチャートである。
【図12】図12は、従来の台形補正処理の概要を示す図である。
【図13】図13は、ステレオカメラの各測距点の測距結果を距離に応じた濃淡で表した図である。
【図14】図14は、半導体ウェハ上に形成された多数の撮像素子のうちの2つを一体に切り出す様子を示す模式図である。
【発明を実施するための形態】
【0010】
以下に添付図面を参照して、この発明に係るプロジェクタ装置および操作検出方法の実施の形態を詳細に説明する。
【0011】
図1は、本実施形態に係るプロジェクタ装置1の正面図であり、図2は、本実施形態に係るプロジェクタ装置1の内部構成を示すブロック図である。
【0012】
本実施形態に係るプロジェクタ装置1は、その正面(前面)1aがスクリーン(投射面)100と対向するように設置される。ここで、スクリーン100は任意であり、例えば部屋の壁面やホワイトボードなど、様々なものをスクリーン100として利用することができる。また、プロジェクタ装置1は、例えば、専用ケーブルもしくはUSB(Universal Serial Bus)ケーブルなどの汎用ケーブルを介して、パーソナルコンピュータなどの外部の情報処理装置(以下、PC101と表記する。)と、双方向に通信可能に接続される。なお、プロジェクタ装置1は、既知の無線通信プロトコルに従った無線通信により、PC101と双方向に通信可能に接続されてもよい。
【0013】
プロジェクタ装置1の正面1a側には、図1に示すように、投射装置2の投射レンズ2aと、ステレオカメラ3とが配設されている。また、プロジェクタ装置1の内部には、図2に示すように、投射装置2やステレオカメラ3に加えて、制御装置4、記憶装置5、および通信装置6が設けられている。
【0014】
投射装置2は、制御装置4による制御のもとで、投射レンズ2aを用いてスクリーン100に投影画像を投射する。投射装置2がスクリーン100に投射する投影画像は、例えば、PC101からプロジェクタ装置1に送られた画像である。つまり、PC101の表示部に表示されている画像が、投射装置2によって、投影画像としてスクリーン100に投射される。なお、以下では便宜的に、スクリーン100の横方向(プロジェクタ装置1の幅方向)に沿った方向をX方向、スクリーン100の縦方向(プロジェクタ装置1の高さ方向)に沿った方向をY方向、スクリーン100とプロジェクタ装置1とが対向する方向(プロジェクタ装置1の奥行き方向)に沿った方向をZ方向と表記する。
【0015】
ステレオカメラ3は、複数の撮像素子を備え、これら複数の撮像素子を用いて所定の撮像範囲を撮像する。ステレオカメラ3の撮像範囲は、少なくともスクリーン100に投射された投影画像を含む、プロジェクタ装置1の正面1a前方の所定の範囲である。図3は、スクリーン100に投射された投影画像の大きさとステレオカメラ3の撮像範囲の大きさとの関係を示す図である。ステレオカメラ3は、想定される投影画像の大きさ(スクリーン100のサイズ)と、スクリーン100からプロジェクタ装置1が設置される位置までの標準的な距離などを考慮して、スクリーン100に投射される投影画像の大きさよりも広範囲を撮像できるように、撮像素子に光学像を結像するレンズの画角などが設計されている。
【0016】
ここで、ステレオカメラ3の具体的な構造例について説明する。図4は、ステレオカメラ3の構造の一例を説明する図であり、図4(a)はステレオカメラ3の概略断面図、図4(b)は複数の撮像素子(本例では2つの撮像素子30a,30b)が形成された撮像素子基板34の平面図である。ステレオカメラ3は、図4(a)に示すように、筐体31と、レンズアレイ32と、アパーチャアレイ33と、撮像素子基板34と、回路基板35と、を備える。
【0017】
筐体31は、その内部に撮像素子基板34および回路基板35を収容する。また、筐体31は、その前面側(図4(a)の上側)にて、レンズアレイ32およびアパーチャアレイ33を固定支持する。レンズアレイ32およびアパーチャアレイ33は、筐体31により、撮像素子基板34に対して位置決めされた状態で支持される。ステレオカメラ3の筐体31は、その前面側がプロジェクタ装置1の正面1aに向くように、プロジェクタ装置1の内部に配設される。
【0018】
レンズアレイ32は、Y方向に沿って配列される一対のレンズ32a,32bが一体形成されてなる。レンズアレイ32は、例えば、透明樹脂材を成形して作製される。レンズ32aは、撮像範囲の画像を撮像素子30aに結像させる光学部品である。レンズ32bは、撮像範囲の画像を撮像素子30bに結像させる光学部品である。
【0019】
アパーチャアレイ33は、2つのアパーチャを有し、一方のアパーチャからレンズ32aを露出させ、他方のアパーチャからレンズ32bを露出させるように、レンズアレイ32上に配置される。アパーチャアレイ33は、2つのアパーチャ以外の部分で光を反射することで、レンズ32a,32b以外の部分から筐体31内部に光が入射することを防止する。
【0020】
撮像素子基板34には、2つの撮像素子30a,30bが所定の間隔で一体に形成されている。撮像素子30aは、レンズアレイ32のレンズ32aと対向し、撮像素子30bは、レンズアレイ32のレンズ32bと対向する。レンズアレイ32は、レンズ32aが撮像素子30aの中心と一致し、レンズ32bが撮像素子30bの中心と一致するように位置決めされている。撮像素子30aの中心と撮像素子30bの中心との間の距離、つまりレンズアレイ32のレンズ32aとレンズ32bとの光軸間の距離は、基線長と呼ばれる。本実施形態では、基線長は5〜30mm程度を想定している。
【0021】
撮像素子30a,30bは、例えば図4(b)に示すように、半導体ウェハ上に周知の半導体プロセスによって一体に形成されたCCDやCMOSなどの2次元イメージセンサである。各撮像素子30a,30bの撮像領域(受光面)30a1,30b1には、多数の受光素子(画素)が格子状に配列されている。
【0022】
レンズアレイ32のレンズ32aとレンズ32bは、光軸が互いに平行であり、画角も同じである。また、これらレンズ32a,32bは、それぞれ入射する被写体光が対応する各撮像素子30a,30bの撮像領域30a1,30b1に結像するような焦点距離を有している。
【0023】
回路基板35には、撮像素子30a,30bの出力信号を処理する信号処理回路が形成されている。回路基板35は、例えば、撮像素子基板35の背面(撮像素子30a,30bが形成された面とは逆の面)側に配置されている。本実施形態では、ステレオカメラ3の回路基板35に、撮像素子30a,30bが出力するアナログ信号に対してノイズ除去処理や増幅、AD変換などを行うAFE(アナログフロントエンド)回路が実装されているものとする。また、本実施形態では、回路基板35に、温度センサおよび温度補正回路が設けられているものとする。温度補正回路は、温度センサの検出値を用いて、温度変化に起因する撮像素子30a,30bの出力誤差を補正する。この温度補正回路による補正処理により、温度変化によってレンズアレイ32が膨張または収縮し、レンズ32a,32b間の距離(基線長)が変化したとしても、正しい出力が得られるようにしている。
【0024】
制御装置4は、記憶装置5を利用しながら各種の演算処理を行って、プロジェクタ装置1の動作を統括的に制御する。この制御装置4は、例えば、制御プログラムを実行するCPUや、ステレオカメラ3から出力される撮像範囲の画像信号(デジタルデータ)を処理するDSP(Digital Signal Processor)、入出力インターフェース回路などを備えた制御用IC(Integrated Circuit)として構成することができる。
【0025】
記憶装置5は、制御装置4が各種の演算を行うために用いる記憶装置であり、画像を一時的に保持するフレームメモリや、CPUのワークエリアとして利用されるRAM、制御プログラムや各種の制御用データが格納されるROMなどを含む。
【0026】
通信装置6は、プロジェクタ装置1がPC101との間で通信を行うための各種制御を実施する。
【0027】
図5は、本実施形態のプロジェクタ装置1において特徴的な制御装置4の機能構成を示す機能ブロック図である。これら図5に示す各機能構成は、例えば、制御装置4のCPUが制御プログラムを実行することによって実現される。また、これら各機能構成のうちの一部または全部を、例えばASIC(Application Specific Integrate Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより構成することもできる。
【0028】
制御装置4は、スクリーン100に投射された投影画像に対する操作者の操作入力を検出し、その操作入力に応じた処理を実行するための機能構成として、図5に示すように、距離画像生成手段(距離情報取得手段)41と、候補特定手段42と、入力部検出手段43と、位置検出手段44と、動き検出手段45と、解析手段46と、画像処理手段47と、を備える。なお、制御装置4は、これらの機能のほかに、ステレオカメラ3の画像を利用したオートフォーカス機能および台形補正機能を備えるが、これらの機能については後述する。
【0029】
距離画像生成手段41は、ステレオカメラ3の2つの撮像素子30a,30bが出力する2つの画像に基づいて、ステレオカメラ3の撮像範囲の距離画像を生成する。距離画像は、ステレオカメラ3の撮像範囲内に存在する様々な物体について、ステレオカメラ3の位置(つまりプロジェクタ装置1の設置位置)を起点とした各物体までの距離を表す画像(距離情報)である。なお、本実施形態では距離情報を距離画像として取得する例を説明するが、これに限られるものではない。
【0030】
例えば、距離画像生成手段41は、まず2つの撮像素子30a,30bが出力する2つの画像の対応関係を、例えば窓相関法などの既知の方法により特定する。窓相関法は、一方の画像に設定した窓領域との相関値が高い領域を、他方の画像から検索する処理である。相関値としては、例えば画像の輝度情報を利用することができる。
【0031】
距離画像生成手段41は、2つの撮像素子30a,30bが出力する2つの画像の対応関係を特定したら、次に、以下の原理により、ステレオカメラ3の撮像範囲内に存在する各物体(領域)までの距離を算出し、距離画像を生成する。なお、本実施形態では、ステレオカメラ3の撮像範囲内に存在する物体の距離情報を距離画像として取得するが、物体のXY方向の位置とプロジェクタ装置1からの距離(Z方向の位置)を特定できる情報を得られればよく、距離画像以外の情報を用いるようにしてもよい。
【0032】
図6は、ステレオカメラ3を用いた距離計測の原理を説明する図である。ステレオカメラ3の撮像範囲に物体Mが存在する場合、物体Mの光学像(被写体像)は、レンズ32aを介して撮像素子30aに結像するとともに、レンズ32bを介して撮像素子30bに結像する。撮像素子30aに結像する被写体像をma、撮像素子30bに結像する被写体像をmbとすると、撮像素子30a,30b上における被写体像maが結像する画素位置と被写体像mbが結像する画素位置とは、視差Δだけ離れている。
【0033】
ここで、レンズ32a,32bの光軸間の距離(基線長)をD、レンズ32a,32bと物体Mとの間の距離をL、レンズ32a,32bの焦点距離をfとし、Lがfよりも十分に大きな値であるとすると、下記の式(1)が成り立つ。
L=D×f/Δ ・・・(1)
【0034】
上記式(1)において、Dとfは既知の値であるため、2つの撮像素子30a,30bが出力する2つの画像から視差Δを検出することで、ステレオカメラ3の撮像範囲に存在する物体Mまでの距離Lを算出することができる。
【0035】
距離画像生成手段41は、例えば、2つの撮像素子30a,30bが出力する2つの画像の対応する窓領域のそれぞれについて、上記の方法によって距離Lを算出することにより、ステレオカメラ3の撮像範囲内に存在する物体までの距離を表す距離画像を生成する。
【0036】
候補特定手段42は、ステレオカメラ3の2つの撮像素子30a,30bのうち、少なくとも一方が出力する画像を用いて、ステレオカメラ3の撮像範囲内に存在する物体の中から、スクリーン100に投射された投影画像に対する操作入力を行う入力部の候補となる物体を特定する。本実施形態では、投影画像に対する操作入力を行う入力部として、例えば、スクリーン100に接触している、もしくはスクリーン100に極めて近い位置にある操作者の指を想定する。この場合、指の形状(細長い棒状)や指の色(肌色)などの指を特徴付ける情報が、記憶装置5に特徴量として記憶されている。
【0037】
候補特定手段42は、ステレオカメラ3の2つの撮像素子30a,30bのうち、少なくとも一方が出力する画像を解析し、例えば既知のパターンマッチングなどの手法により、この画像の中から記憶装置5に記憶されている特徴量との相関が高い物体を検出する。そして、候補特定手段42は、画像の中からパターンマッチングなどにより検出した物体を、入力部の候補として特定する。例えば、指の特徴量が記憶装置5に記憶されている場合、候補特定手段42は、ステレオカメラ3の撮像範囲内に存在する人の指を入力部の候補として検出する。なお、候補特定手段42は、操作者の指だけでなく、例えば、一般的な形状のペンやポインタなど、その特徴量を記憶装置5に記憶させておくことで、様々な物体を入力部の候補として検出することができる。
【0038】
入力部検出手段43は、距離画像生成手段41により生成された距離画像を用いて、スクリーン100からプロジェクタ装置1側に向かって所定の距離の範囲内に存在する物体を、投影画像に対する操作入力を行う入力部として検出する。具体的には、入力部検出手段43は、まず距離画像生成手段41により生成された距離画像からスクリーン100を特定して、スクリーン100までの距離(Z方向の位置)を求める。次に、入力部検出手段43は、距離画像からスクリーン100までの距離との差分が所定の距離の範囲内である物体を探索する。そして、入力部検出手段43は、得られた物体の形状が例えば操作者の指などの予め定めた形状に近ければ、その物体を入力部として検出する。なお、所定の距離は、例えば100〜150mm程度である。
【0039】
ここで、入力部の検出に用いる距離画像は、2つの撮像素子30a,30bが出力する画像の正確な対応付けが困難なため、物体の輪郭などが不正確である場合が多い。また、距離画像は色の情報を持たないため、例えば操作者の指などの入力部を距離画像のみから正しく検出することは難しい。そこで、入力部検出手段43は、距離画像を用いてスクリーン100から所定の距離の範囲内に存在する物体を探索し、距離画像から該当する物体が探索されたら、その物体のうち、候補特定手段42によって入力部の候補として特定された物体を、入力部として検出する。なお、距離画像から探索された物体と候補特定手段42によって入力部の候補として特定された物体との対応付は、例えば、画像のXY平面上における座標位置の情報を用いればよい。また、距離画像から入力部を精度よく検出できる場合は、入力部検出手段43は、距離画像のみから入力部を検出するようにしてもよい。この場合は、入力部検出手段43は不要となる。
【0040】
位置検出手段44は、入力部検出手段43が検出した入力部のX方向およびY方向における位置、より詳しくは、例えば操作者の指が入力部として検出された場合、スクリーン100に投射された投影画像上における指先の位置を検出する。指先は、指の形状から特定することができる。また、画像のXY平面上における指先の位置と投影画像の位置との関係から、投影画像上における指先の位置を検出することができる。
【0041】
動き検出手段45は、ステレオカメラ3の2つの撮像素子30a,30bのうち、少なくとも一方が連続的に出力する複数の画像を用いて、入力部検出手段43が検出した入力部の動きを検出する。例えば操作者の指が入力部として検出された場合、動き検出手段45は、スクリーン100に投射された投影画像上における指先の動きを検出する。この動き検出手段45の処理は、例えば、デジタルカメラなどにおける被写体追尾の手法を応用して実現することができる。
【0042】
すなわち、動き検出手段45は、例えば入力部検出手段43によりスクリーン100の近傍に存在する指が入力部として検出されると、撮像素子30aまたは撮像素子30bが出力する画像から、対応する指を検出して追尾のターゲットに設定し、その形状や色などの情報(ターゲット情報)を保持する。次に、動き検出手段45は、保持したターゲット情報を用いて、その後、撮像素子30aまたは撮像素子30bが次々に出力する画像から、対応する指を探索する。そして、動き検出手段45は、撮像素子30aまたは撮像素子30bが連続的に出力する画像間における指のXY平面における位置の変化を、入力部である指の動きとして検出する。
【0043】
この動き検出手段45による処理は、入力部検出手段43が入力部を検出しなくなった時点、すなわち、上記の例で説明すると、スクリーン100の近傍に存在していた操作者の指がスクリーン100から離れ、所定の距離の範囲外になった時点で終了する。そして、その後、入力部検出手段43が新たに入力部を検出すると、動き検出手段45は、新たな入力部の動きの検出を行う。なお、入力部検出手段43による処理と動き検出手段45による処理は、例えば、1/30sec〜1/60secごとの処理周期で同期して行われる。
【0044】
解析手段46は、位置検出手段44が検出した入力部の位置や、動き検出手段45が検出した入力部の動きに基づいて、スクリーン100に投射された投影画像に対する操作者の入力操作を解析する。以下では、投影画像に対する操作者の入力操作の具体例を例示するが、以下で例示する入力操作に限らず、様々な入力操作を解析することができる。
【0045】
解析手段46は、例えば図7に示すように、入力部として検出された操作者の指の動きから、投影画像に文字や絵を書き込む操作を検出できる。すなわち、操作者の指がスクリーン100から所定の距離の範囲内にない場合、つまりスクリーン100から離れている場合は、操作者の指は入力部として検出されていない。その後、操作者の指がスクリーン100に近づいて所定の距離の範囲内に入ると、操作者の指が入力部として検出され、指の動きの検出が開始される。その後、スクリーン100の近くで指が動くとその動きが検出され、指がスクリーン100から離れると動きの検出が終了する。このように、指がスクリーン100の近傍に存在するときだけ指の動きが検出されるので、その指先の位置の軌跡を、投影画像に書き込む文字や絵として認識することができる。
【0046】
投影画像に文字や絵を書き込む操作が解析手段46により検出されると、書き込む文字や絵の形状および画像上の書き込み位置(座標)の情報が、解析手段46から画像処理手段47へと送られる。画像処理手段47は、通信装置5が受信するPC101からの画像に対して、解析手段46からの情報に基づいて文字や絵を重畳する。そして、画像処理手段47によって文字や絵が重畳された画像が投射装置2に送られる。これにより、操作者の入力操作に応じて文字や絵が描き込まれた投影画像がスクリーン100に投射される。なお、画像処理手段47がPC101からの画像に文字や絵を重畳する代わりに、文字や絵の形状および画像上の書き込み位置の情報を、書き込み処理を指示するコマンドとともに通信装置5からPC101に送信してもよい。この場合、PC101側で文字や絵が重畳された画像がプロジェクタ装置1に送られて、操作者の入力操作に応じて文字や絵が描き込まれた投影画像がスクリーン100に投射される。
【0047】
また、解析手段46は、例えば図8に示すように、入力部として検出された操作者の指の投影画像上における位置に基づいて、投影画像内に含まれるボタンの操作を検出することができる。すなわち、操作者の入力を受け付けるボタンが投影画像に含まれており、操作者の指先が投影画像上のボタンの位置に所定時間とどまっている場合に、操作者が当該ボタンを操作したものと認識することができる。
【0048】
投影画像に含まれるボタンの操作が解析手段46により検出されると、そのボタン操作に対応するコマンドが通信装置5からPC101に送信される。PC101は、プロジェクタ装置1から送信されたコマンドに応じた処理を実行する。これにより、操作者の投影画像上でのボタン操作に応じた処理を実行することができる。
【0049】
また、解析手段46は、例えば図9に示すように、入力部として検出された操作者の指の動きから、投影画像のページ送りの操作を検出することができる。すなわち、操作者の指先がスクリーン100上で高速に移動し、移動距離や方向が所定の範囲内であるとき、操作者が投影画像のページ送りの操作をしたものと認識することができる。
【0050】
投影画像のページ送りの操作が解析手段46により検出されると、ページ送りの操作に対応するコマンドが通信装置5からPC101に送信される。PC101は、プロジェクタ装置1から送信されたコマンドに応じて、プロジェクタ装置1に送信する画像を次のページまたは前のページに切り替える処理を実行する。これにより、操作者のページ送りの操作に応じて、スクリーン100に投射される投影画像のページの切り替えを行うことができる。
【0051】
また、解析手段46は、例えば図10に示すように、入力部として検出された操作者の2本の指の動きから、投影画像を拡大する操作や縮小する操作を検出することができる。すなわち、操作者の2本の指が互いに広がるような動きをした場合、操作者が投影画像を拡大する操作を行ったものと認識することができる。また、操作者の2本の指が互いに近づくような動きをした場合、操作者が投影画像を縮小する操作を行ったものと認識することができる。
【0052】
投影画像の拡大や縮小の操作が解析手段46により検出されると、投影画像の拡大や縮小の操作に対応するコマンドが通信装置5からPC101に送信される。PC101は、プロジェクタ装置1から送信されたコマンドに応じて、プロジェクタ装置1に送信する画像を拡大する処理や縮小する処理を実行する。これにより、操作者の投影画像上での操作に応じて、スクリーン100に投射される投影画像を拡大したり縮小したりすることができる。
【0053】
図11は、制御装置4の上述した各機能構成により投影画像に対する操作者の操作入力を検出し、その操作入力に応じた処理を実行するまでの一連の処理を示すフローチャートである。以下、このフローチャートに沿って、制御装置4の処理の概要を説明する。
【0054】
まず、ステップS101において、距離画像生成手段41が、ステレオカメラ3の2つの撮像素子30a,30bから出力される2つの画像に基づいて、ステレオカメラ3の撮像範囲の距離画像を生成する。
【0055】
次に、ステップS102において、入力部検出手段43が、ステップS101で距離画像生成手段41が生成した距離画像に基づいて、プロジェクタ装置1から投影画像が投射されているスクリーン100までの距離を算出する。
【0056】
次に、ステップS103において、候補特定手段42が、ステレオカメラ3の2つの撮像素子30a,30bの一方から出力される画像を用いて、ステレオカメラ3の撮像範囲内に存在する物体の中から、入力部の候補となる物体を特定する。
【0057】
次に、ステップS104において、入力部検出手段43が、ステップS102で求めたスクリーン100までの距離を基準として、このスクリーン100の位置から所定の距離の範囲内に存在する物体を特定し、その物体のうち、ステップS103で候補特定手段42が入力部の候補として特定した物体を、入力部として検出する。
【0058】
次に、ステップS105において、位置検出手段44が、ステップS104で入力部検出手段43が検出した入力部の投影画像上における位置を検出する。
【0059】
次に、ステップS106において、動き検出手段45が、ステレオカメラ3の2つの撮像素子30a,30bの一方から連続的に出力される複数の画像を用いて、ステップS104で入力部検出手段43が検出した入力部が、投影画像上で動いているか否かを判定する。そして、投影画像上で入力部が動いていれば(ステップS106:Yes)、動き検出手段45は、ステップS107において、複数の画像間で入力部を追尾して入力部の動きを検出する。一方、投影画像上で入力部が動いていなければ(ステップS106:No)、ステップS107での動きの検出は行われずにステップS108に進む。
【0060】
次に、ステップS108において、解析手段46が、ステップS105で位置検出手段44が検出した入力部の位置や、ステップS107で動き検出手段45が検出した入力部の動きに基づいて、スクリーン100に投射された投影画像に対する操作者の操作入力を解析する。そして、ステップS109において、ステップS108で解析手段46が解析した操作入力の内容に従って、投影画像に対する処理が実行される。
【0061】
以上のように、本実施形態に係るプロジェクタ装置1では、ステレオカメラ3を用いて投影画像に対する操作者の操作入力を検出するため、操作者の操作入力を精度よく検出することができる。すなわち、ステレオカメラ3の距離画像を用いると、ステレオカメラ3の撮像範囲に存在する物体について、画像の面内(X,Y方向)の位置だけでなく、奥行き方向(Z方向)の位置、つまり物体までの距離を検出することができる。したがって、ステレオカメラ3の撮像範囲に存在する物体のうち、投影画像が投射されているスクリーン100に近い位置にある物体のみを、投影画像に対して操作入力を行う入力部として検出することができる。そして、検出した入力部の投影画像上における位置やX,Y方向の動きに基づいて、投影画像に対する操作者の操作入力を精度よく検出することができる。
【0062】
従来、ステレオカメラではない単眼カメラを備えるプロジェクタ装置は知られているが、単眼カメラでは、その撮像範囲に存在する物体までの距離(奥行き)を検出することができず、物体の3次元の座標位置を求めることができない。そのため、例えば特許文献1に記載の技術では、ボード(スクリーン)にタッチすると赤外線を発光するとともに超音波を発生する特殊なペンを入力部として用いることで、投影画像に文字や絵を書き込めるようにしている。しかしながら、この技術では、投影画像に文字や絵を書き込むためには特殊なペンを用いる必要があり、また、赤外線を受光したり超音波を受信したりする信号処理器をボードに設置する必要があるため、汎用性がなく、装置コストも嵩むといった問題がある。これに対して、本実施形態に係るプロジェクタ装置1では、特殊なペンなどを用いずに、例えば操作者の指で投影画像に文字や絵を書き込むことができる。また、本実施形態に係るプロジェクタ装置1は、例えば投影画像の拡大や縮小など、特殊なペンを用いた操作では実現しにくい様々な操作入力を適切に検出することができる。
【0063】
また、単眼カメラで撮像された画像から操作者の指の位置や動きなどを検出して投影画像に対する操作入力を解析するようにした場合、投影画像に同じような形状の指などが画像として含まれている場合に、その指を操作入力の対象として誤検出して誤った処理を行ってしまう虞がある。これに対して、ステレオカメラ3の距離画像を用れば、投影画像としてスクリーン100に投射されている指と、スクリーン100近傍で操作入力を行っている指とを明確に区別できるので、上記のような誤検出を防止することができる。
【0064】
なお、ステレオカメラ3の距離画像は、色の情報を持たず、また、物体の輪郭が正確でない場合が多いなどの欠点がある。このため、投影画像に対して操作入力を行う操作者の個人差や操作入力のシーン、条件などの違いによって、距離画像だけから操作者の指を検出することが困難な場合がある。このような場合は、上述したように、ステレオカメラ3の撮像素子30a,30bのいずれか一方から出力される画像を解析して撮像範囲内に存在する指を検出しておき、距離画像を用いてスクリーン100の近くに存在する指を特定することで、検出精度を高めることができる。
【0065】
ところで、プロジェクタ装置は一般的に、起動時に投影画像の焦点を自動で合わせるオートフォーカス機能や、投影画像の台形歪みを補正する台形補正機能などが搭載されているものが多い。このような機能を実現するため、従来のプロジェクタ装置では、様々なセンサを搭載していた。例えば、プロジェクタ装置にオートフォーカス機能を持たせるために、例えば特開2003−42733号公報に記載されるような光学センサを用い、投影画像が投射されるスクリーンまでの距離を計測して、その距離に合わせて投射レンズの位置を調整することが知られている。また、プロジェクタ装置に台形補正機能を持たせるために、特開2000−122617号公報に記載されているように、プロジェクタ装置の前面の異なる位置に複数の距離センサを設け、制御マイコンがこれらの検出結果に基づき投射面に対するプロジェクタ装置の傾斜角度を算出することが知られている。
【0066】
これに対して、本実施形態に係るプロジェクタ装置1はステレオカメラ3を備えるため、このステレオカメラ3を用いてオートフォーカス機能や台形補正機能を実現することができる。つまり、本実施形態に係るプロジェクタ装置1では、オートフォーカス機能を実現するための光学センサや、台形補正機能を実現するための複数の距離センサなどを別途設けることなく、ステレオカメラ3の距離画像を用いてスクリーン100までの距離やプロジェクタ装置1に対するスクリーン100の傾斜を検出することで、オートフォーカス機能や台形補正機能を実現することができる。以下では、本実施形態に係るプロジェクタ装置1におけるオートフォーカス機能や台形補正機能の具体例について説明する。
【0067】
プロジェクタ装置1のオートフォーカス動作は、例えば、制御装置4による制御のもとで、プロジェクタ装置1の起動時における初期設定動作の1つとして行われる。プロジェクタ装置1の電源スイッチがオンされると、まず、制御装置4が、投射装置2を起動して、記憶装置5などに予め格納されているオープニング画面の画像を投射装置2に供給する。そして、投射装置2がオープニング画像の投影画像をスクリーン100に投射する。また、制御装置4は、ステレオカメラ3を起動して、スクリーン100に投射されたオープニング画像の投影画像を含む撮像範囲の撮像を開始させる。オープニング画像には、例えば会社のロゴマークなどが含まれている。
【0068】
ステレオカメラ3の撮像素子30a,30bは、それぞれ撮像範囲の画像信号を出力し、この信号がデジタルデータに変換されて制御装置4に入力される。制御装置4(距離画像生成手段41)は、これらステレオカメラ3からの画像を用いて距離画像を生成し、例えば、距離画像の中からオープニング画像に含まれるロゴマークまでの距離を検出することで、プロジェクタ装置1からスクリーン100までの距離を検出する。
【0069】
そして、制御装置4は、検出したスクリーン100までの距離に基づいて、投射装置2の投射レンズ2aを光軸方向に移動させるための駆動制御信号を投射装置2に送る。投射装置2は、制御装置4からの駆動制御信号に応じて、投射レンズ2aを合焦位置に移動させる。これにより、ピントの合った投影画像をスクリーン100に投射することができる。
【0070】
一般にプロジェクタ装置では、スクリーン100に対する投影画像の投射角度がずれると台形歪み(キーストン歪とも呼ばれる)と呼ばれる歪んだ画面が投射されてしまう。そのため従来は、プロジェクタ装置の前面に2つの距離センサを設置して、これら2つの距離センサで測定したスクリーン100までの距離に基づきプロジェクタ装置とスクリーン100との傾斜角度θを算出し、算出した傾斜角度に基づいて投射画面の台形歪みを補正していた。
【0071】
図12は、従来の台形補正処理の概要を示す図である。図12に示すように、2つの距離センサ201,202を距離dだけ離してプロジェクタ装置200の前面側に設ける。このとき2つの距離センサ201,202からスクリーン100までの距離出力値をD1,D2とすると、プロジェクタ装置200とスクリーン100との傾斜角度θは、下記式(2)で表される。
tanθ=(D1−D2)/d ・・・(2)
【0072】
このような従来の方式では次のような問題がある。すなわち、2つの距離センサ201,202の距離出力値D1,D2からは、X軸周りの傾斜だけしか測定できない。Y軸周りの傾斜も測定するためには、さらに2つの距離センサを設けることが必要となる。また、2つの距離センサ201,202の間隔dは、プロジェクタ装置200の幅以上には大きくできない。そのため、傾斜を測定できる範囲は、大きなスクリーン100中のプロジェクタ装置200の幅以下の狭い範囲に過ぎず、スクリーン100全体の傾きを検知することはできない。
【0073】
本実施形態に係るプロジェクタ装置1では、上述したように、プロジェクタ装置1に対するスクリーン100の傾斜を検出するためにステレオカメラ3を用いる。ステレオカメラ3を用いる場合、ステレオカメラ3のレンズ32a,32bを広角に設計することで撮像範囲を広範囲にできるため、広範囲の測距を行うことができる。例えば対角画角を65degとすれば、プロジェクタ装置1の2m先にある100インチのスクリーン100全面の測距を行うことができる。したがって、図12に示したように、プロジェクタ装置200の前面に設けた2つの距離センサ201,202を用いてスクリーン100の傾斜角度θを検知するよりも、はるかに広範囲の傾斜を正確に検出することができる。
【0074】
また、ステレオカメラ3の撮像素子30a,30bは2次元センサであるため、測距点を撮像素子30a,30bの画素数に応じて多数設けることができる。例えばVGAサイズ(640×480画素)の撮像素子30a,30bを使用し、8×6画素を1つの単位としてマッチングしていくとすれば、80×80の測距点を設けることができる。図13は、この80×80の各測距点の測距結果を距離に応じた濃淡で表した図である。スクリーン100に傾斜がなく面内の距離がすべて等しい場合は、図13(b)のように面内の濃度が均一になる。一方、スクリーン100が左または右に傾いていれば、図13(a)または図13(b)のように、傾きに応じた不均一な濃度となる。
【0075】
以上のようにスクリーン100の面内の各測距点における距離が分かると、プロジェクタ装置1に対するスクリーン100の傾斜角度θを、下記式(3)から導き出すことができる。なお、下記式(3)において、L1はプロジェクタ装置1からスクリーン100に投射された投影画像の中心までの距離であり、L2はプロジェクタ装置1からスクリーン100に投射された投影画像の端部までの距離であり、αはステレオカメラ3のレンズ32a,32bの画角である。
tanθ=(L2−L1)/L2×tan(α/2) ・・・(3)
【0076】
ここではスクリーン100の左右の傾きについてのみ示したが、勿論、スクリーン100の上下の傾きも同様に検出可能である。また、ステレオカメラ3を用いて多数の測距点で測距を行うことにより、スクリーン100の面内で微小な傾きムラがあるような場合に、その面内の微小な傾きムラを検出することも可能である。なお、ここでは傾きの検出についてのみ述べたが、傾きを正確に検出できれば、従来と同様の方法によって投影画像の台形歪みを精度よく補正することができる。
【0077】
本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3では、上述したように、2つの撮像素子30a,30bが撮像素子基板34上に一体に形成されている。このような2つの撮像素子30a,30bは、例えば図14に示すように、半導体ウェハ50上に周知の半導体プロセスによって形成された多数の撮像素子30のうちの2つを、図中の一点鎖線の枠で示すように一体に切り出すことによって得ることができる。
【0078】
半導体ウェハ50上の多数の撮像素子30は、マスクを用いてパターニングが行われているので、これら多数の撮像素子30の中から切り出した撮像素子30a,30bは高精度に位置合わせされており、撮像素子30a,30b間の画素マトリックスは平行である。また、半導体ウェハ50の表面は精度の良い平面であるので、撮像素子30a,30bの法線も平行である。したがって、撮像素子30a,30bの位置ずれおよび角度ずれを補正するための作業を行うことなく、撮像素子30a,30bを精度よく配置することができる。そして、このような撮像素子30a,30bを備えるステレオカメラ3を用いることで、スクリーン100やスクリーン100の手前の撮像範囲内に存在する物体までの距離を正確に検出することができる。
【0079】
また、ステレオカメラ3が備える撮像素子30a,30bのサイズは、デジタルカメラなどに使用される撮像素子のサイズ(1/2.3インチ程度)に比べて大幅に小さくてもよい。例えば、携帯電話のカメラモジュールに使われている1/10インチ程度の小さな撮像素子を用いることができる。
【0080】
一般にサイズの小さい撮像素子は素子に入る光量が少なくなるため暗い場所に弱い、という欠点があるが、本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3は、投影画像が投射されているスクリーン100を撮像するため、光量は十分確保されている。したがって、サイズの小さい撮像素子を用いても十分に性能を発揮することができ、サイズの小さい撮像素子を用いることでステレオカメラ3の小型化を実現することができる。
【0081】
さらに携帯電話のカメラモジュール用の撮像素子は、大量生産されているのでコスト面でも有利であり、特に安価なものはVGA(640×480画素)サイズの撮像素子である。よって、周知の半導体プロセスで半導体ウェハ50上に形成された例えば、VGAサイズの多数の撮像素子のうちの2つを一体に切り出すことにより、図4(b)に示したような撮像素子基板34上に一体形成された2つの撮像素子30a,30bを低コストに得ることができる。これにより、ステレオカメラ3の低コスト化も図ることができる。
【0082】
なお、本実施形態ではステレオカメラ3が2つの撮像素子30a,30bを備えるものとして説明したが、ステレオカメラ3は3つ以上の撮像素子を備える構成であってもよい。この場合、半導体ウェハ50上に形成された多数の撮像素子のうち、一列に並んだ3つ以上の撮像素子を一体に切り出して、ステレオカメラ3の撮像素子として用いればよい。このようにすると、一列に並んだ3つ以上の撮像素子のうちの両端の撮像素子間の距離を基線長Dとして、この基線長Dを大きくすることができるため、上記式(1)からも分かるように、視差Δ(=D×f/L)が大きくなり、高精度な測距が可能となる。
【0083】
また、本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3では、上述したように、撮像素子30a,30bに光学像を結像させるレンズ32a,32bが、レンズアレイ32として一体に形成されている。これは、視差Δを高精度に検出するために、2つのレンズ32a,32bが別々の動きをしないようにするためである。例えば2つのレンズ32a,32bのうちのどちらか一方が位置ずれを起こした場合でも、両者が一体化していれば、他方のレンズも同じ方向に同じ量だけ位置ずれするため、2つのレンズ32a,32bの間隔である基線長Dは一定のまま保たれる。上記式(1)から分かるように、基線長Dとレンズ焦点距離fとが一定に保たれれば、視差Δも一定に保たれる。
【0084】
本実施形態に係るプロジェクタ装置1が備えるステレオカメラ3は、上記のように一体化された撮像素子30a,30bと一体化されたレンズ32a,32bとを備えることで、振動や温度変化や経時変化が起こった場合でも、常に2つのレンズ32a,32bと、2つの撮像素子30a,30bとが一体で連動して動くため、視差Δは振動や温度変化や経時変化に対して安定である。これにより安定して高精度に距離の検出を行うことができる。一般にプロジェクタ装置は大画面を明るく表示させるために熱を発する大きな光源を搭載している。またその光源を冷やすために冷却用のファンが付いている。そのためプロジェクタ装置は熱や振動を持つことになるが、本実施形態に係るプロジェクタ装置1では、一体化された撮像素子30a,30bと一体化されたレンズ32a,32bとを備えたステレオカメラ3を用いるため、熱や振動に対して安定であり、精度の良い距離の検出を行うことができる。
【0085】
本実施形態に係るプロジェクタ装置1では、上述した制御装置4の特徴的な機能構成(図5参照)を、一例として、制御装置4のCPUが制御プログラムを実行することにより実現することができる。この場合、制御装置4のCPUが実行する制御プログラムは、例えば、記憶装置5に含まれるROMなどに予め組み込まれて提供される。
【0086】
また、制御装置4のCPUが実行する制御プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク、CD−R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、制御装置4のCPUが実行する制御プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、制御装置4のCPUが実行する制御プログラムを、インターネットなどのネットワーク経由で提供または配布するように構成してもよい。
【0087】
制御装置4のCPUが実行する制御プログラムは、例えば、距離画像生成手段41、候補特定手段42、入力部検出手段43、位置検出手段44、動き検出手段45、解析手段46および画像処理手段47を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMから制御プログラムを読み出して実行することにより上記各部が主記憶装置(例えばRAM)上にロードされ、距離画像生成手段41、候補特定手段42、入力部検出手段43、位置検出手段44、動き検出手段45、解析手段46および画像処理手段47が主記憶装置上に生成されるようになっている。
【0088】
以上、本発明の具体的な実施形態について説明したが、本発明は、上述した実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。例えば、上述した実施形態では、距離画像の生成を制御装置4側で行うようにしているが、ステレオカメラ3にデジタル信号を処理するDSPなどを搭載すれば、ステレオカメラ3において距離画像を生成して、生成した距離画像を制御装置4に送ることもできる。また、上述した実施形態では、投影画像に対する操作者の操作入力をプロジェクタ装置1において検出するようにしているが、ステレオカメラ3の距離画像をPC101に送信し、PC101側で投影画像に対する操作者の操作入力を検出するようにしてもよい。
【産業上の利用可能性】
【0089】
以上のように、本発明は、プロジェクタ装置からスクリーンに投射された投影画像に対する操作入力を検出する技術として有用である。
【符号の説明】
【0090】
1 プロジェクタ装置
2 投射装置
3 ステレオカメラ
4 制御装置
5 記憶装置
30a,30b 撮像素子
32a,32b レンズ
41 距離画像生成手段
42 候補特定手段
43 入力部検出手段
44 位置検出手段
45 動き検出手段
46 解析手段
100 スクリーン
【先行技術文献】
【特許文献】
【0091】
【特許文献1】特許第3950837号公報
【特許請求の範囲】
【請求項1】
投影画像を投射面に投射する投射手段と、
前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、
複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得する距離取得手段と、
前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出する入力部検出手段と、
前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析する解析手段と、を備えることを特徴とするプロジェクタ装置。
【請求項2】
前記入力部の候補となる物体の特徴量を記憶する記憶手段と、
複数の前記撮像素子のうち少なくとも1つが出力する画像と、前記特徴量とに基づいて、前記撮像範囲に存在する物体の中から前記入力部の候補となる物体を特定する候補特定手段と、をさらに備え、
前記入力部検出手段は、前記投射面から予め定めた所定距離の範囲内に存在する物体のうち、前記候補特定手段が特定した物体を前記入力部として検出することを特徴とする請求項1に記載のプロジェクタ装置。
【請求項3】
複数の前記撮像素子のうち少なくとも1つが連続的に出力する複数の画像に基づいて、前記入力部の動きを検出する動き検出手段をさらに備え、
前記解析手段は、前記動き検出手段が検出した前記入力部の動きに基づいて、前記投影画像に対する入力操作を解析することを特徴とする請求項1または2に記載のプロジェクタ装置。
【請求項4】
前記撮像手段は、前記撮像範囲の画像を複数の前記撮像素子に各々結像させる複数のレンズを有し、
複数の前記撮像素子は同一基板上に一体に設けられ、
複数の前記レンズは、一体形成されて複数の前記撮像素子に対向配置されていることを特徴とする請求項1〜3のいずれか一項に記載のプロジェクタ装置。
【請求項5】
投影画像を投射面に投射する投射手段と、
前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、を備えるプロジェクタ装置において実行される操作検出方法であって、
複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得するステップと、
前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出するステップと、
前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析するステップと、を含むことを特徴とする操作検出方法。
【請求項1】
投影画像を投射面に投射する投射手段と、
前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、
複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得する距離取得手段と、
前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出する入力部検出手段と、
前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析する解析手段と、を備えることを特徴とするプロジェクタ装置。
【請求項2】
前記入力部の候補となる物体の特徴量を記憶する記憶手段と、
複数の前記撮像素子のうち少なくとも1つが出力する画像と、前記特徴量とに基づいて、前記撮像範囲に存在する物体の中から前記入力部の候補となる物体を特定する候補特定手段と、をさらに備え、
前記入力部検出手段は、前記投射面から予め定めた所定距離の範囲内に存在する物体のうち、前記候補特定手段が特定した物体を前記入力部として検出することを特徴とする請求項1に記載のプロジェクタ装置。
【請求項3】
複数の前記撮像素子のうち少なくとも1つが連続的に出力する複数の画像に基づいて、前記入力部の動きを検出する動き検出手段をさらに備え、
前記解析手段は、前記動き検出手段が検出した前記入力部の動きに基づいて、前記投影画像に対する入力操作を解析することを特徴とする請求項1または2に記載のプロジェクタ装置。
【請求項4】
前記撮像手段は、前記撮像範囲の画像を複数の前記撮像素子に各々結像させる複数のレンズを有し、
複数の前記撮像素子は同一基板上に一体に設けられ、
複数の前記レンズは、一体形成されて複数の前記撮像素子に対向配置されていることを特徴とする請求項1〜3のいずれか一項に記載のプロジェクタ装置。
【請求項5】
投影画像を投射面に投射する投射手段と、
前記投射面を含む撮像範囲を複数の撮像素子により撮像する撮像手段と、を備えるプロジェクタ装置において実行される操作検出方法であって、
複数の前記撮像素子が出力する複数の画像に基づいて、前記撮像範囲に存在する物体までの距離を表す距離情報を取得するステップと、
前記距離情報に基づいて、前記投射面から予め定めた所定距離の範囲内に存在する物体を、前記投影画像に対して入力操作を行う入力部として検出するステップと、
前記入力部の前記投影画像上における位置または動きに基づいて、前記投影画像に対する入力操作を解析するステップと、を含むことを特徴とする操作検出方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図14】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図14】
【図13】
【公開番号】特開2013−61552(P2013−61552A)
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願番号】特願2011−200832(P2011−200832)
【出願日】平成23年9月14日(2011.9.14)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成25年4月4日(2013.4.4)
【国際特許分類】
【出願日】平成23年9月14日(2011.9.14)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]