JP2015135661A - 画像処理装置、撮像装置、画像処理方法およびプログラム - Google Patents

画像処理装置、撮像装置、画像処理方法およびプログラム Download PDF

Info

Publication number
JP2015135661A
JP2015135661A JP2014184463A JP2014184463A JP2015135661A JP 2015135661 A JP2015135661 A JP 2015135661A JP 2014184463 A JP2014184463 A JP 2014184463A JP 2014184463 A JP2014184463 A JP 2014184463A JP 2015135661 A JP2015135661 A JP 2015135661A
Authority
JP
Japan
Prior art keywords
image
unit
viewpoint
blur
imaging
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014184463A
Other languages
English (en)
Other versions
JP6452360B2 (ja
Inventor
澤田 圭一
Keiichi Sawada
圭一 澤田
知宏 西山
Tomohiro Nishiyama
知宏 西山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014184463A priority Critical patent/JP6452360B2/ja
Priority to US14/572,518 priority patent/US9619886B2/en
Publication of JP2015135661A publication Critical patent/JP2015135661A/ja
Application granted granted Critical
Publication of JP6452360B2 publication Critical patent/JP6452360B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/557Depth or shape recovery from multiple images from light fields, e.g. from plenoptic cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/571Depth or shape recovery from multiple images from focus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10052Images from lightfield camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20228Disparity calculation for image-based rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

【課題】 ぼけ状態が異なる画像同士で、対応点を精度良く探索する。
【解決手段】 画像処理装置が、第一の視点から被写体を見た場合の第一の画像と、前記第一の視点とは異なる第二の視点から前記被写体を見た場合の画像であり、前記第一の画像とぼけ状態が異なる画像である第二の画像とを取得する取得手段と、
前記第一の画像と前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理手段と、
前記処理手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像と前記第二の画像との間で同一の被写体に対応する画像領域を決定する決定手段とを有する。
【選択図】 図7

Description

本発明はぼけ状態の異なる画像間で対応する画像領域を探索する技術に関する。
異なる撮影条件で撮影された2枚以上の画像を用いて、被写体までの距離を求めたり、求めた被写体距離を用いて、実際に撮影を行った条件とは異なる条件で撮影されたかのような画像を新たに生成する手法が知られている。その中の代表的なものとしては、同一の被写体を異なる視点から撮影した2枚以上の画像の間で、対応する画素である対応点を探索し、各画像の間の視差を求めるブロックマッチングが挙げられる。ブロックマッチングにより各画像の間の視差を求めると、各画像を撮影した視点の位置が既知である場合、視点の位置情報と求められた視差を用いて、三角法により被写体の距離を求めることができる。ブロックマッチングを改良した方法としては、対応点を探索するブロックサイズを、探索ブロックが画像中のエッジ領域を含むか否かに応じて適応的に変えることで、対応点の探索精度を向上させる手法が提案されている(特許文献1)。
特開2009−293970号公報
しかしながら、特許文献1の手法では、視点位置の他に、焦点距離やF値やピント位置の違いによってぼけ状態が更に異なる画像同士で対応点の探索を行う場合に、対応点探索の精度が低下してしまう可能性がある。なお、ここでぼけ状態は、合焦位置や被写界深度など、画像のぼけを決定するパラメータのことを意味する。そこで本発明は、ぼけ状態が異なる画像同士で、対応点を精度良く探索することを目的としている。
上記課題を解決するために、本発明に係る画像処理装置は、第一の画像と、前記第一の画像と同一の被写体を含み前記第一の画像とはぼけ状態が異なる第二の画像とを取得する取得手段と、前記第一の画像および前記第二の画像のぼけ状態を合わせるように、前記第一の画像および前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理を行う処理手段と、前記変化手段により変化されたぼけ状態に基づいて、前記第一の画像および前記第二の画像の間で対応する画像領域を決定する決定手段とを有する。
本発明によれば、ぼけ状態が異なる画像同士で、対応点を精度良く探索することが可能となる。
実施例1のカメラの外観を示す図。 実施例1のカメラの構成を示す図。 実施例1の画像処理部の構成を示す図。 実施例1の画像処理部で行われる処理を示すフローチャート。 実施例1の解像度変換処理を説明する図。 実施例1の対応領域決定部の構成を示す図。 実施例1の対応領域決定部で行われる処理の流れを示すフローチャート。 実施例2のカメラの外観を示す図。 実施例2の画像処理部の構成を示す図。 実施例2の画像処理部で行われる処理を示すフローチャート。 実施例2の視差算出処理を説明する図。 実施例2のオクルージョン補正部の構成を示す図。 実施例2のオクルージョン補正部で行われる処理を示すフローチャート。 Plenopticカメラの原理を説明する図。 Plenopticカメラにより得られる画像の例を示す図。 実施例3の画像処理部の構成を示す図。 実施例3の画像処理部で行われる処理を示すフローチャート。 Plenopticカメラにおけるぼけの直径と視差の関係を示す図。 ぼけフィルタデータベースの例を表わす図。
<実施例1>
本実施例では、焦点距離の異なる2つの撮像部を備えたステレオカメラで取得された画像から、被写体の距離情報を取得する場合について述べる。
図1は、本実施例におけるステレオカメラ100(以下、カメラ100とする)の外観を示す図である。カメラ100は、2つの撮像部101および102を有しており、2つの撮像部は筺体の同一平面上に配置されている。撮像部101と102の光軸は平行であり、配置された平面に垂直である。各撮像部はズームレンズ、フォーカスレンズ、ぶれ補正レンズ、絞り、シャッター、光学ローパスフィルタ、IRカットフィルタ、カラーフィルタ、およびCMOSやCCDなどの撮像素子から構成され、被写体の光量を検知してデジタルデータとして出力する。撮像部101および102の構成は基本的には同様であるが、撮像部101は広角撮像部、撮像部102は撮像部101よりも焦点距離が大きい望遠撮像部となっている。
図2は、カメラ100の内部構成を示す図である。CPU201は、以下に述べる各構成部を統括的に制御するプロセッサである。RAM202は、CPU201の主メモリ、ワークエリア等として機能するメモリであり、ROM203は、CPU201で実行される制御プログラム等を格納するメモリである。CPU201は、RAM202をワークメモリとしてROM203に格納されたプログラムを実行し、バス204を介して多眼カメラ100の各構成部を制御する。
バス204は、各種データの転送経路であり、例えば撮像部101および102から出力された画像データはこのバス204を介して各構成部へと送られる。表示制御部205は、液晶ディスプレイなどの表示部211に表示される画像や文字の表示制御を行う処理回路である。デジタル信号処理部206は、バス204を介して受け取った画像データに対し、ホワイトバランス処理、ガンマ処理、ノイズ低減処理などの各種処理を行う処理回路である。
エンコード部207は、バス204を介して受取った画像データをJPEGやMPEGなどのファイルフォーマットに変換する処理を行う処理回路である。外部メモリ制御部208は、カメラ100を、ハードディスク、メモリカード、CFカード、SDカード、USBメモリ等の外部メモリに接続するためのインタフェースである。入力部209は、カメラ100に備えられたボタンやダイヤルなどの入力装置である。ユーザは、この入力部209を介して、撮像タイミングや撮像パラメータの設定などを行う。画像処理部210は、画像データからの距離算出など、画像データを用いた処理を行う処理回路である。図3に、画像処理部210の構成を示す。画像処理部210は、画像取得部301、パラメータ取得部302、解像度変換部303、対応領域決定部304、距離算出部305としての機能を備えている。
本実施例において、ROM203には図4のフローチャートに示すプログラムが格納されており、CPU201がROM203に格納されたプログラムを実行することで、画像処理部210を図3に示す各構成部として機能させる。以下、画像処理部210で行われる処理について、図4に示すフローチャートを参照して説明する。
<画像処理部での処理>
まず、ステップS401では、画像取得部301が、撮像部101および102から出力された画像データを取得する。そして、画像取得部301は、取得した画像データを解像度変換部303に出力する。
次に、ステップS402では、パラメータ取得部302が、撮像部101および102の、撮像パラメータを取得する。撮像パラメータには、撮像時の焦点距離、F値、合焦位置、視点位置座標、センササイズなどが含まれる。パラメータ取得部302は、取得した撮像パラメータを、同じく解像度変換部303に出力する。
次に、ステップS403では、解像度変換部303が、ステップS402で取得した撮像パラメータに基づいて、ステップS401で取得した各画像の画角を求め、両者の画角と解像度が同じになるように、トリミングと解像度変換を行う。以下、その処理について説明する。
まず、解像度変換部303は、各画像の画角が同じになるように、撮像部101で撮像された広角画像のトリミングおよび拡大を行う。図5は、その概要を示す図である。画像501は撮像部101で撮影された広角画像であり、画像502は、撮像部102で撮影された望遠画像である。ここでは、解像度変換部303が、画像501の中心から、画像502の画角と同じ範囲を切り出し、画像502と同じ大きさになるように拡大して、画像503を生成する。
ここで、画像503は、画像502よりも解像度の低い画像となっている。そこで、両者の間のマッチングを取り易くするために、解像度の高い画像502にフィルタをかけて解像度を低下させ、両者の解像度が一致するようにする。本実施例では、画像502に以下の式で表わされるガウシアンフィルタを作用させる。
ここで、x、yは画像中の画素位置であり、Dは適当な定数である。また、fbaseは解像度変換の基準となる画像503の焦点距離の値であり、fは解像度変換の対象となる画像502の焦点距離の値である。解像度変換が行われたら、解像度変換部303は、解像度変換後の画像データを対応領域決定部304に出力する。
次に、ステップS404では、対応領域決定部304が、解像度変換部303から出力された解像度変換後の画像データが示す、撮像部101および撮像部102に対応する画像の間で、対応する画像領域を決定する。この処理の詳細については後述する。
次に、ステップS405では、距離算出部305が、ステップS404で決定された対応画像領域に基づいて、被写体の距離情報を算出する。ステップS404では、各画素に対応する、基準画像と参照画像の間の視差が算出される。この視差をdとすると、d[pixel]は以下の式で表わされる。
ここで、Lは撮像部101と撮像部102の間の基線長、fは撮像部102の焦点距離、sはカメラ100から被写体までの距離、Δは撮像部101および102の画素ピッチである。距離算出部305は、パラメータ取得部302から出力された撮像パラメータと、対応領域決定部304から出力された視差dを式2に代入することで、各画素に対応する被写体距離を算出する。
最後に、ステップS406では、距離算出部305が、ステップS405で算出された距離情報をバス204へ出力する。なお、ここで出力される距離情報は、各画素位置に対応する被写体の距離情報を二次元に並べた画像データである、距離マップである。出力された距離マップは、外部メモリに保存されたり、表示部211に表示されたりする。
以上が、画像処理部210で行われる処理の概要である。次に、対応領域決定部304で行われる処理について説明する。
<対応領域決定部での処理>
対応領域決定部304では、焦点距離の異なる2枚の画像の間でブロックマッチングを行うことにより、2枚の画像の間で同一の被写体に対応する画像領域を決定する。本実施例では上記2枚の画像を撮像した撮像部の焦点距離が異なるため、各画像において被写界深度が異なる。被写界深度が異なる画像に、そのままブロックマッチングを行うと、ぼけ状態の違いのためにマッチングの誤対応が発生してしまう可能性がある。そこで、本実施例では、被写界深度が深いほうの画像に、もう一方の画像と同様のぼけを付加しながらブロックマッチングを行うことで、より正確なマッチングを行う。
以下、本実施例で行うブロックマッチングの方法について述べる。ブロックマッチングでは、一方の画像を対応領域導出の基準画像とし、基準画像のある画像領域に対応する画像領域を、もう一方の参照画像中で探索する。本実施例では、望遠撮像部102で撮像された画像を基準画像、広角撮像部101で撮像された画像を参照画像とする。基準画像の視点位置を(0,0)、参照画像の視点位置を(L,0)とし、基準画像における着目画素の座標を(x,y)、参照画像における探索対象画素の座標を(x+d,y)とする。この時、基準画像のブロックB=[x−S,x+S]×[y−S,y+S]と、参照画像のブロックB’=[x+d−S,x+d+S]×[y−S,y+S]のマッチングが行われる。
マッチングの際には、最も類似度の高いブロック同士が対応するブロックとして決定される。本実施例においては、以下の式の値が最小となるd[pixel]が、対応画像領域を示すdとして決定される。なおdは、探索画素位置における、基準画像と参照画像の間の視差である。
ここで、|B|はブロックBに含まれる画素数、Iは基準画像の画素値、Iは参照画像の画素値であり、Vは基準画像と参照画像間の分散値を表している。ブロックの類似度の基準として分散値を用いたが、単純に差分絶対値和や差分2乗和を用いてもよい。本実施例では、式3を用いたマッチングを行う際に、探索位置を示すdの値に応じて参照画像にぼけを付加しながらマッチングを行う。以下、その方法について説明する。
本実施例において、撮像部101および撮像部102はどちらも同じ距離にピントが合っているとする。あるカメラからピント位置までの距離をspintとすると、そのカメラから見て距離sにある被写体のぼけの直径b[pixel]は、レンズの焦点距離をf、レンズのF値をF、画素ピッチをΔとしたときに、
と表わされる。ゆえに、撮像部102のレンズの焦点距離をf、F値をFとし、撮像部101のレンズの焦点距離をf、F値をFとすると、基準画像に対応するぼけの直径bおよび解像度変換後の参照画像に対応するぼけの直径b’は以下のように表わされる。
ここで、式2に基づいて式5を変形すると、b’およびbは、dを用いて以下のように表わされる。
pintは、式2のsにspintを代入した値である。spintは撮影時のセンサ位置などから求めることができる。
以上のことから、探索する視差dに応じて、以下のフィルタを参照画像の各ブロックに作用させることで、参照画像である望遠画像と同様のぼけを付加することができる。つまり、各ブロックにぼけを付加する度合いは、基準画像の参照ブロックと、参照画像の参照ブロックとの間の位置関係に基づいて決定される。
本実施例では、式7のフィルタを参照画像に作用させながらブロックマッチングを行うことで、より精度の高い対応点の探索を行うことができる。本実施例では、式7のフィルタを作用させた後の画素値を式3に代入し、式3で表わされるVの値が最小となるdを、正しいdとして決定する。つまり、Vの値が最小となる探索位置を、対応画像領域として決定する。なお、ここで行われる処理はぼけの付加に限られず、デコンボリューション処理を行ってもよい。また、ここで行われるぼけ付加は、どちらか一方の画像にぼけを付加するだけではなく、両方の画像にぼけを付加する処理であっても良い。
以下、本実施例の対応領域決定部で実際に行われる処理について、図6に示すブロック図と図7に示すフローチャートを参照して説明する。
まず、ステップS701では、入力画像バッファ601が、解像度変換部303から出力された解像度変換後の画像データを取得する。
次に、ステップS702では、ぼけ付加部602が、入力画像バッファ601が取得した画像データから、処理対象となる画像ブロックを読み出す。ここでは、RAM202に格納された、マッチングの基準となる基準画像上の基準画像ブロックを示す座標情報と、参照画像中で探索を行う参照画像ブロックに対応する探索視差dに基づいて読み出す画像ブロックを決定する。なお、初期状態では基準画像ブロックの中心画素(着目画素)座標は(0,0)が設定され、また、d=0と設定されている。
次に、ステップS703では、ぼけ付加部602が、パラメータ取得部302から取得した撮像パラメータおよび、参照画像ブロックに対応するdを式7のdに代入する。そして、算出されたフィルタを参照画像ブロックに適用することでぼけを付加し、ぼけを付加した画素値の情報を分散計算部603に出力する。
次に、ステップS704では、分散計算部603が、ぼけを付加した参照画像ブロックの画素値を式2に代入して、視差dに対応する画素値の分散Vを算出し、対応する視差dと共に分散値比較部604に出力する。
次に、ステップS705では、分散値比較部604が、分散値計算部603から出力されたVを、RAM202に保存されたVと比較する。RAM202に保存されたVよりも、分散値計算部603から出力されたVの方が小さい場合は、RAM202に保存された対応視差dの値を、分散値計算部603から出力された探索視差dの値で置き換える。また、RAM202に保存されたVの値も同様に更新する。
ここで、対応視差dは、基準画像ブロックに対応する画像ブロックとして決定された参照画像ブロックの位置を示す視差情報である。初期状態ではRAM202にVおよびdは格納されておらず、その場合には、分散値計算部603から出力されたVおよびdが無条件でRAM202に格納される。全ての画素においてステップS705の処理を行うことで、最適なdの値が最終的に決定される。
次に、ステップS706では、分散値比較部604が、全ての参照画素ブロックについて分散値Vの計算が行われたかどうかを判定する。全ての参照画素ブロックについて分散値Vの計算が行われたと判定された場合、ステップS708に進む。全ての参照画素ブロックについて分散値Vの計算が行われていないと判定された場合、ステップS707に進む。
ステップS707では、分散値比較部604が、RAM202に格納されたdの値を更新する。そして、ステップS702に戻り、ぼけ付加部602が新たなdに基づいて処理を再開する。
ステップS708では、分散値比較部604が、その時点でRAM202に格納されたdが正しいdであると決定し、正しい値であると決定されたdと、そのdに対応する画素の座標を視差データバッファ605に出力する。つまり、ここで出力されるdの値は、対応画像ブロックの位置を示すdとして決定された値である。
次に、ステップS709では、分散値比較部604が、基準画像上の全ての画素について対応視差dの決定がなされたかどうかを判定する。基準画像上の全ての画素についてdの決定がなされたと判定された場合、処理を終了する。全ての画素について被写体距離が算出されていないと判定された場合、ステップS710に進む。
ステップS710では、分散値比較部604が、RAM202に格納された、着目画素の座標を更新し、dの値を0に更新する。そして、ステップS702に戻り、ぼけ付加部602が新たな着目画素について同様の処理を再開する。
以上が対応領域決定部304で行われる処理である。この処理により、ぼけ状態と視点の両方が異なる画像間で、対応点を精度よく決定することができる。そして、その結果、被写体の距離をより精度よく求めることができる。
なお、本実施例において、画像取得部301は、第一の視点から被写体を見た場合の第一の画像と、前記第一の視点とは異なる第二の視点から前記被写体を見た場合の画像であり、前記第一の画像とぼけ状態が異なる第二の画像とを取得する取得手段として機能する。また、ぼけ付加部602は、前記第一の画像と前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理手段として機能する。また、分散値比較部604は、前記処理手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像と前記第二の画像との間で同一の被写体に対応する画像領域を決定する決定手段として機能する。また、距離算出部305は、前記決定手段により決定された、前記第一の画像および前記第二の画像の間で対応する画像領域に基づいて、前記被写体の距離情報を導出する導出手段として機能する。
<実施例2>
実施例1では、ぼけを付加してブロックマッチングを行った結果を用いて、被写体距離を精度よく求める方法について説明した。実施例2では、ぼけを付加してブロックマッチングを行った結果を用いて、仮想視点画像の生成を行う場合について説明する。
図8は、本実施例における多眼カメラ800(以下、カメラ800とする)の外観を示す図である。カメラ800は、5つの撮像部801〜805を有している。5つの撮像部は全て筺体の同一平面上に配置され、光軸は全て平行であり、配置された平面に垂直である。撮像部801〜805の構成は撮像101および102と基本的に同じであるが、本実施例では、撮像部801が広角撮像部、撮像部802〜805が望遠撮像部となっている。なお、4つの望遠撮像部のレンズの焦点距離は全て同じである。また、撮像部801の視点位置を(0,0)とすると、撮像部802〜805はそれぞれ視点位置が(L,L)、(−L,L)、(L,−L)、(−L,−L)となるように配置されている。
カメラ800の内部構成は、図2に示したカメラ100の内部構成と基本的には同じであるが、画像処理部210の構成が異なっている。図9に、本実施例における画像処理部210の構成を示す。
本実施例における画像処理部210は、新たに画像選択部901、粗精度視差算出部902、高精度視差算出部903、画像合成部904およびオクルージョン補正部905を備えている。
以下、本実施例における画像処理部210の処理について、図10に示すフローチャートを参照して説明する。
実施例1と同様の処理については、図4と同様の符号を付し、説明を省略する。
ステップS1001では、画像選択部901が、ユーザによって指定された仮想視点画像の視点位置および焦点距離に基づいて、以降の処理で使用する画像を選択し、選択した画像を解像度変換部303に出力する。本実施例においては、焦点距離の近い画像をシフト合成することで仮想視点画像の生成を行う。その際に、仮想視点と視点の近い画像をガイドにして、合成に用いる各画像のシフト量を決定するので、より実際のシーンに近い仮想視点画像の合成をおこなうことができる。
ここでは、画像選択部901が、仮想視点画像の合成に用いる合成用画像と、マッチングの際のガイドとして用いるガイド画像を選択する。本実施例では、撮像部801の視点から、撮像部802〜805と同じ焦点距離で撮像された画像が生成されるので、撮像部801で撮像された画像がガイド画像として、撮像部802〜805で撮像された画像が合成用画像として選択される。画像選択部901は、選択した画像を画像取得部301から取得して、解像度変換部303に出力する。
次に、ステップS403では、実施例1と同様に、広角画像と各望遠画像の解像度を合わせる処理が行われる。解像度を合わせた画像群は、粗精度視差算出部902に出力される。
次に、ステップS1002では、粗精度視差算出部902が、ガイド画像を用いて、各合成用画像の仮想視点からの視差を粗精度に求める。この処理の詳細については後述する。そして、粗精度に求めた視差を高精度視差算出部903に出力する。
次に、ステップS1003では、高精度視差算出部903が、ステップS1002で粗精度に求められた視差に基づいて、各合成用画像のマッチングを行うことで、仮想視点からの視差を高精度に求める。この処理の詳細についても後述する。そして、高精度に求めた視差を画像合成部904に出力する。また、高精度視差算出部903は、ここで求めた視差およびそれに対応する分散値をオクルージョン補正部905に出力する。
次に、ステップS1004では、画像合成部904が、ステップS1003で求められた視差の値に基づいて、各合成用画像のシフト合成を行う。
次に、ステップS1005では、オクルージョン補正部905が、ステップS904で生成された仮想視点画像のオクルージョン部の補正を行う。この処理の詳細についても後述する。
最後に、ステップS1006では、生成した仮想視点画像を出力して処理を終了する。以上が、本実施例における画像処理部210の処理の流れである。以下、上記処理の各ステップの詳細について説明する。まず、粗精度視差算出部902で行われる処理(ステップS1002)について説明する。
粗精度視差算出部902で行われる処理は、基本的には実施例1において対応領域決定部304で行われる処理と同じである。つまり、粗精度視差算出部902は対応領域決定部304と同様の構成要素を持つ。しかし、今回は視差の算出に用いられる画像の枚数が多いので、式(3)を以下のように拡張する。視点位置(L,L)における視差を(d,d)、各視点の位置をLに対する比で表わした位置ベクトルを(v,v)とすると、本実施例で用いる分散を示す式は以下のように表わされる。
ここで、|B|はブロックに含まれる画素数、J(x,y)は解像度変換後のガイド画像も含めた各画像の画素値、iは各画像に対応する撮像部を表わす番号であり、Mはブロックマッチングに使用された画像の枚数である。ここでは、撮像部801〜705で撮像された全ての画像を用いるので、M=5となる。
同様に、各画像に作用させるぼけフィルタも以下のように変形される。ブロックマッチングに用いる画像の中で最もぼけが大きい画像の焦点距離をfbase、F値をFbaseとすると、各画像に作用させるフィルタgは以下の式で表わされる。
ここで、fおよびFは、各画像の焦点距離およびF値である。
粗精度視差算出部では、式9に示すぼけフィルタgiを各画像に作用させ、その結果の画素値を式8に代入して求めた分散Vが最小になるようなdを、算出した視差として高精度視差算出部903に出力する。
次に、高精度視差算出部903で行われる処理(ステップS1003)について説明する。高精度視差算出部903で行われる処理は、基本的には粗精度視差算出部902で行われる処理と同じである。しかし、高精度視差算出部903では、ガイド画像を覗いた、高解像度の望遠画像のみでマッチングを行うため、より高精度な視差を算出することができる。また、この時、探索する視差は、粗精度視差算出部902で算出された視差の前後5ピクセルの範囲に限定する。これにより、他の極小値に落ち込んで誤った視差が算出されてしまう可能性を低減することができる。なお、この時の探索範囲の大きさは、画像のサイズなどに応じて自由に変更してよい。
図11にこの処理の概要を示す。曲線1101は粗精度視差算出部902で計算された分散値を示す曲線、曲線1102は高精度視差算出部903で計算された分散値を示す曲線である。曲線1102は、望遠画像のみでマッチングを行った結果であるため、曲線1102に比べて横軸の画素位置の刻みが細かくなっている。
曲線1101を見ると、極小値を取る画素位置が二つあることが分かる。望遠画像のみでマッチングを行った場合には、正解とは異なる極小値に陥る可能性があり、その場合は画像が破たんしてしまう。本実施例では、曲線1101の結果を用いて、望遠画像でのマッチング範囲1103を限定してマッチングを行うことで、マッチングする画素位置をより高精度に求める。これにより、誤った極小値に陥ることなく、高精度なマッチングを行うことが可能になる。
次に、画像合成部904で行われる処理(ステップS1004)について説明する。画像合成部904では、ステップS1001で合成用画像として選択された4枚の望遠画像の、対応する画素の画素値の加算平均を取ることで仮想視点画像の生成を行う。画素(x,y)における仮想視点画像の画素値をIsynth(x,y)とすると、Isynth(x,y)は以下の式で表わされる。
ここで、I(x,y)は各望遠画像の画素値であり、Wは望遠撮像部の集合を表わす。そして|W|は、Wに含まれる望遠撮像部の数である。なお、仮想視点画像の合成は対応する画素の画素値の加算平均を取る方法に限られず、画素値の重みづけ平均を用いたり特定の画像の画素値を抜き出して組み合わせることによって仮想視点画像の生成を行ってもよい。
次に、オクルージョン補正部905で行われる処理(ステップS1005)について説明する。ある視点からは見えているが、他の視点からは見えていない被写体を示す画像領域を、オクルージョン領域と呼ぶ。オクルージョン領域では、各画像の間で対応する画像領域が存在しないため、マッチングにおける分散が大きくなり、そのまま画像の合成を行っても、生成された画像においてオクルージョン領域がぼけてしまう。
そこで、オクルージョン補正部905では、視差を求める際に求めた分散の値から、オクルージョン領域を特定し、合成画像中のオクルージョンに対応する領域の画素値を置き換える。以下、図12に示すブロック図および図13に示すフローチャートを参照して処理の詳細について説明する。
まず、ステップS1301では、オクルージョン領域判定部1201が、画像合成部904から出力された仮想視点画像を取得する。
次に、ステップS1302では、RAM202に格納された着目画素の座標に基づいて、仮想視点画像の着目画素における、高精度視差算出部903から出力された分散の値が閾値以上であるかどうかを判定する。なお、初期状態では、着目画素の座標として(0,0)が格納されている。分散の値が閾値以上であった場合は、その着目画素で示される画像ブロックがオクルージョン領域であると判断し、ステップS1304に進む。分散の値が閾値以下であった場合は、その着目画素で示される画像ブロックがオクルージョン領域でないと判断し、ステップS1303に進む。本実施例においては、画素値の範囲を0〜255としたときに、V=15=255を閾値としてオクルージョン領域の判定を行う。なお、この閾値の大きさも、撮影環境などに応じて自由に変更してよい。
ステップS1303では、オクルージョン領域判定部1201が、RAM202に格納された着目画素情報を更新し、ステップS1302に戻る。
ステップS1304では、対応領域決定部1202が、粗精度視差算出部での処理に用いたガイド画像を基準画像、合成に用いた望遠画像のうちの一枚を参照画像として、対応画像領域の探索を行う。ここで行われる処理は基本的には実施例1のステップS404で行われる処理と同じであるが、今回は広角画像が基準画像となるので、基準画像にぼけを付与しながらマッチングを行う点が異なる。ここでマッチングの参照画像として選択する画像は、RAM202に格納された、参照画像に対応するカメラ番号に基づいて決定される。初期状態では、合成用画像として選択された画像のうちの1つの番号が格納されており、本実施例においては撮像部802を示す番号が格納されている。マッチングの結果、算出された対応視差dと、そのdに対応する分散Vを、分散値比較部1203に出力する。なお、ここでは2枚の画像間のマッチングが行われるので、ここで算出される分散Vは、式(3)と同様に、2枚の画像間の分散を表わす。
次に、ステップS1305では、対応領域決定部1202が、ガイド画像と全ての望遠画像とのマッチングを行ったかどうかを判定する。全ての望遠画像とのマッチングが行われていないと判定された場合、ステップS1306に進む。全ての望遠画像とのマッチングが行われたと判定された場合、ステップS1307に進む。
ステップS1306では、対応領域決定部1202が、RAM202に格納された、参照画像を示すカメラ番号を更新し、ステップS1304に戻る。
ステップS1307では、分散値比較部1203が、対応領域決定部1202から出力された、全ての分散値Vを比較する。そして、比較を行ったVの中で最小のVを決定し、そのVに対応する望遠画像を示す情報と、そのVに対応するdを画素値置き換え部1204に出力する。
次に、ステップS1308では、画素値置き換え部1204が、分散値比較部1203から出力された、望遠画像を示す情報とdに基づいて、仮想視点画像におけるオクルージョン領域の画素値を置き換える。ここでは、画素値置き換え部1204が、仮想視点画像におけるオクルージョン領域の画素値を、分散値比較部1203から出力された情報で示される望遠画像の、視差dで示される画像ブロックの画素値で置き換える。ステップS1307から出力された情報は、複数の望遠画像に含まれる画像領域の中で、仮想視点画像のオクルージョン領域に対応する画像領域に近い画像領域を示す情報である。つまり、この領域の画素値でオクルージョン領域の画素値を置き換えることで、仮想視点画像がより理想に近い画像になる。
次に、ステップS1309では、画素値置き換え部1204が、仮想視点画像の全ての画素においてオクルージョン領域の判定が行われたかどうかを判定する。全ての画素においてオクルージョン領域の判定が行われたと判定された場合、ステップS1310に進む。全ての画素においてオクルージョン領域の判定が行われていないと判定された場合、ステップS1303に進む。
ステップS1310では、画素値置き換え部1204が、全てのオクルージョン領域の画素値置き換えが終了した画像を、出力部306に出力する。
以上が、オクルージョン補正部905で行われる処理である。上記の処理によれば、視点位置とぼけ状態の両方が異なる画像同士で、対応点を精度良く探索することができるため、仮想視点と視点の近い、焦点距離の異なる画像をガイドにして、仮想視点画像の合成を行うことができる。その結果、実際のシーンに即した画像合成を行うことができるので、仮想視点画像を精度よく生成することができるようになる。
なお、本実施例において、画像取得部301は、第一の視点から被写体を見た場合の第一の画像と、前記第一の視点とは異なる第二の視点から前記被写体を見た場合の画像であり、前記第一の画像とぼけ状態が異なる第二の画像とを取得する取得手段として機能する。また、ぼけ付加部602は、前記第一の画像と前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理手段として機能する。また、粗精度視差算出部902は、前記処理手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像と前記第二の画像との間で同一の被写体に対応する画像領域を決定する決定手段として機能する。また、粗精度視差算出部902は前記第一の画像と前記第二の画像と、前記第一の画像と前記第二の画像と同一の被写体を含む第三の画像とを用いて、上記三つの画像の間で対応する画像領域を決定する決定手段としても機能する。
また、高精度視差算出部903は、前記第二の画像を用いずに、前記第一の画像と前記第三の画像とを用いて、前記第一の画像と前記第三の画像との間で対応する画像領域を新たに決定する再決定部として機能する。このとき、前記第一の画像と前記第三の画像との間で対応する画像領域前記第一の画像と前記第二の画像と前記第三の画像との間で対応する画像領域に基づいて決定される。また、入力部209は、ユーザ指示に基づいて画像の視点位置とぼけ状態とを示す画像情報を入力する入力手段として機能する。また、画像合成部904は、前記第一の画像および前記第二の画像の間で対応する画像領域と、前記画像情報とに基づいて、前記画像情報が示す視点位置およびぼけ状態に対応する仮想視点画像を生成する生成手段として機能する。
<実施例3>
実施例2では、多眼カメラによって取得された画像において、ぼけを付加してブロックマッチングを行った結果を用いて、仮想視点画像の生成を行う場合について説明した。本実施例では、Plenopticカメラで絞り径を変えて撮像した画像において、ぼけを付加してブロックマッチングを行った結果を用いて、仮想視点画像の生成を行う場合について説明する。
図14(a)を用いてPlenopticカメラの原理について説明する。Plenopticカメラは、撮像レンズ1401と撮像センサ1404の間に、マイクロレンズアレイ1403が設けられたPlenoptic撮像部を有している。ここで、マイクロレンズアレイ1403は、複数の微小な凸レンズ(マイクロレンズ)が二次元に並べられたものであり、各マイクロレンズは、一つのマイクロレンズを通過した光がそれぞれ撮像センサ1404の複数の画素に集光されるように配置されている。本実施例におけるマイクロレンズアレイ1403は、各マイクロレンズが撮像センサ1404の2×2=4画素に対応するように構成されている。そのため、図14(a)に示すように、撮像レンズ1401の異なる領域を通った光が、マイクロレンズ1403を介することで、それぞれ撮像センサ1404の異なる領域に入光することになる。つまり、マイクロレンズアレイ1403を介して撮像を行うことで、撮像レンズ1401の異なる領域を通過した光を分離することができる。もちろん、マイクロレンズアレイの構成はこれに限られず、各マイクロレンズの対応画素数などは自由に設定してよい。また、マイクロレンズアレイ1403は、撮像レンズ1401の焦点面に配置されている。
図14(a)では、簡単のために水平方向のみを考えているので、撮像レンズ1401を通った光は、それぞれ撮像レンズ1401の右側領域1410を通った光と、撮像レンズ1401の左側領域1420を通った光とに分離されている。つまり、右側領域1410を通った光は全て、画素1411に代表されるR画素に入光し、左側領域1420を通った光は全て、画素1421に代表されるL画素に入光する。そのため、R画素とL画素とをそれぞれ抜き出すことで、あたかも右側領域1410だけを用いて撮像したかのようなR画像と、左側領域1420だけを用いて撮像したかのようなL画像とを得ることができる。この時、R画像およびL画像に対応する視点は、それぞれ点1412および点1422となる。図14(b)のように絞り1402の径を小さくすると、それに伴って右側領域1410と左側領域1420の中心点が変化するため、R画像とL画像の間の視差も小さくなる。
図15に本実施例のPlenopticカメラによって得られたR画像およびL画像の例を示す。図15(a)および(b)は、図18(a)のように絞りを開いた状態で撮像されたL画像およびR画像であり、図15(c)および(d)は、図18(b)のように絞りを絞った状態で撮像されたL画像およびR画像である。図15(a)および(b)は、絞りを開いた状態で撮像された画像なので、L画像およびR画像の視点は撮像レンズ1401の外側に寄り、L画像の視点とR画像の視点の間で大きな基線長が得られている。また、大きな開口を用いて撮像された画像であるため、被写界深度は浅く、画像の遠景にはぼけが生じている。一方、図15(c)および(d)は、絞りを絞った状態で撮像された画像なので、L画像およびR画像の視点は撮像レンズ1401の内側に寄り、2つの画像の視点の間の基線長は小さくなっている。また、小さな開口を用いて撮像された画像であるため、被写界深度が深い。
このように、Plenopticカメラによる撮像では1回の撮像で視点の異なる複数の画像を得ることができ、その複数の画像の視点間の基線長はPlenopticカメラの絞りを調整することで変化させることができる。しかし、絞りを調整すると画像の被写界深度も開口の大きさに応じて変化してしまうため、所望の基線長と被写界深度の両方を持つ画像を得ることが難しかった。
そこで、本実施例では、Plenopticカメラの絞り径を変えて2回撮像を行うことで、所望の基線長で撮像された画像データと、所望の被写界深度で撮像された画像データとをそれぞれ取得し、両画像データの間でぼけを付加したマッチングを行う。そして、その結果を用いて、両画像データから、所望の基線長と被写界深度の両方を持つ仮想視点画像を生成する。
以下、本実施例の構成について説明する。本実施例の画像処理装置は、図2に示す構成に、ユーザに入力された基線長と被写界深度に対応する撮像パラメータを算出するパラメータ算出部1601を追加したものとなっている。パラメータ算出部1601は、バス204に他の構成部と同様に接続されている。また、撮像部101〜102は、Plenoptic撮像部1602に変更されている。
以下、本実施例の処理について、図16に示すブロック図および図17に示すフローチャートを参照して説明する。実施例1または実施例2と同じ処理については、同様の符号を付して説明を省略する。
まず、ステップS1701では、ユーザが入力部209を介して、仮想視点画像を生成する所望の基線長および被写界深度を入力する。入力された基線長および被写界深度は、パラメータ算出部1601に出力される。
ステップS1702では、パラメータ算出部1601が、ステップS1701で入力された基線長および被写界深度に基づいて、2回撮像を行う際の撮像パラメータを計算する。ここで計算される撮像パラメータは、それぞれ、所望の被写界深度のL画像およびR画像が得られる絞り値と、所望の基線長を持つL画像およびR画像が得られる絞り値である。そして、計算した撮像パラメータを撮像部1602に出力する。
ステップS1703では、撮像部1602が、ステップS1702で算出された撮像パラメータに基づいて2回撮像を行う。
ステップS1704では、ステップS401と同様に、画像取得部301が撮像部1602から画像データを取得する。この時、画像取得部301は、撮像センサ1404の出力から、撮像レンズ1401の同じ領域に対応する画素をそれぞれ抜き出すことで、複数の画像を示す画像データを得る。
以下、ステップS402〜S403および、ステップS1002〜S1005の処理を行って処理を終了する。各画像の基線長や開口の大きさなどは、各画像に対応する撮像レンズの領域を1つの異なるカメラとみなして実施例2と同様に処理を行う。上記の処理によれば、Plenopticカメラを用いて撮像された画像データから、所望の基線長と被写界深度の両方を持つ仮想視点画像を生成することができる。
なお、本実施例のようにPlenopticカメラを用いて撮像された画像データを用いる場合、マッチング時のぼけ付加において異なる式を用いることもできる。以下、その式について説明する。
Plenopticカメラで取得されたL画像とR画像において、ある被写体のぼけの直径b[pixel]と、L画像およびR画像でその被写体に対応する点の視差d’[pixel]の大きさには相関関係がある。それを図18(a)および(b)を用いて説明する。
図18(a)は、L画像とR画像に対応する視点の間の基線長Lと、視差d’の関係を示す図である。合焦位置からずれた被写体1801からの像について考える。被写体1801から射出された光は結像面1802で結像し、それぞれ撮像センサ1404上の異なる位置に入射される。この時、それぞれの光が入射するセンサ上の位置の間の距離は、視差d’の2倍となる。結像面1802が撮像レンズ1401からaの距離にあり、また、撮像センサ1404からaの距離にあるとすると、撮像面を介した2つの三角形は相似関係にあるので、以下の式が成り立つ。
L:a=2d’:a (11)
次に、図18(b)を用いて、同じ被写体1801に対応するぼけの直径について考える。被写体1801から射出された光は、撮像レンズ1401の右側領域を通り、結像面1802で結像した後に撮像センサ1404上の上に広がって入射される。この入射される範囲の直径は、L画像およびR画像におけるぼけの直径bの2倍となる。この時、式11と同様に考えると、以下の式が成り立つ。
L:a=2b’:a (12)
式11および式12から、以下の式が得られる。
b=d’ (13)
この式は、視点の分割数に限らず、常に成り立つ。
次に、絞りを開いた時に撮像された開口大画像と、絞りを絞った時に撮像された開口小画像のぼけの直径および視差の差について考える。開口大画像におけるある被写体のぼけの直径をb、開口小画像における同じ被写体のぼけの直径をbとする。そして開口大画像においてR画像とL画像の間で同じ被写体に対応する視差の大きさをd’、開口小画像においてR画像とL画像の間で同じ被写体に対応する視差の大きさをd’とすると、式13から、以下の式が成り立つ。
|b−b|=|d’−d’| (14)
ここで、開口大画像のR画像と開口小画像のR画像の間の視差をd[pixel]とすると、
が成り立つので、式14および15から、
|b−b|=2d (16)
となる。つまり、開口大画像と開口小画像の間のぼけの大きさの差は、開口大画像と開口小画像の、それぞれ同じ視点に対応する画像の視差に依存することになる。つまり、被写界深度の深い開口小画像のぼけを被写界深度の浅い開口大画像のぼけに合わせるためには、探索する視差の値に応じて、開口小画像に以下のフィルタを作用させればよい。
この式を用いれば、より単純な式を用いてぼけを付加したマッチングを行うことができる。もちろん、実施例1と同様で、被写界深度の深いほうの画像にぼけ付加の処理を行うのではなく、被写界深度の浅いほうの画像にデコンボリューション処理を行ってもよい。
なお、本実施例において、画像取得部301は、第一の視点から被写体を見た場合の第一の画像と、前記第一の視点とは異なる第二の視点から前記被写体を見た場合の画像であり、前記第一の画像とぼけ状態が異なる第二の画像とを取得する取得手段として機能する。また、ぼけ付加部602は、前記第一の画像と前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理手段として機能する。また、粗精度視差算出部902は、前記処理手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像と前記第二の画像との間で同一の被写体に対応する画像領域を決定する決定手段として機能する。また、粗精度視差算出部902は前記第一の画像と前記第二の画像と、前記第一の画像と前記第二の画像と同一の被写体を含む第三の画像とを用いて、上記三つの画像の間で対応する画像領域を決定する決定手段としても機能する。
また、高精度視差算出部903は、前記第二の画像を用いずに、前記第一の画像と前記第三の画像とを用いて、前記第一の画像と前記第三の画像との間で対応する画像領域を新たに決定する再決定部として機能する。このとき、前記第一の画像と前記第三の画像との間で対応する画像領域前記第一の画像と前記第二の画像と前記第三の画像との間で対応する画像領域に基づいて決定される。
また、入力部209は、ユーザ指示に基づいて画像の視点位置とぼけ状態とを示す画像情報を入力する入力手段として機能する。パラメータ算出部1601は、前記画像情報が示す視点位置の画像である第一の画像と、前記画像情報が示すぼけ状態の画像である第二の画像とを、取得するように、Plenoptic撮像部の開口の大きさを制御する制御手段として機能する。また、画像合成部904は、前記第一の画像および前記第二の画像の間で対応する画像領域と、前記画像情報とに基づいて、前記画像情報が示す視点位置およびぼけ状態に対応する仮想視点画像を生成する生成手段として機能する。
<実施例4>
実施例1〜3では、画像にぼけを付加する際に、探索位置に応じてガウシアンフィルタの強度を変化させる例について説明した。本実施例では、ぼけの形状が撮像部ごとに異なる場合や、探索視差に対してぼけの形状が解析的に定義できない場合を想定した構成について説明する。本実施例における画像処理装置210の構成および処理は、基本的には実施例1と同様であるため、ここでは実施例1との差異についてのみ述べる。本実施例の画像処理装置では、ステップS703のぼけの付与処理において、探索位置に応じて異なった形状のぼけフィルタが適用される。その処理を実現するための構成例として、本実施例の画像処理装置210では、ROMに203に撮像部101〜102のレンズのぼけ特性を表わすぼけフィルタを示すぼけフィルタデータベースが格納されている。そして、ステップS703のぼけの付与処理において、そのぼけフィルタデータベースが参照され、画像中での探索位置に応じた形状のぼけフィルタが使用される。
ぼけフィルタデータベースの例を図19(a)に示す。ぼけフィルタデータベースには、撮像部101〜102のレンズを通して撮像された画像に含まれる被写体の、ピント位置からの距離に応じた適切なぼけフィルタを格納したルックアップテーブル1901が格納されている。LUT1901は、例えば撮像部101および撮像部102のレンズの設計値に基づいて生成することができる。図19(b)は、ぼけフィルタデータベースに格納されているぼけフィルタの例である。フィルタ1902は、着目画素の画素値を周囲の画素の画素値の線型結合で置き換える3×3画素の大きさのぼけフィルタである。なお、フィルタの大きさはこれに限られない。各四角形領域はそれぞれ画素を示し、*で示される画素が着目画素である。各画素に記載されている数字は、フィルタ処理において該画素の画素値にかけられる重みを示している。フィルタ1902は、ガウシアンフィルタとは異なり、重み値の分布が着目画素を中心として非対称となっている。ぼけ付加部602は、ステップS703において、式(2)に基づいて探索位置に対応する視差値を距離に変換し、LUT1901が示すぼけフィルタを読み込んで使用する。なお、LUT1901としては、距離とフィルタの対応関係を示したテーブル以外に、視差値(画素)とフィルタの対応関係を示したテーブルを用いてもよい。また、LUTを用いずに、対応領域の探索中に各探索位置に対応するフィルタをシミュレーションや理論式に基づいて導出してもよい。
上記の構成によれば、ぼけの形状が撮像部ごとに異なる場合や、探索視差に対してぼけの形状が解析的に定義できない場合においても、高精度なマッチングを行うことができる。なお、実施例3のPlenopticカメラに本構成を適用する場合には、メインレンズ1401の開口の大きさや形状が異なる場合それぞれに対し、ピント位置からの距離とぼけフィルタとの対応関係を保持しておけばよい。
<その他の実施形態>
本発明の実施形態は、上記の実施例に限られるものではなく、上記の実施例を組み合わせたものであってもよい。例えば、実施例2または3において、距離の算出も同時に行えるようにしてもよい。
なお、上記の実施例では、複数の撮像部を備えた多眼カメラによって撮像された画像を示す画像データまたはPlenopticカメラによって取得された画像データを用いた処理を行ったが、別の形態で撮像された画像を示す画像データを用いてもよい。例えば、それぞれが独立した複数のカメラによって撮像された画像を用いてもよい。
また、実施例は一つの画像処理装置に限られず上記実施例に示される画像処理装置の機能を、複数の画像処理装置で分担する画像処理システムであってもよい。例えば、画像の合成処理と、オクルージョン領域の補正処理を異なる画像処理装置で行うようにしてもよい。
また、本発明の画像処理装置の構成は上記実施例に示したものに限られず、各ブロックの機能を複数のブロックに分けたり、複数のブロックの機能を持つブロックを含むような構成にしてもよい。また、上記実施例では、CPU201が、ROM203に記憶されたプログラムを実行して各処理回路を動作させることで処理を行ったが、全ての処理を制御部CPU201だけで行うようにしてもよい。また、制御部201を用いずに、全ての処理を1つの処理回路で行うようにしてもよい。
なお、本発明は例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。また、複数の機器から構成されるシステムに適用してもよいし、一つの機器からなる装置に適用してもよい。
また、本発明は、上述した実施例の機能(例えば、上記のフローチャートにより示される工程)を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給することによっても実現できる。この場合、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が、コンピュータが読み取り可能に記憶媒体に格納されたプログラムコードを読み出し実行することにより、上述した実施例の機能を実現する。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。
301 画像取得部
304 対応領域決定部
602 ぼけ付加部

Claims (20)

  1. 第一の視点から被写体を見た場合の第一の画像と、前記第一の視点とは異なる第二の視点から前記被写体を見た場合の画像であり、前記第一の画像とぼけ状態が異なる画像である第二の画像とを取得する取得手段と、
    前記第一の画像と前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理手段と、
    前記処理手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像と前記第二の画像との間で同一の被写体に対応する画像領域を決定する決定手段とを有することを特徴とする画像処理装置。
  2. 前記処理手段は、前記第一の画像と前記第二の画像のぼけ状態を合わせるように、前記第一の画像と前記第二の画像のうちの少なくとも一方のぼけ状態を変化させることを特徴とする請求項1に記載の画像処理装置。
  3. 前記処理手段による前記ぼけ状態の変化の度合いは、前記ぼけ状態を変化させる画像において、画像領域ごとに、前記画像領域の位置に基づいて決定されることを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記第一の画像および前記第二の画像に作用させるぼけフィルタと前記画像領域の位置との対応関係を示すデータベースを更に有し、
    前記処理手段は、前記データベースを参照して、前記ぼけ状態の変化の度合いを決定することを特徴とする請求項3に記載の画像処理装置。
  5. 前記処理手段は、前記対応する画像領域の候補である、前記第一の画像における第一の画像領域と、前記第二の画像における第二の画像領域のうちの少なくとも一方のぼけ状態を、前記第一の画像領域および前記第二の画像領域の位置関係に基づいて決定された変化の度合いによって変化させ、
    前記決定手段は、前記第一の画像領域および前記第二の画像領域の間の、少なくとも一方のぼけ状態が変化された後の類似度に基づいて、前記第一の画像領域および前記第二の画像領域が対応する画像領域であるかどうかを決定することを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。
  6. 前記変化の度合いは、前記第一の画像に対応する視点と前記第二の画像に対応する視点との間の距離と、前記第一の画像領域の前記第一の画像における位置と、前記第二の画像領域の前記第二の画像における位置とに基づいて決定されることを特徴とする請求項5に記載の画像処理装置。
  7. 前記決定手段により決定された、前記第一の画像および前記第二の画像の間で対応する画像領域に基づいて、前記被写体の距離情報を導出する導出手段を更に有することを特徴とする請求項1乃至6のいずれか一項に記載の画像処理装置。
  8. ユーザ指示に基づいて画像の視点位置とぼけ状態とを示す画像情報を入力する入力手段と、
    前記決定手段により決定された、前記第一の画像および前記第二の画像の間で対応する画像領域と、前記入力手段により入力された前記画像情報とに基づいて、前記画像情報が示す視点位置およびぼけ状態に対応する仮想視点画像を生成する生成手段とを更に有することを特徴とする請求項1乃至7のいずれか一項に記載の画像処理装置。
  9. 前記取得手段は、前記第一の画像および前記第二の画像と同一の被写体を含む第三の画像を更に取得し、
    前記第一の画像および前記第三の画像は、それぞれ前記第二の画像よりも前記仮想視点画像のぼけ状態に近いぼけ状態の画像であり、
    前記第二の画像は、前記第一および第三の画像よりも前記仮想視点画像の視点位置に近い視点位置の画像であり、
    前記処理手段は、前記第二の画像および前記第三の画像のうちの少なくとも一方のぼけ状態を更に変化させ、
    前記決定手段は、前記変化したぼけ状態に基づいて、前記第二の画像および前記第三の画像の間で対応する画像領域を更に決定し、
    前記生成手段は、前記第一の画像および前記第二の画像の間で決定された対応する画像領域と、前記第二の画像および前記第三の画像の間で決定された対応する画像領域とに基づいて、前記第一の画像および前記第三の画像を用いて前記仮想視点画像を生成することを特徴とする請求項8に記載の画像処理装置。
  10. 前記決定手段は、前記第一の画像と前記第二の画像と前記第三の画像とを用いて、前記第一の画像と前記第二の画像と前記第三の画像との間で対応する画像領域を決定し、
    前記決定手段により決定された、前記第一の画像と前記第二の画像と前記第三の画像との間で対応する画像領域に基づいて、前記第二の画像を用いずに、前記第一の画像と前記第三の画像とを用いて、前記第一の画像と前記第三の画像との間で対応する画像領域を新たに決定する再決定部を更に有することを特徴とする請求項9に記載の画像処理装置。
  11. 前記ぼけ状態は、ぼけの大きさであることを特徴とする請求項1乃至10のいずれか一項に記載の画像処理装置。
  12. 請求項1乃至10のいずれか一項に記載の画像処理装置と、
    前記第一の画像および前記第二の画像を撮像により取得する撮像手段とを有することを特徴とする撮像装置。
  13. 前記撮像手段は、同一の被写体を複数の視点から撮像する複数の撮像部を有することを特徴とする請求項12に記載の撮像装置。
  14. 前記撮像手段は、Plenoptic撮像部を有することを特徴とする請求項12に記載の撮像装置。
  15. 前記撮像手段は、前記Plenoptic撮像部の開口の大きさを変化させて撮像することで、前記第一の画像および前記第二の画像を取得することを特徴とする請求項14に記載の撮像装置。
  16. Plenoptic撮像部を有する撮像手段と、
    ユーザ指示に基づいて画像の視点位置とぼけ状態とを示す画像情報を入力する入力手段と、
    前記画像情報が示す視点位置の画像である第一の画像と、前記第一の画像と同一の被写体を含み、前記画像情報が示すぼけ状態の画像である第二の画像とを、それぞれ撮像により取得するように、前記Plenoptic撮像部の開口の大きさを制御する制御手段と、
    前記第一の画像および前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理を行う処理手段と、
    前記処理手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像および前記第二の画像の間で対応する画像領域を決定する決定手段と、
    前記決定手段により決定された、前記第一の画像および前記第二の画像の間で対応する画像領域と、前記入力手段により入力された前記画像情報とに基づいて、前記画像情報が示す視点位置およびぼけ状態に対応する仮想視点画像を生成する生成手段とを有することを特徴とする撮像装置。
  17. 第一の視点から被写体を見た場合の第一の画像と、前記第一の視点とは異なる第二の視点から前記被写体を見た場合の画像であり、前記第一の画像とぼけ状態が異なる第二の画像とを取得するステップと、
    前記第一の画像および前記第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理を行うステップと、
    前記変化手段によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像と前記第二の画像との間で同一の被写体に対応する画像領域を決定するステップとを含むことを特徴とする画像処理方法。
  18. Plenoptic撮像部を有する撮像装置で撮像された画像を処理する方法であって、
    ユーザ指示に基づいて画像の視点位置とぼけ状態とを示す画像情報を入力するステップと、
    前記画像情報が示す視点位置の画像である第一の画像と、前記第一の画像と同一の被写体を含み、前記画像情報が示すぼけ状態の画像である第二の画像とを、それぞれ撮像により取得するように、前記Plenoptic撮像部の開口の大きさを制御するステップと、
    前記第一の画像および第二の画像のうちの少なくとも一方のぼけ状態を変化させる処理を行うステップと、
    前記処理によりぼけ状態が変化された後の、前記第一の画像と前記第二の画像とを比較することで、前記第一の画像および前記第二の画像の間で対応する画像領域を決定するステップと、前記決定された、前記第一の画像および前記第二の画像の間で対応する画像領域と、前記入力手段により入力された前記画像情報とに基づいて、前記画像情報が示す視点位置およびぼけ状態に対応する仮想視点画像を生成するステップとを含むことを特徴とする画像処理方法。
  19. コンピュータを、請求項1乃至11のいずれか一項に記載の画像処理装置の各手段として機能させるプログラム。
  20. コンピュータを、請求項12乃至16のいずれか一項に記載の撮像装置の各手段として機能させるプログラム。
JP2014184463A 2013-12-19 2014-09-10 画像処理装置、撮像装置、画像処理方法およびプログラム Active JP6452360B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014184463A JP6452360B2 (ja) 2013-12-19 2014-09-10 画像処理装置、撮像装置、画像処理方法およびプログラム
US14/572,518 US9619886B2 (en) 2013-12-19 2014-12-16 Image processing apparatus, imaging apparatus, image processing method and program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013262753 2013-12-19
JP2013262753 2013-12-19
JP2014184463A JP6452360B2 (ja) 2013-12-19 2014-09-10 画像処理装置、撮像装置、画像処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2015135661A true JP2015135661A (ja) 2015-07-27
JP6452360B2 JP6452360B2 (ja) 2019-01-16

Family

ID=53400381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014184463A Active JP6452360B2 (ja) 2013-12-19 2014-09-10 画像処理装置、撮像装置、画像処理方法およびプログラム

Country Status (2)

Country Link
US (1) US9619886B2 (ja)
JP (1) JP6452360B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017028606A (ja) * 2015-07-27 2017-02-02 キヤノン株式会社 撮像装置
JP7419601B2 (ja) 2020-08-05 2024-01-22 マイブリッジ アーエス 多重カメラセンサシステム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3443735A4 (en) 2016-04-12 2019-12-11 Quidient, LLC RECONSTRUCTION MACHINE FOR EVERYDAY SCENES
US10586308B2 (en) * 2017-05-09 2020-03-10 Adobe Inc. Digital media environment for removal of obstructions in a digital image scene
JP7043255B2 (ja) 2017-12-28 2022-03-29 キヤノン株式会社 電子機器及びその制御方法
JP2019121857A (ja) * 2017-12-28 2019-07-22 キヤノン株式会社 電子機器及びその制御方法
CA3097202A1 (en) 2018-05-02 2019-11-07 Quidient, Llc A codec for processing scenes of almost unlimited detail
JP7123736B2 (ja) * 2018-10-23 2022-08-23 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
US11720969B2 (en) * 2020-02-07 2023-08-08 International Business Machines Corporation Detecting vehicle identity and damage status using single video analysis

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009293970A (ja) * 2008-06-03 2009-12-17 Fujifilm Corp 距離測定装置および方法並びにプログラム
JP2012026841A (ja) * 2010-07-22 2012-02-09 Panasonic Corp ステレオ測距装置及びステレオ測距方法
US8228417B1 (en) * 2009-07-15 2012-07-24 Adobe Systems Incorporated Focused plenoptic camera employing different apertures or filtering at different microlenses
JP2012142918A (ja) * 2010-12-17 2012-07-26 Canon Inc 撮像装置およびその制御方法
JP2012147046A (ja) * 2011-01-06 2012-08-02 Sony Corp 撮像装置および画像処理方法
JP2013025649A (ja) * 2011-07-23 2013-02-04 Canon Inc 画像処理装置及び画像処理方法、プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009293970A (ja) * 2008-06-03 2009-12-17 Fujifilm Corp 距離測定装置および方法並びにプログラム
US8228417B1 (en) * 2009-07-15 2012-07-24 Adobe Systems Incorporated Focused plenoptic camera employing different apertures or filtering at different microlenses
JP2012026841A (ja) * 2010-07-22 2012-02-09 Panasonic Corp ステレオ測距装置及びステレオ測距方法
JP2012142918A (ja) * 2010-12-17 2012-07-26 Canon Inc 撮像装置およびその制御方法
JP2012147046A (ja) * 2011-01-06 2012-08-02 Sony Corp 撮像装置および画像処理方法
JP2013025649A (ja) * 2011-07-23 2013-02-04 Canon Inc 画像処理装置及び画像処理方法、プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
久保田彰, 外1名: ""多視点・焦点画像の線形フィルタリングによる任意視点・焦点画像の生成"", 電子情報通信学会技術研究報告, vol. 第102巻, 第631号, JPN6018032162, 27 January 2003 (2003-01-27), JP, pages 35 - 40, ISSN: 0003863460 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017028606A (ja) * 2015-07-27 2017-02-02 キヤノン株式会社 撮像装置
JP7419601B2 (ja) 2020-08-05 2024-01-22 マイブリッジ アーエス 多重カメラセンサシステム

Also Published As

Publication number Publication date
JP6452360B2 (ja) 2019-01-16
US20150178595A1 (en) 2015-06-25
US9619886B2 (en) 2017-04-11

Similar Documents

Publication Publication Date Title
KR102278776B1 (ko) 이미지 처리 방법, 기기, 및 장치
JP6452360B2 (ja) 画像処理装置、撮像装置、画像処理方法およびプログラム
KR101893047B1 (ko) 이미지 처리 방법 및 이미지 처리 장치
CN108600576B (zh) 图像处理装置、方法和系统以及计算机可读记录介质
JP6112824B2 (ja) 画像処理方法および装置、プログラム。
US8928736B2 (en) Three-dimensional modeling apparatus, three-dimensional modeling method and computer-readable recording medium storing three-dimensional modeling program
JP6347675B2 (ja) 画像処理装置、撮像装置、画像処理方法、撮像方法及びプログラム
CN107493432B (zh) 图像处理方法、装置、移动终端及计算机可读存储介质
US9992478B2 (en) Image processing apparatus, image pickup apparatus, image processing method, and non-transitory computer-readable storage medium for synthesizing images
US20100182480A1 (en) Image processing apparatus, image matching method, and computer-readable recording medium
JP5725953B2 (ja) 撮像装置及びその制御方法、並びに情報処理装置
JP2012248001A (ja) 画像処理装置および画像処理方法、プログラム
EP2757789A1 (en) Image processing system, image processing method, and image processing program
JP6020471B2 (ja) 画像処理方法、画像処理装置および画像処理プログラム
CN107872631B (zh) 基于双摄像头的图像拍摄方法、装置及移动终端
DK3189493T3 (en) PERSPECTIVE CORRECTION OF DIGITAL PHOTOS USING DEPTH MAP
JP2015213299A (ja) 画像処理装置および画像処理方法
JP6128748B2 (ja) 画像処理装置及び方法
CN109257540B (zh) 多摄镜头组的摄影校正方法及摄影装置
JP5889022B2 (ja) 撮像装置、画像処理装置、画像処理方法及びプログラム
US20200267374A1 (en) Data recording apparatus, image capturing apparatus, data recording method, and storage medium
JP6732440B2 (ja) 画像処理装置、画像処理方法、及びそのプログラム
JP2013175821A (ja) 画像処理装置、画像処理方法およびプログラム
JP2014049895A (ja) 画像処理方法
WO2023199583A1 (ja) ビューワ制御方法及び情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170906

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181025

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181211

R151 Written notification of patent or utility model registration

Ref document number: 6452360

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151