図1に示すように、本発明による撮像装置(以下、3Dカメラと言う)10は、略直方体形状のカメラ本体11を有する。カメラ本体11の前面に、左視点画像撮像用のレンズ12と右視画像撮像用のレンズ13、ストロボ発光部14が設けられる。カメラ本体11の上面には、シャッタボタン15、電源ボタン16が設けられている。カメラ本体11の右手グリップ側の側面には、画像データが記憶されるメモリカード17を着脱自在に装填するスロット(図示せず)が設けられ、撮像して得られた画像データはメモリカード17に記録して保存される。
図2に示すように、カメラ本体11の背面には、被写体画像を立体的に観察することができる3D表示装置18が設けられている。この3D表示装置18は、ライブビュー画像(スルー画像ともいう)やメモリカード17から読み出した再生画像などを立体表示する立体画像表示部となる。立体画像の表示には、レンチキュラー方式、視差バリア方式、パララックスバリア方式、アナグリフ方式、フレームシーケンシャル方式、ライトディレクション方式など様々な方式を用いることができるが、本実施形態では、レンチキュラー方式の3D表示装置18が用いられている。
レンチキュラー方式では、例えばこの3Dカメラ10で撮像した左右一対の視点画像データに基づいてデータ処理が行われる。このデータ処理により、左右一対の視点画像データから、さらに左右方向に少しずつ視点を異ならせた複数の仮想視点画像データが作成される。こうして得られた複数の視点画像データごとに縦長短冊状の視点画像が生成され、これらの視点画像は一定ピッチで3D表示装置18の液晶パネルに表示される。これらの視点画像は、液晶パネルの前面に一体化されたレンチキュラーレンズシートを通して観察すると、立体画像として観察される。
カメラ本体11の背面側には、さらに撮像モードと再生モードの選択を行う撮像再生モード選択ボタン29、被写体選択部として機能する十字キー20、視差量の自動調整・手動調整・オフを選択する視差調整モード設定ボタン21、手動調整時に視差量を増減する「+」ボタン22、「−」ボタン23が設けられている。
十字キー20は、3D表示装置18の表示画面19にメニー表示が行われている際に適宜の項目選択を行うときに操作され、また表示画面19に表示されている複数の被写体の中から視差量の調整対象となる被写体を選択する際に、被写体選択回路67に入力操作を行う被写体選択部としても用いられる。また、「+」ボタン22、「−」ボタン23のそれぞれも、様々な撮像条件や初期設定を行うときの増減ボタンとして用いられるほか、選択した被写体の視差量を増減するときの視差量調整部の入力部としても用いられる。
3Dカメラ10の電気的構成を示す図3において、左視点画像の撮像用にレンズ12とシャッタ41とイメージセンサ43とを備えた左視点カメラ36と、右視点画像の撮像用にレンズ13とシャッタ42とイメージセンサ44とを備えた右視点カメラ37とが設けられている。イメージセンサ43,44にはCCD型イメージセンサ(以下、CCD)が用いられているが、MOS型センサなど他の固体撮像素子を用いてもよい。
CCD43,44からの撮像信号は、CDS回路45,46、アンプ47,48、AD変換器49,50を通してデータバス51に入力される。なお、視差画像を新たに撮像する場合には、左・右視点カメラ36,37が視差画像取得部となるが、メモリカード17に記録された視差画像データを読み込んでから立体画像の再生を行う際には、メディアコントローラ60が視差画像取得部となる。
データバス51には、メディアコントローラ60、CPU61及び画像処理装置62を構成する複数の回路等が接続される。また、画像信号処理回路52、圧縮伸長処理回路53、AE/AF処理回路54、ROM55、RAM56、SDRAM57、3D画像生成回路58、視差量調整回路40、被写体選択回路67、視差情報取得回路68、アシストウィンドウ表示回路69、3D表示装置18の液晶パネルを制御するLCDドライバ59がデータバス51に接続され、CPU61とともに画像処理装置62を構成する。CPU61は、ROM55に記憶されたシーケンスプログラムをワークメモリであるRAM56に読み出して実行する。
左視点カメラ36と右視点カメラ37で視差画像を撮像する際の様子を示す図4Aにおいて、各カメラの光軸36a,37aは輻輳角θでカメラ本体11から例えば5mの位置で交差している。このため、各々の光軸の交差位置付近の被写体は互いにほとんど視差がない状態で撮像される。なお、光軸36a,37aは必ずしも一定距離で交差させる必要はなく、視差量の算出におけるデータ処理で対応すれば光軸36a,37aは平行であっても構わない。
図示のような被写体配置で樹木被写体27と人物被写体28を左視点カメラ36と右視点カメラ37で撮像すると、図4Bに示す左視点画像36Lと図4Cに示す右視点画像37Rが得られる。符号Pはそれぞれの画面中心を示し、符号25はAF(オートフォーカス)エリアを示す。こうして撮像された左視点画像36Lと右視点画像37Rはそれぞれ画像データに変換され、画像信号処理回路52によって階調変換、γ補正処理などの各種画像処理が施され、それぞれSDRAM57に記録される。
これらの画像データをSDRAM57から読み出し、視差情報取得回路68でデータ処理することにより、各被写体27,28の視差量を算出することができる。左視点画像36Lでは、樹木被写体27と人物被写体28とは画面中心Pに対してL1,L2の視差がある。また、右視点画像37Rでは樹木被写体27と人物被写体28とは画面中心Pに対してR1,R2の視差がある。左視点画像36Lでは、画面中心Pから左方に向かう視差の方向がマイナス視差、画面中心Pから右方に向かう視差がプラス視差である。右視点画像37Rでは、画面中心Pから右方に向かう視差がマイナス視差、画面中心Pから左方に向かう視差がプラス視差である。左視点画像36Lと右視点画像37Rの視差画像に関してそれぞれの被写体27,28の視差量を比較すると、樹木被写体27の視差量は「−L1+R1」、人物被写体28の視差量は「−L2+R2」となり、樹木被写体27は略「0」てあり、人物被写体28はプラスの視差量をもつ。
また、3D画像生成回路58は、SDRAM57に記録された左視点画像データと右視点画像データに基づいてさらに左右方向に細分された仮想の多視点画像データを生成する。多視点画像データは、観察時に視点位置をずらしたときに補間的に観察される視点画像となり、立体画像を滑らかに表示することができるようになる。このようなデータ処理に際しては、視差情報取得部となる視差情報取得回路68が論理演算処理を実行し、左右の視点画像データに基づいて被写体ごとに左右の視差量が求められ、また被写体相互間の視差量の差分データなどの情報が求められる。
こうして作成された多視点画像データのそれぞれからは縦長の短冊状の視差画像が再生され、LCDドライバ59からアナログ変換された表示信号として3D表示装置18の液晶パネルに入力される。これにより、液晶パネルには縦長の短冊状をした多数の視差画像が一定ピッチで配列して表示される。これらの多視点画像を、極細の縦長シリンドリカルレンズを水平方向に一定ピッチで配列したレンチキュラーレンズシートを通して観察することによって、3D表示装置18の表示画面19に立体画像を見ることができる。
左視点カメラ36及び右視点カメラ37からは一定のフレームレートで順次に撮像信号が出力され、その都度、SDRAM57には上述した左視点画像データと右視点画像データとの書き換えが行われる。そして、左視点画像データと右視点画像データとが書き換えられるごとに、視差情報取得回路68による各被写体の視差情報の取得、3D画像生成回路58により多視点画像データの生成処理、そして多視点画像データによる新たな視差画像の表示が行われるから、3D表示装置18にはライブビュー画像の立体表示が行われるようになる。
圧縮伸長処理回路53は、3Dカメラ10で撮像した視差画像の画像データを保存するときに作動する。シャッタボタン15を押圧して視差画像の記録操作を行うと、圧縮伸長処理回路53は、記録操作直後に左視点カメラ36及び右視点カメラ37から出力された撮像信号から得られる左視点画像データと右視点画像データに対し、所定の圧縮形式(例えばJPEG形式)で画像圧縮を施す。こうしてデータ圧縮された左視点画像データ及び右視点画像データは、メディアコントローラ60を経由して相互の関連情報とともにメモリカード17に記録され保存される。
AE/AF処理回路54は、左視点カメラ36及び右視点カメラ37のそれぞれから得られる画像データに基づいて露光量の調節とピント合わせを自動的に行う。ピント合わせは画面の中央部に設けられたAFエリア25内の被写体を対象にしてピント合わせを行う。ピントが合っているか否かはAE/AF処理回路54によって行われ、ピントが合っていなければCPU61からドライバ63にピント合わせコマンドが送られ、レンズ12,13のピント合わせが行われる。
CPU61にはドライバ63,64が接続され、レンズ12,13のピント合わせやズーミング、そしてシャッタ41,42の開閉に用いられるステッピングモータ(図示省略)をCPU61からのコマンドによって制御することができる。CPU61には、さらにストロボ回路66が接続されストロホ発光部14の発光制御を行うことができる。シャッタボタン15、電源ボタン16、十字キー20及び視差量の調整を可能にする視差量調整モード設定ボタン21、「+」ボタン22、「−」ボタン23からの操作信号はそれぞれCPU61に入力され、CPU61は各々の操作信号の入力に応答して対応する各部を作動させる。
撮影再生モード選択ボタン29は、3Dカメラ10を撮像装置として用いるか再生装置として用いるかを選択するためのものである。撮像装置が選択されたときには、上述のように左視点カメラ36と右視点カメラ37で撮像される左視点画像と右視点画像の画像データを記録することができる。記録はシャッタボタン15を操作したときに行われ、シャッタボタン15が操作されるまでは3D表示装置18により3D表示のライブビュー画像を観察することができる。再生モード下では、3Dカメラ10の内部メモリあるいはメモリカード17から読み出した視差画像データに基づく立体画像の観察が可能である。
視差量調整モード選択ボタン21は、3D表示装置18の表示画内19に表示されている被写体の中で、視差量の調整対象となる被写体が選択されたときに視差量も自動的に調整される自動調整モードと、視差量の調整対象となる被写体が選択された後に視差量を任意に調整できる手動調整モードとのいずれかを選択するときに操作される。なお、無操作時には視差量の調整オフ状態で、ピント合わせの対象となっているオートフォーカスエリア内の被写体を視差量ゼロの被写体として処理する。この視差量調整モード選択ボタン21は、一回の押圧操作ごとに「自動調整・手動調整・オフ」の順に循環してモード設定される。
以下、上記構成による作用について説明する。通常のライブビュー画像が表示されているときには、図5に示す3D表示装置18の表示画面19上にアシスト画面24は表示されておらず、例えば表示画面19の全体が立体画像の表示に用いられている。図示のように、画面中心Pを含む画面中央部にはAFエリア25が設定されているから、ピント合わせは樹木被写体27に対して行われている。また、視差量の調整対象となる被写体を選択するときの選択マークとなるフレームマーク26の初期位置がAFエリア25と重なっていることから、図示の状態では樹木被写体27が視差量「0」で撮像される。
このライブビュー画像では、人物被写体28の立体画像は樹木被写体27の手前側に位置しているように立体表示されている。このため、観察時の視点位置が左右にわずかに移動したとき、視差量ゼロの樹木被写体27は奥行き方向に関して表示画面19上であるのでほとんど移動しない。これに対し、人物被写体28はその画像再生位置が表示画面19の手前側に浮いて表示されているため視点が移動すると左右に大きく動きやすく、人物被写体28が主要被写体である場合には非常に観察しにくい状態になっている。
そこで、人物被写体28の視差量を小さくして観察しやすくするには、図7のフローチャートに示すように、視差量調整モード選択ボタン21を操作して視差量調整モードに移行する。この移行操作と同時に、アシストウィンドウ表示回路69が作動して表示画面19の右下エリアには視差量グラフ表示部となるアシストウィンドウ24が現れる。アシストウィンドウ24の表示エリアに関しては、ライブビュー画像の立体画像表示用の視差画像ではなく、二次元グラフ表示用の単視点画像が表示されるため、3D表示装置18のレンチキュラーレンズシート越しに二次元表示のグラフが観察される。
図6に示すように、アシストウィンドウ24の二次元グラフ30には、視差量「0」を表す横軸(距離情報軸)の上下を挟んで適正視差量範囲の上限と下限を表すライン表示31,32が表示される。また、有限の被写体距離範囲内の被写体として、樹木被写体27と人物被写体28が3Dカメラ10によって識別され、これらの被写体を表す識別マーク33,34は、それぞれの被写体距離に応じて距離情報軸に沿う座標位置に離間して表示される。
ここで、樹木被写体27を表す識別マーク33は視差量「0」であるから横軸上に表示され、人物被写体27を表す識別マーク34はプラス方向の視差量をもつ位置に表示されている。なお、表示画面19上での奥行き方向の表示位置に関しては、表示画面19の表面が視差量「0」に相当し、プラス視差量をもつ被写体はプラスの度合に応じて表面よりも手前側に飛び出して観察され、マイナス視差量をもつ被写体はマイナスの度合に応じて表面よりも奥側に観察される。
図6に示すように、樹木被写体27を表す識別マーク33は視差量「0」の位置に表示されているのに対し、人物被写体28を表す識別マーク34はライン表示31よりも上方に表示され、プラス方向の視差量が大き過ぎて立体画像の観察には不向きであることが示されている。このため、識別マーク34の脇には下方修正すべきことを促す誘導マーク35が表示される。
視差量調整モード選択ボタン21の一回押圧では、自動調整モードが選択された状態となっている。自動調整モードに移行した後、十字キー20を操作してフレームマーク26をAFエリア25から動かして所望の被写体の上に合わせて被写体選択を行う。図5に示す表示画面19では、AFエリア25内の樹木被写体27に対してピント合わせが行われ、視差量は表示画面19内の被写体の中で最も小さい。
視差量調整モードに移行した時点から一定時間経過しても被写体の選択操作が行われないと、視差量が最小の被写体が視差量調整の対象となる被写体として自動選択され、識別マーク33が点滅表示して他の識別マークに対して顕在化表示される。そして、樹木被写体27が予め設定された視差量「0」に自動設定されるから、実際には視差量の調整は行われず、以前のライブビュー画像の表示が継続される。なお、自動設定される視差量としては、必ずしも「0」でなくてもよく、例えば表示画面19の表面から、画面水平方向長さの0.5%程度飛び出したイメージになる視差量を標準的に設定しておいてもよい。
タイムアウト前にフレームマーク26を人物被写体28に合わせると、人物被写体28が視差量の調整対象として選択され、識別マーク34が目立つように点滅表示される。自動調整モードであれば、視差量調整回路67によって人物被写体28はプラス方向の視差量をもった状態から視差量「0」に自動的に調整される。同時に視差量調整回路67は、元々は視差量「0」であった樹木被写体27はマイナス方向の視差量に自動調整される。この結果、アシストウィンドウ24は、図6に示す表示態様から図8に示す表示態様に変わり、識別マーク34は視差量「0」の位置に移動し、識別マーク33はマイナス視差量となる領域に移動表示される。
なお、人物被写体28と樹木被写体27とは同一の被写体距離ではないから、人物被写体28の視差量の調整量と、樹木被写体27の視差量の調整量とは通常では異なってくる。これらの被写体距離情報は、ライブビュー画像を撮像している間のデータ処理によって視差情報取得回路68で取得される視差情報に基づいて求めることができる。したがって、両者間の相対視差量あるいは相対的な被写体距離の差分に応じ、視差量調整回路67によって一方の視差量の調整時には他方の視差量も自動的に調整される。
そして3D画像生成回路58は、調整後の視差量情報を取り込み、SDRAM57から読み出した左右の視点画像データに対して人物被写体28を視差量「0」にするデータ処理を行ってから生成する。3D表示装置18には調整後の多視点画像データによる視差画像が表示されるから、人物被写体28が奥行き方向に関して表示面に位置するようにライブビュー画像が立体表示される。この結果、人物被写体28は観察しやすくなるが、遠景となる樹木被写体27がマイナス方向の視差量が大きくなって、両眼で立体観察することが困難になる。こうした場合、視差量の手動調整モードが効果的に用いられる。
図7に示すフローチャートにおいて、手動調整モードが設定されているときには、図6に示すアシストウィンドウ24の中で識別マーク34が点滅表示され、視差量の調整対象として選択されている人物被写体28に対する視差量調整操作の入力待ちとなる。樹木被写体27の識別マーク33は視差量「0」の位置に表示されているが、人物被写体28を表す識別マーク34は視差量の適正範囲からプラス方向に外れているので、識別マーク34の脇には視差量を減らす向きの誘導マーク35も表示される。
誘導マーク35の指示に従い、「−」ボタン23を押圧操作するごとに識別マーク34が下方に移動し、また識別マーク33も下方へと移動する。同時に視差量調整回路67は、「−」ボタン23からの押圧操作に応じて視差量の調整を行う。樹木被写体27の方が人物被写体28よりも被写体距離が大きいので、識別マーク33の移動量は識別マーク34の移動量よりも一般に小さくなる。視差量の調整対象となっている識別マーク34が、図9に示すようにライン表示31と重なる位置まで移動してくると誘導マーク35が消え、人物被写体28の視差量が適正範囲になったことを報知する。
アシストウィンドウ24に図9に示す二次元グラフ30が表示された状態では、人物被写体28とともに樹木被写体27も視差量として適正な範囲に収まっている。3D表示装置18の表示画面19を観察すると、人物被写体28は表示面よりもわずかに手前に飛び出した状態で観察され、また樹木被写体27は表示面よりも奥側で観察されるように表示される。3D画像生成回路58は、この視差量調整データを踏まえて多視点画像データを生成して3D表示装置18に視差画像を表示するから、人物被写体28と樹木被写体27とが奥行き方向に適度な立体感をもって観察されるようになる。
樹木被写体27について視差量を再調整する場合には、十字カーソル20を操作してフレームマーク26を再び樹木被写体27に合わせる。これにより、図9に示すアシストウィンドウ24で樹木被写体27の識別マーク33が点滅し、「+」ボタン22,「−」ボタン23の操作に応じて視差量調整回路40を作動させ、樹木被写体27の視差量を調整することができる。なお、樹木被写体27の視差量調整と同時に人物被写体28の視差量も調整されるから、アシストウィンドウ24では識別マーク33と同じ移動量ではないが識別マーク34も同方向に移動表示される。
視差画像の中に、樹木被写体27,人物被写体28以外の第3被写体が含まれている場合には、表示画面19にも第3被写体が表示されているから、その第3被写体を視差量の調整対象として選択することも可能である。また、視差情報取得回路68は第3被写体についての視差量情報や被写体距離情報も取得しているから、視差量調整モードに移行した時点で表示されるアシストウィンドウ24にも第3被写体を表す別の識別マークがさらに追加表示される。以後は、同様の手順にしたがって視差量の調整が可能となる。
視差量の調整後にシャッタボタン15を操作して視差画像の撮像を行った場合には、SDRAM57には未調整の左視点画像と右視点画像の画像データが格納されるが、これらの画像データとともに視差量の調整データもメタデータとして記録しておけば、再生時にも全く同様に立体画像が観察できる。外部のメモリカード17に保存するときでも、これらの処理は共通に用いることができる。
以上の実施形態では、入力される左右の視点画像はそのまま保存して画像データ処理によって視差量調整した視差画像を得るようにしているが、左視点カメラ36及び右視点カメラ37の輻輳角θが調整できるようにしておき、視差量の調整に複数角θの調整で対応したり加味したりすることもできる。また、被写体を選択し、あるいは視差量の増減を行う際の入力装置としては、3D表示装置18の表面にタッチパネルを積層し、指先やタッチペンによるタッチ操作やドラッグ操作、シフト操作などで行うようにしてもよい。
また、アシストウィンドウ24は、3D表示装置18の表示画面19から離れた位置に独立した表示部として設けてもよい。そして、視差量の調整対象として選択した被写体をわかりやすく表示するためには、実施形態のように識別マークを点滅させる代わりに色を変えることで対応してもよい。さらに、視差量の調整度合は、識別マークの移動長によるアナログ表示であるが、実用的に適正とみなせる視差量範囲に「0」を基準にして±5段階程度のレベルを割り当てておけば、デジタル的な表示も可能となる。なお、二次元グラフにしても、少なくとも視差量軸と距離情報軸との2軸を用いたものであれば、図示した表示形態に限られない。
さらに、以上の実施形態のように左視点カメラ36と右視点カメラ37により左視点画像と右視点画像を得るものであれば、撮像時において視差量「0」に設定した被写体に優先的にピントを合わせることも可能である。また、顔画像の検出機能を備えた撮像装置にあっては、被写画面内から顔画像を自動検索して被写体距離が近い順にフレームマークを移動表示させ、その中から選択した顔画像を視差量の調整対象として自動設定するなどの態様も本発明を実施する上で効果的である。その他にも、選択した被写体が遠距離、あるいは被写界深度外であるような場合には、表示画面19に警告表示を行ってもよい。
以上の実施形態では、左視点カメラ36と右視点カメラ37により左視点画像と右視点画像を得ているが、メモリカード17に記録されたそれぞれの視点画像を読み込んで立体画像の表示を行う画像処理装置にも本発明は全く同様に適用することができる。また、本発明は、以上の実施形態中で効果的に用いられている視差量調整方法としても実施することができる。