トップ :: A 生活必需品 :: A61 医学または獣医学;衛生学




【発明の名称】 視線検出機能付き光学機器およびカメラ
【発明者】 【氏名】森川 剛一

【要約】 【課題】使用者が強いられるキャリブレーション作業の煩わしい操作を軽減するとともに、精度良く視線検出を行うための個人差補正係数を算出するための補正データを速やかに取得し、これを用いて最適な視線情報を検出できるようにする。

【解決手段】眼球光軸と視線のずれを補正する為の個人差に関する補正係数を記憶する記憶手段と、前記個人差補正係数を用いて眼球光軸を補正し、視線を検出する演算手段(S01)と、観察画面上の任意の座標を外部操作部材により指示する座標指示手段と、前記演算手段によって算出された視線の座標が、使用者が注視した座標とは異なるとして、前記座標指示手段により注視座標が入力されることにより(S04→S07)、該注視座標を用いて前記個人差補正係数を更新する更新手段(S08)とを有する。
【特許請求の範囲】
【請求項1】 使用者の眼球回転角および瞳孔径より得られる眼球光軸と視線のずれを補正する為の個人差に関する補正係数を記憶する記憶手段と、前記個人差補正係数を用いて眼球光軸を補正し、視線を検出する演算手段と、観察画面上に任意の視認可能な視標を任意の座標に表示する表示手段とを有する視線検出機能付き光学機器において、前記観察画面上の任意の座標を外部操作部材により指示する座標指示手段と、前記演算手段によって算出された視線の座標が、使用者が注視した座標とは異なるとして、前記座標指示手段により注視座標が入力されることにより、該注視座標を用いて前記個人差補正係数を更新する更新手段とを有することを特徴とする視線検出機能付き光学機器。
【請求項2】 前記更新手段は、前記座標指示手段によって入力された入力座標値と、使用者の眼球回転角および瞳孔径とを更新のための入力パラメータとすることを特徴とする請求項1に記載の視線検出機能付き光学機器。
【請求項3】 前記更新手段は、使用者の該光学機器の使用状況による瞳孔径の変化に対応するために、前記個人差補正係数を瞳孔径の関数として求めることを特徴とする請求項1又は2に記載の視線検出機能付き光学機器。
【請求項4】 前記更新手段は、使用者の眼球回転角、瞳孔径および入力座標値より、前記瞳孔径に対応した個人差補正係数を、瞳孔径−個人差補正係数座標空間上に点データとして求め、複数の該点データより近似直線を求めることで前記関数とすることを特徴とする請求項3に記載の視線検出機能付き光学機器。
【請求項5】 前記更新手段は、同一の観察画面上座標を異なる使用状況で複数回注視したとき、瞳孔径−眼球回転角座標空間上に複数の点データとして求め、該点データより近似直線を求めること特徴とした請求項1〜4の何れかに記載の視線検出機能付き光学機器。
【請求項6】 請求項1〜5の何れかの視線検出機能付き光学機器を備えたことを特徴とするカメラ。
【請求項7】 前記更新手段は、該カメラの一連の撮影動作中に実行されることを特徴とする請求項6に記載のカメラ。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、使用者が観察している注視点の方向の軸、所謂視線を検出する視線検出機能付き光学機器およびカメラの改良に関するものである。
【0002】
【従来の技術】従来より、使用者が観察空間のどの方向を注視しているかを検出する、いわゆる視線を検出する装置が種々提案されている。特開平2−264632号公報においては、使用者の眼球に赤外光を照射し、眼球の角膜から反射光による角膜反射像と瞳孔の結像位置を利用して使用者の視線を求める視線検出装置が開示されている。
【0003】図8は、公知の視線検出方法の原理説明図である。
【0004】同図において、13a,13bは各々使用者に対して不感の赤外光を放射する発光ダイオード等の光源であり、各光源13a,13bは受光レンズ12の光軸に対してx方向に略対称に配置され、さらに使用者の眼球17を下方(y方向にオフセットした位置)から照明するように配置されている。眼球17で反射した照明光の一部は受光レンズ12を介してイメージセンサ14に集光する。17bは角膜、17cは虹彩である。
【0005】図9(a)は、上記イメージセンサ14に投影される眼球像の概略図であり、図9(b)は、上記イメージセンサ14の出力ラインからの信号の強度分布を示す図である。
【0006】以下、図8及び図9を用いて、視線の検出方法について説明する。
【0007】光源13bより放射された赤外光は、使用者の眼球17の角膜17bを照射する。このとき角膜17bの表面で反射した赤外光の一部により形成される反射角膜像d(虚像)は受光レンズ12により集光され、イメージセンサ14上の位置d′に結像する。同様に、光源13aにより放射された赤外光は、眼球17の角膜17bを照射する。このとき、角膜17bの表面で反射した赤外光の一部により形成された角膜反射像eは受光レンズ12により集光され、イメージセンサ14上の位置e′に結像する。
【0008】また、虹彩17cの端部a,bからの光束は、受光レンズ12を介してイメージセンサ14上の位置a′,b′に該端部a,bの像を結像する。受光レンズ12の光軸に対する眼球17の光軸の回転角θが小さい場合、虹彩17cの端部a、bのx座標をxa,xbとすると、瞳孔17dの中心位置cの座標xは、 xc≒(xa+xb)/2 …………(1)
と表される。
【0009】また、角膜反射像d及びeの中点のx座標と角膜17bの曲率中心oのx座標xoとは略一致する。このため角膜反射像の発生位置d、eのx座標をxd,xe、角膜17bの曲率中心oと瞳孔17dの中心cまでの標準的な距離をLocとすると、眼球17の光軸17aの回転角θx は、 Loc× sinθx≒(xd+xe)/2−xc …………(2)
の関係式を満足する。このため、図9(a)に示した様に、イメージセンサ14上に投影された眼球17の各特徴点(角膜反射像及び瞳孔の中心)の位置を検出することにより、眼球17の光軸17aの回転角θを求めることができる。
【0010】眼球17の光軸17aの回転角は(2)式より、 β×Loc× sinθx≒{(xp0−δx)−xic}×Pt ……(3)
β×Loc× sinθy≒{(yp0−δy)−yic}×Pt ……(4)
と求められる。ここで、βは受光レンズ12に対する眼球17の位置により決まる結像倍率で、実質的には2個の角膜反射像の間隔|xd′−xe′|の関数として求められる。また、θxはz−x平面内での眼球光軸の回転角、θyはy−z平面内での眼球光軸の回転角である。(xpo,ypo)はイメージセンサ14上の2個の角膜反射像の中点の座標、(xic,yic)はイメージセンサ14上の瞳孔中心の座標である。Ptはイメージセンサ14の画素ピッチである。δx,δyは角膜反射像の中点の座標を補正する補正項であり、使用者の眼球を平行光ではなく発散光にて照明していることにより生じる誤差を補正する補正項、及び、δyに関しては、使用者の眼球を下まぶたの方から発散光にて照明していることにより生じるオフセット成分を補正する補正項も含まれている。
【0011】使用者の眼球光軸17aの回転角(θx,θy)が算出されると、使用者の観察面上の注視点(x,y)は、 x[mm]=m×(θx−bx)/ax ………(5)
y[mm]=m×(θy−by)/ay ………(6)
と求められる。ここで、x方向は観察者に対して水平方向、y方向は使用者に対して垂直方向を示している。mは眼球17の回転角から観察面上の座標に変換する変換係数であり、ax,bx,ay,byは注視点キャリブレーション係数で、使用者の眼球17の回転角と観察面上の注視点を一致させるための補正係数である。
【0012】ここで、特開平4−242630号公報において、使用者の視線の個人差を補正するための補正データを取得する機能であるキャリブレーションを行って、より正確な視線検出が可能な視線検出装置が提案されている。この提案装置の実施例における「キャリブレーションモード」に沿って、上記キャリブレーション係数ax,bx,ay,byの取得方法を説明する。
【0013】図10に示すように、使用者には観察面上の4つの固定視標250〜253を順に注視してもらう。このうち視標250,251の注視はx方向のキャリブレーション係数ax,bxを求めるためであり、視標252,253の注視はy方向のキャリブレーション係数ay,byを求めるためである。
【0014】まず、x方向に関して説明する。使用者が視標250(x1, 0)を注視したときに検出されたx方向眼球回転角をθx1、視標251(x2,0)を注視したときに検出されたx方向眼球回転角をθx2とすると、キャリブレーション係数ax,bxは、 ax=m×(θx1−θx2)/(x1−x2) ……(7)
bx=(θx1×x2−θx2×x1)/(x1−x2) ……(8)
で算出することができる。
【0015】同様に、y方向に関しては、使用者が視標252(0,y1)を注視したときに検出されたy方向眼球回転角をθy1、視標253(0,y2)を注視したときに検出されたy方向眼球回転角をθy2とすると、キャリブレーション係数ay,byは、 ay=m×(θy1−θy2)/(y1−y2) ……(9)
by=(θy1×y2−θy2×y1)/(y1−y2) …(10)
で算出することができる。
【0016】このようにして、キャリブレーション動作にて複数の使用者毎の個人差補正係数である、キャリブレーション係数ax,bx,ay,byを記憶し、使用者に合せた個人差補正データが設定できれば、使用者の眼球回転角が求まると、使用者が観察画面上のどの点を注視しているかを特定でき、例えばカメラに応用した場合、カメラのファインダを覗く使用者のピント板上の視線位置を正確に算出し、その視線情報を撮影レンズの焦点調節等に利用することができる。
【0017】ここで、これまでに記した個人差補正係数を取得するための具体的な動作を、特開平6−34874号公報において公開されている、カメラへの適用例に準じて説明する。
【0018】図11は、一眼レフカメラの要部概略図である。
【0019】同図において、1は撮影レンズで便宜上2枚のレンズで示したが、実際はさらに多数のレンズから構成されている。2は主ミラーで、ファインダ系による被写体像の観察状態と被写体像の撮影状態に応じて撮影光路へ斜設、あるいは退去される。3はサブミラーで、主ミラー2を透過した光束をカメラボディの下方に位置する焦点検出装置6へ向けて反射する。4はシャッタ、5は感光部材で、具体的には銀塩フィルムあるいはCCD等の撮像素子である。7は撮影レンズ1の予定結像面に配置されたピント板、8はファインダ光路変更用のペンタプリズム、9,10は各々観察画面内の被写体輝度を測定するための結像レンズと測光センサである。上記ペンタプリズム8の射出後方には分光器11aを備えた接眼レンズ11が配置され、使用者の眼15によるピント板7の観察に使用される。分光器11aは、例えば可視光を透過し赤外光を反射するダイクロイックミラーより成っている。
【0020】12は受光レンズ、14はCCD等の撮像素子を用いたイメージセンサであり、受光レンズ12に関して所定の位置にある使用者の眼15の瞳孔近傍と共役になるように配置されている。13a〜13fは各々照明光源であるところの赤外発光ダイオードである。15は明るい被写体の中でも視認できる高輝度の発光ダイオードであり、ここから発光された光は投光用プリズム16を介し主ミラー2で反射されて、ピント板7に設けられた微小プリズム7aで垂直に曲げられ、ペンタプリズム8,接眼レンズ11を通って、使用者の眼15に視認される。実際には、高輝度発光ダイオード15,プリズム16,微小プリズム7aを複数設けることで、ピント板7上の複数の焦点検出領域を選択的に照明することが可能である。この選択的に焦点検出領域を照明することを以下スーパーインポーズと呼ぶ。
【0021】図12(a),(b)は、上記一眼レフカメラの上部外観図と背面図である。
【0022】同図において、18はレリーズ釦、19は外部モニタ表示装置としてのLCD、21は撮影モード等の選択を行うモードダイヤル、20は各種設定を行うための電子ダイヤルである。24は任意の焦点検出領域をマニュアルで選択するための十字釦であり、各方向釦24a(上選択),24b(下選択),24c(左選択),24d(右選択)より成る。
【0023】図13は、図12に示した接眼レンズ11より観察したファインダ視野図であり、焦点検出領域200〜206はピント板7上で各々スーパーインポーズされる。
【0024】図14は、図12に示したモードダイヤル21の詳細説明図である。
【0025】モードダイヤル21を、カメラ本体に印された指標22に表示を合わせることによって、その表示内容で撮影モードが設定される。21aはカメラを不作動とするロックポジション、21bはカメラが予め設定した撮影プログラムによって制御される自動撮影モードのポジション、21cは使用者が撮影内容を設定できるマニュアル撮影モードである。21dは使用者の視線のキャリブレーションを行なうキャリブレーションモードとなる「CAL」ポジションである。
【0026】それでは上記一眼レフカメラにおける、個人差補正係数を取得するキャリブレーション動作について、図15及び図16のフローチャートに沿って説明する。
【0027】まず、ステップS29において、使用者はモードダイヤル21を回転させ、CALポジション21dを指標22に合せる。CALポジションに設定されるとカメラはキャリブレーションモードに切り換わる。
【0028】キャリブレーションモードでは、複数の使用者に対応するため、あるいは同一使用者においても様々な使用状況(例えば、裸眼状態や眼鏡を掛けた状態)に対応するため、複数の個人差補正係数を保持できるようになっている。例えば、5つの個人差補正係数を保持できるようになっている場合、それぞれに対してCAL番号が割り振られており、「CAL−1」,「CAL−2」…「CAL−5」と名付けられる。
【0029】次のステップS30においては、使用者は自らの使用状況に応じた個人差補正係数を登録するためのCAL番号を、電子ダイヤル20を回転してLCD19に表示させ、指定する。ここで使用者は、接眼レンズ11より観察画面を観察する。すると、図13の焦点検出領域のうち右端に位置する焦点検出領域204がスーパーインポーズによって点滅する(S31)ので、使用者はこの点を注視した状態で(S32)レリーズ釦18を押し下げる(S33)。レリーズ釦18の押下がなされると、カメラに具備された不図示のCPUによって複数回視線検出が実行され(S34)、右端焦点検出領域に対する使用者の眼球回転角が取得される。
【0030】次のステップS35においては、CPUは右端の焦点検出領域204に対する視線検出が終了したことを使用者に認識させるために図示されていない発音体を用いて電子音を数回鳴らす。同時に焦点検出領域204を所定の時間フル点灯させる。続いてステップS36において、焦点検出領域204を消灯し、それと同時に左端の焦点検出領域200が点滅を開始する。使用者は点滅している焦点検出領域200を注視し(S37)、レリーズ釦18を押下げる(S38)ことによってCPUに視線検出を実行させる(S39)。右端の焦点検出領域と同様に複数回視線検出が実行され、左端焦点検出領域に対する使用者の眼球回転角が取得される。
【0031】ステップS40においては、CPUは焦点検出領域200に対する視線検出が終了したことを使用者に認識させるために図示されていない発音体を用いて電子音を数回鳴らさせる。同時に焦点検出領域200をフル点灯させる。
【0032】この一連の動作により左右焦点検出領域に対応する眼球回転角が取得される。
【0033】次のステップS41においては、CPUは取得した眼球回転角が適正かどうかの判定を行なう。判定は視線検出サブルーチンからの返数である眼球の回転角と、同時に取得される瞳孔径の信頼性を算出して行なわれる。すなわち、視線検出サブルーチンにて検出された眼球の回転角及び瞳孔径の信頼性がない場合は算出された視線のキャリブレーションデータも信頼性がないと判定する。又、視線検出サブルーチンにて検出された眼球の回転角及び瞳孔径の信頼性がある場合、算出された視線のキャリブレーションデータが一般的な個人差の範囲に入っていれば適正と判定し、一方、算出された視線のキャリブレーションデータが一般的な個人差の範囲から大きく逸脱していれば算出された視線のキャリブレーションデータは不適性と判定する。
【0034】算出された視線のキャリブレーションデータが不適性と判定すると、ステップS42に進み、CPUは点灯焦点検出領域204および200を消灯し、図示されていない発音体を用いて電子音を所定時間鳴らし、視線のキャリブレーションが失敗したことを警告する。同時にLCD19に「CAL」表示を点滅させて警告する。発音体による警告音とLCD19による警告表示を所定時間行なった後、キャリブレーションルーチンの初期ステップに移行し、再度x方向の視線キャリブレーションを実行できる状態に設定される。
【0035】又、算出された視線のキャリブレーションデータが適正であれば、ステップS43に進み、x方向の視線キャリブレーションの終了したことを、スーパーインポーズ表示によって焦点検出領域204,200を数回点滅させ、使用者に認識させる。
【0036】x方向のキャリブレーションに引き続き、y方向のキャリブレーションも同様に行われる。
【0037】図16のステップS44へ進むと、CPUは図13の焦点検出領域のうち、上端に位置する焦点検出領域マーク205を、スーパーインポーズによって点滅させる。点滅を開始した焦点検出領域を使用者が注視した状態で(S45)レリーズ釦18を押下げると(S46)、CPUによりキャリブレーション動作が開始される。次のステップS47においては、動作の開始と同時に複数回視線検出がCPUによって実行され、上端焦点検出領域に対する使用者の眼球回転角が取得される。そして、ステップS48において、上端の焦点検出領域205に対する視線検出が終了したことを使用者に認識させるためにCPUは図示されていない発音体を用いて電子音を数回鳴らさせる。同時に焦点検出領域205を所定の時間フル点灯させる。
【0038】続いてステップS49において、CPUは焦点検出領域205を消灯しそれと同時に下端の焦点検出領域206が点滅を開始する。使用者は点滅している焦点検出領域206を注視し(S50)、レリーズ釦18を押下げる(S51)ことによってCPUに視線検出を実行させる(S52)。上端の焦点検出領域と同様に複数回視線検出が実行され、下端焦点検出領域に対する使用者の眼球回転角が取得される。
【0039】ステップS53においては、焦点検出領域206に対する視線検出が終了したことを使用者に認識させるためにCPUは図示されていない発音体を用いて電子音を数回鳴らさせる。同時に焦点検出領域206をフル点灯させる。
【0040】この一連の動作により上下焦点検出領域に対応する眼球回転角が取得される。
【0041】次にステップS54においては、CPUは取得された眼球回転角が適正かどうかの判定を行なう。算出された視線のキャリブレーションデータが不適性と判定するとステップS55に進み、点灯焦点検出領域205および206を消灯し、図示されていない発音体を用いて電子音を所定時間鳴らし、視線のキャリブレーションが失敗したことを警告する。同時にLCD19に「CAL」表示を点滅させて警告する。発音体による警告音とLCD19による警告表示を所定時間行なった後、キャリブレーションルーチンの初期ステップに移行し、再度y方向の視線キャリブレーションを実行できる状態にカメラは設定される。又、算出された視線のキャリブレーションデータが適正であれば、ステップS56に進み、y方向の視線キャリブレーションの終了したことを、スーパーインポーズによって焦点検出領域205,206を数回点滅させ使用者に認識させる。
【0042】一連の視線のキャリブレーション動作終了後、CPUは使用者によって電子ダイヤル20かあるいはモードダイヤル21が操作されるまで待機する。使用者が電子ダイヤル20を回転させて他のキャリブレーション番号を選択したならば、キャリブレーション番号の変更を検知し、視線のキャリブレーションルーチンの初期ステップに移行する。また使用者がモードダイヤル21を回転させて他の撮影モードを選択したならばメインのルーチンに復帰する。
【0043】以上のキャリブレーション動作を経て、使用者の特定の使用状態における個人差補正係数ax,bx,ay,byを求めることができる。
【0044】しかし実際には、図17に示すように、同一注視点を観察していても周囲の明るさの変化に対応して使用者の瞳孔径は変化し、瞳孔径の変化に応じて算出される座標値も変化してしまう。
【0045】そこで、同一注視点を観察している以上、周囲の明るさの変化によらず同一座標が算出されるように、回転角算出に際し、瞳孔径変化を考慮した補正値を用いることが特開平06−034874号に明らかにされている。すなわち、(7),(8),(9),(10)式における回転角θx1,θx2,θy1,θy2は、それぞれ瞳孔径の大きさRppの関数であるとみなし、θx1(Rpp),θx2(Rpp),θy1(Rpp),θy2(Rpp)と表すと、 θx1(Rpp)=kx1×Rpp+mx1 ………(11)
θx2(Rpp)=kx2×Rpp+mx2 ………(12)
θy1(Rpp)=ky1×Rpp+my1 ………(13)
θy2(Rpp)=ky2×Rpp+my2 ………(14)
の一次関数で表記できる。上記(11),(12),(13),(14)式における、係数kx1,mx1,kx2,mx2,ky1,my1,ky2,my2を求めるためには、異なる瞳孔径Rpp、すなわち異なる明るさの環境のもと、上記に記したキャリブレーション動作を少なくとも2度は行う必要がある。さらには、より正確に上記係数を求めるために、様々な明るさの環境のもと、複数回キャリブレーションを行い、最小二乗法等を用いて算出することが望ましい。
【0046】こうすることで、キャリブレーション係数ax,bx,ay,byは瞳孔径による関数、 ax=gx(Rpp) ………(15)
bx=hx(Rpp) ………(16)
ay=gy(Rpp) ………(17)
by=hy(Rpp) ………(18)
として表されることになる(具体的には、(11),(12)式を(7),(8)式へ、(13),(14)式を(9),(10)式へ、それぞれ代入した式)。これを(5),(6)式に反映すると、最終的に視線座標(x,y)は、瞳孔径Rppと眼球回転角(θx,θy)の関数 x=fx(Rpp,θx) ………(19)
y=fy(Rpp,θy) ………(20)
として求めることができることがわかる。
【0047】上記のように、キャリブレーション動作を複数回繰り返すことにより、より正確に使用者の観察画面上における注視点が同定でき、例えば上記一眼レフカメラに応用した場合、カメラのファインダ系を覗く使用者の視線のピント板上位置が算出されると、その視線情報をレンズの焦点調節あるいは露出制御等に利用することが可能である。
【0048】
【発明が解決しようとする課題】上記従来例においては、精度良く視線の検出を行なうためには、使用者の観察状態、即ち周囲環境の明るさが変化するたび毎に、図15及び図16のフローチャートに沿って説明した一連のキャリブレーション動作を使用者は行わなければならず、この結果、カメラの操作性を損なうという問題があった。
【0049】特にキャリブレーション作業という行為は、これまで述べたように複数の操作部材を一定の決められた手順に従って操作し、カメラ側から要求される眼球動作を、その要求に従って順次行わなければならないという、本来の撮影行為とは無関係な独立した行為であり、この行為を何度も使用者に強いることは、使用者に苦痛を与えてしまうという問題があった。
【0050】(発明の目的)本発明の目的は、使用者が強いられるキャリブレーション作業の煩わしい操作を軽減するとともに、精度良く視線検出を行うための個人差補正係数を算出するための補正データを速やかに取得し、これを用いて最適な視線情報を検出することのできる視線検出機能付き光学機器およびカメラを提供しようとするものである。
【0051】
【課題を解決するための手段】上記目的を達成するために、本発明は、使用者の眼球回転角および瞳孔径より得られる眼球光軸と視線のずれを補正する為の個人差に関する補正係数を記憶する記憶手段と、前記個人差補正係数を用いて眼球光軸を補正し、視線を検出する演算手段と、観察画面上に任意の視認可能な視標を任意の座標に表示する表示手段とを有する視線検出機能付き光学機器において、前記観察画面上の任意の座標を外部操作部材により指示する座標指示手段と、前記演算手段によって算出された視線の座標が、使用者が注視した座標とは異なるとして、前記座標指示手段により注視座標が入力されることにより、該注視座標を用いて前記個人差補正係数を更新する更新手段とを有する視線検出機能付き光学機器とするものである。
【0052】
【発明の実施の形態】以下、本発明を図示の実施の形態に基づいて詳細に説明する。
【0053】本発明の実施の一形態に係る一眼レフカメラの要部外略図は前述の図11と、上部概観図と背面図は前述の図12(a),(b)と、ファインダ視野図は前述の図13と、モードダイヤルの説明図は前述の図14と、それぞれ同様であり、これらについての詳細は省略する。
【0054】図1は、本発明の実施の形態に係る上記構成の一眼レフカメラに内蔵された要部電気回路図であり、図1と同じ部分は同一符号を付してある。
【0055】カメラ本体に内蔵されたマイクロコンピュータ(以下、CPUと記す)300には、視線検出回路301,測光回路302,自動焦点検出回路303,信号入力回路304,LCD駆動回路305,LED駆動回路306,IRED駆動回路307,シャッタ制御回路308,モータ制御回路309、焦点調節回路310、絞り駆動回路311が接続されている。CPU300に付随したEEPROM300aは記憶手段としての視線の個人差を補正する視線補正データの記憶機能を有している。
【0056】前記視線検出回路301は、イメージセンサ14(CCD−EYE)からの眼球像の信号をA/D変換し、この像情報をCPU300に送信する。ラインセンサ6aは、前述の図13に示すファインダ視野内の7つの焦点検出領域200〜206に対応した7組のラインセンサCCD−L2,CCD−L1,CCD−C,CCD−R1,CCD−R2,CCD−U,CCD−Dから構成される公知のCCDラインセンサである。前記自動焦点検出回路303は、上記のラインセンサ6aから得た電圧をA/D変換し、CPU300に送る。
【0057】SW1はレリーズ釦18の第1ストロークでオンし、測光,AF,視線検出動作等を開始させる為のスイッチであり、SW2はレリーズ釦18の第2ストロークでオンするスイッチである。電子ダイヤル20は、回転によって使用者が所定の設定を入力するためのスイッチであり、アップダウンカウンタを介して回転量が信号入力回路に伝達される。方向24a〜24dは、十字釦24の上(SW−U)下、(SW−D)左、(SW−L)右、(SW−R)の入力を検知するためのスイッチである。
【0058】前記LCD駆動回路305は、LCD19等を表示駆動させ、LED駆動回路306はスーパーインポーズ用LED15等を点灯/点滅制御する。IRED駆動回路307は、赤外発光ダイオード(IRED1〜6)13a〜13fを状況に応じて選択的に点灯させる。
【0059】上記構成における一眼レフカメラの動作について、図2のフローチャートにより説明する。このフローチャートは、モードダイヤル21を撮影モードである21bもしくは21cのうち視線情報が有効なモードに指標をあわせた状態で作動する。
【0060】スイッチSW1がオンすると(S00)、CPU300はステップS01へ進み、使用者の視線検出を実行する。具体的には、従来例で示したようにピント板7上での座標を算出する。ただし、座標算出においては、個人差補正係数が既に存在する場合には、前述の式(5),(6)に基づいて、有効な補正係数ax,bx,ay,byを用いて行われる。これは、データax,bx,ay,byが過去1回算出できたかどうかで判定するようにしても良いし、2回あるいは3回以上の回数で算出できたときに初めてデータが有効であると判定しても良い。なお、1回のみの算出では、瞳孔径変化についての眼球回転角補正を行なうことはできない。個人差補正係数が存在しない場合には、EEPROM300aに格納されている、基準補正係数としてのデフォルトの値によって検出が行われる。
【0061】次のステップS02においては、上記のようにして算出したピント板上の視線座標に対し、焦点検出領域200〜206のうちから最も近い焦点検出領域を使用者が意図した焦点検出領域として選択する。そして、選択した焦点検出領域をスーパーインポーズ(S03)し、使用者に選択焦点検出領域を知らしめる。
【0062】このスーパインポーズによって表示された焦点検出領域は、個人差補正係数にデフォルト値を用いていたり、周囲の明るさの影響に対する補正が充分でなかったりする場合、しばしば使用者の実際の意図する焦点検出領域とは異なる。この場合、使用者は十字釦24によって所望の焦点検出領域を手動により再選択することができる。
【0063】次のステップS04においては、カメラが視線算出によって選択した焦点検出領域が、使用者によって意図された領域であるかどうかを判定するステップであり、スーパーインポーズ(S03)後、一定時間の間に使用者から十字釦24の入力があるかを検出する。十字釦24の方向釦24a〜24dのいずれにも入力がなかった場合、使用者の意図する焦点検出領域と、カメラが選択した焦点検出領域が一致したものとして、すなわち視線座標の算出が正しく行われたものと判定してステップS05に移行し、その焦点検出領域においてレンズの焦点調節を行う。その後選択焦点検出領域が合焦になるとステップS06へ移行し、レリーズ釦の第2ストロークによりオンするスイッチSW2の検出を行い、オンであれば公知である一連のレリーズ動作を行って撮影を終了する。
【0064】一方、十字釦24の何れかの方向釦に押下の入力があった場合、ステップS04からステップS07に進む。ここでは、視線検出によって選択された焦点検出領域を、使用者によって意図される焦点検出領域とは異なるものであったと認識してキャンセルし、改めて使用者が指示した焦点検出領域を選択し直す。同時にこの焦点検出領域をスーパーインポーズし、使用者に知らしめる。続いてステップS08に移行し、焦点検出領域の再選択によって得られるキャリブレーションデータ取得のためのサブルーチンを行う。
【0065】このサブルーチンを説明する前に、x軸方向のキャリブレーションデータの補正方法について説明する。
【0066】図3(a)は、従来例で示したキャリブレーション動作を2回以上行ったときの、眼球回転角θxと瞳孔径Rppの関係図である。
【0067】同図において、51は座標x1を注視した時に得られる関数θx1(Rpp)であり(式(11)の一次関数に同じ)、52は座標x2を注視したときに得られる関数θx2(Rpp)である(式(12)の一次関数に同じ)。この2本の直線が存在すれば、従来例で示した通り、任意の瞳孔径Rppに関して補正係数ax,bxを求めることができる。ただし、この場合においても、キャリブレーション回数が少なければ、必ずしも精度の良い補正係数を求めることができるわけではない。
【0068】そこで、図3(b)の点53のように、ある座標xcを注視した時に得られた瞳孔径Rppcと眼球回転角θxcが存在する場合を考える。直線51より(Rppc,θx1(Rppc))を求めることができるので、(x1,θx1(Rppc))および(xc,θxc)を、式(7),(8)に代入すると、図4(a)(b)に示すように、瞳孔径Rppcにおいての補正係数ax(Rppc)およびbx(Rppc)を点座標54,55として求めることができる。(ただし、直線51から(Rppc,θx1(Rppc))を求める代わりに、直線52から(Rppc,θx2(Rppc))を用いて求めてもよい。)
以上の操作によると、注視点のx座標xcを既知であり、その点を注視した時の瞳孔径Rppcとx軸方向眼球回転角θxcが検出できれば、この瞳孔径Rppcにおける補正係数ax(Rppc),bx(Rppc)をプロットすることができる。従って、この操作を繰り返すことにより、Rpp−ax,Rpp−bx上のプロットデータを多く獲得できるのである。プロットデータ数が増えると、その都度近似直線を更新することで、より使用者の眼球特性に合った補正係数ax=gx(Rpp)、bx=hx(Rpp)(式(15),(16)より)を算出することが可能となり、精度の良い視線座標を求めることが可能となる。
【0069】次に、予め直線51や52が存在しない場合、すなわち複数回のキャリブレーションが行われていない場合における補正係数ax,bxの求め方を図5を用いて述べる。
【0070】例えば、x=x0という既知の座標を、初めて使用者が注視した時の瞳孔径をRpp0、x軸方向の眼球回転角をθx0とする(点56)。別の機会に同一座標x=x0を注視した時の瞳孔径をRpp0’、眼球回転角をθx0’(点57)とすると、この2点により、x=x0を注視した時の瞳孔径と眼球回転角の関係式58を求めることができる。x=x0という既知の座標を繰返し注視するたびにプロット点は増大し、それらの点に対して近似直線を適用することにより、瞳孔径と眼球回転角の関係式は精度の良いものとなる。
【0071】このようにしてx=x0の注視による、瞳孔径−眼球回転角の関係式が存在すれば、x=x0とは異なるx=xcという既知の座標を注視した時の瞳孔径Rppcと眼球回転角θxcが検出できたとき、上述した通り、Rppcにおける補正係数ax(Rppc)、bx(Rppc)を得ることができることになる。
【0072】上記の方法によると、既知のx座標,瞳孔径,眼球回転角のデータ群を多く獲得すれば、図6(a),(b)に示すように、式(15),(16)におけるax=gx(Rpp),bx=hx(Rpp)を精度良く同定することができ、使用者の視線座標を正しく求めることができるようになる。
【0073】これまでに述べた補正係数更新法はx軸方向を基に説明したが、y軸方向も全く同様の手法で補正係数を更新することができる。すなわちx←yとするとy軸方向の補正係数ay,byの更新法の説明となる。
【0074】再びサブルーチン「キャリブレーションデータの取得」(S08)に戻り、このサブルーチンを図7を用いて説明する。
【0075】まず前提として、再選択前の視線検出(S01)によって算出された座標は、使用者の視線を正しく求められていないものであり、このときに使用者が注視した実際の座標は、再選択された焦点検出領域の座標であるものとする。ステップS09に進み、上記ステップS01の視線検出時に検出した使用者の瞳孔径Rppc、眼球回転角(θxc,θyc)を再取得する。そして、ステップS10に移行し、再選択によって使用者から指示された焦点検出領域(xc,yc)を取得する。これらのデータ群から、補正係数の更新が可能かどうかを次のステップS11において調べる。具体的には、上述の補正係数更新法による。
【0076】補正係数の更新が不可能な場合には、ステップS12に移行し、このデータ群をキャリブレーションデータとして保持しておく。更新が可能な場合には、ステップS13に移行し、新たな補正係数を算出して以後の視線座標算出に利用できるようにする。
【0077】以上のサブルーチンが終了したら、図2のメインルーチンに復帰し、再選択によって指示された焦点検出領域においてレンズ駆動・合焦動作を行い(S05)、スイッチSW2のオンを検出して公知のレリーズ動作を行って撮影を終了する。
【0078】以上の実施の形態によれば、使用者の視線検出を行なうルーチンにおいて、使用者の実際の視線座標が算出された視線座標と異なる場合、使用者の実際の座標がどこであったのかを入力することで、視線座標算出過程における個人差補正係数を更新することを実現している。従って、使用者にキャリブレーション動作を行なうために複数操作部材を操作させ、特定の座標を注視させるという煩わしいルーチンを独立に強要することなく、個人差補正係数を更新することが可能となり、使用頻度に応じて精度の高くなる視線検出手段を有したカメラを提供可能となる。
【0079】更に詳しくは、撮影動作中において、使用者が意図していない焦点検出領域をカメラが選択した場合、使用者は座標指示手段に相当する十字釦24によって焦点検出領域を選択し直すことが可能であり、該十字釦24によって観察画面上の座標が入力されると、この入力座標と視線検出によって得られた使用者の瞳孔径および眼球回転角を入力パラメータとして、瞳孔径−個人差補正係数座標空間上に点データとして得る。この点データが数多く獲得されると、個人差補正係数を瞳孔径の関数として扱うことが可能となり、具体的には近似直線を当てはめることにより精度の良い個人差補正係数を、使用者の状況に応じて使い分けることでき、よって、ピント板上に複数存在する焦点検出領域から、使用者が意図する1つの焦点検出領域を、使用者の視線を検出して選択することが可能となる。
【0080】以上が本発明の実施の形態での構成であり、かつ本発明との対応関係である。本発明はこれらの形態と構成に限定されるものではなく、請求項で示した機能が達成できる構成であれば、どのようなものであってもよい。また、カメラのみならず、その他の視線検出機能を具備した光学機器へも提供することができる。
【0081】
【発明の効果】以上説明したように、本発明によれば、使用者が強いられるキャリブレーション作業の煩わしい操作を軽減するとともに、精度良く視線検出を行うための個人差補正係数を算出するための補正データを速やかに取得し、これを用いて最適な視線情報を検出することができる視線検出機能付き光学機器およびカメラを提供できるものである。
【出願人】 【識別番号】000001007
【氏名又は名称】キヤノン株式会社
【出願日】 平成12年6月16日(2000.6.16)
【代理人】 【識別番号】100068962
【弁理士】
【氏名又は名称】中村 稔
【公開番号】 特開2001−353127(P2001−353127A)
【公開日】 平成13年12月25日(2001.12.25)
【出願番号】 特願2000−180791(P2000−180791)