(57)【要約】【課題】  撮影画像データと距離情報とを用いてぼかし処理を行う画像処理において、アーティファクトを抑制することを目的とする。【解決手段】  被写体の距離情報を基に、撮影画像データにぼかし処理を行う画像処理装置１３であって、撮影画像データから、互いに異なる距離情報に対応した複数の分割画像データに分割する分割部１３４と、複数の分割画像データそれぞれに対して、オクルージョン領域を含めてぼかし処理を行い、複数のぼかし画像データを生成する生成部１３５と、複数のぼかし画像データを合成する合成部１３６と、を有する。【選択図】  図１
2015088832.tif 000002
【特許請求の範囲】
【請求項１】
被写体の距離情報を基に、撮影画像データにぼかし処理を行う画像処理装置であって、
前記撮影画像データを、互いに異なる前記距離情報に対応した複数の分割画像データに分割する分割部と、
前記複数の分割画像データそれぞれに対して、オクルージョン領域を含めてぼかし処理を行い、複数のぼかし画像データを生成する生成部と、
前記複数のぼかし画像データを合成する合成部と、を有することを特徴とする画像処理装置。
【請求項２】
前記生成部が、相対的に後ろ側を表す距離情報に対応する分割画像のオクルージョン領域のぼかし処理後の画素値を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記生成部が、前記オクルージョン領域に対してぼかし処理を行い前記オクルージョン領域のぼかし処理後の画素値を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記ぼかし処理が、少なくとも平均化処理に使用する周辺画素の範囲を表すフィルタを用いた平均化処理により行われ、
相対的に後ろ側を表す距離情報に対応する分割画像データのぼかし処理に使用されるフィルタのサイズが、相対的に前側を表す距離情報に対応する分割画像データのぼかし処理に使用されるフィルタのサイズより大きいことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
着目画素のぼかし処理が、前記フィルタと、前記周辺画素に対応付けられたフィルタのサイズが前記着目画素に対応付けられたフィルタサイズより小さい場合には０を表し、同じまたは大きい場合には１を表すマスクデータと、を用いて行われることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記フィルタが、着目画素及び周辺画素の平均化処理における重みをさらに表していることを特徴とする請求項４又は５に記載の画像処理装置。
【請求項７】
前記オクルージョン領域の画素値を推定する推定部をさらに有し、
前記生成部が、前記推定された画素値を用いて前記オクルージョン領域のぼかし処理を行い、前記オクルージョン領域のぼかし処理後の画素値を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項８】
前記ぼかし処理が、少なくとも平均化処理に使用する周辺画素の範囲を表すフィルタを用いた平均化処理により行われ、
相対的に後ろ側を表す距離情報に対応する分割画像データのぼかし処理に使用されるフィルタのサイズが、相対的に前側を表す距離情報に対応する分割画像データのぼかし処理に使用されるフィルタのサイズより大きいことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記フィルタが、着目画素及び周辺画素の平均化処理における重みをさらに表していることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記合成部が、前記オクルージョン領域のぼかし処理後の画素値を、前記オクルージョン領域内の少なくとも一部の領域で割合を変えて、相対的に前側を表す距離情報に対応するぼかし画像に含まれる前記オクルージョン領域に対応する画素値と加算することを特徴とする請求項２乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記ぼかし処理によって画素値が算出される前記オクルージョン領域の範囲は、前記加算における割合がゼロではない範囲をすべて含むことを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記生成部が、前記撮影画像データから前記割合を表すマスクデータを生成し、
前記合成部が、前記マスクと前記オクルージョン領域のぼかし処理後の画素値を含む相対的に後ろ側を表す距離情報に対応するぼかし画像データと、相対的に前側を表す距離情報に対応するぼかし画像データと、を用いて各画素値を加算することを特徴とする請求項１０又は１１に記載の画像処理装置。
【請求項１３】
撮像素子と、請求項１乃至１２のいずれか１項に記載の画像処理装置と、を有する撮像装置であって、
前記撮像素子の信号から前記撮影画像データを取得されることを特徴とする撮像装置。
【請求項１４】
被写体の距離情報を基に、撮影画像データにぼかし処理を行う画像処理方法であって、
撮影画像データから、互いに異なる前記距離情報に対応した複数の分割画像データに分割する分割工程と、
前記複数の分割画像データのそれぞれに対して、オクルージョン領域を含めてぼかし処理を行い、複数のぼかし画像データを生成する生成工程と、
前記複数のぼかし画像データを合成する合成工程と、を有することを特徴とする画像処理方法。
【請求項１５】
前記生成工程が、相対的に後ろ側を表す距離情報に対応した分割画像のオクルージョン領域のぼかし処理後の画素値を算出することを特徴とする請求項１４に記載の画像処理方法。
【請求項１６】
前記生成工程が、前記オクルージョン領域に対してぼかし処理を行い前記オクルージョン領域のぼかし処理後の画素値を算出することを特徴とする請求項１５に記載の画像処理方法。
【請求項１７】
前記ぼかし処理が、少なくとも平均化処理に使用する周辺画素の範囲を表すフィルタを用いた平均化処理により行われ、
相対的に後ろ側を表す距離情報に対応する分割画像データのぼかし処理に使用されるフィルタのサイズが、相対的に前側を表す距離情報に対応する分割画像データのぼかし処理に使用されるフィルタのサイズより大きいことを特徴とする請求項１６に記載の画像処理方法。
【請求項１８】
着目画素のぼかし処理が、前記フィルタと、前記周辺画素に対応付けられたフィルタのサイズが前記着目画素に対応付けられたフィルタサイズより小さい場合には０を表し、同じまたは大きい場合には１を表すマスクデータと、を用いて行われることを特徴とする請求項１７に記載の画像処理方法。
【請求項１９】
前記オクルージョン領域の画素値を推定する推定工程をさらに有し、
前記生成工程が、前記推定された画素値を用いて前記オクルージョン領域のぼかし処理を行い、前記オクルージョン領域のぼかし処理後の画素値を算出することを特徴とする請求項１５に記載の画像処理方法。
【請求項２０】
前記合成工程は、前記オクルージョン領域のぼかし処理後の画素値を、前記オクルージョン領域内の少なくとも一部の領域で割合を変えて、前記オクルージョン領域に対応する、相対的に前側を表す距離情報に対応するぼかし画像データの画素値と加算されることを特徴とする請求項１５乃至１９のいずれか１項に記載の画像処理方法。
【請求項２１】
前記生成工程によってぼかし後の画素値が算出される前記オクルージョン領域の範囲は、前記加算における割合がゼロではない範囲であることを特徴とする請求項２０に記載の画像処理方法。
【請求項２２】
前記生成工程が、前記撮影画像データから前記割合を表すマスクを生成し、
前記合成工程が、前記マスクと前記オクルージョン領域のぼかし処理後の画素値を含む相対的に後ろ側を表す距離情報に対応するぼかし画像データと、相対的に前側を表す距離情報に対応するぼかし画像データと、を用いて各画素値を加算することを特徴とする請求項２０又は２１に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像にぼかし処理を行う画像処理装置、それを備えた撮像装置、及び画像にぼかし処理を行う画像処理方法に関する。
【背景技術】
【０００２】
カメラの撮影テクニックの一つに、被写体以外を意図的にぼけさせることで、注目する被写体を際立たせるという撮影手法が知られている。しかし、コンパクトデジタルカメラでは撮像素子のサイズが小さい等の理由により、被写界深度を浅くすることができず、十分なぼけが表現できない。そこで最近では、画像処理によって撮影画像にぼけを付加する技術が提案されている。特許文献１では、撮影画像と距離情報画像を用いて、背景、前景の順で等距離範囲毎にたたみ込み計算によるぼかし処理を行い、ぼかし画像を生成することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−０２５７６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のように、前景、背景をそれぞれ精度良くぼかし処理を行う場合には、前景で隠れた背景（オクルージョン領域）の輝度情報を考慮する必要があるが、特許文献１ではこの輝度情報を考慮せずにぼかし処理を行っている。そのため、ぼかし処理を行った画像にアーティファクトが発生してしまう。
【０００５】
本発明は、撮影画像データと距離情報とを用いてぼかし処理を行う画像処理において、アーティファクトを抑制することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、被写体の距離情報を基に、撮影画像データにぼかし処理を行う画像処理装置であって、前記撮影画像データから、互いに異なる前記距離情報に対応した複数の分割画像データに分割する分割部と、前記複数の分割画像データのそれぞれに対して、オクルージョン領域を含めてぼかし処理を行い、複数のぼかし画像データを生成する生成部と、前記複数のぼかし画像データを合成する合成部と、を有することを特徴とする。
【０００７】
本発明に係る画像処理方法は、被写体の距離情報を基に、撮影画像データにぼかし処理を行う画像処理方法であって、前記撮影画像データから、互いに異なる前記距離情報に対応した複数の分割画像データに分割する分割工程と、前記複数の分割画像データのそれぞれに対して、オクルージョン領域を含めてぼかし処理を行い、複数のぼかし画像データを生成する生成工程と、前記複数のぼかし画像データを合成する合成工程と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、撮影画像データと距離情報とを用いてぼかし処理を行う画像処理において、アーティファクトを抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態１に係る画像処理装置を有する撮像装置の一例を示す模式図。
【図２】実施形態１に係る画像処理方法のフローチャート。
【図３】ぼけサイズの決定方法を説明する図。
【図４】ぼけサイズ、フィルタサイズの決定方法を説明する図。
【図５】画像処理方法を説明する図。
【図６】背景のぼかし処理を行う方法を説明する図。
【図７】前景のぼかし処理を行う方法を説明する図。
【図８】実施形態２に係る画像処理装置を有する撮像装置の一例を示す模式図。
【図９】実施形態２に係る画像処理方法のフローチャート。
【発明を実施するための形態】
【００１０】
本発明における距離情報とは、２画像のフォーカス位置の中間位置から被写体までの相対的な距離、もしくはどちらか１画像のフォーカス位置から被写体までの相対的な距離、撮影時の撮像装置から被写体までの絶対距離であってもよい。なお、絶対距離あるいは相対距離は、像面側での距離、物体側での距離のどちらであってもよい。また、距離は、実空間の距離で表されてもよいし、デフォーカス量で表されていてもよい。
【００１１】
本発明について、実施形態、図面を用いて詳細に説明するが、本発明は各実施形態の構成に限らない。
【００１２】
（実施形態１）
図１は、本発明の実施形態１に係る撮像装置の構成を模式的に示している。撮像装置１は、撮像光学系１０、撮像素子１１、制御部１２、画像処理装置１３、記憶部１４、入力部１５、表示部１６を有している。
【００１３】
撮像光学系１０は、複数のレンズから構成され、入射する光を撮像素子１１の像面上に結像させる光学系である。撮像素子１１は、ＣＣＤやＣＭＯＳなどのイメージセンサを有する撮像素子である。カラーフィルタを有する撮像素子でもよいし、モノクロの撮像素子でもよいし、三板式の撮像素子でもよい。
【００１４】
画像処理装置１３は、処理部１３０、メモリ１３１、取得部１３２、決定部１３３、分割部１３４、生成部１３５、合成部１３６などを有している。処理部１３０は、撮像素子１１から出力されるアナログ信号のＡＤ変換やノイズ除去、デモザイキング、輝度信号変換、収差補正、ホワイトバランス調整、色補正などの各種信号処理を行う機能を有する。処理部１３０から出力されるデジタル画像データ（撮影画像データ）は、メモリ１３１に蓄積され、表示部１６への表示、記憶部１４への記録（保存）、距離情報の算出、距離マップデータの生成に使用される。なお、距離マップデータは、被写体の距離情報の分布を表すものであり、画像データの形式であってもよいし、そうでなくてもよい。
【００１５】
取得部１３２は、処理部１３０から出力される信号から撮影画像データを取得し、その撮影画像データから被写体の距離情報を取得する。被写体の距離情報を取得する方法は、撮影条件を変えて撮影したぼけ方の異なる画像データを用いる方法（Ｄｅｐｔｈ  Ｆｒｏｍ  Ｄｅｆｏｃｕｓ法：ＤＦＤ法）や、視差の異なる撮影画像データを用いる方法（ステレオ法）が挙げられる。その他にもＴｉｍｅ  ｏｆ  Ｆｌｉｇｈｔ法やＤｅｐｔｈ  Ｆｒｏｍ  Ｆｏｃｕｓ法の方法が挙げられる。また、取得部１３２は、画素ごとに距離情報を取得し、距離マップデータを生成する機能を有する。取得部１３２で生成された距離情報マップデータは、記憶部１４に格納、またはメモリ１３１に一時的に格納され、後段の処理に利用する。さらに、取得部１３２は、ぼかし処理のために設定される光学パラメータ及び撮像素子パラメータなどを取得する機能を有している。
【００１６】
決定部１３３は、距離情報に対応して、重み付け平均化処理で使用するフィルタサイズを決定する。決定部１３３は、フォーカス位置から距離が大きいほど、フィルタサイズが大きくなるようにフィルタサイズを決定する。
【００１７】
分割部１３４は、撮影画像データを、互いに異なる距離情報に対応した複数の分割画像データに分割する。具体的には、分割部１３４は、撮影画像データを、同じ距離情報を持った画素、あるいは距離情報が同じ範囲内にある画素を集めて、距離情報ごと、あるいは距離情報の範囲ごとの分割画像データに分割する。
【００１８】
生成部１３５は、距離情報に対応した複数の分割画像データそれぞれに対して、オクルージョン領域を含めてぼかし処理を行い、複数のぼかし画像データを生成する。ぼかし処理は、フィルタを用いた重み付け平均化処理によって実行される。
【００１９】
合成部１３６は、複数のぼかし画像データを合成する機能を有する。合成部１３６は、複数のぼかし画像データを画像内に渡って同じ割合で加算するのではなく、複数のぼかし画像データを一部の領域で異なる割合で加算する。なお、画像データの加算とは、画像データの対応する画素の画素値ごとの要素和を算出することを意味する。画素値とは例えば輝度情報や色情報の一方、あるいはその両方を表す。
【００２０】
記憶部１４は、撮影画像データ、距離マップデータ、撮像装置１で利用されるパラメータデータなどが格納される不揮発性の記憶媒体である。記憶部１４としては、高速に読み書きでき、且つ、大容量の記憶媒体であればどのようなものを利用してもよい。例えばフラッシュメモリやＤＲＡＭなどが好ましい。入力部１５はユーザが操作し、撮像装置１に対して情報入力や設定変更を行うためのインターフェイスである。例えばダイヤル、ボタン、スイッチ、タッチパネルなどを利用することができる。表示部１６は、液晶ディスプレイや有機ＥＬディスプレイなどで構成される表示手段である。表示部１６は、撮影時の構図確認、撮影・記録した画像の閲覧、各種設定画面やメッセージ情報の表示などに利用される。
【００２１】
制御部１２は、撮像装置１の各部を制御する機能である。制御部１２の機能としては、例えば、オートフォーカス（ＡＦ）による自動焦点合わせ、フォーカス位置の変更、Ｆ値（絞り）の変更、画像の取り込み、シャッタやフラッシュ（いずれも不図示）の制御、記憶部１４や入力部１５や表示部１６の制御などがある。
【００２２】
次に、本実施形態の画像処理方法について、図２で示すフローチャートを用いて詳細に説明する。
【００２３】
距離マップデータの取得工程では、取得部１３２が、撮像素子１１の信号から取得した撮影画像データを基に、例えばＤＦＤ法を用いて被写体の距離情報を画素ごとに取得し、距離マップデータを生成する（Ｓ２０）。また、取得部１３２は、後述するぼかし処理で使用する光学パラメータや撮像素子パラメータを取得する（Ｓ２１）。各パラメータは焦点距離、開口サイズ（またはＦナンバー）、撮像素子１１のサイズ、画素数（または画素ピッチ）等が挙げられ、これらは撮影時の設定のものを使用してもよいし、任意に設定されたものでも構わない。なお、Ｓ２０とＳ２１の順序は逆でもよい。
【００２４】
次に、決定部１３３は、距離情報ごとにフィルタサイズを決定する（Ｓ２２）。フィルタは、後述するぼかし処理において、着目画素に対してどの範囲の画素まで平均化処理に使用し、どのような重みで平均化処理するかを表すものである。このフィルタサイズが大きい場合の方がフィルタサイズが小さい場合に比べて、着目画素に対してより離れた位置にある周辺画素の値まで重み付け平均化処理で使用することになる。このため、ぼかし処理によって、よりぼかしを大きくしたいものほどフィルタサイズは大きくなる。つまり、フォーカス位置から離れるほどフィルタサイズを大きくすることで、ぼかし処理によって適切なぼけを付けることができる。
【００２５】
ここで、フィルタサイズの具体的な設定の仕方について述べる。図３は、フォーカス位置から外れた距離の像面におけるぼけ量（ぼけサイズｒ）を示している。図３において、ｄｏはＳ２０で取得された距離情報に相当し、ｄｓはその距離における結像位置、ｄｏｂｐはフォーカス位置（物体側）、ｄｓｂｐはフォーカス位置における結像位置、Ｄは開口サイズ、ｄｉはデフォーカス量（像面側）を示す。また撮像光学系１０の焦点距離をｆ、ＦナンバーをＦｎｏとする。ぼけサイズｒは、図３で示す幾何学的な関係から式１で表される。ここで、ｆ、ｄｉ、ｄｓｂｐはそれぞれ式２乃至４の関係式を満たしている。
【００２６】
【数１】
2015088832.tif 000003
【００２７】
決定部１３３は、Ｓ２０で取得された距離情報、Ｓ２１で取得されたパラメータからぼけサイズｒを一意に決定する。そして、決定部１３３が、ぼけサイズｒに対応させてフィルタサイズを一意に決定すればよい。このようにして、決定部１３３は、撮影画像データの各画素に対して、距離情報に応じて１つのフィルタサイズを対応付ける。
【００２８】
ここで、フィルタサイズは指定した数に離散化されてもよい。離散化の効果は、ぼかし処理の処理回数を減らし、計算量を削減することにある。つまり指定した数だけ後述するぼかし処理が行われる。指定した数とはあらかじめ記憶部１４等で決められた値を持っていてもよいし、入力部１５によりユーザが指定しても構わない。また、ぼけサイズのデータ数分布に応じて決定してもよい。例えば図４（ａ）のようなヒストグラムで表されるぼけサイズのデータ数分布であった場合、データ数の山の数に合わせて離散化数を４とすることが望ましい。ただし、必ずしもデータ数の山の数と同一である必要はない。計算時間や計算リソースの観点から上限数を決められ、その中で効率良く計算するために最適化することも可能である。
【００２９】
離散化は、あるぼけサイズ範囲が同一のフィルタサイズとなるように行われる。例えば、図４（ｂ）は、横軸をぼけサイズの入力値、縦軸をフィルタサイズの出力値とした場合の離散化処理の一例を示している。ぼけサイズが０以上ＢＲ０未満の範囲にある場合は、フィルタサイズをＢＳ０とし、ぼけサイズがＢＲ０以上ＢＲ１未満の範囲にある場合は、フィルタサイズをＢＳ１とする。他も同様である。
【００３０】
同一のフィルタサイズに対応付けられた、ぼけサイズの範囲はあらかじめ決められていてもよい。また、そのぼけサイズの範囲は、等間隔でもよいし、図４（ｂ）で示すようにぼけサイズに比例して大きくなってもよい。また、ぼけサイズのデータ数の分布から同じフィルタサイズに対応付けられぼけサイズの範囲が決定されてもよい。例えば、各ぼけサイズの範囲内のデータ数の分散がより小さくかつ２つの範囲のぼけサイズの分散がより大きくなるように各ぼけサイズの範囲を決定していく手法が挙げられる。
【００３１】
同一とした範囲内のフィルタサイズとしては、ぼけサイズの範囲内のぼけサイズの中央値、平均値、最頻値、最小値、最大値のどれでもよい。図４（ｂ）の例では、フィルタサイズがＢＳ０以外は、ぼけサイズの範囲内のぼけサイズの中央値を示している。一方、ＢＳ０のフィルタサイズは、最小値つまり０を取っている。この場合にはぼけサイズがＢＲ０に相当する距離情報の画素は、ぼかし処理後もフォーカス位置となり、撮影画像データの画素データそのものとなり、かつ不要なぼかし処理を行わなくて済むといった利点がある。
【００３２】
通常、フィルタ形状はガウス分布や円柱形状等を与える。その場合、フィルタサイズはガウス分布の幅や円柱の半径等に相当する。フィルタ形状は、平均化処理における重みを表す。なお、フィルタサイズに対して任意の形状をテーブルとして保持するなどして、使用するフィルタの形状を任意に割り当てることも可能である。また必ずしも上記のように算出する必要はなく、異なる形状や与えられる条件下における変換テーブルをあらかじめ用意しておき、フィルタ形状が決定されても構わない。
【００３３】
次に、分割部１３４が撮影画像データを距離情報に対応した複数の分割画像データに分割する（Ｓ２３）。より具体的には、分割部１３４は、距離情報及びぼけサイズに対応した離散化されたフィルタサイズごとに画像領域を分割する。つまり分割された１つの分割画像データは、同じフィルタサイズに対応付けられた画素が集められ、異なるフィルタサイズに対応付けられた画素は除かれている。
【００３４】
図５は、画像処理方法によって生成される画像データに対応する各画像について示されている。以下では、各画像を用いて画像処理方法を説明する。また、説明を簡単にするため、フィルタサイズが２つの場合について説明する。Ｓ２３の分割工程によって、撮影画像３０は、距離マップ３１を用いて、分割画像３２、３３に分割される。分割画像３２は、フィルタサイズがＢＳ２に対応する画素が抽出された画像で、フィルタサイズがＢＳ１に対応する画素は、画素値が何も情報を持たないかあるいはゼロに設定されている。一方、分割画像３３は、フィルタサイズがＢＳ１に対応する画素が抽出された画像で、フィルタサイズがＢＳ２に対応する画素は、画素値が何も情報を持たないかあるいはゼロに設定されている。なお、ＢＳ１＜ＢＳ２であり、分割画像３２は相対的に後ろ側を表す距離情報に対応する画像（以下、後景という）を表し、分割画像３３は相対的に前側を表す距離情報に対応する画像（以下、前景という）を表している。
【００３５】
次に、生成部１３５が分割画像３３からマスク３４を生成する（Ｓ２４）。マスク３４は、分割画像３３に対して、フィルタサイズがＢＳ１に対応する画素の画素値が１に設定されている点が異なる。このマスク３４は、後述するぼかし処理の際に利用される。なお、マスク３４は、生成部１３５によって撮影画像３０から直接生成されてもよい。
【００３６】
次に、生成部１３５は、分割画像３２、３３に対してぼかし処理を行う（Ｓ２５）。ぼかし処理は以下の式５の重み付け平均化処理によって実行される。
【００３７】
【数２】
2015088832.tif 000004
【００３８】
ここで、Ｉ’は分割画像３２（もしくは分割画像３３）のぼかし処理後の画素値、Ｉは分割画像３２（もしくは分割画像３３）のぼかし処理前の画素値である。これらはＲＧＢの３ｃｈの画像データであれば、それぞれのｃｈ毎に計算される。（ｉ，ｊ）は着目画素の位置を表している。Ｆは平均化処理に使用する周辺画素の範囲と、着目画素及び周辺画素の平均化処理における重みを表すフィルタである。ｎ、ｍはフィルタサイズに応じて変化し、フィルタ内の重みを網羅するように設定される。
【００３９】
Ｍは重み付け平均化処理を行うマスクデータである。具体的に、着目画素（ｉ，ｊ）に対してフィルタの重みを計算する際にＭは以下の値をとる。周辺画素（ｉ＋ｎ，ｊ＋ｍ）に対応付けられたフィルタサイズが計算対象にしている画像（分割画像３２もしくは分割画像３３）に対応付けられたフィルタサイズより小さい場合にＭは０とする。また、周辺画素（ｉ＋ｎ，ｊ＋ｍ）に対応付けられたフィルタサイズが計算対象にしている画像（分割画像３２あるいは分割画像３３）に対応付けられたフィルタサイズと同じまたは、それより大きい場合にはＭは１とする。つまり、周辺画素（ｉ＋ｎ，ｊ＋ｍ）が計算対象にしている画像（分割画像３２あるいは分割画像３３）に対応する距離情報より前側の場合には、Ｍは０、同じまたは背景の場合には、Ｍは１となる。以下ではフィルタサイズ基準で説明するが、フィルタサイズは距離情報と１対１で対応しているので、距離情報で読み替えることができる。また、Ｍの値は、ぼけサイズや距離マップデータから判定することが可能である。
【００４０】
まず、フィルタサイズの大きい、後景である分割画像３２に対するぼかし処理について述べる。図６（ａ）は分割画像３２を示している。実際には、分割画像３２内の全ての画素で上記式５を用いて重み付け平均化処理を行うが、分割画像３２の特徴的な３つの領域３２０乃至３２２内の着目画素についての重み付け平均化処理について述べる。図６（ｂ）は、図６（ａ）に図示された領域３２０乃至３２２の拡大図を示す。領域３２０乃至３２２は、異なる着目画素を中心とした所定の領域のＩのデータを表している。領域３２０内すべての画素は、分割画像３２のぼかし処理で使用するフィルタサイズとフィルタサイズが同じ領域に属している。領域３２１では、着目画素（×印）は、分割画像３２のぼかし処理で使用するフィルタサイズと同じ領域に属しているが、一部、フィルタサイズが小さい領域が含まれている。領域３２２では、着目画素（×印）が分割画像３２のぼかし処理で使用するフィルタサイズより小さいフィルタサイズの領域に属している。つまり、領域３２２の着目画素はオクルージョン領域に属している。
【００４１】
図６（ｃ）には、領域３２０乃至３２２内の着目画素における式５のＦとＭの積の分布４２０乃至４２２を表している。具体的には、図６（ｃ）の左から順に、領域３２０内の着目画素における分布４２０、領域３２１内の着目画素における分布４２１、領域３２２内の着目画素における分布４２２を表している。灰色の部分は、ＦとＭの積がゼロでない部分を表しており、黒い部分は、ＦとＭの積がゼロである部分を表している。領域３２０内の着目画素の重み付け平均化処理では、はフィルタ範囲内のすべての画素のフィルタサイズが同じであるため、ｎ、ｍによらずＭは１である。そのため、分布４２０は、フィルタＦそのものである。一方、分布４２１、４２２は、フィルタＦから一部欠けた形状となる。これはＭによる重みが０、すなわち計算対象のフィルタサイズよりも小さい領域がフィルタＦの範囲内に存在しているためである。これらの分布４２１、４２２を用いて重み付け平均化処理することにより、オクルージョン領域のぼかし処理後の画素値を精度よく算出することが可能となっている。
【００４２】
式５を用いた重み付け平均化処理を行うことで、分割画像３２のぼかし処理が行われる。分割画像３２をぼかし処理した後の結果が、図５のぼかし画像３５である。ぼかし画像３５の破線で囲まれた領域が、オクルージョン領域のぼかし処理された結果を表している。上記処理により、オクルージョン領域の画素値を算出することなく、後景の分割画像３２のオクルージョン領域のぼかし処理後の画素値が算出される。この生成部１３５によってぼかし後の画素値が算出されるオクルージョン領域の範囲は、前景に対応する領域の一部である。
【００４３】
続いて、フィルタサイズの小さい、前景である分割画像３３のぼかし処理について述べる。図７（ａ）は、分割画像３３が示されており、図７（ｂ）は図６（ｂ）と同様に分割画像３３から特徴的な３つの領域３３０乃至３３２の拡大図について示されている。図７（ｃ）は、領域３３０乃至３３２内の着目画素における式５のＦとＭの積の分布４３０乃至４３２を表している。具体的には、図７（ｃ）の左から順に、領域３３０内の着目画素における分布４３０、領域３３１内の着目画素おける分布４３１、領域３３２内の着目画素における分布４３２を表している。灰色の部分は、ＦとＭの積がゼロでない部分を表しており、黒い部分は、ＦとＭの積がゼロである部分を表している。
【００４４】
分割画像３３は前景であるため、分割画像３３のぼかし処理で使用するフィルタサイズよりも小さなフィルタサイズとなる領域が、分割画像３３には含まれないため、Ｍは常に１となり、結果ＦとＭの積の分布はフィルタＦそのものである。なお、前景である分割画像３３に対応付けられたフィルタのサイズは、後景である分割画像３２に対応付けられたフィルタのサイズよりも小さい。図５のぼかし画像３６は分割画像３３のぼかし処理によって生成された画像である。上記のぼかし処理により、ぼかし画像３６においては、フィルタサイズがＢＳ１とＢＳ２の境界部分に対応する部分がぼけたような効果となる。これは、分割画像３３ではＢＳ２に位置する画素の画素値がゼロであり、その画素値も計算結果に反映されるためである。一方、ぼかし画像３５では、そのぼかし処理において、分割画像３２のＢＳ１に位置する画素の画素値がゼロの部分はＭの値もゼロになるため、計算結果に反映されない。
【００４５】
なお、生成部１３５は、マスク３４についても、分割画像３３と同様のぼかし処理を行い、マスク３７を生成する。さらに、生成部１３５は、マスク３７の階調を反転させてマスク３８を生成する。このマスク３８は、後述するぼかし処理後の画像の合成において、加算する割合を表すものである。具体的には、マスク３７は、ＢＳ１のマスク３４のぼかし処理結果を表しており、ＢＳ１のデータの拡散量（エネルギー拡散量）を表していると考えられる。そのため、マスク３７の階調を反転させたマスク３８は、ＢＳ１だけではデータが足りない領域、つまり既に計算されたフィルタサイズが大きい領域（背景側）の情報で補わなければならないデータ量を表すことになる。言い換えると、前景（分割画像３３）のぼかし処理により背景（分割画像３２）の情報を必要とする割合を表しており、これを透明度とする。この透明度は０以上１以下の範囲の値を取り、マスク３８において、白い部分は１を、黒い部分は０を表している。また、マスク３８の灰色の部分は０より大きく１より小さい値を表している。このマスク３８により、後述する合成処理の際に、オクルージョン領域のぼかし処理後の画素値が、オクルージョン領域内の少なくとも一部の領域で割合を変えられて、前景のぼかし画像３６内のオクルージョン領域に対応する画素値と加算されることになる。
【００４６】
最後に、合成部１３６が、Ｓ２５でぼかし処理されたぼかし画像３５、３６、マスク３８を用いて、画像の合成を行う（Ｓ２６）。まず、合成部１３６は、後景であるぼかし画像３５とマスク３８との要素積を計算し、画像３９を生成する。これは、オクルージョン領域のぼかし処理後の画素値が、オクルージョン領域内で割合を変えられることに相当する。なお、ぼかし処理によって画素値が算出されるオクルージョン領域の範囲は、加算における割合がゼロではない範囲をすべて含む必要がある。つまり、ぼかし処理後の画素値が算出されるオクルージョン領域の範囲が、加算における割合がゼロではない範囲を一部でも含まない場合には、この要素積によりオクルージョン領域を考慮されない画素が生じ、アーティファクトの原因になる。
【００４７】
次に、合成部１３６は、この後景に対応する画像３９と前景である画像３６との要素和を計算し、後景の分割画像のぼかし処理された画像と前景の分割画像のぼかし処理された画像とを合成する。この結果、画像４０が生成される。
【００４８】
上述したような処理では、オクルージョン領域のぼかし処理後の画素値を適切に算出でき、それの画素値を含めたぼかし画像３５の各画素にマスク３８による透明度が掛けられた画像３９を生成している。この結果、アーティファクトが目立たない、より自然なぼけ画像が得られる。
【００４９】
なお、上述した例では、２つのフィルタサイズを用いる場合について説明したが、３つ以上のフィルタサイズを用いる場合でも同様に計算することができる。背景側から順にぼかし処理が行われ、それぞれ上記例と同様に合成処理がされる。例えば、ＢＳ０、ＢＳ１、ＢＳ２（０＜ＢＳ０＜ＢＳ１＜ＢＳ２）の３つのフィルタサイズの場合で説明すると、図５のように画像４０は、上述した方法で算出される。そして、ＢＳ０に対応するぼかし画像とマスクが生成され、そのマスクと画像４０の要素積が計算され、要素積の画像とＢＳ０に対応するぼかし画像との要素和を計算することで、合成画像が生成される。
【００５０】
（実施形態２）
図８は、本実施形態に係る画像処理装置２３を備えた撮像装置２の構成を模式的に示している。実施形態１に係る画像処理装置１３と異なる点は、画像処理装置１３に対して、オクルージョン領域の画素値を推定する推定部１３７を有する点である。
【００５１】
また、実施形態１の画像処理方法では、オクルージョン領域の画素値を推定することなく、オクルージョン領域のぼかし処理後の画素値を算出していた。これに対して、本実施形態の画像処理方法は、推定部１３７によりオクルージョン領域の画素値を推定する工程を有しており、推定された画素値を用いてぼかし処理を行うことで、オクルージョン領域のぼかし処理後の画素値を算出する。本実施形態の画像処理方法のフローチャートは、図９に示されている。実施形態１と異なる点を中心に本実施形態を説明する。
【００５２】
Ｓ２４までは、実施形態１と同じなので省略する。オクルージョン領域の画素値の推定処理は、図５の分割画像３２において、ＢＳ１の部分に対応する情報を持たない部分について、推定部１３７が画素値の推定を行う（Ｓ５０）。そして、Ｓ５０で推定した画素値を分割画像３２に加えた画像を保持する。推定方法は、どのような方法でも構わない。例えば、分割画像３２のＢＳ２に対応する部分と情報を持たない部分との境界部分を、滑らかに繋ぐようにＢＳ２に対応する部分の情報を用いて補間する方法を用いてもよい。また、分割画像３２のＢＳ２に対応する部分から似たパターンを探し、その情報を用いて、オクルージョン領域の画素値を推定する方法であってもよい。また、オクルージョン領域の画素値の推定は、必ずしも情報を持たない全領域である必要はなく、後工程の合成処理の時に不足しない領域の画素値を推定すればよい。つまり、画素値が推定されるオクルージョン領域の範囲は、後工程の合成処理において、加算される割合が少なくともゼロでない範囲をすべて含む。具体的には、オクルージョン領域の画素値を推定する領域は、ＢＳ１とＢＳ２の境界部分から、ＢＳ１の大きさとＢＳ２の大きさとの和以上とすればよい。このようなオクルージョンの範囲であれば、生成部１３５によってぼかし後の画素値が算出されるオクルージョン領域の範囲も、加算における割合がゼロではない範囲をすべて含むことになる。一方、図５の分割画像３３には、オクルージョン領域が含まれない。
【００５３】
次に、Ｓ５０で推定した画素値を分割画像３２に加えた画像と分割画像３３に対してぼかし処理を行う（Ｓ５１）。ぼかし処理は以下の式６を用いて重み付け平均化処理によって実行される。
【００５４】
【数３】
2015088832.tif 000005
【００５５】
ここで、ＩはＳ５０で推定した画素値を分割画像３２に加えた画像（もしくは分割画像３３）の画素値である。Ｉ’はＩに対し、ぼかし処理を行った後の画素値である。これらは例えばＲＧＢの３ｃｈの画像データであれば、それぞれのｃｈ毎に計算される。（ｉ，ｊ）は計算される着目画素を表している。Ｆは平均化処理に使用する周辺画素の範囲と、着目画素及び周辺画素の平均化処理における重みを表すフィルタである。ｎ、ｍはフィルタの大きさに応じて変化し、フィルタ内の重みを網羅するように設定される。式６は、式５に対してＭがない。このようなぼかし処理により、Ｓ５０で推定した画素値を分割画像３２に加えた画像から図５のぼかし画像３５が生成される。また、分割画像３３から、実施形態１と同じく図５のぼかし画像３６が生成される。マスク３４のぼかし処理、その後の処理（Ｓ２６）は、実施形態１と同じであるので省略する。
【００５６】
（実施形態３）
上述した本発明の画像処理方法は、例えば、デジタルカメラやカムコーダなどの撮像装置、或いは撮像装置で得られた画像データに対し画像処理を施す画像処理装置やコンピュータなどに好ましく適用できる。また、このような撮像装置或いは画像処理装置を内蔵する各種の電子機器（携帯電話、スマートフォン、スレート型端末、パーソナルコンピュータを含む）にも本発明の技術を適用可能である。上記実施形態では撮像装置の本体に画像処理装置の機能を組み込んだ構成を示したが、画像処理装置の機能はどのように構成してもよい。たとえば、撮像装置を有するコンピュータに画像処理装置を組み込み、撮像装置で撮影した画像をコンピュータが取得して、それに基づいて距離算出を行うようにしてもよい。また、有線あるいは無線によりネットワークアクセス可能なコンピュータに画像処理装置が組み込まれて、そのコンピュータがネットワークを介して複数枚の画像を取得し、それに基づいて距離算出を行うようにしてもよい。得られた距離情報は、例えば、画像の領域分割、立体画像や奥行き画像の生成、ぼけ効果のエミュレーションなどの各種画像処理に利用することができる。
【００５７】
なお、上記装置への具体的な実装は、ソフトウェア（プログラム）による実装とハードウェアによる実装のいずれも可能である。例えば、撮像装置などに内蔵されたコンピュータ（マイコン、ＦＰＧＡ等）のメモリにプログラムを格納し、当該プログラムをコンピュータに実行させることで、本発明の目的を達成するための各種処理を実現してもよい。また、本発明の全部又は一部の処理を論理回路により実現するＡＳＩＣ等の専用プロセッサを設けることも好ましい。
【産業上の利用可能性】
【００５８】
デジタルカメラやデジタルビデオカメラ、監視カメラ等の撮像装置に搭載される画像処理装置（画像処理エンジン）の一機能として実装される。
【符号の説明】
【００５９】
１３  画像処理装置
１３４  分割部
１３５  生成部
１３６  合成部
【図１】
2015088832.tif 000006
【図２】
2015088832.tif 000007
【図３】
2015088832.tif 000008
【図４】
2015088832.tif 000009
【図８】
2015088832.tif 000010
【図９】
2015088832.tif 000011
【図５】
2015088832.tif 000012
【図６】
2015088832.tif 000013
【図７】
2015088832.tif 000014