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

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

Info

Publication number
JP2016062447A
JP2016062447A JP2014191400A JP2014191400A JP2016062447A JP 2016062447 A JP2016062447 A JP 2016062447A JP 2014191400 A JP2014191400 A JP 2014191400A JP 2014191400 A JP2014191400 A JP 2014191400A JP 2016062447 A JP2016062447 A JP 2016062447A
Authority
JP
Japan
Prior art keywords
image
search
similarity
image processing
processing apparatus
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.)
Withdrawn
Application number
JP2014191400A
Other languages
English (en)
Inventor
基広 浅野
Motohiro Asano
基広 浅野
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2014191400A priority Critical patent/JP2016062447A/ja
Publication of JP2016062447A publication Critical patent/JP2016062447A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

【課題】画像間の対応点の探索精度を維持した状態で、対応点探索の処理速度を改善することが可能な画像処理装置を提供する。
【解決手段】画像処理装置は、基準画像50に設定される基準領域52Aと、探索画像60に設定される複数の探索領域62A,64A,66Aとの間の画像情報の類似度を初期探索プロファイル30Aとして算出する。画像処理装置は、基準画像50に設定される、基準領域52Aよりも小さいサイズの基準領域52Bと、探索画像60に設定される探索領域62B,64B,66Bとの間の画像情報の類似度を本探索プロファイル30Bとして算出する。画像処理装置は、基準画像50内の注目点52を含む基準領域52A,52Bについて算出された初期探索プロファイル30Aと本探索プロファイル30Bとを合成した結果に基づいて、注目点52の対応点を探索画像60から特定する。
【選択図】図2

Description

