IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7559015画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム
<>
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図1
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図2
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図3
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図4
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図5
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図6
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図7
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図8
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図9
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図10
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図11
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図12
  • 特許-画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-20
(45)【発行日】2024-10-01
(54)【発明の名称】画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240924BHJP
【FI】
G06T7/00 300F
【請求項の数】 23
(21)【出願番号】P 2022124723
(22)【出願日】2022-08-04
(65)【公開番号】P2024021700
(43)【公開日】2024-02-16
【審査請求日】2023-06-23
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【弁理士】
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】塚原 梓
【審査官】鈴木 圭一郎
(56)【参考文献】
【文献】特開2011-182084(JP,A)
【文献】特開2008-003674(JP,A)
【文献】特開平04-271485(JP,A)
【文献】特開2007-041752(JP,A)
【文献】特開平02-255990(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理装置であって、
前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成手段と、
前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成手段と、
前記局所領域が点対称移動した際に前記局所領域の勾配が、前記局所領域とは異なる局所領域の勾配と、同じ値となるよう前記勾配方向の補正を行う勾配方向補正手段と、
前記勾配方向補正手段により補正された前記勾配方向に基づき前記信頼度を生成する信頼度生成手段と、を有することを特徴とする画像処理装置。
【請求項2】
前記画素値変化生成手段は、
前記局所領域に対し画素配列に沿った前記第1の方向と前記第1の方向に直交する前記第2の方向の少なくとも2方向を設定し、
前記第1の方向に微分処理を行った第1の微分値及び前記第2の方向に微分処理を行った第2の微分値を算出し、
前記第1の微分値に基づいて前記第1の画素値変化を生成し、前記第2の微分値に基づいて前記第2の画素値変化を生成することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記画素値変化生成手段は、
前記局所領域にSobelフィルタ又はPrewittフィルタのいずれかをかけて微分値を算出することを特徴とする請求項に記載の画像処理装置。
【請求項4】
前記画素値変化生成手段は、
前記局所領域の中心差分勾配又は中間差分勾配を用いて前記第1の微分値および第2の微分値を算出することを特徴とする請求項に記載の画像処理装置。
【請求項5】
前記勾配方向生成手段は、
前記第1の画素値変化と前記第2の画素値変化に基づき前記勾配方向を算出することを特徴とする請求項1に記載の画像処理装置。
【請求項6】
前記勾配方向生成手段は、
前記第1の画素値変化と前記第2の画素値変化から算出する第1成分及び第2成分を持ったベクトルで前記勾配方向を算出することを特徴とする請求項1に記載の画像処理装置。
【請求項7】
前記信頼度生成手段は、
前記第1の画素値変化と前記第2の画素値変化の和、最大値、平均値、二乗和、又は前記二乗和の平方根の少なくとも1つを重みとして算出し、
前記勾配方向の重み付き分散値、又は重み付き標準偏差値が大きいほど、前記信頼度が高くなるように算出することを特徴とする請求項1に記載の画像処理装置。
【請求項8】
前記信頼度生成手段は、
前記第1の画素値変化と前記第2の画素値変化の和、最大値、平均値、二乗和、又は前記二乗和の平方根のいずれかを重みとして算出し、
前記勾配方向の重み付き平均合成ベクトル長の値、又は前記重み付き平均合成ベクトル長の2乗値が小さいほど、前記信頼度が高くなるように算出することを特徴とする請求項1に記載の画像処理装置。
【請求項9】
前記勾配方向補正手段は、前記勾配方向が所定の利用範囲外の場合に前記利用範囲内になるよう前記勾配方向を+180°又は-180°して補正することを特徴とする請求項に記載の画像処理装置。
【請求項10】
前記勾配方向補正手段は、
前記第1の画素値変化と前記第2の画素値変化の比から前記勾配方向が所定の利用範囲内になるよう範囲を絞って前記勾配方向を算出することを特徴とする請求項に記載の画像処理装置。
【請求項11】
前記勾配方向補正手段は、
前記第1の画素値変化及び前記第2の画素値変化の値の正負に基づき前記勾配方向を補正することを特徴とする請求項に記載の画像処理装置。
【請求項12】
前記勾配方向補正手段は、
前記勾配方向の角度が2倍になるよう補正することを特徴とする請求項に記載の画像処理装置。
【請求項13】
前記信頼度生成手段は、
前記勾配方向の分散、又は標準偏差が大きいほど前記信頼度が高くなるように算出することを特徴とする請求項1に記載の画像処理装置。
【請求項14】
前記信頼度生成手段は、
前記勾配方向の平均合成ベクトル長の値、又は前記平均合成ベクトル長の2乗値が小さいほど、前記信頼度が高くなるように算出することを特徴とする請求項1に記載の画像処理装置。
【請求項15】
前記信頼度生成手段は、前記信頼度を補正する信頼度補正部を含むことを特徴とする請求項1に記載の画像処理装置。
【請求項16】
前記信頼度補正部は、
基準画像全体の前記勾配方向と誤差許容方向が近い場合に前記信頼度を高めるように補正することを特徴とする請求項1に記載の画像処理装置。
【請求項17】
前記信頼度生成手段は、前記局所領域の勾配強度に基づき前記信頼度を生成することを特徴とする請求項1に記載の画像処理装置。
【請求項18】
前記マッチングは、異なる時刻に撮影された画像の間のオプティカルフローを算出することを特徴とする請求項1に記載の画像処理装置。
【請求項19】
請求項1~18のいずれか1項に記載の画像処理装置と、
光学系により形成された被写体像を撮像する撮像手段と、
前記第1の画像と前記第2の画像の前記マッチングの前記信頼度に基づき被写体までの距離を測定する測定手段と、
前記距離に基づき前記光学系の焦点調整をする焦点調整手段と、を有することを特徴とする撮像装置。
【請求項20】
前記撮像手段は、前記第1の画像を生成するための複数の第1の光電変換部と、前記第2の画像を生成するための複数の第2の光電変換部とを備えることを特徴とする請求項19に記載の撮像装置。
【請求項21】
前記撮像手段は、
第1の撮像素子と、
前記被写体像を前記第1の撮像素子上に形成する第1の光学系と
第2の撮像素子と、
前記被写体像を前記第2の撮像素子上に形成する第2の光学系と
を備え、
前記第1の撮像素子にて前記第1の画像を取得し、前記第2の撮像素子にて前記第2の画像を取得することを特徴とする請求項19に記載の撮像装置。
【請求項22】
第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理方法であって、
前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成ステップと、
前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成ステップと、
前記局所領域が点対称移動した際に前記局所領域の勾配が、前記局所領域とは異なる局所領域の勾配と、同じ値となるよう前記勾配方向の補正を行う勾配方向補正ステップと、
前記勾配方向補正ステップにおいて補正された前記勾配方向に基づき前記信頼度を生成する信頼度生成ステップと、を有することを特徴とする画像処理方法。
【請求項23】
請求項1~18のいずれか1項に記載の画像処理装置の各手段をコンピュータにより制御するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像のマッチングを行う画像処理装置、撮像装置、画像処理方法、及びコンピュータプログラム等に関する。
【背景技術】
【0002】
複数の画像を取得して3次元情報を算出する手法として、ブロックマッチング手法がある。この手法では、先ず、異なる視点から撮影された2つの画像(以下、夫々A画像、B画像と呼ぶ)に対して、A画像に任意の領域1を基準画像として設定する。そして、B画像に領域2を参照画像として設定し、領域2の位置をずらしつつ最も領域1と相関の高い領域2を探索する。
【0003】
そして、相関が最もあるときの領域1と領域2の位置のズレに基づき距離を算出する。尚、探索では異なる画像の領域間の相違度(又は類似度)を表す相互相関が利用され、似た領域の判定が行われる。この位置のズレを視差と呼び、三角測量等の公知の手法を利用することで距離情報を取得できる。
【0004】
視差はA画像とB画像の視点のズレ方向に生じるため、一般的には領域2の探索は1方向のみに行われることが多い。しかし、実際には装置を組み立てる時の誤差や光学系による歪み等が原因で想定していた視差発生方向とは異なる方向にもズレが生じることがある。このズレは視差量を算出する際に、被写体に応じた誤差を生じさせる。そのため領域2の探索を二次元的な範囲で行う(2次元探索)ことでこの誤差を低減させることができる。
【0005】
しかし、2次元探索では特定の領域において、視差の算出結果に誤差を生じる場合がある。誤差の発生する領域として例えば開口問題が挙げられる。これは基準画像が一方向の特徴(1次元特徴)しか持たない場合に発生する誤差である。
【0006】
基準画像が1次元特徴の場合、ブロックマッチングの際に基準画像に対して同じテクスチャとなる参照画像の位置が複数存在する。すると、本来の視差位置とは異なる位置の参照画像が最も基準画像と似た画像としてマッチングしてしまう可能性があり、その場合、算出される視差値に誤差を含む。
【0007】
これに対し、特許文献1には基準画像に対し、開口問題の発生する領域(開口問題領域)か否かを判定し、信頼度を算出する手法が開示されている。即ち、基準画像内の局所領域ごとに画素値変化の発生する方向を算出し、基準画像全体で画素値変化の発生する方向の分散が小さい場合に開口問題領域と判定を行う方法が開示されている。
【先行技術文献】
【特許文献】
【0008】
【文献】特開2011-182084号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし特許文献1に開示された方法では、基準画像が線状のテクスチャを持つ場合、正しい判定を行うことができない恐れがある。又、コントラストの強いテクスチャとコントラストの弱いテクスチャを含む場合、正しい判定を行うことができない恐れがある。
【0010】
そこで本発明は、高精度で開口問題領域を判定することが可能な画像処理装置を提供することを目的とする
【課題を解決するための手段】
【0011】
本発明の一側面としての画像処理装置は、
第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理装置であって、
前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成手段と、
前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成手段と、
前記局所領域が点対称移動した際に前記局所領域の勾配が、前記局所領域とは異なる局所領域の勾配と、同じ値となるよう前記勾配方向の補正を行う勾配方向補正手段と、
前記勾配方向補正手段により補正された前記勾配方向に基づき前記信頼度を生成する信頼度生成手段と、を有することを特徴とする。
【発明の効果】
【0012】
本発明によれば、高精度で開口問題領域を判定することが可能な画像処理装置を提供することができる。
【図面の簡単な説明】
【0013】
図1】(A)~(C)は本発明の実施形態1に係る信頼度算出装置を備えた撮像装置を説明するための図である。
図2】光軸130と撮像素子121の交点(中心像高)から見た、光学系122の射出瞳123を示す図である。
図3】実施形態1の非開口問題領域での画素値変化の説明図である。
図4】実施形態1の開口問題領域での画素値変化の説明図である。
図5】実施形態1の線状のテクスチャでの画素値変化の説明図である。
図6】実施形態1のコントラストの強いテクスチャとコントラストの弱いテクスチャを含む場合の画素値変化の説明図である。
図7】(A)、(B)は実施形態1の信頼度算出装置の説明図であり、(A)は、実施形態1に係る信頼度算出装置110の構成を概略的に示す機能ブロック図である。(B)は実施形態1の信頼度算出装置110の動作を表すフローチャートである。
図8】ステップS711にて設定する基準画像及び局所領域の位置関係を説明するための図である。
図9】実施形態1の勾配方向算出部の説明図である。
図10】実施形態1の勾配方向補正部によるステップS714の処理の説明図である。
図11】実施形態1の信頼度算出部における処理の効果を説明するための図である。
図12】(A)、(B)は、基準画像及び参照画像の位置関係を説明するための図である。
図13】実施形態2に係る信頼度算出装置を備えた撮像装置の説明図である。
【発明を実施するための形態】
【0014】
以下、図面を参照して本発明の実施形態を説明する。ただし、本発明は以下の実施形態に限定されるものではない。なお、各図において、同一の部材または要素については同一の参照番号を付し、重複する説明は省略または簡略化する。
【0015】
<実施形態1>
図1(A)~(C)は本発明の実施形態1に係る信頼度算出装置を備えた撮像装置を説明するための図である。図1(A)は実施形態1に係る撮像装置の概略図であり、図において撮像装置100は、信頼度算出装置110と撮像部120と画像マッチング部140を備える。尚、撮像装置100には不図示のコンピュータとしてのCPUと、コンピュータプログラムを記憶した不図示のメモリが設けられている。
【0016】
ここで、撮像装置100は第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理装置として機能している。尚、画像マッチング部140は、第1の画像と第2の画像のマッチングの信頼度に基づき被写体までの距離を測定する測定手段を含んでいる。
【0017】
信頼度算出装置110と画像マッチング部140は、論理回路を用いて構成することができる。尚、信頼度算出装置110と画像マッチング部140は、撮像装置100内に設けたCPUに、メモリに記憶されたコンピュータプログラムを実行させることによって実現しても良い。
【0018】
撮像部120は、撮像手段として機能しており、撮像素子121、光学系122を備える。光学系122は、撮像装置100の撮影レンズであり、被写体の像を撮像素子121上に形成する機能を有する。光学系122は複数のレンズ群(不図示)及び絞り(不図示)等から構成され、撮像素子121から所定距離離れた位置に射出瞳123を有する。
【0019】
尚、本実施形態では、z軸を、光学系122の光軸130と平行とし、x軸とy軸は互いに垂直であり、且つz軸と垂直な軸とする。尚、光学系122には、画像マッチング部140から出力される、被写体までの距離の情報に基づき光学系の焦点調整をする不図示の焦点調整回路(焦点調整手段)が設けられている。
【0020】
撮像素子121はCMOS(相補型金属酸化膜半導体)やCCD(電荷結合素子)のイメージセンサから構成される。光学系122を介して撮像素子121上に結像した被写体像は、撮像素子121により光電変換され、被写体像に基づく画像信号を生成する。
【0021】
図1(B)は、撮像素子121のxy断面の例を示す図である。撮像素子121は、2行×2列の画素群150を2次元状に複数配列することで構成される。画素群150は、対角方向に緑画素150G1及び150G2が配列され、他の2画素に赤画素150R及び青画素150Bが配置されている。
【0022】
図1(C)は、画素群150のI-I’断面を模式的に示した図である。各画素は受光層182と導光層181から構成される。受光層182には、受光した光を光電変換するための1対の光電変換部(第1の光電変換部としての光電変換部161、第2の光電変換部としての光電変換部162)が配置される。
【0023】
導光層181には、画素へ入射した光束を光電変換部へ効率良く導くためのマイクロレンズ183、所定の波長帯域の光を通過させるカラーフィルタ(不図示)、画像読み出し用の配線(不図示)や画素駆動用の配線(不図示)などが配置される。
【0024】
又、各画素の光電変換信号は配線を介して読出され、AD変換されて画像信号となり、信頼度算出装置110に入力される。図1(B)及び(C)は、1つの瞳分割方向(x軸方向)に2分割された1対の光電変換部の例を示している。しかし、仕様に応じて、2つの瞳分割方向(x軸方向及びy軸方向)に分割された例えば4つの光電変換部を備えても良く、瞳分割方向及び分割数については任意である。
【0025】
図2は、光軸130と撮像素子121の交点(中心像高)から見た、光学系122の射出瞳123を示す図である。光電変換部161、光電変換部162には、夫々射出瞳123の異なる領域である第1の瞳領域210を通過した第1の光束、第2の瞳領域220を通過した第2の光束が入射する。
【0026】
各画素における光電変換部161及び光電変換部162は入射した光束を光電変換することで、夫々A画像(第1の画像)及びB画像(第2の画像)に対応する光電変換信号を生成することができる。即ち、第1の光電変換部としての複数の光電変換部161は第1の画像を生成し、第2の光電変換部としての複数の光電変換部162は第2の画像を生成する。生成された光電変換信号はAD変換されて画像信号となり信頼度算出装置110に入力される。
【0027】
図2には第1の瞳領域210の重心位置(第1の重心位置211)、及び第2の瞳領域220の重心位置(第2の重心位置221)が示されている。本実施形態においては、第1の重心位置211は、射出瞳123の中心から第1の軸200に沿って偏心(移動)している。
【0028】
一方、第2の重心位置221は、第1の軸200に沿って、第1の重心位置211とは逆の方向に偏心(移動)している。第1の重心位置211と第2の重心位置221とを結ぶ第1の軸200の方向を瞳分割方向と呼ぶ。又、第1の重心位置211と第2の重心位置221との重心間距離が基線長230となる。
【0029】
次に、本実施形態の信頼度算出装置110について説明する。信頼度算出装置110は画像情報を取得し、その画像と別の画像間でのマッチング結果の確からしさを表す信頼度を算出する。
【0030】
先ず、開口問題領域と非開口問題領域の勾配方向の特徴について図3及び図4を用いて説明する。図3は、実施形態1の非開口問題領域での画素値変化の説明図であり、図4は、実施形態1の開口問題領域での画素値変化の説明図である。撮像装置100を用いて取得した画像中に設定した2種類の基準画像を図3の基準画像310及び図4の基準画像410に示す。
【0031】
図3の320A、320B、320Cは基準画像310内の局所領域を示している。又、図中の330A、330B、330Cは勾配方向を示す。尚、勾配方向については図9を用いて後述する。又、図4の420A、420B、420Cは基準画像410内の局所領域を示している。又、図中の430A、430B、430Cは基準画像410内の勾配方向を示す。
【0032】
ここで、非開口問題領域の場合について、図3の基準画像310を用いて説明する。図3の勾配方向330A、勾配方向330B、勾配方向330Cは夫々別の方向を示している。従って、基準画像310では勾配方向の統一性は低い。このように勾配方向の統一性が低い場合は非開口問題領域と判断できる。
【0033】
一方、開口問題領域の場合について、図4の基準画像410を用いて説明する。勾配方向430A、勾配方向430B、勾配方向430Cは同じの方向を示している。従って、基準画像410では勾配方向の統一性は高くなる。このように勾配方向の統一性を評価することで、開口問題領域であるか否かを判断できる。即ち、勾配方向の統一性が高い場合は開口問題領域と判断できる。
【0034】
次に、本件で解決する課題について説明する。図5は、実施形態1の線状のテクスチャでの画素値変化の説明図であり、図6は、実施形態1のコントラストの強いテクスチャとコントラストの弱いテクスチャを含む場合の画素値変化の説明図である。撮像装置100を用いて取得した画像中に設定した2種類の基準画像を図5の基準画像510と図6の基準画像610に示す。
【0035】
課題となる開口問題領域の場合について、基準画像510を用いて説明する。基準画像510の中央部には画素値の小さな領域が帯状に存在している。基準画像510内に局所領域520A、局所領域520B、局所領域520C、局所領域520Dを設定する。又、夫々の局所領域の勾配方向を、局所領域530A、局所領域530B、局所領域530C、局所領域530Dで示す。
【0036】
局所領域520A、局所領域520Bではその勾配方向は左向きになる。一方、局所領域520C、局所領域520Dではその勾配方向は右向きになる。このように基準画像510内に勾配方向の異なる局所領域が存在することになり、勾配方向の統一性は低くなる。従って、基準画像510を非開口問題領域であると誤判断する可能性が高い。
【0037】
別の開口問題領域の場合について、基準画像610を用いて説明する。基準画像610は強いテクスチャと弱いテクスチャの混在する画像である。基準画像610の左下に画素値の低い領域が存在する。基準画像610の右上は左下に比べ画素値は高く、ランダムに弱い画素値の変動がある。このような画像でマッチングを行うと、コントラストの強い基準画像610の左下と右上の境界部分が結果に対し支配的になり、図4の基準画像410と同様に開口問題領域となる。
【0038】
ここで、基準画像610内に局所領域620A、局所領域620B、局所領域620C、局所領域620Dを設定する。夫々の局所領域の勾配方向を、局所領域630A、局所領域630B、局所領域630C、局所領域630Dで示す。基準画像610の左下と右上の境界部分に領域が存在している局所領域620A、局所領域620Bではその勾配方向は右上向きになる。
【0039】
一方、基準画像610の右上に存在している局所領域620C、局所領域620Dではその勾配方向はランダムな方向になる。このように勾配方向の異なる局所領域が存在することになり、基準画像610で勾配方向の統一性は低くなる。従って、基準画像610を非開口問題領域であると誤判断する可能性が高い。
【0040】
図7(A)、(B)は実施形態1の信頼度算出装置の説明図であり、図7(A)は、実施形態1に係る信頼度算出装置110の構成を概略的に示す機能ブロック図である。図7(A)において、信頼度算出装置110は、第1画素値変化量算出部111、第2画素値変化量算出部112、勾配方向算出部113、勾配方向補正部114、勾配強度算出部115、信頼度算出部116、信頼度補正部117を備える。
【0041】
尚、図7(A)に示される機能ブロックの一部は、撮像装置に含まれる前述のCPUに、記憶媒体としてのメモリに記憶されたコンピュータプログラムを実行させることによって実現されている。しかし、それらの一部又は全部をハードウェアで実現するようにしても構わない。
【0042】
ハードウェアとしては、専用回路(ASIC)やプロセッサ(リコンフィギュラブルプロセッサ、DSP)などを用いることができる。又、図7(A)に示される夫々の機能ブロックは、同じ筐体に内蔵されていなくても良く、互いに信号路を介して接続された別々の装置により構成しても良い。
【0043】
図7(B)は、実施形態1の信頼度算出装置110の動作を表すフローチャートである。尚、撮像装置100内のコンピュータとしてのCPUがメモリに記憶されたコンピュータプログラムを実行することによって図7(B)のフローチャートの各ステップの動作が行われる。
【0044】
実施形態1に係る画像処理が開始されると、処理はステップS710に移行する。ステップS710では、CPUは、撮像装置100を用いて撮影を行い、画像生成・取得し、取得した画像を本体メモリ(不図示)に記憶させる。尚、取得するのはA画像とB画像のどちらでも良い。
【0045】
ステップS710にて取得した画像に対し、主として光学系122のヴィネッティングに起因して生じる光量バランスの崩れを補正する処理を行っても構わない。具体的には、予め撮像装置100において、輝度が均一な面光源を撮影した結果に基づき、画像の輝度値が画角に依らず略一定値になるような補正値をメモリに記憶しておく。そしてステップS710で取得した画像に対して上記メモリに記憶されていた補正値に基づく補正をすることで、光量バランスのムラを補正することができる。
【0046】
又、例えば撮像素子121にて生じる光ショットノイズ等の影響を低減するために、取得した画像にバンドパスフィルタやロ-パスフィルタなどのフィルタ処理を施しても良い。又、計算コストを軽減するために画像を縮小しても良い。或いは、より高解像度で信頼度の算出を行うために既知の方法で画像を高解像度化しても良い。
【0047】
ステップS711において、CPUは、第1画素値変化量算出部111により第1画素値変化量の算出を行う。具体的には、ステップS711で、画像上において、マッチングの信頼度算出を行う画素(注目画素)を含む部分領域の画像を基準画像として設定する。そして、基準画像内の部分領域を局所領域として複数設定し、各局所領域の任意の方向に沿った画素値変化量(第1画素値変化量)を算出する。
【0048】
図8はステップS711にて設定する基準画像及び局所領域の位置関係を説明するための図であり、810はステップS710にて取得した画像を示す。ステップS711において第1画素値変化量算出部111は、基準画像の複数の局所領域夫々で画素値変化量を算出する。
【0049】
具体的には、第1画素値変化量算出部111は、先ず、画像810上において、注目画素820とその近傍を含む部分領域を抜き出して、基準画像811として設定する。次に、基準画像811上において、複数の部分領域812を抜き出して、局所領域812A、812B・・・として設定する。以下では部分領域として、部分領域812を設定した方法を説明する。
【0050】
次に、画素値変化を算出する方向である第1の方向830を設定する。このとき、画素値変化を算出する方向はどの方向でも良い。画素配列に沿った方向に設定することにより、後述の画素値変化量の算出を簡易に行うことができるため、下記では第1の方向830をx軸方向として説明を行う。
【0051】
次に、第1の方向830に沿った画素値変化量を算出する。画素値変化量は、局所領域の第1の方向830に沿った画素値の変化量を評価できればよく、公知のどのような手法を利用して算出しても良い。例えば、Sobelフィルタ又はPrewittフィルタをかけて画素値の変化量を算出しても良い。又は、局所領域の中心差分勾配又は中間差分勾配を用いて算出しても良い。中心差分勾配では、ピクセルの勾配は、近傍ピクセルの重み付き差である。中間差分勾配では、ピクセルの勾配は、隣接するピクセルと現在のピクセルの間の差である。
【0052】
続いて、図7のステップS712において、CPUは、第2画素値変化量算出部112により局所領域812A及び局所領域812Bの第2の方向840に沿った画素値の画素値変化量(第2画素値変化量)を算出する。具体的には、第2画素値変化量算出部112は、先ず、画素値変化を算出する方向である第2の方向840を設定する。この際、第2の方向840は第1の方向830と異なるいかなる方向でも良い。
【0053】
画素配列に沿った方向に設定することにより、後述の画素値変化量の算出を簡易に行うことができる。又、第1の方向830と直交する第2の方向を設定することにより、後述の勾配方向算出部113及び勾配強度算出部115の算出を簡易に行うことができる。尚、下記では第2の方向840をy軸方向として説明を行う。
【0054】
次に、第2の方向840に沿った画素値変化量を算出する。画素値変化量は、局所領域の第2の方向840に沿った画素値の変化量を評価できればよく、公知のどのような手法を利用して算出しても良い。例えば、Sobelフィルタ又はPrewittフィルタのいずれかをかけて微分値を算出することで画素値の変化量を算出しても良い。
【0055】
又は、局所領域の中心差分勾配又は中間差分勾配を用いて第1の微分値および第2の微分値を算出しても良い。このように、第1の方向と第2の方向の少なくとも2方向を設定し、第1の方向に微分処理を行った第1の微分値と第2の方向に微分処理を行った第2の微分値を算出すれば良い。又、第1の微分値に基づいて前記第1の画素値変化を生成し、前記第2の微分値に基づいて前記第2の画素値変化を生成すれば良い。
【0056】
尚、ステップS711、S712は、第1の画像又は第2の画像に注目画素を含む基準画像を設定して基準画像の局所領域ごとに少なくとも2つの方向に沿った第1の画素値変化と第2の画素値変化を生成する画素値変化生成ステップとして機能している。この2つの方向を夫々第1の方向、第2の方向と呼ぶ。又、このとき第1画素値変化量算出部111と第2画素値変化量算出部112は、画素値変化生成手段として機能している。
【0057】
続いて、図7(B)のステップS713において、CPUは、勾配方向算出部113により、既知の任意の手法により、局所領域の画素値の変化する方向を算出する。
【0058】
先ず、図9を用いて画素値の変化する方向について説明する。図9は、実施形態1の勾配方向算出部の説明図であり、局所領域910とその画素値を示す。局所領域910の左下領域は画素値が小さく、局所領域910の右上領域は画素値が大きいことを示している。画素値の境界と直交する方向が局所領域910の勾配方向920である。
【0059】
勾配方向算出部113は、第1の画素値変化と第2の画素値変化に基づき勾配方向を算出する。即ち、第1の画素値変化と第2の画素値変化から算出する第1成分及び第2成分を持ったベクトルで前記勾配方向を算出する。具体的には、第1の方向830と第1画素値変化量から画素値配列に沿ったx軸方向の画素値変化dxを算出する。
【0060】
又、第2の方向840と第2画素値変化量からx軸方向に直交するy軸方向の画素値変化dyを算出する。x軸方向の画素値変化dxとy軸方向の画素値変化dyから、以下の数式1を用いて勾配方向をベクトルとして算出する。
【0061】
【数1】
【0062】
又は、数式1を勾配の大きさで正規化した以下の数式2を勾配ベクトルv’として算出しても良い。
【数2】
【0063】
尚ここで、ステップS713は、第1の画素値変化と第2の画素値変化に基づき局所領域の勾配方向を生成する勾配方向生成ステップとして機能している。又、このとき勾配方向算出部113は、勾配方向生成手段として機能している。
【0064】
続いて、図7のステップS714において、CPUは、ステップS713で算出した勾配方向を補正する。ステップS714の処理の効果について説明する。図10は、実施形態1の勾配方向補正部によるステップS714の処理の説明図である。ステップS714では局所領域が点対称移動した際にも勾配が同じ値になるように勾配を補正し、補正勾配方向を算出する。
【0065】
図10において、局所領域520A及び局所領域520Bを点対称移動した際には夫々局所領域520D及び局所領域520Cと同じテクスチャになる。従って、ステップS714ではこれらの局所領域の補正勾配方向はすべて同一となるように補正を加える。例えば、補正勾配方向1030Aを1030Dのように補正する。
【0066】
このように補正された補正勾配方向を用いて後述するステップS716の処理を行うと、低い信頼度が算出される。従って、基準画像510を開口問題領域であると正しく判断することになる。これはステップS716では勾配方向の統一性を分散などの値を評価して信頼度としており、点対称の補正勾配方向1030Aから1030Dのように方向のばらつきが低い場合に低い信頼度となるよう算出されるためである。
【0067】
このように、ステップS714では、図10のような基準画像に対し、局所領域の勾配方向に基づき(例えば第1の画素値変化及び前記第2の画素値変化の値の正負に基づき)画素値勾配方向を補正する。それにより、後のステップS716において正しい信頼度が算出でき、開口問題領域であると判断できるようする。
【0068】
具体的には、先ず、基準方向を設定する。基準方向はいかなる方向でも良い。画素値配列に沿った方向に設定することにより後述の補正を簡易に行うことができるため、下記では基準方向を+x軸の方向として説明を行う。基準方向を0°として-90°から+90°の範囲を利用範囲と設定する。即ち、第1の画素値変化と第2の画素値変化の比から画素値勾配方向を算出し、180°分の利用範囲を定める。
【0069】
次に、ステップS713で算出した勾配方向が利用範囲内か否かの判断を行う。例えば勾配ベクトルv又は勾配ベクトルv’の第1成分と第2成分の比からx軸の正の向きとなす角である勾配角度θを算出する。例えば図5の場合では局所領域520A及び局所領域520Bの勾配角度θは180°であり、局所領域520C及び局所領域520Dの勾配角度θは0°である。
【0070】
次に、勾配角度θが利用範囲である-90°から+90°の範囲に入っているか否かを判定する。そして勾配角度θが利用範囲内でない場合、即ち、画素値勾配方向が所定の利用範囲外の場合に、利用範囲内に入るように画素値勾配方向を+180°又は-180°して補正することで勾配角度θの補正を行う。
【0071】
例えば図5の場合では局所領域520A及び局所領域520Bの勾配角度θは利用範囲内でないため180°を引いて図10の補正勾配方向1030A及び補正勾配方向1030Bのように点対称補正勾配角度θpが0°になるようにする。
【0072】
一方、局所領域520C及び局所領域520Dの勾配角度θは利用範囲内であるため角度を変えずに、図10の補正勾配方向1030C及び補正勾配方向1030Dのように点対称補正勾配角度θpがもとの勾配角度θと同じ0°になるようにする。尚、第1の画素値変化と第2の画素値変化の比から利用範囲内になるよう範囲を絞って画素値勾配方向を算出しても良い。
【0073】
点対称補正勾配角度θpは以下の数式3と数式4を利用して、勾配ベクトルv又は勾配ベクトルv’に補正を行った点対称補正勾配ベクトルvp又はそれを正規化した点対称補正勾配ベクトルvp’を算出できる。
【0074】
【数3】
【0075】
【数4】
【0076】
又は第1成分aが負の場合に、利用領域であると判断し、第1成分a及び第2成分bの符号を反転させ、範囲補正第1成分afと範囲補正第2成分bfを算出しても良い。
【0077】
更に、利用範囲を定めたことによって勾配方向の連続性が失われたことに対する補正を行う。具体的には、数式3と数式4の計算を行う際にθを2倍にしてから計算を行う。即ち、画素値勾配方向の角度が2倍になるよう補正する。そして、倍角補正勾配ベクトルvd又はそれを正規化した倍角補正勾配ベクトルvd’を算出しても良い。
【0078】
点対称補正勾配ベクトルvpの第1成分ap及び第2成分bpは以下の数式5及び数式6の式が成り立つ。又、2倍角の公式を利用して以下の数式7と数式8のように表現できることを利用して、以下の数式9又は数式10から倍角補正勾配ベクトルvdを算出しても良い。同様の考え方で点対称補正勾配ベクトルvp’の第1成分ap’及び第2成分bp’から倍角補正勾配ベクトルvd’を算出しても良い。
【0079】
【数5】
【0080】
【数6】
【0081】
【数7】
【0082】
【数8】
【0083】
【数9】
【0084】
【数10】
【0085】
尚ここで、ステップS714は、勾配方向に応じて前記勾配方向の補正を行う勾配方向補正ステップとして機能している。又、このとき勾配方向補正部114は、勾配方向補正手段として機能している。
【0086】
続いて、図7のステップS715において、CPUは、勾配強度算出部115により既知の任意の手法により、局所領域812A及び局所領域812Bの画素値の変化する強さを算出する。具体的には、第1画素値変化量と第2画素値変化量の和、最大値、平均値、二乗和、又は二乗和の平方根の少なくとも1つを勾配強度として算出しても良い。尚、後述するように、この勾配強度を重みとして用いても良い。
【0087】
又は、勾配ベクトルvp、又は倍角補正勾配ベクトルvdの第1成分と第2成分の和、最大値、平均値、二乗和、又は二乗和の平方根を勾配強度として算出しても良い。尚、これは第1画素値変化量と第2画素値変化量を利用した際と同じ値になる。
【0088】
続いて、図7のステップS716において、CPUは、信頼度算出部116により既知の任意の手法により、基準画像内の各局所領域の勾配方向の統一性を信頼度として算出する。具体的には先ず、基準画像内で設定した夫々の局所領域から勾配方向を取得する。この勾配方向はステップS714において補正を加えたものでも良い。又、更にステップS715において算出した勾配強度も取得しても良い。
【0089】
次に取得した複数の勾配方向について、その分散値、又は重み付き分散値、又は標準偏差値、又は重み付き標準偏差値の少なくとも1つを統一性とし、これらの値が大きいほど信頼度を高くするように算出する。又は、勾配方向の平均合成ベクトル長の値若しくは重み付き平均合成ベクトル長、又は平均合成ベクトル長の2乗値、若しくは重み付き平均合成ベクトル長の2乗値の少なくとも1つを統一性とし、これらの値が小さいほど信頼度を高くするように算出しても良い。
【0090】
ここで、勾配方向の分散及び標準偏差について説明する。ここで、勾配方向とは角度で表現できるデータであり、角度は周期性を持つ。そのため、一般的な統計処理で分散や標準偏差を求めることはできない。
【0091】
ここでは勾配の大きさで正規化した勾配ベクトルv’が勾配方向として取得されたことを想定し、説明を行う。勾配ベクトルのデータとしてv’1からv’nまでn個のデータを想定し、その分散及び標準偏差を求める。尚、各データでの第1成分a’及び第2成分b’はa1’~an’、b1’~bn’とする。
【0092】
v’1からv’nの合成ベクトルR’は以下の数式11を利用して求めることができる。
【0093】
【数11】
【0094】
又、合成ベクトルR’は、データ数nで割ることで平均合成ベクトルRm’を算出できる。これは平均合成ベクトルRm’の長さ(平均合成ベクトル長)Rmlen’、角度(平均合成ベクトル角度)φを利用して以下の数式12のように変換できる。
【0095】
【数12】
【0096】
平均合成ベクトル長Rmlen’を用いて分散V’は以下の数式13、標準偏差S’は以下の数式14で定義される。尚、分散V’と標準偏差S’は0から1までの値をとり、1に近いほどデータの散らばり具合が大きいことを示す。
【0097】
【数13】
【0098】
【数14】
【0099】
ここで、平均合成ベクトル長Rmlen’は以下の数式15~数式17を用いて計算される。
【数15】
【0100】
【数16】
【0101】
【数17】
【0102】
又、重み付きでの分散と標準偏差の計算方法を説明する。各データでの重みをw1からwnとおく。重み付き平均合成ベクトル長Rwlen’は以下の数式18~数式20を用いて計算される。
【0103】
【数18】
【0104】
【数19】
【0105】
【数20】
【0106】
平均合成ベクトル長Rmlen’のかわりに重み付き平均合成ベクトル長Rwlen’を用いて数式13又は数式14と同様の方法で計算を行うことで重み付き分散Vw’又は重み付き標準偏差Sw’を算出できる。
【0107】
尚、勾配ベクトルvが勾配方向として取得された場合について説明する。各データでの第1成分a及び第2成分bはa1~an、b1~bnとする。平均合成ベクトル長Rlenは以下の数式21~数式23のように表される。
【0108】
【数21】
【0109】
【数22】
【0110】
【数23】
【0111】
平均合成ベクトル長Rmlen’のかわりに平均合成ベクトル長Rlenを用いて数式13又は数式14と同様の方法で計算を行うことで分散V又は標準偏差Sを算出できる。
【0112】
ここで、平均合成ベクトル長R’len、重み付き平均合成ベクトル長Rw’len、平均合成ベクトル長R’lenの2乗、又は重み付き平均合成ベクトル長Rw’lenの2乗でも各データの散らばり具合を示す数値となっている。これらは0から1までの値をとり、0に近いほどデータの散らばり具合が大きいことを示す。この場合、より軽い処理で計算を行うことができる。
【0113】
このとき、重みとしては勾配強度を利用しても良い。例えば勾配強度が大きいほど大きい重みを与えても良い。或いは一定以上の勾配強度にのみ重みを1とし、一定未満の勾配強度には重みを0としても良い。或いは基準領域内で比較し勾配強度の大きい場合にのみ重みを1とし、一定未満の勾配強度には重みを0としても良い。
【0114】
次に、ステップS716で勾配方向の重み付き分散、重み付き標準偏差、重み付き平均合成ベクトル長、又は重み付き平均合成ベクトル長の2乗を統一性とし、重みとして勾配強度を利用した時の効果を説明する。図11は、実施形態1の信頼度算出部における処理の効果を説明するための図である。
【0115】
図11において、局所領域620A及び局所領域620Bは局所領域620C及び局所領域620Dよりもより大きい重みをもつ。ここで、勾配方向1130A及び勾配方向1130Bは同じ方向である。よって、重みを考慮して勾配方向の統一性を評価すると統一性は高いと算出される。つまり、基準画像610を開口問題領域であると正しく判断することができる。
【0116】
尚、ステップS713で算出される勾配方向を利用した場合、もしくは、ステップS714で補正した勾配方向を利用する場合のいずれも上記の効果を得られる。上記のいずれの方法を用いて信頼度を算出しても良いが、ステップS716において適切な重みを利用することで計算処理を軽くすることができる。
【0117】
例えば、ステップS714において数式9で示される補正を行った倍角補正勾配ベクトルvdを勾配方向として算出し、ステップS715において倍角補正勾配ベクトルvdの第1成分と第2成分の二乗和を勾配強度として算出する。
【0118】
そして、ステップS716において勾配強度を重みとして重み付き平均合成ベクトル長の2乗を算出した場合、途中の式であらわれる倍角補正勾配ベクトルvdの第1成分と第2成分の二乗和の部分を打ち消すことができる。具体的には数式22及び数式23を以下の数式24~数式27のように表すことができる。
【0119】
【数24】
【0120】
【数25】
【0121】
【数26】
【0122】
【数27】
【0123】
ここでは、ステップS714での補正を行った結果の倍角補正勾配ベクトルvdを利用している。従って、第1成分と第2成分の二乗和を重みとして選択することが計算コストの削減に寄与しており、勾配方向の内容によって重みを選択することで計算処理を軽くすることができる。
【0124】
尚ここで、ステップS716は、勾配補正ステップにおいて補正された勾配方向と局所領域の勾配強度の少なくとも一方に基づき前記信頼度を生成する信頼度生成ステップとして機能している。又、このとき信頼度算出部116は、信頼度生成手段として機能している。
【0125】
続いて、図7のステップS717において、CPUは、信頼度補正手段としての信頼度補正部117により、ステップS716で算出した信頼度の補正を行う。具体的には、先ず、マッチングに誤差が生じても問題のない方向(誤差許容方向)を取得する。例えば、基準画像を視差算出に利用する場合であれば、マッチング結果が、瞳分割方向であるx軸方向に直交する方向(y軸方向)に誤差を生じていても、視差には影響がない。つまり、y軸方向が誤差許容方向である。
【0126】
次に、基準画像全体の勾配方向を算出する。具体的には、各局所領域の勾配方向の平均値、重み付き平均値、最頻値、又は中央値を基準画像全体の勾配方向としても良い。ここで、平均値は数式12の平均合成ベクトル角度φで定義される。
【0127】
次に、信頼度の補正を行う。誤差許容方向と基準画像全体の勾配方向が近い場合には信頼度を高めるように補正を行う。y軸方向が誤差許容方向の場合には勾配方向が90°もしくはー90°に近い場合に信頼度を高く補正する。例えば、各局所領域の勾配方向の平均値を利用する場合にはCvalが0に近い場合に信頼度を高く補正する。
【0128】
尚、ステップS714で角度を倍角にする補正を行っている場合には、勾配方向が180°に近い場合に信頼度を高く補正する。例えば、各局所領域の勾配方向の平均値を利用する場合にはCvalが-1に近い場合に信頼度を高く補正する。尚。この判断には実験的に決定した閾値を利用して、その閾値に近ければ信頼度を高くしても良い。又、実験的に決定した閾値を利用して十分に大きい信頼度があると判断された場合には、注目画素は信頼し、そうでない場合には信頼しないという判断を行っても良い。
【0129】
次に、本実施形態の画像マッチング部140について説明する。画像マッチング部140は撮像装置100を用いて取得されたA画像とB画像を含む画像組から視差を算出する。具体的には、先ず、撮像装置100を用いて取得されたA画像とB画像を含む画像組を生成・取得し、取得した画像組を本体メモリ(不図示)に記憶させる。取得した画像組に対し、主として光学系122のヴィネッティングに起因して生じる光量バランスの崩れを補正する処理を行っても構わない。
【0130】
具体的には、予め撮像装置100が輝度一定の面光源を撮影した結果に基づき、A画像とB画像の輝度値が、画角に依らず略一定値になるように補正することで、光量バランスを補正することができる。又、例えば撮像素子121にて生じる光ショットノイズ等の影響を低減するために、取得したA画像とB画像にバンドパスフィルタやロ-パスフィルタを施しても構わない。
【0131】
次に、A画像上において、視差算出を行う画素(注目画素)を含む部分領域の画像を基準画像として設定し、B画像に参照画像を設定する。そして、参照画像の位置を所定の方向に移動させながら基準画像と参照画像との相互相関値を算出する。
【0132】
ここで図12(A)、(B)は、基準画像及び参照画像の位置関係を説明するための図である。図12(A)にはA画像810Aが示され、図12(B)にはB画像1210Bが示されている。画像マッチング部140は、A画像1210AとB画像1210Bの相互相関値を算出する。
【0133】
具体的には、先ず、A画像1210A上において、注目画素1220とその近傍画素を含む部分領域を抜き出して、基準画像1211として設定する。次に、B画像1210B上において、基準画像1211と同じ面積(画像サイズ)の領域を抜き出して参照画像1212として設定する。
【0134】
その後、B画像1210B上で参照画像1212を抜き出す位置を移動させて、各移動量(各位置)における参照画像1212と基準画像1211との相互相関値を算出する。これにより、各移動量に対応する相関値デ-タ列からなる相互相関値を算出する。この際に、参照画像1212の移動方向はいかなる方向でも良い。参照画像1212を移動させて相互相関演算を行う方向を視差探索方向と呼ぶ。視差探索方向と瞳分割方向を同じ方向に設定することにより、後述の計算を簡易に行える。
【0135】
相互相関値は、基準画像1211と参照画像1212の相関度を評価できればよく、公知のどのような方法を利用して計算されても良い。例えば、差の二乗和(SSD)や差の絶対値和(SAD)、正規化相互相関(NCC)を用いることもできる。
【0136】
次に、既知の任意の手法により、視差値を算出する。例えば、相互相関値が最小になる位置を視差値としても良い。更にサブピクセル推定を行って小数画素単位の視差を求めても良い。例えば、相互相関値がSSDの場合には、二次関数で内挿を行うことで最小値を求めることができる。又、相互相関値がSADの場合には、等角直線で内挿を行うことで最小値を求めることができる。
【0137】
又は、画像マッチング部140は異なる時刻ニ撮影された複数のA画像もしくはB画像の間のオプティカルフローを算出しても良い。任意の時刻の画像を画像1、別の時刻の画像を画像2として設定する。画像1上において、視差算出を行う画素(注目画素)を含む部分領域の画像を基準画像として設定し、画像2に参照画像を設定する。基準画像と参照画像を利用して前述した視差の算出方法を同様の考え方でオプティカルフローを算出することができる。
【0138】
更に、画像マッチング部140は、信頼度算出装置110を用いて取得された信頼度を利用してマッチング結果の補正を行っても良い。例えば、注目画素の視差の信頼度が閾値より低かった場合、注目画素近傍の結果から補間を行っても良い。
【0139】
この際に、注目画素近傍の結果の中でも信頼度が閾値より高い結果のみを利用し、その平均値もしくは中央値で補間をする処理を行っても良い。もしくは、画像が撮影された時刻に近い時刻の画像から算出された結果を利用して補間を行っても良い。又は、信頼度の高い結果のみを抽出する処理を行っても良い。
【0140】
本実施形態の信頼度算出装置では、勾配方向の統一性を評価することで開口問題領域の判定を行っている。当該処理によれば、基準画像のテクスチャに寄らず開口問題領域の判定を行える。その結果、基準画像が線状のテクスチャを持つ場合やコントラストの強いテクスチャとコントラストの弱いテクスチャを含む場合でも正しく開口問題領域の判定を行うことができる。信頼度算出装置で算出された信頼度を利用することにより、精度の良い画像マッチングの結果を取得することができる。
【0141】
<実施形態2>
以下、図を参照しながら本発明をステレオカメラに適用した実施形態2について詳細に説明する。図13は、実施形態2に係る信頼度算出装置の構成を概略的に示す図である。尚、図13では、図1で説明した構成と同一の部分については、図1の番号と同じ番号を付して説明を省略する。
【0142】
図13において、ステレオカメラとしての撮像装置1300は、信頼度算出装置110と撮像部1320と画像マッチング部140を備える。撮像部1320は、第1の撮像素子としての撮像素子1321と、第2の撮像素子としての撮像素子1322を有する。
【0143】
又、被写体像を第1の撮像素子上に形成する第1の光学系としての光学系1323と、被写体像を第2の撮像素子上に形成する第2の光学系としての光学系1324とを備える。そして第1の撮像素子にて第1の画像(A画像)を取得し、第2の撮像素子にて第2の画像(B画像)を取得する。
【0144】
光学系1323及び1324は複数のレンズ群(不図示)及び絞り(不図示)等から構成され、撮像素子1321又は1322から所定距離離れた位置に射出瞳1325又は1326を有する。この時、光学系1323と1324の光軸は夫々1331と1332である。
【0145】
光学系の位置関係などのパラメータを事前に校正しておくことで正確に画像間の視差を算出することができる。また夫々の光学系でレンズ歪みの補正を行うことでも正確に画像間の視差を算出することができる。尚、実施形態2では距離に応じた視差を有するA画像とB画像を取得する光学系が2つであるが、3つ以上の光学系とそれに対応する撮像素子から構成されたステレオカメラで構成されても良い。
【0146】
実施形態2においては、基線長の設計自由度が向上し、測距分解能を向上することができる。その結果、精度の良い画像マッチングの結果を取得することができる。
【0147】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形が可能であり、それらを本発明の範囲から除外するものではない。又、上記の複数の実施形態を適宜組み合わせても良い。又、本発明は以下のような組み合わせを含む。
【0148】
(構成1)第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理装置であって、前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成手段と、前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成手段と、前記勾配方向に応じて前記勾配方向の補正を行う勾配方向補正手段と、前記勾配方向補正手段により補正された前記勾配方向に基づき前記信頼度を生成する信頼度生成手段と、を有することを特徴とする画像処理装置。
【0149】
(構成2)第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理装置であって、前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成手段と、前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成手段と、前記勾配方向と前記局所領域の勾配強度に基づき前記信頼度を生成する信頼度生成手段と、を有することを特徴とする画像処理装置。
【0150】
(構成3)前記画素値変化生成手段は、前記局所領域に対し画素配列に沿った前記第1の方向と前記第1の方向に直交する前記第2の方向の少なくとも2方向を設定し、前記第1の方向に微分処理を行った第1の微分値及び前記第2の方向に微分処理を行った第2の微分値を算出し、前記第1の微分値に基づいて前記第1の画素値変化を生成し、前記第2の微分値に基づいて前記第2の画素値変化を生成することを特徴とする構成1又は2に記載の画像処理装置。
【0151】
(構成4)前記画素値変化生成手段は、前記局所領域にSobelフィルタ又はPrewittフィルタのいずれかをかけて微分値を算出することを特徴とする構成1~3のいずれか1つに記載の画像処理装置。
【0152】
(構成5)前記画素値変化生成手段は、前記局所領域の中心差分勾配又は中間差分勾配を用いて前記第1の微分値および第2の微分値を算出することを特徴とする構成1~4のいずれか1つに記載の画像処理装置。
【0153】
(構成6)前記勾配方向生成手段は、前記第1の画素値変化と前記第2の画素値変化に基づき前記勾配方向を算出することを特徴とする構成1~5のいずれか1つに記載の画像処理装置。
【0154】
(構成7)前記勾配方向生成手段は、前記第1の画素値変化と前記第2の画素値変化から算出する第1成分及び第2成分を持ったベクトルで前記勾配方向を算出することを特徴とする構成1~6のいずれか1つに記載の画像処理装置。
【0155】
(構成8)前記信頼度生成手段は、前記第1の画素値変化と前記第2の画素値変化の和、最大値、平均値、二乗和、又は前記二乗和の平方根の少なくとも1つを重みとして算出し、前記勾配方向の重み付き分散値、又は重み付き標準偏差値が大きいほど、前記信頼度が高くなるように算出することを特徴とする構成1~7のいずれか1つに記載の画像処理装置。
【0156】
(構成9)前記信頼度生成手段は、
前記第1の画素値変化と前記第2の画素値変化の和、最大値、平均値、二乗和、又は前記二乗和の平方根のいずれかを重みとして算出し、前記勾配方向の重み付き平均合成ベクトル長の値、又は前記重み付き平均合成ベクトル長の2乗値が小さいほど、前記信頼度が高くなるように算出することを特徴とする構成1~8のいずれか1つに記載の画像処理装置。
【0157】
(構成10)前記勾配方向補正手段は、前記局所領域が点対称移動した際に前記局所領域の勾配が同じ値となるよう補正することを特徴とする構成1~9のいずれか1つに記載の画像処理装置。
【0158】
(構成11)前記勾配方向補正手段は、前記勾配方向が所定の利用範囲外の場合に前記利用範囲内になるよう前記勾配方向を+180°又は-180°して補正することを特徴とする構成1~10のいずれか1つに記載の画像処理装置。
【0159】
(構成12)前記勾配方向補正手段は、
前記第1の画素値変化と前記第2の画素値変化の比から前記勾配方向が所定の利用範囲内になるよう範囲を絞って前記勾配方向を算出することを特徴とする構成1~11のいずれか1つに記載の画像処理装置。
【0160】
(構成13)前記勾配方向補正手段は、前記第1の画素値変化及び前記第2の画素値変化の値の正負に基づき前記勾配方向を補正することを特徴とする構成1~12のいずれか1つに記載の画像処理装置。
【0161】
(構成14)前記勾配方向補正手段は、前記勾配方向の角度が2倍になるよう補正することを特徴とする構成1~13のいずれか1つに記載の画像処理装置。
【0162】
(構成15)前記信頼度生成手段は、前記勾配方向の分散、又は標準偏差が大きいほど前記信頼度が高くなるように算出することを特徴とする構成1~14のいずれか1つに記載の画像処理装置。
【0163】
(構成16)前記信頼度生成手段は、前記勾配方向の平均合成ベクトル長の値、又は前記平均合成ベクトル長の2乗値が小さいほど、前記信頼度が高くなるように算出することを特徴とする構成1~15のいずれか1つに記載の画像処理装置。
【0164】
(構成17)前記信頼度生成手段は、前記信頼度を補正する信頼度補正部を含むことを特徴とする構成1~16のいずれか1つに記載の画像処理装置。
【0165】
(構成18)前記信頼度補正部は、基準画像全体の前記勾配方向と誤差許容方向が近い場合に前記信頼度を高めるように補正することを特徴とする構成1~17のいずれか1つに記載の画像処理装置。
【0166】
(構成19)前記信頼度生成手段は、前記局所領域の勾配強度に基づき前記信頼度を生成することを特徴とする構成1~18のいずれか1つに記載の画像処理装置。
【0167】
(構成20)前記マッチングは、異なる時刻に撮影された画像の間のオプティカルフローを算出することを特徴とする構成1~19のいずれか1つに記載の画像処理装置。
【0168】
(構成21)
構成1~20のいずれか1つに記載の画像処理装置と、光学系により形成された被写体像を撮像する撮像手段と、前記第1の画像と前記第2の画像の前記マッチングの前記信頼度に基づき被写体までの距離を測定する測定手段と、前記距離に基づき前記光学系の焦点調整をする焦点調整手段と、を有することを特徴とする撮像装置。
【0169】
(構成22)前記撮像手段は、前記第1の画像を生成するための複数の第1の光電変換部と、前記第2の画像を生成するための複数の第2の光電変換部とを備えることを特徴とする構成21に記載の撮像装置。
【0170】
(構成23)前記撮像手段は、第1の撮像素子と、前記被写体像を前記第1の撮像素子上に形成する第1の光学系と第2の撮像素子と、前記被写体像を前記第2の撮像素子上に形成する第2の光学系とを備え、前記第1の撮像素子にて前記第1の画像を取得し、前記第2の撮像素子にて前記第2の画像を取得することを特徴とする構成21に記載の画像処理装置。
【0171】
(方法1)第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理方法であって、前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成ステップと、前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成ステップと、前記勾配方向に応じて前記勾配方向の補正を行う勾配方向補正ステップと、前記勾配方向補正ステップにおいて補正された前記勾配方向に基づき前記信頼度を生成する信頼度生成ステップと、を有することを特徴とする画像処理方法。
【0172】
(方法2)第1の画像と第2の画像との間のマッチングの信頼度を生成する画像処理方法であって、前記第1の画像又は前記第2の画像に注目画素を含む基準画像を設定して前記基準画像の局所領域ごとに少なくとも第1の方向に沿った第1の画素値変化と第2の方向に沿った第2の画素値変化とを生成する画素値変化生成ステップと、前記第1の画素値変化と前記第2の画素値変化に基づき前記局所領域の勾配方向を生成する勾配方向生成ステップと、前記勾配方向と前記局所領域の勾配強度に基づき前記信頼度を生成する信頼度生成ステップと、を有することを特徴とする画像処理方法。
【0173】
(プログラム)構成1~20のいずれか1つに記載の画像処理装置又は構成21~23のいずれか1つの撮像装置の各手段をコンピュータにより制御するためのコンピュータプログラム。
【0174】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコード(制御プログラム)を記録した記憶媒体を、システムあるいは装置に供給することによって実現してもよい。そして、そのシステムあるいは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたコンピュータ読取可能なプログラムコードを読み出し実行することによっても達成される。
【0175】
その場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態(実施例)の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0176】
100:撮像装置
110:信頼度算出装置
120:撮像部
121:撮像素子
122:光学系
123:射出瞳
130:光軸
140:視差算出部


図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13