JP6946831B2 - 人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法 - Google Patents

人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法 Download PDF

Info

Publication number
JP6946831B2
JP6946831B2 JP2017149344A JP2017149344A JP6946831B2 JP 6946831 B2 JP6946831 B2 JP 6946831B2 JP 2017149344 A JP2017149344 A JP 2017149344A JP 2017149344 A JP2017149344 A JP 2017149344A JP 6946831 B2 JP6946831 B2 JP 6946831B2
Authority
JP
Japan
Prior art keywords
image
person
line
partial image
sight direction
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.)
Active
Application number
JP2017149344A
Other languages
English (en)
Other versions
JP2019028843A (ja
Inventor
智浩 籔内
智浩 籔内
航一 木下
航一 木下
由紀子 柳川
由紀子 柳川
相澤 知禎
知禎 相澤
匡史 日向
匡史 日向
初美 青位
初美 青位
芽衣 上谷
芽衣 上谷
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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2017149344A priority Critical patent/JP6946831B2/ja
Priority to DE102018208920.5A priority patent/DE102018208920A1/de
Priority to CN201810601945.7A priority patent/CN109325396A/zh
Priority to US16/015,297 priority patent/US20190043216A1/en
Publication of JP2019028843A publication Critical patent/JP2019028843A/ja
Application granted granted Critical
Publication of JP6946831B2 publication Critical patent/JP6946831B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Ophthalmology & Optometry (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Biology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Geometry (AREA)
  • Surgery (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Biophysics (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Description

本発明は、画像中の人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法に関する。
近年、運転者がよそ見をしていることに応じて車両を安全な場所に停車させる、ユーザの視線を利用してポインティング操作を行う等の人物の視線を利用した様々な制御方法が提案されており、これらの制御方法を実現するために人物の視線方向を推定する技術が開発されている。この人物の視線方向を推定する簡易な方法の一つとして、人物の顔が写る画像を解析することで、当該人物の視線方向を推定する方法がある。
例えば、特許文献1には、画像中の人物の視線の向きを検出する視線検出方法が提案されている。具体的には、特許文献1で提案される視線検出方法では、全体画像の中から顔画像を検出し、検出した顔画像の目から複数の目特徴点を抽出すると共に、顔画像の顔を構成する部位から複数の顔特徴点を抽出する。そして、この視線検出方法では、抽出した複数の目特徴点を用いて目の向きを示す目特徴量を生成するとともに、複数の顔特徴点を用いて顔の向きを示す顔特徴量を生成し、生成した目特徴量及び顔特徴量を用いて視線の向きを検出する。特許文献1で提案される視線検出方法は、このような画像処理のステップを採用し、顔の向きと目の向きとを同時に計算して視線の向きを検出するようにすることで、人物の視線方向を効率的に検出することを目的としている。
特開2007−265367号公報
本件発明者らは、上記のような従来の画像処理により人物の視線方向を推定する方法には、次のような問題点があることを見出した。すなわち、視線方向は、人物の顔の向きと目の向きとの組み合わせにより定められる。従来の方法では、この人物の顔の向きと目の向きとを各特徴量により個別に検出しているため、顔の向きの検出誤差と目の向きの検出誤差とが重畳的に生じてしまう可能性がある。これによって、従来の方法では、人物の視線方向の推定精度が低下してしまう恐れがあるという問題点があることを本件発明者らは見出した。
本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、画像に写る人物の視線方向の推定精度を向上させることのできる技術を提供することである。
本発明は、上述した課題を解決するために、以下の構成を採用する。
すなわち、本発明の一側面に係る情報処理装置は、人物の視線方向を推定するための情報処理装置であって、人物の顔を含む画像を取得する画像取得部と、前記人物の目を含む部分画像を前記画像から抽出する画像抽出部と、視線方向を推定するための機械学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定部と、を備える。
人物の目を含む部分画像には、当該人物の顔の向きと目の向きとが表れ得る。当該構成では、機械学習により得られる学習済みの学習器の入力として、この人物の目を含む部分画像を利用することで、当該人物の視線方向を推定する。これにより、人物の顔の向きと目の向きとを個別に計算するのではなく、部分画像に表れ得る人物の視線方向を直接推定することができる。従って、当該構成によれば、顔の向きの推定誤差と目の向きの推定誤差とが蓄積するのを防ぐことができるため、画像に写る人物の視線方向の推定精度を向上させることができる。
なお、「視線方向」とは、対象の人物が見ている方向のことであり、当該人物の顔の向きと目の向きとの組み合わせによって定められる。また、「機械学習」とは、データ(学習データ)に潜むパターンをコンピュータにより見つけ出すことであり、「学習器」は、そのような機械学習により所定のパターンを識別する能力を獲得可能な学習モデルにより構成される。この学習器の種類は、部分画像から人物の視線方向を推定する能力を学習可能であれば、特に限定されなくてもよい。「学習済みの学習器」は、「識別器」又は「分類器」と称されてもよい。
上記一側面に係る情報処理装置において、前記画像抽出部は、前記部分画像として、前記人物の右目を含む第1部分画像と前記人物の左目を含む第2部分画像とを抽出してもよく、前記推定部は、前記第1部分画像及び前記第2部分画像を学習済みの前記学習器に入力することで、前記視線情報を前記学習器から取得してもよい。当該構成によれば、両目それぞれの部分画像を学習器の入力として利用することで、画像に写る人物の視線方向の推定精度を向上させることができる。
上記一側面に係る情報処理装置において、前記学習器は、ニューラルネットワークによって構成されてよく、前記ニューラルネットワークは、前記第1部分画像及び前記第2部分画像の両方が入力される入力層を含み、前記推定部は、前記第1部分画像及び前記第2部分画像を結合して結合画像を作成し、作成した結合画像を前記入力層に入力してもよい。当該構成によれば、ニューラルネットワークを用いることで、画像に写る人物の視線方向を推定可能な学習済みの学習器を適切かつ容易に構築することができる。
上記一側面に係る情報処理装置において、前記学習器は、ニューラルネットワークによって構成されてよく、前記ニューラルネットワークは、第1部分と、第2部分と、当該第1部分及び第2部分の各出力を結合する第3部分を含んでもよく、前記第1部分と前記第2部分とは並列に配置されてもよく、前記推定部は、前記第1部分画像を前記第1部分に入力し、前記第2部分画像を前記第2部分に入力してもよい。当該構成によれば、ニューラルネットワークを用いることで、画像に写る人物の視線方向を推定可能な学習済みの学習器を適切かつ容易に構築することができる。なお、この場合、前記第1部分は、1又は複数の畳み込み層及びプーリング層により構成されてよい。前記第2部分は、1又は複数の畳み込み層及びプーリング層により構成されてよい。前記第3部分は、1又は複数の畳み込み層及びプーリング層により構成されてよい。
上記一側面に係る情報処理装置において、前記画像抽出部は、前記画像において、前記人物の顔の写る顔領域を検出し、前記顔領域において、前記顔の器官の位置を推定し、推定した前記器官の位置に基づいて、前記部分画像を前記画像から抽出してもよい。当該構成によれば、人物の目を含む部分画像を適切に抽出することができ、画像に写る人物の視線方向の推定精度を向上させることができる。
上記一側面に係る情報処理装置において、前記画像抽出部は、前記顔領域において、少なくとも2つの前記器官の位置を推定し、推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出してもよい。当該構成によれば、2つの器官の間の距離を基準に、人物の目を含む部分画像を適切に抽出することができ、画像に写る人物の視線方向の推定精度を向上させることができる。
上記一側面に係る情報処理装置において、前記器官は、目尻、目頭、及び鼻を含んでもよく、前記画像抽出部は、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、前記目頭及び前記鼻の間の距離を基準に前記部分画像のサイズを決定してもよい。当該構成によれば、人物の目を含む部分画像を適切に抽出することができ、画像に写る人物の視線方向の推定精度を向上させることができる。
上記一側面に係る情報処理装置において、前記器官は、目尻及び目頭を含んでもよく、前記画像抽出部は、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、両目の前記目尻間の距離を基準に前記部分画像のサイズを決定してもよい。当該構成によれば、人物の目を含む部分画像を適切に抽出することができ、画像に写る人物の視線方向の推定精度を向上させることができる。
上記一側面に係る情報処理装置において、前記器官は、目尻及び目頭を含んでもよく、前記画像抽出部は、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、両目における前記目頭及び前記目尻の中点間の距離を基準に前記部分画像のサイズを決定してもよい。当該構成によれば、人物の目を含む部分画像を適切に抽出することができ、画像に写る人物の視線方向の推定精度を向上させることができる。
上記一側面に係る情報処理装置は、前記部分画像の解像度を低下させる解像度変換部を更に備えてもよく、前記推定部は、解像度を低下させた前記部分画像を学習済みの前記学習器に入力することで、前記視線情報を前記学習器から取得してもよい。当該構成によれば、解像度を低下させた部分画像を学習済みの学習器の入力として利用することで、当該学習器の演算処理の計算量を低減することができ、人物の視線方向を推定するのにかかるプロセッサの負荷を抑えることができる。
また、本発明の一側面に係る学習装置は、人物の目を含む部分画像、及び当該人物の視線方向を示す視線情報の組を学習データとして取得する学習データ取得部と、前記部分画像を入力すると前記視線情報に対応する出力値を出力するように学習器を学習させる学習処理部と、を備える。当該構成によれば、人物の視線方向を推定するのに利用する上記学習済みの学習器を構築することができる。
なお、上記各側面に係る情報処理装置及び学習装置それぞれの別の形態として、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記録したコンピュータその他装置、機械等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記録媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は化学的作用によって蓄積する媒体である。
例えば、本発明の一側面に係る推定方法は、人物の視線方向を推定するための推定方法であって、コンピュータが、人物の顔を含む画像を取得する画像取得ステップと、前記人物の目を含む部分画像を前記画像から抽出する画像抽出ステップと、視線方向を推定するための学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定ステップと、を実行する、情報処理方法である。
また、例えば、本発明の一側面に係る学習方法は、コンピュータが、人物の目を含む部分画像、及び当該人物の視線方向を示す視線情報の組を学習データとして取得するステップと、前記部分画像を入力すると前記視線情報に対応する出力値を出力するように学習器を学習させるステップと、を実行する、情報処理方法である。
本発明によれば、画像に写る人物の視線方向の推定精度を向上させることのできる技術を提供することができる。
図1は、本発明が適用される場面の一例を模式的に例示する。 図2は、視線方向を説明するための図である。 図3は、実施の形態に係る視線方向推定装置のハードウェア構成の一例を模式的に例示する。 図4は、実施の形態に係る学習装置のハードウェア構成の一例を模式的に例示する。 図5は、実施の形態に係る視線方向推定装置のソフトウェア構成の一例を模式的に例示する。 図6は、実施の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。 図7は、実施の形態に係る視線方向推定装置の処理手順の一例を例示する。 図8Aは、部分画像を抽出する方法の一例を例示する。 図8Bは、部分画像を抽出する方法の一例を例示する。 図8Cは、部分画像を抽出する方法の一例を例示する。 図9は、実施の形態に係る学習装置の処理手順の一例を例示する。 図10は、変形例に係る視線方向推定装置のソフトウェア構成の一例を模式的に例示する。 図11は、変形例に係る視線方向推定装置のソフトウェア構成の一例を模式的に例示する。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
§1 適用例
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本実施形態に係る視線方向推定装置1及び学習装置2の適用場面の一例を模式的に例示する。
図1に示されるとおり、本実施形態に係る視線方向推定装置1は、カメラ3により撮影した画像に写る人物Aの視線方向を推定するための情報処理装置である。具体的には、本実施形態に係る視線方向推定装置1は、カメラ3から人物Aの顔を含む画像を取得する。次に、視線方向推定装置1は、カメラ3から取得した画像から人物Aの目を含む部分画像を抽出する。
この部分画像は、人物Aの右目及び左目のうちの少なくとも一方を含むように抽出される。すなわち、1件の部分画像は、人物Aの両目を含むように抽出されてもよいし、人物Aの右目及び左目のうちのいずれか一方のみを含むように抽出されてもよい。
また、人物Aの右目及び左目のうちのいずれか一方のみを含むように部分画像を抽出する場合、右目及び左目のうちのいずれか一方のみを含む1件の部分画像のみを抽出するようにしてもよいし、右目を含む第1部分画像と左目を含む第2部分画像との2件の部分画像を抽出するようにしてもよい。本実施形態では、視線方向推定装置1は、人物Aの右目及び左目をそれぞれ個別に含む2件の部分画像(後述する第1部分画像1231及び第2部分画像1232)を抽出する。
そして、視線方向推定装置1は、視線方向を推定するための学習を行った学習済みの学習器(後述する畳み込みニューラルネットワーク5)に抽出した部分画像を入力することで、人物Aの視線方向を示す視線情報を当該学習器から取得する。これにより、視線方向推定装置1は、人物Aの視線方向を推定する。
ここで、図2を用いて、推定対象となる人物の「視線方向」について説明する。図2は、人物Aの視線方向を説明するための図である。視線方向とは、人物の見ている方向のことである。図2に示されるとおり、カメラ3の方向(図の「カメラ方向」)を基準に人物Aの顔の向きが規定される。また、人物Aの顔の向きを基準に目の向きが規定される。よって、カメラ3を基準とした人物Aの視線方向は、カメラ方向を基準とした人物Aの顔の向きと当該顔の向きを基準とした目の向きとの組み合わせによって規定される。本実施形態に係る視線方向推定装置1は、このような視線方向を上記の方法により推定する。
一方、本実施形態に係る学習装置2は、視線方向推定装置1で利用する学習器を構築する、すなわち、人物Aの目を含む部分画像の入力に応じて、当該人物Aの視線方向を示す視線情報を出力するように学習器の機械学習を行うコンピュータである。具体的には、学習装置2は、上記部分画像及び視線情報の組を学習データとして取得する。学習装置2は、これらのうちの部分画像を入力データとして利用し、視線情報を教師データ(正解データ)として利用する。つまり、学習装置2は、部分画像を入力すると視線情報に対応する出力値を出力するように学習器(後述する畳み込みニューラルネットワーク6)を学習させる。
これにより、視線方向推定装置1で利用する学習済みの学習器を作成することができる。視線方向推定装置1は、例えば、ネットワークを介して、学習装置2により作成された学習済みの学習器を取得することができる。なお、ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。
以上のとおり、本実施形態では、機械学習により得られる学習済みの学習器の入力として人物Aの目を含む部分画像を利用することで、当該人物Aの視線方向を推定する。人物Aの目を含む部分画像には、カメラ方向を基準とした顔の向きと顔の向きを基準とした目の向きとが表れるため、本実施形態によれば、人物Aの視線方向を適切に推定することができる。
また、本実施形態では、人物Aの顔の向きと目の向きとを個別に計算するのではなく、部分画像に表れる人物Aの視線方向を直接推定することができる。従って、本実施形態によれば、顔の向きの推定誤差と目の向きの推定誤差とが蓄積するのを防ぐことができるため、画像に写る人物Aの視線方向の推定精度を向上させることができる。
なお、このような視線方向推定装置1は、様々な場面で利用されてよい。例えば、本実施形態に係る視線方向推定装置1は、自動車に搭載され、運転者の視線方向を推定し、推定した視線方向に基づいて当該運転者がよそ見をしているか否かを判定するのに利用されてもよい。また、例えば、本実施形態に係る視線方向推定装置1は、ユーザの視線方向を推定し、推定した視線方向に基づいてポインティング操作を行うのに利用されてもよい。また、例えば、本実施形態に係る視線方向推定装置1は、工場の作業者の視線方向を推定し、推定した視線方向に基づいて当該作業者の作業の熟練度の推定に用いてもよい。
§2 構成例
[ハードウェア構成]
<視線方向推定装置>
次に、図3を用いて、本実施形態に係る視線方向推定装置1のハードウェア構成の一例について説明する。図3は、本実施形態に係る視線方向推定装置1のハードウェア構成の一例を模式的に例示する。
図3に示されるとおり、本実施形態に係る視線方向推定装置1は、制御部11、記憶部12、外部インタフェース13、通信インタフェース14、入力装置15、出力装置16、及びドライブ17が電気的に接続されたコンピュータである。なお、図2では、外部インタフェース及び通信インタフェースをそれぞれ、「外部I/F」及び「通信I/F」と記載している。
制御部11は、ハードウェアプロセッサであるCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、情報処理に応じて各構成要素の制御を行う。記憶部12は、例えば、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置であり、プログラム121、学習結果データ122等を記憶する。記憶部12は、「メモリ」の一例である。
プログラム121は、視線方向推定装置1に人物Aの視線方向を推定する後述の情報処理(図7)を実行させるための命令を含む。学習結果データ122は、学習済みの学習器の設定を行うためのデータである。詳細は後述する。
外部インタフェース13は、外部装置と接続するためのインタフェースであり、接続する外部装置に応じて適宜構成される。本実施形態では、外部インタフェース13は、カメラ3に接続される。
カメラ3(撮影装置)は、人物Aを撮影するために利用される。このカメラ3は、利用場面に応じて、人物Aの少なくとも顔を撮影するように適宜配置されてよい。例えば、上記運転者のよそ見を検知するケースでは、カメラ3は、運転操作時に運転者の顔が位置すべき範囲を撮影範囲としてカバーするように配置されてよい。なお、カメラ3には、一般のデジタルカメラ、ビデオカメラ等が用いられてよい。
通信インタフェース14は、例えば、有線LAN(Local Area Network)モジュール、無線LANモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。入力装置15は、例えば、キーボード、タッチパネル、マイクロフォン等の入力を行うための装置である。出力装置16は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。
ドライブ17は、例えば、CD(Compact Disk)ドライブ、DVD(Digital Versatile Disk)ドライブ等であり、記憶媒体91に記憶されたプログラムを読み込むための装置である。ドライブ17の種類は、記憶媒体91の種類に応じて適宜選択されてよい。上記プログラム121及び/又は学習結果データ122は、この記憶媒体91に記憶されていてもよい。
記憶媒体91は、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。視線方向推定装置1は、この記憶媒体91から、上記プログラム121及び/又は学習結果データ122を取得してもよい。
ここで、図3では、記憶媒体91の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体91の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
なお、視線方向推定装置1の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部11は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、FPGA(field-programmable gate array)等で構成されてよい。記憶部12は、制御部11に含まれるRAM及びROMにより構成されてもよい。視線方向推定装置1は、複数台の情報処理装置で構成されてもよい。また、視線方向推定装置1には、提供されるサービス専用に設計されたPLC(programmable logic controller)等の情報処理装置の他、汎用のデスクトップPC(Personal Computer)、タブレットPC、携帯電話等が用いられてもよい。
<学習装置>
次に、図4を用いて、本実施形態に係る学習装置2のハードウェア構成の一例を説明する。図4は、本実施形態に係る学習装置2のハードウェア構成の一例を模式的に例示する。
図4に示されるとおり、本実施形態に係る学習装置2は、制御部21、記憶部22、外部インタフェース23、通信インタフェース24、入力装置25、出力装置26、及びドライブ27が電気的に接続されたコンピュータである。なお、図4では、図3と同様に、外部インタフェース及び通信インタフェースをそれぞれ、「外部I/F」及び「通信I/F」と記載している。
制御部21〜ドライブ27はそれぞれ、上記視線方向推定装置1の制御部11〜ドライブ17と同様である。また、ドライブ27に取り込まれる記憶媒体92は、上記記憶媒体91と同様である。ただし、学習装置2の記憶部22は、学習プログラム221、学習データ222、学習結果データ122等を記憶する。
学習プログラム221は、学習器の機械学習に関する後述の情報処理(図9)を学習装置2に実行させるための命令を含む。学習データ222は、人物の目を含む部分画像から当該人物の視線方向を解析可能に学習器の機械学習を行うためのデータである。学習結果データ122は、制御部21により学習プログラム221が実行され、学習データ222を利用して学習器の機械学習が行われた結果として作成される。詳細は後述する。
なお、上記視線方向推定装置1と同様に、学習プログラム221及び/又は学習データ222は、記憶媒体92に記憶されていてもよい。これに応じて、学習装置2は、利用する学習プログラム221及び/又は学習データ222を記憶媒体92から取得してもよい。
また、学習装置2の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。更に、学習装置2には、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、デスクトップPC等が用いられてもよい。
[ソフトウェア構成]
<視線方向推定装置>
次に、図5を用いて、本実施形態に係る視線方向推定装置1のソフトウェア構成の一例を説明する。図5は、本実施形態に係る視線方向推定装置1のソフトウェア構成の一例を模式的に例示する。
視線方向推定装置1の制御部11は、記憶部12に記憶されたプログラム121をRAMに展開する。そして、制御部11は、RAMに展開されたプログラム121をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図5に示されるとおり、本実施形態に係る視線方向推定装置1は、ソフトウェアモジュールとして、画像取得部111、画像抽出部112、及び推定部113を備えるように構成される。
画像取得部111は、人物Aの顔を含む画像123をカメラ3から取得する。画像抽出部112は、人物の目を含む部分画像を画像123から抽出する。推定部113は、視線方向を推定するための機械学習を行った学習済みの学習器(畳み込みニューラルネットワーク5)に部分画像を入力する。これにより、推定部113は、人物の視線方向を示す視線情報125を学習器から取得する。
本実施形態では、画像抽出部112は、部分画像として、人物Aの右目を含む第1部分画像1231と人物Aの左目を含む第2部分画像1232とを抽出する。推定部113は、第1部分画像1231及び第2部分画像1232を学習済みの学習器に入力することで、視線情報125を当該学習器から取得する。
(学習器)
次に、学習器について説明する。図5に示されるとおり、本実施形態では、人物の視線方向を推定するための機械学習を行った学習済みの学習器として、畳み込みニューラルネットワーク5が利用される。
畳み込みニューラルネットワーク5は、畳み込み層51及びプーリング層52を交互に接続した構造を有する順伝播型ニューラルネットワークである。本実施形態に係る畳み込みニューラルネットワーク5は、複数の畳み込み層51及び複数のプーリング層52を備えており、複数の畳み込み層51及び複数のプーリング層52は、入力側で交互に配置されている。最も入力側に配置された畳み込み層51は、本発明の「入力層」の一例である。最も出力側に配置されたプーリング層52の出力は全結合層53に入力され、全結合層53の出力は出力層54に入力される。
畳み込み層51は、画像の畳み込みの演算を行う層である。画像の畳み込みとは、画像と所定のフィルタとの相関を算出する処理に相当する。そのため、画像の畳み込みを行うことで、例えば、フィルタの濃淡パターンと類似する濃淡パターンを入力される画像から検出することができる。
プーリング層52は、プーリング処理を行う層である。プーリング処理は、画像のフィルタに対する応答の強かった位置の情報を一部捨て、画像内に現れる特徴の微小な位置変化に対する応答の不変性を実現する。
全結合層53は、隣接する層の間のニューロン全てを結合した層である。すなわち、全結合層53に含まれる各ニューロンは、隣接する層に含まれる全てのニューロンに結合される。全結合層53は、2層以上で構成されてもよい。出力層54は、畳み込みニューラルネットワーク5の最も出力側に配置される層である。
各ニューロンには閾値が設定されており、基本的には、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。制御部11は、最も入力側に配置された畳み込み層51に、第1部分画像1231及び第2部分画像1232の両方を入力し、各層に含まれる各ニューロンの発火判定を入力側から順に行う。これにより、制御部11は、視線情報125に対応する出力値を出力層54から取得することができる。
なお、この畳み込みニューラルネットワーク5の構成(例えば、各層におけるニューロンの個数、ニューロン同士の結合関係、各ニューロンの伝達関数)、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報は、学習結果データ122に含まれている。制御部11は、学習結果データ122を参照して、人物Aの視線方向を推定する処理に用いる学習済みの畳み込みニューラルネットワーク5の設定を行う。
<学習装置>
次に、図6を用いて、本実施形態に係る学習装置2のソフトウェア構成の一例を説明する。図6は、本実施形態に係る学習装置2のソフトウェア構成の一例を模式的に例示する。
学習装置2の制御部21は、記憶部22に記憶された学習プログラム221をRAMに展開する。そして、制御部21は、RAMに展開された学習プログラム221をCPUにより解釈及び実行して、各構成要素を制御する。これによって、図6に示されるとおり、本実施形態に係る学習装置2は、ソフトウェアモジュールとして、学習データ取得部211、及び学習処理部212を備えるように構成される。
学習データ取得部211は、人物の目を含む部分画像、及び当該人物の視線方向を示す視線情報の組を学習データとして取得する。上記のとおり、本実施形態では、人物の右目を含む第1部分画像及び左目を含む第2部分画像を部分画像として利用する。そのため、学習データ取得部211は、人物の右目を含む第1部分画像2231、人物の左目を含む第2部分画像2232、及び当該人物の視線方向を示す視線情報225の組を学習データ222として取得する。第1部分画像2231及び第2部分画像2232はそれぞれ、上記第1部分画像1231及び第2部分画像1232に対応し、入力データとして利用される。視線情報225は、上記視線情報125に対応し、教師データ(正解データ)として利用される。学習処理部212は、第1部分画像2231及び第2部分画像2232を入力すると視線情報225に対応する出力値を出力するように学習器の機械学習を行う。
図6に示されるとおり、本実施形態において、学習対象となる学習器は、畳み込みニューラルネットワーク6である。当該畳み込みニューラルネットワーク6は、畳み込み層61、プーリング層62、全結合層63、及び出力層64を備えており、上記畳み込みニューラルネットワーク5と同様に構成される。各層61〜64は、上記畳み込みニューラルネットワーク5の各層51〜54と同様である。
学習処理部212は、ニューラルネットワークの学習処理により、最も入力側の畳み込み層61に第1部分画像2231及び第2部分画像2232を入力すると、視線情報225に対応する出力値を出力層64から出力する畳み込みニューラルネットワーク6を構築する。そして、学習処理部212は、構築した畳み込みニューラルネットワーク6の構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を学習結果データ122として記憶部22に格納する。
<その他>
視線方向推定装置1及び学習装置2の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、視線方向推定装置1及び学習装置2の各ソフトウェアモジュールがいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上のソフトウェアモジュールの一部又は全部が、1又は複数の専用のプロセッサにより実現されてもよい。また、視線方向推定装置1及び学習装置2それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
§3 動作例
[視線方向推定装置]
次に、図7を用いて、視線方向推定装置1の動作例を説明する。図7は、視線方向推定装置1の処理手順の一例を例示するフローチャートである。以下で説明する人物Aの視線方向を推定する処理手順は、本発明の「推定方法」の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
<初期動作>
まず、制御部11は、起動時に、プログラム121を読み込んで、初期設定の処理を実行する。具体的には、制御部11は、学習結果データ122を参照して、畳み込みニューラルネットワーク5の構造、各ニューロン間の結合の重み及び各ニューロンの閾値の設定を行う。そして、制御部11は、以下の処理手順に従って、人物Aの視線方向を推定する処理を実行する。
<ステップS101>
ステップS101では、制御部11は、画像取得部111として動作し、人物Aの顔を含み得る画像123をカメラ3から取得する。取得する画像123は、動画像であってもよいし、静止画像であってもよい。画像123のデータを取得すると、制御部11は、次のステップS102に処理を進める。
<ステップS102>
ステップS102では、制御部11は、画像抽出部112として動作し、ステップS101で取得した画像123において、人物Aの顔の写る顔領域を検出する。顔領域の検出には、パターンマッチング等の公知の画像解析方法が用いられてよい。
顔領域の検出が完了すると、制御部11は、次のステップS103に処理を進める。なお、ステップS101で取得した画像123内に人物の顔が写っていない場合は、本ステップS102において顔領域を検出することができない。この場合、制御部11は、本動作例に係る処理を終了し、ステップS101から処理を繰り返してもよい。
<ステップS103>
ステップS103では、制御部11は、画像抽出部112として動作し、ステップS102で検出した顔領域において、顔に含まれる各器官を検出することで、当該各器官の位置を推定する。各器官の検出には、パターンマッチング等の公知の画像解析方法が用いられてよい。検出対象となる器官は、例えば、目、口、鼻等である。検出対象となる器官は、後述する部分画像の抽出方法に応じて異なっていてもよい。顔の各器官の検出が完了すると、制御部11は、次のステップS104に処理を進める。
<ステップS104>
ステップS104では、制御部11は、画像抽出部112として動作し、人物Aの目を含む部分画像を画像123から抽出する。本実施形態では、制御部11は、部分画像として、人物Aの右目を含む第1部分画像1231と人物Aの左目を含む第2部分画像1232とを抽出する。また、本実施形態では、上記ステップS102及びS103により、画像123において顔領域を検出し、検出した顔領域において各器官の位置を推定している。そこで、制御部11は、推定した各器官の位置に基づいて、各部分画像(1231、1232)を抽出する。
器官の位置を基準に各部分画像(1231、1232)を抽出する方法として、例えば、以下の(1)〜(3)で示す3つの方法が挙げられる。制御部11は、以下の3つの方法のうちのいずれかの方法により、各部分画像(1231、1232)を抽出してもよい。ただし、器官の位置を基準に各部分画像(1231、1232)を抽出する方法は、以下の3つの方法に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。
なお、以下の3つの方法では、各部分画像(1231、1232)を同様の処理により抽出可能である。そのため、以下では、説明の便宜のため、これらのうち第1部分画像1231を抽出する場面を説明し、第2部分画像1232を抽出する方法については第1部分画像1231と同様として適宜説明を省略する。
(1)第1の方法
図8Aに例示されるとおり、第1の方法では、目と鼻との間の距離を基準に各部分画像(1231、1232)を抽出する。図8Aは、第1の方法により、第1部分画像1231を抽出する場面の一例を模式的に例示する。
この第1の方法では、制御部11は、目尻及び目頭の中点を部分画像の中心に設定し、目頭及び鼻の間の距離を基準に部分画像のサイズを決定する。具体的には、図8Aに示されるとおり、制御部11は、まず、上記ステップS103で推定した各器官の位置のうち、右目ARの目尻EBの位置及び目頭EAの位置の各座標を取得する。続いて、制御部11は、取得した目尻EBの座標値及び目頭EAの座標値を加算平均することで、目尻EB及び目頭EAの中点ECの位置の座標を算出する。制御部11は、この中点ECを、第1部分画像1231として抽出する範囲の中心に設定する。
次に、制御部11は、鼻NAの位置の座標値を更に取得し、取得した右目ARの目頭EAの座標値及び鼻NAの座標値に基づいて、目頭EAと鼻NAとの間の距離BAを算出する。図8Aの例では、距離BAは縦方向に沿って延びているが、距離BAの方向は、縦方向から傾いていてもよい。そして、制御部11は、算出した距離BAに基づいて、第1部分画像1231の横方向の長さL及び縦方向の長さWを決定する。
このとき、距離BAと横方向の長さL及び縦方向の長さWの少なくとも一方と比率が予め決定されていてもよい。また、横方向の長さL及び縦方向の長さWの比率が予め決定されていてよい。制御部11は、この角比率と上記距離BAとに基づいて、横方向の長さL及び縦方向の長さWを決定することができる。
例えば、距離BAと横方向の長さLとの比率は、1:0.7〜1の範囲で設定されてよい。また、例えば、横方向の長さLと縦方向の長さWとの比率は、1:0.5〜1に設定されてよい。具体例として、横方向の長さLと縦方向の長さWとの比率を、8:5に設定することができる。この場合、制御部11は、設定された比率と算出した上記距離BAとに基づいて、横方向の長さLを算出することができる。そして、制御部11は、算出した横方向の長さLに基づいて、縦方向の長さWを算出することができる。
これにより、制御部11は、第1部分画像1231として抽出する範囲の中心及びサイズを決定することができる。制御部11は、決定した範囲の画素を画像123から抽出することで、第1部分画像1231を取得することができる。制御部11は、左目について同様の処理を行うことで、第2部分画像1232を取得することができる。
なお、各部分画像(1231、1232)の抽出にこの第1の方法を採用する場合、上記ステップS103では、制御部11は、各器官の位置として少なくとも目尻、目頭、及び鼻の位置を推定する。すなわち、位置を推定する対象となる器官には、少なくとも目尻、目頭、及び鼻が含まれる。
(2)第2の方法
図8Bに例示されるとおり、第2の方法では、両目の目尻間の距離を基準に各部分画像(1231、1232)を抽出する。図8Bは、第2の方法により、第1部分画像1231を抽出する場面の一例を模式的に例示する。
この第2の方法では、制御部11は、目尻及び目頭の中点を部分画像の中心に設定し、両目の目尻間の距離を基準に部分画像のサイズを決定する。具体的には、図8Bに示されるとおり、制御部11は、上記第1の方法と同様に、右目ARの目尻EB及び目頭EAの中点ECの位置の座標を算出し、この中点ECを、第1部分画像1231として抽出する範囲の中心に設定する。
次に、制御部11は、左目ALの目尻EGの位置の座標値を更に取得し、取得した左目ALの目尻EGの座標値及び右目ARの目尻EBの座標値に基づいて、両目尻(EB、EG)間の距離BBを算出する。図8Bの例では、距離BBは横方向に沿って延びているが、距離BBの方向は、横方向から傾いていてもよい。そして、制御部11は、算出した距離BBに基づいて、第1部分画像1231の横方向の長さL及び縦方向の長さWを決定する。
このとき、上記第1の方法と同様に、距離BBと横方向の長さL及び縦方向の長さWの少なくとも一方と比率が予め決定されていてもよい。また、横方向の長さL及び縦方向の長さWの比率が予め決定されていてよい。例えば、距離BBと横方向の長さLとの比率は、1:0.4〜0.5の範囲で設定されてよい。この場合、制御部11は、設定された比率と算出した上記距離BBとに基づいて、横方向の長さLを算出することができ、算出した横方向の長さLに基づいて、縦方向の長さWを算出することができる。
これにより、制御部11は、第1部分画像1231として抽出する範囲の中心及びサイズを決定することができる。そして、上記第1の方法と同様に、制御部11は、決定した範囲の画素を画像123から抽出することで、第1部分画像1231を取得することができる。制御部11は、左目について同様の処理を行うことで、第2部分画像1232を取得することができる。
なお、各部分画像(1231、1232)の抽出にこの第2の方法を採用する場合、上記ステップS103では、制御部11は、各器官の位置として少なくとも両目の目尻及び目頭の位置を推定する。すなわち、位置を推定する対象となる器官には、少なくとも両目の目尻及び目頭が含まれる。ただし、第1部分画像1231及び第2部分画像1232のいずれか一方の抽出を省略する場合には、省略する方に対応する目の目頭の位置の推定は省略されてよい。
(3)第3の方法
図8Cに例示されるとおり、第3の方法では、両目における目頭及び目尻の中点間の距離を基準に各部分画像(1231、1232)を抽出する。図8Cは、第3の方法により、第1部分画像1231を抽出する場面の一例を模式的に例示する。
この第3の方法では、制御部11は、目尻及び目頭の中点を部分画像の中心に設定し、両目における目頭及び目尻の中点間の距離を基準に部分画像のサイズを決定する。具体的には、図8Cに示されるとおり、制御部11は、上記第1の方法及び第2の方法と同様に、右目ARの目尻EB及び目頭EAの中点ECの位置の座標を算出し、この中点ECを、第1部分画像1231として抽出する範囲の中心に設定する。
次に、制御部11は、左目ALの目尻EG及び目頭EFそれぞれの位置の座標値を更に取得し、中点ECと同様の方法で、左目ALの目尻EG及び目頭EFの中点EHの位置の座標を算出する。続いて、制御部11は、各中点(EC、EH)の座標値に基づいて、両中点(EC、EH)間の距離BCを算出する。図8Cの例では、距離BCは横方向に延びているが、距離BCの方向は、横方向から傾いていてもよい。そして、制御部11は、算出したBCに基づいて、第1部分画像1231の横方向の長さL及び縦方向の長さWを決定する。
このとき、上記第1の方法及び第2の方法と同様に、距離BCと横方向の長さL及び縦方向の長さWの少なくとも一方と比率が予め決定されていてもよい。また、横方向の長さL及び縦方向の長さWの比率が予め決定されていてよい。例えば、距離BCと横方向の長さLとの比率は、1:0.6〜0.8の範囲で設定されてよい。この場合、制御部11は、設定された比率と算出した上記距離BCとに基づいて、横方向の長さLを算出することができ、算出した横方向の長さLに基づいて、縦方向の長さWを算出することができる。
これにより、制御部11は、第1部分画像1231として抽出する範囲の中心及びサイズを決定することができる。そして、上記第1の方法及び第2の方法と同様に、制御部11は、決定した範囲の画素を画像123から抽出することで、第1部分画像1231を取得することができる。制御部11は、左目について同様の処理を行うことで、第2部分画像1232を取得することができる。
なお、各部分画像(1231、1232)の抽出にこの第3の方法を採用する場合、上記ステップS103では、制御部11は、各器官の位置として少なくとも両目の目尻及び目頭の位置を推定する。すなわち、位置を推定する対象となる器官には、少なくとも両目の目尻及び目頭が含まれる。
(小括)
以上の3つの方法によれば、人物Aの各目を含む各部分画像(1231、1232)を適切に抽出することができる。各部分画像(1231、1232)の抽出が完了すると、制御部11は、次のステップS105に処理を進める。
なお、以上の3つの方法では、目及び鼻(第1の方法)、両目(第2の方法及び第3の方法)等のように2つの器官の間の距離を、各部分画像(1231、1232)のサイズの基準として利用している。すなわち、本実施形態では、制御部11は、2つの器官の間の距離に基づいて、各部分画像(1231、1232)を抽出している。このように2つの器官の間の距離に基づいて、各部分画像(1231、1232)のサイズを決定する場合、制御部11は、上記ステップS103において、少なくとも2つの器官の位置を推定すればよい。また、各部分画像(1231、1232)のサイズの基準として利用可能な2つの器官は、以上の3つの例に限定されなくてもよく、目及び鼻以外の器官が、各部分画像(1231、1232)のサイズの基準として利用されてよい。例えば、本ステップS104では、目頭と口との間の距離を、各部分画像(1231、1232)のサイズの基準として利用してもよい。
<ステップS105及びS106>
ステップS105では、制御部11は、推定部113として動作し、抽出した第1部分画像1231及び第2部分画像1232を畳み込みニューラルネットワーク5の入力として用いて、当該畳み込みニューラルネットワーク5の演算処理を実行する。これにより、ステップS106では、制御部11は、視線情報125に対応する出力値を当該畳み込みニューラルネットワーク5から取得する。
具体的には、制御部11は、ステップS104で抽出した第1部分画像1231及び第2部分画像1232を結合して結合画像を作成し、畳み込みニューラルネットワーク5の最も入力側の畳み込み層51に作成した結合画像を入力する。例えば、ニューラルネットワークの入力層の各ニューロンには、結合画像の各ピクセルの輝度値が入力される。そして、制御部11は、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、視線情報125に対応する出力値を出力層54から取得する。
なお、画像123内に写る人物Aの各目の大きさは、カメラ3と人物Aとの間の距離、人物Aの写る角度等の撮影条件によって変化し得る。そのため、各部分画像(1231、1232)のサイズは、撮影条件によって異なり得る。そこで、制御部11は、ステップS105の前に、畳み込みニューラルネットワーク5の最も入力側の畳み込み層51に入力可能なように、各部分画像(1231、1232)のサイズを適宜調節してもよい。
畳み込みニューラルネットワーク5から得られた視線情報125は、画像123に写る人物Aの視線方向の推定結果を示す。推定結果は、例えば、右12.7度という形式で出力される。従って、以上により、制御部11は、人物Aの視線方向の推定が完了し、本動作例に係る処理を終了する。なお、制御部11は、上記一連の処理を繰り返し実行することで、人物Aの視線方向をリアルタイムに推定してもよい。また、この人物Aの視線方向の推定結果は、視線方向推定装置1の利用場面に応じて、適宜活用されてよい。例えば、上記のとおり、視線方向の推定結果は、運転者がよそ見をしているか否かを判定するのに活用されてよい。
[学習装置]
次に、図9を用いて、学習装置2の動作例を説明する。図9は、学習装置2の処理手順の一例を例示するフローチャートである。なお、以下で説明する学習器の機械学習に関する処理手順は、本発明の「学習方法」の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
<ステップS201>
ステップS201では、学習装置2の制御部21は、学習データ取得部211として動作し、第1部分画像2231、第2部分画像2232、及び視線情報225の組を学習データ222として取得する。
学習データ222は、畳み込みニューラルネットワーク6に対して、画像に写る人物の視線方向を推定可能にするための機械学習に利用されるデータである。このような学習データ222は、例えば、1又は複数の人物の顔を様々な条件で撮影し、得られる画像から抽出される第1部分画像2231及び第2部分画像2232に撮影条件(人物の視線方向)を紐付けることで作成することができる。
このとき、第1部分画像2231及び第2部分画像2232は、上記ステップS104と同じ処理を取得した画像に適用することで得ることができる。また、視線情報225は、上記撮影により得られた画像に表れる人物の視線方向の角度の入力を適宜受け付けることで得ることができる。
なお、学習データ222の作成には、上記画像123とは異なる画像が用いられる。この画像に写る人物は、上記人物Aと同一人物であってもよいし、上記人物Aと異なる人物であってもよい。ただし、上記画像123は、人物Aの視線方向の推定に利用された後に、当該学習データ222の作成に利用されてもよい。
この学習データ222の作成は、オペレータ等が入力装置25を用いて手動で行われてもよいし、プログラムの処理により自動的に行われてもよい。また、学習データ222の作成は、学習装置2以外の他の情報処理装置により行われてもよい。学習装置2が学習データ222を作成する場合には、制御部21は、本ステップS201において、学習データ222の作成処理を実行することで、学習データ222を取得することができる。一方、学習装置2以外の他の情報処理装置が学習データ222を作成する場合には、学習装置2は、ネットワーク、記憶媒体92等を介して、他の情報処理装置により作成された学習データ222を取得することができる。なお、本ステップS201で取得する学習データ222の件数は、畳み込みニューラルネットワーク6の機械学習を行うことができるように、実施の形態に応じて適宜決定されてよい。
<ステップS202>
次のステップS202では、制御部21は、学習処理部212として動作して、ステップS201で取得した学習データ222を用いて、第1部分画像2231及び第2部分画像2232を入力すると視線情報225に対応する出力値を出力するように、畳み込みニューラルネットワーク6の機械学習を実施する。
具体的には、まず、制御部21は、学習処理を行う対象となる畳み込みニューラルネットワーク6を用意する。用意する畳み込みニューラルネットワーク6の構成、各ニューロン間の結合の重みの初期値、及び各ニューロンの閾値の初期値は、テンプレートにより与えられてもよいし、オペレータの入力により与えられてもよい。また、再学習を行う場合には、制御部21は、再学習を行う対象となる学習結果データ122に基づいて、畳み込みニューラルネットワーク6を用意してもよい。
次に、制御部21は、ステップS201で取得した学習データ222に含まれる第1部分画像2231及び第2部分画像2232を入力データとして用い、視線情報225を教師データ(正解データ)として用いて、畳み込みニューラルネットワーク6の学習処理を行う。この畳み込みニューラルネットワーク6の学習処理には、確率的勾配降下法等が用いられてよい。
例えば、制御部21は、第1部分画像2231及び第2部分画像2232を結合することで得られた結合画像を、畳み込みニューラルネットワーク6の最も入力側に配置された畳み込み層61に入力する。そして、制御部21は、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、制御部21は、出力層64から出力値を得る。次に、制御部21は、出力層64から取得した出力値と視線情報225に対応する値との誤差を算出する。続いて、制御部21は、誤差逆伝搬(Back propagation)法により、算出した出力値の誤差を用いて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの誤差を算出する。そして、制御部21は、算出した各誤差に基づいて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの値の更新を行う。
制御部21は、各件の学習データ222について、畳み込みニューラルネットワーク6から出力される出力値が視線情報225に対応する値と一致するまでこの一連の処理を繰り返す。これにより、制御部21は、第1部分画像2231及び第2部分画像2232を入力すると視線情報225に対応する出力値を出力する畳み込みニューラルネットワーク6を構築することができる。
<ステップS203>
次のステップS203では、制御部21は、学習処理部212として動作して、構築した畳み込みニューラルネットワーク6の構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を学習結果データ122として記憶部22に格納する。これにより、制御部21は、本動作例に係る畳み込みニューラルネットワーク6の学習処理を終了する。
なお、制御部21は、上記ステップS203の処理が完了した後に、作成した学習結果データ122を視線方向推定装置1に転送してもよい。また、制御部21は、上記ステップS201〜S203の学習処理を定期的に実行することで、学習結果データ122を定期的に更新してもよい。そして、制御部21は、作成した学習結果データ122を当該学習処理の実行毎に視線方向推定装置1に転送することで、視線方向推定装置1の保持する学習結果データ122を定期的に更新してもよい。また、例えば、制御部21は、作成した学習結果データ122をNAS(Network Attached Storage)等のデータサーバに保管してもよい。この場合、視線方向推定装置1は、このデータサーバから学習結果データ122を取得してもよい。
[作用・効果]
以上のように、本実施形態に係る視線方向推定装置1は、上記ステップS101〜S104の処理により、人物Aの顔の写る画像123を取得し、取得した画像123から、当該人物Aの右目及び左目をそれぞれ個別に含む第1部分画像1231及び第2部分画像1232を抽出する。そして、視線方向推定装置1は、上記ステップS105及びS106により、抽出した第1部分画像1231及び第2部分画像1232を学習済みのニューラルネットワーク(畳み込みニューラルネットワーク5)に入力することで、人物Aの視線方向を推定する。この学習済みのニューラルネットワークは、上記学習装置2により、第1部分画像2231、第2部分画像2232、及び視線情報225を含む学習データ222を用いて作成される。
人物Aの右目及び左目それぞれを含む第1部分画像1231及び第2部分画像1232には、カメラ方向を基準とした顔の向きと顔の向きを基準とした目の向きとが共に表れる。そのため、本実施形態によれば、学習済みのニューラルネットワークと人物Aの目が映る部分画像とを用いることで、人物Aの視線方向を適切に推定することができる。
また、本実施形態では、人物Aの顔の向きと目の向きとを個別に計算するのではなく、上記ステップS105及びS106により、第1部分画像1231及び第2部分画像1232に表れる人物Aの視線方向を直接推定することができる。従って、本実施形態によれば、顔の向きの推定誤差と目の向きの推定誤差とが蓄積するのを防ぐことができるため、画像に写る人物Aの視線方向の推定精度を向上させることができる。
§4 変形例
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
<4.1>
上記実施形態では、視線方向推定装置1は、カメラ3から画像123を直接取得している。しかしながら、画像123の取得方法は、このような例に限られなくてもよい。例えば、カメラ3により撮影された画像123は、NAS等のデータサーバに保存されてもよい。この場合、視線方向推定装置1は、上記ステップS101において、当該データサーバにアクセスすることで、画像123を間接的に取得してもよい。
<4.2>
上記実施形態では、視線方向推定装置1は、ステップS102及びS103により、顔領域の及び顔領域に含まれる器官の検出を行った後に、この検出結果を利用して、各部分画像(1231、1232)を抽出している。しかしながら、各部分画像(1231、1232)を抽出する方法は、このような例に限られなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、上記ステップS102及びS103を省略し、パターンマッチング等の公知の画像解析方法により、ステップS101で取得した画像123において、人物Aの各目の写る領域を検出してもよい。そして、制御部11は、この各目の写る領域の検出結果を利用して、各部分画像(1231、1232)を抽出してもよい。
また、上記実施形態では、視線方向推定装置1は、上記ステップS104において、検出した2つの器官の間の距離を、各部分画像(1231、1232)のサイズの基準として利用している。しかしながら、検出した器官を利用して各部分画像(1231、1232)のサイズを決定する方法は、このような例に限られなくてもよい。制御部11は、上記ステップS104において、例えば、目、口、鼻等の1つの器官の大きさに基づいて、各部分画像(1231、1232)のサイズを決定してもよい。
また、上記実施形態では、制御部11は、上記ステップS104において、右目を含む第1部分画像1231及び左目を含む第2部分画像1232の2件の部分画像を画像123から抽出し、抽出した2件の部分画像を畳み込みニューラルネットワーク5に入力している。しかしながら、画像123から抽出される部分画像は、このような例に限られなくてもよい。例えば、制御部11は、上記ステップS104において、人物Aの両目を含む1件の部分画像を画像123から抽出してもよい。この場合、制御部11は、両目の目尻の中点を、部分画像として抽出する範囲の中心に設定してもよい。また、制御部11は、上記実施形態と同様に、2つの器官間の距離に基づいて、部分画像として抽出する範囲のサイズを決定してもよい。また、例えば、制御部11は、人物Aの右目及び左目のいずれか一方のみを含む1件の部分画像を画像123から抽出してもよい。それぞれの場合、学習済みのニューラルネットワークは、それぞれに対応する部分画像が用いられて作成される。
<4.3>
また、上記実施形態では、視線方向推定装置1は、上記ステップS105において、第1部分画像1231及び第2部分画像1232を結合することで得られる結合画像を、畳み込みニューラルネットワーク5の最も入力側に配置された畳み込み層51に入力している。しかしながら、第1部分画像1231及び第2部分画像1232をニューラルネットワークに入力する方法は、このような例に限られなくてもよい。例えば、ニューラルネットワークでは、第1部分画像1231を入力する部分と第2部分画像1232を入力する部分とが分かれていてもよい。
図10は、本変形例に係る視線方向推定装置1Aのソフトウェア構成の一例を模式的に例示する。視線方向推定装置1Aは、学習結果データ122Aにより設定される学習済みの畳み込みニューラルネットワーク5Aの構成が、上記畳み込みニューラルネットワーク5と相違する点を除き、上記視線方向推定装置1と同様に構成される。図10に例示されるとおり、本変形例に係る畳み込みニューラルネットワーク5Aは、第1部分画像1231及び第2部分画像1232をそれぞれ個別に構成される。
具体的には、畳み込みニューラルネットワーク5Aは、第1部分画像1231の入力を受け付ける第1部分56と、第2部分画像1232の入力を受け付ける第2部分58と、第1部分56及び第2部分58の各出力を結合する第3部分59と、全結合層53と、出力層54と、を備えている。第1部分56は、1又は複数の畳み込み層561及びプーリング層562により構成されている。畳み込み層561及びプーリング層562それぞれの数は、実施の形態に応じて適宜決定されてよい。同様に、第2部分58は、1又は複数の畳み込み層581及びプーリング層582により構成されている。畳み込み層581及びプーリング層582それぞれの数は、実施の形態に応じて適宜決定されてよい。第3部分59は、上記実施形態の入力部分と同様に、1又は複数の畳み込み層51A及びプーリング層52Aにより構成されている。畳み込み層51A及びプーリング層52Aそれぞれの数は、実施の形態に応じて適宜決定されてよい。
本変形例では、第1部分56の最も入力側の畳み込み層561が、第1部分画像1231の入力を受け付ける。この最も入力側の畳み込み層561は「第1入力層」と称してもよい。また、第2部分58の最も入力側の畳み込み層581が、第2部分画像1232の入力を受け付ける。この最も入力側の畳み込み層581は、「第2入力層」と称してもよい。また、第3部分59の最も入力側の畳み込み層51Aが、各部分(56、58)の出力を受け付ける。この最も入力側の畳み込み層51Aは「結合層」と称してもよい。ただし、第3部分59において、最も入力側に配置される層は、畳み込み層51Aに限られなくてもよく、プーリング層52Aであってもよい。この場合、最も入力側のプーリング層52Aが、各部分(56、58)の出力を受け付ける結合層となる。
この畳み込みニューラルネットワーク5Aは、第1部分画像1231及び第2部分画像1232を入力する部分が上記畳み込みニューラルネットワーク5と相違しているものの、当該畳み込みニューラルネットワーク5と同様に取り扱うことができる。そのため、本変形例に係る視線方向推定装置1Aは、上記視線方向推定装置1と同様の処理により、畳み込みニューラルネットワーク5Aを利用して、第1部分画像1231及び第2部分画像1232から人物Aの視線方向を推定することができる。
すなわち、制御部11は、上記実施形態と同様に、ステップS101〜S104の処理を実行し、第1部分画像1231及び第2部分画像1232を抽出する。そして、制御部11は、ステップS105において、第1部分画像1231を第1部分56に入力し、第2部分画像1232を第2部分58に入力する。例えば、制御部11は、第1部分画像1231の各ピクセルの輝度値を第1部分56の最も入力側に配置される畳み込み層561の各ニューロンに入力する。また、制御部11は、第2部分画像1232の各ピクセルの輝度値を第2部分58の最も入力側に配置される畳み込み層581の各ニューロンに入力する。そして、制御部11は、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、制御部11は、ステップS106において、視線情報125に対応する出力値を出力層54から取得して、人物Aの視線方向を推定することができる。
<4.4>
また、上記実施形態では、制御部11は、上記ステップS105において、第1部分画像1231及び第2部分画像1232を畳み込みニューラルネットワーク5に入力する前に、第1部分画像1231及び第2部分画像1232のサイズを調整してもよい。このとき、制御部11は、第1部分画像1231及び第2部分画像1232の解像度を低下させてもよい。
図11は、本変形例に係る視線方向推定装置1Bのソフトウェア構成の一例を模式的に例示する。視線方向推定装置1Bは、ソフトウェアモジュールとして、部分画像の解像度を低下させる解像度変換部114を更に備えるように構成される点を除き、上記視線方向推定装置1と同様に構成される。
本変形例では、制御部11は、上記ステップS105の処理を実行する前に、解像度変換部114として動作し、ステップS104で抽出した第1部分画像1231及び第2部分画像1232の解像度を低下させる。低解像度化の処理方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部11は、ニアレストネイバー法、バイリニア補間法、バイキュービック法等により、第1部分画像1231及び第2部分画像1232の解像度を低下させることができる。そして、制御部11は、ステップS105及びS106により、解像度を低下させた第1部分画像1231及び第2部分画像1232を畳み込みニューラルネットワーク5に入力することで、当該畳み込みニューラルネットワーク5から視線情報125を取得する。当該変形例によれば、畳み込みニューラルネットワーク5の演算処理の計算量を低減することができ、人物Aの視線方向を推定するのにかかるCPUの負荷を抑えることができる。
<4.5>
上記実施形態では、人物Aの視線方向を推定するためのニューラルネットワークとして、畳み込みニューラルネットワークを利用している。しかしながら、上記実施形態において人物Aの視線方向の推定に利用可能なニューラルネットワークの種類は、畳み込みニューラルネットワークに限られなくてもよく、実施の形態に応じて適宜選択されてよい。人物Aの視線方向を推定するためのニューラルネットワークとして、例えば、一般的な多層構造のニューラルネットワークが用いられてよい。
<4.6>
上記実施形態では、人物Aの視線方向を推定するのに利用する学習器として、ニューラルネットワークを用いている。しかしながら、学習器の種類は、部分画像を入力として利用可能であれば、ニューラルネットワークに限られなくてもよく、実施の形態に応じて適宜選択されてよい。利用可能な学習器として、例えば、サポートベクターマシン、自己組織化マップ、強化学習により機械学習を行う学習器等を挙げることができる。
<4.7>
上記実施形態では、制御部11は、上記ステップS106において、畳み込みニューラルネットワーク5から視線情報125を直接的に取得している。しかしながら、視線情報を学習器から取得する方法は、このような例に限られなくてもよい。例えば、視線方向推定装置1は、学習器の出力と視線方向の角度とを対応付けたテーブル形式等の参照情報を記憶部12に保持していてもよい。この場合、制御部11は、上記ステップS105において、第1部分画像1231及び第2部分画像1232を入力として用いて、畳み込みニューラルネットワーク5の演算処理を行うことで、当該畳み込みニューラルネットワーク5から出力値を得てもよい。そして、上記ステップS106において、制御部11は、参照情報を参照することで、畳み込みニューラルネットワーク5から得た出力値に対応する視線情報125を取得してもよい。このように、制御部11は、視線情報125を間接的に取得してもよい。
<4.8>
また、上記実施形態では、学習結果データ122は、畳み込みニューラルネットワーク5の構成を示す情報を含んでいる。しかしながら、学習結果データ122の構成は、このような例に限られなくてもよい。例えば、利用するニューラルネットワークの構成が共通化されている場合には、学習結果データ122は、畳み込みニューラルネットワーク5の構成を示す情報を含んでいなくてもよい。
1・1A・1B…視線方向推定装置、
11…制御部、12…記憶部、13…外部インタフェース、
14…通信インタフェース、15…入力装置、
16…出力装置、17…ドライブ、
111…画像取得部、112…画像抽出部、113…推定部、
114…解像度変換部、
121…プログラム、122・122A…学習結果データ、
123…画像、1231…第1部分画像、1232…第2部分画像、
125…視線情報、
2…学習装置、
21…制御部、22…記憶部、23…外部インタフェース、
24…通信インタフェース、25…入力装置、
26…出力装置、27…ドライブ、
211…学習データ取得部、212…学習処理部、
221…学習プログラム、222…学習データ、
3…カメラ(撮影装置)、
5・5A…畳み込みニューラルネットワーク、
51・51A…畳み込み層、52・52A…プーリング層、
53…全結合層、54…出力層、
56・58…畳み込み層、57・59…プーリング層、
6…畳み込みニューラルネットワーク、
61…畳み込み層、62…プーリング層、
63…全結合層、64…出力層、
91・92…記憶媒体

Claims (7)

  1. 人物の顔を含む画像を取得する画像取得部と、
    前記人物の目を含む部分画像を前記画像から抽出する画像抽出部と、
    視線方向を推定するための機械学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定部と、
    を備え、
    前記画像抽出部は、
    前記画像において、前記人物の顔の写る顔領域を検出し、
    前記顔領域において、前記顔の少なくとも2つの器官の位置を推定し、かつ
    推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出し、
    前記器官は、目尻、目頭、及び鼻を含み、
    前記画像抽出部は、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、前記目頭及び前記鼻の間の距離を基準に前記部分画像のサイズを決定する、
    人物の視線方向を推定するための情報処理装置。
  2. 人物の顔を含む画像を取得する画像取得部と、
    前記人物の目を含む部分画像を前記画像から抽出する画像抽出部と、
    視線方向を推定するための機械学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定部と、
    を備え、
    前記画像抽出部は、
    前記画像において、前記人物の顔の写る顔領域を検出し、
    前記顔領域において、前記顔の少なくとも2つの器官の位置を推定し、かつ
    推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出し、
    前記器官は、目尻及び目頭を含み、
    前記画像抽出部は、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、両目の前記目尻間の距離を基準に前記部分画像のサイズを決定する、
    人物の視線方向を推定するための情報処理装置。
  3. 人物の顔を含む画像を取得する画像取得部と、
    前記人物の目を含む部分画像を前記画像から抽出する画像抽出部と、
    視線方向を推定するための機械学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定部と、
    を備え、
    前記画像抽出部は、
    前記画像において、前記人物の顔の写る顔領域を検出し、
    前記顔領域において、前記顔の少なくとも2つの器官の位置を推定し、かつ
    推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出し、
    前記器官は、目尻及び目頭を含み、
    前記画像抽出部は、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、両目における前記目頭及び前記目尻の中点間の距離を基準に前記部分画像のサイズを決定する、
    人物の視線方向を推定するための情報処理装置。
  4. 前記部分画像の解像度を低下させる解像度変換部を更に備え、
    前記推定部は、解像度を低下させた前記部分画像を学習済みの前記学習器に入力することで、前記視線情報を前記学習器から取得する、
    請求項1から3のいずれか1項に記載の情報処理装置。
  5. コンピュータが、
    人物の顔を含む画像を取得する画像取得ステップと、
    前記人物の目を含む部分画像を前記画像から抽出する画像抽出ステップと、
    視線方向を推定するための学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定ステップと、
    を実行し、
    前記画像抽出ステップにおいて、前記コンピュータが、前記画像において、前記人物の顔の写る顔領域を検出し、前記顔領域において、前記顔の少なくとも2つの器官の位置を推定し、かつ推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出し、
    前記器官は、目尻、目頭、及び鼻を含み、
    前記画像抽出ステップにおいて、前記コンピュータが、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、前記目頭及び前記鼻の間の距離を基準に前記部分画像のサイズを決定する、
    人物の視線方向を推定するための推定方法。
  6. コンピュータが、
    人物の顔を含む画像を取得する画像取得ステップと、
    前記人物の目を含む部分画像を前記画像から抽出する画像抽出ステップと、
    視線方向を推定するための学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定ステップと、
    を実行し、
    前記画像抽出ステップにおいて、前記コンピュータが、前記画像において、前記人物の顔の写る顔領域を検出し、前記顔領域において、前記顔の少なくとも2つの器官の位置を推定し、かつ推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出し、
    前記器官は、目尻及び目頭を含み、
    前記画像抽出ステップにおいて、前記コンピュータが、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、両目の前記目尻間の距離を基準に前記部分画像のサイズを決定する、
    人物の視線方向を推定するための推定方法。
  7. コンピュータが、
    人物の顔を含む画像を取得する画像取得ステップと、
    前記人物の目を含む部分画像を前記画像から抽出する画像抽出ステップと、
    視線方向を推定するための学習を行った学習済みの学習器に前記部分画像を入力することで、前記人物の視線方向を示す視線情報を当該学習器から取得する推定ステップと、
    を実行し、
    前記画像抽出ステップにおいて、前記コンピュータが、前記画像において、前記人物の顔の写る顔領域を検出し、前記顔領域において、前記顔の少なくとも2つの器官の位置を推定し、かつ推定した前記2つの器官の間の距離に基づいて、前記部分画像を前記画像から抽出し、
    前記器官は、目尻及び目頭を含み、
    前記画像抽出ステップにおいて、前記コンピュータが、前記目尻及び前記目頭の中点を前記部分画像の中心に設定し、両目における前記目頭及び前記目尻の中点間の距離を基準に前記部分画像のサイズを決定する、
    人物の視線方向を推定するための推定方法。
JP2017149344A 2017-08-01 2017-08-01 人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法 Active JP6946831B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017149344A JP6946831B2 (ja) 2017-08-01 2017-08-01 人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法
DE102018208920.5A DE102018208920A1 (de) 2017-08-01 2018-06-06 Informationsverarbeitungsvorrichtung und Abschätzungsverfahren für ein Abschätzen einer Blickrichtung einer Person und eine Lernvorrichtung und ein Lernverfahren
CN201810601945.7A CN109325396A (zh) 2017-08-01 2018-06-12 信息处理装置及估计方法、以及学习装置及学习方法
US16/015,297 US20190043216A1 (en) 2017-08-01 2018-06-22 Information processing apparatus and estimating method for estimating line-of-sight direction of person, and learning apparatus and learning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017149344A JP6946831B2 (ja) 2017-08-01 2017-08-01 人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法

Publications (2)

Publication Number Publication Date
JP2019028843A JP2019028843A (ja) 2019-02-21
JP6946831B2 true JP6946831B2 (ja) 2021-10-13

Family

ID=65019944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017149344A Active JP6946831B2 (ja) 2017-08-01 2017-08-01 人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法

Country Status (4)

Country Link
US (1) US20190043216A1 (ja)
JP (1) JP6946831B2 (ja)
CN (1) CN109325396A (ja)
DE (1) DE102018208920A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11556741B2 (en) 2018-02-09 2023-01-17 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters using a neural network
EP3749172B1 (en) 2018-02-09 2022-03-30 Pupil Labs GmbH Devices, systems and methods for predicting gaze-related parameters
US11194161B2 (en) 2018-02-09 2021-12-07 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US10684681B2 (en) * 2018-06-11 2020-06-16 Fotonation Limited Neural network image processing apparatus
US11537202B2 (en) 2019-01-16 2022-12-27 Pupil Labs Gmbh Methods for generating calibration data for head-wearable devices and eye tracking system
US11676422B2 (en) 2019-06-05 2023-06-13 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US11144754B2 (en) * 2019-08-19 2021-10-12 Nvidia Corporation Gaze detection using one or more neural networks
CN110969084B (zh) * 2019-10-29 2021-03-05 深圳云天励飞技术有限公司 一种关注区域检测方法、装置、可读存储介质及终端设备
CN111178278B (zh) * 2019-12-30 2022-04-08 上海商汤临港智能科技有限公司 视线方向确定方法、装置、电子设备及存储介质
WO2021140642A1 (ja) 2020-01-10 2021-07-15 オムロン株式会社 視線推定装置、視線推定方法、モデル生成装置、及びモデル生成方法
JP6932269B1 (ja) * 2020-02-21 2021-09-08 三菱電機株式会社 運転支援制御装置及び運転支援制御方法
JP6865996B1 (ja) * 2020-12-18 2021-04-28 サスメド株式会社 認知・運動機能異常評価システムおよび認知・運動機能異常評価用プログラム
JP7296069B2 (ja) * 2021-01-28 2023-06-22 独立行政法人国立高等専門学校機構 視線入力装置、および視線入力方法
JP7219788B2 (ja) * 2021-04-09 2023-02-08 本田技研工業株式会社 情報処理装置、情報処理方法、学習方法、およびプログラム
CN113158879B (zh) * 2021-04-19 2022-06-10 天津大学 基于匹配特征的三维注视点估计及三维眼动模型建立方法
WO2023007730A1 (ja) * 2021-07-30 2023-02-02 日本電気株式会社 情報処理システム、情報処理装置、情報処理方法、及び記録媒体
JP2023106888A (ja) * 2022-01-21 2023-08-02 オムロン株式会社 情報処理装置および情報処理方法
US11726340B1 (en) * 2022-03-28 2023-08-15 Honeywell International Inc. Systems and methods for transforming video data in an indirect vision system
WO2024013907A1 (ja) * 2022-07-13 2024-01-18 日本電信電話株式会社 情報提供装置、情報提供方法及び情報提供プログラム
CN116958945B (zh) * 2023-08-07 2024-01-30 北京中科睿途科技有限公司 面向智能座舱的司机视线估计方法和相关设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040108971A1 (en) * 1998-04-09 2004-06-10 Digilens, Inc. Method of and apparatus for viewing an image
CN1174337C (zh) * 2002-10-17 2004-11-03 南开大学 识别人眼注视与否的方法和装置及其应用
JP4532419B2 (ja) * 2006-02-22 2010-08-25 富士フイルム株式会社 特徴点検出方法および装置並びにプログラム
JP2007265367A (ja) * 2006-03-30 2007-10-11 Fujifilm Corp 視線検出方法および装置ならびにプログラム
JP5221436B2 (ja) * 2009-04-02 2013-06-26 トヨタ自動車株式会社 顔特徴点検出装置及びプログラム
JP2012038106A (ja) * 2010-08-06 2012-02-23 Canon Inc 情報処理装置、情報処理方法、およびプログラム
JP6157165B2 (ja) * 2013-03-22 2017-07-05 キヤノン株式会社 視線検出装置及び撮像装置
JP6707900B2 (ja) 2016-02-26 2020-06-10 三菱自動車工業株式会社 車両の冷却装置
US10565433B2 (en) * 2017-03-30 2020-02-18 George Mason University Age invariant face recognition using convolutional neural networks and set distances

Also Published As

Publication number Publication date
CN109325396A (zh) 2019-02-12
DE102018208920A1 (de) 2019-02-07
JP2019028843A (ja) 2019-02-21
US20190043216A1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
JP6946831B2 (ja) 人物の視線方向を推定するための情報処理装置及び推定方法、並びに学習装置及び学習方法
RU2770752C1 (ru) Способ и устройство для обучения модели распознавания лица и устройство для определения ключевой точки лица
KR102574141B1 (ko) 이미지 디스플레이 방법 및 디바이스
EP3755204B1 (en) Eye tracking method and system
JP6608890B2 (ja) 機械学習装置、ロボットシステム及び機械学習方法
JP6821707B2 (ja) 畳み込み画像変換推定を実行するための方法およびシステム
CN102985933B (zh) 区分真人面部与平坦表面
US8615135B2 (en) Feature point positioning apparatus, image recognition apparatus, processing method thereof and computer-readable storage medium
JP5227629B2 (ja) オブジェクト検出方法、オブジェクト検出装置、およびオブジェクト検出プログラム
KR20180057096A (ko) 표정 인식과 트레이닝을 수행하는 방법 및 장치
JP2017059207A (ja) 画像認識方法
CN112257696B (zh) 视线估计方法及计算设备
JP2019117577A (ja) プログラム、学習処理方法、学習モデル、データ構造、学習装置、および物体認識装置
KR20180130869A (ko) 손 제스처를 검출하는 컨볼루션 신경망, 그리고 손 제스처에 의한 기기 제어시스템
CN111696196B (zh) 一种三维人脸模型重建方法及装置
US11562489B2 (en) Pixel-wise hand segmentation of multi-modal hand activity video dataset
JP5027030B2 (ja) オブジェクト検出方法、オブジェクト検出装置、およびオブジェクト検出プログラム
CN111626379B (zh) 肺炎x光图像检测方法
JP2017130042A (ja) 映像処理装置、映像処理方法、及びプログラム
JP6996455B2 (ja) 検出器生成装置、モニタリング装置、検出器生成方法及び検出器生成プログラム
KR20210018114A (ko) 교차 도메인 메트릭 학습 시스템 및 방법
CN112733773A (zh) 一种对象检测方法、装置、计算机设备和存储介质
JP5513960B2 (ja) 画像処理装置
KR20230093191A (ko) 오차 종류별 관절 인식 방법, 서버
JP6875646B2 (ja) 画像処理装置、および、画像処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210726

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: 20210817

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210830

R150 Certificate of patent or registration of utility model

Ref document number: 6946831

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150