本開示は、互いに異なる視点から被写体を撮像する複数の撮像部を有する画像処理装置、その画像処理方法、および、その画像処理プログラムに関する。
従来、同じ被写体を異なる視点から撮像して得られた複数の画像(所謂、ステレオ画像)を用いて、被写体の各領域までの距離(以下、「被写体距離」ともいう。)を算出するための技術が開発されている。被写体距離を正確に算出するためには、ステレオ画像間で対応点を正確に探索する必要がある。そのため、近年では、ステレオ画像間で対応点を正確に探索するための技術が開発されている。
たとえば、特許文献1は、ステレオ画像に設定する窓の類似度から対応点を見つけ、被写体までの距離を求めるステレオ画像計測方法を開示している。特許文献2は、ステレオ画像対の高精度な対応点を得て、3次元情報を得ることを目的とする画像処理方法を開示している。
特開2000−295636号公報 特開平10−320561号公報
特許文献1に開示されるステレオ画像計測方法は、一方の画像に複数のサイズの窓を設定し、これらの窓の各々について最も類似する領域を他方の画像から探索する。このとき、当該ステレオ画像計測方法は、設定した窓を1画素ずつずらしながら類似度を算出する。そのため、計算量が膨大になり、処理時間が長くなる。特に、このことは、窓のサイズが大きくなるにつれて顕著になる。
特許文献2に開示される画像処理方法は、基準画像の画素ごとに最適なサイズのウィンドウを設定し、設定したウィンドウに最も類似する領域を対応画像から探索する。このとき、当該画像処理方法は、設定したウィンドウを1画素ずつずらしながら類似度を算出する。そのため、計算量が膨大になり、処理時間が長くなる。
本開示は上述のような問題点を解決するためになされたものであって、その目的は、画像間の対応点の探索精度を維持した状態で、対応点探索の処理速度を改善することが可能な画像処理装置、その画像処理方法、および、その画像処理プログラムを提供することである。
一実施の形態に従うと、画像処理装置は、被写体を撮像して得られた基準画像に設定される、所定の第1サイズを有する第1基準領域と、基準画像とは異なる視点から被写体を撮像して得られた探索画像に設定される、第1サイズを有する複数の第1探索領域との間の画像情報の類似度を第1類似度群として算出するとともに、第1基準領域を所定の画素間隔でずらして第1類似度群を繰り返して算出するための第1算出部と、基準画像に設定される、第1サイズよりも小さい第2サイズを有する第2基準領域と、探索画像に設定される、第2サイズを有する複数の第2探索領域との間の画像情報の類似度を第2類似度群として算出するとともに、所定の画素間隔よりも短い画素間隔で第2基準領域をずらして第2類似度群を繰り返して算出するための第2算出部と、基準画像内の注目点を含む第1基準領域について算出された第1類似度群と、当該注目点を含む第2基準領域について算出された第2類似度群とを合成した結果に基づいて、当該注目点の対応点を探索画像から特定するための特定部とを備える。
好ましくは、特定部は、合成対象の第1類似度群に含まれる類似度のそれぞれと、合成対象の第2類似度群に含まれる類似度のそれぞれとのうち、第1基準領域に対する第1探索領域のずれ量から特定される被写体距離と、第2基準領域に対する第2探索領域のずれ量から特定される被写体距離とが等しい第1探索領域および第2探索領域について算出された類似度同士を合成して結果を算出する。
好ましくは、特定部は、加算処理および積算処理のうちの少なくとも一方で類似度同士を合成する。
好ましくは、第1算出部は、基準画像および探索画像とは異なる視点から被写体を撮像して得られた二次探索画像に設定される、第1サイズを有する複数の探索領域および第1基準領域の間の画像情報の類似度のそれぞれと、複数の第1探索領域および第1基準領域の間の画像情報の類似度のそれぞれとを加算または積算して第1類似度群を算出する。
好ましくは、第1算出部は、第1類似度群を算出していない基準画像内の注目点に対する第1類似度群を、当該注目点の周辺の第1基準領域について算出された第1類似度群のそれぞれを用いて補間する。
好ましくは、第1算出部は、第1類似度群を算出していない基準画像内の注目点の周辺の第1基準領域について算出された第1類似度群のそれぞれを、当該注目点から当該周辺の第1基準領域のそれぞれまでの距離に応じた重みで合成することにより当該注目点に対する第1類似度群を算出する。
好ましくは、画像処理装置は、第1類似度群に含まれる類似度と、第2類似度群に含まれる類似度との少なくとも一方のうち、所定の閾値よりも低い類似度については閾値に補正するための補正部をさらに備える。
好ましくは、補正部は、第1基準領域または第2基準領域における輝度変化の度合いに応じて、第1類似度群または第2類似度群に適用する閾値を決定する。
好ましくは、輝度変化の度合いは、第1基準領域または第2基準領域における画素値の最大値と最小値との差によって示されている。
好ましくは、輝度変化の度合いは、第1基準領域または第2基準領域に微分フィルタを重畳した結果によって示されている。
好ましくは、第1類似度群および第2類似度群は、SAD(Sum of Absolute Difference)値、SSD(Sum of Squared Difference)値、NCC(Normalized Cross-Correlation)値、およびZNCC(Zero-mean Normalized Cross-Correlation)値のいずれかによって示されている。
他の実施の形態に従うと、画像処理方法は、被写体を撮像して得られた基準画像に設定される、所定の第1サイズを有する第1基準領域と、基準画像とは異なる視点から被写体を撮像して得られた探索画像に設定される、第1サイズを有する複数の第1探索領域との間の画像情報の類似度を第1類似度群として算出するとともに、第1基準領域を所定の画素間隔でずらして第1類似度群を繰り返して算出するステップと、基準画像に設定される、第1サイズよりも小さい第2サイズを有する第2基準領域と、探索画像に設定される、第2サイズを有する複数の第2探索領域との間の画像情報の類似度を第2類似度群として算出するとともに、所定の画素間隔よりも短い画素間隔で第2基準領域をずらして第2類似度群を繰り返して算出するステップと、基準画像内の注目点を含む第1基準領域について算出された第1類似度群と、当該注目点を含む第2基準領域について算出された第2類似度群とを合成した結果に基づいて、当該注目点の対応点を探索画像から特定するステップとを備える。
さらに他の実施の形態に従うと、画像処理装置を制御するための画像処理プログラムが提供される。画像処理プログラムは、画像処理装置に、被写体を撮像して得られた基準画像に設定される、所定の第1サイズを有する第1基準領域と、基準画像とは異なる視点から被写体を撮像して得られた探索画像に設定される、第1サイズを有する複数の第1探索領域との間の画像情報の類似度を第1類似度群として算出するとともに、第1基準領域を所定の画素間隔でずらして第1類似度群を繰り返して算出するステップと、基準画像に設定される、第1サイズよりも小さい第2サイズを有する第2基準領域と、探索画像に設定される、第2サイズを有する複数の第2探索領域との間の画像情報の類似度を第2類似度群として算出するとともに、所定の画素間隔よりも短い画素間隔で第2基準領域をずらして第2類似度群を繰り返して算出するステップと、基準画像内の注目点を含む第1基準領域について算出された第1類似度群と、当該注目点を含む第2基準領域について算出された第2類似度群とを合成した結果に基づいて、当該注目点の対応点を探索画像から特定するステップとを実行させる。
ある局面において、画像間の対応点の探索精度を維持した状態で、対応点探索の処理速度を改善することができる。
本発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
第1の実施の形態に従う画像処理装置から被写体の各領域までの距離を算出する処理を説明するための図である。 第1の実施の形態に従う画像処理装置の対応点探索処理を概略的に示した概念図である。 第1の実施の形態に従う画像処理装置の機能構成の一例を示すブロック図である。 初期探索処理および本探索処理を概略的に示した概念図である。 初期探索処理に用いるテンプレートの概要を示した図である。 初期探索プロファイルの算出方法を概略的に示した概念図である。 基準画像の一部分を示す部分画像を示した図である。 本探索プロファイルの算出方法を概略的に示した概念図である。 初期探索プロファイルと本探索プロファイルと合成プロファイルとの対応関係を示した図である。 補正処理を実行しない場合の本探索処理の結果を示した図である。 オクルージョン部における本探索処理の結果の一部を示した図である。 補正処理を実行した場合の本探索処理の結果を示した図である。 量子化のずれを概略的に示した概念図である。 エッジ部分に設定された基準領域に基づいた探索結果を示す図である。 閾値の決定方法を概略的に示した概念図である。 基準領域の輝度変化に応じて補正処理の閾値を変動させた場合の本探索処理の結果を示した図である。 初期探索プロファイルと本探索プロファイルと合成プロファイルとの対応関係を示した図である。 第1の実施の形態に従う画像処理装置の処理の概要を示すフローチャートである。 第1の実施の形態に従う画像処理装置の初期探索処理を示すフローチャートである。 第1の実施の形態に従う画像処理装置の本探索処理を示すフローチャートである。 第1の実施の形態に従う画像処理装置によって生成された距離画像を示す図である。 基準画像の一部分を示す部分画像に3種類のサイズの基準領域が設定されている様子を示した図である。 第4の実施の形態に従う画像処理装置によって生成された距離画像を示した図である。 第1〜第4の実施の形態に従う画像処理装置の主要なハードウェア構成を示すブロック図である。 図24に示す画像処理装置を具現化したデジタルカメラの構成を示すブロック図である。 制御プログラムをダウンロードした電子機器の構成を示すブロック図である。
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態、および/または、各変形例は、選択的に組み合わされてもよい。
<技術原理>
まず、本発明に従う各実施の形態についての理解を深めるために、図1を参照して、以下の各実施の形態に従う画像処理装置100が利用する技術原理について説明する。図1は、画像処理装置100から被写体の各領域までの距離(すなわち、被写体距離)を算出する処理を説明するための図である。
図1には、カメラ5と、カメラ6とが示されている。カメラ5およびカメラ6の視野には、被写体21が含まれている。説明を簡単にするために、被写体から焦点までの光軸方向の距離をZ(すなわち、被写体距離)と定義する。カメラ5およびカメラ6の焦点距離をfと定義する。カメラ5とカメラ6との間の距離(すなわち、基線長)をBと定義する。画像1画素当たりの長さ(すなわち、画素ピッチ(ここでは、mm))をμと定義する。カメラ5から得られた画像上の被写体21の位置と、カメラ6から得られた画像上の被写体21の位置との間の画素差(すなわち、対応点間のずれ量)を視差dと定義する。このとき、三角形の相似の関係から、以下の式(1)が成り立つ。
ここで、焦点距離f、基線長B、および画素ピッチμは、カメラの特性を示すパラメータであるため既知である。そのため、視差dが分かれば、式(1)から被写体距離Zを算出することができる。画像処理装置100は、互いに異なる視点のカメラから得られた画像間の対応点を探索することにより視差dを検出する。画像処理装置100は、検出した視差dを式(1)に代入することにより、被写体距離Zを算出できる。このように、画像処理装置100は、画像間の視差dを用いて、被写体距離Zを算出することで、被写体の各領域までの距離を示した距離画像を得ることができる。
なお、画像処理装置100は、距離画像を生成するのみではなく、他の用途でも用いられ得る。たとえば、画像処理装置100は、対応点間の視差d(すなわち、対応点間のずれ量)を利用した超解像処理を実行することで、高解像度画像を生成してもよい。
<第1の実施の形態>
[概要]
図2を参照して、第1の実施の形態に従う画像処理装置100が実行する対応点探索処理について説明する。図2は、画像処理装置100の対応点探索処理を概略的に示した概念図である。
図2には、画像処理装置100が互いに異なる視点から被写体を撮影して得られた基準画像50と探索画像60とが示されている。画像処理装置100は、互いに異なる視点から被写体を撮像するため、基準画像50と探索画像60との間には視差が生じる。この視差は、前述の式(1)からも分かるように、被写体までの距離によって変わる。そのため、基準画像50の各画素と探索画像60の対応点との間のずれ量(すなわち、視差)は、基準画像50の画素ごとに変わる。画像処理装置100は、基準画像50の各画素と探索画像60の対応点との間のずれ量を算出するために、基準画像50の各画素の対応点を探索画像60から探索する。
より具体的な処理として、画像処理装置100は、大まかに対応点を探索する初期探索と、詳細に対応点を探索する本探索との少なくとも2段階で対応点を探索し、これらの探索結果を合成した結果に基づいて、基準画像50の各画素の対応点を探索画像60から特定する。以下では、初期探索処理の概要、本探索処理の概要、および、対応点の特定方法の概要について順に説明する。
(初期探索処理の概要)
画像処理装置100は、初期探索時においては、本探索時よりも大きいサイズの基準領域を設定して、探索画像上で基準領域に類似する領域を探索することにより対応点の探索を行なう。仮に、基準画像50の輝度変化が少ない均一部分や繰り返し部分に小さいサイズの基準領域を設定して対応点探索処理が行なわれると、当該部分の周囲においても輝度変化が少ない部分や繰り返し部分が続いている可能性が高いため、探索画像60内で類似する領域が多く検出される可能性が高い。しかしながら、画像処理装置100は、初期探索処理においては大きいサイズの基準領域を設定することで、輝度変化が少ない部分や繰り返し部分についての対応点を正確に検出することができる。
図2を参照して、具体例を挙げて初期探索処理を説明する。画像処理装置100は、所定のサイズ(たとえば、101×101画素)を有する基準領域52Aを基準画像50に設定する。このとき、画像処理装置100は、本探索時よりも大きいサイズの基準領域52Aを設定する。画像処理装置100は、設定した基準領域52Aに含まれる画像情報をテンプレートとして、テンプレートに類似する画像情報を有する領域をテンプレートマッチングにより探索画像60上で探索する。画像情報は、たとえば、画素値、その他の特徴量を含む。図2においては、画像処理装置100は、基準領域52Aと同じサイズを有する探索領域62A,64A,66Aを探索画像60に設定し、基準領域52Aと探索領域62A,64A,66Aの各々との間の画像情報の類似度を類似度群(第1類似度群)として算出する。以下では、この類似度群を「初期探索プロファイル」とも称する。すなわち、初期探索プロファイルは、1つの基準領域と複数の探索領域との間の類似度の集合を含む。画像処理装置100は、基準領域52Aを所定の画素間隔51A(たとえば、101×101画素間隔)でずらして繰り返して初期探索プロファイルを算出する。
図2に示される初期探索プロファイル30Aは、基準領域52Aと探索領域62A,64A,66Aとの間のテンプレートマッチングの結果を示したものである。ここで、探索領域62A,64A,66Aは、エピポールラインに沿って順次探索を行なう画素位置であり、初期探索プロファイル30Aの横軸は、ずれ量から特定される被写体距離の逆数(1/Z)にあたる。より具体的には、初期探索プロファイル30Aの類似度32Aは、基準領域52Aと探索領域62Aとの間のテンプレートマッチングの結果である。初期探索プロファイル30Aの類似度34Aは、基準領域52Aと探索領域64Aとの間のテンプレートマッチングの結果である。初期探索プロファイル30Aの類似度36Aは、基準領域52Aと探索領域66Aとの間のテンプレートマッチングの結果である。類似度32A,34A,36Aは、たとえば、SAD値(Sum of Absolute Difference)として示される。SAD値は、画像間の画像情報が類似するほど小さくなる。SAD値の詳細については後述する。
(本探索処理の概要)
画像処理装置100は、本探索処理においては、初期探索処理よりも小さいサイズの基準領域52Bを設定して、対応点の探索を行なう。たとえば、画像処理装置100は、3×3画素の小さいサイズで基準領域を設定しテンプレートマッチングを行なうことで、近景と遠景の接する距離の大きく変化する領域でも距離を間違える可能性を減らすことができる。
図2を参照して、具体例を挙げて本探索処理を説明する。画像処理装置100は、本探索時においては、初期探索時よりも小さいサイズ(たとえば、3×3画素)を有する基準領域52Bを基準画像50に設定する。画像処理装置100は、基準領域52Bに含まれる画像情報(たとえば、画素値)をテンプレートとして、テンプレートに類似する画像情報を有する領域をテンプレートマッチングにより探索画像60上で探索する。図2に示される例においては、画像処理装置100は、基準領域52Bと同じサイズを有する探索領域62B,64B,66Bを探索画像60に設定し、基準領域52Bと探索領域62B,64B,66Bの各々との間の画像情報の類似度を類似度群(第2類似度群)として算出する。以下では、この類似度群を「本探索プロファイル」とも称する。すなわち、本探索プロファイルは、1つの基準領域と複数の探索領域との間の類似度の集合を含む。画像処理装置100は、画素間隔51Bで基準領域52Bをずらして繰り返して本探索プロファイルを算出する。このとき、本探索時の画素間隔51Bは、初期探索時の画素間隔51Aよりも短く(たとえば1×1画素間隔、すなわち全画素に)設定される。
図2に示される本探索プロファイル30Bは、基準領域52Bと探索領域62B〜66Bとの間のテンプレートマッチングの結果を示したものである。より具体的には、本探索プロファイル30Bの類似度32Bは、基準領域52Bと探索領域62Bとの間のテンプレートマッチングの結果である。本探索プロファイル30Bの類似度34Bは、基準領域52Bと探索領域64Bとの間のテンプレートマッチングの結果である。本探索プロファイル30Bの類似度36Bは、基準領域52Bと探索領域66Bとの間のテンプレートマッチングの結果である。類似度32B,34B,36Bは、たとえば、SAD値として示される。SAD値の詳細については後述する。
(対応点の特定方法の概要)
画像処理装置100は、基準画像50の注目点52を含む基準領域52Aについて算出された初期探索プロファイル30Aと、同一の注目点52を含む基準領域52Bについて算出された本探索プロファイル30Bとを合成した結果(合成プロファイル40)に基づいて、注目点52の対応点を探索画像60から特定する。合成プロファイル40は、たとえば、初期探索プロファイル30Aの類似度32A,34A,36Aのそれぞれと、本探索プロファイル30Bの類似度32B,34B,36Bのそれぞれとを加算または積算することにより生成される。
このとき、画像処理装置100は、合成対象の初期探索プロファイル30Aに含まれる類似度32A,34A,36Aのそれぞれと、合成対象の本探索プロファイル30Bに含まれる類似度32B,34B,36Bのそれぞれとのうち、基準領域52Aに対する探索領域62A,64A,66Aのずれ量から特定される被写体距離と、基準領域52Aに対する探索領域62A,64A,66Aのずれ量から特定される被写体距離とが等しい探索領域について算出された類似度同士を合成して、合成プロファイル40を生成する。基準領域と探索領域とのずれ量は、たとえば、基準領域の中心点と探索領域の中心点との間の画素差で示される。被写体距離は、上述のとおり、ずれ量を用いて式(1)から特定される。
図2に示される例においては、基準領域52Aに対する探索領域62Aのずれ量から特定される被写体距離と、基準領域52Bに対する探索領域62Bのずれ量から特定される被写体距離とが等しいので、画像処理装置100は、探索領域62A,62Bについて算出された類似度32A,32Bを互いに合成し、合成プロファイル40の類似度42を算出する。基準領域52A,52Bに対する探索領域62Aのずれ量は、基準領域52A,52Bの中心点(図示しない)と、探索領域62A,62Bの中心点62A1,62B1との間の距離で示される。
同様に、基準領域52Aに対する探索領域64Aのずれ量から特定される被写体距離と、基準領域52Bに対する探索領域64Bのずれ量から特定される被写体距離とが等しいので、画像処理装置100は、探索領域64A,64Bについて算出された類似度34A,34Bを互いに合成し、合成プロファイル40の類似度44を算出する。基準領域52A,52Bに対する探索領域64Aのずれ量は、基準領域52A,52Bの中心点(図示しない)と、探索領域64A,64Bの中心点64A1,64B1との間の距離で示される。
同様に、基準領域52Aに対する探索領域66Aのずれ量から特定される被写体距離と、基準領域52Bに対する探索領域66Bのずれ量から特定される被写体距離とが等しいので、画像処理装置100は、探索領域66A,66Bについて算出された類似度36A,36Bを互いに合成し、合成プロファイル40の類似度46を算出する。基準領域52A,52Bに対する探索領域66Aのずれ量は、基準領域52A,52Bの中心点(図示しない)と、探索領域66A,66Bの中心点66A1,66B1との間の距離で示される。
画像処理装置100は、合成プロファイル40において類似度が最大となる探索領域、すなわち、SAD値が最小となる探索領域の中心点を注目点52の対応点として特定する。図2の例においては、探索領域66A,66Bに対して算出された類似度46が最小値となるので、画像処理装置100は、探索領域66A,66Bの中心点である画素66を注目点52の対応点として特定する。
画像処理装置100は、上述の処理を基準画像50の各画素について繰り返し実行し、基準画像50の各画素の対応点を特定する。画像処理装置100は、特定した画像間の対応点間のずれ量(すなわち、視差)から被写体の各領域までの距離を示した距離画像を生成する。
以上のようにして、本実施の形態に従う画像処理装置100は、輝度変化が少ない均一部分や繰り返し部分については、初期探索処理により対応点の探索精度を向上させることができる。また、画像処理装置100は、近景と遠景の接する距離の大きく変化する部分については、本探索処理により対応点の探索精度を向上させることができる。画像処理装置100は、初期探索処理と本探索処理との両方の利点を取り入れることにより、被写体距離を正確に特定することが可能になる。
また、一般的に、テンプレートサイズが大きくなると計算量が膨大になる。画像処理装置100は、初期探索時においては、大きいサイズの基準領域をテンプレートとするが、本探索時よりも広い画素間隔で基準領域をずらしながらテンプレートマッチングを実行するので、初期探索時の計算量は、それほど増加しない。このように、基準領域のサイズに応じて画素間隔が決定されることで、画像処理装置100は、初期探索処理を実行したとしても高速に処理することができる。
[機能構成]
図3を参照して、第1の実施の形態に従う画像処理装置100の機能構成について説明する。図3は、画像処理装置100の機能構成の一例を示すブロック図である。画像処理装置100は、後述する画像処理部200を含む。画像処理部200は、第1算出部210と、第2算出部220と、特定部230とを含む。特定部230は、合成部232と、生成部234とを有する。
第1算出部210は、上述の初期探索処理を実行する。すなわち、第1算出部210は、所定のサイズを有する基準領域52A(図3参照)を基準画像50に設定し、基準領域52Aと同サイズの複数の探索領域を探索画像60に設定する。第1算出部210は、設定した基準領域52Aと複数の探索領域の各々との間の画像情報の類似度を初期探索プロファイル30A(図3参照)として算出する。第1算出部210は、基準領域52Aを所定の画素間隔でずらして初期探索プロファイル30Aを繰り返して算出する。
第2算出部220は、上述の本探索処理を実行する。すなわち、第2算出部220は、基準領域52Aよりもサイズが小さい基準領域52B(図3参照)を基準画像50に設定し、基準領域52Bと同サイズの複数の探索領域を探索画像60に設定する。第2算出部220は、設定した基準領域52Bと探索領域62B,64B,66Bとの間の画像情報の類似度を本探索プロファイル30B(図3参照)として算出する。第2算出部220は、初期探索処理よりも短い画素間隔で基準領域52Bをずらして第2類似度群を繰り返して算出する。
合成部232は、基準画像50内の注目点52(図3参照)を含む基準領域52Aについて算出された初期探索プロファイル30Aと、当該注目点52を含む基準領域52Bについて算出された本探索プロファイル30Bとを合成して、合成プロファイル40(図3参照)を生成する。たとえば、合成部232は、合成対象の初期探索プロファイル30Aに含まれる類似度のそれぞれと、合成対象の本探索プロファイル30Bに含まれる類似度のそれぞれとを加算または積算して合成プロファイル40を算出する。
生成部234は、合成プロファイル40に基づいて、注目点52の対応点を探索画像60から決定し、距離画像を生成する。より具体的には、生成部234は、合成プロファイル40において類似度が最大になる探索領域の中心点を注目点52の対応点として決定するとともに、対応点間のずれ量から被写体距離を算出し(前述の式(1)参照)、基準画像50の各画素についての被写体距離を含んだ距離画像を生成する。
[初期探索処理および本探索処理の共通処理]
図4〜図7を参照して、初期探索処理および本探索処理における共通処理について説明する。図4は、初期探索処理および本探索処理を概略的に示した概念図である。
画像処理装置100は、アレイカメラとして構成される。すなわち、画像処理装置100は、少なくとも2つのカメラによって構成される。これらのカメラは、一体的に構成されてもよいし、別々に構成されてもよい。一例として、画像処理装置100は、図4に示されるように、9つのモノクロのカメラ1〜9によって構成される。
画像処理装置100は、カメラ1〜9のそれぞれから得られた画像のうち、1枚の画像を基準画像として決定する。好ましくは、画像処理装置100は、より中心に設けられているカメラから得られた画像を基準画像として採用する。これにより、画像処理装置100は、基準のレンズに対して様々な方向に設けられているカメラからの画像を用いて対応点探索を行なうことができ、対応点の探索精度を向上させることができる。
図4の例においては、画像処理装置100は、カメラ5から得られた画像を基準画像(すなわち、基準画像50)とする。また、画像処理装置100は、他のカメラ1〜4,6〜9から得られた画像を探索画像とする。画像処理装置100は、基準画像50の各画素の対応点を各探索画像から探索する。以下では、画像処理装置100が、基準画像50の画素53の対応点を、カメラ3から得られた探索画像30から探索する例について説明する。
対応点の探索範囲は、カメラの相対的な位置関係から限定され得る。すなわち、探索点は、所謂、エピポールライン上に存在するので、対応点の探索範囲は、エピポールライン上に限定される。好ましくは、対応点の探索範囲は、被写体が無限遠にある場合の画素53に対応する画素31から、被写体が所定距離(=Zm)にある場合の画素53に対応する画素33までの間(すなわち、エピポールライン35上)にさらに限定される。これにより、特定部230は、対応点探索にかかる時間を短縮することができる。なお、対応点の探索範囲は、探索画像内のエピポールライン上の全領域であってもよい。
画像処理装置100は、画素53から所定範囲の画像情報をテンプレートとして、当該テンプレートに類似する画像情報を有する画素を探索画像30内のエピポールライン35上で探索する。このとき、画像処理装置100は、初期探索時には、より大きいサイズ(たとえば、101×101画素)のテンプレートを設定し、本探索時には、より小さいサイズ(たとえば、3×3画素)のテンプレートを設定する。対応点の探索方法は、たとえば、画像間の類似度を算出するSADによって行なう。SAD値は、以下の式(2)により算出される。SAD値は、式(2)から、類似度が高いほど小さくなる。
ここで、前述の式(1)を変形すると下記の式(3)となる。
式(3)により、被写体距離Zの逆数(=1/Z)は、視差d(対応点探索時の画素ずらし量)に比例する。すなわち、視差dは、被写体距離Zに対応した値である。このため、画素53から視差dの位置を中心とした画像30内の領域のSAD値は、横軸を被写体距離の逆数(=1/Z)で正規化することができる。このことに着目して、画像処理装置100は、画素53の対応点を探索画像30内のエピポールライン35上で探索して、被写体距離の逆数(=1/Z)の位置におけるSAD値を算出する。
グラフ111は、画素53に対する、カメラ1によって生成された探索画像において、画素53に対するエピポールラインを探索した結果である。グラフ113は、カメラ2によって生成された探索画像において、画素53に対するエピポールラインを探索した結果である。同様に、画像処理装置100は、他のカメラによって生成された探索画像のそれぞれについてエピポールライン上を探索した結果を生成する。
各探索画像のエピポールライン上の探索結果(すなわち、SAD値)は、被写体距離の逆数で正規化されているため、足し合わせられ得る。特定部230は、各探索結果を加算または積算する。図4のグラフ120は、その結果である。グラフ120は、初期探索においては、初期探索プロファイル30A(図2参照)として示され、本探索においては、本探索プロファイル30B(図2参照)として示される。
[初期探索処理の詳細]
(初期探索処理に用いるテンプレート)
図5を参照して、画像処理装置100が初期探索時に用いるテンプレートについて説明する。図5は、初期探索処理に用いるテンプレートの概要を示した図である。
画像処理装置100は、上述したように、基準画像50(図2参照)に対して基準領域52Aを設定し、基準領域52A内の画像情報をテンプレートとして初期探索を行なう。このとき、画像処理装置100は、基準領域52Aに含まれる全ての画像情報(たとえば、画素値)を用いてテンプレートマッチングを行なってもよいし、一部の画像情報を用いてテンプレートマッチングを行なってもよい。
図5に示されるように、基準領域52Aのサイズが101×101画素である場合には、画像処理装置100が基準領域52Aの全ての画像情報を用いて初期探索を行なうと、画像処理装置100は、101×101画素=10201画素分の計算を行なわなければならず、計算量が多くなる(前述の式(2))。そのため、処理速度が重視される場合には、画像処理装置100は、基準領域52Aの一部の画像情報を用いる方が好ましい。この場合、画像処理装置100は、図5に示されるように、基準領域52Aにおいて所定の画素間隔で画素値を抽出して、抽出した画像情報をテンプレートとする。画像処理装置100が、縦横5画素ごとに画素値を抽出した場合には、画像処理装置100は、21×21画素=441画素分の計算量でSAD値を算出できる。これにより、画像処理装置100は、計算量を削減することができる。
(初期探索プロファイルの算出方法)
図6を参照して、初期探索プロファイルの算出方法の詳細について説明する。図6は、初期探索プロファイルの算出方法を概略的に示した概念図である。図6には、カメラ5(図4参照)によって生成された基準画像50と、基準画像50の一部分を拡大した部分画像55とが示されている。
上述したように、画像処理装置100は、基準領域52Aを所定の画素間隔51Aでずらして繰り返して初期探索プロファイルを算出する(図2参照)。画素間隔51Aは、基準領域のサイズに応じて設定される。一例として、基準領域のサイズが大きいほど、画素間隔51Aは長くなり、基準領域のサイズが小さいほど、画素間隔51Aは短くなる。画像処理装置100は、本探索時の画素間隔よりも長い画素間隔で基準領域をずらしながら初期探索を行なうので、計算量を削減することができ、処理速度が改善される。
たとえば、図6に示されるように、基準領域のサイズが101×101画素である場合には、画素間隔51Aは、基準領域の縦または横の長さと同じ101画素に設定される。図6には、101画素間隔で設定された基準領域52C〜52Eが示されている。また、図6には、カメラ5によって生成された基準画像50内の基準領域52Aと、カメラ5の周辺のカメラ1〜4,6〜8(図4参照)によって生成された8枚の探索画像とのテンプレートマッチングの結果39A(すなわち、SAD値)が示されている。画像処理装置100は、これらのテンプレートマッチングの結果を加算または積算することにより、初期探索プロファイル30Aを生成する。
このとき、画像処理装置100は、類似度が極端に低い(すなわち、SAD値が極端に高い)特定の結果に影響されて対応点を誤って検出することを防止するために、好ましくは、テンプレートマッチングの結果を補正した上で、初期探索プロファイル30Aを生成する。より具体的には、画像処理装置100は、所定の閾値よりも低い類似度(すなわち、所定の閾値よりも高いSAD値)については当該閾値に補正する。閾値は、たとえば、基準領域内において初期探索に用いた画素数に所定値(たとえば、10)を積算して算出される。一例として、図5に示される基準領域52Aにおいては初期探索に用いる画素数が、21×21画素=441画素であるので、閾値は、441画素に所定値「10」を積算した「4410」となる。
図6に示される例では、画像処理装置100は、テンプレートマッチングの結果39Aに示される類似度のうち、閾値「4410」を超えたものについては、閾値「4410」に補正する。画像処理装置100は、このように補正処理を実行した上で、8枚の探索画像とのテンプレートマッチングの結果を加算または積算し、探索画像の数で除算することにより初期探索プロファイル30Aを算出する。
(初期探索時における補間処理)
図7を参照して、初期探索プロファイルの補間処理について説明する。図7は、基準画像50の一部分を示す部分画像56を示した図である。部分画像56には、初期探索時に画像処理装置100によって設定された基準領域52A,52G〜52Iが示されている。画素53Aは、基準領域52Aを設定するための基準点であり、典型的には、基準領域52Aの中心点である。画素53Gは、基準領域52Gを設定するための基準点であり、典型的には、基準領域52Gの中心点である。画素53Hは、基準領域52Hを設定するための基準点であり、典型的には、基準領域52Hの中心点である。画素53Iは、基準領域52Iを設定するための基準点であり、典型的には、基準領域52Iの中心点である。
上述したように、画像処理装置100は、設定した基準領域52Aを所定の画素間隔でずらして繰り返して初期探索を実行する。図7の例においては、画像処理装置100は、基準領域52A,52G〜52Iのそれぞれについて初期探索を実行する。画像処理装置100は、所定の画素間隔で初期探索を実行するので、設定した基準領域の間の領域に対しては初期探索が実行されず、この領域については初期探索プロファイルが算出されない。そのため、画像処理装置100は、初期探索プロファイルを算出していない注目点に対する初期探索プロファイルを、注目点の周辺の基準領域に対して算出された初期探索プロファイルを用いて補間する。注目点に対する初期探索プロファイルの補間方法としては、様々な方法が考えられる。以下では、図7を参照して、注目点52に対する初期探索プロファイルの補間方法について説明する。
画像処理装置100は、注目点52に対する初期探索プロファイルを、注目点52の周辺の基準領域について算出された初期探索プロファイルのそれぞれを用いて補間する。たとえば、画像処理装置100は、注目点52の近傍の4つの基準領域52A,52G〜52Iについて算出された初期探索プロファイルを用いる。一例として、画像処理装置100は、注目点52の周辺領域である基準領域52A,52G〜52Iの初期探索プロファイルの平均を注目点52についての初期探索プロファイルとして算出する。
他の方法として、画像処理装置100は、注目点52の周辺の基準領域52A,52G〜52Iについて算出された初期探索プロファイルのそれぞれを、注目点52から基準領域52A,52G〜52Iのそれぞれまでの距離に応じた重みで合成することにより注目点52に対する初期探索プロファイルを算出する。より具体的な処理として、画像処理装置100は、注目点52から、基準領域52A,52G〜52Iの中心点である画素53A,53G〜53Iのそれぞれまでの距離(画素距離)を算出する。このとき、画像処理装置100は、算出した距離が短いほど大きな重みを付す。画像処理装置100は、基準領域の初期探索プロファイルのそれぞれに重みを積算した上で、初期探索プロファイルのそれぞれを加算する。これにより、画像処理装置100は、注目点52に対する初期探索プロファイルを、より正確に補間することができる。その結果、画像処理装置100は、対応点の探索精度をより向上させることができる。
さらに他の方法として、画像処理装置100は、注目点52を含む基準領域52Aに対して算出した初期探索プロファイルを、注目点52に対する初期探索プロファイルとしてそのまま流用してもよい。
[本探索処理の詳細]
図8を参照して、本探索プロファイルの算出方法の詳細について説明する。図8は、本探索プロファイルの算出方法を概略的に示した概念図である。図8には、カメラ5(図4参照)によって生成された基準画像50の一部分を拡大した部分画像55が示されている。
上述したように、画像処理装置100は、初期探索時よりも短い画素間隔で基準領域52Bをずらして繰り返して本探索プロファイルを算出する(図2参照)。典型的には、画像処理装置100は、対応点を探索する対象となる画素に応じて、基準領域52Bをずらす画素間隔を決定する。たとえば、基準画像50の全画素が探索対象である場合には、画像処理装置100は、基準領域52Bを1画素ずつずらしながら本探索処理を行なう。基準画像50の1画素間隔の画素が探索対象である場合には、画像処理装置100は、基準領域52Bを2画素ずつずらしながら本探索処理を行なう。
図8には、3×3画素の基準領域52Bが部分画像55に設定されている例が示されている。また、図8には、カメラ5によって生成された基準画像50内の基準領域52Bと、カメラ5の周辺のカメラ1〜4,6〜8(図4参照)によって生成された8枚の探索画像とのテンプレートマッチングの結果39B(すなわち、SAD値)が示されている。画像処理装置100は、これらのテンプレートマッチングの結果を加算または積算することにより、本探索プロファイル30Bを生成する。
このとき、画像処理装置100は、類似度が極端に低い(すなわち、SAD値が極端に高い)特定の結果に影響されて対応点を誤って検出することを防止するために、好ましくは、テンプレートマッチングの結果を補正した上で、本探索プロファイル30Bを生成する。すなわち、画像処理装置100は、所定の閾値よりも低い類似度(すなわち、所定の閾値よりも高いSAD値)については当該閾値に補正する。閾値は、たとえば、基準領域52B内において本探索に用いた画素数に所定値(たとえば、10)を積算して算出される。図8に示される例においては、本探索処理に用いる基準領域52Aの画素数が、3×3画素=9画素であるので、9画素に所定値「10」を積算した「90」が閾値となる。
画像処理装置100は、テンプレートマッチングの結果39Bに示される類似度のうち、閾値「90」を超えたものについては、閾値「90」に補正する。画像処理装置100は、このように補正処理を実行した上で、8枚の探索画像とのテンプレートマッチングの結果を加算または積算し、探索画像の数で除算することにより本探索プロファイル30Bを算出する。図8には、テンプレートマッチングの結果を加算した場合の例が示されている。本探索処理における補正処理のさらに詳細については後述する。
[被写体距離の特定(対応点の特定)]
図9を参照して、初期探索プロファイルおよび本探索プロファイルを合成する方法と、合成プロファイルから被写体距離を特定する方法(対応点を特定する方法)とについて説明する。なお、式(1)からも分かるように、被写体距離を特定することは、基準画像と探索画像との間の対応点を特定することと同意である。このため、以下では、被写体距離を特定する方法について説明し、対応点を特定する方法については説明を繰り返さない。
図9は、初期探索プロファイル30Aと、本探索プロファイル30Bと、合成プロファイル40との対応関係を示した図である。初期探索プロファイル30Aは、図6に示される注目点52を含む基準領域52Aについての初期探索結果である。本探索プロファイル30Bは、図8に示される注目点52を含む基準領域52Bについての本探索結果である。合成プロファイル40は、初期探索プロファイル30Aと本探索プロファイル30Bとを合成(たとえば、加算または積算)した結果である。初期探索プロファイル30Aと本探索プロファイル30Bとの合成比は、任意である。たとえば、初期探索プロファイル30Aと本探索プロファイル30Bとは、2:1で合成されもよいし、1:1で合成されてもよい。図8に示される合成プロファイル40は、初期探索プロファイル30Aと本探索プロファイル30Bとを2:1で加算した結果である。
初期探索プロファイル30Aと本探索プロファイル30Bとのより具体的な合成方法について説明する。図9に示されるように、初期探索プロファイル30Aは、基準領域に対する探索領域のずれ量(すなわち、被写体距離1/Z)と、基準領域および探索領域の間の画像情報の類似度との対応関係を示す。同様に、本探索プロファイル30Bは、基準領域に対する探索領域のずれ量(すなわち、被写体距離1/Z)と、基準領域および探索領域の間の画像情報の類似度との対応関係を示す。画像処理装置100は、初期探索プロファイル30Aに含まれる類似度のそれぞれと、本探索プロファイル30Bに含まれる類似度のそれぞれとのうち、同一のずれ量について対応付けられている類似度同士を合成する。
画像処理装置100は、生成した合成プロファイル40に基づいて、注目点52に対する被写体距離を特定する。より具体的には、画像処理装置100は、図9に示されるように、合成プロファイル40において類似度が最大(すなわち、SAD値が最小)になる被写体距離Zを注目点52における被写体距離として特定する。
なお、図6および図8に示されるように、注目点52の周辺は、輝度変化が少ない均一色の領域である。そのため、画像処理装置100は、基準領域のサイズを小さく設定する本探索処理においては、輝度変化が少ない同じような領域を対応点の候補として検出してしまい、本探索プロファイル30Bでは類似度(SAD値)に差がほとんど出ていない。
しかしながら、基準領域のサイズを大きく設定した探索結果である初期探索プロファイル30Aにおいては、注目点52の周辺の輝度変化がある部分まで含んで、対応点の探索を行なうため、類似度(SAD値)に差が出ている。これにより、画像処理装置100は、初期探索においては対応点の候補を一つに絞ることができる。このように、本探索処理が苦手とする輝度変化が少ない部分についての探索精度は、初期探索処理により補うことができる。なお、図9の例とは異なるが、初期探索処理が苦手とする距離変化があり隠れの発生するオクルージョン領域についての探索精度は、本探索処理により補うことができる。
[本探索時における類似度の補正処理の詳細]
(本探索時における補正処理の利点)
図10〜図12を参照して、本探索時における類似度の補正処理の利点について説明する。図10は、補正処理を実行しない場合の本探索処理の結果を示した図である。図10には、カメラ5(図4参照)によって生成された基準画像50の部分画像55が示されている。また、図10には、部分画像55に設定された基準領域52Jを基準として、カメラ1〜4,6〜9(図4参照)によって生成された8枚の探索画像のそれぞれを本探索した結果39Cが示されている。さらに、図10には、結果39Cを合成した本探索プロファイル30Cが示されている。
画像処理装置100は、同じ被写体を異なる視点から撮像するため、手前にある物体が背後にある物体を隠してしまい、その隠れた部分については一部のカメラの視野に含まれないことがある(所謂、オクルージョン)。図10においては、ホワイトボードとカーテンとの境目付近がオクルージョン部となる。画像処理装置100が、このオクルージョン部に設定した基準領域52Jと8枚の探索画像との本探索処理を実行したとする。
オクルージョン部に設定された基準領域52Jの画像情報は、他のカメラから得られた探索画像の一部には含まれていない可能性がある。そのため、オクルージョン部における本探索の結果は、類似度が低くなることが多い。このことに起因して、図10に示される本探索プロファイル30Cにおいては、正解部分と他の部分とで類似度(すなわち、SAD値)に差が出ていない。
図11を参照して、類似度に差が出ていない理由についてさらに詳細に説明する。図11は、オクルージョン部における本探索処理の結果の一部を示した図である。
図11には、カメラ5によって生成された基準画像50の一部分を示す部分画像55と、カメラ3によって生成された探索画像の一部分を示す部分画像57と、カメラ1によって生成された探索画像の一部分を示す部分画像58とが示されている。また、図11には、部分画像55の画素53Jを基準として、部分画像57のエピポールライン57Aを本探索した結果39Dと、部分画像58のエピポールライン58Aを本探索した結果39Eとが示されている。
画素53Jの周辺のオクルージョン部は、部分画像57においては写っている。そのため、部分画像57に対する探索結果である結果39Dには、画素53Jの実際の対応点である正解部分38Dにおいて類似度が高く(すなわち、SAD値が低く)なっている。一方で、画素53Jの周辺のオクルージョン部は、部分画像58においては隠れて写っていない。そのため、画素53Jの実際の対応点である正解部分38Eにおいて類似度が低く(すなわち、SAD値が高く)なっている。
結果39Dと結果39Eとがそのまま加算されると、オクルージョン部についての類似度(SAD値)が、非オクルージョン部の類似度を打ち消してしまう。画像処理装置100は、このようなオクルージョン部についての探索結果に影響されることを防止するために、本探索時における探索結果を補正する。
図12は、補正処理を実行した場合の本探索処理の結果を示した図である。上述したように、画像処理装置100は、所定の閾値よりも低い類似度(すなわち、所定の閾値よりも高いSAD値)については当該閾値に補正する。閾値は、たとえば、基準領域52J内において本探索に用いた画素数に所定値(たとえば、10)を積算して算出される。図12に示される例においては、本探索処理に用いる基準領域52Jの画素数が、3×3画素=9画素であるので、9画素に所定値「10」を積算した「90」が閾値となる。
画像処理装置100は、テンプレートマッチングの結果39Dに示される類似度のうち、閾値「90」を超えたものについては、閾値「90」に補正する。画像処理装置100は、このように補正処理を実行した上で、8枚の探索画像とのテンプレートマッチングの結果を加算または積算し、探索画像の数で除算することにより図12に示される本探索プロファイル30Dを算出する。
補正処理が実行されて生成された本探索プロファイル30D(図12)と、補正処理が実行されずに生成された本探索プロファイル30C(図10)とを比較する。本探索プロファイル30Cは、非オクルージョン部の探索結果がオクルージョン部の探索結果に影響され、画素53Jの実際の対応点である正解部分において類似度がやや低く(すなわち、SAD値がやや高く)なっている。その結果、本探索プロファイル30Cの点線部分に示されるように、2か所が正解のように見え、誤った点を対応点として探索してしまう可能性がある。これに対して、本探索プロファイル30Dは、非オクルージョン部の探索結果がオクルージョン部の探索結果に影響をそれほど与えないため、画素53Jの実際の対応点である正解部分において類似度が高く(すなわち、SAD値が低く)なっている。このように、画像処理装置100は、補正処理を実行することで、誤った対応点を候補とする確率を下げることができる。
(本探索時における補正処理の変形例)
図13〜図17を参照して、本探索時における補正処理の変形例について説明する。上述の探索結果の補正処理においては、補正処理時の閾値が一定であった。これに対して、本変形例では、補正処理時の閾値は、基準領域の画像情報に応じて変わる。以下では、補正時における閾値の決定方法について説明する。
まず、図13を参照して、小さいサイズの基準領域をエッジ部分に設定した場合に生じる問題点について説明する。図13は、量子化のずれを概略的に示した概念図である。より具体的には、図13には、カメラ5によって生成された基準画像の基準領域52K付近を拡大した拡大画像71と、カメラ1によって生成された探索画像の基準領域52K付近を拡大した拡大画像72とが示されている。また、図13には、拡大画像71と拡大画像72とのX方向における輝度変化を示すグラフ73が示されている。
被写体の色変化は、実世界では連続している。これに対して、カメラは、受光素子が受けた光を量子化することによって、被写体を画素値で離散的に表現する。このことに起因して、被写体の同じ個所であっても画像間で画素値に違いが生じることがある。この違いは、輝度変化が大きいエッジ部分について特に顕著に表れる。たとえば、図13に示されるように、同じエッジ部分を示す拡大画像71と拡大画像72との間においても画素値に違いが表れている(グラフ73参照)。このような量子化位置のサブピクセルのずれが、対応点の探索処理の精度に影響を与えることがある。特に、量子化のずれの影響は、本探索時のような小さいサイズの基準領域をエッジ部分に設定して対応点探索を行なう場合に顕著に表れる。
図14を参照して、量子化のずれが探索結果に影響を与えている具体例について説明する。図14は、エッジ部分に設定された基準領域に基づいた探索結果を示す図である。より具体的には、図14には、カメラ5(図4参照)によって生成された基準画像50の部分画像55が示されている。また、図14には、部分画像55のエッジ部分に設定された基準領域52Kを基準として、カメラ1〜4,6〜9(図4参照)によって生成された8枚の探索画像のそれぞれを本探索した結果39Fが示されている。さらに、図14には、結果39Fを合成した本探索プロファイル30Fが示されている。
本探索プロファイル30Fの正解部分38Fでは、量子化のずれに起因して、実際の対応点位置の類似度が閾値を上回っている(すなわち、SAD値が閾値を下回っている)。このように輝度変化が大きい部分についての類似度が閾値を超えることを防止するために、画像処理装置100は、基準領域における輝度変化の度合いに応じて、本探索結果に適用する閾値を変える。
この閾値の決定方法は、様々な方法が考えられる。以下では、図15を参照して、閾値の決定方法の一例について説明する。図15は、閾値の決定方法を概略的に示した概念図である。より具体的には、図15には、部分画像55から生成された輝度差画像55Aが示されている。また、図15には、輝度差と閾値との対応関係74が示されている。
画像内の輝度変化の度合いは、たとえば、基準領域における画素値の最大値と最小値との差によって示される。すなわち、画像処理装置100は、基準画像の輝度変化を特定するために、設定した基準領域ごとに画素値の最大値と最小値との差を算出し、輝度差画像55Aを生成する。これにより、輝度差画像55Aにおいて、部分画像55のエッジ部分が強調される。画像処理装置100は、算出した輝度変化の度合いに応じて補正処理に適用する閾値を決定する。典型的には、画像処理装置100は、輝度変化の度合いと閾値との対応関係74に基づいて補正処理に適用する閾値を決定する。すなわち、画像処理装置100は、設定した基準領域ごとに補正処理において適用する閾値を変える。このとき、画像処理装置100は、輝度差が大きい部分ほど閾値を高く設定する。
なお、画像内の輝度変化の度合いは、基準領域に微分フィルタを重畳した結果によって示されてもよい。すなわち、画像処理装置100は、基準画像の輝度変化を特定するために、設定した基準領域ごとに微分フィルタを重畳して輝度差画像を生成する。微分フィルタは、たとえば、1次微分フィルタ、二次微分フィルタ、ソーベルフィルタ、プリューウィットフィルタ、ラプラシアンフィルタ、または、その他の画素値の勾配を算出することが可能なフィルタを含む。微分フィルタのサイズは、任意である。たとえば、微分フィルタのサイズは、3×3画素であってもよいし、その他のサイズであってもよい。
図14および図16を参照して、閾値を一定にした場合における本探索結果(図14参照)と、設定した基準領域ごとに補正処理の閾値を変動させた場合における本探索結果(図16参照)とを比較する。図16は、基準領域の輝度変化に応じて補正処理の閾値を変動させた場合の本探索処理の結果を示した図である。
図14に示されるように、閾値が一定である場合においては、正解部分38Fであっても補正処理が実行される。これに対して、図16に示されるように、画像処理装置100は、輝度変化の度合いと閾値との対応関係74に基づいて、基準領域52K(図15参照)に閾値「450」を適用したとする。その結果、画像処理装置100は、正解部分38Fにおいては補正処理を実行せずに済み、他の部分については補正処理を実行することができる。これに伴い、本探索プロファイル30G(図16参照)の正解部分38Fにおける探索結果が、本探索プロファイル30F(図14参照)の正解部分38Fにおける探索結果よりも改善される。さらには、図17に示されるように、本探索プロファイル30Gを構成要素とする合成プロファイル40Aの結果も改善され、輝度変化が大きいエッジ部分についての対応点の探索精度が改善される。
なお、輝度変化に応じて閾値を決定する処理は、基準領域を小さく設定する本探索処理において特に有効であるが、初期探索処理に適用してもよい。すなわち、閾値の決定処理は、初期探索処理および本探索処理の少なくとも一方に適用され得る。
[フローチャート]
図18〜図20を参照して、画像処理装置100の処理手順について説明する。図18は、画像処理装置100の処理の概要を示すフローチャートである。図19は、画像処理装置100の初期探索処理を示すフローチャートである。図20は、画像処理装置100の本探索処理を示すフローチャートである。図18〜図20の処理は、後述するCPU102がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、後述の画像処理回路106、回路素子、その他のハードウェアによって実行されてもよい。
図18を参照して、ステップS100において、CPU102は、第1算出部210(図3参照)として、初期探索処理を実行する。ステップS100の初期探索処理におけるフローチャートについては図19を参照して説明する。
ステップS110において、CPU102は、本探索時よりも大きいサイズ(たとえば、101×101画素)の基準領域を基準画像に設定する。典型的には、CPU102は、本探索処理の開始時においては、基準画像の左上(すなわち、座標(0、0))に基準領域の左上が重なるように基準領域を設定する。
ステップS112において、CPU102は、設定した基準領域と同サイズの探索領域を探索画像のそれぞれに設定する。好ましくは、CPU102は、ステップS110において設定した基準領域に対応するエピポールライン上のそれぞれに探索領域を設定する。このとき、CPU102は、エピポールラインの一端である始端に探索領域を設定する。また、CPU102は、エピポールラインの他端を終端とする。
ステップS114において、CPU102は、設定した基準領域をテンプレートとして、探索領域に対してテンプレートマッチングを行なう。これにより、CPU102は、基準領域に対する探索領域の類似度を各探索画像について算出する。
ステップS116において、CPU102は、探索領域がエピポールラインの終端に位置するか否かを判断する。CPU102は、探索領域がエピポールラインの終端に位置すると判断した場合(ステップS116においてYES)、制御をステップS120に切り替える。そうでない場合には(ステップS116においてNO)、CPU102は、制御をステップS118に切り替える。
ステップS118において、CPU102は、エピポールラインの終端に向かって探索領域をずらす。ステップS118の処理が繰り返されることにより、探索領域がエピポールライン上の始端から終端まで繰り返してずらされ、ステップS114におけるテンプレートマッチング処理が繰り返される。これにより、1つの基準領域に対する各探索画像のエピポールライン上の探索結果がそれぞれ算出される。CPU102は、各探索結果を合成(たとえば、加算または積算)することにより初期探索プロファイルを生成する。
ステップS120において、CPU102は、基準領域が基準画像の端(たとえば、右下)に位置するか否かを判断する。CPU102は、基準領域が基準画像の端に位置すると判断した場合(ステップS120においてYES)、初期探索処理を終了し、制御をステップS200に切り替える。そうでない場合には(ステップS120においてNO)、CPU102は、制御をステップS122に切り替える。
ステップS122において、CPU102は、本探索時よりも長い画素間隔(たとえば、101画素間隔)で基準領域をずらす。ステップS122の処理が繰り返されることにより、CPU102は、基準画像を走査する。より具体的には、CPU102は、基準画像の左端から右端に基準領域を所定の画素間隔ずつずらす。基準領域が基準画像の右端に位置する場合には、CPU102は、基準画像の左端に基準領域を移動させるとともに、所定の画素間隔下端に向けて基準領域をずらす。これにより、設定した基準領域のそれぞれについて初期探索プロファイルが生成される。
再び図18を参照して、ステップS200において、CPU102は、第2算出部220(図3参照)として、本探索処理を実行する。ステップS200の本探索処理におけるフローチャートについては図20を参照して説明する。
ステップS210において、CPU102は、初期探索時よりも小さいサイズ(たとえば、3×3画素)の基準領域を基準画像に設定する。典型的には、CPU102は、初期探索処理の開始時においては、基準画像の左上(すなわち、座標(0、0))に基準領域の左上が重なるように基準領域を設定する。
ステップS212において、CPU102は、設定した基準領域と同サイズの探索領域を探索画像のそれぞれに設定する。好ましくは、CPU102は、基準領域に対応するエピポールライン上のそれぞれに探索領域を設定する。このとき、CPU102は、エピポールラインの一端である始端に探索領域を設定する。また、CPU102は、エピポールラインの他端を終端とする。
ステップS214において、CPU102は、設定した基準領域をテンプレートとして、探索領域に対してテンプレートマッチングを行なう。これにより、CPU102は、基準領域に対する探索領域の類似度を各探索画像について算出する。
ステップS216において、CPU102は、探索領域がエピポールラインの終端に位置するか否かを判断する。CPU102は、探索領域がエピポールラインの終端に位置すると判断した場合(ステップS216においてYES)、制御をステップS220に切り替える。そうでない場合には(ステップS216においてNO)、CPU102は、制御をステップS218に切り替える。
ステップS218において、CPU102は、エピポールラインの終端に向かって探索領域をずらす。ステップS218の処理が繰り返されることにより、探索領域がエピポールライン上の始端から終端まで繰り返してずらされ、ステップS214におけるテンプレートマッチング処理が繰り返される。これにより、1つの基準領域に対する各探索画像のエピポールライン上の探索結果がそれぞれ算出される。CPU102は、各探索結果を合成することにより1つの基準領域に対する本探索プロファイルを生成する。
ステップS220において、CPU102は、基準領域が基準画像の端(たとえば、右下)に位置するか否かを判断する。CPU102は、基準領域が基準画像の端に位置すると判断した場合(ステップS220においてYES)、本探索処理を終了し、制御をステップS300に切り替える。そうでない場合には(ステップS220においてNO)、CPU102は、制御をステップS222に切り替える。
ステップS222において、CPU102は、初期探索時よりも短い画素間隔(たとえば、3画素間隔)で基準領域をずらす。この画素間隔は、ユーザが所望する距離画像の精度(粗さ)に応じて設定される。すなわち、距離画像の精度がそれほど重要ではない場合には、画素間隔が長く設定され、距離画像の精度が重要である場合には、画素間隔が短く設定される。ステップS222の処理が繰り返されることにより、CPU102は、基準画像を走査する。より具体的には、CPU102は、基準画像の左端から右端に基準領域を所定の画素間隔ずつずらす。基準領域が基準画像の右端に位置する場合には、CPU102は、基準画像の左端に基準領域を移動させるとともに、所定の画素間隔下端に向けて基準領域をずらす。これにより、設定した基準領域のそれぞれについて本探索プロファイルが生成される。
再び図18を参照して、ステップS300において、CPU102は、特定部230(図3参照)として、基準画像内の注目点を含む基準領域について算出した初期探索プロファイルと、同じ注目点を含む基準領域について算出した本探索プロファイルとを合成した合成プロファイルを基準画像の画素ごとに生成する。CPU102は、合成プロファイルの各々について、類似度が最も高い点を特定し、特定した点を注目点の対応点として特定する。これにより、CPU102は、基準画像内の各画素の対応点を特定し、距離画像を生成する。
[小括]
図21を参照して、本実施の形態に従う対応点探索処理によって最終的に出力される距離画像について説明する。図21は、画像処理装置100によって生成された距離画像を示す図である。より具体的には、図21には、距離画像59Aと距離画像59Bとが示されている。距離画像59Aは、部分画像55に対して本探索処理のみを実行して生成されたものである。距離画像59Bは、部分画像55に対して初期探索処理と本探索処理との両方を実行して生成されたものである。距離画像59A,59Bにおいては、被写体距離が近い部分ほど白色(灰色)で示され、被写体距離が遠い部分ほど黒色で示されている。
距離画像59Aにおいては、均一色部分や繰り返し部分で被写体距離がばらついているが、距離画像59Bにおいては、均一色部分や繰り返し部分で被写体距離のばらつきが抑制されている。また、距離画像59Aにおいては、オクルージョン部において領域間違いである太りが生じているが、距離画像59Bにおいては、このような太りが抑制されている。このように、画像処理装置100は、初期探索処理を追加することで、オクルージョン部での太りを抑えつつ、均一色や繰り返し部における対応点の探索精度を向上することができる。また、初期探索処理は、所定の画素間隔でずらしながら実行されるので、計算量がそれほど増加しない。そのため、画像処理装置100は、初期探索処理を追加したとしても高速に処理することができる。
<第2の実施の形態>
図22を参照して、第2の実施の形態に従う画像処理装置100について説明する。図22は、基準画像50の一部分を示す部分画像55に3種類のサイズの基準領域が設定されている様子を示した図である。
第1の実施の形態に従う画像処理装置100は、初期探索処理と本探索処理との2段階で対応点の探索処理を実行していた。これに対して、第2の実施の形態に従う画像処理装置100は、3段階以上で対応点の探索処理を実行する。
より具体的な処理として、画像処理装置100は、追加した探索処理時には、初期探索時および本探索時とは異なるサイズで基準領域を設定する。図22に示される例においては、初期探索時において用いる基準領域52Aと、本探索時において用いる基準領域52Bとの間のサイズを有する基準領域52Lが部分画像55に設定されている。
画像処理装置100は、基準領域52Lと同サイズの探索領域を各探索画像に設定し、基準領域52Lと探索領域との間の類似度を算出するとともに、基準領域52Lを所定の画素間隔でずらして類似度を繰り返して算出する。好ましくは、基準領域52Lをずらす画素間隔は、基準領域のサイズによって決定される。図22の例においては、基準領域52Lをずらす画素間隔は、初期探索時において基準領域ずらす画素間隔と、本探索時において基準領域ずらす画素間隔との間に設定される。
画像処理装置100は、基準画像内の注目点52を含む基準領域52Aについて算出された類似度群(すなわち、初期探索プロファイル)と、同一の注目点52を含む基準領域52Bについて算出された類似度群(すなわち、本探索プロファイル)と、同一の注目点52を含む基準領域52Lとについて算出された類似度群とを合成した結果(すなわち、合成プロファイル)に基づいて、注目点52の対応点を探索画像から特定する。なお、画像処理装置100は、これらの類似度群を同じ比率で合成してもよいし、異なる比率で合成してもよい。
以上のようにして、本実施の形態に従う画像処理装置100は、3段階以上の探索処理により、対応点の探索精度をさらに向上することが可能になる。
<第3の実施の形態>
第1の実施の形態に従う画像処理装置100は、基準画像と探索画像との間の類似度をSAD値によって示していた。これに対して、第3の実施の形態に従う画像処理装置100は、基準画像と探索画像との間の類似度を他の指標で示す。たとえば、類似度は、SSD(Sum of Squared Difference)値、NCC(Normalized Cross-Correlation)値、ZNCC(Zero-mean Normalized Cross-Correlation)値、および、その他の画像情報の類似性を示す指標のいずれかによって示されてもよい。
SSD値は、以下の式(4)によって算出される。NCC値は、以下の式(5)によって算出される。ZNCC値は、以下の式(6)によって算出される。
<第4の実施の形態>
第1の実施の形態に従う画像処理装置100は、設けられている全てのカメラで生成された探索画像を用いて対応点探索処理を実行していた。これに対して、第4の実施の形態に従う画像処理装置100は、少なくとも2つのカメラによって生成される探索画像を用いて対応点探索処理を実行する。以下では、図23を参照して、第4の実施の形態に従う画像処理装置100について説明する。図23は、第4の実施の形態に従う画像処理装置100によって生成された距離画像を示した図である。
本実施の形態に従う画像処理装置100は、少なくとも2つのカメラを有する。たとえば、画像処理装置100は、2つのカメラ5,6を有する。画像処理装置100は、カメラ5によって生成された基準画像と、カメラ6によって生成された探索画像との2枚の画像の間で対応点探索処理を実行する。
図23には、距離画像59Cと距離画像59Dとが示されている。距離画像59Cは、部分画像55に対して本探索処理のみを実行して生成されたものである。距離画像59Dは、部分画像55に対して初期探索処理と本探索処理との両方を実行して生成されたものである。距離画像59C,59Dにおいては、被写体距離が近い部分ほど白色(灰色)で示され、被写体距離が遠い部分ほど黒色で示されている。
図23に示されるように、画像処理装置100が2つのカメラのみで構成されている場合であっても、初期探索処理と本探索処理との両方を実行した方が距離画像の品質が改善されている。すなわち、距離画像59Cにおいては、均一色部分や繰り返し部分で被写体距離がばらついているが、距離画像59Dにおいては、均一色部分や繰り返し部分で被写体距離のばらつきが抑制されている。また、距離画像59Cにおいては、オクルージョン部において太りが生じているが、距離画像59Dにおいては、このような太りが抑制されている。
このように、画像処理装置100が、2つのカメラのみで構成されていたとしても、初期探索処理を追加することで、オクルージョン部での太りなどの間違いを抑えつつ、均一色や繰り返し部における対応点の探索精度を向上することができる。
なお、画像処理装置100は、カメラ5,6にカメラ4をさらに追加して3つのカメラで構成されてもよい。たとえば、画像処理装置100は、カメラ5によって生成される画像を基準画像とし、カメラ4によって生成される画像を探索画像とし、カメラ6によって生成される画像を二次探索画像とする。
画像処理装置100は、基準領域と同サイズの複数の探索領域を探索画像に設定し、基準領域と複数の探索領域との間の画像情報の類似度を算出する。また、画像処理装置100は、基準領域と同サイズの複数の探索領域を二次探索画像に設定し、基準領域と複数の探索領域との間の画像情報の類似度を算出する。画像処理装置100は、探索画像について算出された類似度のそれぞれと、二次探索画像について算出された類似度のそれぞれとを加算または積算して初期探索プロファイルまたは本探索プロファイルを生成する。
<第1〜第4の実施の形態に従う画像処理装置100のハードウェア構成>
図24を参照して、第1〜第4の実施の形態に従う画像処理装置100のハードウェア構成の一例について説明する。図24は、画像処理装置100の主要なハードウェア構成を示すブロック図である。
画像処理装置100は、撮像部20と、出力部45と、画像処理部200とを含む。図24に示す画像処理装置100においては、撮像部20が被写体を撮像することで画像を取得し、取得した画像に対して前述の画像処理を行なうことで、出力画像(たとえば、距離画像)を生成する。出力部45は、出力画像を表示デバイスなどへ出力する。
撮像部20は、被写体を撮像して画像を生成する。撮像部20は、カメラ22、カメラ22に接続されたA/D(Analog to Digital)変換部29とを含む。
カメラ22は、被写体を撮像するための光学系であって、アレイカメラである。カメラ22は、所定の波長帯域の光を透過するフィルタ24と、格子状に配置された視点の異なるN個のレンズ26と、レンズ26により形成された光学像を電気信号に変換する撮像素子(イメージセンサ)28とを含む。
A/D変換部29は、撮像素子28から出力される被写体を示す電気信号(アナログ電気信号)をデジタル信号に変換して出力する。撮像部20はさらに、カメラ各部分を制御するための制御処理回路などを含み得る。
画像処理部200は、撮像部20によって取得された画像に対して、前述の画像処理を実施することで出力画像を生成する。出力部45は、画像処理部200によって生成される出力画像を表示デバイスなどへ出力する。
[画像処理装置100の実装例1]
図24に示す画像処理装置100は、汎用的には、以下に説明するデジタルカメラ、ビデオカメラなどとして具現化される。そこで、以下では、前述の第1〜第4の形態に従う画像処理装置100をデジタルカメラとして具現化した例について説明する。
図25は、図24に示す画像処理装置100を具現化したデジタルカメラ100Aの構成を示すブロック図である。図25において、図24に示す画像処理装置100を構成するそれぞれのブロックに対応するコンポーネントには、図24と同一の参照符号を付している。
図25を参照して、デジタルカメラ100Aは、CPU(Central Processing Unit)102と、デジタル処理回路104と、画像表示部108と、カードインターフェイス(I/F)110と、記憶部112と、カメラ114とを含む。
CPU102は、予め格納されたプログラムなどを実行することで、デジタルカメラ100Aの全体を制御する。デジタル処理回路104は、前述の第1〜第4の実施の形態に従う画像処理を含む各種のデジタル処理を実行する。デジタル処理回路104は、典型的には、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、LSI(Large Scale Integration)、FPGA(Field-Programmable Gate Array)などによって構成される。このデジタル処理回路104は、図24に示す画像処理部200が提供する機能を実現するための画像処理回路106を含む。
画像表示部108は、カメラ114により提供される入力画像、デジタル処理回路104(画像処理回路106)によって生成される出力画像、デジタルカメラ100Aに従う各種設定情報、および、制御用GUI(Graphical User Interface)画面などを表示する。
カードI/F110は、画像処理回路106によって生成された画像データを記憶部112へ書き込み、あるいは、記憶部112から画像データなどを読み出すためのインターフェイスである。記憶部112は、画像処理回路106によって生成された画像データや各種情報(デジタルカメラ100Aの制御パラメータなどの設定値)を格納する記憶デバイスである。記憶部112は、フラッシュメモリ、光学ディスク、磁気ディスクなどからなり、データを不揮発的に記憶する。
図25に示すデジタルカメラ100Aは、前述の第1〜第4の実施の形態に従う画像処理装置100の全体を単体の装置として実装したものである。すなわち、ユーザは、デジタルカメラ100Aを用いて被写体を撮像することで、画像表示部108において高画質な画像を視認することができる。
なお、上記では、画像処理装置100をデジタルカメラ100Aとして具現化する例について説明を行なったが、画像処理装置100は、図24に示される構成と同様の構成でビデオカメラとして具現化されてもよい。
[画像処理装置100の実装例2]
図26を参照して、前述の第1〜第4の実施の形態に従う画像処理装置100を実現するための制御プログラム154を電子機器100Bにダウンロードした例について説明する。図26は、制御プログラム154をダウンロードした電子機器100Bの構成を示すブロック図である。制御プログラム154は、たとえば、PC、携帯電話、スマートフォンなどにダウンロードされ得る。以下では、制御プログラム154をPC152にダウンロードした例について説明する。
図26に示す電子機器100Bでは、任意の撮像部20によって取得された入力画像が外部から入力される構成となっている。このような構成であっても、本発明の実施の形態に従う画像処理装置100に含まれ得る。なお、図26においても、図24に示す画像処理装置100を構成するそれぞれのブロックに対応するコンポーネントには、図24と同一の参照符号を付している。
図26を参照して、電子機器100Bは、PC152と、モニタ156と、マウス158と、キーボード160と、外部記憶装置162とを含む。
PC152は、典型的には、汎用的なアーキテクチャーに従う汎用コンピューターであり、基本的な構成要素として、CPU、RAM(Random Access Memory)、ROM(Read Only Memory)などを含む。PC152は、画像処理部200が提供する機能を実現するための制御プログラム154をダウンロード可能に構成される。制御プログラム154は、CD−ROM(Compact Disk-Read Only Memory)などの記憶媒体に格納されて流通し、あるいは、ネットワークを介してサーバー装置からダウンロードされる。制御プログラム154は、PC152のハードディスクなどの記憶領域内に格納される。
制御プログラム154は、PC152で実行されるオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち必要なモジュールを、所定のタイミングおよび順序で呼出して処理を実現するように構成されてもよい。この場合、制御プログラム154自体には、OSが提供するモジュールは含まれず、OSと協働して画像処理が実現される。また、制御プログラム154は、単体のプログラムではなく、何らかのプログラムの一部に組込まれて提供されてもよい。このような場合にも、制御プログラム154自体には、当該何らかのプログラムにおいて共通に利用されるようなモジュールは含まれず、当該何らかのプログラムと協働して画像処理が実現される。このような一部のモジュールを含まない制御プログラム154であっても、各実施の形態に従う画像処理装置100の趣旨を逸脱するものではない。
もちろん、制御プログラム154によって提供される機能の一部または全部を専用のハードウェアによって実現してもよい。
モニタ156は、オペレーティングシステム(OS)が提供するGUI画面、制御プログラム154によって生成される画像などを表示する。
マウス158およびキーボード160は、それぞれユーザ操作を受付け、その受付けたユーザ操作の内容をPC152へ出力する。
外部記憶装置162は、何らかの方法で取得された入力画像を格納しており、この入力画像をPC152へ出力する。外部記憶装置162としては、フラッシュメモリ、光学ディスク、磁気ディスクなどのデータを不揮発的に記憶するデバイスが用いられる。
以上のようにして、前述の第1〜第4の実施の形態に従う画像処理は、デジタルカメラ、ビデオカメラ、パソコン、スマートフォン、その他の家電など様々な電子機器に実装され得る。
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
1〜9,22,114 カメラ、20 撮像部、21 被写体、24 フィルタ、26 レンズ、28 撮像素子、29 変換部、30A 初期探索プロファイル、30B〜30G 本探索プロファイル、31,33,53,53A,53G〜53J 画素、32A,32B,34A,34B,36A,36B,42,44,46 類似度、35,57A,58A エピポールライン、38D〜38F 正解部分、39A〜39F 結果、40,40A 合成プロファイル、45 出力部、50 基準画像、51A,51B 画素間隔、52 注目点、52A〜52L 基準領域、55〜58 部分画像、55A 輝度差画像、59A〜59D 距離画像、60 探索画像、62A,62B,64A,64B,66A,66B 探索領域、62A1,62B1,64A1,64B1,66A1,66B1 中心点、71,72 拡大画像、73,111,113,120 グラフ、74 対応関係、100 画像処理装置、100A デジタルカメラ、100B 電子機器、102 CPU、104 デジタル処理回路、106 画像処理回路、108 画像表示部、112 記憶部、154 制御プログラム、156 モニタ、158 マウス、160 キーボード、162 外部記憶装置、200 画像処理部、210 第1算出部、220 第2算出部、230 特定部、232 合成部、234 生成部。

