特許第6442911号(P6442911)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社リコーの特許一覧

特許6442911視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム
<>
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000003
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000004
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000005
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000006
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000007
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000008
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000009
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000010
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000011
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000012
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000013
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000014
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000015
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000016
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000017
  • 特許6442911-視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム 図000018
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6442911
(24)【登録日】2018年12月7日
(45)【発行日】2018年12月26日
(54)【発明の名称】視差値導出装置、移動体、ロボット、視差値導出方法、及びプログラム
(51)【国際特許分類】
   G01C 3/06 20060101AFI20181217BHJP
【FI】
   G01C3/06 110V
【請求項の数】22
【全頁数】21
(21)【出願番号】特願2014-162248(P2014-162248)
(22)【出願日】2014年8月8日
(65)【公開番号】特開2016-38310(P2016-38310A)
(43)【公開日】2016年3月22日
【審査請求日】2017年7月21日
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(72)【発明者】
【氏名】田村 亮輔
(72)【発明者】
【氏名】齊藤 樹一郎
【審査官】 國田 正久
(56)【参考文献】
【文献】 特開2012−181142(JP,A)
【文献】 特開2007−172500(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 3/06
G01B 11/00
G06T 1/00
G06T 7/60
G08G 1/16
(57)【特許請求の範囲】
【請求項1】
所定の物体を第1の位置で撮像して得た基準画像及び前記物体を第2の位置で撮像して得た比較画像に基づいて、前記物体に対する視差を示す視差値を導出する視差値導出装置であって、
前記基準画像内の基準領域の輝度値と、前記比較画像において前記基準領域に基づくエピポーラ線上でシフトさせることで、シフト量毎に特定される対応領域の候補の各輝度値とに基づいて、前記基準領域に対する前記対応領域の候補の非類似度を算出する第1の算出手段と、
前記基準画像内の基準領域の輝度値に基づいて、前記基準領域に対する正規化倍率を算出する第2の算出手段と、
前記第1の算出手段によって算出された前記各非類似度に対して前記正規化倍率を適用することで、前記非類似度を変更する変更手段と、
前記変更手段による変更後の一の基準領域に対する対応領域の候補の各非類似度と、前記変更手段による変更後の他の基準領域に対する対応領域の候補の各非類似度とを、前記シフト量毎に合成する合成手段と、
前記一の基準領域の前記基準画像における位置と、前記合成手段による合成後の非類似度が最小となる対応領域の前記比較画像における位置とに基づいて、前記視差値を導出する導出手段と、
を有することを特徴とする視差値導出装置。
【請求項2】
前記第2の算出手段は、前記基準画像内の基準領域の輝度値に基づいて、自己相関値を算出し、当該自己相関値から前記正規化倍率を算出することを特徴とする請求項1に記載の視差値導出装置。
【請求項3】
前記第2の算出手段は、前記基準画像内の基準領域の輝度値と、前記基準画像において前記エピポーラ線上でシフトさせることで、シフト量毎に特定される所定領域の各輝度値とに基づいて、前記基準領域に対する前記自己相関値を算出することを特徴とする請求項2に記載の視差値導出装置。
【請求項4】
前記第2の算出手段は、前記基準画像における隣接画素の輝度値の差に基づいて、前記自己相関値を算出することを特徴とする請求項2に記載の視差値導出装置。
【請求項5】
前記変更手段は、前記正規化倍率を適用することで変更された前記各非類似度のうち、閾値を越えた非類似度を、当該閾値よりも高い所定値に変更することを特徴とする請求項1乃至4のいずれか一項に記載の視差値導出装置。
【請求項6】
前記所定値は第1の所定値であり、前記変更手段は、前記閾値以下の非類似度を、前記閾値よりも低い第2の所定値に変更することを特徴とする請求項5に記載の視差値導出装置。
【請求項7】
前記第2の所定値はゼロであることを特徴とする請求項6に記載の視差値導出装置。
【請求項8】
所定の物体を第1の位置で撮像して得た基準画像及び前記物体を第2の位置で撮像して得た比較画像に基づいて、前記物体に対する視差を示す視差値を導出する視差値導出装置であって、
前記基準画像内の基準領域の輝度値と、前記比較画像において前記基準領域に基づくエピポーラ線上でシフトさせることで、シフト量毎に特定される対応領域の候補の各輝度値とに基づいて、前記基準領域に対する前記対応領域の候補の類似度を算出する第1の算出手段と、
前記基準画像内の基準領域の輝度値に基づいて、前記基準領域に対する正規化倍率を算出する第2の算出手段と、
前記第1の算出手段によって算出された前記各類似度に対して前記正規化倍率を適用することで、前記類似度を変更する変更手段と、
前記変更手段による変更後の一の基準領域に対する対応領域の候補の各類似度と、前記変更手段による変更後の他の基準領域に対する対応領域の候補の各類似度とを、前記シフト量毎に合成する合成手段と、
前記一の基準領域の前記基準画像における位置と、前記合成手段による合成後の類似度が最大となる対応領域の前記比較画像における位置とに基づいて、前記視差値を導出する導出手段と、
を有することを特徴とする視差値導出装置。
【請求項9】
前記第2の算出手段は、前記基準画像内の基準領域の輝度値に基づいて、自己相関値を算出し、当該自己相関値から前記正規化倍率を算出することを特徴とする請求項8に記載の視差値導出装置。
【請求項10】
前記第2の算出手段は、前記基準画像内の基準領域の輝度値と、前記基準画像において前記エピポーラ線上でシフトさせることで、シフト量毎に特定される所定領域の各輝度値とに基づいて、前記基準領域に対する前記自己相関値を算出することを特徴とする請求項9に記載の視差値導出装置。
【請求項11】
前記第2の算出手段は、前記基準画像における隣接画素の輝度値の差に基づいて、前記自己相関値を算出することを特徴とする請求項9に記載の視差値導出装置。
【請求項12】
前記変更手段は、前記正規化倍率を適用することで変更された前記各類似度のうち、閾値以下の類似度を、当該閾値よりも低い所定値に変更することを特徴とする請求項8乃至11のいずれか一項に記載の視差値導出装置。
【請求項13】
前記所定値は第1の所定値であり、前記変更手段は、前記閾値を越えた類似度を、前記閾値よりも高い第2の所定値に変更することを特徴とする請求項12に記載の視差値導出装置。
【請求項14】
前記第1の所定値はゼロであることを特徴とする請求項13に記載の視差値導出装置。
【請求項15】
請求項1乃至14のいずれか一項に記載の視差値導出装置を備えたことを特徴とする移動体。
【請求項16】
前記移動体は、車両又はロボットであることを特徴とする請求項15に記載の移動体。
【請求項17】
請求項1乃至14のいずれか一項に記載の視差値導出装置を備えたことを特徴とするロボット。
【請求項18】
前記ロボットは、固定設置される工業用ロボットであることを特徴とする請求項17に記載のロボット。
【請求項19】
所定の物体を第1の位置で撮像して得た基準画像及び前記物体を第2の位置で撮像して得た比較画像に基づいて、前記物体に対する視差を示す視差値を導出する視差値導出方法であって、
前記基準画像内の基準領域の輝度値と、前記比較画像において前記基準領域に基づくエピポーラ線上でシフトさせることで、シフト量毎に特定される対応領域の候補の各輝度値とに基づいて、前記基準領域に対する前記対応領域の候補の非類似度を算出する第1の算出ステップと、
前記基準画像内の基準領域の輝度値に基づいて、前記基準領域に対する正規化倍率を算出する第2の算出ステップと、
前記第1の算出ステップによって算出された前記各非類似度に対して前記正規化倍率を適用することで、前記非類似度を変更する変更ステップと、
前記変更ステップによる変更後の一の基準領域に対する対応領域の候補の各非類似度と、前記変更ステップによる変更後の他の基準領域に対する対応領域の候補の各非類似度とを、前記シフト量毎に合成する合成ステップと、
前記一の基準領域の前記基準画像における位置と、前記合成ステップによる合成後の非類似度が最小となる対応領域の前記比較画像における位置とに基づいて、前記視差値を導出する導出ステップと、
を含むことを特徴とする視差値導出方法。
【請求項20】
所定の物体を第1の位置で撮像して得た基準画像及び前記物体を第2の位置で撮像して得た比較画像に基づいて、前記物体に対する視差を示す視差値を導出する視差値導出方法であって、
前記基準画像内の基準領域の輝度値と、前記比較画像において前記基準領域に基づくエピポーラ線上でシフトさせることで、シフト量毎に特定される対応領域の候補の各輝度値とに基づいて、前記基準領域に対する前記対応領域の候補の類似度を算出する第1の算出ステップと、
前記基準画像内の基準領域の輝度値に基づいて、前記基準領域に対する正規化倍率を算出する第2の算出ステップと、
前記第1の算出ステップによって算出された前記各類似度に対して前記正規化倍率を適用することで、前記類似度を変更する変更ステップと、
前記変更ステップによる変更後の一の基準領域に対する対応領域の候補の各類似度と、前記変更ステップによる変更後の他の基準領域に対する対応領域の候補の各類似度とを、前記シフト量毎に合成する合成ステップと、
前記一の基準領域の前記基準画像における位置と、前記合成ステップによる合成後の類似度が最大となる対応領域の前記比較画像における位置とに基づいて、前記視差値を導出する導出ステップと、
を含むことを特徴とする視差値導出方法。
【請求項21】
コンピュータに、請求項19に記載の方法を実行させることを特徴とするプログラム。
【請求項22】
コンピュータに、請求項20に記載の方法を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体を撮像して得られた複数の画像から、物体に対する視差を示す視差値を導出する発明に関する。
【背景技術】
【0002】
従来から、ステレオ画像法によって、ステレオカメラから物体に対する視差を導き出し、この視差を示す視差値によって、三角測量の原理に基づき、ステレオカメラから物体までの距離を測定する測距方法が知られている。この測距方法により、例えば、自動車間の距離や、自動車と障害物間の距離が測定され、自動車の衝突防止に役立てている。
【0003】
また、視差値の求め方としては、ステレオマッチング処理が用いられている。このステレオマッチング処理は、ステレオカメラの2つのカメラのうち、一方のカメラによって得られた基準画像内の注目する基準画素に対して、他方のカメラによって得られた比較画像内の複数の対応画素の候補を順次シフトしながら、画像信号が最も類似する画素である対応画素の位置を求めることで、基準画像と比較画像の間の視差値を検出する。一般的には、2つのカメラによって得られた画像信号の輝度値を比較することで、比較する輝度値のコスト値(Cost:ここでは「非類似度」)が最も低い画素の位置が求められる。
【0004】
上述のようなステレオマッチング処理として、画像間の類似性を評価するために、比較する画像から領域を切り出し、その領域に対する輝度差の総和(SAD; Sum of Absolute Difference)、輝度差の2乗和(SSD: Sum of Squared Differece)、正規化相互相関(ZNCC; Zero-mean Normalized Cross- Correlation)などを求めるブロックマッチング法がある。
【0005】
但し、画像におけるテクスチャが弱い部分では、画像としての特徴を抽出することが困難であり、ブロックマッチング法によっては、精度の高い視差を得ることができない場合がある。そこで、正確な視差を導出する方法として、基準画像上の基準画素に対する比較画像上の画素のコスト値だけではなく、比較画像上の画素の周囲の画素のコスト値を集約して、テクスチャが弱い物体に対する視差を導出する技術が提案されている(特許文献1参照)。
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載された方法を用いて自動車間の距離等を測距する場合、テクスチャの弱い路面におけるコスト値が、テクスチャの強い周囲の先行車両等におけるコスト値の影響を受けてしまう。これにより、正確なコスト値を導き出すことができないという課題が生じる。
【課題を解決するための手段】
【0007】
上述の課題を解決するため、請求項1に係る発明は、所定の物体を第1の位置で撮像して得た基準画像及び前記物体を第2の位置で撮像して得た比較画像に基づいて、前記物体に対する視差を示す視差値を導出する視差値導出装置であって、前記基準画像内の基準領域の輝度値と、前記比較画像において前記基準領域に基づくエピポーラ線上でシフトさせることで、シフト量毎に特定される対応領域の候補の各輝度値とに基づいて、前記基準領域に対する前記対応領域の候補の非類似度を算出する第1の算出手段と、前記基準画像内の基準領域の輝度値に基づいて、前記基準領域に対する正規化倍率を算出する第2の算出手段と、前記第1の算出手段によって算出された前記各非類似度に対して前記正規化倍率を適用することで、前記非類似度を変更する変更手段と、前記変更手段による変更後の一の基準領域に対する対応領域の候補の各非類似度と、前記変更手段による変更後の他の基準領域に対する対応領域の候補の各非類似度とを、前記シフト量毎に合成する合成手段と、前記一の基準領域の前記基準画像における位置と、前記合成手段による合成後の非類似度が最小となる対応領域の前記比較画像における位置とに基づいて、前記視差値を導出する導出手段と、を有することを特徴とする視差値導出装置である。
【発明の効果】
【0008】
以上説明したように本発明によれば、各非類似度に対して正規化倍率を適用することで、テクスチャの弱い物体のコスト値の特徴が消えてしまう問題を防ぐことができる。よって、テクスチャの強弱の影響を抑えたコスト値を使用するため、より正確な視差値を導き出すことができるという効果を奏する。
【図面の簡単な説明】
【0009】
図1】撮像装置から物体までの距離を導き出す原理の説明図である。
図2】(a)は基準画像、(b)は(a)に対する高密度視差画像、(c)は(a)に対するエッジ視差画像を示す概念図である。
図3】(a)は基準画像における基準画素を示す概念図、(b)は(a)の基準画素に対して比較画像における対応画素の候補を順次シフトしながらシフト量を算出する際の概念図である。
図4】シフト量毎のコスト値を示すグラフである。
図5】合成コスト値を導き出すための概念図である。
図6】視差値毎の合成コスト値を示すグラフである。
図7】(a)は本発明の一実施形態に係る視差値導出装置を搭載した自動車の側面を表す概略図、(b)は自動車の正面を示す概略図である。
図8】視差値導出装置の概観図である。
図9】視差値導出装置の全体のハードウェア構成図である。
図10】視差値導出装置の主要部のハードウェア構成図である。
図11】第1の実施形態の処理を示したフローチャートである。
図12】(a)は基準画像、(b)は基準画像の一部、(c)はコスト変更しない場合の(b)に対する高密度視差画像、(d)は正規化によってコスト変更した場合の(b)に対する高密度視差画像、(e)は正規化後の2値化によってコスト変更した場合の(b)に対する高密度視差画像を示す概念図である。
図13】(a)は自己相関値を示すグラフ、(b)は(a)の値を正規化した後の値を示すグラフである。
図14】(a)はコスト変更しない場合のコスト値を示すグラフ、(b)は正規化倍率を適用した後のコスト値を示すグラフ、(c)は(a)から導かれた合成コスト値を示すグラフ、(d)は(b)から導かれた合成コスト値を示すグラフである。
図15】第2の実施形態の処理を示したフローチャートである。
図16】(a)は正規化倍率を適用した後のコスト値を示すグラフ、(b)は正規化倍率を適用した後に2値化したコスト値を示すグラフ、(c)は(a)から導かれた合成コスト値を示すグラフ、(d)は(b)から導かれた合成コスト値を示すグラフである。
【発明を実施するための形態】
【0010】
以下、図1乃至図16を用いて、本発明の一実施形態について説明する。
【0011】
〔SGM法を用いた測距方法の概略〕
まず、図1乃至図6を用いて、SGM(Semi-Global Matching)法を用いた測距方法の概略について説明する。
【0012】
<測距の原理>
図1を用いて、ステレオ画像法により、ステレオカメラから物体に対する視差を導き出し、この視差を示す視差値によって、ステレオカメラから物体までの距離を測定する原理について説明する。なお、図1は、撮像装置から物体までの距離を導き出す原理の説明図である。また、以下では、説明を簡略化するため、複数の画素からなる所定領域ではなく、一画素単位で説明する。
【0013】
(視差値算出)
まず、図1で示される撮像装置10aおよび撮像装置10bによって撮像された各画像を、それぞれ基準画像Iaおよび比較画像Ibとする。なお、図1では、撮像装置10aおよび撮像装置10bが平行等位に設置されているものとする。図1において、3次元空間内の物体E上のS点は、撮像装置10aおよび撮像装置10bの同一水平線上の位置に写像される。すなわち、各画像中のS点は、基準画像Ia中の点Sa(x,y)および比較画像Ib中の点Sb(X,y)において撮像される。このとき、視差値Δは、撮像装置10a上の座標におけるSa(x,y)と撮像装置10b上の座標におけるSb(X,y)とを用いて、(式1)のように表される。
【0014】
Δ=X−x (式1)
ここで、図1のような場合には、基準画像Ia中の点Sa(x,y)と撮像レンズ11aから撮像面上におろした垂線の交点との距離をΔaにし、比較画像Ib中の点Sb(X,y)と撮像レンズ11bから撮像面上におろした垂線の交点との距離をΔbにすると、視差値Δ=Δa+Δbとなる。
【0015】
(距離算出)
また、視差値Δを用いることで、撮像装置10a,10bと物体Eとの間の距離Zを導き出すことができる。具体的には、距離Zは、撮像レンズ11aの焦点位置と撮像レンズ11bの焦点位置とを含む面から物体E上の特定点Sまでの距離である。図1に示されるように、撮像レンズ11a及び撮像レンズ11bの焦点距離f、撮像レンズ11aと撮像レンズ11bとの間の長さである基線長B、及び視差値Δを用いて、(式2)により、距離Zを算出することができる。
【0016】
Z=(B×f)/Δ (式2)
この(式2)により、視差値Δが大きいほど距離Zは小さく、視差値Δが小さいほど距離Zは大きくなる。
【0017】
<SGM法>
続いて、図2乃至図6を用いて、SGM法を用いた測距方法について説明する。なお、図2(a)は基準画像、図2(b)は(a)に対する高密度視差画像、図2(c)は(a)に対するエッジ視差画像を示す概念図である。ここで、基準画像は、物体が輝度によって示された画像である。高密度視差画像は、SGM法によって、基準画像から導き出された画像であり、基準画像の各座標における視差値を示した画像である。エッジ視差画像は、ブロックマッチング法から導き出された画像であり、基準画像のエッジ部のような比較的テクスチャの強い部分のみの視差値を示した画像である。
【0018】
SGM法は、テクスチャが弱い物体に対しても適切に上記視差値を導き出す方法であり、図2(a)に示されている基準画像に基づいて、図2(b)に示されている高密度視差画像を導き出す方法である。なお、ブロックマッチング法を用いた場合には、図2(a)に示されている基準画像に基づいて、図2(c)に示されているエッジ視差画像が導き出される。図2(b)及び図2(c)における破線の楕円内を比べると分かるように、高密度視差画像は、エッジ視差画像に比べてテクスチャが弱い道路等の詳細な情報を表すことができるため、より詳細な測距を行うことができる。
【0019】
このSGM法は、非類似度であるコスト値を算出して直ちに視差値を導出せず、コスト値を算出後、更に、合成非類似度である合成コスト値 (Synthesis Cost)を算出することで視差値を導出し、最終的にほぼ全ての画素における視差値を示す視差画像(ここでは、高密度視差画像)を導き出す方法である。
【0020】
なお、ブロックマッチング法の場合は、コスト値を算出する点はSGM法と同じであるが、SGM法のように、合成コスト値を算出せずに、エッジ部のような比較的テクスチャの強い部分の視差値のみが導出される。
【0021】
(コスト値の算出)
まず、図3及び図4を用いて、コスト値C(p,d)の算出方法について説明する。図3(a)は基準画像における基準画素を示す概念図、図3(b)は(a)の基準画素に対して比較画像における対応画素の候補を順次シフトしながら(ずらしながら)シフト量(ずれ量)を算出する際の概念図である。図4は、シフト量毎のコスト値を示すグラフである。ここで、対応画素は、基準画像内の基準画素に最も類似する比較画像内の画素である。なお、以降、C(p,d)は、C(x,y,d)を表すものとして説明する。
【0022】
図3(a)に示されているように、基準画像内の所定の基準画素p(x,y)と、この基準画素p(x,y)に対する比較画像内におけるエピポーラ線(Epipolar Line)上の複数の対応画素の候補q(x+d,y)との各輝度値に基づいて、基準画素p(x,y)に対する各対応画素の候補q(x+d,y)のコスト値C(p,d)が算出される。dは、基準画素pと対応画素の候補qのシフト量(ずれ量)であり、本実施形態では、画素単位のシフト量が表されている。即ち、図3では、対応画素の候補q(x+d,y)を予め指定された範囲(例えば、0<d<25)において順次一画素分シフトしながら、対応画素の候補q(x+d,y)と基準画素p(x,y)との輝度値の非類似度であるコスト値C(p,d)が算出される。
【0023】
このようにして算出されたコスト値C(p,d)は、図4に示されているように、シフト量d毎に示されるグラフによって表すことができる。図4では、コスト値Cは、シフト量d=5,12,19の場合が0(ゼロ)となるため、最小値を求めることができない。このように、テクスチャが弱い物体の場合には、コスト値Cの最小値を求めることは困難になる。
【0024】
(合成コスト値の算出)
次に、図5及び図6を用いて、合成コスト値Ls(p,d)の算出方法について説明する。図5は、合成コスト値を導き出すための概念図である。図6は、視差値毎の合成コスト値を示すグラフである。本実施形態における合成コスト値の算出は、コスト値C(p,d)の算出だけでなく、所定の基準画素p(x,y)の周辺の画素を基準画素とした場合のコスト値を、基準画素p(x,y)におけるコスト値C(p,d)に集約させて、合成コスト値Ls(p,d)を算出する方法である。
【0025】
ここで、合成コスト値の算出方法について、より詳細に説明する。合成コスト値Ls(p,d)を算出するためには、まず、経路コスト値Lr(p,d)を算出する必要がある。(式3)は、経路コスト値Lr(p,d)を算出するための式であり、(式4)は、合成コスト値Lsを算出するための式である。
【0026】
Lr(p,d)=C(p,d)+min{(Lr(p−r,d),Lr(p−r,d−1)+P1,Lr(p−r,d+1)+P1,Lrmin(p−r)+p2} (式3)
ここで、rは、集約方向の方向ベクトルを示し、x方向およびy方向の2成分を有する。min{}は、最小値を求める関数である。Lrmin(p−r)は、pをr方向に1画素シフトした座標において、シフト量dを変化させた際のLr(p−r,d)の最小値を示す。なお、Lrは、(式3)に示されているように再帰的に適用される。また、P1及びP2は、予め実験により定められた固定パラメータであり、経路上で隣接する基準画素の視差値Δが連続になりやすいようなパラメータになっている。例えば、P1=48、P2=96である。
【0027】
また、(式3)に示されているように、Lr(p,d)は、基準画素p(x,y)におけるコスト値Cに、図5に示されているr方向の各画素における各画素の経路コスト値Lrの最小値を加算することで求められる。このように、r方向の各画素におけるLrを求めるため、最初は、基準画像p(x,y)のr方向の一番端の画素からLrを求め、r方向に沿ってLrが求められる。
【0028】
そして、図5に示されているように、8方向のLr,Lr45,Lr90,Lr135,Lr180,Lr225,Lr270,Lr315求められ、最終的に(式4)に基づいて、合成コスト値Lsが求められる。
【0029】
【数1】
【0030】
このようにして算出された合成コスト値Ls(p,d)は、図6に示されているように、シフト量d毎に示されるグラフによって表すことができる。図6では、合成コスト値Lsは、シフト量d=3の場合が最小値となるため、視差値Δ=3として算出される。なお、上記説明ではrの数を8として説明しているが、これに限られることはない。例えば、8方向を更に2つに分割して16方向、3つに分割して24方向等にしてもよい。
【0031】
〔本実施形態の具体的な説明〕
以下、図7乃至図19を用いて、本実施形態の具体的な説明を行う。ここでは、自動車に搭載される視差値導出装置1について説明する。
【0032】
<<第1の実施形態>>
以降、図7乃至図14を用いて、第1の実施形態について説明する。
【0033】
<実施形態の構成>
まず、図7乃至図10を用いて、本実施形態の構成について説明する。
【0034】
(外観構成)
図7及び図8を用いて、本実施形態の視差値導出装置1の外観構成を説明する。なお、図7(a)は本発明の一実施形態に係る視差値導出装置を搭載した自動車の側面を表す概略図、図7(b)は自動車の正面を示す概略図である。図8は、視差値導出装置の概観図である。
【0035】
図7(a),(b)に示されているように、本実施形態の視差値導出装置1は、撮像装置10a及び撮像装置10bを備えており、撮像装置10a及び撮像装置10bは自動車の進行方向前方の光景を撮像することができるように設置される。
【0036】
また、図8に示されているように、視差値導出装置1は、本体部2と、本体部2に対して設けられた一対の円筒状の撮像装置10a及び撮像装置10bとによって構成されている。
【0037】
(全体のハードウェア構成)
次に、図9を用いて、視差値導出装置1の全体のハードウェア構成について説明する。なお、図9は、視差値導出装置の全体のハードウェア構成図である。
【0038】
図9に示されているように、視差値導出装置1は、撮像装置10a、撮像装置10b、信号変換装置20a、信号変換装置20b、及び画像処理装置30を備えている。
【0039】
このうち、撮像装置10aは、前方の光景を撮像して画像を表すアナログ信号を生成するものであり、撮像レンズ11a、絞り12a、画像センサ13aを備えている。撮像レンズ11aは、撮像レンズ11aを通過する光を屈折させて物体の像を結像させるための光学素子である。絞り12aは、撮像レンズ11aを通過した光の一部を遮ることによって、後述する画像センサ13aに入力される光の量を調整する。画像センサ13aは、撮像レンズ11a及び絞り12aから入力された光を電気的なアナログの画像信号に変換する半導体の素子であり、CCD(Charge Coupled Devices)やCMOS(Complementary Metal Oxide Semiconductor)によって実現される。なお、撮像装置10bは撮像装置10aと同じ構成を備えているため、撮像装置10bについての説明は省略する。また、撮像レンズ11aと撮像レンズ11bは、それぞれのレンズ面が互いに同一平面内になるように設置されている。
【0040】
また、信号変換装置20aは、撮像された画像を表すアナログ信号をデジタル形式の画像データに変換するものであり、CDS(Correlated Double Sampling)21a、AGC(Auto Gain Control)22a、ADC(Analog Digital Converter)23a、及びフレームメモリ24aを備えている。CDS21aは、画像センサ13aによって変換されたアナログの画像信号から相関二重サンプリングによってノイズを除去する。AGC22aは、CDS21aによってノイズが除去されたアナログの画像信号の強度を制御する利得制御を行う。ADC23aは、AGC22aによって利得制御されたアナログの画像信号をデジタル形式の画像データに変換する。フレームメモリ24aは、ADC23aによって変換された画像データを記憶する。
【0041】
同様に、信号変換装置20bは、撮像装置10bによって変換されたアナログの画像信号から画像データを取得するものであり、CDS21b、AGC22b、ADC23b、及びフレームメモリ24bを有している。なお、CDS21b、AGC22b、ADC23b、及びフレームメモリ24bはそれぞれCDS21a、AGC22a、ADC23a、及びフレームメモリ24aと同じ構成であるため、それらについての説明は省略する。
【0042】
更に、画像処理装置30は、信号変換装置20a及び信号変換装置20bによって変換された画像データを処理するための装置である。この画像処理装置30は、FPGA(Field Programmable Gate Array)31、CPU(Central Processing Unit)32、ROM(Read Only Memory)33、RAM(Random Access Memory)34、I/F(Interface)35及び上記各構成要素31〜35を図9に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン39を備えている。
【0043】
このうち、FPGA31は、集積回路であり、ここでは、画像データが表す画像における視差値Δを算出する処理を行う。CPU32は、視差値導出装置1の各機能を制御する。ROM33は、CPU32が視差値導出装置の各機能を制御するために実行する画像処理用プログラムを記憶している。RAM34はCPU32のワークエリアとして使用される。I/F35は、外部コントローラ等と通信するためのインターフェイスであり、例えば、自動車のCAN(Controller Area Network)等に接続されることができる。
【0044】
なお、上記画像処理用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、コンピュータで読み取り可能な記録媒体に記録して流通させてもよい。この記録媒体は、CD−ROMやSDカード等である。
【0045】
(主要部のハードウェア構成)
次に、図3図9及び図10を用いて、視差値導出装置1の主要部のハードウェア構成について説明する。なお、図10は、視差値導出装置の主要部のハードウェア構成図である。
【0046】
図9におけるFPGA31は、図10に示されているように、コスト算出部310、自己相関値算出部320、コスト変更部330、コスト合成部340、視差値導出部350を備えている。これらは、FPGA31の回路の一部であるが、上記プログラムが実行されることにより、同じ処理を行うことができるようにしてもよい。なお、コスト算出部310は、第1の算出手段の一例であり、自己相関値算出部320は、第2の算出手段の一例である。
【0047】
このうち、コスト算出部310は、図3に示されているように、基準画像(図3(a)参照)内の基準画素p(x,y)の輝度値と、比較画像(図3(b)参照)内において基準画素p(x,y)に基づくエピポーラ線EL上でシフトさせることでシフト量d毎に特定される対応画素の候補q(x+d,y)の各輝度値とに基づいて、基準画素p(x,y)に対する対応画素の候補q(x+d,y)の各コスト値Cを算出する。
【0048】
自己相関値算出部320は、基準画像(図3(a)参照)内の基準領域p(x,y)の輝度値と、同じく基準画像においてエピポーラ線EL上でシフトさせることでシフト量d毎に特定される所定領域の各輝度値とに基づいて、基準領域p(x,y)に対する自己相関値を算出する。即ち、コスト算出部310は、異なる画像(基準画像、比較画像)を比較してコスト値Cを算出するのに対して、自己相関値算出部320は、同じ画像(基準画像)を比較して自己相関値を算出する点で、両者は相違する。なお、本実施形態の自己相関値算出部320は、基準画像に対して同じ基準画像を時間的にシフトして比較するのではなく、基準画像に対して同じ基準画像を位置的にシフトして比較している。
【0049】
更に、自己相関値算出部320は、自己相関値を正規化することにより、正規化した際の倍率を算出する。具体的には、自己相関値算出部320は、自己相関値を所定の範囲(例えば、0〜100の範囲)に正規化した際の倍率(以下、「正規化倍率」という)を用いる。なお、下記(式5)に基づいて正規化倍率kが算出される。
【0050】
k=100/max{A} (式5)
ここで、max{}は最大値を求める関数である。Aは自己相関値である。
【0051】
また、コスト変更部330は、コスト算出部310によって算出され各コスト値Cに対して、自己相関値算出部320によって算出された自己相関値に基づく正規化倍率を適用することで(k×C)、コスト値Cを変更する。
【0052】
コスト合成部340は、コスト変更部330による変更後の一の基準画素p(x,y)に対する対応画素の候補q(x+d,y)の各コスト値Cと、コスト算出部310(コスト変更部)による変更後の他の基準画素p’(x’,y’)に対する対応画素の候補q’(x’+d,y’)の各コスト値Cと、シフト量d毎に合成し、合成コスト値Lsを出力する。なお、この合成の処理は、(式3)に基づいてコスト値Cから経路コスト値Lrを算出した後、更に、(式4)に基づいて各方向における経路コスト値Lrを加算して、最終的に合成コスト値Lsを算出する処理である。
【0053】
更に、視差値導出部350は、一の基準画素p(x,y)の基準画像おける位置(x,y)と、コスト合成部340による合成後の合成コスト値Lsが最小となる対応画素q(x+Δ,y)の比較画像における位置(x+Δ,y)とに基づいて視差値Δを導出し、各画素における視差値を示す視差画像を出力する。
【0054】
<実施形態の処理または動作>
次に、図9乃至図14を用いて、本実施形態の処理または動作を説明する。本実施形態では、図12(a)に示されている基準画像から合成コスト値Lsが導き出される場合について説明する。なお、図面を分かり易く説明するため、図12(a)の一部の画像を、図12(b)に示す。
【0055】
図11は、第1の実施形態の処理を示したフローチャートである。図12において、(a)は基準画像、(b)は基準画像の一部、(c)はコスト変更しない場合の(b)に対する高密度視差画像、(d)は正規化によってコスト変更した場合の(b)に対する高密度視差画像、(e)は正規化後の2値化によってコスト変更した場合の(b)に対する高密度視差画像を示す概念図である。図13において、(a)は自己相関値を示すグラフ、(b)は(a)の値を正規化した後の値を示すグラフである。図14において、(a)はコスト変更しない場合のコスト値を示すグラフ、(b)は正規化倍率を適用した後のコスト値を示すグラフ、(c)は(a)から導かれた合成コスト値を示すグラフ、(d)は(b)から導かれた合成コスト値を示すグラフである。なお、図13(a),(b)及び図14(a),(b)において、グラフの縦軸はコスト値C、横軸はシフト量dである。また、図14(c),(d)において、グラフの縦軸は合成コスト値Ls、横軸はシフト量dである。
【0056】
まず、図9に示されている撮像装置10aは、物体Eを撮像してアナログの画像データを生成する(ステップS1−1)。同じく、撮像装置10aは、物体を撮像してアナログの画像データを生成する(ステップS1−2)。
【0057】
次に、信号変換装置20aは、アナログの画像データを、デジタルの画像データに変換する(ステップS2−1)。同じく、信号変換装置20bは、アナログの画像データを、デジタルの画像データに変換する(ステップS2−2)。
【0058】
次に、信号変換装置20aは、画像処理装置30のFPGA31に、変換後のデジタルの画像データを基準画像のデータとして出力する(ステップS3−1)。この基準画像の概念図は、図12(a)に示されている。同じく、信号変換装置20bは、画像処理装置30のFPGA31に、変換後のデジタルの画像データを比較画像のデータとして出力する(ステップS3−2)。この比較画像は、撮像装置10bによって撮像された画像であるが、図12(a)に示されている基準画像と極端な違いはないため、比較画像の概念図は図示しないで省略する。
【0059】
次に、図10に示されているコスト算出部310は、基準画像のデータ及び比較画像のデータに基づき、図14(a)のグラフで示されているように、シフト量d毎のコスト値Cを算出する(ステップS4)。なお、図14(a)では、コスト値Cの最小値が複数存在している。仮に、自己相関値算出部320及びコスト変更部330が無い場合、コスト合成部340は、図14(c)のグラフで示されているように、シフト量d毎に合成コスト値Lsを生成して出力すると、合成コスト値Lsの最小値がd=5となる。そして、高密度視差画像は、図12(c)で示されているように、輪郭が比較的曖昧な形状の物体を示す画像となる。
【0060】
次に、図10に示されている自己相関値算出部320は、基準画像のデータに基づき、自己相関値を算出する(ステップS5)。なお、図13(a)では、シフト量dが大きくなるにつれて自己相関値がなだらかに大きくなるパターンが示されている。
【0061】
次に、自己相関値算出部320は、自己相関値を正規化することにより、正規化倍率を算出する(ステップS6)。図13では、図13(a)で示された自己相関値(コスト値)が、シフト量d=22の場合に最大値40となるため、自己相関値算出部320は、シフト量d=22における自己相関値(コスト値)が100となるように、各シフト量の自己相関値(コスト値)を変更すると、図13(b)に示されているようなグラフになる。これにより、自己相関値算出部320は、正規化倍率を2.5(=100/40)として算出することができる。
【0062】
次に、コスト変更部330は、コスト算出部310によって算出されたコスト値Cに対して、自己相関値算出部320によって算出された正規化倍率を適用する(掛ける)ことで、コスト値を変更する(ステップS7)。
【0063】
次に、図10に示されているコスト合成部340は、図14(d)のグラフで示されているように、シフト量d毎に合成コスト値Lsを出力する(ステップS8)。この場合、合成コスト値Lsが最小となるシフト量はd=12であるため、視差値導出部350は、視差値Δ=12を出力する。また、この場合の高密度視差画像は、図12(d)に示されているような画像となる。このように、コスト算出部310が、コスト変更しない場合とコスト変更する場合とで、視差値Δが異なる。また、コスト変更する場合の高密度視差画像(図12(d)参照)は、コスト変更しない場合の高密度視差画像(図12(c)参照)に比べて、物体により忠実な画像となる。
【0064】
その後、図9に示されているI/F35から、高密度視差画像が送信され、図示しない視差値導出装置1の外部の装置におけるCPUによって、撮像装置10a,10bと物体Eとの間の距離Zが算出される。
【0065】
<実施形態の主な効果>
以上説明したように本実施形態によれば、各コスト値Cに対して、自己相関値に基づき正規化倍率を適用することで、テクスチャの弱い物体におけるコスト値が、テクスチャの強い周囲の物体におけるコスト値の影響を受けにくくすることができる。よって、より正確なコスト値を導き出すことができるという効果を奏する。
【0066】
<<第2の実施形態>>
以降、図10図12図15及び図16を用いて、第2の実施形態について説明する。
【0067】
<実施形態の構成>
本実施形態は、第1の実施形態の図10におけるコスト変更部330に新たな機能が追加された点以外は、第1の実施形態と同じであるため、コスト変更部330について説明する。
【0068】
本実施形態では、コスト変更部330は、コスト値Cに対して自己相関値に基づく正規化倍率を適用することで、コスト値Cを変更した後、更に、変更後のコスト値Cのうち、閾値Thを超えたコスト値を、この閾値Thよりも高い第1の所定値Hに変更する。また、コスト変更部330は、コスト値Cに対して自己相関値に基づく正規化倍率を適用することで、コスト値Cを変更した後、更に、変更後のコスト値Cのうち、閾値Th以下のコスト値を、この閾値Thよりも低い第2の所定値に変更する。例えば、第2の所定値は0(ゼロ)である。
【0069】
<実施形態の処理または動作>
次に、図12図15乃至図14を用いて、本実施形態の処理または動作を説明する。図15は、第2の実施形態の処理を示したフローチャートである。図16において、(a)は正規化倍率を適用した後のコスト値を示すグラフ、(b)は正規化倍率を適用した後に2値化したコスト値を示すグラフ、(c)は(a)から導かれた合成コスト値を示すグラフ、(d)は(b)から導かれた合成コスト値を示すグラフである。なお、図16(a),(c)は、図14(b),(d)と同じグラフである。なお、本実施形態では、図15において、ステップS11−1〜S17は、それぞれ第1の実施形態における図11のステップS1−1〜S7と同じ処理であるため、その説明を省略する。
【0070】
本実施形態では、コスト変更部330がステップS17によって図16(a)に示されているようにコスト値Cを変更した後、更に、図16(b)に示されているように閾値Th(例えば、C=40)を越えるコスト値Cを所定値(例えば、C=80)に変更する(ステップS18)。更に、コスト変更部330は、図16(a)で示されているように、閾値Th以下のコスト値Cを所定値(例えば、C=0)に変更する(ステップS19)。なお、ステップS18とステップS19は逆の順序によって処理されてもよいし、同時に処理されてもよい。
【0071】
そして、コスト合成部340は、図16(d)で示されているように、シフト量d毎に合成コスト値Lsを出力する(ステップS20)。この場合、合成コスト値Lsが最小となるシフト量はd=15であるため、視差値導出部330は、視差値Δ=15を出力する。また、この場合の高密度視差画像は、図12(e)に示されているような画像となる。
【0072】
<実施形態の主な効果>
以上説明したように本実施形態によれば、コスト値Cが閾値Thを超える場合には、コスト変更部330は、閾値Thを超えたコスト値Cを、閾値Thよりも高い第1の所定値Hに変更する。これにより、第1の所定値Hよりも大きいコスト値Cが、第1の所定値Hまで下がるため、テクスチャの弱い物体におけるコスト値が、テクスチャの強い周囲の物体におけるコスト値の影響を受けにくくすることができる。よって、より正確なコスト値を導き出すことができるという効果を奏する。
【0073】
また、様々なコスト値Cを第1の所定値Hに変更することで、シフト量dを導き出すためのRAM等の回路規模を小型化することができるという効果を奏する。
【0074】
更に、コスト変更部330は、閾値Th以下のコスト値を、閾値Thよりも低い第2の所定値0に変更する。このように、第1の所定値Hに絞り込んでいないコスト値Cを、第2の所定値0(ゼロ)に変更することで、第1の所定値Hと第2の所定値0の2つだけの値による計算(2値化)によって、シフト量dを導き出すことができるため、更に、回路規模を小型化することができるという効果を奏する。また、第1の所定値Hと第2の所定値0の2つだけの値による計算によって、合成コスト値Lsを算出する際のコスト値Cの大小が過剰に及ぼす影響を軽減でき、実際の物体にさらに忠実な視差値を導出することができる。
【0075】
<<実施形態の補足>>
上記実施形態では、コスト値Cは非類似度として示されているが、類似度として示されてもよい。この場合、合成コスト値Lsが最大となる視差値Δが導出される。また、非類似度と類似度の両者を含めて、一致度としてもよい。
【0076】
また、上記実施形態では、説明の簡略化のために、一画素単位で説明したが、これに限るものではなく、複数の画素からなる所定領域単位で処理されてもよい。この場合、基準画素を含む所定領域は基準領域として示され、対応画素を含む所定領域は対応領域として表される。なお、この基準領域には基準画素のみの場合も含まれ、対応領域には対応画素のみの場合も含まれる。
【0077】
更に、上記実施形態では、コスト算出部310が、コスト変更部の役割も果たしているが、これに限らず、コスト合成部340が、コスト変更部の役割を果たしてもよい。この場合、コスト合成部340は、コスト変更後に、コスト合成を行うことになる。
【0078】
また、上記実施形態では、第2の所定値が0(ゼロ)の場合について説明したが、これに限るものではなく、閾値Thよりも小さければ、第2の所定値が10、20、30等、どのような値であってもよい。
【0079】
更に、上記実施形態では、自動車に搭載される視差値導出装置1について説明したが、これに限るものではない。例えば、車両の一例としての自動車だけでなく、バイク、自転車、車椅子、農業用の耕運機等の車両に搭載されることができてもよい。また、移動体の一例としての車両だけでなく、ロボット等の移動体であってもよい。
【0080】
更に、ロボットは、移動体だけでなく、FA(Factory Automation)において固定設置される工業用ロボット等の装置であってもよい。また、固定設置される装置としては、ロボットだけでなく、防犯用の監視カメラであってもよい。
【0081】
また、上記実施形態では、外部のCPUが距離Zを算出しているが、これに限るものではなく、画像処理装置30のCPU32が距離Zを算出してもよい。
【0082】
更に、上記実施形態では、自己相関値算出部320は、基準画像内の基準領域の輝度値と、基準画像においてシフト量毎に特定される所定領域の各輝度値とに基づいて、自己相関値を算出したが、これに限るものではない。例えば、自己相関値算出部320は、基準画像における隣接画素の輝度値の差(エッジ量)に基づいて、自己相関値を算出してもよい。
【0083】
また、上記実施形態では、コスト値の正規化のための正規化倍率の算出に基準画像の自己相関値を用いると説明したが、これに限るものではない。例えば、基準画像の自己相関値ではなく、テクスチャのコントラスト値を用いて正規化倍率を算出してもよい。更に、コスト値を正規化するのではなく、閾値Thを正規化倍率により可変にすることでコスト変更を行ってもよい。また、コスト値の算出方法において、正規化相互相関(NCC、もしくはZNCC)を用いてコスト値を算出してもよい。
【0084】
<<付記>>
上記実施形態では、以下に示すような発明が開示されている。
【0085】
〔付記項1〕
第1の位置で撮像された基準画像における基準領域と、第2の位置で撮像された比較画像における、前記基準領域に対応する対応領域を含む指定の範囲内の複数の領域各々と、の一致度を算出する第1の算出手段と、
前記一致度を変更するための倍率を算出する第2の算出手段と、
前記一致度に前記倍率を適用して前記一致度を変更する変更手段と、
前記変更手段により変更された前記基準画像における所定の基準領域の周辺の基準領域の一致度と、前記変更手段により変更された前記基準画像における所定の基準領域の一致度と、を合成する合成手段と、
前記合成手段により合成された前記一致度に基づいて、前記所定の基準領域において撮像されている対象の視差値を導出する導出手段と、
を有することを特徴とする視差値導出装置。
【0086】
〔付記項2〕
前記第2の算出手段は、前記第1の位置で撮像された基準画像における、基準領域と所定領域との一致度である自己相関値を算出し、前記自己相関値に基づいて前記倍率を算出する
ことを特徴とする付記項1に記載の視差値導出装置。
【0087】
〔付記項3〕
前記変更手段は、前記倍率を適用することで変更された前記一致度を、所定の閾値に基づいて、第1の所定値に変更することを特徴とする付記項1又は2に記載の視差値導出装置。
【0088】
〔付記項4〕
前記変更手段は、前記閾値に基づいて前記第1の所定値に変更された一致度以外の一致度を、前記閾値に基づいて第2の所定値に変更することを特徴とする付記項1乃至3のいずれか一項に記載の視差値導出装置。
【0089】
〔付記項5〕
前記第2の所定値はゼロであることを特徴とする付記項4に記載の視差値導出装置。
【符号の説明】
【0090】
1 視差値導出装置
2 本体部
10a 撮像装置
10b 撮像装置
20a 信号変換装置
20b 信号変換装置
30 画像処理装置
310 コスト算出部(第1の算出手段の一例)
320 自己相関値算出部(第2の算出手段の一例)
330 コスト変更部(変更手段の一例)
340 コスト合成部(合成手段の一例)
350 視差値導出部(導出手段の一例)
【先行技術文献】
【特許文献】
【0091】
【特許文献1】特開2012−181142号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16