(57)【特許請求の範囲】
【請求項１】
第１の画像と、前記第１の画像に対して第１及び第２の位置ずれを有する第２の画像とを入力し、前記第１の画像と前記第２の画像間の第１の位置ずれを検出する第１検出部と、
前記第１の画像及び前記第２の画像の少なくとも一方に対し、前記第１検出部によって検出された前記第１の位置ずれを補正する補正部と、
前記補正部による補正後に前記第１の画像と前記第２の画像との間に残存している第２の位置ずれの方向を検出する第２検出部と、
前記第２検出部によって検出された前記第２の位置ずれの方向に基づき、前記第１の画像及び前記第２の画像を表示する際の画像の向きを判定する判定部と、
を含む画像処理装置。
【請求項２】
前記判定部は、前記第２検出部によって検出された前記第２の位置ずれの方向を、前記第１の画像及び前記第２の画像を表示する際の画像の水平方向と判定する請求項１記載の画像処理装置。
【請求項３】
前記第２検出部は、前記補正部によって位置ずれ補正が行われた後の前記第１の画像と前記第２の画像との間に残存している前記第２の位置ずれを画像上の複数の方向について各々検出し、前記複数の方向のうち検出した前記第２の位置ずれの大きさがより大きい方向を前記第２の位置ずれの方向として検出する請求項１又は請求項２記載の画像処理装置。
【請求項４】
前記第１の画像及び前記第２の画像は、被写体との相対位置が水平方向に互いに異なる位置で撮影された画像であり、
前記第２検出部は、被写体に対する撮影光軸回りの向きが第１の向きで撮影された画像における前記水平方向に対応する第１方向、及び、前記第１方向と直交する画像上の第２方向について前記第２の位置ずれ量を各々検出し、前記第１方向及び前記第２方向のうち検出した位置ずれの大きさがより大きい方向を前記第２の位置ずれの方向として検出し、
前記判定部は、前記第２検出部によって検出された前記第２の位置ずれの方向が前記第１方向の場合には、撮影時の画像の向きが前記第１の向きで、かつ前記第１方向が前記画像を表示する際の画像の水平方向と判定し、前記第２検出部によって検出された前記第２の位置ずれの方向が前記第２方向の場合には、撮影時の画像の向きが前記第１の向きと直交する第２の向きで、かつ前記第２方向が前記画像を表示する際の画像の水平方向と判定する請求項３記載の画像処理装置。
【請求項５】
前記第１検出部で検出された第１の位置ずれは、背景領域の位置ずれであり、
前記補正部は、前記第１検出部によって検出された背景領域の位置ずれの補正を、前記第１の画像及び前記第２の画像のうちの予め定められた一方の画像に対して行う請求項１〜請求項４の何れか１項記載の画像処理装置。
【請求項６】
前記第２検出部は、前記第１の画像と前記第２の画像との間の第２の位置ずれとして、前記第１の画像と前記第２の画像と間の前景の視差に対応する位置ずれを検出する請求項１〜請求項５の何れか１項記載の画像処理装置。
【請求項７】
前記第２検出部は、前記補正部による位置ずれ補正後の前記第１の画像と前記第２の画像との間に残存している前記第２の位置ずれの方向を検出すると共に、画像中の前記第２の位置ずれの大きさが所定値以上の領域を前景領域として設定し、
前記第１検出部は、前記第２検出部によって前記前景領域が設定されている場合には、画像中の前記前景領域を除外した領域に対して前記第１の位置ずれの検出を行う請求項６記載の画像処理装置。
【請求項８】
前記第１の画像及び前記第２の画像を各々取得する画像取得部と、
前記画像取得部によって取得された前記第１の画像を保持する第１の画像保持部と、
前記画像取得部によって取得された前記第２の画像を保持する第２の画像保持部と、
を更に備え、
前記第１検出部は、前記第１の画像保持部に保持された前記第１の画像と前記第２の画像保持部に保持された前記第２の画像との間の前記第１の位置ずれを検出する請求項１〜請求項７の何れか１項記載の画像処理装置。
【請求項９】
前記画像取得部は複数の画像を１つずつ順次取得し、
前記第２の画像保持部は、前記画像取得部によって新たな画像が取得される度に、前記第２の画像として保持している画像を取得された前記新たな画像へ更新する請求項８記載の画像処理装置。
【請求項１０】
前記判定部によって判定された画像の向きを表す情報を、前記第１の画像及び前記第２の画像の属性情報として前記第１の画像及び前記第２の画像の画像データに付加する属性付加部を更に備えた請求項１〜請求項９の何れか１項記載の画像処理装置。
【請求項１１】
前記第１の画像及び前記第２の画像の画像データを保存すると共に、前記画像データが表す画像の向きが前記判定部によって判定された画像の向きと相違している場合は、前記画像データを保存する前に、前記画像データが表す画像の向きが前記判定部によって判定された画像の向きに一致するように前記画像データを変換する画像保存処理部を更に備えた請求項１〜請求項９の何れか１項記載の画像処理装置。
【請求項１２】
前記第１の画像及び前記第２の画像は外縁が矩形状であり、
前記第２検出部は、前記補正部によって位置ずれ補正が行われた前記第１の画像及び前記第２の画像との間に残存している前記第２の位置ずれを画像上の３以上の方向について各々検出し、前記３以上の方向のうち検出した前記第２の位置ずれの大きさがより大きい方向を前記第２の位置ずれの方向として検出し、
前記判定部は、前記第２検出部によって検出された前記第２の位置ずれの方向を、前記第１の画像及び前記第２の画像を表示する際の画像の水平方向と判定し、
前記判定部によって判定された前記画像を表示する際の画像の水平方向が、前記第１の画像及び前記第２の画像の外縁の辺と非平行かつ非直交の方向である場合に、前記画像を表示する際の画像の水平方向と平行又は直交する辺で囲まれた矩形状の領域を前記第１の画像及び前記第２の画像から各々切り出し、切り出した矩形状の領域を、当該領域を囲む辺が前記第１の画像及び前記第２の画像の外縁の辺と平行又は直交するように回転させる処理を行う画像加工部を更に備えた請求項１、請求項３、請求項５〜請求項１１の何れか１項記載の画像処理装置。
【請求項１３】
第１の画像と、前記第１の画像に対して第１及び第２の位置ずれを有する第２の画像とを入力し、前記第１の画像と前記第２の画像間の第１の位置ずれを検出する第１検出ステップと、
前記第１の画像及び前記第２の画像の少なくとも一方に対し、前記第１検出ステップで検出された前記第１の位置ずれを補正する補正ステップと、
前記補正ステップにおける補正後の前記第１の画像と前記第２の画像との間に残存している第２の位置ずれの方向を検出する第２検出ステップと、
前記第２検出ステップで検出された前記第２の位置ずれの方向に基づき、前記第１の画像及び前記第２の画像を表示する際の画像の向きを判定する判定ステップと、
を含む画像処理方法。
【請求項１４】
コンピュータに、
第１の画像と、前記第１の画像に対して第１及び第２の位置ずれを有する第２の画像とを入力し、前記第１の画像と前記第２の画像間の第１の位置ずれを検出する第１検出ステップと、
前記第１の画像及び前記第２の画像の少なくとも一方に対し、前記第１検出ステップで検出された前記第１の位置ずれを補正する補正ステップと、
前記補正ステップにおける補正後の前記第１の画像と前記第２の画像との間に残存している第２の位置ずれの方向を検出する第２検出ステップと、
前記第２検出ステップで検出された前記第２の位置ずれの方向に基づき、前記第１の画像及び前記第２の画像を表示する際の画像の向きを判定する判定ステップと、
を含む処理を実行させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は画像処理装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【０００２】
撮影装置による撮影では、撮影対象の被写体等に応じて、撮影光軸回りの画像の向きとして、画像の長手方向がおよそ水平となる向き(横撮影)又は画像の長手方向がおよそ鉛直となる向き(縦撮影)が選択される。このため、両眼視差に相当する差、或いは両眼視差に近似する差を有する立体画像の撮影に際しても、所望の向きで撮影したいというニーズが存在する。
【０００３】
上記のニーズを満たすための技術として、撮影装置に複数の撮像部を設け、撮影する画像の向きに応じて、個々の撮像部を撮影光軸回りに回転可能な構成の撮影装置が知られている。また、単一の撮像部を設けた撮影装置に三軸加速度センサを搭載し、センサ出力に基づいてパンニング操作を検出する関連技術も知られている(特許文献１〜３参照)。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２２４８２０号公報
【特許文献２】特開２００９−１７７５６５号公報
【特許文献３】特開２００９−１０３９８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
立体画像は、画像上での視差の方向が観賞者の両眼の並ぶ方向に対応する向きで表示する必要がある。このため、撮影装置を、所望の向きで立体画像を撮影可能な構成とした場合、立体画像を表示する等の立体画像の出力時に、画像を表示する際の画像の向きを検知することが必須となる。画像を表示する際の画像の向きは、例えば撮影時の画像の向きから検知することができる。また、撮影時の画像の向きは、例えば撮影光軸回りに回転可能な複数の撮像部が設けられた撮影装置によって撮影された立体画像であれば、撮影時における撮像部の撮影光軸回りの向きに基づいて検知できる。また、例えば単一の撮像部と三軸加速度センサが設けられた撮影装置によって撮影された立体画像については、撮影時の三軸加速度センサの出力に基づいて撮影時の画像の向きを検知できる。
【０００６】
しかしながら、上記技術では、撮影された画像の画像データ以外に、画像を表示する際の画像の向きを検知するために、撮影装置の構成(機種)毎に種類の異なる情報を取得する必要が生ずる。そして、立体画像の表示等の出力を行う機能を撮影装置に搭載する場合、画像を表示する際の画像の向き検知に利用する情報の種類が撮影装置の構成毎に相違していると、上記機能を実現するプログラムを撮影装置の構成に拘わらず共通化することが困難となる。すなわち、上記機能を実現するプログラムの汎用性を確保できず、上記機能を実現するプログラムを撮影装置の構成毎(機種毎)に開発する必要が生ずる。また、立体画像の表示等の出力を行う出力装置を撮影装置と別に設ける場合には、出力装置に、撮影装置の構成を認識し、画像の向きを検知する処理の内容を撮影装置の構成に応じて切り替える機能を搭載する必要が生ずる。
【０００７】
開示の技術は、被写体との相対位置が互いに異なる位置で撮影された複数の画像から、画像を表示する際の画像の向きを判定することが目的である。
【課題を解決するための手段】
【０００８】
開示の技術は、被写体との相対位置が互いに異なる位置で撮影された第１の画像と第２の画像との間の視差に関係が薄い第１の位置ずれを検出し、第１の画像及び第２の画像の少なくとも一方に対し、検出した第１の位置ずれを補正する。そして開示の技術は、位置ずれ補正後の第１の画像と第２の画像との間に残存している第２の位置ずれの方向を検出し、検出した第２の位置ずれの方向に基づき、第１の画像及び第２の画像を表示する際の画像の向きを判定する。
【発明の効果】
【０００９】
開示の技術は、被写体との相対位置が互いに異なる位置で撮影された複数の画像から、画像を表示する際の画像の向きを判定できる、という効果を有する。
【図面の簡単な説明】
【００１０】
【図１】実施形態で説明した立体画像取得装置の概略ブロック図である。
【図２】(Ａ)は横撮影、(Ｂ)は縦撮影における撮影位置の移動に応じた撮影画像の変化の一例を各々示すイメージ図である。
【図３】(Ａ)は撮影画像の一例、(Ｂ)は(Ａ)の画像と異なる撮影位置で撮影された画像の一例、(Ｃ)は(Ｂ),(Ｃ)の画像に対して背景領域の位置ずれ補正を行って重ね合わせた画像の一例を各々示すイメージ図である。
【図４】(Ａ)は横撮影の場合、(Ｂ)は縦撮影の場合の画像中の画像部の移動方向を各々示すイメージ図である。
【図５】(Ａ)は撮影画像の一例、(Ｂ)は(Ａ)の画像と異なる撮影位置で撮影されかつ手振れ等により画像中の画像部の位置が撮影位置の移動方向と直交する方向に変動した画像の一例、(Ｃ)は(Ａ),(Ｂ)の画像に対して背景領域の位置ずれ補正を行って重ね合わせた画像の一例を各々示すイメージ図である。
【図６】第１実施形態で説明した立体画像取得処理を示すフローチャートである。
【図７】背景領域の位置ずれ検出処理を示すフローチャートである。
【図８】前景領域の位置ずれ検出処理を示すフローチャートである。
【図９】(Ａ)は横撮影基準の場合、(Ｂ)は縦撮影基準の場合の画像の向き判定処理を各々示すフローチャートである。
【図１０】第２実施形態で説明した立体画像取得処理を示すフローチャートである。
【図１１】(Ａ)は横撮影基準の場合、(Ｂ)は縦撮影基準の場合の画像データ保存処理を各々示すフローチャートである。
【図１２】立体画像取得装置をプログラムによって実現する態様におけるハードウェア構成の一例を示す概略ブロック図である。
【図１３】立体画像取得装置の他の構成を示す概略ブロック図である。
【図１４】画像加工部による画像加工処理を説明するための、(Ａ)は撮影時の画像の向きの一例、(Ｂ)は撮影画像の一例、(Ｃ)は撮影画像から切り出された矩形状領域の一例、(Ｄ)は回転処理を経た画像(矩形状領域)の一例を各々示すイメージ図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
【００１２】
〔第１実施形態〕
図１には、本実施形態に係る立体画像取得装置１０が示されている。立体画像取得装置１０は、画像取得部１２、第１の画像保持部１４、第２の画像保持部１６、第１の位置ずれ検出部１８、画像変換部２０、第２の位置ずれ検出部２２、第３の位置ずれ検出部２４、撮影方向判定部２６及び画像保存処理部２８を備えている。なお、立体画像取得装置１０の各機能部は例えば電子回路等で実現することができ、立体画像取得装置１０は、例えば半導体集積回路、より詳しくはＡＳＩＣ(Application Specific Integrated Circuit)等で実現することができる。また立体画像取得装置１０は、利用者による操作入力を受け付ける入力デバイスである操作部３０を更に備えていてもよい。
【００１３】
画像取得部１２は複数の画像の画像データを順に取得する。画像取得部１２は例えばＣＣＤ(Charge Coupled Device)やＣＭＯＳ(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を含む撮像部であってもよい。なお、画像取得部１２が上記の撮像部である場合としては、例えば本実施形態に係る立体画像取得装置１０が、上記の撮像部が設けられた電子機器(例えば撮影装置(一例を図２(Ａ),(Ｂ)に示す)や携帯端末等)に内蔵された態様が挙げられる。また画像取得部１２は、外部に設けた撮像部、或いは、画像データを記憶する記憶部を備えた外部の情報処理装置から通信によって画像データを取得する通信ユニットであってもよい。なお、画像取得部１２が上記の通信ユニットである場合としては、例えば本実施形態に係る立体画像取得装置１０が、上記の通信ユニットが設けられた電子機器(例えばサーバやＰＣ(Personal Computer)等のコンピュータ等)に内蔵された態様が挙げられる。
【００１４】
第１の画像保持部１４及び第２の画像保持部１６は、それぞれ画像取得部１２によって取得された画像データを保持する処理部である。第１の画像保持部１４は画像取得部１２によって取得された初回の画像データ(第１の画像データ)を保持する。なお、ここでいう初回の画像データは、画像取得部１２から最初に出力された画像データであってもよいし、立体画像取得装置１０に設けられた操作部３０が操作された後に、画像取得部１２から最初に出力された画像データであってもよい。また、第２の画像保持部１６は、画像取得部１２によって取得された最新の画像データ(第２の画像データ)を保持する。従って、第２の画像保持部１６に保持されている画像データは、画像取得部１２によって新たな画像データが取得される度に更新される。
【００１５】
第１の位置ずれ検出部１８は、第１の画像保持部１４に保持されている第１の画像データと第２の画像保持部１６に保持されている第２の画像データとを比較する。そして、第１の画像データが表す第１の画像中の背景領域と第２の画像データが表す第２の画像中の背景領域との位置ずれを検出する。なお、第１の位置ずれ検出部１８は、後述する第２の位置ずれ検出部２２又は第３の位置ずれ検出部２４によって画像中の前景領域を表す前景情報が設定されている場合に、前景領域を除外した領域を画像中の背景領域と認識する。
【００１６】
画像変換部２０は、第１の位置ずれ検出部１８によって検出された背景領域の位置ずれに基づき、第１の画像から、第２の画像中の背景領域の位置を基準とする第１の画像中の背景領域の位置ずれを補正した変換画像を生成する。第２の位置ずれ検出部２２は、画像変換部２０によって生成された変換画像と、第２の画像保持部１６に保持されている第２の画像データが表す第２の画像と、を比較し、両画像中の前景領域の第１方向(例えば画像長手方向)に沿った位置のずれを検出する。第３の位置ずれ検出部２４は、画像変換部２０によって生成された変換画像と、第２の画像保持部１６に画像データが保持されている第２の画像と、を比較し、両画像中の前景領域の第１方向に直交する方向に沿った位置のずれを検出する。
【００１７】
撮影方向判定部２６は、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４によって水平／垂直の各方向毎に検出された位置ずれ量に基づいて、第１の画像と第２の画像とが立体画像の条件を満たしているか否か判定する。また、立体画像の条件を満たしていると判定した場合に、第１の画像及び第２の画像の撮影方向(撮影光軸回りの向き)が横向き(横撮影)か縦向き(縦撮影)かを判定する。なお、本実施形態は、立体画像を表示する際の画像の向きを、第１の画像及び第２の画像が撮影された際の画像の向きと同じにすることを前提としている。このため、上記の撮影方向は撮影時の画像の向き及び立体画像を表示する際の画像の向きを表しており、上記の撮影方向の判定により、撮影時の画像の向き及び立体画像を表示する際の画像の向きが判定される。
【００１８】
画像保存処理部２８は、撮影方向判定部２６によって第１の画像と第２の画像とが立体画像の条件を満たしていると判定した場合に、第１の画像保持部１４と第２の画像保持部１６にそれぞれ保持している第１及び第２の画像を保存する。なお、第１の画像と第２の画像とが立体画像の条件を満たしていると判定する迄の間、第２の画像保持部１６に保持されている画像データは、画像取得部１２によって新たな画像データが取得される度に更新される。また、第１の画像と第２の画像とが立体画像の条件を満たしていると判定されると、画像保存処理部２８は、第１の画像保持部１４に保持されている第１の画像データ及び第２の画像保持部１６に保持されている第２の画像データを立体画像生成用に保存する。また画像保存処理部２８は、撮影方向判定部２６によって判定された撮影方向を表す情報を、保存する第１の画像データ及び第２の画像データに属性情報として付加する。
【００１９】
次に、本実施形態の作用の説明に先立ち、まず立体画像について説明する。図２(Ａ),(Ｂ)は、撮影装置３４からの距離の小さい順に円錐状の物体３２Ａ、円柱状の物体３２Ｂ、直方体状の物体３２Ｃが配置された被写体を、単一の撮像部を備えた撮影装置３４により撮影位置を水平方向へ移動させながら複数回撮影した場合が示されている。図２(Ａ),(Ｂ)に示すように、撮影位置の移動に伴って各物体の撮影画像上の位置も移動する(但し、図２(Ａ),(Ｂ)の例では物体３２Ｂが撮影画像の中央付近に位置するように各回の撮影における撮影光軸の方向が調整されている)。この撮影光軸の方向調整を行わない場合、物体と撮影位置の距離が大きくなるに従い、撮影位置の移動量に対する物体に対応する画像部の撮影画像上の位置の移動量は小さくなる。この現象は奥行き手がかり(depth cue)と称されている。
【００２０】
単一の撮像部を備えた撮影装置３４を用いる場合、立体画像を生成するための画像の撮影は、図２(Ａ),(Ｂ)に示すように、撮影位置を一定方向(通常は水平方向)へ移動させながら、画像の撮影を複数回行うことによって成される。これにより、図３(Ａ),(Ｂ)に示すような複数の画像３６,３８が得られる。この複数の画像３６,３８に対し、個々の画像中に存在する、撮影位置との距離が最も大きく背景領域に属する物体(この例では物体３２Ｃ)に相当する画像部の位置が一致するように位置ずれを補正して合成することで、図３(Ｃ)に示す立体画像４０が得られる。図３(Ｃ)に示す立体画像４０には、位置ずれ補正の基準として用いた物体３２Ｃよりも撮影位置との距離が小さい物体３２Ａ,Ｂに相当する画像部に局所的な位置ずれが生じているが、この局所的な位置ずれは視差と称されている。立体画像を立体視した観賞者は、立体画像上の視差の大きさ(視差量)が適切で、かつ立体画像上での視差の方向が観賞者の両眼の並ぶ方向に対応していれば、立体画像４０から前述の奥行き手がかりを知覚して立体感を得ることができる。
【００２１】
ところで、図２(Ａ)は、撮影時の撮影光軸回りの画像の向きを画像の長手方向がおよそ水平となる向きにした、所謂横撮影であり、図２(Ｂ)は、撮影時の撮影光軸回りの画像の向きを画像の長手方向がおよそ鉛直となる向きにした、所謂縦撮影である。立体画像を生成するための画像の撮影に、単一の撮像部を備えた撮影装置３４を用いる場合、撮像部を回転させる機構を必要とすることなく、撮影時の撮影装置３４の向きを回転させるのみで、横撮影／縦撮影を選択できるという利点を有する。但し、立体画像の観賞時には立体画像上での視差の方向を観賞者の両眼の並ぶ方向に対応させる必要があるので、撮影時の撮影光軸回りの画像の向き、すなわち横撮影で撮影されたか縦撮影で撮影されたかを判定する必要がある。
【００２２】
撮影位置を一定方向へ移動させながら画像の撮影が複数回行われる場合、画像中の被写体に相当する画像部の位置は撮影位置の移動方向に対応する方向へ移動する。このため、例として図４(Ａ)に矢印で示すように画像中の画像部の移動方向が画像の長手方向に一致していれば横撮影と判定し、例として図４(Ｂ)に矢印で示すように画像中の画像部の移動方向が画像の長手方向と直交していれば縦撮影と判定することは可能である。しかし、撮影位置の移動中に手振れ等によって撮影光軸が撮影位置の移動方向と直交する方向に変動すると、これに伴って画像中の画像部の位置も撮影位置の移動方向と直交する方向に変動するので、撮影時の撮影光軸回りの画像の向きの誤判定が生ずる恐れがある。
【００２３】
一方、手振れ等は撮影光軸の方向の変動は引き起すが、手振れ等があっても撮影位置自体の変動は生じない。撮影位置を変化させずに撮影光軸の方向のみを変化させて撮影を行った場合、撮影光軸方向の変化前後に撮影した画像に画像中の被写体に相当する画像部の位置ずれが生ずるが、立体画像を得るための位置ずれ補正を行えば両画像は前景領域も含めてほぼ一致する。例として図５(Ｂ)には、図５(Ａ)に示す画像３６を撮影した後、撮影位置を移動させずに撮影光軸の方向を鉛直下方向へ変化させることで、画像中の被写体に相当する画像部の位置を鉛直下方向に対応する方向へ変化させた画像４２を示す。図５(Ａ),(Ｂ)に示す画像３６,４２に対して立体画像を得るための位置ずれ補正を行った場合、図５(Ｃ)に画像４４として示すように、画像３６,４２は前景領域も含めてほぼ一致する。
【００２４】
これは撮影位置が変化していないために撮影装置からの被写体の見え方が変化しないことに起因する。言い換えれば、撮影位置を変化させない限り視差は発生しないので、視差の方向は立体画像の撮影のために行われた撮影位置の移動の方向に一致する。そして、撮影時の撮影位置の移動方向は撮影者の両眼の並ぶ方向と同じであるので、視差の方向から撮影時の撮影光軸回りの画像の向き及び立体画像を表示する際の画像の向きを判定できる。本実施形態ではこれを利用し、以下で説明するように、立体画像を得るための位置ずれ補正を行った後の画像上での視差の方向を検出し、検出した方向に基づいて撮影時の撮影光軸回りの画像の向き及び立体画像を表示する際の画像の向きを判定している。
【００２５】
次に本実施形態の作用として、立体画像取得装置１０で行われる立体画像取得処理について、図６を参照して説明する。図６に示す立体画像取得処理では、まず画像取得部１２によって単一のフレームの画像データが取得され、取得された画像データは第１の画像の画像データとして第１の画像保持部１４に保持される(ステップ５０)。続いて、画像取得部１２によって次の単一のフレームの画像データが取得され、取得された画像データは第２の画像の画像データとして第２の画像保持部１６に保持される(ステップ５２)。
【００２６】
なお、ステップ５０,５２で画像取得部１２によって取得される画像データは、単一の撮像部を備えた撮影装置３４等を用い、撮影位置を水平方向へ移動させながら被写体を繰り返し撮影する撮影操作が行われることで得られた一連の画像データのうちの１つである。また、上記の撮影操作は、撮影位置を水平方向へ移動させながら、画像の中央付近に被写体が位置するように撮影光軸の向きを調整する動作を伴うものであってもよい。
【００２７】
次のステップ５４では、第１の位置ずれ検出部１８によって背景領域の位置ずれ検出処理が行われる。この処理は、第１の画像保持部１４に画像データが保持された第１の画像と、第２の画像保持部１６に画像データが保持された第２の画像と、の背景領域の位置ずれを検出し、検出した位置ずれを補正するための補正量を演算する処理であり、詳細は後述する。ステップ５６では、画像変換部２０により、背景領域の位置ずれ検出処理で演算された補正量に基づき、第１の画像から、第２の画像に対する第１の画像の背景領域の位置ずれが補正された位置ずれ補正画像が生成される。
【００２８】
ステップ５８では、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４によって前景領域の位置ずれ検出処理が各々行われる。この前景領域の位置ずれ検出処理では、第２の位置ずれ検出部２２により、画像変換部２０によって生成された位置ずれ補正画像と第２の画像との前景領域の第１方向に沿った位置ずれ量が検出される。また、第３の位置ずれ検出部２４により、位置ずれ補正画像と第２の画像との第２方向に沿った位置ずれ量が検出される。なお、前景領域の位置ずれ検出処理の詳細についても後述する。
【００２９】
ステップ６０では、撮影方向判定部２６により、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４によって各々検出された前景領域の位置ずれ量の少なくとも一方が予め設定された閾値以上になったか否かが判定される。この判定で用いる閾値の具体例については後述するが、前景領域の位置ずれ量は立体画像の視差量に相当しており、上記の閾値としては、前景領域の位置ずれ量が立体画像の視差量として適切な値か否かを判定可能な値が設定される。ステップ６０の判定が否定された場合はステップ５２に戻り、ステップ６０の判定が肯定される迄ステップ５２〜ステップ６０を繰り返す。これにより、前景領域の位置ずれ量が閾値以上となる迄、画像取得部１２による画像データの取得、第２の画像保持部１６に保持された画像データの更新(第２の画像の更新)が繰り返される。
【００３０】
前景領域の位置ずれ量が閾値以上になると、ステップ６０の判定が肯定されてステップ６２へ移行し、撮影方向判定部２６により、前景領域の位置ずれ量に基づいて撮影時の撮影光軸回りの画像の向きを判定する画像の向き判定処理が行われる。この画像の向き判定処理の詳細についても後述する。次のステップ６４において、画像保存処理部２８は、第１の画像保持部１４から第１の画像の画像データを読み出すと共に、第２の画像保持部１６から第２の画像の画像データを読み出す。また、画像の向き判定処理で判定された画像の向きを表す向き情報を生成する。そして、生成した向き情報を、読み出した第１の画像の画像データ及び第２の画像の画像データを含む立体画像データに属性情報として付加し、向き情報を属性情報として付加した立体画像データを保存して処理を終了する。
【００３１】
なお、立体画像データに属性情報として付加した向き情報は、立体画像データが表す立体画像を表示する際に参照される。そして、立体画像上での視差の方向が観賞者の両眼の並ぶ方向に対応するように、必要に応じて立体画像が回転された後に表示される。
【００３２】
次に、立体画像取得処理(図６)のステップ５４で行われる背景領域の位置ずれ検出処理の詳細について、図７を参照して説明する。第１の位置ずれ検出部１８は、まず背景領域の位置ずれ検出処理のステップ７０で前景領域情報が設定されているか否か判定する。前景領域情報は、画像中の前景領域の位置及び範囲を規定する情報であり、後述する第２の位置ずれ検出処理によって設定される。従って、前景領域情報は、背景領域の位置ずれ検出処理の初回の実行時には未設定であり、背景領域の位置ずれ検出処理の２回以降の実行時には、第２の位置ずれ検出処理が実行されていることで設定されている可能性がある。
【００３３】
前景領域情報が設定されていない場合はステップ７０の判定が否定され、第１の位置ずれ検出部１８は、第１の画像の全領域から特徴点を抽出し(ステップ７２)、抽出した全ての特徴点を第１の画像中の背景領域の特徴点に設定する(ステップ７４)。一方、前景領域情報が設定されている場合は上記判定が肯定され、第１の位置ずれ検出部１８は、第１の画像の背景領域の特徴点に設定していた特徴点のうち、前景領域情報が表す前景領域内に存在している特徴点を背景領域の特徴点から除外する(ステップ７６)。
【００３４】
次に、第１の位置ずれ検出部１８は、第２の画像から特徴点を抽出し(ステップ７８)、第１の画像の背景領域の特徴点と第２の画像から抽出した特徴点を対応付ける処理を行う(ステップ８０)。なお、特徴点の対応付けは、具体的な実現手法として、例えば平面射影変換の技術、より具体的にはハートレーの８点アルゴリズム(Hartley's 8-point algorithm)やその他のアルゴリズムなどを適用することができる。そして第１の位置ずれ検出部１８は、対応付けた第１の画像と第２の画像との特徴点の位置ずれに基づき、背景領域の位置ずれを補正するための補正量を演算し(ステップ８２)、背景領域の位置ずれ検出処理を終了する。
【００３５】
次に、立体画像取得処理(図６)のステップ５８で行われる前景領域の位置ずれ検出処理の詳細について、図８を参照して説明する。ステップ９０では、第２の位置ずれ検出部２２により、画像変換部２０によって生成された位置ずれ補正画像に対する第２画像の第１方向(例えば画像長手方向)に沿った動きベクトルが演算される。なお、位置ずれ補正画像は第２画像との背景領域の位置ずれが補正された画像であるので、上記で演算される動きベクトルは位置ずれ補正画像と第２画像との第１方向に沿った前景領域の位置ずれ量に相当する。
【００３６】
次のステップ９２において、第２の位置ずれ検出部２２は、まず、画像を複数個のブロック(部分領域)に分割したときの個々のブロックを単位として、先に演算した第１方向に沿った動きベクトルを探索する。動きベクトルは、位置ずれ補正画像と第２画像とに位置ずれが生じているブロックで０よりも大きな値となり、位置ずれ補正画像と第２画像との位置ずれ量が大きくなるに従ってより大きな値となる。第２の位置ずれ検出部２２は、第１方向に沿った動きベクトルの値が０よりも大きい各ブロックにおける第１方向に沿った動きベクトルの値(例えば最大値)を、第１方向に沿った前景領域の位置ずれ量として算出する。
【００３７】
またステップ９４では、第３の位置ずれ検出部２４により、位置ずれ補正画像に対する第２画像の第２方向(例えば画像長手方向に直交する方向)に沿った動きベクトルが演算される。なお、上記で演算される動きベクトルは位置ずれ補正画像と第２画像との第２方向に沿った前景領域の位置ずれ量に相当する。
【００３８】
次のステップ９６において、第３の位置ずれ検出部２４は、まず、画像を複数個のブロック(部分領域)に分割したときの個々のブロックを単位として、先に演算した第２方向に沿った動きベクトルを探索する。そして第３の位置ずれ検出部２４は、第２方向に沿った動きベクトルの値が０よりも大きい各ブロックにおける第２方向に沿った動きベクトルの値(例えば最大値)を、第２方向に沿った前景領域の位置ずれ量として算出する。
【００３９】
次のステップ９８において、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４は、前景領域情報が未設定であれば、算出した前景領域の位置ずれ量が予め設定された閾値を越えているブロックが前景領域に含まれるように前景領域情報を設定する。また、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４は、既に前景領域情報を設定していた場合、前景領域の位置ずれ量が新たに閾値を越えたブロックが前景領域に追加されるように前景領域情報を更新する。そして前景領域の位置ずれ検出処理を終了する。
【００４０】
次に、立体画像取得処理(図６)のステップ６２で撮影方向判定部２６によって行われる画像の向き判定処理の詳細について説明する。一般に、被写体の撮影に用いられる撮影装置は、撮影時の標準的な画像の向きとして横撮影又は縦撮影が予め設定されている。画像取得部１２によって取得された画像データが、撮影時の標準的な画像の向きが横撮影の撮影装置で撮影された画像の画像データであった場合には、画像の向き判定処理として図９(Ａ)に示す処理が行われる。
【００４１】
すなわち、撮影方向判定部２６は、図９(Ａ)に示す画像の向き判定処理のステップ１００において、水平基準方向に沿った位置ずれ量が予め設定された閾値以上か否か判定する。上記の水平基準方向は、撮影時の標準的な画像の向きで撮影された画像における被写体の水平方向に対応する画像上の方向であり、撮影時の標準的な画像の向きが横撮影の場合、水平基準方向は画像長手方向となる。撮影方向判定部２６は、第２の位置ずれ検出部２２又は第３の位置ずれ検出部２４によって検出された画像長手方向に沿った前景領域の位置ずれ量を前記閾値と比較することで上記ステップ１００の判定を行う。なお、上記の閾値としては、例えば立体画像取得処理(図６)のステップ６０の判定で用いた閾値と同一の閾値を用いることができる。
【００４２】
ステップ１００の判定が肯定された場合、視差の方向は水平基準方向である画像長手方向に一致していると判断できる。このため、撮影方向判定部２６は、ステップ１００の判定が肯定された場合は、撮影時の画像の撮影光軸回りの向きを表す向き情報に「横撮影」を表す情報を設定する(ステップ１０２)。この場合、立体画像の表示に際しては、上記の向き情報に基づき、画像長手方向が表示する画像の水平方向となる向きで立体画像が表示される。また、ステップ１００の判定が否定された場合、視差の方向は水平基準方向である画像長手方向に直交する方向に一致していると判断できる。このため、撮影方向判定部２６は、ステップ１００の判定が否定された場合は、撮影時の画像の撮影光軸回りの向きを表す向き情報に「縦撮影」を表す情報を設定する(ステップ１０４)。この場合、立体画像の表示に際しては、上記の向き情報に基づき、画像長手方向に直交する方向が表示する画像の水平方向となる向きで立体画像が表示される。そして図９(Ａ)に示す画像の向き判定処理を終了する。
【００４３】
一方、画像取得部１２によって取得された画像データが、撮影時の標準的な画像の向きが縦撮影の撮影装置で撮影された画像の画像データであった場合には、画像の向き判定処理として図９(Ｂ)に示す処理が行われる。すなわち、撮影方向判定部２６は、図９(Ｂ)に示す画像の向き判定処理のステップ１０６において、水平基準方向に沿った位置ずれ量が予め設定された閾値以上か否か判定する。撮影時の標準的な画像の向きが縦撮影の場合、上記の水平基準方向は画像長手方向に直交する方向となる。撮影方向判定部２６は、第２の位置ずれ検出部２２又は第３の位置ずれ検出部２４によって検出された画像長手方向に直交する方向に沿った前景領域の位置ずれ量を前記閾値と比較することで上記ステップ１０６の判定を行う。なお、上記の閾値としても、例えば立体画像取得処理(図６)のステップ６０の判定で用いた閾値と同一の閾値を用いることができる。
【００４４】
ステップ１０６の判定が肯定された場合、視差の方向は水平基準方向である画像長手方向に直交する方向に一致していると判断できる。このため、撮影方向判定部２６は、ステップ１０６の判定が肯定された場合は、撮影時の撮影光軸回りの画像の向きを表す向き情報に「縦撮影」を表す情報を設定する(ステップ１０８)。この場合、立体画像の表示に際しては、上記の向き情報に基づき、画像長手方向に直交する方向が表示する画像の水平方向となる向きで立体画像が表示される。また、ステップ１０６の判定が否定された場合、視差の方向は画像長手方向に一致していると判断できる。このため、撮影方向判定部２６は、ステップ１０６の判定が否定された場合は、撮影時の撮影光軸回りの画像の向きを表す向き情報に「横撮影」を表す情報を設定する(ステップ１１０)。この場合、立体画像の表示に際しては、上記の向き情報に基づき、画像長手方向が表示する画像の水平方向となる向きで立体画像が表示される。そして図９(Ｂ)に示す画像の向き判定処理を終了する。
【００４５】
次に、立体画像取得処理(図６)のステップ６０、図９(Ａ)の画像の向き判定処理のステップ１００、図９(Ｂ)の画像の向き判定処理のステップ１０６の各判定で用いる閾値の具体例について説明する。この閾値は、前景領域の位置ずれ量が立体画像の視差量として適正な値か否かを判定するための基準値である。観賞者が立体画像から立体感を得られ、かつ立体画像中の物体の画面からの極度の飛び出しも抑制できる適正な視差量には或る範囲があるため、閾値にも下限値と上限値が存在する。
【００４６】
人の目は平行視、すなわち眼間距離の視差がついたものが無限遠であり、平行より外に目を離して見ることができない。このため、背景領域における視差量が人の平均的な眼間距離を超える立体画像は、左右の画像を脳の中で単一の画像として融像できず、立体画像として鑑賞できなくなる。従って、前景領域の位置ずれ量に対する閾値の下限値は、立体画像の背景領域における視差量が眼間距離を越えないように設定される。一例として、最大画面サイズ60インチ(横幅約130ｃｍ程度)の家庭用テレビの画面に２Ｍpixel(1920×1080pixel)の立体画像を表示する場合、人の平均的な眼間距離＝6.5ｃｍに基づき、閾値の下限値は画面上のpixel数換算で1920×(6.5／130)で約100pixelとなる。
【００４７】
また、前景領域の位置ずれ量に対する閾値の上限値は、立体画像中の物体の画面からの極度の飛び出しが抑制されるように設定される。一例として、立体画像中の物体の画面からの飛び出しを鑑賞距離の半分まで許容するとすれば、先の例では100pixelの逆視差をさらに加えることになるので、閾値の上限値は画面上のpixel数換算で100＋100＝200pixelとなる。
【００４８】
前述の各判定は、より詳しくは、前景領域の位置ずれ量を閾値の上限値及び下限値と各々比較し、前景領域の位置ずれ量が閾値の上限値以下かつ下限値以上であれば判定が肯定されるようにしてもよい。また、前景領域の位置ずれ量を閾値の上限値と下限値の間の値(例えば上限値と下限値の平均値)と比較し、前景領域の位置ずれ量が比較した値以上であれば判定が肯定されるようにしてもよい。
【００４９】
〔第２実施形態〕
次に開示の技術の第２実施形態を説明する。なお、第２実施形態は上述した第１実施形態と同一の構成であるので、各部分に同一の符号を付して構成の説明を省略し、第１実施形態と異なる部分についてのみ説明する。
【００５０】
本第２実施形態では、立体画像取得装置１０によって図１０に示す立体画像取得処理が行われる。本第２実施形態に係る立体画像取得処理は、ステップ６２で撮影方向判定部２６によって画像の向き判定処理が行われた後、次のステップ６６で画像保存処理部２８によって画像データ保存処理が行われる。ここで、画像取得部１２によって取得された画像データが、撮影時の標準的な画像の向きが横撮影の撮影装置で撮影された画像の画像データであった場合、上記の画像データ保存処理として図１１(Ａ)に示す処理が画像保存処理部２８によって行われる。
【００５１】
すなわち、画像保存処理部２８は、図１１(Ａ)に示す画像データ保存処理のステップ１２０において、撮影方向判定部２６によって判定された撮影時の撮影光軸回りの画像の向きが横撮影か否か判定する。撮影時の撮影光軸回りの画像の向きが横撮影と判定されていた場合はステップ１２４へ移行する。また、撮影時の撮影光軸回りの画像の向きが縦撮影と判定されていた場合、画像保存処理部２８は、ステップ１２２において、第１の画像保持部１４から第１の画像の画像データを読み出すと共に、第２の画像保持部１６から第２の画像の画像データを読み出す。そして画像保存処理部２８は、読み出した両画像データを、両画像データが表す画像を90°回転させた画像を表す画像データへ各々変換し、ステップ１２４へ移行する。
【００５２】
画像保存処理部２８は、ステップ１２４において、第１の画像の画像データ及び第２の画像の画像データを含む立体画像データを保存し、処理を終了する。上記処理では、撮影時の撮影光軸回りの画像の向きが撮影時の標準的な画像の向きと相違していた場合に、画像を90°回転させた画像を表す画像データが立体画像データとして保存される。従って、保存された立体画像データが表す立体画像の表示に際しては、撮影時の標準的な画像の向きが横撮影の場合の水平基準方向である画像長手方向が観賞者の両眼の並ぶ方向(表示する画像の水平方向)に対応するように一律に表示させることができる。これにより、撮影時の撮影光軸回りの画像の向きに応じて表示する立体画像を回転させる処理を行うことなく、立体画像上での視差の方向を観賞者の両眼の並ぶ方向に対応するように立体画像を表示することができる。
【００５３】
また、画像取得部１２によって取得された画像データが、撮影時の標準的な画像の向きが縦撮影の撮影装置で撮影された画像の画像データであった場合、画像データ保存処理として図１１(Ｂ)に示す処理が画像保存処理部２８によって行われる。図１１(Ｂ)に示す画像データ保存処理のステップ１３０において、画像保存処理部２８は、撮影方向判定部２６によって判定された撮影時の撮影光軸回りの画像の向きが縦撮影か否か判定する。撮影時の撮影光軸回りの画像の向きが縦撮影と判定されていた場合はステップ１３４へ移行する。また、撮影時の撮影光軸回りの画像の向きが横撮影と判定されていた場合、画像保存処理部２８は、ステップ１３２において、第１の画像保持部１４から第１の画像の画像データを読み出すと共に、第２の画像保持部１６から第２の画像の画像データを読み出す。そして画像保存処理部２８は、読み出した両画像データを、両画像データが表す画像を90°回転させた画像を表す画像データへ各々変換し、ステップ１３４へ移行する。
【００５４】
画像保存処理部２８は、ステップ１３４において、第１の画像の画像データ及び第２の画像の画像データを含む立体画像データを保存し、処理を終了する。上記処理においても、撮影時の撮影光軸回りの画像の向きが撮影時の標準的な画像の向きと相違していた場合に、画像を90°回転させた画像を表す画像データが立体画像データとして保存される。従って、保存された立体画像データが表す立体画像の表示に際しては、撮影時の標準的な画像の向きが縦撮影の場合の水平基準方向である画像長手方向に直交する方向が観賞者の両眼の並ぶ方向に対応するように一律に表示させることができる。これにより、撮影時の撮影光軸回りの画像の向きに応じて表示する立体画像を回転させる処理を行うことなく、立体画像上での視差の方向を観賞者の両眼の並ぶ方向に対応するように立体画像を表示することができる。
【００５５】
〔第３実施形態〕
次に開示の技術の第３実施形態を説明する。図１２には、立体画像取得装置１０として機能することが可能なコンピュータ１４０が示されている。
【００５６】
コンピュータ１４０はＣＰＵ１４２、メモリ１４４、不揮発性の記憶部１４６を備え、これらはバス１４８を介して互いに接続されている。なお、記憶部１４６はＨＤＤ(Hard Disk Drive)やフラッシュメモリ等によって実現できる。記録媒体としての記憶部１４６には、コンピュータ１４０を立体画像取得装置１０として機能させるための立体画像取得プログラム１５０が記憶されている。ＣＰＵ１４２は、立体画像取得プログラム１５０を記憶部１４６から読み出してメモリ１４４に展開し、立体画像取得プログラム１５０が有するプロセスを順次実行する。
【００５７】
立体画像取得プログラム１５０は、画像取得プロセス１５２、第１の画像保持プロセス１５４、第２の画像保持プロセス１５６、第１の位置ずれ検出プロセス１５８、画像変換プロセス１６０を有する。また、立体画像取得プログラム１５０は、第２の位置ずれ検出プロセス１６２、第３の位置ずれ検出プロセス１６４、撮影方向判定プロセス１６６及び画像保存処理プロセス１６８を有する。
【００５８】
ＣＰＵ１４２は、画像取得プロセス１５２を実行することで、図１に示した画像取得部１２と同様の動作を行なう。具体的には、画像取得プロセス１５２は、通信線を介してコンピュータ１４０と接続された外部機器から通信によって複数の画像の画像データを順に取得する処理を行う。なお、上記の外部機器は、撮影装置であってもよいし、画像データを記憶する記憶部を備えた外部の情報処理装置であってもよい。
【００５９】
ＣＰＵ１４２は、第１の画像保持プロセス１５４を実行することで、図１に示した第１の画像保持部１４と同様の動作を行なう。具体的には、第１の画像保持プロセス１５４は、画像取得プロセス１５２によって取得された画像データを保持する処理行う。
【００６０】
ＣＰＵ１４２は、第２の画像保持プロセス１５６を実行することで、図１に示した第２の画像保持部１６と同様の動作を行なう。具体的には、第２の画像保持プロセス１５６は、画像取得プロセス１５２によって取得された画像データを保持する処理行う。
【００６１】
ＣＰＵ１４２は、第１の位置ずれ検出プロセス１５８を実行することで、図１に示した第１の位置ずれ検出部１８と同様の動作を行なう。具体的には、第１の位置ずれ検出プロセス１５８は、第１の画像データが表す第１の画像中の背景領域と第２の画像データが表す第２の画像中の背景領域との位置ずれを検出する処理を行う。
【００６２】
ＣＰＵ１４２は、画像変換プロセス１６０を実行することで、図１に示した画像変換部２０と同様の動作を行なう。具体的には、画像変換プロセス１６０は、背景領域の位置ずれ量に基づき、第１の画像から、第２の画像中の背景領域の位置を基準とする第１の画像中の背景領域の位置ずれを補正した変換画像を生成する処理を行う。
【００６３】
ＣＰＵ１４２は、第２の位置ずれ検出プロセス１６２を実行することで、図１に示した第２の位置ずれ検出部２２と同様の動作を行なう。具体的には、第２の位置ずれ検出プロセス１６２は、変換画像と第２の画像とを比較し、両画像中の前景領域の第１方向に沿った位置のずれを検出する処理を行う。
【００６４】
ＣＰＵ１４２は、第３の位置ずれ検出プロセス１６４を実行することで、図１に示した第３の位置ずれ検出部２４と同様の動作を行なう。具体的には、第３の位置ずれ検出プロセス１６４は、変換画像と第２の画像とを比較し、両画像中の前景領域の第２方向に沿った位置のずれを検出する処理を行う。
【００６５】
ＣＰＵ１４２は、撮影方向判定プロセス１６６を実行することで、図１に示した撮影方向判定部２６と同様の動作を行なう。具体的には、撮影方向判定プロセス１６６は、第１の画像と第２の画像とが立体画像の条件を満たしているか否か、及び、第１の画像及び第２の画像の撮影方向が横向きか縦向きかを判定する処理を行う。
【００６６】
ＣＰＵ１４２は、画像保存処理プロセス１６８を実行することで、図１に示した画像保存処理部２８と同様の動作を行なう。具体的には、画像保存処理プロセス１６８は、第１の画像データ及び第２の画像データを立体画像生成用に保存すると共に、撮影方向を表す情報を属性情報として付加する処理を行う。
【００６７】
このように、立体画像取得プログラム１５０を実行したコンピュータ１４０は、立体画像取得装置１０として機能することになる。なお、ここでは立体画像取得プログラム１５０を記憶部１４６から読み出す場合を例示したが、立体画像取得プログラム１５０は、任意の記録媒体から読み出して実行することができる。
【００６８】
上述のように、本実施形態に係る立体画像取得装置１０及び立体画像取得プログラム１５０は、撮影時に画像の向きを検出したり検出結果を取得する構成を必要とすることなく、撮影された複数の画像から撮影時の画像の向きを判定することができる。また、立体画像を表示する際の画像の向きも判定することができる。また、画像の撮影に用いられた撮影装置の構成に応じて撮影時の画像の向きを判定する処理を切り替える必要がなくなり、画像の撮影に用いられた撮影装置の構成に拘わらず、同一の処理で撮影時の画像の向きを判定することができる。
【００６９】
なお、上記では第１の画像を非基準画像、第２の画像を基準画像とし、背景領域の位置ずれ補正を第１の画像に対して行う態様を説明したが、これに限られるものではない。例えば、第１の画像を基準画像、第２の画像を非基準画像とし、背景領域の位置ずれ補正を第２の画像に対して行うように画像変換部２０を構成してもよい。この場合、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４は、第１の画像と画像変換部２０によって生成された変換画像との前景領域の位置のずれを検出するように構成すればよい。
【００７０】
また、上記では水平基準方向についての前景領域の位置ずれ量が閾値以上か否かに基づいて画像の向きを判定する態様(図９(Ａ)のステップ１００、図９(Ｂ)のステップ１０６)を説明したが、これに限られるものではない。例えば、上記の判定に代えて、前景領域の位置ずれ量がより大きい方向が画像長手方向か画像長手方向に直交する方向かを判定するようにしてもよい。この場合、画像長手方向の方が前景領域の位置ずれ量が大きければ画像の向きを横撮影と判断し、画像長手方向に直交する方向の方が前景領域の位置ずれ量が大きければ画像の向きを縦撮影と判断することができる。
【００７１】
また、上記では立体画像生成用の画像の撮影に際し、撮影者が撮影位置を移動させる操作を行う態様を説明したが、これに限られるものではない。立体画像生成用の画像は、例えば、およそ一定方向に移動する乗物(例えば車両等)に乗っている撮影者が、乗物外の被写体を複数回撮影する等のように、撮影者が撮影位置を移動させる特段の操作を行わなくても撮影可能である。
【００７２】
更に、上記では単一の撮像部を備えた撮影装置３４を用いて立体画像生成用の画像を撮影する例を説明したが、これに限られるものでもない。例えば複数の撮像部を備えた撮影装置を用い、複数の撮像部のうちの何れか１つの撮像部によって撮影した立体画像生成用の画像に対し、開示の技術を適用して撮影時の画像の向き及び立体画像を表示する際の画像の向きを判定するようにしてもよい。複数の撮像部を備えた撮影装置を用いる場合であっても、複数の撮像部のうちの何れか１つの撮像部によって立体画像生成用の画像を撮影することで、任意の基線長での撮影が可能になるという利点がある。
【００７３】
また、上記では撮像部を回転させる機構を有さない撮影装置によって立体画像生成用の画像が撮影される例を説明したが、開示の技術はこれに限らず、撮像部を回転させる機構を有する撮影装置によって撮影された画像の向きの判定にも適用可能である。この場合も、撮影時の画像の向きを検知する構成を撮影装置に設けたり、画像の向きの検知結果を取得する処理を行うことなく、立体画像を表示する際の画像の向きを判定することができる。
【００７４】
更に、上記では、撮影時の画像の向きとして縦撮影又は横撮影が選択されることを前提に、撮影時の画像の向きが縦撮影か横撮影かを判定することで、立体画像を表示する際の画像の向きを判定する態様を説明したが、これに限られるものではない。例として図１３には、開示の技術の他の実施形態に係る立体画像取得装置２００が示されている。なお、以下では、立体画像取得装置２００のうち、第１実施形態で説明した立体画像取得装置１０と同一の部分に同一の符号を付して説明を省略し、立体画像取得装置１０と異なる部分についてのみ説明する。
【００７５】
立体画像取得装置２００は、第２の位置ずれ検出部２２及び第３の位置ずれ検出部２４に代えて第４の位置ずれ検出部２４を、撮影方向判定部２６に代えて撮影方向判定部２０４を備えており、更に、画像加工処理部２０６を備えている。立体画像取得装置２００では、縦撮影及び横撮影以外を含む任意の向きで撮影された画像の画像データが画像取得部１２によって取得される。このため、第４の位置ずれ検出部２４は、画像変換部２０によって生成された変換画像と、第２の画像保持部１６に保持されている第２の画像データが表す第２の画像と、の前景領域の位置ずれを３以上の複数の方向について各々検出する。そして、３以上の複数の方向のうち検出した前景領域の位置ずれ量が最大の方向を前景領域の位置ずれの方向として検出し、検出した前景領域の位置ずれの方向と、その方向に沿った前景領域の位置ずれ量を出力する。
【００７６】
表示方向判定部２０４は、第４の位置ずれ検出部２４から出力された前景領域の位置ずれ量が閾値以上か否かを判定することで、第１の画像と第２の画像とが立体画像の条件を満たしているか否か判定する。そして、前景領域の位置ずれ量が閾値以上となり、立体画像の条件を満たしていると判定したときの前景領域の位置ずれの方向を、立体画像を表示する際の画像の水平方向と判定する。
【００７７】
画像加工処理部２０６は、表示方向判定部２０４によって判定された立体画像を表示する際の画像の水平方向が、変換画像及び第２の画像の外縁の辺と平行又は直交しているか否か判定する。この判定が肯定された場合、画像加工処理部２０６は表示方向判定部２０４によって判定された立体画像を表示する際の画像の水平方向をそのまま出力する。
【００７８】
一方、例として図１４(Ａ)に示すように、縦撮影及び横撮影と異なる向きで被写体が撮影された場合、図１４(Ｂ)に矢印２１０で示すように、前景領域の位置ずれの方向(立体画像を表示する際の画像の水平方向)は画像の外縁の辺と非平行かつ非直交となる。この場合、画像加工処理部２０６は、図１４(Ｂ)に破線で示すように、変換画像及び第２の画像から、立体画像を表示する際の画像の水平方向と平行又は直交する辺で囲まれた矩形状の画像領域を各々切り出す。また、立体画像を表示する際の画像の水平方向と、変換画像及び第２の画像の外縁の辺の方向との角度差に基づき、切り出した矩形状の画像領域を、当該領域を囲む辺が変換画像及び第２の画像の外縁の辺と平行又は直交するように回転させる(図１４(Ｃ)参照)。
【００７９】
上記処理により、立体画像を表示する際に、判定された立体画像を表示する際の画像の水平方向に応じて表示する立体画像を回転させる処理を行うことなく、立体画像上での視差の方向が観賞者の両眼の並ぶ方向に対応するように立体画像を表示することができる。なお、上記処理に加えて、回転させた矩形状の画像領域が変換画像及び第２の画像と同サイズとなるように拡大する処理を更に行ってもよい。また、先に説明した図１２と同様に、コンピュータを立体画像取得装置２００として機能させるための立体画像取得プログラムを、コンピュータによって記憶部から読み出させて実行させることで、当該コンピュータを立体画像取得装置２００として機能させることも可能である。
【００８０】
また、上記では単一の撮像部によって順に撮影された単一の画像群に対して撮影時の画像の向きを判定する態様を説明したが、これに限られるものでもない。立体動画像を生成するために複数の撮像部によって複数の動画像を並列に撮影する場合、立体画像を鑑賞する観賞者の両眼の並ぶ方向を想定し、撮影した複数の動画像の間で想定した方向に視差が生ずるように複数の撮像部の位置関係が決定される。このため、開示の技術は、上記の複数の動画像に対する撮影時の画像の向きの判定にも適用可能である。
【００８１】
更に、上記では立体画像取得プログラム１５０が記憶部１４６に記憶されている態様を説明したが、立体画像取得プログラム１５０は、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の可搬型の記録媒体に記録されている形態で提供することも可能である。
【００８２】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【符号の説明】
【００８３】
１０  立体画像取得装置
１２  画像取得部
１４  第１の画像保持部
１６  第２の画像保持部
１８  第１の位置ずれ検出部
２０  画像変換部
２２  第２の位置ずれ検出部
２４  第３の位置ずれ検出部
２６  撮影方向判定部
２８  画像保存処理部
１４０  コンピュータ
１４２  ＣＰＵ
１４４  メモリ
１４６  記憶部
１５０  立体画像取得プログラム
【図１】
0005522018.tif 000002
【図２】
0005522018.tif 000003
【図３】
0005522018.tif 000004
【図４】
0005522018.tif 000005
【図５】
0005522018.tif 000006
【図６】
0005522018.tif 000007
【図７】
0005522018.tif 000008
【図８】
0005522018.tif 000009
【図９】
0005522018.tif 000010
【図１０】
0005522018.tif 000011
【図１１】
0005522018.tif 000012
【図１２】
0005522018.tif 000013
【図１３】
0005522018.tif 000014
【図１４】
0005522018.tif 000015