(57)【特許請求の範囲】
【請求項１】
眼球像を含む画像情報を入力する画像入力手段と、該画像入力手段にて得られる画像情報の特徴点を含む特徴領域を検出する特徴領域検出手段と、前記特徴領域に基づいて前記画像情報の領域を設定する領域設定手段とを備え、前記設定された領域の画像情報に基づいて視線検出を行う視線検出装置において、
前記特徴領域の形状を所定の形状と比較する形状比較手段を具備し、該形状比較手段にて前記特徴領域が所定の形状であると判断された場合に、前記領域設定手段は領域設定を実行し直すことを特徴とする視線検出装置。
【請求項２】
前記画像入力手段は、複数の光電変換素子で形成されたセンサであることを特徴とする請求項１記載の視線検出装置。
【請求項３】
前記画像入力手段は、前記センサを分割したブロック毎に得られる画像情報中の代表する信号を出力し、前記領域設定手段は、その信号出力から画像情報の特徴点を検出することを特徴とする請求項２記載の視線検出装置。
【請求項４】
前記形状比較手段にて前記特徴領域が所定の形状であると判断された場合に、前記領域設定手段は所定の領域を設定することを特徴とする請求項１記載の視線検出装置。
【請求項５】
前記形状比較手段にて前記特徴領域が所定の形状であると判断された場合に、前記領域設定手段は、前記所定の形状であると判断された特徴領域を含まない領域を設定することを特徴とする請求項１記載の視線検出装置。
【請求項６】
前記所定の形状は、画像の第１の方向の大きさと、第１の方向に垂直な第２の方向の大きさとで定義されることを特徴とする請求項１，２，３，４又は５記載の視線検出装置。
【請求項７】
請求項１から６のいずれかに記載の視線検出装置を具備したことを特徴とする光学装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、観察者の視線を検出する視線検出装置及び該装置を具備したカメラ等の光学装置の改良に関するものである。
【０００２】
【従来の技術】
従来より、撮影者が観察面上のどの位置を観察しているかを検出する、いわゆる視線（視軸）を検出する装置（例えばアイカメラ）が種々提供されている。例えば特開平１−２７４７３６号公報においては、光源からの平行光束を撮影者の眼球の前眼部へ投射し、角膜からの反射光による角膜反射像と瞳孔の結像位置を利用して注視点を求めている。また同公報において、注視点検出装置を一眼レフカメラに配設し撮影者の注視点情報を用いて撮影レンズの自動焦点調節を行う例を開示している。
【０００３】
図１２は視線検出原理を説明するための図であり、同図において、１５は撮影者の眼球、１６は角膜、１７は虹彩である。
【０００４】
以下この図を用いて視線の検出方法を説明する。
【０００５】
光源１３ｂより投射された赤外光は、観察者の眼球１５の角膜１６を照射する。このとき角膜１６の表面で反射した赤外光の一部により形成される角膜反射像ｄ（虚像）は受光レンズ１２により集光され、イメージセンサ１４上の位置ｄ´に結像する。同様に光源１３ａにより投射された赤外光は、眼球１５の角膜１６を照明する。このとき、角膜１６の表面で反射した赤外光の一部により形成された角膜反射像ｅは受光レンズ１２により集光され、イメージセンサ１４上の位置ｅ´に結像する。
【０００６】
又、虹彩１７の端部ａ，ｂからの光束は、受光レンズ１２を介してイメージセンサ１４上の位置ａ´，ｂ´に該端部ａ，ｂの像を結像する。受光レンズ１２の光軸に対する眼球１５の光軸の回転角θが小さい場合、虹彩１７の端部ａ，ｂのｘ座標をｘａ，ｘｂとすると、瞳孔１９の中心位置ｃの座標ｘｃは、
ｘｃ≒（ｘａ＋ｘｂ）／２
と表される。
【０００７】
又、角膜反射像ｄ及びｅの中点のｘ座標と角膜１６の曲率中心ｏのｘ座標ｘｏとは略一致する。このため角膜反射像の発生位置ｄ，ｅのｘ座標をｘｄ，ｘｅ、角膜１６の曲率中心ｏと瞳孔１９の中心ｃまでの標準的な距離をＯＣとすると、眼球１５の光軸１５ａの回転角θｘは、
ＯＣ＊ＳＩＮθｘ≒（ｘｄ＋ｘｅ）／２−ｘｃ          …………（１）
の関係式を略満足する。このためイメージセンサ１４上に投影された眼球１５の各特徴点（角膜反射像及び瞳孔の中心）の位置を検出することにより眼球１５の光軸１５ａの回転角θを求めることができる。
【０００８】
眼球１５の光軸１５ａの回転角は（１）式より、
β＊ＯＣ＊ＳＩＮθｘ≒｛（ｘｐｏ−δｘ）−ｘｉｃ｝＊ｐｉｔｃｈ…（２）
β＊ＯＣ＊ＳＩＮθｙ≒｛（ｙｐｏ−δｙ）−ｙｉｃ｝＊ｐｉｔｃｈ…（３）
と求められる。ここで、θｘはｚ−ｘ平面内での眼球光軸の回転角、θｙはｙ−ｚ平面内での眼球光軸の回転角である。（ｘｐｏ，ｙｐｏ）はイメージセンサ１４上の２個の角膜反射像の中点の座標、（ｘｉｃ，ｙｉｃ）はイメージセンサ１４上の瞳孔中心の座標である。ｐｉｔｃｈはイメージセンサ１４の画素ピッチである。又、βは受光レンズ１２に対する眼球１５の位置により決まる結像倍率で、実質的には２個の角膜反射像の間隔の関数として求められる。
【０００９】
δｘ，δｙは角膜反射像の中点の座標を補正する補正項であり、撮影者の眼球を平行光ではなく発散光にて照明していることにより生じる誤差を補正する補正項及び、δｙに関しては、撮影者の眼球を下まぶたの方から発散光にて照明していることにより生じるオフセット成分を補正する補正項も含まれている。
【００１０】
次に、眼球回転角と注視点の座標の関係から撮影者の注視点を求める。眼球回転角と注視点の座標の関係は、撮影者の眼球光軸の回転角（θｘ，θｙ）とすると、撮影者の観察面上の注視点（ｘ，ｙ）は、カメラの姿勢が横位置の場合、
ｘ＝ｍ＊（θｘ＋Δ）                                …………（４）
ｙ＝ｍ＊θｙ                                        …………（５）
と求められる。ここで、ｘ方向はカメラの姿勢が横位置の場合の撮影者に対して水平方向、ｙ方向はカメラの姿勢が横位置の場合の撮影者に対して垂直方向を示している。ｍは眼球の回転角からピント板上の座標に変換する変換係数、Δは眼球光軸１５ａと視軸（注視点）とのなす角である。
【００１１】
この時の変換係数ｍ、Δには個人差があるため、この変換係数を含んだ形での個人差補正データを予め求めておく必要がある。個人差補正データは、撮影者に所定の座標を注視してもらい、そのときの眼球光軸の回転角を求める事で算出する事ができる。
【００１２】
この様に個人差補正データを求めるための検出動作をキャリブレーションといい、キャリブレーションにより求めた個人差補正データをキャリブレーションデータという。
【００１３】
観察面上（ｘ１，０）を注視したときの眼球の回転角を（θｘ１，０）、（ｘ２，０）を注視したときの眼球の回転角を（θｘ２，０）とすると、以下の式で個人差データを求める事ができる。
【００１４】
ｍ＝（ｘ１−ｘ２）／（θｘ１−θｘ２）                  ……（６）
Δ＝（ｘ２・θｘ１−ｘ１・θｘ２）／（ｘ１−ｘ２）      ……（７）
尚、個人差データの入力は、カメラの姿勢毎に入力することが望ましい。
【００１５】
このようにして、角膜反射像や瞳孔の位置から撮影者の注視点を求めることができるが、センサ上の眼球像から角膜反射像や瞳孔の位置などの特徴点を求める方法は、特開平４−３４７１３３号等に提案されている。
【００１６】
また、センサの全画素を読み出さないで時間を短縮する方法について特開平６−２５４０５３号に提案されている。同提案では、眼球像の瞳孔部分の輝度が非常に低いことから、画像上の低輝度部分を検出し、その部分だけを読み出し（領域制限読み出し）、演算することによって視線検出の時間を短縮することが提案されている。
【００１７】
更に、読み出したセンサ画像から瞳孔のエッジを検出するのも最低輝度値を基準に検出することが開示されている。
【００１８】
【発明が解決しようとする課題】
しかしながら、開示されている技術では、瞳孔が最低輝度であるという前提の元で検出を行っているので、その前提が崩れると視線検出がうまく出来ない。
【００１９】
瞳孔が最低輝度でない原因及び最低輝度を基準として検出を行う場合の不具合として以下のものがある。
【００２０】
１）センサの周辺に照明光が行き渡らず、光量落ちする。
【００２１】
２）眼鏡（メガネ）の金属フレーム等の全反射物があるため、その部分の光が全くセンサ上に導かれない。すなわちフレーム部分だけ暗黒となる。
【００２２】
３）全体的に輝度が低いため、適当な閾値の設定が出来ない。
【００２３】
４）明るさにより瞳孔の大きさが変化するのに、領域制限読み出しの際、明るさがかわっても領域の広さは同じである。
【００２４】
次にそれぞれの問題を述べる。
【００２５】
１）センサの周辺部が最低輝度になると、その部分を中心として読み出し領域の決定を行うが、この読み出し領域に瞳孔及びＰ像が全て含まれていないと視線検出ができない。
【００２６】
２）眼鏡のフレームがセンサ上で暗黒になる場合が有り、瞳孔部分の輝度より低い輝度になることがある。ここを瞳孔であると誤検出すると、上記１）と同様に、フレーム部分を中心として読み出し領域の決定を行ってしまい、読み出し領域に瞳孔及び角膜反射像（プルキンエ像：Ｐ像）が全て含まれていない為に視線検出ができない。
【００２７】
３）全体に輝度が低いときは、閾値の設定がうまく行かない。瞳孔は最低輝度を示すこともあるが瞳孔とほぼ同じ輝度になる部分が多く、瞳孔とそれ以外の部分の区別が出来ない。このため、読み出し領域の決定が出来ない。
【００２８】
４）瞳孔の大きさは明るいときは小さく、暗いときは大きくなる。これを同じ大きさで領域を決定していては無駄が出てしまう。
【００２９】
さらにこれらの他、ゴースト等の影響で瞳孔部分の輝度が持ち上がってしまう現象がある。このような場合、瞳孔を最低輝度を基準に検出していると瞳孔のエッジが検出できない。
【００３２】
（発明の目的）本発明の目的は、観察者が眼鏡使用している為に瞳孔部分の輝度よりも低い輝度部分の画像情報が得られ、この部分を瞳孔部分として誤って検出してしまうといった事を防止することのできる視線検出装置及び光学装置を提供することにある。
【００３５】
【課題を解決するための手段】
上記目的を達成するために、請求項１〜５に記載の各本発明は、眼球像を含む画像情報を入力する画像入力手段と、該画像入力手段にて得られる画像情報の特徴点を含む特徴領域を検出する特徴領域検出手段と、前記特徴領域に基づいて前記画像情報の領域を設定する領域設定手段とを備え、前記設定された領域の画像情報に基づいて視線検出を行う視線検出装置において、前記特徴領域の形状を所定の形状と比較する形状比較手段を具備し、該形状比較手段にて前記特徴領域が所定の形状であると判断された場合に、前記領域設定手段が領域設定を実行し直すことを特徴とするものである。また、請求項７に記載の本発明は、請求項１〜５のいずれかに記載の視線検出装置を具備した光学装置とするものである。
【００４０】
【発明の実施の形態】
以下、本発明を図示の実施の形態に基づいて詳細に説明する。
【００４１】
図１は本発明のカメラ本体に内蔵された電気回路の要部ブロック図である。
【００４２】
カメラ本体に内蔵されたカメラ制御手段であるところのマイクロコンピュータの中央処理装置（以下、ＣＰＵと称す）１００には、視線検出回路１０１，姿勢検知回路１０２，自動焦点検出回路１０３，信号入力回路１０４，ＬＣＤ駆動回路１０５，ＬＥＤ駆動回路１０６，ＩＲＥＤ駆動回路１０７が接続されている。又、不図示ではあるが視撮影レンズ内に配置された焦点調節回路、絞り駆動回路とはマウント接点を介して信号の伝達がなされる。
【００４３】
ＣＰＵ１００に付随した記憶手段としてのＥＥＰＲＯＭ１００ａは、フィルムカウンタその他の撮影情報を記憶すると共にキャリブレーションを行って得た個人差補正データを記憶する。
【００４４】
視線検出回路１０１は、イメージセンサ１４（ＣＣＤ−ＥＹＥ）からの眼球像の出力をＣＰＵ１００に送信する。ＣＰＵ１００はイメージセンサ１４からの眼球像信号をＣＰＵ内部のＡ／Ｄ変換手段によりＡ／Ｄ変換し、この像情報から視線検出に必要な眼球像の各特徴点を所定のアルゴリズムに従って抽出し、さらに各特徴点の位置から撮影者の眼球の回転角を算出する。
【００４５】
姿勢検知回路１０２は、複数のペアのフォトセンサとＬＥＤ（ＨＶ１，ＨＶ２）及び重力により可動な遮蔽物から成り、重力により遮蔽物が動きフォトセンサの出力が変化することにより姿勢を検知する。フォトセンサは互いに９０°程度の角度で配置されそれぞれ水平軸からも角度をもって配置される。
【００４６】
自動焦点検出回路１０３は、複数のラインセンサから得た光電変換電圧をＣＰＵ１００に送り、ＣＰＵ１００では内蔵されたＡ／Ｄ変換装置によってラインセンサ信号を順次Ａ／Ｄ変換し、所定の演算を行って焦点検出を行う。
【００４７】
信号入力回路１０４は、各種スイッチからの信号入力を行い、スイッチの状態が変化するとＣＰＵ１００に割り込み信号を発生させる。
【００４８】
ＳＷ−１はレリーズ釦の第１ストロークでＯＮし、測光，ＡＦ（オートフォーカス），視線検出動作を開始するスイッチ、ＳＷ−２はレリーズ釦の第２ストロークでＯＮするレリーズスイッチ、ＳＷ−ＭＤＩＡＬはカメラの各種撮影モードの他、キャリブレーションモードやカメラのロックポジションを選択するモードダイアルである。ＳＷ−ＣＡＬＤＥＬは個人差補正データ消去スイッチである。ＳＷーＤＩＡＬ１とＳＷ−ＤＩＡＬ２は電子ダイヤルスイッチで、信号入力回路のアップダウンカウンタに入力され、ここで前記電子ダイヤルの回転クリック量をカウントする。
【００４９】
ＬＣＤ駆動回路１０５は、ファインダ内ＬＣＤ２４及びモニタ用ＬＣＤ４２に各種情報を表示する他、不図示のブザーを駆動してブザー音を発生させる。
【００５０】
ＬＥＤ駆動回路１０６は、ファインダ内の測距点をスーパーインポーズ照明するためのＬＥＤ２１（ＬＥＤ−Ｌ２，ＬＥＤ−Ｌ１，ＬＥＤ−Ｃ，ＬＥＤ−Ｒ１，ＬＥＤ−Ｒ２）を点灯させるための回路である。ＬＥＤ−Ｌ２，ＬＥＤ−Ｌ１，ＬＥＤ−Ｃ，ＬＥＤ−Ｒ１，ＬＥＤ−Ｒ２はそれぞれファインダ内の焦点検出（測距点）マークＦＰ−Ｌ２，ＦＰ−Ｌ１，ＦＰ−Ｃ，ＦＰ−Ｒ１，ＦＰ−Ｒ２に対応しており、ＬＥＤ２１を点灯させることにより、ファインダ内の測距点マークが照明される。
【００５１】
ＩＲＥＤ駆動回路１０７は、撮影者の眼球を赤外光で照明するための赤外ＬＥＤ（ＩＲＥＤ−０，ＩＲＥＤ−１，ＩＲＥＤ−２，ＩＲＥＤ−３，ＩＲＥＤ−４，ＩＲＥＤ−５，ＩＲＥＤ−６，ＩＲＥＤ−７）を点灯させるための回路である。この回路には過電流を防止する為の回路や長時間の通電による事故を防止するための安全回路が組み込まれている。
【００５２】
ＩＲＥＤは２つがペアで使用され、眼球に対して下側から照明される。具体的なＩＲＥＤの位置を示した図を図２に示す。
【００５３】
カメラの姿勢が横位置の場合、裸眼用としてＩＲＥＤ−０，ＩＲＥＤ−１が、又眼鏡用としてＩＲＥＤ−４，ＩＲＥＤ−５が、それぞれペアとして使用され、グリップ上の縦位置では、裸眼用としてＩＲＥＤ−３，ＩＲＥＤ−０が、又眼鏡用としてＩＲＥＤ−７，ＩＲＥＤ−４が、それぞれペアとして使用される。また、グリップ下の縦位置では、裸眼用としてＩＲＥＤ−１，ＩＲＥＤ−２が、又眼鏡用としてＩＲＥＤ−５，ＩＲＥＤ−６が、それぞれペアとして使用される。つまり、どの姿勢においても裸眼の場合は間隔の狭いＩＲＥＤペアが使用され、眼鏡や眼球の距離が遠い場合は間隔の広いＩＲＥＤペアが使用される。
【００５４】
スイッチＳＷ−１が押されると、所定の動作を実行した後、図３の「視線メイン」フローがコールされる。以下これに従って視線検出動作の全体の説明を行う。
【００５５】
サブルーチン「視線メイン」がコールされると、ステップ＃Ｍ０１からプログラムを実行していく。視線検出ルーチンは、必ずしも１回実行されただけで視線位置を出力するわけではなく、複数回実行し（何回か制御方法を変えて試してみる）、最終的に注視点の位置を検出するようになっている。
【００５６】
まず、設定されたキャリブレーション番号をチェックし、キャリブレーション番号に対応した個人差補正データをＥＥＰＲＯＭ１００ａから読み込む（＃Ｍ０２）。
【００５７】
正しくないキャリブレーション番号や、キャリブレーション番号が設定されていない場合（視線がＯＦＦになっている場合も含む）のチェックも行い（＃Ｍ０３）、正常でなければステップ＃Ｍ０９へ分岐し、リターンする。
【００５８】
キャリブレーション番号が正しく設定されていて、個人差補正データが読み込めたら、視線検出パラメータの初期化を行う（＃Ｍ０４）。ここでは、視線検出状態を示すパラメータの初期化を初回にのみ行う。サブルーチン「視線メイン」が繰り返し実行される場合の２回目以降は実行されない。
【００５９】
次に、視線検出用エリアセンサの蓄積をサブルーチン「ＹＢＡＳＩＳ」で行う（＃Ｍ０５）。このサブルーチンの中では、眼球を照明するＩＲＥＤとその駆動電流の決定を行い、センサの予備蓄積を行って、視線検出を行うときの蓄積制御を決定する。決定した蓄積制御方法で眼球像の画像データを得る。
【００６０】
次に、画像データの特徴点抽出のためのパラメータの初期化を行う（＃Ｍ０６）。そして、蓄積されたデータを読み出しつつ特徴点を抽出するサブルーチン「Ｒｅａｄ＿Ｄｅｔｅｃｔ」（＃Ｍ０７）を実行する。このサブルーチンの内部動作は後で詳しく説明する。
【００６１】
センサの読み出し及び特徴点抽出が終了すると、検出された特徴点から注視点位置の計算をサブルーチン「Ｐ＿Ｐｒｏｃｅｓｓ」（＃Ｍ０８）で行う。ここでは、「Ｒｅａｄ＿Ｄｅｔｅｃｔ」で求めた瞳孔エッジ座標から、瞳孔円の中心座標、及び、照明光の角膜反射像（プリキンエ像：Ｐ像）の座標を使って、所定の計算式から眼球の回転角を求める。眼球の回転角が検出できたら、個人差補正データを用いてその人の注視する点を計算する。
【００６２】
最後にこのプログラムをリターンする（＃Ｍ１０）。
【００６３】
１回で注視点が求められない場合は繰り返し「視線メイン」がコールされ、別の制御方法（照明，蓄積制御方法、演算パラメータを変えて行う）で視線検出を行う。
【００６４】
次に、上記ステップ＃Ｍ０７で実行されるサブルーチン「Ｒｅａｄ＿Ｄｅｔｅｃｔ  」について、図４のフローチャートにより説明する。サブルーチン「Ｒｅａｄ＿Ｄｅｔｅｃｔ  」は、センサの蓄積が終了した後にコールされる。
【００６５】
サブルーチン「Ｒｅａｄ＿Ｄｅｔｅｃｔ」がコールされると、ステップ＃Ｒ０１から実行していく。まず、センサのブロック読み機能を使って、センサ全体を荒くみる（＃Ｒ０２）。センサのブロック読み機能とは、センサの複数の画素をまとめたデータを出力する機能で、センサ出力を「４×４」の１６画素を１つのブロックにして出力（「４×４」の平均値を出力）することができる。
【００６６】
こうすることにより、例えば「１００×７０」画素のセンサ出力を、「２５×１８」ブロックのデータで全体の画像を荒く見ることができる。この様にデータ数を少なくすることで「１００×７０」画素のメモリが確保できなくても、「２５×１８」画素分のメモリを確保する事は、カメラのような機器の組み込みマイコンでも可能である。
【００６７】
又、ブロック出力がハード的に得られないセンサでも、ソフト的に平均を求めてデータ数を減らすことで、同等の演算を行うことができる。又必ずしも平均値である必要はなく、全センサ画素を間引いて使ってもよい。
【００６８】
次に、ブロック読み出しした画像の最大値，最小値，平均値を求める（＃Ｒ０３）。最大値はプルキンエ像（以後、Ｐ像と記す）を求める時に使用し、最小値は瞳孔を探すときに使用する。平均値は、画像全体の明るさのデータとして使用する。
【００６９】
ここで、ブロック画像の最低輝度を検出する範囲と、げた上げ（重み付け）について図５を使って説明する。
【００７０】
この例では画像の左下の方が部分的に暗くなっており、アドレス（ｘｍｉｎ  ’，ｙｍｉｎ  ’）部分が最低輝度になっている〔図５（ａ）参照〕。ブロック画像の全体を検索して最低輝度を探すと、このように瞳孔以外の部分を探してしまう場合がある。そこで、まず最低輝度を検出する部分を中央のエリア１（中央を中心とする水平：ｘｇ１、垂直：ｙｇ１の範囲）の部分に限定する。中央の部分に限定するのは、
１）周辺は照明のむらや光量落ちで暗くなってしまう。
【００７１】
２）眼球は画像の周辺にない（もし、画像の周辺にあっても視線検出が不能）。
という理由からである。
【００７２】
次に、エリア１の範囲でエリア２（中央を中心とする水平：ｘｇ２、垂直：ｙｇ２の範囲）の外側のドーナツ型の領域には、げた量（重み付け量）ｗｔ１のげた上げを行う。エリア２の範囲でエリア３（中央を中心とする水平：ｘｇ３、垂直：ｙｇ３の範囲）の外側のドーナツ型の領域には、げた量ｗｔ２のげた上げを行う〔図５（ｂ）参照〕。エリア３にはげた量ｗｔ３のげた上げを行う。げた量は「ｗｔ１＞ｗｔ２＞ｗｔ３」になっていて、中央部分ほどげた量が少なく周辺ほどげた量が大きくなっている。この為、最低輝度の位置は中央部分が選ばれ易くなる。
【００７３】
ブロック位置に対応したげた量をｗｔ（ｘ，ｙ）とし、ブロック画像の値を、ｂ１（ｘ，ｙ）とすると、最低輝度位置は、
〔ｂ１（ｘ，ｙ）＋ｗｔ（ｘ，ｙ）〕（但し、計算範囲はエリア１内）
が最低になる（ｘ，ｙ）の位置として求めることが出来る。この位置を（ｘｍｉｎ  ，ｙｍｉｎ  ）とすれば、最低輝度ＭＩＮｂｌｋはｂ１（ｘｍｉｎ  ，ｙｍｉｎ  ）として求められる。すなわち、げた上げして求めた最低値からげたの値を引いた元の画像の値を最低値として記憶する〔図５（ｃ）参照〕。
【００７４】
実際には、ｗｔ１＝４，ｗｔ２＝２，ｗｔ３＝０，ｘｇ１＝１８，ｙｇ１＝１４，ｘｇ２＝１２，ｙｇ２＝８，ｘｇ３＝６，ｙｇ３＝４に設定されている。
【００７５】
平均輝度を計算する場合は、げた上げを行わずに計算する。
【００７６】
図４のフローチャートの説明に戻り、次にブロック像の最低値と所定の閾値を使って瞬きの検知を行う（＃Ｒ０４）。瞬きの最中は視線検出不能なのでその処理を行う。例えば、今回の視線検出を中止して次回全く同じ制御で視線検出を行ったりする。
【００７７】
次に、読み出し範囲の初期化を行う。通常全体範囲をはじめに指定しておく（＃Ｒ０５）。センサをカメラに取り付けた状態で周辺がけられてしまうような場合には、その部分を除いたけられないエリアを指定する。
【００７８】
次いで、ブロックデータから求めた平均輝度（ＢｌｋＡｖｅ）と閾値を比較する（＃Ｒ０６）。平均輝度が低ければステップ＃Ｒ０８へ進み、ブロックデータによる瞳孔位置推定を行わない。これは全体の輝度が低いとセンサの周辺部分が低くなり、必ずしも瞳孔位置が最低輝度とはならなくなってしまう為、最低輝度を使って瞳孔位置推定を行うと正しく瞳孔位置を推定することができない。平均輝度が閾値より高ければ、ステップ＃Ｒ０７へ分岐し、サブルーチン「瞳孔位置推定」をコールして、瞳孔位置の推定を行う。
【００７９】
ステップ＃Ｒ０８では、サブルーチン「読み出し＆逐次処理」をコールして、決定した領域内のセンサ読み出し及び逐次処理で特徴点抽出を行い、リターンする（＃Ｒ０９）。
【００８０】
上記の様に、ブロック画像にげた上げ（重み付け）を行って、最低輝度位置を検出するため、センサの周辺に照明光が行き渡らず、光量落ちした様な場合でも、正しい瞳孔位置を推定できるようにした。
【００８１】
さらに、全体の輝度が低いときには、瞳孔位置を検出するのが難しくなるため、瞳孔位置推定を行わない。このため、無理やり瞳孔推定を行って時間を無駄にしたり、誤推定を行うことがない。
【００８２】
次に、上記図４のステップ＃Ｒ０７にて実行されるサブルーチン「瞳孔位置推定」について、図６のフローチャートを使って説明する。
【００８３】
サブルーチン「瞳孔位置推定」がコールされると（＃Ｅ０１）、まず水平方向の瞳孔の広がりをサブルーチン「ＢｌｋＨｏｒＡｒｅａ」で検出する。ブロック化した画像データをｂ１（ｘ，ｙ）で表し（ｘ：水平方向、ｙ：垂直方向）、図４のステップ＃Ｒ０３で求めた最低輝度を「ＭＩＮｂｌｋ」としてそのアドレスをｘｍｉｎ０，ｙｍｉｎ０とする。
【００８４】
まず、垂直方向のアドレスｙｍｉｎ０で輝度が「ＭＩＮｂｌｋ＋α」以下の範囲を求める。次に垂直方向の範囲を、水平アドレスｘｍｉｎ０位置で輝度が「ＭＩＮｂｌｋ＋α」以下の範囲を求める（＃Ｅ０３）。水平アドレスは必ずしもｘｍｉｎ０の位置でなくてもよく、例えばステップ＃Ｅ０２で求めた範囲の中心位置からで垂直方向に範囲を求めても良い。
【００８５】
ここで、瞳孔の大きさを平面的に探さないのは、周辺の暗部と瞳孔の低輝度部がつながっている場合〔図７（ａ）参照〕、平面的に広さを検出すると瞳孔以外の部分も含まれてしまい、正しい瞳孔位置が検出出来ないからである〔図７（ｂ）参照〕。
【００８６】
ところが、検出した最低輝度位置から、水平方向及び垂直方向のみに検出を行えば、正しい瞳孔の大きさを検出することが可能である〔図７（ｃ）参照〕。
【００８７】
次に、眼鏡フレーム判定を行う。
【００８８】
ステップ＃Ｅ０４で眼鏡フレームで無いと判定されたら、上記ステップ＃Ｅ０２，上記ステップ＃Ｅ０３で計算した範囲の中心を求める（＃Ｅ０５）。つまり上記ステップ＃Ｅ０２で求めた水平方向の範囲の中心と、ステップ＃Ｅ０３で求めた垂直方向の範囲の中心を求める。
【００８９】次に、全体の明るさを判定する（＃Ｅ０６）。ブロック画像の平均値ＢｌｋＡｖｅと閾値ＴｈｒＨＩ  とを比較して、閾値より小さければステップ＃Ｅ０７へ分岐する。このステップ＃Ｅ０７では、ブロック画像からＰ像の位置を検出する。全体の輝度が高いとブロック画像からプルキンエ像部分を検出するのが難しくなるのと、Ｐ像の影響で瞳孔範囲が小さく検出されることが無いので、Ｐ像位置の検出を行わない。
【００９０】
輝度が低い場合、ブロック画像を使ってＰ像位置を検出する（＃Ｅ０７）。孤立して輝度が高い点をＰ像として検出する。カメラの姿勢が横位置の場合、垂直方向で孤立した値を検出する。水平方向には、２つのＰ像があるため、２つのブロックが連続して高輝度になっていることがある。この為、水平方向にはブロック像によるＰ像検出を行わない。
【００９１】
次に、検出したＰ像とその回りを最低輝度レベルに置き換える（＃Ｅ０８）。最低輝度レベルに置き換えることで、上記ステップ＃Ｅ０２及び＃Ｅ０３で行ったのと同じ処理を行って再度瞳孔の大きさを推定することが出来る。
【００９２】
ステップ＃Ｅ０９及び＃Ｅ１０では、再び瞳孔の水平方向及び垂直方向の広がりを求める。検出は、ステップ＃Ｅ０５で求めた瞳孔中心位置から行う。
【００９３】
次に、ブロックの画素位置から実際のセンサ上の位置を求める（＃Ｅ１１）。最後に検出した瞳孔の広さにマージンを加え、読み出し領域を決定する（＃Ｅ１２）。
【００９４】
瞳孔の左側のｘ座標をｘｐｐ１  ，右側をｘｐｐ２  ，上側をｙｐｐ１  ，下側をｙｐｐ２  とし、領域の余裕量（瞳孔分）をｍａｇ、Ｐ像分をｍａｇｐとすると、読み出すセンサの領域は、水平方向は「ｘｐｐ１  −ｍａｇ」から「ｘｐｐ２  ＋ｍａｇ」まで、垂直方向は「ｙｐｐ１  −ｍａｇ」から「ｙｐｐ２  ＋ｍａｇ＋ｍａｇｐ」まである。
【００９５】
カメラの姿勢が横位置の場合、Ｐ像は瞳孔の下に来るため、下方向の読み出し領域にはｍａｇｐ分だけ他よりも余裕を持たせてある。ｍａｇｐは、カメラの姿勢が縦位置の場合には、ｘ座標の下側に広くなる様に余裕をもたせる。
【００９６】
余裕量ｍａｇ，ｍａｇｐはセンサ全体の輝度により変化し、輝度が高くなると瞳孔が小さくなるので、余裕量も小さくなるように設定する。
【００９７】
ステップ＃Ｒ０３で求めた平均輝度
0003630792.tif 000002
センサの読み出し領域が設定されたら、サブルーチンをリターンする（＃Ｅ１５）。
【００９８】
このように、全体の明るさで、瞳孔推定で推定した瞳孔領域を変えることによって、明るいときに瞳孔が小さくなっても無駄な領域を読み出すことがなく、さらに、暗い時も瞳孔がはみ出さない領域を設定することが出来る。
【００９９】
ここで、図６のステップ＃Ｅ０４の説明を行う。
【０１００】
眼鏡のフレームが画像内に入り込むと、黒く細長い形として現れることがある。これは、眼鏡のフレーム部分が全反射してしまうため、センサ上に照明の光が全くこなくなるからである。
【０１０１】
図８（ａ）に示したように、横位置ではセンサの上下方向の幅があまり大きくないので、眼鏡フレームの暗黒部分がセンサ外に出てしまったために問題にならなかったが、図８（ｂ）に示すように、縦位置では眼鏡のフレームの暗黒部分がセンサ内に入り込んでしまうため、瞳孔位置検出に悪影響を及ぼすことがある。そこで、眼鏡のフレームと瞳孔とを識別し、正しい瞳孔のみを検出する必要がある。そこで、眼鏡フレームの形状に着目し、ステップ＃Ｅ０２と＃Ｅ０３で検出した低輝度部分の形で判定を行う。
【０１０２】
具体的には、縦位置の場合、水平方向（センサ上ｘ軸方向）が短く、かつ、垂直方向（センサ上ｙ軸方向）が長い場合を判定する。図８（ｃ）のＡの位置を最低輝度として認識できた場合、これは瞳孔部分が正しく選ばれたので、低輝度部の水平方向の長さｘｄと垂直方向の長さｙｄは同程度の大きさになって、どちらかが大きかったり小さかったりしていない。ところが、もし、Ｂ部分を最低輝度として検出した場合、水平方向の長さｘｆは非常に短く、垂直方向の長さｙｆは極端に長い。この特徴から眼鏡フレームを識別する。
【０１０３】
眼鏡フレームの水平方向の閾値をｘｆｔｈ  、垂直方向の閾値をｙｆｃｈ  、低輝度部分の水平方向の長さをｌｄｋｘ、垂直方向の長さをｌｄｋｙ  とすると、
ｌｄｋｘ  ＜ｘｆｔｈ    かつ  ｌｄｋｙ  ＞ｙｆｔｈ
をみたす場合、眼鏡フレームと判定する。
【０１０４】
具体的には、ｘfth ＝５，ｙfth ＝１０（縦位置の場合）で検出を行っている。図に合せて縦位置で説明を行ったが、横位置では水平方向と垂直方向が入れかわる。フレームの判定が垂直方向（縦位置）の長さだけで判定できないのは、画面全体が暗い場合、低輝度部分の大きさが大きくなってしまうことからである。
【０１０５】
眼鏡フレームと判定すると、ステップ＃Ｅ１３に分岐する。ここで、瞳孔部分がうまく推定できなかったため、領域制限のパラメータを初期化し、ブロックデータから求めた最低輝度値のデータも眼鏡フレーム部分の間違った値になっているのでデフォルト値に設定し直す（＃Ｅ１４）。
【０１０６】
この例では眼鏡フレームと判定された場合は領域制限をやめてしまうが、反対に眼鏡フレーム部分を取り除いた部分だけを計算するように領域の制限を行ってもよい。又、これとは別に、眼鏡フレーム部分を排除して瞳孔部分を推定するように再計算してもよい。
【０１０７】
処理が終了するとステップ＃Ｅ１５へ進み、サブルーチンをリターンする。
【０１０８】
このように、眼鏡フレームの特徴を判別し、眼鏡フレームを判別したときは所定の領域で視線演算を行うようにしたため、間違った領域を設定することがない。
【０１０９】
フローチャートでは、説明していないが、眼鏡フレームと判定した場合それを除く領域を設定するようにしても良いし、眼鏡フレーム領域を除いた領域で再度瞳孔位置を推定し直してもよい。
【０１１０】
このようにして、瞳孔位置の誤推定を排除できる。
【０１１１】
次に、図４のサブルーチン「読み出し＆逐次処理」について、図９のフローチャートを用いて説明する。
【０１１２】
このサブルーチン「読み出し＆逐次処理」がコールされると（＃ｘ０１）、まず、センサに読み出し開始通信を行う（＃ｘ０２）。次に、センサ出力をＡ／Ｄ変換する為にＡ／Ｄ変換の初期化を行う（＃ｘ０３）。次いで、逐次計算を行うためのパラメータの初期化や、制限された領域だけを読み出すためのパルス数の設定を行う（＃ｘ０４）。
【０１１３】
次に、これから読む水平ラインが読み出す領域を含むかどうかを判定し（＃ｘ０５）、読み出し領域外でならステップ（＃ｘ１９）分岐する。そして、ステップ＃ｘ１９で、水平ラインを１ライン読み飛ばすための、水平ライン読み飛ばしパルスを出力する。このパルスがセンサに送られるとセンサは水平の１ラインの読み出しを行わない。
【０１１４】
上記ステップ＃ｘ０５で、これから読む水平ラインが読み出す領域を含んでいる場合、ステップ＃ｘ０６へ分岐する。そしてここでは、１ラインの読み出しを行う。まず、１画素毎の読み出しパルスを送り、センサからの出力をＡ／Ｄ変換し所定のＲＡＭに一時的に格納する。読み出す水平ラインの中でも指定された領域外の部分はＡ／Ｄ変換を行わず、読み出しパルスを高速に出力することによって、指定された領域のデータだけを短時間で得ることができる。
【０１１５】
これらの動作はソフト的にタイミングを作って動作させる以外にも、ハード的にパルス出力，Ａ／Ｄ変換，データ格納を行う様な構成にしても良い。この場合、Ａ／Ｄ変換やパルス出力にソフトが介在する必要がないためその間、ソフトは特徴点の抽出を行うことができる。
【０１１６】
次に、カメラの位置が縦位置かどうかを判定し（＃ｘ０７）、縦位置なら読み出しライン数をＡレジスタに入れ（＃ｘ０８）、横位置なら（縦位置でないなら）、今まで検出した瞳孔エッジの総数を計算し、Ａレジスタに格納する（＃ｘ０９）。次いで、Ａレジスタが０かどうかを判定し（＃ｘ１１）、０で無いなら（＃ｘ１２）へ分岐し、サブルーチン「Ｐ像検出」を実行する（＃ｘ１２）。
【０１１７】
カメラ位置が縦位置の場合、少なくとも１ライン以上センサの読み出しが終了してから「Ｐ像検出」を行うようにしている。又、横位置の場合は、照明位置の関係から瞳孔位置よりＰ像の方が下に成ることが判っているので、無駄な演算を省くために瞳孔のエッジが少なくとも１つ検出されてからＰ像の検出を行うようにしている。
【０１１８】
次に、瞳孔エッジを検出するのに充分なライン数の読み出しが終了しているかを判定し（＃ｘ１３）、十分ならステップ＃ｘ１４に分岐する。そしてこのステップ＃ｘ１４では、サブルーチン「瞳孔エッジ検出」をコールし瞳孔エッジを検出する。
【０１１９】
画像データはメモリの制約上から数ライン分記憶できるだけで、その分のライン数が記憶されたら充分なライン数があると判定する。水平方向にのみ瞳孔エッジを検出する場合（即ち、カメラが横位置姿勢の時に瞳孔の左右方向のエッジだけを検出する場合）は、１ラインでも十分である。瞳孔のエッジは、それまで読み出したセンサ出力の最低値を基準として計算する。
【０１２０】
次に、１ライン分のデータ読み込みが終了するまで待ち、読み込んだ画像データを一時的に格納したＲＡＭから計算用のＲＡＭに移しかえる（＃ｘ１５）。上記ステップ＃ｘ０６でソフト的に読み込みが終了している場合はこの動作は必要ないが、ハード的にセンサの読み込みを行っている場合はここでセンサ読み込みのチェックを行う。
【０１２１】
次に、サブルーチン「最低輝度検出」を実行する（＃ｘ１６）。既に図４のステップ＃Ｒ０３でブロック読み出しによって最低輝度を検出しているが、ここでは画素毎の値を使って正確な値を求める。最低輝度は、瞳孔を検出するときに使用するが、センサ出力が１ライン読み込まれる毎に検出を行い、１ライン毎に更新していく。
【０１２２】
１ラインの中で領域外の部分の残りの空送りパルスを出力する（＃ｘ１７）。ハード的にセンサ読み出しを行う場合は、領域外空送りパルスを送る必要がある。次に、読み出したライン数をカウントアップする（＃ｘ１８）。ここで、カウントアップするのは制限された領域内の読み出したライン数をカウントする。
【０１２３】
次に、センサに送った駆動パルス数（１ライン分に対応）をカウントアップする（＃ｘ２０）。カウントがセンサの水平ライン数になったかどうか判定し（＃ｘ２１）、なっていなければステップ＃ｘ０５に戻り、センサ読み出しを繰り返す。
【０１２４】
ステップ＃２０では、センサの水平ライン数のカウントアップを行い、次のステップ＃２１では水平ライン数分だけパルスが出されたかを判定する。
【０１２５】
指定された領域のセンサ読み出しが終了しても、センサの水平ライン数分の読み出しパルスを送る必要があるため、ステップ＃ｘ０５に戻り、読み出しを繰り返す。この場合、読み出しの空送りパルスのみをステップ＃ｘ１９にて出力する。
【０１２６】
センサの読み出しが終了するとサブルーチンをリターンする（＃ｘ２２）。
【０１２７】
次に、最低輝度検出について、図１０を使って説明を行う。
【０１２８】
図１０（ａ）は眼鏡（メガネ）ゴーストがある眼球像の図であり、センサの読み出しは画面左上から水平な１ラインずつ行う。最低輝度の初期値はブロックデータから求めた最低輝度の値に所定量加えた値である。ブロックデータと実際の値とのずれが有るため、ブロックデータの最低値をそのまま使わず所定量を加える必要がある。
【０１２９】
図１０（ｂ），（ｃ）は、図１０（ａ）のＥ−Ｅ´の断面であり、図１０（ｂ）は従来方式の最低輝度検出によって得られる最低輝度を示している。画面下側にゴーストが有るため、図１０（ｂ）は全体的に右上りになっている。最低輝度は瞳孔の一番上側の部分で決定され、以後更新されない。その為、最低輝度を基準としてエッジを検出すると、図１０（ｂ）のＦの部分で瞳孔の輝度が最低輝度を基準にした閾値を上回ってしまう。こうなると、図１０（ａ）画像の下側エッジ、すなわち図１０（ｂ）の右側のエッジが検出出来なくなってしまう。
【０１３０】
そこで、図１０（ｃ）のように最低輝度値を部分的な最低輝度（水平１ライン毎）になるようにし、瞳孔の持ち上がりに追従して閾値も持ち上がるように変えれば〔図１０（ｃ）のＧの部分参照〕、従来例では検出できなかったエッジも検出することが出来る。
【０１３１】
次に、図９のステップ＃ｘ１６で実行されるサブルーチン「最低輝度検出」について、図１１のフローチャートにより説明する。
【０１３２】
図９のステップ＃ｘ１６から、サブルーチン「最低輝度検出」（＃Ｎ０１）がコールされると、まず、最低輝度値が新しく検出されたかどうかを示すフラグ「ＭｉｎＣｈａｎｇ」  をクリアし、最低輝度を検出するためのパラメータ設定を行う（＃Ｎ０２）。次に、その水平ラインの中で最低輝度を検出する範囲を設定する（＃Ｎ０３）。最低輝度の検出開始画素位置（ｊ）や、検出終了位置（ｊｅｎｄ）を設定する。
【０１３３】
最低輝度を検出するための閾値を設定する（＃Ｎ０４）。これまでに検出された最低輝度値をＥＹＥＭＩＮ、瞳孔位置を検出するための閾値をＥＹＥＭＩＮＬＶＬ  とすると、検出用の閾値を
ｍｉｎｔｈｒ１  ＝ＥＹＥＭＩＮ＋ＥｙｅＭｉｎＲｉｓｅＴｈｒ
ｍｉｎｔｈｒ２  ＝ＥＹＥＭＩＮＬＶＬ
と設定する。ＥｙｅＭｉｎＲｉｓｅＴｈｒ  は、最低輝度の持ち上がりを許容するための量で、これから検出する水平ラインの最低輝度がこの許容量以内で持ち上がっていた場合、最低輝度値は新しく更新する。（最低輝度値は大きい値に更新され、真の意味で最低輝度値とは成らないので注意）
ＥＹＥＭＩＮＬＶＬ  とＥＹＥＭＩＮの関係は、ＥＹＥＭＩＮＬＶＬ  ＞ＥＹＥＭＩＮである。ＥＹＥＭＩＮＬＶＬ  とｍｉｎｔｈｒ１  の関係は、ＥＹＥＭＩＮＬＶＬ  ＞ｍｉｎｔｈｒ１  である。
【０１３４】
次に、計算範囲内の画素とその近傍の画素について以下のループを繰り返し最低輝度判定を行う。
【０１３５】
まず、センサ出力値ｉｍ（ｊ）と最低輝度閾値ｍｉｎｔｈｒ１  を比較する（＃Ｎ０５）。ｍｉｎｔｈｒ１  より小さければステップ＃Ｎ０６へ分岐し、二つ手前の画素が閾値ｍｉｎｔｈｒ２  より小さいか較べる（＃Ｎ０６）。小さい場合、ステップ＃Ｎ０７へ分岐し、今度は一つ手間の画素が閾値ｍｉｎｔｈｒ２  より小さいか較べる（＃Ｎ０７）。小さければステップ＃Ｎ０８へ分岐し、閾値を更新し、フラグ「ＭｉｎＣｈａｎｇ」をセットする。
【０１３６】これらをまとめると
ｉｍ（ｊ）＜  ｍｉｎｔｈｒ１  かつ  ｉｍ（ｊ−２）＜  ｍｉｎｔｈｒ２
かつ  ｉｍ（ｊ−１）＜  ｍｉｎｔｈｒ２
の場合、閾値を更新する。
【０１３７】
閾値が更新された場合も、判定で更新されなかった場合も（つまり、ステップ＃Ｎ０５，＃Ｎ０６，＃Ｎ０７の何れかで条件が満たされなかった場合も）、次にステップ＃Ｎ０９へ進む。そして、ここで画素のインデックスｊをカウントアップし、それが指定された計算範囲内であるか判定する。計算範囲内ならステップ＃Ｎ０５へ戻り、判定を繰り返す。
【０１３８】
計算範囲すべてを判定したらステップ＃Ｎ１０へ進み、最低輝度が更新されたかをフラグ「ＭｉｎＣｈａｎｇ」で判定する。フラグがセットされていれば、ステップ＃Ｎ１１へ分岐し、最低輝度閾値を更新する。
【０１３９】
ＥＹＥＭＩＮ    ←ｍｉｎｔｈｒ１
ＥＹＥＭＩＮＬＶＬ  ←ｍｉｎｔｈｒ２
最後にサブルーチンをリターンする（＃Ｎ１２）。
【０１４０】
このように、１ライン分の最低輝度を求める時に、そこまでの最低輝度ＥＹＥＭＩＮにＥｙｅＭｉｎＲｉｓｅＴｈｒ  を加えた量を閾値にして検出を行うため、瞳孔の持ち上がりに対して追従して最低輝度値が変り、エッジを検出するときの閾値も瞳孔の持ち上がりに追従して閾値も持ち上がる。このようにすることで瞳孔部分の輝度の持ち上がりがあっても、正しくエッジ検出が出来る。
【０１４１】
（発明と実施の形態の対応）本実施の形態において、本発明の画像入力手段は、ＣＣＤ−ＥＹＥ１４、視線検出回路１０１から成る。又、特徴領域検出手段、領域設定手段、形状比較手段は、ＣＰＵ１００とＣＰＵ１００内のプログラムで構成されている。
【０１４２】
以上が実施の形態の各構成と本発明の各構成の対応関係であるが、本発明は、これら実施の形態の構成に限定されるものではなく、請求項で示した機能、又は実施の形態がもつ機能が達成できる構成であればどのようなものであってもよいことは言うまでもない。
【０１４３】
（変形例）
本発明は、一眼レフカメラに適用した場合を述べているが、レンズシャッタカメラ，ビデオカメラ等のカメラにも適用可能である。更に、その他の光学機器、例えば顕微鏡やヘッドマウントディスプレイ装置  やゲーム機にも適用することができるものである。
【０１４４】
【発明の効果】
以上説明したように、本発明によれば、特徴領域の形状を所定の形状と比較する形状比較手段を設け、該形状比較手段により特徴領域の形状が所定の形状であると判断された場合、領域設定手段に領域設定を再度実行し直させるようにしている。
【０１４５】
よって、観察者が眼鏡使用している為に瞳孔部分の輝度よりも低い輝度部分の画像情報が得られ、この部分を瞳孔部分として誤って検出してしまうといった事を防止することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る一眼レフカメラの要部の電気的構成を示すブロック図である。
【図２】図１のカメラのファインダ接眼部を示す図である。
【図３】図１のカメラの視線検出時の動作を示すフローチャートである。
【図４】図３のステップ＃Ｍ０７のセンサ読み出し＆特徴抽出動作を示すフローチャートである。
【図５】図４の動作説明を助ける為の図である。
【図６】図４のステップ＃Ｒ０７の瞳孔位置推定時の動作を示すフローチャートである。
【図７】図６の動作説明を助ける為の図である。
【図８】同じく図６の眼鏡フレーム検出時の動作説明を助ける為の図である。
【図９】図４のステップ＃Ｒ０８の読み出し＆逐次処理時の動作を示すフローチャートである。
【図１０】図９の動作説明を助ける為の図である。
【図１１】図９のステップ＃ｘ１６の最低輝度検出時の動作を示すフローチャートである。
【図１２】視線検出の原理を説明する為の図である。
【符号の説明】
１４      イメージセンサ（ＣＣＤ−ＥＹＥ）
１００    ＣＰＵ
１０１    視線検出回路
１０３    焦点検出回路
１０６    ＬＥＤ駆動回路
１０７    ＩＲＥＤ駆動回路
【図１】
0003630792.tif 000003
【図２】
0003630792.tif 000004
【図３】
0003630792.tif 000005
【図４】
0003630792.tif 000006
【図５】
0003630792.tif 000007
【図６】
0003630792.tif 000008
【図７】
0003630792.tif 000009
【図８】
0003630792.tif 000010
【図９】
0003630792.tif 000011
【図１０】
0003630792.tif 000012
【図１１】
0003630792.tif 000013
【図１２】
0003630792.tif 000014