説明

デプスマップ出力装置

【課題】被写体の遠近が急激に変化する箇所においても、被写体までの正確な距離を算出することが可能なデプスマップ出力装置を提供する。
【解決手段】被写体像を所定の結像面に結像させる撮影レンズ11と、結像面の近傍に二次元状に配列されたマイクロレンズMLを有するマイクロレンズアレイ12と、複数のマイクロレンズMLの各々に対応して配置される受光素子配列30と、横方向に配列された複数の横レンズ列を選択しその各々について、当該横レンズ列を構成するマイクロレンズMLの各々に対応する受光素子配列30の出力を演算し、当該横レンズ列の中央部のマイクロレンズMLのデフォーカス量すると共に、当該デフォーカス量を二次元状に配列したデータである横由来デプスマップを作成し、同様に縦方向について縦由来デプスマップを作成し、横由来デプスマップと縦由来デプスマップとを合成し最終的なデプスマップを出力する合成処理を実行する制御回路40とを備えるステレオ撮像装置1。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体までの距離の分布情報であるデプスマップを出力するデプスマップ出力装置に関する。
【背景技術】
【0002】
撮影光学系の射出瞳の異なる領域からの光束を個別に扱えるよう構成された撮像装置が知られている(例えば、特許文献1)。このような撮像装置は、マイクロレンズアレイを構成する各々のマイクロレンズの後方に、複数の画素から成る画素配列を配置する構成を採る。このような構成とすることにより、射出瞳の異なる領域からの光束がそれぞれ異なる画素に入射するので、これらの光束を個別に扱うことが可能である。これらの光束を個別に扱うことにより、例えば一度の撮像のみで任意の撮影距離に位置する被写体に焦点が合った画像データを合成することが可能となる。また別の例として、一度の撮像によって視差を有する複数の画像を得ることも可能である。
【0003】
他方、特許文献2には、変形例4として、被写体までの距離の分布情報であるデプスマップを作成する撮像装置が記載されている。この撮像装置は、前述の特許文献1に記載されている撮像装置と同様の手法により、左視点画像と右視点画像を作成する。その後、公知のステレオマッチング処理により2つの画像の位相差を算出し、この位相差に基づいてデプスマップを作成する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−4471号公報
【特許文献2】特開2009−165115号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献2に記載の撮像装置には、被写体の遠近が変化する箇所(例えば近接被写体と背景との境目)の付近において、被写体までの正確な距離を算出できないという問題があった。
【課題を解決するための手段】
【0006】
請求項1に係る発明は、被写体像を所定の結像面に結像させる結像光学系と、結像面の近傍に二次元状に配列された複数の正レンズと、複数の正レンズの各々に対応して当該正レンズの後側に少なくとも3つずつ配置される複数の受光素子であって、少なくとも3つの受光素子のうち少なくとも2つの受光素子は第1方向に並んで配置され、少なくとも3つの受光素子のうち少なくとも2つの受光素子は第1方向とは異なる第2方向に並んで配置される複数の受光素子と、複数の正レンズから、第1方向に配列された複数の第1正レンズ列を選択する第1選択手段と、第1選択手段により選択された複数の第1正レンズ列の各々について、当該第1正レンズ列を構成する正レンズの各々に対応する第1方向に並んだ少なくとも2つずつの受光素子の出力を演算し、当該第1正レンズ列の中央部の正レンズに像が結ばれた被写体までの距離を表す値を算出する第1距離算出手段と、第1距離算出手段により算出された複数の距離を表す値を、当該値に対応する正レンズの位置に応じて二次元状に配列したデータである第1のデプスマップを作成する第1デプスマップ作成手段と、複数の正レンズから、第2方向に配列された複数の第2正レンズ列を選択する第2選択手段と、第2選択手段により選択された複数の第2正レンズ列の各々について、当該第2正レンズ列を構成する正レンズの各々に対応する第2方向に並んだ少なくとも2つずつの受光素子の出力を演算し、当該第2正レンズ列の中央部の正レンズに像が結ばれた被写体までの距離を表す値を算出する第2距離算出手段と、第2距離算出手段により算出された複数の距離を表す値を、当該値に対応する正レンズの位置に応じて二次元状に配列したデータである第2のデプスマップを作成する第2デプスマップ作成手段と、第1のデプスマップと第2のデプスマップとを合成し第3のデプスマップを出力する合成処理を実行するデプスマップ出力手段とを備え、複数の正レンズの各々に対応する、第1方向に並んだ少なくとも2つずつの受光素子と第2方向に並んだ少なくとも2つずつの受光素子とは、当該正レンズを介して、結像光学系の射出瞳の異なる領域からの光束をそれぞれ受光することを特徴とするデプスマップ出力装置である。
【発明の効果】
【0007】
本発明によれば、被写体の遠近が変化する箇所の付近においても、被写体までの正確な距離を表す値を算出することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の第1の実施の形態によるステレオ撮像装置の構成を示す図である。
【図2】制御回路40による横選択機能を説明するための模式図である。
【図3】デフォーカス量の算出に用いる信号列を説明する図である。
【図4】位相差を演算する様子を示す図である。
【図5】横由来距離算出機能および縦由来距離算出機能によりデフォーカス量が算出されるマイクロレンズMLを示す図である。
【図6】最終的に出力されるデプスマップの範囲を示す図である。
【図7】横由来デプスマップにおけるデフォーカス量について説明する図である。
【発明を実施するための形態】
【0009】
(第1の実施の形態)
図1は、本発明の第1の実施の形態によるステレオ撮像装置の構成を示す図である。ステレオ撮像装置1は、被写体を撮像する左側撮像ユニット100および右側撮像ユニット200と、これら2つの撮像ユニットを制御するマイクロプロセッサ等より成る制御回路40とを備える。
【0010】
左側撮像ユニット100は、撮影レンズ11と、撮影レンズの背後に配置されたマイクロレンズアレイ12と、マイクロレンズアレイ12の後側に配置された撮像素子13とを備える。通常、マイクロレンズアレイ12と撮像素子13との間隔はマイクロレンズアレイ12を構成するマイクロレンズMLの焦点位置近傍に撮像素子13の受光面があるように定められるが、図1では説明のため実際よりも広く描いている。
【0011】
マイクロレンズアレイ12は、二次元状に配列された複数のマイクロレンズMLを有する。撮像素子13のマイクロレンズアレイ12に相対する撮像面には、複数の受光素子が二次元状に配列されている。これらの受光素子は一定数毎にグループ化され、各々のグループ(受光素子配列30)が各マイクロレンズMLに対応する。以下、このグループを受光素子配列と呼ぶ。本実施形態では、5行5列に配列された25個の受光素子から成る受光素子配列30が、各々のマイクロレンズMLに対応する1つのグループとなっている。
【0012】
受光素子配列30を構成する個々の受光素子は、撮影レンズ11の射出瞳とほぼ共役な位置に配置されている。その結果、受光素子配列30を構成する個々の受光素子は当該受光素子配列30に対応するマイクロレンズMLを介して、撮影レンズ11の射出瞳の異なる領域からの光束をそれぞれ受光する。なお、あるマイクロレンズMLに入射した被写体光が、当該マイクロレンズMLに対応する受光素子配列30に隣接する他の受光素子配列30に迷光として入射することがある。このような迷光を防止するため、各マイクロレンズMLの間の境界部に遮光マスクを設けたり、マイクロレンズアレイ12と撮像素子13との間に各受光素子配列30を仕切る仕切部材を設けたりすることが望ましい。図1ではこのような部材の図示を省略している。
【0013】
撮像素子13には、撮像制御回路14および映像回路15が接続されている。撮像制御回路14は、撮像素子13を駆動して、露光時間、光電変換などの制御を行う。映像回路15は、撮像素子13が出力する電気信号の増幅およびアナログ−デジタル変換を行い、デジタル信号を制御回路40に出力する。制御回路40はこのデジタル信号に基づいて、被写体像を表す画像データを作成する。なお、後述の任意焦点撮影モード等において、制御回路40により作成される画像データの分解能は、マイクロレンズアレイ12におけるマイクロレンズMLの数による制限を受ける。例えば、マイクロレンズアレイ12が横にK個、縦にM個のマイクロレンズMLから構成されている場合、制御回路40により作成される画像データの画素数は、最大でK×Mとなる。
【0014】
右側撮像ユニット200は、撮影レンズ21と、撮影レンズ21の背後に配置された撮像素子23とを備える。撮像素子23を構成する個々の受光素子は撮像素子13の受光素子と同一の大きさとなっている。右側撮像ユニット200は左側撮像ユニット100とは異なり、複数の受光素子に対応するマイクロレンズMLを有さない。また、左側撮像ユニット100の撮影レンズ11とマイクロレンズアレイ12の前側主面との位置関係は、右側撮像ユニット200の撮影レンズ21と撮像素子23の撮像面(受光面)との位置関係と光学的に等価である。
【0015】
撮像素子23には左側撮像ユニット100の撮像素子13と同様に、撮像制御回路24および映像回路25が接続されている。撮像制御回路24は、撮像素子23を駆動して、露光時間、光電変換などの制御を行う。映像回路25は、撮像素子23が出力する電気信号の増幅およびアナログ−デジタル変換を行い、デジタル信号を制御回路40に出力する。制御回路40はこのデジタル信号に基づいて、被写体像を表す画像データを作成することが可能である。なお、本実施形態では、左側撮像ユニット100から出力されるデジタル信号から合成される画像データよりも、右側撮像ユニット200から出力されるデジタル信号に基づいて作成される画像データの方が、画素数が多くなる。これは、前者の画像データの分解能がマイクロレンズMLの個数による制限を受けるのに対し、後者の画像データにはこのような制限がないためである。
【0016】
撮影レンズ11および撮影レンズ21は、光学的に同等の構成を有する。撮像素子13および撮像素子23の撮像面には、不図示の光学的ローパスフィルターや赤外線カットフィルター等が設けられている。なお、図1において撮影レンズ11および撮影レンズ21は1枚のレンズとして模式的に示しているが、これらを複数のレンズで構成するものとしてもよい。
【0017】
以上で説明した左側撮像ユニット100と右側撮像ユニット200は、撮影レンズ11および撮影レンズ21の光軸が大人の平均的目幅よりやや短い60mmだけ離れるように配置される。すなわち、図1における基線長Sは60mmである。
【0018】
制御回路40は、左側撮像ユニット100の撮像制御回路14および映像回路15と、右側撮像ユニット200の撮像制御回路24および映像回路25とに接続されており、これらの回路の制御を行う。制御回路40は更に、横選択機能と、横由来距離算出機能と、横由来デプスマップ作成機能と、縦選択機能と、縦由来距離算出機能と、縦由来デプスマップ作成機能と、デプスマップ合成機能と、の各機能を有する。これらの各機能については後に詳述する。
【0019】
(ステレオ撮像装置の動作モードの説明)
ステレオ撮像装置1は、例えばキーパッド等の不図示の入力装置を備える。ユーザはこの入力装置により、制御回路40に4種類の指示信号を送信することが可能である。4種類の指示信号とは、通常撮影指示信号、任意焦点撮影指示信号、ステレオ撮影指示信号、およびデプスマップ作成指示信号である。いずれかの種類の指示信号を受信した制御回路40は、当該指示信号に応じて左側撮像ユニット100および右側撮像ユニット200を制御する。
【0020】
通常撮影指示信号を受信した制御回路40は、通常撮影モードによる動作を開始する。このモードでは、制御回路40は右側撮像ユニット200または左側撮像ユニット100を制御し、当該撮像ユニットから出力されるデジタル信号(画像信号)を受信する。そして、この画像信号に対して公知の画像処理を適用することにより、1つの画像データを作成する。制御回路40はこのようにして作成された画像データを、例えばメモリーカード等の不図示の記憶媒体に記憶させたり、液晶モニタ等の不図示の表示装置に表示させたりする。このモードにおいて左側撮像ユニット100から得られた画像データは、後に特許文献1に記載された公知の処理をパーソナルコンピュータ等に実行させることにより、任意の焦点面に対応する画像データを合成させるのに適している。
【0021】
任意焦点撮影指示信号を受信した制御回路40は、任意焦点撮影モードによる動作を開始する。このモードでは、制御回路40は左側撮像ユニット100を制御し、当該撮像ユニットから出力されるデジタル信号を受信する。そして、このデジタル信号に対し、例えば特許文献1などに記載された公知の処理を適用することで、任意の絞り値および任意の焦点面に対応する画像データを作成する。制御回路40はこのようにして作成された画像データを通常撮影モードの場合と同様に、記憶媒体に記憶させたり表示装置に表示させたりする。
【0022】
ステレオ撮影指示信号を受信した制御回路40は、ステレオ撮影モードによる動作を開始する。このモードでは、制御回路40は左側撮像ユニット100および右側撮像ユニット200の両方を制御し、2つの撮像ユニットからそれぞれ出力されるデジタル信号を受信して2つの画像データを作成する。この2つの画像データは、視差を有する一対のステレオ画像データとなっている。制御回路40は、右側撮像ユニット200が出力したデジタル信号から通常撮影モードと同様に画像データを作成する。他方、左側撮像ユニット100が出力したデジタル信号から作成される画像データは、各受光素子配列30につき1つの受光素子の出力を抽出し、それを並べることにより形成される。その際、各受光素子配列30からは、受光素子配列30の中央部よりも右側撮像ユニット200の方向に近い受光素子の出力を抽出する。このように抽出することで、左側撮像ユニット100と右側撮像ユニット200との間隔Sよりも広い基線長のステレオ画像データが得られる。このステレオ画像データは、例えばスキャンバックライト方式の立体表示装置に表示させることにより、ユーザに立体視を行わせることが可能なデータである。
【0023】
なお、こうして左側撮像ユニット100の出力に基づいて作成される画像データは、右側撮像ユニット200の出力に基づいて作成される画像データよりも画素数が少ない。制御回路40は前者に補間処理を適用したり後者に間引き処理を適用したりすることにより、これら2つの画像データの解像度を合致させる。
【0024】
デプスマップ作成指示信号を受信した制御回路40は、デプスマップ作成モードによる動作を開始する。このモードでは、制御回路40は左側撮像ユニット100のみを制御し、当該撮像ユニットから出力されるデジタル信号を受信する。そして、任意焦点撮影モードの場合と同様に画像データを作成した後に、デプスマップ(後述)を作成する。制御回路40は上記の画像データおよびデプスマップを、例えば記憶媒体に記憶させたり表示装置に表示させたりする。
【0025】
(デプスマップの説明)
制御回路40は、左側撮像ユニット100から出力されるデジタル信号を用いて、デプスマップを作成する。デプスマップとは、被写体までの距離の分布情報である。本実施形態では、マイクロレンズアレイ12を構成する各々のマイクロレンズMLについて、当該マイクロレンズMLの前後に像が結ばれた被写体までの距離を表す値であるデフォーカス量を、当該マイクロレンズMLの位置に応じて二次元状に配列したデータをデプスマップと呼ぶ。被写体までの距離は、デフォーカス量と撮影レンズ11の焦点距離並びに焦点調節面情報により決まることは光学上明らかである。ここでデフォーカス量とは、被写体像の結像位置と所定の基準面(焦点検出面)との変位を表す数値である。
【0026】
デプスマップは、制御回路40が有する横選択機能と、横由来距離算出機能と、横由来デプスマップ作成機能と、縦選択機能と、縦由来距離算出機能と、縦由来デプスマップ作成機能と、デプスマップ合成機能と、の各機能により作成される。以下では、これらの各機能について説明する。
【0027】
(横選択機能の説明)
図2は、制御回路40による横選択機能を説明するための模式図である。以下の説明では、マイクロレンズアレイ12が横にK個、縦にM個のマイクロレンズMLから構成されているものとする。横選択機能とは、マイクロレンズアレイ12を構成するこれら複数のマイクロレンズMLから、横方向に配列された複数の横レンズ列を選択する機能である。
【0028】
横選択機能においては、まずマイクロレンズアレイ12が制御回路40により図2(a)に示すように横一列ごとのグループ50に区切られる。これにより、M個のグループ50が作成される。なお図2では、このようにして区切られたグループ50を構成するマイクロレンズMLに対して、説明のため左から順に1から始まる番号を割り当てている。
【0029】
次に制御回路40は、図2(b)に示すように、当該グループ50の左端より、後述のNの最小値によって決まるずらし代分右方からマイクロレンズMLを所定数だけ抽出する。本実施形態では、この所定数は5である。すなわち、制御回路40はグループ50の左端から3番目より5つのマイクロレンズML(3番目のマイクロレンズMLから7番目のマイクロレンズMLまで)を抽出する。横選択機能では、このようにして抽出された5つのマイクロレンズMLが、1つの横レンズ列50aとして選択される。制御回路40はその後、図2(c)に示すように、左から4番目のマイクロレンズMLから、左から7番目のマイクロレンズMLまで、5つのマイクロレンズMLを抽出し、新たな横レンズ列50bとして選択する。制御回路40は、対象とするマイクロレンズMLを1つずつ右へずらしながらこれを繰り返し、グループ50から複数の横レンズ列を横レンズ列同士で一部のマイクロレンズMLが重複し合うように選択する。
【0030】
なお、制御回路40は縦選択機能についても同様に、縦方向に配列された複数の縦レンズ列を選択する。横選択機能と縦選択機能との違いは、マイクロレンズMLおよび受光素子の配列方向が横方向か縦方向かの違いのみである。
【0031】
(横由来距離算出機能の説明)
横由来距離算出機能は、横選択機能により選択された複数の横レンズ列の各々について、当該横レンズ列の中央部のマイクロレンズMLに像が結ばれた被写体までの距離を表す値を算出する機能である。前述の通り、本実施形態では被写体までの距離を表す値としてデフォーカス量を用いるので、横由来距離算出機能により算出されるのはデフォーカス量である。
【0032】
なお本実施形態では、実際の結像位置が焦点検出面より被写体側である場合にデフォーカス量が正になるよう、デフォーカス量の算出手順を定める。従って、被写体がステレオ撮像装置1から遠ざかる方向が、デフォーカス量が増大する方向である。
【0033】
図3は、デフォーカス量の算出に用いる信号列を説明する図である。なお、図3においてマイクロレンズMLに付された番号は、マイクロレンズアレイ12の横一列において左端のマイクロレンズMLから順に付された番号である。横由来距離算出機能において、制御回路40はまず、各々の横レンズ列50に対応する2つの信号列を作成する。これら2つの信号列は、受光素子配列30に含まれる受光素子のうち特定の受光素子の出力を用いて作成される。本実施形態の制御回路40は、図3に示す受光素子配列30のうち、中央左側の受光素子aと、中央右側の受光素子bと、の各出力を用いて2つの信号列を作成する。
【0034】
制御回路40は、横レンズ列50に含まれるマイクロレンズMLに対応する受光素子配列30から、上記の特定の受光素子の出力を抽出する。例えば図3では、横レンズ列50を構成する5つのマイクロレンズMLの各々から、受光素子aの出力と受光素子bの出力とを抽出している。制御回路40は、このようにして抽出された受光素子aの出力をマイクロレンズMLの並び通りに配列し、第1信号列51を作成する。制御回路40は同様にして受光素子bの出力を配列し、第2信号列52を作成する。以下の説明では、n番のマイクロレンズMLに対応する受光素子aの出力をa(n)、受光素子bの出力をb(n)で表す。すなわち、第1信号列51はa(3)からa(7)の各信号値から構成され、第2信号列52はb(3)からb(7)の各信号値から構成される。
【0035】
制御回路40は、以上のように各横レンズ列について作成された第1信号列51と、当該横レンズ列の周囲に位置する横レンズ列について作成された第2信号列52等との位相差を演算することにより、デフォーカス量を算出する。具体的なデフォーカスの算出方法は、例えば特開昭60−37513号公報に記載されている公知の方法を用いる。
【0036】
図4は、位相差を演算する様子を示す図である。図4に示す横レンズ列50aについてデフォーカス量を求める際、制御回路40はまず横レンズ列50aに対応する第1信号列51と、同一の横レンズ列50aに対応する第2信号列52との相関値を算出する。次に、1つ右隣の横レンズ列に対応する第2信号列53との相関値、2つ右隣の横レンズ列に対応する第2信号列54との相関値、などを、横レンズ列50aの左右の一定範囲に位置する複数の横レンズ列の各々について算出する。横レンズ列50aより左方の横レンズ列に対応する信号列についても同様に算出する。デフォーカス量を算出する対象である横レンズ列と、相関値の演算対象となる横レンズ列との位置のずれをシフト数と呼ぶ。デフォーカス量の算出の際、制御回路40はシフト数Nを所定範囲(例えば−5〜+5)で変化させながら、次式(1)で定義される相関値C(N)を算出する。すなわち、相関値C(−5)、C(−4)、C(−3)、…、C(3)、C(4)、C(5)を算出する。ただし、図4では簡易のためシフト数Nを−2から+2の範囲で変化させる例を表している。ここでpLは第1信号列51の左端の信号値に対応するマイクロレンズMLの番号、qLは第1信号列51の右端の信号値に対応するマイクロレンズMLの番号である。
【0037】
【数1】

