(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024027007
(43)【公開日】2024-02-29
(54)【発明の名称】入力検知プログラム、入力検知方法および入力検知装置
(51)【国際特許分類】
G06F 3/01 20060101AFI20240221BHJP
G06F 3/038 20130101ALI20240221BHJP
【FI】
G06F3/01 510
G06F3/038 310A
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022129679
(22)【出願日】2022-08-16
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002918
【氏名又は名称】弁理士法人扶桑国際特許事務所
(72)【発明者】
【氏名】高橋 寛
【テーマコード(参考)】
5B087
5E555
【Fターム(参考)】
5B087AA10
5B087AC02
5E555AA05
5E555AA10
5E555BA32
5E555BB32
5E555BE08
5E555BE09
5E555CA42
5E555CB33
5E555CB65
5E555FA00
(57)【要約】
【課題】視線による入力操作を誤検知する可能性を低減する。
【解決手段】入力検知装置1において、制御部12は、ユーザAの識別情報を受け付けると、ユーザAの識別情報に関連する操作履歴13aに基づいて決定された閾値を特定する。例えば、操作履歴13aから、ユーザの操作時間が長くかかると推定されるほど、閾値が大きな値に決定される。制御部12は、画面内のユーザの視線位置と閾値とに基づいて、ユーザAの視線位置に対応する画面内の領域に関する入力を検知する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
コンピュータに、
ユーザの識別情報を受け付けると、前記識別情報に関連する操作履歴に基づいて決定された閾値を特定し、
画面内の前記ユーザの視線位置と前記閾値とに基づいて、前記ユーザの視線位置に対応する前記画面内の領域に関する入力を検知する、
処理を実行させる入力検知プログラム。
【請求項2】
前記閾値は、前記操作履歴に基づき、操作に要した時間が長いほど大きな値に決定される、
請求項1記載の入力検知プログラム。
【請求項3】
前記操作履歴として、タッチパネルに対する前記ユーザの操作を示す第1の操作履歴が含まれ、
前記閾値は、前記第1の操作履歴に基づき、前記タッチパネルの操作に要した時間が長いほど大きな値に決定される、
請求項1記載の入力検知プログラム。
【請求項4】
前記操作履歴として、視線検知により入力操作が行われる入力装置に対する前記ユーザの操作を示す第2の操作履歴が含まれ、
前記第1の操作履歴に基づいて決定された前記閾値は、前記第2の操作履歴に基づき、前記ユーザによる前記入力装置の利用回数が多いほど小さい値に補正される、
請求項3記載の入力検知プログラム。
【請求項5】
前記閾値は、前記画面に含まれる複数の操作ボタンのそれぞれに対して個別に決定され、前記複数の操作ボタンのうち、表示面積が大きな操作ボタンに対応する前記閾値ほど小さい値に決定される、
請求項1記載の入力検知プログラム。
【請求項6】
前記入力の検知では、前記画面上の特定領域に前記ユーザの視線位置が停留した時間が前記閾値に達した場合に、前記特定領域に対する入力操作が行われたことを検知する、
請求項1記載の入力検知プログラム。
【請求項7】
コンピュータが、
ユーザの識別情報を受け付けると、前記識別情報に関連する操作履歴に基づいて決定された閾値を特定し、
画面内の前記ユーザの視線位置と前記閾値とに基づいて、前記ユーザの視線位置に対応する前記画面内の領域に関する入力を検知する、
入力検知方法。
【請求項8】
ユーザの識別情報を受け付けると、前記識別情報に関連する操作履歴に基づいて決定された閾値を特定し、
画面内の前記ユーザの視線位置と前記閾値とに基づいて、前記ユーザの視線位置に対応する前記画面内の領域に関する入力を検知する、制御部、
を有する入力検知装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、入力検知プログラム、入力検知方法および入力検知装置に関する。
【背景技術】
【0002】
表示画面に対して入力操作を行う方式として、タッチパネル方式が広く普及している。例えば、ATM(Automated Teller Machine:現金自動預け払い機)における入力操作は、一般的にタッチパネル方式が採用されている。一方、表示画面に対する入力操作の別の方式として、表示画面に対するユーザの視線を検知する方式がある。このような視線検知方式では、手のケガや荷物を持っていることにより手を使えないユーザでも操作が可能という利点がある。また、非接触の入力方式であることから、ウィルスの接触感染を防止できるという利点もある。
【0003】
ここで、ATMに関しては、例えば、操作案内画面により案内される取引処理にかかる入力の入力速度を測定し、測定された入力速度により操作案内画面の切り替え速度を変更する運用管理システムが提案されている。また、視線検知方式を用いたATMに関しては、例えば、利用者の視線の先とATMとの関係に基づいて利用者に注意を促すかを判定する自動処理装置が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平9-185752号公報
【特許文献2】特開2010-152798号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、上記の視線検知方式では、画面上の特定の領域内に視線の先の位置(視線位置)が入ってから、視線位置がその領域内に一定時間停留した場合に、その領域に対して入力操作が行われたと判定される。しかし、視線検知方式の入力操作に慣れていないユーザによる誤操作が発生しやすいという問題がある。例えば、操作に慣れていないユーザが所望の操作ボタンを見つけるために画面を凝視することで、ユーザが所望していない操作ボタンへの入力操作が行われたと誤って判定されてしまう場合がある。
【0006】
1つの側面では、本発明は、視線による入力操作を誤検知する可能性を低減できる入力検知プログラム、入力検知方法および入力検知装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
1つの案では、コンピュータに、ユーザの識別情報を受け付けると、識別情報に関連する操作履歴に基づいて決定された閾値を特定し、画面内のユーザの視線位置と閾値とに基づいて、ユーザの視線位置に対応する画面内の領域に関する入力を検知する、処理を実行させる入力検知プログラムが提供される。
【0008】
また、1つの案では、上記の入力検知プログラムに基づく処理と同様の処理をコンピュータが実行する入力検知方法が提供される。
さらに、1つの案では、上記の入力検知プログラムに基づく処理と同様の処理を実行する入力検知装置が提供される。
【発明の効果】
【0009】
1つの側面では、視線による入力操作を誤検知する可能性を低減できる。
【図面の簡単な説明】
【0010】
【
図1】第1の実施の形態に係る入力検知装置の構成例および処理例を示す図である。
【
図2】第2の実施の形態に係る取引システムの構成例を示す図である。
【
図3】サーバおよび視線検知式のATMのハードウェア構成例を示す図である。
【
図4】サーバおよび視線検知式のATMが備える処理機能の構成例を示す図である。
【
図5】タッチ式ATMに対する操作履歴を示すデータの例である。
【
図9】操作ボタンごとの補正値を管理するためのデータの例を示す図である。
【
図10】視線検知式のATMが操作された場合のサーバの処理手順を示すフローチャートの例である。
【
図11】基準閾値の決定処理手順を示すフローチャートの例である。
【
図12】変形例におけるサーバおよび視線検知式ATMの処理機能の構成例を示す図である。
【
図13】変形例におけるサーバの処理手順を示すフローチャートの例である。
【
図14】変形例における視線検知式ATMの処理手順を示すフローチャートの例である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る入力検知装置の構成例および処理例を示す図である。
図1に示す入力検知装置1は、表示装置2に対して画像を表示させるとともに、ユーザの視線を検知することで表示装置2に表示された画面に対する入力操作を受け付ける情報処理装置である。視線の検知は、視線センサ3によって行われる。視線センサ3は、例えば、ユーザの視線方向を検出し、検出された視線方向に基づいて、表示装置2の画面における視線位置を特定する。
【0012】
入力検知装置1は、記憶部11と制御部12を有する。記憶部11は、入力検知装置1が備える記憶装置に確保される記憶領域である。制御部12は、例えば、入力検知装置1が備えるプロセッサである。この場合、下記に示す制御部12の処理は、例えば、プロセッサが所定のプログラムを実行することで実現される。
【0013】
記憶部11には、ユーザごとの操作履歴13a,13b,・・・が記憶される。操作履歴13a,13b,・・・は、表示装置に表示された画面に対する入力操作の履歴である。例えば、タッチセンサにより画面に対する入力操作を行った場合の操作履歴である。あるいは、視線検知により画面に対する入力操作を行った場合の操作履歴である。
図1の例では、操作履歴13aはユーザAの入力操作の履歴であり、操作履歴13bはユーザBの入力操作の履歴である。
【0014】
制御部12は、視線センサ3を用いたユーザの入力操作を、以下のような処理によって検知する。
まず、制御部12は、表示装置2に表示された画面に対する入力操作を行うユーザの識別情報を受け付ける(ステップS1)。例えば、ユーザによる入力操作によってユーザの識別番号が取得される。あるいは、ユーザの識別情報が記述されたカード媒体が図示しないカードスロットに挿入されることで、ユーザの識別番号が取得される。
【0015】
図1の例では、ユーザAの識別情報が受け付けられたとする。次に、制御部12は、ユーザAに関連する操作履歴13aを参照し、操作履歴13aに基づいて決定される閾値を特定する(ステップS2)。この閾値は、視線位置の検出結果から画面上の特定の領域に対する入力操作が行われたことを検知するための時間の閾値である。例えば、操作履歴13aから、入力操作に時間がかかると推定される場合、閾値が大きい値に決定され、入力操作を短時間でできると推定される場合、閾値が小さい値に決定される。
【0016】
その後、制御部12は、視線センサ3によって検出された、画面内のユーザの視線位置と、ステップS2で特定された閾値とに基づいて、ユーザの視線位置に対応する画面内の領域に関する入力を検知する(ステップS3)。例えば、次のような手順で入力が検知される。制御部12は、画面内の特定の領域内に視線位置が入ったことを検知する(ステップS3a)。制御部12は、その領域内で視線位置が停留し続けた時間が上記の閾値に達した場合に、その領域に対して入力が行われたと判定する(すなわち、その領域に対する入力を検知する。ステップS3b)。
【0017】
以上の処理により、入力検知装置1は、視線によるユーザの入力操作を誤検知する可能性を低減できる。特に、操作の習熟度が低く、入力に時間がかかるユーザによる入力操作を誤検知する可能性を低減できる。すなわち、入力検知装置1は、ユーザの操作履歴を参照することで、視線検知式の入力操作に対するユーザの習熟度を推定できる。入力検知装置1は、習熟度が低いと推定されるユーザの閾値を、より大きい値に設定する。これにより、習熟度が低いユーザが入力操作に時間がかかってしまった場合でも、ユーザが意図していない入力操作を誤検知する可能性を低減できる。
【0018】
〔第2の実施の形態〕
次に、ATMに対する入力操作に視線検知を用いた情報処理システムの例について説明する。
【0019】
図2は、第2の実施の形態に係る取引システムの構成例を示す図である。
図2に示す取引システムは、サーバ100、タッチ式のATM210a,210b,・・・および視線検知式のATM220a,220b,・・・を含む。サーバ100とATM210a,210b,・・・およびATM220a,220b,・・・とは、図示しないネットワークを介して接続されている。
【0020】
サーバ100は、
図1に示した入力検知装置1の一例である。サーバ100は、ATM210a,210b,・・・およびATM220a,220b,・・・のそれぞれにおける入出金、振り込みなどの各種取引を制御するサーバコンピュータである。ATM210a,210b,・・・は、ユーザ(顧客)による入力装置としてタッチパネルを備えた端末装置である。一方、ATM220a,220b,・・・は、ユーザの視線を検知することで入力操作を受け付ける端末装置である。
【0021】
この取引システムは、いわゆるWeb-ATMシステムとなっている。ATM210a,210b,・・・およびATM220a,220b,・・・は、ディスプレイや入力装置、入出金装置、印字装置を備えているが、取引の制御機能を備えておらず、この制御機能をサーバ100が備えている。例えば、取引の実行時において、ATM210a,210b,・・・およびATM220a,220b,・・・のそれぞれは、サーバ100から表示用のデータを受信してディスプレイに取引画面を表示し、取引画面に対する入力情報をサーバ100に送信する。
【0022】
なお、
図2では例として、タッチ式の入力方法を用いるATMと視線検知式の入力方法を用いるATMとが個別に設けられているが、例えばタッチ式と視線検知式の両方の入力方法を用いることが可能なATMが取引システムに含まれてもよい。この場合、以下で説明する視線検知式のATMに対する制御処理は、両方の入力方法を使用可能なATMにおいて、視線検知式の入力方法が用いられた場合にも適用可能である。
【0023】
また、以下の説明では、タッチ式のATM210a,210b,・・・のそれぞれを特に区別せずに指し示す場合には「ATM210」と記載する場合がある。同様に、視線検知式のATM220a,220b,・・・のそれぞれを特に区別せずに指し示す場合には「ATM220」と記載する場合がある。
【0024】
図3は、サーバおよび視線検知式のATMのハードウェア構成例を示す図である。
サーバ100は、例えば、
図3に示すようなコンピュータとして実現される。
図3に示すサーバ100は、プロセッサ101、RAM(Random Access Memory)102、HDD(Hard Disk Drive)103、GPU(Graphics Processing Unit)104、入力インタフェース(I/F)105、読み取り装置106および通信インタフェース(I/F)107を備える。
【0025】
プロセッサ101は、サーバ100全体を統括的に制御する。プロセッサ101は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)またはPLD(Programmable Logic Device)である。また、プロセッサ101は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
【0026】
RAM102は、サーバ100の主記憶装置として使用される。RAM102には、プロセッサ101に実行させるOS(Operating System)プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、プロセッサ101による処理に必要な各種データが格納される。
【0027】
HDD103は、サーバ100の補助記憶装置として使用される。HDD103には、OSプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、SSD(Solid State Drive)などの他の種類の不揮発性記憶装置を使用することもできる。
【0028】
GPU104には、ディスプレイ104aが接続されている。GPU104は、プロセッサ101からの命令にしたがって、画像をディスプレイ104aに表示させる。ディスプレイ104aとしては、液晶ディスプレイや有機EL(ElectroLuminescence)ディスプレイなどがある。
【0029】
入力インタフェース105には、入力装置105aが接続されている。入力インタフェース105は、入力装置105aから出力される信号をプロセッサ101に送信する。入力装置105aとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【0030】
読み取り装置106には、可搬型記録媒体106aが脱着される。読み取り装置106は、可搬型記録媒体106aに記録されたデータを読み取ってプロセッサ101に送信する。可搬型記録媒体106aとしては、光ディスク、半導体メモリなどがある。
【0031】
通信インタフェース107は、図示しないネットワークを介して、ATM210,220などの他の装置との間でデータの送受信を行う。
以上のようなハードウェア構成によって、サーバ100の処理機能を実現することができる。
【0032】
また、
図3では、視線検知式のATM220のハードウェアのうち、画面表示およびユーザの操作入力に関するハードウェアのみ例示している。
図3に示すように、ATM220は、コントローラ221、ディスプレイ222および視線センサ223を備える。なお、ディスプレイ222は、
図1に示した表示装置2の一例であり、視線センサ223は、
図1に示した視線センサ3の一例である。
【0033】
コントローラ221は、ATM220全体の処理を制御する。コントローラ221は、例えば、プロセッサやメモリを備える。コントローラ221は、サーバ100から取引画面表示用のデータを受信し、受信したデータに基づいて取引画面をディスプレイ222に表示させる。また、コントローラ221は、視線センサ223による検出結果に基づいてユーザの視線方向を検出し、検出された視線方向に基づいて、ディスプレイ222に表示された取引画面における注視点の位置を検出する。
【0034】
ディスプレイ222は、コントローラ221からの指示に基づいて取引画像を表示する。ディスプレイ222としては、液晶ディスプレイや有機ELディスプレイなどを使用可能である。
【0035】
視線センサ223は、視線を検知するためのセンサであり、例えば、赤外照明とカメラを備える。赤外照明は、ATM220を操作するユーザの顔に対して赤外光を照射する。カメラは、ユーザの顔を撮影する。また、カメラは、照射された赤外光の反射光を検知する。なお、顔を撮影するカメラと赤外光の反射光を検知するカメラ(赤外カメラ)とが個別に設けられてもよい。
【0036】
視線方向の検出は、例えば「角膜反射法」を用いて行われる。この方法では、カメラの撮影画像に基づき、角膜反射像の位置と瞳孔の中心位置との位置関係から視線方向が検出される。例えば、コントローラ221は、カメラの撮影画像から眼球領域を検出し、検出された眼球領域の輝度に基づいて眼球領域から角膜反射像の位置を検出する。また、コントローラ221は、眼球領域の輝度に基づいて瞳孔の中心位置を検出し、角膜反射像の位置と瞳孔の中心位置との位置関係に基づいてユーザの視線方向を検出する。そして、コントローラ221は、撮影画像における顔のサイズや顔のパーツ間距離(例えば瞳孔間の距離)を基に顔までの距離を推定し、検出された視線方向と顔までの距離とに基づいて、ディスプレイ222に表示された取引画面における注視点の位置を検出する。
【0037】
なお、上記のような注視点位置の検出、または視線方向および注視点位置の検出は、視線センサ223の内部で実行されてもよい。
また、ATM220は、実際には上記のコントローラ221、ディスプレイ222、視線センサ223の他、入出金装置、印字装置、キャッシュカード用のカードスロットなどを備える。
【0038】
ところで、タッチ式のATM210では、ディスプレイの表示面にタッチセンサが搭載されており、ユーザはディスプレイの表示面に指でタッチすることで入力操作を行うことができる。例えば、ディスプレイに取引画面が表示された状態では、取引画面に含まれる操作ボタンの領域内に指でタッチすることで、その操作ボタンに対する選択操作(ボタン押下操作)が行われる。
【0039】
一方、視線検知式のATM220では、ユーザの視線の動きによって入力操作が行われる。このような視線検知式のATM220は、タッチ操作の必要がない「タッチレスATM」として注目されており、例えば、手のケガや荷物を持っていることにより手を使えないユーザでも操作が可能である、あるいはウィルス感染を防止できるといった利点がある。
【0040】
視線検知式のATM220では、取引画面に含まれる操作ボタンの領域内に注視点が移動してから、注視点がその領域内に一定時間停留した場合に、その操作ボタンに対する選択操作が行われたと判定される。しかし、視線検知式のATM220では、操作に慣れていないユーザによる誤操作(選択操作の誤判定)が発生しやすいという問題がある。例えば、操作に慣れていないユーザが所望の操作ボタンを見つけるために取引画面上の狭い範囲を凝視することで、ユーザが所望していない操作ボタンへの選択操作が行われたと誤って判定されてしまう場合がある。
【0041】
そこで、本実施の形態のサーバ100は、ATMに対するユーザの過去の操作履歴に基づいて、操作ボタンに対して選択操作が行われたと判定するまでの時間の閾値(判定閾値)をユーザごとに可変にする。すなわち、サーバ100は、ユーザの過去の操作履歴から、視線検知式のATM220に対する操作の習熟度を推定し、習熟度が低いと推定されるユーザほど判定閾値を大きく設定する。これにより、ユーザの誤操作が発生する可能性を低下させる。サーバ100から見た場合には、ユーザが意図していないにもかかわらず、ユーザが選択操作を行ったと誤判定してしまう可能性を低下させる。
【0042】
図4は、サーバおよび視線検知式のATMが備える処理機能の構成例を示す図である。
まず、視線検知式のATM220は、表示処理部231および視線検出部232を備える。表示処理部231および視線検出部232の処理は、例えば、コントローラ221のプロセッサが所定のファームウェアプログラムを実行することで実現される。
【0043】
表示処理部231は、取引画面を表示するための画面データをサーバ100から受信し、受信した画面データに基づいて取引画面をディスプレイ222に表示させる。画面データは、例えば、HTML(HyperText Markup Language)データとしてサーバ100から送信される。
【0044】
視線検出部232は、視線センサ223による検出結果に基づいて、ディスプレイ222に表示された取引画面における注視点位置(座標)を検出する。視線検出部232は、一定周期(例えば1/30秒)で注視点位置を検出し、検出された注視点位置をサーバ100に送信する。
【0045】
一方、サーバ100は、記憶部110、UI(User Interface)制御部120および取引制御部130を備える。
記憶部110は、RAM102、HDD103などのサーバ100が備える記憶装置に確保された記憶領域である。記憶部110には、ユーザDB(DataBase)111、取引画面DB112および操作履歴DB113,114が記憶される。
【0046】
ユーザDB111には、ユーザに関するデータが登録される。例えば、ユーザを識別するユーザID(銀行の口座番号でもよい)、ユーザの属性(年齢など)などがユーザDB111に登録される。
【0047】
取引画面DB112には、取引画面を表示するための画面データが記憶される。
操作履歴DB113には、タッチ式のATM210に対する過去の操作履歴がユーザごとに記憶される。操作履歴DB113に記憶される操作履歴には、ユーザがタッチ式のATM210の操作にかかった時間に関するデータが少なくとも含まれる。
【0048】
操作履歴DB114には、視線検知式のATM220に対する過去の操作履歴がユーザごとに記憶される。操作履歴DB114に記憶される操作履歴には、ユーザが視線検知式のATM220を利用した回数を取得できるようなデータが少なくとも含まれる。このようなデータとしては、例えば、操作が行われた日時が登録される。
【0049】
UI制御部120および取引制御部130の処理は、例えば、プロセッサ101が所定のアプリケーションプログラムを実行することで実現される。
UI制御部120は、視線検出部232から送信された注視点位置に基づいて取引画面に対する入力操作を検出し、検出された入力操作に応じた次の取引画面の画面データを取引画面DB112から取得して表示処理部231に送信する。また、UI制御部120は、入力操作によって入力された情報を取引制御部130に出力して、取引制御部130に取引を依頼する。
【0050】
UI制御部120は、入力操作を検出するための処理機能として、閾値決定部121と操作検出部122を備える。閾値決定部121は、操作履歴DB113,114を参照し、ATM220を操作しているユーザの操作履歴に基づいて、操作ボタンに対して選択操作が行われたと判定するための判定閾値を決定する。操作検出部122は、決定された判定閾値と、視線検出部232によって検出された注視点位置とに基づいて、取引画面上の操作ボタンに対する選択操作を検出する。
【0051】
取引制御部130は、UI制御部120から入力された情報に基づいて、取引に関する処理を実行する。なお、実際には例えば、サーバ100には銀行のホストコンピュータが接続されており、取引制御部130は、ホストコンピュータに対して取引の実行を依頼する。
【0052】
図5は、タッチ式ATMに対する操作履歴を示すデータの例である。操作履歴DB113には、例えば、ユーザごとの操作履歴テーブル113aが登録される。操作履歴テーブル113aには、ユーザがタッチ式のATM210を操作したときの日時(例えば、操作開始日時)と、そのときに計測された操作時間とが登録される。
【0053】
操作履歴テーブル113aに登録される操作時間は、取引画面の操作に要した時間を示す。例えば、操作時間としては、特定の取引画面(例えばメニュー画面)が表示されてから、入力操作に応じて次の取引画面に遷移するまでに要した時間が登録される。他の例として、操作時間は次のような手順で算出されてもよい。例えば、ある1種類の取引を行うための一連の操作に応じて、表示される取引画面ごとに、取引画面が表示されてから入力操作に応じて次の取引画面に遷移するまでの時間が計測される。そして、取引画面ごとに計測された時間の平均値が、操作時間として操作履歴テーブル113aに登録される。
【0054】
なお、図示しないが、操作履歴DB114には、例えば、ユーザごとの操作履歴テーブルが登録される。これらの操作履歴テーブルには、ユーザが視線検知式のATM220を操作したときの日時(例えば、操作開始日時)が登録される。また、日時に対応付けて、
図5と同様の操作時間が登録されてもよい。
【0055】
次に、判定閾値の決定処理について説明する。
閾値決定部121は、視線検知式のATM220を操作しているユーザを認識すると、そのユーザによる選択操作を検出するための判定閾値を決定する。本実施の形態において、閾値決定部121はまず、操作履歴DB113,114に記憶された、そのユーザの操作履歴に基づいて、判定閾値の基準となる「基準閾値」を決定する。基本的に、閾値決定部121は、操作履歴から操作の習熟度が低いと推定されるユーザほど、基準閾値を大きな値に設定する。
【0056】
例えば、操作履歴DB113に記憶された、タッチ式のATM210に対する操作時間が長いほど、習熟度が低いと推定され、基準閾値が大きな値に設定される。また、操作履歴DB114に基づき、視線検知式のATM220をすでに利用した回数が多いほど、習熟度が高いと推定され、基準閾値が小さな値に設定される。また、操作履歴DB114に操作時間が登録されている場合には、操作時間が長いほど、習熟度が低いと推定され、基準閾値が大きな値に設定される。
【0057】
一例としては、本実施の形態では、次のような処理によって基準閾値が決定される。閾値決定部121はまず、操作履歴DB113を参照し、タッチ式のATM210に対するユーザの操作時間に基づいて基準閾値を仮決定する。この処理では、閾値決定部121は、ユーザに対応する操作履歴テーブル113aから、直近の一定期間に登録された操作時間を読み出し、読み出した操作時間を平均した平均操作時間を算出する。閾値決定部121は、算出された平均操作時間に基づいて、ユーザに対応する基準閾値を仮決定する。基準閾値は、例えば、所定の演算式に平均操作時間を入力することで算出されてもよいし、基準閾値を所定の閾値と比較することによって段階的な値として決定されてもよい。いずれの場合でも、平均操作時間が長いほど、基準閾値は大きな値に仮決定される。
【0058】
次に、閾値決定部121は、操作履歴DB114に記憶されたユーザの操作履歴に基づいて、仮決定された基準閾値を補正する。この処理では、閾値決定部121は、操作履歴からユーザが視線検知式ATM220を利用した回数を計数し、利用回数が少ないほど基準閾値を大きな値に補正し、利用回数が多いほど基準閾値を小さな値に補正する。基準閾値に対する補正値は、例えば、所定の演算式を用いて算出されてもよいし、所定の閾値との比較によって決定されてもよい。
【0059】
以上の処理により、視線検知式のATM220を操作しているユーザに対応する基準閾値が決定される。このようにして決定された基準閾値は、ユーザによるATM220の操作が終了するまでの間、各取引画面上のすべての操作ボタンに対して共通の判定閾値として使用されてもよい。ただし、本実施の形態では、閾値決定部121は、決定された基準閾値を基準として、各取引画面上の操作ボタンごとに判定閾値を個別に決定する。以下、取引画面を例示して、操作ボタンごとの判定閾値の決定方法を説明する。各操作ボタンに対応する判定閾値は、上記のように決定された基準閾値を補正することによって決定される。
【0060】
図6は、取引画面の第1の例を示す図である。
図6では、取引画面の一例として、メニュー画面240を示している。メニュー画面240は、例えば、視線検知式のATM220を操作する場合に、キャッシュカードをATM220に挿入する等によってユーザの識別情報(カード番号)を通知した後に最初に表示される取引画面である。
【0061】
図6に示すメニュー画面240には、操作ボタン241~247が表示されている。これらのうち、操作ボタン241~244の大きさは、選択される頻度がより高いことから、操作ボタン245~247より大きく表示されている。操作ボタンが大きいほど、ユーザが視認しやすく、選択操作が容易と考えられる。このため、大きな操作ボタンについては、判定閾値を小さくして、視認から選択操作の検出までの時間を短くした方が、誤操作の可能性を抑制しつつ、操作の快適性を高められると考えられる。そこで、閾値決定部121は、大きな操作ボタンほど判定閾値が小さな値になるように基準閾値を補正する。
図6の例では、閾値決定部121は、操作ボタン245~247に対応する判定閾値より、操作ボタン241~244に対応する判定閾値の方が小さくなるように基準閾値を補正する。
【0062】
図7は、取引画面の第2の例を示す図である。
図7では、取引画面の一例として、振り込み金額の入力画面250を示している。入力画面250には、振り込み金額を一桁ずつ入力するための数字ボタンを含む数字入力部251が表示されている。
【0063】
一般的に、数字ボタンは、入力画面250上の確認ボタン252や、
図6に例示したメニュー画面240上の操作ボタン241~247と比較して小さく表示される。そこで、閾値決定部121は、数字入力部251内の各数字ボタンに対応する判定閾値が、確認ボタン252や操作ボタン241~247に対応する判定閾値より大きくなるように基準閾値を補正する。これにより、数字入力の際のユーザの誤操作の可能性を抑制できる。
【0064】
図8は、取引画面の第3の例を示す図である。
図8では、取引画面の一例として、暗証番号の入力画面260を示している。入力画面260には、暗証番号を一桁ずつ入力するための数字ボタンを含む数字入力部261が表示されている。
【0065】
この数字入力部261では、
図7に示した振り込み金額の数字入力部251とは異なり、入力画面260が表示されるたびに数字の位置がランダムに変更される。これにより、他人によって暗証番号を読み取られる危険性を低減できるが、ユーザ本人にとっては所望の数字を探すのに時間がかかり、入力操作に手間取る可能性がある。そこで、閾値決定部121は、数字の位置が可変である数字入力部261内の数字ボタンに対応する判定閾値が、数字の位置が固定された数字入力部251内の数字ボタンに対応する判定閾値より大きくなるように基準閾値を補正する。これにより、暗証番号入力の際のユーザの誤操作の可能性を抑制できる。
【0066】
図9は、操作ボタンごとの補正値を管理するためのデータの例を示す図である。上記のように、取引画面上の操作ボタンごとに、基準閾値に対して補正する補正値が決められる。そこで、取引画面DB112には、操作ボタンごとに補正値を管理するための補正値管理テーブル112aが記憶される。
【0067】
図9に示すように、補正値管理テーブル112aには、取引画面を識別する取引画面IDと、取引画面内の操作ボタンを識別する操作ボタンIDと、基準閾値に対する補正値とが対応付けて登録される。視線検知式のATM220を操作しているユーザに関して上記手順により決定された基準閾値に対して、補正値管理テーブル112aに基づいて操作ボタンに対応する補正値が加算されることで、その操作ボタンに対応する基準閾値が決定される。
【0068】
なお、以上の
図7~
図9では操作ボタンごとに補正値が決められた例を示したが、他の例として、取引画面ごとに補正値が決められていてもよい。
図10は、視線検知式のATMが操作された場合のサーバの処理手順を示すフローチャートの例である。
【0069】
[ステップS11]UI制御部120は、視線検知式のATM220を操作するユーザの識別情報を認識する。例えば、ATM220に対してキャッシュカードが挿入され、キャッシュカードから読み取られた口座番号がサーバ100に送信される。UI制御部120は、受信した口座番号からユーザの識別情報(例えば、ユーザID)を認識する。
【0070】
[ステップS12]閾値決定部121は、操作履歴DB113,114を参照し、ユーザの操作履歴に基づいて判定閾値の基準となる基準閾値を決定する。
[ステップS13]閾値決定部121は、次に表示される取引画面に含まれる各操作ボタンの補正値を、補正値管理テーブル112aから取得する。閾値決定部121は、ステップS12で決定された基準閾値に、取得した補正値を加算することで、各操作ボタンに対応する判定閾値を設定する。
【0071】
[ステップS14]UI制御部120は、次の取引画面に対応する画面データをATM220に送信する。ATM220の表示処理部231は、この画面データを受信すると、受信した画面データに基づいて取引画面をディスプレイ222に表示させる。
【0072】
[ステップS15]ATM220で検出された注視点位置が一定周期でサーバ100に送信される。操作検出部122は、検出された注視点位置が、表示中の取引画面内のいずれかの操作ボタンの範囲(ボタン範囲)に入ったかを判定する。注視点位置がいずれかの操作ボタンの範囲に入った場合、操作検出部122は、その操作ボタンに対してステップS13で設定された判定閾値を取得し、処理がステップS16に進められる。一方、注視点位置がいずれの操作ボタンの範囲にも入っていない場合、待ち状態になり、次に注視点位置が送信されるとステップS15の処理が実行される。
【0073】
[ステップS16]操作検出部122は、注視点位置が操作ボタンの範囲内に停留した状態のまま、その操作ボタンに対応する判定閾値の時間が経過したかを判定する。注視点位置が当該範囲内に停留した状態のまま判定閾値の時間が経過した場合、操作ボタンに対する選択操作が行われたと判定され、処理がステップS17に進められる。一方、判定閾値の時間が経過する前に注視点位置が当該範囲外に移動した場合、処理がステップS15に進められる。
【0074】
なお、
図7、
図8に例示した取引画面のように、操作ボタンに対する複数回の選択操作の後に次の取引画面に遷移する場合には、その遷移までの間、ステップS15,S16の処理が繰り返されて、その都度操作ボタンに対する選択操作が検出されることになる。
【0075】
[ステップS17]UI制御部120は、選択操作により取引が終了されるかを判定する。取引が続けられる場合、処理がステップS13に進められ、次に表示される取引画面に関してステップS13以降の処理が実行される。一方、取引が終了される場合、
図10の処理が終了する。
【0076】
図11は、基準閾値の決定処理手順を示すフローチャートの例である。この
図11の処理は、
図10のステップS12の処理に対応する。
[ステップS21]閾値決定部121は、操作履歴DB113を参照し、タッチ式のATM210に対するユーザの操作履歴が登録されているかを判定する。該当する操作履歴が登録されている場合、処理がステップS22に進められ、該当する操作履歴が登録されていない場合、処理がステップS25に進められる。
【0077】
[ステップS22]閾値決定部121は、操作履歴DB113に登録された、ユーザの操作履歴(すなわち、ユーザに対応する操作履歴テーブル113a)に基づいて、基準閾値を仮決定する。具体的には、閾値決定部121は、ユーザに対応する操作履歴テーブル113aから、直近の一定期間に登録された操作時間を読み出し、読み出した操作時間を平均した平均操作時間を算出する。閾値決定部121は、算出された平均操作時間に基づいて、ユーザに対応する基準閾値を仮決定する。基準閾値は、平均操作時間が長いほど大きな値に仮決定される。
【0078】
[ステップS23]閾値決定部121は、操作履歴DB114を参照し、視線検知式のATM220に対するユーザの操作履歴が登録されているかを判定する。該当する操作履歴が登録されている場合、処理がステップS24に進められる。一方、該当する操作履歴が登録されていない場合、仮決定された基準閾値が確定され、処理が終了する。
【0079】
[ステップS24]閾値決定部121は、操作履歴DB114に登録された、ユーザの操作履歴(すなわち、ユーザに対応する操作履歴テーブル)に基づいて、仮決定された基準閾値を補正する。具体的には、閾値決定部121は、操作履歴からユーザが視線検知式のATM220を利用した回数を計数し、利用回数が少ないほど基準閾値を大きな値に補正し、利用回数が多いほど基準閾値を小さな値に補正する。これにより、基準閾値が確定される。
【0080】
[ステップS25]閾値決定部121は、操作履歴DB114を参照し、視線検知式のATM220に対するユーザの操作履歴が登録されているかを判定する。該当する操作履歴が登録されている場合、処理がステップS26に進められ、該当する操作履歴が登録されていない場合、処理がステップS27に進められる。
【0081】
[ステップS26]閾値決定部121は、操作履歴DB114に登録された、ユーザの操作履歴(すなわち、ユーザに対応する操作履歴テーブル)に基づいて、基準閾値を決定する。具体的には、閾値決定部121は、操作履歴からユーザが視線検知式のATM220を利用した回数を計数し、利用回数が少ないほど基準閾値を大きな値に決定する。
【0082】
[ステップS27]閾値決定部121は、ユーザDB111からユーザの属性情報を取得し、属性情報に基づいて基準閾値を決定する。例えば、閾値決定部121は、属性情報として年齢を取得し、ユーザの年齢が高いほど基準閾値を大きな値に決定する。
【0083】
なお、ステップS27では、他の例として、閾値決定部121は、ATM220のディスプレイ222に基準閾値を選択させる画面を表示させ、ユーザの選択操作に応じて基準閾値を決定してもよい。例えば、閾値決定部121は、「長め」「普通」「短め」のいずれかを選択させる画面を表示させていずれかに対する選択操作を受け付け、あらかじめ決められた3段階の閾値のうち、選択操作の結果に対応する閾値を基準閾値に決定する。
【0084】
<変形例>
以下、上記の第2の実施の形態における処理の一部を変形した変形例について説明する。
【0085】
図12は、変形例におけるサーバおよび視線検知式ATMの処理機能の構成例を示す図である。なお、
図12では、
図4に対応する構成要素には同じ符号を付して示している。
図12に示す変形例は、操作検出部122の機能をATM220が備える点で第2の実施の形態と相違する。すなわち、ATM220は、操作検出部233をさらに備える。一方、サーバ100のUI制御部120は、閾値決定部121を備えるが、操作検出部122を備えない。
【0086】
第2の実施の形態と同様に、閾値決定部121は、操作履歴DB113,114に記憶された、ユーザに対応する操作履歴に基づいて、基準閾値を決定する。そして、閾値決定部121は、決定された基準閾値を基準として、次に表示される取引画面内の各操作ボタンに対応する判定閾値を決定する。
【0087】
UI制御部120は、次に表示される取引画面の画面データをATM220に送信する際に、その取引画面内の各操作ボタンに対応する判定閾値を付加してATM220に送信する。ATM220では、送信された画面データが表示処理部231に入力されて取引画面が表示されるとともに、付加された操作ボタンごとの判定閾値が操作検出部233に入力される。
【0088】
そして、操作検出部233は、視線検出部232によって検出された注視点位置がいずれかの操作ボタンの領域に入った後、注視点位置がその領域内に停留した時間が、その操作ボタンに対応する判定閾値に達した場合に、その操作ボタンが選択操作されたと判定する。操作検出部233は、選択操作された操作ボタンの情報をサーバ100に送信する。UI制御部120は、送信された情報に基づいて次の取引画面を表示するための処理を実行する。
【0089】
図13は、変形例におけるサーバの処理手順を示すフローチャートの例である。
視線検知式のATM220に対するユーザの操作が開始されると、まず、
図10のステップS11,S12の処理が実行される。すなわち、UI制御部120は、視線検知式のATM220を操作するユーザの識別情報(例えば、ユーザID)を認識する(ステップS11)。そして、閾値決定部121は、操作履歴DB113,114を参照し、
図11に示した手順により、ユーザの操作履歴に基づいて判定閾値の基準となる基準閾値を決定する(ステップS12)。この後、ステップS31以降の処理が実行される。
【0090】
[ステップS31]閾値決定部121は、次に表示される取引画面に含まれる各操作ボタンの補正値を、補正値管理テーブル112aから取得する。閾値決定部121は、ステップS12で決定された基準閾値に、取得した補正値を加算することで、各操作ボタンに対応する判定閾値を決定する。
【0091】
[ステップS32]UI制御部120は、次の取引画面に対応する画面データを、ステップS31で決定された操作ボタンごとの判定閾値とともにATM220に送信する。
[ステップS33]UI制御部120は、表示された取引画面に含まれる操作ボタンのうち、ATM220で選択操作が行われた操作ボタンを示す情報を受信したかを判定する。このような情報を受信した場合、処理がステップS34に進められる。一方、このような情報を受信していない場合、受信待ち状態になり、一定時間後にステップS33の処理が再実行される。
【0092】
[ステップS34]UI制御部120は、選択操作により取引が終了されるかを判定する。取引が続けられる場合、処理がステップS31に進められ、次に表示される取引画面に関してステップS31以降の処理が実行される。一方、取引が終了される場合、
図13の処理が終了する。
【0093】
図14は、変形例における視線検知式ATMの処理手順を示すフローチャートの例である。
[ステップS41]
図13のステップS32でサーバ100から送信された、画面データと操作ボタンごとの判定閾値とを、視線検知式のATM220が受信する。
【0094】
[ステップS42]受信された操作ボタンごとの判定閾値が、操作検出部233に設定される。
[ステップS43]表示処理部231は、受信された画面データに基づいて、取引画面をディスプレイ222に表示させる。
【0095】
[ステップS44]視線検出部232は、注視点位置を一定周期で検出する。操作検出部233は、検出された注視点位置が、表示中の取引画面内のいずれかの操作ボタンの範囲(ボタン範囲)に入ったかを判定する。注視点位置がいずれかの操作ボタンの範囲に入った場合、操作検出部233は、その操作ボタンに対してステップS42で設定された判定閾値を取得し、処理がステップS45に進められる。一方、注視点位置がいずれの操作ボタンの範囲にも入っていない場合、待ち状態になり、次に注視点位置が送信されるとステップS44の処理が実行される。
【0096】
[ステップS45]操作検出部233は、注視点位置が操作ボタンの範囲内に停留した状態のまま、その操作ボタンに対応する判定閾値の時間が経過したかを判定する。注視点位置が当該範囲内に停留した状態のまま判定閾値の時間が経過した場合、操作ボタンに対する選択操作が行われたと判定され、処理がステップS46に進められる。一方、判定閾値の時間が経過する前に注視点位置が当該範囲外に移動した場合、処理がステップS44に進められる。
【0097】
[ステップS46]操作検出部233は、選択操作が行われた操作ボタンを示す情報をサーバ100に送信する。このときに送信された情報が、
図13のステップS33でサーバ100に受信されることになる。
【0098】
なお、
図7、
図8に例示した取引画面のように、操作ボタンに対する複数回の選択操作の後に次の取引画面に遷移する場合には、その遷移までの間、ステップS44,S45の処理が繰り返されて、その都度操作ボタンに対する選択操作が検出されることになる。また、
図7、
図8に例示した取引画面のように、数値や文字の入力が行われた場合、ステップS46では、選択操作された操作ボタンを示す情報とともに、入力された数値や文字を示す情報がサーバ100に送信される。
【0099】
以上の変形例では、第2の実施の形態と同様に、視線検知式のATM220に対するユーザの誤操作の発生を抑制できる。サーバ100から見た場合には、ユーザが意図していないにもかかわらず、ユーザが選択操作を行ったと誤判定してしまう可能性を低減できる。
【0100】
なお、上記の各実施の形態に示した装置(例えば、入力検知装置1、サーバ100)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、磁気テープなどがある。光ディスクには、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク(Blu-ray Disc:BD、登録商標)などがある。
【0101】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CDなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0102】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
【符号の説明】
【0103】
1 入力検知装置
2 表示装置
3 視線センサ
11 記憶部
12 制御部
13a,13b 操作履歴
S1~S3,S3a,S3b ステップ