Claims (13)

  1. 被写体を撮像して得られた基準画像に設定される、所定の第1サイズを有する第1基準領域と、前記基準画像とは異なる視点から前記被写体を撮像して得られた探索画像に設定される、前記第1サイズを有する複数の第1探索領域との間の画像情報の類似度を第1類似度群として算出するとともに、前記第1基準領域を所定の画素間隔でずらして前記第1類似度群を繰り返して算出するための第1算出部と、
    前記基準画像に設定される、前記第1サイズよりも小さい第2サイズを有する第2基準領域と、前記探索画像に設定される、前記第2サイズを有する複数の第2探索領域との間の画像情報の類似度を第2類似度群として算出するとともに、前記所定の画素間隔よりも短い画素間隔で前記第2基準領域をずらして前記第2類似度群を繰り返して算出するための第2算出部と、
    前記基準画像内の注目点を含む第1基準領域について算出された第1類似度群と、当該注目点を含む第2基準領域について算出された第2類似度群とを合成した結果に基づいて、当該注目点の対応点を前記探索画像から特定するための特定部とを備える、画像処理装置。
  2. 前記特定部は、合成対象の第1類似度群に含まれる類似度のそれぞれと、合成対象の第2類似度群に含まれる類似度のそれぞれとのうち、前記第1基準領域に対する第1探索領域のずれ量から特定される被写体距離と、前記第2基準領域に対する第2探索領域のずれ量から特定される被写体距離とが等しい第1探索領域および第2探索領域について算出された類似度同士を合成して前記結果を算出する、請求項1に記載の画像処理装置。
  3. 前記特定部は、加算処理および積算処理のうちの少なくとも一方で前記類似度同士を合成する、請求項2に記載の画像処理装置。
  4. 前記第1算出部は、前記基準画像および前記探索画像とは異なる視点から前記被写体を撮像して得られた二次探索画像に設定される、前記第1サイズを有する複数の探索領域および前記第1基準領域の間の画像情報の類似度のそれぞれと、前記複数の第1探索領域および前記第1基準領域の間の画像情報の類似度のそれぞれとを加算または積算して前記第1類似度群を算出する、請求項1〜3のいずれか1項に記載の画像処理装置。
  5. 前記第1算出部は、前記第1類似度群を算出していない前記基準画像内の注目点に対する前記第1類似度群を、当該注目点の周辺の前記第1基準領域について算出された前記第1類似度群のそれぞれを用いて補間する、請求項1〜4のいずれか1項に記載の画像処理装置。
  6. 前記第1算出部は、前記第1類似度群を算出していない前記注目点の周辺の第1基準領域について算出された第1類似度群のそれぞれを、当該注目点から当該周辺の第1基準領域のそれぞれまでの距離に応じた重みで合成することにより当該注目点に対する前記第1類似度群を算出する、請求項5に記載の画像処理装置。
  7. 前記画像処理装置は、前記第1類似度群に含まれる類似度と、前記第2類似度群に含まれる類似度との少なくとも一方のうち、所定の閾値よりも低い類似度については前記閾値に補正するための補正部をさらに備える、請求項1〜6のいずれか1項に記載の画像処理装置。
  8. 前記補正部は、前記第1基準領域または前記第2基準領域における輝度変化の度合いに応じて、前記第1類似度群または前記第2類似度群に適用する前記閾値を決定する、請求項7に記載の画像処理装置。
  9. 前記輝度変化の度合いは、前記第1基準領域または前記第2基準領域における画素値の最大値と最小値との差によって示されている、請求項8に記載の画像処理装置。
  10. 前記輝度変化の度合いは、前記第1基準領域または前記第2基準領域に微分フィルタを重畳した結果によって示されている、請求項8に記載の画像処理装置。
  11. 前記第1類似度群および前記第2類似度群は、SAD(Sum of Absolute Difference)値、SSD(Sum of Squared Difference)値、NCC(Normalized Cross-Correlation)値、およびZNCC(Zero-mean Normalized Cross-Correlation)値のいずれかによって示されている、請求項1〜10のいずれか1項に記載の画像処理装置。
  12. 被写体を撮像して得られた基準画像に設定される、所定の第1サイズを有する第1基準領域と、前記基準画像とは異なる視点から前記被写体を撮像して得られた探索画像に設定される、前記第1サイズを有する複数の第1探索領域との間の画像情報の類似度を第1類似度群として算出するとともに、前記第1基準領域を所定の画素間隔でずらして前記第1類似度群を繰り返して算出するステップと、
    前記基準画像に設定される、前記第1サイズよりも小さい第2サイズを有する第2基準領域と、前記探索画像に設定される、前記第2サイズを有する複数の第2探索領域との間の画像情報の類似度を第2類似度群として算出するとともに、前記所定の画素間隔よりも短い画素間隔で前記第2基準領域をずらして前記第2類似度群を繰り返して算出するステップと、
    前記基準画像内の注目点を含む第1基準領域について算出された第1類似度群と、当該注目点を含む第2基準領域について算出された第2類似度群とを合成した結果に基づいて、当該注目点の対応点を前記探索画像から特定するステップとを備える、画像処理方法。
  13. 画像処理装置を制御するための画像処理プログラムであって、
    前記画像処理プログラムは、前記画像処理装置に、
    被写体を撮像して得られた基準画像に設定される、所定の第1サイズを有する第1基準領域と、前記基準画像とは異なる視点から前記被写体を撮像して得られた探索画像に設定される、前記第1サイズを有する複数の第1探索領域との間の画像情報の類似度を第1類似度群として算出するとともに、前記第1基準領域を所定の画素間隔でずらして前記第1類似度群を繰り返して算出するステップと、
    前記基準画像に設定される、前記第1サイズよりも小さい第2サイズを有する第2基準領域と、前記探索画像に設定される、前記第2サイズを有する複数の第2探索領域との間の画像情報の類似度を第2類似度群として算出するとともに、前記所定の画素間隔よりも短い画素間隔で前記第2基準領域をずらして前記第2類似度群を繰り返して算出するステップと、
    前記基準画像内の注目点を含む第1基準領域について算出された第1類似度群と、当該注目点を含む第2基準領域について算出された第2類似度群とを合成した結果に基づいて、当該注目点の対応点を前記探索画像から特定するステップとを実行させる、画像処理プログラム。