【0038】
このようにして算出された相関値C(N)のうち、極小値をC0と呼ぶ。また、C(N)=C0となるN、すなわち相関値が極小となるシフト数をN0と呼ぶ。制御回路40はこのシフト数N0から、次式(2)で更に精密なシフト数Naを算出する。ここでCrはC(N0−1)、CfはC(N0+1)である。
【0039】
【数2】

【0040】
制御回路40は、式(2)で求められたシフト数Naに焦点検出面の位置に応じた所定の補正量constを加え、焦点検出面での像ずれ量Δnを算出する。最終的なデフォーカス量Dfは、上記の像ずれ量Δnに、検出開角に依存した定数Kfを乗ずることで算出することができる。すなわち、デフォーカス量Df=Δn×Kfである。
【0041】
ここで、式(2)は常に信頼できるシフト数Naを算出するわけではない。すなわち、式(2)による計算結果が、信頼性の低いシフト数Naとなる場合がある。そこで制御回路40は、シフト数Naの算出後、次式(3)によりシフト数Naの信頼性を表す信頼性パラメータRを計算する。信頼性パラメータRは、シフト数Naの信頼性が高いほど小さくなる。制御回路40は、信頼性パラメータRが所定値より大きい場合、当該横レンズ列からはデフォーカス量を算出することが不可能であると判断する。
【0042】
【数3】

