JP6258209B2 - ステレオ画像処理装置およびステレオ画像処理方法 - Google Patents

ステレオ画像処理装置およびステレオ画像処理方法 Download PDF

Info

Publication number
JP6258209B2
JP6258209B2 JP2014538098A JP2014538098A JP6258209B2 JP 6258209 B2 JP6258209 B2 JP 6258209B2 JP 2014538098 A JP2014538098 A JP 2014538098A JP 2014538098 A JP2014538098 A JP 2014538098A JP 6258209 B2 JP6258209 B2 JP 6258209B2
Authority
JP
Japan
Prior art keywords
pixel data
phase
reference pixel
image
unit
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.)
Expired - Fee Related
Application number
JP2014538098A
Other languages
English (en)
Other versions
JPWO2014049919A1 (ja
Inventor
卓也 南里
卓也 南里
黒河 久
久 黒河
石原 健
健 石原
西村 洋文
洋文 西村
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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
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 Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JPWO2014049919A1 publication Critical patent/JPWO2014049919A1/ja
Application granted granted Critical
Publication of JP6258209B2 publication Critical patent/JP6258209B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • G01B11/026Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness by measuring distance between sensor and object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • G06T2207/20056Discrete and fast Fourier transform, [DFT, FFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Description

本発明は、ステレオ画像の基準画像の基準点に対するステレオ画像の参照画像の対応点の視差を算出する、ステレオ画像処理装置およびステレオ画像処理方法に関する。
従来、ステレオ画像に基づいて対象物までの距離を測定するステレオ画像処理装置が知られている。このようなステレオ画像処理装置(以下、単に「ステレオ画像処理装置」という)は、参照画像から、基準画像に対する対応点を抽出する。ここで、「対応点」とは、参照画像において、基準画像の基準点と同一の対象物が撮影されている点である。そして、ステレオ画像処理装置は、カメラパラメータと、基準点に対する対応点のずれ量である視差とに基づいて、対象物までの距離を算出する。
ステレオ画像処理装置は、車載カメラで撮影した前方車両または歩行者までの距離を測定する安全装置などへの適用が検討されている。また、近年、このような安全装置は、小型車へも普及してきている。このため、ステレオ画像処理装置に用いられるステレオカメラの小型化が要求されている。
ステレオカメラが小型化すると、基準画像を撮影するカメラと参照画像を撮影するカメラとの間隔は狭くなり、視差は小さくなる。このため、ステレオ画像処理装置には、高精度な視差算出が要求される。
高精度な視差算出の技術としては、例えば、特許文献1に記載の従来技術がある。この従来技術は、一次元POC(Phase Only Correlation)方式を用いて視差を算出する。
具体的には、従来技術は、ハニング窓を用いて、基準画像および参照画像のそれぞれから一次元の画素データ列を切り出し、切り出した画素データ列を、一次元フーリエ変換を施して合成する。そして、従来技術は、合成したデータ列の振幅成分を正規化して一次元逆フーリエ変換することにより位相限定相関係数を求める。更に、従来技術は、求めた位相限定相関係数の相関ピークに基づいて、上記視差を算出する。
特開2008−123141号公報
しかしながら、従来技術は、基線長方向の画像領域サイズが小さい対象物については、高精度に視差を算出することが困難であるという課題を有する。ここで、「基線長方向の画像領域サイズ」とは、基線長方向における画像領域の、ステレオ画像上で占めるサイズである。
基線長方向の画像領域サイズが小さい対象物としては、例えば、カメラから遠くに位置する歩行者が挙げられる。特に、ステレオ画像処理装置を上記安全装置に適用するような場合には、基線長方向の画像領域サイズが小さい対象物についても、より高精度に視差を算出できることが望ましい。
本発明の目的は、基線長方向の画像領域サイズが小さい対象物についても高精度に視差を算出することができる、ステレオ画像処理装置およびステレオ画像処理方法を提供することである。
本開示のステレオ画像処理装置は、ステレオ画像の基準画像および参照画像を取得するステレオ画像取得部と、前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得する画像切出部と、前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、各周波数成分の位相を零にする零位相化処理を行うことにより、位相補正済み基準画素データを算出する基準画素データ零位相化部と、前記基準画素データおよび前記位相補正済み基準画素データに基づいて、前記基準画素データに対して適用した場合に当該基準画素データの値を左右対称にする位相補正フィルタを算出する位相補正フィルタ算出部と、前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相補正フィルタを適用することにより、前記位相補正済み参照画素データを算出する参照画素データ位相補正部と、記位相補正済み基準画素データと、前記位相補正済み参照画素データと、のそれぞれに対して、窓掛けを行う窓掛部と、前記位相補正済み基準画素データに対して前記窓掛けを行って得られた窓掛け済み基準画素データと、前記位相補正済み参照画素データに対して前記窓掛けを行って得られた窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出する位相相関部と、前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するピーク位置検出部と、を有する。
また、本開示の別のステレオ画像処理装置は、ステレオ画像の基準画像および参照画像を取得するステレオ画像取得部と、前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得する画像切出部と、前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、一部または全部の周波数成分の位相を90度シフトさせる位相シフトフィルタを適用して、位相シフト済み基準画素データを算出する基準画素データ位相シフト部と、前記位相シフト済み基準画素データおよび前記基準画素データのそれぞれに対して、値の左右対称性を示す左右対称判定値を算出する左右対称判定値算出部と、前記位相シフト済み基準画素データから算出された前記左右対称判定値と、前記基準画素データから算出された前記左右対称判定値と、を比較し、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いか否かを判定する左右対称判定値比較部と、前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相シフトフィルタを適用して、位相シフト済み参照画素データを算出する参照画素データ位相シフト部と、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いとき、前記位相シフト済み基準画素データと、前記位相シフト済み参照画素データと、のそれぞれに対して、窓掛けを行うとともに、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高くないとき、前記基準画素データおよび前記参照画素データと、のそれぞれに対して窓掛けを行うことにより、窓掛け済み基準画素データ及び窓掛け済み参照データを生成する窓掛部と、前記窓掛け済み基準画素データと、前記窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出する位相相関部と、前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するピーク位置検出部と、を有する。
本開示のステレオ画像処理方法は、ステレオ画像の基準画像および参照画像を取得するステップと、前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得するステップと、前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、各周波数成分の位相を零にする零位相化処理を行うことにより、位相補正済み基準画素データを算出するステップと、前記基準画素データおよび前記位相補正済み基準画素データに基づいて、前記基準画素データに対して適用した場合に当該基準画素データの値を左右対称にする位相補正フィルタを算出するステップと、前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相補正フィルタを適用することにより、前記位相補正済み参照画素データを算出するステップと、記位相補正済み基準画素データと、前記位相補正済み参照画素データと、のそれぞれに対して、窓掛けを行うステップと、前記位相補正済み基準画素データに対して前記窓掛けを行って得られた窓掛け済み基準画素データと、前記位相補正済み参照画素データに対して前記窓掛けを行って得られた窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出するステップと、前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するステップと、を有する。
本開示の別のステレオ画像処理方法は、ステレオ画像の基準画像および参照画像を取得するステップと、前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得するステップと、前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、一部または全部の周波数成分の位相を90度シフトさせる位相シフトフィルタを適用して、位相シフト済み基準画素データを算出するステップと、前記位相シフト済み基準画素データおよび前記基準画素データのそれぞれに対して、値の左右対称性を示す左右対称判定値を算出するステップと、前記位相シフト済み基準画素データから算出された前記左右対称判定値と、前記基準画素データから算出された前記左右対称判定値と、を比較し、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いか否かを判定するステップと、前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相シフトフィルタを適用して、位相シフト済み参照画素データを算出するステップと、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いとき、前記位相シフト済み基準画素データと、前記位相シフト済み参照画素データと、のそれぞれに対して、窓掛けを行うとともに、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高くないとき、前記基準画素データおよび前記参照画素データと、のそれぞれに対して窓掛けを行うことにより、窓掛け済み基準画素データ及び窓掛け済み参照データを生成するステップと、前記窓掛け済み基準画素データと、前記窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出するステップと、前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するステップと、を有する。
本開示によれば、基線長方向の画像領域サイズが小さい対象物についても高精度に視差を算出することができる。
実施の形態1に係るステレオ画像処理装置の構成の一例を示すブロック図 実施の形態2に係るステレオ画像処理装置の構成の一例を示すブロック図 実施の形態2に係るステレオ画像処理装置の動作の一例を示すフローチャート 実施の形態2における位相補正済みデータ生成処理の一例を示すフローチャート 実施の形態3に係るステレオ画像処理装置の構成の一例を示すブロック図 実施の形態3における微分フィルタの効果を説明するための図 実施の形態3に係るステレオ画像処理装置の動作の一例を示すフローチャート 実施の形態3における位相補正済みデータ生成処理の一例を示すフローチャート 実施の形態4に係るステレオ画像処理装置の構成の一例を示すブロック図 実施の形態4に係るステレオ画像処理装置の動作の一例を示すフローチャート 実施の形態4におけるマッチング度の最大位置検出までの処理の概要を示す模式図 実施の形態4におけるサブピクセル推定処理の動作の一例を示すフローチャート 実施の形態4における部分画像の切り出しから逆位相フィルタ係数の算出までの処理の概要を示す模式図 実施の形態4における逆位相フィルタ係数によるフィルタリングの概念を説明するための模式図 実施の形態4におけるsinc関数を用いたピーク位置検出の処理の一例の概要を示す模式図 実施の形態4における二次曲線近似を用いたピーク位置検出の処理の一例の概要を示す模式図
本発明は、基準画像から取得した画素データ列に窓掛けして得られたデータと、参照画像から取得した画素データ列に窓掛けして得られたデータとの間で、位相特性を比較することによりステレオ画像の視差を求める、ステレオ画像処理に関するものである。より具体的には、本発明は、基準画素データと参照画素データとの間の位相の差を算出し、算出結果に基づいて視差を求める、ステレオ画像処理に関するものである。
このように位相の差を算出する場合、上述の窓掛けに用いる窓関数は、左右対称で、かつ、両端が連続するようゼロとなる形状が最適である。ところが、窓掛けの対象となる画素データの値が、画素データの両端で大きく異なる場合、このような窓関数の窓掛けによる画素データの位相特性への影響は、顕著となる。画素データの両端で大きく異なる画素データの一例は、画素データの左端の(最初の)輝度値が0で、右端の(最後の)輝度値が255となっているような、エッジ信号(対象物のエッジ部分に対応する画素データ)である。
この点に関して、本発明者は、画素データの値を左右対称にすることにより、当該画素データの値が、画素データの両端で一致することを発見した。すなわち、本発明者は、窓掛けの対象となる画素データの値が左右対称により近いほど、窓掛けによる位相特性への影響がより低減されることを、発見した。
また、本発明者は、窓掛けの対象となる画素データの画素データ数(=窓掛けのデータ数)が、窓掛け後の画素データ列の位相特性に大きく影響することを発見した。画素データ数が大きければ、窓掛けによる位相特性への影響は小さい。ところが、画素データ数が小さくなるにつれて、窓掛けによる位相特性への影響は、急激に大きくなる。
そこで、本発明は、基準画像から取得された画素データの値をより左右対称にする処理である位相補正処理を、基準画像から取得した画素データ列と、参照画像から取得した画素データ列と、の両方に対して行う。すなわち、本発明は、2つの画素データ列の間の位相差を残しつつ、2つの画素データのそれぞれをより左右対称にする。
これにより、本発明は、画素データ数が小さい場合であっても、窓掛けによる位相特性への影響を低く抑えることを可能にする。この効果は、基線長方向の画像領域サイズが小さい対象物に対しては、特に大きくなる。すなわち、本発明は、上記位相補正処理を行うことにより、視差の算出精度の低下を抑え、基線長方向の画像領域サイズが小さい対象物についても高精度に視差を算出することを可能にする。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
本発明の実施の形態1は、本発明の基本的態様の一例である。
図1は、本実施の形態に係るステレオ画像処理装置の構成の一例を示すブロック図である。
図1において、ステレオ画像処理装置100は、ステレオ画像取得部101、画像切出部102、位相補正部103、窓掛部104、位相相関部105、およびピーク位置検出部106を有する。
ステレオ画像取得部101は、ステレオ画像の基準画像および参照画像を取得する。
画像切出部102は、基準画像および参照画像のそれぞれから、ステレオ画像の基線長方向に平行な部分画像を切り出す。そして、画像切出部102は、切り出した部分画像の基線長方向における画素値の分布を示す一次元画素データ列を取得する。
以降の説明において、基準画像から取得された一次元画素データ列は、「基準画素データ」という。また、参照画像から取得された一次元画素データ列は、「参照画素データ」という。
位相補正部103は、基準画素データに対して行った場合に当該基準画素データの値をより左右対称にする処理である位相補正処理を、基準画素データおよび参照画素データのそれぞれに対して行う。
以降の説明において、基準画素データに対して位相補正処理を行って得られたデータは、「位相補正済み基準画素データ」という。また、参照画素データに対して位相補正処理を行って得られたデータは、「位相補正済み参照画素データ」という。
窓掛部104は、位相補正済み基準画素データおよび位相補正済み参照画素データのそれぞれに対して、窓掛けを行う。
以降の説明において、位相補正済み基準画素データに対して窓掛けを行って得られたデータは、「窓掛け済み基準画素データ」という。また、位相補正済み参照画素データに対して窓掛けを行って得られたデータは、「窓掛け済み参照画素データ」という。
位相相関部105は、窓掛け済み基準画素データと窓掛け済み参照画素データとの間の相関の度合いを示す、位相相関値を算出する。
ピーク位置検出部106は、位相相関値に基づいて、基準画像の基準点に対する参照画像の対応点の視差を算出する。
ステレオ画像処理装置100は、例えば、CPU(central processing unit)、およびRAM(random access memory)などの記憶媒体を有する。この場合、上述の各機能部は、CPUが制御プログラムを実行することにより実現される。
このように、本実施の形態に係るステレオ画像処理装置100は、基準画素データの値をより左右対称にする処理である位相補正処理を、基準画素データおよび参照画素データのそれぞれに対して行う。そして、本実施の形態に係るステレオ画像処理装置100は、位相補正処理を行った後のデータに対して、窓掛けを行い、対応点の視差の算出を行う。
これにより、ステレオ画像処理装置100は、窓掛けによる影響を抑えた状態で、基準画素データの位相特性および参照画素データの位相特性をそれぞれ抽出することができる。すなわち、ステレオ画像処理装置100は、遠方に位置する路上の歩行者など、基線長方向の画像領域サイズが小さい対象物に対しても、高精度に視差を算出することができる。
(実施の形態2)
本発明の実施の形態2は、基準画素データの全ての周波数帯域の信号が左右対称となるような位相補正処理を採用する例である。言い換えると、本実施の形態は、視差算出の高精度化を演算負荷に対してよりも優先させた例である。
まず、本実施の形態に係るステレオ画像処理装置の構成について説明する。
図2において、ステレオ画像処理装置100は、ステレオ画像取得部101、画像切出部102、位相補正部103、窓掛部104、位相相関部105、およびピーク位置検出部106を有する。
<ステレオ画像取得部101>
ステレオ画像取得部101は、ステレオ画像の基準画像および参照画像を取得する。そして、ステレオ画像取得部101は、取得した基準画像および参照画像を、画像切出部102へ出力する。
具体的には、ステレオ画像取得部101は、2つ以上の撮像系(つまり、2つ以上のカメラ)で撮影されたステレオ画像を取得する。ステレオ画像には、2つの異なるカメラによって同一対象物が撮影された基準画像および参照画像が含まれる。ステレオ画像取得部101は、例えば、ステレオカメラに接続して画像データを取得するためのコネクタを有しており、コネクタを介してステレオ画像を入力する。なお、本実施の形態において、ステレオ画像取得部101は、基線長方向が水平方向にほぼ一致する2つのカメラにより撮影されたステレオ画像を、入力するものとする。
<画像切出部102>
画像切出部102は、基準画像および参照画像のそれぞれから、ステレオ画像の基線長方向に平行な部分画像を切り出す。そして、画像切出部102は、切り出した部分画像の基線長方向における画素値の分布を示す一次元画素データ列を取得する。すなわち、画像切出部102は、基準画素データおよび参照画素データを取得する。そして、画像切出部102は、取得した基準画素データおよび参照画素データを、位相補正部103へ出力する。
一次元画素データ列の基となる部分画像の切り出し手法は、視差算出の対象物の位置が、切り出された部分画像において、基線長方向における位相特性としてよく表現されるようなものであればよく、特定の手法に限定されない。したがって、一次元画素データ列の基となる部分画像は、基線長方向の幅が長く、基線長方向に直交する方向の高さが1画素分の、部分画像でもよい。あるいは、一次元画素データ列の基となる部分画像は、基線長方向の幅が長く、基線長方向に直交する方向の高さが複数画素分の、部分画像でもよい。更には、一次元画素データ列の基となる部分画像は、同じ画素数であって互いに分離した複数の部分画像でもよい。
切り出した部分画像から一次元画素データ列を取得する手法は、基の部分画像の基線長方向における位相特性が、一次元画素データ列においてよく表現されるようなものであればよく、特定の手法に限定されない。
したがって、例えば、部分画像が1行である場合には、画像切出部102は、画素値データ列をそのまま一次元画素データ列とすることができる。
また、部分画像が複数行である場合には、画像切出部102は、基線長方向と直交する方向において画素値を平均して得られる一次元のデータを、一次元画素データ列とすることができる。また、画像切出部102は、基線長方向に伸びた複数の一次元の画素値データ列を連結した上で、連結に伴うノイズである低周波を除去して得られる一次元のデータを、一次元画素データ列とすることができる。また、画像切出部102は、同一画素行に含まれる任意の画素同士の、再構成前の間隔と再構成後の間隔との比が、全ての画素同士について同一となるように、各画素値を再構成して得られる一次元のデータを、一次元画素データ列とすることができる。
<位相補正部103>
位相補正部103は、基準画素データに対して行った場合に当該基準画素データの値をより左右対称にする処理である位相補正処理を、基準画素データおよび参照画素データのそれぞれに対して行う。すなわち、位相補正部103は、基準画素データに対して位相補正処理をすることにより、位相補正済み基準画素データを生成する。また、位相補正部103は、参照画素データに対して位相補正処理をすることにより、位相補正済み参照画素データを生成する。そして、位相補正部103は、位相補正済み基準画素データおよび位相補正済み参照画素データを、窓掛部104へ出力する。
より具体的には、位相補正部103は、基準画素データ零位相化部201、位相補正フィルタ算出部202、および参照画素データ位相補正部203を有する。
<基準画素データ零位相化部201>
基準画素データ零位相化部201は、基準画素データに対して、各周波数成分の位相を零にする零位相化処理を行うことにより、位相補正済み基準画素データを算出する。そして、基準画素データ零位相化部201は、基準画素データ、参照画素データ、および算出した位相補正済み基準画素データを、位相補正フィルタ算出部202へ出力する。
零位相化処理は、基準画素データの各周波数成分の位相を零にするものであればよく、特定の処理に限定されない。本実施の形態において、位相補正部103は、零位相化処理として、基準画素データに対して、一次元フーリエ変換、全ての周波数帯域における虚数成分の除去、および一次元逆フーリエ変換をこの順序で施す処理を行うものとする。虚数成分の除去とは、複素数で表すと、cos(ωt)+isin(ωt)のうち、iの項を零にすることである。この結果、一次元フーリエ変換によって得られた信号は、cos(ωt)で表現される左右対称な信号に変換される。
以降の説明において、基準画素データの位相を零にすることは、「基準画素データの零位相化」という。
<位相補正フィルタ算出部202>
位相補正フィルタ算出部202は、基準画素データおよび位相補正済み基準画素データに基づいて、基準画素データに対して適用した場合に当該基準画素データの値を左右対称にする位相補正フィルタを算出する。そして、位相補正フィルタ算出部202は、位相補正済み基準画素データ、参照画素データ、および算出した位相補正フィルタを、参照画素データ位相補正部203へ出力する。
位相補正フィルタは、基準画素データに対して適用した場合に当該基準画素データの値を左右対称にするものであればよく、特定のフィルタに限定されない。例えば、位相補正フィルタは、基準画素データを零位相化するFIR(Finite Impulse Response)フィルタとすることができる。位相補正フィルタ算出部202は、例えば、位相補正済み基準画素データを一次元フーリエ変換して得られる値を、基準画素データを一次元フーリエ変換して得られる値で割り、一次元逆フーリエ変換することにより、FIRフィルタを算出する。
<参照画素データ位相補正部203>
参照画素データ位相補正部203は、参照画素データに対して位相補正フィルタを適用することにより、位相補正済み参照画素データを算出する。そして、参照画素データ位相補正部は、位相補正済み基準画素データおよび算出した位相補正済み参照画素データを、窓掛部104へ出力する。
参照画素データに対して位相補正フィルタを適用することは、つまり、基準画素データに対して行った零位相化と同量の位相シフトを、参照画素データに対しても行うことである。すなわち、位相補正部103は、基準画素データと参照画素データとの間に存在する位相の差を残したまま、それぞれの位相がより左右対称となるように補正することができる。
<窓掛部104>
窓掛部104は、位相補正済み基準画素データおよび位相補正済み参照画素データのそれぞれに対して、窓掛けを行う。すなわち、窓掛部104は、位相補正済み基準画素データに対して窓掛けを行うことにより、窓掛け済み基準画素データを生成する。そして、窓掛部104は、位相補正済み参照画素データに対して窓掛けを行うことにより、窓掛け済み参照画素データを生成する。窓掛部104は、取得した窓掛け済み基準画素データおよび窓掛け済み参照画素データを、位相相関部105へ出力する。
窓掛けに用いる窓関数は、左右対称、かつ、両端が連続するようゼロとなるような形状のものであればよく、特定の手法に限定されない。したがって、窓関数は、ハニング窓、ブラックマン窓、カイザー窓などを採用することができる。本実施の形態においては、窓掛部104は、ハニング窓を用いるものとする。
<位相相関部105>
位相相関部105は、窓掛け済み基準画素データと窓掛け済み参照画素データとの間の相関の度合いを示す、位相相関値を算出する。そして、位相相関部105は、算出した位相相関値を、ピーク位置検出部106へ出力する。
位相相関値を算出する方法は、一次元フーリエ変換を用いた一次元POC方式があるが、演算量を考慮した場合、逆位相フィルタを用いた方式が最適である。逆位相フィルタを用いた手法については、後述の実施の形態4において説明する。なお、位相相関値を算出する方法は、位相の相関を算出するものであればよく、特定の手法に限定されない。
<ピーク位置検出部106>
ピーク位置検出部106は、位相相関値に基づいて、基準画像の基準点に対する参照画像の対応点の視差を算出する。
ステレオ画像処理装置100は、例えば、CPU、およびRAMなどの記憶媒体を有する。この場合、上述の各機能部は、CPUが制御プログラムを実行することにより実現される。
このようなステレオ画像処理装置100は、基準画素データにおける全ての周波数において、位相を零に変換しつつ、参照画素データとの間の位相差を情報として残すことができる。このため、ステレオ画像処理装置100は、いずれの周波数においても窓関数の影響を受けずに、高精度に視差を算出することが可能である。
次に、ステレオ画像処理装置100の動作について説明する。
図3は、ステレオ画像処理装置100の動作の一例を示すフローチャートである。
まず、ステップS1000において、ステレオ画像取得部101は、ステレオ画像の基準画像および参照画像を取得する。
そして、ステップS2000において、画像切出部102は、基準画像および参照画像のそれぞれから、ステレオ画像の基線長方向に平行な部分画像を切り出し、基準画素データおよび参照画素データを取得する。
そして、ステップS3000において、位相補正部103は、位相補正済みデータ生成処理を行う。
位相補正済みデータ生成処理とは、基準画素データに対して行った場合に当該基準画素データの値をより左右対称にする処理である位相補正処理を、基準画素データおよび参照画素データのそれぞれに対して行う処理である。すなわち、位相補正済みデータ生成処理とは、位相補正済み基準画素データおよび位相補正済み参照画素データを生成する処理である。本実施の形態において、位相補正処理は、上述の零位相化処理である。
図4は、位相補正済みデータ生成処理(図3のステップ3000)の一例を示すフローチャートである。
まず、ステップS3010において、基準画素データ零位相化部201は、基準画素データに対して、零位相化処理を行う。
そして、ステップS3020において、位相補正フィルタ算出部202は、位相補正フィルタを算出する。
そして、ステップS3030において、参照画素データ位相補正部203は、参照画素データに位相補正フィルタを適用する。そして、ステレオ画像処理装置100の処理は、図3のフローチャートへ戻る。
図3のステップS4000において、窓掛部104は、位相補正済み基準画素データおよび位相補正済み参照画素データのそれぞれに対して、窓掛けを行う。
そして、ステップS5000において、位相相関部105は、窓掛け済み基準画素データと窓掛け済み参照画素データとの間の位相相関値を算出する。
そして、ステップS6000において、ピーク位置検出部106は、位相相関値に基づいて、基準画像の基準点に対する参照画像の対応点の視差を算出する。
そして、ステップS7000において、画像切出部102は、測距の対象となる領域の全てに対して、部分画像の切り取りの基準位置の設定から視差算出までの処理が完了したか否かを判定する。
画像切出部102は、測距の対象となる領域の全てに対する処理が完了していない場合(S7000:NO)、残りの領域に、部分画像の切り取りの基準位置を移動させて、ステップS2000へ戻る。以下、このような基準位置は、「切り取り基準位置」という。また、画像切出部102は、測距の対象となる領域の全てに対する処理を完了した場合(S7000:YES)、一連の処理を終了する。
このような動作により、ステレオ画像処理装置100は、測距の対象となる領域内の各対応点について、いずれの周波数においても窓関数の影響を受けることなく、視差を高精度に算出することができる。
以上のように、本実施の形態に係るステレオ画像処理装置100は、全ての周波数領域について基準画素データを零位相化する零位相化処理を、基準画素データおよび参照画素データのそれぞれに対して行う。そして、本実施の形態に係るステレオ画像処理装置100は、零位相化処理を行った後のデータに対して、窓掛けを行い、対応点の視差の算出を行う。
これにより、ステレオ画像処理装置100は、窓掛けによる影響を最小限に抑えた状態で、基準画素データの位相特性および参照画素データの位相特性をそれぞれ抽出することができる。すなわち、ステレオ画像処理装置100は、基線長方向の画像領域サイズが小さい対象物に対して、より高精度に、視差を算出することができる。
(実施の形態3)
本発明の実施の形態3は、基準画素データに支配的な周波数帯域の信号のみが左右対称となるような位相補正処理を採用する例である。言い換えると、本実施の形態は、演算負荷の軽減を視差算出の精度よりも優先させた例である。ここで、基準画素データに支配的な周波数帯域とは、例えば、他の周波数帯域に比べて振幅成分が大きい周波数帯域である。
まず、本実施の形態に係るステレオ画像処理装置の構成について説明する。
図5は、本実施の形態に係るステレオ画像処理装置の構成の一例を示すブロック図であり、実施の形態2の図2に対応するものである。図2と同一部分には同一符号を付し、これについての説明を省略する。
図5において、ステレオ画像処理装置100aは、図2の位相補正部103に代えて、位相補正部103aを有する。
位相補正部103aは、基準画素データに対して行った場合に当該基準画素データの値をより左右対称にする処理である位相補正処理を、基準画素データおよび参照画素データのそれぞれに対して行う。すなわち、位相補正部103aは、基準画素データに対して位相補正処理を行うことにより、位相補正済み基準画素データを生成する。そして、位相補正部103aは、参照画素データに対して位相補正処理を行うことにより、位相補正済み参照画素データを生成する。そして、位相補正部103aは、位相補正済み基準画素データおよび位相補正済み参照画素データを、窓掛部104へ出力する。
但し、本実施の形態に係る位相補正部103aは、上記位相補正処理の効果が低い場合には、基準画素データおよび参照画素データを、そのまま位相補正済み基準画素データおよび位相補正済み参照画素データとして扱う。
より具体的には、位相補正部103aは、基準画素データ位相シフト部301a、左右対称判定値算出部302a、左右対称判定値比較部303a、および参照画素データ位相シフト部304aを有する。
<基準画素データ位相シフト部301a>
基準画素データ位相シフト部301aは、基準画素データに対して、一部または全部の周波数成分の位相を90度シフトさせる位相シフトフィルタを適用して、位相シフト済み基準画素データを算出する。そして、基準画素データ位相シフト部301aは、基準画素データ、参照画素データ、および算出した位相シフト済み基準画素データを、左右対称判定値算出部302aへ出力する。
位相シフトフィルタは、基準画素データに対して適用した場合に一部または全部の周波数成分の位相を90度シフトさせるものであればよく、特定のフィルタに限定されない。本実施の形態では、位相シフトフィルタは、基準画素データの一部または全部の周波数を簡易的に零に近づけるFIRフィルタとし、具体的には、一部の周波数において位相を90度シフトさせる微分フィルタとする。
図6は、微分フィルタの効果を説明するための図である。図6A〜図6Dのそれぞれにおいて、横軸は基準画素データの配列方向における位置(X)を示し、縦軸は画素値(例えば輝度)あるいはその微分値を示す。
図6Aに示すように、ある基準画素データが、中央付近で輝度が階段状に増大する画素値信号401であったとする。この画素値信号401をXで微分すると、図6Bに示すように、中央付近にパルス形状を有する画素値微分データ402となる。
また、図6Cに示すように、ある基準画素データが、位相が90度付近にある画素値信号403であったとする。この画素値信号403をXで微分すると、図6Dに示すように、位相が0度付近にある画素値微分データ404となる。
信号の位相が0もしくは180度付近にある場合、当該信号に窓関数を掛けることによる位相特性への影響は、小さい。これに対し、信号の位相が90度付近にある場合、当該信号に窓関数を掛けることによる位相特性への影響は、大きい。このため、位相が90度付近にある信号に対して、0度もしくは180度にその位相をシフトさせることができる微分フィルタを適用することにより、窓関数の影響を低減することが可能である。
また、デジタル信号における微分フィルタは全帯域に対して90度位相シフトさせるものではないが、少なくとも一部の帯域を位相シフトさせることができ、窓関数の影響を低減させることが可能となる。
但し、実際の信号には、通常、位相が90度付近以外にある信号も多く含まれている。例えば、信号の位相の多くが0度付近もしくは180度付近に位置するような場合、微分フィルタを適用することより、かえって左右対称性が損なわれ得る。
そこで、ステレオ画像処理装置100aは、位相シフトフィルタを掛けた結果、基準画素データの左右対称性が向上した場合にのみ、位相補正処理の結果を採用するものとする。これについては、以降で説明する。
<左右対称判定値算出部302a>
左右対称判定値算出部302aは、位相シフト済み基準画素データおよび基準画素データのそれぞれに対して、値の左右対称性を示す左右対称判定値を算出する。そして、左右対称判定値算出部302aは、基準画素データ、参照画素データ、位相シフト済み基準画素データ、および算出した左右対称性判定値を、左右対称判定値比較部303aへ出力する。
左右対称判定値は、一次元データの値の左右対称性を示すものであればよく、特定の指標値に限定されない。例えば、左右対称判定値算出部302aは、以下の式(1)、(2)を用いて、基準画素データの左右対称判定値Sym0、および、位相シフト済み基準画素データの左右対称判定値Sym1を算出する。なお、ここで、I(x)(1≦x≦m、m:奇数)は、基準画素データであり、I(x)(1≦x≦m、m:奇数)は、位相シフト済み基準画素データである。また、式(1)、(2)により算出される左右対称判定値Sym0、Sym1は、左右対称性が高いほど大きい値となる。
Figure 0006258209
Figure 0006258209
<左右対称判定値比較部303a>
左右対称判定値比較部303aは、位相シフト済み基準画素データから算出された左右対称判定値と、基準画素データから算出された左右対称判定値とを比較する。左右対称判定値比較部303aは、位相シフト済み基準画素データの左右対称性が、基準画素データの前記左右対称性よりも高いか否かを、判定する。
そして、左右対称判定値比較部303aは、基準画素データ、参照画素データ、および位相シフト済み基準画素データとともに、左右対称性が高い方(つまり左右対称判定値が大きい方)を示す情報を、参照画素データ位相シフト部304aへ出力する。すなわち、左右対称判定値比較部303aは、位相シフト済み基準画素データの左右対称性が、基準画素データの左右対称性よりも高いか否かを示す情報を、参照画素データ位相シフト部304aへ出力する。
以降の説明において、位相シフト済み基準画素データの左右対称性が基準画素データの左右対称性よりも高い場合は、「位相シフトの効果がある場合」という。また、位相シフト済み基準画素データの左右対称性が基準画素データの左右対称性よりも高くない場合は、「位相シフトの効果がない場合」という。
<参照画素データ位相シフト部304a>
参照画素データ位相シフト部304aは、参照画素データに対して位相シフトフィルタを適用して、位相シフト済み参照画素データを算出する。なお、参照画素データ位相シフト部304aは、位相シフトの効果がある場合にのみ、位相シフト済み参照画素データの算出を行ってもよい。そして、参照画素データ位相シフト部304aは、位相シフトの効果がある場合、位相シフト済み基準画素データおよび位相シフト済み参照画素データを、それぞれ位相補正済み基準画素データおよび位相補正済み参照画素データとして、窓掛部104へ出力する。
また、参照画素データ位相シフト部304aは、位相シフトの効果がない場合、基準画素データおよび参照画素データを、それぞれ位相補正済み基準画素データおよび位相補正済み参照画素データとして、窓掛部104へ出力する。
この結果、窓掛部104は、位相シフトの効果がある場合、位相シフト済み基準画素データおよび位相シフト済み参照画素データを、それぞれ位相補正済み基準画素データおよび位相補正済み参照画素データとして扱うことになる。また、窓掛部104は、位相シフトの効果がない場合、基準画素データおよび参照画素データを、それぞれ位相補正済み基準画素データおよび位相補正済み参照画素データとして扱うことになる。
ステレオ画像処理装置100aは、例えば、CPU、およびRAMなどの記憶媒体を有する。この場合、上述の各機能部は、CPUが制御プログラムを実行することにより実現される。
次に、ステレオ画像処理装置100aの動作について説明する。
図7は、ステレオ画像処理装置100aの動作の一例を示すフローチャートであり、実施の形態2の図3に対応するものである。図3と同一部分には同一ステップ番号を付し、これについての説明を省略する。ステレオ画像処理装置100aは、図3のステップS3000の処理に代えて、図7のステップS3000aの処理を実行する。
図8は、位相補正済みデータ生成処理(図7のステップ3000a)の一例を示すフローチャートである。
まず、ステップS3021aにおいて、基準画素データ位相シフト部301aは、基準画素データに対して、上述の位相シフトフィルタを適用する。
そして、ステップS3022aにおいて、左右対称判定値算出部302aは、基準画素データの左右対称判定値Sym0を算出する。
そして、ステップS3023aにおいて、左右対称判定値算出部302aは、位相シフト済み基準画素データの左右対称判定値Sym1を算出する。
そして、ステップS3024aにおいて、左右対称判定値比較部303aは、位相シフト済み基準画素データの左右対称判定値Sym1が、基準画素データの左右対称判定値Sym0よりも大きいか否かを判定する。
左右対称判定値比較部303aは、左右対称判定値Sym1が左右対称判定値Sym0よりも大きい場合(S3024a:YES)、処理をステップS3031aへ進める。また、左右対称判定値比較部303aは、左右対称判定値Sym1が左右対称判定値Sym0以下である場合(S3024a:NO)、処理を後述のステップS3032aへ進める。
ステップS3031aにおいて、参照画素データ位相シフト部304aは、参照画素データに位相シフトフィルタを適用する。
そして、ステップS3032aにおいて、参照画素データ位相シフト部304aは、位相シフトの効果の有無に従って、各データを取り扱う。すなわち、参照画素データ位相シフト部304aは、位相シフトの効果がある場合、位相シフト済み基準画素データおよび位相シフト済み参照画素データを、窓掛部104へ出力する。また、参照画素データ位相シフト部304aは、位相シフトの効果がない場合、基準画素データおよび参照画素データを、窓掛部104へ出力する。そして、ステレオ画像処理装置100aの処理は、図7のフローチャートへ戻る。
このように、本実施の形態に係るステレオ画像処理装置100aは、位相シフトフィルタにより、位相補正済み基準画素データ位相補正済み参照画素データを、より左右対称にすることができる。本実施の形態に係るステレオ画像処理装置100aは、位相シフトフィルタの適用により、実施の形態2の零位相化の処理を適用する場合に比べて、演算負荷を大幅に抑えることができる。また、微分フィルタを採用した場合や、位相のシフト対象を一部の帯域に絞った場合には、更に演算負荷が低減する。
したがって、本実施の形態に係るステレオ画像処理装置100aは、実施の形態2に係るステレオ画像処理装置100に比べて、演算負荷を低減した状態で、基線長方向の画像領域サイズが小さい対象物の視差を高精度に算出することができる。
(実施の形態4)
本発明の実施の形態4は、画像マッチングにより部分画像の切り出し対象を絞るとともに、位相相関部において逆位相フィルタを採用する例である。言い換えると、本実施の形態は、演算負荷の更なる低減を図るようにした例である。
まず、本実施の形態に係るステレオ画像処理装置の構成について説明する。
図9は、本実施の形態に係るステレオ画像処理装置の構成の一例を示すブロック図であり、実施の形態2の図2に対応するものである。図2と同一部分には同一符号を付し、これについての説明を省略する。
図9において、ステレオ画像処理装置100bは、図2の構成に加えて、画像マッチング部107bを有する。また、ステレオ画像処理装置100bは、図2の位相相関部105に代えて、逆位相フィルタ部108bを有する。なお、逆位相フィルタ部108bは、位相相関部105を下位概念化したものである。
なお、本実施の形態において、ステレオ画像取得部101は、取得したステレオ画像を、画像マッチング部107bおよび画像切出部102へそれぞれ出力する。
<画像マッチング部107b>
画像マッチング部107bは、基準画像の基準点に対する参照画像の対応点を取得する。ここで取得される対応点は、ピクセルレベルの精度で基準点に対応付けがされた対応点である。以下、このような対応点は、「ピクセルレベルの対応点」という。
具体的には、画像マッチング部107bは、ステレオ画像取得部101により取得された基準画像および参照画像に対して画像マッチング処理を行うことにより、基準画像の基準点に対する参照画像の対応点を取得する。そして、画像マッチング部107bは、基準点の画像上の位置に対する参照画像の対応点の画像上の位置の「ピクセルレベルのずれ量n」を算出する。
例えば、画像マッチング部107bは、基準画像に含まれる所定の1ピクセルを「基準点」とし、この基準点を中心とした周辺の部分画像を、基準画像から切り出す。以下、このような部分画像は「ピクセルマッチング基準画素データ」という。また、画像マッチング部107bは、参照画像に含まれ、かつ、ピクセルマッチング基準画素データと同一サイズである部分画像を、参照画像から複数切り出す。以下、このような部分画像は、「ピクセルマッチング参照画素データ」という。複数のピクセルマッチング参照画素データのそれぞれは、参照画像において、異なる位置から切り出される。なお、ピクセルマッチング基準画素データは、基準点を含んでいればよく、必ずしも基準点が中心点である必要はない。
ステレオ画像の場合、基準画像と参照画像との視差はカメラの基線長方向にしか発生しない。したがって、画像マッチング部107bは、基線長方向に切り出し位置を変更して、複数のピクセルマッチング参照画素データを切り出せばよい。そして、基準画像における基準点の位置と、参照画像の対応点の位置とのずれ量が、上記したずれ量nとして算出される。
そして、画像マッチング部107bは、切り出された複数のピクセルマッチング参照画素データから、ピクセルマッチング基準画素データとのマッチング度が最も大きいピクセルマッチング参照画素データを特定する。特定されたピクセルマッチング参照画素データにおいて、基準点に対応する1ピクセルが、参照画像上の対応点になる。マッチング度を表す指標としては、例えば、輝度相違度を示すSAD(画素輝度の相違度:Sum of Absolute Differences)値が用いられる。
そして、画像マッチング部107bは、基準点の位置と参照画像の対応点の位置とを、例えば、基準点の位置、ピクセルレベルのずれ量n、およびそのずれの方向を示す情報を出力することにより、画像切出部102へ出力する。
なお、本実施の形態において、画像切出部102は、基準画素データに基準点が含まれるように、基準画像における画像の切り出し位置を決定するものとする。また、画像切出部102は、参照画素データに対応点が含まれるように、画像の切り出し位置を決定するものとする。画像切出部102は、基準画素データを、前述のピクセルマッチング基準画素データと異なるサイズとなるように決定してもよい。
また、本実施の形態において、窓掛部104は、窓掛け済み基準画素データおよび窓掛け済み参照画素データを、逆位相フィルタ部108bへ出力するものとする。
<逆位相フィルタ部108b>
逆位相フィルタ部108bは、窓掛け済み基準画素データを配列方向に反転させて逆位相フィルタ係数を算出する。そして、逆位相フィルタ部108bは、算出した逆位相フィルタ係数を用いて窓掛け済み参照画素データをフィルタリングすることにより、位相相関値を算出する。フィルタリングの処理の詳細については後述する。そして、逆位相フィルタ部108bは、フィルタリングの結果である位相相関値を、ピーク位置検出部106へ出力する。以下、このようなフィルタリングの結果は、「フィルタリング結果」という。
なお、本実施の形態において、ピーク位置検出部106は、逆位相フィルタ部108bからの出力に基づいて、対応点の視差を算出するものとする。
具体的には、ピーク位置検出部106は、フィルタリング結果において、基準画素データと参照画素データとの相関度(位相相関値)が最も高くなる相対位置関係を取得する。そして、ピーク位置検出部106は、取得した相対位置関係に基づいて、基準画素データの基準点に対する、参照画素データの対応点のずれ量を算出する。ここで取得されるずれ量は、ピクセルレベルよりも細かい、サブピクセルレベルの精度のずれ量である。
更に具体的には、ピーク位置検出部106は、フィルタリング結果におけるピークの位置を検出することにより、かかるずれ量を算出する。ここで、フィルタリング結果におけるピークとは、フィルタリング結果が最大値となる位置である。このサブピクセルレベルのずれ量と、画像マッチング部107bにおいて算出されるピクセルレベルのずれ量(上記したずれ量n)とを加算することにより、基準画像と参照画像との間の正確なずれ量(視差)が算出される。
ステレオ画像処理装置100bは、例えば、CPU、およびRAMなどの記憶媒体を有する。この場合、上述の各機能部は、CPUが制御プログラムを実行することにより実現される。
次に、ステレオ画像処理装置100bの動作について説明する。
なお、以降の説明において、画像横方向をX軸、画像縦方向をY軸として、1画素が1座標点であるものとする。また、説明の便宜のため、エピポーラ線の方向(基線長方向)は、画像全体において、X軸に平行であるものとする。
図10は、ステレオ画像処理装置100の動作の一例を示すフローチャートであり、実施の形態2の図3に対応するものである。図3と同一部分には同一ステップ番号を付し、これについての説明を省略する。
画像マッチング部107bは、ステレオ画像取得部101からステレオ画像が入力されるごとに、その基準画像の全体で基準点を移動させながら、基準画像および参照画像に対して画像マッチング処理を行う。ステレオ画像処理装置100は、以下のステップS2010b〜S2080bの動作を、全ての基準点について行う。
<基準点の位置決定処理>
ステップS2010bにおいて、画像マッチング部107bは、視差算出の対象となる基準点の位置(分析基準位置)を決定する。
<ピクセルマッチング基準画素データの切り出し処理>
ステップS2020bにおいて、画像マッチング部107bは、基準画像から、ピクセルマッチング基準画素データを切り出す。
ピクセルマッチング基準画素データは、ステップS2010bにおいて決定された基準点を含む部分領域の画像である。ピクセルマッチング基準画素データの大きさの単位は、上述の通り、ピクセル(画素)である。つまり、ピクセルマッチング基準画素データは、複数の画素行×複数の画素列の画像である。
<サーチ範囲およびサーチ開始位置の決定処理>
ステップS2030bにおいて、画像マッチング部107bは、ステップS2020bで決定された基準点の位置に基づいて、参照画像におけるサーチ範囲およびサーチ開始位置を決定する。
ステレオ画像の視差は、三角測量の原理により、カメラ間の距離である基線長とレンズの焦点距離と、ステレオカメラから測距の対象物までの距離に基づいて決定される。すなわち、視差は、基線長と焦点距離に比例し、対象物までの距離に反比例する。基線長と焦点距離はカメラパラメータで固定である。このため、サーチ範囲は、ステレオカメラから測距の対象物までの距離に基づいて決定すればよい。ステレオカメラから無限遠にある対象物は基準画像と参照画像において同じ位置に撮像されるため、参照画像におけるサーチ開始位置は基準画像における基準点と同じ座標を設定してもよい。
<ピクセルマッチング参照画素データの切り出し処理>
ステップS2040bにおいて、画像マッチング部107bは、参照画像における切り出し位置を決定し、画素行の数と画素列の数がピクセルマッチング基準画素データと同一のピクセルマッチング参照画素データを切り出す。
画像マッチング部107bは、ステップS2030bで決定されたサーチ開始位置を例えば最初の切り出し位置に決定し、以降、切り出し位置を移動させていく。
<マッチング度の算出処理>
ステップS2050bにおいて、画像マッチング部107bは、ピクセルマッチング基準画素データとピクセルマッチング参照画素データとの間のマッチング度を算出する。このマッチング度としては、例えば、輝度相違度を示すSAD値や輝度類似度が用いられる。
なお、マッチング度の指標は、SAD値に限定されるものではなく、マッチング度の指標として用いることができるものであれば他の指標を用いることができる。例えば、画像マッチング部107bは、マッチング度の指標として、SSD(Sum of Squared Differences)を用いてもよい。
<サーチ範囲の終了判定処理>
ステップS2060bにおいて、画像マッチング部107bは、サーチ範囲に対する処理の終了判定処理を行う。すなわち、画像マッチング部107bは、切り出し位置が移動によりサーチ範囲を網羅したか否かを判定する。
画像マッチング部107bは、サーチ範囲に対する処理が終了していない場合(S2060b:NO)、ステップS2040bへ戻る。この結果、画像マッチング部107bは、ステップS2040bでのピクセルマッチング参照画素データの切り出し領域がずれるように、切り出し位置を、サーチ範囲内において移動させる。このようにして、ステップS2040b〜S2060bまでの処理は、サーチ範囲に対する処理が終了するまで(S2060b:YES)、繰り返される。
<マッチング度最大の参照位置検出処理>
ステップS2070bにおいて、画像マッチング部107bは、ステップS2040b〜S2060bの処理によって得られた、複数のマッチング度に基づいて、切り出し位置を決定する。すなわち、画像マッチング部107bは、マッチング度が最大となるピクセルマッチング参照画素データの切り出し位置を、特定する。
マッチング度として輝度相違度が用いられている場合には、画像マッチング部107bは、輝度相違度が極小ないし最小となるピクセルマッチング参照画素データの切り出し位置を特定する。そして、画像マッチング部107bは、マッチング度が最大となる切り出し位置を、基準点に対する参照画像の対応点として特定する。
ここで、マッチング度の最大位置検出までの処理(図10のステップS2010〜S2070b)の概要を、模式的に説明する。
図11は、マッチング度の最大位置検出までの処理の概要を示す模式図である。
図11Aに示すように、画像マッチング部107bは、分析基準位置(基準点)(xa,ya)311を中心とした周辺の部分画像を、ピクセルマッチング基準画素データ312として切り出す(図10のステップS2020b)。このピクセルマッチング基準画素データ312の切り出しには、所定サイズ(縦サイズ:wvピクセル、横サイズ:whピクセル)の矩形窓313が用いられる。なお、ここでは、第1の窓関数によって規定される矩形窓313の中心と分析基準位置311とを一致させるものとして説明を行うが、厳密に中心でなくてもよい。すなわち、矩形窓313の中心付近に、分析基準位置311が存在していればよい。
次に、画像マッチング部107bは、決定された分析基準位置に基づいて(図10のステップS2010b)、参照画像におけるサーチ範囲およびサーチ開始位置を決定する(図10のステップS2030b)。サーチ開始位置(参照画像においてピクセルマッチング参照画素データを切り出す初期座標)は、例えば、基準画像における分析基準位置と同じ座標(xa,ya)が用いられる。
次に、画像マッチング部107bは、図11Bに示すように、切り取り基準位置321を、参照画像からサーチ開始位置を中心とした周辺の部分画像をピクセルマッチング参照画素データ322として切り出す(図10のステップS2040b)。この単位参照画像322の切り出しには、ピクセルマッチング基準画素データの切り出しに用いられる矩形窓313と同じ矩形窓が用いられる。
そして、図11Cに示すように、画像マッチング部107bは、ピクセルマッチング基準画素データ312と各ピクセルマッチング参照画素データ322とのマッチング度を算出する(図10のステップS2050b)。このマッチング度には、例えば、輝度相違度を示すSAD値が用いられる。このSAD値は、次の式(3)によって算出される。
Figure 0006258209
そして、図11Bに示すように、画像マッチング部107bは、サーチ範囲が修了していないと判定される場合には(図10のステップS2060b:NO)、切り出す位置をずらして新たなピクセルマッチング参照画素データ322'を参照画像から切り出す。切り出す位置は、ここでは1ピクセルずつずらされる。また、ずらす方向は、図11Bにおける参照画像の座標(xa,ya)から伸びる右矢印の方向である。
このようにして、画像マッチング部107bは、1つのピクセルマッチング基準画素データ312に対して、複数のピクセルマッチング参照画素データ322についての複数のSAD値を算出する。そして、画像マッチング部107bは、複数のマッチング度に基づいて、マッチング度が最大となるピクセルマッチング参照画素データを特定する。具体的には、画像マッチング部107bは、複数のSAD値の内で、例えば最小のSAD値に対応するピクセルマッチング参照画素データ322'を特定する。この特定されたピクセルマッチング参照画素データの切り出し基準位置321'の座標を(xa+n、ya)とすると、nは、ピクセル単位のずれ量となる。そして、画像マッチング部107bは、SAD値が最小となる切り出し基準位置321'を、基準位置321(基準点)のピクセルレベルの対応点とする。
<サブピクセル推定処理>
図10のステップS2080bにおいて、ステレオ画像処理装置100bは、サブピクセル推定処理を行う。サブピクセル推定処理は、基準点に対する対応点の、サブピクセルレベルの精度のずれ量を推定する処理である。ステレオ画像処理装置100bは、S2010bで設定した基準点と、ステップS2070bで得られた参照画像の対応点と、ステレオ画像取得部101が入力する基準画像および参照画像とに基づいて、サブピクセル推定処理を行う。
図12は、サブピクセル推定処理の詳細を示すフローチャートである。
<基準画素データの切り出し処理>
ステップS2081bにおいて、画像切出部102は、基準画像から、基準点を中心とした周辺の部分画像を切り出し、基準画素データを取得する。この基準画素データの基となる部分画像の切り出しには、矩形窓が用いられる。
<参照画素データの切り出し処理>
ステップS2082bにおいて、画像切出部102は、参照画像から、ステップS2070bにおいて検出された対応点を中心とした周辺の部分画像を切り出し、参照画素データを取得する。この参照画素データの取得にも、基準画素データの場合と同じ矩形窓が用いられる。
なお、矩形窓のサイズは、ピクセルマッチング基準画素データの切り出しに用いられたものと異なってもよい。また、本実施の形態においては、基準画素データを、新たに基準画像から取得するものとして説明したが、これに限定されない。画像切出部102は、画像マッチング部107bで用いられたピクセルマッチング基準画素データを、そのまま基準画素データとして用いてもよい。
<基準画素データの位相補正処理>
ステップS3011bにおいて、位相補正部103は、基準画素データを位相補正する。
<参照画素データの位相補正処理>
ステップS3031bにおいて、位相補正部103は、参照画素データを位相補正する。
<位相補正済み基準画素データの窓掛け処理>
ステップS4001bにおいて、窓掛部104は、位相補正済み基準画素データに対して、第2の窓関数を用いて窓掛けを行う。第2の窓関数は、例えば、ハニング窓の窓関数である。
<位相補正済み参照画素データの窓掛け処理>
ステップS4002bにおいて、窓掛部104は、位相補正済み参照画素データに対して、位相補正済み基準画素データに対して用いられたものと同様の窓関数を用いて、窓掛けを行う。
なお、ここでは、ハニング窓の窓関数が用いられる場合について説明するが、本発明はこれに限定されるものではない。上述の通り、窓関数として、ハミング窓、ブラックマン窓、カイザー窓などが用いられてもよい。これらの窓関数は、基準画素データの特性(例えば、周波数パワー特性、位相特性、切り出し端連続性)のうち、どの特性を重要視するかに応じて選択される。例えば、位相特性を重要視する場合には、カイザー窓が適している。但し、カイザー窓を用いると、演算がかなり複雑となる。一方、演算量削減の観点からは、ハニング窓が適している。
ここで、サブピクセル推定処理では、切り出された部分画像にノイズが含まれないことが重要である。これは、サブピクセルレベルのずれ量を精度よく算出するためである。一方、画像マッチング部107bにおける画像切り出し処理は、例えば、ピクセル単位で行われるため、画像切り出しの精度よりも演算回数を削減することに重きが置かれる。
したがって、画像マッチング部107bで用いられる第1の窓関数には、単に画像データを切り出すだけの窓関数が用いられる。これに対して、サブピクセル推定処理で用いられる第2の窓関数は、ノイズが少ないことが重要視される。このため、第2の窓関数は、窓の両端における変化が連続的である関数(例えば、窓の両端の値がゼロである関数)であることが好ましい。
このような第2の窓関数を用いることにより、基準画素データ、および参照画素データの連続性が保たれ、後述する逆位相フィルタの特性に含まれる、切り出しによるノイズ成分を低減することができる。なお、第1の窓関数と第2の窓関数とを周波数特性について比較すると、第1の窓関数の方が、第2の窓関数よりも、メインローブ(main-lobe)の幅が狭く、サイドローブ(side-lobe)の振幅が大きい。
<逆位相フィルタ係数算出処理>
ステップS5001bにおいて、逆位相フィルタ部108bは、窓掛け済み基準画素データから、逆位相フィルタ係数を算出する。具体的には、逆位相フィルタ部108bは、窓掛け済み基準画素データの各画素値の位置を、配列方向において反転させる形で、信号列を逆の順番に並べ換える。
<フィルタリング処理>
ステップS5002bにおいて、逆位相フィルタ部108bは、窓掛け済み参照画素データを、ステップS5001bにおいて算出された逆位相フィルタ係数を用いてフィルタリングする。
<ピーク位置検出処理>
ステップS6001bにおいて、ピーク位置検出部106は、フィルタリング結果によって検出されたピーク位置に基づいて、基準画像と参照画像とのサブピクセルレベルのずれ量(視差)を算出する。基準画像における基準点の視差は、ピクセルレベルのずれ量nと、サブピクセルレベルのずれ量δ’を加算することによって求められる。そして、ステレオ画像処理装置100の処理は、図10のフローチャートへ戻る。
なお、図ステップS2081b〜S5002bの処理の順序については、図12のフローチャートで示した順序に限定されない。基準画像に関する処理であるS2081b、S3011b、S4001bと、参照画像に関する処理であるS2082b、S3031b、S4002bとが、それぞれこれらの順序で実行されればよい。そして、S2081b〜S4002bの処理が、S5001bの前までに完了していればよい。
以降、サブピクセル推定処理(図12)の概要を、模式的に説明する。
図13は、部分画像の切り出しから逆位相フィルタ係数の算出までの処理(図12のステップS2081b〜S5002b)の概要を示す模式図である。
図13Aに示すように、画像切出部102は、基準画像から、(M)個の画素値から成る基準画素データ353を取得する。また、図13Bに示すように、画像切出部102は、参照画像から、M個の画素値から成る参照画素データ356を取得する。
そして、窓掛部104は、基準点(xa,ya)およびピクセルレベルの対応点(xa+n,ya)を中心とするMピクセルのサイズのハニング窓を、第2の窓関数w(m)357として用いる。なお、第2の窓関数w(m)のサイズは、Mに限定されない。
逆位相フィルタ部108bは、必ずしも逆位相フィルタ係数を別途算出する必要はなく、逆位相フィルタ係数を適用した場合のフィルタリング結果が得られるような演算を行えばよい。すなわち、図13Cに示すように、逆位相フィルタ部108bは、例えば、以下に示す式(4)を用いて、フィルタリング処理を行う。ここで、f'(m)は、基準画像の画素値を表し、g'(m)は、参照画像の画素値を表す。
Figure 0006258209
図14は、逆位相フィルタ係数によるフィルタリング(図12のステップS5002b)の概念を説明するための模式図である。
図14において、窓関数w(m)の長さ(M)は、5画素であるものとする。そして、折り返しノイズの除去および窓掛けが行われた基準画素データは、「1,2,3,4,5」であるものとする。また、折り返しノイズの除去および窓掛けが行われた参照画素データx(m)も、「1,2,3,4,5」であるものとする。また、フィルタリングに用いる画素値は、輝度値であるものとする。
基準画素データが「1,2,3,4,5」の場合、逆位相フィルタ部108bは、逆位相フィルタ係数h(k)として、「5,4,3,2,1」を算出する。
そして、逆位相フィルタ部108bは、図14Bに示すように、逆位相フィルタ係数h(k)を用いて、参照画素データに対してフィルタリング処理を施す。
このフィルタリング処理は、具体的には次のように行われる。参照画素データにおける、任意の構成信号の座標をkとした場合、逆位相フィルタ部108bは、構成信号の座標が「k−2、k−1、k、k+1、k+2」となる信号列に対して、逆位相フィルタ係数h(k)を乗算することによりフィルタリング処理を施す。そして、逆位相フィルタ部108bは、各乗算結果の総和を、フィルタリング結果z(m)として算出する。ここで、mは、0〜4の整数値を取る。
ここで、参照画素データの両端の外部に、輝度が0の仮想的な座標点を考慮すると、図14Aに示すように、参照画素データx(m)は、「0,0,1,2,3,4,5,0,0」となる。図14Aにおけるm(m:0〜4)を参照画素データの座標点とした場合(つまり、x(0)=1、x(1)=2、x(2)=3、x(3)=4、x(4)=5)、フィルタリング処理は、次のように行われる。
逆位相フィルタ部108bは、m=0の場合、m=0を中心とする輝度値信号列「0、0、1、2、3」を、逆位相フィルタ「5、4、3、2、1」によってフィルタリング処理する。この結果、z(0)は、26(=0×1+0×2+1×3+2×4+3×5)となる。
また、逆位相フィルタ部108bは、m=1の場合、m=1を中心とする輝度値信号列「0、1、2、3、4」を、逆位相フィルタ「5、4、3、2、1」によってフィルタリング処理する。この結果、z(1)は、40(=0×1+1×2+2×3+3×4+4×5)となる。
同様にして、z(2)は、55となり、z(3)は、40となり、z(4)は、26となる。
したがって、逆位相フィルタ部108bは、フィルタリング結果z(m)として、「26、40、55、40、26」を得る。
このようなフィルタリング処理は、上述の式(4)によって表される。式(4)において、基準画素データが反転されたf'(−k)は、逆位相フィルタのフィルタ係数h(k)として用いられている。また、g'(m)は、参照画素データの輝度値である。
逆位相フィルタを用いたフィルタリング処理によるフィルタリング結果z(m)は、図14Cに示すように、対称(図14では、m=2を中心として左右対称)になると共に、中央付近にピークが存在するという特徴を有する。
また、逆位相フィルタは、いわゆるFIRフィルタの一種に相当するものであり、線形推移不変システムであるという特徴を有する。ここで、線形推移不変システムとは、入力信号にずれがある場合には、出力信号にも入力信号と同じだけのずれが生じるシステムである。
上述した具体例では、参照画素データと基準画素データとの間にズレがない場合を例にとって説明した。ところが、参照画素データが基準画素データに対してサンプリング間隔より小さなずれが存在する場合、フィルタリング結果であるz(m)にも同じだけのずれが生じることになる。
なお、実空間において同一サイズの対象物の視差を求める場合、対象物が遠くに存在する場合は近くに存在する場合よりも視差は小さく、ピクセル単位のずれ量nも小さくなる。それと同時に、当該対象物の基線長方向の画像領域サイズも小さくなる。
したがって、ステレオ画像処理装置100は、逆位相フィルタのタップ数を、画像マッチング部107bで検出されたピクセル単位のずれ量nの大きさに応じて設定することが望ましい。
例えば、ピクセル単位のズレ量nが小さい場合には、それに応じて逆位相フィルタのタップ長も短く設定される。すなわち、実空間において同一サイズの物体の視差を求める場合、物体が遠くに存在する場合は近くに存在する場合よりも視差は小さく、ピクセル単位のズレ量nも小さくなる。それと同時に、画像中に撮影されるサイズも小さくなるため、ズレ量nの大きさに応じて基準画素データおよび参照画素データのサイズを変更することにより、逆位相フィルタのタップ長も適応的に変更することができる。これにより測距対象の物体のサイズに合わせた視差を算出することができる。
また、フィルタリング結果は、線形推移不変システムの出力である。したがって、フィルタリング結果は、レンズの歪補正の誤差、CCDなどのイメージセンサに起因するゲインノイズなどの誤差、窓掛けによる画像切り出しの演算精度の誤差を除けば、理論的には真のずれ量を表現していることになる。よって、ピクセル単位で離散化されている逆位相フィルタの出力をサンプリング定理に従ってピクセル間の数値を補間することにより、サブピクセル単位での真のピーク位置を求めることができる。
図15は、ピーク位置検出の処理(図12のステップS6001b)の一例の概要を示す模式図である。ここでは、sinc関数を用いたピーク位置検出の処理の概要を示す。
sinc関数は、sin(πx)/πxで定義される関数であり、離散化されたサンプリングデータを元の連続データに戻す場合に用いられる関数である。サンプリングされた離散データとsinc関数との畳み込み演算を行うことにより、元の連続データを完全に復元可能であることは、サンプリング定理によって証明されている。
したがって、ピーク位置検出部106は、離散化されているフィルタリング結果をsinc関数によって畳み込み演算する。これにより、ピーク位置検出部106は、ピクセル単位間隔の信号データを補間することができ、サブピクセル単位でも理論的に信号データが補間されたフィルタリング結果z(m)の真のピーク位置を導出することができる。
図15に示すように、ピーク位置検出部106は、例えば、2分探索によって、ピーク位置を検出する。
例えば、ピーク位置検出部106は、ピクセル単位間隔のフィルタリング結果z(m)が最大となる位置m=0を、位置A(つまり、2分探索基準点)とする。ピーク位置検出部106は、その最大位置Aから左右に1ピクセルずつずれた位置のフィルタリング結果であるz(+1)とz(−1)とを比較する。そして、ピーク位置検出部106は、大きい方の位置(ここでは、m=1)を、位置B(つまり、2分探索使用点)とする。
そして、ピーク位置検出部106は、2分探索基準点Aと2分探索使用点Bとの中点である位置Cの値を、サンプリング定理に基づき、例えば以下の式(5)を用いて算出する。
Figure 0006258209
そして、ピーク位置検出部106は、位置Cを新たな2分探索基準点として、上記と同様の処理を繰り返す。
この処理の繰り返し回数は、必要な精度に応じた数とすることができる。すなわち、ピーク位置検出部106は、必要なサブピクセル精度が1/2ピクセルであれば、上記した処理を1回行えばよい。また、ピーク位置検出部106は、必要なサブピクセル精度が1/4ピクセル精度であれば2回、1/8ピクセルであれば3回と、必要なサブピクセル精度に応じて繰り返し回数を決定すればよい。
そして、ピーク位置検出部106は、最後に得られた中点を、検出したピーク位置δとして扱う。
なお、以上の説明では、sinc関数および2分探索法を用いてピーク位置を検出する方法について説明を行った。しかしながら、本発明はこれに限定されるものではなく、例えば、ピーク位置検出部106は、sinc関数と勾配法との組み合わせによって、ピーク位置を探索してもよい。すなわち、ピーク位置検出部106は、離散化されているフィルタリング結果をsinc関数によって畳み込み演算してピクセル単位間隔の信号データを補間した後であれば、各種の最大値検出方法を用いることができる。
または、ピーク位置検出部106は、二次曲線近似を用いてピーク位置を検出してもよい。これにより、ピーク位置検出部106は、ピーク位置検出のための演算量を削減することができる。この場合、ピーク位置検出部106は、離散化されているフィルタリング結果を二次曲線でフィッティングし、その二次曲線の極大値の位置を、ピーク位置として検出する。これにより、ピーク位置検出部106は、離散化の間隔以下の精度でピーク位置を求めることができる。
図16は、二次曲線近似を用いたピーク位置検出の処理(図12のステップS6001b)の一例の概要を示す模式図である。
図16に示すように、ピーク位置検出部106は、まず、ピクセル単位間隔のフィルタリング結果z(m)が最大となる、位置m=0における値z(0)を求める。また、ピーク位置検出部106は、その最大位置m=0から左右に1ピクセルずつずれた、位置m=+1、−1のフィルタリング結果である、z(+1)、z(−1)を取得する。そして、ピーク位置検出部106は、これら3点を通る二次曲線を求め、さらにその二次曲線が極大値をとる位置を、ピーク位置δとして検出する。このピーク位置δは、例えば、次の式(6)を用いて算出することができる。
Figure 0006258209
なお、以上の説明において、ステレオ画像処理装置100bは、基準画素データに基づいて逆位相フィルタ係数を算出し、逆位相フィルタ係数を用いて参照画素データに対してフィルタリング処理を施した。しかし、ステレオ画像処理装置100bは、逆に、参照画素データに基づいて逆位相フィルタ係数を算出し、逆位相フィルタを用いて基準画素データに対してフィルタリング処理を施してもよい。これは、基準画素データと参照画素データとが、ステレオ画像の一方と他方という意味において、等価なデータであるためである。
以上のように、本実施の形態に係るステレオ画像処理装置100bは、画像マッチングにより部分画像の切り出し対象を絞るとともに、逆位相フィルタを用いて視差を算出する。これにより、本実施の形態に係るステレオ画像処理装置100bは、演算負荷を低減した状態で、基線長方向の画像領域サイズが小さい対象物に対して、より高精度に視差を算出することができる。
なお、以上説明した各実施の形態におけるステレオ画像処理装置の各機能部は、例えば、集積回路により構成されてもよい。ステレオ画像処理装置の各機能部は、個別に1チップ化されていてもよいし、複数で1チップ化されてもよい。集積回路は、集積度の違いにより、LSI(large scale integration)、IC(integrated circuit)、システムLSI、スーパーLSI、またはウルトラLSIなどとすることができる。また、集積回路は、専用回路または汎用プロセッサにより実現されるものであってもよい。また、集積回路は、その製造後にプログラムすることが可能なFPGA(field programmable gate array)や、内部の回路セルの接続や設定を再構成可能なコンフィギュラブル・プロセッサとしてもよい。更には、ステレオ画像処理装置の各機能部は、半導体技術の進歩または派生する別技術に応じて、LSIに置き換わる他の集積回路化の技術(例えばバイオ技術)により集積化されたものにより実現されてもよい。
本開示のステレオ画像処理装置は、ステレオ画像の基準画像および参照画像を取得するステレオ画像取得部と、前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得する画像切出部と、前記基準画像から取得された前記一次元画素データ列である基準画素データに対して行った場合に当該基準画素データの値をより左右対称にする処理である位相補正処理を、前記基準画素データと、前記参照画像から取得された前記一次元画素データ列である参照画素データと、のそれぞれに対して行う位相補正部と、前記基準画素データに対して前記位相補正処理を行って得られた位相補正済み基準画素データと、前記参照画素データに対して前記位相補正処理を行って得られた位相補正済み参照画素データと、のそれぞれに対して、窓掛けを行う窓掛部と、前記位相補正済み基準画素データに対して前記窓掛けを行って得られた窓掛け済み基準画素データと、前記位相補正済み参照画素データに対して前記窓掛けを行って得られた窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出する位相相関部と、前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するピーク位置検出部と、を有する。
また、上記ステレオ画像処理装置において、前記位相補正部は、前記基準画素データに対して、各周波数成分の位相を零にする零位相化処理を行うことにより、前記位相補正済み基準画素データを算出する基準画素データ零位相化部と、前記基準画素データおよび前記位相補正済み基準画素データに基づいて、前記基準画素データに対して適用した場合に当該基準画素データの値を左右対称にする位相補正フィルタを算出する位相補正フィルタ算出部と、前記参照画素データに対して前記位相補正フィルタを適用することにより、前記位相補正済み参照画素データを算出する参照画素データ位相補正部と、を有してもよい。
また、上記ステレオ画像処理装置において、前記零位相化処理は、前記基準画素データに対して、一次元フーリエ変換、虚数成分の除去、および一次元逆フーリエ変換をこの順序で施す処理を含み、前記位相補正フィルタは、前記位相補正済み基準画素データを一次元フーリエ変換して得られる値を、前記基準画素データを一次元フーリエ変換して得られる値で割ることにより算出されるフィルタを含んでもよい。
また、上記ステレオ画像処理装置において、前記位相補正部は、前記基準画素データに対して、一部または全部の周波数成分の位相を90度シフトさせる位相シフトフィルタを適用して、位相シフト済み基準画素データを算出する基準画素データ位相シフト部と、前記位相シフト済み基準画素データおよび前記基準画素データのそれぞれに対して、値の左右対称性を示す左右対称判定値を算出する左右対称判定値算出部と、前記位相シフト済み基準画素データから算出された前記左右対称判定値と、前記基準画素データから算出された前記左右対称判定値と、を比較し、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いか否かを判定する左右対称判定値比較部と、前記参照画素データに対して前記位相シフトフィルタを適用して、位相シフト済み参照画素データを算出する参照画素データ位相シフト部と、を有し、前記窓掛部は、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いとき、前記位相シフト済み基準画素データおよび前記位相シフト済み参照画素データを、それぞれ前記位相補正済み基準画素データおよび前記位相補正済み参照画素データとして扱い、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高くないとき、前記基準画素データおよび前記参照画素データを、それぞれ前記位相補正済み基準画素データおよび前記位相補正済み参照画素データとして扱ってもよい。
また、上記ステレオ画像処理装置において、前記位相シフトフィルタは、微分フィルタであってもよい。
また、上記ステレオ画像処理装置において、前記位相相関部は、前記窓掛け済み基準画素データを配列方向に反転させて逆位相フィルタ係数を算出し、前記逆位相フィルタ係数を用いて前記窓掛け済み参照画素データをフィルタリングすることにより、前記位相相関値を算出してもよい。
また、上記ステレオ画像処理装置は、ピクセルレベルの前記対応点を取得する画像マッチング部、を更に有し、前記画像切出部は、前記部分画像に前記基準点および前記対応点が含まれるように、前記部分画像の切り出し位置を決定し、前記ピーク位置検出部は、前記位相相関値に基づいて、前記基準画像の基準点に対する、サブピクセルレベルの前記対応点の視差を算出してもよい。
本開示のステレオ画像処理方法は、ステレオ画像の基準画像および参照画像を取得するステップと、前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得するステップと、前記基準画像から取得された前記一次元画素データ列である基準画素データに対して行った場合に当該基準画素データの値をより左右対称にする処理である位相補正処理を、前記基準画素データと、前記参照画像から取得された前記一次元画素データ列である参照画素データと、のそれぞれに対して行うステップと、前記基準画素データに対して前記位相補正処理を行って得られた位相補正済み基準画素データと、前記参照画素データに対して前記位相補正処理を行って得られた位相補正済み参照画素データと、のそれぞれに対して、窓掛けを行うステップと、前記位相補正済み基準画素データに対して前記窓掛けを行って得られた窓掛け済み基準画素データと、前記位相補正済み参照画素データに対して前記窓掛けを行って得られた窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出するステップと、前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するステップと、を有する。
2012年9月27日出願の特願2012−214974の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明に係るステレオ画像処理装置およびステレオ画像処理方法は、基線長方向の画像領域サイズが小さい対象物についても高精度に視差を算出することができる、ステレオ画像処理装置およびステレオ画像処理方法として有用である。
100、100a、100b ステレオ画像処理装置
101 ステレオ画像取得部
102 画像切出部
103、103a 位相補正部
104 窓掛部
105 位相相関部
106 ピーク位置検出部
107b 画像マッチング部
108b 逆位相フィルタ部
201 基準画素データ零位相化部
202 位相補正フィルタ算出部
203 参照画素データ位相補正部
301a 基準画素データ位相シフト部
302a 左右対称判定値算出部
303a 左右対称判定値比較部
304a 参照画素データ位相シフト部

Claims (8)

  1. ステレオ画像の基準画像および参照画像を取得するステレオ画像取得部と、
    前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得する画像切出部と
    前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、各周波数成分の位相を零にする零位相化処理を行うことにより、位相補正済み基準画素データを算出する基準画素データ零位相化部と、
    前記基準画素データおよび前記位相補正済み基準画素データに基づいて、前記基準画素データに対して適用した場合に当該基準画素データの値を左右対称にする位相補正フィルタを算出する位相補正フィルタ算出部と、
    前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相補正フィルタを適用することにより、前記位相補正済み参照画素データを算出する参照画素データ位相補正部と、
    記位相補正済み基準画素データと、前記位相補正済み参照画素データと、のそれぞれに対して、窓掛けを行う窓掛部と、
    前記位相補正済み基準画素データに対して前記窓掛けを行って得られた窓掛け済み基準画素データと、前記位相補正済み参照画素データに対して前記窓掛けを行って得られた窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出する位相相関部と、
    前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するピーク位置検出部と、を有する、
    ステレオ画像処理装置。
  2. 前記零位相化処理は、前記基準画素データに対して、一次元フーリエ変換、虚数成分の除去、および一次元逆フーリエ変換をこの順序で施す処理を含み、
    前記位相補正フィルタは、前記位相補正済み基準画素データを一次元フーリエ変換して得られる値を、前記基準画素データを一次元フーリエ変換して得られる値で割ることにより算出されるフィルタを含む、
    請求項に記載のステレオ画像処理装置。
  3. ステレオ画像の基準画像および参照画像を取得するステレオ画像取得部と、
    前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得する画像切出部と、
    前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、一部または全部の周波数成分の位相を90度シフトさせる位相シフトフィルタを適用して、位相シフト済み基準画素データを算出する基準画素データ位相シフト部と、
    前記位相シフト済み基準画素データおよび前記基準画素データのそれぞれに対して、値の左右対称性を示す左右対称判定値を算出する左右対称判定値算出部と、
    前記位相シフト済み基準画素データから算出された前記左右対称判定値と、前記基準画素データから算出された前記左右対称判定値と、を比較し、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いか否かを判定する左右対称判定値比較部と、
    前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相シフトフィルタを適用して、位相シフト済み参照画素データを算出する参照画素データ位相シフト部と、
    前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いとき、前記位相シフト済み基準画素データと、前記位相シフト済み参照画素データと、のそれぞれに対して、窓掛けを行うとともに、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高くないとき、前記基準画素データおよび前記参照画素データと、のそれぞれに対して窓掛けを行うことにより、窓掛け済み基準画素データ及び窓掛け済み参照データを生成する窓掛部と、
    前記窓掛け済み基準画素データと、前記窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出する位相相関部と、
    前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するピーク位置検出部と、を有する、
    テレオ画像処理装置。
  4. 前記位相シフトフィルタは、微分フィルタである、
    請求項に記載のステレオ画像処理装置。
  5. 前記位相相関部は、
    前記窓掛け済み基準画素データを配列方向に反転させて逆位相フィルタ係数を算出し、前記逆位相フィルタ係数を用いて前記窓掛け済み参照画素データをフィルタリングすることにより、前記位相相関値を算出する、
    請求項1または3に記載のステレオ画像処理装置。
  6. ピクセルレベルの前記対応点を取得する画像マッチング部、を更に有し、
    前記画像切出部は、
    前記部分画像に前記基準点および前記対応点が含まれるように、前記部分画像の切り出し位置を決定し、
    前記ピーク位置検出部は、
    前記位相相関値に基づいて、前記基準画像の基準点に対する、サブピクセルレベルの前記対応点の視差を算出する、
    請求項1または3に記載のステレオ画像処理装置。
  7. ステレオ画像の基準画像および参照画像を取得するステップと、
    前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得するステップと
    前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、各周波数成分の位相を零にする零位相化処理を行うことにより、位相補正済み基準画素データを算出するステップと、
    前記基準画素データおよび前記位相補正済み基準画素データに基づいて、前記基準画素データに対して適用した場合に当該基準画素データの値を左右対称にする位相補正フィルタを算出するステップと、
    前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相補正フィルタを適用することにより、前記位相補正済み参照画素データを算出するステップと、
    記位相補正済み基準画素データと、前記位相補正済み参照画素データと、のそれぞれに対して、窓掛けを行うステップと、
    前記位相補正済み基準画素データに対して前記窓掛けを行って得られた窓掛け済み基準画素データと、前記位相補正済み参照画素データに対して前記窓掛けを行って得られた窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出するステップと、
    前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するステップと、を有する、
    ステレオ画像処理方法。
  8. ステレオ画像の基準画像および参照画像を取得するステップと、
    前記基準画像および前記参照画像のそれぞれから、前記ステレオ画像の基線長方向に平行な部分画像を切り出し、当該部分画像の前記基線長方向における画素値の分布を示す一次元画素データ列を取得するステップと、
    前記基準画像から取得された前記一次元画素データ列である基準画素データに対して、一部または全部の周波数成分の位相を90度シフトさせる位相シフトフィルタを適用して、位相シフト済み基準画素データを算出するステップと、
    前記位相シフト済み基準画素データおよび前記基準画素データのそれぞれに対して、値の左右対称性を示す左右対称判定値を算出するステップと、
    前記位相シフト済み基準画素データから算出された前記左右対称判定値と、前記基準画素データから算出された前記左右対称判定値と、を比較し、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いか否かを判定するステップと、
    前記参照画像から取得された前記一次元画素データ列である参照画素データに対して前記位相シフトフィルタを適用して、位相シフト済み参照画素データを算出するステップと、
    前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高いとき、前記位相シフト済み基準画素データと、前記位相シフト済み参照画素データと、のそれぞれに対して、窓掛けを行うとともに、前記位相シフト済み基準画素データの前記左右対称性が前記基準画素データの前記左右対称性よりも高くないとき、前記基準画素データおよび前記参照画素データと、のそれぞれに対して窓掛けを行うことにより、窓掛け済み基準画素データ及び窓掛け済み参照データを生成するステップと、
    前記窓掛け済み基準画素データと、前記窓掛け済み参照画素データと、の間の相関の度合いを示す位相相関値を算出するステップと、
    前記位相相関値に基づいて、前記基準画像の基準点に対する前記参照画像の対応点の視差を算出するステップと、を有する、
    ステレオ画像処理方法。
JP2014538098A 2012-09-27 2013-07-04 ステレオ画像処理装置およびステレオ画像処理方法 Expired - Fee Related JP6258209B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012214974 2012-09-27
JP2012214974 2012-09-27
PCT/JP2013/004162 WO2014049919A1 (ja) 2012-09-27 2013-07-04 ステレオ画像処理装置およびステレオ画像処理方法

Publications (2)

Publication Number Publication Date
JPWO2014049919A1 JPWO2014049919A1 (ja) 2016-08-22
JP6258209B2 true JP6258209B2 (ja) 2018-01-10

Family

ID=50387374

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014538098A Expired - Fee Related JP6258209B2 (ja) 2012-09-27 2013-07-04 ステレオ画像処理装置およびステレオ画像処理方法

Country Status (5)

Country Link
US (1) US10009594B2 (ja)
EP (1) EP2902960A4 (ja)
JP (1) JP6258209B2 (ja)
CN (1) CN104685535B (ja)
WO (1) WO2014049919A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5980294B2 (ja) * 2014-10-27 2016-08-31 キヤノン株式会社 データ処理装置、撮像装置、およびデータ処理方法
EP3309505A4 (en) * 2015-06-11 2018-04-25 Panasonic Intellectual Property Management Co., Ltd. Dimension measurement device and dimension measurement method
EP3330664B1 (en) * 2015-07-29 2021-01-27 KYOCERA Corporation Parallax calculating device, stereo camera device, vehicle, and parallax calculating method
US10008030B2 (en) * 2015-09-07 2018-06-26 Samsung Electronics Co., Ltd. Method and apparatus for generating images
US20170171456A1 (en) * 2015-12-10 2017-06-15 Google Inc. Stereo Autofocus
EP3182372B1 (en) * 2015-12-18 2019-07-31 InterDigital CE Patent Holdings Method and system for estimating the position of a projection of a chief ray on a sensor of a light-field acquisition device
US10341634B2 (en) 2016-01-29 2019-07-02 Samsung Electronics Co., Ltd. Method and apparatus for acquiring image disparity
JP6636963B2 (ja) * 2017-01-13 2020-01-29 株式会社東芝 画像処理装置及び画像処理方法
WO2018147059A1 (ja) * 2017-02-07 2018-08-16 ソニー株式会社 画像処理装置、および画像処理方法、並びにプログラム
KR102459853B1 (ko) 2017-11-23 2022-10-27 삼성전자주식회사 디스패리티 추정 장치 및 방법
JP2019169000A (ja) * 2018-03-23 2019-10-03 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JPWO2022044961A1 (ja) * 2020-08-28 2022-03-03

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8528848D0 (en) 1985-11-22 1985-12-24 Davy Mckee Poole Rolling mills
JP3539788B2 (ja) * 1995-04-21 2004-07-07 パナソニック モバイルコミュニケーションズ株式会社 画像間対応付け方法
JP2005055931A (ja) * 2001-07-05 2005-03-03 Advantest Corp 画像処理装置、及び画像処理方法
JP4955926B2 (ja) * 2005-02-09 2012-06-20 株式会社ビットストロング ラインスキャン型の画像処理装置
JP4382797B2 (ja) 2006-11-09 2009-12-16 株式会社山武 対応点探索方法および3次元位置計測方法
CN102369550B (zh) * 2009-03-31 2014-01-01 松下电器产业株式会社 立体图像处理器和立体图像处理方法
EP2657901B1 (en) * 2010-12-20 2018-07-04 Panasonic Intellectual Property Management Co., Ltd. Stereo image processing apparatus and stereo image processing method

Also Published As

Publication number Publication date
JPWO2014049919A1 (ja) 2016-08-22
US20150249814A1 (en) 2015-09-03
US10009594B2 (en) 2018-06-26
CN104685535B (zh) 2017-11-28
CN104685535A (zh) 2015-06-03
EP2902960A4 (en) 2015-09-23
EP2902960A1 (en) 2015-08-05
WO2014049919A1 (ja) 2014-04-03

Similar Documents

Publication Publication Date Title
JP6258209B2 (ja) ステレオ画像処理装置およびステレオ画像処理方法
JP5567179B2 (ja) ステレオ画像処理装置およびステレオ画像処理方法
JP5874039B2 (ja) ステレオ画像処理装置及びステレオ画像処理方法
JP5942203B2 (ja) ステレオ画像処理装置およびステレオ画像処理方法
JP5810314B2 (ja) ステレオ画像処理装置およびステレオ画像処理方法
JP5891415B2 (ja) ステレオ画像処理装置
US10872432B2 (en) Disparity estimation device, disparity estimation method, and program
JP6494402B2 (ja) 画像処理装置、撮像装置、画像処理方法、プログラム
Chen et al. Recovering depth from a single image using spectral energy of the defocused step edge gradient
JP7394709B2 (ja) ステレオ画像処理装置及び距離測定方法
CN117593349A (zh) 图像变形监测方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170602

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171206

R151 Written notification of patent or utility model registration

Ref document number: 6258209

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees