(57)【要約】      （修正有）【課題】盤面に対して指示動作を行う指示部により指示された座標を検出する場合において、コストを抑えつつ、両手の手指による操作の操作位置を適切に検出する。【解決手段】座標検出システム５００は、ディスプレイ２００の盤面に対してなされる両手の手指による指示動作の座標を検出する場合に、周辺発光部から照射されディスプレイの盤面上を進む光をコンピュータ１００の検出部１１ａ〜１１ｄにより受光し、検出制御部１３１が、検出部の受光光量を入射方向と対応付けて取得し、遮断領域抽出部１３２が、受光光量が所定の基準を下回る遮断領域を抽出し、遮断領域特徴量算出部１３３が、その特徴量を算出し、遮断領域クラスタリング部１３４が各遮断領域の特徴量に基づきその各遮断領域をクラスタリングする。三角測量部１３６が、クラスタリングにより得られた各クラスタの特徴量に基づき、指示操作の座標を算出する。【選択図】図３
2017058817.tif 000002
【特許請求の範囲】
【請求項１】
盤面に対して指示動作を行う指示部により指示された座標を検出する情報処理装置であって、
所定の光源から照射され前記盤面上を進む光を受光する受光手段と、
前記受光手段の受光光量を、入射方向と対応付けて取得する光量取得手段と、
前記光量取得手段が取得した受光光量が所定の基準を下回る遮断領域を抽出しその特徴量を算出する特徴量算出手段と、
前記特徴量算出手段が算出した各遮断領域の特徴量に基づき、該各遮断領域をクラスタリングするクラスタリング手段と、
前記クラスタリング手段により得られた各クラスタの特徴量に基づき、前記指示部により指示された座標を算出する座標算出手段とを備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記クラスタリング手段によるクラスタリングを、各クラスタに属する遮断領域のサイズに基づき行うことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記クラスタリング手段によるクラスタリングにおいて、対応する入射方向が単調に変化するように順次各遮断領域を対象として１つのクラスタへの分類を行い、該１つのクラスタのサイズが所定の閾値を超えた場合に、最後に分類した遮断領域とその次に分類対象とする遮断領域との間の距離に基づき、次に分類対象とする遮断領域を別のクラスタへ分類するか、残りの全遮断領域をそれまでと同じクラスタに分類するかを決定することを特徴とする情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記クラスタリング手段によるクラスタリングにおいて、最後に分類した遮断領域とその次に分類対象とする遮断領域との間の距離に基づき残りの全遮断領域を同じクラスタに分類した場合に、前記座標算出手段が算出した座標に基づく操作を一時的に無効にする手段を設けたことを特徴とする情報処理装置。
【請求項５】
コンピュータを、盤面に対して指示動作を行う指示部により指示された座標を検出する情報処理装置として機能させるためのプログラムであって、
前記コンピュータを、
所定の光源から照射され前記盤面上を進む光を受光する受光手段を制御する制御手段と、
前記受光手段の受光光量を、入射方向と対応付けて取得する光量取得手段と、
前記光量取得手段が取得した受光光量が所定の基準を下回る遮断領域を抽出しその特徴量を算出する特徴量算出手段と、
前記特徴量算出手段が算出した各遮断領域の特徴量に基づき、該各遮断領域をクラスタリングするクラスタリング手段と、
前記クラスタリング手段により得られた各クラスタの特徴量に基づき、前記指示部により指示された座標を算出する座標算出手段として機能させるためのプログラム。
【請求項６】
請求項５に記載のプログラムを格納した、コンピュータにより読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置、プログラム及び記録媒体に関する。
【背景技術】
【０００２】
従来から、ディスプレイ画面と座標入力装置とを一体化し、ディスプレイ画面上をタッチしながらディスプレイ画面に表示される画像を制御することができるタッチパネル付きディスプレイ装置が知られている。また、このような装置において、再帰反射部材と光学ユニットを用いて、光学的に座標入力面に対してなされた操作の位置の方向を、２つの異なる位置に設けたセンサからそれぞれ検知して、その検知結果に基づき操作位置の座標を算出する技術が知られている。
このような技術については例えば特許文献１に記載がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、上述したような従来の光学式座標入力装置では、両手でタッチを行った場合に複数の指の影が重なり合ってしまうと、タッチを正しく検出できなかった。このため、両手を使ったジェスチャ操作の機能を設けることができないという問題があった。
この点について、操作位置を検出するための光学センサの数を増やすことにより、検出可能なタッチ点の数は増えるが、複数の指の影が重なり合ってしまった場合はタッチを正しく検出できないという問題は残る。また、コストも上がってしまう。
【０００４】
静電容量方式のセンサを用いた場合は入力可能なタッチ点数は増え、両手でのタッチを検出することはできるが、よりいっそうコストが上がってしまう。また、アレイ状の光学センサを用いた場合、入力可能なタッチ点数は増えるが、複数の指の影の重なりによる誤検出を十分に低減することはできない。
また、特許文献１にも、２つの指示具が重なっても安定して精度劣化の少ない座標入力を行うことを目的とした技術が開示されているが、この構成であっても、両手の１０本の手指のように、多数のタッチが同時になされる場合、その操作位置を正しく検出することは難しい。
【０００５】
この発明は、以上のような問題を解決し、盤面に対して指示動作を行う指示部により指示された座標を検出する場合において、コストを抑えつつ、両手の手指による操作の操作位置を適切に検出できるようにすることを目的とする。なお、全ての手指による操作位置を個別に検出できることまでは要しない。
【課題を解決するための手段】
【０００６】
この発明の情報処理装置は、上記の目的を達成するため、盤面に対して指示動作を行う指示部により指示された座標を検出する情報処理装置において、所定の光源から照射され上記盤面上を進む光を受光する受光手段と、上記受光手段の受光光量を、入射方向と対応付けて取得する光量取得手段と、上記光量取得手段が取得した受光光量が所定の基準を下回る遮断領域を抽出しその特徴量を算出する特徴量算出手段と、上記特徴量算出手段が算出した各遮断領域の特徴量に基づき、その各遮断領域をクラスタリングするクラスタリング手段と、上記クラスタリング手段により得られた各クラスタの特徴量に基づき、上記指示部により指示された座標を算出する座標算出手段とを設けたものである。
【発明の効果】
【０００７】
上記構成によれば、盤面に対して指示動作を行う指示部により指示された座標を検出する場合において、コストを抑えつつ、両手の手指による操作の操作位置を適切に検出できるようにすることができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の情報処理装置の一実施形態であるコンピュータを含む座標検出システムの構成を示す図である。
【図２】図１に示したコンピュータのハードウェア構成を示す図である。
【図３】図１に示した座標検出システムが備える、指示操作がなされた座標を検出するための機能の構成を示す図である。
【図４】図３に示した各部の機能により指示操作の座標を特定する処理のフローチャートである。
【図５】遮断領域の抽出及びラベリングの一例を示す図である。
【図６】図４のステップＳ１４で実行するクラスタリングの処理の一例のフローチャートである。
【図７】図６のステップＳ３０の処理の詳細を示すフローチャートである。
【図８Ａ】ディスプレイの盤面に対する指示操作の例を示す図である。
【図８Ｂ】図８Ａの操作がなされた場合になされる遮断領域のクラスタリングについての説明図である。
【図９Ａ】ディスプレイの盤面に対する指示操作の別の例を示す図である。
【図９Ｂ】図９Ａの操作がなされた場合になされる遮断領域のクラスタリングについての説明図である。
【図１０Ａ】ディスプレイの盤面に対する指示操作のさらに別の例を示す図である。
【図１０Ｂ】図１０Ａの操作がなされた場合になされる、図６の処理による遮断領域のクラスタリングについての説明図である。
【図１１】図４のステップＳ１４で実行するクラスタリングの処理の別の例のフローチャートである。
【図１２】図１０Ａの操作がなされた場合になされる、図１１の処理による遮断領域のクラスタリングについての説明図である。
【図１３】発光部及び検出部の別の構成例を示す図である。
【発明を実施するための形態】
【０００９】
以下、この発明の実施形態について、図面を参照しつつ説明する。
図１は、この発明の情報処理装置の一実施形態であるコンピュータ１００を含む座標検出システムのシステム構成図の一例である。
座標検出システム５００は、ディスプレイ２００、４つの検出部１１ａ〜１１ｄ（任意の１つ以上検出部を示す場合は、単に検出部１１という）、４つの周辺発光部１５ａ〜１５ｄ（任意の１つ以上検出部を示す場合は、単に周辺発光部１５という）、コンピュータ１００、及び、付加的な要素としてＰＣ（Personal  Computer）３００を有している。
【００１０】
４つの周辺発光部１５ａ〜１５ｄはディスプレイ２００の周囲に配置されているか、着脱可能に装着されている。コンピュータ１００にはＰＣが接続されており、コンピュータ１００はＰＣ３００が出力した映像をディスプレイ２００に表示することができる。
コンピュータ１００には座標検出システム５００に対応したアプリケーションがインストールされており、アプリケーションは検出部１１からの信号に基づきユーザが操作した位置を検出する。アプリケーションはその操作位置に基づきジェスチャを解析し、コンピュータ１００を制御する。この制御を、本明細書では「ジェスチャ操作」と呼ぶ。なお、アプリケーションは、操作用のメニューをディスプレイ２００に表示することができる。
【００１１】
例えば、ユーザが線を描画するメニューに触れた後、指示具１３でディスプレイ２００の盤面に図形を描画した場合、コンピュータ１００は指示具１３が触れている位置をリアルタイムに解析して、時系列の座標を作成する。コンピュータ１００は時系列の座標を接続して線を作成しディスプレイ２００に表示する。図ではユーザが三角形の形状に沿って指示具１３を移動させたため、コンピュータ１００は一連の座標を１つのストローク（三角形）として記録する。そして、ＰＣ３００の画像と合成してディスプレイ２００に表示する。
【００１２】
このように、ディスプレイ２００がタッチパネル機能を有していなくても、座標検出システム５００を適用することで、ユーザは指示具１３でディスプレイ２００に触れるだけで様々な操作が可能になる。ここでは、後述するように、ユーザは指示具１３を用いなくても手指で位置を入力できる。
【００１３】
図２は、コンピュータ１００のハードウェア構成図の一例を示す。
コンピュータ１００は、市販の情報処理装置又は座標検出システム用に開発された情報処理装置である。コンピュータ１００は、アドレスバスやデータバス等のバスライン１１８を介して電気的に接続されたＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＳＳＤ（Solid  State  Drive）１０４、ネットワークコントローラ１０５、外部記憶コントローラ１０６、センサコントローラ１１４、ＧＰＵ１１２、及び、キャプチャデバイス１１１を有している。
【００１４】
ＣＰＵ１０１はアプリケーションを実行して座標検出システム５００の動作全体を制御する。ＲＯＭ１０２にはＩＰＬ（Initial  Program  Loader）等が記憶されており、主に起動時にＣＰＵ１０１が実行するプログラムが記憶されている。ＲＡＭ１０３は、ＣＰＵ１０１がアプリケーションを実行する際のワークエリアとなる。ＳＳＤ１０４は、座標検出システム用のアプリケーション１１９や各種データが記憶された不揮発メモリである。ネットワークコントローラ１０５は、不図示のネットワークを介してサーバなどと通信する際に通信プロトコルに基づく処理を行う。なお、ネットワークは、ＬＡＮ又は複数のＬＡＮが接続されたＷＡＮ（例えばインターネット）などである。
【００１５】
外部記憶コントローラ１０６は、着脱可能な外部メモリ１１７に対する書き込み又は外部メモリ１１７からの読み出しを行う。外部メモリ１１７は、例えばＵＳＢ（Universal  Serial  Bus）メモリ、ＳＤカードなどである。キャプチャデバイス１１１は、ＰＣ３００が表示装置３０１に表示している映像を取り込む（キャプチャする）。ＧＰＵ（Graphics  Processing  Unit）１１２は、ディスプレイ２００の各ピクセルの画素値を演算する描画専用のプロセッサである。ディスプレイコントローラ１１３は、ＧＰＵ１１２が作成した画像をディスプレイ２００に出力する。
センサコントローラ１１４には、４つの検出部１１ａ〜１１ｄが接続されており、赤外線光遮断またはペン発光方式による三角測量方式による座標の検出を行う。詳しくは後述する。
【００１６】
なお、本実施形態では、コンピュータ１００は指示具１３と通信する必要はないが、通信機能を有していてもよい。この場合、図示するようにコンピュータ１００は電子ペンコントローラ１１６を有し、指示具１３から押圧信号を受信する（指示具１３が通知手段を有している場合）。これにより、コンピュータ１００は先端が押圧されているか否かを検出することができる。
なお、座標検出システム用のアプリケーションは、外部メモリ１１７に記憶された状態で流通されてもよいし、ネットワークコントローラ１０５を介して不図示のサーバからダウンロードされてもよい。アプリケーションは圧縮された状態でも実行形式でもよい。
【００１７】
以上の構成を備える本実施形態の座標検出システムにおいて特徴的な点は、ユーザがディスプレイ２００の盤面に対して、両手の手指を指示部として用いて指示動作を行った場合でも、その指示動作により指示された座標を検出できる点である。ただし、手指全ての座標を個別に検出するとは限らず、基本的には、両手の１０本の指を同時に使って指示動作がなされた場合でも、右手による指示動作の位置と左手による指示動作の位置とを区別できるようにすることに主眼を置いている。以下、この検出のための動作について詳細に説明する。
【００１８】
図３は、座標検出システム５００が備える、各検出部１１の検出信号に基づきディスプレイ２００中で指示操作がなされた座標を検出するための機能の構成を示す図である。
図３において、破線Ａで囲われた領域内の１０箇所の丸印が、両手の１０本の手指による指示動作の位置の例を示す。
【００１９】
図３に示すように、座標検出システム５００は、検出制御部１３１、遮断領域抽出部１３２、遮断領域特徴量算出部１３３、遮断領域クラスタリング部１３４、クラスタリング領域特徴量算出部１３５、および三角測量部１３６の機能を備える。これらの機能は、コンピュータ１００においてＣＰＵ１０１がアプリケーション１１９を実行することにより実現されるものである。
【００２０】
上記のうち検出制御部１３１は、各検出部１１を制御して、周辺発光部１５の光源から照射されディスプレイ２００の盤面上を進み検出部１１に入射する入射光の受光光量を、その入射方向と対応付けて取得する光量取得手段の機能を備える。この受光光量の取得は、各検出部１１ａ〜１１ｄについて個別に行う。特に断らない限り、以降に説明する各部も、各検出部１１ａ〜１１ｄから取得した受光光量を、検出部毎に別に処理する。また、受光方向を変化させる範囲は、指示操作がなされた座標を検出したい範囲とすればよい。受光方向を変化させるに当たり、各検出部１１そのものを駆動する必要はなく、例えばイメージセンサの所定画素範囲（１画素でもよい）毎に異なる方向からの入射する光を結像させ、各所定画素範囲で検出した光量を、対応する入射方向からの入射光の受光光量とすることが考えられる。また、受光光量は、輝度値として取得してもよい。
【００２１】
遮断領域抽出部１３２は、検出制御部１３１が取得した各入射方向の受光光量に基づき、受光光量が所定の基準を下回る遮断領域を抽出する機能を備える。例えば、各入射方向について、盤面上に何ら障害物がない場合の光量を標準光量として予め記憶しておき、その標準光量に対する検出光量の比率が連続して４０％といった所定の閾値を下回った入射方向の範囲を、遮断領域として抽出することが考えられる。また、遮断領域抽出部１３２は、抽出した遮断領域を相互に区別できるよう、識別番号等によりラベリングする。
【００２２】
従って、例えば、盤面に対して１０本の手指による指示操作がなされると、各手指により光が遮られる方向が、図５に示す遮断領域Ｒ（０）〜Ｒ（６）のように、多数の遮断領域として抽出される。図５において、縦軸が受光光量（あるいは輝度値）であり、横軸が入射方向である。
【００２３】
なお、検出部１１から見て同じ方向に複数の手指が重なる場合もあるため、指示操作に用いた手指の数が多い場合、それよりも少ない数の遮断領域が抽出されることが通常である。図５の例では、遮断領域は７つあるが、最初の４つの遮断領域Ｒ（０）〜Ｒ（３）が左手によるものであり、残りの３つの遮断領域Ｒ（４）〜Ｒ（６）が右手によるものである。また、各遮断領域は、入射角度の一方向への変化（単調増加あるいは単調減少）につれて番号が大きくなるようにラベリングし、後述のクラスタリング処理においてこの番号順でクラスタへの分類対象とするとよい。
【００２４】
次に、遮断領域特徴量算出部１３３は、遮断領域抽出部１３２が抽出した各遮断領域の特徴量を算出する機能を備える。算出する特徴量は、例えば、光量重心座標、遮断領域の光量軸方向の幅（縦幅）、入射方向軸方向の幅（横幅）、遮断領域のピクセル数、隣の遮断領域との距離（例えば遮断領域の光量重心間の距離として定義）、遮断領域の端点（左端点及び右端点）などが挙げられ、これらの値はクラスタリングや必要があれば外れ値の除去などに用いる。この遮断領域特徴量算出部１３３は、遮断領域抽出部１３２と合わせて特徴量算出手段として機能する。
【００２５】
遮断領域クラスタリング部１３４は、遮断領域特徴量算出部１３３が算出した各遮断領域の特徴量に基づき、その各遮断領域をクラスタリングするクラスタリング手段の機能を備える。このクラスタリングは、例えば各遮断領域の横幅及び隣の遮断領域との距離に基づき行うことができるが、その詳細については後述する。
【００２６】
クラスタリング領域特徴量算出部１３５は、遮断領域クラスタリング部１３４によるクラスタリングで得られた各クラスタが存在するクラスタリング領域の特徴量を算出する機能を備える。クラスタリング領域の特徴量は、クラスタの特徴量でもある。また、クラスタの特徴量としては、例えばクラスタリング領域の光量重心、クラスタリング領域の端点（左端点及び右端点）、クラスタリング領域間の距離（例えばクラスタリング領域の光量重心間の距離として定義）などを算出することが考えられる。しかし、クラスタリング領域特徴量算出部１３５は、三角測量部１３６に提供する特徴量のみを算出すれば足りる。
【００２７】
三角測量部１３６は、クラスタリング領域特徴量算出部１３５が算出した各クラスタリング領域の光量重心（図５の横軸である入射方向軸上の特定の位置、すなわち特定の入射角を示す値である）から、三角測量の要領で、盤面上で指示操作のなされた座標を算出する座標算出手段の機能を備える。また、その結果をＰＣ３００に提供し、種々の制御に使用させる機能も備える。
【００２８】
なお、指示操作の座標を算出するに当たっては、各クラスタリング領域の光量重心と対応する入射方向を、検出部１１から見て、該当クラスタに分類された指示操作のなされた方向であるとする。従って、２対上の検出部１１から取得した受光光量に基づきそれぞれ指示操作のなされた方向を特定できれば、それらに基づき三角測量の要領で、盤面上で指示操作のなされた座標を求めることができる。この座標を求めるアルゴリズムについては、例えば特開２０１５−５６０６４号公報あるいは特開２０１５−１１８４２６号公報に記載のものを採用することができる。
【００２９】
クラスタが複数ある場合、必要な数の検出部１１から取得した受光光量に基づきそれぞれその各クラスタと対応する指示操作の方向を特定し、それらの情報に基づいて各クラスタと対応する指示操作のなされた座標を求めればよい。従って、例えば両手の手指による指示操作で生じた遮断領域を検出し、これを左手による操作に係るクラスタと右手による操作に係るクラスタとに分離できれば、各クラスタの特徴量を用いて、左手による指示操作の座標と右手による指示操作の座標とをそれぞれ算出できることになる。
【００３０】
次に、図４に、図３に示した各部の機能により指示操作の座標を特定する処理のフローチャートを示す。この処理は、コンピュータ１００のＣＰＵ１０１が定期的に実行するものである。
図４の処理において、ＣＰＵ１０１はまず、各検出部１１を制御して、検出部１１に入射する入射光の受光光量を、入射方向毎に、その入射方向と対応付けて取得する（Ｓ１１）。この処理は、検出制御部１３１の機能と対応するものである。
【００３１】
次に、ＣＰＵ１０１は、ステップＳ１１で取得した各入射方向の受光光量に基づき、受光光量が所定の基準を下回る遮断領域を抽出し、ラベリングする（Ｓ１２）。この処理は、遮断領域特徴量算出部１３３の機能と対応するものである。
次に、ＣＰＵ１０１は、ステップＳ１２でラベリングした各遮断領域の特徴量を算出する（Ｓ１３）。ここでは、各遮断領域の横幅及び隣の遮断領域との距離を算出すればよい。この処理は、遮断領域特徴量算出部１３３の機能と対応するものである。
【００３２】
次に、ＣＰＵ１０１は、ステップＳ１３で算出した各遮断領域の特徴量に基づき、その各遮断領域をクラスタリングする（Ｓ１４）。このクラスタリングのアルゴリズムとしては、例えば図６あるいは図１１に示すものを採用できる。これらの処理の特性については後に詳述する。この処理は、遮断領域クラスタリング部１３４の機能と対応するものである。
【００３３】
次に、ＣＰＵ１０１は、ステップＳ１４のクラスタリングで得られた各クラスタの特徴量を算出する（Ｓ１５）。ここでは、各クラスタが存在するクラスタリング領域の光量重心を求めればよい。この処理は、クラスタリング領域特徴量算出部１３５の機能と対応するものである。
次に、ＣＰＵ１０１は、ステップＳ１５で算出した各クラスタリング領域の光量重心から、三角測量の要領で、盤面上で指示操作のなされた座標を算出する（Ｓ１６）。この処理は、三角測量部１３６の機能と対応する。
【００３４】
以上の処理により、ＣＰＵ１０１は、盤面上に両手の手指による指示操作がなされた場合でも、その指示操作がなされた座標を算出することができる。なお、以上の処理では、指示操作が１箇所のみになされた場合でもその座標を算出できるし、指示操作が全くなされていない場合には、遮断領域が抽出されないことを通じてその旨を検出できる。
【００３５】
次に、図６に、図４のステップＳ１４で実行するクラスタリングの処理の一例のフローチャートを示す。
図６の処理において、ＣＰＵ１０１はまず、変数Ｎと変数Ｍにそれぞれ０を代入する（Ｓ２１）。その後、遮断領域Ｒ（Ｎ）（すなわちＲ（０））が存在するか否か判断する（Ｓ２２）。ここでＮｏであれば、遮断領域が１つもないことになるので、クラスタリングを行わずに処理を終了する。この場合、図４の処理では、指示操作は行われていない、という結果になる。
【００３６】
一方、ステップＳ２２でＹｅｓであると、ＣＰＵ１０１は、クラスタＣ（Ｍ）（すなわち１番目のクラスタＣ（０））のサイズを１インクリメントする（Ｓ２３）。なお、クラスタの初期サイズは０であるとする。
次に、ＣＰＵ１０１は、遮断領域Ｒ（Ｎ）（初めはＲ（０））を、クラスタＣ（Ｍ）（初めはＣ（０））にクラスタリングする（Ｓ２４）。その後、クラスタＣ（Ｍ）のサイズが閾値未満であるか否か判断する（Ｓ２５）。
【００３７】
ステップＳ２５での閾値は、１つのクラスタに分類したい一群の指示部のうち、検出部１１から見て他の指示部の後ろに隠れずに見える指示部の数に応じた値とするとよい。例えば、両手の手指を指示部とし、左手の手指と右手の手指を別々のクラスタに分類したい場合、検出部１１から見て、片手の手指のうち他の手指の後ろに隠れずに見える手指の数がいくつであるかを考えればよい。発明者による実験（実測）に基づいて、この数は４であることが多いと判明しているため、ここでは閾値の値を４とする。
【００３８】
ステップＳ２５でＹｅｓの場合、ＣＰＵ１０１は次に、次の遮断領域Ｒ（Ｎ＋１）が存在するか否か判断する（Ｓ２６）。これが存在すれば、遮断領域Ｒ（Ｎ）と遮断領域Ｒ（Ｎ＋１）との間の距離を算出する（Ｓ２７）。その距離が所定の閾値よりも大きければ（Ｓ２８のＹｅｓ）、Ｍを１インクリメントする（Ｓ２９）。すなわち、今までのクラスタへの遮断領域のクラスタリングを終了し、次のクラスタについてのクラスタリングを開始する。ステップＳ２８でＮｏであれば、ステップＳ２９はスキップする。
【００３９】
ステップＳ２８及びＳ２９の処理は、隣接する遮断領域間の距離が離れている場合に、同じ手の手指による遮断領域ではないと判断して、以後の遮断領域を別のクラスタに分類するためのものである。従って、ステップＳ２８で用いる閾値は、片手の手指により生じる複数の遮断領域間の間隔として考えられない程度の値とするとよい。
【００４０】
次に、ＣＰＵ１０１は、遮断領域Ｒ（Ｎ）の幅に応じてクラスタＣ（Ｍ）のサイズをインクリメントする（Ｓ３０）。この処理は、より詳細には図７に示すものであり、遮断領域Ｒ（Ｎ）の横幅Ｗ（Ｎ）を、５つの閾値Ｔ１〜Ｔ５と比較し、クラスタＣ（Ｍ）のサイズを、以下のようにインクリメントするものである。
（ａ）Ｗ（Ｎ）＜Ｔ１のとき、１インクリメント
（ｂ）Ｔ１≦Ｗ（Ｎ）＜Ｔ２のとき、２インクリメント
（ｃ）Ｔ２≦Ｗ（Ｎ）＜Ｔ３のとき、３インクリメント
（ｄ）Ｔ３≦Ｗ（Ｎ）＜Ｔ４のとき、４インクリメント
（ｅ）Ｔ４≦Ｗ（Ｎ）＜Ｔ５のとき、５インクリメント
（ｆ）以上のいずれでもないとき、何もしない
【００４１】
遮断領域は、複数本分の手指と対応する領域が１つにつながって形成される場合もある。このような場合にも遮断領域の数は１つであるが、上述したように片手の手指と対応する遮断領域を１つのクラスタに分類しようとする場合、サイズを１と数えたのでは適切なカウントとは言えない。そこで、複数本分の手指と対応する領域が１つにつながったような、横幅の広い遮断領域については、複数本文のサイズとしてカウントするようにしたのが、図７の処理である。従って、Ｔ１は１本の手指により形成される遮断領域の幅の上限を示す値、Ｔ２は２本の手指により形成される遮断領域の幅の上限を示す値、といったように上記各閾値Ｔ１〜Ｔ５を定めるとよい。
【００４２】
図６の説明に戻ると、ＣＰＵ１０１は、ステップＳ３０の後、Ｎを１インクリメントして（Ｓ３１）、次の遮断領域を分類対象としてステップＳ２４に戻り、処理をくり返す。
また、ステップＳ２５でＮｏとなると、ＣＰＵ１０１は、まだクラスタリングしていない遮断領域を全て、現在分類先としているものの次のクラスタＣ（Ｍ＋１）にクラスタリングし（Ｓ３２）、処理を終了する。
また、ステップＳ２６でＮｏの場合、全ての遮断領域についてクラスタリングが済んだことになるので、処理を終了する。
以上で図６の説明を終了する。
【００４３】
次に、図６の処理によるクラスタリングのいくつかの具体例について説明する。
まず、図８Ａに示す、ディスプレイ２００の盤面に対し、領域４０１に左手の手指による指示操作が、領域４０２に右手の手指による指示操作がなされた場合を考える。この場合、四隅のどの検出部１１から見ても、左手の手指の位置と右手の手指の位置は、破線で示す対角線の左右に分かれ、重なることはない。
従って、遮断領域は例えば図８Ｂに示すように、左手の手指による遮断領域Ｒ（０）〜Ｒ（３）と、右手の手指による遮断領域Ｒ（４）〜Ｒ（６）とが分かれて抽出される。
【００４４】
この遮断領域に対して図６の処理を適用することを考える。全ての遮断領域の幅は、閾値Ｔ１未満であるとすると、ステップＳ２３の後、ステップ２４〜Ｓ３１を３回繰り返し、さらにステップＳ２４をもう一度実行することにより、遮断領域Ｒ（０）〜Ｒ（３）がクラスタＣ（０）にクラスタリングされた状態で、クラスタＣ（０）のサイズが４となるため、ステップＳ２５の判断がＮとなる。そこで、ステップＳ３２に進み、残りの遮断領域Ｒ（４）〜Ｒ（７）をクラスタＣ（１）にクラスタリングして処理を終了する。
【００４５】
この手順により、図８Ｂに示すように、左手の手指による遮断領域Ｒ（０）〜Ｒ（３）と、右手の手指による遮断領域Ｒ（４）〜Ｒ（６）とを、別々のクラスタＣ（０）及びＣ（１）にクラスタリングすることができる。
従って、これらのクラスタの特徴量に基づき、左手による指示操作の座標と右手による指示操作の座標とを分離して求めることができる。
【００４６】
図９Ａに示す例では、図８Ａの場合よりも、領域４０１と領域４０２の位置が近接している。しかし、四隅のどの検出部１１から見ても、左手の手指の位置と右手の手指の位置が重ならないことは、図８Ａの場合と同様である。
従って、図９Ｂのように抽出される遮断領域は、図８Ｂの場合と同様に、左手の手指による遮断領域Ｒ（０）〜Ｒ（３）と、右手の手指による遮断領域Ｒ（４）〜Ｒ（６）とを、別々のクラスタＣ（０）及びＣ（１）にクラスタリングすることができる。
【００４７】
従って、コンピュータ１００は、図８Ａから図９Ａに至るような、両手の間隔を縮めるジェスチャを検出することができる。そして、この検出結果をＰＣ３００に送信すれば、ユーザは、両手の手指を使ってＰＣ３００をジェスチャ操作できることになる。
この機能を実現するために必要な検出部１１は、既に述べたように、所定の範囲について入射方向と対応付けて受光光量を検出する機能を備えていればよく、特段に高価なものではないため、低コストで両手の手指を使ったジェスチャの検出ができると言える。
【００４８】
ただし、図６の処理では、図１０Ａに示すように、領域４０１と領域４０２とが１本の対角線上に乗ってしまう場合、すなわち、ある検査部１１から見て、左手の手指による遮断領域と右手の手指による遮断領域とが重なってしまう場合には、適切なクラスタリングができないことがある。
【００４９】
ここで、図１０Ａに示す位置に指示操作がなされた場合の遮断領域が図１０Ｂに示すように抽出されたとする。図１０Ｂに示す６つの遮断領域Ｒ（０）〜Ｒ（５）は、図１０Ａとの対比からわかるように、左手の手指による遮断領域と右手の手指による遮断領域とがある位置を境に分かれているわけではない。しかし、図６の処理を適用すると、図８Ｂ及び図９Ｂの場合と同様、初めの４つの遮断領域Ｒ（０）〜Ｒ（３）と、その他の遮断領域Ｒ（４）〜Ｒ（５）とを、別々のクラスタにクラスタリングしてしまう。
【００５０】
従って、必ずしも片手分の手指毎のクラスタリングとはならず、各クラスタの特徴量も、左右の手による指示操作の位置を反映したものとならない。従って、図９Ａの状態から図１０Ａの状態になるように操作を行うとすると、その間のどこかで特徴量が離散的に変化してしまうことになる。例えば両手でズーム操作を行った場合に、両手のクラスタが重なる前後で急激に拡大縮小の量が変化してしまう等である。
【００５１】
図１１に、この点を改善したクラスタリングの処理を示す。
図１１の処理は、ステップＳ２５でＮｏの場合の処理が図６と異なるのみである。そして、ステップＳ２５でＮｏの場合、ＣＰＵ１０１は、次の遮断領域Ｒ（Ｎ＋１）が存在するか否か判断する（Ｓ４１）。これが存在しなければ、クラスタリングは終了であるので処理を終了する。一方、存在すれば、遮断領域Ｒ（Ｎ）と遮断領域Ｒ（Ｎ＋１）との間の距離を算出する（Ｓ４２）。
【００５２】
その距離が所定の閾値よりも大きければ（Ｓ４３のＹｅｓ）、次以降の遮断領域は遮断領域Ｒ（Ｎ）までと異なる指示操作に由来するものであると考えられるため、残りの遮断領域を次のクラスタＣ（Ｍ＋１）にクラスタリングして（Ｓ４４）、処理を終了する。また、ステップＳ４３でＮｏであれば、逆に、異なる指示操作に由来するものでない可能性があるため、残りの遮断領域をそれまでと同じクラスタＣ（Ｍ）にクラスタリングする（Ｓ４４）。そして、この場合、左右の手による操作指示の座標を正しく検出することはできないため、ジェスチャ操作を一時的に無効化して（Ｓ４６）、処理を終了する。この無効化は、今回のクラスタリング結果に基づき算出した指示操作の座標についてのみ適用すればよい。
【００５３】
以上の処理によれば、図１０Ｂのように抽出された遮断領域は、図１２に示すように、全て同じクラスタＣ（０）にクラスタリングされる。従って、左右の手による指示操作の座標として、誤った値が算出されることを防止できる。そして、両手を使ったジェスチャ操作の誤動作を防止できる。なお、ステップＳ４３でＮｏの場合にジェスチャ操作を一時的に無効化すれば、誤動作防止を一層確実にすることができる。
【００５４】
なお、例えば１本の手指や１つの指示具で操作がなされた場合、遮断領域は１つのみ抽出される。従って、図６の処理でも図１１の処理でも、遮断領域Ｒ（０）をクラスタＣ（０）にクラスタリングした直後にステップＳ２６でＮｏになり、クラスタリングを終了することになる。また、この場合、クラスタＣ（０）の特徴量は、そこに属する唯一の遮断領域Ｒ（０）の特徴量と一致する。このため、ステップＳ１６では、遮断領域Ｒ（０）の特徴量に従って指示操作の座標を算出することができる。従って、図６の処理でも図１１の処理でも、少ない数の手指や指示具による操作の検出に不都合はない。
【００５５】
以上で実施形態の説明を終了するが、この発明において、装置の具体的な構成、具体的な処理の手順、データの形式等は、実施形態で説明したものに限るものではない。
例えば、上述した実施形態では、指示動作の対象となる盤面の周囲に４つの周辺発光部１５ａ〜１５ｄ及び４つの検出部１１ａ〜１１ｄを設ける例について説明した。しかし、これ以外にも、再帰反射板を用いる構成を採用可能である。
【００５６】
図１３に、この場合のディスプレイ２００の構成を示す。
図１３の例においては、ディスプレイ２００の周囲三方に再帰反射板２１３を設け、検出部１１と対応する構成として、光遮断用照明２１１及び入力装置２１２を、二つの頂点に設ける。
そして、光遮断用照明２１１に備えるレーザ等の発光手段からシリンドリカルレンズを含む光学系を介して出射された光が、ディスプレイ２００の表面に沿った平行光として盤面上を進行するようにする。盤面に平行に進行した光は、ディスプレイ２００を囲むように配置された再帰性反射部材である再帰反射板２１３で再帰的に反射され、再び同一光路を辿って戻り、入力装置２１２に入射する。従って、手指等で盤面に対して指示動作を行うと、盤面に平行に進行した光が遮られて入力装置２１２に入射する光量が変化する。光遮断用照明２１１が、角度が異なる多数のビームを出射し、入力装置２１２が各角度のビームの光量を検出するようにすれば、上述した実施形態の検出部１１の場合と同様、受光光量を、その入射方向と対応付けて取得することができる。
【００５７】
また、この発明において、盤面はディスプレイ２００に限らず、任意の物体として構成してよい。また、物理的な実態のない仮想的な平面を、盤面として用いることも妨げられない。
【００５８】
また、この発明のプログラムの実施形態は、コンピュータに所要のハードウェアを制御させて上述した実施形態におけるコンピュータ１００の機能を、実現させるためのプログラムである。
このようなプログラムは、はじめからコンピュータに備えるＲＯＭや他の不揮発性記憶媒体（フラッシュメモリ，ＥＥＰＲＯＭ等）などに格納しておいてもよい。しかし、メモリカード、ＣＤ、ＤＶＤ、ブルーレイディスク等の任意の不揮発性記録媒体に記録して提供することもできる。それらの記録媒体に記録されたプログラムをコンピュータにインストールして実行させることにより、上述した各機能を実現させることができる。
【００５９】
さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部装置あるいはプログラムを記憶手段に記憶した外部装置からダウンロードし、コンピュータにインストールして実行させることも可能である。
また、以上説明してきた各実施形態及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
【符号の説明】
【００６０】
１１：検出部、１３：指示具、１５：周辺発光部、１００：コンピュータ、１０１：ＣＰＵ、１０２：ＲＯＭ，１０３：ＲＡＭ、１０４：ＳＳＤ、１０５：ネットワークコントローラ、１０６：外部記憶コントローラ、１１４：センサコントローラ、１１２：ＧＰＵ、１１１：キャプチャデバイス、１１６：電子ペンコントローラ、１１７：外部メモリ、
１１８：バスライン、１１９：アプリケーション、１３１：検出制御部、１３２：遮断領域抽出部、１３３：遮断領域特徴量算出部、１３４：遮断領域クラスタリング部、１３５：クラスタリング領域特徴量算出部、１３６：三角測量部、２００：ディスプレイ、２１１：光遮断用照明、２１２：入力装置、２１３：再帰反射板、３００：ＰＣ、３０１：表示装置、４０１，４０２：領域、５００：座標検出システム
【先行技術文献】
【特許文献】
【００６１】
【特許文献１】特開２００６−１４６８１６号公報
【図１】
2017058817.tif 000003
【図２】
2017058817.tif 000004
【図３】
2017058817.tif 000005
【図４】
2017058817.tif 000006
【図５】
2017058817.tif 000007
【図６】
2017058817.tif 000008
【図７】
2017058817.tif 000009
【図８Ａ】
2017058817.tif 000010
【図８Ｂ】
2017058817.tif 000011
【図９Ａ】
2017058817.tif 000012
【図９Ｂ】
2017058817.tif 000013
【図１０Ａ】
2017058817.tif 000014
【図１０Ｂ】
2017058817.tif 000015
【図１１】
2017058817.tif 000016
【図１２】
2017058817.tif 000017
【図１３】
2017058817.tif 000018