以下に、図面を参照して、本発明を実施するための形態(以下、「実施の形態」という)について説明する。なお、以下に説明する実施の形態によって本発明が限定されるものではない。また、図面の記載において、同一の部分には同一の符号を付している。
図1は、本発明の一実施の形態に係る表示装置の構成を示すブロック図である。本実施の形態では、表示装置を搭載したデジタルステレオカメラを例に挙げて説明する。図1に示すように、異なる位置から撮影し、互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成する撮像部2と、表示装置1の姿勢を検出する姿勢検出部3と、表示装置1の各種情報の入力を受け付ける操作入力部4と、撮影日時の判定機能やタイマー機能を有する時計5と、2次元画像(以下、「2D画像」という)または3D画像を表示する表示部6と、外部からの接触位置や軌跡に応じた信号の入力を受け付けるタッチパネル7と、撮像部2によって生成された画像データを含む各種情報を記憶する記憶部8と、表示装置1の動作を制御する制御部9と、を備える。
撮像部2は、第1撮像部21と第2撮像部22とを有する。第1撮像部21および第2撮像部22は、互いの光軸L1,L2が平行または所定の角度をなすように同一平面上で並設される。
第1撮像部21は、レンズ部21aと、レンズ駆動部21bと、絞り21cと、絞り駆動部21dと、シャッタ21eと、シャッタ駆動部21fと、撮像素子21gと、信号処理部21hとを有する。レンズ部21aは、フォーカスレンズやズームレンズ等によって構成され、所定の視野領域からの光を集光する。レンズ駆動部21bは、DCモータ等によって構成され、レンズ部21aのフォーカスレンズやズームレンズ等を光軸L1上で移動させることにより、レンズ部21aのピント位置や焦点距離の変更を行う。絞り21cは、レンズ部21aが集光した光の入射量を制限することにより露出の調整を行う。絞り駆動部21dは、ステッピングモータ等によって構成され、絞り21cを駆動する。シャッタ21eは、撮像素子21gの状態を露光状態または遮光状態に設定する。シャッタ駆動部21fは、ステッピングモータ等によって構成され、レリーズ信号に応じてシャッタ21eを駆動する。撮像素子21gは、レンズ部21aが集光した光を受光して電気信号(アナログ信号)に変換するCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等によって実現され、変換した電気信号を信号処理部21hに出力する。信号処理部21hは、撮像素子21gから出力される電気信号に増幅等の信号処理を施した後、A/D変換を行うことによってデジタルの画像データに変換して制御部9に出力する。
第2撮像部22は、第1撮像部21と同一の構成によって実現され、レンズ部22aと、レンズ駆動部22bと、絞り22cと、絞り駆動部22dと、シャッタ22eと、シャッタ駆動部22fと、撮像素子22gと、信号処理部22hとを有する。
姿勢検出部3は、加速度センサによって構成され、表示装置1の加速度を検出することにより、表示装置1の姿勢状態を検出する。具体的には、姿勢検出部3は、水平面を基準としたときの表示装置1の姿勢を検出する。
操作入力部4は、表示装置1の電源状態をオン状態またはオフ状態に切換える電源スイッチ41と、静止画撮影の指示を与えるレリーズ信号を入力するレリーズスイッチ42と、表示装置1の各種撮影モードや各種設定の切換える切換スイッチ43と、撮像部2のズーム操作を行うズームスイッチ44と、3D画像の調整を行うアイコンを表示部6に表示させる3D調整スイッチ45とを有する。
時計5は、表示装置1の動作の基準となる時間信号を生成する。これにより、制御部9は、画像データの取得時間や撮像素子21g,22gの露光時間等を設定することができる。
図2は、表示部6の概略構成を示す模式図である。図2に示すように、表示部6は、バックライト61と、表示パネル62と、視差バリア63とを有する。バックライト61は、LED(Light Emitting Diode)等によって構成され、画像を表示するための光を背面から照射する。表示パネル62は、液晶または有機EL(Electro Luminescence)等の表示パネルによって構成される。視差バリア63は、液晶等によって構成され、表示パネル62の上面に積層される。視差バリア63は、表示パネル62の各画素の間隔よりも狭い間隔でスリットが設けられ、ユーザの右目O1と左目O2とにそれぞれ対応した画像を分離する。また、本実施の形態では、視差バリア63は、パララックバリア方式が適用される。なお、本実施の形態では、レンティキュラレンズを積層したレンズシートを視差バリア63に換えて表示パネル62の上面に積層するようにしてもよい。
以上の構成を有する表示部6は、制御部9から3D画像データが入力された場合、制御部9の制御のもと表示パネル62が左端の画素から水平方向に右目画像と左目画像との順で交互に表示し、視差バリア63が表示パネル62の各画素から出た光を分離する。このため、右目画像が右目O1のみ、左目画像が左目O2のみにそれぞれ届く。これにより、ユーザは、表示部6が表示する3D画像を立体視することができる。また、表示部6は、表示態様を3D画像から2D画像に切換える場合、視差バリア63に印加される電圧がオン状態からオフ状態になることによって、視差バリア63が遮光状態から透過状態になり、右目画像または左目画像のどちらか一方が表示パネル62に出力されることで2D画像を表示することができる。
タッチパネル7は、表示部6の表示画面上に重ねて設けられる。タッチパネル7は、ユーザが表示部6で表示される情報や画像に基づいて接触(タッチ)した領域や軌跡を検出し、この接触領域や軌跡に応じた操作信号の入力を受け付ける。一般に、タッチパネルとしては、抵抗膜方式、静電容量方式、光学式等がある。本実施の形態では、いずれの方式のタッチパネルであっても適用可能である。なお、本実施の形態では、タッチパネル7は、入力部として機能の一部をなす。
記憶部8は、撮像部2が撮影した画像データを記憶する画像データ記憶部81と、表示装置1が実行する各種プログラムを記憶するプログラム記憶部82とを有する。記憶部8は、表示装置1の内部に固定的に設けられるフラッシュメモリやRAM(Random Access Memory)等の半導体メモリを用いて実現される。なお、記憶部8に対し、外部から装着されるメモリカード等の記憶媒体に対して情報を記憶する一方、記憶媒体が記憶する情報を読み出す記録媒体インターフェースとしての機能を具備させてもよい。
制御部9は、CPU(Central Processing Unit)等によって実現される。制御部9は、操作入力部4からの操作信号等に応じて記憶部8のプログラム記憶部82からプログラムを読み出して実行し、表示装置1を構成する各部に対する指示やデータの転送等を行って表示装置1の動作を統括的に制御する。制御部9は、画像処理部91と、立体画像生成部92と、設定部93と、離間距離調整部94と、トリミング部95と、合成画像生成部97と、表示制御部98とを有する。
画像処理部91は、信号処理部21h,22hからそれぞれ出力された左目画像データおよび右目画像データに対して各種の画像処理を施して記憶部8の画像データ記憶部81に出力する。具体的には、画像処理部91は、信号処理部21h,22hからそれぞれ出力された左目画像データおよび右目画像データに対してエッジ強調、色補正およびγ補正等の処理を施す。
立体画像生成部92は、画像処理部91によって画像処理された右目画像データおよび左目画像データに対し、所定の縦横比率、たとえばアスペクト比3:4でそれぞれ切出すことによって3D画像を生成する。なお、立体画像生成部92が左目画像データおよび右目画像データそれぞれから切出す縦横比率は、切換スイッチ43で設定するようにしてもよい。
設定部93は、表示部6が表示する3D画像の中で表示部6の表示画面と直交する方向へ仮想的に離間した離間距離を調整する調整領域を設定する。具体的には、設定部93は、表示部6が表示する3D画像に対し、タッチパネル7が入力を受け付けた信号によって指定された被写体を表示する領域を、周知の三角測量の原理を用いて調整領域として設定する。
離間距離調整部94は、画像処理部91によって画像処理された右目画像データおよび左画像データそれぞれに含まれ、タッチパネル7が入力を受け付けた調整領域の離間距離を変更する変更指示信号に応じて設定部93が設定した調整領域の離間距離を調整する。具体的には、離間距離調整部94は、タッチパネル7が入力を受け付けた信号によって指定された被写体の視差を、タッチパネル7が入力を受け付けた離間距離の変更を指示する変更指示信号に応じて調整する。
トリミング部95は、設定部93が設定した調整領域を切出してトリミング画像を生成する。具体的には、トリミング部95は、表示部6が表示する3D画像に対し、タッチパネル7が入力を受け付けた信号によって指定された被写体を表示する領域を右目画像および左目画像それぞれから切出してトリミング画像を生成する。ここで、トリミングとは、画像内に含まれる被写体の輪郭にそって切出した画像を生成することをいう。また、トリミング画像とは、画像内に含まれる被写体の輪郭にそって切出して生成した画像である。
拡大縮小部96は、トリミング部95が生成したトリミング画像を拡大または縮小して拡大トリミング画像または縮小トリミング画像を生成する。具体的には、拡大縮小部96は、トリミング部95が右目画像および左目画像それぞれから切出した右目トリミング画像および左目トリミング画像を拡大した拡大トリミング画像または縮小した縮小トリミング画像を生成する。さらに、拡大縮小部96は、離間距離調整部94が調整した被写体の視差と被写体の離間距離とに基づいて、トリミング画像を所定の倍率で拡大して拡大トリミング画像または縮小して縮小トリミング画像を生成する。
合成画像生成部97は、拡大縮小部96が生成した拡大トリミング画像または縮小トリミング画像を被写体領域に重ねた合成画像を生成する。具体的には、合成画像生成部97は、表示部6が表示する3D画像に対し、タッチパネル7が入力を受け付けた信号によって指定された被写体の領域に対応する右目画像および左目画像それぞれの領域に、拡大縮小部96が生成した拡大トリミング画像または縮小トリミング画像を重ねた右目合成画像および左目合成画像を生成する。
表示制御部98は、3D画像または2D画像を表示部6に表示させる制御を行う。具体的には、表示制御部98は、表示部6に3D画像を表示させる場合、立体画像生成部92が生成した3D画像の右目画像と左目画像とを表示部6の表示画面における水平方向の1画素毎に交互に並べた3D画像を表示部6に出力する制御を行う。これに対して、表示制御部98は、表示部6に2D画像を表示させる場合、表示部6の視差バリア63を遮光状態から透過状態にするため、視差バリア63に印加する電源をオン状態からオフ状態にするとともに、左目画像または右目画像どちらか一方のみを表示パネル62に出力する制御を行う。さらに、表示制御部98は、離間距離調整部94が3D画像内における被写体の視差を調整した右目画像データおよび左目画像データを用いた3D画像を表示部6に表示させる制御を行う。さらにまた、表示制御部98は、合成画像生成部97が拡大縮小部96によって生成された拡大トリミング画像または縮小トリミング画像を合成した右目画像データおよび左目画像データを用いた3D画像を表示部6に表示させる制御を行う。
以上の構成を有する表示装置1において、撮像部2が互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成する際の状況について説明する。図3は、撮像部2が、互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成する際の状況を示す模式図である。図4は、図3に示す状況下で撮像部2が生成する2つの画像データにそれぞれ対応する2つの画像の一例を示す図である。図4において、画像WR1が、立体画像生成部92が第1撮像部21によって生成された右目画像データに対応する画像から切出して生成した右目画像であり、画像WL1が、立体画像生成部92が第2撮像部22によって生成された左目画像データに対応する画像から切出して生成した左目画像である。図5は、図3に示す状況下で立体画像生成部92が生成した右目画像と左目画像とを仮想的に重ねた画像の一例を示す図である。図6は、図3に示す状況下で撮像部2と被写体との距離と画像中の被写体位置の関係を示す図である。図6では、横軸が左端を原点としたときの画像W1内の被写体位置であり、縦軸が撮像部2と被写体との距離である。なお、図4および図5において、破線および一点鎖線は第1撮像部21および第2撮像部22がそれぞれ生成する画像データに対応する画像領域を示す。
図3に示すように、撮像部2は、撮像部2からの距離が異なる被写体A1(距離d1)および被写体A2(距離d2)に対して、距離(基線長)B1離れて並設された第1撮像部21および第2撮像部22で撮影することにより、右目画像データと左目画像データとを生成する。その後、立体画像生成部92が、画像処理部91によって画像処理された右目画像データおよび左目画像データそれぞれを所定の縦横比率で切出して右目画像WR1および左目画像WL1を生成する(図4を参照)。図6に示すように、撮像部2と被写体A2との距離は、撮像部2と被写体A1との距離より大きい。このため、被写体A2の領域がほぼ重なる。具体的には、図5に示すように、画像W1内では、被写体A2の領域がほぼ重なる。これに対して、被写体A1の領域が重ならず、被写体A1に対して視差a1を有する。このように、右目画像WR1および左目画像WL1では、撮像部2からの距離が近い被写体(被写体A1)ほど3D画像内での視差が大きく、撮像部2からの距離が遠い被写体(被写体A2)ほど3D画像内での視差が小さい。
つぎに、設定部93が設定する調整領域について説明する。図7は、設定部93が設定する調整領域の設定方法を説明する模式図である。図7に示すように、設定部93は、表示部6が表示する3D画像に対し、タッチパネル7が入力を受け付けた信号によって指定された被写体の被写体領域を調整領域として設定する。具体的には、図7(a)に示すように、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体A2の一部をタッチした場合、画像W1内で重ならない領域を背景画像として特定し、画像W1内で重なる領域を3D画像内に含まれる被写体A2の被写体領域として特定する。これにより、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体A2の一部をタッチした場合、被写体A2の被写体領域を調整領域として設定することができる。
これに対して、図7(b)に示すように、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体A1の一部をタッチした場合、右目画像WR1の被写体A1と左目画像WL1の被写体A1とを重ねることにより、画像W2内で重ならない領域の画像を背景画像として特定し、画像W2内で重なる領域を3D画像内に含まれる被写体A1の被写体領域として特定する。これにより、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体A1の一部をタッチした場合、被写体A1の被写体領域を調整領域として設定することができる。
このように、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体の一部をタッチした場合、立体画像生成部92が生成する右目画像および左目画像に基づいて、3D画像に含まれる被写体の被写体領域を特定し、特定した被写体領域を調整領域として設定する。なお、設定部93は、立体画像生成部92が生成する右目画像および左目画像それぞれに含まれる被写体を重ねる場合、たとえばパターンマッチング等により被写体の顔領域を検出し、この検出した顔領域を基準として被写体の領域を重ねることにより、3D画像に含まる被写体の被写体領域を特定するようにしてもよい。さらに、設定部93は、コントラストおよび/またはピントが最大値となる位置を基準として被写体の領域を重ねることにより、3D画像に含まれる被写体の被写体領域を特定するようにしてもよい。
つぎに、離間距離調整部94が行う処理の概要について説明する。図8は、離間距離調整部94が行う処理の概要を示す模式図である。図8のP0は、3D画像に含まれる被写体が視差を持たない状態(2D画像)に表示される位置を示している。図8のP1は、3D画像に含まれる被写体が表示部6の表示画面と直交する方向へ仮想的に初期位置から飛び出した状態の飛び出し位置を示している。図8のP2は、3D画像に含まれる被写体が表示部6の表示画面と直交する方向へ仮想的に初期位置から引っ込んだ状態の引っ込み位置を示す。なお、図8では、図3〜図6に示した被写体A1を例に説明する。
図8に示すように、離間距離調整部94は、表示部6が表示する3D画像に対し、タッチパネル7が入力を受け付けた信号によって指定された被写体A1を表示部6の表示画面と直交する方向へ仮想的に飛び出せる場合(位置P0→位置P1)、右目画像に含まれる被写体A1の被写体画像A1Rと左目画像に含まれる被写体A1の被写体画像A1Lとの視差を調整する。これにより、離間距離調整部94は、被写体A1が表示部6の表示画面と直交する方向へ仮想的に飛び出す距離r1(以下、「飛び出し距離」という)を調整することができる。具体的には、離間距離調整部94は、飛び出した被写体A1を表示部6の表示画面と直交する方向に仮想的にさらに飛び出せる場合、被写体画像A1Rと被写体画像A1Lとの視差C1を大きくすることにより、被写体A1の飛び出し距離r1を大きくすることができる。一方、離間距離調整部94は、飛び出した被写体A1を表示部6の表示画面と直交する方向に仮想的に引っ込ませる場合、被写体画像A1Rと被写体画像A1Lとの視差C1を小さくすることにより、被写体A1の飛び出し距離r1を小さくすることができる。
これに対し、離間距離調整部94は、タッチパネル7が受け付けた信号によって指定された被写体A1を表示部6の表示画面と直交する方向へ仮想的に引っ込ませる場合(位置P0→位置P2)、右目画像に含まれる被写体A1の被写体画像A1Rと左目画像に含まれる被写体A1の被写体画像A1Lとの視差を調整する。これにより、離間距離調整部94は、被写体が表示部6の表示画面と直交する方向に仮想的に引っ込む距離r2(以下、「引っ込み距離」という)を調整することができる。具体的には、離間距離調整部94は、引っ込んだ被写体を表示部6の表示画面と直交する方向に仮想的にさらに引っ込ませる場合、被写体画像A1Rと被写体画像A1Lとの視差C2を大きくすることにより、被写体A1の引っ込み距離r2を大きくすることができる。一方、離間距離調整部94は、引っ込んだ被写体A1を表示パネル62と直交する方向に仮想的に飛び出させる場合、被写体画像A1Rと被写体画像A1Lとの視差C2を小さくすることにより、被写体A1の引っ込み距離r2を小さくすることができる。
このように、離間距離調整部94がタッチパネル7によって指定された3D画像内の被写体に対応する右目画像および左目画像それぞれに含まれる被写体画像の視差を個別に調整し、表示制御部98が離間距離調整部94によって被写体の視差を調整した右目画像および左目画像を用いた3D画像を表示部6に表示させる制御を行う。これにより、ユーザは、表示部6が表示する3D画像に含まる所望の被写体をタッチすることにより、タッチした被写体の離間距離を調整することができる。
つぎに、本実施の形態に係る表示装置1が行う処理について説明する。図9は、表示装置1が行う処理の概要を示すフローチャートである。なお、以下において、3D画像が表示部6の表示画面と直交する方向へ仮想的に飛び出した状態に対して行う処理を例に説明する。
図9において、まず、制御部9は、表示装置1の電源がオンになっているか否かを判断する(ステップS101)。表示装置1の電源がオンになっている場合(ステップS101:Yes)、表示装置1はステップS102に移行する。一方、表示装置1の電源がオンになっていない場合(ステップS101:No)、表示装置1は本処理を終了する。
続いて、制御部9は、表示装置1が撮影モードに設定されているか否かを判断する(ステップS102)。表示装置1が撮影モードに設定されている場合(ステップS102:Yes)、表示装置1は後述するステップS103に移行する。一方、表示装置1が撮影モードに設定されていない場合(ステップS102:No)、表示装置1は後述するステップS126に移行する。
ステップS102において、表示装置1が撮影モードに設定されている場合(ステップS102:Yes)について説明する。この場合、表示制御部98は、撮像部2が一定の微小な時間間隔で連続的に生成する画像データに対応する3D画像のスルー画像を表示部6に表示させる(ステップS103)。
続いて、制御部9は、ユーザによってレリーズスイッチ42が操作されて撮影を指示するレリーズ信号が入力されたか否かを判断する(ステップS104)。撮影を指示するレリーズ信号が入力された場合(ステップS104:Yes)、表示装置1は後述するステップS123に移行する。一方、撮影を指示するレリーズ信号が入力されていない場合(ステップS104:No)、表示装置1は後述するステップS105に移行する。
ステップS104において、撮影を指示するレリーズ信号が入力されていない場合(ステップS104:No)について説明する。この場合、制御部9は、ユーザによって3D調整スイッチ45が操作されて3D画像内における被写体の飛び出し距離を調整する奥行アイコンを表示部6に表示させる指示信号が入力されたか否かを判断する(ステップS105)。3D調整スイッチ45が操作されていない場合(ステップS105:No)、表示装置1はステップS104に戻る。一方、3D調整スイッチ45が操作された場合(ステップS105:Yes)、表示装置1はステップS106に移行する。
続いて、表示制御部98は、3D画像内における被写体の飛出し距離を調整する奥行アイコンを表示部6が表示する3D画像上に表示させる(ステップS106)。具体的には、図10(a)に示すように、表示制御部98は、表示部6が表示する3D画像W3の右端領域K1上に飛び出し調整アイコンQ1、引っ込み調整アイコンQ2および戻すアイコンQ3を表示させる。3D画像W3の右端領域K1は、ユーザが操作情報の確認やアイコンを操作(タッチ)する領域であり、アイコン等の操作情報を2D画像で表示できればよい。なお、表示制御部98は、右端領域K1にアイコン等を3D画像で表示させてもよい。
その後、制御部9は、タッチパネル7が入力を受け付けた信号によって被写体が指定されたか否かを判断する(ステップS107)。具体的には、図10(b)に示すように、制御部9は、ユーザが指O3で3D画像W3内の被写体A1をタッチすることにより、タッチパネル7が入力を受け付けた信号によって被写体A1が指定されたか否かを判断する。タッチパネル7が入力を受け付けた信号によって被写体が指定されていない場合(ステップS107:No)、表示装置1はステップS104に戻る。一方、タッチパネル7が入力を受け付けた信号によって被写体が指定された場合(ステップS107:Yes)、表示装置1は後述するステップS108に移行する。
続いて、設定部93は、タッチパネル7が入力を受け付けた信号によって指定された被写体を調整領域として設定する(ステップS108)。
その後、制御部9は、被写体を表示部6の表示画面と直交する方向へ仮想的に飛び出させる飛び出し調整アイコンQ1が操作されたか否かを判断する(ステップS109)。具体的には、図10(c)に示すように、制御部9は、ユーザが指O3で飛び出しアイコンQ1をタッチすることにより、タッチパネル7が入力を受け付けた信号によって飛び出しアイコンQ1が操作されたか否かを判断する。飛び出し調整アイコンQ1が操作された場合(ステップS109:Yes)、離間距離調整部94は、被写体の視差を所定量拡大する調整を行う(ステップS110)。
続いて、トリミング部95は、設定部93が設定した被写体を右目画像および左目画像それぞれから切出してトリミング画像を生成し(ステップS111)、拡大縮小部96は、離間距離調整部94が調整した被写体の視差と被写体の飛び出し距離とに基づいて、被写体を拡大した拡大トリミング画像を生成する(ステップS112)。
その後、合成画像生成部97は、拡大縮小部96が生成した拡大トリミング画像を被写体の領域に重ねた合成画像を生成し(ステップS113)、表示制御部98は、合成画像生成部97が生成した合成画像を用いた3D画像を表示部6に表示させる制御を行い(ステップS114)、表示装置1はステップS104に戻る。
図11は、離間距離調整部94が被写体A1の視差を拡大する調整方法を説明する模式図である。図11に示すように、離間距離調整部94は、立体画像生成部92が生成した右目画像WR1および左目画像WL1にそれぞれ含まれる被写体A1の視差を所定量拡大する調整を行う。具体的には、図11に示すように、離間距離調整部94は、右目画像WR1の被写体A1を視差が大きくなる左方向(矢印C3)に所定量、たとえば視差の1/10移動させる。これにより、ユーザは、表示部6が表示する3D画像に対し、タッチした被写体A1の飛出し距離を個別に大きくする調整を行うことができる。しかしながら、右目画像WR1内には、離間距離調整部94が右目画像WR1の被写体A1を移動させたことで右目画像WR1内に画素が欠落する欠落領域H1(図11で黒塗りの領域)が生じる。
そこで、図12に示すように、トリミング部95が、被写体A1を右目画像WR1および左目画像WL1それぞれから切出してトリミング画像A11を生成する(図12(b)を参照)。ここで、トリミング画像とは、右目画像および左目画像それぞれに含まれる被写体(猫)の輪郭にそって切出して生成した切出し画像である。
その後、拡大縮小部96が、離間距離調整部94によって調整された被写体A1の視差と被写体A1の飛出し距離とに基づいて、右目画像WR1および左目画像WL1のトリミング画像A11をそれぞれ拡大した拡大トリミング画像A12を生成し、合成画像生成部97が、拡大縮小部96によって生成された拡大トリミング画像A12を被写体A1の領域を含むように重ねた右目合成画像WR2および左目合成画像WL2を生成する(図12(c))。続いて、表示制御部98が右目合成画像WR2および左目合成画像WL2を用いて3D画像(図13の画像W4を参照)を表示部6に表示させる制御を行う。
このように、表示装置1は、被写体A1を拡大してユーザ側に被写体A1をより飛び出させることによって、欠落領域H1の画素を補間することができる。これにより、ユーザは、表示部6が表示する3D画像に対し、タッチした被写体の飛び出し距離を調整することができるとともに、滑らかな3D画像W4を仮想的に視認することができる。なお、図11においては、右目画像WR1内の被写体A1のみを移動させているが、左目画像WL1内の被写体A1と右目画像WR1内の被写体A1とを同期させながら被写体A1の視差を拡大する調整を行うようにしてもよい。また、左目画像WL1内の被写体A1のみを移動させるようにしてもよい。
ここで、図9に戻り、ステップS109において、飛び出し調整アイコンQ1が操作されていない場合(ステップS109:No)について説明する。この場合、制御部9は、ユーザによって被写体を表示部6の表示画面と直交する方向へ仮想的に引っ込ませる引っ込み調整アイコンQ2(図10(a)を参照)が操作されたか否かを判断する(ステップS115)。引っ込み調整アイコンQ2が操作された場合(ステップS115:Yes)、表示装置1は後述するステップS116に移行する。一方、引っ込み調整アイコンQ2が操作されていない場合(ステップS115:No)、表示装置1は後述するステップS121に移行する。
ステップS115において、ユーザによって被写体を表示部6の表示画面と直交する方向へ仮想的に引っ込ませる引っ込み調整アイコンQ2が操作された場合(ステップS115:Yes)について説明する。この場合、離間距離調整部94は、被写体の視差を所定量縮小する調整を行い(ステップS116)、トリミング部95は、設定部93が設定した被写体を右目画像および左目画像それぞれから切出してトリミング画像を生成する(ステップS117)。
続いて、拡大縮小部96は、離間距離調整部94が調整した被写体の視差と被写体の飛び出し距離とに基づいて、トリミング部95が生成したトリミング画像を縮小した縮小トリミング画像を生成し(ステップS118)、合成画像生成部97は、拡大縮小部96が生成した縮小トリミング画像を被写体の領域に重ねた合成画像を生成する(ステップS119)。
その後、表示制御部98は、合成画像生成部97が生成した合成画像を用いた3D画像を表示部6に表示させる制御を行い(ステップS120)、表示装置1はステップS104に戻る。
図14は、離間距離調整部94が被写体の視差を縮小する調整方法を説明する模式図である。図14に示すように、離間距離調整部94は、立体画像生成部92が生成した右目画像WR1および左目画像WL1にそれぞれ含まれる被写体A1の視差を所定量縮小する調整を行う。具体的には、図14に示すように、離間距離調整部94は、右目画像WR1の被写体A1を視差が小さくなる右方向(矢印C4)に所定量、たとえば視差の1/10移動させる。これにより、ユーザは、被写体A1の飛び出し距離を個別に小さくする調整を行うことができる。しかしながら、ユーザは、仮想的に視認する3D画像内での被写体A1と被写体A2との奥行き感のバランスが崩れることで違和感を生じる。さらに、上述したステップS110と同様に画素が欠落する欠落領域H2(図14で黒塗りの領域)が生じる。
そこで、図15に示すように、トリミング部95が、被写体A1を右目画像WR1および左目画像WL1それぞれから切出してトリミング画像A13を生成する(図15(b)を参照)。その後、拡大縮小部96が、離間距離調整部94によって調整された被写体A1の視差と被写体A1の飛出し距離とに基づいて、右目画像WR1および左目画像WL1のトリミング画像A13をそれぞれ縮小したトリミング画像A14を生成し、合成画像生成部97が、拡大縮小部96によって生成された縮小トリミング画像A14を被写体A1の領域を含むように重ねるとともに、欠落領域H2の画素を周知の補間処理によって領域Y1(図15の点線の領域)を補間した右目合成画像WR3および左目合成画像WL3を生成する(図15(c))。続いて、表示制御部98が右目合成画像WR3および左目合成画像WL3を用いて3D画像(図16の画像W5を参照)を表示部6に表示させる制御を行う。なお、合成画像生成部97が欠落領域H2に対して行う補間処理は、被写体A1の明るさに比して低い画像および/またはぼかした画像で領域Y1を補間してもよい。
図17は、離間距離調整部94が被写体の視差を縮小する調整前と調整後にユーザが仮想的に視認する3D画像の飛び出し距離の概要を説明する図である。図17において、B2は瞳孔間距離であり、たとえば6.5cmである。Z0は、表示部6からユーザの目O1,O2までの距離(視距離)であり、たとえば40cmである。離間距離調整部94による調整前の被写体の視差をX1、3D画像内における被写体の飛び出し距離をΔZ1とすると、図17より、
X1:ΔZ1=B2:Z0・・・(1)
なので、
ΔZ1=(Z0/B2)×X1・・・(2)
となる。
これに対して、離間距離調整部94による調整後の被写体の視差をX2、3D画像内における被写体の飛び出し距離をΔZ2とすると、図17により、
X2:ΔZ2=B2:Z0・・・(3)
なので、
ΔZ2=(Z0/B2)×X2・・・(4)
となる。ここで、離間距離調整部94が調整前の視差X1を、たとえば1/10だけ右目画像を動かした場合、調整後の視差X2が(X1−X1/10)となる。したがって、式(4)より、離間距離調整部94による調整後の被写体の飛び出し距離ΔZ2は、
ΔZ2=(Z0/B2)×(X1−X1/10)・・・(5)
となる。これにより、ユーザは、調整後の被写体を飛び出し距離ΔZ2で仮想的に視認することができる。
さらに、拡大縮小部96による被写体の縮小倍率Vは、たとえば
V=(Z0−ΔZ1)/(Z0−ΔZ2)・・・(6)
で設定される。これにより、拡大縮小部96は、3D画像内での被写体のバランスを保ちながら、被写体を縮小した縮小トリミング画像を生成することができる。なお、式(6)は、あくまでも例示であり、経験則に基づいて式(6)の右辺に係数kを乗じることにより、
V’=k×((Z0−ΔZ1)/(Z0−ΔZ2))・・・(7)
を縮小倍率としてもよい。この場合、V’<1を満たすように係数kが定められることはもちろんである。さらに、式(6)の右辺を二乗したものを縮小倍率としてもよい。また、離間距離調整部94が調整する視差の値は、切換スイッチ43で設定してもよい。さらにまた、上述した被写体の飛び出し距離を大きくする場合および拡大トリミング画像を生成する場合にも同様に行うようにしてもよい。
このように、離間距離調整部94が被写体の視差を縮小することにより被写体の飛び出し距離を小さくし、拡大縮小部96が被写体の飛び出し距離に応じて被写体を縮小した縮小トリミング画像を生成する。これにより、図16に示すように、ユーザは、タッチした被写体の飛び出し距離を小さくすることができるとともに、3D画像W5内での被写体間の大きさのバランスを維持した3D画像を仮想的に視認することができる。
図9に戻り、ステップS107において、タッチパネル7が入力を受け付けた信号によって被写体が指定されていない場合(ステップS107:No)について説明する。この場合、制御部9は、離間距離調整部94が調整した被写体の視差を初期の状態に戻す変更指示信号が入力される戻すアイコンQ3(図10(a)を参照)が操作されたか否かを判断する(ステップS121)。戻すアイコンQ3が操作されていない場合(ステップS121:No)、表示装置1はステップS104に戻る。一方、戻すアイコンQ3が操作された場合(ステップS121:Yes)、離間距離調整部94は、被写体の視差を初期の状態に調整し(ステップS122)、表示装置1はステップS104に戻る。
ステップS104において、ユーザによってレリーズスイッチ42が操作されて撮影を指示するレリーズ信号が入力された場合(ステップS104:Yes)について説明する。この場合、表示装置1は、表示部6が現在表示している画像に対して撮影を行い、撮影した画像データを記憶部8の画像データ記憶部81に記憶する(ステップS123)。
続いて、表示制御部98は、撮影した画像データに対応する3D画像を表示部6にレックビュー表示させ(ステップS124)、制御部9は、表示部6による撮影した画像のレックビュー表示を行ってから所定時間経過したか否かを判断する(ステップS125)。制御部9が判断した結果、表示部6による撮影した画像のレックビュー表示を行ってから所定時間経過していない場合(ステップS125:No)、表示装置1はステップS124に戻る。一方、制御部9が判断した結果、表示部6による撮影した画像のレックビュー表示を行ってから所定時間経過した場合(ステップS125:Yes)、表示装置1はステップS101に戻る。
ステップS102において、表示装置1が撮影モードに設定されていない場合(ステップS102:No)について説明する。この場合、表示装置1は、撮影した画像データを表示部6に表示する再生表示処理を実行し(ステップS126)、表示装置1はステップS101に戻る。
ここで、図9のステップS126の再生表示処理について説明する。図18は、再生表示処理の概要を示すフローチャートである。図18において、まず、表示制御部98は、画像データ記憶部81に記憶された複数の画像をまとめて表示した画像選択画面を表示部6に表示させる(ステップS201)。
続いて、制御部9は、ユーザがタッチパネル7をタッチすることによって表示部6が表示する画像選択画面の中から画像が選択されたか否かを判断する(ステップS202)。ユーザによって画像選択画面の中から画像が選択された場合(ステップS202:Yes)、表示装置1は後述するステップS203に移行する。一方、ユーザによって画像選択画面の中から画像が選択されない場合(ステップS202:No)、表示装置1は後述するステップS206に移行する。
まず、ユーザによって画像選択画面の中から画像が選択された場合(ステップS202:Yes)について説明する。この場合、表示制御部98は、ユーザによって選択された3D画像を表示部6に全画面表示させ(ステップS203)、ユーザによって画像の切換操作が行われたか否かを判断する(ステップS204)。ユーザによって画像の切換操作が行われた場合(ステップS204:Yes)、表示制御部98は、現在表示部6が表示している3D画像の切換えを行い(ステップS205)、表示装置1はステップS203に戻る。
これに対して、ユーザによって画像の切換操作が行われていない場合(ステップS204:No)、制御部9は、画像再生の終了操作が行われたか否かを判断する(ステップS206)。画像再生の終了操作が行われていない場合(ステップS206:No)、表示装置1はステップS201に戻る。一方、画像再生の終了操作が行われた場合(ステップS206:Yes)、表示装置1は図9に示したメインルーチンに戻る。
以上説明した本実施の形態では、設定部93がタッチパネル7によって指定された被写体の被写体領域を調整領域として設定し、離間距離調整部94がタッチパネル7による変更指示信号に応じて被写体の視差を調整し、表示制御部98が離間距離調整部94によって被写体の視差を調整された右目画像および左目画像を用いた3D画像を表示部6に表示させる。この結果、ユーザは、3D画像に含まれる所望の被写体の飛び出し感または引っ込み感をそれぞれ個別に調整することができる。
さらに、本実施の形態では、トリミング部95が、タッチパネル7が入力を受け付けた信号によって指定された被写体を右目画像および左目画像それぞれから切出してトリミング画像を生成し、拡大縮小部96が拡大または縮小して拡大トリミング画像または縮小トリミング画像を生成後、合成画像生成部97が被写体の領域に拡大トリミング画像または縮小トリミング画像を重ねて右目合成画像および左目合成画像をそれぞれ生成し、表示制御部98が合成画像生成部によって生成された右目合成画像および左目合成画像を用いた3D画像を表示部6に表示する。これにより、ユーザは、3D画像内における被写体間の大きさのバランスを維持しつつ滑らかな3D画像を仮想的に視認することができる。
以上の説明では、表示部3が表示する3D画像内における被写体A1の離間距離を調整する場合を例示していたが、3D画像内における被写体A2の離間距離も調整することができる。図19は、離間距離調整部94が被写体A2の視差を拡大する調整方法を説明する模式図である。図19に示すように、離間距離調整部94は、立体画像生成部92が生成した右目画像WR1および左目画像WL1それぞれに含まれる被写体A2の視差を所定量拡大する調整を行う。具体的には、図19に示すように、離間距離調整部94は、右目画像WR1の被写体A2を視差が大きくなる左方向(矢印C5)に所定量を移動させる。これにより、ユーザは、被写体A2の飛出し距離を個別に大きくする調整を行うことができるが、離間距離調整部94が右目画像WR1の被写体A2を移動させたことで右目画像WR1内に画素が欠落する欠落領域H3(図19の黒塗り領域)が生じる。
そこで、図20に示すように、トリミング部95が、被写体A2を右目画像WR1および左目画像WL1それぞれから切出してトリミング画像を生成し、拡大縮小部96が離間距離調整部94によって調整された被写体A2の視差と被写体A2の飛び出し距離とに基づいて、右目画像WR1および左目画像WL1の被写体A2をそれぞれ拡大した拡大トリミング画像A21を生成する。その後、合成画像生成部97が拡大縮小部96によって生成されたトリミング画像A21を被写体A2の領域を含むように重ねた右目合成画像WR4および左目合成画像WL4を生成する。続いて、表示制御部98が右目合成画像WR4および左目合成画像WL4を用いて3D画像(図21の画像W6を参照)を表示部6に表示させる制御を行う。
さらに、図22に示すように、離間距離調整部94は、立体画像生成部92が生成した右目画像WR1および左目画像WL1それぞれに含まれる被写体A2の視差を所定量縮小する調整を行う。具体的には、図22に示すように、離間距離調整部94は、右目画像WR1の被写体A2を視差が小さくなる右方向(矢印C6)に所定量移動させる。これにより、ユーザは、被写体A2の飛び出し距離を個別に小さくする調整を行うことができるが、ユーザが仮想的に視認する3D画像内での被写体A1と被写体A2との奥行き感のバランスが崩れることで違和感を生じる。さらに、上述したステップS122と同様に画素が欠落する欠落領域H4(図22の黒塗り領域)が生じる。
そこで、図23に示すように、トリミング部95が右目画像WR1および左目画像WL1それぞれから被写体A2を切出してトリミング画像を生成し、拡大縮小部96が離間距離調整部94によって調整された被写体A2の視差と被写体A2の飛び出し距離とに基づいて、右目画像WR1および左目画像WL1それぞれのトリミング画像を縮小した縮小トリミング画像A22を生成する。その後、合成画像生成部97が拡大縮小部96によって生成された縮小トリミング画像A22を被写体A2の領域に重ねるとともに、欠落領域H4の領域を周知の補間処理によって領域Y2を補間した右目合成画像WR5および左目合成画像WL5を生成し、表示制御部98が右目合成画像WR5および左目合成画像WL5を用いた3D画像(図24の画像W7を参照)を表示部6に表示させる制御を行う。
このように、ユーザは、表示部6が表示する3D画像に対し、タッチした被写体A2の飛び出し距離を調整することができるとともに、滑らかな3D画像を仮想的に視認することができる。
なお、本実施の形態では、表示部6が表示する3D画像上に設けられた奥行アイコンが操作されることにより、離間距離調整部94が指定された3D画像内の被写体の視差を調整していたが、他のスイッチが操作されることにより被写体の視差を調整するようにしてもよい。図25は、本発明の一実施の形態に係る表示装置の変形例においてユーザが3D画像内における被写体の視差の調整を行っている状況を示す図である。図25に示すように、表示装置1は、レンズユニット100を備える。レンズユニット100は、表示装置1の本体部から着脱可能であり、異なる位置から撮影し、互いの視差の左右方向の一端部同士が重なりを有する2つの撮影部101と、設定部93が設定した調整領域の離間距離を変更する変更指示信号の入力を受け付ける入力部102とを有する。離間距離調整部94は、入力部102の操作時間または操作量に応じて、タッチパネル7によって指定された被写体の視差を調整する。これにより、ユーザは、機械的な操作を楽しみながら3D画像内における所望の被写体の離間距離を調整することができる。さらに、離間距離調整部94は、ズームスイッチ44による操作信号に応じて、タッチパネル7によって指定された被写体の視差を調整するようにしてもよい。
また、上述した本実施の形態では、拡大縮小部96は、離間距離調整部94がタッチパネル7によって指定された被写体の視差を小さくする場合に、トリミング画像を縮小した縮小トリミング画像を生成していたが、たとえばトリミング画像を拡大したトリミング画像を生成してもよい。
また、上述した本実施の形態では、設定部93は、表示部6が表示する3D画像に対し、ユーザがタッチした被写体を調整領域として設定していたが、たとえば、タッチパネル7が外部から接触した物体の軌跡に応じて調整領域を設定してもよい。これにより、ユーザは、3D画像内における所望の領域の離間距離を調整することができる。
また、上述した本実施の形態では、離間距離調整部94は、タッチパネル7によって被写体が指定された後に、被写体の視差を調整していたが、たとえば奥行アイコンが操作された後に、ユーザが3D画像内における被写体をタッチした際に被写体の視差を調整するようにしてもよい。
また、上述した本実施の形態では、撮像部2が互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成していたが、たとえば、1つの撮像部のみを有する構成とし、この撮像部で連続的に撮影することにより、互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成するようにしてもよい。具体的には、図26に示すように、ユーザが表示装置1を左から右に向けて移動(矢印C7)させながら被写体A1を連続的に撮影することにより、互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成するようにしてもよい。
また、上述した本実施の形態では、撮像部2が互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成していたが、たとえば、1つの撮像素子のみを有する構成とし、この1つの撮像素子の撮影領域内に2つの光学系によって集光することにより、互いの視野の左右方向の一端部同士が重なりを有する2つの画像データを生成するようにしてもよい。
また、上述した本実施の形態では、姿勢検出部3は、表示装置1の姿勢状態を検出していたが、たとえば、ユーザが表示部6の表示画面をタップした際に生じる加速度を検出することにより、表示装置1の各種撮影モードや各種設定を切換えるタップ操作の操作信号を受け付け、この操作信号を制御部9に出力するようにしてもよい。
また、上述した本実施の形態では、離間距離調整部94は、撮影中に本処理を行っていたが、たとえば撮影直後に表示部6がレックビュー表示する画像や画像データ記憶部81に記憶された画像データを再生した際の画像に対して本処理を行ってもよい。
また、上述した本実施の形態では、表示部6は、パララックバリア方式であったが、ユーザが3D画像を立体視することができればよく、たとえばレンティキュラ方式であってもよい。
また、上述した本実施の形態では、表示装置1をデジタルステレオカメラとして説明していたが、たとえばデジタルビデオカメラ、カメラ付き携帯電話等の撮影機能および表示機能を備えた各種電子機器に適用することができる。
上述した課題を解決し、目的を達成するために、本発明に係る表示装置は、2つの画像データを組み合わせて生成された3次元画像を表示する表示部と、前記表示部が表示する前記3次元画像の中で前記表示部の表示画面と直交する方向へ仮想的に離間した離間距離を調整する調整領域を選択する設定部と、前記設定部が選択した前記調整領域における前記離間距離の変更を指示する変更指示信号の入力を受け付ける入力部と、前記入力部が受け付けた前記変更指示信号に応じて前記調整領域の前記離間距離を調整する離間距離調整部と、前記離間距離調整部によって前記調整領域の離間距離が調整された前記2つの画像データを用いた3次元画像を前記表示部に表示させる制御を行う表示制御部と、を備えたことを特徴とする。
また、本発明に係る表示装置は、上記発明において、前記入力部は、前記3次元画像内において被写体を指定する指定信号の入力を受け付け、前記設定部は、前記2つの画像データに含まれ、前記入力部が受け付けた前記指定信号によって指定された被写体を表示する領域を前記調整領域として選択し、前記離間距離調整部は、前記2つの画像データにおける前記指定された被写体の視差を調整し、前記表示制御部は、前記離間距離調整部が前記指定された被写体の視差を調整した前記2つの画像データを用いた3次元画像を前記表示部に表示させる制御を行うことを特徴とする。
また、本発明に係る表示装置は、上記発明において、前記入力部は、前記表示部の表示画面上に設けられ、外部からの物体の接触位置に応じた信号の入力を受け付けるタッチパネルを有し、前記設定部は、前記2つの画像データに含まれ、前記タッチパネルが入力を受け付けた信号によって指定された被写体を表示する領域を前記調整領域として選択することを特徴とする。
離間距離調整部94は、画像処理部91によって画像処理された右目画像データおよび左画像データそれぞれに含まれ、タッチパネル7が入力を受け付けた調整領域の離間距離を変更する変更指示信号に応じて設定部93が選択した調整領域の離間距離を調整する。具体的には、離間距離調整部94は、タッチパネル7が入力を受け付けた信号によって指定された被写体の視差を、タッチパネル7が入力を受け付けた離間距離の変更を指示する変更指示信号に応じて調整する。
これに対して、図7(b)に示すように、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体A1の一部をタッチした場合、右目画像WR1の被写体A1と左目画像WL1の被写体A1とを重ねることにより、画像W2内で重ならない領域の画像を背景画像として特定し、画像W2内で重なる領域を3D画像内に含まれる被写体A1の被写体領域として特定する。これにより、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体A1の一部をタッチした場合、被写体A1の被写体領域を調整領域として選択することができる。
このように、設定部93は、ユーザが表示部6によって表示される3D画像内における被写体の一部をタッチした場合、立体画像生成部92が生成する右目画像および左目画像に基づいて、3D画像に含まれる被写体の被写体領域を特定し、特定した被写体領域を調整領域として選択する。なお、設定部93は、立体画像生成部92が生成する右目画像および左目画像それぞれに含まれる被写体を重ねる場合、たとえばパターンマッチング等により被写体の顔領域を検出し、この検出した顔領域を基準として被写体の領域を重ねることにより、3D画像に含まる被写体の被写体領域を特定するようにしてもよい。さらに、設定部93は、コントラストおよび/またはピントが最大値となる位置を基準として被写体の領域を重ねることにより、3D画像に含まれる被写体の被写体領域を特定するようにしてもよい。
ステップS115において、ユーザによって被写体を表示部6の表示画面と直交する方向へ仮想的に引っ込ませる引っ込み調整アイコンQ2が操作された場合(ステップS115:Yes)について説明する。この場合、離間距離調整部94は、被写体の視差を所定量縮小する調整を行い(ステップS116)、トリミング部95は、設定部93が選択した被写体を右目画像および左目画像それぞれから切出してトリミング画像を生成する(ステップS117)。
なお、本実施の形態では、表示部6が表示する3D画像上に設けられた奥行アイコンが操作されることにより、離間距離調整部94が指定された3D画像内の被写体の視差を調整していたが、他のスイッチが操作されることにより被写体の視差を調整するようにしてもよい。図25は、本発明の一実施の形態に係る表示装置の変形例においてユーザが3D画像内における被写体の視差の調整を行っている状況を示す図である。図25に示すように、表示装置1は、レンズユニット100を備える。レンズユニット100は、表示装置1の本体部から着脱可能であり、異なる位置から撮影し、互いの視差の左右方向の一端部同士が重なりを有する2つの撮影部101と、設定部93が選択した調整領域の離間距離を変更する変更指示信号の入力を受け付ける入力部102とを有する。離間距離調整部94は、入力部102の操作時間または操作量に応じて、タッチパネル7によって指定された被写体の視差を調整する。これにより、ユーザは、機械的な操作を楽しみながら3D画像内における所望の被写体の離間距離を調整することができる。さらに、離間距離調整部94は、ズームスイッチ44による操作信号に応じて、タッチパネル7によって指定された被写体の視差を調整するようにしてもよい。