補間画像生成装置、再構成画像生成装置、補間画像生成方法及びプログラム
【課題】複数の視点から撮影した複数の画像からノイズの少ない再構成画像を生成するための補間画像を生成する。
【解決手段】補間画像生成装置30は、入力部310複数の視点から得られた複数の撮影画像とその撮像設定情報を取得し、EPI生成部321が複数の画像からEPIを生成し、角度推定部322がEPI上で各EPIの実画素が対応する直線の角度を推定し、補間画像設置部323がEPI上に補間画像を設置し、対応検出部324が実画素と補間画像の画素(補間画素)との対応を検出し、対応検出部324が実画素と補間画素の対応関係の確かさを評価し、画素値加算部326が対応関係の確かさに基づいて補間画素の画素値を加算することにより補間画像を生成する。
【解決手段】補間画像生成装置30は、入力部310複数の視点から得られた複数の撮影画像とその撮像設定情報を取得し、EPI生成部321が複数の画像からEPIを生成し、角度推定部322がEPI上で各EPIの実画素が対応する直線の角度を推定し、補間画像設置部323がEPI上に補間画像を設置し、対応検出部324が実画素と補間画像の画素(補間画素)との対応を検出し、対応検出部324が実画素と補間画素の対応関係の確かさを評価し、画素値加算部326が対応関係の確かさに基づいて補間画素の画素値を加算することにより補間画像を生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、補間画像生成装置、再構成画像生成装置、補間画像生成方法及びプログラムに関する。
【背景技術】
【0002】
複数の視点から撮影した被写体の複数の画像を取得することにより、被写体からカメラのレンズに侵入する全ての光線の向きと光量を取得する技術が知られている。被写体を異なる視点から撮影した複数の画像の集合をライトフィールド画像と呼び、ライトフィールド画像を構成する一つ一つの画像をサブ画像と呼ぶ。
【0003】
特許文献1は、少数の高解像度のサブ画像から構成されるライトフィールド画像を取得し、当該取得したライトフィールド画像から、再フォーカス画像や被写界深度の異なる画像等を再構成する技術を開示している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2009−532993号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ライトフィールド画像では、隣り合うサブ画像の間に、両画像を取得した視点のずれ(視差)に対応した画素抜けが発生する。この画素抜けは、ライトフィールド画像から新たな画像を再構成した際に周期的なノイズの原因となる。
【0006】
上記問題を解決するため、特許文献1は、2つのサブ画像の間に、両サブ画像に対応する視点の間に位置する視点から撮影されたと推定される補間画像を生成し、この補間画像を用いて画素抜けを補間することを提案している。しかし、特許文献1は、補間画像を用いて再構成することを提案するだけで、補間画像を生成する方法を開示していない。
【0007】
本発明は、上記事情に鑑みてなされたものであり、複数の視点から被写体を撮影した複数の画像からノイズの少ない再構成画像を生成するための補間画像を生成する技術を提供することを第1の目的とする。
また、本発明は、高品質の画像を再構成する技術を提供することを第2の目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明に係る補間画像生成装置は、
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
を備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、複数の視点から被写体を撮影した複数の画像からノイズの少ない再構成画像を生成するための補間画像を生成できる。また、本発明を用いれば、高品質の画像を再構成できる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施形態1に係るデジタルカメラの構成を示す図である。
【図2】実施形態1に係るデジタルカメラの光学形成の構成を示す図である。
【図3】実施形態1に係るライトフィールド画像の例を示す図である。
【図4】実施形態1に係る補間画像生成装置の(a)物理的構成と(b)機能的構成を示す図である。
【図5】(a)〜(c)は、実施形態1に係る実画像とEPIの関係を示す図である。
【図6】実施形態1に係る直線推定処理の概要を示す図である。
【図7】実施形態1に係る直線推定処理の概要を示す図である。
【図8】実施形態1に係る実画素情報リストの例を示す図である。
【図9】実施形態1に係る補間画素挿入処理の概要を示す図である。
【図10】実施形態1に係る補間画素リストの例を示す図である。
【図11】(a)〜(c)は、実施形態1に係る画素値加算処理の概要を示す図である。
【図12】実施形態1に係る補間画像生成処理を示すフローチャートである。
【図13】実施形態1に係る角度θ登録処理を示すフローチャートである。
【図14】実施形態1に係る角度θ推定処理を示すフローチャートである。
【図15】実施形態1に係る画素値加算処理を示すフローチャートである。
【図16】実施形態1に係る注目実画素に基づく補間処理を示すフローチャートである。
【図17】(a)と(b)とは、実施形態1に係る二次元の補間画像生成処理の概要を示す図である。
【図18】実施形態1に係る再構成画像生成処理を示すフローチャートである。
【図19】実施形態2に係る光学装置を示す図である。
【図20】本発明の実施形態2に係る画素値加算処理を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明を実施するための形態に係る補間画像生成装置及び再構成画像生成装置を、図を参照しながら説明する。なお、図中同一又は相当する部分には同一符号を付す。
【0012】
(実施形態1)
実施形態1に係る補間画像生成装置30は、図1に示すデジタルカメラ1に搭載されている。デジタルカメラ1は、i)被写体を撮影して画像を得る機能、ii)同一の被写体を複数の視点から撮影して得られた複数の画像(サブ画像)間の視点のずれ(視差)によって生じる情報抜け(ギャップ)を埋めるための補間画像を生成する機能、iii)サブ画像と補間画像とを用いて、任意の再構成画像を生成する機能、等を備える。補間画像生成装置30は、これらの機能のうち、補間画像を生成する機能を担当する。
【0013】
デジタルカメラ1は、図1に示すように、撮像部10と、補間画像生成装置30を含む情報処理部20と、記憶部40と、インターフェース部(I/F部)50と、から構成される。デジタルカメラ1は、このような構成により、外部からの光線情報を取得して、光線情報を表す画像を表示する。
【0014】
撮像部10は、光学装置110と、イメージセンサ120と、から構成され、撮像動作を行う。
【0015】
光学装置110は、図2に示すように、シャッタ111と、絞り112と、メインレンズMLと、マイクロレンズアレイLAと、から構成され、外部からの光線をメインレンズMLによって捉え、各サブレンズSLの光学中心を視点として得られる光学像をイメージセンサ120に投影する。
【0016】
イメージセンサ120は、光学装置110が投影した光学像を電気信号に変換して情報処理部20に伝達するもので、例えば、CCD(Charge Coupled Device)やCMOS(Complementally Matal Oxide Semiconductor)などの撮像素子と、撮像素子が生成した電気信号を情報処理部20に伝達する伝達部と、から構成される。
【0017】
シャッタ111は、イメージセンサ120への外部光の入射と遮蔽を制御する。
絞り112は、イメージセンサ120に入射する光の光量を制御する。
メインレンズMLは、一又は複数の凸レンズから構成され、被写体OBの光を光学像としてメインレンズMLとマイクロレンズアレイLAとの間の仮想的な結像面IP上に結像させる。
マイクロレンズアレイLAは、平面上に格子状に配置されたM×N個のサブレンズ(マイクロレンズ)SLから構成される。マイクロレンズアレイLAは、メインレンズMLが結像面IP上に結像させた光学像を、それぞれのサブレンズSLの光学中心を視点として観測した光学像として、イメージセンサ120を構成するイメージセンサの撮像面IE上に結像する。メインレンズMLが成す平面と撮像面IEが成す平面とから構成される空間をライトフィールドと呼ぶ。
【0018】
撮像部10は、上記構成により、ライトフィールドを通過する全ての光線の情報を含んだライトフィールド画像を撮影する。
ブロック状の被写体OBを撮影したライトフィールド画像LFの一例を図3に示す。
このライトフィールド画像LFは、格子状に配置されたM×N個のサブレンズSLのそれぞれに対応する画像(サブ画像S、S11〜SMN)から構成されている。例えば、左上のサブ画像S11は、被写体を左上から撮影した画像に相当し、右下のサブ画像SMNは被写体を右下から撮影した画像に相当する。
【0019】
第i行のサブ画像(横の一列のサブ画像)Si1〜SiNは、メインレンズMLが結像した像を、マイクロレンズアレイLAの第i行の横に並んだサブレンズSLで結像したステレオ画像に相当する。同様に、第j列のサブ画像(縦の一列のサブ画像)S1j〜SMjは、メインレンズMLが結像した像を、マイクロレンズアレイLAの第j列の縦に並んだサブレンズSLで撮影したステレオ画像に相当する。
なお、各サブ画像Sはグレースケール画像であり、サブ画像を構成する各画素は画素値(スカラー値)を持つ。
【0020】
図1に示す情報処理部20は、物理的にはCPU(Central Processing Unit)と、RAM(Random Access Memory)と、内部バスと、I/Oポートと、から構成され、画像処理部210、補間画像生成装置30、画像再構成部220、撮像制御部230、として機能する。
【0021】
画像処理部210は、イメージセンサ120から電気信号を取得し、取得した電気信号を記憶部40の撮像設定記憶部410に記憶されている撮像設定情報に基づいて画像データに変換する。画像処理部210は、画像データと撮像設定情報とを補間画像生成装置30に伝達する。
【0022】
撮像設定情報は、ライトフィールド画像の各サブ画像に対応する視点(サブレンズSLの光学中心)の位置情報、メインレンズMLのフォーカスについての情報、絞り(F値)の情報、イメージセンサ120の設定情報、等を含む。
【0023】
補間画像生成装置30は、画像処理部210で生成された画像データと記憶部40から読み出された撮像設定情報とから、画像処理部210が生成した画像(ライトフィールド画像)を構成するサブ画像を補間する補間画像を生成する。なお、補間画像生成装置30の構成及び補間画像の生成方法については、後述する。
補間画像生成装置30は、生成した補間画像の画像データ及び補間画像の設定情報を、画像処理部210から伝達されたライトフィールド画像の画像データ及び撮像設定情報と共に画像再構成部220に伝達する。
【0024】
画像再構成部220は、補間画像生成装置30から伝達されたライトフィールド画像と補間画像とを用いて記憶部40の再構成設定記憶部420に記憶された再構成設定に合致する再構成画像を生成する。なお、再構成画像の生成方法は、例えば、特許文献1に例示されている方法を使用する等、任意である。
画像再構成部220は、生成した再構成画像を記憶部40の画像記憶部430に記憶する。
【0025】
撮像制御部230は、記憶部40の撮像設定記憶部410に記憶された撮像設定情報に基づいて撮像部10を制御する。
【0026】
記憶部40は、RAM(Random−Access Memory)等から構成される主記憶装置と、フラッシュメモリ、ハードディスク、等の不揮発性メモリから構成される外部記憶装置と、から構成される。
主記憶装置は外部記憶装置に記憶されている制御プログラムや情報をロードし、情報処理部20の作業領域として用いられる。
外部記憶装置は、後述する処理を情報処理部20に行わせるための制御プログラムと情報とをあらかじめ記憶し、これらの制御プログラムや情報を情報処理部20の指示に従って主記憶装置に伝達する。また、情報処理部20の指示に従って、情報処理部20の処理に基づく情報とインターフェース部50から伝達された情報とを記憶する。
【0027】
記憶部40は、機能的には、撮像設定記憶部410と、再構成設定記憶部420と、画像記憶部430と、から構成される。
【0028】
撮像設定記憶部410は、撮像設定情報を記憶する。撮像設定情報は、マイクロレンズアレイLAを構成する各サブレンズSLの位置情報と、マイクロレンズアレイLAとイメージセンサ120の撮像面IEとの距離と、メインレンズMLとマイクロレンズアレイLAとの距離と、露光時間を特定する情報と、を含む。撮像設定情報は、インターフェース部50の操作部530から入力された撮像のF値、シャッタ速度、拡大率、等の撮像パラメータをさらに含む。
撮像設定記憶部410は、撮像設定情報のうち、撮像パラメータを撮像制御部230に伝達する。
また、撮像設定記憶部410は、撮像部10の物理特性を示す情報と撮像設定情報とを画像処理部210に伝達する。
【0029】
再構成設定記憶部420は、操作部530から入力された再構成設定情報を記憶する。再構成設定情報は、再構成処理の具体的内容を示す情報と再構成パラメータとから構成される。
ここでは、ライトフィールド画像LFをリフォーカスした画像を再構成する場合について説明する。このとき、再構成設定情報はリフォーカスする旨の情報と、新たな画像のフォーカス点とレンズとの距離を特定する情報と、を含む。
【0030】
画像記憶部430は、画像再構成部220が再構成した画像を記憶する。画像記憶部430は、インターフェース部50のI/O部510と表示部520とに、記憶した画像を伝達する。
【0031】
インターフェース部(図ではI/F部と記述する)50は、デジタルカメラ1とその使用者(ユーザ)あるいは外部装置とのインターフェースに係る構成であり、I/O部510と、表示部520と、操作部530と、から構成される。
【0032】
I/O部(Input/Output部)510は、物理的にはUSB(Universal Serial Bus)コネクタやビデオ出力端子と、入出力制御部と、から構成される。I/O部510は記憶部40に記憶された情報を外部のコンピュータに出力し、外部から伝達された情報を記憶部40に伝達する。
【0033】
表示部520は、液晶表示装置や有機EL(Electro Luminescence)ディスプレイ等から構成され、撮像設定記憶部410や再構成設定記憶部420に記憶される設定情報を入力するための画面や、デジタルカメラ1を操作するための画面を表示する。また、表示部520は、画像記憶部430に記憶された画像を表示する。
【0034】
操作部530は、例えばデジタルカメラ1に備えられた各種ボタンや表示部520に備えられたタッチパネルと、各種ボタンやタッチパネルに行われた操作の情報を検出して記憶部40と情報処理部20とに伝達する制御部によって構成され、ユーザ操作により入力された情報を入力する。
【0035】
次に、補間画像生成装置30の構成について、図4を参照して説明する。
補間画像生成装置30は、図4(a)に示すように情報処理部31と、主記憶部32と、外部記憶部33と、操作部34と、表示部35と、入出力部36と、内部バス37と、から構成される。
【0036】
情報処理部31は、CPU(Central Processing Unit)と、RAM(Random Access Memory)から構成される。
【0037】
主記憶部32は、記憶部40の主記憶装置と同様の物理構成を持つ。外部記憶部33は、記憶部40の外部記憶装置と同様の物理構成を持ち、プログラム38を記憶している。操作部34は、操作部530と同様の物理構成を持つ。表示部35は、表示部520と同様の物理構成を持つ。入出力部36は、I/O部510と同様の物理構成を持つ。内部バス37は、主記憶部32と、外部記憶部33と、操作部34と、表示部35と、入出力部36と、を接続する。
【0038】
主記憶部32と、外部記憶部33と、操作部34と、表示部35と、入出力部36と、内部バス37と、はデジタルカメラ1の情報処理部20の内部回路と、記憶部40と、インターフェース部50と、によって実現される機能ブロックであってもよい。
【0039】
補間画像生成装置30は、外部記憶部33に記憶されたプログラム38及びデータを主記憶部32にコピーして、情報処理部31が、主記憶部32を使用してプログラム38を実行することにより、後述する補間画像生成処理を実行する。
【0040】
補間画像生成装置30は、上記のような物理構成により、図4(b)に示すように、入力部310と、情報処理部320と、記憶部330と、操作部340と、出力部350と、として機能する。
【0041】
入力部310は、画像処理部210から、ライトフィールド画像LFを取得する画像取得部311と、そのライトフィールド画像LFを取得したときの撮像設定情報を取得する画像設定取得部312と、から構成される。
【0042】
情報処理部320は、画像取得部311が取得したライトフィールド画像LFと、画像設定取得部312が取得したそのライトフィールド画像LFの撮像設定情報と、補間設定記憶部332に記憶された補間設定と、に基づき、補間画像を生成する。情報処理部320は、生成した補間画像を画像取得部311が取得した画像と共に記憶部330の補間情報記憶部333に記憶する。
記憶部330は、工場出荷時に記憶された設定情報と、操作部340を用いてユーザが入力した入力情報と、情報処理部320の処理結果と、を記憶する。記憶部330は、情報処理部320から要求された情報を情報処理部320に伝達する。また、記憶部330は、記憶した情報を出力部350に伝達する。
【0043】
情報処理部320は、下記する処理を実行することにより、EPI生成部321、角度推定部322、補間画像設置部323、対応検出部324、対応評価部325、画素値加算部326、として機能する。
【0044】
EPI生成部321は、入力部310の画像取得部311からライトフィールド画像LFを、画像設定取得部312からそのライトフィールド画像LFの撮像設定情報を、それぞれ受け取ると、EPI(Epipolar Plane Image、エピポーラプレーン画像)を生成する。EPI生成部321は、生成したEPIを角度推定部322と、補間画像設置部323と、に伝達する。
【0045】
ここで、EPI生成部321がライトフィールド画像LFから生成するEPIについて、図5を参照して説明する。
理解を容易にするために、ここでは図5(a)のように横(X軸)方向に並んだ4つサブレンズ(SL1〜SL4)で、無限遠に存在する背景Bと、レンズ(サブレンズ)SL1〜SL4からZ軸方向に距離zだけ離れた物体Aと、を撮影したライトフィールド画像LFからEPIを生成する場合について説明する。
なお、背景Bは互いに異なる画素に対応する部分B1〜B25から構成されるとする。また、物体Aは互いに異なる画素に対応する部分A1〜A7から構成されるとする。
【0046】
サブレンズSL1〜SL4は、それぞれイメージセンサ120の撮像面IE上にサブ画像S1〜S4を結像させる。言い換えると、サブ画像S1〜S4は、それぞれ被写体をサブレンズSL1〜SL4の光学中心を視点として撮影した画像である。
サブ画像S1〜S4は、図5(b)に示すように、それぞれ縦(V軸方向)にv個、横(U軸方向)にu(ここでは25とする)個の画素が格子状に並んで構成されている。サブレンズSL1〜SL4の光学中心は、それぞれ距離(視差)d1〜d3ずつ離れている。ここでは視差d1〜d3は同じ値dであるとする。視差dの値は、マイクロレンズアレイLAを用いて撮影する場合はマイクロレンズアレイLAの物理的な構成によって定まる。視差dの値は撮像設定情報に含まれる。
【0047】
サブ画像S1〜S4の縦(V軸)方向は被写体空間のY軸方向に、横(U軸)方向は被写体空間のX軸方向に、それぞれ相当する。サブ画像S1〜S4の同じ行(例えばi行目)の各画素列は、同一のエピポーラ平面に対応する画素列である。エピポーラ平面とは、被写体の注目点と、被写体を撮影する2つの視点と、の三点が形成する平面である。
【0048】
あるエピポーラ平面に対応する画素列を、対応する視点の順番に配置した画像が、EPIである。以下、EPIを構成する実際に撮影された画像(実画像)の各列を実画素列と、実画素列の各画素を実画素と表記する。なお、EPIは、図5の例ではサブ画像S1〜S4から、サブ画像のV軸方向の画素列の数V個だけ定義できる。
図5(c)は、図5(b)のサブ画像S1〜S4のi行目の各画素列を順に並べて生成したEPIを示す。
ここで、EPIの縦方向(図5(c)のX軸)は、被写体空間(図5(a))のX軸に対応する。また、EPIの横方向(図5(c)のU軸)は、サブ画像(図5(a))のU軸に対応する。EPIのU軸方向の各列を構成する画素に、画素ナンバ(ここでは1〜25)を割り当てる。EPIの各行は、X軸方向に、対応する視差d1〜d3に対応する間隔で配置される。なお、視差d1〜d3が略同一である場合は、各行間を隣接して配置しても良い。
【0049】
図5(c)のEPIの各画素内には、その画素に対応する被写体の部分を示す符号(A1〜A7,B1〜B25)が記載されている。
例えば、物体Aの部分A1に対応する画素は、実画素列1(R1)では画素ナンバ7の画素に現れ、実画素列2(R2)では画素ナンバ10の画素に現れる。実画素列1と実画素列2とにおける画素ナンバの差Δ1は3である。各EPIの行間(実画素列1(R1)と実画素列2(R2)との間、実画素列2(R2)と実画素列3(R3)との間、実画素列3(R3)と実画素列4(R4)との間)で生じる画素ナンバの差Δ(Δ1〜Δ3)をその被写体のEPI視差と呼ぶ。視差d(=d1=d2=d3)が等しい場合はEPI視差(Δ1〜Δ3)も等しい。
【0050】
実画素列1(R1)〜実画素列4(R4)が、対応するサブレンズSL1〜SL4の間の視差d1〜d3に対応する間隔で配置されているため、同一の被写体に対応するEPI上の画素は、EPI上で直線上に並ぶ。
具体的には、例えば物体Aの右端(A7)の部分に対応する画素は、図5(c)の直線L(A7)上に並ぶ。ここで、直線L(A7)を、被写体部分A7のEPI直線と呼ぶ。
【0051】
EPI直線は、対応する被写体が近いほどEPIのX軸に対して大きな角度を持つ。これは、被写体(例えばA7)が近くにあればあるほど、被写体(A7)からレンズL1〜L4に進入する光の角度が視差d1〜d3により大きく変化するため、対応する画素の位置(画素ナンバ)が互いに大きくU軸方向にずれるためである。
一方、例えば被写体が背景BのようにレンズL1〜L4から十分離れた場所にある場合は、光はレンズL1〜L4に略平行に進入するため、対応する画素の位置(画素ナンバ)はU軸方向で変化せず、EPI直線L(B1)のように、EPIのX軸に対して平行となる。
【0052】
被写体上のある点Qに対応するEPI直線L(Q)とX軸との交差角度θ(Q)は、点Qとサブレンズとの間の距離zq、視差d、マイクロレンズアレイLAと撮像面IEとの距離、撮像素子間の距離、等によって定まる。
【0053】
EPI視差Δ(=Δ1=Δ2=Δ3)が大きいと、EPIの各行で大きな情報のギャップ(画素抜け)が存在することとなる。この画素抜け(情報ギャップ)は画像の再構成を行った際のノイズの原因となる。そこで、本実施形態では、サブ画像の間に仮想的な補間画像を生成して、EPIの実画素間列の間に配置して再構成画像の生成に用いて画素抜けによるノイズを低減する。
【0054】
図4(b)に戻って、EPI生成部321は生成したEPIを角度推定部322と、補間画像設置部323と、に伝達する。
【0055】
サブ画像Sが横にN個、縦にM個存在しており、それぞれの実画像が縦にV個の画素列、横にU個の画素列で構成されている場合、EPIは合計でV・N+U・M個定義できる。
EPI生成部321は、M・N個のサブ画像Sからなるライトフィールド画像LFを取得すると、上記(V・N+U・M)個のEPIをすべて生成する。
【0056】
角度推定部322は、EPI生成部321からEPIを伝達されると、EPI上の各実画素について、補間設定記憶部332に記憶された補間設定を用いて、EPI直線がX軸と成す角度θを推定する。
補間設定の情報は、生成する補間画像の数、補間画像を設置する相対位置、角度推定に用いられるパラメータ、等を含む。補間設定は、操作部340を用いてユーザが定義し、補間設定記憶部332に記憶されている。補間設定は、工場出荷時にあらかじめ補間設定記憶部332に記憶されている情報であってもよい。
【0057】
処理対象となる実画素についてEPI直線がX軸と交差する角度θを推定する処理の概要を説明する。
【0058】
注目実画素を画素Pxl(Rx、u)と表記する。Rxは注目実画素が実画素列Rx(x列目の実画素列)の画素であること、uは注目実画素が実画素列Rx中のu番目の画素であることを意味する。そして、注目実画素Pxl(Rx、u)を通過するX軸となす角が角度θである直線をLine(θ)と表記する。
実画素列2(R2)の画素ナンバ16の画素Pxl(R2、16)を注目実画素とした角度θを推定する処理の例を図6に示す。図6は、画素Pxl(R2、16)に対して定義された、複数のθに対応する複数の直線Line(θ)を示している。
そして、各直線Line(θ)上にあるR1〜R4の実画素について、Pxl(Rx、u)の直線Line(θ)がEPI直線である確からしさの評価値Cを直線上に存在する画素値の差に基づいて算出する。
【0059】
評価値Cは式(1)に基づいて算出される。評価値Cの値(C値)が小さいほど直線Line(θ)上の実画素の画素値の誤差が小さく、その直線上の画素が対応する信頼度が高い。評価値Cの信頼度がもっとも高くなる角度θを導出して、その実画素について推定されたEPI直線の角度θとする。
【0060】
【数1】
【0061】
式(1)のIは注目画素の画素値、EPIはLine(θ)上にある注目画素以外の各画素を表すパラメータ、Ikは直線上にある注目実画素以外の各画素の画素値、Kは直線上にある注目実画素以外の画素の数である。
【0062】
なお、評価値Cは、式(1)に限らず、直線Line(θ)上の各画素の画素値の誤差が大きいほど解が大きくなる任意の算出式を用いて算出してもよい。たとえば、評価値Cは、注目実画素の画素値と直線上の画素値の差を二乗して加算し、Kで除算する式を用いて算出されてもよい。
【0063】
なお、直線Line(θ)上に存在する画素は、以下の処理により抽出される。
(1)Line(θ)と各画素列の中心線との交点Pcを求める。
(2)交点Pcが画素列の画素Aの中心と画素Bの中心の中間にある場合、画素Aと画素Bのうち中心が交点Pcと近い画素がその画素列においてLine(θ)上に存在する画素として選択される。
(3)交点Pcが画素Aの中心である場合、画素Aがその画素列においてLine(θ)上に存在する画素として選択される。
(4)交点Pcが画素列から外れている場合(図6の例では、画素ナンバ1又は画素ナンバ25の外側にある場合)、その画素列にはLine(θ)上の画素は存在しない。
【0064】
図4(b)に示す角度推定部322は、評価値Cの信頼度が最も高い角度θをその画素の推定EPI直線とし、そのC値が所定の閾値以下であればその角度θを後述する実画素情報リストに登録する。例えば、図6の注目実画素Pxl(R2、16)に対応する被写体A7に対応する画素はLine(θ2)上に存在するため、角度θ2が画素(R2、16)に登録される。
【0065】
このとき、EPI直線を推定することが困難な画素がある。例えば、図6の画素Pxl(R4、13)に対応する被写体は、図5に示す背景Bの部分B13である。B13に対応する画素は、物体Aが無ければ、X軸に対して平行な角度0のEPI直線(Pxl(R4、16)のLine(0))上に存在するはずである。
しかし、B13は、実画素列1〜3では物体Aに隠れてしまっているため、画素Pxl(R4、13)に対応する画素は実画素列1〜3には存在しない。そのためEPI直線を推定することが出来ない。
また、例えば、画素Pxl(R4、8)に対応する被写体は、背景Bの部分B8である。部分B8に対応する画素は、実画素列2〜3ではPxl(R4、8)のLine(θ0)上に存在するが、実画素列1では物体Aに隠れているため存在しない。このため、Pxl(R1、8)の画素値によっては、直線Line(0)を正しく推定できず、角度0とは異なる角度θがPxl(R4、8)について登録されてしまう可能性がある。
【0066】
そこで補間画像生成装置30は、繰り返して推定処理を行い、信頼度が高い推定直線が得られた画素を、次の繰り返しにおける推定処理で処理対象から排除して推定処理を行う。
この処理について、図7を参照して説明する。
【0067】
まず、図7で斜線又は網目で示された実画素は、EPI上の実画素列1〜4のすべてに対応する実画素が存在するため、ノイズの影響を考えなければ、高い信頼度(小さいC値)のEPI直線を推定することができる。
一度目の推定処理を、C値が予め信頼度が高くなるように小さい数値に設定された閾値以下で有る場合に限り角度θを登録するという条件で実行する。その結果、対応関係が確実な画素(斜線の画素及び網掛け線の画素)についてだけEPI直線が推定され、角度θが登録される。そして、次回以後のループでは、計算対象から角度θが登録された実画素を排除する。
【0068】
次に、一度目の推定処理で角度θが登録されなかった実画素だけを用いて、2度目の推定処理を行う。このとき、閾値が一度目の推定処理と同一であっても、式(1)の計算対象となる画素が減少しているため、2回目の推定では楕円で示された画素について角度θを推定することができる。例えば、2度目の推定処理でPxl(R4、7)の直線を推定する際には、Pxl(R1,7)の画素値は計算対象から排除される。そのため、Pxl(R4、7)の画素値とPxl(R1,7)の画素値の差は式(1)において加算されないため、角度0をPxl(R1,7)の画素値に影響を受けず、正しくEPI直線を推定することができる。
以後、同様の動作を角度θが登録されなかった実画素だけを用いて順次実行する。
【0069】
本実施形態によれば、各直線について評価値Cを算出し、評価値Cが小さい直線を推定EPI直線とすることで、各実画素に対応する実画素をEPI上で簡便に推定することができるという効果が得られる。また、一度角度θが登録された画素を次回以降の角度θ推定処理で比較対象から排除することで、対応関係が確かな(オクリュージョンによって遮蔽されていない)被写体に対応する画素から順に角度θを登録し、さらにオクリュージョンによって遮蔽されている被写体に対応する画素の対応関係を、遮蔽している被写体に対応する画素の影響を受けずに推定することができる。
【0070】
ある画素に何度目の推定処理で角度θが登録されたかによって、その画素に対応する被写体がオクリュージョンによって遮蔽されている程度を評価することができる。少ない処理回数で角度θが登録された画素ほど、対応する被写体がオクリュージョンによって遮蔽されている可能性が低いと評価できる。そこで、角度θが何回目の処理(イテレーション)で登録されたか、その回数(イテレーション数)を、その画素の角度θの評価値ITとして画素と対応付けて記憶する。
なお、図7で黒く塗りつぶされたPxl(R4、13)のように、対応する画素が無く角度の推定ができない(所定の閾値(閾値の最大値)より小さいC値を持つEPI直線を推定できない)画素もある。このような画素については角度θを空値(NULL)として記憶する。ノイズによってC値が閾値より低い直線を検出できなかった場合も同様である。
【0071】
図4(b)に示す角度推定部322は、各画素について、推定されたEPI直線の角度θと、EPI直線の推定過程で算出されるその直線の評価値IT(イテレーション数)と、を対応づけて登録した実画素情報リストを生成し、実画素情報記憶部331に記憶する。
【0072】
ここで、実画素情報記憶部331に記憶される実画素情報リストについて、図8を参照して説明する。
実画素情報リストは、実画素列上の各画素について、推定されたEPI直線の角度θと、角度θの評価値IT(角度θが登録されたイテレーション数)と、を対応づけて記憶する。
【0073】
実画素IDは、その行に登録されている画素を一意に表す識別子である。
実画素列IDは、その行に登録されている画素がどの実画素列の画素であるかを示す。画素ナンバは、その行に登録されている画素の画素ナンバを示す。
例えば、ある行の実画素列IDが#01、画素ナンバが1であることは、その行が、画素列R1の1番目の画素Pxl(R1、1)の角度θと評価値ITを登録していることを示す。
【0074】
θは、その行の実画素について推定されたEPI直線のX軸との角度θである。
θが0であることは、その画素に対応する被写体が、レンズから(無限遠と同一視できる程度に)遠くに存在すると推測されることを意味する。
一方、θが大きいことは、その画素に対応する被写体が、レンズに近い位置に存在することを示す。θは、0からカメラの性質によって定まる最大値θmaxまでのいずれかの値を取る。なお、θmaxの値は、撮像設定記憶部410に記憶されている。
【0075】
評価値ITは、その画素に登録された角度θが何回目のイテレーションで登録されたかを示す数値である。この数値が小さいほど、その画素に登録された角度θは信頼度が高い。
【0076】
図4(b)にもどって説明を続ける。
補間画像設置部323は、EPI生成部321からEPIを伝達されると、補間設定記憶部332が記憶する補間設定情報に基づいて、EPI上に補間画像の画素列を定義する。
【0077】
ここで、EPI上に定義される補間画像の画素列について、図9を参照して説明する。
EPI生成部321から伝達されたEPIには、撮影された画像の画素列が視差に対応する間隔で配置されている。図9では、上述の例に沿って、実画素列1〜4(EPIの第1行、第4行、第7行、第10行)が、視差dに対応する間隔で配置されている例を示す。
補間画像設置部323は、補間設定情報に基づき、実画素列の間に所定数の補間画素列を配置する。ここでは、補間設定情報により、実画素列の間に補間画素列を2列ずつ均等に挿入すると定義されているものとする。この場合、補間設定情報に従って、EPI上に補間画像の画素列(補間画素列1〜6、V1〜V6)(EPIの第2行、第3行、第5行、第6行、第8行、第9行)を挿入する。
【0078】
補間画像設置部323は実画素列と実画素列との間に補間画素列を挿入する。このとき挿入される補間画素列の各画素(補間画素)の画素値はゼロである。
この処理は、サブレンズSL1〜SL4(実レンズ)の間に仮想的なレンズ(補間レンズ)を設置し、補間レンズから得られると推測される画像の画素列のひな形をEPI上に配置することと等しい。
例えば、図9の補間画素列1は、実画像S1に対応するレンズSL1と、実画像S2に対応するサブレンズSL2と、の間に存在する補間レンズSLV1から得られると推定される仮想的なサブ画像(補間画像)SV1のv行目の画素列である。補間レンズSLV1は、サブレンズSL1〜SL4がなす直線上であって、サブレンズSL1から仮想視差dv(=d1/3)だけ離れた位置に存在する。
【0079】
補間画素列を挿入するEPI上の位置及び挿入する画素列の数は、補間設定によって適宜定めることが出来る。例えば、実画素列1から仮想視差dv1=d1/5だけ離れた補間画像の補間画素列1と、仮想視差dv2=d1/2だけ離れた補間画素列2を、実画像S1の実画素列1と実画像S2の実画素列2の間に挿入しても良い。また、実画素列1と実画素列2の間に3つの補間画素列を挿入し、実画素列2と実画素列3の間には補間画素列を挿入しない、といった設定も可能である。
【0080】
図4(b)に戻って説明を続ける。
補間画像設置部323は、補間画素列を挿入したEPIを、対応検出部324に伝達する。対応検出部324は、伝達されたEPIの各実画素について、その画素と対応する補間画素を抽出する。
【0081】
対応検出部324は、EPI上の各実画素について、その実画素と、その画素について登録された推定EPI直線上の補間画素と、を対応する画素の集合として検出する。この処理は、信頼度が高い(登録された評価値ITが小さい)実画素から順に行われる。各画素の集合に対して、実画素の評価値ITをその対応関係の信頼度(評価値ITr)とする。
【0082】
対応検出部324は、実画素一つと、その実画素に対応する補間画素の集合と、その対応の評価値ITrと、を示す情報(以下、対応情報と記す)を抽出すると、当該対応情報を対応評価部325に伝達する。
【0083】
対応評価部325は、対応検出部324から対応情報を伝達されると、その対応関係の確からしさを評価する。この評価は、その対応の評価値ITrと、補間情報記憶部333に記憶された後述する補間画素リストに基づいて行われる。具体的な評価方法は後述する。
【0084】
対応評価部325は、一つの対応情報について対応の確からしさの評価が完了すると、対応情報と評価結果とを画素加算値部326に伝達する。
画素値加算部326は、伝達された対応情報と評価結果とに基づき、EPI画像の補間画素に画素値を加算する。そして、加算結果を補間情報記憶部333に記憶された補間画素リストに記憶する。
【0085】
ここで、補間情報記憶部333に記憶される補間画素リストについて、図10を参照して説明する。
補間画素リストは、EPI上の各補間画素を一意に示す補間画素ID(補間画素列IDと画素ナンバー)と、その補間画素の現在までの画素値と、その補間画素に実画素の画素値が加算された回数(加算回数)と、その補間画素の評価値ITrと、を対応づけて記憶している。
一度も画素値が加算されていない場合は、画素値と評価値ITrはNULLである。
ここで、補間画素の評価値ITrは、その画素に対応する実画素(それまでにその補間画素に画素値を加算した実画素)のうち、もっとも評価値ITが小さい(もっとも信頼度の高い)実画素の評価値である。
【0086】
ここで、対応検出部324、対応評価部325,画素値加算部326、が行う補間画素値加算処理の概要を、図11を参照して説明する。
図11では、その補間画素に画素値が加算された回数を補間画素列の補間画素内の数値で示す。なお、加算回数0の表記は省略している。
【0087】
まず、対応検出部324が、図11(a)で斜線で示された実画素Pxl(R1,7)を注目実画素とし、実画素情報記憶部331に記憶されている実画素情報リストから登録されている角度θを読み込み、角度θに基づいて対応する補間画素(推定されたEPI直線上の補間画素)としてPxl(V1、8)、Pxl(V2、9)、Pxl(V3、11)、…を検出する。
【0088】
次に、対応評価部325は、Pxl(R1、7)とPxl(V1、8)との対応の確からしさを評価する。
即ち、Pxl(V1、8)の両隣の画素に、Pxl(R1,7)より評価値ITが低い(より信頼度が高い)実画素から画素値がすでに加算されているか否かを、補間画素リストを参照して判別する。両隣の画素により評価値ITが低い実画素から画素値が加算されていない場合、対応は確かであると推定する。
図11(a)の場合、Pxl(V1、8)の両隣(Pxl(V1、7)とPxl(V1、9))には未だ画素値が加算されていないので、対応評価部325はPxl(R1、7)とPxl(V1、8)との対応は確かであると判別する。
【0089】
そして、画素値加算部326がPxl(V1、8)にPxl(R1、7)の画素値を加算する。具体的には、補間画素リストのPxl(R1、7)の行の加算回数をインクリメントし、画素値を加算する。さらに、その行の評価値がNULLであれば、評価値ITrに実画素Pxl(R1,7)の評価値ITを登録する。
すでに画素値が一度以上加算されている場合、次の式(2)を用いて算出された数値を加算後の数値として登録する。
【0090】
【数2】
【0091】
このとき、V’は更新後の画素値、Vは更新前の画素値、Valは注目実画素の画素値、tはインクリメント前の加算回数である。
【0092】
以下、注目実画素Pxl(R1、7)について抽出されたその他の補間画素(Pxl(V2、9)、Pxl(V3、11)…)についても同様に判別処理・加算処理が行われる。
【0093】
注目実画素Pxl(R1,7)について処理が終わると、次の注目実画素が選択され、同様に対応する補間画素に画素値が追加される。次の注目実画素がPxl(R2、10)が注目実画素であった場合の処理結果を図11(b)に示す。
【0094】
さらに処理が進み、n回目のステップで背景Bの部分B9に対応する画素Pxl(R2、9)が注目実画素に選ばれた場合の処理を図11(c)に示す。
Pxl(R2,9)に登録されたθ値は0であり、対応する補間画素の候補としてPxl(V1,9)、Pxl(V2,9)、Pxl(V3,9)…が抽出される。図11(b)では、Pxl(R2,10)の画素値がPxl(V1,8)、Pxl(V2,9)、Pxl(V3,11)、に加算されている。
【0095】
対応評価部325は、このPxl(R2、9)と補間画素Pxl(V1,9)、Pxl(V2、9)、Pxl(V3、9)のそれぞれについて、対応の確からしさを評価する。
即ち、抽出された対応候補画素のそれぞれに隣接する補間画素が、すでにより小さい評価値ITを持つ実画素の画素値が加算されている補間画素(注目実画素より小さいITrを持つ補間画素)である(図11(c)の×で示された画素)か否かを判別する。
隣接する画素の両方が、注目実画素より小さいITrを持つ補間画素(例えばPxl(V1,9))は、オクリュージョンによって遮蔽されている被写体に対応する画素(オクリュージョン画素)であると推定される。そのため、その補間画素は注目実画素Pxl(R2、9)とは対応しないと判別して、画素値を加算しない。
【0096】
一方、隣接する補間画素の少なくとも一方のITrが、注目実画素のIT以上の場合には(Pxl(V2,9)及び(Pxl(V3,9))、その補間画素はオクリュージョン画素でないとの推定のもと、注目実画素Pxl(R2、9)の画素値が加算される。
【0097】
このとき、隣接する補間画素の一方のみに、より評価値ITの小さい実画素の画素値がすでに加算されている場合も、実画素Pxl(R2、9)の画素値を加算する。このような補間画素はオクリュージョンによって対応する被写体が隠れるエッジ部分に該当すると考えられる。エッジ部分により遠方の被写体に対応する画素の画素値を加算することにより、エッジを「丸める」ことが出来る。
【0098】
オクリュージョン画素か否かを、隣接する補間画素により評価値ITの小さい(信頼度が高い)実画素の画素値が登録されているか否かによって判別することにより、簡便にオクリュージョン画素か否かを判別して、ライトフィールド画像の奥行き情報を保持した補間画像を生成することが出来る。
【0099】
なお、ここでは隣接する補間画素の双方により評価値ITの小さい実画素の画素値が加算されている場合に限り、その補間画素をオクリュージョン画素であると判別した。しかし、オクリュージョン画素であるか否か判別する基準はこれに限られない。例えば、隣接する画素の少なくとも一つにより評価値の小さい実画素の画素値が加算されている場合にその補間画素をオクリュージョン画素であると判別しても良い。
このような判別方法によれば、より厳密に実画素と補間画素の対応を判定することができる。
【0100】
また、隣接する画素でなく、その補間画素そのものにより評価値ITが小さい実画素の画素値がすでに加算されている場合に、その画素をオクリュージョン画素であると判別しても良い。
【0101】
画素値加算処理が終わり、補間情報記憶部333に登録された補間画素リストが更新されると、画素値加算部326は、現在の注目実画素について処理が終了したことを対応検出部324に伝達する。そして、対応検出部324は、次の実画素について対応を検出し、同様に処理を続行する。すべての実画素について上記処理が行われると、そのEPI画像について、補間画像の生成が終わる。
【0102】
EPI生成部321が生成したすべてのEPIについて、補間画像を生成し終えると、出力部350が外部装置に補間済みのEPI(補間画像と実画像)を出力する。そして、補間画像生成装置30は処理を終了する。
【0103】
次に、上記構成を有する補間画像生成装置30が、補間画像を生成する処理を、図12〜図19を参照して説明する。
【0104】
補間画像生成装置30の情報処理部320は、入力部310がライトフィールド画像LF及び撮像設定情報を取得すると、図12に示す補間画像生成処理を開始する。
【0105】
補間画像生成処理が開始されると、入力部310からEPI生成部321に当該ライトフィールド画像LFと当該撮像設定情報が伝達される(ステップS101)。
【0106】
EPI生成部321は、取得したライトフィールド画像LFと、撮像設定情報と、から図5(c)に示すEPIを生成する(ステップS102)。
【0107】
EPI生成部321は、生成されたEPIの数Jを算出し、併せてそれぞれのEPIを1〜Jまでの数値でナンバリングする。また、カウンタjに1を代入する(ステップS103)。
【0108】
次に、EPI生成部321は、j番目のEPIにフォーカスする。ステップS105〜ステップS108は、フォーカスされたEPIについて実行される(ステップS104)。
【0109】
j番目のEPIについて、角度推定部322は、角度θ登録処理を実行する(ステップS105)。角度θ登録処理については後述する。
【0110】
角度θ登録処理が終了し、j番目のEPIの各実画素に角度θが登録され、実画素情報記憶部331に実画素情報リストが記憶されると、図9に示すように補間画像設置部323がj番目のEPIに補間画素列を挿入する(ステップS106)。
【0111】
補間画素列の挿入が終了すると、対応検出部324、対応評価部325、画素値加算部326、が図11に示した画素値加算処理を行う(ステップS107)。画素値加算処理(画素値加算処理1)については後述する。
【0112】
画素値加算処理が終わると、そのEPIについては処理を終了する。そしてjとJを比較して、未処理のEPIが残っているか判別する(ステップS108)。jがJ未満であって、未処理のEPIが残っている場合(ステップS108;NO)、jをインクリメントし(ステップS109)、ステップS104〜ステップS108の処理が繰り返す。
一方、jがJ以上であって、未処理のEPIが残っていない場合(ステップS108;YES)、情報処理部320は補間画像生成処理を終了する。
【0113】
補間画像生成処理を終了すると、出力部350は補間情報記憶部333に記憶された、補間画像と実画像とを画像再構成部220に伝達する。その後の処理については後述する。
【0114】
次に、角度θ登録処理(ステップS105)を、図13を参照して詳細に説明する。
【0115】
角度θ登録処理では、まず角度推定部322が変数を初期化する(ステップS201)。
具体的にはitに1を、カウンタnに1を、thに最初の閾値TH0を代入する。また、EPI上の実画素の数Nと、総イテレーション回数ITmaxを取得する。ここで、ITmaxとTH0は、補間設定記憶部332に記憶された数値である。ITmaxとTH0とは、実験等によって求められ予め初期設定で定められた数値であって良いし、ユーザが入力した任意の数値であってもよい。また、角度推定部322は、ステップS201でEPI上の実画素を、1〜Nの数でナンバリングする。
【0116】
ステップS201が終わると、次に角度推定部322はn番目の画素を選択して注目実画素とする(ステップS202)。
【0117】
そして、角度推定部322は、実画素情報記憶部331に記憶された実画素情報リストを参照し、注目実画素にすでに角度θが登録されているか否か判別する(ステップS203)。
すでに登録されている場合は(ステップS203;YES)、角度推定部322はその実画素については処理を終了する。即ち、nをインクリメントし(ステップS209)、ステップS202にもどる。
【0118】
注目実画素にまだ角度θが登録されていない場合(ステップS203;NO)、角度推定部322は注目実画素について角度θ推定処理を行う(ステップS204)。角度θ推定処理については後述する。
【0119】
角度θ推定処理が終わり、注目実画素に推定された角度θと、角度θの評価値Cが算出されると、次に角度推定部322は角度θの評価値Cが閾値thがより大きいか判別する(ステップS205)。角度θの評価値Cが閾値thより大きい場合(ステップS205;YES)、その角度θは、今回のイテレーションにおいて十分な信頼度を持たないので、その画素について今回のイテレーションでは角度θを登録しない。即ち、nをインクリメントし(ステップS209)、ステップS202にもどる。
【0120】
一方、角度θの評価値Cが閾値th以下の場合(ステップS205;NO)、角度推定部322は注目実画素にその角度θと、評価値IT(=現在のイテレーション回数it)と、を実画素情報記憶部331の実画素情報リストに登録する(ステップS206)。
【0121】
そして、次に角度推定部322はnがN以上であるか判別する(ステップS207)。nがN未満の場合(ステップS207;NO)、現在のイテレーションで未処理の実画素があるので、角度推定部322はnをインクリメントし(ステップS209)、ステップS202にもどる。
【0122】
一方、nがN以上の場合(ステップS207;YES)、このイテレーションでは全ての実画素について処理済みなので、次に角度推定部322はイテレーション回数が終了したか判別する(ステップS208)。即ちitがITmax未満の場合(ステップS208;NO)、まだ所定のイテレーション回数を終えていないので、itをインクリメントし、nを初期化し、thを新たな閾値THitに更新する(ステップS210)。そして、処理をS202から繰り返す。
【0123】
このとき、閾値thの更新ルールは、補間設定記憶部332に記憶された補間設定によって定まる。閾値thは、イテレーションを繰り返すほど大きくなる(直線の判別基準が甘くなる)。
ここでは、THitは現在のthに所定の差Δthを加算した数値であるとする。
なお、ここでは新たなイテレーションで必ず閾値thを更新するとしたが、イテレーションを繰り返す場合に閾値を更新する方法はこれに限られない。そのイテレーションで新たな実画素に角度θが登録された場合は、次のθ推定処理においてその登録された画素を排除して推定処理が行われるため、次のイテレーションで同じ閾値thを利用しても新たな実画素に角度θが登録される可能性がある。そのため、現在のイテレーションで新たな実画素に角度θが登録されていた場合、THitは現在のthと同じであってよい。
【0124】
一方、itがITmax以上の場合(ステップS208;YES)、所定のイテレーション回数を終えたので、角度推定部322は角度θ登録処理を終了する。
【0125】
次に、角度θ登録処理のステップS204で実行される角度θ推定処理について、図14を参照して説明する。
【0126】
角度推定部322は、角度θ推定処理を開始するとまず変数の初期化を行う(ステップS301)。即ち、カウンタmに1を、注目実画素について推定された角度(角度θ推定処理の答えとなる角度θ)である角度変数θansとその現在までの評価値をあらわす変数maxに空値NULLを、現在の処理対象となる角度を示す変数θmに初期値θ0を代入する。また、角度θ推定処理の繰り返し回数Mを抽出する。
Mとθ0は、補間設定記憶部332に記憶された数値である。Mとθ0とは、実験等によって求められ予め初期設定で定められた数値であって良いし、ユーザが入力した任意の数値であってもよい。ここでは、θ0は設計上の最大角度であるθmaxとする。
【0127】
ステップS301が終わると、角度推定部322は次にEPI上の実画素であって、注目実画素を通る角度θmの直線上に存在し、かつ未だ角度θが登録されていない画素を抽出する(ステップS302)。
【0128】
そして、角度推定部322はステップS302で抽出した画素の画素値を式(1)に用いて注目実画素を通る直線Line(θm)の評価値Cを求める。
【0129】
角度推定部322は、次にステップS303で算出した評価値Cが、以前のループで注目実画素に対して算出された評価値Cのうち最も小さい値であるか、即ち、その直線Line(θm)が注目実画素のもっとも確からしい直線か否かを変数maxと評価値Cを比較して判別する(ステップS304)。なお、maxの値がNULLだった場合、NULLは無限大として計算する。
【0130】
max≧評価値Cであった場合(ステップS304;NO)、θmは現時点で注目実画素の最も確からしい直線の角度であるので、変数maxにステップS303で算出した評価値Cを、変数θans にθmを代入する(ステップS305)。
【0131】
一方、max<評価値Cであった場合(ステップS304;YES)、注目実画素にはより確からしい角度θがすでに登録されているため、角度θmを登録せず、ステップS305をスキップする。
【0132】
次に、角度推定部322は所定の繰り返し回数が終わったか、mとMを比較して判別する(ステップS306)。
m≧Mであった場合(ステップS306;YES)、所定の繰り返し回数M回処理が終わったため、角度推定部322は角度θ推定処理を終了し、θansを注目実画素の推定角度とし、maxの値をその評価値Cとして角度θ登録処理のステップS205を開始する。
【0133】
一方、m<Mであった場合、(ステップS306;NO)、まだ所定の繰り返し回数処理が終わっていないので、角度推定部332はカウンタmをインクリメントし、θmをθ’に更新してステップS302から処理を繰り返す。
ここで、θmの更新ルールは補間設定記憶部332に記憶された設定に従う。ここでは、θ’は、更新前のθmに所定の数値Δθを減算した値とする。
【0134】
次に、図12に示す補間画像生成処理の画素値加算処理(ステップS107)の第1の具体例(画素値加算処理1)を図15を参照して説明する。
【0135】
画素値加算処理1では、まず対応検出部324が変数を初期化する(ステップS401)。
ステップS401において、対応検出部324は、現在のイテレーション回数を示す変数it2と、カウンタ変数kと、に1を代入する。また、EPI上の実画素の数Nと画素値加算処理1の総イテレーション回数ITmaxとを取得する。また、角度θ登録処理で登録された実画素のナンバリング情報を取得する。ここで、各実画素のナンバは、その実画素が実画素情報記憶部331に記憶された実画素情報リストの何行目に登録されているかによって定まる。
ここで、実画素の数Nは角度θ登録処理で抽出された実画素の数Nである。また、総イテレーション回数ITmaxは、角度θ登録処理で抽出したITmaxと同じである。
【0136】
初期化が終わると、対応検出部324はk番目の実画素を選択して注目実画素とする(ステップS402))。具体的には、実画素情報リストのk行目に登録されている実画素の情報を抽出して、その実画素を注目実画素とする。
【0137】
次に、対応検出部324は注目実画素に角度θが登録されているか否か判別する(ステップS403)。即ち、実画素情報リストのk行目の角度θの値がNULLで無いか判別し、NULLであった場合は注目実画素に角度θが登録されていないと判別する(ステップS403;NO)。そして、その画素については処理を終了してステップS406にジャンプする。
【0138】
一方、実画素情報リストのk行目の角度θがNULLで無く、注目実画素に角度θが登録されている場合は(ステップS403;YES)、次に対応検出部324は注目実画素の評価値ITと現在のイテレーション回数it2とを比較する(ステップS404)。
【0139】
注目実画素の評価値ITと現在のイテレーション回数it2が異なる場合(ステップS404;NO)、その実画素は今回のイテレーションにおいて処理対象ではないため、対応検出部324はその画素については処理を終了する。
即ち、対応検出部324はステップS406にジャンプする。
【0140】
一方注目実画素の評価値ITが現在のイテレーション回数it2と等しい場合は(ステップS404;YES)、対応検出部324は注目実画素に基づく補間処理を実行する(ステップS405)。ステップS405で実行される処理については後述する。
【0141】
ここで、注目実画素の評価値ITは、注目実画素の角度θが角度θ登録処理(図14)の何回目のイテレーションで登録されたかを示す数値である。このように、イテレーション回数it2と等しい評価値ITを持つ実画素に基づいて補間処理を実行し、イテレーションを繰り返すことは、評価値が小さくオクリュージョンによる対応関係の齟齬が発生している可能性がより小さいと推測される実画素から補間処理を実行することである。
【0142】
注目実画素に基づく補間処理(ステップS405)が終わると、対応検出部324は未処理の実画素が残っているか否か判別する(ステップS406)。具体的には、kがN以上であるか判別し、N未満であった場合は(ステップS406;NO)、対応検出部324はそのイテレーションで未処理の実画素があると判別する。そして、kをインクリメントし(ステップS407)、次の実画素を注目実画素としてステップS402から処理を繰り返す。
【0143】
一方、kがN以上で、そのイテレーションで全ての実画素について処理したと判別すると(ステップS406;YES)、対応検出部324はそのイテレーションを終了する。そして、it2とITmaxを比較して、イテレーションが所定の回数ITmaxだけ繰り替えされたか判別する(ステップS408)。
it2がITmax未満であるとき(ステップS408;NO)、所定のイテレーション回数だけ処理を繰り返していないと判別し、対応検出部324は次のイテレーションに移行する。
具体的には、対応検出部324はit2をインクリメントし、kに1を代入し(ステップS409)、処理をステップS402から繰り返す。
一方、it2がITmax以上の場合(ステップS408;YES)、対応検出部324は画素値加算処理1を終了する。
【0144】
次に、画素値加算処理1のステップS405で実行される注目実画素に基づく補間処理について図16を参照して説明する。
注目実画素に基づく補間処理では、まず対応検出部324が実画素情報記憶部331の実画素情報リストからその注目実画素の角度θを抽出する。
そして、抽出した角度θに基づき、注目実画素の推定EPI直線Line(θ)を定義し、EPI直線上にある補間画素を抽出する(ステップS501)。
【0145】
次に、対応検出部324は抽出した補間画素の数Iを取得し、カウンタ変数iに1を代入する(ステップS502)。さらに、対応検出部324はステップS502で抽出した各補間画素を1からIまでナンバリングする。
【0146】
対応検出部324がステップS502を終えると、次に対応評価部325が補間情報記憶部333に記憶された補間画素リストを参照し、i番目の補間画素に隣接する補間画素を抽出する(ステップS503)。即ち、対応評価部325はi番目の補間画素の補間画素列ID(IDi)と画素ナンバ(Ni)を補間画素リストから抽出し、補間画素列IDがIDi、画素ナンバがNi+1の補間画素とNi−1の補間画素とを抽出する。
【0147】
そして、対応評価部325は、i番目の補間画素が、オクリュージョン画素であるか否か判別する(ステップS504)。
オクリュージョン画素か否かは、ステップS503で抽出した隣接する補間画素の双方に、前回までのイテレーションで画素値が加算されたか(隣接する補間画素に、現在のイテレーション回数it2より小さい評価値ITrが補間画素リストに登録されているか)否かによって判別される。
【0148】
隣接する二つの補間画素の両方にit2より小さい評価値ITrが登録されている場合、i番目の補間画素はオクリュージョン画素であり、注目実画素とは対応しないと推測できる。即ち、i番目の補間画素は注目実画素が対応する被写体より前方にある被写体に対応する画素であると推測できる。そのため、対応評価部325はi番目の補間画素がオクリュージョン画素であると判別すると(ステップS504;YES)、画素値加算部326に画素値の加算を指示せず、ステップS506にジャンプする。
【0149】
一方、i番目の補間画素がオクリュージョン画素で無いと判別すると(ステップS504;NO)、i番目の補間画素は注目実画素と対応するとの推測に基づき、対応評価部325はi番目の補間画素に注目実画素値を加算することを画素値加算部326に伝達する。画素値加算部326は、i番目の補間画素の画素値を、式(2)に基づいて加算し、加算した画素値を補間画素リストのi番目の補間画素に対応する行に登録する(ステップS505)。また、ステップS505では、画素値加算部326は現在のイテレーション回数it2が登録された評価値ITr以下であった場合は、it2をその行の新たな評価値ITrとして登録する。
【0150】
画素値加算部326が注目実画素の画素値を補間画素に加算して補間画素リストを更新すると、対応検出部324はステップS501で抽出した補間画素全てについて処理が終わったか否か、iとIを比較して判別する(ステップS506)。
iがI以上で、全ての抽出された補間画素について上記処理が終わったと判別すると(ステップS506;YES)、対応検出部324は注目実画素に基づく補間処理を終える。
【0151】
一方、iがI未満であり、未処理の補間画素が残っていると判別すると(ステップS506;NO)、対応検出部324はiをインクリメントし(ステップS507)、次の補間画素についてステップS503から処理を繰り返す。全ての画素について補間画像の加算処理を終了すると、そのEPIについて補間画像の生成が終了したとの判断の元、注目実画素に基づく補間処理を終了する。
【0152】
補間画像生成装置30は、上述の一連の処理により補間画像を生成する。補間画像生成装置30は、上記処理を繰り返して実行することにより、補間画像を実画素に対して平面的に生成する。この平面的な補間画像の生成処理について、図17を参照して説明する。
【0153】
まず、図17において円で示された実画像(実11〜実12…)から、縦横に第1段階のEPIの集合を生成する(EPI(縦11)、EPI(縦21)…、EPI(横11)、EPI(横21)…)。横方向のEPIの集合(EPI(横11)、EPI(横21)、…)はそれぞれV個のEPIからなり、マイクロレンズアレイLAの縦方向のサブレンズの数(M個)だけ定義できる。すなわち、横方向のEPIがV・M個定義できる。同様に、縦方向のEPIがN・U個定義できる。よって、EPIは合計でV・M+N・U個定義できる。
補間画像生成装置30は、実画像を用いてまずV・M+N・U個の正方形で示した第1段階の補間画像を生成する(図17(a))。なお、正方形の内部の数字が1であることは、正方形が第1段階の補間画像であることを示す。
【0154】
次に、第1段階の補間画像を仮想的な実画像として、第2段階のEPI郡を生成する(EPI(縦12)、EPI(縦22)、EPI(縦32)…)。そして、第2段階の補間画像を生成する(図17(b))。なお、正方形の内部の数字が2であることは、その正方形が第2段階の補間画像であることを示す。
【0155】
このように、2段階に分けて平面的に補間画像を生成することにより、本実施形態の補間画像生成装置30は、被写体をとらえる平面的なサンプリング数をレンズや撮像素子を増やすことなく仮想的に上昇させることができる。
【0156】
なお、ここでは第2段階の補間画像を、縦方向のEPI集合を用いて生成したが、第2段階のEPIの生成方法はこれに限られない。第2段段階のEPIは横方向のEPI集合を用いて生成してもよい。また、縦方向に生成した生成した中間段階の補間画像と、横方向に生成した中間段階の補間画像と、を平均して生成した補間画像を第2段階の補間画像としても良い。
【0157】
上記したすべての補間画像を生成すると、補間画像生成装置30は画像再構成部220に生成した画像と、実レンズと補間レンズの位置情報と、を画像再構成部220に出力して処理を終了する。
【0158】
実施形態1に係る補間画像生成装置30は、上記の処理によりオクリュージョンが起こっていると推定される補間画素の画素値を、より手前の被写体に対応すると推定される実画素のみに基づいて決定することができるため、オクリュージョンに対応した補間画像を生成することが出来る。
【0159】
また、実施形態1に係る補間画像生成装置30は、角度θを登録する閾値をイテレーションごとに可変させ、角度θの推定基準を最初は厳しく、後になるほど甘くする。これにより、初期のイテレーションではオクリュージョンが起こっていない、対応関係が確実な画素に角度θを登録し、後のイテレーションではオクリュージョンやノイズで対応関係が不確かな画素でも対応関係を定義する。そのため、補間画素に対応すると推定される実画素が複数あった場合に、より対応関係が確実な実画素を選別し、選別した実画素の画素値に基づいて補間画素の画素値を決定することができる。
【0160】
次いで、補間画像生成装置30が生成したライトフィールド画像LF(補間済みのEPI)から、画像再構成部220が画像を再構成する処理を、図18、図19を用いて説明する。ここでは、ライトフィールド画像LFから、メインレンズMLから距離a1の地点にリフォーカスした画像を再構成することとする。
【0161】
画像再構成部220は、補間画像生成装置30から補間済みのEPIと実レンズ及び補間レンズの位置情報とを伝達されると、図18に示す再構成画像生成処理を実行する。
【0162】
図18の再構成画像生成処理を開始すると、画像再構成部220はまず初期化処理を行う(ステップS601)。
ステップS601では、画像再構成部220が記憶部40の再構成設定記憶部420から、再構成画像の設定を取得する。このとき、再構成画像の設定はリフォーカスの距離a1の情報を含む。また、撮像設定記憶部410から、撮像設定情報を取得する。さらに、カウンタ変数であるlとpとに1を代入する。さらに、画素p(p番目の画素)に画素値が加算された回数を表す変数tpに0を代入する。
さらに、補間画像の実レンズと補間レンズの合計数Lと、再構成画像の総画素数Pとを取得する。
また、再構成画像の各画素を、1〜Pまでの数でナンバリングする。さらに、実レンズと補間レンズとをまとめて1〜Cまでの数でナンバリングする。
【0163】
上記の初期化処理(ステップS601)を終えると、画像再構成部220は取得した画像からl番目のレンズ(レンズl)に対応するサブ画像Sを選択する(ステップS602)。
【0164】
次に、画像再構成部220は再構成画像上の注目画素pに対応する位置PSから光が発せられた場合に、当該光がマイクロレンズアレイLAに含まれるサブレンズlを通過して撮像面IEへ到達するまでの軌跡レンズl(対応するl番目のサブレンズ)の位置情報を用いて特定し、特定された軌跡を辿る光が撮像素子の表面IEに到達した到達点PEに在るサブ画像上の画素を特定する(ステップS603)。
【0165】
具体的には、図19に示すX軸方向における注目画素のOB上の対応する位置PSと光軸OAとの距離をxとし、到達点PEと光軸OAとの距離をx’’とする。
【0166】
ここで、ステップS601で取得された撮像設定には、メインレンズMLの焦点距離fML、メインレンズMLからマイクロレンズアレイLAまでの距離c1、マイクロレンズアレイLAから撮像面IEまでの距離c2が含まれている。また、及びレンズ位置情報に基づいて算出される光軸OAからレンズlの光学中心までの距離dを算出する。なお、ステップS601で取得された距離情報で表される距離は、メインレンズMLからピント位置までの被写体距離a1である。
【0167】
画像再構成部220は、焦点距離fML及び被写体距離a1を以下の式(3)に用いて、メインレンズMLからメインレンズの結像面IPまでの距離b1を算出する。
【0168】
【数3】
【0169】
次に、画像再構成部220は、被写体距離a1と、上記式(3)を用いて算出された距離b1を以下の式(4)に用いて、光軸OAからメインレンズMLの結像点PFまでの距離x’を算出する。
【0170】
【数4】
【0171】
その後、画像再構成部220は、メインレンズMLからマイクロレンズアレイLAまでの距離c1と、上記の式(3)を用いて算出された距離b1とを以下の式(5)に用いて、メインレンズMLの結像面からl番目のレンズまでの距離a2を算出する。
【0172】
a2=c1−b1・・・(5)
【0173】
次に、画像再構成部230は、光軸OAからl番目のレンズLの主点までの距離d、上記の式(4)を用いて算出された距離x’、マイクロレンズアレイLAから撮像素子の表面IEまでの距離c2、及び上記の式(3)を用いて算出された距離a2を以下の式(6)に用いて、到達点PEと光軸OAとの距離x’’を算出する。
【0174】
【数5】
【0175】
尚、Z軸方向の計算式(3)及び(5)は、ガウスの結像公式から導かれる。また、X軸方法の計算式(4)及び(6)は、三角形の相似関係から導かれる。上記式(4)及び(6)では、記号x、x’、及びx’’を用いて、X軸方向における注目画素の位置PSと光軸OAとの距離、光軸OAからメインレンズMLの結像点PFまでの距離、及び到達点PEと光軸OAとの距離を算出した。これと同様に、上記式(5)及び(7)において記号y、y’、及びy’’を用いることで、X軸及びZ軸の双方に垂直なY軸方向における、注目画素の位置PSと光軸OAとの距離、光軸OAからメインレンズMLの結像点PFまでの距離、及び到達点PEと光軸OAとの距離を算出できる。
【0176】
到達点PEが定まると、レンズlに対応するサブ画像上のPEに対応する対応画素が定まる。そして、図18のステップS603で対応画素が定まると、画像再構成部220は特定された画素の画素値を取得する。
【0177】
そして、画像再構成部220はPEに対応する画素値が存在する(対応する画素がサブ画像上に存在し、かつ画素値がNULLでない)か否か判別する(ステップS604)。
対応する画素値が無い場合(ステップS604;NO)、そのサブ画像については再構成画像の画素pに画素値を追加しない。
【0178】
補間画素の画素値がNULLである場合に画素値を追加しないことで、ノイズやオクリュージョンにより対応がはっきりしない補間画素の画素値の情報を再構成画像から排除することができる。
【0179】
一方、対応する画素値が有る場合(ステップS604;YES)、再構成画像の画素pに対応画素の画素値を加算する。
このとき、加算後の画素値Vp’は、式(7)を用いて算出する。
【0180】
【数6】
【0181】
なお、Vpは加算前のp画素の値、VPEは対応画素の画素値、tpはそれまで画素pに画素値が加算された回数である。
ステップS605では、さらにtpをインクリメントする。
尚、再構成画像の注目画素pの画素値は、再構成画像生成処理の開始時に値「0」に初期化されている。
【0182】
その後、画像再構成部220は、lとLを比較して、全てのレンズに対応するサブ画像について加算処理が終了したか判別する(ステップS606)。
lがL未満である場合(ステップS606;NO)、未処理のサブ画像が存在すると判別して、画像再構成部220は、lをインクリメントし(ステップS607)、次のレンズについてステップS602から処理を繰り返す。
【0183】
一方、lがL以上で、全てのレンズに対応するサブ画像について処理が終了したと判別すると(ステップS606;YES)、次に画像再構成部220はpとPを比較して再構成画像上の全ての画素を処理したか判別する(ステップS608)。
【0184】
pがP未満である場合(ステップS608;NO)、未処理の画素が存在すると判別して、画像再構成部220は、次の画素について処理を実行する。即ち、pをインクリメントし、lに1を代入し、tpに0を代入し(ステップS609)、ステップS602から処理を繰り返す。
【0185】
一方、pがP以上であり、全ての画素について処理が終了したと判別すると(ステップS608;YES)、次に画像再構成部220は再構成画像生成処理を終了する
【0186】
その後、デジタルカメラ1は再構成された再構成画像OBの画像データを、図1の表示部520へ出力する。尚は、図1のI/O部510を介して、記録媒体へ再構成画像OBの画像データを格納してもよく、また、他の装置へ再構成画像OBの画像データを出力しても良い。
【0187】
実施形態1に係るデジタルカメラ1は、マイクロレンズアレイLAを用いて撮影することにより、略同一の間隔で格子状に配置された視点から、M×N個のサブ画像を同時に、一つの光学デバイスで撮影することが出来る。
デジタルカメラ1は補間画像生成装置30が生成した補間画像を用いて、従来よりノイズの少ない再構成画像を生成することができる。
【0188】
(実施形態2)
次に、本発明の実施形態2について説明する。実施形態2は、画素値加算処理において、登録された角度θが大きい実画素を優先して、補間画素に画素値を加算することを特徴とする。
【0189】
実施形態2に係るデジタルカメラ1及び補間画像生成装置30は、実施形態1に係るデジタルカメラ1と同様の構成を持つ。
【0190】
実施形態2に係る補間画像生成装置30は、図12に示した補間画像生成処理を実行する。ここで、実施形態2に係る補間画像生成装置30は、補間画像生成処理のステップS107で画素値加算処理1ではなく画素値加算処理2を実行する。
【0191】
図12に示す補間画像生成処理のステップS106が終わると、対応検出部324が画素値加算処理2を開始する。
対応検出部324と、対応評価部325と、画素値加算部326と、が実行する画素値加算処理2について、図20を参照して説明する。
【0192】
画素値加算処理2では、まず対応検出部324が変数を初期化する(ステップS701)。
即ち、対応検出部324はステップS701で現在のイテレーション回数を示す変数it3に1を代入する。また、そのイテレーションで処理対象となる角度を表す変数θit3に初期値θ0として実画素情報リストに登録されている角度θのうち最大の数値を代入する(ステップS701)。
【0193】
登録されている角度θがより大きい実画素が、よりデジタルカメラ1に近い場所に存在する被写体に対応する画素であり、補間画素により優先的に加算されるべき実画素であると推定できる。そこで、実施形態2では、登録されている角度θが大きい実画素を先のイテレーションで処理することにより、オクリュージョン画素においてより手前の被写体に対応する実画素の画素値のみを加算するように処理する。
即ち、ステップS701において、対応検出部324が図8に示す実画素情報リストを登録されている角度θで降順(値が大きい順)にソートする。そして、ソート後の実画素情報リストに登録された実画素を、上から順に下記処理を実行する。このとき、角度θがNULLである画素は除外する。
また、画素値加算処理2の総イテレーション回数IT3を取得する。このとき、IT3は実画像情報リストに登録されている角度θの列に登録されている数値の数である。例えば、実情報リストの角度θの列に0が5つ、10が3つ、20が4つ登録されているとする。このとき、角度θの列には0、10、20、の三つの数値が登録されているため、IT3は3である。
【0194】
初期化が終わると、対応検出部324は実画素情報リストに登録された実画素から、角度θの列の数値が現在のイテレーションで処理対象となる角度θit3である実画素を抽出する(ステップS702)。
【0195】
次に、対応検出部324はステップS702で抽出した実画素の数Pを抽出し、カウンタ変数pit3に1を代入する(ステップS703)。また、抽出した実画素に、1〜Pまでナンバリングを行う。
【0196】
そして、対応検出部324は抽出した実画素のうち、pit3番目の実画素(画素pit3)を注目実画素とする(ステップS704)。
【0197】
注目実画素を決定すると、対応検出部324は図16に示した注目実画素に基づく補間処理を実施形態1と同様に実行する(ステップS705)。
【0198】
注目実画素(画素pit3)に基づく補間処理が終わると、対応検出部324はステップS702で抽出された画素のうち、未処理の実画素が残っていないか否か判別する。具体的には、pit3がPit3以上であるか判別し、Pit3未満であった場合は(ステップS706;NO)、対応検出部324はそのイテレーションで未処理の実画素があると判別する。そして、pit3をインクリメントし(ステップS707)、次の実画素を注目実画素としてステップS704から処理を繰り返す。
【0199】
一方、pit3がPit3以上であり、そのイテレーションで抽出された全ての実画素について処理したと判別すると(ステップS706;YES)、対応検出部324はそのイテレーションを終了する。そして、it3とIT3を比較して、イテレーションが所定の回数IT3だけ繰り替えされたか判別する(ステップS708)。
it3がIT3未満であるとき(ステップS708;NO)、所定の回数イテレーションを行っていないと判別し、対応検出部324は次のイテレーションに移行する。
具体的には、対応検出部324はit3をインクリメントし、θit3にθ’を代入して更新し(ステップS709)、処理をステップS702から繰り返す。
このとき、θ’は実画素情報リストに登録された角度θのうち、直前のθit3の次に大きい値である。
【0200】
一方、it3がIT3以上の場合(ステップS708;YES)、対応検出部324は画素値加算処理2を終了する。
【0201】
画素値加算処理2が終わると、図12にもどってステップS108と同様の処理が行われ、補間画像がすべてのEPIについて生成され、補間画像生成装置30は補間画像生成処理を終了する。そして、デジタルカメラ1は補間画像生成装置30が生成した補間画像を用いて、実施形態1と同様に再構成画像を生成する。
【0202】
上記のように、実施形態2では、画素値加算処理2において角度θが大きい順にイテレーション処理を実行する。そして、図16の注目実画素に基づく補間処理のステップS504において、i番目の補間画素がオクリュージョン画素であるか、前回までのイテレーションで両隣の補間画素に画素値が追加されているか否かで判別する。
即ち、角度θが大きい実画素に対応付けられた(画素値を加算された)補間画素にはさまれた補間画素をオクリュージョン画素と判別し、その補間画素に対しては角度θがより小さい実画素の画素値を加算しない。
実施形態2に係る補間画像生成装置30を用いれば、オクリュージョン画素により手前にある被写体に隠蔽されると推定される画素の画素値を加算しないで、補間画像を生成することができる。そのため、ライトフィールド画像からオクリュージョンに対応した補間画像を生成することが出来る。
【0203】
また、実施形態2に係るデジタルカメラ1は、補間画像生成装置30が生成した補間画像を用いて、従来よりノイズの少ない再構成画像を生成することができる。
【0204】
<変形例>
以上に本発明の実施形態1及び2について説明したが、本発明の実施形態はこれに限定されるものではなく、例えば以下のような変形が可能である。
上記した実施形態1及び実施形態2では、直線上にある画素を抽出するに当たって、直線と画素列との交点にもっとも近い場所に中心点がある画素を当該直線上にある判別して画素を抽出した。しかし、本発明において、直線上にある画素を抽出する方法はこれに限らない。その他の抽出方法として、直線と画素列との交点が、二つの画素の中心点の間にある場合、当該二つの画素を線上にあるとして抽出する方法も可能である。
【0205】
また、実施形態1及び実施形態2においては、各実画素についてそれぞれ角度θを推定した。そのため、例えば画素1に角度θが推定された場合に、画素1のLine(θ)の線上にある画素2についても再度角度θを推定する。しかし、本発明に係る角度θ登録方法はこれに限られず、一つの画素に角度θが推定された場合に、その画素のLine(θ)上の画素全てに一度に角度θを登録する処理も可能である。この構成によれば、角度θ推定処理をより高速に行うことができる。
【0206】
また、上記実施例では、画像をグレースケール画像であるとして説明したが、本発明の処理対象となる画像はグレースケール画像に限らない。例えば、画像は各画素にR(レッド)、G(グリーン)、B(ブルー)、の三つの画素値が定義されたRGB画像であってよい。この場合、画素値をRGBのベクトル値とし、画素値間の差を計算する場合はベクトル計算によって差を求めても良い。また、R、G、B、の各値をそれぞれ独立したグレースケール画像として、それぞれ上記処理を行っても良い。この構成によれば、カラー画像についても補間画像を生成し、また、当該補間画像を用いて従来よりノイズの少ない再構成画像を生成することができる。
【0207】
また、上記実施例では、情報処理部20等はデジタルカメラ1の一部であったが、情報処理部20と記憶部40とインターフェース部50とは、デジタルカメラとは独立した物理構成で実現されても良い。
【0208】
また、補間画像生成装置30はデジタルカメラ1の情報処理部20の一部であったが、補間画像生成装置30は、情報処理部20とは独立した物理構成で実現されても良い。
【0209】
このとき、補間画像生成装置30が取得するライトフィールド画像LFは、撮像部10のマイクロレンズアレイLAによって取得された画像に限らない。補間画像生成装置30が取得する画像は、複数のカメラによって同時に異なる視点から取得された画像であってもよく、一つのカメラによって異なる視点から順次取得された画像であっても良い。
また、ライトフィールド画像LFを構成する各サブ画像間の視差は、各画像と視差との情報を撮像設定として得られる場合は、同じでなくても良い。また、補間画像生成装置30はライトフィールド画像ではなく他機器が生成したEPIを取得して、EPIから補間画像を生成する構成であってよい。
【0210】
なお、情報処理部20と記憶部40とインターフェース部50と等から構成されるデジタルカメラ1のための処理を実行する中心となる部分、あるいは情報処理部320、記憶部330、出力部350、等から構成される補間画像生成装置30のための処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROM等)に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行するデジタルカメラの情報処理部や補間画像生成装置を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで情報処理部や補間画像生成装置を構成してもよい。
【0211】
また、デジタルカメラの情報処理部や補間画像生成装置の機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【0212】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS:Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【0213】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0214】
(付記1)
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
を備えることを特徴とする補間画像生成装置。
【0215】
(付記2)
前記判別部は、前記実画素の信頼度が高い順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする付記1に記載の補間画像生成装置。
【0216】
(付記3)
前記判別部は、前記実画素が、より手前に存在する被写体の部位に対応する実画素から順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする付記1に記載の補間画像生成装置。
【0217】
(付記4)
前記実画素抽出部は、前記実画素のそれぞれについて対応する実画素を、エピポーラプレーン画像上で、直線上の実画素間の画素値が互いに異なる程度である誤差値に基づいて直線検出することで抽出する、
ことを特徴とする付記1乃至3のいずれか一つに記載の補間画像生成装置。
【0218】
(付記5)
前記実画素抽出部は、異なる検出基準を用いて複数回繰り返して直線検出し、直線検出が完了した実画素を、次回以降の繰り返し処理において直線検出の誤差値の算出対象から除外する、
ことを特徴とする付記4に記載の補間画像生成装置。
【0219】
(付記6)
前記実画素抽出部は、前記誤差値が所定の閾値以下であることを前記直線検出の検出基準とし、直線検出を繰り返すにつれて当該閾値を大きくする、
ことを特徴とする付記5に記載の補間画像生成装置。
【0220】
(付記7)
前記実画素抽出部は、より先の繰り返し処理で直線検出された実画素の信頼度がより高くなるように前記実画素の信頼度を算出する、
ことを特徴とする付記5又は6に記載の補間画像生成装置。
【0221】
(付記8)
前記実画素抽出部は、前記実画素抽出部が検出した直線と前記エピポーラプレーン画像の法線とが成す角度の大きさに基づいて、前記信頼度を算出する、
ことを特徴とする付記4乃至6のいずれか一つに記載の補間画像生成装置。
【0222】
(付記9)
メインレンズが結像した被写体の光学像を複数のマイクロレンズを用いて撮像した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数のマイクロレンズの光学中心に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
前記画像取得部が取得した複数の画像と、前記補間画像生成部が生成した補間画像と、から、新たにフォーカスされた画像を再構成する再構成手段と、
前記再構成された画像の情報を出力する画像情報出力手段と、
を備えることを特徴とする再構成画像生成装置。
【0223】
(付記10)
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得ステップと、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出ステップと、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出ステップと、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義ステップと、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出ステップと、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別ステップと、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成ステップと、
を含むことを特徴とする補間画像生成方法。
【0224】
(付記11)
コンピュータに、
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得機能、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出機能、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出機能、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義機能、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出機能、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別機能、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成機能、
を実現させることを特徴とするプログラム。
【符号の説明】
【0225】
1…デジタルカメラ、10…撮像部、110…光学装置、111…シャッタ、112…絞り、120…イメージセンサ、20…情報処理部、30…補間画像生成装置、31…情報処理部、32…主記憶部、33…外部記憶部、34…操作部、35…表示部、36…入出力部、37…内部バス、38…プログラム、210…画像処理部、220…画像再構成部、230…撮像制御部、310…入力部、311…画像取得部、312…画像設定取得部、320…情報処理部、321…EPI生成部、322…角度推定部、323…補間画像設置部、324…対応検出部、325…対応評価部、326…画素値加算部、330…記憶部、331…実画素情報記憶部、332…補間設定記憶部、333…補間情報記憶部、340…操作部、350…出力部、40…記憶部、410…撮像設定記憶部、420…再構成設定記憶部、430…画像記憶部、50…インターフェース部(I/F部)、510…I/O部、520…表示部、530…操作部、LF…ライトフィールド画像、OA…光軸、OB…被写体、PS…被写体上の部位(注目点)、ML…メインレンズ、PF…結像点、IP…結像面、PE…到達点、LA…マイクロレンズアレイ、IE…撮像面、SL…サブレンズ、SL1〜SL4…サブレンズ、S…サブ画像、S11〜SMN…サブ画像、S1〜S4…サブ画像
【技術分野】
【0001】
本発明は、補間画像生成装置、再構成画像生成装置、補間画像生成方法及びプログラムに関する。
【背景技術】
【0002】
複数の視点から撮影した被写体の複数の画像を取得することにより、被写体からカメラのレンズに侵入する全ての光線の向きと光量を取得する技術が知られている。被写体を異なる視点から撮影した複数の画像の集合をライトフィールド画像と呼び、ライトフィールド画像を構成する一つ一つの画像をサブ画像と呼ぶ。
【0003】
特許文献1は、少数の高解像度のサブ画像から構成されるライトフィールド画像を取得し、当該取得したライトフィールド画像から、再フォーカス画像や被写界深度の異なる画像等を再構成する技術を開示している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2009−532993号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ライトフィールド画像では、隣り合うサブ画像の間に、両画像を取得した視点のずれ(視差)に対応した画素抜けが発生する。この画素抜けは、ライトフィールド画像から新たな画像を再構成した際に周期的なノイズの原因となる。
【0006】
上記問題を解決するため、特許文献1は、2つのサブ画像の間に、両サブ画像に対応する視点の間に位置する視点から撮影されたと推定される補間画像を生成し、この補間画像を用いて画素抜けを補間することを提案している。しかし、特許文献1は、補間画像を用いて再構成することを提案するだけで、補間画像を生成する方法を開示していない。
【0007】
本発明は、上記事情に鑑みてなされたものであり、複数の視点から被写体を撮影した複数の画像からノイズの少ない再構成画像を生成するための補間画像を生成する技術を提供することを第1の目的とする。
また、本発明は、高品質の画像を再構成する技術を提供することを第2の目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明に係る補間画像生成装置は、
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
を備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、複数の視点から被写体を撮影した複数の画像からノイズの少ない再構成画像を生成するための補間画像を生成できる。また、本発明を用いれば、高品質の画像を再構成できる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施形態1に係るデジタルカメラの構成を示す図である。
【図2】実施形態1に係るデジタルカメラの光学形成の構成を示す図である。
【図3】実施形態1に係るライトフィールド画像の例を示す図である。
【図4】実施形態1に係る補間画像生成装置の(a)物理的構成と(b)機能的構成を示す図である。
【図5】(a)〜(c)は、実施形態1に係る実画像とEPIの関係を示す図である。
【図6】実施形態1に係る直線推定処理の概要を示す図である。
【図7】実施形態1に係る直線推定処理の概要を示す図である。
【図8】実施形態1に係る実画素情報リストの例を示す図である。
【図9】実施形態1に係る補間画素挿入処理の概要を示す図である。
【図10】実施形態1に係る補間画素リストの例を示す図である。
【図11】(a)〜(c)は、実施形態1に係る画素値加算処理の概要を示す図である。
【図12】実施形態1に係る補間画像生成処理を示すフローチャートである。
【図13】実施形態1に係る角度θ登録処理を示すフローチャートである。
【図14】実施形態1に係る角度θ推定処理を示すフローチャートである。
【図15】実施形態1に係る画素値加算処理を示すフローチャートである。
【図16】実施形態1に係る注目実画素に基づく補間処理を示すフローチャートである。
【図17】(a)と(b)とは、実施形態1に係る二次元の補間画像生成処理の概要を示す図である。
【図18】実施形態1に係る再構成画像生成処理を示すフローチャートである。
【図19】実施形態2に係る光学装置を示す図である。
【図20】本発明の実施形態2に係る画素値加算処理を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明を実施するための形態に係る補間画像生成装置及び再構成画像生成装置を、図を参照しながら説明する。なお、図中同一又は相当する部分には同一符号を付す。
【0012】
(実施形態1)
実施形態1に係る補間画像生成装置30は、図1に示すデジタルカメラ1に搭載されている。デジタルカメラ1は、i)被写体を撮影して画像を得る機能、ii)同一の被写体を複数の視点から撮影して得られた複数の画像(サブ画像)間の視点のずれ(視差)によって生じる情報抜け(ギャップ)を埋めるための補間画像を生成する機能、iii)サブ画像と補間画像とを用いて、任意の再構成画像を生成する機能、等を備える。補間画像生成装置30は、これらの機能のうち、補間画像を生成する機能を担当する。
【0013】
デジタルカメラ1は、図1に示すように、撮像部10と、補間画像生成装置30を含む情報処理部20と、記憶部40と、インターフェース部(I/F部)50と、から構成される。デジタルカメラ1は、このような構成により、外部からの光線情報を取得して、光線情報を表す画像を表示する。
【0014】
撮像部10は、光学装置110と、イメージセンサ120と、から構成され、撮像動作を行う。
【0015】
光学装置110は、図2に示すように、シャッタ111と、絞り112と、メインレンズMLと、マイクロレンズアレイLAと、から構成され、外部からの光線をメインレンズMLによって捉え、各サブレンズSLの光学中心を視点として得られる光学像をイメージセンサ120に投影する。
【0016】
イメージセンサ120は、光学装置110が投影した光学像を電気信号に変換して情報処理部20に伝達するもので、例えば、CCD(Charge Coupled Device)やCMOS(Complementally Matal Oxide Semiconductor)などの撮像素子と、撮像素子が生成した電気信号を情報処理部20に伝達する伝達部と、から構成される。
【0017】
シャッタ111は、イメージセンサ120への外部光の入射と遮蔽を制御する。
絞り112は、イメージセンサ120に入射する光の光量を制御する。
メインレンズMLは、一又は複数の凸レンズから構成され、被写体OBの光を光学像としてメインレンズMLとマイクロレンズアレイLAとの間の仮想的な結像面IP上に結像させる。
マイクロレンズアレイLAは、平面上に格子状に配置されたM×N個のサブレンズ(マイクロレンズ)SLから構成される。マイクロレンズアレイLAは、メインレンズMLが結像面IP上に結像させた光学像を、それぞれのサブレンズSLの光学中心を視点として観測した光学像として、イメージセンサ120を構成するイメージセンサの撮像面IE上に結像する。メインレンズMLが成す平面と撮像面IEが成す平面とから構成される空間をライトフィールドと呼ぶ。
【0018】
撮像部10は、上記構成により、ライトフィールドを通過する全ての光線の情報を含んだライトフィールド画像を撮影する。
ブロック状の被写体OBを撮影したライトフィールド画像LFの一例を図3に示す。
このライトフィールド画像LFは、格子状に配置されたM×N個のサブレンズSLのそれぞれに対応する画像(サブ画像S、S11〜SMN)から構成されている。例えば、左上のサブ画像S11は、被写体を左上から撮影した画像に相当し、右下のサブ画像SMNは被写体を右下から撮影した画像に相当する。
【0019】
第i行のサブ画像(横の一列のサブ画像)Si1〜SiNは、メインレンズMLが結像した像を、マイクロレンズアレイLAの第i行の横に並んだサブレンズSLで結像したステレオ画像に相当する。同様に、第j列のサブ画像(縦の一列のサブ画像)S1j〜SMjは、メインレンズMLが結像した像を、マイクロレンズアレイLAの第j列の縦に並んだサブレンズSLで撮影したステレオ画像に相当する。
なお、各サブ画像Sはグレースケール画像であり、サブ画像を構成する各画素は画素値(スカラー値)を持つ。
【0020】
図1に示す情報処理部20は、物理的にはCPU(Central Processing Unit)と、RAM(Random Access Memory)と、内部バスと、I/Oポートと、から構成され、画像処理部210、補間画像生成装置30、画像再構成部220、撮像制御部230、として機能する。
【0021】
画像処理部210は、イメージセンサ120から電気信号を取得し、取得した電気信号を記憶部40の撮像設定記憶部410に記憶されている撮像設定情報に基づいて画像データに変換する。画像処理部210は、画像データと撮像設定情報とを補間画像生成装置30に伝達する。
【0022】
撮像設定情報は、ライトフィールド画像の各サブ画像に対応する視点(サブレンズSLの光学中心)の位置情報、メインレンズMLのフォーカスについての情報、絞り(F値)の情報、イメージセンサ120の設定情報、等を含む。
【0023】
補間画像生成装置30は、画像処理部210で生成された画像データと記憶部40から読み出された撮像設定情報とから、画像処理部210が生成した画像(ライトフィールド画像)を構成するサブ画像を補間する補間画像を生成する。なお、補間画像生成装置30の構成及び補間画像の生成方法については、後述する。
補間画像生成装置30は、生成した補間画像の画像データ及び補間画像の設定情報を、画像処理部210から伝達されたライトフィールド画像の画像データ及び撮像設定情報と共に画像再構成部220に伝達する。
【0024】
画像再構成部220は、補間画像生成装置30から伝達されたライトフィールド画像と補間画像とを用いて記憶部40の再構成設定記憶部420に記憶された再構成設定に合致する再構成画像を生成する。なお、再構成画像の生成方法は、例えば、特許文献1に例示されている方法を使用する等、任意である。
画像再構成部220は、生成した再構成画像を記憶部40の画像記憶部430に記憶する。
【0025】
撮像制御部230は、記憶部40の撮像設定記憶部410に記憶された撮像設定情報に基づいて撮像部10を制御する。
【0026】
記憶部40は、RAM(Random−Access Memory)等から構成される主記憶装置と、フラッシュメモリ、ハードディスク、等の不揮発性メモリから構成される外部記憶装置と、から構成される。
主記憶装置は外部記憶装置に記憶されている制御プログラムや情報をロードし、情報処理部20の作業領域として用いられる。
外部記憶装置は、後述する処理を情報処理部20に行わせるための制御プログラムと情報とをあらかじめ記憶し、これらの制御プログラムや情報を情報処理部20の指示に従って主記憶装置に伝達する。また、情報処理部20の指示に従って、情報処理部20の処理に基づく情報とインターフェース部50から伝達された情報とを記憶する。
【0027】
記憶部40は、機能的には、撮像設定記憶部410と、再構成設定記憶部420と、画像記憶部430と、から構成される。
【0028】
撮像設定記憶部410は、撮像設定情報を記憶する。撮像設定情報は、マイクロレンズアレイLAを構成する各サブレンズSLの位置情報と、マイクロレンズアレイLAとイメージセンサ120の撮像面IEとの距離と、メインレンズMLとマイクロレンズアレイLAとの距離と、露光時間を特定する情報と、を含む。撮像設定情報は、インターフェース部50の操作部530から入力された撮像のF値、シャッタ速度、拡大率、等の撮像パラメータをさらに含む。
撮像設定記憶部410は、撮像設定情報のうち、撮像パラメータを撮像制御部230に伝達する。
また、撮像設定記憶部410は、撮像部10の物理特性を示す情報と撮像設定情報とを画像処理部210に伝達する。
【0029】
再構成設定記憶部420は、操作部530から入力された再構成設定情報を記憶する。再構成設定情報は、再構成処理の具体的内容を示す情報と再構成パラメータとから構成される。
ここでは、ライトフィールド画像LFをリフォーカスした画像を再構成する場合について説明する。このとき、再構成設定情報はリフォーカスする旨の情報と、新たな画像のフォーカス点とレンズとの距離を特定する情報と、を含む。
【0030】
画像記憶部430は、画像再構成部220が再構成した画像を記憶する。画像記憶部430は、インターフェース部50のI/O部510と表示部520とに、記憶した画像を伝達する。
【0031】
インターフェース部(図ではI/F部と記述する)50は、デジタルカメラ1とその使用者(ユーザ)あるいは外部装置とのインターフェースに係る構成であり、I/O部510と、表示部520と、操作部530と、から構成される。
【0032】
I/O部(Input/Output部)510は、物理的にはUSB(Universal Serial Bus)コネクタやビデオ出力端子と、入出力制御部と、から構成される。I/O部510は記憶部40に記憶された情報を外部のコンピュータに出力し、外部から伝達された情報を記憶部40に伝達する。
【0033】
表示部520は、液晶表示装置や有機EL(Electro Luminescence)ディスプレイ等から構成され、撮像設定記憶部410や再構成設定記憶部420に記憶される設定情報を入力するための画面や、デジタルカメラ1を操作するための画面を表示する。また、表示部520は、画像記憶部430に記憶された画像を表示する。
【0034】
操作部530は、例えばデジタルカメラ1に備えられた各種ボタンや表示部520に備えられたタッチパネルと、各種ボタンやタッチパネルに行われた操作の情報を検出して記憶部40と情報処理部20とに伝達する制御部によって構成され、ユーザ操作により入力された情報を入力する。
【0035】
次に、補間画像生成装置30の構成について、図4を参照して説明する。
補間画像生成装置30は、図4(a)に示すように情報処理部31と、主記憶部32と、外部記憶部33と、操作部34と、表示部35と、入出力部36と、内部バス37と、から構成される。
【0036】
情報処理部31は、CPU(Central Processing Unit)と、RAM(Random Access Memory)から構成される。
【0037】
主記憶部32は、記憶部40の主記憶装置と同様の物理構成を持つ。外部記憶部33は、記憶部40の外部記憶装置と同様の物理構成を持ち、プログラム38を記憶している。操作部34は、操作部530と同様の物理構成を持つ。表示部35は、表示部520と同様の物理構成を持つ。入出力部36は、I/O部510と同様の物理構成を持つ。内部バス37は、主記憶部32と、外部記憶部33と、操作部34と、表示部35と、入出力部36と、を接続する。
【0038】
主記憶部32と、外部記憶部33と、操作部34と、表示部35と、入出力部36と、内部バス37と、はデジタルカメラ1の情報処理部20の内部回路と、記憶部40と、インターフェース部50と、によって実現される機能ブロックであってもよい。
【0039】
補間画像生成装置30は、外部記憶部33に記憶されたプログラム38及びデータを主記憶部32にコピーして、情報処理部31が、主記憶部32を使用してプログラム38を実行することにより、後述する補間画像生成処理を実行する。
【0040】
補間画像生成装置30は、上記のような物理構成により、図4(b)に示すように、入力部310と、情報処理部320と、記憶部330と、操作部340と、出力部350と、として機能する。
【0041】
入力部310は、画像処理部210から、ライトフィールド画像LFを取得する画像取得部311と、そのライトフィールド画像LFを取得したときの撮像設定情報を取得する画像設定取得部312と、から構成される。
【0042】
情報処理部320は、画像取得部311が取得したライトフィールド画像LFと、画像設定取得部312が取得したそのライトフィールド画像LFの撮像設定情報と、補間設定記憶部332に記憶された補間設定と、に基づき、補間画像を生成する。情報処理部320は、生成した補間画像を画像取得部311が取得した画像と共に記憶部330の補間情報記憶部333に記憶する。
記憶部330は、工場出荷時に記憶された設定情報と、操作部340を用いてユーザが入力した入力情報と、情報処理部320の処理結果と、を記憶する。記憶部330は、情報処理部320から要求された情報を情報処理部320に伝達する。また、記憶部330は、記憶した情報を出力部350に伝達する。
【0043】
情報処理部320は、下記する処理を実行することにより、EPI生成部321、角度推定部322、補間画像設置部323、対応検出部324、対応評価部325、画素値加算部326、として機能する。
【0044】
EPI生成部321は、入力部310の画像取得部311からライトフィールド画像LFを、画像設定取得部312からそのライトフィールド画像LFの撮像設定情報を、それぞれ受け取ると、EPI(Epipolar Plane Image、エピポーラプレーン画像)を生成する。EPI生成部321は、生成したEPIを角度推定部322と、補間画像設置部323と、に伝達する。
【0045】
ここで、EPI生成部321がライトフィールド画像LFから生成するEPIについて、図5を参照して説明する。
理解を容易にするために、ここでは図5(a)のように横(X軸)方向に並んだ4つサブレンズ(SL1〜SL4)で、無限遠に存在する背景Bと、レンズ(サブレンズ)SL1〜SL4からZ軸方向に距離zだけ離れた物体Aと、を撮影したライトフィールド画像LFからEPIを生成する場合について説明する。
なお、背景Bは互いに異なる画素に対応する部分B1〜B25から構成されるとする。また、物体Aは互いに異なる画素に対応する部分A1〜A7から構成されるとする。
【0046】
サブレンズSL1〜SL4は、それぞれイメージセンサ120の撮像面IE上にサブ画像S1〜S4を結像させる。言い換えると、サブ画像S1〜S4は、それぞれ被写体をサブレンズSL1〜SL4の光学中心を視点として撮影した画像である。
サブ画像S1〜S4は、図5(b)に示すように、それぞれ縦(V軸方向)にv個、横(U軸方向)にu(ここでは25とする)個の画素が格子状に並んで構成されている。サブレンズSL1〜SL4の光学中心は、それぞれ距離(視差)d1〜d3ずつ離れている。ここでは視差d1〜d3は同じ値dであるとする。視差dの値は、マイクロレンズアレイLAを用いて撮影する場合はマイクロレンズアレイLAの物理的な構成によって定まる。視差dの値は撮像設定情報に含まれる。
【0047】
サブ画像S1〜S4の縦(V軸)方向は被写体空間のY軸方向に、横(U軸)方向は被写体空間のX軸方向に、それぞれ相当する。サブ画像S1〜S4の同じ行(例えばi行目)の各画素列は、同一のエピポーラ平面に対応する画素列である。エピポーラ平面とは、被写体の注目点と、被写体を撮影する2つの視点と、の三点が形成する平面である。
【0048】
あるエピポーラ平面に対応する画素列を、対応する視点の順番に配置した画像が、EPIである。以下、EPIを構成する実際に撮影された画像(実画像)の各列を実画素列と、実画素列の各画素を実画素と表記する。なお、EPIは、図5の例ではサブ画像S1〜S4から、サブ画像のV軸方向の画素列の数V個だけ定義できる。
図5(c)は、図5(b)のサブ画像S1〜S4のi行目の各画素列を順に並べて生成したEPIを示す。
ここで、EPIの縦方向(図5(c)のX軸)は、被写体空間(図5(a))のX軸に対応する。また、EPIの横方向(図5(c)のU軸)は、サブ画像(図5(a))のU軸に対応する。EPIのU軸方向の各列を構成する画素に、画素ナンバ(ここでは1〜25)を割り当てる。EPIの各行は、X軸方向に、対応する視差d1〜d3に対応する間隔で配置される。なお、視差d1〜d3が略同一である場合は、各行間を隣接して配置しても良い。
【0049】
図5(c)のEPIの各画素内には、その画素に対応する被写体の部分を示す符号(A1〜A7,B1〜B25)が記載されている。
例えば、物体Aの部分A1に対応する画素は、実画素列1(R1)では画素ナンバ7の画素に現れ、実画素列2(R2)では画素ナンバ10の画素に現れる。実画素列1と実画素列2とにおける画素ナンバの差Δ1は3である。各EPIの行間(実画素列1(R1)と実画素列2(R2)との間、実画素列2(R2)と実画素列3(R3)との間、実画素列3(R3)と実画素列4(R4)との間)で生じる画素ナンバの差Δ(Δ1〜Δ3)をその被写体のEPI視差と呼ぶ。視差d(=d1=d2=d3)が等しい場合はEPI視差(Δ1〜Δ3)も等しい。
【0050】
実画素列1(R1)〜実画素列4(R4)が、対応するサブレンズSL1〜SL4の間の視差d1〜d3に対応する間隔で配置されているため、同一の被写体に対応するEPI上の画素は、EPI上で直線上に並ぶ。
具体的には、例えば物体Aの右端(A7)の部分に対応する画素は、図5(c)の直線L(A7)上に並ぶ。ここで、直線L(A7)を、被写体部分A7のEPI直線と呼ぶ。
【0051】
EPI直線は、対応する被写体が近いほどEPIのX軸に対して大きな角度を持つ。これは、被写体(例えばA7)が近くにあればあるほど、被写体(A7)からレンズL1〜L4に進入する光の角度が視差d1〜d3により大きく変化するため、対応する画素の位置(画素ナンバ)が互いに大きくU軸方向にずれるためである。
一方、例えば被写体が背景BのようにレンズL1〜L4から十分離れた場所にある場合は、光はレンズL1〜L4に略平行に進入するため、対応する画素の位置(画素ナンバ)はU軸方向で変化せず、EPI直線L(B1)のように、EPIのX軸に対して平行となる。
【0052】
被写体上のある点Qに対応するEPI直線L(Q)とX軸との交差角度θ(Q)は、点Qとサブレンズとの間の距離zq、視差d、マイクロレンズアレイLAと撮像面IEとの距離、撮像素子間の距離、等によって定まる。
【0053】
EPI視差Δ(=Δ1=Δ2=Δ3)が大きいと、EPIの各行で大きな情報のギャップ(画素抜け)が存在することとなる。この画素抜け(情報ギャップ)は画像の再構成を行った際のノイズの原因となる。そこで、本実施形態では、サブ画像の間に仮想的な補間画像を生成して、EPIの実画素間列の間に配置して再構成画像の生成に用いて画素抜けによるノイズを低減する。
【0054】
図4(b)に戻って、EPI生成部321は生成したEPIを角度推定部322と、補間画像設置部323と、に伝達する。
【0055】
サブ画像Sが横にN個、縦にM個存在しており、それぞれの実画像が縦にV個の画素列、横にU個の画素列で構成されている場合、EPIは合計でV・N+U・M個定義できる。
EPI生成部321は、M・N個のサブ画像Sからなるライトフィールド画像LFを取得すると、上記(V・N+U・M)個のEPIをすべて生成する。
【0056】
角度推定部322は、EPI生成部321からEPIを伝達されると、EPI上の各実画素について、補間設定記憶部332に記憶された補間設定を用いて、EPI直線がX軸と成す角度θを推定する。
補間設定の情報は、生成する補間画像の数、補間画像を設置する相対位置、角度推定に用いられるパラメータ、等を含む。補間設定は、操作部340を用いてユーザが定義し、補間設定記憶部332に記憶されている。補間設定は、工場出荷時にあらかじめ補間設定記憶部332に記憶されている情報であってもよい。
【0057】
処理対象となる実画素についてEPI直線がX軸と交差する角度θを推定する処理の概要を説明する。
【0058】
注目実画素を画素Pxl(Rx、u)と表記する。Rxは注目実画素が実画素列Rx(x列目の実画素列)の画素であること、uは注目実画素が実画素列Rx中のu番目の画素であることを意味する。そして、注目実画素Pxl(Rx、u)を通過するX軸となす角が角度θである直線をLine(θ)と表記する。
実画素列2(R2)の画素ナンバ16の画素Pxl(R2、16)を注目実画素とした角度θを推定する処理の例を図6に示す。図6は、画素Pxl(R2、16)に対して定義された、複数のθに対応する複数の直線Line(θ)を示している。
そして、各直線Line(θ)上にあるR1〜R4の実画素について、Pxl(Rx、u)の直線Line(θ)がEPI直線である確からしさの評価値Cを直線上に存在する画素値の差に基づいて算出する。
【0059】
評価値Cは式(1)に基づいて算出される。評価値Cの値(C値)が小さいほど直線Line(θ)上の実画素の画素値の誤差が小さく、その直線上の画素が対応する信頼度が高い。評価値Cの信頼度がもっとも高くなる角度θを導出して、その実画素について推定されたEPI直線の角度θとする。
【0060】
【数1】
【0061】
式(1)のIは注目画素の画素値、EPIはLine(θ)上にある注目画素以外の各画素を表すパラメータ、Ikは直線上にある注目実画素以外の各画素の画素値、Kは直線上にある注目実画素以外の画素の数である。
【0062】
なお、評価値Cは、式(1)に限らず、直線Line(θ)上の各画素の画素値の誤差が大きいほど解が大きくなる任意の算出式を用いて算出してもよい。たとえば、評価値Cは、注目実画素の画素値と直線上の画素値の差を二乗して加算し、Kで除算する式を用いて算出されてもよい。
【0063】
なお、直線Line(θ)上に存在する画素は、以下の処理により抽出される。
(1)Line(θ)と各画素列の中心線との交点Pcを求める。
(2)交点Pcが画素列の画素Aの中心と画素Bの中心の中間にある場合、画素Aと画素Bのうち中心が交点Pcと近い画素がその画素列においてLine(θ)上に存在する画素として選択される。
(3)交点Pcが画素Aの中心である場合、画素Aがその画素列においてLine(θ)上に存在する画素として選択される。
(4)交点Pcが画素列から外れている場合(図6の例では、画素ナンバ1又は画素ナンバ25の外側にある場合)、その画素列にはLine(θ)上の画素は存在しない。
【0064】
図4(b)に示す角度推定部322は、評価値Cの信頼度が最も高い角度θをその画素の推定EPI直線とし、そのC値が所定の閾値以下であればその角度θを後述する実画素情報リストに登録する。例えば、図6の注目実画素Pxl(R2、16)に対応する被写体A7に対応する画素はLine(θ2)上に存在するため、角度θ2が画素(R2、16)に登録される。
【0065】
このとき、EPI直線を推定することが困難な画素がある。例えば、図6の画素Pxl(R4、13)に対応する被写体は、図5に示す背景Bの部分B13である。B13に対応する画素は、物体Aが無ければ、X軸に対して平行な角度0のEPI直線(Pxl(R4、16)のLine(0))上に存在するはずである。
しかし、B13は、実画素列1〜3では物体Aに隠れてしまっているため、画素Pxl(R4、13)に対応する画素は実画素列1〜3には存在しない。そのためEPI直線を推定することが出来ない。
また、例えば、画素Pxl(R4、8)に対応する被写体は、背景Bの部分B8である。部分B8に対応する画素は、実画素列2〜3ではPxl(R4、8)のLine(θ0)上に存在するが、実画素列1では物体Aに隠れているため存在しない。このため、Pxl(R1、8)の画素値によっては、直線Line(0)を正しく推定できず、角度0とは異なる角度θがPxl(R4、8)について登録されてしまう可能性がある。
【0066】
そこで補間画像生成装置30は、繰り返して推定処理を行い、信頼度が高い推定直線が得られた画素を、次の繰り返しにおける推定処理で処理対象から排除して推定処理を行う。
この処理について、図7を参照して説明する。
【0067】
まず、図7で斜線又は網目で示された実画素は、EPI上の実画素列1〜4のすべてに対応する実画素が存在するため、ノイズの影響を考えなければ、高い信頼度(小さいC値)のEPI直線を推定することができる。
一度目の推定処理を、C値が予め信頼度が高くなるように小さい数値に設定された閾値以下で有る場合に限り角度θを登録するという条件で実行する。その結果、対応関係が確実な画素(斜線の画素及び網掛け線の画素)についてだけEPI直線が推定され、角度θが登録される。そして、次回以後のループでは、計算対象から角度θが登録された実画素を排除する。
【0068】
次に、一度目の推定処理で角度θが登録されなかった実画素だけを用いて、2度目の推定処理を行う。このとき、閾値が一度目の推定処理と同一であっても、式(1)の計算対象となる画素が減少しているため、2回目の推定では楕円で示された画素について角度θを推定することができる。例えば、2度目の推定処理でPxl(R4、7)の直線を推定する際には、Pxl(R1,7)の画素値は計算対象から排除される。そのため、Pxl(R4、7)の画素値とPxl(R1,7)の画素値の差は式(1)において加算されないため、角度0をPxl(R1,7)の画素値に影響を受けず、正しくEPI直線を推定することができる。
以後、同様の動作を角度θが登録されなかった実画素だけを用いて順次実行する。
【0069】
本実施形態によれば、各直線について評価値Cを算出し、評価値Cが小さい直線を推定EPI直線とすることで、各実画素に対応する実画素をEPI上で簡便に推定することができるという効果が得られる。また、一度角度θが登録された画素を次回以降の角度θ推定処理で比較対象から排除することで、対応関係が確かな(オクリュージョンによって遮蔽されていない)被写体に対応する画素から順に角度θを登録し、さらにオクリュージョンによって遮蔽されている被写体に対応する画素の対応関係を、遮蔽している被写体に対応する画素の影響を受けずに推定することができる。
【0070】
ある画素に何度目の推定処理で角度θが登録されたかによって、その画素に対応する被写体がオクリュージョンによって遮蔽されている程度を評価することができる。少ない処理回数で角度θが登録された画素ほど、対応する被写体がオクリュージョンによって遮蔽されている可能性が低いと評価できる。そこで、角度θが何回目の処理(イテレーション)で登録されたか、その回数(イテレーション数)を、その画素の角度θの評価値ITとして画素と対応付けて記憶する。
なお、図7で黒く塗りつぶされたPxl(R4、13)のように、対応する画素が無く角度の推定ができない(所定の閾値(閾値の最大値)より小さいC値を持つEPI直線を推定できない)画素もある。このような画素については角度θを空値(NULL)として記憶する。ノイズによってC値が閾値より低い直線を検出できなかった場合も同様である。
【0071】
図4(b)に示す角度推定部322は、各画素について、推定されたEPI直線の角度θと、EPI直線の推定過程で算出されるその直線の評価値IT(イテレーション数)と、を対応づけて登録した実画素情報リストを生成し、実画素情報記憶部331に記憶する。
【0072】
ここで、実画素情報記憶部331に記憶される実画素情報リストについて、図8を参照して説明する。
実画素情報リストは、実画素列上の各画素について、推定されたEPI直線の角度θと、角度θの評価値IT(角度θが登録されたイテレーション数)と、を対応づけて記憶する。
【0073】
実画素IDは、その行に登録されている画素を一意に表す識別子である。
実画素列IDは、その行に登録されている画素がどの実画素列の画素であるかを示す。画素ナンバは、その行に登録されている画素の画素ナンバを示す。
例えば、ある行の実画素列IDが#01、画素ナンバが1であることは、その行が、画素列R1の1番目の画素Pxl(R1、1)の角度θと評価値ITを登録していることを示す。
【0074】
θは、その行の実画素について推定されたEPI直線のX軸との角度θである。
θが0であることは、その画素に対応する被写体が、レンズから(無限遠と同一視できる程度に)遠くに存在すると推測されることを意味する。
一方、θが大きいことは、その画素に対応する被写体が、レンズに近い位置に存在することを示す。θは、0からカメラの性質によって定まる最大値θmaxまでのいずれかの値を取る。なお、θmaxの値は、撮像設定記憶部410に記憶されている。
【0075】
評価値ITは、その画素に登録された角度θが何回目のイテレーションで登録されたかを示す数値である。この数値が小さいほど、その画素に登録された角度θは信頼度が高い。
【0076】
図4(b)にもどって説明を続ける。
補間画像設置部323は、EPI生成部321からEPIを伝達されると、補間設定記憶部332が記憶する補間設定情報に基づいて、EPI上に補間画像の画素列を定義する。
【0077】
ここで、EPI上に定義される補間画像の画素列について、図9を参照して説明する。
EPI生成部321から伝達されたEPIには、撮影された画像の画素列が視差に対応する間隔で配置されている。図9では、上述の例に沿って、実画素列1〜4(EPIの第1行、第4行、第7行、第10行)が、視差dに対応する間隔で配置されている例を示す。
補間画像設置部323は、補間設定情報に基づき、実画素列の間に所定数の補間画素列を配置する。ここでは、補間設定情報により、実画素列の間に補間画素列を2列ずつ均等に挿入すると定義されているものとする。この場合、補間設定情報に従って、EPI上に補間画像の画素列(補間画素列1〜6、V1〜V6)(EPIの第2行、第3行、第5行、第6行、第8行、第9行)を挿入する。
【0078】
補間画像設置部323は実画素列と実画素列との間に補間画素列を挿入する。このとき挿入される補間画素列の各画素(補間画素)の画素値はゼロである。
この処理は、サブレンズSL1〜SL4(実レンズ)の間に仮想的なレンズ(補間レンズ)を設置し、補間レンズから得られると推測される画像の画素列のひな形をEPI上に配置することと等しい。
例えば、図9の補間画素列1は、実画像S1に対応するレンズSL1と、実画像S2に対応するサブレンズSL2と、の間に存在する補間レンズSLV1から得られると推定される仮想的なサブ画像(補間画像)SV1のv行目の画素列である。補間レンズSLV1は、サブレンズSL1〜SL4がなす直線上であって、サブレンズSL1から仮想視差dv(=d1/3)だけ離れた位置に存在する。
【0079】
補間画素列を挿入するEPI上の位置及び挿入する画素列の数は、補間設定によって適宜定めることが出来る。例えば、実画素列1から仮想視差dv1=d1/5だけ離れた補間画像の補間画素列1と、仮想視差dv2=d1/2だけ離れた補間画素列2を、実画像S1の実画素列1と実画像S2の実画素列2の間に挿入しても良い。また、実画素列1と実画素列2の間に3つの補間画素列を挿入し、実画素列2と実画素列3の間には補間画素列を挿入しない、といった設定も可能である。
【0080】
図4(b)に戻って説明を続ける。
補間画像設置部323は、補間画素列を挿入したEPIを、対応検出部324に伝達する。対応検出部324は、伝達されたEPIの各実画素について、その画素と対応する補間画素を抽出する。
【0081】
対応検出部324は、EPI上の各実画素について、その実画素と、その画素について登録された推定EPI直線上の補間画素と、を対応する画素の集合として検出する。この処理は、信頼度が高い(登録された評価値ITが小さい)実画素から順に行われる。各画素の集合に対して、実画素の評価値ITをその対応関係の信頼度(評価値ITr)とする。
【0082】
対応検出部324は、実画素一つと、その実画素に対応する補間画素の集合と、その対応の評価値ITrと、を示す情報(以下、対応情報と記す)を抽出すると、当該対応情報を対応評価部325に伝達する。
【0083】
対応評価部325は、対応検出部324から対応情報を伝達されると、その対応関係の確からしさを評価する。この評価は、その対応の評価値ITrと、補間情報記憶部333に記憶された後述する補間画素リストに基づいて行われる。具体的な評価方法は後述する。
【0084】
対応評価部325は、一つの対応情報について対応の確からしさの評価が完了すると、対応情報と評価結果とを画素加算値部326に伝達する。
画素値加算部326は、伝達された対応情報と評価結果とに基づき、EPI画像の補間画素に画素値を加算する。そして、加算結果を補間情報記憶部333に記憶された補間画素リストに記憶する。
【0085】
ここで、補間情報記憶部333に記憶される補間画素リストについて、図10を参照して説明する。
補間画素リストは、EPI上の各補間画素を一意に示す補間画素ID(補間画素列IDと画素ナンバー)と、その補間画素の現在までの画素値と、その補間画素に実画素の画素値が加算された回数(加算回数)と、その補間画素の評価値ITrと、を対応づけて記憶している。
一度も画素値が加算されていない場合は、画素値と評価値ITrはNULLである。
ここで、補間画素の評価値ITrは、その画素に対応する実画素(それまでにその補間画素に画素値を加算した実画素)のうち、もっとも評価値ITが小さい(もっとも信頼度の高い)実画素の評価値である。
【0086】
ここで、対応検出部324、対応評価部325,画素値加算部326、が行う補間画素値加算処理の概要を、図11を参照して説明する。
図11では、その補間画素に画素値が加算された回数を補間画素列の補間画素内の数値で示す。なお、加算回数0の表記は省略している。
【0087】
まず、対応検出部324が、図11(a)で斜線で示された実画素Pxl(R1,7)を注目実画素とし、実画素情報記憶部331に記憶されている実画素情報リストから登録されている角度θを読み込み、角度θに基づいて対応する補間画素(推定されたEPI直線上の補間画素)としてPxl(V1、8)、Pxl(V2、9)、Pxl(V3、11)、…を検出する。
【0088】
次に、対応評価部325は、Pxl(R1、7)とPxl(V1、8)との対応の確からしさを評価する。
即ち、Pxl(V1、8)の両隣の画素に、Pxl(R1,7)より評価値ITが低い(より信頼度が高い)実画素から画素値がすでに加算されているか否かを、補間画素リストを参照して判別する。両隣の画素により評価値ITが低い実画素から画素値が加算されていない場合、対応は確かであると推定する。
図11(a)の場合、Pxl(V1、8)の両隣(Pxl(V1、7)とPxl(V1、9))には未だ画素値が加算されていないので、対応評価部325はPxl(R1、7)とPxl(V1、8)との対応は確かであると判別する。
【0089】
そして、画素値加算部326がPxl(V1、8)にPxl(R1、7)の画素値を加算する。具体的には、補間画素リストのPxl(R1、7)の行の加算回数をインクリメントし、画素値を加算する。さらに、その行の評価値がNULLであれば、評価値ITrに実画素Pxl(R1,7)の評価値ITを登録する。
すでに画素値が一度以上加算されている場合、次の式(2)を用いて算出された数値を加算後の数値として登録する。
【0090】
【数2】
【0091】
このとき、V’は更新後の画素値、Vは更新前の画素値、Valは注目実画素の画素値、tはインクリメント前の加算回数である。
【0092】
以下、注目実画素Pxl(R1、7)について抽出されたその他の補間画素(Pxl(V2、9)、Pxl(V3、11)…)についても同様に判別処理・加算処理が行われる。
【0093】
注目実画素Pxl(R1,7)について処理が終わると、次の注目実画素が選択され、同様に対応する補間画素に画素値が追加される。次の注目実画素がPxl(R2、10)が注目実画素であった場合の処理結果を図11(b)に示す。
【0094】
さらに処理が進み、n回目のステップで背景Bの部分B9に対応する画素Pxl(R2、9)が注目実画素に選ばれた場合の処理を図11(c)に示す。
Pxl(R2,9)に登録されたθ値は0であり、対応する補間画素の候補としてPxl(V1,9)、Pxl(V2,9)、Pxl(V3,9)…が抽出される。図11(b)では、Pxl(R2,10)の画素値がPxl(V1,8)、Pxl(V2,9)、Pxl(V3,11)、に加算されている。
【0095】
対応評価部325は、このPxl(R2、9)と補間画素Pxl(V1,9)、Pxl(V2、9)、Pxl(V3、9)のそれぞれについて、対応の確からしさを評価する。
即ち、抽出された対応候補画素のそれぞれに隣接する補間画素が、すでにより小さい評価値ITを持つ実画素の画素値が加算されている補間画素(注目実画素より小さいITrを持つ補間画素)である(図11(c)の×で示された画素)か否かを判別する。
隣接する画素の両方が、注目実画素より小さいITrを持つ補間画素(例えばPxl(V1,9))は、オクリュージョンによって遮蔽されている被写体に対応する画素(オクリュージョン画素)であると推定される。そのため、その補間画素は注目実画素Pxl(R2、9)とは対応しないと判別して、画素値を加算しない。
【0096】
一方、隣接する補間画素の少なくとも一方のITrが、注目実画素のIT以上の場合には(Pxl(V2,9)及び(Pxl(V3,9))、その補間画素はオクリュージョン画素でないとの推定のもと、注目実画素Pxl(R2、9)の画素値が加算される。
【0097】
このとき、隣接する補間画素の一方のみに、より評価値ITの小さい実画素の画素値がすでに加算されている場合も、実画素Pxl(R2、9)の画素値を加算する。このような補間画素はオクリュージョンによって対応する被写体が隠れるエッジ部分に該当すると考えられる。エッジ部分により遠方の被写体に対応する画素の画素値を加算することにより、エッジを「丸める」ことが出来る。
【0098】
オクリュージョン画素か否かを、隣接する補間画素により評価値ITの小さい(信頼度が高い)実画素の画素値が登録されているか否かによって判別することにより、簡便にオクリュージョン画素か否かを判別して、ライトフィールド画像の奥行き情報を保持した補間画像を生成することが出来る。
【0099】
なお、ここでは隣接する補間画素の双方により評価値ITの小さい実画素の画素値が加算されている場合に限り、その補間画素をオクリュージョン画素であると判別した。しかし、オクリュージョン画素であるか否か判別する基準はこれに限られない。例えば、隣接する画素の少なくとも一つにより評価値の小さい実画素の画素値が加算されている場合にその補間画素をオクリュージョン画素であると判別しても良い。
このような判別方法によれば、より厳密に実画素と補間画素の対応を判定することができる。
【0100】
また、隣接する画素でなく、その補間画素そのものにより評価値ITが小さい実画素の画素値がすでに加算されている場合に、その画素をオクリュージョン画素であると判別しても良い。
【0101】
画素値加算処理が終わり、補間情報記憶部333に登録された補間画素リストが更新されると、画素値加算部326は、現在の注目実画素について処理が終了したことを対応検出部324に伝達する。そして、対応検出部324は、次の実画素について対応を検出し、同様に処理を続行する。すべての実画素について上記処理が行われると、そのEPI画像について、補間画像の生成が終わる。
【0102】
EPI生成部321が生成したすべてのEPIについて、補間画像を生成し終えると、出力部350が外部装置に補間済みのEPI(補間画像と実画像)を出力する。そして、補間画像生成装置30は処理を終了する。
【0103】
次に、上記構成を有する補間画像生成装置30が、補間画像を生成する処理を、図12〜図19を参照して説明する。
【0104】
補間画像生成装置30の情報処理部320は、入力部310がライトフィールド画像LF及び撮像設定情報を取得すると、図12に示す補間画像生成処理を開始する。
【0105】
補間画像生成処理が開始されると、入力部310からEPI生成部321に当該ライトフィールド画像LFと当該撮像設定情報が伝達される(ステップS101)。
【0106】
EPI生成部321は、取得したライトフィールド画像LFと、撮像設定情報と、から図5(c)に示すEPIを生成する(ステップS102)。
【0107】
EPI生成部321は、生成されたEPIの数Jを算出し、併せてそれぞれのEPIを1〜Jまでの数値でナンバリングする。また、カウンタjに1を代入する(ステップS103)。
【0108】
次に、EPI生成部321は、j番目のEPIにフォーカスする。ステップS105〜ステップS108は、フォーカスされたEPIについて実行される(ステップS104)。
【0109】
j番目のEPIについて、角度推定部322は、角度θ登録処理を実行する(ステップS105)。角度θ登録処理については後述する。
【0110】
角度θ登録処理が終了し、j番目のEPIの各実画素に角度θが登録され、実画素情報記憶部331に実画素情報リストが記憶されると、図9に示すように補間画像設置部323がj番目のEPIに補間画素列を挿入する(ステップS106)。
【0111】
補間画素列の挿入が終了すると、対応検出部324、対応評価部325、画素値加算部326、が図11に示した画素値加算処理を行う(ステップS107)。画素値加算処理(画素値加算処理1)については後述する。
【0112】
画素値加算処理が終わると、そのEPIについては処理を終了する。そしてjとJを比較して、未処理のEPIが残っているか判別する(ステップS108)。jがJ未満であって、未処理のEPIが残っている場合(ステップS108;NO)、jをインクリメントし(ステップS109)、ステップS104〜ステップS108の処理が繰り返す。
一方、jがJ以上であって、未処理のEPIが残っていない場合(ステップS108;YES)、情報処理部320は補間画像生成処理を終了する。
【0113】
補間画像生成処理を終了すると、出力部350は補間情報記憶部333に記憶された、補間画像と実画像とを画像再構成部220に伝達する。その後の処理については後述する。
【0114】
次に、角度θ登録処理(ステップS105)を、図13を参照して詳細に説明する。
【0115】
角度θ登録処理では、まず角度推定部322が変数を初期化する(ステップS201)。
具体的にはitに1を、カウンタnに1を、thに最初の閾値TH0を代入する。また、EPI上の実画素の数Nと、総イテレーション回数ITmaxを取得する。ここで、ITmaxとTH0は、補間設定記憶部332に記憶された数値である。ITmaxとTH0とは、実験等によって求められ予め初期設定で定められた数値であって良いし、ユーザが入力した任意の数値であってもよい。また、角度推定部322は、ステップS201でEPI上の実画素を、1〜Nの数でナンバリングする。
【0116】
ステップS201が終わると、次に角度推定部322はn番目の画素を選択して注目実画素とする(ステップS202)。
【0117】
そして、角度推定部322は、実画素情報記憶部331に記憶された実画素情報リストを参照し、注目実画素にすでに角度θが登録されているか否か判別する(ステップS203)。
すでに登録されている場合は(ステップS203;YES)、角度推定部322はその実画素については処理を終了する。即ち、nをインクリメントし(ステップS209)、ステップS202にもどる。
【0118】
注目実画素にまだ角度θが登録されていない場合(ステップS203;NO)、角度推定部322は注目実画素について角度θ推定処理を行う(ステップS204)。角度θ推定処理については後述する。
【0119】
角度θ推定処理が終わり、注目実画素に推定された角度θと、角度θの評価値Cが算出されると、次に角度推定部322は角度θの評価値Cが閾値thがより大きいか判別する(ステップS205)。角度θの評価値Cが閾値thより大きい場合(ステップS205;YES)、その角度θは、今回のイテレーションにおいて十分な信頼度を持たないので、その画素について今回のイテレーションでは角度θを登録しない。即ち、nをインクリメントし(ステップS209)、ステップS202にもどる。
【0120】
一方、角度θの評価値Cが閾値th以下の場合(ステップS205;NO)、角度推定部322は注目実画素にその角度θと、評価値IT(=現在のイテレーション回数it)と、を実画素情報記憶部331の実画素情報リストに登録する(ステップS206)。
【0121】
そして、次に角度推定部322はnがN以上であるか判別する(ステップS207)。nがN未満の場合(ステップS207;NO)、現在のイテレーションで未処理の実画素があるので、角度推定部322はnをインクリメントし(ステップS209)、ステップS202にもどる。
【0122】
一方、nがN以上の場合(ステップS207;YES)、このイテレーションでは全ての実画素について処理済みなので、次に角度推定部322はイテレーション回数が終了したか判別する(ステップS208)。即ちitがITmax未満の場合(ステップS208;NO)、まだ所定のイテレーション回数を終えていないので、itをインクリメントし、nを初期化し、thを新たな閾値THitに更新する(ステップS210)。そして、処理をS202から繰り返す。
【0123】
このとき、閾値thの更新ルールは、補間設定記憶部332に記憶された補間設定によって定まる。閾値thは、イテレーションを繰り返すほど大きくなる(直線の判別基準が甘くなる)。
ここでは、THitは現在のthに所定の差Δthを加算した数値であるとする。
なお、ここでは新たなイテレーションで必ず閾値thを更新するとしたが、イテレーションを繰り返す場合に閾値を更新する方法はこれに限られない。そのイテレーションで新たな実画素に角度θが登録された場合は、次のθ推定処理においてその登録された画素を排除して推定処理が行われるため、次のイテレーションで同じ閾値thを利用しても新たな実画素に角度θが登録される可能性がある。そのため、現在のイテレーションで新たな実画素に角度θが登録されていた場合、THitは現在のthと同じであってよい。
【0124】
一方、itがITmax以上の場合(ステップS208;YES)、所定のイテレーション回数を終えたので、角度推定部322は角度θ登録処理を終了する。
【0125】
次に、角度θ登録処理のステップS204で実行される角度θ推定処理について、図14を参照して説明する。
【0126】
角度推定部322は、角度θ推定処理を開始するとまず変数の初期化を行う(ステップS301)。即ち、カウンタmに1を、注目実画素について推定された角度(角度θ推定処理の答えとなる角度θ)である角度変数θansとその現在までの評価値をあらわす変数maxに空値NULLを、現在の処理対象となる角度を示す変数θmに初期値θ0を代入する。また、角度θ推定処理の繰り返し回数Mを抽出する。
Mとθ0は、補間設定記憶部332に記憶された数値である。Mとθ0とは、実験等によって求められ予め初期設定で定められた数値であって良いし、ユーザが入力した任意の数値であってもよい。ここでは、θ0は設計上の最大角度であるθmaxとする。
【0127】
ステップS301が終わると、角度推定部322は次にEPI上の実画素であって、注目実画素を通る角度θmの直線上に存在し、かつ未だ角度θが登録されていない画素を抽出する(ステップS302)。
【0128】
そして、角度推定部322はステップS302で抽出した画素の画素値を式(1)に用いて注目実画素を通る直線Line(θm)の評価値Cを求める。
【0129】
角度推定部322は、次にステップS303で算出した評価値Cが、以前のループで注目実画素に対して算出された評価値Cのうち最も小さい値であるか、即ち、その直線Line(θm)が注目実画素のもっとも確からしい直線か否かを変数maxと評価値Cを比較して判別する(ステップS304)。なお、maxの値がNULLだった場合、NULLは無限大として計算する。
【0130】
max≧評価値Cであった場合(ステップS304;NO)、θmは現時点で注目実画素の最も確からしい直線の角度であるので、変数maxにステップS303で算出した評価値Cを、変数θans にθmを代入する(ステップS305)。
【0131】
一方、max<評価値Cであった場合(ステップS304;YES)、注目実画素にはより確からしい角度θがすでに登録されているため、角度θmを登録せず、ステップS305をスキップする。
【0132】
次に、角度推定部322は所定の繰り返し回数が終わったか、mとMを比較して判別する(ステップS306)。
m≧Mであった場合(ステップS306;YES)、所定の繰り返し回数M回処理が終わったため、角度推定部322は角度θ推定処理を終了し、θansを注目実画素の推定角度とし、maxの値をその評価値Cとして角度θ登録処理のステップS205を開始する。
【0133】
一方、m<Mであった場合、(ステップS306;NO)、まだ所定の繰り返し回数処理が終わっていないので、角度推定部332はカウンタmをインクリメントし、θmをθ’に更新してステップS302から処理を繰り返す。
ここで、θmの更新ルールは補間設定記憶部332に記憶された設定に従う。ここでは、θ’は、更新前のθmに所定の数値Δθを減算した値とする。
【0134】
次に、図12に示す補間画像生成処理の画素値加算処理(ステップS107)の第1の具体例(画素値加算処理1)を図15を参照して説明する。
【0135】
画素値加算処理1では、まず対応検出部324が変数を初期化する(ステップS401)。
ステップS401において、対応検出部324は、現在のイテレーション回数を示す変数it2と、カウンタ変数kと、に1を代入する。また、EPI上の実画素の数Nと画素値加算処理1の総イテレーション回数ITmaxとを取得する。また、角度θ登録処理で登録された実画素のナンバリング情報を取得する。ここで、各実画素のナンバは、その実画素が実画素情報記憶部331に記憶された実画素情報リストの何行目に登録されているかによって定まる。
ここで、実画素の数Nは角度θ登録処理で抽出された実画素の数Nである。また、総イテレーション回数ITmaxは、角度θ登録処理で抽出したITmaxと同じである。
【0136】
初期化が終わると、対応検出部324はk番目の実画素を選択して注目実画素とする(ステップS402))。具体的には、実画素情報リストのk行目に登録されている実画素の情報を抽出して、その実画素を注目実画素とする。
【0137】
次に、対応検出部324は注目実画素に角度θが登録されているか否か判別する(ステップS403)。即ち、実画素情報リストのk行目の角度θの値がNULLで無いか判別し、NULLであった場合は注目実画素に角度θが登録されていないと判別する(ステップS403;NO)。そして、その画素については処理を終了してステップS406にジャンプする。
【0138】
一方、実画素情報リストのk行目の角度θがNULLで無く、注目実画素に角度θが登録されている場合は(ステップS403;YES)、次に対応検出部324は注目実画素の評価値ITと現在のイテレーション回数it2とを比較する(ステップS404)。
【0139】
注目実画素の評価値ITと現在のイテレーション回数it2が異なる場合(ステップS404;NO)、その実画素は今回のイテレーションにおいて処理対象ではないため、対応検出部324はその画素については処理を終了する。
即ち、対応検出部324はステップS406にジャンプする。
【0140】
一方注目実画素の評価値ITが現在のイテレーション回数it2と等しい場合は(ステップS404;YES)、対応検出部324は注目実画素に基づく補間処理を実行する(ステップS405)。ステップS405で実行される処理については後述する。
【0141】
ここで、注目実画素の評価値ITは、注目実画素の角度θが角度θ登録処理(図14)の何回目のイテレーションで登録されたかを示す数値である。このように、イテレーション回数it2と等しい評価値ITを持つ実画素に基づいて補間処理を実行し、イテレーションを繰り返すことは、評価値が小さくオクリュージョンによる対応関係の齟齬が発生している可能性がより小さいと推測される実画素から補間処理を実行することである。
【0142】
注目実画素に基づく補間処理(ステップS405)が終わると、対応検出部324は未処理の実画素が残っているか否か判別する(ステップS406)。具体的には、kがN以上であるか判別し、N未満であった場合は(ステップS406;NO)、対応検出部324はそのイテレーションで未処理の実画素があると判別する。そして、kをインクリメントし(ステップS407)、次の実画素を注目実画素としてステップS402から処理を繰り返す。
【0143】
一方、kがN以上で、そのイテレーションで全ての実画素について処理したと判別すると(ステップS406;YES)、対応検出部324はそのイテレーションを終了する。そして、it2とITmaxを比較して、イテレーションが所定の回数ITmaxだけ繰り替えされたか判別する(ステップS408)。
it2がITmax未満であるとき(ステップS408;NO)、所定のイテレーション回数だけ処理を繰り返していないと判別し、対応検出部324は次のイテレーションに移行する。
具体的には、対応検出部324はit2をインクリメントし、kに1を代入し(ステップS409)、処理をステップS402から繰り返す。
一方、it2がITmax以上の場合(ステップS408;YES)、対応検出部324は画素値加算処理1を終了する。
【0144】
次に、画素値加算処理1のステップS405で実行される注目実画素に基づく補間処理について図16を参照して説明する。
注目実画素に基づく補間処理では、まず対応検出部324が実画素情報記憶部331の実画素情報リストからその注目実画素の角度θを抽出する。
そして、抽出した角度θに基づき、注目実画素の推定EPI直線Line(θ)を定義し、EPI直線上にある補間画素を抽出する(ステップS501)。
【0145】
次に、対応検出部324は抽出した補間画素の数Iを取得し、カウンタ変数iに1を代入する(ステップS502)。さらに、対応検出部324はステップS502で抽出した各補間画素を1からIまでナンバリングする。
【0146】
対応検出部324がステップS502を終えると、次に対応評価部325が補間情報記憶部333に記憶された補間画素リストを参照し、i番目の補間画素に隣接する補間画素を抽出する(ステップS503)。即ち、対応評価部325はi番目の補間画素の補間画素列ID(IDi)と画素ナンバ(Ni)を補間画素リストから抽出し、補間画素列IDがIDi、画素ナンバがNi+1の補間画素とNi−1の補間画素とを抽出する。
【0147】
そして、対応評価部325は、i番目の補間画素が、オクリュージョン画素であるか否か判別する(ステップS504)。
オクリュージョン画素か否かは、ステップS503で抽出した隣接する補間画素の双方に、前回までのイテレーションで画素値が加算されたか(隣接する補間画素に、現在のイテレーション回数it2より小さい評価値ITrが補間画素リストに登録されているか)否かによって判別される。
【0148】
隣接する二つの補間画素の両方にit2より小さい評価値ITrが登録されている場合、i番目の補間画素はオクリュージョン画素であり、注目実画素とは対応しないと推測できる。即ち、i番目の補間画素は注目実画素が対応する被写体より前方にある被写体に対応する画素であると推測できる。そのため、対応評価部325はi番目の補間画素がオクリュージョン画素であると判別すると(ステップS504;YES)、画素値加算部326に画素値の加算を指示せず、ステップS506にジャンプする。
【0149】
一方、i番目の補間画素がオクリュージョン画素で無いと判別すると(ステップS504;NO)、i番目の補間画素は注目実画素と対応するとの推測に基づき、対応評価部325はi番目の補間画素に注目実画素値を加算することを画素値加算部326に伝達する。画素値加算部326は、i番目の補間画素の画素値を、式(2)に基づいて加算し、加算した画素値を補間画素リストのi番目の補間画素に対応する行に登録する(ステップS505)。また、ステップS505では、画素値加算部326は現在のイテレーション回数it2が登録された評価値ITr以下であった場合は、it2をその行の新たな評価値ITrとして登録する。
【0150】
画素値加算部326が注目実画素の画素値を補間画素に加算して補間画素リストを更新すると、対応検出部324はステップS501で抽出した補間画素全てについて処理が終わったか否か、iとIを比較して判別する(ステップS506)。
iがI以上で、全ての抽出された補間画素について上記処理が終わったと判別すると(ステップS506;YES)、対応検出部324は注目実画素に基づく補間処理を終える。
【0151】
一方、iがI未満であり、未処理の補間画素が残っていると判別すると(ステップS506;NO)、対応検出部324はiをインクリメントし(ステップS507)、次の補間画素についてステップS503から処理を繰り返す。全ての画素について補間画像の加算処理を終了すると、そのEPIについて補間画像の生成が終了したとの判断の元、注目実画素に基づく補間処理を終了する。
【0152】
補間画像生成装置30は、上述の一連の処理により補間画像を生成する。補間画像生成装置30は、上記処理を繰り返して実行することにより、補間画像を実画素に対して平面的に生成する。この平面的な補間画像の生成処理について、図17を参照して説明する。
【0153】
まず、図17において円で示された実画像(実11〜実12…)から、縦横に第1段階のEPIの集合を生成する(EPI(縦11)、EPI(縦21)…、EPI(横11)、EPI(横21)…)。横方向のEPIの集合(EPI(横11)、EPI(横21)、…)はそれぞれV個のEPIからなり、マイクロレンズアレイLAの縦方向のサブレンズの数(M個)だけ定義できる。すなわち、横方向のEPIがV・M個定義できる。同様に、縦方向のEPIがN・U個定義できる。よって、EPIは合計でV・M+N・U個定義できる。
補間画像生成装置30は、実画像を用いてまずV・M+N・U個の正方形で示した第1段階の補間画像を生成する(図17(a))。なお、正方形の内部の数字が1であることは、正方形が第1段階の補間画像であることを示す。
【0154】
次に、第1段階の補間画像を仮想的な実画像として、第2段階のEPI郡を生成する(EPI(縦12)、EPI(縦22)、EPI(縦32)…)。そして、第2段階の補間画像を生成する(図17(b))。なお、正方形の内部の数字が2であることは、その正方形が第2段階の補間画像であることを示す。
【0155】
このように、2段階に分けて平面的に補間画像を生成することにより、本実施形態の補間画像生成装置30は、被写体をとらえる平面的なサンプリング数をレンズや撮像素子を増やすことなく仮想的に上昇させることができる。
【0156】
なお、ここでは第2段階の補間画像を、縦方向のEPI集合を用いて生成したが、第2段階のEPIの生成方法はこれに限られない。第2段段階のEPIは横方向のEPI集合を用いて生成してもよい。また、縦方向に生成した生成した中間段階の補間画像と、横方向に生成した中間段階の補間画像と、を平均して生成した補間画像を第2段階の補間画像としても良い。
【0157】
上記したすべての補間画像を生成すると、補間画像生成装置30は画像再構成部220に生成した画像と、実レンズと補間レンズの位置情報と、を画像再構成部220に出力して処理を終了する。
【0158】
実施形態1に係る補間画像生成装置30は、上記の処理によりオクリュージョンが起こっていると推定される補間画素の画素値を、より手前の被写体に対応すると推定される実画素のみに基づいて決定することができるため、オクリュージョンに対応した補間画像を生成することが出来る。
【0159】
また、実施形態1に係る補間画像生成装置30は、角度θを登録する閾値をイテレーションごとに可変させ、角度θの推定基準を最初は厳しく、後になるほど甘くする。これにより、初期のイテレーションではオクリュージョンが起こっていない、対応関係が確実な画素に角度θを登録し、後のイテレーションではオクリュージョンやノイズで対応関係が不確かな画素でも対応関係を定義する。そのため、補間画素に対応すると推定される実画素が複数あった場合に、より対応関係が確実な実画素を選別し、選別した実画素の画素値に基づいて補間画素の画素値を決定することができる。
【0160】
次いで、補間画像生成装置30が生成したライトフィールド画像LF(補間済みのEPI)から、画像再構成部220が画像を再構成する処理を、図18、図19を用いて説明する。ここでは、ライトフィールド画像LFから、メインレンズMLから距離a1の地点にリフォーカスした画像を再構成することとする。
【0161】
画像再構成部220は、補間画像生成装置30から補間済みのEPIと実レンズ及び補間レンズの位置情報とを伝達されると、図18に示す再構成画像生成処理を実行する。
【0162】
図18の再構成画像生成処理を開始すると、画像再構成部220はまず初期化処理を行う(ステップS601)。
ステップS601では、画像再構成部220が記憶部40の再構成設定記憶部420から、再構成画像の設定を取得する。このとき、再構成画像の設定はリフォーカスの距離a1の情報を含む。また、撮像設定記憶部410から、撮像設定情報を取得する。さらに、カウンタ変数であるlとpとに1を代入する。さらに、画素p(p番目の画素)に画素値が加算された回数を表す変数tpに0を代入する。
さらに、補間画像の実レンズと補間レンズの合計数Lと、再構成画像の総画素数Pとを取得する。
また、再構成画像の各画素を、1〜Pまでの数でナンバリングする。さらに、実レンズと補間レンズとをまとめて1〜Cまでの数でナンバリングする。
【0163】
上記の初期化処理(ステップS601)を終えると、画像再構成部220は取得した画像からl番目のレンズ(レンズl)に対応するサブ画像Sを選択する(ステップS602)。
【0164】
次に、画像再構成部220は再構成画像上の注目画素pに対応する位置PSから光が発せられた場合に、当該光がマイクロレンズアレイLAに含まれるサブレンズlを通過して撮像面IEへ到達するまでの軌跡レンズl(対応するl番目のサブレンズ)の位置情報を用いて特定し、特定された軌跡を辿る光が撮像素子の表面IEに到達した到達点PEに在るサブ画像上の画素を特定する(ステップS603)。
【0165】
具体的には、図19に示すX軸方向における注目画素のOB上の対応する位置PSと光軸OAとの距離をxとし、到達点PEと光軸OAとの距離をx’’とする。
【0166】
ここで、ステップS601で取得された撮像設定には、メインレンズMLの焦点距離fML、メインレンズMLからマイクロレンズアレイLAまでの距離c1、マイクロレンズアレイLAから撮像面IEまでの距離c2が含まれている。また、及びレンズ位置情報に基づいて算出される光軸OAからレンズlの光学中心までの距離dを算出する。なお、ステップS601で取得された距離情報で表される距離は、メインレンズMLからピント位置までの被写体距離a1である。
【0167】
画像再構成部220は、焦点距離fML及び被写体距離a1を以下の式(3)に用いて、メインレンズMLからメインレンズの結像面IPまでの距離b1を算出する。
【0168】
【数3】
【0169】
次に、画像再構成部220は、被写体距離a1と、上記式(3)を用いて算出された距離b1を以下の式(4)に用いて、光軸OAからメインレンズMLの結像点PFまでの距離x’を算出する。
【0170】
【数4】
【0171】
その後、画像再構成部220は、メインレンズMLからマイクロレンズアレイLAまでの距離c1と、上記の式(3)を用いて算出された距離b1とを以下の式(5)に用いて、メインレンズMLの結像面からl番目のレンズまでの距離a2を算出する。
【0172】
a2=c1−b1・・・(5)
【0173】
次に、画像再構成部230は、光軸OAからl番目のレンズLの主点までの距離d、上記の式(4)を用いて算出された距離x’、マイクロレンズアレイLAから撮像素子の表面IEまでの距離c2、及び上記の式(3)を用いて算出された距離a2を以下の式(6)に用いて、到達点PEと光軸OAとの距離x’’を算出する。
【0174】
【数5】
【0175】
尚、Z軸方向の計算式(3)及び(5)は、ガウスの結像公式から導かれる。また、X軸方法の計算式(4)及び(6)は、三角形の相似関係から導かれる。上記式(4)及び(6)では、記号x、x’、及びx’’を用いて、X軸方向における注目画素の位置PSと光軸OAとの距離、光軸OAからメインレンズMLの結像点PFまでの距離、及び到達点PEと光軸OAとの距離を算出した。これと同様に、上記式(5)及び(7)において記号y、y’、及びy’’を用いることで、X軸及びZ軸の双方に垂直なY軸方向における、注目画素の位置PSと光軸OAとの距離、光軸OAからメインレンズMLの結像点PFまでの距離、及び到達点PEと光軸OAとの距離を算出できる。
【0176】
到達点PEが定まると、レンズlに対応するサブ画像上のPEに対応する対応画素が定まる。そして、図18のステップS603で対応画素が定まると、画像再構成部220は特定された画素の画素値を取得する。
【0177】
そして、画像再構成部220はPEに対応する画素値が存在する(対応する画素がサブ画像上に存在し、かつ画素値がNULLでない)か否か判別する(ステップS604)。
対応する画素値が無い場合(ステップS604;NO)、そのサブ画像については再構成画像の画素pに画素値を追加しない。
【0178】
補間画素の画素値がNULLである場合に画素値を追加しないことで、ノイズやオクリュージョンにより対応がはっきりしない補間画素の画素値の情報を再構成画像から排除することができる。
【0179】
一方、対応する画素値が有る場合(ステップS604;YES)、再構成画像の画素pに対応画素の画素値を加算する。
このとき、加算後の画素値Vp’は、式(7)を用いて算出する。
【0180】
【数6】
【0181】
なお、Vpは加算前のp画素の値、VPEは対応画素の画素値、tpはそれまで画素pに画素値が加算された回数である。
ステップS605では、さらにtpをインクリメントする。
尚、再構成画像の注目画素pの画素値は、再構成画像生成処理の開始時に値「0」に初期化されている。
【0182】
その後、画像再構成部220は、lとLを比較して、全てのレンズに対応するサブ画像について加算処理が終了したか判別する(ステップS606)。
lがL未満である場合(ステップS606;NO)、未処理のサブ画像が存在すると判別して、画像再構成部220は、lをインクリメントし(ステップS607)、次のレンズについてステップS602から処理を繰り返す。
【0183】
一方、lがL以上で、全てのレンズに対応するサブ画像について処理が終了したと判別すると(ステップS606;YES)、次に画像再構成部220はpとPを比較して再構成画像上の全ての画素を処理したか判別する(ステップS608)。
【0184】
pがP未満である場合(ステップS608;NO)、未処理の画素が存在すると判別して、画像再構成部220は、次の画素について処理を実行する。即ち、pをインクリメントし、lに1を代入し、tpに0を代入し(ステップS609)、ステップS602から処理を繰り返す。
【0185】
一方、pがP以上であり、全ての画素について処理が終了したと判別すると(ステップS608;YES)、次に画像再構成部220は再構成画像生成処理を終了する
【0186】
その後、デジタルカメラ1は再構成された再構成画像OBの画像データを、図1の表示部520へ出力する。尚は、図1のI/O部510を介して、記録媒体へ再構成画像OBの画像データを格納してもよく、また、他の装置へ再構成画像OBの画像データを出力しても良い。
【0187】
実施形態1に係るデジタルカメラ1は、マイクロレンズアレイLAを用いて撮影することにより、略同一の間隔で格子状に配置された視点から、M×N個のサブ画像を同時に、一つの光学デバイスで撮影することが出来る。
デジタルカメラ1は補間画像生成装置30が生成した補間画像を用いて、従来よりノイズの少ない再構成画像を生成することができる。
【0188】
(実施形態2)
次に、本発明の実施形態2について説明する。実施形態2は、画素値加算処理において、登録された角度θが大きい実画素を優先して、補間画素に画素値を加算することを特徴とする。
【0189】
実施形態2に係るデジタルカメラ1及び補間画像生成装置30は、実施形態1に係るデジタルカメラ1と同様の構成を持つ。
【0190】
実施形態2に係る補間画像生成装置30は、図12に示した補間画像生成処理を実行する。ここで、実施形態2に係る補間画像生成装置30は、補間画像生成処理のステップS107で画素値加算処理1ではなく画素値加算処理2を実行する。
【0191】
図12に示す補間画像生成処理のステップS106が終わると、対応検出部324が画素値加算処理2を開始する。
対応検出部324と、対応評価部325と、画素値加算部326と、が実行する画素値加算処理2について、図20を参照して説明する。
【0192】
画素値加算処理2では、まず対応検出部324が変数を初期化する(ステップS701)。
即ち、対応検出部324はステップS701で現在のイテレーション回数を示す変数it3に1を代入する。また、そのイテレーションで処理対象となる角度を表す変数θit3に初期値θ0として実画素情報リストに登録されている角度θのうち最大の数値を代入する(ステップS701)。
【0193】
登録されている角度θがより大きい実画素が、よりデジタルカメラ1に近い場所に存在する被写体に対応する画素であり、補間画素により優先的に加算されるべき実画素であると推定できる。そこで、実施形態2では、登録されている角度θが大きい実画素を先のイテレーションで処理することにより、オクリュージョン画素においてより手前の被写体に対応する実画素の画素値のみを加算するように処理する。
即ち、ステップS701において、対応検出部324が図8に示す実画素情報リストを登録されている角度θで降順(値が大きい順)にソートする。そして、ソート後の実画素情報リストに登録された実画素を、上から順に下記処理を実行する。このとき、角度θがNULLである画素は除外する。
また、画素値加算処理2の総イテレーション回数IT3を取得する。このとき、IT3は実画像情報リストに登録されている角度θの列に登録されている数値の数である。例えば、実情報リストの角度θの列に0が5つ、10が3つ、20が4つ登録されているとする。このとき、角度θの列には0、10、20、の三つの数値が登録されているため、IT3は3である。
【0194】
初期化が終わると、対応検出部324は実画素情報リストに登録された実画素から、角度θの列の数値が現在のイテレーションで処理対象となる角度θit3である実画素を抽出する(ステップS702)。
【0195】
次に、対応検出部324はステップS702で抽出した実画素の数Pを抽出し、カウンタ変数pit3に1を代入する(ステップS703)。また、抽出した実画素に、1〜Pまでナンバリングを行う。
【0196】
そして、対応検出部324は抽出した実画素のうち、pit3番目の実画素(画素pit3)を注目実画素とする(ステップS704)。
【0197】
注目実画素を決定すると、対応検出部324は図16に示した注目実画素に基づく補間処理を実施形態1と同様に実行する(ステップS705)。
【0198】
注目実画素(画素pit3)に基づく補間処理が終わると、対応検出部324はステップS702で抽出された画素のうち、未処理の実画素が残っていないか否か判別する。具体的には、pit3がPit3以上であるか判別し、Pit3未満であった場合は(ステップS706;NO)、対応検出部324はそのイテレーションで未処理の実画素があると判別する。そして、pit3をインクリメントし(ステップS707)、次の実画素を注目実画素としてステップS704から処理を繰り返す。
【0199】
一方、pit3がPit3以上であり、そのイテレーションで抽出された全ての実画素について処理したと判別すると(ステップS706;YES)、対応検出部324はそのイテレーションを終了する。そして、it3とIT3を比較して、イテレーションが所定の回数IT3だけ繰り替えされたか判別する(ステップS708)。
it3がIT3未満であるとき(ステップS708;NO)、所定の回数イテレーションを行っていないと判別し、対応検出部324は次のイテレーションに移行する。
具体的には、対応検出部324はit3をインクリメントし、θit3にθ’を代入して更新し(ステップS709)、処理をステップS702から繰り返す。
このとき、θ’は実画素情報リストに登録された角度θのうち、直前のθit3の次に大きい値である。
【0200】
一方、it3がIT3以上の場合(ステップS708;YES)、対応検出部324は画素値加算処理2を終了する。
【0201】
画素値加算処理2が終わると、図12にもどってステップS108と同様の処理が行われ、補間画像がすべてのEPIについて生成され、補間画像生成装置30は補間画像生成処理を終了する。そして、デジタルカメラ1は補間画像生成装置30が生成した補間画像を用いて、実施形態1と同様に再構成画像を生成する。
【0202】
上記のように、実施形態2では、画素値加算処理2において角度θが大きい順にイテレーション処理を実行する。そして、図16の注目実画素に基づく補間処理のステップS504において、i番目の補間画素がオクリュージョン画素であるか、前回までのイテレーションで両隣の補間画素に画素値が追加されているか否かで判別する。
即ち、角度θが大きい実画素に対応付けられた(画素値を加算された)補間画素にはさまれた補間画素をオクリュージョン画素と判別し、その補間画素に対しては角度θがより小さい実画素の画素値を加算しない。
実施形態2に係る補間画像生成装置30を用いれば、オクリュージョン画素により手前にある被写体に隠蔽されると推定される画素の画素値を加算しないで、補間画像を生成することができる。そのため、ライトフィールド画像からオクリュージョンに対応した補間画像を生成することが出来る。
【0203】
また、実施形態2に係るデジタルカメラ1は、補間画像生成装置30が生成した補間画像を用いて、従来よりノイズの少ない再構成画像を生成することができる。
【0204】
<変形例>
以上に本発明の実施形態1及び2について説明したが、本発明の実施形態はこれに限定されるものではなく、例えば以下のような変形が可能である。
上記した実施形態1及び実施形態2では、直線上にある画素を抽出するに当たって、直線と画素列との交点にもっとも近い場所に中心点がある画素を当該直線上にある判別して画素を抽出した。しかし、本発明において、直線上にある画素を抽出する方法はこれに限らない。その他の抽出方法として、直線と画素列との交点が、二つの画素の中心点の間にある場合、当該二つの画素を線上にあるとして抽出する方法も可能である。
【0205】
また、実施形態1及び実施形態2においては、各実画素についてそれぞれ角度θを推定した。そのため、例えば画素1に角度θが推定された場合に、画素1のLine(θ)の線上にある画素2についても再度角度θを推定する。しかし、本発明に係る角度θ登録方法はこれに限られず、一つの画素に角度θが推定された場合に、その画素のLine(θ)上の画素全てに一度に角度θを登録する処理も可能である。この構成によれば、角度θ推定処理をより高速に行うことができる。
【0206】
また、上記実施例では、画像をグレースケール画像であるとして説明したが、本発明の処理対象となる画像はグレースケール画像に限らない。例えば、画像は各画素にR(レッド)、G(グリーン)、B(ブルー)、の三つの画素値が定義されたRGB画像であってよい。この場合、画素値をRGBのベクトル値とし、画素値間の差を計算する場合はベクトル計算によって差を求めても良い。また、R、G、B、の各値をそれぞれ独立したグレースケール画像として、それぞれ上記処理を行っても良い。この構成によれば、カラー画像についても補間画像を生成し、また、当該補間画像を用いて従来よりノイズの少ない再構成画像を生成することができる。
【0207】
また、上記実施例では、情報処理部20等はデジタルカメラ1の一部であったが、情報処理部20と記憶部40とインターフェース部50とは、デジタルカメラとは独立した物理構成で実現されても良い。
【0208】
また、補間画像生成装置30はデジタルカメラ1の情報処理部20の一部であったが、補間画像生成装置30は、情報処理部20とは独立した物理構成で実現されても良い。
【0209】
このとき、補間画像生成装置30が取得するライトフィールド画像LFは、撮像部10のマイクロレンズアレイLAによって取得された画像に限らない。補間画像生成装置30が取得する画像は、複数のカメラによって同時に異なる視点から取得された画像であってもよく、一つのカメラによって異なる視点から順次取得された画像であっても良い。
また、ライトフィールド画像LFを構成する各サブ画像間の視差は、各画像と視差との情報を撮像設定として得られる場合は、同じでなくても良い。また、補間画像生成装置30はライトフィールド画像ではなく他機器が生成したEPIを取得して、EPIから補間画像を生成する構成であってよい。
【0210】
なお、情報処理部20と記憶部40とインターフェース部50と等から構成されるデジタルカメラ1のための処理を実行する中心となる部分、あるいは情報処理部320、記憶部330、出力部350、等から構成される補間画像生成装置30のための処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROM等)に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行するデジタルカメラの情報処理部や補間画像生成装置を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで情報処理部や補間画像生成装置を構成してもよい。
【0211】
また、デジタルカメラの情報処理部や補間画像生成装置の機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【0212】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS:Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【0213】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0214】
(付記1)
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
を備えることを特徴とする補間画像生成装置。
【0215】
(付記2)
前記判別部は、前記実画素の信頼度が高い順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする付記1に記載の補間画像生成装置。
【0216】
(付記3)
前記判別部は、前記実画素が、より手前に存在する被写体の部位に対応する実画素から順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする付記1に記載の補間画像生成装置。
【0217】
(付記4)
前記実画素抽出部は、前記実画素のそれぞれについて対応する実画素を、エピポーラプレーン画像上で、直線上の実画素間の画素値が互いに異なる程度である誤差値に基づいて直線検出することで抽出する、
ことを特徴とする付記1乃至3のいずれか一つに記載の補間画像生成装置。
【0218】
(付記5)
前記実画素抽出部は、異なる検出基準を用いて複数回繰り返して直線検出し、直線検出が完了した実画素を、次回以降の繰り返し処理において直線検出の誤差値の算出対象から除外する、
ことを特徴とする付記4に記載の補間画像生成装置。
【0219】
(付記6)
前記実画素抽出部は、前記誤差値が所定の閾値以下であることを前記直線検出の検出基準とし、直線検出を繰り返すにつれて当該閾値を大きくする、
ことを特徴とする付記5に記載の補間画像生成装置。
【0220】
(付記7)
前記実画素抽出部は、より先の繰り返し処理で直線検出された実画素の信頼度がより高くなるように前記実画素の信頼度を算出する、
ことを特徴とする付記5又は6に記載の補間画像生成装置。
【0221】
(付記8)
前記実画素抽出部は、前記実画素抽出部が検出した直線と前記エピポーラプレーン画像の法線とが成す角度の大きさに基づいて、前記信頼度を算出する、
ことを特徴とする付記4乃至6のいずれか一つに記載の補間画像生成装置。
【0222】
(付記9)
メインレンズが結像した被写体の光学像を複数のマイクロレンズを用いて撮像した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数のマイクロレンズの光学中心に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
前記画像取得部が取得した複数の画像と、前記補間画像生成部が生成した補間画像と、から、新たにフォーカスされた画像を再構成する再構成手段と、
前記再構成された画像の情報を出力する画像情報出力手段と、
を備えることを特徴とする再構成画像生成装置。
【0223】
(付記10)
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得ステップと、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出ステップと、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出ステップと、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義ステップと、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出ステップと、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別ステップと、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成ステップと、
を含むことを特徴とする補間画像生成方法。
【0224】
(付記11)
コンピュータに、
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得機能、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出機能、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出機能、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義機能、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出機能、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別機能、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成機能、
を実現させることを特徴とするプログラム。
【符号の説明】
【0225】
1…デジタルカメラ、10…撮像部、110…光学装置、111…シャッタ、112…絞り、120…イメージセンサ、20…情報処理部、30…補間画像生成装置、31…情報処理部、32…主記憶部、33…外部記憶部、34…操作部、35…表示部、36…入出力部、37…内部バス、38…プログラム、210…画像処理部、220…画像再構成部、230…撮像制御部、310…入力部、311…画像取得部、312…画像設定取得部、320…情報処理部、321…EPI生成部、322…角度推定部、323…補間画像設置部、324…対応検出部、325…対応評価部、326…画素値加算部、330…記憶部、331…実画素情報記憶部、332…補間設定記憶部、333…補間情報記憶部、340…操作部、350…出力部、40…記憶部、410…撮像設定記憶部、420…再構成設定記憶部、430…画像記憶部、50…インターフェース部(I/F部)、510…I/O部、520…表示部、530…操作部、LF…ライトフィールド画像、OA…光軸、OB…被写体、PS…被写体上の部位(注目点)、ML…メインレンズ、PF…結像点、IP…結像面、PE…到達点、LA…マイクロレンズアレイ、IE…撮像面、SL…サブレンズ、SL1〜SL4…サブレンズ、S…サブ画像、S11〜SMN…サブ画像、S1〜S4…サブ画像
【特許請求の範囲】
【請求項1】
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
を備えることを特徴とする補間画像生成装置。
【請求項2】
前記判別部は、前記実画素の信頼度が高い順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする請求項1に記載の補間画像生成装置。
【請求項3】
前記判別部は、前記実画素が、より手前に存在する被写体の部位に対応する実画素から順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする請求項1に記載の補間画像生成装置。
【請求項4】
前記実画素抽出部は、前記実画素のそれぞれについて対応する実画素を、エピポーラプレーン画像上で、直線上の実画素間の画素値が互いに異なる程度である誤差値に基づいて直線検出することで抽出する、
ことを特徴とする請求項1乃至3のいずれか一項に記載の補間画像生成装置。
【請求項5】
前記実画素抽出部は、異なる検出基準を用いて複数回繰り返して直線検出し、直線検出が完了した実画素を、次回以降の繰り返し処理において直線検出の誤差値の算出対象から除外する、
ことを特徴とする請求項4に記載の補間画像生成装置。
【請求項6】
前記実画素抽出部は、前記誤差値が所定の閾値以下であることを前記直線検出の検出基準とし、直線検出を繰り返すにつれて当該閾値を大きくする、
ことを特徴とする請求項5に記載の補間画像生成装置。
【請求項7】
前記実画素抽出部は、より先の繰り返し処理で直線検出された実画素の信頼度がより高くなるように前記実画素の信頼度を算出する、
ことを特徴とする請求項5又は6に記載の補間画像生成装置。
【請求項8】
前記実画素抽出部は、前記実画素抽出部が検出した直線と前記エピポーラプレーン画像の法線とが成す角度の大きさに基づいて、前記信頼度を算出する、
ことを特徴とする請求項4乃至6のいずれか一項に記載の補間画像生成装置。
【請求項9】
メインレンズが結像した被写体の光学像を複数のマイクロレンズを用いて撮像した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数のマイクロレンズの光学中心に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
前記画像取得部が取得した複数の画像と、前記補間画像生成部が生成した補間画像と、から、新たにフォーカスされた画像を再構成する再構成手段と、
前記再構成された画像の情報を出力する画像情報出力手段と、
を備えることを特徴とする再構成画像生成装置。
【請求項10】
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得ステップと、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出ステップと、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出ステップと、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義ステップと、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出ステップと、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別ステップと、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成ステップと、
を含むことを特徴とする補間画像生成方法。
【請求項11】
コンピュータに、
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得機能、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出機能、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出機能、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義機能、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出機能、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別機能、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成機能、
を実現させることを特徴とするプログラム。
【請求項1】
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
を備えることを特徴とする補間画像生成装置。
【請求項2】
前記判別部は、前記実画素の信頼度が高い順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする請求項1に記載の補間画像生成装置。
【請求項3】
前記判別部は、前記実画素が、より手前に存在する被写体の部位に対応する実画素から順に判別処理を実行し、前記補間画素抽出部が抽出した実画素に対応する補間画素の候補が当該実画素と対応するか否かを、当該実画素の信頼度と、前回までの判別処理で当該補間画素の候補に隣接する補間画素に対応すると判別された実画素に定義された信頼度と、を比較し当該比較結果に基づいて判別する、
ことを特徴とする請求項1に記載の補間画像生成装置。
【請求項4】
前記実画素抽出部は、前記実画素のそれぞれについて対応する実画素を、エピポーラプレーン画像上で、直線上の実画素間の画素値が互いに異なる程度である誤差値に基づいて直線検出することで抽出する、
ことを特徴とする請求項1乃至3のいずれか一項に記載の補間画像生成装置。
【請求項5】
前記実画素抽出部は、異なる検出基準を用いて複数回繰り返して直線検出し、直線検出が完了した実画素を、次回以降の繰り返し処理において直線検出の誤差値の算出対象から除外する、
ことを特徴とする請求項4に記載の補間画像生成装置。
【請求項6】
前記実画素抽出部は、前記誤差値が所定の閾値以下であることを前記直線検出の検出基準とし、直線検出を繰り返すにつれて当該閾値を大きくする、
ことを特徴とする請求項5に記載の補間画像生成装置。
【請求項7】
前記実画素抽出部は、より先の繰り返し処理で直線検出された実画素の信頼度がより高くなるように前記実画素の信頼度を算出する、
ことを特徴とする請求項5又は6に記載の補間画像生成装置。
【請求項8】
前記実画素抽出部は、前記実画素抽出部が検出した直線と前記エピポーラプレーン画像の法線とが成す角度の大きさに基づいて、前記信頼度を算出する、
ことを特徴とする請求項4乃至6のいずれか一項に記載の補間画像生成装置。
【請求項9】
メインレンズが結像した被写体の光学像を複数のマイクロレンズを用いて撮像した複数の撮影画像を取得する画像取得部と、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出し、さらに各実画素について、抽出された対応実画素との信頼度を算出する実画素抽出部と、
前記複数のマイクロレンズの光学中心に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義部と、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出部と、
前記補間画素抽出部が抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別部と、
前記判別部が補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成部と、
前記画像取得部が取得した複数の画像と、前記補間画像生成部が生成した補間画像と、から、新たにフォーカスされた画像を再構成する再構成手段と、
前記再構成された画像の情報を出力する画像情報出力手段と、
を備えることを特徴とする再構成画像生成装置。
【請求項10】
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得ステップと、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出ステップと、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出ステップと、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義ステップと、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出ステップと、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別ステップと、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成ステップと、
を含むことを特徴とする補間画像生成方法。
【請求項11】
コンピュータに、
複数の視点から被写体を撮影した複数の撮影画像を取得する画像取得機能、
前記複数の撮影画像を構成する画素である実画素のそれぞれについて、当該実画素が含まれる撮影画像とは異なる撮影画像の、被写体の同一の部位に対応すると推定される実画素を、当該実画素の対応実画素として抽出する対応実画素抽出機能、
各実画素について、抽出された対応実画素との信頼度を算出する信頼度算出機能、
前記複数の視点に含まれない新たな視点に対応する補間画像のひな形を定義するひな形定義機能、
前記実画素のそれぞれについて、補間画像のひな形を構成する画素である補間画素から、当該実画素が対応する被写体の部位に対応すると推定される補間画素の候補を、当該実画素を撮影した視点の位置と、当該実画素の対応実画素を撮影した視点の位置と、前記新たな視点の位置と、に基づいて抽出する補間画素抽出機能、
前記抽出した実画素に対応する補間画素の候補のそれぞれが当該実画素と対応するか否かを、当該実画素の信頼度又は当該補間画素の候補に隣接する補間画素が対応する実画素の信頼度に基づいて判別する判別機能、
前記補間画素の候補が実画素と対応すると判別した場合に、当該補間画素の画素値を当該実画素の画素値に基づいて更新することにより、前記補間画像を生成する補間画像生成機能、
を実現させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【公開番号】特開2013−58112(P2013−58112A)
【公開日】平成25年3月28日(2013.3.28)
【国際特許分類】
【出願番号】特願2011−196577(P2011−196577)
【出願日】平成23年9月8日(2011.9.8)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
【公開日】平成25年3月28日(2013.3.28)
【国際特許分類】
【出願日】平成23年9月8日(2011.9.8)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
[ Back to top ]