【0043】
以上において算出されたデフォーカス量は、デフォーカス量の算出対象となった横レンズ列の中央に位置するマイクロレンズMLの位置に対するデフォーカス量である。制御回路40は横選択機能において選択された全ての横レンズ列に対して、以上で説明した手順でデフォーカス量を算出する。これにより、マイクロレンズアレイ12に含まれる全てのマイクロレンズMLのうち、左右両端付近のマイクロレンズMLを除くマイクロレンズMLについて、そのデフォーカス量が算出される。
【0044】
図5は、横由来距離算出機能および縦由来距離算出機能によりデフォーカス量が算出されるマイクロレンズMLを示す図である。図5において斜線で示す範囲については、デフォーカス量の算出が行われない。従って、図5(a)にマイクロレンズMLの左右両端を除く範囲56についてデフォーカス量が算出されることとなる。
【0045】
なお、制御回路40は縦由来距離算出機能についても同様に、縦選択機能により選択された複数の縦レンズ列の各々について、当該縦レンズ列の中央部のマイクロレンズMLに像が結ばれた被写体までの距離を算出する。図5(b)に示す範囲57が、縦由来距離算出機能によりデフォーカス量が算出される範囲である。横由来距離算出機能と縦由来距離算出機能との違いは、マイクロレンズML並びに用いられる受光素子の配列方向が横方向か縦方向かの違いのみである。
【0046】
(横由来デプスマップ作成機能の説明)
横由来デプスマップ作成機能は、横由来距離算出機能により算出された各マイクロレンズに対応する被写体までの距離を表す値であるデフォーカス量を、当該距離に対応するマイクロレンズMLの位置に応じて二次元状に配列し横由来デプスマップを作成する機能である。制御回路40は、各マイクロレンズMLにおけるデフォーカス量を、マイクロレンズアレイ12上の位置通りに配列することにより、横由来デプスマップを作成する。なお、制御回路40は縦由来デプスマップ作成機能についても同様に、縦由来距離算出機能により算出された複数のデフォーカス量を二次元状に配列することにより、縦由来デプスマップを作成する。
【0047】
なお制御回路40は、デフォーカス量を算出することが不可能であると判定されていた場合には、当該デフォーカス量を周囲(上下左右)のマイクロレンズMLのデフォーカス量から内挿して求め、横由来デプスマップおよび縦由来デプスマップを作成する。
【0048】
(デプスマップ合成機能の説明)
デプスマップ合成機能は、横由来デプスマップと縦由来デプスマップとを合成し最終的なデプスマップを出力する合成処理を実行する機能である。具体的には、制御回路40は横由来デプスマップと縦由来デプスマップとの両方にデフォーカス量が含まれている各マイクロレンズMLについて、横由来デプスマップ上のデフォーカス量と、縦由来デプスマップ上のデフォーカス量とを比較し、大きい方のデフォーカス量を最終的なデプスマップにおけるデフォーカス量として採用する。
【0049】
図6は、最終的に出力されるデプスマップの範囲を示す図である。図6に示すように、制御回路40はマイクロレンズアレイ12のうち上下左右の端部を除いた範囲58内のマイクロレンズMLについてのデフォーカス量を配列したデプスマップを出力する。上記のような合成を行うのは、近距離の被写体と遠距離の被写体との境界におけるデフォーカス量が、近距離の被写体の影響を受けやすい、という理由による。この点について以下に説明する。
【0050】
図7は、横由来デプスマップにおけるデフォーカス量について説明する図である。図7(a)に示す撮影画像60には、各受光素子配列30の境界線を重ねている。撮影画像60において網掛けされた領域は、遠くの被写体が撮像されていることを表す。ここで、最下端の各受光素子配列30より成る部分列61において、受光素子配列PP(6)やPP(12)は、近くの被写体と遠くの被写体との境界に位置している。
【0051】
ここで、PP(5)は遠くの被写体に対応しているため、この箇所におけるデフォーカス量は大きくなることが望ましい。しかしながら、図7(b)に示すように、デフォーカス量の算出は左右のマイクロレンズMLに対応する受光素子の出力を含む形で行われる。すなわち、PP(5)のデフォーカス量を算出するにあたり、式(1)において、この例ではa(3)からa(7)を用いる。ただしここにa(n)はPP(n)から抽出した出力である。従って、このデフォーカス量に対して信号値a(6)などが影響を及ぼすことになる。その結果、実際に算出されるデフォーカス量は理想値よりも小さくなる。理想的なデフォーカス量と実際に算出されるデフォーカス量とのグラフを図7(c)に示す。実際に算出されるデフォーカス量63(図7(c)の実線のグラフ)は、遠くの被写体と近くの被写体との境界付近において、理想的なデフォーカス量62(図7(c)の点線のグラフ)に比べ小さくなる傾向がある。
【0052】
制御回路40が横由来デプスマップと縦由来デプスマップとを合成することにより最終的なデプスマップを作成するのは、遠くの被写体と近くの被写体との境界付近におけるこのような不具合を解消するためである。すなわち、遠くの被写体と近くの被写体とが横方向に隣接する箇所であっても、縦方向には隣接していない場合であれば、上述のような境界における問題を解消することが可能である。縦方向に隣接し、横方向に隣接していない場合についても同様である。
【0053】
上述した第1の実施の形態によるステレオ撮像装置によれば、次の作用効果が得られる。
(1)制御回路40は、マイクロレンズアレイ12に含まれる複数のマイクロレンズMLから横方向に配列された複数の横レンズ列を選択し、選択された横レンズ列の各々について当該横レンズ列を構成するマイクロレンズMLの各々に対応する受光素子の出力を演算し、当該横レンズ列の中央部のマイクロレンズMLの前後に像が結ばれた被写体までの距離を表す値を算出すると共に、これらの値を二次元状に配置して横由来デプスマップを作成する。そして、同様に縦方向について縦由来デプスマップを作成した後、横由来デプスマップと縦由来デプスマップとを合成し最終的なデプスマップを出力する。このようにしたので、被写体の遠近が変化する箇所の付近においても、被写体までの正確な距離を表す値を算出することができる。
【0054】
(第2の実施の形態)
第2の実施の形態に係るステレオ撮像装置は、図1に示す第1の実施の形態に係るステレオ撮像装置1と同一の構成を備える。これに加えて制御回路40は、左側撮像ユニット100において作成されたデプスマップから、右側撮像ユニット200により作成された撮影画像に対応するデプスマップを作成する機能を有する。以下、この機能について説明する。
【0055】
デプスマップ作成指示信号を受信した本実施形態の制御回路40は、左側撮像ユニット100を用いて撮影画像およびデプスマップを作成すると同時に、右側撮像ユニット200を用いて撮影画像を作成する。このとき、撮影レンズ11および撮影レンズ21は被写界の同一の面にピントが合った状態にしておく。制御回路40は、撮像が行われた時の焦点調節面の情報を、撮影レンズ11および撮影レンズ21に取り付けられた不図示のエンコーダ等により検知しておく。ここで、焦点調節面の情報とは、撮影レンズ11および撮影レンズ21のピントが合わせられている被写体距離のことであり、例えば1mや3mといった情報である。
【0056】
制御回路40はその後、第1の実施の形態の場合と同様に、左側撮像ユニット100を用いて撮影画像およびデプスマップを作成する。その後制御回路40は、作成されたデプスマップと前述の焦点調節面の情報とから、デプスマップを構成する各点毎に被写体までの距離を算出する。例えば撮影レンズ11の焦点距離が50mmであり、被写体距離が1mであった場合、撮影レンズ11から1m前方に位置する被写体において、デフォーカス量が0となる。また、例えばデフォーカス量が0.5mmであった場合、被写体距離は1.25mと計算される。同様に、他のデフォーカス量の場合でも、その値に応じて、被写体までの距離を算出することが可能である。
【0057】
これと並行して、制御回路40は右側撮像ユニット200を用いた撮影画像も作成しておく。以下、左側撮像ユニット100を用いて作成された撮影画像を左側撮影画像、右側撮像ユニット200を用いて作成された撮影画像を右側撮影画像と呼ぶ。
【0058】
その後制御回路40は、上述の処理により算出された各点毎の被写体までの距離に基づいて、左側撮影画像の各点が右側撮影画像においてどれだけ横方向に移動しているかを算出する。なお、左側撮像ユニット100と右側撮像ユニットとの位置関係から、左側撮影画像の各点が右側撮影画像において左右にのみ移動し、上下には移動しないことは自明である。また、このときの移動量は、ステレオ撮像装置1から遠くに位置する被写体の画素ほど小さくなり、ステレオ撮像装置1に近い被写体の画素ほど大きくなる。
【0059】
制御回路40は最後に、上述の処理により求めた横方向の移動量に応じて、デプスマップ上の各点を横方向に移動させる。すなわち、左側撮影画像における特定の点に対応するデフォーカス量を、より左側の点に対応するデフォーカス量とする。このとき、1つの点に複数のデフォーカス量が対応した場合には、より小さいデフォーカス量を優先させる。また、いずれのデフォーカス量も対応しなくなった点には、右側の隣接点におけるデフォーカス量から推定したデフォーカス量を対応させる。この推定値は、例えば推定の対象となる点より右側におけるデフォーカス量の分布から外挿することにより推定される。
【0060】
なおこの時、「いずれのデフォーカス量も対応しなくなった点」とは、左側撮像ユニット100において前側の被写体の影になっていた部分と考えられる。すなわち、前側の被写体より奥に被写体があった部分ということになる。
【0061】
以上のようにして制御回路40は、左側撮像ユニット100に基づいて作成したデプスマップから、右側撮像ユニット200に対応するデプスマップを作成する。ここで作成される新たなデプスマップは、右側撮影画像の分解能よりも小さい。従って、作成されたデプスマップを実際に利用する際には、デプスマップを右側撮影画像に合わせて拡大するか、あるいは右側撮影画像をデプスマップに合わせて縮小する必要がある。デプスマップの拡大には、公知の画像拡大技術を利用すればよい。
【0062】
上述した第2の実施の形態によるステレオ撮像装置によれば、次の作用効果が得られる。
(1)制御回路40は、左側撮像ユニット100を用いて作成された左側撮影画像と、右側撮像ユニット200を用いて作成された右側撮影画像との視差に起因するずれ量に基づいて、左側撮像ユニット100に対応するデプスマップを補正し、右側撮影画像に対応するデプスマップを作成する。このようにしたので、左側撮影画像よりも画素数の高い右側撮影画像に対応するより正確なデプスマップを利用することが可能となり、利便性が向上する。
【0063】
次のような変形も本発明の範囲内であり、変形例の一つ、もしくは複数を上述の実施形態と組み合わせることも可能である。
【0064】
(変形例1)
図1に示すように、第1の実施の形態に係る撮像素子13では各々の受光素子配列30がそれぞれ独立に存在している。すなわち、各々の受光素子配列30が明確に区切られている。このようにするのではなく、撮像素子23のように、撮像素子13の撮像面上に受光素子が連続的に存在するようにしてもよい。すなわち、撮像素子13を、撮像素子23と同様の構成としてもよい。
【0065】
(変形例2)
本発明において、各々のマイクロレンズMLに対し受光素子が2方向に沿って各々少なくとも2つずつ配置されていれば、デプスマップ作成処理を行うことができる。従って、受光素子配列30が3つの受光素子から成る構成の装置に対しても、本発明を適用することが可能である。また、第1の実施の形態では各々の受光素子配列30が5列5行の受光素子から構成されるとしたが、受光素子配列30を構成する受光素子は3つ以上であれば何個であってもよい。
【0066】
(変形例3)
デフォーカス量の算出に用いる第1信号列および第2信号列は、図3に示す受光素子aや受光素子b以外の受光素子の出力から作成してもよい。また、受光素子配列毎に複数の受光素子の出力を演算した値から信号列を作成してもよい。例えば複数の受光素子の出力の平均値を演算したり、所定の重みにより加重平均を演算したりしてもよい。
【0067】
(変形例4)
第1信号列と第2信号列との相関値C(N)を、式(1)ではなく次式(4)により算出してもよい。ここで関数Floor(x)は、x以下の最大の整数を返す、いわゆる床関数である。
【0068】
【数4】

