(57)【要約】【課題】視線検出機能を有する被写体認識装置において、被写体を精度よく認識しつつ、かつ注視位置のキャリブレーション動作の自動化を図り、使用者の利便性を向上すること。【解決手段】撮像手段と、表示手段と、撮影者の視線位置検出手段と、オプティカルフロー算出手段と、撮影者の視線位置が所定の時間に移動する移動量及び移動方向を測定する視線移動ベクトル測定手段と、前記オプティカルフローと、前記視線移動ベクトルとを比較し、両者の一致度合を判断する、移動ベクトル一致度合判定手段と、該判定手段により、両者が一致する判定が出た場合に、該オプティカルフローを有する画像領域を抽出し、該領域が被写体領域であると特定する被写体領域特定手段と、を有し、前記特定された被写体領域の位置座標を用いて、前記視線位置の検出結果を修正することを特徴とする。【選択図】図９
2019129461.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段と、
撮像した画像を表示する表示手段と、
撮影者の視線位置を検出する視線位置検出手段と、
前記撮像手段により取得された画像に基づいて、オプティカルフローを算出する、オプティカルフロー算出手段と、
前記視線位置検出手段により測定された撮影者の視線位置が、所定の時間に移動する移動量及び移動方向を測定する視線移動ベクトル測定手段と、
前記オプティカルフロー算出手段により算出されたオプティカルフローと、前記視線移動ベクトル取得手段により取得された視線移動ベクトルとを比較し、その差異から両者の一致度合を判断する、移動ベクトル一致度合判定手段と、
該判定手段により、両者が一致する判定が出た場合に、該オプティカルフローを有する画像領域を抽出し、該領域が被写体領域であると特定する被写体領域特定手段と、
前記特定された被写体領域の位置座標を用いることで、前記視線位置の検出結果を修正する視線位置検出結果修正手段と、
を有することを特徴とする被写体認識装置。
【請求項２】
前記視線移動ベクトルと前記オプティカルフローが一致しているとみなされる、両ベクトルの差異の許容範囲である、許容差異度合いを算出する許容差異度合い算出手段を有し、前記許容差異度合い算出手段は、前記視線移動ベクトル測定手段により測定された視線移動ベクトルの大きさにより、その許容差異度合いを決定し、視線移動ベクトルが大きいほど、その許容される差異度合いを大きくし、前記移動ベクトル一致度合判定手段において、両ベクトルが前記許容差異度合いの範囲内にある場合は、両ベクトルが一致しているとみなすことを特徴とする請求項１に記載の被写体認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、視線検出装置を有する被写体認識装置に関する。
【背景技術】
【０００２】
近年カメラの自動化・インテリジェント化が進み、特許文献１に示されるように、手動で被写体位置を入力せずとも、ファインダを覗く撮影者の視線位置の情報に基づいて撮影者が意図する被写体を認識し、焦点制御を行うことを可能とするカメラ制御装置が提案されている。
【０００３】
また、カメラが上記のように撮影者の視線位置を検出する際に、撮影者の意図した視線位置とカメラが認識する撮影者の視線位置の間にズレが生じ、撮影者の意図する被写体に焦点を合わせることができない場合がある。
【０００４】
これに対し、上記特許文献１においては、撮影前にファインダ内に指標を表示し、ユーザーにその指標を注視するよう指示を出し、その注視状態において、ユーザーの視線位置を検出し、該指標位置とのずれ量を検出する作業を行う。その検出されたずれ量だけ、撮影時にカメラが認識する撮影者の視線検出位置を補正することで、よりユーザーの意図どおりの視線位置を検出することを可能とするキャリブレーション技術が記載されている。
【０００５】
また、特許文献２においては、車両運転時に、運転者の注視点位置の単位時間内の動きを検出し、その移動方向・移動量が運転席から見た外部の風景の移動方向・移動量に一定時間以上一致した場合に、前方を見ていないと判断する、脇見運転検出技術を示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−８３２３号公報
【特許文献２】特開２０１０−３９９３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１においては、撮影者の意図する注視点位置とカメラが検出する注視点位置にずれがある場合に、キャリブレーションによってその補正を行っている。
【０００８】
しかし、明るさ等の周囲の環境や撮影者の体勢等が変わると、カメラが検出する注視点位置が変化するため、状況が変わるたびに頻繁にキャリブレーション作業を行わねばならず、煩雑となる問題がある。
【０００９】
また、特許文献２においては、注視点の所定時間当たりの移動方向・量に注目し、使用者が前方を注視して運転している状態にあるか、それとも視線が前方から側方に流れる景色を追って動く脇見運転の状態であるかの判定をしている。
【００１０】
しかし、使用者の意図する注視点位置と、カメラが認識する使用者の注視点位置との間のずれの検出や、ずれを補正するキャリブレーション作業については言及されていない。そのため、前記注視点位置のずれは解消されないまま残り、使用者の意図する被写体をカメラが正確に認識できない問題がある。
【００１１】
本発明は、上記課題に鑑みてなされたものであり、視線検出装置を有する被写体認識装置において、撮影者の注視する被写体を精度よく認識しつつ、かつ注視位置のキャリブレーション動作の自動化を図り、撮影者の利便性を向上することを目的とする。
【課題を解決するための手段】
【００１２】
上記の目的を達成するために、本発明に係る被写体認識装置は、
撮像手段と、
撮像した画像を表示する表示手段と、
撮影者の視線位置を検出する視線位置検出手段と、
前記撮像手段により取得された画像に基づいて、オプティカルフローを算出する、オプティカルフロー算出手段と、
前記視線位置検出手段により測定された撮影者の視線位置が、所定の時間に移動する移動量及び移動方向を測定する視線移動ベクトル測定手段と、
前記オプティカルフロー算出手段により算出されたオプティカルフローと、前記視線移動ベクトル取得手段により取得された視線移動ベクトルとを比較し、両者の一致度合を判断する、移動ベクトル一致度合判定手段と、
該判定手段により、両者が所定の度合い一致する判定が出た場合に、該オプティカルフローを有する画像領域を抽出し、該領域が被写体領域であると特定する被写体領域特定手段と、
前記特定された被写体領域の位置座標を用いることで、前記視線位置の検出結果を修正する視線位置検出結果修正手段と、
を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、視線検出装置を有する被写体認識装置において、撮影者の注視する被写体を精度よく認識しつつ、かつ注視位置のキャリブレーション動作の自動化を図り、撮影者の利便性を向上することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１実施形態が適用される撮像装置の構成概略図
【図２】本発明の第１実施形態が適用される撮像装置のブロック図
【図３】本発明の第１実施形態におけるファインダ内視野を示す説明図
【図４】本発明の第１実施形態における視線検出方法の原理説明図
【図５】眼球用撮像素子１７に投影される眼球像の概略図
【図６】視線検出の概略フロールーチン
【図７】被写体検出動作説明図
【図８】オプティカルフロー取得手法説明図。
【図９】本発明の第１実施形態における撮影動作・自動キャリブレーション動作のフロー
【発明を実施するための形態】
【００１５】
以下、添付の図面を参照して本発明の好適な実施形態を説明する。
【実施例１】
【００１６】
＜構成の説明＞
図１は本発明におけるデジタルスチルカメラの概略図である。
【００１７】
１は撮影レンズで、本実施形態では便宜上１ａ、１ｂの二枚のレンズで示したが、実際はさらに多数のレンズで構成されていることは周知の通りである。２は撮像素子で、デジタルスチルカメラ１の撮影レンズ１の予定結像面に配置されている。デジタルスチルカメラ１には、カメラ全体を制御するＣＰＵ３、撮像素子２にて撮像された画像を記録するメモリ部４が内包される。また、撮像された画像を表示するための液晶等で構成される表示素子１０と、それを駆動する表示素子駆動回路１１、表示素子１０に表示された被写体像を観察するための接眼レンズ１２が配置されている。
【００１８】
１３ａ〜１３ｂは、従来より一眼レフカメラ等に用いられている光源の角膜反射による反射象と瞳孔の関係から視線方向を検出するための撮影者の眼球１４を照明するための光源で、赤外発光ダイオードからなり、接眼レンズ１２の周りに配置されている。照明された眼球像と光源１３ａ〜１３ｂの角膜反射による像は接眼レンズ１２を透過し、光分割器１５で反射され、受光レンズ１６によってＣＣＤ棟の光電素子列を２次元的に配した眼球用撮像素子１７上に結像される。受光レンズ１６は撮影者の眼球１４の瞳孔と眼球用撮像素子１７を共役な結像関係に位置付けている。眼球用撮像素子１７上に結像された眼球と光源１３ａ〜１３ｂの角膜反射による像の位置関係から後述する所定のアルゴリズムで視線方向を検出する。
【００１９】
１１１は撮影レンズ１内に設けた絞り、１１２は絞り駆動装置、１１３はレンズ駆動用モーター、１１４は駆動ギヤ等からなるレンズ駆動部材、１１５はフォトカプラーでレンズ駆動部材１１４に連動するパルス板１１６の回転を検知して、レンズ焦点調節回路１１８に伝えている。焦点調節回路１１８は、この情報とカメラ側からのレンズ駆動量の情報にもとづいてレンズ駆動用モーター１１３を所定量駆動させ、撮影レンズ１ａを合焦点位置に移動させるようになっている。１１７は公知のカメラとレンズとのインターフェイスとなるマウント接点である。
【００２０】
図２は前期構成のデジタルスチルカメラに内蔵された電気的構成を示すブロック図であり、図１と同一のものは同一番号をつけている。
【００２１】
カメラ本体に内蔵されたマイクロコンピュータの中央処理装置３（以下、ＣＰＵ３と呼ぶ）には視線検出回路２０１、測光回路２０２、自動焦点検出回路２０３、信号入力回路２０４、表示素子駆動回路１１、照明光源駆動回路２０５が接続されている。また、撮影レンズ内に配置された焦点調節回路１１８、前述の絞り駆動装置１１２に含まれる絞り制御回路２０６とは図１で示したマウント接点１１７を介して信号の伝達がなされる。ＣＰＵ３に付随したメモリ部４は、撮像素子２および眼球用撮像素子１７からの撮像信号の記憶機能及び、後述する視線の個人差を補正する視線補正データの記憶機能を有している。
【００２２】
視線検出回路２０１は、眼球用撮像素子１７（ＣＣＤ−ＥＹＥ）からの眼球像が結像することによる出力をＡ／Ｄ変換し、この像情報をＣＰＵ３に送信する。ＣＰＵ３は視線検出に必要な眼球像の各特徴点を後述する所定のアルゴリズムに従って抽出し、更に各特徴点の位置から撮影者の視線を算出する。
【００２３】
測光回路２０２は、測光センサの役割も兼ねる撮像素子２から得られる信号を元に、被写界の明るさに対応した輝度信号出力を増幅後、対数圧縮、Ａ／Ｄ変換し、被写界輝度情報として、ＣＰＵ３に送る。
【００２４】
自動焦点検出回路２０３は、撮像素子２におけるＣＣＤの中に含まれる、位相差検出の為に使用される複数の画素からの信号電圧をＡ／Ｄ変換し、ＣＰＵ３に送る。
【００２５】
ＣＰＵ３は前記複数の画素の信号から、各焦点検出ポイントに対応する被写体までの距離を演算する。これは撮像面位相差ＡＦとして知られる公知の技術である。本実施例では、一例として、図３のファインダ内視野像で示した箇所に対応する撮像面上の位置に１８０か所の焦点検出ポイントがあるとする。
【００２６】
信号入力回路２０４には不図示のレリーズボタンの第一ストロークでＯＮし、カメラの測光、測距、視線検出動作等を開始するためのスイッチであるＳＷ１と、レリーズボタンの第二ストロークでＯＮし、レリーズ動作を開始するためのスイッチであるＳＷ２が接続される。前記の信号が信号入力回路２０４に入力され、ＣＰＵ３に送信される。
【００２７】
図３はファインダ視野内を示した図で、表示装置１０が動作した状態を示す。
【００２８】
図３において、３００は視野マスク、４００は焦点検出領域、４００１〜４１８０は表示素子１０に示されるスルー画像に、前記撮像面上における複数の焦点検出ポイントに対応する位置に重ねて表示した１８０個の測距点視標を示す。また、それらの指標の内、現在の合焦位置に対応する指標を図における合焦ポイントＡのように強調表示を行う。
【００２９】
図４は視線検出方法の原理説明図であり、前述の図１の視線検出をおこなうための光学系の要約図に相当する。
【００３０】
図４において、１３ａ、１３ｂは観察者に対して不感の赤外光を放射する発光ダイオード等の光源であり、各光源は受光レンズ１６の光軸に対して略対称に配置され観察者の眼球１４を照らしている。眼球１４で反射した照明光の一部は受光レンズ１６によって、眼球用撮像素子１７に集光する。
【００３１】
図５（Ａ）は眼球用撮像素子１７に投影される眼球像の概略図、同図（Ｂ）は眼球用撮像素子１７におけるＣＣＤの出力強度図である。図６は視線検出の概略フロールーチンを表している。
【００３２】
以下、図４〜６を用いて、視線の検出手段を説明する。
【００３３】
＜視線検出動作の説明＞
図６において、視線検出ルーチンが開始すると、Ｓ００１において、光源１３ａ、１３ｂは観察者の眼球１４に向けて赤外光を放射する。上記赤外光によって照明された観察者の眼球像は、眼球用撮像素子１７上に受光レンズ１６を通して結像し、眼球用撮像素子１７により光電変換がなされ、眼球像は電気信号として処理が可能となる。
【００３４】
ステップＳ００２において上記のように眼球用撮像素子１７から得られた眼球画像信号をＣＰＵ３に送る。
【００３５】
ステップＳ００３では、Ｓ００２において得られた眼球画像信号の情報から、図４に示す光源１３ａ、１３ｂの角膜反射像Ｐｄ，Ｐｅ及び瞳孔中心ｃに対応する点の座標を求める。光源１３ａ、１３ｂより放射された赤外光は観察者の眼球１４の角膜１４２を照明し、このとき角膜１４２の表面で反射した赤外光の一部により形成される角膜反射像Ｐｄ，Ｐｅは受光レンズ１６により集光され、眼球用撮像素子１７上に結像する（図示の点Ｐｄ’，Ｐｅ’）。同様に瞳孔１４１の端部ａ、ｂからの光束も眼球用撮像素子１７上に結像する。
【００３６】
図５では、図５（ａ）において眼球用撮像素子１７から得られる反射像の画像例を、図５（ｂ）に上記画像例の領域αにおける、眼球用撮像素子１７から得られる輝度情報例を示す。
【００３７】
図示のように、水平方向をＸ軸、垂直方向をＹ軸とする。このとき、光源１３ａ、１３ｂの角膜反射像が結像した像Ｐｄ’，Ｐｅ’のＸ軸方向（水平方向）の座標をＸｄ，Ｘｅとする。また、瞳孔１４ｂの端部ａ、ｂからの光束が結像した像ａ’，ｂ’のＸ軸方向の座標をＸａ、Ｘｂとする。（ｂ）の輝度情報例において、光源１３ａ、１３ｂの角膜反射像が結像した像Ｐｄ’，Ｐｅ’に相当する位置Ｘｄ，Ｘｅでは、極端に強いレベルの輝度が得られている。瞳孔１４１の領域に相当する、座標ＸａからＸｂの間の領域は、上記Ｘｄ、Ｘｅの位置を除き、極端に低いレベルの輝度が得られる。
【００３８】
これに対し、瞳孔１４１の外側の光彩１４３の領域に相当する、Ｘａより低いＸ座標の値を持つ領域及びＸｂより高いＸ座標の値を持つ領域では、前記２種の輝度レベルの中間の値が得られる。上記Ｘ座標位置に対する輝度レベルの変動情報から、光源１３ａ、１３ｂの角膜反射像が結像した像Ｐｄ’，Ｐｅ’のＸ座標Ｘｄ，Ｘｅと、瞳孔端の像ａ’，ｂ’のＸ座標Ｘａ、Ｘｂを得ることができる。また、受光レンズ１６の光軸に対する眼球１４の光軸の回転角θｘが小さい場合、眼球用撮像素子１７上に結像する瞳孔中心ｃに相当する箇所（ｃ’とする）の座標Ｘｃは、Ｘｃ≒（Ｘａ＋Ｘｂ）／２と表すことができる。上記より、眼球用撮像素子１７上に結像する瞳孔中心に相当するｃ’のＸ座標、光源１３ａ、１３ｂの角膜反射像Ｐｄ’，Ｐｅ’の座標を見積もることができた。
【００３９】
さらに、ステップＳ００４では、眼球像の結像倍率βを算出する。βは受光レンズ１６に対する眼球１４の位置により決まる倍率で、実質的には角膜反射像Ｐｄ‘、Ｐｅ’の間隔（Ｘｄ−Ｘｅ）の関数として求めることができる。
【００４０】
また、ステップＳ００５では、角膜反射像Ｐｄ及びＰｅの中点のＸ座標と角膜１４２の曲率中心ＯのＸ座標とはほぼ一致するため、角膜１４２の曲率中心Ｏと瞳孔１４１の中心ｃまでの標準的な距離をＯｃとすると、眼球１４の光軸のＺ−Ｘ平面内の回転角θＸは、
β＊Ｏｃ＊ＳＩＮθＸ≒｛（Ｘｄ＋Ｘｅ）／２｝−Ｘｃ
の関係式から求めることができる。また、図４、図５においては、観察者の眼球がＹ軸に垂直な平面内で回転する場合の回転角θＸを算出する例を示しているが、観察者の眼球がＸ軸に垂直な平面内で回転する場合の回転角θｙの算出方法も同様である。
【００４１】
前ステップにおいて観察者の眼球１４の光軸の回転角θｘ、θｙが算出されると、ステップＳ００６では、θｘ、θｙを用いて、表示素子１０上で観察者の視線の位置（注視している点の位置。以下、注視点と称する。）を求める。注視点位置を表示素子１０上での瞳孔１４１の中心ｃに対応する座標（Ｈｘ，Ｈｙ）であるとして、
Ｈｘ＝ｍ×（Ａｘ×θｘ＋Ｂｘ）
Ｈｙ＝ｍ×（Ａｙ×θｙ＋Ｂｙ）
と算出することができる。この時、係数ｍはカメラのファインダ光学系の構成で定まる定数で、回転角θｘ、θｙを表示素子１０上での瞳孔１４１の中心ｃに対応する位置座標に変換する変換係数であり、あらかじめ決定されてメモリ部４に記憶されているとする。また、Ａｘ，Ｂｘ，Ａｙ，Ｂｙは観察者の視線の個人差を補正する視線補正係数であり、後述するキャリブレーション作業を行うことで取得され、視線検出ルーチンが開始する前にメモリ部４に記憶されているものとする。
【００４２】
上記のように表示素子１０上での瞳孔１４１の中心ｃの座標（Ｈｘ，Ｈｙ）を算出した後、ステップＳ００７においてメモリ部４に上記座標を記憶して、視線検出ルーチンを終える。
【００４３】
上記は光源１３ａ、１３ｂの角膜反射像を利用した表示素子上での注視点座標取得手法を示したが、それに限られるものではなく、撮像された眼球画像から眼球回転角度を取得する手法であれば本発明は適用可能である。上記視線検出ルーチンが、請求項１における視線位置検出手段に相当する。
【００４４】
＜キャリブレーション作業について＞
前述のように、視線検出ルーチンにおいて眼球画像から眼球の回転角度θｘ、θｙを取得し、瞳孔中心位置を表示素子１０上において対応する位置に座標変換する演算を行って注視点位置を推定している。
【００４５】
しかし、人間の眼球の形状の個人差等の要因により、前記視線補正係数Ａｘ，Ａｙ，Ｂｘ，Ｂｙの値を使用者によって適切な値に調整しなければ図３（ｂ）に示したように、使用者が実際に注視している位置Ｂと演算された推定注視点Ｃの位置にずれが生じてしまう。上記例では位置Ｂの人物に注視したいのに、背景が注視されているとカメラ側が誤って推定しており、適切な焦点検出及び調整ができない状態に陥ってしまっている。
【００４６】
そこで、カメラによって撮像を行う前に、キャリブレーション作業を行い、使用者に適切な補正係数の値を取得し、カメラに記憶させる必要がある。
【００４７】
従来、キャリブレーション作業は、撮像前にファインダ視野内に図３（ｃ）のような位置の異なる複数の指標を強調表示し、観察者にその指標を見てもらうことで行う。各視標注視時に注視点検出フローを行い、算出された複数の推定注視点座標と各視標座標の位置から適切な前記係数の値を求める作業を行うことが公知の技術として知られている。
【００４８】
しかしながら、明るさ等の周囲の環境や撮影者の体勢等が変わると、カメラが検出する注視点位置が変化するため、状況が変わるたびに撮像を中止して頻繁にキャリブレーション作業を行わねば精度を維持できず、煩雑となる問題があった。そのため、ユーザーの撮像動作を妨げることがなく、自動的にキャリブレーションが行われて精度を確保するシステムが求められる。
【００４９】
＜自動キャリブレーションシステム＞
上記課題を解決するために、本発明においては、撮影動作にキャリブレーション作業を組み込み、自動的にキャリブレーションを行うことで、撮像を中止する必要がなく、ユーザーの利便性を向上させる構成をとっており、その原理を以下に説明する。
【００５０】
キャリブレーション作業において、最も重要な点は、ユーザーが実際に表示素子１０上のどの箇所を注視しているか特定することにある。従来は前述したように図３（ｃ）のように表示素子１０上に見るべき指標を示し、ユーザーにその指標を注視する動作を行わせることで注視箇所を特定しているが、当然その間はユーザー撮像動作を行うことができない問題がある。そのため、ユーザーの撮像動作中にユーザーが実際に注視している点を特定できるタイミングがあれば、それを利用して眼球画像からの推定注視点と実際の注視点との座標の差異を検出し、その差異データからキャリブレーションを行うことが望ましい。
【００５１】
前記ユーザーの撮像動作中にユーザーが実際に注視している点を特定する作業を、本発明においては、動く被写体を撮像する場合に、表示素子１０上に表示される被写体の動きをユーザーが視線で追っているか否かを判定することで行う。追っていると判定されれば、眼球画像からの推定注視点と前記動く被写体の位置にズレがあったとしても、実際の注視点は該被写体であるとする。
【００５２】
本発明の肝要な点として、視線で動く被写体を追っているか否かの判定を如何にして行うかという事項があり、その手段として、撮像素子２による時系列スルー画像から得られる被写体の動きベクトル（以下、オプティカルフローと記す）と、眼球用撮像素子１７による眼球画像から得られる推定注視点の時系列データから得られる推定注視点の移動ベクトルを比較し、一致度合を判定することで行っている。
【００５３】
図７は動く被写体である走者をユーザーがファインダ内表示素子１０を通して視認している状況を示しており、これを用いて上記の動作を説明する。
【００５４】
図７（ａ）では、ユーザーは時刻ｔ１において、動く被写体である走者（点Ｊ１）を実際には注視しているが、前記視線補正係数が適切な値になく、カメラが推定する注視点はＳ１（座標（Ｈｘ１，Ｈｙ１））であると誤って認識している例を示している。本例では、注視点がベクトルＺだけ並行移動してずれている。このとき、ユーザーは焦点を走者（点Ｊ１）に合わせたいのに、点Ｓ１にある背景に焦点が誤って合わせられてしまう。このとき、時刻ｔ１において得られるデータからのみでは、カメラはユーザーが実際に見ている注視点がどこかを判断することはできない。しかし、時系列的にデータを蓄積することで、その判定が可能となる。カメラはまず、上記時刻ｔ１におけるスルー画像及び推定注視点位置座標（Ｈｘ１，Ｈｙ１）をメモリ部に記憶しておくとする。
【００５５】
次に図７（ｂ）では、時刻ｔ１から所定の時間Δｔだけ経過した時刻ｔ２におけるファインダ内表示素子１０の状況を示す。スルー画像中のユーザーが実際に注視している走者の位置が移動し、点Ｊ１から点Ｊ２に移動し、この時点でのカメラが推定する注視点位置は点Ｓ２（座標（Ｈｘ２，Ｈｙ２））であると判断されている。点Ｊ２と点Ｓ２間には変わらずズレが存在しており、推定注視点であるＳ２に焦点を合わせると背景に焦点が合ってしまう。このとき、記憶しておいた時刻ｔ１においてのスルー画像及び推定注視点位置を使用し、時刻ｔ２における同情報と比較することで、時刻ｔ１から時刻ｔ２に移り変わった際の、画像内の被写体の移動量及び方向を示す図示の動きベクトルΔＯ及び推定注視点が移動した量と方向を示す図示の推定注視点移動ベクトルΔＨを得ることができる。
【００５６】
ユーザーが画像内の被写体の動きを目で追っていた場合に、実際の注視点と推定注視点の間に位置のズレがあったとしても、両者の時系列的な移動量及び方向である被写体動きベクトルΔＯと推定注視点移動ベクトルΔＨはほぼ等しくなる。そのため、スルー画像内において、推定注視点付近にその移動ベクトルΔＨとほぼ一致する動きベクトルを有する画像領域があれば、その領域こそが実際にユーザーが注視している領域だと判定することができる。
【００５７】
図７（ｂ）においては、表示素子１０に表示される画像内に写る人物の被写体の領域が、推定注視点移動ベクトルΔＨとほぼ一致する動きベクトルΔＯを有し、該領域が実際に注視している点Ｊ２であると判断できる。実際の注視点である点Ｊ２を特定できると、前述した従来のキャリブレーションと同様に、視線補正係数を再計算し修正することが可能となる。
【００５８】
上記構成により、ユーザーに通常の撮像動作以外の特定の動作を行わせることなく、カメラが自動的に推定注視点と実際の注視点の位置の差異を判断し、キャリブレーションを実施することができる。
【００５９】
＜オプティカルフローの取得について＞
上記を行うためには、撮影対象の動きベクトルを取得することが必要であり、本実施例では以下のような構成においてそれを実現している。
【００６０】
近年撮像素子の高機能化が進展しており、画素数、フレームレートの向上などが図られている。この信号を利用して複数の画像間で対象物の動きを示すベクトルデータ（オプティカルフロー）を求める方法が知られている。本実施例では、上記オプティカルフローをスルー画像から取得する構成をとる。ＣＰＵ３に含まれる画像処理部は撮像素子２から得られた複数の画像間の比較に基づいてオプティカルフローを生成することができ、撮像素子２と画像処理部で請求項１におけるオプティカルフロー算出手段を構成する。
【００６１】
図８は複数の画像比較に基づくブレ検知信号であるオプティカルフローの求め方の例を示す図である。図１におけるＣＰＵ８の具体的な動作に対応する。図８ではいわゆるブロックマッチング法について説明するが他の方法を用いても良い。
【００６２】
図８（ａ）はある時刻ｔｎで取得された画像、図８（ｂ）は（ａ）より後の時刻ｔｎ＋１で取得された画像とし、図５（ｃ）は前記時刻ｔｎおよびｔｎ＋１で取得された画像を重ねて表示し、検知されたベクトルを模式的に示した図である。
【００６３】
図８において６１は時刻ｔｎで取得された画像を、６２は被写体を、６３は画像６１中の着目領域を、６４は時刻ｔｎ＋１で取得された画像を、６５は６３と画面内の位置が同一の領域を、６６は探索することを模式的に示す矢印を、６７は画像６１の被写体の領域６３に対応する画像６４中の領域を、６８は時刻ｔｎおよびｔｎ＋１で取得された画像を重ねて表示した画像を、６９は画像６１中の領域６３で検知された移動ベクトルをそれぞれ示している。
【００６４】
図８に示すように異なる時間に取得された２つの画像６１，６４を用意する。そのうち一方の画像６１内で被写体６２が存在する領域６３に着目する。この領域の大きさは任意に設定可能であるが例えば８ｘ８画素などとすればよい。
【００６５】
この領域６３が画像６４のどこに移動したかを差分絶対値（＝ＳＡＤ）などを基準に探索すればよい。具体的には画像６４で画像内の位置が対応する領域６５を中心に、予め定められた範囲、矢印６６のように領域をずらしながらＳＡＤを計算すればよい。ＳＡＤを基準に用いた場合は、最小となる位置が対応する領域６７となる。結果として２つの画像６８間で領域６３はベクトル６９のように移動したことが分かる。
【００６６】
上記の動作を画面内に設定された複数の領域について行う（移動ベクトルは画面内で複数検知される。その後、主被写体に注目してベクトル選択をする、ＲＡＮＳＡＣ（＝ＲＡｎｄｏｍ  Ｓａｍｐｌｅ  Ｃｏｎｓｅｎｓｕｓ  既知の技術であり要部ではないので説明は割愛する）などの方法によって推定値を求める、などの方法で２つの画像間の移動ベクトルの評価値を１つ決めればよい。
【００６７】
＜視線検出機能及び自動キャリブレーション機能を有したカメラの動作＞
これまでに原理を説明した、本実施例における視線検出機能及び自動キャリブレーション機能を有したカメラの動作について、図９のフローチャートに従って説明する。
【００６８】
カメラ電源がＯＮされてフローが開始されると、ステップＳ１０１において、撮像素子２がスルー画像を取得開始し、画像信号をＣＰＵ３に送信し、ＣＰＵ３は取得したスルー画像を表示素子１０に表示する。ユーザーはファインダ内の表示素子１０に表示されたスルー画像を見ることで被写体の視認を行う。表示素子１０は請求項１における表示手段に相当する。
【００６９】
ステップＳ１０２では、電源がＯＦＦされたか否かを判定し、ＯＦＦされていればフローは終了し、ＯＦＦされていなければ、ステップＳ１０３に進む。
【００７０】
ステップＳ１０３では、ステップＳ１０１で被写体を視認し始めたユーザーの眼球画像の取得を開始し、前述の視線検出ルーチンを実施することで、表示素子１０上での推定注視点位置座標（Ｈｘ，Ｈｙ）を取得する。
【００７１】
また、前ステップでの推定注視点位置座標の取得に続き、ステップＳ１０４では撮像素子２から得られるスルー画像をメモリ部４に記憶する。
【００７２】
ステップＳ１０５では、メモリ部４に記憶された前記推定注視点位置座標の履歴が２個以上存在するかの判断を行う。２個未満であれはステップＳ１０６へ、２個以上存在すれば、注視点位置移動ベクトル及びオプティカルフローの取得が可能となるため、ステップＳ２０１へ進む。
【００７３】
ステップＳ１０６では、図３（ａ）で示したようなファインダ内での表示素子１０上での１８０個の焦点検出ポイントを示した指標のうち、メモリ部４に記憶されたユーザーの推定注視点位置座標履歴の中で最後に記憶された座標に最も近い位置の指標を焦点検出ポイントと判断して、撮像素子２上での対応する測距用画素を用いて測距を行い、図示の合焦ポイントＡのように該視標を強調表示する。
【００７４】
次に、ステップＳ１０７では所定時間の待機が行われる。
【００７５】
ステップＳ１０８では、前述したレリーズボタンが押されてＳＷ１がＯＮであるか否かを判定する。ユーザーはステップＳ１０６で強調表示された視標の位置で合焦を行うことに同意した場合に前ステップの所定時間の待機の時点でレリーズボタンを押し、ＳＷ１をＯＮにすることとなる。ＳＷ１がＯＮであればステップＳ１０９に、ＯＮになっていない場合はステップＳ１０３に戻り、注視点位置の再取得を行う。
【００７６】
ステップＳ１０９においては、ステップＳ１０４で取得された測距結果に対応する合焦点位置へレンズ群を移動し、ステップＳ１１０に進む。
【００７７】
ステップＳ１１０ではレリーズボタンがさらに押しこまれ、ＳＷ２がＯＮになったか否かを判定する。ユーザーは現在の合焦位置で撮影を行うことを同意した場合にＳＷ２をＯＮにすることとなる。ＳＷ２がＯＮであればステップＳ１１１に、ＯＮになっていない場合はステップＳ１０６に戻り、同じ位置で測距・表示をやり直す。
【００７８】
ステップＳ１１１は撮像動作が行われ、撮像素子２において画像信号が取得され、ＣＰＵ３に送信され、メモリ部４に記憶される。
【００７９】
ステップＳ１１２において、前ステップにおいて取得された画像を表示素子１０に所定時間表示し、ステップＳ１１３に進む。
【００８０】
ステップＳ１１３において、メモリ部４に記憶された推定注視点履歴データ及びスルー画像履歴についての消去を行う。その後、ステップＳ１０１に戻り、スルー画像を再取得・表示し始める。
【００８１】
ステップＳ２０１においては前ステップまでに記憶された推定注視点位置座標の履歴及びスルー画像の履歴から、最新のデータ及びその一つ前に記憶されたデータを比較して、前述した推定注視点の所定時間内での移動ベクトルである推定注視点移動ベクトル及び、画面内の被写体の所定時間内での動きベクトルであるオプティカルフローの取得を行う。本ステップの動作は、請求項１における視線移動ベクトル測定手段及びオプティカルフロー算出手段に相当する。
【００８２】
ステップＳ２０２においては、後に行う推定注視点移動ベクトルと画面内のオプティカルフローのベクトルの一致を判断する過程で用いる基準となる許容差異度合いを算出する。ここで、許容差異度合いは前ステップで算出された推定注視点移動ベクトルの大きさによって変動し、推定注視点移動ベクトルが大きいほど許容差異度合いが大きくなる（差異が大きくても許容される）とする。これは、ファインダ視野内における被写体の移動速度が大きくなるほど、その動きを視線で追った際に視線の動きと被写体の動きの差異が出やすくなり、被写体補足精度が下がることを防止するためである。被写体の速度を、それを視線で追っている視線の移動べクトル（推定注視点移動ベクトル）の大きさから判断し、許容差異度合いの算出に反映させている。これは請求項２における許容差異度合い算出手段に相当する。
【００８３】
ステップＳ２０３においては、前ステップで取得された推定注視点移動ベクトルと所定度合い以上に一致するオプティカルフローを有する被写体領域が画面内にあるか否かの判定を行う。両ベクトルの一致の判定は前ステップで算出した許容差異度合いを用いて行い、両ベクトルの差異が該許容差異度合いの範囲内に収まる場合は一致と判断される。一致する領域がある場合にはその座標を取得し、ステップＳ２０４に進む。本ステップにおける動作は請求項１における移動ベクトル一致度合判定手段に相当する。一致する領域が無ければステップＳ１０６に戻り、最新の推定注視点位置で測距を行う。
【００８４】
ステップＳ２０４においては前ステップで取得された推定注視点移動ベクトルと所定度合い以上に一致するオプティカルフローを有する被写体領域の座標と、最新の推定注視点の座標の位置を比較し、両者が所定値以内の近い位置にある場合には、その領域こそがユーザーが実際に注視している点であると判断し、ステップＳ２０５に進む。これは、推定注視点位置は実際の注視点から個人差等の誤差により位置がずれるが、そのずれ量は大きくはなく、両者は近傍に存在すると判断できるためである。所定以上に離れている場合には前記ベクトル同士の一致は偶然であるとして、ステップＳ１０６に戻り、最新の推定注視点位置で測距を行う。
【００８５】
ステップＳ２０５においては上記オプティカルフローを有する領域こそがユーザーが実際に注視している点であるとして、その位置において測距を行い、該領域に相当する位置の焦点検出ポイントの指標を強調表示する。ステップＳ２０３からＳ２０５における実際に注視している点を特定する過程は、請求項１における被写体領域特定手段に相当する。上記過程により、視線検出結果に誤差がある場合にも、ユーザーが実際に注目している被写体に焦点を合わせることが可能となり、被写体補足精度が向上する。
【００８６】
次にステップＳ２０６においては所定時間の待機が行われ、ステップＳ２０７においては、レリーズボタンが押されてＳＷ１がＯＮであるか否かを判定する。ユーザーはステップ２０５で強調表示された視標の位置で合焦を行うことに同意した場合に前ステップの所定時間の待機の時点でレリーズボタンを押し、ＳＷ１をＯＮにすることとなる。ＳＷ１がＯＮであればステップＳ２０８に進み、ＯＮになっていない場合はステップＳ１０２に戻り、注視点位置の再取得を行う。
【００８７】
ステップＳ２０８においては、ステップＳ２０５で取得された測距結果に対応する合焦点位置へレンズ群を移動し、ステップＳ２０９に進む。
【００８８】
ステップＳ２０９ではレリーズボタンがさらに押しこまれ、ＳＷ２がＯＮになったか否かを判定する。ユーザーは現在の合焦位置で撮影を行うことを同意した場合にＳＷ２をＯＮにすることとなる。ＳＷ２がＯＮであればステップＳ２１０に進み、ＯＮになっていない場合はステップＳ２０５に戻り、同じ位置で測距・表示をやり直す。
【００８９】
ステップＳ２１０においては撮像動作が行われ、撮像素子２において画像信号が取得され、ＣＰＵ３に送信され、メモリ部４に記憶される。
【００９０】
ステップＳ２１１において、ユーザーが強調表示された前述のオプティカルフローを有する領域を正しい注視点位置と認識したため撮像動作が行われたと判断し、該領域の座標を用いて前述の視線補正係数を修正し、メモリ部４に記憶する。本ステップの動作は、請求項１における視線位置検出結果修正手段に相当する。その後、ステップＳ１１２に進み、取得画像を表示する。
【００９１】
上記構成により、視線検出装置を有する被写体認識装置において、撮影者の注視する被写体を精度よく認識しつつ、かつ注視位置のキャリブレーション動作の自動化を図り、撮影者の利便性を向上する事を達成できた。
【符号の説明】
【００９２】
１  撮影レンズ、２  撮像素子、３  ＣＰＵ、４  メモリ部、１０  表示素子、
１１  表示素子駆動回路、１２  接眼レンズ、１３ａ〜ｆ  照明光
源、１４  眼球、１５  光分割器、１６  受光レンズ、１７  眼球用撮像素子、
１１１  絞り、１１２  絞り駆動部、１１３  レンズ駆動モーター、
１１４  レンズ駆動部材、１１５  フォトカプラー、１１６  パルス板、
１１７  マウント接点、１４１  瞳孔、１４２  角膜、１４３  光彩
【図１】
2019129461.tif 000003
【図２】
2019129461.tif 000004
【図３】
2019129461.tif 000005
【図４】
2019129461.tif 000006
【図５】
2019129461.tif 000007
【図６】
2019129461.tif 000008
【図７】
2019129461.tif 000009
【図８】
2019129461.tif 000010
【図９】
2019129461.tif 000011