認証装置、認証方法及びプログラム
【課題】表示面に対して所定のパターンを入力する認証方法において、そのパターンを事後的に他人に推測されにくくする。
【解決手段】本発明の認証装置は、表示面に対して離間して定義される認識エリアA1〜A9を指等の指示体が通過したことを検出し、その検知された軌跡が所定のパターンに一致するか否かを判定することでユーザを認証する。認証装置は、移動方向の変化量が所定の閾値以上となる位置を特定し、当該位置が認識エリアに含まれない場合に、当該位置が最近傍の認識エリアに近づくように補正する。この例においては、点P1の位置が点P1aの位置に移動し、点P2の位置が点P2aの位置に移動する。
【解決手段】本発明の認証装置は、表示面に対して離間して定義される認識エリアA1〜A9を指等の指示体が通過したことを検出し、その検知された軌跡が所定のパターンに一致するか否かを判定することでユーザを認証する。認証装置は、移動方向の変化量が所定の閾値以上となる位置を特定し、当該位置が認識エリアに含まれない場合に、当該位置が最近傍の認識エリアに近づくように補正する。この例においては、点P1の位置が点P1aの位置に移動し、点P2の位置が点P2aの位置に移動する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、指等の指示体を動かすことによる認証技術に関する。
【背景技術】
【0002】
タッチスクリーン(タッチパネルともいう。)を備える表示装置において、その表示面に指で所定のパターンを描くことで何らかの制限(画面ロック等)を解除する技術が知られている(例えば、非特許文献1参照)。このようなパターンは、ユーザ毎に設定することが可能である。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】“携帯電話(T−01C 取扱説明書 位置情報とセキュリティ)”、[online]、[平成23年3月22日検索]、インターネット〈URL:http://www.fmworld.net/product/phone/sp/t-01c/manual/category04/006.html〉
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、表示面を指でなぞると、指の皮脂や汚れが表示面に付着することがある。このような付着物が表示面に残ると、制限を解除するためのパターンを他人に推測されてしまうおそれがある。
そこで、本発明は、表示面に対して所定のパターンを入力する認証方法において、そのパターンを事後的に他人に推測されにくくすることを目的とする。
【課題を解決するための手段】
【0005】
本発明の一態様に係る認証装置は、表示面に近接して移動する指示体の位置を連続的に検出する検出部と、前記検出部により検出された位置に基づいて前記指示体の移動方向を算出する算出部と、前記算出部により算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する特定部と、前記特定部により特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する補正部と、前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記検出部により検出された位置に基づいて判定する判定部であって、前記特定部により特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記補正部による補正を反映させて判定を行う判定部とを備える構成を有する。
【0006】
好ましい態様において、前記補正部は、前記特定部により特定された位置と他の前記位置とを移動させる。
別の好ましい態様において、前記特定部は、前記変化量が前記閾値以上となる位置として第1の位置と第2の位置とを特定し、前記補正部は、前記第1の位置を第1の補正量で移動させ、前記第2の位置を第2の補正量で移動させるとともに、前記検出部により前記第1の位置と前記第2の位置の間に第3の位置が検出された場合に、当該第3の位置を前記第1の補正量と前記第2の補正量の間の補正量で移動させる。
別の好ましい態様において、前記補正部は、前記判定部により前記指示体が通過した前記認識エリアの数が所定数に満たない場合に、前記特定部により特定された位置と他の前記位置とを移動させ、前記判定部は、前記指示体が通過した前記認識エリアの数が所定数に満たないと判定した場合に、前記補正部による補正を反映させた判定を再度行う。
さらに別の好ましい態様において、前記算出部は、前記検出部により検出された位置に基づいて前記指示体の移動方向及び移動速度を算出し、前記補正部は、前記算出部により算出された移動速度が大きいほど補正量を多くする。
さらに別の好ましい態様において、前記補正部は、前記変化量が大きい前記位置ほど補正量を多くする。
さらに別の好ましい態様において、前記検出部は、前記指示体が前記表示面に近接したときの位置である非接触位置と、前記指示体が前記表示面に接触したときの位置である接触位置とを検出し、前記判定部は、前記非接触位置と前記接触位置とを前記認識エリアに含む判定を行う。
さらに別の好ましい態様において、前記補正部は、前記非接触位置を補正の対象とし、前記接触位置を補正の対象としない。
さらに別の好ましい態様において、前記特定部は、前記閾値を前記複数の認識エリアの前記配置に応じて異ならせる。
【0007】
本発明の他の態様に係る認証方法は、表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップとを有する。
【0008】
本発明の他の態様に係るプログラムは、コンピュータに、表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップとを実行させるためのものである。
【発明の効果】
【0009】
本発明によれば、表示面に対して所定のパターンを入力する認証方法において、そのパターンを事後的に他人に推測されにくくすることが可能である。
【図面の簡単な説明】
【0010】
【図1】表示装置の構成を示すブロック図
【図2】表示部に表示される画像(目標画像)を例示する図
【図3】制御部のユーザ認証に関する機能的構成を示す機能ブロック図
【図4】移動方向の変化量を説明するための図
【図5】認証処理を示すフローチャート
【図6】区域を説明するための図
【図7】補正処理を示すフローチャート
【図8】判定処理を示すフローチャート
【図9】補正処理による補正結果を例示する模式図
【図10】補正処理による補正結果を例示する模式図
【図11】認識エリアの配置の変形例を示す図
【図12】認識エリアのサイズを補正する補正の態様を例示する図
【発明を実施するための形態】
【0011】
[発明の要旨]
本発明は、指示体が表示面に接触せずに近接している状態を検出可能な構成を用いて所定のパターンを入力することを第1の特徴とするものである。本発明は、より具体的には、表示面から離間した位置に所定の配置で「認識エリア」を複数配置し、指示体がこの認識エリアを決められた順序で通過したか否かによってパターンの判定を行うものである。本発明は、かかる構成を採用することにより、表示面に指示体の痕跡を残すことなくパターン入力を行うことを可能にする。ここにおいて、指示体とは、ユーザが指示を行うための身体の部位又は器具をいい、例えば、ユーザの指やスタイラスである。
【0012】
しかし、このような非接触の認識エリアは、ユーザの目に見えるように存在するものではなく、いわば、仮想的なものである。そのため、ユーザは、実在しない認識エリアを通過するように指示体を操作させなければならず、操作ミスにも気付きにくいといえる。そこで、本発明は、上述した第1の特徴の構成を備える場合において、特定の条件を満たすときに、指示体の位置として検出された位置と認識エリアの大きさの少なくともいずれかを補正することを第2の特徴とする。ここにおいて、特定の条件とは、指示体の実際の位置がユーザの意図と相違する可能性が高まるような条件であり、例えば、指示体の移動方向が大きく変化する場合のことである。
【0013】
一般に、指示体の移動方向が大きく変化するとき、ユーザの操作には、自身が意図していた軌跡と異なる軌跡で指示体を移動させる傾向が認められる。例えば、ユーザが直角に折れ曲がる軌跡を描いているつもりであっても、実際には角が丸みを帯びた軌跡になってしまったりして、必要な認識エリアを正しく通過しないことがある。また、このような傾向は、ユーザの操作スピードが速くなるほど顕著でもある。本発明においては、このような移動方向の変化が急な位置が検出された場合に、指示体の軌跡又は認識エリアの大きさを補正することにより、当該位置が認識エリアを通過していないと誤認識されることが少なくなるように対処されている。
【0014】
なお、本発明は、複数の認識エリアを構成するに際し、接触する認識エリアと非接触の認識エリアとを組み合わせることも可能である。ユーザが入力したパターンの表示面の痕跡からの推測を困難にする、という目的にかんがみれば、本発明においてユーザが入力すべきパターンには、非接触の認識エリアが1つでも含まれていれば十分である。表示面上の認識エリア(すなわちユーザが実際に接触する認識エリア)は、非接触の認識エリアに比べ、操作ミスが生じにくいといえる。ゆえに、表示面上の認識エリアと非接触の認識エリアとを組み合わせると、非接触の認識エリアのみを用いる場合に比べ、ユーザが入力したパターンを隠蔽しつつも操作ミスを生じにくくさせることが可能である。
【0015】
[実施形態]
図1は、本発明の一実施形態である表示装置10の構成を示すブロック図である。表示装置10は、タッチスクリーンが重ねて設けられた表示領域を有する電子機器であり、本発明の認証装置に相当する構成を含むものである。表示装置10は、例えば、いわゆるスマートフォンやタブレットPC(Personal Computer)である。なお、表示装置10は、ここでは、ユーザが指で操作するものであるとする。つまり、本実施形態における指示体は、ユーザ自身の指である。
【0016】
表示装置10は、図1に示すように、制御部100と、記憶部200と、通信部300と、タッチスクリーン部400とを少なくとも備える。なお、表示装置10は、これらの構成要素のほかに、いわゆる物理キー(タッチスクリーン部400にソフトウェア的に実現されるキーではなく、表示装置10にハードウェアとして存在するキー)を備えてもよい。また、表示装置10は、音声を入出力するための手段(スピーカ、マイクロホン)やバイブレータ、さらには表示領域の傾きを検出するための加速度センサなどを備えてもよい。
【0017】
制御部100は、表示装置10の全体の動作を制御する手段である。制御部100は、CPU(Central Processing Unit)等の演算処理装置と主記憶装置に相当するメモリとを備え、プログラムを実行することによって所定の機能を実現する。制御部100は、後述する各構成要素間での情報の受け渡しを制御し、後述するユーザ認証を実行する。
【0018】
記憶部200は、情報を記憶する手段である。記憶部200は、ハードディスクやフラッシュメモリなど、補助記憶装置に相当する記憶手段を有し、制御部100が制御に用いるデータやアプリケーションプログラムを記憶する。記憶部200は、リムーバブルメディア、すなわち着脱可能な記憶手段を含んでもよいし、UIM(User Identity Module)カードやSIM(Subscriber Identity Module)カードのような、ユーザ(又は表示装置10)を識別するためのデータが記録された記憶手段を含んでもよい。記憶部200は、ユーザ認証に用いられる各ユーザに固有の認証パターンを記憶している。
【0019】
通信部300は、外部装置と通信するための手段である。通信部300は、本実施形態においては、移動通信網等のネットワークに接続するための手段であるとするが、NFC(Near Field Communication)等のネットワークを介さずに外部装置と直接通信する手段であってもよい。なお、通信部300は、本発明にあっては必須の構成要件ではない。
【0020】
タッチスクリーン部400は、画像を表示するとともにユーザの操作を受け付ける手段である。タッチスクリーン部400は、より詳細には、表示部410とセンサ部420とを備える。表示部410は、液晶素子や有機EL(electroluminescence)素子により画像を表示する表示パネルと、表示パネルを駆動する駆動回路等を備える。センサ部420は、表示部410の表示面(画像を表示する面)に重ねて設けられるセンサを備え、ユーザに指示された位置を表す座標情報を制御部100に供給する。センサ部420のセンサは、例えば、指との静電結合を利用して指を感知する静電容量方式のセンサである。
【0021】
センサ部420は、指示体が表示面に接触している状態と、指示体が表示面に接触せずに近接している状態とを区別可能な座標情報を出力する。これらの状態は、静電容量方式であれば、静電容量の相違によって区別可能である。なお、ここでいう「近接」とは、センサの性能にもよるが、一般的には1cm程度である。また、座標情報は、ここでは、表示面の適当な位置を原点とした2次元直交座標系で記述されるものとする。
【0022】
表示装置10の構成は、以上のとおりである。この構成のもと、表示装置10は、アプリケーションプログラムを実行することによって表示面に画像を表示し、種々の処理を実行する。表示装置10は、例えば、通信部300を介して音声通話やデータ通信を実行したり、記憶部200に記憶された画像データや音楽データを再生したりする。また、表示装置10は、ユーザの操作が所定の時間以上受け付けられなかった場合に、表示部410を非表示にし、通常のモードから電力消費を抑制するモードに切り替わってもよい。
【0023】
また、表示装置10は、所定の処理を実行する前に、ユーザ認証を行う。ここでいう所定の処理、すなわち事前にユーザ認証が必要な処理は、どのような処理であってもよいが、例えば、ユーザのプライベートなデータ(アドレス帳等)にアクセスする処理や、電力消費を抑制するモードから通常のモードに切り替わる処理である。
【0024】
図2は、ユーザ認証に際して表示部410に表示される画像を例示する図である。表示装置10は、パターン入力の目安にするための画像を表示部410に表示させる。本実施形態の認識エリアは、縦方向及び横方向に等間隔に3個ずつ、計9個が、正方形の格子状に配置されているものとする。また、認識エリアは、ここでは非接触のもののみであるとする。つまり、表示部410に表示される点状の画像I1〜I9(以下「目標画像」という。)は、認識エリアの目標を示すものであって、認識エリアそのものを示すものではない。実際の認識エリアは、点状の画像I1〜I9からみて、表示面に対して垂直な方向に1cm程度離間した位置にある。なお、認識エリアの形状は、例えば円形であるが、必ずしも円形である必要はない。
【0025】
ユーザが入力するパターン(以下「入力パターン」という。)は、これらの9個の認識エリアの一部又は全部を所定の順序でなぞるような軌跡を示す。ただし、安全性の観点から、パターン入力に必要な認識エリアには、下限値(例えば4個)が設定されていることが望ましい。また、入力パターンは、始点と終点が同じ位置になる図形のように、同じ認識エリアを重複して2回以上含むような軌跡であってもよい。
【0026】
以下においては、ユーザが入力すべきパターンを、アルファベットの大文字のNの鏡文字のような軌跡であるとし、これが記憶部200に認証パターンとして記憶されているものとする。すなわち、本実施形態の認証パターンは、図2に破線で示すように、I1→I4→I7→I5→I3→I6→I9という順序で指示体を移動させるような軌跡である。
【0027】
図3は、制御部100のユーザ認証に関する機能的構成を示す機能ブロック図である。制御部100は、ユーザ認証のためのプログラムを実行することにより、検出部110、算出部120、特定部130、補正部140及び判定部150の各部に相当する機能を実現する。なお、これらの機能は、OS(Operating System)レベルで実現されてもよいし、OSとアプリケーションソフトウェアの協働によって実現されてもよい。
【0028】
検出部110は、指示体の位置を繰り返し検出する手段である。検出部110は、センサ部420により出力される座標情報に基づき、指示体の位置を連続的に検出する。検出部110は、所定のサンプリング周期で位置を検出する。したがって、ここでいう「連続的」とは、検出部110のサンプリング周期に応じて定まる頻度のことを指す。
【0029】
座標情報は、表示面の座標と当該座標における出力値の強度とを示す情報である。検出部110は、これらの情報を用いて、指示体の位置と、当該指示体による指示が接触・非接触のいずれであるかを検出する。以下において、検出部110により検出されるこれらの位置を区別する必要がある場合には、ユーザが指示体を表示面に接触させて指示した位置のことを「接触位置」といい、ユーザが指示体を表示面に(接触させずに)近接させて指示した位置のことを「非接触位置」という。ただし、接触位置を用いたユーザ認証については、本実施形態では触れずに、後述する変形例において言及する。つまり、本実施形態において説明されるのは、非接触位置のみを用いたユーザ認証である。
【0030】
算出部120は、検出部110により検出された位置に基づいて指示体の移動方向を算出する手段である。具体的には、算出部120は、検出部110により検出された2つ(ないしそれ以上)の位置を比較することにより指示体の移動方向を算出する。なお、算出部120が移動方向を算出するために用いる位置は、後述するように、検出部110により連続して検出された位置(すなわち、ある位置と、当該位置の直前に検出された位置)である必要はない。
【0031】
特定部130は、検出部110により検出された位置のうち、算出部により算出された移動方向の変化量が所定の閾値以上となる位置を特定する手段である。特定部130は、ある位置について算出された移動方向と当該位置の直前に検出された位置について算出された移動方向とを比較し、その差が所定の閾値以上となる位置を1又は複数特定する。以下においては、特定部130により特定された位置のことを、「変化点」という。変化点は、簡単にいえば、検出部110により検出された指示体の位置のうちの移動方向が他よりも急激に変化する位置である。
【0032】
図4は、移動方向の変化量を説明するための図である。ここでは、検出部110により点P1、P2、P3が順番に検出され、点P2の点P1からみた移動方向がD1、点P3の点P2からみた移動方向がD2である場合を想定する。この場合、点P2から点P3に移動したときの移動方向の変化量は、角度θで表される。角度θは、D1及びD2をベクトルとみなした場合、これらのベクトルのなす角度に相当する。よって、例えば、指示体が直線的に移動する場合であれば、移動方向の変化量は0°である。
【0033】
変化量の閾値は、あらかじめ設定された適当な値である。この閾値は、望ましくは、認識エリアの配置に応じて決められる。例えば、認識エリアが図2に例示した配置である場合、変化量の閾値は、40°〜45°程度である。なぜならば、図2に示した配置の場合、相異なる3点の認識エリアを結んでできる線(折線)のうち一直線でないものの移動方向の変化量の最小値が「45°」だからである。変化量が45°となる軌跡の一例は、目標画像I1、I5、I6の上をこの順序で結んだ場合の折線である。このような折線を補正の対象とするためには、閾値が45°以下である必要がある。一方、ユーザが指示体を一直線に動かす場合のように、もともと操作ミスが生じにくい場合については、補正の対象外とした方が望ましいといえる。
【0034】
なお、検出部110により検出された位置を結んだ折線(図4参照)は、指示体の実際の軌跡とは必ずしも同一ではない。例えば、検出部110におけるサンプリング周期が長くなるほど、このような折線と指示体の実際の軌跡とのずれは大きくなる。しかしながら、本明細書においては、説明の便宜上、検出部110により検出された位置を図4のようにして結んだ折線のことを指示体の軌跡とみなす場合がある。
【0035】
補正部140は、変化点が複数の認識エリアのいずれにも含まれない場合に、検出部110により検出された位置と認識エリアのサイズの少なくともいずれかを補正する手段である。具体的には、補正部140は、変化点が複数の認識エリアのいずれにも含まれない場合に、変化点と複数の認識エリアのうちの当該変化点に最も近い認識エリアとの距離が短くなるように、当該変化点を当該認識エリアに近づけるか、あるいは当該認識エリアのサイズを大きくする。なお、補正部140は、変化点に相当する位置だけでなく、検出部110により検出された他の位置についてもあわせて移動させることが可能である。
【0036】
判定部150は、入力パターンが認証パターン(すなわち記憶部200に記憶された入力パターン)に相当するか否かを判定する手段である。換言すれば、判定部150は、指示体が複数の認識エリアを決められた順序で通過したか否かを判定する手段である。判定部150は、検出部110により検出された位置に基づいてこの判定を行う。また、判定部150は、補正部140による補正が行われた場合には、その補正結果を反映させた上で判定を行う。したがって、判定部150は、変化点が特定された場合とそうでない場合とで判定の態様を異ならせる。
【0037】
図5は、本実施形態の認証処理の一例を示すフローチャートである。また、図6は、この認証処理において用いられる「区域」という概念を説明するための図である。ここにおいて、区域とは、認識エリアの近傍に定義される区切られた領域をいい、ここでは、破線で示す正方形の領域であるとする。
【0038】
図5に示す認証処理において、表示装置10の制御部100は、まず、指示体の位置を検出しているか否かを判断する(ステップSA1)。制御部100は、指示体の位置を検出している場合には、ユーザがパターンを入力中であると認識する。制御部100がこのように認識するモードのことを、以下においては「動作中モード」という。なお、動作中モードでない状態は、ユーザがパターンを入力する前の状態と、ユーザがパターンを入力した後の状態である。
【0039】
また、制御部100は、ステップSA1において指示体の位置を検出しなかった場合には、動作中モードであるか否かを判断する(ステップSA9)。このとき、動作中モードであるということは、ユーザがパターンを入力し終えたことを意味する。この場合には、制御部100は、後述する判定処理を実行する(ステップSA10)。一方、このとき動作モードでないということは、ユーザがパターンをまだ入力していないことを意味する。この場合には、制御部100は、ステップSA1以降の処理を繰り返し、指示体の位置が検出されるのを待機する。
【0040】
動作中モードにおいて指示体の位置を検出した場合、制御部100は、ステップSA1において新たに検出した位置を入力パターンの軌跡としてメモリに記録する(ステップSA3)。次いで、制御部100は、新たに検出した位置がいずれかの認識エリアに含まれるか否かを判断する(ステップSA4)。ステップSA1において検出した位置が認識エリアに含まれる場合、制御部100は、指示体による認識エリアの通過順序を特定し(ステップSA5)、指示体が当該認識エリアを通過したときの移動方向を算出する(ステップSA6)。なお、通過順序とは、指示体が通過した認識エリアが動作中モードに移行してから何番目のものであるかを示す数値である。また、移動方向は、ここでは、ステップSA1において検出された最新の位置と当該位置よりも前に検出された位置とに基づいて算出される方向であって、後者の位置から前者の位置に向かう方向のことである。ここにおいて、最新の位置よりも前に検出された位置とは、当該最新の位置の直前に検出された位置であってもよいが、当該区域における始点に相当する位置であってもよいし、指示体の軌跡のうちの直前に通過した認識エリアと重なる位置であってもよい。
【0041】
制御部100は、ステップSA1において新たに検出した位置が認識エリアに含まれない場合には、1区域分の軌跡が検出されたか否かを判断する(ステップSA7)。この判断は、具体的には、ある区域において軌跡が発生し、当該軌跡が当該区域の外に出たか否かを検出することによって行われる。制御部100は、1区域分の軌跡が検出されていれば補正処理を実行し(ステップSA8)、そうでなければ、ステップSA1以降の処理を繰り返す。また、制御部100は、指示体の通過順序と移動方向を求めた場合にも、ステップSA1以降の処理を繰り返す。
【0042】
図7は、ステップSA8の補正処理を示すフローチャートである。この補正処理において、制御部100は、1区域内で検出された複数の位置の中から、当該区域内において移動方向の変化量が最大となる位置を特定する(ステップSB1)。この位置のことを、以下においては「点C」ともいう。なお、ステップSB1において特定される点Cは、上述した変化点の候補であり、そのすべてが変化点に相当するとは限らない。
【0043】
次に、制御部100は、当該区域における軌跡の始点と終点とを特定する(ステップSB2)。始点及び終点は、典型的には、当該区域の境界にある。ただし、入力パターンそのものの始点又は終点に相当する区域においては、入力パターンの始点又は終点が当該区域の始点又は終点となる。以下においては、ステップSB2において特定される始点及び終点のことを、それぞれ「点A」、「点B」ともいう。
【0044】
点A、B及びCを特定したら、制御部100は、線分ACと線分ABとがなす角度、すなわち∠ACBが所定の閾値(Th)以上であるか否かを判断する(ステップSB3)。点Cは、∠ACB≧Thを満たせば変化点に相当し、そうでなければ変化点に相当しない。制御部100は、点Cが変化点に相当しなければ、この点Cが示す位置に関しては後述するオフセット値(補正量)を算出しないと判断し、ステップSB4以降の処理を実行せずに当該区域についての補正処理を終了する。
【0045】
点Cが変化点に相当する場合、制御部100は、点Cが示す位置に最も近い認識エリア(すなわち当該区域に対応する当該区域内の認識エリア)の位置を特定する(ステップSB4)。以下においては、ステップSB4において特定される位置のことを「点D」ともいう。点Dは、認識エリアのうちの代表的な位置であり、ここでは、認識エリアの中心点であるとする。次いで、制御部100は、点Cと点Dとの距離を算出し、これを点Cが示す位置とその最近傍の認識エリアとの距離とする(ステップSB5)。
【0046】
次に、制御部100は、位置の補正の適用対象、すなわちオフセット値の適用対象を判断する(ステップSB6)。本実施形態においては、制御部100が検出した位置のうち変化点に相当する位置のみを補正する第1の補正態様と、変化点の補正に加え、変化点の補正量に応じた補正を他の位置にも適用する第2の補正態様とがある。これらの補正態様のいずれが適用されるかは、表示装置10に事前に設定され、又はユーザによって設定される。制御部100は、このような事前に設定に従ってオフセット値の適用対象を判断する。
【0047】
第1の補正態様の場合、制御部100は、変化点の位置のみを補正する(ステップSB7)。このときの補正量(すなわちオフセット値)は、本実施形態においては、点Cと点Dとの距離に等しいものとする。すなわち、制御部100は、点Cとして検出された位置を点Dで示す認識エリア内の位置まで移動させる補正を実行する。なお、オフセット値は、スカラー量ではなくベクトル量である。
【0048】
一方、第2の補正態様の場合、制御部100は、既に別の変化点が特定されており、そのオフセット値が算出されているか否かを判断する(ステップSB8)。換言すれば、制御部100は、当該補正処理よりも前に補正処理が実行され、変化点が特定されて補正が実行されているか否かを判断する。以下においては、当該補正処理、すなわちそのとき実行中の補正処理によって算出されるオフセット値とそのオフセット値が適用される変化点の位置のことを、それぞれ「第1のオフセット値」と「第1の位置」といい、当該補正処理よりも前の実行された補正処理によって第1のオフセット値の直前に算出されたオフセット値とそのオフセット値が適用される変化点の位置のことを、それぞれ「第2のオフセット値」と「第2の位置」という。
【0049】
第2のオフセット値がある場合、制御部100は、第1のオフセット値と第2のオフセット値の中間値を算出する(ステップSB9)。そして、制御部100は、第1の位置を含む1又は複数の位置を補正する(ステップSB10)。ステップSB10において、制御部100は、第1の位置を第1のオフセット値で移動させる補正を少なくとも実行する。加えて、制御部100は、第1の位置と第2の位置の間に検出された他の位置(第3の位置)が1又は複数ある場合に、当該他の位置を、ステップSB9において算出された中間値で移動させる。また、制御部100は、第2の位置に相当する変化点がない場合には、第1の位置よりも前に検出された他の位置を第1のオフセット値で移動させてもよい。さらに、制御部100は、第1の位置よりも後に検出される他の位置についても、第1のオフセット値で移動させるようにしてもよい。
【0050】
補正処理の最後に、制御部100は、上述のようにして補正した軌跡に基づき、指示体による認識エリアの通過順序を特定し(ステップSB11)、指示体の移動方向を算出する(ステップSB12)。すなわち、制御部100は、上記補正を反映させた上で通過順序や移動方向を求める。また、制御部100は、変化点の位置以外の他の位置も補正した場合、当該他の位置の移動方向を算出し直したり、通過順序を特定し直したりしてもよい。なお、ステップSB11及びSB12の処理の具体的な手順は、ステップSA5及びSA6のそれと同様である。
【0051】
図8は、ステップSA10の判定処理を示すフローチャートである。この判定処理において、制御部100は、ユーザの入力パターンと記憶部200に記憶された認証パターンとを比較し、入力パターンの各認識エリアの通過順序が所定の順序であるか否かを判定する(ステップSC1)。すなわち、制御部100は、入力パターンにおける通過順序が認証パターンにおける通過順序と一致するか否かを判定する。また、制御部100は、入力パターンの各認識エリアの移動方向が認証パターンの各認識エリアの移動方向と一致するか否かを判定する(ステップSC2)。そして、制御部100は、これらの判定結果に応じた処理を実行する(ステップSC3)。例えば、制御部100は、入力パターンが認証パターンと一致すると判定した場合には、その後のユーザの操作に応じた処理を許容し、入力パターンが認証パターンと一致しないと判定した場合には、認証処理を再度要求したり、所定のエラーメッセージを表示部410に表示させたりする。また、制御部100は、それぞれの判定結果に応じた音声をスピーカから発したり、エラーメッセージに代えてバイブレータを振動させたりしてもよい。
【0052】
なお、制御部100は、判定処理において、ステップSC2の処理を省略してもよい。すなわち、制御部100は、入力パターンにおける各認識エリアの通過順序のみに基づいて判定を行ってもよい。ただし、入力パターンには、各認識エリアの通過順序が認証パターンと一致するものの、その認識エリアにおける移動方向が認証パターンとは一致しないというパターンも存在し得るため、判定をより確実なものとするためには、ステップSC2の処理を省略しない方が好ましいといえる。
【0053】
図9及び図10は、本実施形態の補正処理による補正結果を例示する模式図である。図9は、上述した第1の補正態様の場合の補正結果を示す図であり、図10は、上述した第2の補正態様の場合の補正結果を示す図である。ここにおいて、図中の破線で示すA1〜A9は、認識エリアを表している。なお、これらの図に示す例においては、いずれも、点P1及びP2が補正前の変化点、すなわち実際に検出された変化点の位置に相当する。また、指示体の軌跡(折線の矢印)は、ここでは直線状であるが、実際には必ずしも直線状ではない。
【0054】
図9の例においては、制御部100は、点P1の位置を点P1aの位置に移動させ、点P2の位置を点P2aの位置に移動させる補正を行う。この場合、指示体の軌跡は、実際には認識エリアA7及びA3を通過していないが、これらの認識エリアを通過したものとみなされる。その結果、ユーザの入力パターンは、認証パターンと通過順序が一致すると判定される。
【0055】
また、図10の例においては、制御部100は、点P1及びP2の位置に加え、指示体の軌跡に相当する他の位置も全体的に補正する。制御部100は、点P2よりも前に検出された位置については、点P2の位置の補正結果に基づき、これらを右寄りに移動させる一方、点P1よりも後に検出された位置については、点P1の位置の補正結果に基づき、これらを左寄りに移動させる。
【0056】
また、制御部100は、点P1と点P2の間において検出された位置(すなわち、点P2よりも後に検出され、点P1よりも前に検出された位置)については、点P1の補正量と点P2の補正量の中間値に相当する補正量で移動させる。この例においては、点P1の補正量と点P2の補正量とがほぼ反対方向の補正量になるため、これらの間の補正量は、点P1の補正量と点P2の補正量とを相殺させたような補正量となる。
【0057】
以上のように、表示装置10によれば、非接触の認識エリアを用いたパターン入力に際し、変化点に相当する位置がいずれの認識エリアに含まれない場合であっても、当該変化点の位置を補正した上で入力パターンを判定することが可能である。また、表示装置10によれば、変化点の位置だけでなく他の位置についても、変化点の位置の補正に応じて補正することが可能である。
【0058】
[変形例]
本発明は、上述した実施形態に限定されることなく、例えば、以下に示す変形例に従った実施も可能である。なお、これらの変形例は、必要に応じて、適宜組み合わせて実施されてもよい。
【0059】
(1)認識エリアの配置は、格子状に限らない。例えば、認識エリアの配置は、図11に示すように、正六角形の頂点に相当する各位置であってもよい。この場合の入力パターンは、6個の認識エリアのうちのいくつかを所定の順序で結んだ折線となる。したがって、指示体がとり得る軌跡は、図中の破線のいずれかである。なお、この配置の場合、移動方向の変化量の閾値は、図中に示す角度θ、すなわち60°以下であると望ましい。
また、認識エリアの配置は、このような規則的な配置に限らず、不規則的な配置であってもよいし、文字、記号、イラストなどに基づいたものであってもよい。さらに、認識エリアの数も、上述した例に限定されない。
【0060】
(2)制御部100は、1回の判定処理によって入力パターンを正しく判定できなかった場合に、指示体の軌跡の位置(又は認識エリアのサイズ)を再度補正し、判定処理を再度実行するようにしてもよい。ここにおいて、入力パターンを正しく判定できなかった場合とは、例えば、指示体が通過した認識エリアの数が所定数に満たない場合である。ここでいう所定数は、認証パターンに含まれる認識エリアの数以下であり、例えば、認証パターンに含まれる認識エリアの数の半数などである。なお、この場合、1回目の補正処理は、第1の補正態様で行われているものとする。
【0061】
このとき、制御部100は、補正処理のやり直しを行う。具体的には、制御部100は、2回目の補正処理を第1の補正態様ではなく第2の補正態様で実行する。このようにすれば、ユーザの入力パターンが(順序的には正しいものの)全体的に位置がずれており、認識エリアを通過していないと判定されてしまったような場合に、認証パターンに一致すると判定されるようにすることが可能になる。
【0062】
(3)制御部100は、上述したステップSB9の処理(図7参照)において、第1のオフセット値と第2のオフセット値の中間値に代えて、第1のオフセット値と第2のオフセット値に基づいた別の値(第3のオフセット値)を算出してもよい。第3のオフセット値は、第1のオフセット値と第2のオフセット値の間の値であり、例えば、これらのオフセット値のベクトル演算によって算出可能である。
【0063】
例えば、制御部100は、これらのオフセット値のいずれかに重み付けを与えた第3のオフセット値によって、第1の位置と第2の位置の間に検出された他の位置(第3の位置)を補正することが可能である。ここでいう重み付けとは、第3の位置が第2の位置よりも第1の位置に近い場合には、第3のオフセット値が中間値よりも第1のオフセット値に近づき、第3の位置が第1の位置よりも第2の位置に近い場合には、第3のオフセット値が中間値よりも第2のオフセット値に近づくようなものである。
【0064】
なお、他の位置(すなわち第3の位置)に相当する位置が複数ある場合には、第3のオフセット値がそれぞれの位置で異なる値になってもよい。また、制御部100は、第3の位置に相当する位置が複数ある場合に、そのうちの第1の位置に近い位置については第1のオフセット値で補正し、第2の位置に近い位置については第2のオフセット値で補正してもよい。すなわち、第3のオフセット値としては、第1のオフセット値以上第2のオフセット値以下(又は第2のオフセット値以上第1のオフセット値以下)のさまざまな値を用いることができる。
【0065】
(4)上述したように、入力パターンは、接触位置と非接触位置とを組み合わせて構成されてもよい。この場合において、接触位置からなる認識エリアの配置と、非接触位置からなる認識エリアの配置とは、必ずしも同一である必要はなく、表示面上の認識エリアは1点のみであってもよい。
【0066】
入力パターンを接触位置と非接触位置の組み合わせにより構成した場合、制御部100は、非接触位置のみを補正の対象とし、接触位置を補正の対象から除外してもよい。なぜならば、接触位置による認識エリアは、非接触位置による認識エリアに比べ、操作ミスが生じにくいからである。例えば、接触位置による認識エリアと同じ位置に目標画像が表示されていれば、ユーザはどこに認識エリアがあるのかを目視にて容易に把握することが可能である。そのため、このような認識エリアを押し間違う可能性は、空中にある非接触の認識エリアを通過しない操作ミスの可能性よりも低いといえる。しかしながら、制御部100は、非接触位置と接触位置の双方を補正の対象としてもよい。
【0067】
(5)上述した実施形態において、制御部100は、変化点が認識エリアに必ず含まれるような態様で補正を行っている。しかし、制御部100は、このように補正量を無制限とするのではなく、補正量を一定の範囲内に制限してもよい。このようにすれば、実際には正しくない入力パターンが認証パターンと一致すると誤判定される可能性を少なくすることができる。
【0068】
また、制御部100は、補正量を一定の範囲内とする場合に、その補正量の大小を移動方向の変化量に応じて異ならせてもよい。例えば、制御部100は、指示体の軌跡として検出された位置のうち、移動方向の変化量が大きい位置ほど補正量が多くなるように(すなわち、より認識エリアに近づくように)補正を行ってもよい。なぜならば、操作ミスが生じる可能性は、移動方向の変化量が大きいほど高くなるといえるからである。
【0069】
なお、操作ミスが生じる可能性は、指示体の移動速度が大きい(速い)ほど高くなるともいえる。そこで、制御部100は、移動方向の変化量の場合と同様の要領で、補正量の大小を指示体の移動速度に応じて異ならせてもよい。例えば、制御部100は、複数の位置を連続して検出した場合の検出時刻と、当該複数の位置の変位とに基づいて、指示体の移動速度を算出することが可能である。なお、制御部100は、指示体の移動方向を算出するときに用いた位置に基づいて、当該移動方向に移動した場合の移動速度を算出することが可能である。すなわち、制御部100の算出部120は、指示体の移動速度を指示体の移動方向とともに算出することが可能である。
【0070】
(6)本発明は、指示体の軌跡として検出された位置を補正するのではなく、認識エリアのサイズを補正するものであってもよい。これらのいずれの補正の態様であっても、変化点が認識エリアに含まれやすくするようにすることが可能である。また、本発明は、位置の補正と認識エリアの補正の双方を実行するものであってもよい。
【0071】
図12は、本変形例の補正の態様を例示する図である。なお、同図の補正前の記載は、図9のそれと同様である。この場合、制御部100は、変化点に相当する点P1、P2の位置を移動させるのではなく、変化点の最近傍の認識エリアである領域A7、A3のサイズを大きくし、それぞれ領域A7a、A3aに変更する。そうすると、点P1、P2は、結果として、(補正後の)認識エリアである領域A7a、A3aを通過することになる。なお、認識エリアのサイズの補正量に対しては、位置の補正量と同様の考え方を適用することができる。
【0072】
(7)上述した実施形態の認証処理(図5参照)は、ステップSA1において指示体の位置を検出しなくなってから判定処理(ステップSA10、図8参照)を実行するものである。すなわち、上述した実施形態の認証処理は、ユーザが入力パターンを最後まで入力してから判定処理を実行するものである。しかし、本発明の認証処理は、ユーザが入力パターンを最後まで入力してからでなければ判定処理を行えないものではなく、例えば、ユーザが1区域分の軌跡を入力し終える毎に判定処理を逐次的に行うものであってもよい。また、本発明の認証処理は、隣り合う複数の区域によってグループを構成し、そのグループ単位で判定処理を行うものであってもよいし、指示体が所定数の区域を通過する毎に判定処理を行うものであってもよい。
【0073】
(8)本発明において、ユーザは、表示面を必ず正面から視認するとは限らない。ユーザの視認方向が表示面に対して正面方向でないと、ユーザが認識エリアがあると考えている位置と実際の認識エリアの位置とに食い違いが生じる可能性がある。一般的には、ユーザが認識エリアがあると考えている位置は、実際の認識エリアの位置よりもユーザからみて手前側(表示面に表示される画像の下側)にずれる傾向にある。
【0074】
そこで、制御部100は、このような食い違いを考慮して補正量を決定してもよい。具体的には、制御部100は、表示部410が表示する画像に基づいて表示装置10の上下方向を判断し、上述した実施形態で求められる補正量に視認方向に応じた補正量を加算するようにすることが可能である。あるいは、表示装置10が加速度センサによって表示面の傾きを検知可能な場合には、加速度センサによって検知された傾きに応じて補正量を異ならせてもよい。
【0075】
(9)センサ部420は、静電容量の大小によって指示体のおおよその距離を算出可能である。制御部100は、このようにして算出される指示体の表示面からの距離に応じて補正量を異ならせるようにしてもよい。例えば、制御部100は、指示体が表示面から離れている場合ほど補正量を多くするとよい。
【0076】
(10)本発明は、スマートフォンやタブレットPCに限らず、例えば、電子ブック、電子辞書、携帯ゲーム機など、さまざまな電子機器において実施することができる。また、本発明に係る認証装置は、上述した表示装置10の形態に限らず、表示装置と別体に構成された形態であってもよい。例えば、本発明は、制御部100に相当する構成を少なくとも有するコンピュータ装置と、タッチスクリーン部400に相当する構成を少なくとも有し、当該コンピュータ装置に無線通信等により接続される表示装置とを含むシステムによっても実施可能である。この場合、コンピュータ装置は、表示装置と情報をやりとりする手段を備えていれば、本発明に係る認証装置として機能することができる。
【0077】
また、本発明は、上記コンピュータ装置が実行するプログラムや、認証パターンを用いたユーザの認証方法として把握することも可能である。上記プログラムは、光ディスク等の記録媒体に記録した形態や、インターネット等のネットワークを介して、コンピュータにダウンロードさせ、これをインストールして利用可能にする形態などでも提供可能である。
【符号の説明】
【0078】
10…表示装置、100…制御部、110…検出部、120…算出部、130…特定部、140…補正部、150…判定部、200…記憶部、300…通信部、400…タッチスクリーン部、410…表示部、420…センサ部
【技術分野】
【0001】
本発明は、指等の指示体を動かすことによる認証技術に関する。
【背景技術】
【0002】
タッチスクリーン(タッチパネルともいう。)を備える表示装置において、その表示面に指で所定のパターンを描くことで何らかの制限(画面ロック等)を解除する技術が知られている(例えば、非特許文献1参照)。このようなパターンは、ユーザ毎に設定することが可能である。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】“携帯電話(T−01C 取扱説明書 位置情報とセキュリティ)”、[online]、[平成23年3月22日検索]、インターネット〈URL:http://www.fmworld.net/product/phone/sp/t-01c/manual/category04/006.html〉
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、表示面を指でなぞると、指の皮脂や汚れが表示面に付着することがある。このような付着物が表示面に残ると、制限を解除するためのパターンを他人に推測されてしまうおそれがある。
そこで、本発明は、表示面に対して所定のパターンを入力する認証方法において、そのパターンを事後的に他人に推測されにくくすることを目的とする。
【課題を解決するための手段】
【0005】
本発明の一態様に係る認証装置は、表示面に近接して移動する指示体の位置を連続的に検出する検出部と、前記検出部により検出された位置に基づいて前記指示体の移動方向を算出する算出部と、前記算出部により算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する特定部と、前記特定部により特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する補正部と、前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記検出部により検出された位置に基づいて判定する判定部であって、前記特定部により特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記補正部による補正を反映させて判定を行う判定部とを備える構成を有する。
【0006】
好ましい態様において、前記補正部は、前記特定部により特定された位置と他の前記位置とを移動させる。
別の好ましい態様において、前記特定部は、前記変化量が前記閾値以上となる位置として第1の位置と第2の位置とを特定し、前記補正部は、前記第1の位置を第1の補正量で移動させ、前記第2の位置を第2の補正量で移動させるとともに、前記検出部により前記第1の位置と前記第2の位置の間に第3の位置が検出された場合に、当該第3の位置を前記第1の補正量と前記第2の補正量の間の補正量で移動させる。
別の好ましい態様において、前記補正部は、前記判定部により前記指示体が通過した前記認識エリアの数が所定数に満たない場合に、前記特定部により特定された位置と他の前記位置とを移動させ、前記判定部は、前記指示体が通過した前記認識エリアの数が所定数に満たないと判定した場合に、前記補正部による補正を反映させた判定を再度行う。
さらに別の好ましい態様において、前記算出部は、前記検出部により検出された位置に基づいて前記指示体の移動方向及び移動速度を算出し、前記補正部は、前記算出部により算出された移動速度が大きいほど補正量を多くする。
さらに別の好ましい態様において、前記補正部は、前記変化量が大きい前記位置ほど補正量を多くする。
さらに別の好ましい態様において、前記検出部は、前記指示体が前記表示面に近接したときの位置である非接触位置と、前記指示体が前記表示面に接触したときの位置である接触位置とを検出し、前記判定部は、前記非接触位置と前記接触位置とを前記認識エリアに含む判定を行う。
さらに別の好ましい態様において、前記補正部は、前記非接触位置を補正の対象とし、前記接触位置を補正の対象としない。
さらに別の好ましい態様において、前記特定部は、前記閾値を前記複数の認識エリアの前記配置に応じて異ならせる。
【0007】
本発明の他の態様に係る認証方法は、表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップとを有する。
【0008】
本発明の他の態様に係るプログラムは、コンピュータに、表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップとを実行させるためのものである。
【発明の効果】
【0009】
本発明によれば、表示面に対して所定のパターンを入力する認証方法において、そのパターンを事後的に他人に推測されにくくすることが可能である。
【図面の簡単な説明】
【0010】
【図1】表示装置の構成を示すブロック図
【図2】表示部に表示される画像(目標画像)を例示する図
【図3】制御部のユーザ認証に関する機能的構成を示す機能ブロック図
【図4】移動方向の変化量を説明するための図
【図5】認証処理を示すフローチャート
【図6】区域を説明するための図
【図7】補正処理を示すフローチャート
【図8】判定処理を示すフローチャート
【図9】補正処理による補正結果を例示する模式図
【図10】補正処理による補正結果を例示する模式図
【図11】認識エリアの配置の変形例を示す図
【図12】認識エリアのサイズを補正する補正の態様を例示する図
【発明を実施するための形態】
【0011】
[発明の要旨]
本発明は、指示体が表示面に接触せずに近接している状態を検出可能な構成を用いて所定のパターンを入力することを第1の特徴とするものである。本発明は、より具体的には、表示面から離間した位置に所定の配置で「認識エリア」を複数配置し、指示体がこの認識エリアを決められた順序で通過したか否かによってパターンの判定を行うものである。本発明は、かかる構成を採用することにより、表示面に指示体の痕跡を残すことなくパターン入力を行うことを可能にする。ここにおいて、指示体とは、ユーザが指示を行うための身体の部位又は器具をいい、例えば、ユーザの指やスタイラスである。
【0012】
しかし、このような非接触の認識エリアは、ユーザの目に見えるように存在するものではなく、いわば、仮想的なものである。そのため、ユーザは、実在しない認識エリアを通過するように指示体を操作させなければならず、操作ミスにも気付きにくいといえる。そこで、本発明は、上述した第1の特徴の構成を備える場合において、特定の条件を満たすときに、指示体の位置として検出された位置と認識エリアの大きさの少なくともいずれかを補正することを第2の特徴とする。ここにおいて、特定の条件とは、指示体の実際の位置がユーザの意図と相違する可能性が高まるような条件であり、例えば、指示体の移動方向が大きく変化する場合のことである。
【0013】
一般に、指示体の移動方向が大きく変化するとき、ユーザの操作には、自身が意図していた軌跡と異なる軌跡で指示体を移動させる傾向が認められる。例えば、ユーザが直角に折れ曲がる軌跡を描いているつもりであっても、実際には角が丸みを帯びた軌跡になってしまったりして、必要な認識エリアを正しく通過しないことがある。また、このような傾向は、ユーザの操作スピードが速くなるほど顕著でもある。本発明においては、このような移動方向の変化が急な位置が検出された場合に、指示体の軌跡又は認識エリアの大きさを補正することにより、当該位置が認識エリアを通過していないと誤認識されることが少なくなるように対処されている。
【0014】
なお、本発明は、複数の認識エリアを構成するに際し、接触する認識エリアと非接触の認識エリアとを組み合わせることも可能である。ユーザが入力したパターンの表示面の痕跡からの推測を困難にする、という目的にかんがみれば、本発明においてユーザが入力すべきパターンには、非接触の認識エリアが1つでも含まれていれば十分である。表示面上の認識エリア(すなわちユーザが実際に接触する認識エリア)は、非接触の認識エリアに比べ、操作ミスが生じにくいといえる。ゆえに、表示面上の認識エリアと非接触の認識エリアとを組み合わせると、非接触の認識エリアのみを用いる場合に比べ、ユーザが入力したパターンを隠蔽しつつも操作ミスを生じにくくさせることが可能である。
【0015】
[実施形態]
図1は、本発明の一実施形態である表示装置10の構成を示すブロック図である。表示装置10は、タッチスクリーンが重ねて設けられた表示領域を有する電子機器であり、本発明の認証装置に相当する構成を含むものである。表示装置10は、例えば、いわゆるスマートフォンやタブレットPC(Personal Computer)である。なお、表示装置10は、ここでは、ユーザが指で操作するものであるとする。つまり、本実施形態における指示体は、ユーザ自身の指である。
【0016】
表示装置10は、図1に示すように、制御部100と、記憶部200と、通信部300と、タッチスクリーン部400とを少なくとも備える。なお、表示装置10は、これらの構成要素のほかに、いわゆる物理キー(タッチスクリーン部400にソフトウェア的に実現されるキーではなく、表示装置10にハードウェアとして存在するキー)を備えてもよい。また、表示装置10は、音声を入出力するための手段(スピーカ、マイクロホン)やバイブレータ、さらには表示領域の傾きを検出するための加速度センサなどを備えてもよい。
【0017】
制御部100は、表示装置10の全体の動作を制御する手段である。制御部100は、CPU(Central Processing Unit)等の演算処理装置と主記憶装置に相当するメモリとを備え、プログラムを実行することによって所定の機能を実現する。制御部100は、後述する各構成要素間での情報の受け渡しを制御し、後述するユーザ認証を実行する。
【0018】
記憶部200は、情報を記憶する手段である。記憶部200は、ハードディスクやフラッシュメモリなど、補助記憶装置に相当する記憶手段を有し、制御部100が制御に用いるデータやアプリケーションプログラムを記憶する。記憶部200は、リムーバブルメディア、すなわち着脱可能な記憶手段を含んでもよいし、UIM(User Identity Module)カードやSIM(Subscriber Identity Module)カードのような、ユーザ(又は表示装置10)を識別するためのデータが記録された記憶手段を含んでもよい。記憶部200は、ユーザ認証に用いられる各ユーザに固有の認証パターンを記憶している。
【0019】
通信部300は、外部装置と通信するための手段である。通信部300は、本実施形態においては、移動通信網等のネットワークに接続するための手段であるとするが、NFC(Near Field Communication)等のネットワークを介さずに外部装置と直接通信する手段であってもよい。なお、通信部300は、本発明にあっては必須の構成要件ではない。
【0020】
タッチスクリーン部400は、画像を表示するとともにユーザの操作を受け付ける手段である。タッチスクリーン部400は、より詳細には、表示部410とセンサ部420とを備える。表示部410は、液晶素子や有機EL(electroluminescence)素子により画像を表示する表示パネルと、表示パネルを駆動する駆動回路等を備える。センサ部420は、表示部410の表示面(画像を表示する面)に重ねて設けられるセンサを備え、ユーザに指示された位置を表す座標情報を制御部100に供給する。センサ部420のセンサは、例えば、指との静電結合を利用して指を感知する静電容量方式のセンサである。
【0021】
センサ部420は、指示体が表示面に接触している状態と、指示体が表示面に接触せずに近接している状態とを区別可能な座標情報を出力する。これらの状態は、静電容量方式であれば、静電容量の相違によって区別可能である。なお、ここでいう「近接」とは、センサの性能にもよるが、一般的には1cm程度である。また、座標情報は、ここでは、表示面の適当な位置を原点とした2次元直交座標系で記述されるものとする。
【0022】
表示装置10の構成は、以上のとおりである。この構成のもと、表示装置10は、アプリケーションプログラムを実行することによって表示面に画像を表示し、種々の処理を実行する。表示装置10は、例えば、通信部300を介して音声通話やデータ通信を実行したり、記憶部200に記憶された画像データや音楽データを再生したりする。また、表示装置10は、ユーザの操作が所定の時間以上受け付けられなかった場合に、表示部410を非表示にし、通常のモードから電力消費を抑制するモードに切り替わってもよい。
【0023】
また、表示装置10は、所定の処理を実行する前に、ユーザ認証を行う。ここでいう所定の処理、すなわち事前にユーザ認証が必要な処理は、どのような処理であってもよいが、例えば、ユーザのプライベートなデータ(アドレス帳等)にアクセスする処理や、電力消費を抑制するモードから通常のモードに切り替わる処理である。
【0024】
図2は、ユーザ認証に際して表示部410に表示される画像を例示する図である。表示装置10は、パターン入力の目安にするための画像を表示部410に表示させる。本実施形態の認識エリアは、縦方向及び横方向に等間隔に3個ずつ、計9個が、正方形の格子状に配置されているものとする。また、認識エリアは、ここでは非接触のもののみであるとする。つまり、表示部410に表示される点状の画像I1〜I9(以下「目標画像」という。)は、認識エリアの目標を示すものであって、認識エリアそのものを示すものではない。実際の認識エリアは、点状の画像I1〜I9からみて、表示面に対して垂直な方向に1cm程度離間した位置にある。なお、認識エリアの形状は、例えば円形であるが、必ずしも円形である必要はない。
【0025】
ユーザが入力するパターン(以下「入力パターン」という。)は、これらの9個の認識エリアの一部又は全部を所定の順序でなぞるような軌跡を示す。ただし、安全性の観点から、パターン入力に必要な認識エリアには、下限値(例えば4個)が設定されていることが望ましい。また、入力パターンは、始点と終点が同じ位置になる図形のように、同じ認識エリアを重複して2回以上含むような軌跡であってもよい。
【0026】
以下においては、ユーザが入力すべきパターンを、アルファベットの大文字のNの鏡文字のような軌跡であるとし、これが記憶部200に認証パターンとして記憶されているものとする。すなわち、本実施形態の認証パターンは、図2に破線で示すように、I1→I4→I7→I5→I3→I6→I9という順序で指示体を移動させるような軌跡である。
【0027】
図3は、制御部100のユーザ認証に関する機能的構成を示す機能ブロック図である。制御部100は、ユーザ認証のためのプログラムを実行することにより、検出部110、算出部120、特定部130、補正部140及び判定部150の各部に相当する機能を実現する。なお、これらの機能は、OS(Operating System)レベルで実現されてもよいし、OSとアプリケーションソフトウェアの協働によって実現されてもよい。
【0028】
検出部110は、指示体の位置を繰り返し検出する手段である。検出部110は、センサ部420により出力される座標情報に基づき、指示体の位置を連続的に検出する。検出部110は、所定のサンプリング周期で位置を検出する。したがって、ここでいう「連続的」とは、検出部110のサンプリング周期に応じて定まる頻度のことを指す。
【0029】
座標情報は、表示面の座標と当該座標における出力値の強度とを示す情報である。検出部110は、これらの情報を用いて、指示体の位置と、当該指示体による指示が接触・非接触のいずれであるかを検出する。以下において、検出部110により検出されるこれらの位置を区別する必要がある場合には、ユーザが指示体を表示面に接触させて指示した位置のことを「接触位置」といい、ユーザが指示体を表示面に(接触させずに)近接させて指示した位置のことを「非接触位置」という。ただし、接触位置を用いたユーザ認証については、本実施形態では触れずに、後述する変形例において言及する。つまり、本実施形態において説明されるのは、非接触位置のみを用いたユーザ認証である。
【0030】
算出部120は、検出部110により検出された位置に基づいて指示体の移動方向を算出する手段である。具体的には、算出部120は、検出部110により検出された2つ(ないしそれ以上)の位置を比較することにより指示体の移動方向を算出する。なお、算出部120が移動方向を算出するために用いる位置は、後述するように、検出部110により連続して検出された位置(すなわち、ある位置と、当該位置の直前に検出された位置)である必要はない。
【0031】
特定部130は、検出部110により検出された位置のうち、算出部により算出された移動方向の変化量が所定の閾値以上となる位置を特定する手段である。特定部130は、ある位置について算出された移動方向と当該位置の直前に検出された位置について算出された移動方向とを比較し、その差が所定の閾値以上となる位置を1又は複数特定する。以下においては、特定部130により特定された位置のことを、「変化点」という。変化点は、簡単にいえば、検出部110により検出された指示体の位置のうちの移動方向が他よりも急激に変化する位置である。
【0032】
図4は、移動方向の変化量を説明するための図である。ここでは、検出部110により点P1、P2、P3が順番に検出され、点P2の点P1からみた移動方向がD1、点P3の点P2からみた移動方向がD2である場合を想定する。この場合、点P2から点P3に移動したときの移動方向の変化量は、角度θで表される。角度θは、D1及びD2をベクトルとみなした場合、これらのベクトルのなす角度に相当する。よって、例えば、指示体が直線的に移動する場合であれば、移動方向の変化量は0°である。
【0033】
変化量の閾値は、あらかじめ設定された適当な値である。この閾値は、望ましくは、認識エリアの配置に応じて決められる。例えば、認識エリアが図2に例示した配置である場合、変化量の閾値は、40°〜45°程度である。なぜならば、図2に示した配置の場合、相異なる3点の認識エリアを結んでできる線(折線)のうち一直線でないものの移動方向の変化量の最小値が「45°」だからである。変化量が45°となる軌跡の一例は、目標画像I1、I5、I6の上をこの順序で結んだ場合の折線である。このような折線を補正の対象とするためには、閾値が45°以下である必要がある。一方、ユーザが指示体を一直線に動かす場合のように、もともと操作ミスが生じにくい場合については、補正の対象外とした方が望ましいといえる。
【0034】
なお、検出部110により検出された位置を結んだ折線(図4参照)は、指示体の実際の軌跡とは必ずしも同一ではない。例えば、検出部110におけるサンプリング周期が長くなるほど、このような折線と指示体の実際の軌跡とのずれは大きくなる。しかしながら、本明細書においては、説明の便宜上、検出部110により検出された位置を図4のようにして結んだ折線のことを指示体の軌跡とみなす場合がある。
【0035】
補正部140は、変化点が複数の認識エリアのいずれにも含まれない場合に、検出部110により検出された位置と認識エリアのサイズの少なくともいずれかを補正する手段である。具体的には、補正部140は、変化点が複数の認識エリアのいずれにも含まれない場合に、変化点と複数の認識エリアのうちの当該変化点に最も近い認識エリアとの距離が短くなるように、当該変化点を当該認識エリアに近づけるか、あるいは当該認識エリアのサイズを大きくする。なお、補正部140は、変化点に相当する位置だけでなく、検出部110により検出された他の位置についてもあわせて移動させることが可能である。
【0036】
判定部150は、入力パターンが認証パターン(すなわち記憶部200に記憶された入力パターン)に相当するか否かを判定する手段である。換言すれば、判定部150は、指示体が複数の認識エリアを決められた順序で通過したか否かを判定する手段である。判定部150は、検出部110により検出された位置に基づいてこの判定を行う。また、判定部150は、補正部140による補正が行われた場合には、その補正結果を反映させた上で判定を行う。したがって、判定部150は、変化点が特定された場合とそうでない場合とで判定の態様を異ならせる。
【0037】
図5は、本実施形態の認証処理の一例を示すフローチャートである。また、図6は、この認証処理において用いられる「区域」という概念を説明するための図である。ここにおいて、区域とは、認識エリアの近傍に定義される区切られた領域をいい、ここでは、破線で示す正方形の領域であるとする。
【0038】
図5に示す認証処理において、表示装置10の制御部100は、まず、指示体の位置を検出しているか否かを判断する(ステップSA1)。制御部100は、指示体の位置を検出している場合には、ユーザがパターンを入力中であると認識する。制御部100がこのように認識するモードのことを、以下においては「動作中モード」という。なお、動作中モードでない状態は、ユーザがパターンを入力する前の状態と、ユーザがパターンを入力した後の状態である。
【0039】
また、制御部100は、ステップSA1において指示体の位置を検出しなかった場合には、動作中モードであるか否かを判断する(ステップSA9)。このとき、動作中モードであるということは、ユーザがパターンを入力し終えたことを意味する。この場合には、制御部100は、後述する判定処理を実行する(ステップSA10)。一方、このとき動作モードでないということは、ユーザがパターンをまだ入力していないことを意味する。この場合には、制御部100は、ステップSA1以降の処理を繰り返し、指示体の位置が検出されるのを待機する。
【0040】
動作中モードにおいて指示体の位置を検出した場合、制御部100は、ステップSA1において新たに検出した位置を入力パターンの軌跡としてメモリに記録する(ステップSA3)。次いで、制御部100は、新たに検出した位置がいずれかの認識エリアに含まれるか否かを判断する(ステップSA4)。ステップSA1において検出した位置が認識エリアに含まれる場合、制御部100は、指示体による認識エリアの通過順序を特定し(ステップSA5)、指示体が当該認識エリアを通過したときの移動方向を算出する(ステップSA6)。なお、通過順序とは、指示体が通過した認識エリアが動作中モードに移行してから何番目のものであるかを示す数値である。また、移動方向は、ここでは、ステップSA1において検出された最新の位置と当該位置よりも前に検出された位置とに基づいて算出される方向であって、後者の位置から前者の位置に向かう方向のことである。ここにおいて、最新の位置よりも前に検出された位置とは、当該最新の位置の直前に検出された位置であってもよいが、当該区域における始点に相当する位置であってもよいし、指示体の軌跡のうちの直前に通過した認識エリアと重なる位置であってもよい。
【0041】
制御部100は、ステップSA1において新たに検出した位置が認識エリアに含まれない場合には、1区域分の軌跡が検出されたか否かを判断する(ステップSA7)。この判断は、具体的には、ある区域において軌跡が発生し、当該軌跡が当該区域の外に出たか否かを検出することによって行われる。制御部100は、1区域分の軌跡が検出されていれば補正処理を実行し(ステップSA8)、そうでなければ、ステップSA1以降の処理を繰り返す。また、制御部100は、指示体の通過順序と移動方向を求めた場合にも、ステップSA1以降の処理を繰り返す。
【0042】
図7は、ステップSA8の補正処理を示すフローチャートである。この補正処理において、制御部100は、1区域内で検出された複数の位置の中から、当該区域内において移動方向の変化量が最大となる位置を特定する(ステップSB1)。この位置のことを、以下においては「点C」ともいう。なお、ステップSB1において特定される点Cは、上述した変化点の候補であり、そのすべてが変化点に相当するとは限らない。
【0043】
次に、制御部100は、当該区域における軌跡の始点と終点とを特定する(ステップSB2)。始点及び終点は、典型的には、当該区域の境界にある。ただし、入力パターンそのものの始点又は終点に相当する区域においては、入力パターンの始点又は終点が当該区域の始点又は終点となる。以下においては、ステップSB2において特定される始点及び終点のことを、それぞれ「点A」、「点B」ともいう。
【0044】
点A、B及びCを特定したら、制御部100は、線分ACと線分ABとがなす角度、すなわち∠ACBが所定の閾値(Th)以上であるか否かを判断する(ステップSB3)。点Cは、∠ACB≧Thを満たせば変化点に相当し、そうでなければ変化点に相当しない。制御部100は、点Cが変化点に相当しなければ、この点Cが示す位置に関しては後述するオフセット値(補正量)を算出しないと判断し、ステップSB4以降の処理を実行せずに当該区域についての補正処理を終了する。
【0045】
点Cが変化点に相当する場合、制御部100は、点Cが示す位置に最も近い認識エリア(すなわち当該区域に対応する当該区域内の認識エリア)の位置を特定する(ステップSB4)。以下においては、ステップSB4において特定される位置のことを「点D」ともいう。点Dは、認識エリアのうちの代表的な位置であり、ここでは、認識エリアの中心点であるとする。次いで、制御部100は、点Cと点Dとの距離を算出し、これを点Cが示す位置とその最近傍の認識エリアとの距離とする(ステップSB5)。
【0046】
次に、制御部100は、位置の補正の適用対象、すなわちオフセット値の適用対象を判断する(ステップSB6)。本実施形態においては、制御部100が検出した位置のうち変化点に相当する位置のみを補正する第1の補正態様と、変化点の補正に加え、変化点の補正量に応じた補正を他の位置にも適用する第2の補正態様とがある。これらの補正態様のいずれが適用されるかは、表示装置10に事前に設定され、又はユーザによって設定される。制御部100は、このような事前に設定に従ってオフセット値の適用対象を判断する。
【0047】
第1の補正態様の場合、制御部100は、変化点の位置のみを補正する(ステップSB7)。このときの補正量(すなわちオフセット値)は、本実施形態においては、点Cと点Dとの距離に等しいものとする。すなわち、制御部100は、点Cとして検出された位置を点Dで示す認識エリア内の位置まで移動させる補正を実行する。なお、オフセット値は、スカラー量ではなくベクトル量である。
【0048】
一方、第2の補正態様の場合、制御部100は、既に別の変化点が特定されており、そのオフセット値が算出されているか否かを判断する(ステップSB8)。換言すれば、制御部100は、当該補正処理よりも前に補正処理が実行され、変化点が特定されて補正が実行されているか否かを判断する。以下においては、当該補正処理、すなわちそのとき実行中の補正処理によって算出されるオフセット値とそのオフセット値が適用される変化点の位置のことを、それぞれ「第1のオフセット値」と「第1の位置」といい、当該補正処理よりも前の実行された補正処理によって第1のオフセット値の直前に算出されたオフセット値とそのオフセット値が適用される変化点の位置のことを、それぞれ「第2のオフセット値」と「第2の位置」という。
【0049】
第2のオフセット値がある場合、制御部100は、第1のオフセット値と第2のオフセット値の中間値を算出する(ステップSB9)。そして、制御部100は、第1の位置を含む1又は複数の位置を補正する(ステップSB10)。ステップSB10において、制御部100は、第1の位置を第1のオフセット値で移動させる補正を少なくとも実行する。加えて、制御部100は、第1の位置と第2の位置の間に検出された他の位置(第3の位置)が1又は複数ある場合に、当該他の位置を、ステップSB9において算出された中間値で移動させる。また、制御部100は、第2の位置に相当する変化点がない場合には、第1の位置よりも前に検出された他の位置を第1のオフセット値で移動させてもよい。さらに、制御部100は、第1の位置よりも後に検出される他の位置についても、第1のオフセット値で移動させるようにしてもよい。
【0050】
補正処理の最後に、制御部100は、上述のようにして補正した軌跡に基づき、指示体による認識エリアの通過順序を特定し(ステップSB11)、指示体の移動方向を算出する(ステップSB12)。すなわち、制御部100は、上記補正を反映させた上で通過順序や移動方向を求める。また、制御部100は、変化点の位置以外の他の位置も補正した場合、当該他の位置の移動方向を算出し直したり、通過順序を特定し直したりしてもよい。なお、ステップSB11及びSB12の処理の具体的な手順は、ステップSA5及びSA6のそれと同様である。
【0051】
図8は、ステップSA10の判定処理を示すフローチャートである。この判定処理において、制御部100は、ユーザの入力パターンと記憶部200に記憶された認証パターンとを比較し、入力パターンの各認識エリアの通過順序が所定の順序であるか否かを判定する(ステップSC1)。すなわち、制御部100は、入力パターンにおける通過順序が認証パターンにおける通過順序と一致するか否かを判定する。また、制御部100は、入力パターンの各認識エリアの移動方向が認証パターンの各認識エリアの移動方向と一致するか否かを判定する(ステップSC2)。そして、制御部100は、これらの判定結果に応じた処理を実行する(ステップSC3)。例えば、制御部100は、入力パターンが認証パターンと一致すると判定した場合には、その後のユーザの操作に応じた処理を許容し、入力パターンが認証パターンと一致しないと判定した場合には、認証処理を再度要求したり、所定のエラーメッセージを表示部410に表示させたりする。また、制御部100は、それぞれの判定結果に応じた音声をスピーカから発したり、エラーメッセージに代えてバイブレータを振動させたりしてもよい。
【0052】
なお、制御部100は、判定処理において、ステップSC2の処理を省略してもよい。すなわち、制御部100は、入力パターンにおける各認識エリアの通過順序のみに基づいて判定を行ってもよい。ただし、入力パターンには、各認識エリアの通過順序が認証パターンと一致するものの、その認識エリアにおける移動方向が認証パターンとは一致しないというパターンも存在し得るため、判定をより確実なものとするためには、ステップSC2の処理を省略しない方が好ましいといえる。
【0053】
図9及び図10は、本実施形態の補正処理による補正結果を例示する模式図である。図9は、上述した第1の補正態様の場合の補正結果を示す図であり、図10は、上述した第2の補正態様の場合の補正結果を示す図である。ここにおいて、図中の破線で示すA1〜A9は、認識エリアを表している。なお、これらの図に示す例においては、いずれも、点P1及びP2が補正前の変化点、すなわち実際に検出された変化点の位置に相当する。また、指示体の軌跡(折線の矢印)は、ここでは直線状であるが、実際には必ずしも直線状ではない。
【0054】
図9の例においては、制御部100は、点P1の位置を点P1aの位置に移動させ、点P2の位置を点P2aの位置に移動させる補正を行う。この場合、指示体の軌跡は、実際には認識エリアA7及びA3を通過していないが、これらの認識エリアを通過したものとみなされる。その結果、ユーザの入力パターンは、認証パターンと通過順序が一致すると判定される。
【0055】
また、図10の例においては、制御部100は、点P1及びP2の位置に加え、指示体の軌跡に相当する他の位置も全体的に補正する。制御部100は、点P2よりも前に検出された位置については、点P2の位置の補正結果に基づき、これらを右寄りに移動させる一方、点P1よりも後に検出された位置については、点P1の位置の補正結果に基づき、これらを左寄りに移動させる。
【0056】
また、制御部100は、点P1と点P2の間において検出された位置(すなわち、点P2よりも後に検出され、点P1よりも前に検出された位置)については、点P1の補正量と点P2の補正量の中間値に相当する補正量で移動させる。この例においては、点P1の補正量と点P2の補正量とがほぼ反対方向の補正量になるため、これらの間の補正量は、点P1の補正量と点P2の補正量とを相殺させたような補正量となる。
【0057】
以上のように、表示装置10によれば、非接触の認識エリアを用いたパターン入力に際し、変化点に相当する位置がいずれの認識エリアに含まれない場合であっても、当該変化点の位置を補正した上で入力パターンを判定することが可能である。また、表示装置10によれば、変化点の位置だけでなく他の位置についても、変化点の位置の補正に応じて補正することが可能である。
【0058】
[変形例]
本発明は、上述した実施形態に限定されることなく、例えば、以下に示す変形例に従った実施も可能である。なお、これらの変形例は、必要に応じて、適宜組み合わせて実施されてもよい。
【0059】
(1)認識エリアの配置は、格子状に限らない。例えば、認識エリアの配置は、図11に示すように、正六角形の頂点に相当する各位置であってもよい。この場合の入力パターンは、6個の認識エリアのうちのいくつかを所定の順序で結んだ折線となる。したがって、指示体がとり得る軌跡は、図中の破線のいずれかである。なお、この配置の場合、移動方向の変化量の閾値は、図中に示す角度θ、すなわち60°以下であると望ましい。
また、認識エリアの配置は、このような規則的な配置に限らず、不規則的な配置であってもよいし、文字、記号、イラストなどに基づいたものであってもよい。さらに、認識エリアの数も、上述した例に限定されない。
【0060】
(2)制御部100は、1回の判定処理によって入力パターンを正しく判定できなかった場合に、指示体の軌跡の位置(又は認識エリアのサイズ)を再度補正し、判定処理を再度実行するようにしてもよい。ここにおいて、入力パターンを正しく判定できなかった場合とは、例えば、指示体が通過した認識エリアの数が所定数に満たない場合である。ここでいう所定数は、認証パターンに含まれる認識エリアの数以下であり、例えば、認証パターンに含まれる認識エリアの数の半数などである。なお、この場合、1回目の補正処理は、第1の補正態様で行われているものとする。
【0061】
このとき、制御部100は、補正処理のやり直しを行う。具体的には、制御部100は、2回目の補正処理を第1の補正態様ではなく第2の補正態様で実行する。このようにすれば、ユーザの入力パターンが(順序的には正しいものの)全体的に位置がずれており、認識エリアを通過していないと判定されてしまったような場合に、認証パターンに一致すると判定されるようにすることが可能になる。
【0062】
(3)制御部100は、上述したステップSB9の処理(図7参照)において、第1のオフセット値と第2のオフセット値の中間値に代えて、第1のオフセット値と第2のオフセット値に基づいた別の値(第3のオフセット値)を算出してもよい。第3のオフセット値は、第1のオフセット値と第2のオフセット値の間の値であり、例えば、これらのオフセット値のベクトル演算によって算出可能である。
【0063】
例えば、制御部100は、これらのオフセット値のいずれかに重み付けを与えた第3のオフセット値によって、第1の位置と第2の位置の間に検出された他の位置(第3の位置)を補正することが可能である。ここでいう重み付けとは、第3の位置が第2の位置よりも第1の位置に近い場合には、第3のオフセット値が中間値よりも第1のオフセット値に近づき、第3の位置が第1の位置よりも第2の位置に近い場合には、第3のオフセット値が中間値よりも第2のオフセット値に近づくようなものである。
【0064】
なお、他の位置(すなわち第3の位置)に相当する位置が複数ある場合には、第3のオフセット値がそれぞれの位置で異なる値になってもよい。また、制御部100は、第3の位置に相当する位置が複数ある場合に、そのうちの第1の位置に近い位置については第1のオフセット値で補正し、第2の位置に近い位置については第2のオフセット値で補正してもよい。すなわち、第3のオフセット値としては、第1のオフセット値以上第2のオフセット値以下(又は第2のオフセット値以上第1のオフセット値以下)のさまざまな値を用いることができる。
【0065】
(4)上述したように、入力パターンは、接触位置と非接触位置とを組み合わせて構成されてもよい。この場合において、接触位置からなる認識エリアの配置と、非接触位置からなる認識エリアの配置とは、必ずしも同一である必要はなく、表示面上の認識エリアは1点のみであってもよい。
【0066】
入力パターンを接触位置と非接触位置の組み合わせにより構成した場合、制御部100は、非接触位置のみを補正の対象とし、接触位置を補正の対象から除外してもよい。なぜならば、接触位置による認識エリアは、非接触位置による認識エリアに比べ、操作ミスが生じにくいからである。例えば、接触位置による認識エリアと同じ位置に目標画像が表示されていれば、ユーザはどこに認識エリアがあるのかを目視にて容易に把握することが可能である。そのため、このような認識エリアを押し間違う可能性は、空中にある非接触の認識エリアを通過しない操作ミスの可能性よりも低いといえる。しかしながら、制御部100は、非接触位置と接触位置の双方を補正の対象としてもよい。
【0067】
(5)上述した実施形態において、制御部100は、変化点が認識エリアに必ず含まれるような態様で補正を行っている。しかし、制御部100は、このように補正量を無制限とするのではなく、補正量を一定の範囲内に制限してもよい。このようにすれば、実際には正しくない入力パターンが認証パターンと一致すると誤判定される可能性を少なくすることができる。
【0068】
また、制御部100は、補正量を一定の範囲内とする場合に、その補正量の大小を移動方向の変化量に応じて異ならせてもよい。例えば、制御部100は、指示体の軌跡として検出された位置のうち、移動方向の変化量が大きい位置ほど補正量が多くなるように(すなわち、より認識エリアに近づくように)補正を行ってもよい。なぜならば、操作ミスが生じる可能性は、移動方向の変化量が大きいほど高くなるといえるからである。
【0069】
なお、操作ミスが生じる可能性は、指示体の移動速度が大きい(速い)ほど高くなるともいえる。そこで、制御部100は、移動方向の変化量の場合と同様の要領で、補正量の大小を指示体の移動速度に応じて異ならせてもよい。例えば、制御部100は、複数の位置を連続して検出した場合の検出時刻と、当該複数の位置の変位とに基づいて、指示体の移動速度を算出することが可能である。なお、制御部100は、指示体の移動方向を算出するときに用いた位置に基づいて、当該移動方向に移動した場合の移動速度を算出することが可能である。すなわち、制御部100の算出部120は、指示体の移動速度を指示体の移動方向とともに算出することが可能である。
【0070】
(6)本発明は、指示体の軌跡として検出された位置を補正するのではなく、認識エリアのサイズを補正するものであってもよい。これらのいずれの補正の態様であっても、変化点が認識エリアに含まれやすくするようにすることが可能である。また、本発明は、位置の補正と認識エリアの補正の双方を実行するものであってもよい。
【0071】
図12は、本変形例の補正の態様を例示する図である。なお、同図の補正前の記載は、図9のそれと同様である。この場合、制御部100は、変化点に相当する点P1、P2の位置を移動させるのではなく、変化点の最近傍の認識エリアである領域A7、A3のサイズを大きくし、それぞれ領域A7a、A3aに変更する。そうすると、点P1、P2は、結果として、(補正後の)認識エリアである領域A7a、A3aを通過することになる。なお、認識エリアのサイズの補正量に対しては、位置の補正量と同様の考え方を適用することができる。
【0072】
(7)上述した実施形態の認証処理(図5参照)は、ステップSA1において指示体の位置を検出しなくなってから判定処理(ステップSA10、図8参照)を実行するものである。すなわち、上述した実施形態の認証処理は、ユーザが入力パターンを最後まで入力してから判定処理を実行するものである。しかし、本発明の認証処理は、ユーザが入力パターンを最後まで入力してからでなければ判定処理を行えないものではなく、例えば、ユーザが1区域分の軌跡を入力し終える毎に判定処理を逐次的に行うものであってもよい。また、本発明の認証処理は、隣り合う複数の区域によってグループを構成し、そのグループ単位で判定処理を行うものであってもよいし、指示体が所定数の区域を通過する毎に判定処理を行うものであってもよい。
【0073】
(8)本発明において、ユーザは、表示面を必ず正面から視認するとは限らない。ユーザの視認方向が表示面に対して正面方向でないと、ユーザが認識エリアがあると考えている位置と実際の認識エリアの位置とに食い違いが生じる可能性がある。一般的には、ユーザが認識エリアがあると考えている位置は、実際の認識エリアの位置よりもユーザからみて手前側(表示面に表示される画像の下側)にずれる傾向にある。
【0074】
そこで、制御部100は、このような食い違いを考慮して補正量を決定してもよい。具体的には、制御部100は、表示部410が表示する画像に基づいて表示装置10の上下方向を判断し、上述した実施形態で求められる補正量に視認方向に応じた補正量を加算するようにすることが可能である。あるいは、表示装置10が加速度センサによって表示面の傾きを検知可能な場合には、加速度センサによって検知された傾きに応じて補正量を異ならせてもよい。
【0075】
(9)センサ部420は、静電容量の大小によって指示体のおおよその距離を算出可能である。制御部100は、このようにして算出される指示体の表示面からの距離に応じて補正量を異ならせるようにしてもよい。例えば、制御部100は、指示体が表示面から離れている場合ほど補正量を多くするとよい。
【0076】
(10)本発明は、スマートフォンやタブレットPCに限らず、例えば、電子ブック、電子辞書、携帯ゲーム機など、さまざまな電子機器において実施することができる。また、本発明に係る認証装置は、上述した表示装置10の形態に限らず、表示装置と別体に構成された形態であってもよい。例えば、本発明は、制御部100に相当する構成を少なくとも有するコンピュータ装置と、タッチスクリーン部400に相当する構成を少なくとも有し、当該コンピュータ装置に無線通信等により接続される表示装置とを含むシステムによっても実施可能である。この場合、コンピュータ装置は、表示装置と情報をやりとりする手段を備えていれば、本発明に係る認証装置として機能することができる。
【0077】
また、本発明は、上記コンピュータ装置が実行するプログラムや、認証パターンを用いたユーザの認証方法として把握することも可能である。上記プログラムは、光ディスク等の記録媒体に記録した形態や、インターネット等のネットワークを介して、コンピュータにダウンロードさせ、これをインストールして利用可能にする形態などでも提供可能である。
【符号の説明】
【0078】
10…表示装置、100…制御部、110…検出部、120…算出部、130…特定部、140…補正部、150…判定部、200…記憶部、300…通信部、400…タッチスクリーン部、410…表示部、420…センサ部
【特許請求の範囲】
【請求項1】
表示面に近接して移動する指示体の位置を連続的に検出する検出部と、
前記検出部により検出された位置に基づいて前記指示体の移動方向を算出する算出部と、
前記算出部により算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する特定部と、
前記特定部により特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する補正部と、
前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記検出部により検出された位置に基づいて判定する判定部であって、前記特定部により特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記補正部による補正を反映させて判定を行う判定部と
を備えることを特徴とする認証装置。
【請求項2】
前記補正部は、前記特定部により特定された位置と他の前記位置とを移動させる
ことを特徴とする請求項1に記載の認証装置。
【請求項3】
前記特定部は、前記変化量が前記閾値以上となる位置として第1の位置と第2の位置とを特定し、
前記補正部は、前記第1の位置を第1の補正量で移動させ、前記第2の位置を第2の補正量で移動させるとともに、前記検出部により前記第1の位置と前記第2の位置の間に第3の位置が検出された場合に、当該第3の位置を前記第1の補正量と前記第2の補正量の間の補正量で移動させる
ことを特徴とする請求項2に記載の認証装置。
【請求項4】
前記補正部は、前記判定部により前記指示体が通過した前記認識エリアの数が所定数に満たない場合に、前記特定部により特定された位置と他の前記位置とを移動させ、
前記判定部は、前記指示体が通過した前記認識エリアの数が所定数に満たないと判定した場合に、前記補正部による補正を反映させた判定を再度行う
ことを特徴とする請求項2に記載の認証装置。
【請求項5】
前記算出部は、前記検出部により検出された位置に基づいて前記指示体の移動方向及び移動速度を算出し、
前記補正部は、前記算出部により算出された移動速度が大きいほど補正量を多くする
ことを特徴とする請求項1ないし4のいずれかに記載の認証装置。
【請求項6】
前記補正部は、前記変化量が大きい前記位置ほど補正量を多くする
ことを特徴とする請求項1ないし5のいずれかに記載の認証装置。
【請求項7】
前記検出部は、前記指示体が前記表示面に近接したときの位置である非接触位置と、前記指示体が前記表示面に接触したときの位置である接触位置とを検出し、
前記判定部は、前記非接触位置と前記接触位置とを前記認識エリアに含む判定を行う
ことを特徴とする請求項1ないし6のいずれかに記載の認証装置。
【請求項8】
前記補正部は、前記非接触位置を補正の対象とし、前記接触位置を補正の対象としない
ことを特徴とする請求項7に記載の認証装置。
【請求項9】
前記特定部は、前記閾値を前記複数の認識エリアの前記配置に応じて異ならせる
ことを特徴とする請求項1ないし8のいずれかに記載の認証装置。
【請求項10】
表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、
前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、
前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、
前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、
前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップと
を有することを特徴とする認証方法。
【請求項11】
コンピュータに、
表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、
前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、
前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、
前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、
前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップと
を実行させるためのプログラム。
【請求項1】
表示面に近接して移動する指示体の位置を連続的に検出する検出部と、
前記検出部により検出された位置に基づいて前記指示体の移動方向を算出する算出部と、
前記算出部により算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する特定部と、
前記特定部により特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する補正部と、
前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記検出部により検出された位置に基づいて判定する判定部であって、前記特定部により特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記補正部による補正を反映させて判定を行う判定部と
を備えることを特徴とする認証装置。
【請求項2】
前記補正部は、前記特定部により特定された位置と他の前記位置とを移動させる
ことを特徴とする請求項1に記載の認証装置。
【請求項3】
前記特定部は、前記変化量が前記閾値以上となる位置として第1の位置と第2の位置とを特定し、
前記補正部は、前記第1の位置を第1の補正量で移動させ、前記第2の位置を第2の補正量で移動させるとともに、前記検出部により前記第1の位置と前記第2の位置の間に第3の位置が検出された場合に、当該第3の位置を前記第1の補正量と前記第2の補正量の間の補正量で移動させる
ことを特徴とする請求項2に記載の認証装置。
【請求項4】
前記補正部は、前記判定部により前記指示体が通過した前記認識エリアの数が所定数に満たない場合に、前記特定部により特定された位置と他の前記位置とを移動させ、
前記判定部は、前記指示体が通過した前記認識エリアの数が所定数に満たないと判定した場合に、前記補正部による補正を反映させた判定を再度行う
ことを特徴とする請求項2に記載の認証装置。
【請求項5】
前記算出部は、前記検出部により検出された位置に基づいて前記指示体の移動方向及び移動速度を算出し、
前記補正部は、前記算出部により算出された移動速度が大きいほど補正量を多くする
ことを特徴とする請求項1ないし4のいずれかに記載の認証装置。
【請求項6】
前記補正部は、前記変化量が大きい前記位置ほど補正量を多くする
ことを特徴とする請求項1ないし5のいずれかに記載の認証装置。
【請求項7】
前記検出部は、前記指示体が前記表示面に近接したときの位置である非接触位置と、前記指示体が前記表示面に接触したときの位置である接触位置とを検出し、
前記判定部は、前記非接触位置と前記接触位置とを前記認識エリアに含む判定を行う
ことを特徴とする請求項1ないし6のいずれかに記載の認証装置。
【請求項8】
前記補正部は、前記非接触位置を補正の対象とし、前記接触位置を補正の対象としない
ことを特徴とする請求項7に記載の認証装置。
【請求項9】
前記特定部は、前記閾値を前記複数の認識エリアの前記配置に応じて異ならせる
ことを特徴とする請求項1ないし8のいずれかに記載の認証装置。
【請求項10】
表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、
前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、
前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、
前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、
前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップと
を有することを特徴とする認証方法。
【請求項11】
コンピュータに、
表示面に近接して移動する指示体の位置を連続的に検出する第1のステップと、
前記第1のステップにおいて検出された位置に基づいて前記指示体の移動方向を算出する第2のステップと、
前記第2のステップにおいて算出された移動方向の変化量が所定の閾値以上となる前記位置を特定する第3のステップと、
前記第3のステップにおいて特定された位置が、前記表示面に近接し、所定の配置で定義される複数の認識エリアのいずれにも含まれない場合に、当該位置と、前記複数の認識エリアのうちの当該位置に最も近い認識エリアとの距離が短くなるように、当該位置と当該認識エリアの大きさの少なくともいずれかを補正する第4のステップと、
前記指示体が前記複数の認識エリアを決められた順序で通過したか否かを、前記第1のステップにおいて検出された位置に基づいて判定するステップであって、前記第3のステップにおいて特定された位置が前記複数の認識エリアのいずれにも含まれない場合に、前記第4のステップの補正を反映させて判定を行う第5のステップと
を実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−216128(P2012−216128A)
【公開日】平成24年11月8日(2012.11.8)
【国際特許分類】
【出願番号】特願2011−81847(P2011−81847)
【出願日】平成23年4月1日(2011.4.1)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
【公開日】平成24年11月8日(2012.11.8)
【国際特許分類】
【出願日】平成23年4月1日(2011.4.1)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
[ Back to top ]