(57)【特許請求の範囲】
【請求項１】
所定の構造物を含む被写体を異なる位置から撮影することにより取得した複数の画像の入力を受け付ける入力手段と、
前記複数の画像のうちの基準となる１つの基準画像から前記被写体が存在する基準被写体領域を検出するとともに、前記基準画像以外の他の画像から前記基準被写体領域に対応する対応被写体領域を検出する被写体検出手段と、
前記基準画像上に前記基準被写体領域を含む所定範囲の基準切り出し領域を設定し、前記他の画像上に前記対応被写体領域を含む前記所定範囲の仮の切り出し領域を設定し、前記仮の切り出し領域を前記他の画像上において移動させつつ、前記基準切り出し領域に含まれる前記被写体の前記所定の構造物と、前記仮の切り出し領域に含まれる前記被写体の前記所定の構造物とのずれ量を検出し、該ずれ量が最小となる位置における前記仮の切り出し領域を、前記基準切り出し領域に対応する対応切り出し領域に設定する領域設定手段と、
前記基準画像から前記基準切り出し領域を切り出し、前記他の画像から前記対応切り出し領域を切り出す領域切り出し手段とを備え、
前記領域設定手段は、前記被写体に前記所定の構造物が複数含まれる場合において、前記被写体に含まれる前記所定の構造物のサイズが異なる場合には、サイズが大きい構造物に基づいて前記ずれ量を検出する手段であることを特徴とする画像処理装置。
【請求項２】
前記被写体が人物の顔であり、前記所定の構造物が目であることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記基準切り出し領域の画像および前記対応切り出し領域の画像を記録メディアに記録する記録制御手段をさらに備えたことを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
前記領域設定手段は、前記基準画像または前記他の画像の垂直方向および水平方向とでそれぞれずれ量を検出する手段であることを特徴とする請求項１から３のいずれか１項記載の画像処理装置。
【請求項５】
所定の構造物を含む被写体を異なる位置から撮影することにより取得した複数の画像の入力を受け付け、
前記複数の画像のうちの基準となる１つの基準画像から前記被写体が存在する基準被写体領域を検出し、
前記基準画像以外の他の画像から前記基準被写体領域に対応する対応被写体領域を検出し、
前記基準画像上に前記基準被写体領域を含む所定範囲の基準切り出し領域を設定し、
前記他の画像上に前記対応被写体領域を含む前記所定範囲の仮の切り出し領域を設定し、
前記仮の切り出し領域を前記他の画像上において移動させつつ、前記基準切り出し領域に含まれる前記被写体の前記所定の構造物と、前記仮の切り出し領域に含まれる前記被写体の前記所定の構造物とのずれ量を検出するに際し、前記被写体に前記所定の構造物が複数含まれる場合において、前記被写体に含まれる前記所定の構造物のサイズが異なる場合には、サイズが大きい構造物に基づいて前記ずれ量を検出し、
該ずれ量が最小となる位置における前記仮の切り出し領域を、前記基準切り出し領域に対応する対応切り出し領域に設定し、
前記基準画像から前記基準切り出し領域を切り出し、
前記他の画像から前記対応切り出し領域を切り出すことを特徴とする画像処理方法。
【請求項６】
所定の構造物を含む被写体を異なる位置から撮影することにより取得した複数の画像の入力を受け付ける手順と、
前記複数の画像のうちの基準となる１つの基準画像から前記被写体が存在する基準被写体領域を検出する手順と、
前記基準画像以外の他の画像から前記基準被写体領域に対応する対応被写体領域を検出する手順と、
前記基準画像上に前記基準被写体領域を含む所定範囲の基準切り出し領域を設定する手順と、
前記他の画像上に前記対応被写体領域を含む前記所定範囲の仮の切り出し領域を設定する手順と、
前記仮の切り出し領域を前記他の画像上において移動させつつ、前記基準切り出し領域に含まれる前記被写体の前記所定の構造物と、前記仮の切り出し領域に含まれる前記被写体の前記所定の構造物とのずれ量を検出する手順と、
該ずれ量が最小となる位置における前記仮の切り出し領域を、前記基準切り出し領域に対応する対応切り出し領域に設定する手順と、
前記基準画像から前記基準切り出し領域を切り出す手順と、
前記他の画像から前記対応切り出し領域を切り出す手順とを有し、
前記ずれ量を検出する手順が、前記被写体に前記所定の構造物が複数含まれる場合において、前記被写体に含まれる前記所定の構造物のサイズが異なる場合には、サイズが大きい構造物に基づいて前記ずれ量を検出する手順であることを特徴とする画像処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体を異なる位置から撮影することにより取得した複数の画像から、例えば３次元表示を行うために被写体を含む領域を抽出する画像処理装置および方法並びに画像処理方法をコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【０００２】
平面的な画像を立体的な映像として表現するための３次元表示を行うための種々の手法が提案されている。この３次元表示は、右目と左目との間隔によって生じる両目の視差を意図的に生成して、映像が浮き出て見えるような立体感を表現することにより実現される。例えば、裸眼平行法による立体視においては、左右それぞれの目に対応する２つの画像を用意し、２つの画像中における同一物体の位置を左右にずらして配置することにより３次元表示を実現している。また、画像を表示する表示装置の表示面にレンチキュラーレンズを貼り付け、表示面の所定位置に左右のそれぞれの目に対応する２つの画像を表示することにより、左右の目にそれぞれの画像を入射させて３次元表示を実現する手法も提案されている。さらに、３次元ディスプレイにより３次元表示を実現する手法も提案されている。この３次元ディスプレイは、バックライトの光路を光学的に左右の目に対応するように交互に分離し、表示面に左右の目に対応する２つの画像をバックライトの左右への分離にあわせて交互に表示することにより、３次元表示を実現するものである。
【０００３】
なお、このような３次元表示に使用する画像は、異なる位置に設けられた２台以上のカメラを用いて同一の被写体を撮像したり、１台のカメラを用いて複数の異なる位置から同一の被写体を撮像することにより取得することができる。また、このように３次元表示に使用する画像を取得するためのカメラにおいて、光軸のずれを補正する手法が提案されている（特許文献１参照）。また、単独のカメラではあるが、撮影により取得した画像から人物の顔を検出し、顔の領域の位置および大きさから、カメラの光学ズームおよび電子ズームの制御を行う手法が提案されている（特許文献２参照）。
【特許文献１】特開平６−５４３４９号公報
【特許文献２】特開平６−２１７１８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、３次元表示を行う場合、とくに画像に含まれる人物の顔等の主要被写体の視差量が適正な値を超えると、主要被写体が二重に見えてしまう等により３次元映像が破綻し、画像全体の印象が低下してしまうという問題が生じる。この場合、視差量が大きくならないように、特許文献１の手法を用いてカメラの光軸を調整することが考えられる。しかしながら、特許文献１に記載された手法はカメラに光軸を調整するための機構を設ける必要があるため、カメラの構成が複雑なものとなる。また、光軸を調整するための基準を被写体毎に設定する必要があるため、撮影の操作も煩雑なものとなる。また、特許文献２に記載された手法を適用したカメラを複数台用いて画像を取得することが考えられるが、その場合であっても、各カメラは独立に制御されるため、３次元映像が破綻するおそれがある。
【０００５】
本発明は上記事情に鑑みなされたものであり、主要な被写体を破綻させることなく、３次元表示を良好に行うことを目的とする。
【課題を解決するための手段】
【０００６】
本発明による画像処理装置は、所定の構造物を含む被写体を異なる位置から撮影することにより取得した複数の画像の入力を受け付ける入力手段と、
前記複数の画像のうちの基準となる１つの基準画像から前記被写体が存在する基準被写体領域を検出するとともに、前記基準画像以外の他の画像から前記基準被写体領域に対応する対応被写体領域を検出する被写体検出手段と、
前記基準画像上に前記基準被写体領域を含む所定範囲の基準切り出し領域を設定し、前記他の画像上に前記対応被写体領域を含む前記所定範囲の仮の切り出し領域を設定し、前記仮の切り出し領域を前記他の画像上において移動させつつ、前記基準切り出し領域に含まれる前記被写体の前記所定の構造物と、前記仮の切り出し領域に含まれる前記被写体の前記所定の構造物とのずれ量を検出し、該ずれ量が最小となる位置における前記仮の切り出し領域を、前記基準切り出し領域に対応する対応切り出し領域に設定する領域設定手段と、
前記基準画像から前記基準切り出し領域を切り出し、前記他の画像から前記対応切り出し領域を切り出す領域切り出し手段とを備えたことを特徴とするものである。
【０００７】
なお、本発明による画像処理装置においては、前記領域設定手段を、前記被写体に前記所定の構造物が複数含まれる場合において、前記被写体に含まれる前記所定の構造物のサイズが異なる場合には、サイズが大きい構造物に基づいて前記ずれ量を検出する手段としてもよい。
【０００８】
また、本発明による画像処理装置においては、前記領域設定手段を、前記被写体に前記所定の構造物が複数含まれる場合、前記基準切り出し領域および前記仮の切り出し領域において、対応するそれぞれの構造物のずれ量の絶対値の合計値が最小となる位置における前記仮の切り出し領域を、前記対応切り出し領域に設定する手段としてもよい。
【０００９】
また、本発明による画像処理装置においては、前記被写体を人物の顔とし、前記所定の構造物を目としてもよい。
【００１０】
本発明による画像処理方法は、所定の構造物を含む被写体を異なる位置から撮影することにより取得した複数の画像の入力を受け付け、
前記複数の画像のうちの基準となる１つの基準画像から前記被写体が存在する基準被写体領域を検出し、
前記基準画像以外の他の画像から前記基準被写体領域に対応する対応被写体領域を検出し、
前記基準画像上に前記基準被写体領域を含む所定範囲の基準切り出し領域を設定し、
前記他の画像上に前記対応被写体領域を含む前記所定範囲の仮の切り出し領域を設定し、
前記仮の切り出し領域を前記他の画像上において移動させつつ、前記基準切り出し領域に含まれる前記被写体の前記所定の構造物と、前記仮の切り出し領域に含まれる前記被写体の前記所定の構造物とのずれ量を検出し、
該ずれ量が最小となる位置における前記仮の切り出し領域を、前記基準切り出し領域に対応する対応切り出し領域に設定し、
前記基準画像から前記基準切り出し領域を切り出し、
前記他の画像から前記対応切り出し領域を切り出すことを特徴とするものである。
【００１１】
なお、本発明による画像処理方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【発明の効果】
【００１２】
本発明によれば、複数の画像のうちの基準となる１つの基準画像から被写体が存在する基準被写体領域が検出され、基準画像以外の他の画像から基準被写体領域に対応する対応被写体領域が検出される。そして、基準画像上に基準被写体領域を含む所定範囲の基準切り出し領域が設定され、他の画像上に対応被写体領域を含む所定範囲の仮の切り出し領域が設定され、仮の切り出し領域を他の画像上において移動させつつ、基準切り出し領域に含まれる被写体の所定の構造物と、仮の切り出し領域に含まれる被写体の所定の構造物とのずれ量が検出され、ずれ量が最小となる位置における仮の切り出し領域が、基準切り出し領域に対応する対応切り出し領域に設定される。そして、基準画像から基準切り出し領域が、他の画像から対応切り出し領域が切り出される。なお、切り出された基準切り出し領域および対応切り出し領域は、例えば３次元表示を行うための画像として使用される。
【００１３】
このように、本発明においては、被写体に含まれる所定の構造物のずれ量が基準画像と他の画像との間において最小となるように各画像から領域を切り出すようにしたため、３次元表示を行った際には、所定の構造物を含む被写体については、視差量が最小となることから立体感は少なくなり、画像に含まれる他の部分においてより大きな立体感が得られることとなる。したがって、３次元表示を行った際に、所定の構造物を含む被写体の３次元映像が破綻することがなくなり、その結果、３次元表示を行う際の画像の印象を向上させることができる。
【００１４】
また、被写体が複数の所定の構造物を含む場合においては、撮影時におけるカメラに近い側の構造物が画像上において重要であることが多い。このため、被写体が複数の所定の構造物を含む場合において、所定の構造物のサイズが異なる場合には、サイズが大きい構造物、すなわち撮影時のカメラに近い方の構造物に基づいてずれ量を算出することにより、より重要な構造物が３次元表示の際に破綻することを防止できる。
【００１５】
また、被写体が複数の所定の構造物を含む場合、基準切り出し領域および仮の切り出し領域において、対応するそれぞれの構造物のずれ量の絶対値の合計値が最小となる位置における仮の切り出し領域を対応切り出し領域に設定することにより、被写体が３次元表示した際に破綻することをより確実に防止することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して本発明の実施形態について説明する。図１は本発明の第１の実施形態による画像処理装置を適用した複眼カメラの内部構成を示す概略ブロック図である。図１に示すように第１の実施形態による複眼カメラ１は、２つの撮像部２１Ａ，２１Ｂ、撮像制御部２２、画像処理部２３、圧縮／伸長処理部２４、フレームメモリ２５、メディア制御部２６、内部メモリ２７、および表示制御部２８を備える。
【００１７】
図２は撮像部２１Ａ，２１Ｂの構成を示す図である。図２に示すように、撮像部２１Ａ，２１Ｂは、レンズ１０Ａ，１０Ｂ、絞り１１Ａ，１１Ｂ、シャッタ１２Ａ，１２Ｂ、ＣＣＤ１３Ａ，１３Ｂ、アナログフロントエンド（ＡＦＥ）１４Ａ，１４ＢおよびＡ／Ｄ変換部１５Ａ，１５Ｂをそれぞれ備える。
【００１８】
レンズ１０Ａ，１０Ｂは、被写体に焦点を合わせるためのフォーカスレンズ、ズーム機能を実現するためのズームレンズ等の複数の機能別レンズにより構成され、不図示のレンズ駆動部によりその位置が調整される。
【００１９】
絞り１１Ａ，１１Ｂは、不図示の絞り駆動部により、ＡＥ処理により得られる絞り値データに基づいて絞り径の調整が行われる。
【００２０】
シャッタ１２Ａ，１２Ｂはメカニカルシャッタであり、不図示のシャッタ駆動部により、ＡＥ処理により得られるシャッタスピードに応じて駆動される。
【００２１】
ＣＣＤ１３Ａ，１３Ｂは、多数の受光素子を２次元的に配列した光電面を有しており、被写体光がこの光電面に結像して光電変換されてアナログ撮像信号が取得される。また、ＣＣＤ１３Ａ，１３Ｂの前面にはＲ，Ｇ，Ｂ各色のフィルタが規則的に配列されたカラーフィルタが配設されている。
【００２２】
ＡＦＥ１４Ａ，１４Ｂは、ＣＣＤ１３Ａ，１３Ｂから出力されるアナログ撮像信号に対して、アナログ撮像信号のノイズを除去する処理、およびアナログ撮像信号のゲインを調節する処理（以下アナログ処理とする）を施す。
【００２３】
Ａ／Ｄ変換部１５Ａ，１５Ｂは、ＡＦＥ１４Ａ，１４Ｂによりアナログ処理が施されたアナログ撮像信号をデジタル信号に変換する。なお、撮像部２１Ａ，２１ＢのＣＣＤ１３Ａ，１３Ｂにおいて取得され、デジタル信号に変換されることにより得られる画像データは、画素毎にＲ，Ｇ，Ｂの濃度値を持つＲＡＷデータである。なお、撮像部２１Ａにより取得される画像データにより表される画像を第１の画像Ｇ１、撮像部２１Ｂにより取得される画像データにより表される画像を第２の画像Ｇ２とする。また、第１の画像Ｇ１が基準画像に、第２の画像が他の画像にそれぞれ対応する。
【００２４】
撮像制御部２２は、不図示のＡＦ処理部およびＡＥ処理部からなる。ＡＦ処理部はレリーズボタンの半押し操作により撮像部２１Ａ，２１Ｂが取得したプレ画像に基づいてレンズ１０Ａ，１０Ｂの焦点距離を決定し、撮像部２１Ａ，２１Ｂに出力する。ＡＥ処理部は、プレ画像に基づいて絞り値とシャッタ速度とを決定し、撮像部２１Ａ，２１Ｂに出力する。なお、ＡＦ処理およびＡＥ処理を行うことなく、予め定められたフォーカス位置、絞り値およびシャッタ速度を用いて撮影を行うことも可能である。
【００２５】
また、撮像制御部２２は、レリーズボタンの全押し操作により、撮像部２１Ａ，２１Ｂに対して第１および第２の画像Ｇ１，Ｇ２を取得させる指示を行う。なお、レリーズボタンが操作される前は、撮像制御部２２は、撮像部２１Ａに対して撮影範囲を確認させるための、第１および第２の画像Ｇ１，Ｇ２よりも画素数が少ないスルー画像を取得させる指示を行う。
【００２６】
画像処理部２３は、撮像部２１Ａ，２１Ｂが取得したデジタルの画像データに対して、ホワイトバランスを調整する処理、階調補正、シャープネス補正、および色補正等の画像処理を施す。なお、画像処理部２３における処理後の第１および第２の画像についても、処理前の参照符号Ｇ１，Ｇ２を用いるものとする。
【００２７】
圧縮／伸長処理部２４は、画像処理部２３によって処理が施され、後述するように３次元表示のために処理がなされた第１および第２の画像Ｇ１，Ｇ２からそれぞれトリミングした画像Ｒ１，Ｒ２を表す画像データに対して、例えば、ＪＰＥＧ等の圧縮形式で圧縮処理を行い、３次元表示を行うための３次元画像ファイルを生成する。この３次元画像ファイルは、画像Ｒ１，Ｒ２の画像データを含むものとなる。また、この画像ファイルには、Ｅｘｉｆフォーマット等に基づいて、撮影日時等の付帯情報が格納されたタグが付与される。
【００２８】
フレームメモリ２５は、撮像部２１Ａ，２１Ｂが取得した第１および第２の画像Ｇ１，Ｇ２を表す画像データに対して、前述の画像処理部２３が行う処理を含む各種処理を行う際に使用する作業用メモリである。
【００２９】
メディア制御部２６は、記録メディア２９にアクセスして３次元画像ファイル等の書き込みと読み込みの制御を行う。
【００３０】
内部メモリ２７は、複眼カメラ１において設定される各種定数、およびＣＰＵ３３が実行するプログラム等を記憶する。
【００３１】
表示制御部２８は、撮影時においてフレームメモリ２５に格納された第１および第２の画像Ｇ１，Ｇ２をモニタ２０に２次元表示させたり、記録メディア２９に記録されている第１および第２の画像Ｇ１，Ｇ２をモニタ２０に２次元表示させたりする。また、表示制御部２８は、後述するように第１および第２の画像Ｇ１，Ｇ２からトリミングした画像Ｒ１，Ｒ２を３次元表示したり、記録メディア２９に記録されている３次元画像ファイルをモニタ２０に３次元表示することも可能である。なお、２次元表示と３次元表示との切り替えは自動で行ってもよく、後述する入出力部３４を用いての撮影者からの指示により行ってもよい。
【００３２】
ここで、第１の実施形態における３次元表示としては、公知の任意の方式を用いることができる。例えば、第１および第２の画像Ｇ１，Ｇ２からトリミングした画像Ｒ１，Ｒ２を並べて表示して裸眼平衡法により立体視を行う方式、またはモニタ２０にレンチキュラーレンズを貼り付け、モニタ２０の表示面の所定位置に画像Ｒ１，Ｒ２を表示することにより、左右の目にそれぞれの画像Ｒ１，Ｒ２を入射させて３次元表示を実現する方式を用いることができる。さらに、モニタ２０のバックライトの光路を光学的に左右の目に対応するように交互に分離し、モニタ２０の表示面に画像Ｒ１，Ｒ２をバックライトの左右への分離にあわせて交互に表示することにより、３次元表示を実現する方式等を用いることができる。
【００３３】
また、複眼カメラ１は、顔検出部３０、領域設定部３１およびトリミング部３２を備える。なお、顔検出部３０、領域設定部３１およびトリミング部３２が行う処理については、以下の第１の実施形態において行われる処理において説明する。
【００３４】
ＣＰＵ３３は、レリーズボタンを含む入出力部３４からの信号に応じて複眼カメラ１の各部を制御する。
【００３５】
データバス３５は、複眼カメラ１を構成する各部およびＣＰＵ３３に接続されており、複眼カメラ１における各種データおよび各種情報のやり取りを行う。
【００３６】
次いで、第１の実施形態において行われる処理について説明する。図３および図４は第１の実施形態において行われる処理を示すフローチャートである。なお、複眼カメラ１のモニタ２０は２次元表示を行うように設定がなされており、さらにフォーカス位置、絞り値およびシャッタ速度等は予め定められているものとする。また、人物の顔について両目を含むように撮影を行うものとする。
【００３７】
まず、表示制御部２８が、撮像部２１Ａが撮影したスルー画像をモニタ２０に表示する（ステップＳＴ１）。そして、顔検出部３０がスルー画像から顔領域を検出する（ステップＳＴ２）。なお、顔検出部３０は、テンプレートマッチングによる手法や、顔の多数のサンプル画像を用いてマシンラーニング学習により得られた顔判別器を用いる手法等により、スルー画像から顔を検出し、検出した顔を囲む所定範囲の領域を顔領域として検出する。なお、顔検出部３０が顔領域を検出すると、モニタ２０に表示されたスルー画像上には検出した顔領域を示す枠が表示される。また、これにより検出した顔領域内の画像を用いて、ＡＦ処理、ホワイトバランス調整処理およびＡＥ処理等、撮影に必要な処理を行うようにしてもよい。
【００３８】
次いで、ＣＰＵ３３がレリーズボタンが押下されたか否かの監視を開始し（ステップＳＴ３）、ステップＳＴ３が肯定されると、撮像中の画像を第１の画像Ｇ１として、さらに第１の画像Ｇ１において検出した顔領域を基準顔領域Ｆ１としてその４隅の座標をフレームメモリ２５に記録するとともに、基準顔領域Ｆ１に含まれる目の位置の座標をフレームメモリ２５に記録する（ステップＳＴ４）。さらに、撮像部２１Ｂが撮影中の画像を第２の画像Ｇ２としてフレームメモリ２５に記録する（ステップＳＴ５）。なお、第１の画像Ｇ１および基準顔領域Ｆ１の例を図５（ａ）に示す。
【００３９】
ここで、スルー画像に複数の顔が含まれる場合、顔検出部３０はすべての顔の顔領域を検出する。この場合、モニタ２０に表示された画像を見た撮影者が、基準顔領域Ｆ１として検出する顔領域を選択する。
【００４０】
次いで、顔検出部３０は、第１の画像Ｇ１において検出した基準顔領域Ｆ１に対応する対応顔領域Ｆ２を第２の画像Ｇ２において検出する（ステップＳＴ６）。具体的には、基準顔領域Ｆ１を第２の画像Ｇ２上において移動させつつ、基準顔領域Ｆ１と第２の画像Ｇ２の対応する領域との相関を求め、相関が最大となる位置における基準顔領域Ｆ１に対応する領域を、対応顔領域Ｆ２として検出する。さらに、顔検出部３０は、対応顔領域Ｆ２から目を検出して、対応顔領域Ｆ２の４隅の座標および目の位置の座標をフレームメモリ２５に記録する（ステップＳＴ７）。なお、第２の画像Ｇ２および対応顔領域Ｆ２の例を図５（ｂ）に示す。
【００４１】
次いで、領域設定部３１が、第１の画像Ｇ１上に３次元表示用の画像をトリミングするための基準切り出し領域Ｔ１を設定する（ステップＳＴ８）。ここで、通常、人物を撮影する場合には、人物の顔は画角の中央に位置することから、領域設定部３１は、第１の画像Ｇ１における中央を含む所定範囲の領域を基準切り出し領域Ｔ１として設定する。具体的には、第１の画像Ｇ１のサイズが１２８０×１０２４画素である場合、第１の画像Ｇ１の中央の画素位置（６３９，５１１）を中心とする１１５２×９２０画素の領域を基準切り出し領域Ｔ１として設定する。そして、後述する対応切り出し領域Ｔ２のシフト量算出処理を行う（ステップＳＴ９）。
【００４２】
図６はシフト量算出処理のフローチャートである。まず、領域設定部３１は、水平方向および垂直方向のシフト量ＳＨ，ＳＶを初期値である０に設定し（ステップＳＴ２１）、水平方向のシフト量ＳＨを算出するための仮のシフト量Ｈを初期値である−１００に設定し（ステップＳＴ２２）、垂直方向のシフト量ＳＶを算出するための仮のシフト量Ｖを初期値である−１００に設定する（ステップＳＴ２３）。なお、本実施形態においては、第２の画像Ｇ２の中央の画素位置（６３９，５１１）を基準として水平方向および垂直方向における±１００画素の範囲においてシフト量を算出するものとする。
【００４３】
次いで、領域設定部３１は、画素位置（６３９−ＳＨ，５１１−ＳＶ）を中心とする基準切り出し領域Ｔ１と同一サイズの仮の切り出し領域Ｔ０を第２の画像Ｇ２に設定する（ステップＳＴ２４）。そして、領域設定部３１は、基準切り出し領域Ｔ１に仮の切り出し領域Ｔ０を重畳し、基準切り出し領域Ｔ１における目の位置と、仮の切り出し領域Ｔ０における目の位置とのずれ量である視差量δ（Ｈ，Ｖ）を算出する（ステップＳＴ２５）。
【００４４】
図７は視差量の算出を説明するための図である。なお、図７において実線は基準切り出し領域Ｔ１に含まれる顔の輪郭を、破線は仮の切り出し領域Ｔ０に含まれる顔の輪郭をそれぞれ示す。図７に示すように、基準切り出し領域Ｔ１に仮の切り出し領域Ｔ０を重畳した状態においては、基準切り出し領域Ｔ１および仮の切り出し領域Ｔ０に含まれる顔の位置が異なることから、顔の左目については、水平方向にＤＨ１、垂直方向にＤＶ１のずれが生じる。また、顔の右目については、水平方向にＤＨ２、垂直方向にＤＶ２のずれが生じる。領域設定部３１は、左右の目のずれ量の絶対値の総和を視差量δ（Ｈ，Ｖ）として算出する。すなわち、δ（Ｈ，Ｖ）＝｜ＤＨ１｜＋｜ＤＨ２｜＋｜ＤＶ１｜＋｜ＤＶ２｜の演算を行って視差量δ（Ｈ，Ｖ）を算出する。
【００４５】
次いで、領域設定部３１は、１つ前の処理において算出した視差量δ（Ｈ−１，Ｖ−１）よりも現在の視差量δ（Ｈ，Ｖ）が小さいか否かを判定する（ステップＳＴ２６）。なお、最初の処理においては、視差量δ（Ｈ−１，Ｖ−１）は算出されていないため、１回目の処理においては、ステップＳＴ２６の処理は必ず肯定される。ステップＳＴ２６が肯定されると、シフト量ＳＨ，ＳＶをそれぞれずれ量Ｈ，Ｖに設定し（ステップＳＴ２７）、仮のシフト量Ｈが１００となったか否かを判定する（ステップＳＴ２８）。なお、ステップＳＴ２６が否定されるとステップＳＴ２８の処理に進む。ステップＳＴ２８が否定されると、仮のシフト量ＨをＨ＋１に変更し（ステップＳＴ２９）、ステップＳＴ２４に戻る。これにより、まず水平方向について視差量δ（Ｈ，Ｖ）が最小となるシフト量ＳＨが算出される。
【００４６】
ステップＳＴ２８が肯定されると、仮のシフト量Ｖが１００となったか否かを判定する（ステップＳＴ３０）。ステップＳＴ３０が否定されると、仮のシフト量ＶをＶ＋１に変更し（ステップＳＴ３１）、ステップＳＴ２４に戻る。ステップＳＴ３０が肯定されると、シフト量算出処理を終了する。これにより、さらに垂直方向について視差量δ（Ｈ，Ｖ）が最小となるシフト量ＳＶが算出される。
【００４７】
図３，４に戻り、ステップＳＴ９に続いて、領域設定部３１は、画素位置（６３９−ＳＨ，５１１−ＳＶ）を中心とする基準切り出し領域Ｔ１と同一サイズの対応切り出し領域Ｔ２を第２の画像Ｇ２に設定する（ステップＳＴ１０）。そして、トリミング部３２が第１の画像Ｇ１から基準切り出し領域Ｔ１を、第２の画像Ｇ２から対応切り出し領域Ｔ２をトリミングし（ステップＳＴ１１）、さらに表示制御部２８が、モニタ２０を３次元表示に切り替えて、基準切り出し領域Ｔ１内の画像Ｒ１と、対応切り出し領域Ｔ２内の画像Ｒ２とをモニタ２０に３次元表示する（ステップＳＴ１２）。なお、モニタ２０の３次元表示への切り替えは、撮影者が行うようにしてもよい。
【００４８】
そして、ＣＰＵ３３は入出力部３４から撮影者による３次元画像ファイルの保存の指示がなされたか否かを判定し（ステップＳＴ１３）、ステップＳＴ１３が否定されると、メディア制御部２６が、トリミング前の第１の画像Ｇ１および第２の画像Ｇ２を記録メディア２９に記録し（ステップＳＴ１４）、処理を終了する。ステップＳＴ１３が肯定されると、メディア制御部２６は、画像Ｒ１，Ｒ２を３次元画像の画像ファイルとして記録メディア２９に記録し（ステップＳＴ１５）、処理を終了する。なお、ステップＳＴ１３が否定された場合には、第１および第２の画像Ｇ１，Ｇ２を記録することなく、処理を終了してもよい。
【００４９】
図８は３次元画像ファイルのファイル構造を示す図である。図８に示すように３次元画像ファイルには、画像Ｒ１および画像Ｒ２の画像データ４０，４１が含まれ、そのそれぞれに第１および第２のヘッダ４２，４３が付与されている。第１のヘッダ４２には、第２のヘッダ４３へのオフセット、画像Ｒ１の属性（左側か右側か）および画像Ｒ１内における基準顔領域Ｆ１の座標が記録される。また、ヘッダ４３には、画像Ｒ２の属性（左側か右側か）および画像Ｒ２内における対応顔領域Ｆ２の座標が記録される。
【００５０】
このように、第１の実施形態においては、第１および第２の画像Ｇ１，Ｇ２に含まれる目の視差量δ（Ｈ，Ｖ）が最小となるように、各画像Ｇ１，Ｇ２から３次元表示のためにトリミングする領域を切り出すようにしたため、３次元表示を行った際には、顔、とくに目において立体感が少なくなり、顔以外の他の部分において、より大きな立体感が得られることとなる。したがって、画像に含まれる顔については、３次元表示を行った際に３次元映像が破綻することがなくなり、その結果、３次元表示を行う際の画像の印象を向上させることができる。
【００５１】
次いで、本発明の第２の実施形態について説明する。なお、第２の実施形態においては第１の実施形態と行われる処理のみが異なるため、ここでは構成についての詳細な説明は省略する。第２の実施形態においては、視差量δ（Ｈ，Ｖ）の算出方法が第１の実施形態と異なるものである。
【００５２】
次いで、第２の実施形態において行われる処理について説明する。図９は第２の実施形態において行われる処理を示すフローチャートである。なお、図９に示すフローチャートにおけるステップＳＴ４１〜ステップＳＴ４８までの処理は、第１の実施形態におけるステップＳＴ１〜ステップＳＴ８までの処理と同一であるため、ここでは詳細な説明は省略する。ステップＳＴ４８に続いて、領域設定部３１が、基準切り出し領域Ｔ１に含まれる左目が右目以上のサイズを有するか否かを判定する（ステップＳＴ４９）。ステップＳＴ４９が肯定されると、シフト量算出の基準を左目に設定する（ステップＳＴ５０）。ステップＳＴ４９が否定されると、シフト量算出の基準を右目に設定する（ステップＳＴ５１）。そして、シフト量算出処理を行う（ステップＳＴ５２）。
【００５３】
ここで、第２の実施形態においては、シフト量算出処理における視差量δ（Ｈ，Ｖ）の算出方法が第１の実施形態と異なるのみである。第１の実施形態においては、δ（Ｈ，Ｖ）＝｜ＤＨ１｜＋｜ＤＨ２｜＋｜ＤＶ１｜＋｜ＤＶ２｜の演算を行って視差量δ（Ｈ，Ｖ）を算出しているが、第２の実施形態においては、シフト量算出の基準に設定された側の目についてのみ、ずれ量の総和を視差量δ（Ｈ，Ｖ）として算出する。すなわち、左目がシフト量算出の基準に設定された場合、δ（Ｈ，Ｖ）＝｜ＤＨ１｜＋｜ＤＶ１｜の演算により視差量δ（Ｈ，Ｖ）を算出する。また、右目がシフト量算出の基準に設定された場合、δ（Ｈ，Ｖ）＝｜ＤＨ２｜＋｜ＤＶ２｜の演算により視差量δ（Ｈ，Ｖ）を算出する。そして、シフト量ＳＨ，ＳＶを算出した後は、第１の実施形態におけるステップＳＴ１０以降の処理を行う。
【００５４】
ここで、人物を撮影する場合、撮影時におけるカメラに近い側の目が画像上において重要であることが多い。このため、左右の目のサイズが異なる場合には、サイズが大きい側の目、すなわち撮影時のカメラに近い方の目の位置に基づいて視差量δ（Ｈ，Ｖ）を算出することにより、より重要な側の目が３次元映像において破綻することを防止できる。
【００５５】
なお、上記第１および第２の実施形態においては、撮像部２１Ａ，２１Ｂの焦点距離のばらつき等により、撮影画角がずれる場合がある。このような場合、第１および第２の画像Ｇ１，Ｇ２のいずれか一方について、画像を回転，拡大縮小等することにより、画角のずれを補正してからシフト量算出処理を行うことが好ましい。この場合、第１および第２の画像Ｇ１，Ｇ２から検出した基準顔領域Ｆ１および対応顔領域Ｆ２にそれぞれ含まれる両目間の距離が、第１および第２の画像Ｇ１，Ｇ２において一致するように第１および第２の画像Ｇ１，Ｇ２のいずれか一方を拡大縮小すればよい。また、両目間を結ぶ線分の傾きが一致するように、第１および第２の画像Ｇ１，Ｇ２のいずれか一方を回転すればよい。
【００５６】
また、上記第１および第２の実施形態においては、２つの撮像部２１Ａ，２１Ｂを備えた複眼カメラ１について説明しているが、３以上の撮像部を備えて３以上の画像を取得する複眼カメラに対しても、上記と同様に本発明を適用することができる。この場合、３以上の画像のうちの一の画像を基準となる基準画像、すなわち上記の第１の画像Ｇ１に設定し、他の画像をそれぞれ第２の画像Ｇ２に設定して、上記と同様に視差量が最小となるように各第２の画像Ｇ２に対応切り出し領域Ｔ２を設定するようにすればよい。また、単一の撮像部を備えるカメラを使用して、同一の被写体を異なる複数の位置において撮影して複数の画像を取得する場合であっても、本発明を適用することができることはもちろんである。
【００５７】
また、上記第１および第２の実施形態においては、本発明による画像処理装置を複眼カメラ１に適用しているが、顔検出部３０、領域設定部３１およびトリミング部３２を備えた画像処理装置を単独で提供するようにしてもよい。この場合、同一の被写体を異なる複数の位置において撮影することにより取得した複数の画像が画像処理装置に入力され、上記第１および第２の実施形態と同様に、トリミングが行われて３次元画像の画像ファイルが生成されることとなる。
【００５８】
また、上記第１および第２の実施形態においては、複眼カメラ１において撮影と同時にトリミングおよび３次元画像の画像ファイルの生成を行っているが、一旦第１および第２の画像Ｇ１，Ｇ２を記録メディア２９に記録し、別途トリミングの開始の指示を撮影者が行うことにより、トリミングおよび３次元画像の画像ファイルの生成を行うようにしてもよい。
【００５９】
また、上記第１および第２の実施形態においては、顔が第１および第２の画像Ｇ１，Ｇ２の中央に位置するものとして説明しているが、とくに顔が中央に位置しない場合には、基準顔領域Ｆ１を含む所定範囲の領域を基準切り出し領域Ｔ１として設定してもよい。この場合、基準切り出し領域Ｔ１の中心は、例えば基準顔領域Ｆ１に含まれる目の中心位置等に設定すればよい。
【００６０】
また、上記第１および第２の実施形態においては、横顔のように顔に目が１つのみしか含まれない場合がある。このような場合はその１つの目を用いて視差量δ（Ｈ，Ｖ）を算出すればよい。
【００６１】
また、上記第１および第２の実施形態においては、被写体を人物の顔とし、目の視差量が最小となるように対応切り出し領域Ｔ２を設定しているが、例えば動物、自動車等、顔以外の被写体を撮影する場合にも本発明を適用することができることはもちろんである。この場合、動物であれば動物の目の視差量が、自動車であれば、例えばヘッドライトの視差量が最小となるように対応切り出し領域Ｔ２を設定するようにすればよい。
【００６２】
以上、本発明の実施形態について説明したが、コンピュータを、上記の顔検出部３０、領域設定部３１およびトリミング部３２に対応する手段として機能させ、図３，４，６，９に示すような処理を行わせるプログラムも、本発明の実施形態の１つである。また、そのようなプログラムを記録したコンピュータ読取り可能な記録媒体も、本発明の実施形態の１つである。
【図面の簡単な説明】
【００６３】
【図１】本発明の第１の実施形態による画像処理装置を適用した複眼カメラの内部構成を示す概略ブロック図
【図２】撮像部の構成を示す図
【図３】第１の実施形態において行われる処理を示すフローチャート（その１）
【図４】第１の実施形態において行われる処理を示すフローチャート（その２）
【図５】第１および第２の画像を示す図
【図６】第１の実施形態におけるシフト量算出処理のフローチャート
【図７】視差量の算出を説明するための図
【図８】３次元画像の画像ファイルのファイル構造を示す図
【図９】第２の実施形態において行われる処理を示すフローチャート
【符号の説明】
【００６４】
１    複眼カメラ
２１Ａ，２１Ｂ    撮像部
３０    顔検出部
３１    領域設定部
３２    トリミング部
【図１】
0005243003.tif 000002
【図２】
0005243003.tif 000003
【図３】
0005243003.tif 000004
【図４】
0005243003.tif 000005
【図５】
0005243003.tif 000006
【図６】
0005243003.tif 000007
【図７】
0005243003.tif 000008
【図８】
0005243003.tif 000009
【図９】
0005243003.tif 000010