JP3313803B2 - 視線検出装置 - Google Patents

視線検出装置

Info

Publication number
JP3313803B2
JP3313803B2 JP04807093A JP4807093A JP3313803B2 JP 3313803 B2 JP3313803 B2 JP 3313803B2 JP 04807093 A JP04807093 A JP 04807093A JP 4807093 A JP4807093 A JP 4807093A JP 3313803 B2 JP3313803 B2 JP 3313803B2
Authority
JP
Japan
Prior art keywords
image
pupil
line
area
edge
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.)
Expired - Lifetime
Application number
JP04807093A
Other languages
English (en)
Other versions
JPH06254053A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP04807093A priority Critical patent/JP3313803B2/ja
Publication of JPH06254053A publication Critical patent/JPH06254053A/ja
Priority to US08/706,522 priority patent/US5719388A/en
Application granted granted Critical
Publication of JP3313803B2 publication Critical patent/JP3313803B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B13/00Viewfinders; Focusing aids for cameras; Means for focusing for cameras; Autofocus systems for cameras
    • G03B13/02Viewfinders
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B2213/00Viewfinders; Focusing aids for cameras; Means for focusing for cameras; Autofocus systems for cameras
    • G03B2213/02Viewfinders
    • G03B2213/025Sightline detection

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automatic Focus Adjustment (AREA)
  • Focusing (AREA)
  • Viewfinders (AREA)
  • Eye Examination Apparatus (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はカメラ等の光学機器を使
用する観察者の視線(注視点)を検出する視線検出装置
に関するものである。
【0002】
【従来の技術】従来より観察者が観察面上のどの位置を
観察しているかを検出する、いわゆる視線(視軸)を検
出する装置(例えばアイカメラ)が種々提案されてい
る。
【0003】例えば特開平1−274736号公報にお
いては、光源からの平行光束を観察者の眼球の前眼部へ
投射し、角膜からの反射光による角膜反射像と瞳孔の結
像位置を利用して視軸を求めている。
【0004】図5、図6は視線検出方法の原理説明図で
ある。
【0005】先ず、図6について説明すると、各赤外発
光ダイオード(以下「IRED」と称する)13a、1
3bは受光レンズ12の光軸アに対してX方向に略対称
に配置され、各々撮影者の眼球を発散照明している。
【0006】IRED13a、13bより放射された赤
外光は眼球15の角膜16を照明し、このとき角膜16
の表面で反射したそれぞれの赤外光の一部による角膜反
射像d、eは受光レンズ12より集光され、イメージセ
ンサ14上の位置d′、e′にそれぞれ結像する。
【0007】また、IREDにより照明された眼球の瞳
孔部の像もイメージセンサ14上に結像する。瞳孔と虹
彩の境界がなす円(これを瞳孔円と称する)の中心Cの
x座標をxcとしたとき、イメージセンサ上でのx座標
は不図示のxc′となる。
【0008】図5(a)は図2のイメージセンサ14面
上に投影される眼球像を示しており、(b)は(a)中
のライン(I)−(I)′での像信号の出力を示してい
る。
【0009】図5(a)中の50は眼球の白目の部分、
51は瞳孔部、52a、52bは(1対のIREDの角
膜反射像を表している。この角膜反射像は「プルキンエ
像」と呼ばれるものであり、以降「P像」と略称するこ
とにする。図5(b)の信号60中の極大点2つが1対
のP像に対応している。
【0010】図6に戻って、角膜反射像(P像)dおよ
びeの中心のx座標と角膜16の曲率中心のx座標xo
とは一致するため、角膜反射像の発生位置d、cのx座
標をxd、xe、角膜16の曲率中心Oから瞳孔19の中
心Cまでの標準的な距離をLOCとし、距離LOCに対する
個人差を考慮する係数をA1とすると眼球光軸イの回転
角θは、 (A1×LOC)×sinθ≒xc−(xd+xe)/2…(1) の関係式を満足する。このため視線演算処理装置におい
て、イメージセンサ上の一部に投影された各特徴点(角
膜反射像d、e及び瞳孔中心Cの位置を検出することに
より眼球の光軸イの回転角θを求めることができる。こ
のとき(1)式は、 β(A1×LOC)×sinθ≒xc′−(xd′+xe′)/2…(2) とかきかえられる。但し、βは受光レンズ12に対する
眼球の位置により決まる倍率で、実質的には角膜反射像
の間隔|xd′−xe′|の関数として求められる。眼球
15の回転角θは θ≒ARCSIN{(xc′−xf′)/β/(A1*LOC)}…(3) とかきかえられる。但し、 xf′≒(xd′+xe′)/2 である。ところで撮影者の眼球の光軸イと視軸とは一致
しない為、撮影者の眼球の光軸イの水平方向の回転角θ
が算出されると眼球の光軸と視軸との角度補正δをする
ことにより撮影者の水平方向の視線θHは求められる。
眼球の光軸イと視軸との補正角度δに対する個人差を考
慮する係数をB1とすると撮影者の水平方向の視線θH
は θH=θ±(B1*δ)…(4) と求められる。ここで符号±は、撮影者に関して右への
回転角を正とすると、観察装置をのぞく撮影者の目が左
目の場合は+、右目の場合は−の符号が選択される。
【0011】又、同図においては撮影者の眼球がZ−X
平面(例えば水平面)内で回転する例を示しているが、
撮影者の眼球がZ−Y平面(例えば垂直面)内で回転す
る場合においても同様に検出可能である。但し、撮影者
の視線の垂直方向の成分は眼球の光軸の垂直方向の成分
θ′と一致するため垂直方向の視線θVは θV=θ′ となる。更に視線データθH、θVより撮影者が見てい
るファインダー視野内のピント板上の位置(Xn、Yn
は Xn≒m×θH ≒m×[ARCSIN{(xc′−xf′)/β/(A1
×LOC)}±(B1×δ)] Yn≒m×θV と求められる。但し、mはカメラのファインダー光学系
で決まる定数である。
【0012】ここで撮影者の眼球の個人差を補正する係
数A1、B1の値は撮影者にカメラのファインダー内の
所定の位置に配設された指標を固視してもらい、該指標
の位置と(5)式に従い算出された固視点の位置とを一
致させることにより求められる。
【0013】本実施例における撮影者の視線及び注視点
を求める演算は、前記各式に基づき視線演算処理装置の
マイクロコンピュータのソフトで実行している。
【0014】視線の個人差を補正する係数が求まり
(5)式を用いてカメラのファインダーを覗く観察者の
視線のピント板上の位置を算出し、その視線情報を撮影
レンズの焦点調節あるいは露出制御等に利用している。
【0015】実際に視線を求めるには、イメージセンサ
上の眼球像をマイクロコンピュータ等で処理して、上述
のP像、瞳孔円を検出し、その位置情報に基づいて視線
を算出する。
【0016】具体的な手法としては、本出願人によっ
て、特開平4−347131号公報などに開示されてい
る。同公報によれは、イメージセンサ全ての画素の光電
変換信号を読み出し、A/D変換を行い、逐次的な処理
によりP像と瞳孔円の座標を記憶してゆく。P像の座標
の求め方は簡単に説明すると、画素の輝度レベルが所定
のレベルよりも大きいと認識したときの座標で求めてい
る。また瞳孔円は、瞳孔と虹彩の境界の輝度差を利用し
て抽出するが、このとき逐次処理でのその時点での最低
輝度値から、エッジ点としてふさわしいかどうかを判定
しているため、全画素を読み出して逐次処理が終わった
時点で、もう一度、全画素の最低輝度値からエッジ点と
してふさわしいかどうかを判定し、残ったエッジ点よ
り、瞳孔のエッジ座標を最小2乗法を用いて円を推定
し、これを瞳孔円としている。
【0017】図7に従って説明すると、図7(a)眼球
像を表し、ここではP像を省略している。瞳孔部51の
周に配されてる複数の白丸が瞳孔エッジであり、70−
1がその1つを表している。
【0018】同図中(b)は(a)の瞳孔エッジのみを
抽出して表したものである。
【0019】これらのエッジデータに基づいて最小2乗
法を用いて推定した円が75である。この推定円の中心
座標を(xc、yc)半径をrcとすると、図7の(c)
のようになる。
【0020】
【発明が解決しようとする課題】このような視線検出装
置をカメラのファインダーを覗く観察者の視線を検出す
るのに用いた場合、観察者の覗き方に自由度を持たせる
ことは不可欠である。つまり、覗く位置が多少変化して
も正確に視線を検出することが望まれる。そのために
は、エリアセンサの受光する像の範囲が広いことが必要
となるが、そうすることで画素数が増え、視線検出を行
うための信号読み出し、瞳孔エッジやP像の抽出のため
の処理演算が膨大となり、又膨大な時間を要してしまう
ことになる。
【0021】また、カメラの制御に使われるマイクロコ
ンピュータの内蔵RAMの記憶容量は、一般にエリアセ
ンサの全画素情報を一度に記憶できる程大きくないの
で、数ライン分の像データを内蔵RAMに記憶させなが
ら、1ライン読み込みながら逐次処理で特徴点抽出を行
っている。よって前述したように、最低輝度値を更新し
ながら逐次処理を行い、全画素の逐次処理が終わった時
点でもう一度エッジ点の判定をしているため、無駄な時
間を費やしていた。
【0022】ところで、また瞳孔部を検出するにあた
り、この瞳孔エッジ部の出力信号は小さい為、検出光学
系から入射してくるゴーストやフレア、又眼鏡をかけて
いる人では眼鏡からの反射像などのノイズ成分が混在し
てしまうと、間違った瞳孔エッジを検出してしまう可能
性があり、瞳孔円の検出の信頼性が低下するという問題
点が生じていた。
【0023】これに対して本出願人は、特開平4−24
0438号公報で全画素を読み込み最小の輝度信号の出
力画素座標より、その座標に最も近いエッジを瞳孔エッ
ジと認識する提案を行った。しかしながらこの方式で
は、全画素の読み込み逐次処理をしなければならず、信
頼性を増すことには寄与するが、視線検出スピードを短
縮することはできない。
【0024】本発明はかかる問題点に鑑みて、観察者の
注視点を検出するにあたる検出スピードを向上させるこ
とを第1の目的とする。又、スピードアップを図りなが
ら注視点の検出精度を向上させることを第2の目的とす
る。
【0025】
【課題を解決するための手段】そして本発明の特徴とす
るところは、ファインダーより覗いた観察者の眼球を照
明する照明手段と、照明された観察者の眼球像を受光す
る複数の光電変換素子より成るエリアセンサと、該エリ
アセンサの領域を複数のブロック領域に分割し、そのブ
ロック領域内の光電変換信号に関するブロック信号を求
め、この各ブロック信号を基に前記エリアセンサ内の領
域を制限する制限領域設定手段とを備え、該制限領域内
のみにおいて光電変換素子毎の信号出力をA/D変換し
て観察者の視線を検出するようにしたことにある。
【0026】特に、その本実施例における前記制限領域
設定手段とは、エリアセンサ上における観察者の瞳孔像
の位置を推定する手段である。
【0027】そして実際の視線検出を行うための信号処
理は、設定された領域内の素子毎の信号出力を順にAD
変換し、この変換信号から瞳孔エッジ及びプルキンエ像
の位置を求め注視点を求める演算処理を行うことであ
る。
【0028】
【実施例】図1は本発明の検出装置を一眼レフレックス
カメラに適用したときの断面図である。
【0029】各図において、1は撮影レンズで便宜上2
枚のレンズで示したが、実際は更に多数のレンズから構
成されている。2は主ミラーで、ファインダー系による
被写体像の観察状態と被写体像の撮影状態に応じて撮影
光路へ斜設されあるいは退去される。3はサブミラー
で、主ミラー2を透過した光束をカメラボディの下方の
後述する焦点検出装置6へ向けて反射する。
【0030】4はシャッター、5は感光部材で、銀塩フ
ィルムあるいはCCDやMOS型等の固体撮像素子ある
いはビディコン等の撮像管より成っている。
【0031】6は焦点検出装置であり、結像面近傍に配
置されたフィールドレンズ6a、反射ミラー6b及び6
c、2次結像レンズ6d、絞り6e、複数のCCDから
なるラインセンサ6f等から構成されている。
【0032】本実施例における焦点検出装置6は周知の
位相差方式を用いている。
【0033】7は撮影レンズ1の予定結像面に配置され
たピント板、8はファインダー光路変更用のペンタプリ
ズム、9、10は各々観察画面内の被写体輝度を測定す
るための結像レンズと測光センサである。結像レンズ9
はペンタダハプリズム8内の反射光路を介してピント板
7と測光センサ10を共役に関係付けている。
【0034】次にペンタダハプリズム8の射出面後方に
は光分割器11aを備えた接眼レンズ11が配され、撮
影者眼15によるピント板7の観察に使用される。光分
割器11aは、例えば可視光を透過し赤外光を反射する
ダイクロイックミラーより成っている。
【0035】12は受光レンズ、14は光電変換素子列
を2次元的に配したイメージセンサで、詳しい回路構成
については後述する。このイメージセンサ14は、受光
レンズ12に関して所定の位置にある撮影者眼15の瞳
孔近傍と共役になるように配置されている。13a〜1
3fは各々照明光源であるところの赤外発光ダイオード
である。
【0036】21は明るい被写体の中でも視認できる高
輝度のスーパーインポーズ用LEDで、発光された光は
投光用プリズム22を介し、主ミラー2で反射してピン
ト板7の表示部に設けた微小プリズムアレー7aで垂直
方向に曲げられ、ペンタプリズム8、接眼レンズ11を
通って撮影者眼15に達する。
【0037】そこでピント板7の焦点検出領域に対応す
る複数の位置(測距点)にこの微小プリズムアレイ7a
を枠状に形成し、これを各々に対応した5つのスーパー
インポーズ用LED21(各々をLED−L1、LED
−L2、LED−C、LED−R1、LED−R2とす
る)によって照明する。
【0038】23はファインダー視野領域を形成する視
野マスク。24はファインダー視野外に撮影情報を表示
するためのファインダー内LCDで、照明用LED(F
−LED)25によって照明されている。
【0039】LCD24を透過した光は三角プリズム2
6によってファインダー視野内に導かれ、そしてファイ
ンダー視野外に表示され、撮影者は撮影情報を知ること
ができる。
【0040】31は撮影レンズ1内に設けた絞り、32
は後述する絞り駆動回路111を含む絞り駆動装置、3
3はレンズ駆動用モーター、34は駆動ギア等からなる
レンズ駆動部材、35はフォトカプラーでレンズ駆動部
材34に連動するパルス板36の回転を検知してレンズ
焦点調節回路110に伝えている。焦点調節回路110
は、この情報とカメラ側からのレンズ駆動量の情報に基
づいてレンズ駆動用モーターを所定量駆動させ、撮影レ
ンズ1を合焦位置に移動させるようになっている。37
は公知のカメラとレンズとのインターフェースとなるマ
ウント接点である。
【0041】図2は、本発明のカメラに内蔵された電気
回路の説明図である。図1と同一のものは同一番号をつ
けている。
【0042】カメラ本体に内蔵されたマイクロコンピュ
ータの中央処理装置(以下CPU)100には視線検出
回路101、測光回路102、自動焦点検出回路10
3、信号入力回路104、LCD駆動回路105、LE
D駆動回路106、IRED駆動回路107、シャッタ
ー制御回路108、モーター制御回路109が接続され
ている。又、撮影レンズ内に配置された焦点調節回路1
10、絞り駆動回路111とは図1で示したマウント接
点37を介して信号の伝達がなされる。
【0043】CPU100に付随したEEPROM10
0aは記憶手段としての視線の個人差を補正する視線補
正データの記憶機能を有している。
【0044】視線検出回路101は、イメージセンサ1
4(IMAGE−EYE)からの眼球像の出力をA/D
変換し、この像情報をCPU100に送信する。CPU
100は後述するように視線検出に必要な眼球像の各特
徴点を後述する所定のアルゴリズムに従って抽出し、さ
らに各特徴点の位置から撮影者の視線を算出する。
【0045】測光回路102は測光センサ10からの出
力を増幅後、対数圧縮、A/D変換し、各センサの輝度
情報としてCPU100に送られる。測光センサ10
は、4つの領域を測光するSPC−L、SPC−C、S
PC−R、SPC−Aからなるフォトダイオードで構成
されている。
【0046】図2のラインセンサ6fは、画面内の5つ
の測距点に対応した5組のラインセンサCCD−L2、
CCD−L1、CCD−C、CCD−R1、CCD−R
2から構成される公知のCCDラインセンサである。
【0047】自動焦点検出回路103は、これらライン
センサ6fから得た電圧をA/D変換し、CPU100
に送る。SW−1はレリーズ釦41の第一ストロークで
ONし、測光、AF、視線検出動作等を開始するスイッ
チ、SW−2はレリーズ釦の第二ストロークでONする
レリーズスイッチ、SW−AELはAEロック釦43を
押すことによってONするAEロックスイッチ、SW−
DIAL1とSW−DIAL2は、不図示の電子ダイヤ
ル内に設けたダイヤルスイッチで信号入力回路104の
アップダウンカウンターに入力され、電子ダイヤルの回
転クリック量をカウントする。
【0048】SW−HV1、2は水銀スイッチ等で構成
されるカメラが横位置で構えられたか、縦位置で構えら
れたかを検知する姿勢検知スイッチである。
【0049】105は液晶表示素子LCDを表示駆動さ
せるための公知のLCD駆動回路で、CPU100から
の信号に従い絞り値、シャッター秒時、設定した撮影モ
ード等の表示をモニター用LCD42とファインダー内
LCD24の両方に同時に表示させることができる。L
ED駆動回路106は照明用LED(F−LED)25
とスーパーインポーズ用LED21を点灯、点滅制御す
る。IRED駆動回路107は赤外発光ダイオード(I
RED1〜6)13a〜13fを状況に応じて選択的に
点灯させる。
【0050】シャッター制御回路108は通電すると先
幕を走行させるマグネットMG−1と、後幕を走行させ
るマグネットMG−2を制御し、感光部材に所定光量を
露光させる。モーター制御回路109はフィルムの巻き
上げ、巻き戻しを行うモーターM1と主ミラー2及びシ
ャッター4のチャージを行うモーターM2を制御するた
めのものである。これらシャッター制御回路108、モ
ーター制御回路109によって一連のカメラのレリーズ
シーケンスが動作する。
【0051】図3、図4は、図2のイメージセンサ14
(IMAGE−EYE)の回路説明図である。及びその
動作説明シーケンス図である。
【0052】イメージセンサ14は、実際には水平画素
150画素、垂直画素100画素、全画素150×10
0=15000画素程度のエリアセンサとするが、図
3、図4では説明を簡単にするため、便宜上4×4=1
6画素のエリアセンサとして描いている。
【0053】イメージセンサ14は、CPU100によ
り、視線検出回路101を介して制御される。その機能
は画素のリセット機能、光電変換蓄積機能、その蓄積信
号出力機能であり、更に、水平ライン毎のピーク値、及
び垂直ライン毎のピーク値を実際の視線検出するための
画素信号出力に先立って出力する機能、そして水平5×
垂直5=25画素の平均ブロック信号を画素信号出力に
先立って出力する機能を有している。但し、図3、図4
では説明を簡単にするために、ブロック信号は2×2=
4画素の平均ブロック信号としている。
【0054】そして、以下に光電変換素子の各出力信号
をA/D変換し視線検出するための信号処理を行う作業
に先立って、眼球の特徴点を示す光電変換出力(P像、
あるいは瞳孔部)を特定し、実際の信号処理を行うに足
るイメージセンサ内上のエリアを設定した後に、この設
定されたエリア内の全光電変換素子出力をもとにして視
線を検出する実施例を説明する。
【0055】まず、図3及び図4をもとにイメージセン
サ14の回路、そしてその動作を説明する。尚、ここで
の実施例では、先立ってP像及び瞳孔部の両者を検出す
る例を示す。
【0056】3はひとつの光電変換素子を示し、そのベ
ースに光電荷を蓄積するダブルエミッタを有するバイポ
ーラトランジスタから成る。第1のエミッタは出力線1
と、第2のエミッタは出力線2と接続する。4はバイポ
ーラトランジスタ3のベース電位を制御するための容
量、5は上記ベースをリセットするためのP型MOSト
ランジスタ、6は垂直出力線1を接地するためのMOS
トランジスタ、7は6のゲートにパルスを印加するため
の端子、8は容量4を通してバイポーラトランジスタ3
のベース電位を制御し、画素のリセット、読み出しを行
うための水平駆動線、9は垂直シフトレジスタIの出力
がゲートに印加されると、ONすることで駆動する画素
行を選択するバッファMOSトランジスタ、10は画素
の駆動パルスを印加するための端子、11は左端及び右
端のpMOS5のドレインに接続する配線、12はその
出力が配線11に接続するエミッタフォロワ、13はエ
ミッタフォロワ12のベース電位を制御するためのMO
Sトランジスタ、14は13のドレイン端子に接続する
電源端子、15はMOS13のゲートにパルスを印加す
るための端子、16はそのドレインが正電位に固定され
ているP型MOSトランジスタ、17は16のゲートに
パルスを印加するための端子、C11、C21、…、C
14、C24は、垂直出力線1を通して出力される画素
出力電位を蓄積するための容量、M11、M21、…、
M14、M24は、出力線1と容量C11、C21、
…、C14、C24とをスイッチするためのMOSトラ
ンジスタ、34、35はM11、M21、…、M14、
M24のゲートにパルスを印加するための端子、21は
水平出力線、C2はそこの寄生容量、M41、…、M4
4は水平シフトレジスタ出力によって選択されると容量
C11、C21、…、C14、C24と水平出力線21
とを導通させるスイッチMOSトランジスタ、52は2
1を接地するためのMOSトランジスタ、22は52の
ゲートにパルスを印加するための端子、24は出力線2
1の電位を入力とするアンプ、20はその出力、25は
出力線2を通して出力させる画素出力電位を蓄積するた
めの容量、26は出力線2と容量25とをスイッチする
ためのMOSトランジスタ、27は26のゲートにパル
スを印加するための端子、28は容量25の電位が導通
される出力線、29が28の出力端子、30は垂直シフ
トレジスタIIの出力によって選択され、容量25と出
力線28とを順次導通するスイッチMOSトランジスタ
である。32は垂直シフトレジスタIで、38はそれを
駆動するパルスを印加するための端子。33は垂直シフ
トレジスタIIで、39はそれを駆動するパルスを印加
するための端子。31は水平シフトレジスタで、37は
それを駆動するパルスを印加するための端子、M31、
…、M36は容量C11、C21、…、C41、C42
をブロック毎に直結するMOSトランジスタで、36は
それのゲートにパルスを印加するための端子である。
【0057】次にこのセンサの動作を図4に示したパル
スタイミングチャートを用いて説明する。図4におい
て、φVC、φR、φP、φRC、φT1 、φT2 、φ
HC、φVT、φBK、φH、φV1、φV2はそれぞ
れパルス入力端子7、10、15、17、34、35、
22、27、36、37、38、39に接続するセンサ
駆動パルスである。V1、V2、V3、V4はそれぞれ
第1、第2、第3、第4画素行を選択する信号、AD&
処理1、AD&処理2は20及び29の出力信号を、視
線検出回路101でAD変換し、CPU100が後述す
る処理を行うことを意味している。
【0058】〈ベースクランプ〉最初にφP(15)が
Lowとして、エミッタフォロワ12の出力電位を正と
する。このときpMOS5のゲートに接続する駆動線8
電位はLowであり、pMOS5がONして、全画素に
おけるバイポーラトランジスタ3のベース電位がエミッ
タフォロワ12の出力電位と同電位となる。
【0059】〈順次リセット〉φP(15)をLowと
して、エミッタフォロワ12の出力をGND(接地)と
した後、φVC(7)をHighとして、垂直出力線1
を接地し、各画素のバイポーラトランジスタ3に第1エ
ミッタのエミッタ電流を流すことにより、そのベース電
位を下げる。さらに垂直シフトレジスタI32をφV1
による駆動パルスで起動し、1行毎にφR(10)よ
り、水平駆動線8にパルスを印加する。駆動線8がHi
ghとなった行の各画素のベース電位は容量4の容量結
合によって一旦上昇するが、再び第1エミッタのエミッ
タ電流が流れることでベース電位が下がり、8の電位が
Lowとなると、上記容量結合によってベース電位は負
に振られ、第1エミッタ−ベース間は逆バイアス状態と
なる。
【0060】〈蓄積〉この逆バイアス状態になった時点
で、入射光により発生した電荷が各画素のベースに蓄積
し、蓄積電荷量に応じてベース電位が上昇する。
【0061】〈H−Lineピーク読み出し〉次にφR
C(17)をLowとして、pMOSトランジスタ16
をONし、水平駆動線電位をHighレベルとする。こ
の時各画素のベース電位は前記容量結合により持ち上げ
られて、エミッタ−ベース間が順バイアス状態となり、
各行における最大出力画素の出力値が出力線2に表れ、
その出力線電位がMOSトランジスタ27を通して、各
蓄積容量25に蓄積される。次に、垂直シフトレジスタ
II33をφV2(39)により起動させ、容量25の
電位を出力端子29から順次出力される。この信号はC
PU100により、蓄積時間を制御するために使われ
る。
【0062】〈V−Lineピーク読み出し〉φVCを
Lowとして垂直出力線1をフローティングとし、φR
C(17)をLowとして、pMOSトランジスタ16
をONし、水平駆動線電位をHighレベルとする。こ
の時、各画素のベース電位は前記容量結合により持ち上
げられて、エミッタ−ベース間が順バイアス状態とな
り、各列における最大出力画素の出力値が出力線1に表
れ、その出力線電位がそれぞれMOSトランジスタM1
1、M12、M13、M14を通して、蓄積容量C1
1、C12、C13、C14に蓄積される。次に、水平
シフトレジスタ31をφHにより起動させ、容量C11
〜C14の電位を、一旦C2と容量分割したあとアンプ
24により20から出力される。この信号はCPU10
0により処理され、後述するエリア限定などに使われ
る。
【0063】〈ブロック読み出し〉また、φVC(7)
のパルスによって垂直出力線1の電位を接地した後にフ
ローティングとし、φV1(38)により垂直シフトレ
ジスタIを駆動すると同時に、φR(10)のパルスを
印加し、駆動線8の一行目V1にパルスが印加される。
出力線1には一行目の各画素(S11〜S14)の出力電位
が表れ、φT1 (34)のパルスにより、その出力電位
が容量C11、C12、C13、C14に各々蓄積され
る。
【0064】次に、φV1(38)により垂直シフトレ
ジスタIの出力を次の行にして、上記動作を繰り返す。
そして、φT1 (34)のパルスのかわりにφT2 (3
5)のパルスを使い、二行目の各画素(S21〜S24)の
出力電位を各々容量C21、C22、C23、C24に
蓄積される。
【0065】次に、φBK(36)のパルスを印加する
と、M31、…、M36のMOSトランジスタがオン
し、C11、C21、C12、C22の容量が平均化さ
れる。同様にC13、C23、C14、C24の容量も
平均化される。これによりブロック化された画素S1
1、S12、S21、S22の出力信号がC11、C2
1、C12、C22に平均化される。
【0066】一方、ブロック化された画素S13、S1
4、S23、S24の各出力信号がC13、C14、C
23、C24に平均化される。この平均化されたブロッ
ク信号を、φH(37)により駆動される水平シフトレ
ジスタにより、順次水平出力線21に転送され、アンプ
24を通して、出力端子20から出力される。CPU1
00は、C11の電位のブロック信号を受け取ると所定
の処理(A/D変換及び読み取り)を行い、次のC12
の電位のブロック信号は、C11と同じなのでAD変換
及び処理は行わない。同様にC13のブロック信号のA
D変換と所定の処理を行って次のC14の信号は行わな
い。
【0067】更に、垂直シフトレジスタIの出力を動か
して、上記動作により3行目の各画素をC11、C1
2、C13、C14に蓄積させ、4行目の各画素をC2
1、C22、C23、C24に蓄積される。そして、φ
BK(36)により、画素S31、S32、S41、S
42の信号を容量C11、C12、C21、C22に平
均化し、画素S33、S34、S43、S44の信号を
容量C13、C14、C23、C24に平均化される。
このブロック信号を水平シフトレジスタの駆動により出
力され、上記と同様な処理が行われる。
【0068】〈本読み出し(第1行〜第4行読み出
し)〉ここで、はじめて視線を検出するための本読み出
しにはいるが、全ての画素に同様なAD変換と処理を施
すのではなく、上記のピーク読み出しとブロック読み出
しにより処理により、エリアを限定して、限定されたエ
リアのみAD変換と処理を行う。本実施例では、2行目
と3行目の2列目、3列目のみを限定したものとして説
明する。
【0069】まず一行目は、限定エリア外であるので、
垂直シフトレジスタを動かすが、信号の出力は行わな
い。2行目では、ブロック読み出しの要領と同様に画素
の信号を容量C11、C12、C13、C14に蓄積
し、水平シフトレジスタにより出力端子20より信号を
出力していく。CPU100は、2列目(S22)と3
列目(S23)の信号だけはAD変換と所定の処理を行
って、1列目(S21)、4列目(S24)は処理を行
わない。3行目は2行目と同様な処理を行い、4行目は
1行目と同様である。
【0070】このように、本実施例のイメージセンサ1
4(IMAGE−EYE)に対する信号処理は本読み出
しに先立って、H−Lineピーク読み出し、V−Li
neピーク読み出し、ブロック読み出しを行うことがで
き、あらかじめP像の位置・瞳孔円の位置、又そのレベ
ルをおおよそ求め、全画素の中の限定されたエリアのみ
の画素信号をAD変換及び処理を行う。
【0071】次に図8をもとに注視点を検出するための
フローを説明する。CPU100が視線検出動作を開始
すると、ステップ(#000)を経て、ステップ(#0
01)のデータの初期化を実行する。
【0072】変数EDGCNTは、虹彩と瞳孔の境界を
エッジとして抽出した個数をカウントする変数である。
【0073】変数IP1、IP2、JP1、JP2は発
光ダイオード13a、13bの角膜反射像(以下「プル
キンエ像;P像」と称する)の位置を表す変数であり、
横方向(X軸)の範囲IP1〜IP2、縦方向(Y軸)
の範囲JP1〜JP2で囲まれる眼球反射像の領域内
に、2個のP像が存在する。
【0074】いまエリアセンサ14の画素数は横方向に
150画素、縦方向に100画素のサイズを想定してお
り、IP1、IP2、JP1、JP2は全体のちょうど
真中の位置(75、50)を初期値として格納してお
く。
【0075】データの初期化の次はステップ(#00
2)へ移行する。
【0076】ステップ(#002)では撮影者の眼を照
明するための赤外発光ダイオード(IRED)13a−
13fの内から適切な組み合わせのIREDを選んで点
灯する。IREDの選択は姿勢スイッチSW−HV1、
SW−HV2により、カメラが横位置か縦位置か、ある
いは撮影者が眼鏡をかけているか否かによってなされ
る。そしてIMAGE−EYE14はベースクランプと
順次リセットが行われ、イメージセンサ14の蓄積が開
始される。
【0077】ステップ(#003)では、蓄積中に、水
平ライン(H−Line)ピーク読み出しを行う。ステ
ップ(#004)で、水平ラインピークの最大値が所定
のレベルに達しているかで、達していない場合はステッ
プ(#003)→ステップ(#004)を繰り返し、所
定値に達するまでループする。これにより、蓄積時間を
コントロールし、常に適切な画素信号が読み出せるよう
にしている。
【0078】所定の電荷蓄積が終了すると、次のステッ
プ(#005)でIREDを消燈する。
【0079】次にステップ(#006)で垂直ライン
(V−Line)のピーク読み出しを行う。
【0080】ステップ(#007)では、水平ラインの
ピーク値と垂直ラインのピーク値から極大ポイント(P
像候補ポイント)を抽出する。図11は、その様子を模
式的に表したもので、エリアセンサ内に眼球像が図のよ
うに見えていたとき、H−Lineピーク値の極大ポイ
ントが座標y1 、y2 に、V−Lineピーク値の極大
ポイントが座標x1 、x2 決定される。
【0081】ステップ(#008)で極大ポイントを基
に制限領域を決める。すなわち、 JL1←y1 −δb1 JL2←y2 +δb2 IL1←x1 −δa IL2←x2 +δa とし、x軸(水平方向)は座標IL1−IL2のエリア
に、y軸(垂直方向)は座標JL1〜JL2のエリアの
領域を決める。δa、δb1、δb2はそれぞれP像の位置
より瞳孔円の存在できうる範囲の最大限を推定して決め
られた値である。この限定されたエリアを図11でも限
定検出エリアとして示している。ステップ(#009)
以降から、エリアセンサの本読み出し及び逐次処理を開
始する。
【0082】ステップ(#009)はループ変数Jを0
から99までカウントアップしながら、枠内の処理を実
行する、いわゆる「ループ処理」を表している。
【0083】ステップ(#010)では、y座標がJL
1〜JL2の間にないときは、図3、図4で説明したと
ころの1行目、4行目のように、垂直シフトレジスタI
を1ステップ進ませるだけで、Jをカウントアップさせ
て次の行へ進む。
【0084】y座標がJL1〜JL2の間にあるとき
は、ステップ(#011)に進み、エリアセンサの横方
向(X軸)の1ラインの光電変換信号の読み込みを行
う。1ラインの読み込みはサブルーチン形式となってお
り、図18にサブルーチン「1ライン読み込み」のフロ
ーチャートを示す。
【0085】サブルーチン「1ライン読み込み」がコー
ルされると、図18のステップ(#100)を経て、次
のステップ(#101)を実行する。ステップ(#10
1)と、その枠内のステップ(#102)は、前述した
ステップ(#006)と同様のループ処理を表してお
り、ステップ(#101)では変数Kを0から3へカウ
ントアップさせながら、そしてステップ(#102)で
は変数Iを0から149までカウントアップさせなが
ら、それぞれの枠内の処理を実行してゆく。従って、ス
テップ(#101)とステップ(#102)は変数Kと
変数Iの、いわゆる「入れ子」となったループ処理を表
している。
【0086】ステップ(#102)のループ処理内のス
テップ(#103)では、配列変数IM(i、k)の再
格納作業を行っている。
【0087】本実施例では、CPU100が信号処理を
行っているわけであるが、一般にマイクロコンピュータ
の内蔵RAM(ランダム・アクセス・メモリ)の記憶容
量は、エリアセンサの全画素情報を一度に記憶できる程
大きくはない。そこで、本実施例では、エリアセンサか
ら出力される像信号を逐次読みだしながら、横方向(X
軸)5ライン分に相当する最新の像信号のみをマイクロ
コンピュータの内蔵RAMに記憶させ、1ラインの読み
込み毎に視線検出のための処理を実行するようにしてい
る。
【0088】ステップ(#101)からステップ(#1
03)の2重ループ処理で実行している内容は、新たな
1ライン分の像信号を読み込むために、記憶している過
去5ライン分の像信号データを更新する作業である。即
ち、配列変数IM(i、k)の内、IM(i、0)[i
=0〜149]が最も過去の、またIM(i、4)[i
=0〜149]が最も最近の1ラインの像データを表し
ており、次のようにデータを更新して新たな1ライン分
の像信号をIM(i、4)[i=0〜149]に格納で
きるように準備する。
【0089】IM(i、0)←IM(i、1) IM(i、1)←IM(i、2) IM(i、2)←IM(i、3) IM(i、3)←IM(i、4)[i=0〜149]
【0090】さて、ステップ(#101)〜ステップ
(#103)のデータ更新のためのループ処理が終了す
ると、次のステップ(#104)のループ処理を実行す
る。
【0091】ステップ(#104)のループ処理では、
エリアセンサの横方向(X軸)の1ライン分(150画
素)の像信号を出力させながら、制限領域内のみ、A/
D変換しながら、RAMに格納し、また像信号の最小値
を検出している。
【0092】ステップ(#105)で、Iの値(x座
標)がIL1〜IL2の間にないときは、図3、図4で
の第2行1列目・4列目のように、A/D変換や処理を
行わず、Iをステップアップし次の列へ進む。
【0093】Iの値がIL1〜IL2の間にあるとき
は、ステップ(#106)で進み、CPU100は、像
信号のA/D変換された値ADCを一時的にEYEDT
に格納する。
【0094】そして、次のステップ(#106)にて、
EYEDTの値を配列変数IM(I、4)に格納する。
変数Iは外側のループ処理ステップ(#104)にて0
から149までカウントアップされる。
【0095】ステップ(#107)と(#108)は像
信号の最小値を検出処理である。変数EYEMINは像
信号の最小値を保持する変数であり、ステップ(#10
7)において、EYEMINよりEYEDTの方が小さ
ければ、ステップ(#108)へ分岐し、EYEMIN
をこの小さなEYEDTの値で更新する。
【0096】ステップ(#104)〜(#109)のル
ープ処理が終了し、新たな1ライン分の像信号の格納
と、最小値の検出が終ると、次のステップ(#110)
でサブルーチン「1ラインの読み込み」をリターンす
る。
【0097】図8のフローチャートに戻って、ステップ
(#011)のサブルーチン「1ラインの読み込み」が
完了すると、次のステップ(#012)へ移行し、外側
のループ処理ステップ(#009)のループ変数Jが5
以上か否か調べる。
【0098】ループ変数Jはエリアセンサの縦方向(Y
軸)の画素ラインを表しており、本実施例では、エリア
センサの画素数を(150×100)としているので、
Jは0から99までカウントアップされる。
【0099】ステップ(#012)にてループ変数Jが
5以上の場合にはステップ(#013)へ分岐する。こ
れは、読み込んだ像信号のライン数が5以上になると、
エリアセンサの縦方向(Y軸)の処理が出来るようにな
るからである。
【0100】分岐した先のステップ(#013)ではサ
ブルーチン「P像の検出」を実行する。
【0101】サブルーチン「P像の検出」は、前述した
角膜反射像(P像)の位置を検出するための処理であ
り、エリアセンサの横方向(X軸)の1ラインの読み込
み毎に実行する。そのフローチャートを図19に示す。
【0102】サブルーチン「P像の検出」がコールされ
ると、ステップ(#200)を経てステップ(#20
1)のループ処理を実行する。
【0103】ループ処理を制限領域内IL1〜IL2で
行うことになる。ループ処理内では、像データ(配列変
数IM(i、k)に記憶)中のP像の位置を検索し、も
し見つかれば、エリアセンサ上でのその位置を記憶す
る。本実施例ではP像は2個発生するので、記憶する位
置情報も2個となる。
【0104】ループ内の最初のステップ(#202)で
は、所定位置の像データがP像としての条件を満足する
か否かを判定する。条件としては、次のようなものであ
る。
【0105】ステップ(#202)の「P像条件」 IM(I、2)>C1 かつIM(I、1)>C2 かつIM(I、3)>C2 かつIM(I−1、2)>C2 かつIM(I+1、2)>C2 但し、C1、C2はしきい値定数で、C1≧C2なる関
係があり、水平ラインピーク値読み出し又は垂直ライン
ピーク値読み出しから求められたEYEMAX(ピーク
値の中の最大の値)から導かれる。例えば、C1=EY
EMAX−20、C2=EYEMAX−50である。尚
この数値はAD変換と8bitとし、0〜255の値を
とるものと想定している。
【0106】このように、EYEMAXの値からしきい
値を決めるので、本実施例のように、EYEMAXが一
定になったときに蓄積を止める方式ではなくて、例えば
一定時間蓄積を行うような制御方法の場合には、EYE
MAXが一定にならない可能性があるので、上記式でC
1、C2を求めることにより、P像の検出を常に信頼性
良く行うことができる。
【0107】上記条件は、P像が図5で説明したよう
に、スポット像のようなものであることに注目し、横/
縦方向(X/Y軸)の両方向に定義したものである。こ
の条件が満足されたとき、位置(I、2)にP像が存在
するものと見なす。
【0108】前述したように配列変数IM(i、k)は
エリアセンサの横方向(X軸)の1ライン読み込み毎に
更新しており、縦方向(Y軸)位置JラインはIM
(i、4)[i=0〜149]に格納されている。従っ
て、変数IMに対するアドレス(1、2)は、エリアセ
ンサ上では、位置(I、J−2)となる。
【0109】ステップ(#202)にて、P像の条件を
満足する像データがあった場合、ステップ(#203)
以降へ分岐し、ない場合には外側のループ変数Iがカウ
ントアップされる。
【0110】ステップ(#203)以降は、2個のP像
の存在範囲(X軸方向の範囲[IP1〜IP2]、Y軸
方向の範囲[JP1〜JP2])を決定する処理であ
る。
【0111】先ず、ステップ(#203)では、エリア
センサの横方向(X軸)の位置を表す変数Iと変数IP
1を比較し、I<IP1ならば、ステップ(#204)
へ分岐する。即ち、P像の存在範囲のうち、横方向の左
方にあるP像位置IP1の位置よりも、変数Iの位置の
方が左にあれば、IP1を書換えようとするものであ
る。
【0112】ステップ(#204)では、変数IP1に
変数Iの値を格納し、そのときの縦方向の位置(J−
2)を変数JP1に格納する。
【0113】ステップ(#205)、(#206)で
は、P像存在範囲の内、横方向の右方にあるP像位置I
P2と、その縦方向位置を表すJP2の更新の判定を行
う。
【0114】以上のようにして、ステップ(#201)
のループ処理で、横方向(X軸)の位置Iが0から14
9までの1ラインの処理が終了すると、次のステップ
(#207)へ移行する。
【0115】ステップ(#207)では、後の処理で参
照する変数XP1、XP2、YP1、YP2を図中の式
の如く計算する。
【0116】これらの変数の意味については図23の説
明のところで詳述するが、簡単に述べるならば、瞳孔中
心を検出する際に、P像位置周辺に発生する偽の瞳孔エ
ッジ情報を排除するために使用するものである。
【0117】ステップ(#207)の処理が終了する
と、次のステップ(#208)でサブルーチン「P像の
検出」をリターンする。
【0118】再び図8のフローチャートに戻る。
【0119】ステップ(#013)のサブルーチン「P
像の検出」が完了すると、次のステップ(#014)で
サブルーチン「瞳孔エッジの検出」を実行する。
【0120】「瞳孔エッジの検出」は眼球反射像中の瞳
孔エッジ(虹彩と瞳孔の境界)の位置の検出を行うサブ
ルーチンであり、図20にそのフローチャートを示して
いる。
【0121】サブルーチン「瞳孔エッジの検出」がコー
ルされると、ステップ(#300)を経て、次のステッ
プ(#301)のループ処理が実行される。ステップ
(#301)は図8ステップ(#201)と同時に、エ
リアセンサの横方向(X軸)の位置を表す変数Iをルー
プ変数とするループ処理である。
【0122】また、P像の検出と同様に、限定エリアI
L1〜IL2内のみのループである。
【0123】ステップ(#301)のループ処理内で
は、像データ中に瞳孔のエッジを表す特徴があるかどう
かを検索し、もしあれば、その位置情報を記憶する。瞳
孔エッジ位置情報は、配列変数EDGDT(m、n)に
格納される。
【0124】配列変数EDGDT(m、n)のデータ形
式は以下のように設定している。
【0125】 EDGDT(m、1)…m番目のエッジ点の輝度 EDGDT(m、2)…m番目のエッジ点のX軸座標 EDGDT(m、3)…m番目のエッジ点のY軸座標 mは瞳孔エッジ検出の逐次処理の過程で見つかったエッ
ジ点の順番である。従って、エッジがM個検出されれ
ば、配列変数EDGDTの容量は[M×3]バイ程が必
要となる。フローチャートでは、エッジの検出個数は変
数EDGCNTでカウントしている。
【0126】さて、ループ内の最初のステップ(#30
2)では、像データIM(I、2)の近傍に、過去に検
出されたエッジ点があるか否かを判定している。もう少
し詳しく説明すると次のようになる。
【0127】外側のループ処理のループ変数Iは、エリ
アセンサの横方向(X軸)の位置を表し、像データを格
納している配列変数IM(i、k)に対するアドレス
(I、2)は、いま正に瞳孔エッジであるか否かを検定
しようとしている点(画素の座標)である。この(I、
2)の点に隣接する各点が、過去の逐次処理の過程で瞳
孔エッジと判定されたかどうかを、エッジ位置情報を格
納している配列変数EDGDT(m、n)から調べよう
とするものである。
【0128】ステップ(#302)の判定条件を具体的
に記述すると、次のような条件となる。
【0129】ステップ(#302)の「判定条件」 {EDGDT(m、2)、EDGDT(m、3)}=
{(I−1)、(J−2)} あるいは={(I−1)、(J−3)} あるいは={(I)、(J−3)} あるいは={(I+1)、(J−3)} なる{EDGDT(m、2)、EDGDT(m、3)}
が存在する。 但し、m=0〜(EDGCNT−1)
【0130】現在検定しようとしている座標は
{(I)、(J−2)}であるから、上記座標は現在座
標に対して順に左隣、左上隣、上隣、右上隣の位置を表
している。
【0131】また、EDGDT(m、2)、EDGDT
(m、3)はそれぞれm番目のエッジ点のX軸座標、Y
軸座標を表しているから、結局上記条件は、現在座標の
左隣、左上隣、上隣、右上隣の位置にエッジ点があった
かどうかを判定していることになる。
【0132】ステップ(#302)において、座標
(I、J−2)の近傍にエッジ点があると判定された場
合にはステップ(#304)へ、そうでない場合にはス
テップ(#303)へ分岐し、それぞれ別の条件を用い
て瞳孔エッジの判定を行う。
【0133】近傍にエッジ点のない場合について先に説
明する。
【0134】ステップ(#303)では、現在検定しよ
うとしている座標(I、J−2)の像データが瞳孔エッ
ジの条件(ステップ(#303)での判定条件を「エッ
ジ条件1」と称する)を満たすか否かを判定している。
座標(I、J−2)の像データは配列変数IM(I、
2)に格納されていることに留意されたい。
【0135】判定条件は以下のようになる。
【0136】ステップ(#303)の「エッジ条件1」 1.{IM(I−1、2)−IM(I、2)}>C3
かつ {IM(I−2、2)−IM(I−1、2)}<C3
かつ IM(I、2)<a 2.{IM(I+1、2)−IM(I、2)}>C3
かつ {IM(I+2、2)−IM(I+1、2)}>C3
かつ IM(I、2)<a 3.{IM(I、1)−IM(I、2)}>C3 かつ {IM(I、0)−IM(I、1)}>C3 かつ IM(I、2)<a 4.{IM(I、3)−IM(I、2)}>C3 かつ {IM(I、4)−IM(I、3)}>C3 かつ IM(I、2)<a
【0137】上記1〜4を満足すれば、座標(I、J−
2)をエッジ点と見なす。但し、a=EYEMIN+C
4で、EYEMINは現在の逐次処理までの像データ中
の最低輝度値である。
【0138】C4はEYEMAXとEYEMINによっ
て決まる定数であり、 C4=(EYEMAX−EYEMIN)×C5 と表される。これは、瞳孔エッジ条件を信頼性良く決め
るのに必要であり、外光が多くて、信号のダイナミック
レンジ(EYEMAX−EYEMIN)が小さい場合で
も、また反対にダイナミックレンジが大きい場合でも、
都合が良い。
【0139】C3、C5は例えばC3=3、C5=1/
10である。
【0140】上記条件は、瞳孔エッジ(虹彩と瞳孔の境
界)においては連続して所定の輝度差があり、同時に瞳
孔部は眼球反射像の中で最も低い輝度となることを特徴
としてとらえている。1と2の条件はエリアセンサの横
方向(X軸)のエッジを抽出し、3と4の条件は縦方向
(Y軸)のエッジを抽出する。
【0141】座標(I、J−2)が瞳孔エッジ点として
抽出された場合には、ステップ(#303)からステッ
プ(#305)へ分岐し、エッジ点の輝度値と座標を記
憶する。
【0142】ステップ(#305)では、エッジ位置情
報格納用の配列変数EDGDT(m、k)に次のように
情報を格納する。
【0143】 EDGDT(EDGCNT、1)←IM(I、2) EDGDT(EDGCNT、2)←I EDGDT(EDGCNT、3)←J−2
【0144】IM(I、2)はEDGCNT番目に検出
されたエッジ点の輝度、Iは同x座標、(J−2)は同
Y座標である。
【0145】そして、検出されたエッジ点の個数をカウ
ントする変数EDGCNTを1つカウントアップする。
【0146】ステップ(#305)の処理が終了する
と、外側のループ処理のループ変数I(横方向、X軸の
座標を表す)をカウントアップし、再びステップ(#3
02)以降のフローチャートを実行する。
【0147】さてステップ(#302)において、現在
座標(I、J−2)の近傍にエッジ点があると判定され
た場合について説明する。
【0148】その場合、ステップ(#304)へ分岐
し、ステップ(#303)と同じように、現在検定しよ
うとしている座標(I、J−2)の像データが瞳孔エッ
ジの条件(ステップ(#304)での判定条件を「エッ
ジ条件2」と称する)を満たすか否かを判定する。
【0149】ここで、「エッジ条件2」は「エッジ条件
1」よりも、いわば緩い条件を設定してある。本実施例
では、条件式に同じで、しきい値C3、C4、C5をそ
れぞれC3′、C4′、C5′とし、次のように変えて
いる。
【0150】C3′=2、C4′=(EYEMAX−E
YEMIN)×C5′、C5′=0.15 上のように設定することで、「エッジ条件1」よりもエ
ッジと判定される率が上昇する。
【0151】エッジ条件をこのように2種類用意する理
由は、そもそもエッジ点は孤立して存在するものではな
く、連続しているものであり、ある点がエッジ点である
ならば、その近傍が同じくエッジ点である可能性が高い
であろう、という観点に基づいている。
【0152】ステップ(#304)の「エッジ条件2」
でエッジ点と判定された場合には、ステップ(#30
5)へ分岐して、その座標の情報を記憶する。
【0153】以上のようにして、ループ変数IがIL2
となるまで、ステップ(#301)のループ処理が実行
され、エリアセンサの横方向(X軸)の1ライン分のエ
ッジ検出の処理が終了すると、ステップ(#306)へ
移行し、サブルーチン「瞳孔エッジの検出」をリターン
する。
【0154】再び図8の説明に戻る。
【0155】ステップ(#014)のサブルーチン「瞳
孔エッジの検出」が完了すると、外側のループ処理ステ
ップ(#009)のループ変数J(エリアセンサの縦方
向、Y軸の座標を表す)がカウントアップされ、Jが9
9となるまで、再びステップ(#010)以降の処理が
実行される。
【0156】ループ変数Jが99となり、エリアセンサ
の全画素の読み込みと処理が終了すると、ステップ(#
009)からステップ(#015)へ移行する。
【0157】ステップ(#015)〜(#017)で
は、ステップ(#009)のループ処理内で検出された
P像位置および瞳孔エッジ情報から、瞳孔の中心座標の
検出と視線の検出を行う。
【0158】先ず、ステップ(#015)ではサブルー
チン「瞳孔推定範囲の設定」をコールする。
【0159】ステップ(#014)のサブルーチン「瞳
孔エッジの検出」で検出された複数の瞳孔エッジ点に
は、実際に瞳孔円(虹彩と瞳孔の境界が形成する円)を
表しているエッジ点以外にも、種々のノイズによって発
生した偽のエッジ点も含まれている。
【0160】「瞳孔推定範囲の設定」は、上記偽のエッ
ジ点を排除するために、P像位置情報に基づいて、確か
らしいエッジ点の座標範囲を限定するためのサブルーチ
ンであり、そのフローチャートを図21に示している。
【0161】サブルーチン「瞳孔推定範囲の設定」がコ
ールされると、ステップ(#400)を経て、ステップ
(#401)を実行する。
【0162】ステップ(#401)では、先に「P像の
検出」サブルーチンで説明したP像位置範囲、即ち、横
方向(X軸)にIP1〜IP2、縦方向(Y軸)にJP
1〜JP2の情報を用いて、瞳孔円の座標範囲IS1、
IS2、JS1、JS2を次の式に従って計算する。
【0163】IS1←IP1−20 IS2←IP2+20 JS1←(JP1+JP2)/2−20 JS2←(JP1+JP2)/2+40
【0164】確からしい瞳孔エッジ点は、エリアセンサ
の横方向(X軸)の範囲IS1〜IS2、縦方向(Y
軸)の範囲JS1〜JS2に存在する点である、と設定
する。
【0165】本実施例の光学系では、図5(A)に示し
た如く、2個のP像は常に瞳孔円の円内の上部に存在す
るようになっており、これから上記計算式が成立する。
【0166】ステップ(#401)の計算の後は、ステ
ップ(#402)へ移行し、サブルーチン「瞳孔推定範
囲の設定」をリターンする。
【0167】図8に戻って、次にステップ(#016)
のサブルーチン「瞳孔中心の検出」をコールする。
【0168】「瞳孔中心の検出」は、確からしい瞳孔エ
ッジ点の座標から、瞳孔円の形状(中心座標と大きさ)
を推定するサブルーチンであり、そのフローチャートを
図22〜図24に示した。
【0169】瞳孔円の形状の推定には、「最小2乗法」
を用いる。その考え方について先に述べておく。
【0170】円の公式は周知のように、中心座標を
(a、b)、半径をcとすると、 (x−a)2 +(y−b)2 =c2 …(10) で与えられる。
【0171】複数の観測点(x1、y1)、(x2、y
2)…(xn、yn)から、次式の誤差量ERが最小と
なるようにa、b、cを決定することを考える。
【0172】 ER=Σ[(xi−a)2 +(yi−b)2 −c22 …(11) ERは各観測点と、a、b、cで決定される円の法線方
向の距離(誤差)の2乗和であり、これを最小する。
【0173】ERをa、b、cで各々偏微分し、0とお
く。
【0174】
【外1】 但し、i=1〜nとする。
【0175】式(14)より、
【0176】
【外2】
【0177】式(15)を式(13)、(14)へ代入
し、ここで、 X1=Σxi、X2=Σxi2 、X3=Σxi3 …(1
6)〜(18) Y1=Σyi、Y2=Σyi2 、Y3=Σyi3 …(1
9)〜(21) Z1=Σxiyi、Z2=Σxi2 yi、Z3=Σxi
yi2 …(22)〜(24) とおき、さらに、 V1=X2−X12 /n…(25) V2=Y2−Y12 /n…(26) W1=X3+Z3…(27) W2=Y3+Z3…(28) W3=(X2+Y2)/n…(29) W4=Z1−X1Y1/n…(30) W5=(Z1−2・X1Y1/n)Z1…(31) W6=X1Y2…(32) W7=X2Y1…(33) とおいて整理すると、円の中心座標a、bは
【0178】
【外3】 で計算される。
【0179】また、視線(注視点)の計算には直接関係
はないが、半径cは、 c=[W3−2(aX1+bY1)/n+a2 +b21/2 …(36) で計算される。
【0180】本発明の実施例では、さらに誤差量ERを
瞳孔中心検出の信頼性判定に用いており、ERは次の計
算式で与えられる。
【0181】 ER=X4−4aX3+2(2a2 +d)X2−4adX1+Y4−4bY3 +2(2b2 +d)Y2−4bdY1+2(Z4−2aZ3−2bZ2+4ab Z1)+d2 n…(37) 但し、X4=Σxi4 …(38) Y4=Σyi4 …(39) Z4=Σxi2 yi2 …(40) d=a2 +b2 −c2 …(41) としている。
【0182】さて、以上のような数値計算の裏付けに従
って、図22〜図24のフローチャートの説明を行う。
【0183】サブルーチン「瞳孔中心の検出」がコール
されると、ステップ(#500)を経て、ステップ(#
501)の「円の最小2乗推定」サブルーチンをコール
する。
【0184】「円の最小2乗推定」は上記式に従って、
瞳孔円の中心座標(a、b)と誤差量ERを計算するサ
ブルーチンであり、そのフローチャートを図23に示し
ている。同サブルーチンでは、さらに最低輝度値の見直
しと、P像による偽の瞳孔エッジの排除を行っている。
【0185】サブルーチン「円の最小2乗推定」がコー
ルされると、ステップ(#600)を経て、ステップ
(#601)へ移行する。
【0186】ステップ(#601)では上述した最小2
乗推定式のワーク変数の初期化を行っている。
【0187】次のステップ(#602)は変数Lをルー
プ変数とするループ処理であり、記憶している瞳孔エッ
ジ情報を元に最小2乗法の計算の前半を行う部分であ
る。
【0188】いま、瞳孔エッジ点として、(EDGCN
T−1)個の情報が配列変数EDGDTに記憶されてい
る。ループ変数Lは記憶された順番を表している。
【0189】ループ処理内の最初のステップ(#60
3)では、L番目のエッジ点の輝度値EDGDT(L、
1)と(EYEMIN+C4)を比較し、輝度値の方が
大きければ分岐し、現在のループ変数Lの処理を終了す
る。
【0190】本実施例では、エリアセンサの光電変換信
号を読み込みながら、逐次的な処理を行っているため、
エッジ点検出の部分で使用している最低輝度値も、その
時点までの最低輝度値に過ぎない。故に、エッジ点とし
て検出された点も、実は本当の最低輝度値で判定された
ものではなく、実際にはエッジ点としてふさわしくない
点も含まれている可能性がある。そこで、このステップ
の目的は、最終的に決定された最低輝度値に基づいて、
もう一度最低輝度の判定にかけ、瞳孔エッジとしてふさ
わしくない点を排除しようとするものである。
【0191】ステップ(#603)にて、輝度値が小さ
いと判断された場合は、ステップ(#604)へ移行
し、横方向(X軸)座標と縦方向(Y軸)座標をそれぞ
れ変数X、Yに一時的に格納する。
【0192】次のステップ(#605)では、L番目の
エッジ点の横方向座標Xが、横方向の範囲IS1〜IS
2に適合しているか否かを判定する。IS1、IS2は
サブルーチン「瞳孔推定範囲の設定」で求められた値で
あり、この範囲に入っていないエッジ点は瞳孔のエッジ
点として認めないように分岐し、現在のループ変数Lの
処理を終了する。
【0193】その次のステップ(#606)は、今度は
縦方向について同様の判定を行っている。
【0194】L番目のエッジ点が瞳孔推定範囲に存在し
ていれば、ステップ(#607)へ移行する。
【0195】ステップ(#607)、(#608)は、
L番目のエッジ点の座標がP像の近傍であるかどうかを
判断している。
【0196】XP1、XP2、YP1、YP2はサブル
ーチン「P像の検出」で決定された値であり、エッジ点
の座標が横方向の範囲XP1〜XP2、縦方向の範囲Y
P1〜YP2に入っている場合には分岐し、現在のルー
プ変数Lの処理を終了するようにしている。これは、本
実施例の光学系では、2個のP像が瞳孔円内の上部に存
在するようになっているため、スポット像的な形状をし
ているP像の「すそ」の部分が、前述した瞳孔エッジの
条件に適合し易く、偽の瞳孔エッジとして検出されてし
まっているのを非除するためである。
【0197】以上のステップ(#603)〜(#60
8)の判定をパスしたエッジ点の座標情報が、ステップ
(#609)における最小2乗法の計算に供される。
【0198】ステップ(#609)の計算は前述の式
(16)〜(24)、(38)〜(40)を実行し、さ
らに、計算に用いたエッジ点の個数Nをカウントアップ
する。
【0199】ステップ(#602)のループ処理にて、
記憶していたエッジ点(EDGCNT−1)個の処理が
総て終了すると、ステップ(#610)へ移行する。
【0200】ステップ(#610)では、式(25)〜
(35)、(37)〜(41)を計算し、瞳孔円の中心
座標(a、b)と誤算量ERを求める。
【0201】そして、次のステップ(#611)へ移行
し、サブルーチン「円の最小2乗推定」をリターンす
る。
【0202】図22に戻って、ステップ(#501)の
サブルーチン「円の最小2乗推定」を完了すると、次の
ステップ(#502)へ移行する。
【0203】ステップ(#502)では、円の推定に用
いたデータの個数Nをしきい値NTHRと比較し、N<
NTHRならば、データ数が少ないため結果の信頼性が
低いと見なして、ステップ(#512)へ分岐し、検出
失敗であるとする。
【0204】NTHRとしては、例えば、NTHR=3
0である。
【0205】ステップ(#502)にて、N≧NTHR
ならば、次のステップ(#503)にて、誤差量ERと
しきい値ERTHRを比較する。
【0206】ER<ERTHRならば、誤差が小さく、
検出結果が充分信頼できるものと見なして、ステップ
(#514)へ分岐し、検出成功であるとする。
【0207】しきい値ERTHRとしては、例えば、E
RTHR=10000である。
【0208】ステップ(#503)において、ER≧E
RTHRならば、データ数が充分にも拘らず誤差が大き
すぎるとして、ステップ(#504)以下の再計算を実
施する。誤差が大きくなった原因としては、瞳孔円以外
の偽のエッジ点を計算に入れてしまったことが考えられ
る。
【0209】ステップ(#504)ではサブルーチン
「円の最小2乗推定 再計算1」をコールする。
【0210】「円の最小2乗推定 再計算1」は、最小
2乗推定の計算に用いたエッジ点の内、エリアセンサの
縦方向上部に在るエッジ点(全体の5分の1)を除外し
て、再び最小2乗推定の計算を行うサブルーチンであ
り、そのフローチャートを図24に示す。
【0211】サブルーチン「円の最小2乗推定 再計算
1」がコールされると、ステップ(#700)を経て、
次のステップ(#701)にて図中のように変数の格納
を行う。
【0212】変数XS1〜ZS4は、ステップ(#50
1)で計算した全エッジ点をしようしたときの対応する
ワーク変数の値を記憶する。そして、除外するエッジ点
の個数を全エッジ点の個数Nの5分の1として変数Mに
記憶しておく。
【0213】次のステップ(#702)ではステップ
(#601)と同様に計算のワークを初期化し、ステッ
プ(#703)へ移行する。
【0214】ステップ(#703)はステップ(#60
2)と同様のループ処理であり、このループ内で除外す
るエッジ点の最小2乗法の計算を行う。
【0215】本発明の実施例では、エリアセンサを縦方
向上部から読み込む構成にしているから、エッジ情報を
記憶している配列変数EDGDT(m、k)には、縦方
向の上部のエッジから順に格納されている。従って、E
DGDT(m、k)のmを0からアップカウントしてい
けば、縦方向上のエッジ点から取り出せることになる。
【0216】さて、ステップ(#703)のループ内の
最初のステップ(#704)ではエッジ点(X、Y)が
瞳孔エッジとして有効か否かを判別しているが、これは
ステップ(#603)〜(#608)と全く同様であ
る。
【0217】瞳孔エッジ点として有効と見なされた場合
にはステップ(#705)へ移行し、これもまたステッ
プ(#609)と同じ計算を実行する。
【0218】そして、次のステップ(#706)にて、
新たに計算したエッジ点の個数Nと除外すべきエッジ点
の個数Mを比較し、M個の計算が終了すれば分岐し、外
側のステップ(#703)のループ処理を中止する。M
個に達していない場合は、ループ変数Lをカウントアッ
プし、再びステップ(#704)移行の処理を続行す
る。
【0219】M個の計算が終了するとステップ(#70
8)へ分岐し、瞳孔円の中心(a、b)および誤差量E
R′を再計算する。再計算の式は次のようになる。
【0220】X1=X1S−X1…(16′) X2=X2S−X2…(17′) X3=X3S−X3…(18′) Y1=Y1S−Y1…(19′) Y2=Y2S−Y2…(20′) Y3=Y3S−Y3…(21′) Z1=Z1S−Z1…(22′) Z2=Z2S−Z2…(23′) Z3=Z3S−Z3…(24′) X4=X4S−X4…(38′) Y4=Y4S−Y4…(39′) Z4=Z4S−Z4…(40′)
【0221】そして、式(25)〜(35)、(37)
〜(41)を計算し直せば、新たな瞳孔中心(a、b)
と誤差量ER′を得ることが出来る。式(16)〜(4
0)はもともと逐次形式になっているため、再び全デー
タを計算し直す必要はなく、除外したいデータの加算
(あるいは累乗加算)を計算して、元の値から減算すれ
ば済む。
【0222】再計算が終った後は、ステップ(#70
9)へ移行し、サブルーチン「円の最小2乗推定 再計
算1」をリターンする。
【0223】図22に戻って、ステップ(#504)を
完了すると、ステップ(#505)へ移行し、再計算し
た誤差量ER′としきい値ERTHRを比較する。E
R′が小さい場合は、除外操作が効を奏したものとし
て、ステップ(#514)へ分岐し、検出成功とする。
【0224】未だ誤差量ER′が大きい場合には、ステ
ップ(#506)へ移行し、別のサブルーチン「円の最
小2乗推定 再計算2」をコールする。
【0225】「円の最小2乗推定 再計算2」は、最小
2乗推定の計算に用いたエッジ点の内、エリアセンサの
縦方向下部に在るエッジ点(全体の5分の1)を除外し
て、再び最小2乗推定の計算を行うサブルーチンであ
り、そのフローチャートを図24(B)に示す。
【0226】「再計算2」は「再計算1」とほとんど同
様であるが、「再計算1」と違って縦方向下部のエッジ
点から除外してゆくようにするため、ステップ(#71
2)においてループ変数Lを(EDGCNT−1)から
ダウンカウントさせている。その他は「再計算1」と全
く同様であるため、説明を省略する。
【0227】再び図22に戻って説明を続ける。
【0228】ステップ(#506)のサブルーチン「円
の最小2乗推定 再計算2」を完了すると、ステップ
(#507)へ移行し、再計算した誤差量ER′としき
い値ERYHRを比較する。ER′が小さい場合は、除
外操作が有効であったものとして、ステップ(#51
4)へ分岐し、検出成功と見なす。
【0229】未だ誤差量ER′が大きい場合には、ステ
ップ(#508)へ移行し、さらに別のサブルーチン
「円の最小2乗推定 再計算3」をコールする。
【0230】「円の最小2乗推定 再計算3」では、今
度は最小2乗推定の計算に用いたエッジ点の内、エリア
センサの横方向左部に在るエッジ点(全体の5分の1)
を除外して、再び最小2乗推定の計算を行うサブルーチ
ンであり、そのフローチャートを図24(C)に示す。
【0231】サブルーチン「再計算3」がコールされる
と、ステップ(#720)を経て、ステップ(#72
1)にて、エッジ情報を記憶している配列変数EDGD
T(m、k)の並べ換えを行う。
【0232】先にも説明したように、EDGDT(m、
k)にはエリアセンサの縦方向のエッジ点から順に格納
されているため、横方向に注目して処理を行うために
は、EDGDTに格納されているデータの並べ換えが必
要である。
【0233】EDGDT(m、2)にはエッジ点の横方
向(X軸座標)の値が格納されているから、この値に対
して公知の「ソート操作」を実施すれば、EDGDTに
は横方向の左からの順となったエッジ情報が再格納が可
能である。
【0234】並べ換えを実行すると、ステップ(#70
2)へ分岐し、後は「再計算1」と全く同様の処理を行
えば、エリアセンサの横方向左右のエッジ点を除外した
再計算ができる。
【0235】再び、図22に戻って、ステップ(#50
8)のサブルーチン「円の最小2乗推定 再計算3」を
完了すると、ステップ(#509)へ移行し、再計算し
た誤差量ER′としきい値ERTHRを比較する。E
R′が小さい場合は、除外操作が有効であったものとし
て、ステップ(#514)へ分岐し、検出成功と見な
す。
【0236】未だ誤差量ER′が大きい場合には、ステ
ップ(#510)へ移行し、さらに別のサブルーチン
「円の最小2乗推定 再計算4」をコールする。
【0237】「円の最小2乗推定 再計算4」では、今
度は最小2乗推定の計算に用いたエッジ点の内、エリア
センサの横方向右部に在るエッジ点(全体の5分の1)
を除外して、再び最小2乗推定の計算を行うサブルーチ
ンであり、そのフローチャートを図24(D)に示す。
【0238】いま配列変数EDGDT(m、k)には、
横方向の左から順のエッジ点が格納されているから、右
から順にエッジ点を除外しようとすれば、EDGDT
(m、k)を「再計算2」と同じように取り扱えば良
い。そこで、サブルーチン「再計算4」をコールされれ
ば直ちにステップ(#711)へ分岐して、「再計算
2」と同様の処理を行うようにしている。
【0239】再び、図22に戻って説明を続ける。
【0240】ステップ(#510)のサブルーチン「円
の最小2乗推定 再計算4」を完了すると、ステップ
(#511)へ移行し、再計算した誤差量ER′としき
い値ERTHRを比較する。ER′が小さい場合は、除
外操作が有効であったものとして、ステップ(#51
4)へ分岐し、検出成功と見なす。
【0241】未だ誤差量ER′が大きい場合には、ステ
ップ(#512)へ移行し、上述の操作が有効に働かな
かったものとして、ステップ(#512)へ移行し、検
出失敗とする。
【0242】ステップ(#512)あるいは(#51
4)で瞳孔中心の検出が最終判断されると、ステップ
(#513)あるいは(#515)でサブルーチン「瞳
孔中心の検出」をリターンする。
【0243】図8の説明に戻る。
【0244】ステップ(#016)での「瞳孔中心の検
出」が完了すると、ステップ(#017)へ移行し、サ
ブルーチン「視線の検出」をコールする。
【0245】「視線の検出」は、これまでの処理で検出
したP像位置および瞳孔円の中心位置から、視線(注視
点)を検出するサブルーチンである。
【0246】基本的には、前述した公知例と同様に、式
(2)に従って、眼球光軸の回転角θを計算すれば良
い。
【0247】本発明の実施例では、瞳孔中心を横方向
(X軸)、縦方向(Y軸)の2次元で検出しているの
で、公知例のように横方向のみではなく、縦方向の視線
の方向も横方向の検出と同様な考え方で、検出すること
ができる。
【0248】視線の検出が完了すると、ステップ(#0
18)へ移行し、一連の処理を終了する。
【0249】本第一実施例では、水平ラインのピーク値
と垂直ラインのピーク値を本読み出しに先立って読み出
し、P像のおおかたの位置を検出することができたた
め、本読み出しでの処理を限定エリアで行うことで大幅
に時間を短縮できる。また、ピーク値から全画素の最大
値(EYEMAX)が求められるので、これにより、P
像と瞳孔エッジの検出の信頼性を大きく増すことができ
た。
【0250】以上の実施例では、図8のステップ(#0
08)で水平ラインピーク値の極大ポイントのy座標y
1 、y2 、垂直ラインピーク値の極大ポイントのx座標
1、x2 から、図11に示す通り、瞳孔円が必ず限定
エリア内にはいる様に、一律の値δa1、δb1、δb2を使
って限定エリアを決めている。
【0251】しかしながら、観察者眼がファインダー系
より相対的に遠くなると、IMAGE−EyEの眼球像
は、相対的に小さくなる。それを表したのが図12であ
る。そうすると2つのP像の相対的距離も小さくなり、
V−Lineピーク値の極大x座標x1 、x2 の相対差
は小さく、H−Lineピーク値の極大y座標は2つ見
えず、1つになるケースも考えられる。このようなと
き、瞳孔円の大きさも必ず相対的に小さくなるため、限
定エリアを決める定数も変えることが望ましい。例えば
y座標の限定範囲は、(y1 −δd1)〜(y1
δd2)、x座標の限定範囲(x1 −δc )〜(x2 +δ
c )とし、δd1=fd1(x2 −x1 )、δd2=fd2(x
2 −x1 )、δc =fc (x2 −x1 )というふうに、
δの値を(x2 −x1 )を変数とする関数で求めてい
る。
【0252】この実施例により、観察者眼15がファイ
ンダーより相対的に遠いときは、限定エリアがせまくな
るので、視線検出の時間がより短縮することができる。
【0253】また、実施例1は、カメラを横位置に構え
た場合の例であるので、カメラを縦位置に構えた場合の
例を図13、図14を使って示す。
【0254】この時は図8のステップ(#008)のと
ころで
【0255】
【外4】 と書き換えることが対応できる。δf 、δe1、δe2はそ
れぞれ縦位置用の定数で、実施例1と同様に、瞳孔円が
必ず限定エリア内にはいる様に設定されている。
【0256】図15と図16は縦位置の方向の違いであ
り、P像が瞳孔円の左右どちら側に出来るかの違いであ
る。カメラは図2の姿勢検知スイッチSW−HV1とS
W−HV2の2つのスイッチにより、検知し分けてい
る。
【0257】以上の実施例では、水平、垂直ラインのう
ちP像であろう位置、即ち最高輝度値を示す位置を中心
として信号処理するエリアを決定した。次に低輝度値を
示すブロック信号を使い、エリアを設定する実施例を説
明する。これは瞳孔中心部はもっとも低輝度値を示すと
いう観点にもとづいている。
【0258】図9は、この立場から実施例1の図8のフ
ローの(#006〜#008)を置き換えたフローチャ
ートである。
【0259】ステップ(#005)の次にステップ(#
806)に進み図3、図4で説明したように各ブロック
の読み出しを行う。
【0260】ステップ(#807)で視線検出処理に先
立つ各ブロック信号から、最低の値(EYEMIN)と
その座標(x1 、y1 )を求める。
【0261】ステップ(#808)では、図15に示す
通り、制限領域(限定検出エリア)を決定し
【0262】
【外5】 とする。
【0263】δg は、やはり限定エリア内に瞳孔エッジ
が必ずはいる様に設定された値である。
【0264】その他の処理は、実施例1とほぼ同じであ
るが、EYEMINが本読み出しの前にあらかじめわか
っているため、図18でのステップ(#108〜#10
9)の最低輝度値(EYEMIN)を求めるルーチン
と、図23でのステップ(#603)のエッジ候補の見
直しが必要でなくなる。
【0265】逆に、今度は最大輝度値(EYEMAX)
があらかじめわからないので、図19におけるステップ
(#202)でのP像条件を判別する定数C1 、C2
EYEMAXから求めるのではなく、常に一律の定数と
なってしまう。また図20におけるステップ(#30
3)と(#304)でのエッジ条件を判別する定数C4
を求めるにもEYEMAXは使えない。
【0266】よって、P像と瞳孔エッジの抽出での信頼
性が若干落ちる可能性があるので定数C1 、C2 および
4 は例えば、 C1 =230、C2 =200、C4 =20とする。
【0267】図15にこの実施例4での眼球像を最低輝
度ブロックとの関係を模式的に表した。図から明らかな
通り最低輝度値を示すブロックを実際の視線検出を行う
処理に先立って選び出しこの位置から瞳孔が入るであろ
うエリアを設定し、この設定されたエリアで実際の視線
検出処理を行うのである。
【0268】次の実施例では、最低輝度値(EYEMI
N)より所定の値だけ大きい値(EYELow)を使っ
た、限定エリアの決め方を説明する(図16)。
【0269】(EYELow)←(EYEMIN)+C
6 とし、C6 を例えばC6 =15とすると、ブロック信
号のうち、(EYELow)以下のものは、全て瞳孔内
の画素のものとして扱うことができる。ここで、EYE
Low以下のブロック信号が存在する限界座標をx軸、
y軸ともに求めると、x軸がx2 〜x3 、y軸がy2
3 の間にあるものとする。
【0270】ここで、ステップ(#808)において、
【0271】
【外6】 とすることで先の実施例と同様な効果を得ることができ
る。
【0272】最後に図10において、前述したH−V−
Lineのピーク値と低輝度情報を示すブロック信号の
双方の利点を生かした実施例の実施例1の図8と異なる
点だけを抜き出したフローである。
【0273】ステップ(#006)の次に、図9で示し
たものと同じステップ(#806)の各ブロック読み出
しとステップ(#807)の最低輝度位置検出を実行す
る。但し、最低輝度ブロックの座標は(x3 、y3 )と
している。
【0274】そして、ステップ(#908)の領域制限
では、
【0275】
【外7】 としている。これは、実施例1と最低輝度値を示すブロ
ック信号を扱う実施例でのエリア制限が全ての場合にあ
てはまるように領域を大きめに設定しているのに対し、
よりせまい範囲にエリアを限定してしまおうというもの
である。図17にその様子を模式的に表している。この
方式では、特に、2つのP像が瞳孔円に対して左右どち
らかに片寄っている場合に有効で、限定範囲はそれぞ
れ、
【0276】
【外8】 に決定されている。
【0277】この方式により、さらに視線検出の時間が
短縮され、また、EYEMAX、EYEMINの値があ
らかじめわかっているため、それによる時間短縮と信頼
性の向上もなすことができる。
【0278】
【発明の効果】以上説明したように、イメージセンサよ
り信号を読み出す前に、ブロック信号を読み出せるよう
にして、このブロック信号を基にあらかじめ瞳孔像の位
置のおおよその見当をつけ、限定されたエリアのみの信
号を読み出し処理することによって、視線検出時間を大
幅に短縮し、また信頼性の高い視線検出装置を実現する
ことができる。
【図面の簡単な説明】
【図1】本発明に関する視点検出装置を一眼レフレック
スカメラに適用した状態の断面図。
【図2】図1におけるカメラの電気回路ブロック図。
【図3】本発明に関するエリアセンサを(4×4)ピク
セルの状態として扱った時の回路図。
【図4】本発明に関するエリアセンサの動作説明を行う
ためのシーケンス。
【図5】エリアセンサ上の眼球像の様子を示す図。
【図6】視線検出の原理説明図。
【図7】瞳孔円検出の説明図。
【図8】本発明に関し視線検出するためのフローチャー
ト。
【図9】本発明に関し視線検出するためのフローチャー
ト。
【図10】本発明に関し視線検出するためのフローチャ
ート。
【図11】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図12】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図13】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図14】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図15】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図16】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図17】本発明に関しエリアセンサ内の領域(限定検
出エリア)を設定するための説明図。
【図18】本発明に関し視線検出するためのフローチャ
ート図で、特に1ラインの読み込み動作を示す。
【図19】本発明に関し視線検出するためのフローチャ
ート図で、特にP像検出動作を示す図。
【図20】本発明に関し視線検出するためのフローチャ
ート図で、特に瞳孔エッジ検出動作を示す図。
【図21】本発明に関し視線検出するためのフローチャ
ート図で、特に瞳孔推定範囲を示す図。
【図22】本発明に関し視線検出するためのフローチャ
ート図で、特に瞳孔円の検出動作を示す図。
【図23】検出された瞳孔エッジの複数のポイントから
瞳孔円を算出するに適切なポイントを選択するフローチ
ャート図。
【図24】瞳孔円を算出するにあたり、不適切と考えら
れる瞳孔エッジのポイントを排除するためのフローチャ
ート図。
【符号の説明】
1 撮影レンズ 2 主ミラー 6 焦点検出装置 6f イメージセンサ 7 ピント板 10 測光センサ 11 接眼レンズ 13 赤外発光ダイオード(IRED) 14 イメージセンサ(IMAGE−EYE) 15 眼球 16 角膜 17 虹彩 21 スーパーインポーズ用LED 24 ファインダー内LCD 25 照明用LED 31 絞り 50 眼球の白目部分 51 眼球の瞳孔部分 52a、b P像 100 CPU 101 視線検出回路 103 焦点検出回路 104 信号入力回路 105 LCD駆動回路 106 LED駆動回路 107 IRED駆動回路 110 焦点調節回路
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) A61B 3/00 - 3/16 G02B 7/28 G03B 13/02 G03B 13/36

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 ファインダーより覗いた観察者の眼球を
    照明する照明手段と、照明された観察者の眼球像を受光
    する複数の光電変換素子より成るエリアセンサと、該エ
    リアセンサの領域を複数のブロック領域に分割し、その
    ブロック領域内の光電変換信号に関するブロック信号を
    求め、この各ブロック信号を基に前記エリアセンサ内の
    領域を制限する制限領域設定手段とを備え、該制限領域
    内のみにおいて光電変換素子毎の信号出力をA/D変換
    して観察者の視線を検出するようにしたことを特徴とす
    る視線検出装置。
  2. 【請求項2】 前記制限領域設定手段は、エリアセンサ
    上における観察者の瞳孔像の位置を推定する手段である
    ことを特徴とする請求項1記載の視線検出装置。
JP04807093A 1993-03-09 1993-03-09 視線検出装置 Expired - Lifetime JP3313803B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP04807093A JP3313803B2 (ja) 1993-03-09 1993-03-09 視線検出装置
US08/706,522 US5719388A (en) 1993-03-09 1996-09-04 Apparatus for processing an output signal from an area sensor having a plurality of photoelectric conversion elements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04807093A JP3313803B2 (ja) 1993-03-09 1993-03-09 視線検出装置

Publications (2)

Publication Number Publication Date
JPH06254053A JPH06254053A (ja) 1994-09-13
JP3313803B2 true JP3313803B2 (ja) 2002-08-12

Family

ID=12793093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04807093A Expired - Lifetime JP3313803B2 (ja) 1993-03-09 1993-03-09 視線検出装置

Country Status (2)

Country Link
US (1) US5719388A (ja)
JP (1) JP3313803B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6036316A (en) * 1996-10-02 2000-03-14 Canon Kabushiki Kaisha Visual axis detecting device and apparatus including visual axis detecting device
US8221399B2 (en) 2004-12-01 2012-07-17 Nidek Co., Ltd. Ophthalmic apparatus
JP4975305B2 (ja) * 2004-12-01 2012-07-11 株式会社ニデック 眼科装置
JP4868791B2 (ja) * 2005-08-12 2012-02-01 キヤノン株式会社 撮像装置及びその制御方法
ES2300193B1 (es) * 2006-07-06 2009-05-08 Universidad De Murcia Procedimiento para la medida en vivo del alineamiento de los componentes opticos del ojo y dispositivo para la puesta en practica del mismo.
KR20150075906A (ko) * 2013-12-26 2015-07-06 삼성전기주식회사 시선 추적 장치 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4287410A (en) * 1979-02-28 1981-09-01 Sri International Double Purkinje eye tracker
JP2763296B2 (ja) * 1988-04-26 1998-06-11 キヤノン株式会社 注視点方向検出装置を有する光学装置
JP2592904B2 (ja) * 1988-05-06 1997-03-19 キヤノン株式会社 カメラ
US5016282A (en) * 1988-07-14 1991-05-14 Atr Communication Systems Research Laboratories Eye tracking image pickup apparatus for separating noise from feature portions
JP2950546B2 (ja) * 1988-08-31 1999-09-20 キヤノン株式会社 視線検出装置及び視線検出装置を有するカメラ
US5140358A (en) * 1988-10-04 1992-08-18 Canon Kabushiki Kaisha Camera
US4996413A (en) * 1990-02-27 1991-02-26 General Electric Company Apparatus and method for reading data from an image detector
US5214466A (en) * 1990-04-11 1993-05-25 Canon Kabushiki Kaisha Camera having visual axis detecting apparatus
US5182443A (en) * 1990-09-29 1993-01-26 Canon Kabushiki Kaisha Optical apparatus having visual axis detector and determining whether eyeglasses are worn
JP3166179B2 (ja) * 1991-01-22 2001-05-14 キヤノン株式会社 視線検出装置
JP3219426B2 (ja) * 1991-05-27 2001-10-15 キヤノン株式会社 視線検出装置

Also Published As

Publication number Publication date
JPH06254053A (ja) 1994-09-13
US5719388A (en) 1998-02-17

Similar Documents

Publication Publication Date Title
JP3166179B2 (ja) 視線検出装置
JP3352238B2 (ja) 視線検出装置及びカメラ
US5987151A (en) Apparatus for detecting visual axis
JP3313803B2 (ja) 視線検出装置
JP3297481B2 (ja) 視線検出装置
JP3342213B2 (ja) 視線検出装置及びカメラ
JP3219426B2 (ja) 視線検出装置
JP3143490B2 (ja) 視線検出装置
US5576796A (en) Optical apparatus having function to detect visual axis
JP2004008323A (ja) 視線機能付光学装置
JP3256294B2 (ja) 視線検出装置および視線検出方法
JP3352195B2 (ja) 視線検出装置、光学装置及び視線検出方法
JP3143491B2 (ja) 視線検出装置
JP3391892B2 (ja) 視線検出装置、光学装置及び視線検出方法
JP3211427B2 (ja) 視線検出装置
JP3184553B2 (ja) 視線検出装置
JP3176147B2 (ja) 視線検出装置
JP3219425B2 (ja) 視線検出装置
JPH09281385A (ja) 視線検出機能付きカメラ
JPH06138370A (ja) 視線検出装置
JPH06304141A (ja) 視線検出装置
JPH0956679A (ja) 画像処理装置及び光学装置
JPH04347127A (ja) 視線検出装置
JP2001021791A (ja) 受光素子、エリアセンサ及び該エリアセンサを有する装置
JP3332581B2 (ja) 光学装置、カメラ、視線検出装置、視線検出方法、及び、接眼部と眼球位置の相対位置判別方法。

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020521

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090531

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090531

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100531

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100531

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110531

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120531

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120531

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130531

Year of fee payment: 11

EXPY Cancellation because of completion of term