(57)【要約】      （修正有）【課題】複数の画像間において、より精度の高いステレオマッチングを実現するための装置と方法及びプログラムを提供する。【解決手段】少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行うステレオマッチング装置であって、複数の画像における画素間の非類似性を示す指標を算出する非類似性算出部４と、上記指標及び上記画像に基づいて、上記指標を平滑化する平滑化部５と、平滑化部５により平滑化された上記指標に応じて、上記複数の画像間におけるステレオマッチングを実行するマッチング部６とを備えたステレオマッチング装置１を提供する。【選択図】図１
2018205205.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行うステレオマッチング装置であって、
前記複数の画像における画素間の非類似性を示す指標を算出する非類似性算出手段と、
前記指標及び前記画像に基づいて、前記指標を平滑化する平滑化手段と、
前記平滑化手段により平滑化された前記指標に応じて、前記複数の画像間におけるステレオマッチングを実行するマッチング手段とを備えたステレオマッチング装置。
【請求項２】
前記平滑化手段は、前記複数の画像間において、誤対応における前記指標については対応点における前記指標よりも大きな重みで前記平滑化を行う、請求項１に記載のステレオマッチング装置。
【請求項３】
前記平滑化手段は、前記複数の画像間において、ある方向に並ぶ各画素につき輝度勾配の符号が全て一致する場合は前記輝度勾配のノルムが小さいほど、前記符号が少なくとも一対において異なる場合は前記ノルムが大きいほど大きな重みで前記平滑化を行う、請求項１に記載のステレオマッチング装置。
【請求項４】
前記複数の画像は３つ以上の画像からなり、
前記平滑化手段は、前記複数の画像間において、ある方向に並ぶ各画素につき輝度勾配の符号が少なくとも一対において一致する場合は、前記輝度勾配のノルムが小さいほど大きな重みで前記平滑化を行う、請求項１に記載のステレオマッチング装置。
【請求項５】
前記指標は輝度の絶対差である、請求項１に記載のステレオマッチング装置。
【請求項６】
少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行うステレオマッチング方法であって、
前記複数の画像における画素間の非類似性を示す指標を算出する第一のステップと、
前記指標及び前記画像に基づいて、前記指標を平滑化する第二のステップと、
前記第二のステップで平滑化された前記指標に応じて、前記複数の画像間におけるステレオマッチングを実行する第三のステップとを有するステレオマッチング方法。
【請求項７】
前記第二のステップでは、前記複数の画像間において、誤対応における前記指標については対応点における前記指標よりも大きな重みで前記平滑化を行う、請求項６に記載のステレオマッチング方法。
【請求項８】
前記第二のステップでは、前記複数の画像間において、ある方向に並ぶ各画素につき輝度勾配の符号が全て一致する場合は前記輝度勾配のノルムが小さいほど、前記符号が少なくとも一対において異なる場合は前記ノルムが大きいほど大きな重みで前記平滑化を行う、請求項６に記載のステレオマッチング方法。
【請求項９】
前記複数の画像は３つ以上の画像からなり、
前記第二のステップでは、前記複数の画像間において、ある方向に並ぶ各画素につき輝度勾配の符号が少なくとも一対において一致する場合は、前記輝度勾配のノルムが小さいほど大きな重みで前記平滑化を行う、請求項６に記載のステレオマッチング方法。
【請求項１０】
前記指標は輝度の絶対差である、請求項６に記載のステレオマッチング方法。
【請求項１１】
コンピュータに対して、少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行わせるためのステレオマッチングプログラムであって、前記コンピュータに対し、
前記複数の画像における画素間の非類似性を示す指標を算出させる第一の手順と、
前記指標及び前記画像に基づいて、前記指標を平滑化させる第二の手順と、
前記第二の手順において平滑化された前記指標に応じて、前記複数の画像間におけるステレオマッチングを実行させる第三の手順とを有するステレオマッチングプログラム。
【請求項１２】
前記第二の手順では、前記複数の画像間において、誤対応における前記指標については対応点における前記指標よりも大きな重みで前記平滑化を行わせる、請求項１１に記載のステレオマッチングプログラム。
【請求項１３】
前記第二の手順では、前記複数の画像間において、ある方向に並ぶ各画素につき輝度勾配の符号が全て一致する場合は前記輝度勾配のノルムが小さいほど、前記符号が少なくとも一対において異なる場合は前記ノルムが大きいほど大きな重みで前記平滑化を行わせる、請求項１１に記載のステレオマッチングプログラム。
【請求項１４】
前記複数の画像は３つ以上の画像からなり、
前記第二の手順では、前記複数の画像間において、ある方向に並ぶ各画素につき輝度勾配の符号が少なくとも一対において一致する場合は、前記輝度勾配のノルムが小さいほど大きな重みで前記平滑化を行わせる、請求項１１に記載のステレオマッチングプログラム。
【請求項１５】
前記指標は輝度の絶対差である、請求項１１に記載のステレオマッチングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステレオ画像間において正確なステレオマッチングを実現する装置と方法及びプログラムに関するものである。
【背景技術】
【０００２】
被写体の三次元計測を可能にするステレオ画像に関しては、これまで種々の画像処理技術が考案されているが、例えば特許文献１においては、視差画像を用いたステレオマッチングにおいて視差を補正する技術が開示されている。
【０００３】
また、非特許文献１には、上記画像処理技術の一つとして、一つ(片眼)のガイド画像を重み付けに用いたコストボリュームフィルタリングが開示されている。なお、非特許文献１には、二つのガイド画像を用いた場合につき言及がなされているものの、詳細については説明がなされておらず、また改善効果は得られなかったと記されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−３８５４６号公報
【非特許文献】
【０００５】
【非特許文献１】C.Rhemann, A.Hosni, M.Bleyer, C.Rother, M.Gelautz, “Fast cost-volume filtering for visual correspondence and beyond”, Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, pp.3017-3024, 2011
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、一般的にステレオ画像は、異なる点から撮像された少なくとも二つの画像からなるため、ステレオ画像間における対応点候補の評価値に平滑化を施す際、一つの画像ではなく、これら少なくとも二つの画像をガイド画像として利用した方が、より正確なステレオマッチングを実現できるのではないかが課題となる。
【０００７】
本発明は、このような課題を解決するためになされたもので、複数の画像間において、より精度の高いステレオマッチングを実現するための装置と方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明は、少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行うステレオマッチング装置であって、上記複数の画像における画素間の非類似性を示す指標を算出する非類似性算出手段と、上記指標及び上記画像に基づいて、上記指標を平滑化する平滑化手段と、平滑化手段により平滑化された上記指標に応じて、上記複数の画像間におけるステレオマッチングを実行するマッチング手段とを備えたステレオマッチング装置を提供する。
【０００９】
また、上記課題を解決するため、本発明は、少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行うステレオマッチング方法であって、複数の画像における画素間の非類似性を示す指標を算出する第一のステップと、上記指標及び上記画像に基づいて、上記指標を平滑化する第二のステップと、第二のステップで平滑化された上記指標に応じて、上記複数の画像間におけるステレオマッチングを実行する第三のステップとを有するステレオマッチング方法を提供する。
【００１０】
また、上記課題を解決するため、本発明は、コンピュータに対して、少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行わせるためのステレオマッチングプログラムであって、上記コンピュータに対し、上記複数の画像における画素間の非類似性を示す指標を算出させる第一の手順と、上記指標及び上記画像に基づいて、上記指標を平滑化させる第二の手順と、第二の手順において平滑化された上記指標に応じて、上記複数の画像間におけるステレオマッチングを実行させる第三の手順とを有するステレオマッチングプログラムを提供する。
【発明の効果】
【００１１】
本発明によれば、複数の画像間において、より精度の高いステレオマッチングを実現することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態に係るステレオマッチング装置１の構成を示すブロック図である。
【図２】本発明の実施の形態に係るステレオマッチング方法を示すフローチャートである。
【図３】図２に示されたステップＳ２で用いる平滑化フィルタのカーネルを示す図である。
【図４】図３に示された注目画素Ｐから見た八つの方向の隣接画素を示す図である。
【図５】図２に記された複数の画像において、一方の画像のある点は他方の画像におけるただ一点に対応することを示す図である。
【図６】標準偏差が１のときにおける式(８)で示された重み関数ｗのグラフを示す図である。
【図７】図６に記された輝度勾配１と輝度勾配２を示す両軸のマイナス方向が共に左側に位置するよう横に並べた場合における図６のグラフを示す図である。
【図８】図６に記された輝度勾配２を示す軸のプラス方向と、輝度勾配１を示す軸のマイナス方向が共に左側に位置するよう横に並べた場合における図６のグラフを示す図である。
【図９】３枚のガイド画像を用いてステレオマッチングを行う場合の具体例を説明するための第一の図である。
【図１０】３枚のガイド画像を用いてステレオマッチングを行う場合の具体例を説明するための第二の図である。
【図１１】本発明の他の実施の形態に係るステレオマッチング装置１０の構成を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下において、本発明の実施の形態を図面を参照しつつ詳しく説明する。なお、図中同一符号は同一又は相当部分を示す。
【００１４】
図１は、本発明の実施の形態に係るステレオマッチング装置１の構成を示すブロック図である。図１に示されるように、本発明の実施の形態に係るステレオマッチング装置１は、入出力端子２と、入出力端子２に接続されたバス３と、それぞれバス３に接続された非類似性算出部４、平滑化部５、マッチング部６、及び記憶部７を備える。
【００１５】
図２は、本発明の実施の形態に係るステレオマッチング方法を示すフローチャートである。以下においては、図２に示されたステレオマッチング方法を、図１に示されたステレオマッチング装置１の動作により実現する場合について説明するが、本方法は図１に示されたステレオマッチング装置１を用いる場合に限られず広く適用できることは言うまでもない。
【００１６】
本発明の実施の形態に係るステレオマッチング方法は、少なくとも二つの視点から撮像された複数の画像間におけるステレオマッチングを行う方法であって、ステップＳ１では、非類似性算出部４が複数の画像における画素間の非類似性を示す指標(以下「コスト」という。)を算出する。なお、図１に示されたステレオマッチング装置１においては、撮像された画像は入出力端子２及びバス３を介して記憶部７に記憶され、非類似性算出部４は記憶部７に記憶された画像を用いてコストを算出する。
【００１７】
次に、ステップＳ２では、平滑化部５が上記コスト及び上記画像に基づいて、コストを平滑化する。なお、ここで「複数の画像」は、ステレオ画像の他、少なくとも三つの視点から撮像された他の画像であってもよい。
【００１８】
次に、ステップＳ３では、マッチング部６がステップＳ２で平滑化されたコストに応じて、上記複数の画像間におけるステレオマッチングを実行する。以下においては、図２に示されたステレオマッチング方法の具体例を詳しく説明する。
【００１９】
上記ステップＳ２における平滑化の対象は、視差毎に各画素について算出されたコストとされる。ここで、平滑化を行う際に用いるカーネル、すなわち畳み込み演算で使用する係数の集合は、例えば、図３に示されるように、注目画素ｐを中心に画像全体へ放射線状に広がる直線群とされる。なお、図３における横方向の位置は水平座標ｕ、縦方向の位置は垂直座標ｖで示される。また、カーネルは係数を再帰的に計算できるものであればよく、図３に示されたものに限られない。
【００２０】
そして、図４に示されるように、カーネルの広がる方向を０から７の数字で示し、方向iを０から７のいずれかとするとき、注目画素ｐに対する相対座標Ｏiを次式(１)のように定義する。
【００２１】
【数１】
2018205205.tif 000003
【００２２】
このとき、注目画素ｐに対して方向ｋで隣接する画素ｑkを次式(２)で表す。
【００２３】
【数２】
2018205205.tif 000004
【００２４】
基準画像の注目画素ｐと視差ｄにある参照画像の画素との非類似性をコストＣ(p,d)とする。なお、ここではコストを次式(３)のように、上記注目画素ｐの輝度ＩLと上記参照画像の画素における輝度ＩRの絶対差として定義する。
【００２５】
【数３】
2018205205.tif 000005
【００２６】
なお、式(３)で示されたコストＣ(p,d)は、画素間の非類似性を示す指標であればよく、式(３)により算出されるものに限られず、輝度の差の二乗やセンサス変換(Census Transform)した結果のハミング距離であってもよい。
【００２７】
次に、注目画素ｐの方向ｋにおける部分コストＧk(p,d)を次式(４)で定義する。なお、式(４)において、Ｄは視差の探索範囲を示し、ｗは重み関数を示す。
【００２８】
【数４】
2018205205.tif 000006
【００２９】
ただし、式(４)においては、次式(５)の関係が成立する。なお、式(５)において、Ｔpは視差の変化に対するペナルティのしきい値を示し、物体表面を滑らかに連続させる拘束の強さを決める因子となる。
【００３０】
【数５】
2018205205.tif 000007
【００３１】
このとき、集約コストが次式(６)で示される。ただし、式(６)においてｎは上記方向の数を示す。
【００３２】
【数６】
2018205205.tif 000008
【００３３】
上式(６)により算出された集約コストを用いて、注目画素ｐにおける最適な視差ｄpは次式(７)により求められる。
【００３４】
【数７】
2018205205.tif 000009
【００３５】
ところで、立体視において、あるカメラで撮像された画像に写る一点は、他のカメラで撮像された画像の一点のみに対応することが期待される。ここで図５は、視差ｄ及び水平座標ｕがなす面から見たコストボリュームを示す。図５において、それぞれ斜線部分は対応点を、破線は基準カメラＭL及び参照カメラＭRの視線を示す。これら両カメラにエッジ、すなわち大きな輝度勾配が写るとき、対応点は同じエッジとなり、網掛け部分は異なるエッジ(誤対応)となる。従って、上式(４)において、図５の太枠で示される斜線部分では相対的に弱く、網掛け部分では斜線部分よりも強い、すなわち大きな重みで平滑化を行うような重み関数ｗを用いる。
【００３６】
具体的には、例えば次式(８)により示される重み関数ｗを用いる。なお、式(８)における画素ｐハット(以下「／ｐ」と記す。)及び画素ｑハット(以下「／ｑ」と記す。)は、それぞれ参照画像の画素を示し、Δｐ及びΔｐハットは、それぞれ基準画像における注目画素ｐから画素ｑへの輝度勾配、参照画像における注目画素／ｐから画素／ｑへの輝度勾配、σは標準偏差を示す。
【００３７】
【数８】
2018205205.tif 000010
【００３８】
図６は、式(８)のσが１のときにおける重み関数ｗのグラフを示す。なお、図６のグラフにおいて縦軸は重み、底面の二軸はそれぞれ基準画像の輝度勾配１及び参照画像の輝度勾配２を示す。ここで、輝度勾配１及び輝度勾配２は、基準画像と参照画像とで同じ方向に対する勾配の大きさとされ、例えば左向きの輝度勾配を評価するとき、輝度が左に行くにつれて減少するなら勾配は正の値、左に行くにつれて増加するなら勾配は負の値とされる。
【００３９】
また、図７は、上記の輝度勾配１と輝度勾配２を示す両軸のマイナス方向が共に左向きになるよう横に並べた場合における図６のグラフを示し、図８は、上記輝度勾配２を示す軸のプラス方向と、上記輝度勾配１を示す軸のマイナス方向が共に左側に位置するよう横に並べた場合における図６のグラフを示す。
【００４０】
これら図６から図８に示されたグラフから分かるように、式(８)に示された重み関数ｗによれば、画像上のある方向において輝度勾配１と輝度勾配２の符号が全て一致する場合は、輝度勾配のノルムが小さいほど大きな重みで平滑化することになる。また、画像上のある方向において輝度勾配１と輝度勾配２の符号が少なくとも一対において異なる場合は、輝度勾配のノルムが大きいほど大きな重みで平滑化することになる。
【００４１】
従って、このような重み関数ｗを用いた平滑化を実行することにより、基準画像と参照画像間において対応点に限り輝度勾配１と輝度勾配２の符号が等しくかつノルムが小さいことが期待できることから、誤対応の重みが小さくなることを回避できるため、誤対応の集約コストが対応点の集約コストより大きくなり、３次元計測における精度の改善を図ることができる。
【００４２】
なお、上記の重み関数ｗは式(８)で示されたものに限らない。すなわち、上記のように、輝度勾配１と輝度勾配２の符号が同じなら値が大きいほど重みが小さく、輝度勾配１と輝度勾配２の符号が異なれば値が大きいほど重みが大きい関数であれば良い。
【００４３】
さらに、上記の平滑化は、ガイド画像を三つ以上利用して行ってもよい。以下において、ガイド画像を三つ以上用いて上記平滑化を行う場合の具体例について説明する。なお、説明を簡略化するため、三台のカメラ１〜３で撮像された画像における輝度勾配をそれぞれｇ1、ｇ2、ｇ3で表し、重み関数の引数を座標ではなく輝度勾配とする。すると、単眼、ステレオ、三眼カメラの重み関数ｗ1，ｗ2，ｗ3はそれぞれ次式(９)〜(１１)で表すことができる。
【００４４】
【数９】
2018205205.tif 000011
【００４５】
【数１０】
2018205205.tif 000012
【００４６】
【数１１】
2018205205.tif 000013
【００４７】
以上の重み関数ｗ1，ｗ2，ｗ3を一般化すると以下のようになる。ｎ個の輝度勾配を要素とするベクトルｇは次式(１２)で表すことができる。
【００４８】
【数１２】
2018205205.tif 000014
【００４９】
このとき、ベクトル集合Ａgを次式(１３)のように定義する。なお、式(１３)における「＼」は、除くことを示す。
【００５０】
【数１３】
2018205205.tif 000015
【００５１】
ここで、ｎ枚のガイド画像による重み関数ｗnは、次式(１４)により表すことができる。
【００５２】
【数１４】
2018205205.tif 000016
【００５３】
ところで、ガイド画像が３枚以上ある場合、重み付けには別の選択肢がある。すなわち、上記の重み付けは、ある方向に並ぶ各画素につき輝度勾配の符号が全て一致する場合、輝度勾配のノルムが小さいほど重みを大きくしてもよい。また、別の方法として、上記輝度勾配の符号が少なくとも一対において一致する場合において、輝度勾配のノルムが小さいほど重みを大きくしてもよい。
【００５４】
次に、図９に示されるように、三台のカメラをＬ字に配置して撮像することにより得られた基準画像Ｌと参照画像Ｒ、及び検証画像Ｖの三枚の画像をガイド画像として、ステレオマッチングを行う場合の例について説明する。
【００５５】
図１０(ａ)に示されるように、基準画像Ｌと参照画像Ｒの間でステレオマッチングを行う場合、これらの画像は図９に示されるように互いに水平方向に並んだカメラで撮像されたものであるため、対応する画素ＰLと画素ＰRの間において水平方向の視差を計算する。
【００５６】
一方、基準画像Ｌと検証画像Ｖの間でステレオマッチングを行う場合、これらの画像は図９に示されるように互いに垂直方向に並んだカメラで撮像されたものであるため、図１０(ｂ)に示されるように基準画像Ｌと検証画像Ｖを時計回りに９０度回転させた上で、対応する画素ＰLと画素ＰVの間における水平方向の視差を計算する。
【００５７】
なお、上記コストを算出するに当たっては、上記のように９０度回転されたガイド画像の輝度勾配を求め、重みの計算における輝度勾配の方向については、上記回転を戻すよう逆回転した方向を用いることになる。また、ガイド画像がステレオマッチングの対象とされる画像と異なる場合は、ガイド画像もステレオマッチングの対象とされる画像と同様に回転させた上で計算する。
【００５８】
以上のような本発明の実施の形態に係るステレオマッチング方法は、本方法をアルゴリズムにより表記したプログラムを、コンピュータに実行させることによっても実現することができる。ここで、本コンピュータの一例は、図１１のステレオマッチング装置１０として示される。
【００５９】
図１１に示されたステレオマッチング装置１０は、入出力端子１２と、入出力端子１２に接続されたバス１３と、それぞれバス１３に接続された中央演算処理装置(ＣＰＵ)１４及びメモリ１５を備える。このような構成を有するステレオマッチング装置１０においては、メモリ１５が上記プログラムを格納し、ＣＰＵ１４がメモリ１５に格納された上記プログラムをバス１３を介して読み出した上で実行する。
【００６０】
以上より、本発明の実施の形態に係るステレオマッチング装置１，１０とステレオマッチング方法及びステレオマッチングプログラムによれば、複数の画像間において非類似性を的確に平滑化した上でマッチングを行うことにより、ステレオマッチングの精度を高めることができる。
【符号の説明】
【００６１】
１，１０  ステレオマッチング装置
４  非類似性算出部
５  平滑化部
６  マッチング部
１４  中央演算処理装置(ＣＰＵ)
１５  メモリ
【図１】
2018205205.tif 000017
【図２】
2018205205.tif 000018
【図３】
2018205205.tif 000019
【図４】
2018205205.tif 000020
【図５】
2018205205.tif 000021
【図６】
2018205205.tif 000022
【図７】
2018205205.tif 000023
【図８】
2018205205.tif 000024
【図９】
2018205205.tif 000025
【図１０】
2018205205.tif 000026
【図１１】
2018205205.tif 000027