(57)【要約】      （修正有）【課題】投光部に近い位置に入力対象が存在する場合でも、遮光領域を正しく検出する座標入力装置、情報処理方法及びプログラムを提供する。【解決手段】再帰反射手段により反射された第１の投光手段からの光を受光した受光手段により出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出し、遮光領域が検出されたか否かを判定Ｓ２０２し、遮光領域が検出されなかったと判定された場合Ｓ２０２ＮＯ、再帰反射手段により反射された第１の投光手段と位置の異なる第２の投光手段からの光を受光した受光手段により出力される第２の出力信号と、第１の閾値と、に基づいて、遮光領域が生じているか否かを判定Ｓ２０９する。遮光領域が生じていると判定された場合、第１の出力信号と、第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出する。【選択図】図７
2017041078.tif 000002
【特許請求の範囲】
【請求項１】
入力面に向けて投光を行う第１の投光手段と、
前記第１の投光手段と異なる位置に設けられた、前記入力面に向けて投光を行う第２の投光手段と、
光を再帰的に反射する反射手段により反射される前記第１の投光手段及び前記第２の投光手段からの光を受光する受光手段と、
を有し、
前記入力面内の入力対象の位置情報を取得する座標入力装置であって、
前記第１の投光手段による投光に基づいて前記受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出手段と、
前記検出手段により遮光領域が検出されたか否かを判定する第１の判定手段と、
前記第１の判定手段により遮光領域が検出されなかったと判定された場合、前記第２の投光手段による投光に基づいて前記受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定手段と、
を有し、
前記検出手段は、更に、前記第２の判定手段により遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出する座標入力装置。
【請求項２】
入力面に向けて投光を行う投光手段と、
光を再帰的に反射する反射手段により反射される前記投光手段からの光を受光する第１の受光手段と、
前記第１の受光手段と異なる位置に設けられた、前記反射手段により反射される前記投光手段からの光を受光する第２の受光手段と、
を有し、
前記入力面内の入力対象の位置情報を取得する座標入力装置であって、
前記投光手段による投光に基づいて前記第１の受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出手段と、
前記検出手段により遮光領域が検出されたか否かを判定する第１の判定手段と、
前記第１の判定手段により遮光領域が検出されなかったと判定された場合、前記投光手段による投光に基づいて前記第２の受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定手段と、
を有し、
前記検出手段は、更に、前記第２の判定手段により遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出する座標入力装置。
【請求項３】
前記検出手段は、前記第２の判定手段により遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値に基づいて検出可能な遮光領域よりも遮光率が低い遮光領域を検出可能なように決定された前記第２の閾値と、に基づいて遮光領域を検出する請求項１又は２記載の座標入力装置。
【請求項４】
入力面に向けて投光を行う第１の投光手段と、
前記第１の投光手段と異なる位置に設けられた、前記入力面に向けて投光を行う第２の投光手段と、
光を再帰的に反射する反射手段により反射される前記第１の投光手段及び前記第２の投光手段からの光を受光する受光手段と、
を有し、
前記入力面内の入力対象の位置情報を取得する座標入力装置が実行する情報処理方法であって、
前記第１の投光手段による投光に基づいて前記受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出ステップと、
前記検出ステップで遮光領域が検出されたか否かを判定する第１の判定手段と、
前記第１の判定ステップで遮光領域が検出されなかったと判定された場合、前記第２の投光手段による投光に基づいて前記受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定ステップと、
を含み、
前記検出ステップでは、更に、前記第２の判定ステップで遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出する情報処理方法。
【請求項５】
入力面に向けて投光を行う投光手段と、
光を再帰的に反射する反射手段により反射される前記投光手段からの光を受光する第１の受光手段と、
前記第１の受光手段と異なる位置に設けられた、前記反射手段により反射される前記投光手段からの光を受光する第２の受光手段と、
を有し、
前記入力面内の入力対象の位置情報を取得する座標入力装置が実行する情報処理方法であって、
前記投光手段による投光に基づいて前記第１の受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出ステップと、
前記検出ステップで遮光領域が検出されたか否かを判定する第１の判定ステップと、
前記第１の判定ステップで遮光領域が検出されなかったと判定された場合、前記投光手段による投光に基づいて前記第２の受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定ステップと、
を含み、
前記検出ステップでは、更に、前記第２の判定ステップで遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出する情報処理方法。
【請求項６】
前記検出ステップでは、前記第２の判定ステップで遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値に基づいて検出可能な遮光領域よりも遮光率が低い遮光領域を検出可能なように決定された前記第２の閾値と、に基づいて遮光領域を検出する請求項４又は５記載の情報処理方法。
【請求項７】
入力面に向けて投光を行う第１の投光手段と、
前記第１の投光手段と異なる位置に設けられた、前記入力面に向けて投光を行う第２の投光手段と、
光を再帰的に反射する反射手段により反射される前記第１の投光手段及び前記第２の投光手段からの光を受光する受光手段と、
を有し、
前記入力面内の入力対象の位置情報を取得するコンピュータに、
前記第１の投光手段による投光に基づいて前記受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出ステップと、
前記検出ステップで遮光領域が検出されたか否かを判定する第１の判定ステップと、
前記第１の判定ステップで遮光領域が検出されなかったと判定された場合、前記第２の投光手段による投光に基づいて前記受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定ステップと、
を実行させ、
前記検出ステップでは、更に、前記第２の判定ステップで遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出するプログラム。
【請求項８】
入力面に向けて投光を行う投光手段と、
光を再帰的に反射する反射手段により反射される前記投光手段からの光を受光する第１の受光手段と、
前記第１の受光手段と異なる位置に設けられた、前記反射手段により反射される前記投光手段からの光を受光する第２の受光手段と、
を有し、
前記入力面内の入力対象の位置情報を取得するコンピュータに、
前記投光手段による投光に基づいて前記第１の受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出ステップと、
前記検出ステップで遮光領域が検出されたか否かを判定する第１の判定ステップと、
前記第１の判定ステップで遮光領域が検出されなかったと判定された場合、前記投光手段による投光に基づいて前記第２の受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定ステップと、
を実行させ、
前記検出ステップでは、更に、前記第２の判定ステップで遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、座標入力装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、座標入力装置として、様々な方式が提案され、それらの方式を利用する製品（タッチパネルやデジタイザ）が製品化されている。例えば、特殊な器具等を用いずに、指で画面上をタッチすることで、ＰＣ（パーソナルコンピュータ）等の端末の操作を簡単に行うことがきるタッチパネル等が広く用いられている。
座標入力方式としては、抵抗膜を用いたもの、超音波を用いたもの等、種々のものがある。光を用いたものとして、特許文献１のように、座標入力面外側に再帰性反射材を設け、投光部からの光を再帰反射材で反射し、その光量分布を受光部により検出する方式（光学遮光方式）が知られている。光学遮光方式は、座標入力領域内の指等の入力対象で遮光された遮光領域を検出し、検出した遮光領域の方向から遮光位置、つまり、入力対象の座標位置情報を取得する座標入力方式である。また、特許文献２では、デバイスを任意の位置に設置できるようにして使い勝手を向上するシステムが開示されている。
座標入力装置を表示装置と一体にすることによって、表示装置の表示画面をタッチすることで、表示状態を制御したり、あたかも紙と鉛筆の様な関係で、指示位置の軌跡を筆跡として表示したりすることが可能となる。
表示装置としては、液晶表示装置等の各種方式のフラットパネルディスプレイやフロントプロジェクターが知られている。フラットパネルディスプレイの場合には、座標入力方式を備える装置を重ねて配置すれば、このような操作環境を実現でき、スマートフォン等の携帯装置は、その代表例と言える。フラットパネルディスプレイの大型化に伴い、大型のタッチパネルと組み合わせて、デジタルサイネージや電子黒板等の分野で導入が進んでいる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２７２３５３号公報
【特許文献２】特開２０１４−４８９６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
光学遮光方式の座標入力装置は、上述したように再帰反射材において反射する光の光量分布の中に、指等の入力対象によって遮光されて影となった部分があるかどうかを検出する。このとき、入力対象が投光部に近い位置に入力された場合に、投光部からの光が入力対象で反射して受光部で検出される場合がある。その場合、座標入力装置は、受光部で指等の入力対象から直接反射された光の影響によって、入力対象により遮光された遮光領域を検出できない可能性がある。すなわち、座標入力装置は、入力対象の位置情報を正確に取得できない可能性がある。特に、座標入力装置が大型化すると、投光部の投光強度が大きくなるため、指からの直接反射のレベルが大きくなり、遮光領域を検出できない領域が大きくなってしまう。
対策としては、例えば、入力領域から座標入力装置までの距離を大きくとることで影響を小さくする方法が考えられる。しかし、その場合、座標入力装置を設置するために入力領域の周囲に、より広い領域が必要となったり、入力領域が従来よりも狭い範囲に限定されたりする等して、ユーザの利便性が低下してしまう。
そこで、本発明は、投光部に近い位置に入力対象が存在する場合でも、遮光領域を正しく検出することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の座標入力装置は、入力面に向けて投光を行う第１の投光手段と、前記第１の投光手段と異なる位置に設けられた、前記入力面に向けて投光を行う第２の投光手段と、光を再帰的に反射する反射手段により反射される前記第１の投光手段及び前記第２の投光手段からの光を受光する受光手段と、を有し、前記入力面内の入力対象の位置情報を取得する座標入力装置であって、前記第１の投光手段による投光に基づいて前記受光手段から出力される第１の出力信号と、第１の閾値と、に基づいて、遮光領域を検出する検出手段と、前記検出手段により遮光領域が検出されたか否かを判定する第１の判定手段と、前記第１の判定手段により遮光領域が検出されなかったと判定された場合、前記第２の投光手段による投光に基づいて前記受光手段から出力される第２の出力信号と、前記第１の閾値と、に基づいて、遮光領域が生じているか否かを判定する第２の判定手段と、を有し、前記検出手段は、更に、前記第２の判定手段により遮光領域が生じていると判定された場合、前記第１の出力信号と、前記第１の閾値と異なる第２の閾値と、に基づいて、遮光領域を検出する。
【発明の効果】
【０００６】
本発明によれば、投光部に近い位置に入力対象が存在する場合でも、遮光領域を正しく検出することができる。
【図面の簡単な説明】
【０００７】
【図１】座標入力システムのシステム構成等の一例を示す図である。
【図２】センサバーのハードウェア構成の一例を示す図である。
【図３】センサバーの機能構成の一例を示す図である。
【図４】初期設定処理の一例を示すフローチャートである。
【図５】受光部からの出力信号を説明する図である。
【図６】センサユニットの座標算出処理を説明する図である。
【図７】座標入力システムの処理の一例を示すフローチャートである。
【図８】投光状態及び受光状態を説明する図である。
【図９】受光部からの出力信号を説明する図である。
【図１０】座標算出処理を説明する図である。
【図１１】座標入力システムのシステム構成等の一例を示す図である。
【図１２】座標入力システムの処理の一例を示すフローチャートである。
【図１３】投光状態及び受光状態を説明する図である。
【図１４】受光部からの出力信号を説明する図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
＜実施形態１＞
図１は、本実施形態の座標入力システムのシステム構成等の一例を示す図である。座標入力システムは、センサバー１Ｌ、センサバー１Ｒを含む。
センサバー１Ｌは、センサユニット２−Ｌ１、センサユニット２−Ｌ２、演算制御回路３Ｌを含む。また、センサバー１Ｒは、２−Ｒ１及び２−Ｒ２、演算制御回路３Ｒを含む。以下では、センサバー１Ｌ及びセンサバー１Ｒを総称する場合、センサバー１と表記する。センサバー１Ｌ、センサバー１Ｒは、座標入力装置の一例である。本実施形態では、処理の主体は、センサバー１Ｌとセンサバー１Ｒとを含む座標入力システムであるとするが、センサバー１Ｌとセンサバー１Ｒとの機能を有する単一の座標入力装置であってもよい。
表示領域８は、平面状のホワイトボード等の表示面上に存在する領域であり、フロントプロジェクター等により画像が投影表示されている領域である。本実施形態では、表示領域８は、ホワイトボード上に配置されるが、壁面等に配置されることとしてもよい。
【００１０】
センサバー１Ｌ、１Ｒは、ユーザにより、表示領域８の外側に設置される。センサバー１には、例えば、マグネットが内蔵されていて、ホワイトボードに貼りつけることができる。
センサバー１Ｌ、センサバー１Ｒの側面には、それぞれ、図１に示すように再帰反射部４Ｌ、再帰反射部４Ｒが装着されている。以下では、再帰反射部４Ｌ、再帰反射部４Ｒを総称する場合、再帰反射部４と表記する。そして、再帰反射部４Ｌ、再帰反射部４Ｒは、それぞれ、対向する辺に設けられたセンサバー１Ｒ又はセンサバー１Ｌのセンサユニットが投光した赤外光を再帰的に反射できるように配置される。
演算制御回路３Ｌは、センサユニット２−Ｌ１及びセンサユニット２−Ｌ２を制御して、その出力結果を演算処理すると共に、センサバー１Ｒの演算制御回路３Ｒとコード接続されていて、相互に通信を行うことで演算制御回路３Ｒの制御を行う。演算制御回路３Ｒは、センサユニット２−Ｒ１及びセンサユニット２−Ｒ２を制御して、その出力結果を演算処理して、演算制御回路３Ｌに演算処理の結果を送信する。そして、演算制御回路３Ｌは、４つのセンサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１及び２−Ｒ２からの出力結果を処理して、指示位置を算出し、パーソナルコンピュータ等の外部の情報処理装置へ結果を出力する。以下では、演算制御回路３Ｌ及び演算制御回路３Ｒを総称する場合、演算制御回路３と表記する。
【００１１】
本実施形態では、演算制御回路３Ｌと演算制御回路３Ｒとは、コード接続（有線接続）されるとしたが、例えば、無線等の通信機能を互いに搭載して、無線接続されることとしてもよい。
センサユニット２−Ｌ１は、投光部６−Ｌ１、投光部６−Ｌ２、受光部５−Ｌ１を含む。投光部６−Ｌ１、投光部６−Ｌ２は、４つのセンサユニットによって囲まれた座標入力有効領域７に向けて光を投光する赤外ＬＥＤや投光レンズ等により構成される。本実施形態では、受光部５−Ｌ１は、到来光を受光するラインＣＣＤで構成されることとするが、受光レンズ等で構成されることとしてもよい。投光部６―Ｌ１、投光部６−Ｌ２及び受光部５−Ｌ１の内部構造等については、例えば特許文献２に詳細に開示されている構成を用いてもよい。
以下では、受光部５−Ｌ１、５−Ｌ３、５−Ｒ１、５−Ｒ３を総称する場合、受光部５と表記する。以下では、投光部６−Ｌ１、６−Ｌ２、６−Ｌ３、６−Ｌ４、６−Ｒ１、６−Ｒ２、６−Ｒ３、６−Ｒ４を総称する場合、投光部６と表記する。
【００１２】
センサユニット２−Ｌ２、２−Ｒ１、２−Ｒ２の詳細は、センサユニット２−Ｌ１と同様である。以下では、センサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１、２−Ｒ２を総称する場合、センサユニット２と表記する。
投光部６−Ｌ１、６−Ｌ３、６−Ｒ１、６−Ｒ３は、それぞれセンサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１、２−Ｒ３のメインの投光部である。また、投光部６−Ｌ２、６−Ｌ４、６−Ｒ２、６−Ｒ４は、それぞれセンサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１、２−Ｒ２のサブの投光部である。
受光部５は、対抗するセンサバー１の再帰反射部４により反射された投光部６からの光を受光する。入力がなされた場合、指等の入力対象により投光部６からの光が遮られ遮光領域が生じるため、座標入力システムは、受光部５を介して、入力対象により生じた遮光領域（影）を検出することができる。
座標入力有効領域７は、座標入力システムにより遮光領域を検出可能な領域である。座標入力有効領域７は、センサバー１の各センサユニット２の検出可能範囲に基づいて、決定される。座標入力有効領域７は、入力面の一例である。入力がされた場合、座標入力システムは、座標入力有効領域７内（入力面内）に存在する指等の入力対象により生じた遮光領域を検出できる。
【００１３】
図２は、演算制御回路３Ｌのハードウェア構成等の一例を示す図である。
演算制御回路３Ｌは、ＣＰＵ６１、クロック発生回路（ＣＬＫ）６２、Ａ／Ｄコンバータ６３、メモリ６４、シリアル通信部６７、インタフェース６８を含む。
ＣＰＵ６１は、演算制御回路３Ｌ、センサユニット２−Ｌ１、２−Ｌ２等を制御する演算制御回路であり、ワンチップマイコン等で構成される。ＣＬＫ６２は、クロック信号を生成するための発振回路である。Ａ／Ｄコンバータ６３は、アナログ信号とデジタル信号との変換を行う変換器である。メモリ６４は、ＣＰＵ６１のワークエリア、各種データの記憶領域等として機能する記憶装置である。また、演算制御回路３Ｌは、不揮発性メモリを含む。不揮発性メモリは、各種設定データ、各種閾値等を記憶する。ＣＰＵ６１は、シリアル通信部６７を介して、外部の装置とシリアル通信を行う。インタフェース６８は、外部の装置との接続に利用されるインタフェースである。インタフェース６８は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェース等で構成される。
【００１４】
ＣＰＵ６１は、センサユニット２−Ｌ１及び２−Ｌ２のラインＣＣＤである受光部５用の制御信号を出力し、センサユニット２−Ｌ１及び２−Ｌ２のラインＣＣＤである受光部５のシャッタータイミングやデータの出力制御等を行う。ＣＬＫ６２は、受光部５用のクロックを、ＣＰＵ６１、センサユニット２−Ｌ１及び２−Ｌ２に送信する。ＣＰＵ６１は、送信されたクロックに基づいて、センサユニット２−Ｌ１及び２−Ｌ２の受光部５との同期をとって各種制御を行う。また、ＣＰＵ６１は、赤外ＬＥＤを駆動するＬＥＤ駆動信号を、センサユニット２−Ｌ１及び２−Ｌ２に送信する。センサユニット２−Ｌ１及び２−Ｌ２は、送信されたＬＥＤ駆動信号に基づいて、それぞれ投光部６−Ｌ１、投光部６−Ｌ２を駆動させる。
ＣＰＵ６１が、メモリ６４等に記憶されたプログラムに基づき処理を実行することによって、後述する図３等の演算制御回路３Ｌの機能及び後述する図４、７、１２のフローチャートの処理が実現される。
演算制御回路３Ｒのハードウェア構成は、外部へのインタフェースの仕様を除き、演算制御回路３Ｒと同様である。
演算制御回路３ＲのＣＰＵが、演算制御回路３Ｒのメモリ等に記憶されたプログラムに基づき処理を実行することによって、演算制御回路３Ｒの機能及び処理が実現される。
【００１５】
ＣＰＵ６１は、センサユニット２−Ｌ１及び２−Ｌ２の受光部５からの検出信号を、Ａ／Ｄコンバータ６３を介して、アナログ値からデジタル値に変換する。ＣＰＵ６１は、デジタル値に変換された検出信号をメモリ６４に記憶する。ＣＰＵ６１は、記憶した検出信号に基づいて、遮光領域の方向を示す角度を計算し、計算した角度から幾何学的な指等の入力対象の位置を算出し、算出した位置の情報を、インタフェース６８を介して、パーソナルコンピュータ等の外部の情報処理装置に出力する。
先に示した通り、各センサバー１の演算制御回路３Ｌ及び３Ｒは、それぞれ２つのセンサユニット２を制御している。ＣＰＵ６１は、シリアル通信部６７を介して、センサバー１Ｒの演算制御回路３Ｒに制御信号を送信して、回路間の同期を行う。そして、ＣＰＵ６１は、演算制御回路３Ｒから、必要なデータの取得を行う。
【００１６】
演算制御回路３Ｌ及び３Ｒ間の動作は、マスター・スレーブ制御による動作である。本実施形態では、マスターは、演算制御回路３Ｌであるものとする。また、スレーブは、演算制御回路３Ｒである。しかし、演算制御回路３Ｌ及び３Ｒは、マスター・スレーブのどちらにもなりうる。ＣＰＵ６１は、例えば、ユーザによるディップスイッチ等の切替部への操作に基づいて、設定されたポートに切替信号を取得することで、演算制御回路３Ｌについて、マスター・スレーブを切り替えることができる。同様に、演算制御回路３ＲのＣＰＵは、例えば、ユーザによるディップスイッチ等の切替部への操作に基づいて、設定されたポートに切替信号を取得することで、演算制御回路３Ｒについて、マスター・スレーブを切り替えることができる。
マスター側であるＣＰＵ６１は、対向する辺に設けられたセンサバー１Ｒのセンサユニット２−Ｒ１及び２−Ｒ２のデータを取得するために、制御信号をスレーブの演算制御回路３Ｒにシリアル通信部６７を介して送信する。そして、演算制御回路３ＲのＣＰＵは、センサユニット２−Ｒ１及び２−Ｒ２を介して得た指等の入力対象により生じた遮光領域の角度情報を、演算制御回路３Ｒのシリアル通信部を介して、マスター側の演算制御回路３Ｌに送信する。このように、マスター側であるＣＰＵ６１は、スレーブ側の演算制御回路３Ｒに制御信号を送信することで、演算制御回路３Ｒ及びセンサユニット２−Ｒ１、２−Ｒ２を制御する。本実施形態では、インタフェース６８は、マスター側の演算制御回路３Ｌに実装される。
【００１７】
図３は、演算制御回路３Ｌの機能構成の一例を示す図である。
演算制御回路３Ｌは、制御部７０、センサ信号取得部７１、遮光領域検出部７２、位置算出部７３を含む。制御部７０は、センサバー１の初期設定、各種設定値の変更、外部装置への入出力等を行う。センサ信号取得部７１は、センサユニット２の受光部５から出力される出力信号を取得し、取得した出力信号をメモリ６４等に記憶する。
遮光領域検出部７２は、センサ信号取得部７１により取得され、メモリ６４等に記憶された出力信号に基づいて、遮光領域を検出する。位置算出部７３は、遮光領域検出部７２により検出された遮光領域の方向を示す角度の情報に基づいて、指等の入力対象の位置情報を算出する。
【００１８】
図４は、座標入力システムの初期設定処理の一例を示すフローチャートである。ユーザが装置の電源を入れると、演算制御回路３ＬのＣＰＵ６１は、プログラムを実行し、初期設定処理を開始する。演算制御回路３のＣＰＵが実行する初期設定処理について図３を用いて、説明する。
Ｓ１０１において、制御部７０は、入出力ポートの設定、タイマ設定、ラインＣＣＤである受光部５の蓄積電荷のリセット等のシステム内部の各種初期化を行う。座標入力システムの動作モードには、座標入力有効領域７に対して指等のタッチがあることを検出する第一の座標検出モード、装置が設置された位置を検出するための第二の座標検出モード等がある。第二の座標検出モードでは、センサバー１Ｌのセンサユニット２−Ｌ１及び２−Ｌ２は、対向するセンサバー１Ｒのセンサユニット２−Ｒ１及び２−Ｒ２が投光した赤外ＬＥＤの赤外光を直接検出する。同様に、センサバー１Ｒのセンサユニット２−Ｒ１及び２−Ｒ２は、対向するセンサバー１Ｌのセンサユニット２−Ｌ１及び２−Ｌ２が投光した赤外ＬＥＤの赤外光を直接検出する。
Ｓ１０２において、制御部７０は、受光部５が受光する光量の最適化を行う。ホワイトボードや表示領域８のサイズは使用環境により様々であり、センサバー１間の距離は、適宜ユーザによって決定される。したがって、センサバー１の配置の状態によって、センサユニット２により検出される光の強度が異なる。そのため、制御部７０は、初めにＳ１０２の処理を行う際に、センサユニット２のラインＣＣＤである受光部５のシャッター開放時間や赤外ＬＥＤの点灯時間、赤外ＬＥＤの駆動電流等を、予め設定された初期値に決定する動作設定を行う。
【００１９】
Ｓ１０３において、センサ信号取得部７１は、センサユニット２の受光部５の出力信号を取得する。
Ｓ１０４において、遮光領域検出部７２は、Ｓ１０３で取得されたセンサユニット２の受光部５の出力信号に基づいて、光を検出したか否かを判定する。図５（ｄ）は、センサユニット２の受光部５から出力される信号波形の一例を示す図である。図５（ｄ）のグラフの横軸は、画素番号であり、画素番号Ｎｊが座標入力有効領域７の対角線方向に対応する画素で、画素番号Ｎｆが正面方向に対応する画素とする。また、図５（ｄ）のグラフの縦軸は、電圧であり、光を受光すると光の強度に応じて電圧が低下する。図４の処理では、センサユニット２のそれぞれは、対向する辺に設けられた２つのセンサユニット２の投光部６からの投光をそれぞれ受光する。そのため、図５（ｄ）のグラフには、正常状態では、二つのピークが形成されている。
遮光領域検出部７２は、Ｓ１０３で取得された出力信号に二つのピークが形成されているか否かを判定することで、光を検出したか否かを判定する。遮光領域検出部７２は、Ｓ１０３で取得された出力信号に二つのピークが形成されていると判定した場合、光を検出したと判定し、Ｓ１０３で取得された出力信号に二つのピークが形成されていないと判定した場合、光を検出していないと判定する。遮光領域検出部７２は、Ｓ１０３で取得されたセンサユニット２の受光部５の出力信号に基づいて、光を検出したと判定した場合、センサバー１の配置が適切であるとしてＳ１０６の処理に進む。遮光領域検出部７２は、光を検出していないと判定した場合、センサバー１の配置が適切でないとしてＳ１０５の処理に進む。
【００２０】
Ｓ１０５において、制御部７０は、センサユニット２の受光部５の視野範囲に対向する位置に配置されるべきセンサユニット２が配置されていない可能性があるとして、センサバー１の配置／設置が不適な状態にあることを示す情報を出力する。例えば、制御部７０は、センサバー１の配置／設置が不適な状態にあることを示す情報を音声出力することとしてもよいし、投光部６を点滅させることでセンサバー１の配置／設置が不適な状態にあることを通知するものとしてもよい。それにより、制御部７０は、センサバー１の配置／設置が不適な状態にある旨をユーザに報知して、センサバーの再設置を促す。そして、ユーザによる再設置が完了すると、制御部７０は、再びステップＳ１０１から初期設定処理を開始する。
Ｓ１０６において、制御部７０は、Ｓ１０３で取得された検出信号の波形レベルのチェックを行う。より具体的には、例えば、制御部７０は、検出信号の波形（波形レベル）の少なくとも一部が設定された閾値を超える場合、対向する位置にあるセンサユニット２の光が強すぎると判定し、Ｓ１０２の処理に進む。そして、制御部７０は、例えば、露光時間をより短くする等の設定値の変更を行う。すると再度、ステップＳ１０７でチェックされる信号波形は、光の強度が小さくなっているはずである。また、制御部７０は、各センサユニット（本実施形態の場合、四つ）について、波形レベルが予め設定された範囲内に収まっている場合、波形レベルが適正であると判定し、Ｓ１０７の処理に進む。
Ｓ１０７において、位置算出部７３は、センサユニット２の相対的な位置関係を算出するセンサ位置算出処理を行う。センサ位置情報は、座標入力有効領域７に対する指等の入力対象の座標値を算出するときに必要となる情報である。
【００２１】
Ｓ１０７における各センサユニット２の位置算出処理の一例を、図６を用いて説明する。まず、位置算出部７３は、各センサユニット２で得られた検出信号の波形に基づいて、図６に示すθ１〜θ４を算出する。位置算出部７３は、検出信号の波形が図５（ｄ）のようになったとすると、２つのピークに対応する画素番号を角度値に変換する。位置算出部７３は、画素番号から角度値への変換に、テーブル参照や変換式等を用いる。変換式は、例えば、高次の多項式を用いると精度を確保できるが、多項式の次数等は計算能力及び精度スペック等を鑑みて決定すればよい。
本実施形態では、五次多項式を用いる場合の例を示す。装置の組み立ての際等に、受光部５の画素番号と、受光部５からみた方向を示す角度との関係を測定する。位置算出部７３は、測定した結果に基づいて、五次多項式近似により画素番号を角度値へ変換するための係数を求める。そして、係数データを装置内のメモリ６４、不揮発性メモリ等に記憶する。五次多項式の六個の係数を、Ｌ５、Ｌ４、Ｌ３、Ｌ２、Ｌ１、Ｌ０とすると、画素番号Ｎｐｒに対応する角度値θは、次の式（１）で求まることとなる。
θ＝（Ｌ５＊Ｎｐｒ＋Ｌ４）＊Ｎｐｒ＋Ｌ３）＊Ｎｐｒ＋Ｌ２）＊Ｎｐｒ＋Ｌ１）＊Ｎｐｒ＋Ｌ０                    式（１）
位置算出部７３は、式（１）により２つのピークに対応するそれぞれの画素番号を角度値へ変換する。そして変換した２つの角度値の差がそれぞれθ１〜θ４となる。例えば、センサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１、２−Ｒ２が検出した波形から算出された二つの角度値の差が、それぞれθ１、θ２、θ３、θ４となる。
【００２２】
位置算出部７３は、図６に示したように、センサユニット２−Ｌ１を原点として、原点からセンサユニット２−Ｒ１を直線で結ぶ方向をＸ軸、Ｘ軸の垂直方向をＹ軸として決定する。そして、位置算出部７３は、センサユニット２−Ｒ１の座標値を、（１、０）という値に設定して、センサユニットの相対的な位置関係に基づく座標系設定を行う。
センサバー１Ｌは、図６に示すように、センサユニット２−Ｌ１の光軸と、センサユニット２−Ｌ１の光軸中心とセンサユニット２−Ｌ２の光軸中心とを結ぶ線分と、のなす角度がπ／２［ｒａｄ］となるように設計されている。センサユニット２の光軸とは、センサユニット２の投光部６のうち、受光部に近い方の投光部の光軸のことを示す。同様に、他のセンサユニット２の光軸と、そのセンサユニット２の光軸中心と同一のセンサバーの他のセンサユニット２の光軸中心とを結ぶ線分と、のなす角度も、π／２［ｒａｄ］となる。センサユニット２のそれぞれについて、光軸方向に対応するラインＣＣＤである受光部５の画素番号は、予め測定されており、演算制御回路３のＣＰＵが実行するプログラム上に記憶されている。
図６のθ５は、センサユニット２−Ｌ１の光軸中心とセンサユニット２−Ｒ２の光軸中心とを結ぶ線分と、センサユニット２−Ｌ１の光軸中心とセンサユニット２−Ｌ２の光軸中心とを結ぶ線分と、のなす角度である。センサユニット２−Ｌ１の光軸方向の画素番号を角度値に変換した値をθｋ、センサユニット２−Ｌ１からセンサユニット２−Ｒ２の投光部６−Ｒ３の投光した光を検出したピークに対応する画素番号を角度値に変換した値をθｊとする。θ５は、θｋ、θｊから、次の式（２）により求まる。
θ５＝π／２−（θｊ−θｋ）                    式（２）
【００２３】
位置算出部７３は、θ１からθ５を用いて、センサユニット２−Ｌ２及びセンサユニット２−Ｒ２の座標を算出する。位置算出部７３は、θ１からθ５の値が分かっているため、幾何学的な計算により各センサユニット２の光軸中心の座標の原点に対しての相対的な位置関係を算出することができる。特許文献２には、各センサユニット２の光軸中心の座標の原点に対しての相対的な位置関係の算出処理についての詳細が開示されている。算出されたセンサユニット２−Ｌ２の光軸中心の座標を（ＸＬ、ＹＬ）、センサユニット２−Ｒ２の光軸中心の座標を（ＸＲ、ＹＲ）とする。
Ｓ１０８以降の処理では、演算制御回路３Ｌは、各センサユニット２について、対向するセンサバー１に設けられた再帰反射部４で再帰反射された投光部６が投光した赤外光を、受光部５により検出した時の信号レベルを最適化する。センサバー１の配置は一意ではないため、演算制御回路３Ｌは、センサバー１の配置に応じた検出レベルを最適化することで、安定した信号を得ることができる。
Ｓ１０８において、制御部７０は、センサユニット２のラインセンサ（ラインＣＣＤ）である受光部５のシャッター開放期間、赤外ＬＥＤの点灯期間、赤外ＬＥＤの駆動電流の設定を含む第一の検出モードで動作設定を行う。
【００２４】
Ｓ１０９において、センサ信号取得部７１は、対向するセンサバー１に設けられた再帰反射部４で再帰反射された投光部６が投光した赤外光を受光部５により受光し、受光部５から出力信号を取得する。センサ信号取得部７１は、Ｓ１０８で光量が最大に得られるような動作設定を行っていると、その動作設定での受光部５の出力信号を取得することになる。
Ｓ１０９で取得された出力信号は、照明時のデータであり、図５（ｂ）の様な波形となる。電圧Ａが検出した光量の最大レベルであり、電圧Ｂが光を検出していないレベルである。
Ｓ１１０において、制御部７０は、Ｓ１０９で取得された出力信号の波形レベルが適正か否かを判定する。波形レベルとは、取得された出力信号の波形における電圧の幅である。受光部５が受光する光が強すぎると、ラインＣＣＤのダイナミックレンジの範囲を超え、出力が飽和することになるので、座標入力システムは、正確な角度を算出することが困難となる。
制御部７０は、Ｓ１０９で取得された出力信号の波形レベルが飽和していると判定した場合、出力信号の波形レベルが適正でないとして、Ｓ１０８の処理に進む。そして、制御部７０は、検出信号の波形レベルがより小さくなるように、動作設定を行う。制御部７０は、再帰反射光を検出するので、Ｓ１０２〜Ｓ１０６での処理でセンサユニット２の投光を直接、受光部５で検出する場合と比べて、投光する光量が大きくなるように設定することになる。制御部７０は、Ｓ１０９で取得された出力信号の波形レベルが飽和していないと判定した場合、出力信号の波形レベルが適正であるとして、Ｓ１１１の処理に進む。
【００２５】
Ｓ１１１において、センサ信号取得部７１は、投光部６による投光がない状態での受光部５の出力をＡ／Ｄコンバータによりデジタルデータに変換する。そして、センサ信号取得部７１は、変換したデジタルデータをＢａｓｅ＿Ｄａｔａ［Ｎ］としてメモリ６４等に記憶する。図５（ａ）は、Ｂａｓｅ＿Ｄａｔａ［Ｎ］の一例を示す図である。図５（ａ）のグラフは、ラインＣＣＤである受光部５のバイアスのばらつき等を含んだグラフとなり、電圧Ｂ付近の測定値となっている。ここで、［Ｎ］は、ラインＣＣＤである受光部５のＣＣＤ画素番号であり、有効な入力範囲に対応する画素番号が用いられる。Ｂａｓｅ＿Ｄａｔａ［Ｎ］に含まれる画素番号ｋに対応するデータは、Ｂａｓｅ＿Ｄａｔａ「ｋ」として参照される。
Ｓ１１２において、センサ信号取得部７１は、投光部６による投光がある状態での受光部５の出力をＡ／Ｄコンバータによりデジタルデータに変換する。図５（ｂ）は、投光部６による投光がある状態での受光部５から出力された出力信号の一例を示す図である。センサ信号取得部７１は、変換したデジタルデータをＲｅｆ＿Ｄａｔａ［Ｎ］としてメモリ６４に記憶する。このようにして、センサ信号取得部７１は、全てのセンサユニットについて、Ｂａｓｅ＿Ｄａｔａ［Ｎ］及びＲｅｆ＿Ｄａｔａ［Ｎ］を取得すると、一連の初期設定処理を完了する。
【００２６】
図７は、座標入力システムの処理の一例を示すフローチャートである。
演算制御回路３Ｌは、まず、図４の初期設定処理を行い、続いて第一の検出モードによる検出処理を行う。
Ｓ２０１において、センサ信号取得部７１は、センサユニット２のメインの投光部（投光部６−Ｌ１、６−Ｌ３、６−Ｒ１、６−Ｒ３）を介して、赤外光を投光する。投光された赤外光は、対向するセンサバー１に設けられた再帰反射部４で再帰反射される。そして、センサ信号取得部７１は、再帰反射された光を受光部５で検出した時の信号を第一の出力信号として取得する。センサ信号取得部７１は、座標入力有効領域７に何らの入力がない場合には、各センサユニット２からＮｏｒｍ＿ｄａｔａ［Ｎ］に類似する出力信号を取得する。また、センサ信号取得部７１は、座標入力有効領域７に対するタッチ操作があって光路が遮られると、各センサユニット２から、例えば、図５（ｃ）のような出力信号を取得する。図５（ｃ）のグラフは、画素番号Ｎｃの辺りで光信号が検出されていないことを示している。
【００２７】
Ｓ２０２において、遮光領域検出部７２は、何れかのセンサユニット２で、遮光領域が検出されたか否か判定する。遮光領域検出部７２は、Ｓ２０１で取得された出力信号の各画素における遮光率を設定された閾値と比較することで遮光の程度を検査して、遮光領域があるか否かを判定する。遮光領域検出部７２は、Ｓ２０１で取得された出力信号の各画素における遮光率が設定された閾値以上である場合、入力対象により生じた遮光領域（影）に対応する画素であり、遮光領域が検出されたと判定する。また、遮光領域検出部７２は、Ｓ２０１で取得された出力信号の各画素における遮光率が設定された閾値未満である場合、入力対象により生じた遮光領域（影）ではない画素であり、遮光領域が検出されなかったと判定する。
遮光の程度は、遮光率Ｓとして定義され算出される。図５（ｃ）の例において、光を受光していない領域に対応する画素の電圧をＶｂ、入力対象Ｃの方向に対応する画素の電圧をＶｃ、投光部６からの投光を受光した画素の電圧をＶｄとする。入力対象Ｃの方向に対応する受光部５の画素番号Ｎｃの位置における遮光率Ｓは、次の式で算出される。
Ｓ＝（Ｖｃ−Ｖｄ）／（Ｖｂ−Ｖｄ）                    式（３）
【００２８】
入力対象が座標入力有効領域７内にない状態ではＶｃ＝Ｖｄとなるので、Ｓは、０となる。一方、入力対象によって影が発生している状態ではＶｃ＝Ｖｂとなるので、Ｓは、１となる。遮光領域検出部７２は、Ｓが予め設定された第一の閾値以上となった場合、遮光領域であると判定する。第一の閾値は、遮光領域に対応する遮光率であるかどうかの判定に利用される値で、例えば０．９などに設定される。遮光率が０．９ということは、入力対象によって、入力対象が座標入力有効領域７内にない状態における光量の９０％が遮光されたことを示す。
本実施形態では、再帰反射部４は、例えば数ｍｍ程度（例えば２〜３ｍｍ）の幅を持っているため、指等の入力対象が表示面にタッチしていなくても、表示面から数ｍｍ程度まで近づいた時点で光の一部を遮って遮光が発生する。そして、遮光率Ｓは、指が表示面へ近づくにつれて上昇し、指が表示面に触れた時点でほぼ１となる。
遮光領域検出部７２は、第一の閾値の値が大きいほど、指等がより表示面に近づいたときに有効な遮光領域であると判定するので、表示面への接触と入力の感覚が近くなり、ユーザによる直観的な動作を実現できる。一方、電気的ノイズの影響や、投光／受光レベルの時間的変化等を考慮すると、指等が表示面に触れていても遮光率Ｓが１とならない場合がある。従って、第一の閾値は、０．９程度の１より多少小さい値が設定される。
【００２９】
センサユニット２の受光部５は、センサユニット２から近い位置において、例えば指等による入力がされると、指等によって反射された投光部６からの光の一部を受光する場合がある。その場合、反射光の影響で指等の入力対象の方向の影（遮光領域）が薄くなり、遮光率Ｓは、低下する。遮光領域検出部７２は、遮光率Ｓが第一の閾値より小さくなると、指等が表示面にタッチしているのに有効な入力として判定せず、遮光領域を検出できないという問題が発生する。
そこで、本実施形態では、遮光領域検出部７２は、メインの投光部６及び受光部５と位置の異なるサブの投光部６−Ｌ２、６−Ｌ４、６−Ｒ２、６−Ｒ４を利用することで、上記の問題を解決する。
【００３０】
図８（ａ）は、Ｓ２０２におけるセンサユニット２−Ｌ１の遮光領域の検出処理の例を説明する図である。センサバー１Ｌとセンサバー１Ｒとの間の黒点は、指等の入力対象を示す。図８（ａ）の例は、メインの投光部６−Ｌ１からの投光により、入力対象（黒の点）の影が対向するセンサバー１Ｒの再帰反射部４に形成されている状況を示している。受光部５−Ｌ１は、入力対象を本来遮光領域（遮光率Ｓが第一の閾値以上の領域）として検出するはずである。しかし、受光部５−Ｌ１は、入力対象がセンサユニットに近い場合、入力対象からの反射光によって、遮光領域として検出できない（遮光率が第一の閾値未満となってしまう）。
その場合の受光部５−Ｌ１からの出力信号の波形の例を図９（ａ）に示す。図９（ａ）の例では、入力対象からの直接反射光により、受光部５−Ｌ１からの出力信号における入力対象の位置に対応する画素Ｎｃの辺りの電圧は、Ｂより低くなっている。遮光領域検出部７２は、画素Ｎｃの辺りにおける遮光率Ｓが第一の閾値未満である場合、遮光領域を有効に検出できない。
遮光領域検出部７２は、何れかのセンサユニット２で、遮光領域が検出されたと判定した場合、Ｓ２０３の処理に進み、何れのセンサユニット２でも遮光領域が検出されていないと判定した場合、Ｓ２０８の処理に進む。
【００３１】
Ｓ２０８において、センサ信号取得部７１は、各センサユニット２のサブ投光部に投光させ、各センサユニットの受光部５からの出力信号を、第二の出力信号として取得する。
図８（ｂ）は、Ｓ２０８におけるセンサユニット２−Ｌ１の影の検出処理の例を説明する図である。投光部６−Ｌ２の位置が投光部６−Ｌ１及び受光部５−Ｌ１の位置と異なるため、以下のようになる。即ち、受光部５−Ｌ１から見た入力対象から直接反射された投光部６−Ｌ２からの光の方向と、受光部５−Ｌ１から見た入力対象と投光部６−Ｌ２からの光とによりセンサバー１Ｒの再帰反射部４上に形成された影の方向とが異なる。そのため、受光部５−Ｌ１は、入力対象から直接反射された投光部６−Ｌ２からの光を検出すると同時に、対向するセンサバー１Ｒの再帰反射部４上に形成された影を検出することができる。
その場合の受光部５−Ｌ１からの出力信号の波形の例を図９（ｂ）に示す。図９（ｂ）の例では、図９（ａ）と同様に、画素Ｎｃの辺りに電圧がＢよりも低いピークが存在しており、更に、画素Ｎｃの近傍に対向するセンサバーの再帰反射部４上に形成された影に対応する電圧がほぼＢであるピークが存在している。図８（ｂ）におけるセンサバー１Ｒの再帰反射部４上に形成された影は、入力対象からの直接の反射の影響を受けない影となっているので、図９（ｂ）の例では、その影に対応する画素の電圧は、ほぼＢとなり、遮光率Ｓは、ほぼ１となる。
【００３２】
Ｓ２０９において、遮光領域検出部７２は、Ｓ２０８で取得された第二の出力信号に基づいて、各センサユニット２について遮光領域を検出し、遮光領域が生じているか否か判定する。遮光領域検出部７２は、Ｓ２０２と同様に、第一の閾値に基づいて、第二の出力信号中に遮光領域に対応する信号が存在するか否か判定する。遮光領域検出部７２は、Ｓ２０８で取得された出力信号の各画素における遮光率を第一の閾値と比較することで遮光の程度を検査して、有効な遮光領域があるか否かを判定する。遮光領域検出部７２は、Ｓ２０８で取得された出力信号の各画素における遮光率が第一の閾値以上である場合、光の遮光領域（影）に対応する画素であり、遮光領域が生じていると判定する。また、遮光領域検出部７２は、Ｓ２０８で取得された出力信号の各画素における遮光率が第一の閾値未満である場合、光の遮光領域（影）ではない画素であり、遮光領域が生じていないと判定する。遮光領域検出部７２は、何れかのセンサユニット２で遮光領域が検出され、入力対象により遮光領域が生じていると判定した場合、Ｓ２１０の処理に進む。遮光領域検出部７２は、何れのセンサユニット２でも遮光領域が検出されておらず、入力対象により遮光領域が生じていないと判定した場合、Ｓ２０１の処理に進む。
遮光領域検出部７２は、第二の出力信号が図９（ｂ）の信号であるすると、画素Ｎｃの近傍に電圧がＢであり、遮光率Ｓがほぼ１の部分があるので、遮光領域が検出され、入力対象により遮光領域が生じていると判定する。この場合、メインの投光部６に投光させた場合の受光部５の出力信号から遮光領域が検出されなかったが、サブの投光部６に投光させた場合の受光部５の出力信号から遮光領域が検出されたため、投光部６の近くに指等の入力対象が存在する可能性がある。
【００３３】
Ｓ２１０において、遮光領域検出部７２は、第一の出力信号から、遮光領域を検出するため、再度検査を行う。遮光領域検出部７２は、Ｓ２１０の遮光領域検出処理を行う場合、図９（ａ）に示したように電圧がＢよりも低く、遮光率Ｓが第一の閾値よりも低くなっている部分を検出する必要があるため、第一の閾値よりも低い、設定された第二の閾値を利用する。即ち、第二の閾値は、第一の閾値よりも遮光率が低い部分を検出することが可能なように設定された閾値であり、第一の閾値が表す遮光率（例えば０．９）よりも低い遮光率の値（例えば０．４）となる。遮光領域検出部７２は、Ｓ２０１で取得された出力信号の各画素の中で、遮光率が第二の閾値以上である部分を有効な遮光領域であるとして検出する。第二の閾値は、入力対象からの直接反射光の程度等を考慮した値（例えば０．４等）に設定される。遮光領域検出部７２は、遮光領域を検出したらＳ２０３の処理に進む。
Ｓ２０３において、位置算出部７３は、出力信号に遮光部分（影）が生成されているセンサユニット２を選択する。
Ｓ２０４において、位置算出部７３は、式（１）に基づいて、Ｓ２０３で選択した各センサユニット２において検出された影に応じた画素番号に対応する角度値を各々算出する。
【００３４】
Ｓ２０５において、位置算出部７３は、相対座標系上の座標値算出を行う。位置算出部７３は、各センサユニットで検出された入力対象により生じた遮光領域の方向を示す角度値、各センサユニット２の光軸中心の座標値（ＸＬ、ＹＬ）、（ＸＲ、ＹＲ）を用いて、相対座標系での入力対象の位置の相対座標値（ｘ、ｙ）を算出する。入力対象の位置の相対座標値の算出処理については、例えば、特許文献２に詳細が開示されている。
図１０は、座標算出処理を説明する図である。各センサユニット２の視野範囲は、図１０（ａ）〜（ｄ）で各センサユニット２から出ている２つの矢印で示された間の範囲となる。したがって、位置算出部７３は、センサユニット２−Ｌ１、センサユニット２−Ｌ１からの出力信号を用いて入力対象の位置を算出することができるのは以下のような場合である。即ち、位置算出部７３は、センサユニット２−Ｌ１の視野範囲とセンサユニット２−Ｌ２の視野範囲と座標入力有効領域７との共通領域（図１０（ａ）のハッチング部）の範囲に対して入力対象が存在する場合のみ、その指示位置を算出することができる。
【００３５】
入力対象が図１０（ａ）のハッチング部の範囲に存在せず、図１０（ｂ）、（ｃ）、（ｄ）のハッチング部の範囲に存在する場合、位置算出部７３は、入力対象が存在する領域に対応するセンサユニット２を用いて、入力対象の位置を算出する。
図１０（ｂ）のハッチング部の範囲に入力対象が存在する場合、位置算出部７３は、センサユニット２−Ｌ１、センサユニット２−Ｒ１からの出力信号を用いて入力対象の位置を算出する。図１０（ｃ）のハッチング部の範囲に入力対象が存在する場合、位置算出部７３は、センサユニット２−Ｒ１、センサユニット２−Ｒ２からの出力信号を用いて入力対象の位置を算出する。図１０（ｄ）のハッチング部の範囲に入力対象が存在する場合、位置算出部７３は、センサユニット２−Ｌ２、センサユニット２−Ｒ２からの出力信号を用いて入力対象の位置を算出する。
即ち、位置算出部７３は、各センサユニット２が検出した遮光領域の有無、及び遮光領域の方向に基づいて、入力対象の座標算出に必要なセンサユニットの出力を選択し、入力対象の位置の座標を算出できる。
【００３６】
Ｓ２０６において、位置算出部７３は、Ｓ２０５で算出した入力対象の位置の相対座標値を表示座標系上の座標値に変換する。入力対象の位置の相対座標値を表示座標系上の座標値へ変換する方法には、射影変換等の手法がある。射影変換等は、公知の座標変換手法である。また、座標変換に必要なパラメータを取得するための処理は、キャリブレーションと呼ばれる。キャリブレーションの処理の詳細については、例えば、特許文献２に開示されている処理を用いてもよい。
Ｓ２０７において、制御部７０は、パーソナルコンピュータ等の外部の情報処理装置に、Ｓ２０６で変換した入力対象の座標値を出力（送信）する。
本実施形態のＳ２０２、Ｓ２０９、Ｓ２１０等において、遮光領域検出部７２は、受光部５からの出力信号における各画素の遮光率と、第一の閾値又は第２の閾値と、を比較することで、遮光領域を検出することとした。しかし、遮光領域検出部７２は、受光部５からの出力信号における各画素の電圧と、設定された閾値と、を比較することで、遮光領域を検出することとしてもよい。その場合、Ｓ２０２、Ｓ２０９で利用される閾値は、第一の閾値が示す遮光率に対応する電圧の値となる。また、Ｓ２１０で利用される閾値は、第二の閾値が示す遮光率に対応する電圧の値となる。
【００３７】
以上、本実施形態の処理により、座標入力システムは、センサユニット２の投光部６に近い位置に入力対象が存在し、入力対象からの直接反射光を受光部５が受光した場合であっても、遮光領域を正しく検出し、入力対象の位置を取得することができる。
【００３８】
＜実施形態２＞
実施形態１においては、座標入力システムは、入力対象からの直接反射光の影響により遮光率Ｓが低下している遮光領域（影）を正しく検出するため、図１のように受光部５及びメインの投光部６と異なる位置にサブの投光部６を備えることとした。
本実施形態では、投光部の近くに入力対象が存在し、入力対象からの直接反射光の影響により遮光率Ｓが低下している領域を、遮光領域として正しく検出するための方法として、実施形態１と異なる方法について説明する。
図１１は、本実施形態における座標入力システムのシステム構成等の一例を示す図である。本実施形態の座標入力システムは、実施形態１と比べて、センサバー１のセンサユニット内の投光部と受光部とが異なっており、その他については、実施形態１と同様である。
各センサユニット２は、一つの投光部６と二つの受光部５とを含む。各センサユニット２は、二つの受光部５として、メインの受光部と、メインの受光部と配置位置が異なるサブの受光部を含む。受光部５−Ｌ１、５−Ｌ３、５−Ｒ１、５−Ｒ３は、それぞれセンサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１、２−Ｒ３のメインの受光部である。また、受光部５−Ｌ２、５−Ｌ４、５−Ｒ２、５−Ｒ４は、それぞれセンサユニット２−Ｌ１、２−Ｌ２、２−Ｒ１、２−Ｒ２のサブの投光部である。
本実施形態では、受光部５−Ｌ１、５−Ｌ２、５−Ｌ３、５−Ｌ４、５−Ｒ１、５−Ｒ２、５−Ｒ３、５−Ｒ４を総称する場合、受光部５と表記する。また、投光部６−Ｌ１、６−Ｌ３、６−Ｒ１、６−Ｒ３を総称する場合、投光部６と表記する。
【００３９】
図１２は、座標入力システムの処理の一例を示すフローチャートである。
演算制御回路３Ｌは、処理を開始すると、図４と同様の初期設定処理を行う。
Ｓ３０１において、センサ信号取得部７１は、投光部６に投光させた際のメインの受光部５から出力される出力信号を、第一の出力信号として取得する。
Ｓ３０２において、遮光領域検出部７２は、各センサユニット２について遮光領域を検出し、何れかのセンサユニット２で、遮光領域が検出されたか否か判定する。遮光領域検出部７２は、実施形態１と同様に、Ｓ３０１で取得された出力信号の各画素における遮光率を第一の閾値と比較することで遮光の程度を検査して、有効な遮光領域があるか否かを判定する。遮光領域検出部７２は、Ｓ３０１で取得された出力信号の各画素における遮光率が第一の閾値以上である場合、光の遮光領域（影）に対応する画素であり、有効な遮光領域であると判定する。また、遮光領域検出部７２は、Ｓ３０１で取得された出力信号の各画素における遮光率が第一の閾値未満である場合、光の遮光領域（影）ではない画素であり、有効な遮光領域ではないと判定する。
【００４０】
図１３（ａ）は、Ｓ３０２におけるメインの受光部５−Ｌ１による遮光領域の検出処理を説明する図である。投光部６−Ｌ１からの投光により、入力対象（黒の点）の影が対向するセンサバー１Ｒの再帰反射部４に形成されている。この場合、受光部５−Ｌ１は、センサバー１Ｒの再帰反射部４に形成された影を、本来影として検出するはずだが、入力対象がセンサユニットに近い場合には入力対象からの直接反射光の影響で影として検出できない場合がある。
図１４（ａ）は、図１３（ａ）の例での受光部５−Ｌ１から出力される出力信号の例を示す図である。図１３（ａ）の例では、入力対象からの直接反射光により、受光部５−Ｌ１からの出力信号における入力対象の位置に対応する画素Ｎｃの辺りの電圧は、Ｂより低くなっている。遮光領域検出部７２は、画素Ｎｃの辺りにおける遮光率Ｓが第一の閾値未満である場合、遮光領域を有効に認識できない。
遮光領域検出部７２は、何れかのセンサユニット２で、遮光領域が検出されたと判定した場合、Ｓ３０３の処理に進み、何れのセンサユニット２でも遮光領域が検出されていないと判定した場合、Ｓ３０８の処理に進む。
【００４１】
Ｓ３０８において、センサ信号取得部７１は、投光部６を投光させた際に各センサユニット２のサブの受光部５から出力される出力信号を、第二の出力信号として取得する。
図１３（ｂ）は、Ｓ３０８におけるサブの受光部５−Ｌ２の影の検出処理を説明する図である。受光部５−Ｌ２の位置が投光部６−Ｌ１及び受光部５−Ｌ１の位置と異なるため、以下のようになる。即ち、受光部５−Ｌ２から見た入力対象から直接反射された投光部６−Ｌ１からの光の方向と、受光部５−Ｌ２から見た入力対象と投光部６−Ｌ１からの光とによりセンサバー１Ｒの再帰反射部４上に形成された影の方向とが異なる。そのため、受光部５−Ｌ２は、入力対象から直接反射された投光部６−Ｌ１からの光を検出すると同時に、対向するセンサバー１Ｒの再帰反射部４上に形成された遮光領域（影）を検出することができる。
その場合の受光部５−Ｌ２からの出力信号の波形の例を図１４（ｂ）に示す。図１４（ｂ）の例では、図１４（ａ）と同様に、画素Ｎｃの辺りに電圧がＢよりも低いピークが存在しており、更に、画素Ｎｃの近傍に対向するセンサバーの再帰反射部４上に形成された影に対応する電圧がほぼＢであるピークが存在している。図１３（ｂ）におけるセンサバー１Ｒの再帰反射部４上に形成された影は、入力対象からの直接の反射の影響を受けない影となっているので、図１４（ｂ）のその影に対応する画素の電圧は、ほぼＢとなり、遮光率Ｓは、ほぼ１となる。
【００４２】
Ｓ３０９において、遮光領域検出部７２は、Ｓ３０８で取得された第二の出力信号に基づいて、遮光領域を検出し、遮光領域が生じているか否かを判定する。遮光領域検出部７２は、Ｓ３０２の処理と同様に、第一の閾値に基づいて、第二の出力信号中に遮光領域に対応する信号が存在するか否か判定する。
遮光領域検出部７２は、Ｓ３０８で取得された出力信号の各画素における遮光率を第一の閾値と比較することで遮光の程度を検査して、有効な遮光領域があるか否かを判定する。遮光領域検出部７２は、Ｓ３０８で取得された出力信号の各画素における遮光率が第一の閾値以上である場合、光の遮光領域（影）に対応する画素であり、遮光領域が生じていると判定する。また、遮光領域検出部７２は、Ｓ３０８で取得された出力信号の各画素における遮光率が第一の閾値未満である場合、光の遮光領域（影）ではない画素であり、遮光領域が生じていないと判定する。
【００４３】
遮光領域検出部７２は、何れかのセンサユニット２で、遮光領域が検出され、商工領域が生じていると判定した場合、Ｓ３１０の処理に進む。遮光領域検出部７２は、何れのセンサユニット２でも遮光領域が検出されておらず、遮光領域が生じていないと判定した場合、Ｓ３０１の処理に進む。
遮光領域検出部７２は、第二の出力信号が図１４（ｂ）の信号であるすると、画素Ｎｃの近傍に電圧がＢであり、遮光率Ｓがほぼ１の部分があるので、遮光領域が生じていると判定する。この場合、メインの受光部５の出力信号から遮光領域が検出されなかったが、サブの受光部５の出力信号から遮光領域が検出されたため、投光部６の近くに指等の入力対象が存在する可能性がある。
【００４４】
Ｓ３１０において、遮光領域検出部７２は、第一の出力信号から、遮光領域を検出するため、再度検査を行う。遮光領域検出部７２は、Ｓ３１０の遮光領域検出処理を行う場合、図１４（ａ）に示したように電圧がＢよりも低く、遮光率Ｓが第一の閾値よりも低くなっている部分を検出する必要があるため、第一の閾値よりも低く設定された第二の閾値を利用する。即ち、第二の閾値は、第一の閾値よりも遮光率が低い遮光領域を検出することが可能なように設定された閾値である。
遮光領域検出部７２は、Ｓ３０１で取得された出力信号の各画素の中で、遮光率が第二の閾値以上である部分を有効な遮光領域であるとして検出する。第二の閾値は、入力対象からの直接反射光の程度等を考慮した値（例えば０．４等）に設定される。遮光領域検出部７２は、遮光領域を検出したらＳ３０３の処理に進む。
Ｓ３０３〜Ｓ３０７の処理は、図７のＳ２０３〜Ｓ２０７の処理と同様である。
【００４５】
以上、本実施形態の処理により、座標入力システムは、実施形態１と異なり投光部を一つ、受光部を二つ含むセンサユニットを利用して、以下の処理ができる。即ち、座標入力システムは、投光部６に近い位置に入力対象が存在して入力対象からの直接反射光をメインの受光部５が受光した場合でも、遮光領域を正しく検出し、入力対象の位置を取得することができる。
【００４６】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００４７】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、上述した座標入力システムの機能構成の一部又は全てをハードウェアとして座標入力装置に実装してもよい。
【符号の説明】
【００４８】
７１  センサ信号取得部、７２  遮光領域検出部、７３  位置算出部
【図１】
2017041078.tif 000003
【図２】
2017041078.tif 000004
【図３】
2017041078.tif 000005
【図４】
2017041078.tif 000006
【図５】
2017041078.tif 000007
【図６】
2017041078.tif 000008
【図７】
2017041078.tif 000009
【図８】
2017041078.tif 000010
【図９】
2017041078.tif 000011
【図１０】
2017041078.tif 000012
【図１１】
2017041078.tif 000013
【図１２】
2017041078.tif 000014
【図１３】
2017041078.tif 000015
【図１４】
2017041078.tif 000016