【0069】
(変形例5)
第1の実施の形態では、横レンズ列および縦レンズ列は常に一定数のマイクロレンズMLから構成されていた。これを、一部のレンズ列がより少数のマイクロレンズMLから構成されるようにしてもよい。具体的には、制御回路40がまず各マイクロレンズMLにつき対応する受光素子配列30から受光素子の出力を1つずつ抽出する。そして、抽出された出力を二次元状に配列した中間画像データを作成する。この中間画像データに横方向微分フィルターを適用することにより、横方向における被写体像の光量の変化率が算出される。同様に縦方向微分フィルターを適用すれば、縦方向における被写体像の光量の変化率が算出される。制御回路40は、横選択機能および縦選択機能において、それぞれ対応する方向における被写体像の光量の変化率を参照し、変化率が所定のしきい値よりも大きい箇所とその周囲の箇所において選択されるレンズ列が、通常よりも少ないマイクロレンズMLから構成されるようにレンズ列を選択する。このようにすることで、遠くの被写体と近くの被写体との境界が斜め方向に存在する場合であっても、図7で説明したような、近くの隣接被写体の悪影響を軽減し、より正確なデフォーカス量を算出することが可能になる。
【0070】
(変形例6)
デプスマップ合成機能において、制御回路40がデフォーカス量の大小以外の要素を参照するようにしてもよい。例えば横由来デプスマップと縦由来デプスマップとの相関の強さ等を加味した合成処理を実行するようにしてもよい。
【0071】
(変形例7)
2つの撮像ユニットを横方向ではなく縦方向に並べてもよい。また、2つの撮像ユニット間の距離は上述の実施形態で例示した数値に限定されない。
【0072】
(変形例8)
デフォーカス量の信頼性パラメータRは、上式(3)以外の式により算出してもよい。例えば、上式(3)の右辺の分母を信頼性パラメータRとしてもよい。
【0073】
本発明の特徴を損なわない限り、本発明は上記実施の形態に限定されるものではなく、本発明の技術的思想の範囲内で考えられるその他の形態についても、本発明の範囲内に含まれる。
【符号の説明】
【0074】
1 ステレオ撮像装置
11、21 撮影レンズ
12 マイクロレンズアレイ
13、23 撮像素子
14、24 撮像制御回路
15、25 映像回路
30 受光素子配列
40 制御回路
100 左側撮像ユニット
200 右側撮像ユニット
ML マイクロレンズ

