JP2016073357A - 視線位置検出装置、視線位置検出方法及び視線位置検出プログラム - Google Patents

視線位置検出装置、視線位置検出方法及び視線位置検出プログラム Download PDF

Info

Publication number
JP2016073357A
JP2016073357A JP2014204274A JP2014204274A JP2016073357A JP 2016073357 A JP2016073357 A JP 2016073357A JP 2014204274 A JP2014204274 A JP 2014204274A JP 2014204274 A JP2014204274 A JP 2014204274A JP 2016073357 A JP2016073357 A JP 2016073357A
Authority
JP
Japan
Prior art keywords
line
sight
correction value
positions
gaze
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014204274A
Other languages
English (en)
Other versions
JP6547268B2 (ja
Inventor
哲典 田口
Tetsunori Taguchi
哲典 田口
哲 中島
Satoru Nakajima
哲 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014204274A priority Critical patent/JP6547268B2/ja
Priority to US14/836,284 priority patent/US9913578B2/en
Priority to EP15182720.1A priority patent/EP3002662B1/en
Priority to EP16168533.4A priority patent/EP3070580B1/en
Priority to CA2902684A priority patent/CA2902684C/en
Priority to AU2015221480A priority patent/AU2015221480B2/en
Publication of JP2016073357A publication Critical patent/JP2016073357A/ja
Application granted granted Critical
Publication of JP6547268B2 publication Critical patent/JP6547268B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/0016Operational features thereof
    • A61B3/0025Operational features thereof characterised by electronic signal processing, e.g. eye models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/10Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions
    • A61B3/113Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions for determining or recording eye movement
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/10Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions
    • A61B3/14Arrangements specially adapted for eye photography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Ophthalmology & Optometry (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Biophysics (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Veterinary Medicine (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Eye Examination Apparatus (AREA)
  • Image Processing (AREA)

Abstract

【課題】精度の良い補正値を算出することが可能な視線位置検出装置等の提供。
【解決手段】 視線位置検出装置は、注視対象となる物体の位置情報を記憶する物体位置記憶部と、被写体の視線位置を特定する視線位置特定部と、前記視線位置特定部が特定した第1の複数の視線位置と、前記物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する補正値算出部とを含む。
【選択図】図3

Description

本開示は、視線位置検出装置、視線位置検出方法及び視線位置検出プログラムに関する。
視線検出中に、対象者の個人差にともなう視線の誤差を補正するための補正値を算出する補正値算出装置が知られている(例えば、特許文献1参照)。この補正値算出装置は、被写体の眼の撮影画像に基づいて算出した眼から表示装置の画面に向かう第1の視線ベクトルと、表示画像上の特徴量に基づいて決定した被写体が注視している注視点に向かう第2の視線ベクトルとに基づいて、補正値を算出する。
特開2011-217764号公報 特開平11-76165号公報 特表2013-524390号公報
しかしながら、上記の特許文献1に記載の構成では、ある一時点の撮影画像に基づいて算出した第1の視線ベクトルを用いて、補正値をリアルタイムに算出するので、精度の良い補正値を算出することが難しい。例えば、対象者が表示装置の画面の全体的に見渡してから、表示画像上の特徴量に基づく注視点を見た場合は、その間に得られる複数の視線位置の多くは、表示画像上の特徴量に基づく注視点を対象者が注視していないときの視線位置となる。このため、かかる視線位置を個別的に用いて補正値を算出する構成では、精度の良い補正値を算出することが難しい。
そこで、開示の技術は、精度の良い補正値を算出することが可能な視線位置検出装置、視線位置検出方法及び視線位置検出プログラムの提供を目的とする。
本開示の一局面によれば、注視対象となる物体の位置情報を記憶する物体位置記憶部と、
被写体の視線位置を特定する視線位置特定部と、
前記視線位置特定部が特定した第1の複数の視線位置と、前記物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する補正値算出部とを含む、視線位置検出装置が提供される。
本開示の技術によれば、精度の良い補正値を算出することが可能な視線位置検出装置、視線位置検出方法及び視線位置検出プログラムが得られる。
視線位置検出装置が適用される視線位置検出システム1の一例を示す図である。 視線位置検出装置100のハードウェア構成の一例を示す図である。 視線位置検出装置100の機能ブロック図である。 商品位置データベース14の説明図(その1)である。 商品位置データベース14の説明図(その2)である。 視線位置検出装置100により実行される視線位置データベース生成処理の一例を示すフローチャートである。 瞳孔間距離と商品−ユーザ間距離との関係の一例を示す図である。 商品−ユーザ間距離とカテゴリとの関係の一例を示す図である。 視線位置検出装置100により実行される補正値データベース生成処理の一例を示すフローチャートである。 視線位置検出装置100により実行されるキャリブレーション処理の一例を示すフローチャートである。 想定シーンの一例を示す図である。 補正規則の一例の説明図である。 補正規則の一例による補正値算出処理を示すフローチャートである。 補正規則の他の一例の説明図である。 補正規則の他の一例による補正値算出処理を示すフローチャートである。 補正規則の更なる他の一例の説明図である。 補正規則の更なる他の一例による補正値算出処理を示すフローチャートである。 視線位置選別処理の説明図である。 補正値算出部12により実行される視線位置選別処理の一例を示すフローチャートである。 ステップS1912で抽出される複数の視線位置及び商品Ctの位置関係とキャリブレーションの必要性との関係を示す図である。 視線センサ20と3つの商品C1乃至C3の位置関係の一例を示す上面図である。 図21に示す例で使用される商品位置データベース14内のデータの一例を示す図である。 想定シーンの他の一例を示す図である。 視線位置検出装置100により実行される補正値データベース生成処理の他の一例を示すフローチャートである。 クラスタと複数の視線位置との関係の説明図である。 複数のクラスタと複数の商品との位置関係の一例を示す図である。 補正値の算出方法の説明図である。 補正値算出部12により実行される視線位置選別処理の他の一例を示すフローチャートである。 対応付け処理の一例を示すフローチャートである。 各距離を表す表図である。
以下、添付図面を参照しながら各実施例について詳細に説明する。
図1は、視線位置検出装置が適用される視線位置検出システム1の一例を示す図である。
視線位置検出システム1は、視線センサ20と、視線位置検出装置100とを含む。視線位置検出装置100は、視線センサ20とは有線または無線で通信可能に接続される。
視線センサ20は、カメラ21と、視線ベクトル算出装置22とを含む。
カメラ21は、ユーザS(被写体の一例)の眼の撮影画像を取得する。カメラ21は、任意のタイプの撮像素子を含んでよい。例えば、カメラ21は、比較的安価なCMOS(complementary metal-oxide-semiconductor)カメラであってよい。
視線ベクトル算出装置22は、カメラ21の撮影画像に基づいて、ユーザSの視線ベクトルV1を算出する。ユーザSの視線ベクトルV1の算出方法は、任意である。ユーザSの視線ベクトルV1の算出方法は、例えば特開2011-217764号公報に開示される方法であってよい。また、視線方向(視線ベクトルV1)の検出方法は、瞳孔と角膜反射を検知し、それらの位置関係から視線方向を算出する角膜反射法であってもよい。この場合、視線センサ20は、近赤外LED(Light-Emitting Diode)を含む。近赤外LEDによる近赤外光をユーザSの顔に当てるこの方法は、瞳孔は、視線方向によって位置が変わるが、角膜反射の位置は、視線方向には影響を受けないことを利用するものである。近赤外LEDによる近赤外光を顔に当てる場合は、目の中に基準点となる角膜反射が発生するため、カメラのみから計測する方法と比較し計測精度が向上する。
尚、視線ベクトル算出装置22は、図1に示すように、カメラ21に内蔵されてもよいが、他の実施例では、例えばネットワーク2を介してカメラ21及び視線位置検出装置100に接続されてもよい。また、視線ベクトル算出装置22は、視線位置検出装置100に組み込まれてもよい。或いは、視線位置検出装置100の機能の一部又は全部は、カメラ21に内蔵されてもよい。
視線位置検出装置100は、視線センサ20により検出される視線位置Pを補正するための補正値を算出する。補正値の算出方法については後述する。
図2は、視線位置検出装置100のハードウェア構成の一例を示す図である。
視線位置検出装置100は、例えばコンピューターにより実現される。図2に示す例では、視線位置検出装置100は、制御部101、主記憶部102、補助記憶部103、ドライブ装置104、ネットワークI/F部106、入力部107を含む。
制御部101は、主記憶部102や補助記憶部103に記憶されたプログラムを実行する演算装置であり、入力部107や記憶装置からデータを受け取り、演算、加工した上で、記憶装置などに出力する。
主記憶部102は、ROM(Read Only Memory)やRAM(Random Access Memory)などである。主記憶部102は、制御部101が実行する基本ソフトウェアであるOS(Operating System)やアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
補助記憶部103は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
ドライブ装置104は、記録媒体105、例えばフレキシブルディスクからプログラムを読み出し、記憶装置にインストールする。
記録媒体105は、所定のプログラムを格納する。この記録媒体105に格納されたプログラムは、ドライブ装置104を介して視線位置検出装置100にインストールされる。インストールされた所定のプログラムは、視線位置検出装置100により実行可能となる。
ネットワークI/F部106は、有線及び/又は無線回線などのデータ伝送路により構築されたネットワークを介して接続された通信機能を有する周辺機器と視線位置検出装置100とのインターフェースである。
入力部107は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、マウスやタッチパッド等を有する。
尚、図2に示す例において、以下で説明する各種処理等は、プログラムを視線位置検出装置100に実行させることで実現することができる。また、プログラムを記録媒体105に記録し、このプログラムが記録された記録媒体105を視線位置検出装置100に読み取らせて、以下で説明する各種処理等を実現させることも可能である。なお、記録媒体105は、様々なタイプの記録媒体を用いることができる。例えば、記録媒体105は、CD(Compact Disc)−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等であってよい。なお、記録媒体105には、搬送波は含まれない。
図3は、視線位置検出装置100の機能ブロック図である。
視線位置検出装置100は、視線ベクトル取得部10と、視線位置特定部11と、補正値算出部12とを含む。視線位置特定部11は、補正前視線位置特定部11aと、キャリブレーション処理部11bとを含む。視線ベクトル取得部10は、例えば図2に示すネットワークI/F部106により実現できる。また、視線位置特定部11及び補正値算出部12は、例えば図2に示す制御部101により実現できる。視線位置検出装置100は、更に、視線位置データベース13と、商品位置データベース(物体位置記憶部の一例)14と、非商品位置データベース(非注視物体位置記憶部の一例)15とを含む。また、視線位置検出装置100は、更に、商品対応規則データベース16と、補正規則データベース17と、補正値データベース18とを含む。視線位置データベース13、商品位置データベース14、非商品位置データベース15、商品対応規則データベース16、補正規則データベース17及び補正値データベース18は、例えば図2に示す補助記憶部103により実現できる。
視線ベクトル取得部10は、視線センサ20からユーザSの視線ベクトルを取得する。尚、視線ベクトル取得部10は、視線ベクトルと共に、当該視線ベクトルに係るユーザSを特定する情報を取得してもよい。視線ベクトルに係るユーザSを特定する情報は、例えば、顔認識技術等により視線ベクトル算出装置22が生成できる。
補正前視線位置特定部11aは、視線ベクトル取得部10が取得した視線ベクトルに基づいてユーザSの視線位置を算出する。例えば、補正前視線位置特定部11aは、視線ベクトルと、ユーザS及び物体間の距離とに基づいて、物体が位置する仮想平面M上におけるユーザSの視線位置を算出する。補正前視線位置特定部11aは、一の視線ベクトルに対して一の視線位置を算出する。従って、ユーザSの視線位置は、複数の視線ベクトルの数と同じ数算出されることになる。
ここで、物体とは、任意であるが、以下では、一例として、ユーザSによる注視対象となる商品であるとする。また、以下では、一例として、商品は、店舗に陳列される任意の商品を想定する。従って、ユーザSは、店舗に来る人(商品を購買する可能性のある人)である。
ユーザS及び物体間の距離は、測定値であってもよいし、固定値(想定値)であってよい。以下では、一例として、補正前視線位置特定部11aは、ユーザSの瞳孔間距離に基づいて、ユーザS及び商品間の距離(以下、「商品−ユーザ間距離」とも称する)を算出する。但し、商品−ユーザ間距離の算出方法は、任意であり、例えば視線センサ20が距離画像を取得する場合は、商品−ユーザ間距離は距離画像に基づいて算出されてもよい。
仮想平面Mは、図1に示すように、例えば、商品の位置(座標)を含む鉛直平面である。視線位置Pは、図1に示すように、視線ベクトルV1が仮想平面Mに交わる点の位置である。以下では、便宜上、図1に示すように、仮想平面Mの左端を原点としてXYZ軸を定義し、Z軸の正方向は、ユーザS側であるとする。
キャリブレーション処理部11bは、補正値データベース18内の補正値に基づいて、補正前視線位置特定部11aにより算出されるユーザSの視線位置を補正する。キャリブレーション処理部11bにより補正された視線位置は、視線位置特定部11による最終的な視線位置の算出結果として出力される。
キャリブレーション処理部11bは、補正値データベース18内に補正値が存在するときは、補正前視線位置特定部11aにより算出されるユーザSの視線位置を補正するが、補正値が存在しないときは、補正しない。補正値が存在しないとは、補正値が0であることを含む。以下、キャリブレーション処理部11bによる補正後の視線位置と、補正前視線位置特定部11aによる補正前の視線位置とを特に区別しない場合は、単に「視線位置特定部11により算出された視線位置」という。即ち、以下の説明で「視線位置特定部11により算出された視線位置」は、キャリブレーション処理部11bによる補正後の視線位置、及び、補正前視線位置特定部11aによる補正前の視線位置のいずれであってもよい。
補正値算出部12は、視線位置特定部11により算出された複数の視線位置と、商品位置データベース14に記憶された商品の位置情報とに基づいて、複数の視線位置を位置情報が示す商品の位置に整合させる補正値を算出する。補正値を算出することは、既にある補正値(例えば初期値や前回値)を更新すること伴ってもよい。補正値算出部12による補正値の算出方法の具体例については後述する。
視線位置データベース13は、視線位置特定部11により算出された視線位置を記憶する。従って、視線位置データベース13には、視線位置特定部11により算出された複数の視線位置が記憶される。視線位置データベース13内の各視線位置は、補正値算出部12により抽出されるまで保持されてよい。視線位置データベース13の生成方法の一例は、図6を参照して後述する。
商品位置データベース14は、ユーザSの注視対象となる商品の位置を表す位置情報を記憶する。位置情報が表す商品の位置は、任意であり、例えば商品の中心位置、重心位置、商品の顕著性の高い部位の位置等であってもよい。図4及び図5は、商品位置データベース14の説明図である。図4に示す例では、商品位置データベース14には、商品C1,C2・・・に関する左上位置N1及び右下位置N2(図5参照)のXY座標が記憶される。商品位置データベース14は、商品の位置情報に加えて、商品領域の形状及びサイズに関する情報を記憶してもよい。商品領域とは、仮想平面上における商品が占める領域を指すが、簡易的な商品外形に対応した領域であってもよい。
非商品位置データベース15は、商品周辺に位置する非注視対象物体の位置を表す位置情報(以下、「非注視対象物体位置情報」と称する)を記憶する。非注視対象物体とは、ユーザSの注視対象とならない物体である。ユーザSの注視対象とならない物体とは、一般的な基準で決定され、特殊なユーザSにとっては注視対象となるような物体を意味しない。非注視対象物体とは、例えば、商品棚自体(例えばフレームなど)、商品と隣の商品との隙間、店舗の壁、柱又はその類である。非注視対象物体位置情報は、商品ごとに、商品に対応付けて記憶されてよい。尚、非注視対象物体位置情報は、好ましくは、商品周辺に位置する所定物体の位置が、非注視対象物体位置情報が示す非注視対象物体の存在領域に含まれないように生成される。所定物体は、ユーザSによる注視対象となる、商品以外の物体であり、例えば商品の説明や値段が書かれた札又はその類である。尚、所定物体の位置情報は、商品位置データベース14内に、商品ごとに、商品に対応付けて記憶されてもよい。非商品位置データベース15は、適宜、省略されてもよい。
商品対応規則データベース16は、視線位置特定部11により算出される視線位置と、商品との対応関係を特定するための情報を記憶する。例えば、商品対応規則データベース16は、商品ごとに、それぞれに商品をユーザSが注視しているときに視線位置特定部11により算出される視線位置の取り得る範囲を記憶する。かかる範囲は、商品位置データベース14内の商品の位置情報に基づいて算出されてもよいし、試験や経験則等に基づいて設定されてもよい。尚、商品対応規則データベース16は、適宜、省略されてもよい。
補正規則データベース17は、補正値算出部12による補正を行う際の補正規則を記憶する。補正規則は、視線位置特定部11により算出される複数の視線位置と、該複数の視線位置に対応する商品に係る位置情報(商品位置データベース14内の位置情報)とから、補正値を導き出す算出式(後述)に対応してよい。
補正値データベース18は、補正値算出部12により算出された補正値を記憶する。補正値は、商品ごとに記憶される。また、補正値は、ユーザSや仮想平面やユーザ位置ごとに記憶されてもよい。補正値の算出方法については後述する。
図3に示す視線位置検出装置100によれば、補正値算出部12が複数の視線位置(即ち視線位置の集まり)に基づいて補正値を算出するので、一の視線位置毎に補正値を算出する場合に比べて、補正値の精度を高めることができる。これは、複数の視線位置のそれぞれが、必ずしも商品をユーザSが見ているときの視線位置に対応せず、例えば商品周辺を見渡しているときの視線位置を含む場合があるためである。
また、図3に示す視線位置検出装置100によれば、ユーザSが商品を見ている(注視している)ときの複数の視線位置を用いて、補正値を算出することが可能である。このため、商品以外の顕著性の高い特別な物体(キャリブレーション用基準点)をキャリブレーションの目的で配置する必要が無くなる。即ち、商品自体がキャリブレーション用基準点となるので、商品以外のキャリブレーション用基準点をユーザSに注視してもらう必要がなくなる。このように図3に示す視線位置検出装置100によれば、ユーザSの自然な視線の動き(興味のある商品の注視等)の中で得られる複数の視線位置を用いて、補正値を算出できる。これにより、ユーザSに特別な負荷をかけることなく、補正値の算出機会を効率的に増加できる。
次に、図6乃至図11を参照して、視線位置検出装置100の動作例について説明する。ここでは、視線センサ20のカメラ21が、ある特定の一の商品(以下、「商品Ct」と称する)を注視するユーザSを撮像するように設けられているシーン(図11参照)を想定する。尚、図11に示す例では、商品Ctが商品棚200上に置かれている状況を概略的に示す図である。尚、この場合、カメラ21(図示せず)は、例えば商品Ctの近傍に配置され、Z軸の正方向に視線方向を有する。また、ユーザS(図示せず)は、商品CtよりもZ軸の正方向側の位置から、商品Ctを注視するものとする。
図6は、視線位置検出装置100により実行される視線位置データベース生成処理の一例を示すフローチャートである。図6に示す処理は、視線センサ20が同一のユーザSに係る視線ベクトルを算出する毎に実行されてよい。尚、視線センサ20が複数のユーザSに係る視線ベクトルを同時に算出する場合は、図6に示す処理は、ユーザS毎に並列的に実行されてよい。
ステップS600では、視線ベクトル取得部10は、視線センサ20からユーザSの視線ベクトルを取得する。また、視線ベクトル取得部10は、視線センサ20からユーザSの瞳孔間距離を取得する。例えば、視線センサ20は、視線ベクトルを算出した際の画像から得られるユーザSの瞳孔間距離を、視線ベクトルに対応付けて視線位置検出装置100に送信する。
ステップS602では、補正前視線位置特定部11aは、ユーザSの瞳孔間距離に基づいて商品−ユーザ間距離を算出する。例えば、補正前視線位置特定部11aは、図7に示すような瞳孔間距離と商品−ユーザ間距離との関係を示す情報を参照して、商品−ユーザ間距離を算出してよい。尚、商品−ユーザ間距離の算出は、視線センサ20により実現されてもよい。この場合、視線ベクトル取得部10は、瞳孔間距離に代えて、商品−ユーザ間距離を視線センサ20から取得してよい。この場合、ステップS602の処理は省略される。
ステップS604では、補正前視線位置特定部11aは、ステップS602で算出した商品−ユーザ間距離のカテゴリを設定する。例えば、図8に示すような商品−ユーザ間距離とカテゴリとの関係を示す情報を参照して、商品−ユーザ間距離のカテゴリを設定してよい。尚、ここでは、算出した商品−ユーザ間距離が高精度でない点を考慮して、カテゴリを設定しているが、算出した商品−ユーザ間距離をそのまま利用することもできる。この場合は、ステップS604の処理は省略される。
ステップS606では、補正前視線位置特定部11aは、ステップS600で取得した視線ベクトルに対応する視線位置を算出する。この際、補正前視線位置特定部11aは、ステップS602で設定したカテゴリに基づいて、ユーザSの視線ベクトルの始点のZ座標を設定(推定)する。即ち、補正前視線位置特定部11aは、仮想平面MとユーザSの視線ベクトルの始点との間の距離(Z方向の距離)を設定する。例えば、図8に示すカテゴリ"T1"の場合、補正前視線位置特定部11aは、ユーザSの視線ベクトルの始点のZ座標を例えば50[cm]に設定する。また、図8に示すカテゴリ"T2"の場合、補正前視線位置特定部11aは、ユーザSの視線ベクトルの始点のZ座標を例えば75[cm]に設定する。また、図8に示すカテゴリ"T3"の場合、補正前視線位置特定部11aは、ユーザSの視線ベクトルの始点のZ座標を例えば100[cm]に設定する。尚、このようなカテゴリに応じたZ方向の距離は、商品Ctの手前の通路の幅等に基づいて予め設定されてよい。また、商品−ユーザ間距離をそのまま利用して、ユーザSの視線ベクトルの始点のZ座標を設定することも可能である。この場合、補正前視線位置特定部11aは、ユーザSの視線ベクトルの始点のZ座標を商品−ユーザ間距離の値に設定する。補正前視線位置特定部11aは、設定した視線ベクトルの始点のZ座標に基づいて、仮想平面Mに視線ベクトルが交わる交点(図1の視線位置P参照)を、視線位置として算出する。
ステップS608では、補正前視線位置特定部11aは、ステップS606で算出した視線位置を視線位置データベース13に記憶する。或いは、補正規則データベース17内に補正値が存在する場合は、キャリブレーション処理部11bは、ステップS606で補正前視線位置特定部11aが算出した視線位置を補正値により補正した上で、視線位置データベース13に記憶してもよい。このようにして視線位置特定部11により算出される複数の視線位置が視線位置データベース13に記憶(蓄積)される。この際、複数の視線位置は、ユーザSや仮想平面や商品−ユーザ間距離ごとに記憶されてよい。以下では、複数の視線位置は、ユーザSごとに記憶されているものとする。
図9は、視線位置検出装置100により実行される補正値データベース生成処理の一例を示すフローチャートである。図9に示す処理は、例えば、視線位置特定部11により算出される視線位置が視線位置データベース13に所定数蓄積される毎に実行されてもよいし、所定時間毎で実行されてもよい。
ステップS900では、補正値算出部12は、視線位置データベース13内から複数の視線位置(第1の複数の視線位置の一例)を抽出する。抽出する複数の視線位置は、好ましくは、同一のユーザに係る視線位置である。この場合、抽出する複数の視線位置は、同一のユーザSに係る全ての視線位置であってもよい。或いは、抽出する複数の視線位置は、所定時間当たりに得られる同一のユーザSに係る視線位置であってよい。尚、抽出する視線位置の数は、ユーザSが商品を見ている時間やカメラ21のフレームレート等に依存する。或いは、補正値算出部12は、視線位置データベース13内の同一のユーザSに係る複数の視線位置(第2の複数の視線位置の一例)のうちから、所定条件を満たす複数の視線位置(第1の複数の視線位置の他の一例)のみを抽出してもよい。所定条件を満たす複数の視線位置は、例えば、広がりが小さい(隣接する視線位置との距離が小さい)集まりを形成する複数の視線位置であってもよい。また、商品の近傍(例えば、商品−ユーザ間距離や検出誤差に基づいて設定した範囲)に存在する複数の視線位置であってもよい。この種の抽出処理(視線位置選別処理)の例については、図19等を参照して後述する。
ステップS902では、補正値算出部12は、商品位置データベース14内の商品Ctに係る位置情報を参照して、ステップS900で抽出した複数の視線位置が商品Ctの位置に対応するか否かを判定する。商品Ctの位置に対応するか否かは任意の方法で判定されてもよい。例えば、補正値算出部12は、複数の視線位置の重心位置(平均位置)が、商品Ctに関する左上位置N1及び右下位置N2で規定される矩形領域(商品領域)内に存在する場合は、商品Ctの位置に対応すると判定してもよい。複数の視線位置の重心位置とは、各視線位置に同一の質量を与えるときに得られる重心位置に対応してよい。複数の視線位置が商品Ctの位置に対応する場合は、補正値算出部12は補正値の算出は不要と判断して、処理はステップS900に戻り、それ以外の場合は、ステップS904に進む。
ステップS904では、補正値算出部12は、非商品位置データベース15内の商品Ctに対応付けられた非注視対象物体位置情報を参照して、ステップS900で抽出した複数の視線位置が非注視対象物体の位置に対応するか否かを判定する。非注視対象物体の位置に対応するか否かは任意の方法で判定されてもよく、ステップS902と同様の方法で判定されてもよい。即ち、補正値算出部12は、複数の視線位置の重心位置が、非注視対象物体位置情報が示す非注視対象物体の存在領域内に存在する場合は、非注視対象物体の位置に対応すると判定してもよい。複数の視線位置が非注視対象物体の位置に対応する場合は、処理はステップS906に進み、それ以外の場合は、補正値算出部12は補正値の算出は不要と判断して、ステップS900に戻る。尚、ステップS904で否定判定となる場合とは、例えば、複数の視線位置の重心位置が所定物体(例えば値札)の存在領域内に存在する場合等である。
ステップS906では、補正値算出部12は、商品対応規則データベース16を参照して、ステップS900で抽出した複数の視線位置を、商品位置データベース14内の商品に対応付ける。例えば、補正値算出部12は、ステップS900で抽出した複数の視線位置に最も近い位置情報を持つ商品を、ステップS900で抽出した複数の視線位置に対応付ける。本例では、補正値算出部12は、ステップS900で抽出した複数の視線位置を、商品位置データベース14内の商品Ctに対応付けることになる。尚、かかる対応付けができない場合は、ステップS900に戻ることとしてよい。尚、かかる対応付けができない場合としては、例えば、ステップS900で抽出した複数の視線位置が、例えば商品Ct以外の他の商品(ユーザSによる注視対象となる他の商品)をユーザSが注視しているときの視線位置である可能性がある場合である。
ステップS908では、補正値算出部12は、ステップS900で抽出した複数の視線位置を、商品位置データベース14内の位置情報に基づく商品Ctの位置に整合させる補正値を算出する。補正値の算出方法は、任意である。補正値の算出方法の例は後述する。
ステップS910では、補正値算出部12は、ステップS908で算出した補正値を補正値データベース18に記憶する。補正値算出部12は、ユーザS毎に、商品Ctに係る補正値を記憶してもよいし、ユーザSの如何に拘らず、商品Ctに係る一の補正値を記憶してもよい。また、補正値算出部12は、既に商品Ctに係る補正値が補正値データベース18に記憶されている場合は、補正値を更新する。尚、補正値の更新は、上書きであってもよいし、既存の補正値との平均化を伴ってもよい。
図9に示す処理によれば、複数の視線位置(即ち視線位置の集まり)に基づいて補正値を算出するので、一の視線位置毎に補正値を算出する場合に比べて、補正値の精度を高めることができる。これは、複数の視線位置のそれぞれが、必ずしも商品CtをユーザSが見ているときの視線位置に対応せず、例えば商品Ct周辺を見渡しているときの視線位置を含む場合があるためである。
また、図9に示す処理によれば、上述の如く、複数の視線位置が非注視対象物体の位置に対応する場合(ステップS904のYES)に、補正値算出部12は、非注視対象物体の位置に対応する複数の視線位置を商品Ctの位置に整合させる補正値を算出する。これにより、補正値の精度を高めることができる。これは、非注視対象物体の位置に対応する複数の視線位置は、ユーザSが商品Ctを見ている(注視している)ときの複数の視線位置である可能性が高いためである。具体的には、商品棚自体のような非注視対象物体をユーザSが注視するのは不自然である。従って、非注視対象物体の位置に対応する複数の視線位置は、非注視対象物体周辺の商品CtをユーザSが見ている(注視している)ときの複数の視線位置である可能性が高い傾向にある。即ち、視線位置の算出誤差に起因して、複数の視線位置が商品Ctの位置に対応していない可能性が高い。従って、非注視対象物体の位置に対応する複数の視線位置に基づいて、複数の視線位置を商品Ctの位置に整合させる補正値を算出することで、補正値の精度を高めることができる。
また、図9に示す処理によれば、ユーザSが商品Ctを見ている(注視している)ときの複数の視線位置を用いて、補正値を算出することが可能となるので、キャリブレーション用基準点を別途配置する必要が無くなる。このように図9に示す処理によれば、ユーザSの自然な視線の動き(興味のある商品Ctの注視等)の中で得られる複数の視線位置を用いて、補正値を算出できる。これにより、ユーザSに特別な負荷をかけることなく、補正値の算出機会を効率的に増加できる。
尚、図9に示す例において、ステップS902及び/又はステップS904の処理は省略されてもよい。例えば、ステップS904の処理は、非注視対象物体が想定されない場合に省略されてもよい。この場合は、非商品位置データベース15も省略されてもよい。
図10は、視線位置検出装置100により実行されるキャリブレーション処理の一例を示すフローチャートである。図10に示す処理は、補正前視線位置特定部11aが視線位置を算出する毎に実行される。
ステップS1000では、キャリブレーション処理部11bは、補正前視線位置特定部11aで算出された視線位置を取得する。
ステップS1002では、キャリブレーション処理部11bは、ステップS1000で取得した視線位置に対応する補正値を補正値データベース18から抽出する。例えば、補正値データベース18にユーザごとに商品Ctに係る補正値が記憶されている場合は、キャリブレーション処理部11bは、今回のユーザSに係る補正値を抽出する。尚、商品Ctに係る補正値が補正値データベース18に1つしか記憶されない場合は、キャリブレーション処理部11bは、商品Ctに係る補正値を抽出する。
ステップS1004では、キャリブレーション処理部11bは、ステップS1002で抽出した補正値に基づいて、ステップS1000で取得した視線位置を補正する。補正方法は、任意である。補正方法の例は、補正値の算出方法に関連して後述する。キャリブレーション処理部11bは、補正した視線位置を視線位置データベース13に記憶してよい。
図10に示す処理によれば、上述の如く精度の高い補正値を用いてキャリブレーションを行うことができる。これにより、精度の高い視線位置を出力できる。
尚、図10に示す処理は、補正前視線位置特定部11aが視線位置を算出する毎に実行されるが、他の態様であってよい。例えば、図10に示す処理は、視線位置データベース13に記憶された補正前視線位置特定部11aにより算出された複数の視線位置に対して一括的に実行されてもよい。
次に、図11乃至図17を参照して、補正値の算出方法(補正規則)の例について説明する。ここでも、視線センサ20のカメラ21が、ある特定の一の商品Ctを注視するユーザSを撮像するように設けられているシーン(図11参照)を想定する。
図12は、補正規則の一例の説明図である。図12は、仮想平面M上における複数の視線位置P1〜P5及び商品Ctが模式的に示されている。図12に示す補正規則の例では、補正値は、以下の変換行列で表される。
Figure 2016073357
図13は、補正規則の一例による補正値算出処理を示すフローチャートである。図13に示す処理は、図9に示したステップS908の処理の一例として実行される。
ステップS1300では、補正値算出部12は、ステップS900で抽出した複数の視線位置のX座標の最大値(xmax)及び最小値(xmin)とY座標の最大値(ymax)及び最小値(ymin)を算出する。図12には、複数の視線位置P1〜P5のX座標の最大値(xmax)及び最小値(xmin)とY座標の最大値(ymax)及び最小値(ymin)が図示されている。
ステップS1302では、補正値算出部12は、ステップS1300で算出した各値に基づいて、ステップS900で抽出した複数の視線位置を外接する外接領域の各隅の座標を設定する。各隅の座標は、図12に示すように、左上隅が(xmin、ymax)、右上隅が(xmax、ymax)、右下隅が(xmax、ymin)、左下隅が(xmin、ymin)と設定される。
ステップS1304では、補正値算出部12は、商品位置データベース14を参照して、商品Ctに係る商品領域の各隅の座標を取得する。図12に示す例では、商品Ctに係る商品領域の各隅の座標は、左上隅が(X1、Y1)、右上隅が(X2、Y2)、右下隅が(X3、Y3)左下隅が(X4、Y4)である。
ステップS1306では、補正値算出部12は、ステップS1302及びS1304で設定した各隅の座標が対応するように、数1に示す変換行列の各値a,b,c,d,e,fを算出する。即ち、補正値算出部12は、(xmin、ymax)が(X1、Y1)、(xmax、ymax)が(X2、Y2)、(xmax、ymin)が(X3、Y3)、(xmin、ymin)が(X4、Y4)となるような、変換行列の各値a〜fを求める。補正値算出部12は、算出した各値a,b,c,d,e,fを補正値として補正値データベース18内に記憶することになる(図9のステップS910参照)。
図12及び図13に示す補正規則では、キャリブレーション処理部11bは、以下の式に従って、補正前視線位置特定部11aにより算出された視線位置を補正してよい。
Figure 2016073357
ここで、(x、y)は補正前視線位置特定部11aにより算出された視線位置のX座標及びY座標を表し、(u,v)は、キャリブレーション処理部11bによる補正後の視線位置のX座標及びY座標を表す。
図12及び図13に示す補正規則によれば、ステップS900で抽出した複数の視線位置に外接する矩形領域内の視線位置は、商品Ctに係る商品領域内に補正可能となる。尚、図12及び図13に示す補正規則では、変換行列として、アフィン変換を例に示したが、アフィン変換以外に射影変換などを用いてもよい。また、補正値は、行列ではなく、関数で表現されてもよい。また、外接する領域形状は矩形以外に、商品領域の形状を基にした形状など任意の形状であってもよい。
図14は、補正規則の他の一例の説明図である。図14は、仮想平面M上における複数の視線位置P1〜P5及び商品Ctが模式的に示されている。図15は、補正規則の他の一例による補正値算出処理を示すフローチャートである。図15に示す処理は、図9に示したステップS908の処理の一例として実行される。
ステップS1500では、補正値算出部12は、商品位置データベース14を参照して、商品Ctに係る商品領域の形状及びサイズを取得する。尚、商品Ctに係る商品領域の形状及びサイズは、商品Ctに係る商品領域の各隅の座標に基づいて算出されてもよい。
ステップS1502では、補正値算出部12は、商品Ctに係る商品領域を仮想平面M上で仮想的に動かしながら、ステップS900で抽出した複数の視線位置が一番多く入る商品領域の位置を探索する。即ち、補正値算出部12は、商品Ctに係る商品領域と同じ大きさ・形状の領域R1(以下、「仮想領域R1」という)を、ステップS900で抽出した複数の視線位置のうちの最大数が入るような位置に配置する。尚、補正値算出部12は、一番多くの視線位置が入る仮想領域R1の位置が複数ある場合には、所定基準位置(後述)間の距離が最小になるような仮想領域R1の位置を選択する。或いは、補正値算出部12は、商品Ctに係る商品領域と同じ大きさ・形状の領域の重心と、ステップS900で抽出した複数の視線位置のそれぞれとの距離の和が最小になるように、仮想領域R1の位置を決定してもよい。
ステップS1504では、補正値算出部12は、ステップS1502で決定した位置の仮想領域R1の所定基準位置の座標を取得する。所定基準位置は、仮想領域R1内の任意である。図14に示す例では、所定基準位置は、左上隅であり、そのXY座標は(xmin、ymax)である。
ステップS1506では、補正値算出部12は、商品位置データベース14を参照して、商品Ctに係る商品領域の、対応する所定基準位置の座標を取得する。対応する所定基準位置とは、仮想領域R1の所定基準位置に対応することを意味し、仮想領域R1の所定基準位置に応じて決まる。図14に示す例では、商品領域の対応する所定基準位置は、仮想領域R1の所定基準位置が仮想領域R1の左上隅であることに対応して、商品領域の左上隅であり、そのXY座標は(X1、Y1)である。
ステップS1508では、補正値算出部12は、ステップS1504及びS1506で得た各所定基準位置のXY座標が対応するように、補正値(dx、dy)を算出する。即ち、補正値(dx、dy)は、ステップS1504及びS1506で得た各所定基準位置のずれ量に対応する。例えば、補正値算出部12は、dx=xmin−X1,dy=ymax−Y1として、補正値(dx、dy)を算出する。補正値算出部12は、算出した補正値(dx、dy)を補正値データベース18内に記憶することになる(図9のステップS910参照)。
図14及び図15に示す補正規則では、キャリブレーション処理部11bは、以下の式に従って、補正前視線位置特定部11aにより算出された視線位置を補正してよい。
Figure 2016073357
ここで、(x、y)は補正前視線位置特定部11aにより算出された視線位置のX座標及びY座標を表し、(u,v)は、キャリブレーション処理部11bによる補正後の視線位置のX座標及びY座標を表す。
図16は、補正規則の更なる他の一例の説明図である。図16は、仮想平面M上における複数の視線位置P1〜P5及び商品Ctが模式的に示されている。図17は、補正規則の更なる他の一例による補正値算出処理を示すフローチャートである。図17に示す処理は、図9に示したステップS908の処理の一例として実行される。
ステップS1700では、補正値算出部12は、ステップS900で抽出した複数の視線位置の重心位置のXY座標を算出する。図16に示す例では、複数の視線位置P1〜P5の重心位置のXY座標(xg、yg)が算出される。また、重心位置以外に、重心最近傍の視線位置や最頻の視線位置のような他の位置であってもよい。
ステップS1702では、補正値算出部12は、商品位置データベース14を参照して、商品Ctに係る商品領域の所定位置(本例では重心位置)のXY座標(Xg、Yg)を算出する。尚、所定位置は、商品領域の重心位置に代えて、商品Ctにおける顕著性の高い部位の位置のような他の位置であってもよい。
ステップS1704では、補正値算出部12は、ステップS1700及びS1702で得た各重心位置のXY座標が対応するように、補正値(dx、dy)を算出する。即ち、補正値(dx、dy)は、ステップS1700及びS1702で得た各重心位置のずれ量に対応する。例えば、補正値算出部12は、dx=xg−Xg,dy=yg−Ygとして、補正値(dx、dy)を算出する。補正値算出部12は、算出した補正値(dx、dy)を補正値データベース18内に記憶することになる(図9のステップS910参照)。
図16及び図17に示す補正規則では、キャリブレーション処理部11bは、数3で示した式に従って、補正前視線位置特定部11aにより算出された視線位置を補正してよい。
図11乃至図17に示す補正規則によれば、複数の視線位置を用いて補正値を算出するので、一の視線位置毎に補正値を算出する場合に比べて、補正値の精度を高めることができる。
次に、図18乃至図20を参照して、補正値算出部12が所定条件を満たす複数の視線位置のみを抽出(選別)するための抽出処理(以下、「視線位置選別処理」と称する)について説明する。
図18は、図11に示したシーンと同一のシーンを示す図である。図18には、仮想平面M上における複数の視線位置P1〜P7及び商品Ctが模式的に示されている。
図19は、補正値算出部12により実行される視線位置選別処理の一例を示すフローチャートである。図19に示す処理は、図9に示したステップS900の処理の一例として実行される。
ステップS1900では、補正値算出部12は、視線位置データベース13内から同一のユーザに係る全ての視線位置(第2の複数の視線位置の一例)を初期的に抽出する。
ステップS1902では、補正値算出部12は、ステップS1900で初期的に抽出した全ての視線位置を、各位置に基づいてクラスタリングする。クラスタリング方法は任意である。例えば、クラスタリング方法は、階層的なクラスタリング方法であってもよいし、非階層的なクラスタリング方法であってもよい。階層型クラスタリングとしては、最短距離法(単連結法・最近隣法)、最長距離法(完全連結法・最遠隣法)などがある。また、非階層型クラスタリングとしては、K平均法(k-means法)を使用してもよい。
ステップS1904では、補正値算出部12は、ステップS1902でのクラスタリングで得られる複数のクラスタに対して、各クラスタ内の視線位置の数、即ち各クラスタを形成する視線位置の数をカウントする。
ステップS1906では、補正値算出部12は、ステップS1904でのカウント結果に基づいて、含まれる視線位置の数が最も多いクラスタを選択する。
ステップS1908では、補正値算出部12は、ステップS1904で選択したクラスタ内の視線位置の数が所定閾値以上であるか否かを判定する。ここでは、所定閾値は、全視線位置の数の50%であるが、50%は一例であり、他の数値が使用されてもよい。ステップS1904で選択したクラスタ内の視線位置の数が、全視線位置の数の50%以上である場合は、ステップS1912に進み、それ以外の場合は、ステップS1910に進む。
ステップS1910では、補正値算出部12は、商品位置データベース14を参照して、ステップS1902でのクラスタリングで得られる複数のクラスタの中から、商品Ctの位置に最も近いクラスタを選択する。即ち、補正値算出部12は、現在選択中の視線位置の数が最も多いクラスタに代えて、商品Ctの位置に最も近いクラスタを選択し直す。商品Ctと各クラスタとの距離は、各クラスタを形成する視線位置の重心位置に基づいて算出されてもよい。
ステップS1912では、補正値算出部12は、現在選択中のクラスタ内の全視線位置(第1の複数の視線位置の他の一例)を抽出する。現在選択中のクラスタとは、ステップS1908の判定結果が肯定判定であるときは、視線位置の数が最も多いクラスタ(ステップS1906で選択したクラスタ)である。また、現在選択中のクラスタとは、ステップS1908の判定結果が否定判定であるときは、商品Ctの位置に最も近いクラスタ(ステップS1910で再選択したクラスタ)である。このようにしてステップS1912で抽出された全視線位置は、図9のステップS902以後の処理で、「ステップS900で抽出された複数の視線位置(第1の複数の視線位置の他の一例)」として利用される。
ところで、ユーザSが、商品Ctを注視するときは、直ぐに商品Ctへと視線を向ける場合もあれば、周辺を見渡しながら商品Ctを注視する場合など、様々である。例えば、図18に示す例では、視線位置P1〜P3は、それぞれ孤立した位置にある一方、視線位置P4〜P7は、互いに対して比較的近接した位置にある。かかる状況では、視線位置P1〜P3は、商品Ctを注視しているときの視線位置である可能性が低い。これは、商品Ctを注視しているときは複数の視線位置が比較的近接しあう傾向となるためである。例えば、一般的に人が物体を注視するときは、200ms〜350ms程度、物体を見続ける(注視する)傾向がある。この場合、視線位置の算出周期が例えば1msであれば、200個から350個程度の視線位置が比較的近接しあう傾向となる。視線位置P4〜P7は、ユーザSが何かを注視しているときの視線位置である可能性が高い傾向にある。このとき、商品Ct以外にユーザSの注視対象となる物体が商品Ctの周辺に存在しない場合、視線位置P4〜P7は、ユーザSが商品Ctを注視しているときの視線位置である可能性が高い傾向となる。例えば、図18に示すように、商品棚200上には商品Ct以外の物体が存在しない場合、ユーザSが例えば商品棚200の上方の何もない空間を注視している可能性は低い。従って、視線位置P4〜P7は、ユーザSが商品Ctを注視しているときの視線位置である可能性が高い(視線位置P4〜P7の算出誤差に起因して、視線位置P4〜P7が商品Ctの位置に対応していない可能性が高い)。
この点、図19に示す処理によれば、互いに対して比較的近接した視線位置のみを抽出するので、ユーザSが商品Ctを注視しているときの視線位置である可能性が高い複数の視線位置のみを抽出できる。この結果、補正値の精度を更に高めることができる。
尚、図19に示す処理では、ステップS1906で、含まれる視線位置の数が最も多いクラスタを選択するが、これに代えて、含まれる視線位置の数が所定閾値以上のクラスタを選択してもよい。所定閾値は、200ms間に得られる視線位置の数に対応してもよい。これは、上述の如く、一般的に人が物を注視するときは、少なくとも200ms程度、物を見る傾向があるためである。これにより、ユーザSが何かに注視しているときの視線位置のみを精度良く抽出できる。尚、含まれる視線位置の数が所定閾値以上のクラスタが複数存在する場合は、補正値算出部12は、複数のクラスタのそれぞれに対して、ステップS902以降の処理を実行してもよい。尚、このような複数のクラスタの抽出は、例えば商品Ctの近傍にある所定物体(例えば値札)をユーザSが注視している場合に生じうる。
また、図19に示す処理では、ステップS1910で、補正値算出部12は、商品Ctの位置に最も近いクラスタを選択するが、非商品位置データベース15内の非注視対象物体位置情報を考慮してクラスタを選択してもよい。非注視対象物体は、上述の如く、商品棚202自体(例えばフレームなど)、商品Ctと隣の商品との隙間、店舗の壁、柱などである。このような非注視対象物体の位置に、特定のクラスタ内の複数の視線位置が対応する場合は、当該クラスタ内の複数の視線位置は、商品Ctを注視しているときの視線位置に対応する可能性が高い。これは、非注視対象物体をユーザSが注視するのは不自然であるためである。この点を考慮して、例えば、ステップS1910で、補正値算出部12は、商品Ct周辺の非注視対象物体の位置に対応する複数の視線位置を有するクラスタを選択してもよい。
図20は、ステップS1912で抽出される複数の視線位置及び商品Ctの位置関係とキャリブレーションの必要性との関係を示す図である。図20には、仮想平面M(図示せず)上における複数の視線位置P1〜P7及び商品Ctが模式的に示されている。複数の視線位置P1〜P7は、ステップS1912で抽出される複数の視線位置の一例であるとする。
図20(A)に示す例では、ステップS1912で抽出される複数の視線位置P1〜P7は、図20(B)に示す例に比べて、商品Ctから離れた位置にあり、且つ、広がりが小さい。図20(A)に示す例に示すような複数の視線位置P1〜P7がステップS1912で抽出された場合は、図20(B)に示す例に比べて、キャリブレーションの必要性が高い。これは、上述の如く、複数の視線位置P1〜P7は、ユーザSが商品Ctを注視しているときの視線位置である可能性が高い傾向であるためである。また、広がりが小さいので、補正値を比較的高い精度で算出できるためである。他方、図20(B)に示す例では、広がりが多く、補正値を比較的高い精度で算出できる可能性が低い。尚、図20(B)に示す例では、複数の視線位置P1〜P7は、商品Ctの近傍に位置するため、ステップS902の判定結果が肯定判定となる可能性がある(補正値が算出されない可能性がある)。
次に、図21乃至図30を参照して、1つの視線センサ20により複数の商品をカバーする方法について説明する。
図21は、視線センサ20と3つの商品C1乃至C3の位置関係の一例を示す上面図である。図22は、図21に示す例で使用される商品位置データベース14内のデータの一例を示す図である。
図21に示す例では、商品C1は、視線センサ20と同一の位置に配置され、商品C2は、視線センサ20に対してX軸方向でx2だけオフセットした位置に配置されている。また、商品C3は、視線センサ20に対してX軸方向で−x3だけオフセットし且つZ軸方向のz3だけオフセットした位置に配置されている。図22には、視線センサ20の位置を原点としたときの各商品C1乃至C3の位置情報が示される。
この場合、視線位置特定部11は、図6に示した処理において、商品C1及び商品C2用に、Z=0における仮想平面上の視線位置を算出する一方、商品C3用に、Z=z3における仮想平面上の視線位置を算出する。また、補正値算出部12は、図9に示した処理において、Z=0における仮想平面上の複数の視線位置、及び、Z=z3における仮想平面上の複数の視線位置を、それぞれ別々に抽出してステップS902以降の処理を別々に実行する。Z=0における仮想平面上の複数の視線位置に対しては、ユーザSが注視しうる商品は、商品C1及び商品C2の2つある。従って、ステップS906において、補正値算出部12は、抽出した複数の視線位置が、商品C1及び商品C2のいずれに対応するかを判定してよい。この際、補正値算出部12は、抽出した複数の視線位置の重心位置と、商品C1及び商品C2の各位置との関係に基づいて、抽出した複数の視線位置の重心位置が近い方の商品に対応付けてよい。
図23は、想定シーンの他の一例を示す図である。図23に示す例では、商品棚202の上下に2つの商品C1,C2が配置されている。ここでは、視線センサ20のカメラ21が、商品C1,C2を注視するユーザSを撮像するように設けられているものとする。尚、この場合、カメラ21(図示せず)は、例えば商品C1,C2の近傍に配置され、Z軸の正方向に視線方向を有する。また、ユーザS(図示せず)は、商品C1,C2よりもZ軸の正方向側の位置から、商品C1,C2を注視するものとする。また、ここでは、説明の複雑化を防止するための都合上、商品C1,C2の商品位置は同一のZ座標を有するものとするが、異なるZ座標を有してもよい。また、商品C3をZ=0の他の商品と同一の仮想平面上に存在するように仮定した上で、抽出した複数の視線位置と、各商品を対応付けてもよい。
図24は、視線位置検出装置100により実行される補正値データベース生成処理の他の一例を示すフローチャートである。図24に示す処理は、例えば図23に示すシーンに適用できる。以下では、図25乃至図27の説明図は、図23に示すシーンに関する例を示す。
ステップS2400では、補正値算出部12は、複数のクラスタ(それに伴い各クラスタ内の複数の視線位置)を抽出する。この方法については後述する。図25は、クラスタと複数の視線位置との関係の説明図であり、(A)には、仮想平面M上の複数の視線位置Pが×印で示されており、(B)には、仮想平面M上の複数の視線位置Pから抽出されたクラスタQ1,Q2が模式的に示されている。
ステップS2402では、補正値算出部12は、各クラスタ(それに伴い各クラスタ内の複数の視線位置)を商品位置データベース14内の各商品に対応付ける。補正値算出部12は、あるクラスタ内の複数の視線位置に最も近い位置情報を持つ商品を、当該クラスタ内の複数の視線位置に対応付けるのではなく、クラスタ間の位置関係と、商品間の位置関係との関係に基づいて、対応付けを行う。対応付け方法の例は後述する。例えば図26には、仮想平面M(図示せず)上におけるクラスタQ1,Q2と商品C1,C2に係る商品領域とが模式的に示されている。ここでは、補正値算出部12は、各クラスタQ1,Q2内の複数の視線位置を、商品位置データベース14内の商品C1、C2にそれぞれ対応付けることができた場合を想定する。尚、かかる対応付けができない場合は、ステップS2400に戻り、クラスタリング方法を変更して再度ステップS2402を実行してもよい。
ステップS2404では、補正値算出部12は、各クラスタ内の複数の視線位置を、対応する各商品の位置に整合させる補正値を算出する。例えば、図23に示すシーンにおいては、補正値算出部12は、図27に示すように、クラスタQ1内の複数の視線位置を商品C1の位置に整合させ且つクラスタQ2内の複数の視線位置を商品C2の位置に整合させる補正値を算出する。補正値は、図27に示すように、クラスタ間で同一のベクトルHであってよい。図27に示す例では、ベクトルHで移動された場合のクラスタQ1、Q2が、それぞれ符号Q1'、Q2'で示されている。補正方法は、任意であり、上述した方法が利用されてもよい。例えば、補正値算出部12は、各クラスタ(外接矩形、外接円や重心位置など)を各々同様に移動させた際に、各商品の位置や、各商品の位置の重心位置に、各クラスタがより重畳することとなる移動ベクトルを、補正値として求めてよい。あるいは、補正値算出部12は、各クラスタ(外接矩形、外接円や重心位置など)を各々同様に移動させた際に、各商品の位置や、各商品の位置の重心位置に、各クラスタがより近接することとなる移動ベクトルを、補正値として求めてもよい。あるいは、補正値算出部12は、各クラスタの外接矩形や外接円の中心又は重心が各商品領域内に含まれることとなる移動ベクトルを、補正値として求めてもよい。或いは、補正値算出部12は、各商品領域の中心又は重心が各クラスタの外接矩形や外接円内に含まれることとなる移動ベクトルを、補正値として求めてもよい。或いは、補正値算出部12は、各商品領域の中心又は重心と各クラスタの外接矩形や外接円の中心又は重心との各距離の総和が最小となることとなる移動ベクトルを、補正値として求めてもよい。或いは、補正値算出部12は、これらの方法を任意に組み合わせて補正値を算出してもよい。
ステップS2406では、補正値算出部12は、ステップS2404で算出した補正値を補正値データベース18に記憶する。この処理自体は、上述したステップS910の処理と同様であってよい。
図24に示す処理によれば、図23に示すシーンのように商品棚に複数の商品がある場合など、ユーザSの視線が向くであろう箇所を一か所に特定できない場合でも、補正値を算出することが可能である。その結果、補正値を用いたキャリブレーションが可能になる(図10参照)。
尚、図24に示す処理では、補正値算出部12は、各クラスタ(それに伴い各クラスタ内の複数の視線位置)を商品位置データベース14内の各商品に対応付けるが、かかる対応付けは省略されてもよい。補正値算出部12は、各クラスタの位置を同様に移動させた際に、各クラスタの位置が、より物体の位置に重畳することになる又は近づくことになる補正値を求めてもよい。
図28は、補正値算出部12により実行される視線位置選別処理の他の一例を示すフローチャートである。図28に示す処理は、図24に示したステップS2400の処理の一例として実行される。
ステップS2800では、補正値算出部12は、視線位置データベース13内から同一のユーザに係る複数の視線位置を初期的に抽出する。
ステップS2802では、補正値算出部12は、ステップS2800で初期的に抽出した全ての視線位置を、各位置に基づいてクラスタリングする。ステップS2802の処理は、上述のステップS1902の処理と同様であってよい。
ステップS2804では、補正値算出部12は、ステップS2802でのクラスタリングで得られる複数のクラスタに対して、各クラスタ内の視線位置の数、即ち各クラスタを形成する視線位置の数をカウントする。
ステップS2806では、補正値算出部12は、ステップS2804でのカウント結果に基づいて、含まれる視線位置の数が所定閾値以上であるクラスタを抽出する。尚、予め抽出すべきクラスタの数が決まっている場合は、補正値算出部12は、視線位置の数が所定閾値以上である複数のクラスタから、決まった数のクラスタを、含まれる視線位置の数が最も多い順から抽出する。例えば図23に示すシーンでは、補正値算出部12は、視線位置の数が所定閾値以上である複数のクラスタから、2つクラスタを、含まれる視線位置の数が最も多い順から抽出する。
図28に示す処理によれば、上述した図19に示す処理と同様、互いに対して比較的近接した視線位置のみを抽出するので、ユーザSが商品を注視しているときの視線位置である可能性が高い複数の視線位置のみを抽出できる。また、図28に示す処理によれば、ユーザSが商品を注視しているときの視線位置である可能性が高い複数の視線位置をそれぞれ含む複数のクラスタを抽出できる。
尚、図28に示す処理では、視線位置に基づいて複数の視線位置をクラスタリングしているが、これに限られない。例えば、補正値算出部12は、複数の視線位置を取得した時間を参照し、視線位置の時系列の動きや速度に基づいて、ユーザSが商品を注視しているときの視線位置である可能性が高い視線位置のみを抽出してもよい。例えば、補正値算出部12は、ある時間に取得した視線位置と、その時間から所定時間内に取得をした視線位置が、所定の距離内であれば、その視線位置の近傍を注視していた(なんらかの商品を見ていた)と判断する。この場合、補正値算出部12は、これらの視線位置を用いてクラスタリングを行うこととしてよい。他方、補正値算出部12は、ある時間に取得した視線位置と、その時間から所定時間内に取得をした視線位置が、所定の距離内でなければ、何かを注視していた際の視線ではない(商品を見ていた際の視線位置ではない)と判断する。この場合、補正値算出部12は、これらの視線位置を破棄し、その他の視線位置を用いてクラスタリングを行うこととしてよい。
図29は、対応付け処理の一例を示すフローチャートである。図29に示す処理は、図4に示したステップS2406の処理の一例として実行される。以下では、図23に示すシーンにおいて、2つのクラスタに係る複数の視線位置が抽出された場合を想定する。ここでは、2つのクラスタを第1クラスタQ1及び第2クラスタQ2と称する。
ステップS2900では、補正値算出部12は、ステップS900で抽出した第1クラスタQ1及び第2クラスタQ2に係る複数の視線位置の重心位置を、クラスタごとに算出する。また、補正値算出部12は、商品位置データベース14を参照して、第1クラスタQ1及び第2クラスタQ2のそれぞれに係る重心位置と、商品C1,C2の各位置との間の各距離D11,D12,D21,D22を算出する。図25に示すように、距離D11は、第1クラスタQ1に係る重心位置と商品C1との間の距離であり、距離D12は、第1クラスタQ1に係る重心位置と商品C2との間の距離である。また、距離D21は、第2クラスタQ2に係る重心位置と商品C1との間の距離であり、距離D22は、第2クラスタQ2に係る重心位置と商品C2との間の距離である。
ステップS2902乃至ステップS2906では、補正値算出部12は、商品対応規則データベース16を参照して、ステップS900で抽出した複数の視線位置を、商品位置データベース14内の商品に対応付ける。ここでは、商品対応規則データベース16には、ステップS2902に示すような関係式が記憶されているものとする。
具体的には、ステップS2902では、補正値算出部12は、ステップS2900で算出した距離D11,D12,D21,D22が、D11+D22≦D12+D21なる関係を満たすか否かを判定する。D11+D22≦D12+D21なる関係を満たす場合は、ステップS2904に進み、それ以外の場合は、ステップS2906に進む。
ステップS2904では、補正値算出部12は、第1クラスタQ1内の複数の視線位置を商品位置データベース14内の商品C1に対応付けると共に、第2クラスタQ2内の複数の視線位置を商品位置データベース14内の商品C2に対応付ける。
ステップS2906では、補正値算出部12は、第1クラスタQ1内の複数の視線位置を商品位置データベース14内の商品C2に対応付けると共に、第2クラスタQ2内の複数の視線位置を商品位置データベース14内の商品C1に対応付ける。
図29に示す処理によれば、図23に示すような2つの商品C1,C2が上下に配置されているシーンにおいても、各クラスタ内の複数の視線位置を、2つの商品C1,C2のいずれかに精度良く対応付けることができる。
尚、図29に示す処理では、図23に示すような2つの商品C1,C2が上下に配置されているシーンを想定しているが、2つの商品C1,C2が左右に配置されているシーンにも同様に適用可能である。また、3つ以上の商品が上下や左右に配置されているシーンにも適用可能である。
また、図29に示す処理では、ステップS2902では、補正値算出部12は、D11+D22≦D12+D21なる関係を満たすか否かを判定しているが、他の方法で対応付けしてもよい。例えば、第1クラスタQ1に係る重心位置と第2クラスタQ2に係る重心位置との距離が、商品C1と商品C2との間の距離と略一致した場合に、商品C1,C2に第1クラスタQ1及び第2クラスタQ2を対応付けてもよい。この場合、補正値算出部12は、第1クラスタQ1及び第2クラスタQ2のうちの重心位置のY座標の大きい方のクラスタを、商品C2に対応付け、Y座標の小さい方のクラスタを、商品C1に対応付ければよい。
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
例えば、上述した説明では、ユーザSは、人が想定されているが、ユーザSは、ゴリラや猿などの人以外の動物であってもよい。
また、上述した実施例では、ユーザSごとの個人差を考慮するために、補正値算出部12は、ユーザSごとの複数の視線位置を用いて補正値を算出しているが、複数のユーザSに係る複数の視線位置を用いて補正値を算出してもよい。これにより、あるユーザSに係る複数の視線位置を用いて算出した補正値を、他のユーザSに係る視線位置の算出の際に利用できるので、補正値の使用機会を増加できる。但し、ユーザSごとの補正値を算出する構成において、キャリブレーション処理部11bは、新たなユーザSに対して、当該新たなユーザSに係る補正値が補正値算出部12により算出されるまでは、他のユーザSに係る補正値を用いて補正することとしてもよい。
また、上述した説明では、ユーザSの注視対象となる物体は、商品であったが、商品以外の物体(商取引の対象とならない物体)であってもよい。例えば、ユーザSの注視対象となる物体は、ポスター、広告、絵画、彫刻、画像、建造物等であってよい。また、ユーザSの注視対象となる物体は、ディスプレイ、携帯型端末、装着型端末などの画面に表示されるコンテンツであってもよい。
また、上述した説明では、ユーザSの注視対象となる物体は、商品棚に陳列できるような商品であったが、商品のサイズや形状等は任意であるし、商品の陳列方法も任意である。
また、上述した説明では、仮想平面Mは、ユーザSの注視対象となる物体の位置(座標)を含むが、仮想平面Mは、商品位置データベース14に基づく商品の位置(Z座標)を必ずしも含む必要はない。例えば、仮想平面Mは、商品位置データベース14に基づく商品の位置(Z座標)を所定値だけZ軸正方向にオフセットした位置を含むように設定されてもよい。所定値は、商品のZ方向の長さの半分等であってもよい。
また、上述した説明では、仮想平面Mは、鉛直平面であるが、鉛直平面に対して傾斜していてもよい。
また、上述した実施例では、視線位置特定部11が算出した視線位置を視線位置データベース13に記憶(蓄積)し、補正値算出部12が視線位置データベース13から複数の視線位置を取り出しているが、これに限られない。例えば、視線ベクトル取得部10が取得した視線ベクトルを記憶(蓄積)するデータベースを備え、視線位置特定部11が当該データベースから複数の視線ベクトルを取り出して複数の視線位置を一括的に算出してもよい。この場合、補正値算出部12は、視線位置特定部11が一括的に算出した複数の視線位置(第1又は第2の複数の視線位置の他の一例)を用いて上述した処理を行うこととしてよい。
また、上述した実施例では、視線位置特定部11は視線ベクトルから視線位置を算出(特定)しているが、視線位置は任意の方法で取得すればよく、視線ベクトル取得部や視線ベクトルから視線位置を算出する処理は、視線位置を取得する方法の一形態である。
また、上述した実施例では、補正値算出部12は、複数の視線位置をX方向及びY方向の双方で商品の位置に整合させる補正値を算出しているが、複数の視線位置をX方向及びY方向のいずれか一方のみで商品の位置に整合させる補正値を算出してもよい。例えば、図11に示すようなシーンにおいて、商品Ctが1つでなくX方向に複数個並んでいる場合、X方向のどの商品CtをユーザSが注視しているかを判断することは困難な場合がある。この場合、補正値算出部12は、複数の視線位置をY方向のみで商品の位置に整合させる補正値を算出してもよい。
なお、以上の実施例に関し、さらに以下の付記を開示する。
(付記1)
注視対象となる物体の位置情報を記憶する物体位置記憶部と、
被写体の視線位置を特定する視線位置特定部と、
前記視線位置特定部が特定した第1の複数の視線位置と、前記物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する補正値算出部とを含む、視線位置検出装置。
(付記2)
前記補正値算出部は、前記第1の複数の視線位置の位置と前記位置情報が示す前記物体の位置との間のずれ量を前記補正値として算出する、付記1に記載の視線位置検出装置。
(付記3)
前記補正値算出部は、前記第1の複数の視線位置に外接する領域を、前記位置情報に基づく前記物体の存在領域を表す領域へと変換する変換行列を前記補正値として算出する、付記1に記載の視線位置検出装置。
(付記4)
前記補正値算出部は、前記位置情報に基づく前記物体の存在領域と同一の形状及びサイズの仮想領域が、前記第1の複数の視線位置のうちの最大数の視線位置を含む位置を探索し、前記仮想領域が前記第1の複数の視線位置のうちの最大数の視線位置を含む位置にあるときの前記仮想領域の所定基準位置と、前記物体の存在領域の対応する所定基準位置との間のずれ量を前記補正値として算出する、付記1に記載の視線位置検出装置。
(付記5)
前記補正値算出部は、前記第1の複数の視線位置の数以上の数の第2の複数の視線位置であって、前記視線位置特定部が特定した前記第2の複数の視線位置を各視線位置に基づいてクラスタリングし、クラスタリングにより得られる複数のクラスタのうちから、最大数の視線位置を含むクラスタを選択し、選択したクラスタに含まれる複数の視線位置を前記第1の複数の視線位置として、前記補正値を算出する、付記1〜4のうちのいずれか1項に記載の視線位置検出装置。
(付記6)
前記補正値算出部は、選択したクラスタに含まれる複数の視線位置の数が所定閾値未満である場合、前記位置情報が示す前記物体の位置に最も近いクラスタを再選択し、再選択したクラスタに含まれる複数の視線位置を前記第1の複数の視線位置として、前記補正値を算出する、付記5に記載の視線位置検出装置。
(付記7)
前記補正値算出部は、前記第1の複数の視線位置が、前記位置情報が示す前記物体の存在領域に対応しない場合に、前記補正値を算出する、付記1に記載の視線位置検出装置。
(付記8)
前記物体の周辺に位置する前記被写体の注視対象とならない非注視対象物体の位置情報を記憶する非注視物体位置記憶部を更に含み、
前記補正値算出部は、前記第1の複数の視線位置が、前記物体位置記憶部に記憶された前記位置情報が示す前記物体の存在領域に対応せず、且つ、前記第1の複数の視線位置が、前記非注視物体位置記憶部に記憶された前記位置情報が示す前記非注視対象物体の存在領域に対応する場合に、前記補正値を算出する、付記1に記載の視線位置検出装置。
(付記9)
注視対象となる複数の物体の位置情報を記憶する物体位置記憶部と、
被写体の視線位置を特定する視線位置特定部と、
前記視線位置特定部が特定した複数の視線位置を各視線位置に基づいてクラスタリングし、クラスタリングにより得られる複数のクラスタを、対応する各物体の位置に同時に整合させる補正値を算出する補正値算出部とを含む、視線位置検出装置。
(付記10)
前記視線位置特定部が前記被写体の視線位置を特定することは、前記補正値算出部により算出された前記補正値に基づいて、特定した前記視線位置を補正することを含む、付記1〜9のうちのいずれか1項に記載の視線位置検出装置。
(付記11)
前記視線位置特定部は、視線ベクトルに基づいて、前記物体が位置する仮想平面上における前記被写体の視線位置を算出し、
前記仮想平面は、前記位置情報が示す前記物体の位置を含む鉛直平面である、付記1〜10のうちのいずれか1項に記載の視線位置検出装置。
(付記12)
前記視線位置特定部は、前記被写体及び前記物体間の距離に更に基づいて、前記仮想平面から前記被写体及び前記物体間の距離だけ前記仮想平面の面直方向に離れた位置に、前記仮想平面の面直方向における前記視線ベクトルの始点を想定して、前記第1の複数の視線位置を算出する、付記11に記載の視線位置検出装置。
(付記13)
前記視線位置特定部は、前記被写体及び前記物体間の距離を、前記撮影画像に基づく前記被写体の瞳孔間距離に基づいて算出する、付記12に記載の視線位置検出装置。
(付記14)
前記補正値算出部は、クラスタリングにより得られる複数のクラスタを、前記物体位置記憶部に位置情報が記憶される複数の物体のそれぞれに対応付け、各クラスタ内に含まれる複数の視線位置を、対応する各物体の位置に同時に整合させる補正値を算出する、付記9に記載の視線位置検出装置。
(付記15)
前記物体は、商品棚に陳列される商品である、付記1〜14のうちのいずれか1項に記載の視線位置検出装置。
(付記16)
被写体の視線位置を特定し、
特定した第1の複数の視線位置と、注視対象となる物体の位置情報を記憶する物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出することを含む、コンピューターにより実行される視線位置検出方法。
(付記17)
被写体の視線位置を特定し、
特定した第1の複数の視線位置と、注視対象となる物体の位置情報を記憶する物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する、
処理をコンピューターに実行させる視線位置検出プログラム。
(付記18)
カメラと、
前記カメラによる被写体の眼の撮影画像に基づいて、視線ベクトルを算出する視線ベクトル算出装置と、
前記視線ベクトル算出装置により算出された前記被写体の視線ベクトルを取得する視線ベクトル取得部と、
前記被写体の注視対象となる物体の位置情報を記憶する物体位置記憶部と、
前記視線ベクトルに基づいて、前記物体が位置する仮想平面上における前記被写体の視線位置を算出する視線位置特定部と、
前記視線位置特定部により算出された第1の複数の視線位置と、前記物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する補正値算出部とを含む、視線位置検出システム。
(付記19)
付記1〜18のうちのいずれか1項において、前記複数の視線位置は、同一ユーザに係る視線位置である。
1 視線位置検出システム
10 視線ベクトル取得部
11 視線位置特定部
12 補正値算出部
13 視線位置データベース
14 商品位置データベース
15 非商品位置データベース
18 補正値データベース
20 視線センサ
21 カメラ
22 視線ベクトル算出装置
100 視線位置検出装置

Claims (10)

  1. 注視対象となる物体の位置情報を記憶する物体位置記憶部と、
    被写体の視線位置を特定する視線位置特定部と、
    前記視線位置特定部が特定した第1の複数の視線位置と、前記物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する補正値算出部とを含む、視線位置検出装置。
  2. 前記補正値算出部は、前記第1の複数の視線位置の位置と前記位置情報が示す前記物体の位置との間のずれ量を前記補正値として算出する、請求項1に記載の視線位置検出装置。
  3. 前記補正値算出部は、前記第1の複数の視線位置に外接する領域を、前記位置情報に基づく前記物体の存在領域を表す領域へと変換する変換行列を前記補正値として算出する、請求項1に記載の視線位置検出装置。
  4. 前記補正値算出部は、前記位置情報に基づく前記物体の存在領域と同一の形状及びサイズの仮想領域が、前記第1の複数の視線位置のうちの最大数の視線位置を含む位置を探索し、前記仮想領域が前記第1の複数の視線位置のうちの最大数の視線位置を含む位置にあるときの前記仮想領域の所定基準位置と、前記物体の存在領域の対応する所定基準位置との間のずれ量を前記補正値として算出する、請求項1に記載の視線位置検出装置。
  5. 前記補正値算出部は、前記第1の複数の視線位置の数以上の数の第2の複数の視線位置であって、前記視線位置特定部が特定した前記第2の複数の視線位置を各視線位置に基づいてクラスタリングし、クラスタリングにより得られる複数のクラスタのうちから、最大数の視線位置を含むクラスタを選択し、選択したクラスタに含まれる複数の視線位置を前記第1の複数の視線位置として、前記補正値を算出する、請求項1〜4のうちのいずれか1項に記載の視線位置検出装置。
  6. 前記物体の周辺に位置する前記被写体の注視対象とならない非注視対象物体の位置情報を記憶する非注視物体位置記憶部を更に含み、
    前記補正値算出部は、前記第1の複数の視線位置が、前記物体位置記憶部に記憶された前記位置情報が示す前記物体の存在領域に対応せず、且つ、前記第1の複数の視線位置が、前記非注視物体位置記憶部に記憶された前記位置情報が示す前記非注視対象物体の存在領域に対応する場合に、前記補正値を算出する、請求項1に記載の視線位置検出装置。
  7. 注視対象となる複数の物体の位置情報を記憶する物体位置記憶部と、
    被写体の視線位置を特定する視線位置特定部と、
    前記視線位置特定部が特定した複数の視線位置を各視線位置に基づいてクラスタリングし、クラスタリングにより得られる複数のクラスタを、対応する各物体の位置に同時に整合させる補正値を算出する補正値算出部とを含む、視線位置検出装置。
  8. 前記視線位置特定部が前記被写体の視線位置を特定することは、前記補正値算出部により算出された前記補正値に基づいて、特定した前記視線位置を補正することを含む、請求項1〜7のうちのいずれか1項に記載の視線位置検出装置。
  9. 被写体の視線位置を特定し、
    特定した第1の複数の視線位置と、注視対象となる物体の位置情報を記憶する物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出することを含む、コンピューターにより実行される視線位置検出方法。
  10. 被写体の視線位置を特定し、
    特定した第1の複数の視線位置と、注視対象となる物体の位置情報を記憶する物体位置記憶部に記憶された前記位置情報とに基づいて、前記第1の複数の視線位置を前記位置情報が示す前記物体の位置に整合させる補正値を算出する、
    処理をコンピューターに実行させる視線位置検出プログラム。
JP2014204274A 2014-10-02 2014-10-02 視線位置検出装置、視線位置検出方法及び視線位置検出プログラム Expired - Fee Related JP6547268B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2014204274A JP6547268B2 (ja) 2014-10-02 2014-10-02 視線位置検出装置、視線位置検出方法及び視線位置検出プログラム
US14/836,284 US9913578B2 (en) 2014-10-02 2015-08-26 Eye gaze detecting device and eye gaze detection method
EP15182720.1A EP3002662B1 (en) 2014-10-02 2015-08-27 Device and method for correcting a detected eye gaze position
EP16168533.4A EP3070580B1 (en) 2014-10-02 2015-08-27 Eye gaze detecting device and eye gaze detection method
CA2902684A CA2902684C (en) 2014-10-02 2015-09-01 Eye gaze detecting device and eye gaze detection method
AU2015221480A AU2015221480B2 (en) 2014-10-02 2015-09-02 Eye gaze detecting device and eye gaze detection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014204274A JP6547268B2 (ja) 2014-10-02 2014-10-02 視線位置検出装置、視線位置検出方法及び視線位置検出プログラム

Publications (2)

Publication Number Publication Date
JP2016073357A true JP2016073357A (ja) 2016-05-12
JP6547268B2 JP6547268B2 (ja) 2019-07-24

Family

ID=54010976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014204274A Expired - Fee Related JP6547268B2 (ja) 2014-10-02 2014-10-02 視線位置検出装置、視線位置検出方法及び視線位置検出プログラム

Country Status (5)

Country Link
US (1) US9913578B2 (ja)
EP (2) EP3070580B1 (ja)
JP (1) JP6547268B2 (ja)
AU (1) AU2015221480B2 (ja)
CA (1) CA2902684C (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019017988A (ja) * 2017-07-18 2019-02-07 富士通株式会社 視線位置検出プログラム、視線位置検出装置及び視線位置検出方法
JP2019113889A (ja) * 2017-12-20 2019-07-11 ヤフー株式会社 算出装置、算出方法、及び算出プログラム
DE102019128839A1 (de) 2018-10-29 2020-04-30 Aisin Seiki Kabushiki Kaisha Gerät zur Bestimmung des visuellen Bestätigungsziels

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6287486B2 (ja) * 2014-03-31 2018-03-07 富士通株式会社 情報処理装置、方法及びプログラム
JP2016046642A (ja) * 2014-08-21 2016-04-04 キヤノン株式会社 情報処理システム、情報処理方法及びプログラム
JP6553418B2 (ja) * 2015-06-12 2019-07-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 表示制御方法、表示制御装置及び制御プログラム
JP6266675B2 (ja) * 2016-03-18 2018-01-24 株式会社Subaru 捜索支援装置、捜索支援方法及び捜索支援プログラム
WO2017179279A1 (ja) * 2016-04-12 2017-10-19 パナソニックIpマネジメント株式会社 視線測定装置および視線測定方法
US9874934B1 (en) 2016-07-29 2018-01-23 International Business Machines Corporation System, method, and recording medium for tracking gaze with respect to a moving plane with a camera with respect to the moving plane
US20180356885A1 (en) * 2017-06-10 2018-12-13 Tsunami VR, Inc. Systems and methods for directing attention of a user to virtual content that is displayable on a user device operated by the user
US11232687B2 (en) 2017-08-07 2022-01-25 Standard Cognition, Corp Deep learning-based shopper statuses in a cashier-less store
US11200692B2 (en) 2017-08-07 2021-12-14 Standard Cognition, Corp Systems and methods to check-in shoppers in a cashier-less store
US10853965B2 (en) * 2017-08-07 2020-12-01 Standard Cognition, Corp Directional impression analysis using deep learning
US10474991B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Deep learning-based store realograms
US11250376B2 (en) 2017-08-07 2022-02-15 Standard Cognition, Corp Product correlation analysis using deep learning
US10650545B2 (en) 2017-08-07 2020-05-12 Standard Cognition, Corp. Systems and methods to check-in shoppers in a cashier-less store
US10474988B2 (en) 2017-08-07 2019-11-12 Standard Cognition, Corp. Predicting inventory events using foreground/background processing
US10534982B2 (en) * 2018-03-30 2020-01-14 Tobii Ab Neural network training for three dimensional (3D) gaze prediction with calibration parameters
US10552986B1 (en) * 2018-07-20 2020-02-04 Banuba Limited Computer systems and computer-implemented methods configured to track multiple eye-gaze and heartrate related parameters during users' interaction with electronic computing devices
US11179035B2 (en) 2018-07-25 2021-11-23 Natus Medical Incorporated Real-time removal of IR LED reflections from an image
US11232575B2 (en) 2019-04-18 2022-01-25 Standard Cognition, Corp Systems and methods for deep learning-based subject persistence
JP6755529B1 (ja) * 2019-11-21 2020-09-16 株式会社スワローインキュベート 情報処理方法、情報処理装置、及び制御プログラム
US11303853B2 (en) 2020-06-26 2022-04-12 Standard Cognition, Corp. Systems and methods for automated design of camera placement and cameras arrangements for autonomous checkout
US11361468B2 (en) 2020-06-26 2022-06-14 Standard Cognition, Corp. Systems and methods for automated recalibration of sensors for autonomous checkout
CN111857333B (zh) * 2020-06-29 2022-09-13 维沃移动通信有限公司 眼动追踪方法、装置及电子设备
JP2023003735A (ja) * 2021-06-24 2023-01-17 キヤノン株式会社 視線検出装置、撮像装置、視線検出方法、プログラム、および、記憶媒体

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100147A (ja) * 1991-10-04 1993-04-23 Nikon Corp 視線検出装置を有するカメラ
JPH08280628A (ja) * 1995-04-20 1996-10-29 Canon Inc 視線検出機能を備えた電子機器
JPH09238905A (ja) * 1996-03-05 1997-09-16 Nissan Motor Co Ltd 視線方向計測装置
JPH11128170A (ja) * 1997-10-28 1999-05-18 Matsushita Electric Works Ltd 視点算出方法
JP2005261728A (ja) * 2004-03-19 2005-09-29 Fuji Xerox Co Ltd 視線方向認識装置及び視線方向認識プログラム
JP2010029262A (ja) * 2008-07-25 2010-02-12 Toyota Central R&D Labs Inc 視線計測装置及びプログラム
JP2011194105A (ja) * 2010-03-23 2011-10-06 Dainippon Printing Co Ltd 注視点計測装置、注視点計測方法、プログラムおよび記憶媒体
US20110310238A1 (en) * 2010-06-17 2011-12-22 Electronics And Telecommunications Research Institute Apparatus and method for inputting coordinates using eye tracking
US20140085198A1 (en) * 2012-09-26 2014-03-27 Grinbath, Llc Correlating Pupil Position to Gaze Location Within a Scene
JP2014067203A (ja) * 2012-09-26 2014-04-17 Kyocera Corp 電子機器、注視点検出プログラムおよび注視点検出方法
JP2014067102A (ja) * 2012-09-24 2014-04-17 Fujitsu Ltd 視線検出装置、視線検出用コンピュータプログラム及び表示装置
JP2014068947A (ja) * 2012-09-28 2014-04-21 Jvc Kenwood Corp 診断支援装置および診断支援方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3796019B2 (ja) 1997-09-02 2006-07-12 三洋電機株式会社 視線検出装置
US6578962B1 (en) * 2001-04-27 2003-06-17 International Business Machines Corporation Calibration-free eye gaze tracking
US6659611B2 (en) * 2001-12-28 2003-12-09 International Business Machines Corporation System and method for eye gaze tracking using corneal image mapping
CN101489467B (zh) * 2006-07-14 2011-05-04 松下电器产业株式会社 视线方向检测装置和视线方向检测方法
EP2150170B1 (en) * 2007-05-23 2016-05-11 Mirametrix Inc. Methods and apparatus for estimating point-of-gaze in three dimensions
ES2880475T3 (es) * 2009-04-01 2021-11-24 Tobii Ab Sistema de representación visual con iluminadores para el seguimiento de la mirada
JP5560858B2 (ja) 2010-04-02 2014-07-30 富士通株式会社 補正値算出装置、補正値算出方法および補正値算出プログラム
US8982160B2 (en) 2010-04-16 2015-03-17 Qualcomm, Incorporated Apparatus and methods for dynamically correlating virtual keyboard dimensions to user finger size
US8885882B1 (en) * 2011-07-14 2014-11-11 The Research Foundation For The State University Of New York Real time eye tracking for human computer interaction
WO2013059940A1 (en) 2011-10-27 2013-05-02 Tandemlaunch Technologies Inc. System and method for calibrating eye gaze data
EP2709060B1 (en) 2012-09-17 2020-02-26 Apple Inc. Method and an apparatus for determining a gaze point on a three-dimensional object
US9684827B2 (en) * 2014-03-26 2017-06-20 Microsoft Technology Licensing, Llc Eye gaze tracking based upon adaptive homography mapping

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100147A (ja) * 1991-10-04 1993-04-23 Nikon Corp 視線検出装置を有するカメラ
JPH08280628A (ja) * 1995-04-20 1996-10-29 Canon Inc 視線検出機能を備えた電子機器
JPH09238905A (ja) * 1996-03-05 1997-09-16 Nissan Motor Co Ltd 視線方向計測装置
JPH11128170A (ja) * 1997-10-28 1999-05-18 Matsushita Electric Works Ltd 視点算出方法
JP2005261728A (ja) * 2004-03-19 2005-09-29 Fuji Xerox Co Ltd 視線方向認識装置及び視線方向認識プログラム
JP2010029262A (ja) * 2008-07-25 2010-02-12 Toyota Central R&D Labs Inc 視線計測装置及びプログラム
JP2011194105A (ja) * 2010-03-23 2011-10-06 Dainippon Printing Co Ltd 注視点計測装置、注視点計測方法、プログラムおよび記憶媒体
US20110310238A1 (en) * 2010-06-17 2011-12-22 Electronics And Telecommunications Research Institute Apparatus and method for inputting coordinates using eye tracking
JP2014067102A (ja) * 2012-09-24 2014-04-17 Fujitsu Ltd 視線検出装置、視線検出用コンピュータプログラム及び表示装置
US20140085198A1 (en) * 2012-09-26 2014-03-27 Grinbath, Llc Correlating Pupil Position to Gaze Location Within a Scene
JP2014067203A (ja) * 2012-09-26 2014-04-17 Kyocera Corp 電子機器、注視点検出プログラムおよび注視点検出方法
JP2014068947A (ja) * 2012-09-28 2014-04-21 Jvc Kenwood Corp 診断支援装置および診断支援方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019017988A (ja) * 2017-07-18 2019-02-07 富士通株式会社 視線位置検出プログラム、視線位置検出装置及び視線位置検出方法
JP2019113889A (ja) * 2017-12-20 2019-07-11 ヤフー株式会社 算出装置、算出方法、及び算出プログラム
DE102019128839A1 (de) 2018-10-29 2020-04-30 Aisin Seiki Kabushiki Kaisha Gerät zur Bestimmung des visuellen Bestätigungsziels
US10977506B2 (en) 2018-10-29 2021-04-13 Aisin Seiki Kabushiki Kaisha Apparatus for determining visual confirmation target

Also Published As

Publication number Publication date
CA2902684A1 (en) 2016-04-02
EP3070580A1 (en) 2016-09-21
CA2902684C (en) 2019-04-02
AU2015221480A1 (en) 2016-04-21
AU2015221480B2 (en) 2017-06-15
JP6547268B2 (ja) 2019-07-24
US9913578B2 (en) 2018-03-13
EP3002662A1 (en) 2016-04-06
EP3070580B1 (en) 2018-07-18
US20160095511A1 (en) 2016-04-07
EP3002662B1 (en) 2017-10-25

Similar Documents

Publication Publication Date Title
JP6547268B2 (ja) 視線位置検出装置、視線位置検出方法及び視線位置検出プログラム
US10228763B2 (en) Gaze direction mapping
US9842255B2 (en) Calculation device and calculation method
US10331209B2 (en) Gaze direction mapping
US11042887B2 (en) Product exposure analysis in a shopping environment
KR20140104661A (ko) 시선 인식을 이용한 사용자 인터페이스 방법 및 장치
US9779699B2 (en) Image processing device, image processing method, computer readable medium
JP6604271B2 (ja) 注視位置検出装置、注視位置検出方法及び注視位置検出用コンピュータプログラム
US20220270287A1 (en) Eye gaze detection method, eye gaze detection device, and non-transitory computer readable storage medium
JP2012022538A (ja) 注目位置推定方法、画像表示方法、注目コンテンツ表示方法、注目位置推定装置および画像表示装置
JP2020027390A (ja) 注意対象推定装置及び注意対象推定方法
CN110832525A (zh) 在对象上的增强现实广告
US11269405B2 (en) Gaze direction mapping
CN111527466B (zh) 信息处理装置、信息处理方法和程序
CN111527466A (zh) 信息处理装置、信息处理方法和程序

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180612

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190610

R150 Certificate of patent or registration of utility model

Ref document number: 6547268

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees