(57)【要約】  複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する格納部と、前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、前記第１位置と前記第２位置との差分である第１差分量を算出し、前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、前記第３部分画像の前記第３位置に基づいて、第３画像を生成する演算部とを備える立体視画像生成装置とする。
2012153378.tif 000002
【特許請求の範囲】
【請求項１】
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する格納部と、
前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成する演算部と、
を備える立体視画像生成装置。
【請求項２】
前記演算部は、前記第１部分画像に対応する前記第２画像に含まれる第４部分画像の存在位置である第４位置を抽出し、前記第１位置と前記第４位置との差分である第２差分量を算出し、
前記演算部は、さらに、前記第１差分量、及び、前記第２差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出する、
請求項１に記載の立体視画像生成装置。
【請求項３】
前記演算部は、前記第１部分画像の奥行き方向の位置を算出し、
前記演算部は、さらに、前記第１差分量、及び、前記奥行き方向の位置に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出する、
請求項１に記載の立体視画像生成装置。
【請求項４】
コンピュータが、
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する記憶装置から、前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成することを実行する、
立体視画像生成方法。
【請求項５】
コンピュータが、さらに、
前記第１部分画像に対応する前記第２画像に含まれる第４部分画像の存在位置である第４位置を抽出し、前記第１位置と前記第４位置との差分である第２差分量を算出し、
前記第１差分量、及び、前記第２差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出することを実行する、
請求項４に記載の立体視画像生成方法。
【請求項６】
コンピュータが、さらに、
前記第１部分画像の奥行き方向の位置を算出し、
前記第１差分量、及び、前記奥行き方向の位置に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出することを実行する、
請求項４に記載の立体視画像生成方法。
【請求項７】
コンピュータが、
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する記憶装置から、前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成することを実行するための立体視画像生成プログラム。
【請求項８】
コンピュータが、さらに、
前記第１部分画像に対応する前記第２画像に含まれる第４部分画像の存在位置である第４位置を抽出し、前記第１位置と前記第４位置との差分である第２差分量を算出し、
前記第１差分量、及び、前記第２差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出することを実行するための請求項７に記載の立体視画像生成プログラム。
【請求項９】
コンピュータが、さらに、
前記第１部分画像の奥行き方向の位置を算出し、
前記第１差分量、及び、前記奥行き方向の位置に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出することを実行するための、
請求項７に記載の立体視画像生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、立体視画像生成装置、立体視画像生成方法、立体視画像生成プログラムに関する。
【背景技術】
【０００２】
隣接した２つのカメラで撮影した画像の視差を利用して立体視が可能な画像を生成する立体視画像生成装置がある。立体視画像生成装置は、例えば、隣接した２つのカメラで撮影した画像のうち、一方のカメラによる画像を左眼用画像として、他方のカメラによる画像を右眼用画像として、生成して表示し、視聴者に立体的な画像を感じさせる。【０００３】
同一の対象物に対して、左眼用画像における位置と、右眼用画像における位置との差を、視差という。画像内に存在する２つの対象物で、視差量が異なることにより、一方の対象物が他方の対象物に対して手前または奥に存在するように見える。視差量は、視差の大きさである。【０００４】
図１は、立体視画像の例を示す図である。図１において、画像９１０が左眼用画像であり、画像９２０が右眼用画像である。ここで、左眼用画像である画像９１０、及び、右眼用画像である画像９２０には、それぞれ、物体Ａ、物体Ｂ、物体Ｃが存在する。画像９１０及び画像９２０との間における、これらの物体の視差により、図１の立体視画像を見る者には、手前から、物体Ａ、物体Ｂ、物体Ｃが存在するように見える。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−０８８９１０号公報
【特許文献２】特開平０８−３３１５９８号公報
【特許文献３】特開平０９−０７４５７３号公報
【特許文献４】特開２００１−０１６６２０号公報
【特許文献５】特開平０９−２２４２６７号公報
【特許文献６】特開２０１０−２０６７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
立体視画像において、カメラから背面までの距離に対するカメラから手前の物体までの距離の比が１に近い場合、立体画像であっても平面的な画像になり、立体感が無くなる。また、画像内の複数のオブジェクト（物体）において、カメラからの距離に差がない場合、立体視画像であっても、立体感のない画像となる。しかし、立体視画像においては、カメラから複数のオブジェクト（物体）までの距離に差がない場合であっても、立体感を強調することが求められる。【０００７】
本件開示の装置は、立体視画像の立体感を変更する立体視画像生成装置を提供することを課題とする。
【課題を解決するための手段】
【０００８】
開示の立体視画像生成装置は、上記課題を解決するために、以下の手段を採用する。【０００９】
即ち、開示の一態様は、
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する格納部と、
前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成する演算部と、
を備える立体視画像生成装置とする。
【発明の効果】
【００１０】
開示の装置によれば、立体視画像の立体感を変更する立体視画像生成装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、立体視画像の例を示す図である。
【図２】図２は、立体視画像における視差を説明する図である。
【図３】図３は、立体視画像生成装置の例を示す図である。
【図４】図４は、情報処理装置のハードウェア構成例を示す図である。
【図５】図５は、立体視画像生成装置の動作フローの例（１）を示す図である。
【図６】図６は、立体視画像生成装置の動作フローの例（２）を示す図である。
【図７】図７は、ステップＳ１０５およびステップＳ１０６の処理の具体例を示す図である。
【図８】図８は、視差位相角情報の例を示す図である。
【図９】図９は、基準オブジェクトの座標と、１つの他のオブジェクトの左眼用画像における座標および右眼用画像における座標の例を示す図である。
【図１０】図１０は、ステップＳ１１０の処理後の、基準オブジェクトの座標と、１つの他のオブジェクトの左眼用画像における座標および右眼用画像における座標の例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して実施形態について説明する。実施形態の構成は例示であり、開示の実施形態の構成に限定されない。
【００１３】
ここでは、主として、隣接する２つのカメラで撮影された画像による立体視画像を使用して説明しているが、立体視画像は、これに限定されず、例えば、人工的に生成された２つの画像によるもの等であってもよい。また、立体視画像は、立体視動画像であってもよい。
【００１４】
〔実施形態１〕
（視差）
図２は、立体視画像における視差を説明する図である。図２において、例えば、同一の対象物に対して、隣接する２つのカメラで撮影された画像のうち、左眼用画像を画像１０、右眼用画像を画像２０とする。図２の例では、画像１０及び画像２０に、同一の対象物である、物体１が含まれている。ここで、点Ｐ１は、画像１０において物体１の位置を代表する点とする。点Ｐ２は、画像２０において、物体１の位置を代表する点とする。物体１の位置を代表する点は、例えば、物体１の中心点としてもよいし、物体１の右端かつ下端の点としてもよい。物体１の位置を代表する点は、これらに限定されない。点Ｐ１及び点Ｐ２は、それぞれ、物体１において同一位置を示す点である。点Ｐ１および点Ｐ２は、それぞれ、画像１０における物体１の位置および画像２０における物体１の位置ともいう。
【００１５】
立体視画像における視差は、同一の対象物の、左眼用画像における位置と右眼用画像における位置との差である。視差量は、視差の大きさである。
【００１６】
図２の画像１０及び画像２０において、物体１の視差量は、画像１０における物体１の位置（点Ｐ１）と、画像２０における物体１の位置（点Ｐ２）との差である。即ち、画像１０における点Ｐ１の座標を（ＸＬ，ＹＬ）、画像２０における点Ｐ２の座標を（ＸＲ，ＹＲ）とすると、物体１の視差量は、次のように表される。
【００１７】
【数１】
2012153378.tif 000003
【００１８】
ここで、ΔＸは、横方向の視差量を示し、ΔＹは縦方向の視差量を示す。
【００１９】
例えば、右眼用画像を、この視差量分、平行移動することにより、立体視画像における物体１の視差がなくなる。
【００２０】
（構成）
図３は、立体視画像生成装置の例を示す図である。立体視画像生成装置１００は、取得部１１０、演算部１２０、格納部１３０を含む。
【００２１】
取得部１１０は、外部または内部の入力装置から、画像を取得する。取得部１１０が取得する画像は、立体視画像の、左眼用画像、及び、右眼用画像である。取得部１１０が取得した画像は、格納部１３０に格納される。
【００２２】
左眼用画像及び右眼用画像は、それぞれ、対応付けられて、格納部１３０に格納される。各画像は、画像内の点毎に画素値を有する。画素値は、点の色などを示す情報である。画素値は、例えば、ＲＧＢ表色系のＲ（Red）値、Ｇ（Green）値、Ｂ（Blue）値で表される。ＲＧＢ表色系の代わりに、他の表色系（例えば、ＹＵＶ表色系）によるパラメータ（値）が使用されてもよい。ＹＵＶ表色系によるパラメータが使用された場合、輝度値として、Ｙ（Yellow）値が使用されてもよい。
【００２３】
演算部１２０は、取得部１１０が取得した画像に対して、視差量の算出を行い、立体視画像を生成する。演算部１２０が生成した立体視画像は、格納部１３０に格納される。
【００２４】
格納部１３０は、取得部１１０が取得した画像、及び、演算部１２０が生成した立体視画像、演算部１２０が算出した視差量、生成する立体視画像に対してあらかじめ定められたオフセット量等を格納する。
【００２５】
表示部１４０は、格納部１３０に格納される画像等を表示する。
【００２６】
受信部１５０は、基準オブジェクトの選択等の、ユーザからの入力を受け付ける。
【００２７】
図４は、情報処理装置３００のハードウェア構成例を示す図である。立体視画像生成装置１００は、例えば、図４に示すような情報処理装置３００によって、実現される。情報処理装置３００は、ＣＰＵ（Central Processing Unit）３０２、メモリ３０４、記憶部３０６、入力部３０８、出力部３１０、通信部３１２を含む。
【００２８】
情報処理装置３００は、ＣＰＵ３０２が記録部３０６に記憶されたプログラムをメモリ３０４の作業領域にロードして実行し、プログラムの実行を通じて周辺機器が制御されることによって、所定の目的に合致した機能を実現することができる。
【００２９】
ＣＰＵ３０２は、記憶部３０６に格納されるプログラムに従って処理を行う。メモリ３０４は、ＣＰＵ３０２がプログラムやデータをキャッシュしたり作業領域を展開したりする。メモリ３０４は、例えば、例えば、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）を含む。
【００３０】
記憶部３０６は、各種のプログラム及び各種のデータを読み書き自在に記録媒体に格納する。記憶部３０６としては、ソリッドステートドライブ装置、ハードディスクドライブ装置、ＣＤ（Compact Disc）ドライブ装置、ＤＶＤ（Digital Versatile Disk）ドライブ装置、＋Ｒ／＋ＲＷドライブ装置、ＨＤ  ＤＶＤ（High-Definition Digital Versatile Disk）ドライブ装置、または、ＢＤ（Blu-ray Disk）ドライブ装置がある。また、記録媒体としては、不揮発性半導体メモリ（フラッシュメモリ）を含むシリコンディスク、ハードディスク、ＣＤ、ＤＶＤ、＋Ｒ／＋ＲＷ、ＨＤ  ＤＶＤ、または、ＢＤがある。ＣＤとしては、ＣＤ−Ｒ（Recordable）、ＣＤ−ＲＷ（Rewritable）、ＣＤ−ＲＯＭがある。ＤＶＤとしては、ＤＶＤ−Ｒ、ＤＶＤ−ＲＡＭ（Random Access Memory）がある。ＢＤとしては、ＢＤ−Ｒ、ＢＤ−ＲＥ（Rewritable）、ＢＤ−ＲＯＭがある。
【００３１】
入力部３０８は、ユーザ等からの操作指示等を受け付ける。入力部３０８は、キーボード、ポインティングデバイス、ワイヤレスリモコン、マイクロフォン、複数のカメラ等の入力デバイスである。入力部３０８から入力された情報は、ＣＰＵ３０２に通知される。カメラは、測距用の赤外線センサ等を備えてもよい。
【００３２】
出力部３１０は、ＣＰＵ３０２で処理されるデータやメモリ３０４に記憶されるデータを出力する。出力部３１０は、ＣＲＴ（Cathode Ray Tube）ディスプレイ、ＬＣＤ（Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、ＥＬ（Electroluminescence）パネル、プリンタ、スピーカ等の出力デバイスである。
【００３３】
通信部３１２は、外部装置とデータの送受信を行う。通信部３１２は、例えば、信号線を介して、外部装置と接続される。通信部３１２は、例えば、ＬＡＮ（Local Area Network）インタフェースボードや、無線通信のための無線通信回路である。
【００３４】
情報処理装置３００は、記憶部３０６に、オペレーティングシステム、各種プログラム、各種テーブル、を記憶している。
【００３５】
オペレーティングシステムは、ソフトウェアとハードウェアとの仲介、メモリ空間の管理、ファイル管理、プロセスやタスクの管理等を行うソフトウェアである。オペレーティングシステムは、通信インタフェースを含む。通信インタフェースは、通信部３１２を介して接続される他の外部装置等とデータのやり取りを行うプログラムである。
【００３６】
立体視画像生成装置１００を実現できる情報処理装置３００は、ＣＰＵ３０２が記憶部３０６に記憶されているプログラムをメモリ３０４にロードして実行することによって、取得部１１０、演算部１２０、受信部１５０としての機能を実現する。また、格納部１３０は、メモリ３０４、記憶部３０６等の記憶領域に設けられる。表示部１４０は、ＣＰＵ３０２、出力部３１０等によって実現される。受信部１５０は、ＣＰＵ３０２、入力部３０８等によって実現される。
【００３７】
（動作例）
立体視画像生成装置１００の動作例について説明する。以下の説明では、左及び右が使用されるが、左と右との間には、優劣はなく、互いに入れ替えることができる。例えば、以下の説明では、左眼用画像および右眼用画像が使用されるが、左眼用画像と右眼用画像との間には、優劣はなく、互いに入れ替えることができる。
【００３８】
立体視画像生成装置１００は、左眼用画像および右眼用画像を取得し、画像に含まれるオブジェクトを定める。また、立体視画像生成装置１００は、基準オブジェクトを決定し、他のオブジェクトの視差量を、当該他のオブジェクトとの基準オブジェクトとの位置関係と視差位相角とに基づいて、算出する。立体視画像生成装置１００は、各オブジェクトの視差量が視差量限界値を超えないように、各オブジェクトの視差量を決定する。
【００３９】
図５および図６は、立体視画像生成装置１００の動作フローの例を示す図である。図５の「Ａ」は、図６の「Ａ」と接続する。図５および図６の動作フローは、例えば、立体視画像生成装置１００の電源が投入されることを契機に開始される。
【００４０】
立体視画像生成装置１００の演算部１２０は、視差量限界値を取得する（Ｓ１０１）。視差量限界値は、例えば、格納部１３０に格納される。視差量限界値は、左眼用画像および右眼用画像の同一物体における視差量の最大値である。視差量限界値は、ピクセル数（画素数）で設定される。視差量限界値は、表示部１４０の大きさ及び画素数等に依存する量である。同一物体において視差量限界値を超える視差量があると、人が同一物体と認識できないおそれがある。視差量限界値は、表示部１４０の大きさに依存する。例えば、視差量限界値は、表示部１４０における長さが人の目の間隔以下になるように設定される。したがって、同じ画素数の表示部１４０で比較した場合、大型の画面の表示部１４０ほど、視差量限界値は小さくなる。立体視画像生成装置１００の演算部１２０は、格納部に格納される表示部１４０の大きさ、画素数に基づいて、視差量限界値を算出してもよい。また、立体視画像生成装置１００の演算部１２０は、ユーザに対して、受付部１５０に、視差量限界値を入力させてもよい。
【００４１】
取得部１１０は、左眼用画像および右眼用画像を取得する（Ｓ１０２）。取得部１１０は、左眼用画像および右眼用画像を、立体視画像生成装置１００に内蔵されるカメラから取得してもよいし、外部装置から取得してもよい。取得された左眼用画像および右眼用画像は、格納部１３０に格納される。左眼用画像および右眼用画像は、あらかじめ、格納部１３０に格納されていてもよい。
【００４２】
演算部１２０は、ステップＳ１０２で取得した左眼用画像および右眼用画像に共通して含まれるすべてのオブジェクト（物体）を抽出する（Ｓ１０３）。共通するオブジェクトの抽出には、例えば、パターンマッチングが使用される。演算部１２０は、共通する物体（オブジェクト）のそれぞれの画像（左眼用画像及び右眼用画像）における位置を、格納部１３０に格納する。また、演算部１２０は、共通するオブジェクトの画像を格納部１３０に格納する。左眼用画像（または右眼用画像）におけるオブジェクト（物体）は、部分画像ともいう。
【００４３】
パターンマッチングは、例えば、次のように実行される。演算部１２０が、左眼用画像の移動する画像と右眼用画像の移動する画像とをある位置で重ね合わせ、重ね合わせられた領域の画素値の差分をとる。演算部１２０は、重ね合わせられた領域のうち差分が０である領域の位置及びその大きさを求める。領域の位置は、例えば、各画像における領域の中心位置とすることができる。また、演算部１２０は、重ね合わせる位置を任意に平行移動させて、同様に、各位置で重ね合わされた領域の差分をとり、重ね合わせられた領域のうち差分が０である領域の位置及びその大きさを求める。演算部１２０は、差分が０である領域の大きさが最も大きいものを抽出する。演算部１２０は、差分が０である領域の大きさが最も大きい領域（差分が０である領域）が、共通する物体であり、その領域（差分が０である領域）の位置が移動するオブジェクトの位置であるとすることができる。この領域は、左眼用画像と右眼用画像とで、同一の形態の同一のオブジェクトであると考えられる。なお、パターンマッチングの手法として、上記に限定されず他の周知の方法が適用されうる。これらの共通する物体は、立体視画像において同一のオブジェクトとして、立体視画像を視聴するユーザに認識されるものである。
【００４４】
ここで、共通する物体の画像（所定画像とする）は、あらかじめ格納部１３０に格納されていてもよい。このとき、演算部１２０は、格納部１３０に格納される所定画像と、左眼用画像および右眼用画像とを、パターンマッチングして、共通する物体を抽出してもよい。また、一度抽出された共通する物体の画像が、所定画像として格納部１３０に格納されてもよい。
【００４５】
演算部１２０は、ステップＳ１０３で抽出したオブジェクトの中から、基準オブジェクトを決定する（Ｓ１０４）。基準オブジェクトは、例えば、右眼用画像の中心（中央）から一番近い画像とすることができる。また、演算部１２０は、表示部１４０に右眼用画像を表示し、ユーザに対し、表示部１４０に表示された画像から、基準オブジェクトとする範囲を選択させてもよい。ユーザは、表示部１４０に表示された画像から、基準オブジェクトとする範囲を選択し、受付部１５０により選択した範囲を入力してもよい。演算部１２０は、選択された範囲の画像を抽出し、基準オブジェクトとして、格納部１３０に格納する。これにより、演算部１２０は、基準オブジェクトを特定できる。また、基準オブジェクトとしての画像が、あらかじめ、格納部１３０に格納されていてもよい。左眼用画像と、右眼用画像とで、それぞれ、基準オブジェクトの範囲が選択されてもよい。このとき、ユーザは、左眼用画像と、右眼用画像とで、同一の対象物について、基準オブジェクトの範囲として選択する。基準オブジェクトは、所定画像の一例である。
【００４６】
演算部１２０は、ステップＳ１０４で決定した基準オブジェクトの、左眼用画像と右眼用画像との間の視差量を算出する。ここで、演算部１２０は、左眼用画像における基準オブジェクトの位置を求める。また、演算部１２０は、右眼用画像における基準オブジェクトの位置を求める。画像における基準オブジェクトの位置は、例えば、基準オブジェクトの中心の座標である。左眼用画像および右眼用画像の基準オブジェクトは、ステップＳ１０４で決定されている。
【００４７】
演算部１２０は、左眼用画像における基準オブジェクトの位置と右眼用画像における基準オブジェクトの位置との差を、算出する。この求めた差が、視差量となる。この求めた差のうち、横方向の差が視差量ΔＸ、縦方向の差が視差量ΔＹである。演算部１２０は、この横方向の視差量ΔＸおよび縦方向の視差量ΔＹを、格納部１３０に格納する。
【００４８】
また、演算部１２０は、左眼用画像と右眼用画像とを重ねあわせ、ステップＳ１０４で決定した基準オブジェクトの範囲が、左眼用画像と右眼用画像とで一致するように、一方の画像（例えば、右眼用画像）を平行移動させて、視差量を求めてもよい。視差量は、当該一方の画像（例えば、右眼用画像）の平行移動した距離（Ｘ軸方向の移動量及びＹ軸方向の移動量）となる。このとき、演算部１２０は、平行移動した距離の、横方向の距離を横方向の視差量ΔＸ、縦方向の距離を縦方向の視差量ΔＹとして、格納部１３０に格納する。視差量は、正負号を含む。即ち、例えば、−Ｘ方向に平行移動した場合は、視差量ΔＸは、負の量になる。
【００４９】
さらに、演算部１２０は、次のように視差量を求めてもよい。演算部１２０は、左眼用画像と右眼用画像とを重ねあわせて表示部１４０に表示する。ユーザが、表示部１４０に表示された画像を見ながら、受付部１５０により一方の画像を平行移動して、ステップＳ１０２で特定した基準オブジェクトの範囲が、左眼用画像と右眼用画像とで一致するようする。視差量は、当該一方の画像（例えば、右眼用画像）の平行移動した距離となる。演算部１２０は、平行移動した距離の、横方向の距離を横方向の視差量ΔＸ、縦方向の距離を縦方向の視差量ΔＹとして、格納部１３０に格納する。
【００５０】
演算部１２０は、左眼用画像と右眼用画像とで、基準オブジェクトの位置を合わせる（Ｓ１０５）。Ｓ１０５の処理では、演算部１２０は、例えば、格納部１３０から右眼用画像を取り出す。そして、演算部１２０は、右眼画像全体を、視差量分だけ平行移動した画像を、新たな右眼用画像とする。視差量として、格納部１３０に格納した視差量（ΔＸおよびΔＹ）が使用される。このように、右眼用画像の画像全体を、先に求めた視差量分（ΔＸおよびΔＹ）だけ平行移動すると、右眼用画像における基準オブジェクトの位置が、左眼用画像における基準オブジェクトの位置と同一になる。即ち、左眼用画像と右眼用画像との間の基準オブジェクトの視差が、ほぼなくなる。演算部１２０は、新たな右眼用画像を、格納部１３０に格納する。また、演算部１２０は、格納部１３０に格納される右眼用画像のオブジェクトの位置を、視差量（ΔＸおよびΔＹ）分平行移動した位置を新たな右眼用画像のオブジェクトの位置とする。
【００５１】
演算部１２０は、左眼用画像と右眼用画像とで、すべてのオブジェクトのＹ座標を調整する（Ｓ１０６）。Ｓ１０６の処理では、演算部１２０は、すべてのオブジェクトのＹ座標を、左眼用画像と右眼用画像とで合わせる。同一のオブジェクトで、左眼用画像と右眼用画像とで、Ｙ座標が異なると、同一オブジェクトとして認識されないおそれがあるからである。演算部１２０は、格納部１３０から左眼用画像および右眼用画像を取り出す。また、演算部１２０は、格納部１３０から、すべてのオブジェクトについて、左眼用画像のオブジェクトの位置と、右眼用画像のオブジェクトの位置とを取り出す。演算部１２０は、各オブジェクトについて、Ｙ座標を比較する。演算部１２０は、同一のオブジェクトにおいて、左眼用画像と右眼用画像とでＹ座標が異なる場合、右眼用画像のＹ座標を左眼用画像のＹ座標にする。また、演算部１２０は、同一のオブジェクトにおいて、左眼用画像のＹ座標と右眼用画像のＹ座標との平均を、左眼用画像のＹ座標および右眼用画像のＹ座標としてもよい。これにより、同一のオブジェクトにおいて、右眼用画像のＹ座標と左眼用画像のＹ座標とが同一になる。演算部１２０は、新たな右眼用画像（および新たな左眼用画像）を、格納部１３０に格納する。また、演算部１２０は、新たな左眼用画像における各オブジェクトの位置、および、新たな右眼用画像における各オブジェクトの位置を、格納部１３０に格納する。以後の処理において、新たな左眼用画像および新たな右眼用画像が使用される。
【００５２】
図７は、ステップＳ１０５およびステップＳ１０６の処理の具体例を示す図である。図７の左眼用画像８１１および右眼用画像８１２は、ステップＳ１０５およびステップＳ１０６の処理前の左眼用画像および右眼用画像である。また、図７の左眼用画像８２１および右眼用画像８２２は、ステップＳ１０５およびステップＳ１０６の処理後の左眼用画像および右眼用画像である。ここでは、左眼用画像は固定とし、右眼用画像を移動することにより、ステップＳ１０５およびステップＳ１０６の処理が行われている。ステップＳ１０５では、右眼用画像８１２の基準オブジェクトの位置が、左眼用画像８１１の基準オブジェクトの位置と同一になるように、移動される。ステップＳ１０６では、右眼用画像のすべてのオブジェクトのＹ座標が、左眼用画像８１１の対応するオブジェクトのＹ座標と同一になるように、移動される。右眼用画像８２２において実線で描かれたオブジェクトは、移動後のオブジェクトを示す。また、右眼用画像８２２において点線で描かれたオブジェクトは、移動前のオブジェクトを示す。ここでは、左眼用画像は、固定としているので、左眼用画像８１１と左眼用画像８２１とは同一である。
【００５３】
図５に戻って、演算部１２０は、立体視画像における視差位相角情報を取得する（Ｓ１０７）。視差位相角は、左眼用画像のオブジェクトの新たな位置を算出する際に使用される量である。視差位相角は、基準オブジェクトの位置と他のオブジェクトの右眼用画像における位置との距離に依存する量である。視差位相角は、基準オブジェクトのＹ座標と他のオブジェクトの右眼用画像におけるＹ座標との差に依存する量であってもよい。視差位相角は、左眼用画像と右眼用画像とを同一画面に表したときに、基準オブジェクトの位置から、他のオブジェクトの右眼用画像における位置に伸ばした直線と、当該他のオブジェクトの左眼用画像における位置に伸ばした直線とのなす角である。以後の処理では、基準オブジェクトの位置と、他のオブジェクトの右眼用画像における位置を固定として、当該他のオブジェクトの左眼用画像の位置を算出する。
【００５４】
図８は、視差位相角情報の例を示す図である。図８の例は、基準オブジェクトの位置と他のオブジェクトの右眼用画像における位置との距離と、視差位相角との対応関係を示すテーブルである。当該テーブルは、例えば、格納部１３０に格納される。このとき、演算部１２０は、視差位相角情報を、格納部１３０から取得できる。また、視差位相角は、基準オブジェクトの位置と他のオブジェクトの右眼用画像における位置との距離の関数として与えられてもよい。
【００５５】
基準オブジェクトの位置と他のオブジェクトの右眼用画像における位置との距離と、視差位相角との対応関係は、ユーザによって調整されてもよい。例えば、図８のテーブルの視差位相角の値に、任意の値を掛けることにより調整されてもよい。例えば、演算部１２０は、ユーザに対し、当該値を入力させてもよい。ユーザは、受付部１５０により当該値を入力することで、視差位相角を調整できる。また、視差位相角は、他の方法によって、調整されてもよい。視差位相角が調整されることで、立体視画像における立体感が調整される。例えば、視差位相角を大きくすることで、立体視画像における立体感が強調される。即ち、視差位相角が調整されることで、立体視画像における立体感がより強調されたり、より低減されたりし得る。
【００５６】
演算部１２０は、図８のようなテーブル、ユーザによる入力、関数などによって、基準オブジェクトの位置と他のオブジェクトの右眼用画像における位置との距離と視差位相角との対応関係である視差位相角情報を取得する。
【００５７】
ステップＳ１０８では、演算部１２０は、１つのオブジェクトについて、左眼用画像の位置と右眼用画像の位置との差である、視差量を算出する（Ｓ１０８）。演算部１２０は、格納部１３０から、ある１つのオブジェクトについて、左眼用画像における位置の情報と、右眼用画像における位置の情報とを取り出す。ここで、ステップＳ１０６の処理により、１つのオブジェクトについて、左眼用画像におけるＹ座標と、右眼用画像におけるＹ座標とは、同一である。よって、視差量は、左眼用画像におけるＸ座標と右眼用画像におけるＸ座標との差によって算出される。
【００５８】
図９は、基準オブジェクトの座標と、１つの他のオブジェクトの左眼用画像における座標および右眼用画像における座標の例を示す図である。図９の例では、点A0(Xa0,Ya0)が基準オブジェクトの座標を示す。また、点BL0(Xbl0,Ybl0)が他のオブジェクトの左眼用画像における座標を示し、点BR0(Xbr0,Ybr0)が右眼用画像における座標を示す。ここで、点BL0のＹ座標と点BR0のＹ座標とは、ステップＳ１０６の処理により同一である。また、視差量は、点BL0と点BR0とのＸ座標の差となる。
【００５９】
図６に戻って、演算部１２０は、ステップＳ１０８で処理したオブジェクトの視差量が、ステップＳ１０１で取得した視差量限界値以下であるか否かを確認する（Ｓ１０９）。オブジェクトの視差量が視差量限界値を越えている場合、立体視画像を視聴するユーザが当該オブジェクトを１つのオブジェクト（物体）と認識できないおそれがある。そのため、演算部１２０は、オブジェクトの視差量が視差量限界値以下か否かを確認する。
【００６０】
オブジェクトの視差量がステップＳ１０１で取得した視差量限界値以下である場合（Ｓ１０９；ＹＥＳ）、演算部１２０は、左眼用画像における当該オブジェクトの新たな位置を算出する（Ｓ１１０）。演算部１２０は、左眼用画像における当該オブジェクトの新たな位置（点BL1（Xbl1,Ybl1））を、次の式に基づいて算出する。
【００６１】
【数２】
2012153378.tif 000004
【００６２】
角度θ０は、ステップＳ１０７で取得した視差位相角情報に基づく視差位相角である。視差位相角は、例えば、点A0と点BR0との距離に依存する。
【００６３】
ここで、角度θ０、点A0の座標及び点BR0の座標は、与えられる値である。点BL1のＹ座標(Ybl1)は、点BR0のＹ座標(Ybl0)と同一とする。よって、上式は点BL1のＸ座標（Xbl1）についての２次式となることから、点BL1のＸ座標(Xbl1)が求まる。当該２次式を解くと、Xbl1として２つの解が求まるが、(Xbl0-Xbr0)の符号（正号または負号）と(Xbl1-Xbr0)の符号とが同一になる解を採る。即ち、Xbl1の解として、(Xbl0-Xbr0)と(Xbl1-Xbr0)との積が、正となるXbl1が採用される。このようにして、演算部１２０は、点BL1(Xbl1,Ybl1)を算出する。ただし、演算部１２０は、点BL1と点BR1との差（視差量）が、視差量限界値を越えている場合、点BL1としてここで算出した値を採用しない。この場合、左眼用画像における当該オブジェクトの新たな位置（点BL1(Xbl1,Ybl1)）は、右眼用画像における当該オブジェクトの位置（点BR0(Xbr0,Ybr0)）から、点BL0の方向に視差量限界値だけ移動した位置とする。また、点A0のＹ座標と点BR0のＹ座標とが同一である場合、演算部１２０は、当該オブジェクトの新たな位置を、元の位置（点BR0及び点BL0）と同一とする。演算部１２０は、ここで算出した位置の情報を、格納部１３０に格納する。点BL1の位置の算出方法は、これに限定されるものではなく、点BL1の位置が基準オブジェクトと計算対象のオブジェクトとの間の距離の関数による他の算出方法であってもよい。
【００６４】
図１０は、ステップＳ１１０の処理後の、基準オブジェクトの座標と、１つの他のオブジェクトの左眼用画像における座標および右眼用画像における座標の例を示す図である。図１０の例では、点A1(Xa1,Ya1)が基準オブジェクトの座標を示す。点A1の位置は、点A0の位置と同一である。また、点BL1(Xbl1,Ybl1)が他のオブジェクトの左眼用画像における座標を示し、点BR1(Xbr1,Ybr1)が右眼用画像における座標を示す。点BR1の位置は、点BR0の位置と同一である。角度θ０は、視差位相角である。角度θ０は、点BR1−点A0−点BL1で作られる角度である。
【００６５】
図６に戻って、オブジェクトの視差量がステップＳ１０１で取得した視差量限界値以下でない場合（Ｓ１０９；ＮＯ）、演算部１２０は、左眼用画像における当該オブジェクトの新たな位置を算出する（Ｓ１１１）。ここで、左眼用画像における当該オブジェクトの新たな位置（点BL1(Xbl1,Ybl1)）は、右眼用画像における当該オブジェクトの位置（点BR0(Xbr0,Ybr0)）から、点BL0の方向に視差量限界値だけ移動した位置となる。演算部１２０は、ここで算出した位置の情報を、格納部１３０に格納する。
【００６６】
演算部１２０は、すべてのオブジェクトについて、新たな位置を算出したか否かを確認する（Ｓ１１２）。新たな位置を算出していないオブジェクトがある場合（Ｓ１１２；ＮＯ）、処理がステップＳ１０８に戻り、未だ新たな位置を算出していないオブジェクトについて処理をする。すべてのオブジェクトについて新たな位置を算出した場合（Ｓ１１２；ＹＥＳ）、処理がステップＳ１１３に進む。
【００６７】
ステップＳ１１３では、演算部１２０は、立体視画像を生成する（Ｓ１１３）。演算部１２０は、ステップＳ１１０またはステップＳ１１１で算出したすべてのオブジェクトの位置に基づいて、左眼用画像及び右眼用画像に各オブジェクトを配置し、１つ（１組）の立体視画像として、格納部１３０に格納する。また、演算部１２０は、生成した立体視画像を、表示部１５０に表示してもよい。
【００６８】
格納部１３０に格納された立体視画像は、立体視用の表示装置において、表示されうる。立体視用の表示装置は、左眼用画像を左眼に、右眼用画像を右眼に入力するような、表示装置である。
【００６９】
ここで、立体視画像生成装置１００の処理は、終了する。ただし、引き続いて、左眼用画像および右眼用画像が入力される場合、処理がステップＳ１０２に戻って繰り返される。また、入力される画像が動画像の場合、同様に、処理がステップＳ１０２に戻って繰り返される。
【００７０】
（変形例）
演算部１２０は、上記のステップＳ１１０での点BL1の位置の算出の代わりに、次式に基づいて、点BL1の位置を算出してもよい。
【００７１】
【数３】
2012153378.tif 000005
【００７２】
ここで、値αは、定数である。例えば、ステップＳ１０７で、ユーザに視差位相角を調整させる代わりに、値αを調整させることができる。値αを調整することで、立体視画像における立体感が調整され得る。値αを大きくすることで、視差量が大きくなるため、立体視画像における立体感をより強調することができる。距離L2の代わりに、Ｙ座標の差（Ybr0-Ya0）が使用されてもよい。
【００７３】
値(Xbl0-Xbr0)は、ステップＳ１１０における当該オブジェクトの視差量である。視差量は、奥行き方向（Ｚ方向）の位置（座標）に依存する。カメラの位置を原点として、当該オブジェクトのＺ方向（カメラの光軸方向）の位置（座標）をZbとすると、視差量は、Zbの−１乗に対して線形となる。即ち、当該オブジェクトの位置がカメラから遠ざかると（Zbが大きくなると）、視差量は、所定の値に近づく。当該オブジェクトのＺ方向の位置Zbは、視差量に基づいて算出されうる。また、当該オブジェクトのＺ方向の位置Zbは、例えば、カメラに付属する赤外線センサ等によって求められてもよい。当該オブジェクトの点BL1の位置は、当該オブジェクトのＺ方向の位置Zbを用いて、次の式に基づいて算出されてもよい。
【００７４】
【数４】
2012153378.tif 000006
【００７５】
ここで、値βは、定数である。値βは、例えば、Ｓ１０５で使用した横方向の視差量ΔＸとすることができる。このとき、オブジェクトと基準オブジェクトとのＺ方向の位置が同じ場合、このオブジェクトの視差量は０となる。このとき、各オブジェクトは、基準オブジェクトとのＺ方向の位置の差に基づいて、新たな視差量を算出される。オブジェクトと基準オブジェクトとのＺ方向の位置の差が小さいほど、新たな視差量に与える影響が大きい。また、値βは、０でもよい。
【００７６】
また、これらの式によれば、各オブジェクトの新たな視差量を、基準オブジェクトとの距離（画像上における距離）と元の視差量とに依存した値、または、基準オブジェクトとの距離と各オブジェクトのＺ方向の位置とに依存した値とすることができる。これによれば、元の画像の（奥行き方向の）前後関係に依存した新たな立体視画像を生成することができる。
【００７７】
（実施形態の作用効果）
立体視画像生成装置１００は、左眼用画像および右眼用画像を取得し、画像に含まれるオブジェクトを定める。また、立体視画像生成装置１００は、基準オブジェクトを決定し、他のオブジェクトの視差量を、当該他のオブジェクトとの基準オブジェクトとの位置関係、視差位相角等に基づいて、算出する。また、立体視画像生成装置１００は、各オブジェクトの視差量が視差量限界値を超えないように、各オブジェクトの視差量を決定する。
【００７８】
立体視画像生成装置１００によれば、基準オブジェクトと各オブジェクトとの画面上における距離に依存した立体感を有する立体視画像を生成することができる。即ち、立体視画像生成装置１００によれば、カメラからの距離に差がない複数のオブジェクトによる画像であっても、立体感を強調した立体視画像を生成することができる。
【００７９】
〔コンピュータ読み取り可能な記録媒体〕
コンピュータその他の機械、装置（以下、コンピュータ等）に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【００８０】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような媒体内には、ＣＰＵ、メモリ等のコンピュータを構成する要素を設け、そのＣＰＵにプログラムを実行させてもよい。
【００８１】
また、このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えば、フレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ＤＡＴ、８ｍｍテープ、メモリカード等がある。
【００８２】
また、コンピュータ等に固定された記録媒体としてハードディスクドライブやＲＯＭ等がある。
【符号の説明】
【００８３】
１００          立体視画像生成装置
１１０            取得部
１２０            演算部
１３０            格納部
１４０            表示部
１５０            受信部
３００          情報処理装置
３０２            ＣＰＵ
３０４            メモリ
３０６            記憶部
３０８            入力部
３１０            出力部
３１２            通信部
【図１】
2012153378.tif 000007
【図２】
2012153378.tif 000008
【図３】
2012153378.tif 000009
【図４】
2012153378.tif 000010
【図５】
2012153378.tif 000011
【図６】
2012153378.tif 000012
【図７】
2012153378.tif 000013
【図８】
2012153378.tif 000014
【図９】
2012153378.tif 000015
【図１０】
2012153378.tif 000016
【手続補正書】
【提出日】平成25年11月19日(2013.11.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する格納部と、
前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成する演算部と、
を備える立体視画像生成装置。
【請求項２】
前記演算部は、前記第１部分画像に対応する前記第２画像に含まれる第４部分画像の存在位置である第４位置を抽出し、前記第１位置と前記第４位置との差分である第２差分量を算出し、
前記演算部は、さらに、前記第１差分量、及び、前記第２差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出する、
請求項１に記載の立体視画像生成装置。
【請求項３】
前記演算部は、前記第１部分画像の奥行き方向の位置を算出し、
前記演算部は、さらに、前記第１差分量、及び、前記奥行き方向の位置に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出する、
請求項１に記載の立体視画像生成装置。
【請求項４】
コンピュータが、
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する記憶装置から、前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成することを実行する、
立体視画像生成方法。
【請求項５】
コンピュータが、
複数の部分画像を含む第１画像、及び、前記第１画像に含まれる複数の部分画像とそれぞれ対応する複数の部分画像を含む第２画像を格納する記憶装置から、前記第１画像に含まれる第１部分画像の存在位置である第１位置と、前記第１画像に含まれる第２部分画像の存在位置である第２位置とを抽出し、
前記第１位置と前記第２位置との差分である第１差分量を算出し、
前記第１差分量に基づいて、前記第１部分画像に対応する前記第２画像に含まれる第３部分画像の新たな存在位置である第３位置を算出し、
前記第３部分画像の前記第３位置に基づいて、第３画像を生成することを実行するための立体視画像生成プログラム。
【国際調査報告】
2012153378.tif 000017
2012153378.tif 000018
2012153378.tif 000019
2012153378.tif 000020