JPWO2014192642A1 - 画像処理装置および画像処理方法 - Google Patents
画像処理装置および画像処理方法 Download PDFInfo
- Publication number
- JPWO2014192642A1 JPWO2014192642A1 JP2015519825A JP2015519825A JPWO2014192642A1 JP WO2014192642 A1 JPWO2014192642 A1 JP WO2014192642A1 JP 2015519825 A JP2015519825 A JP 2015519825A JP 2015519825 A JP2015519825 A JP 2015519825A JP WO2014192642 A1 JPWO2014192642 A1 JP WO2014192642A1
- Authority
- JP
- Japan
- Prior art keywords
- image
- pixel
- reference image
- processing apparatus
- image processing
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C3/00—Measuring distances in line of sight; Optical rangefinders
- G01C3/02—Details
- G01C3/06—Use of electric means to obtain final indication
- G01C3/08—Use of electric radiation detectors
- G01C3/085—Use of electric radiation detectors with electronic parallax measurement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
- G06T7/85—Stereo camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/24—Character recognition characterised by the processing or recognition method
- G06V30/248—Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
- G06V30/2504—Coarse or fine approaches, e.g. resolution of ambiguities or multiscale approaches
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Radar, Positioning & Navigation (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Remote Sensing (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
- Studio Devices (AREA)
- Measurement Of Optical Distance (AREA)
Abstract
画像処理部(1)は、それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、基準画像上の1画素の、基準画像以外の入力画像での対応する画素を推定する対応点探索を行なう。画像処理部は、基準画像以外の入力画像の上記1画素に対応する位置から、基準画像の視点と基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで上記1画素に対応する画素を推定するための第1推定部(321)と、推定された画素に対して第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで上記1画素に対応する画素を推定するための第2推定部(322)とを備える。
Description
この発明は画像処理装置および画像処理方法に関し、特に、対応点探索を行なう画像処理装置および画像処理方法に関する。
それぞれが共通する部分領域を有する多視点の入力画像間の対応点を探索し、各視点から対象物までの距離を算出し、その距離に応じて視差量を補正する画像処理の手法がある。たとえば、特開2000−28355号公報(以下、特許文献1)は、エピポーラ線のずれを検出することで、視差推定ミスを減らす技術を開示している。また、特開平9−153148号公報(以下、特許文献2)は、移動、回転、倍率変換などを行なって、最もエピポーラ線の平行化された条件を探す技術を開示している。また、特開2012−107971号公報(以下、特許文献3)は、対応点の探索を、粗い検索と、近くの被写体についての細かい探索との2段階で行なう技術を開示している。
上記特許文献1〜3は対応点探索の精度を向上させるものではあるが、高速化のニーズには対応することができない。
本発明はこのような問題に鑑みてなされたものであって、高速かつ高精度で対応点を探索することのできる画像処理装置および画像処理方法を提供することを目的としている。
上記目的を達成するために、本発明のある局面に従うと、画像処理装置は、それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、基準画像上の1画素の、基準画像以外の入力画像での対応する画素を推定する画像処理装置であって、基準画像以外の入力画像の1画素に対応する位置から、基準画像の視点と基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで、上記1画素に対応する画素を推定するための第1の推定部と、第1の推定部で推定された画素に対して、第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで、上記1画素に対応する画素を推定するための第2の推定部とを備える。
好ましくは、第2の推定部は、第1の推定部で用いるテンプレートのサイズ以下のサイズのテンプレートを用いてテンプレートマッチングを行なう。
好ましくは、画像処理装置は、上記1画素と第2の推定部で推定された上記1画素に対応する画素との間のずれに基づいて、小数画素でのずれ量を推定するための第3の推定部をさらに備える。
好ましくは、上記1画素と基準画像以外の入力画像の上記1画素に対応する画素との間のずれに基づいて、基準画像の視点から被写体までの距離を算出する処理を実行するための処理部をさらに備える。
より好ましくは、処理部は、基準画像以外の複数の入力画像それぞれのずれを加算することで、基準画像の視点から被写体までの距離を算出する。
より好ましくは、処理部は、基準画像以外の複数の入力画像それぞれのずれから補正量を算出し、それぞれのずれを補正する。
好ましくは、画像処理装置は、基準画像以外の入力画像について、上記1画素と基準画像以外の入力画像の上記1画素に対応する画素との間のずれをパラメーターとして用いて超解像処理を実行するための処理部をさらに備える。
好ましくは、画像処理装置は、入力画像のそれぞれに対して、前処理として歪曲補正と平行化処理とを行なうための前処理部をさらに備える。
本発明の他の局面に従うと、画像処理方法は、それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、基準画像上の1画素の、基準画像以外の入力画像での対応する画素を推定する方法であって、基準画像以外の入力画像の上記1画素に対応する位置から、基準画像の視点と基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで、上記1画素に対応する画素を推定するステップと、推定された画素に対して、第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで、上記1画素に対応する画素を推定するステップとを備える。
本発明のさらに他の局面に従うと、画像処理プログラムは、コンピューターに、それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、基準画像上の1画素の、基準画像以外の入力画像での対応する画素を推定する処理を実行させるプログラムであって、基準画像以外の入力画像の上記1画素に対応する位置から、基準画像の視点と基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで、上記1画素に対応する画素を推定するステップと、推定された画素に対して、第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで、上記1画素に対応する画素を推定するステップとをコンピューターに実行させる。
この発明によると、高速かつ高精度で対応点を探索することができる。
以下に、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらの説明は繰り返さない。
<システム構成>
図1は、本実施の形態にかかる画像処理装置1の構成の基本的構成を示すブロック図である。
図1は、本実施の形態にかかる画像処理装置1の構成の基本的構成を示すブロック図である。
図1を参照して、画像処理装置1は、撮像部2と、画像処理部3と、画像出力部4とを含む。図1に示す画像処理装置1においては、撮像部2が被写体を撮像することで画像(以下、「入力画像」とも称する)を取得し、画像処理部3がこの取得された入力画像に対して後述するような画像処理を行なう。そして、画像出力部4は、画像処理後の画像を表示デバイスなどへ出力する。
撮像部2は、対象物(被写体)を撮像して入力画像を生成する。より具体的には、撮像部2は、カメラ22と、カメラ22と接続されたA/D(Analog to Digital)変換部24とを含む。A/D変換部24は、カメラ22により撮像された被写体を示す入力画像を出力する。
カメラ22は、被写体を撮像するための光学系であって、アレイカメラである。すなわち、カメラ22は、格子状に配置された視点の異なるN個のレンズ22a−1〜22a−n(これらを代表させて、レンズ22aとも称する)と、撮像素子(イメージセンサー)22bとを含む。
A/D変換部24は、撮像素子22bから出力される被写体を示す映像信号(アナログ電気信号)をデジタル信号に変換して出力する。撮像部2はさらに、カメラ各部分を制御するための制御処理回路などを含み得る。
画像処理部3は、位置ずれ推定処理を行なうことで対応点を探索するための位置ずれ推定部32と、後述する画像処理を行なうための処理部33とを含む。好ましくは、画像処理部3は、入力された画像に対して前処理として歪曲補正および平行化処理を実行するための前処理部31を含む。
位置ずれ推定部32は、ピクセル(整数画素)単位でのずれ量を推定する処理のうちの第1段階の「粗い」推定処理を行なうための第1推定部321と、ピクセル単位でのずれ量を推定する処理のうちの第2段階の推定処理を行なうための第2推定部322とを含む。好ましくは、位置ずれ推定部32は、さらに、サブピクセル(小数画素)単位でのずれ量を推定する処理を行なうための第3推定部323を含む。
図1に示す画像処理装置1は、各部を独立の装置で具現化したシステムとして構成することもできるが、汎用的には、以下に説明するデジタルカメラやパーソナルコンピューターなどとして具現化される場合が多い。そこで、本実施の形態に従う画像処理装置1の具現化例として、デジタルカメラでの具現化例とPC(パーソナルコンピューター)での具現化例とについて説明する。
図2は、図1に示す画像処理装置1を具現化したデジタルカメラ100の構成を示すブロック図である。図2において、図1に示す画像処理装置1を構成するそれぞれのブロックに対応するコンポーネントには、図1と同一の参照符号を付している。
図2を参照して、デジタルカメラ100は、CPU(Central Processing Unit)102と、デジタル処理回路104と、画像表示部108と、カードインターフェイス(I/F)110と、記憶部112と、カメラ部114とを含む。
CPU102は、予め格納されたプログラムなどを実行することで、デジタルカメラ100の全体を制御する。デジタル処理回路104は、本実施の形態に従う画像処理を含む各種のデジタル処理を実行する。デジタル処理回路104は、典型的には、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、LSI(Large Scale Integration)、FPGA(Field-Programmable Gate Array)などによって構成される。このデジタル処理回路104は、図1に示す画像処理部3が提供する機能を実現するための画像処理回路106を含む。
画像表示部108は、カメラ部114により提供される入力画像、デジタル処理回路104(画像処理回路106)によって生成される出力画像、デジタルカメラ100に係る各種設定情報、および、制御用GUI(Graphical User Interface)画面などを表示する。
カードインターフェイス(I/F)110は、画像処理回路106によって生成された画像データを記憶部112へ書き込み、あるいは、記憶部112から画像データなどを読み出すためのインターフェイスである。記憶部112は、画像処理回路106によって生成された画像データや各種情報(デジタルカメラ100の制御パラメーターや動作モードなどの設定値)を格納する記憶デバイスである。この記憶部112は、フラッシュメモリ、光学ディスク、磁気ディスクなどからなり、データを不揮発的に記憶する。
カメラ部114は、被写体を撮像することで入力画像を生成する。
図2に示すデジタルカメラ100は、本実施の形態に従う画像処理装置1の全体を単体の装置として実装したものである。すなわち、ユーザーは、デジタルカメラ100を用いて被写体を撮像することで、画像表示部108において高解像度の画像を視認することができる。
図2に示すデジタルカメラ100は、本実施の形態に従う画像処理装置1の全体を単体の装置として実装したものである。すなわち、ユーザーは、デジタルカメラ100を用いて被写体を撮像することで、画像表示部108において高解像度の画像を視認することができる。
図3は、図1に示す画像処理装置1を具現化したパーソナルコンピューター200の構成を示すブロック図である。図3に示すパーソナルコンピューター200は、本実施の形態に従う画像処理装置1の一部を単体の装置として実装したものである。図3に示すパーソナルコンピューター200では、入力画像を取得するための撮像部2が搭載されておらず、任意の撮像部2によって取得された入力画像が外部から入力される構成となっている。このような構成であっても、本発明の実施の形態に従う画像処理装置1に含まれ得る。なお、図3においても、図1に示す画像処理装置1を構成するそれぞれのブロックに対応するコンポーネントには、図1と同一の参照符号を付している。
図3を参照して、パーソナルコンピューター200は、パーソナルコンピューター本体202と、モニター206と、マウス208と、キーボード210と、外部記憶装置212とを含む。
パーソナルコンピューター本体202は、典型的には、汎用的なアーキテクチャーに従う汎用コンピューターであり、基本的な構成要素として、CPU、RAM(Random Access Memory)、ROM(Read Only Memory)などを含む。パーソナルコンピューター本体202は、図1に示す画像処理部3が提供する機能を実現するための画像処理プログラム204が実行可能になっている。このような画像処理プログラム204は、CD−ROM(Compact Disk-Read Only Memory)などの記憶媒体に格納されて流通し、あるいは、ネットワークを介してサーバー装置から配信される。そして、画像処理プログラム204は、パーソナルコンピューター本体202のハードディスクなどの記憶領域内に格納される。
このような画像処理プログラム204は、パーソナルコンピューター本体202で実行されるオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち必要なモジュールを、所定のタイミングおよび順序で呼出して処理を実現するように構成されてもよい。この場合、画像処理プログラム204自体には、OSが提供するモジュールは含まれず、OSと協働して画像処理が実現される。また、画像処理プログラム204は、単体のプログラムではなく、何らかのプログラムの一部に組込まれて提供されてもよい。このような場合にも、画像処理プログラム204自体には、当該何らかのプログラムにおいて共通に利用されるようなモジュールは含まれず、当該何らかのプログラムと協働して画像処理が実現される。このような一部のモジュールを含まない画像処理プログラム204であっても、本実施の形態に従う画像処理装置1の趣旨を逸脱するものではない。
もちろん、画像処理プログラム204によって提供される機能の一部または全部を専用のハードウェアによって実現してもよい。
モニター206は、オペレーティングシステム(OS)が提供するGUI画面、画像処理プログラム204によって生成される画像などを表示する。
マウス208およびキーボード210は、それぞれユーザー操作を受付け、その受付けたユーザー操作の内容をパーソナルコンピューター本体202へ出力する。
外部記憶装置212は、何らかの方法で取得された入力画像を格納しており、この入力画像をパーソナルコンピューター本体202へ出力する。外部記憶装置212としては、フラッシュメモリ、光学ディスク、磁気ディスクなどのデータを不揮発的に記憶するデバイスが用いられる。
図4は、アレイカメラであるカメラ22に含まれるレンズ22aと撮像センサーである撮像素子22bとの関係を表わした概略図である。図4を参照して、レンズ22aは、入光を焦点に集めることで光学像を形成する。撮像素子22bはレンズ22aの焦点に位置するように配置される。そのため、レンズ22aは撮像素子22bに光学像を形成する。撮像素子22bは、レンズ22aにより形成された光学像を電気信号に変換して、A/D変換部24に対して出力する。
図5は、カメラ22に含まれるレンズ22aの配置の具体例を表わした図である。図5の例では、一例として、カメラ22が、格子状に配置された9個のレンズ22a−1〜22a−9(レンズA〜I)を含むアレイカメラであるものとする。図5のレンズA〜Iの間隔(基線長)は、縦方向および横方向ともに均一であるものとする。なお、カメラ22で撮影したときの、カメラ22からの入力画像A,B,C,D,E,F,G,H,Iは、それぞれ、レンズA〜Iからの入力画像であることを表わすものとする。
[第1の実施の形態]
<動作概要>
(レンズへの環境変化の影響の説明)
図6〜図11は、レンズ22aがプラスチックアレイレンズであるときの環境条件の変化の一例としての温度変化の影響を説明するための図である。プラスチックアレイレンズであるレンズ22aの温度変化による影響の1つに、レンズ22a間のピッチ(間隔)が変化し、画素位置がずれることが挙げられる。
<動作概要>
(レンズへの環境変化の影響の説明)
図6〜図11は、レンズ22aがプラスチックアレイレンズであるときの環境条件の変化の一例としての温度変化の影響を説明するための図である。プラスチックアレイレンズであるレンズ22aの温度変化による影響の1つに、レンズ22a間のピッチ(間隔)が変化し、画素位置がずれることが挙げられる。
図6は、アレイレンズの温度変化によるピッチ変化の理想的な状態を表わした概略図である。すなわち、図6に示されたように、温度変化によってアレイレンズは、理想的には、中央のレンズEを中心として放射状に、つまり、各レンズからの入力画像の視差の方向(レンズの配置方向)に、均等に伸び縮みすることが予想される。
これに対して、図7は、実際のレンズごとの位置ずれの測定結果を表わした図である。図7は、図5に示した3×3で配置された9眼のレンズアレイを用い、四隅に配置されたレンズA,C,G,Iそれぞれについて、24℃の状態を基準として、43℃、64℃、および81℃に変化させたときの位置ずれの測定結果を示している。図7に示されたように実際のレンズは、レンズごとに変形量が異なり、アレイレンズ全体として非対称に変形することが分かる。なお、どのように非対称に変形するかについても個体ごとに異なる。
図8および図10は、レンズアレイのうちのレンズE(中央のレンズ)を基準レンズとして、基準レンズと周囲のレンズとのずれを比較するための図である。図8は温度変化がない場合のずれを表わし、図10は温度変化がある場合のずれを表わしている。
図8を参照して、温度変化がない場合には、無限遠ではずれがなく、近くの被写体ほどずれが大きく現れる。図9は、図8の場合のずれの方向を説明するための図である。すなわち、図8の場合のずれは、図9に表わされたようにレンズ22aの配置方向に沿った方向(レンズ22aの中央画素と基準レンズの中央画素とを結んだ方向)に現れる。たとえば、左上のレンズAの場合には、ずれ方向は左上方向となる。なお、図8は、ステレオキャリブレーションとして歪曲補正および平行化処理を行なっている。また、視差の現れる方向(エピポールライン)は、個眼の配置に沿うものとしている。ただし、歪曲収差が小さいレンズを光軸が平行になるように配置したアレイの場合、歪曲補正や平行化処理による補正効果が小さいため、処理を行なわなくてもよい。
これに対して、温度変化がある場合には、図10に示されたように、変形の影響がレンズ22aごとに不均等に現れる。すなわち、レンズ22aごとにずれる方向もずれ量も異なってくる。図11は、図10の場合のずれの方向を説明するための図である。図11の破線の矢印は温度変化によってずれの現れる方向を表わし、実線の矢印はカメラ22から被写体までの距離により現れる視差の方向を表わしている。図11を参照して、温度変化によるずれの現れる方向(破線矢印)は、被写体の距離により現れる視差の方向(実線矢印)に近いが、多少異なっていることがわかる。各画像には、この2つの方向のずれが合成されて、現れることになる。すなわち、図10の場合のずれの方向は、変形が非対称であるためにエピポールラインとは多少異なる方向となる。
(動作概要)
第1の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理の一例としてのリフォーカス処理を行なう。
第1の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理の一例としてのリフォーカス処理を行なう。
<動作フロー>
(全体動作)
図12は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。図12を参照して、まず、画像処理装置1では図5に表わされたレンズ22aそれぞれで入力画像を取得する処理が実行されることで9枚の入力画像が取得される。ここでは、たとえば500×500画素程度の解像度の画像が入力されるものとする。
(全体動作)
図12は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。図12を参照して、まず、画像処理装置1では図5に表わされたレンズ22aそれぞれで入力画像を取得する処理が実行されることで9枚の入力画像が取得される。ここでは、たとえば500×500画素程度の解像度の画像が入力されるものとする。
入力画像が取得されると、ピクセル単位(整数画素)での位置ずれを推定する処理が実行される(ステップS1)。ステップS1では、環境変化(温度変化等)や部材の変形などによる位置ずれが推定される。次に、好ましくは、サブピクセル単位(小数画素)での位置ずれを推定する処理が実行される(ステップS2)。ステップS2での推定は後述する距離の推定精度を向上させるものではあるが、必須ではない。そして、位置ずれ量を考慮して視点から被写体までの距離が算出され(ステップS3)、その距離をパラメーターとして用いて距離に応じたぼけを付加することで、画像処理としてのリフォーカス処理が実行される(ステップS4)。なお、リフォーカス処理では距離が相対的に把握されればよい(距離の違いが認識できればよい)ため、ステップS3の距離算出では、必ずしも実際の距離の算出まで必要とはされず、相対的な距離、つまり、距離の違いを認識できる単位で算出されればよい。たとえば、距離の逆数や、視差を変換した数値でもよく、この説明ではそのような算出を距離算出と称する。リフォーカス処理後の画像が出力画像として生成される。
(位置ずれ推定)
ステップS1の位置ずれ推定処理は、第1段階の推定処理として、参照画像に対して、基準画像の視点と算出画像の視点とのなす方向に対応した方向で、粗いピッチでテンプレートマッチングを行なう推定処理(#1)と、第2段階の推定処理として第1段階でのピッチよりも細かいピッチでテンプレートマッチングを行なう推定処理(#2)とを含む。図13および図14は、それぞれ、ステップS1での位置ずれ推定処理の第1の例および第2の例を説明するための図である。
ステップS1の位置ずれ推定処理は、第1段階の推定処理として、参照画像に対して、基準画像の視点と算出画像の視点とのなす方向に対応した方向で、粗いピッチでテンプレートマッチングを行なう推定処理(#1)と、第2段階の推定処理として第1段階でのピッチよりも細かいピッチでテンプレートマッチングを行なう推定処理(#2)とを含む。図13および図14は、それぞれ、ステップS1での位置ずれ推定処理の第1の例および第2の例を説明するための図である。
第1の例については、図13を参照して、まず、画像処理装置1は、1つの入力画像を基準画像、基準画像以外の入力画像であって温度変化のある入力画像を参照画像とする。そして、画像処理装置1は、基準画像中のテンプレート(図中の矩形枠)を、参照画像の対応する位置に対して、基準画像の視点(レンズ)の位置と参照画像の視点(レンズ)の位置とのなす方向で粗いピッチ(たとえば4画素刻み程度)でマッチングして対応位置を特定する粗推定(#1)を行なう。上記のように、温度変化による変形(ずれ)と視差の現れる方向とは概ね同じ方向であるためである。
たとえば、レンズEからの入力画像Eを基準画像とし、レンズAからの入力画像Aを参照画像とする。そして、基準画像の位置(x,y)=(100,150)に対応する参照画像の画素位置を第1の例にかかる位置ずれ推定処理にて探索する場合を説明する。このとき、画像処理装置1は、基準画像の対応する位置に対して、(−4,−4),(0,0),(4,4),(8,8),(12,12),(16,16),(20,20),(24,24)だけずらした8画素でテンプレートマッチングを行なう。すなわち、画像処理装置1は、基準画像の位置(x,y)=(96,146),(100,150),(104,154),(108,158),(112,162),(116,166),(120,170),(124,174)でテンプレートマッチングを行なう。そして、画像処理装置1は、最も一致度の高い画素を特定する。なお、画像処理装置1は、参照画像とする入力画像の視差(レンズ)の位置(参照画像のレンズとなす角度)に応じて、上記したずらす画素の方向を切り替える。たとえば参照画像がレンズBからの入力画像Bである場合、画像処理装置1は、上下方向にたとえば4画素ピッチでずらしながらテンプレートマッチングを行なう。
なお、ここでのテンプレートマッチング処理の一例として、NCC(Normalized Cross Correlation)が挙げられる。他の例として、SAD(Sum of Absolute Difference)やSSD(Sum of Squared Difference)などであってもよい。
次に、画像処理装置1は、第1段階の推定処理(#1)でテンプレートに対して最も一度が高いと特定された位置の周辺を第1段階の推定処理(#1)よりも細かいピッチ(たとえば1画素刻み程度)でマッチングして対応位置を特定する精密推定(#2)を行なう。
たとえば、第1段階の推定処理(#1)で特定された位置が(x,y)=(104,154)であった場合、画像処理装置1は、その画素の周辺を1画素の精度で平面的に探索(テンプレートマッチング)し、(x,y)=(102,155)のように一致する画素を特定する。
「粗いピッチ」は、テンプレートマッチングを行なう画素のずらす方向に限定されない。第2の例として、テンプレートのサイズを第1段階の推定処理(#1)と第2段階の推定処理(#2)とで異ならせてもよい。すなわち、図14を参照して、画像処理装置1は、第1段階の推定処理(#1)では、入力画像が500×500画素の場合、65×65画素サイズのテンプレートを用いてテンプレートマッチングするものとする。この場合、好ましくは、画像処理装置1は、入力画像を500×500画素から縦横1/4のサイズに縮小して125×125画素サイズとし、その入力画像に対して17×17画素サイズのテンプレートを用いてテンプレートマッチングしてもよい。これにより、テンプレートマッチング処理を高速化することができる。また、好ましくは、画像処理装置1は、入力画像を500×500画素から縦横1/4のサイズに縮小して125×125画素サイズにする代わりに、4画素ごとの画素を抜き出して125×125画素サイズの低画素画像に変換し、その入力画像に対して17×17画素サイズのテンプレートを用いてテンプレートマッチングしてもよい。これにより、テンプレートマッチング処理をより高速化することができる。
さらに、画像処理装置1は、第2の例として、第2段階の推定処理(#2)において、第1段階の推定処理(#1)で特定された画素周辺を平面的に探索(テンプレートマッチング)する代わりに、縮小した画像を用いてピラミッド状に探索してもよい。すなわち、図14を参照して、第2段階の推定処理(#2)の第1のステップとして、画像処理装置1は、500×500画素の入力画像を縦横1/4のサイズに縮小して125×125画素サイズとし、その入力画像に対して17×17画素サイズのテンプレートを用いて特定された画素から±1画素の9か所に対してテンプレートマッチングを行なう。テンプレートマッチングの範囲は、縮小前の元画像の特定された画素から±4画素の範囲に相当する。次に、第2段階の推定処理(#2)の第2のステップとして、画像処理装置1は、500×500画素の入力画像を縦横1/2のサイズに縮小して250×250画素サイズとし、その入力画像に対して17×17画素サイズのテンプレートを用いて特定された画素から±1画素の9か所に対してテンプレートマッチングを行なう。テンプレートマッチングの範囲は、縮小前の元画像の特定された画素から±2画素の範囲に相当する。次に、第2段階の推定処理(#2)の第3のステップとして、画像処理装置1は、500×500画素の入力画像を縮小することなく17×17画素サイズのテンプレートを用いて特定された画素から±1画素の9か所に対してテンプレートマッチングを行なう。なお、第1段階の推定処理(#1)と同様に、画像処理装置1は、縮小画像を生成する代わりに、入力画像を数画素ごとに抜き出して低画素画像に変換することで、テンプレートマッチング処理をより高速化することができる。
画像処理装置1が、上記ステップS1の位置ずれ推定処理にて、探索方向、探索ピッチを変えて、第1段階の推定処理(粗推定(#1))と第2段階の推定処理(精密推定(#2))とを実行することで、推定精度を落とすことなくテンプレートマッチングの回数(探索回数)を削減することができる。そのため、ピクセルレベルで高速に位置ずれを推定(対応画素を探索)することができる。
(サブピクセル推定)
ステップS2のサブピクセル単位(小数画素)での位置ずれを推定する処理は、ステップS1の位置ずれ推定処理にて対応点として推定された画素の近傍の画素を含む画素群(たとえば周囲8画素を含む9画素)それぞれのテンプレートマッチングの一致度(たとえばNCC値)を算出する処理を含む。図15は、対応点として推定された画素およびその周囲8画素のNCC値の具体例を表わしている。
ステップS2のサブピクセル単位(小数画素)での位置ずれを推定する処理は、ステップS1の位置ずれ推定処理にて対応点として推定された画素の近傍の画素を含む画素群(たとえば周囲8画素を含む9画素)それぞれのテンプレートマッチングの一致度(たとえばNCC値)を算出する処理を含む。図15は、対応点として推定された画素およびその周囲8画素のNCC値の具体例を表わしている。
ステップS2では、それら一致度を元に2次曲面フィッティングが行なわれ、サブピクセル単位での位置ずれが推定される。ステップS2のサブピクセル単位(小数画素)での位置ずれ推定では、一例として、図16に表わされた、論文「位置ずれ量を考慮した画素選択に基づくロバスト超解像処理」(電子情報通信学会論文誌、Vol.J92−D、No.5、pp.650−660、2009、2009年5月)に記載された手法を採用することができる。すなわち、図15および図16に表わされたように、画素ごとの一致度のうち、最も一致度の高い画素の座標がずれ量として特定される。
なお、ステップS2では、上記の2次曲面フィッティングに替えて、X座標およびY座標それぞれで2次曲面フィッティングするなどの他の手法が採用されてもよい。
(距離算出)
図17は、入力画像ごとの基準画像(入力画像E)に対する対応画素のずれ量を画素値(色の濃淡)として表わした図である。図17では、基準画像(入力画像E)の視点からの視点の方向が斜め方向にある入力画像(入力画像A,C,G,I)については、X方向Y方向それぞれのずれ量を異なる画像で表わしている。画像処理装置1は、ステップS3の距離算出処理にて、一例として、図17に表わされている各入力画像のずれ量を加算する。
図17は、入力画像ごとの基準画像(入力画像E)に対する対応画素のずれ量を画素値(色の濃淡)として表わした図である。図17では、基準画像(入力画像E)の視点からの視点の方向が斜め方向にある入力画像(入力画像A,C,G,I)については、X方向Y方向それぞれのずれ量を異なる画像で表わしている。画像処理装置1は、ステップS3の距離算出処理にて、一例として、図17に表わされている各入力画像のずれ量を加算する。
図18(A)は、図17の各図に画素値で表わされた各入力画像のずれ量の、加算結果を表わした図である。図17に表わされたように、入力画像ごとにずれ量が異なるために全体的なオフセット量が異なるが、各入力画像のずれを表わす画素値をそのまま加算した画像が図18(A)となる。なお、基準画像である入力画像Eに対する入力画像Aの関係のように、視点(レンズ)の位置に応じて斜め方向にずれが現れる入力画像については、上記したようにX方向Y方向それぞれ加算する代わりに、視点(レンズ)方向に応じた斜め方向のずれを算出して加算してもよい。
図18(A)において、画素値の高い(色の白い)画素ほどずれ量が大きく、画素値の低い(色の濃い)画素ほどずれ量が小さいことを表わしている。カメラから被写体までの距離が近いほどずれ量は大きくなり、距離が遠いほどずれ量は小さくなる。そのため、図18(A)において画素値の高い(色の白い)画素にある被写体ほどカメラから被写体までの距離が近く、画素値の低い(色の濃い)画素にある被写体ほどカメラから被写体までの距離が遠いことになる。従って、図18(A)は、カメラ22から被写体までの距離を表わす距離画像であると言える。
なお、図18(B)に、比較のために、温度変化がない場合の各入力画像のずれを表わす画素値をそのまま加算した画像を示す。図18(A)と図18(B)とを比較することで、カメラ22から被写体までの距離の相対量(距離の違い)は、レンズ22aが温度変化の影響を受けたとしても、温度変化の影響がない場合と同じ精度で認識できることが分かる。
(リフォーカス処理)
リフォーカス処理は、準備処理として、距離画像を修正する処理と、カメラ22から被写体までの距離を段階分けする処理とを含む。図19は、ステップS4のリフォーカス処理のうちの準備処理の流れを表わした図である。図19を参照して、画像処理装置1は、距離画像を修正する処理として、入力画像のうちの1つの入力画像(入力画像E)を基準画像(図19(A))として生成された距離画像(図19(B))を、被写体ごとにカメラ22からの距離が何段階かに揃うように修正する(図19(C))。ここではたとえばジョイントバイラテラルフィルタが好適に用いられる。他の例として、近傍の画素を用い、色が近いほど大きな重み付けをした平均化フィルターが用いられてもよい。これにより、図19(B)の距離画像から図19(C)の距離画像が生成される。
リフォーカス処理は、準備処理として、距離画像を修正する処理と、カメラ22から被写体までの距離を段階分けする処理とを含む。図19は、ステップS4のリフォーカス処理のうちの準備処理の流れを表わした図である。図19を参照して、画像処理装置1は、距離画像を修正する処理として、入力画像のうちの1つの入力画像(入力画像E)を基準画像(図19(A))として生成された距離画像(図19(B))を、被写体ごとにカメラ22からの距離が何段階かに揃うように修正する(図19(C))。ここではたとえばジョイントバイラテラルフィルタが好適に用いられる。他の例として、近傍の画素を用い、色が近いほど大きな重み付けをした平均化フィルターが用いられてもよい。これにより、図19(B)の距離画像から図19(C)の距離画像が生成される。
次に、画像処理装置1は、カメラ22から被写体までの距離を段階分けする処理として、一例として、修正後の距離を8段階に分割する。これにより、図19(C)の距離画像から図19(D)の距離画像が生成される。
図20は、リフォーカス処理の流れを表わした図である。画像処理装置1は、リフォーカス処理を行なって、図19(D)を元にぼけを付加したリフォーカス画像を作成する。図20を参照して、たとえば、撮影画像の右下の被写体(ぬいぐるみ)にピントを合わせたリフォーカス画像を作成する場合を説明する。この場合、画像処理装置1はリフォーカス処理を行なって、ピントを合わせる被写体とは異なる距離の被写体部分ほど強いぼけを付加する。なお、ぼけを付加した画像の生成方法の一例として、入力画像に対して平滑化フィルターを適用する方法が挙げられる。平滑化フィルターとしては、たとえば、ガウシアンフィルターや平均化フィルターなどが挙げられる。以下の説明では、3×3の平均化フィルターを複数回、用いる場合を例に挙げる。複数回、用いる代わりに、5×5、7×7などカーネルサイズを大きくしてもよい。
なお、好ましくは、画像処理装置1は、遠くの距離に相当するぼけから順に、合成する。これにより、人が見た時の同様のぼけを画像上に表現でき、表示品質を向上させることができる。
図21〜図23は、画像処理装置1にて上記の処理を行なって生成したリフォーカス画像の具体例を表わした図である。図21はカメラ22からの距離の近い、画面左下にある被写体にピントを合わせた画像、図22はカメラ22からの距離が中程度である、画面右下にある被写体にピントを合わせた画像、および図23はカメラ22からの距離が遠い、画面左上にある被写体にピントを合わせた画像を表わしている。
[第2の実施の形態]
第2の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理の一例としての超解像処理を実行する。
第2の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理の一例としての超解像処理を実行する。
<動作フロー>
図24は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。図24を参照して、第1の実施の形態と同様に図5に表わされたレンズ22aそれぞれで入力画像を取得する処理が実行されることで9枚の入力画像が取得される。ここでは、たとえば500×500画素程度の解像度の画像が入力されるものとする。
図24は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。図24を参照して、第1の実施の形態と同様に図5に表わされたレンズ22aそれぞれで入力画像を取得する処理が実行されることで9枚の入力画像が取得される。ここでは、たとえば500×500画素程度の解像度の画像が入力されるものとする。
入力画像が取得されると、ピクセル単位(整数画素)での位置ずれを推定する処理が実行される(ステップS1’)。次に、好ましくは、サブピクセル単位(小数画素)での位置ずれを推定する処理が実行される(ステップS2’)。そして、位置ずれ量を考慮して、画像処理としての超解像処理が実行される(ステップS5)、1500×1500画素程度の高解像度画像が出力画像として生成される。
(位置ずれ推定)
上記ステップS1’およびステップS2’での位置ずれ推定処理は、第1の実施の形態にかかる画像処理装置1でのステップS1およびステップS2での位置ずれ推定処理と同様である。しかしながら、第2の実施の形態にかかる画像処理装置1では、基準画像と参照画像とを入れ替えて同様の処理を行なう。
上記ステップS1’およびステップS2’での位置ずれ推定処理は、第1の実施の形態にかかる画像処理装置1でのステップS1およびステップS2での位置ずれ推定処理と同様である。しかしながら、第2の実施の形態にかかる画像処理装置1では、基準画像と参照画像とを入れ替えて同様の処理を行なう。
図25および図26は、それぞれ、ステップS1’での位置ずれ推定処理の第1の例および第2の例を説明するための図である。第1の例および第2の例は、それぞれ、図13および図14で表わされた、第1の実施の形態での位置ずれ推定処理の第1例および第2の例に対応したものである。
すなわち、図25を参照して、第2の実施の形態にかかる位置ずれ推定処理(ステップS1’)でも、画像処理装置1は、1つの入力画像を基準画像、基準画像以外の入力画像であって温度変化のある入力画像を参照画像として、基準画像中のテンプレートを、参照画像の対応する位置に対して、基準画像の視点(レンズ)の位置と参照画像の視点(レンズ)の位置とのなす方向で粗いピッチ(たとえば4画素刻み程度)でマッチングして対応位置を特定する粗推定(#1)を行なう。なお、第2の実施の形態では、画像処理装置1は、上記のように、基準画像と参照画像とを逆に用いる。すなわち、第2の実施の形態にかかる画像処理装置1は、第1の実施の形態で基準画像とした入力画像Eを参照画像として用い、第1の実施の形態で参照画像とした他の入力画像(たとえば入力画像A)を基準画像として用いる。そして、第2の実施の形態にかかる画像処理装置1は、第1の実施の形態と同様のテンプレートマッチングを行なう。
また、図26を参照して、第1の実施の形態と同様に、テンプレートのサイズを第1段階の推定処理(#1)と第2段階の推定処理(#2)とで異ならせてもよい。すなわち、画像処理装置1は、第1段階の推定処理(#1)では、入力画像が500×500画素の場合、65×65画素サイズのテンプレートを用いてテンプレートマッチングするものとする。さらに、画像処理装置1は、第2の例として、第2段階の推定処理(#2)において、第1段階の推定処理(#1)で特定された画素周辺を平面的に探索(テンプレートマッチング)する代わりに、図26に示されたように(第1の実施の形態と同様に)、縮小した画像を用いてピラミッド状に探索してもよい。なお、この場合も、第2の実施の形態にかかる画像処理装置1は、第1の実施の形態で基準画像とした入力画像Eを参照画像として用い、第1の実施の形態で参照画像とした他の入力画像(たとえば入力画像A)を基準画像として用いる。
(超解像処理)
図27は、ステップS5での超解像処理の流れを表わした図である。図27では、具体例として、論文「Fast and Robust Multiframe Super Resolution」(IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 13, NO. 10, OCTOBER 2004 page.1327−1344)に記載された処理を行なう場合の超解像処理の流れが示されている。
図27は、ステップS5での超解像処理の流れを表わした図である。図27では、具体例として、論文「Fast and Robust Multiframe Super Resolution」(IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 13, NO. 10, OCTOBER 2004 page.1327−1344)に記載された処理を行なう場合の超解像処理の流れが示されている。
図27を参照して、ステップ#31で、9枚の入力画像のうちの1枚に対してバイリニア法等の補間処理を施して入力画像の解像度を超解像処理後の解像度である高解像度に変換することで、初期画像としての出力候補画像が生成される。
ステップ#32で、ノイズにロバストに収束させるための拘束項としてのBTV(Bilateral Total Variation)量が算出される。
ステップ#33で、上記生成された出力候補画像と9枚分の入力画像とが比較されて、残差が算出される。ステップ#34で、上記ステップ#31で生成された出力候補画像から算出された残差とBTV量とが減ぜられて次の出力候補画像が生成される。
上記ステップ#31〜#34の処理が、出力候補画像が収束するまで繰り返され、収束した出力候補画像が超解像処理後の出力画像として出力される。
繰り返しは、おおよそ充分に収束する回数(たとえば200回)などの、予め規定された回数であってもよいし、一連の処理の都度、収束判定がなされ、その結果に応じて繰り返されてもよい。
図28は、上記ステップ#33で用いられる劣化情報を説明するための図である。また、図29〜図33は、上記ステップ#33での処理を説明するための図である。
劣化情報とは、超解像処理後の高解像度画像に対する入力画像それぞれの関係を表わす情報を指し、たとえば行列形式で表わされる。劣化情報には、入力画像それぞれのサブピクセルレベルでのずれ量F(平行移動した残りの少数画素分)、ダウンサンプリング量D(上記の例では縦横それぞれ1/3)、およびぼけ量H(PSF)などが含まれる。
図28を参照して、劣化情報は、入力画像および超解像処理後の高解像度画像それぞれを1次元のベクトル表現した場合に、その変換を示す行列で規定される。
上記ステップ#33では、まず、図29を参照して、入力画像Ykから生成された出力候補画像Xnにその入力画像Ykについての劣化情報DkHkFkを当てはめることで、入力サイズの画像DkHkFkXnが生成される(ステップ#41)。ここでの処理は、詳しくは、図30を参照して、まず、出力候補画像Xnに対して、ぼけ量Hkを表わすパラメーターであるPSFを係数とした行列を用いたフィルター処理が施される(ステップS11)。
そして、次に、ずれを考慮してダウンサンプリングされる(ステップS12)。これにより、入力サイズの画像DkHkFkXnが出力される。一例として、図30の右に表わされたように、ずれ量FがX方向に1/3画素のずれであり、ダウンサンプリング量Dが縦横1/3である場合には、フィルター処理された後の出力候補画像Xnの1/3画素分ずらした位置にある9画素分の矩形領域の各画素の平均値が、入力サイズの画像DkHkFkXnの1/3画素分ずらす前の位置にある1画素分の画素値として出力される(ステップS13)。
次に、図31を参照して、入力サイズの画像とされた出力候補画像DkHkFkXnは入力画像Ykと比較され、その差異の画像sign(DkHkFkXn−Yk)が記録される(ステップ#42)。図31の例では、一例として、出力候補画像DkHkFkXnと入力画像Ykとの差異に符号関数signが適用される例が示されている。
次に、超解像処理の収束演算に用いられるように、上記の差異が超解像画像のどの画素の影響によるものであるのか、算出された差異に表わされる影響を超解像画像上の対応する画素に戻すために、上記差異の画像sign(DkHkFkXn−Yk)を超解像後の画像サイズに戻す処理が行なわれる(ステップ#43)。上記のように、劣化情報Dk,Hk,Fkを行列で定義した場合、ステップ#43ではその転置行列が用いられる。すなわち、図32を参照して、記録された差異の画像sign(DkHkFkXn−Yk)にその入力画像Ykについての劣化情報DkHkFkの転置行列DkTHkTFkTを当てはめることで、超解像後の画像サイズに戻される。ここでの処理は、詳しくは、図33を参照して、上記のようにして差異の画像sign(DkHkFkXn−Yk)が生成されると(ステップS14)、ずれを考慮してアップサンプリングされる(ステップS15)。一例として、図33の右に表わされたように、ずれ量FがX方向に1/3画素のずれであり、ダウンサンプリング量Dが縦横1/3である場合には、差異の画像sign(DkHkFkXn−Yk)の所定位置にある1画素分の画素値(差異の値)が均等分(この例では9等分)され、1/3画素分ずらした位置にある9画素分の矩形領域の各画素に出力される。この処理の後、ぼけ量Hkを表わすパラメーターであるPSFを係数としたフィルターの転置行列が当てはめられてぼけ量Hkの影響を戻す処理が施され(ステップS16)、処理後の画像が超解像後の画像サイズに戻された差異の画像DkTHkTFkTsign(DkHkFkXn−Yk)が出力される(ステップS17)。以上の処理によって、1つの入力画像Ykに対する差異の画像DkTHkTFkTsign(DkHkFkXn−Yk)が作成される。
図34は、上記ステップ#33の残差算出処理の一例を表わしたフローチャートである。入力画像はこの例では9枚あるため、上記ステップ#33の残差算出処理では図34のように枚数分、上記ステップS11〜S17の処理を繰り返す。すなわち、図34を参照して、1枚目の入力画像Y1について上記の処理がステップS11〜S17として行なわれて超解像後の画像サイズの差異の画像が出力され、2枚目の入力画像Y2について上記の処理がステップS21〜S27として行なわれて超解像後の画像サイズの差異の画像が出力され、…(中略)、9枚目の入力画像Y9について上記の処理がステップS91〜S97として行なわれて超解像後の画像サイズの差異の画像が出力される。
そして、その合計値が残差として出力される(ステップS100)。なお、上の例では、ずれ量Fとぼけ量Hとの処理順が論文での説明とは逆になっているが、ぼけは画像のある程度大きな範囲で生じているため、順序を入れ替えても実質的な影響はない。
なお、上記のぼけ量Hの行列の処理は、以下のフィルター処理と等価となる。すなわち、ぼけ量Hの処理については、入力画素値I、出力画素値I’を用いて、
I’(x,y)=ΣΣPSF(i,j)I(x+i,y+j)
と表わされる。なお、Σは、PSFのフィルターサイズ分(たとえば7×7のフィルターなら、i,jそれぞれ−3〜3)となる。
I’(x,y)=ΣΣPSF(i,j)I(x+i,y+j)
と表わされる。なお、Σは、PSFのフィルターサイズ分(たとえば7×7のフィルターなら、i,jそれぞれ−3〜3)となる。
また、ぼけ量Hの転置行列の処理については、
I’(x+i,y+j)=ΣΣPSF(i,j)I(x,y)
と表わされる。つまり、出力画素値I’は、入力画素値Iを全画素処理した合計値となる。
I’(x+i,y+j)=ΣΣPSF(i,j)I(x,y)
と表わされる。つまり、出力画素値I’は、入力画素値Iを全画素処理した合計値となる。
なお、超解像処理は、図27に表わされた処理に限定されるものではなく、複数枚の入力画像から1枚の画像を生成する再構成型超解像処理であれば他の処理が採用されてもよい。図35は、上記ステップS5での超解像処理の他の例を表わした図である。すなわち、図35を参照して、上記ステップ#32で算出される拘束項はBTV量に替えて、たとえば、4近傍ラプラシアンなどの他のものが用いられてもよい(ステップ#32’)。
また、ステップ#33の残差算出処理も異なる算出方法であってよい。一例として、符号関数signを用いず、出力候補画像DkHkFkXnと入力画像Ykとの差異が直接用いられてもよい。
[第3の実施の形態]
上記の第1の実施の形態と第2の実施の形態とを組み合わせてもよい。すなわち、第3の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理の一例としての超解像処理およびリフォーカス処理を実行する。
上記の第1の実施の形態と第2の実施の形態とを組み合わせてもよい。すなわち、第3の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理の一例としての超解像処理およびリフォーカス処理を実行する。
図36は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。第3の実施の形態にかかる画像処理装置1は、第1の実施の形態にかかる画像処理であるリフォーカス処理と、第2の実施の形態にかかる画像処理である超解像処理とをそれぞれ入力画像に対して行なうことでリフォーカス画像と超解像画像とを得、それらを合成する。すなわち、図36を参照して、第1の実施の形態にかかる画像処理装置1でのステップS1〜S4(図12)の処理と、第2の実施の形態にかかる画像処理装置1でのステップS1’,S2’(図24)の処理とを、それぞれ、入力画像に対して行なって、リフォーカス画像と超解像画像とを得る。なお、図36に表わされたように、リフォーカス画像と超解像画像とでは画素サイズが異なる。そこで、画像処理装置1は、ステップS1〜S4の処理で得られたリフォーカス画像に対してたとえばバイリニア補間などの解像度変換を施した後に(ステップS6)、超解像画像と合成する(ステップS7)。
図37は、ステップS7での合成処理について説明するための図である。図37を参照して、画像処理装置1は、リフォーカス画像のうちのステップS4のリフォーカス処理の際にぼけを付加した画素(領域)については、リフォーカス画像のうちのステップS6で解像度変換された画素を用いる。
一方、リフォーカス画像のうちのピントを合わせた領域については、そのうちの最もピントのあった領域(画素)のみ、ステップS5の超解像処理によって得られた画素をそのまま用いる。最もピントを合わせた領域(画素)の周辺領域については、リフォーカス画像のうちのステップS5の超解像処理によって得られた画素をたとえば3×3の平均化フィルターを用いて平均化して用いる。リフォーカス処理の際に3×3の平均化フィルターを用いることは、超解像画像に対して9×9の平均化フィルターを用いて平均化することと解像度が実質的に同じになる。そのため、このように平均化することで、ぼけた領域と超解像された領域との間を滑らかに変化させることができる。なお、図37において3×3の平均化フィルターを用いて平均化する、リフォーカス画像のうちのピントを合わせた領域(画素)の周辺領域については、図38に表わされたように、リフォーカス画像を解像度変換して用いてもよい。
[第4の実施の形態]
第4の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理を行なうことでカメラ22から被写体までの距離を精度よく算出する。
第4の実施の形態にかかる画像処理装置1は、カメラ22に対して環境変化の一例としての温度変化があった場合であっても、入力画像を用いて画像処理を行なうことでカメラ22から被写体までの距離を精度よく算出する。
<動作フロー>
図39は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。図39を参照して、第4の実施の形態にかかる画像処理装置1は、第1〜第3の実施の形態にかかる画像処理装置1と同様にして位置ずれを推定した後(ステップS1)、位置ずれ量を補正する(ステップS8)。
図39は、本実施の形態にかかる画像処理装置1での動作の流れを表わすフローチャートである。図39を参照して、第4の実施の形態にかかる画像処理装置1は、第1〜第3の実施の形態にかかる画像処理装置1と同様にして位置ずれを推定した後(ステップS1)、位置ずれ量を補正する(ステップS8)。
図40〜図42は、ステップS8での位置ずれ量を補正する方法を説明するための図である。図40に示された、入力画像ごとの基準画像(入力画像E)に対する対応画素のずれ量を表わす距離画像では、画像ごとにずれ量が全体的に異なることが表わされている。そこで、画像処理装置1は、図41に表わされたように、画像ごとのずれ量の平均値を算出し、12個の平均値の中から最小値を特定する。そして、画像ごとの最小値からの差分を補正量とする。画像処理装置1は、画像ごとに、ずれ量から補正量を減じる。図42は、図40の各図を補正した結果を表わしている。この補正を行なうことで、各画像の平均値が、揃うことになる。
図39に戻って、画像処理装置1は、ステップS8の補正後の画像から間違いのデータ(ノイズ)を抽出する(ステップS9)。図43〜図45は、ステップS9での間違いデータを抽出する方法を説明するための図である。画像処理装置1は、補正後の12枚の画像の対応する画素位置についてのヒストグラムを作成する。そして、画像処理装置1は、ヒストグラムから外れた画素値(ずれ量)を間違いと判定する。画像処理装置1は、各図について、たとえば3画素ピッチでヒストグラムを作成するなどして、画像全体を判定する。
図44は、図43の12枚の画像各図の右上の丸印部分について、対応する画素位置ごとに作成されたヒストグラムを表わしている。画像処理装置1は、図44のヒストグラムにおいて、連続した2つの画素値でのヒストグラム値の最大となる箇所を特定し、その箇所以外の画素値は間違いデータと判定する。図44のヒストグラムでは、ヒストグラム値の最大となる箇所が画素値0〜6である箇所Aと特定され、この箇所Aに示された画素値を有する画素は正しい(適切な画素値を有する画素)と判定される。画素値30付近である箇所Bのヒストグラム値は間違いデータと判定される。
図45は、図43の12枚の画像各図についての間違いデータの判定結果を表わした図である。図中の白領域が、間違いデータであると判定された画素値の領域を表わしている。
再び図39に戻って、画像処理装置1は、ステップS9で上記した方法で入力画像それぞれについて間違いデータ(ノイズ)を判定すると、各図の間違いデータとされた画素を除いた画素を用いて加算処理を行なうことで、距離を推定する(ステップS10)。図46は、図45で白色で表わされた画素を除いた各図を加算することで得られた距離画像を表わしている。
ステップS10での加算処理では、全入力画像とも正しいと判定された画素はそのまま加算するものの、例えば図44のヒストグラムで示されたように12枚の画像中の10枚だけが正しいと判定されている画素は、10枚分を加算した後、12/10倍して画素の重みを合わせる。
図18(A)のすべての画像を加算して生成した距離画像と図46の上記の処理で生成した距離画像とを比較すると、図46の距離画像では、図18(A)の距離画像の左上や右上に現れていた画素値が間違いデータ(ノイズ)として除かれている。これより、ステップS10で間違いデータを除去した上で加算することでより正しい距離画像を作成できていることが分かる。
[変形例1]
以上の説明では、環境条件の変化の一例としての温度変化により画素が想定している対応位置からずれてしまうことが想定されているが、環境変化は温度変化には限定されない。他の例として、図示しないレンズ22aの保持部などの機械的な部品の経時変化(伸び、たわみ、等)が挙げられる。その場合も、画像処理装置1は上記ステップS1と同様にして対応点探索を行なうことができる。また、第1の実施の形態にて説明したようにキャリブレーション(歪曲補正や平行化処理)を行なわない場合などでも適応できる。すなわち、何らかの誤差要因があれば、画像処理装置1は、その誤差精度に合わせて2段階に探索方向をおよび探索ピッチを切り替えて、対応画素を探索することで適応できる。
以上の説明では、環境条件の変化の一例としての温度変化により画素が想定している対応位置からずれてしまうことが想定されているが、環境変化は温度変化には限定されない。他の例として、図示しないレンズ22aの保持部などの機械的な部品の経時変化(伸び、たわみ、等)が挙げられる。その場合も、画像処理装置1は上記ステップS1と同様にして対応点探索を行なうことができる。また、第1の実施の形態にて説明したようにキャリブレーション(歪曲補正や平行化処理)を行なわない場合などでも適応できる。すなわち、何らかの誤差要因があれば、画像処理装置1は、その誤差精度に合わせて2段階に探索方向をおよび探索ピッチを切り替えて、対応画素を探索することで適応できる。
[変形例2]
以上の説明では、画像処理装置1が図5のようにレンズの配置されたアレイカメラであるカメラ22からの入力画像を用いるものとしているが、レンズは図5のものに限定されない。図47および図48は、カメラ22に含まれるレンズの他の例を表わした図である。すなわち、上記の説明では、アレイレンズA〜Pが四隅で保持されていることが想定されている。しかしながら、図47のように、四隅のうちの1か所(たとえば左上)のみでアレイレンズA〜Pが保持されていてもよい。この場合、図47に示されるように、各レンズの変形は非対称であって、保持されている隅を中心とした略放射状に変形することになる。しかしながら、保持されている隅に最も近いレンズAを基準とした各レンズの位置ずれは、図6での説明と同様に、レンズAを中心として各レンズからの入力画像の視差の方向(レンズの配置方向)に伸び縮みする。そのため、こういった場合であっても、画像処理装置1は、上記ステップS1と同様の位置ずれ推定処理を行なうことで対応点を探索することができる。
以上の説明では、画像処理装置1が図5のようにレンズの配置されたアレイカメラであるカメラ22からの入力画像を用いるものとしているが、レンズは図5のものに限定されない。図47および図48は、カメラ22に含まれるレンズの他の例を表わした図である。すなわち、上記の説明では、アレイレンズA〜Pが四隅で保持されていることが想定されている。しかしながら、図47のように、四隅のうちの1か所(たとえば左上)のみでアレイレンズA〜Pが保持されていてもよい。この場合、図47に示されるように、各レンズの変形は非対称であって、保持されている隅を中心とした略放射状に変形することになる。しかしながら、保持されている隅に最も近いレンズAを基準とした各レンズの位置ずれは、図6での説明と同様に、レンズAを中心として各レンズからの入力画像の視差の方向(レンズの配置方向)に伸び縮みする。そのため、こういった場合であっても、画像処理装置1は、上記ステップS1と同様の位置ずれ推定処理を行なうことで対応点を探索することができる。
また、図48のように、カメラ22に含まれるレンズ22aが16個(16眼)の場合も、温度変化などの環境変化により各レンズ22aの位置ずれの方向は、図6での説明と同様に、基準とするレンズと対象とするレンズとのなす方向(視差方向)である。そのため、こういった場合であっても、画像処理装置1は、上記ステップS1と同様の位置ずれ推定処理を行なうことで対応点を探索することができる。
<実施の形態の効果>
アレイカメラであるカメラ22に含まれるレンズ22aが温度変化などの環境変化の影響を受けると全体として伸び縮みしてレンズ間隔(ピッチ)が変動することがある。特に、レンズ22aやその保持部材がプラスチックなどの環境の影響を受けやすい素材である場合には、その変動が現れやすくなる。しかしながら、その変動は必ずしも全体的に均等に生じるものではない。そのため、距離算出処理や超解像処理やリフォーカス処理などの画像処理のために必要な対応点は、非対称にずれる場合がある。
アレイカメラであるカメラ22に含まれるレンズ22aが温度変化などの環境変化の影響を受けると全体として伸び縮みしてレンズ間隔(ピッチ)が変動することがある。特に、レンズ22aやその保持部材がプラスチックなどの環境の影響を受けやすい素材である場合には、その変動が現れやすくなる。しかしながら、その変動は必ずしも全体的に均等に生じるものではない。そのため、距離算出処理や超解像処理やリフォーカス処理などの画像処理のために必要な対応点は、非対称にずれる場合がある。
本実施の形態にかかる画像処理装置1は、対応点探索において、各レンズの配置方向(視差の現れる方向)と温度変化によるピッチ変動の方向とがおおよそ同じ方向である、という特徴を利用して、第一段階として粗い精度(ピッチ)でその方向に探索し、第二段階として一致すると探索された画素周辺で第一段階よりも細かい精度(ピッチ)で方向を制限せず平面的に探索する。これにより、高速かつ高精度で対応点を探索することができる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 画像処理装置、2 撮像部、3 画像処理部、4 画像出力部、22 カメラ、22a レンズ、22b 撮像素子、24 A/D変換部、31 前処理部、32 位置ずれ推定部、33 処理部、100 デジタルカメラ、102 CPU、104 デジタル処理回路、106 画像処理回路、108 画像表示部、112 記憶部、114 カメラ部、200 パーソナルコンピューター、202 パーソナルコンピューター本体、204 画像処理プログラム、206 モニター、208 マウス、210 キーボード、212 外部記憶装置、321 第1推定部、322 第2推定部、323 第3推定部。
Claims (10)
- それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、前記基準画像上の1画素の、前記基準画像以外の入力画像での対応する画素を推定する画像処理装置であって、
前記基準画像以外の入力画像の前記1画素に対応する位置から、前記基準画像の視点と前記基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで、前記1画素に対応する画素を推定するための第1の推定部と、
前記第1の推定部で推定された画素に対して、前記第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで、前記1画素に対応する画素を推定するための第2の推定部とを備える、画像処理装置。 - 前記第2の推定部は、前記第1の推定部で用いるテンプレートのサイズ以下のサイズのテンプレートを用いてテンプレートマッチングを行なう、請求項1に記載の画像処理装置。
- 前記1画素と前記第2の推定部で推定された前記1画素に対応する画素との間のずれに基づいて、小数画素でのずれ量を推定するための第3の推定部をさらに備える、請求項1または2に記載の画像処理装置。
- 前記1画素と前記基準画像以外の入力画像の前記1画素に対応する画素との間のずれに基づいて、前記基準画像の視点から被写体までの距離を算出する処理を実行するための処理部をさらに備える、請求項1〜3のいずれかに記載の画像処理装置。
- 前記処理部は、前記基準画像以外の複数の入力画像それぞれの前記ずれを加算することで、前記基準画像の視点から前記被写体までの距離を算出する、請求項4に記載の画像処理装置。
- 前記処理部は、前記基準画像以外の複数の入力画像それぞれの前記ずれから補正量を算出し、前記それぞれのずれを補正する、請求項5に記載の画像処理装置。
- 前記基準画像以外の入力画像について、前記1画素と前記基準画像以外の入力画像の前記1画素に対応する画素との間のずれをパラメーターとして用いて超解像処理を実行するための処理部をさらに備える、請求項1〜3のいずれかに記載の画像処理装置。
- 前記入力画像のそれぞれに対して、前処理として歪曲補正と平行化処理とを行なうための前処理部をさらに備える、請求項1〜7のいずれかに記載の画像処理装置。
- それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、前記基準画像上の1画素の、前記基準画像以外の入力画像での対応する画素を推定する方法であって、
前記基準画像以外の入力画像の前記1画素に対応する位置から、前記基準画像の視点と前記基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで、前記1画素に対応する画素を推定するステップと、
推定された画素に対して、前記第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで、前記1画素に対応する画素を推定するステップとを備える、画像処理方法。 - コンピューターに、それぞれが共通する部分領域を有する多視点の入力画像群のうちの1つの入力画像を基準画像とし、前記基準画像上の1画素の、前記基準画像以外の入力画像での対応する画素を推定する処理を実行させるプログラムであって、
前記基準画像以外の入力画像の前記1画素に対応する位置から、前記基準画像の視点と前記基準画像以外の入力画像の視点とのなす方向に対応した方向で第1のピッチでテンプレートマッチングを行なうことで、前記1画素に対応する画素を推定するステップと、
推定された画素に対して、前記第1のピッチよりも細かい第2のピッチでテンプレートマッチングを行なうことで、前記1画素に対応する画素を推定するステップとを前記コンピューターに実行させる、画像処理プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013111822 | 2013-05-28 | ||
JP2013111822 | 2013-05-28 | ||
PCT/JP2014/063648 WO2014192642A1 (ja) | 2013-05-28 | 2014-05-23 | 画像処理装置および画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2014192642A1 true JPWO2014192642A1 (ja) | 2017-02-23 |
Family
ID=51988675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015519825A Pending JPWO2014192642A1 (ja) | 2013-05-28 | 2014-05-23 | 画像処理装置および画像処理方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2014192642A1 (ja) |
WO (1) | WO2014192642A1 (ja) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0634233B2 (ja) * | 1987-05-26 | 1994-05-02 | 株式会社安川電機 | 階層化構造的テンプレ−ト・マッチング方法 |
JP4235539B2 (ja) * | 2003-12-01 | 2009-03-11 | 独立行政法人科学技術振興機構 | 画像構成装置及び画像構成方法 |
JP2008216127A (ja) * | 2007-03-06 | 2008-09-18 | Konica Minolta Holdings Inc | 距離画像生成装置、距離画像生成方法及びプログラム |
US8395693B2 (en) * | 2007-06-28 | 2013-03-12 | Panasonic Corporation | Image pickup apparatus and semiconductor circuit element |
JP5549283B2 (ja) * | 2010-03-08 | 2014-07-16 | 株式会社リコー | 距離取得装置 |
-
2014
- 2014-05-23 WO PCT/JP2014/063648 patent/WO2014192642A1/ja active Application Filing
- 2014-05-23 JP JP2015519825A patent/JPWO2014192642A1/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2014192642A1 (ja) | 2014-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6347675B2 (ja) | 画像処理装置、撮像装置、画像処理方法、撮像方法及びプログラム | |
JP6168794B2 (ja) | 情報処理方法および装置、プログラム。 | |
US10154216B2 (en) | Image capturing apparatus, image capturing method, and storage medium using compressive sensing | |
JP6553826B1 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP5978949B2 (ja) | 画像合成装置及び画像合成用コンピュータプログラム | |
US10679326B2 (en) | Image data processing apparatus and image data processing method that determine confidence data indicating a level of confidence in a pixel value in high resolution image data | |
JP5766077B2 (ja) | ノイズ低減のための画像処理装置及び画像処理方法 | |
WO2014132754A1 (ja) | 画像処理装置および画像処理方法 | |
WO2010095460A1 (ja) | 画像処理システム、画像処理方法および画像処理プログラム | |
JP2015148532A (ja) | 距離計測装置、撮像装置、距離計測方法、およびプログラム | |
JP2014164574A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
US20150161771A1 (en) | Image processing method, image processing apparatus, image capturing apparatus and non-transitory computer-readable storage medium | |
US10204400B2 (en) | Image processing apparatus, imaging apparatus, image processing method, and recording medium | |
US10122939B2 (en) | Image processing device for processing image data and map data with regard to depth distribution of a subject, image processing system, imaging apparatus, image processing method, and recording medium | |
US11438570B2 (en) | Data processing apparatus and data processing method for generation of calibration data for performing image processing | |
WO2014077024A1 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP5587322B2 (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
Cecchetto | Correction of chromatic aberration from a single image using keypoints | |
JP6153318B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体 | |
WO2014192642A1 (ja) | 画像処理装置および画像処理方法 | |
JP7009219B2 (ja) | 画像処理方法、画像処理装置、撮像装置、画像処理プログラム、および、記憶媒体 | |
JP2010182167A (ja) | 画像処理装置および画像処理方法 | |
JP5069874B2 (ja) | レンズ調芯方法及びレンズ調芯装置 | |
JP2017108243A (ja) | 画像処理装置及び画像処理方法 | |
Salahieh et al. | Direct superresolution technique for solving a miniature multi-shift imaging system |