【特許請求の範囲】
【請求項1】
被写体像を所定の結像面に結像させる結像光学系と、
前記結像面の近傍に二次元状に配列された複数の正レンズと、
前記複数の正レンズの各々に対応して当該正レンズの後側に少なくとも3つずつ配置される複数の受光素子であって、前記少なくとも3つの受光素子のうち少なくとも2つの受光素子は第1方向に並んで配置され、前記少なくとも3つの受光素子のうち少なくとも2つの受光素子は前記第1方向とは異なる第2方向に並んで配置される複数の受光素子と、
前記複数の正レンズから、前記第1方向に配列された複数の第1正レンズ列を選択する第1選択手段と、
前記第1選択手段により選択された前記複数の第1正レンズ列の各々について、当該第1正レンズ列を構成する正レンズの各々に対応する前記第1方向に並んだ少なくとも2つずつの受光素子の出力を演算し、当該第1正レンズ列の中央部の正レンズに像が結ばれた被写体までの距離を表す値を算出する第1距離算出手段と、
前記第1距離算出手段により算出された複数の距離を表す値を、当該値に対応する正レンズの位置に応じて二次元状に配列したデータである第1のデプスマップを作成する第1デプスマップ作成手段と、
前記複数の正レンズから、前記第2方向に配列された複数の第2正レンズ列を選択する第2選択手段と、
前記第2選択手段により選択された前記複数の第2正レンズ列の各々について、当該第2正レンズ列を構成する正レンズの各々に対応する前記第2方向に並んだ少なくとも2つずつの受光素子の出力を演算し、当該第2正レンズ列の中央部の正レンズに像が結ばれた被写体までの距離を表す値を算出する第2距離算出手段と、
前記第2距離算出手段により算出された複数の距離を表す値を、当該値に対応する正レンズの位置に応じて二次元状に配列したデータである第2のデプスマップを作成する第2デプスマップ作成手段と、
前記第1のデプスマップと前記第2のデプスマップとを合成し第3のデプスマップを出力する合成処理を実行するデプスマップ出力手段とを備え、
前記複数の正レンズの各々に対応する、前記第1方向に並んだ少なくとも2つずつの受光素子と前記第2方向に並んだ少なくとも2つずつの受光素子とは、当該正レンズを介して、前記結像光学系の射出瞳の異なる領域からの光束をそれぞれ受光することを特徴とするデプスマップ出力装置。
【請求項2】
請求項1に記載のデプスマップ出力装置において、
前記デプスマップ出力手段により実行される合成処理は、同一の被写体に関する前記第1のデプスマップ上の値が表す距離と前記第2のデプスマップ上の値が表す距離とが等しい場合にはいずれか一方の距離を出力し、等しくない場合には大きい方の距離を表す値を出力する処理であることを特徴とするデプスマップ出力装置。
【請求項3】
請求項1または2に記載のデプスマップ出力装置において、
前記第1距離算出手段は、前記複数の第1正レンズ列の各々について、当該第1正レンズ列を構成する正レンズの各々に対応する前記第1方向に並んだ少なくとも2つずつの受光素子の出力から2つの信号列を作成し、前記第1正レンズ列同士の当該2つの信号列の位相差を演算することにより前記被写体までの距離を表す値を算出し、
前記第2距離算出手段は、前記複数の第2正レンズ列の各々について、当該第2正レンズ列を構成する正レンズの各々に対応する前記第2方向に並んだ少なくとも2つずつの受光素子の出力から2つの信号列を作成し、前記第2正レンズ列同士の当該2つの信号列の位相差を演算することにより前記被写体までの距離を表す値を算出することを特徴とするデプスマップ出力装置。
【請求項4】
請求項1〜3のいずれか一項に記載のデプスマップ出力装置において、
前記第1選択手段は、前記第1方向に沿って1列に配列された前記複数の正レンズから、前記複数の第1正レンズ列を第1正レンズ列同士で一部の正レンズが重複し合うように選択し、
前記第2選択手段は、前記第2方向に沿って1列に配列された前記複数の正レンズから、前記複数の第2正レンズ列を第2正レンズ列同士で一部の正レンズが重複し合うように選択することを特徴とするデプスマップ出力装置。
【請求項5】
請求項1〜4のいずれか一項に記載のデプスマップ出力装置において、
前記複数の正レンズの各々に対応する前記受光素子のうち少なくとも1つの受光素子の出力に基づいて、前記第1方向における前記被写体像の光量分布を算出する第1光量分布算出手段と、
前記複数の正レンズの各々に対応する前記受光素子のうち少なくとも1つの受光素子の出力に基づいて、前記第2方向における前記被写体像の光量分布を算出する第2光量分布算出手段とを更に備え、
前記第1選択手段は、前記第1方向における光量分布に基づいて前記複数の第1正レンズ列を選択し、
前記第2選択手段は、前記第2方向における光量分布に基づいて前記複数の第2正レンズ列を選択することを特徴とするデプスマップ出力装置。
【請求項6】
請求項5に記載のデプスマップ出力装置において、
前記第1選択手段は、前記第1方向における光量分布において光量の変化率が所定のしきい値より大きい箇所では、そうでない箇所において選択される第1正レンズ列より少ない数の正レンズから構成される第1正レンズ列を選択し、
前記第2選択手段は、前記第2方向における光量分布において光量の変化率が所定のしきい値より大きい箇所では、そうでない箇所において選択される第2正レンズ列より少ない数の正レンズから構成される第2正レンズ列を選択することを特徴とするデプスマップ出力装置。
【請求項7】
請求項1〜6のいずれか一項に記載のデプスマップ出力装置において、
被写体像を撮像し第1の撮影画像を出力する撮像ユニットと、
前記複数の受光素子の出力に基づいて、前記第1の撮影画像に対して視差を有する第2の撮影画像を出力する撮影画像出力手段と、
前記視差に起因する前記第1の撮影画像と前記第2の撮影画像とのずれ量に基づいて前記第3のデプスマップを補正し、前記第1の撮影画像に対応する第4のデプスマップを作成するデプスマップ補正手段とを更に備えることを特徴とするデプスマップ出力装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2011−237215(P2011−237215A)
【公開日】平成23年11月24日(2011.11.24)
【国際特許分類】
【出願番号】特願2010−107247(P2010−107247)
【出願日】平成22年5月7日(2010.5.7)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】