JP2014191400A 2014-09-19 2014-09-19 画像処理装置、画像処理方法、および画像処理プログラム Withdrawn JP2016062447A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014191400A JP2016062447A (ja) 2014-09-19 2014-09-19 画像処理装置、画像処理方法、および画像処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014191400A JP2016062447A (ja) 2014-09-19 2014-09-19 画像処理装置、画像処理方法、および画像処理プログラム

Publications (1)

Publication Number Publication Date
JP2016062447A true JP2016062447A (ja) 2016-04-25

Family

ID=55796091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014191400A Withdrawn JP2016062447A (ja) 2014-09-19 2014-09-19 画像処理装置、画像処理方法、および画像処理プログラム

Country Status (1)

Country Link
JP (1) JP2016062447A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109427039A (zh) * 2017-08-30 2019-03-05 欧姆龙株式会社 图像处理装置、设定辅助方法以及电脑可读取记录媒体

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109427039A (zh) * 2017-08-30 2019-03-05 欧姆龙株式会社 图像处理装置、设定辅助方法以及电脑可读取记录媒体
CN109427039B (zh) * 2017-08-30 2022-11-25 欧姆龙株式会社 图像处理装置、设定辅助方法以及电脑可读取记录媒体

Similar Documents

Publication Publication Date Title
JP5374119B2 (ja) 距離情報取得装置、撮像装置、及びプログラム
JP2015197745A (ja) 画像処理装置、撮像装置、画像処理方法及びプログラム
JP2017520050A (ja) 局所的適応ヒストグラム平坦化
JP7123736B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6071257B2 (ja) 画像処理装置及びその制御方法、並びにプログラム
JP6020471B2 (ja) 画像処理方法、画像処理装置および画像処理プログラム
JP6452360B2 (ja) 画像処理装置、撮像装置、画像処理方法およびプログラム
JP2015148532A (ja) 距離計測装置、撮像装置、距離計測方法、およびプログラム
JP7378219B2 (ja) 撮像装置、画像処理装置、制御方法、及びプログラム
JP2013031154A (ja) 画像処理装置、画像処理方法、撮像装置およびプログラム
JP2016024052A (ja) 3次元計測システム、3次元計測方法及びプログラム
JP2015036841A (ja) 画像処理装置、距離計測装置、撮像装置、画像処理方法
JP6604908B2 (ja) 画像処理装置、その制御方法、および制御プログラム
JP6494402B2 (ja) 画像処理装置、撮像装置、画像処理方法、プログラム
JP5900017B2 (ja) 奥行き推定装置、再構成画像生成装置、奥行き推定方法、再構成画像生成方法及びプログラム
JP2016062447A (ja) 画像処理装置、画像処理方法、および画像処理プログラム
JP6755737B2 (ja) 距離測定装置、撮像装置、および距離測定方法
WO2017187935A1 (en) Information processing apparatus, information processing method, and program
JP6579764B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6320165B2 (ja) 画像処理装置及びその制御方法、並びにプログラム
JP7113327B1 (ja) 撮像装置
JPWO2018030386A1 (ja) 位置指定装置および位置指定方法
JP2016024490A (ja) 画像処理装置、画像処理方法およびプログラム
JP2023132342A (ja) 画像処理装置、画像処理方法及びプログラム
JP6292947B2 (ja) 画像処理装置、画像処理方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161221

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20171102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171108