JPH02268215A - Method and apparatus for detecting distance - Google Patents

Method and apparatus for detecting distance

Info

Publication number
JPH02268215A
JPH02268215A JP8995089A JP8995089A JPH02268215A JP H02268215 A JPH02268215 A JP H02268215A JP 8995089 A JP8995089 A JP 8995089A JP 8995089 A JP8995089 A JP 8995089A JP H02268215 A JPH02268215 A JP H02268215A
Authority
JP
Japan
Prior art keywords
image
parallax
blocks
value
block
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.)
Pending
Application number
JP8995089A
Other languages
Japanese (ja)
Inventor
Shunichi Masuda
増田 俊一
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.)
GRAPHICS COMMUN TECHNOL KK
Original Assignee
GRAPHICS COMMUN TECHNOL KK
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 GRAPHICS COMMUN TECHNOL KK filed Critical GRAPHICS COMMUN TECHNOL KK
Priority to JP8995089A priority Critical patent/JPH02268215A/en
Publication of JPH02268215A publication Critical patent/JPH02268215A/en
Pending legal-status Critical Current

Links

Landscapes

  • Measurement Of Optical Distance (AREA)

Abstract

PURPOSE:To detect the accurate distance in the depth direction and to decrease the amounts of required operations by performing the operation of parallax by a correlation method only when the changing value of luminance is higher than a preset threshold value with respect to a blocks obtained by dividing a first image. CONSTITUTION:Operation for obtaining a parallax with a second image for every block obtained by dividing a first image is performed. The number of data of the changing values of the luminances of the divided blocks which are higher than preset threshold value is counted. The counted value is made to be an evaluating value for determining whether the parallax is to be operated. When the evaluated value is less than the threshold value, the operation is not performed. A code which indicates the unstable parallax is written into a parallax distribution memory 16. When the evaluating value is higher than the threshold value, the data in a parallax operating part 15 are read out. The correlation value between the data and a second image having the same size is operated. The distance to an object in the depth direction is detected by a triangulation method based on the obtained parallax. Thus, the accurate distance is detected, and the amounts of the required operations can be decreased.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は画像計測による距離検出方法と装置【こ関する
。より詳しくは、異なった位置より搬影した2枚1組の
ステレオ画像対を用いて、対象物についての奥行き方向
の距離を、高精度でしかもより少ない演算間で求めるこ
とができる距離検出方法と装置を提供せんとするもので
ある。
DETAILED DESCRIPTION OF THE INVENTION [Industrial Application Field] The present invention relates to a distance detection method and apparatus using image measurement. More specifically, the present invention provides a distance detection method that uses a pair of stereo images projected from different positions to determine the distance in the depth direction of an object with high precision and with fewer calculations. The aim is to provide the equipment.

[従来の技術] 特定の距離にある対象物のみを抽出したり、あるいは3
次元空間内の物体の位置関係を求めることを目的として
、対象物についての奥行き方向の距離を非接触で検出す
る各種の方法が従来より行われている。
[Prior art] Extracting only objects at a specific distance, or
BACKGROUND ART Various methods have been conventionally used to detect the distance in the depth direction of an object in a non-contact manner for the purpose of determining the positional relationship of objects in a dimensional space.

そのような検出方法として、異なった位置より搬影した
2枚1組の画像対を用いて所用の演算を行う相関法かあ
る。
As such a detection method, there is a correlation method in which a required calculation is performed using a pair of two images projected from different positions.

第3図は、この相関法による距離検出の原理を示すもの
である。第3図において、A1は第1のカメラのレンズ
の中心、A2は第2のカメラのレンズの中心でおり、一
般的には、2台のカメラは同一水平面上で双方の光軸が
平行となるように配置される。そこで、対象物について
2枚1組の画像を踊影すると、対象物上の点Pは、Xl
、Ylを座標軸とする第1画像内では、点Pと第1のカ
メラのレンズの中心A とを結ぶ線上の点P1(Xl、
Yl)に、X2.Y2を座標軸とする第2画像内では点
Pと第2のカメラのレンズの中心A2とを結ぶ線上の点
P2  (X2 、 Y2 )に現われる。2台のカメ
ラは同一水平面上に配置されているので、得られる第1
画像と第2画像との間には、上下方向の位置ずれはなく
、奥行き方向の距離に応じて水平方向の位置すれ(視差
e。
FIG. 3 shows the principle of distance detection using this correlation method. In Figure 3, A1 is the center of the lens of the first camera, and A2 is the center of the lens of the second camera. Generally, the two cameras are on the same horizontal plane and their optical axes are parallel. are arranged so that Therefore, when a set of two images of the object are shot, the point P on the object is Xl
, Yl as the coordinate axis, a point P1 (Xl,
Yl), X2. In the second image with Y2 as the coordinate axis, it appears at point P2 (X2, Y2) on the line connecting point P and the center A2 of the lens of the second camera. Since the two cameras are placed on the same horizontal plane, the first
There is no vertical displacement between the image and the second image, and there is a horizontal displacement (parallax e) depending on the distance in the depth direction.

e−xl  x2>が生ずる。e-xl x2> is generated.

視差eと対象物までの奥行き方向距離Zとの間には、 Z= (fxh>/ (gxe>      (1)な
る関係かある。ここで、fはレンズの焦点距離、hは第
1のカメラと第2のカメラの間の距離、qは変換係数で
ある。したがって、対象画像内のさまざまな点Pについ
て、それぞれの視差eから奥行き方向の距離を算定する
ことにより、画像の距離分布図を得ることができる。
There is a relationship between the parallax e and the depth direction Z to the object as follows: Z = (fxh>/ (gxe> (1). Here, f is the focal length of the lens, and h is the focal length of the first camera. and the second camera, q is a conversion coefficient. Therefore, by calculating the distance in the depth direction from each parallax e for various points P in the target image, a distance distribution map of the image can be obtained. Obtainable.

また、画像を分割した各ブロック毎に視差を求めるなら
ば、ブロック単位の距離分布を得ることができる。すな
わち、第1画像において分割した所定の大きさのブロッ
クと同一サイズの第2画酸中のブロックを、水平方向に
順次シフトして、それぞれのシフトした位置にあける第
1画像と第2画像の両ブロック間の相関値を演算し、得
られた各相関値の中で最も高い相関値を示すブロックか
存在する位置を求める。これは第1画像のブロックと第
2画像中のブロックとの一致対応関係を児出すことに相
当する。そこで、求められた第2画像のブロック位置と
第1画像のブロック位置との間の水平方向における差を
視差とみなし、この視差と既知の躍影位置とから3角測
量の方法を用いて対象物までの奥行き方向の距離を逆算
して求める。
Furthermore, if the parallax is determined for each block into which the image is divided, a distance distribution for each block can be obtained. That is, blocks of the same size as the blocks of a predetermined size divided in the first image are sequentially shifted in the horizontal direction, and the blocks of the first image and the second image are opened at the respective shifted positions. The correlation value between both blocks is calculated, and the position of the block having the highest correlation value among the obtained correlation values is determined. This corresponds to finding a matching correspondence relationship between blocks in the first image and blocks in the second image. Therefore, the difference in the horizontal direction between the obtained block position of the second image and the block position of the first image is regarded as the parallax, and from this parallax and the known jump position, the target is calculated using the method of triangulation. Find the distance to the object by calculating backwards.

以上説明した相関法を、複数の異なった解像度レベルを
有する階層画像を用いる距離検出方法に適用し、粗密捜
索を効率的に行うことも可能で轟っだ。すなわち、最も
粗い解像度レベルの画像対から相関法により視差を求め
、得られた視差をつぎに粗い解像度レベルによる視差演
算における初期値として画像間の視差を求めることを順
次繰返し、最終的に最も細かい解像度レベルの画像間の
視差を求め、この視差より3角測量の方法により対象物
までの奥行き方向距離を検出する。
The correlation method described above has been applied to a distance detection method that uses hierarchical images with a plurality of different resolution levels, making it possible to perform coarse and fine searches efficiently. In other words, the disparity is determined by the correlation method from a pair of images at the coarsest resolution level, and the obtained disparity is then used as the initial value for the disparity calculation using the next coarsest resolution level.The process of determining the disparity between images is repeated sequentially, and finally, the disparity between images is determined from the pair of images at the coarsest resolution level. The parallax between the images at the resolution level is determined, and the distance in the depth direction to the object is detected from this parallax using a triangulation method.

[発明が解決しようとする課題] 相関法を用いる従来の距離検出方法によると、画像の輝
度値が一定あるいは徐々に変化する部分では、第1画像
と第2画像の両ブロック間の相関値の変化が極めて微少
であることから、相関性が高くなるへきではないブロッ
クを、一致対応関係があるものとして誤って認め易い。
[Problems to be Solved by the Invention] According to the conventional distance detection method using the correlation method, in a part where the brightness value of the image is constant or gradually changes, the correlation value between the blocks of the first image and the second image is Since the change is extremely small, it is easy to mistakenly recognize blocks that are not in a position where the correlation is high as having a matching correspondence relationship.

そのために、画像全体の距離分布が得られたとしても個
々の距離値についてみると、相関法が有効に機能して正
確な距離値が得られる部分と、相関法が有効に機能しな
いために誤った距離値が得られる部分とか混在しており
、誤った距離値が含まれる情報を用いて物体の抽出や位
置関係の認識処理を行った場合、不要な物体を過度に抽
出したり、誤った認識結果を生じせしめるなど、距離検
出結果を使用する処理過程に対する外乱になるという解
決すべき課題がおった。
Therefore, even if the distance distribution of the entire image is obtained, when looking at individual distance values, there are parts where the correlation method works effectively and accurate distance values are obtained, and parts where the correlation method does not work effectively and gives incorrect distance values. If you perform object extraction or positional relationship recognition processing using information that includes incorrect distance values, you may extract too many unnecessary objects or receive incorrect distance values. There was a problem to be solved in that the recognition results caused disturbances to the processing process using the distance detection results.

このような課題は、複数の異なった解像度レベルを有す
る階層画像を用いる距離検出方法に相関法を適用する場
合においても、同様に未解決のまま残されている。
Such problems remain unresolved even when the correlation method is applied to a distance detection method using hierarchical images having a plurality of different resolution levels.

[課題を解決するための手段] このような解決課題に照らし本発明はなされたものであ
り、第3図に示した3角測最の方法にもとづいて、第1
画像を分割した各ブロックについて、その輝度変化評価
値があらかじめ設定された閾値以上であれば、相関法に
よる視差演算を行い、閾値未満でおれば相関法を適用し
ないで、そのブロックの周辺の隣接ブロックの視差から
補間し、その得られた視差から3角測量の方法により対
象物までの奥行き方向の距離検出を行うようにした。
[Means for Solving the Problems] The present invention has been made in light of such problems to be solved, and is based on the best method of triangulation shown in FIG.
For each block into which the image is divided, if the luminance change evaluation value is greater than or equal to a preset threshold, parallax calculation is performed using the correlation method, and if it is less than the threshold, the correlation method is not applied and the neighboring neighboring blocks around the block are Interpolation is performed from the block parallax, and the distance to the object in the depth direction is detected using the triangulation method from the obtained parallax.

また、このような方法を複数の異なった解像度レベルを
有する階層画像のそれぞれに順次適用して視差を求め、
最終的に得られた視差を用いて3角測量の方法により対
象物までの奥行き方向の距離を検出するようにした。
In addition, such a method is sequentially applied to each of hierarchical images having a plurality of different resolution levels to determine the parallax,
Using the finally obtained parallax, the distance to the object in the depth direction is detected by a triangulation method.

[作用コ このような手段を講じたことにより、輝度変化が異なる
ブロックが混在する画像を用いて相関法による距離検出
を行う場合であっても、正確な奥行き方向の距離値を得
ることができ、しかも、全体としての所用演算量の減少
を実現することも可能となった。
[Effects] By taking such measures, accurate distance values in the depth direction can be obtained even when performing distance detection using the correlation method using an image that includes blocks with different brightness changes. Moreover, it has become possible to reduce the overall amount of computation required.

[実施例] 本発明は第3図により説明した3角測ωの方法にもとづ
くものであり、その一実施例の回路構成を第1A図に示
し説明する。
[Embodiment] The present invention is based on the method of triangulation ω explained with reference to FIG. 3, and the circuit configuration of one embodiment thereof is shown in FIG. 1A and will be explained.

第1A図において、第1カメラ31Aおよび第2カメラ
31Bにより撮影された第1画像および第2画像を示す
各信号4’lA、41Bは、各アナログ・ディジタル(
A/D>変換部32A、32Bにてそれぞれディジタル
変換され、得られた輝度データを示す各信号42A、4
2Bは視差演算補間部11の第1画像メモリ12Aおよ
び第2画像メモリ12Bにそれぞれ書込まれる。第1画
像メモリ12Aおよび第2画像メモリ12Bは、ディジ
タル変換された画像の縦方向の画素数Nと横方向の画素
Mにそれぞれ対応したN行M列の2次元配列となってい
る。
In FIG. 1A, each signal 4'lA, 41B indicating the first image and the second image taken by the first camera 31A and the second camera 31B is connected to each analog digital (
A/D> Each signal 42A, 4 is digitally converted by the converter 32A, 32B, and represents the obtained luminance data.
2B are respectively written into the first image memory 12A and the second image memory 12B of the parallax calculation interpolation section 11. The first image memory 12A and the second image memory 12B are two-dimensional arrays of N rows and M columns corresponding to the number of pixels N in the vertical direction and M in the horizontal direction of the digitally converted image, respectively.

このような構成の第1画像メモリ12Aより読出された
第1画像の輝度データを示す信号52Cを受けた輝度変
化検出部13では、横方向のM画素、縦方向のへ画素の
MXN画素のそれぞれについて輝度変化値を演算し検出
する。本実施例では輝度変化値として空間微分値演算結
果を用いており、輝度変化値Vは、 ただし、 Sx= u (x+1.y+1) +2 u (X+L
V)十u (X+1.y−1) −u (X−Ly+1) −2u (x−1,y)−u
 (x−1,y−1) Sy= u (x+Ly−1) +2 u (x、y−
1)+ u (x−1,y−1) u (x+1.y+1) −2日(x、y+1)u (
x−1,y+1) である。ここで、Uは画素の輝度データを表わしている
The brightness change detection unit 13 that receives the signal 52C indicating the brightness data of the first image read out from the first image memory 12A having such a configuration detects each of M pixels in the horizontal direction and MXN pixels in the vertical direction. The brightness change value is calculated and detected. In this embodiment, the spatial differential value calculation result is used as the brightness change value, and the brightness change value V is as follows: Sx= u (x+1.y+1) +2 u (X+L
V) 10u (X+1.y-1) -u (X-Ly+1) -2u (x-1,y)-u
(x-1, y-1) Sy= u (x+Ly-1) +2 u (x, y-
1) + u (x-1, y-1) u (x+1.y+1) -2 days (x, y+1) u (
x-1, y+1). Here, U represents the luminance data of the pixel.

第1B図は、この輝度変化値を得るための輝度変化検出
部13(第1A図)における制御動作の流れを示すフロ
ーチャートである。
FIG. 1B is a flowchart showing the flow of control operations in the brightness change detection section 13 (FIG. 1A) for obtaining this brightness change value.

第1B図において、第1画像メモリ12A(第1A図)
より第1画像の輝度データを示す信号52Cを読出しく
3101)、列番号Xが2、行番号yが2の位置の画素
を、演算を開始する画素として設定しく5102>、つ
ぎに示す演算を行う(S103)。
In FIG. 1B, the first image memory 12A (FIG. 1A)
Read out the signal 52C indicating the luminance data of the first image (3101), set the pixel at the position where the column number Execute (S103).

Sx= u (X+LV+1) +2 u (X+1.
V)+ IJ (X+1.y−1) u (x−1,y+1) −2u (x−1,V)−u
 (x−1,y−1) Sy= u (x+Ly−1) +2 u (x、y−
1)+ u (x−1,V−1) −u (x+1.y+1)  −2LJ (x、y+1
)u (×−1,y+1) ステップ3103の作業により得られた演算結果を用い
て演算式(2)に従って輝度変化値Vを求めるための演
算を行う(3104)。
Sx= u (X+LV+1) +2 u (X+1.
V) + IJ (X+1.y-1) u (x-1, y+1) -2u (x-1, V)-u
(x-1, y-1) Sy= u (x+Ly-1) +2 u (x, y-
1) + u (x-1, V-1) -u (x+1.y+1) -2LJ (x, y+1
)u (x-1, y+1) Using the calculation results obtained in step 3103, calculations are performed to determine the luminance change value V according to calculation formula (2) (3104).

1つの画素についての輝度変化値■が求められると、画
素の位置の列番SXが横方向の画素数Mから1減じた値
より小さい値であるか否かが問われ(3105)、小さ
い値であれば(S105Y)、Xの値を1進めて(31
06)、ステップ$103からの作業を繰返す。列番号
XがMから1減じた値より小ざい値でなければ(310
5N)、画素の位置の行番号yが縦方向の画素数Nから
1減じた値より小ざい値であるか否かが問われ<510
7) 、小さい値であれば(S107Y)、行番号yを
1進めて(5108)、ステップ3103からの作業を
繰返す。行番号yがNから1減じた値より小さい値でな
ければ(3107N)、所要の画素についての輝度変化
値Vが求められたので作業を終了する。
When the brightness change value ■ for one pixel is determined, it is asked whether the column number SX at the pixel position is smaller than the value obtained by subtracting 1 from the number of pixels M in the horizontal direction (3105). If so (S105Y), advance the value of X by 1 (31
06), repeat the work from step $103. Unless column number X is smaller than M minus 1 (310
5N), it is asked whether the row number y of the pixel position is smaller than the value obtained by subtracting 1 from the number of pixels in the vertical direction (N). <510
7) If the value is small (S107Y), the line number y is incremented by 1 (5108), and the operations from step 3103 are repeated. If the row number y is not smaller than the value obtained by subtracting 1 from N (3107N), the brightness change value V for the required pixel has been determined, and the process ends.

以上のようにして、第1A図の輝度変化検出部13にお
いて求められた第1画像の各画素についての輝度変化値
を示す信号53は、画素数に対応したN行M列の2次元
配列を有する輝度変化値メモリ14に書込まれる。
As described above, the signal 53 indicating the brightness change value for each pixel of the first image obtained by the brightness change detection unit 13 in FIG. 1A is arranged in a two-dimensional array of N rows and M columns corresponding to the number of pixels. The brightness change value memory 14 has a brightness change value.

第1A図において、輝度変化値メモリ14からの輝度変
化値を示す信@54と、第1画像メモリ12Aおよび第
2画像メモリ12Bからの、それぞれの画像データを示
す各信号52A、52Bを受けた視差演算部15は、第
1画像の相互に重なり合わないように分割された各ブロ
ックについて、左上ブロックから右下ブロックに至るま
で順次スキャンして、各ブロックにおける第1画像と第
2画像との間の視差を演算し検出する。ここで、1ブロ
ック当りの画素数を横方向p画素、縦方向0雨素とすれ
ば、画像の横方向のブロック数M、はM/p個、縦方向
のブロック数N1はN/0個となる。
In FIG. 1A, a signal @54 indicating a luminance change value from the luminance change value memory 14 and signals 52A and 52B indicating respective image data from the first image memory 12A and the second image memory 12B are received. The parallax calculation unit 15 sequentially scans each block of the first image divided so as not to overlap each other from the upper left block to the lower right block, and calculates the difference between the first image and the second image in each block. The parallax between the images is calculated and detected. Here, if the number of pixels per block is p pixels in the horizontal direction and 0 pixels in the vertical direction, the number of blocks in the horizontal direction of the image M is M/p, and the number of blocks in the vertical direction N1 is N/0. becomes.

この視差演算部15の動作を説明すると、輝度変化値メ
モリ14からの輝度変化値を示す信号54は、その内部
に設けられたN行M列の容量の一時記憶領域T1に、第
1画像メモリ12Aからの第1画像を示す信号52Aは
N行M列の容量の一時記憶領域T1に、第2画像メモリ
12Bからの第2画像データを示す信号52B4.tN
N行列列容量の一時記憶領域T2に、それぞれ書込まれ
る。
To explain the operation of the parallax calculation unit 15, a signal 54 indicating a brightness change value from the brightness change value memory 14 is stored in a temporary storage area T1 with a capacity of N rows and M columns provided inside the first image memory. A signal 52A representing the first image from the second image memory 12A is stored in a temporary storage area T1 having a capacity of N rows and M columns, and a signal 52B4 . tN
Each is written to a temporary storage area T2 having N matrix and column capacity.

そこで、第1画像の分割された各ブロックについて、左
上ブロックより開始して最終の右下ブロックまでのブロ
ック毎に第1画像と第2画像との間の視差を得るための
演算を行う。すなわち、時記憶領域T1内の1つのブロ
ックの輝度変化値を示すデータ(+)X0個〉のうち、
その変化値があらかじめ設定された変化値用閾値以上で
あるデータの個数をカウントし、得られたカウント(直
をそのブロックについての視差を演算するか否かを判断
するための評価値とする。この評価値があらかじめ設定
された評fiffiflIf用閾値未満でおれば、視差
は不定としてこれを求めるための演算は行わず、視差不
定を表わす特殊コードをを視差分布メモリ16内のその
ブロック位置に書込む。特殊コードとしては距離無限大
に相当する視差“011を用いる。
Therefore, for each divided block of the first image, calculations are performed to obtain the parallax between the first image and the second image for each block starting from the upper left block to the final lower right block. That is, among the data (+)
The number of pieces of data whose change value is equal to or greater than a preset change value threshold is counted, and the obtained count (direction) is used as an evaluation value for determining whether or not to calculate the parallax for the block. If this evaluation value is less than the preset evaluation fiffiflIf threshold, the disparity is assumed to be undefined and no calculation is performed to obtain it, and a special code representing the undefined disparity is written to the block position in the disparity distribution memory 16. As a special code, parallax "011", which corresponds to an infinite distance, is used.

そのブロックについての評価値が評価値用閾値以上であ
れば、視差演算部15内の一時記憶領域T1よりそのブ
ロックのデータB1を読出して、そのブロックと同一サ
イズの第2画像のブロックを順次水平方向にシフトせし
めて、両ブロック間の各相関値を演算し、それが最小と
なる第2画像のブロックの位置を求め、求められた位置
ずれ串をそのブロックについての視差とする。
If the evaluation value for that block is greater than or equal to the evaluation value threshold, data B1 for that block is read out from the temporary storage area T1 in the parallax calculation unit 15, and blocks of the second image having the same size as that block are sequentially horizontally read out. The position of the block in the second image where the correlation value is the minimum is determined by calculating the correlation value between both blocks, and the determined positional shift skew is used as the parallax for that block.

第1C図は、第2画像のブロックを水平方向にシフトせ
しめて視差を探索する範囲の設定の様子を示すものであ
る。第1C図において、探索範囲は視差初期値d。を中
心として左右S画素に設定する。視差初期値d。を示す
信号40(第1A図〉は、図示されてはいない入力装置
を介して視差演算部15に書込まれる。探索開始時の視
差d、はdo−s画素とし、d が負であれば、d3は
Oとする。探索終了時の視差dtはd。+S5画素する
FIG. 1C shows how the range for searching for parallax is set by shifting the blocks of the second image in the horizontal direction. In FIG. 1C, the search range is the initial parallax value d. Set S pixels on the left and right of the center. Parallax initial value d. A signal 40 (FIG. 1A) indicative of , d3 are O. The parallax dt at the end of the search is d.+S5 pixels.

そこで、最初に視差仮定値d をd3画素とし、視差d
の初期値をd 、誤差最小値Eminの初期値を+■に
設定する。これらの値が定まると、第1画像のブロック
のデータB1か示す位置より視差仮定値d であるda
画素だけ水平方向にシフトした位置の第2画像のブロッ
クのデータB2を、視差演算部15に含まれた一時記憶
領10 T 2より続出して、両ブロック間の相関値を
求める。相関値は、つぎに示す演算式に従って両ブロッ
ク間の誤差評価値Errを演算して得る。
Therefore, first, the assumed parallax value d is set to d3 pixels, and the parallax d
The initial value of is set to d, and the initial value of the minimum error value Emin is set to +■. Once these values are determined, the assumed parallax value d is calculated from the position indicated by the block data B1 of the first image.
The data B2 of the block of the second image at the position horizontally shifted by pixels is successively outputted from the temporary storage area 10T2 included in the parallax calculation unit 15, and the correlation value between both blocks is determined. The correlation value is obtained by calculating the error evaluation value Err between both blocks according to the following calculation formula.

演算式(3〉の他に、下記の演算式(4)を用いて相関
値を求めてもよい。
In addition to the calculation formula (3>), the correlation value may be calculated using the following calculation formula (4).

このようにして求められた誤差評価値Errが誤差最小
値Emin未満であれば、視差dを視差仮定値da、誤
差最小値EIIlinを誤差評価値Errとする。誤差
評価111Errが求まれば、視差仮定値daを1画素
進め、同様にして誤差評価値Errを求める。
If the error evaluation value Err obtained in this manner is less than the minimum error value Emin, the parallax d is set as the assumed parallax value da, and the minimum error value EIIlin is set as the error evaluation value Err. Once the error evaluation 111Err is determined, the assumed parallax value da is advanced by one pixel, and the error evaluation value Err is determined in the same manner.

以上の演算を、視差仮定値daがあらかじめ設定された
最大値dtに達するが、あるいは第2画像領域を越えな
い範囲で繰返し、この繰返し演算が終了した時点におけ
る視差dをそのブロックにおける視差として、これを示
す信号55(第1A図)を視差分布メモリ16に送出す
る。
The above calculation is repeated until the assumed parallax value da reaches a preset maximum value dt or does not exceed the second image area, and the parallax d at the end of this repeated calculation is taken as the parallax in that block, A signal 55 (FIG. 1A) indicating this is sent to the parallax distribution memory 16.

第1D図および第1E図は、以上の視差演算部15(第
1A図)における制御動作の流れを示すフローチャート
である。第1D図において、輝度変化値メモリ14(第
1A図)より輝度変化値Vを示す信号54を、第1画像
メモリ12Aより第1両像データを示す信号52Aを、
第2画像メモリ12Bより第2画像データを示す信@5
2Bを、それぞれ読出しく5111)、第1画像のブロ
ックの位置の列番号iおよび行番号jをそれぞれ1にし
て(S112>、そのブロックl+、 j>の輝度変化
値を示すデータのうら、その変化値が必らかじめ設定さ
れた変化値用閾値以上であるデータの個数を求め、この
カウント値をそのブロック(i、j>についての評価値
とする(S113)。
FIG. 1D and FIG. 1E are flowcharts showing the flow of the control operation in the above-mentioned parallax calculating section 15 (FIG. 1A). In FIG. 1D, a signal 54 indicating the luminance change value V is sent from the luminance change value memory 14 (FIG. 1A), a signal 52A indicating the first double image data is sent from the first image memory 12A,
A message indicating the second image data from the second image memory 12B @5
2B respectively (5111), and set the column number i and row number j of the block position of the first image to 1 (S112>, the back of the data indicating the luminance change value of the block l+, j>, The number of pieces of data whose change value is equal to or greater than a preset change value threshold is determined, and this count value is used as the evaluation value for the block (i, j>) (S113).

得られた変化値である評価値は評価値用閾値以上の値で
あるか否かが問われ(3114)、閾値未満の値であれ
ば(3114N) 、視差d (i、、J)は不定とし
く5115)、これを求めるための演算は行わず、ステ
ップ5117に移行する。変化値である評価値が閾値以
上の値であれば(S114Y)、第1画像のブロック(
I、J)との間の相関値が最小となる第2画像のブロッ
クの位置を求め、その位置ずれ量を視差(i、j)とす
る(S116)。
It is asked whether the evaluation value, which is the obtained change value, is greater than or equal to the evaluation value threshold (3114), and if the value is less than the threshold (3114N), the disparity d (i,, J) is indefinite. 5115), the process moves to step 5117 without performing any calculation to obtain this. If the evaluation value, which is the change value, is greater than or equal to the threshold (S114Y), the block of the first image (
The position of the block in the second image with the minimum correlation value between the blocks (I, J) is determined, and the amount of positional shift is set as the parallax (i, j) (S116).

得られたブロックの視差d (i、j>、またはそれか
不定であることを表わす特殊コードを示す信号55(第
1A図)を視差分布メモリ16に書込む(3117)。
A signal 55 (FIG. 1A) indicating a special code indicating that the obtained block disparity d (i, j>, or that it is indeterminate) is written into the disparity distribution memory 16 (3117).

そこで、第1両像のブロックの位置の列番g+か横方向
のブロック数M、より小さい値であるか否かが問われ(
3118)、小さい値でおれば(S118Y)、列番号
iを1進めて(S119)、ステップ5113からの作
業を繰返す。小ざい値でなければ(3118N)、行番
号jが縦方向のブロック数Nqより小さい値であるか否
かが問われ(S120>、小さい値でおれば(Sl 2
0Y) 、行番号jを1進めて(S121)、ステップ
5113からの作業を繰返す。
Therefore, it is asked whether the column number g+ of the block position of the first two images or the number M of blocks in the horizontal direction is a smaller value (
3118), if the value is small (S118Y), the column number i is incremented by 1 (S119), and the operations from step 5113 are repeated. If it is not a small value (3118N), it is asked whether the row number j is a value smaller than the number of vertical blocks Nq (S120>, and if it is a small value (Sl 2
0Y), the line number j is incremented by 1 (S121), and the operations from step 5113 are repeated.

小ざい値でなければ(Sl 2ON> 、全ブロックに
ついての視差演算が行われたので作業を終了する。
If the value is not small (Sl 2ON>), the disparity calculation has been performed for all blocks, and the work is finished.

第1E図はステップ3116(第1D図)の作業の流れ
の詳細を示すもので必り、第1画像のブロックのデータ
B1を視差演算部15の一時記憶領域T1より読出すと
(S131)、第2画像のブロックの水平方向の探索範
囲d8.dtを設定しく5132)、視差仮定値d を
d88画素、視差dの初期値をd に、誤差最小値Em
inの初期値を+■に、それぞれ設定する(S133)
FIG. 1E shows the details of the work flow in step 3116 (FIG. 1D). When the data B1 of the block of the first image is read from the temporary storage area T1 of the parallax calculation unit 15 (S131), Horizontal search range d8 for blocks in the second image. 5132), set the assumed parallax value d to d88 pixels, set the initial value of the parallax d to d, and set the minimum error value Em.
Set the initial value of in to +■ (S133)
.

これらの値が定まると、第1画像のブロックの位置より
da画素だけ水平方向にシフトした位置の第2画像のブ
ロックのデータB2を、視差演算部15の一時記憶領域
T2より続出しく5134)、演算式(3)に従って、
データB1とデータB2との間の誤差評価値し、を演算
する(S135>。
Once these values are determined, the data B2 of the block of the second image at a position horizontally shifted by da pixels from the position of the block of the first image is successively outputted from the temporary storage area T2 of the parallax calculation unit 15 (5134). According to formula (3),
An error evaluation value between data B1 and data B2 is calculated (S135>).

得られた誤差評価値Errは誤差最小値E minより
小さい値であるか否かが問われ(3136)、小さい値
であれば(S136Y) 、視差dを視差仮定値d 、
誤差最小値E ・ を誤差評価値「rrとa     
          mInする(S137)。これら
の値が定まると、視差仮定値d が設定された最大値d
tより小さい値であるか否かが問われる(3138)。
It is asked whether the obtained error evaluation value Err is smaller than the minimum error value E min (3136), and if it is smaller (S136Y), the parallax d is set to the assumed parallax value d,
The minimum error value E ・ is the error evaluation value “rr and a
mIn (S137). Once these values are determined, the assumed parallax value d is set to the maximum value d
It is asked whether the value is smaller than t (3138).

ステップ5136において、誤差評価値Errか誤差最
小値Eminより小さい値でなければ(3136N>、
ステップ8138に移行する。視差仮定値daが最大値
d1より小さい値であれば(S138Y)、視差仮定値
daの位置の第2画像のブロックが存在するか否かが問
われ(3139)、存在すれば(S139Y) 、視差
仮定l11fdaを1画素進め(S140)、ステップ
5134からの作業を繰返す。第2画像のブロックが存
在しなければ(Sl 39N> 、その時点における視
差dをそのブロックの視差d(+、j)として(S14
1)作業を終了する。ステップ8138において、視差
仮定値d が最大値dtより小さい値でなければ(31
38N>、ステップ5141に移行して作業を終了する
In step 5136, if the error evaluation value Err is not smaller than the minimum error value Emin (3136N>,
The process moves to step 8138. If the assumed disparity value da is smaller than the maximum value d1 (S138Y), it is asked whether a block of the second image at the position of the assumed disparity value da exists (3139), and if it exists (S139Y), The parallax assumption l11fda is advanced by one pixel (S140), and the operations from step 5134 are repeated. If the block of the second image does not exist (Sl 39N>), the parallax d at that point is set as the parallax d(+, j) of that block (S14
1) Finish the work. In step 8138, if the assumed parallax value d is less than the maximum value dt (31
38N>, the process moves to step 5141 and ends the work.

第1A図において、視差演算部15による演算の結果、
視差を演算するか否かのデータとなる評価値が閾値未満
のために視差は不定であるとして、そのブロックについ
ての相関法の適用が無効と判断される場合がおり得る。
In FIG. 1A, as a result of calculation by the parallax calculation unit 15,
Since the evaluation value, which is data for determining whether or not to calculate the parallax, is less than the threshold value, the parallax is assumed to be indefinite, and the application of the correlation method to that block may be determined to be invalid.

そこで、視差補間演算部17は、視差不定と判断された
ブロックの視差を、その周辺のブロックの視差から内挿
補間することにより演算し求める。
Therefore, the parallax interpolation calculation unit 17 calculates and obtains the parallax of the block whose parallax is determined to be undefined by interpolating the parallax of the blocks around it.

内挿補間の方法としては、線形補間法、最小自乗補間法
などおるが、本実施例では、周辺ブロックの平均値で補
間する方法を用いている。具体的に説明すると、視差分
布メモリ16より全ブロックの視差を読出し、画像の周
縁部領域のブロックをのぞくすべてのブロックについて
つぎに述べる演算を行う。
Methods of interpolation include linear interpolation, least squares interpolation, etc., but in this embodiment, a method of interpolating using the average value of surrounding blocks is used. Specifically, the parallaxes of all blocks are read out from the parallax distribution memory 16, and the following calculations are performed for all blocks except those in the peripheral area of the image.

すなわち、そのブロックの視差を読出し、それが視差不
定を示す特殊コードである“′O″の場合は、そのブロ
ックの上下左右4個の隣接ブロックの視差を読出す。特
殊コード以外である場合は、所要の視差はすでに1qら
れているので必るから、つぎのブロックの処理に移行す
る。視差が110 T1であるとして視差分布メモリ1
6より読出された隣接ブロックの視差4個のうち、視差
が“′O″以外であるブロック数があらかじめ設定され
た値以上である場合は、その4個の内、視差1(011
以外のブロックの視差平均値を求め、これをそのブロツ
クの視差として、視差分布メモリ16内のそのブロック
位置のデータを新たに得られた視差に修正し、つぎのブ
ロックの処理に移行する。視差が11011以外である
ブロック数が設定値未満の場合は、周辺ブロックからの
補間は行わず、つぎのブロックの処理に移行する。
That is, the disparity of the block is read out, and if it is "'O" which is a special code indicating undefined disparity, the disparity of the four adjacent blocks above, below, left and right of the block is read out. If it is a code other than the special code, the required parallax is already 1q and is necessary, so the process moves on to the next block. Assuming that the disparity is 110 T1, disparity distribution memory 1
Among the four disparities of adjacent blocks read from 6, if the number of blocks with disparities other than "'O" is greater than or equal to a preset value, the disparity 1 (011
The average disparity value of the blocks other than the block is determined, and using this as the disparity of that block, the data at the block position in the disparity distribution memory 16 is corrected to the newly obtained disparity, and the process moves on to the next block. If the number of blocks with a parallax other than 11011 is less than the set value, interpolation from surrounding blocks is not performed and the process moves to the next block.

第1F図ないし第1H図は、以上の視差補間演算部17
(第1A図)における制御動作の流れを小すフローチャ
ートである。
1F to 1H show the above parallax interpolation calculation unit 17.
1A is a flowchart illustrating the flow of control operations in FIG. 1A.

第1F図において、視差分布メモリ16(第11A図)
よりその視差を読出すブロックの位置の列番号iおよび
行番号jをそれぞれ2にして(S151)、ブロック(
i、j>の視差d(i、、j>を読出す(3152)。
In FIG. 1F, the parallax distribution memory 16 (FIG. 11A)
The column number i and row number j of the block position from which the parallax is to be read are each set to 2 (S151), and the block (
The parallax d(i,,j> of i, j> is read out (3152).

続出された視差d (i。Parallax d (i.

j)は視差不定を示す特殊コードであるか否かが問われ
(3153)、特殊コードでおれば(3153Y) 、
カウント数および積算値はそれぞれOにして(S154
)、ブロック(i−1,j>の視差d(i−1,j>を
視差分布メモリ16より読出す(3155)。読出され
た視差d(i−1゜j)は視差不定を示す特殊コードで
あるか否かが問われ(3156)、特殊コードでなけれ
ば(8156N)、カウント数を1進め、積算値として
そのブロックに−1,j>の視差d(i−1゜j)を加
算する(3157)。つぎに、ブロック(i+1.j>
の視差d (i+1.j>を読出す(S158)。ステ
ップ5156において、視差d(i−1,j>が特殊コ
ードの場合は(S156Y)、ステップ8158に移行
する。読出された視差d (i+1.J)は視差不定を
示す特殊コードであるか否かが問われ(3159)、特
殊コードでなければ<3159N) 、カウント数を1
進め、積算値としてそのブロック(i+1.j>の視差
d (i+1j>を加算する(3160、第1G図)。
j) is a special code indicating undefined parallax (3153), and if it is a special code (3153Y),
The count number and integrated value are each set to O (S154
), the disparity d(i-1,j> of block (i-1,j>) is read from the disparity distribution memory 16 (3155).The read disparity d(i-1゜j) is a special It is asked whether it is a code (3156), and if it is not a special code (8156N), the count is advanced by 1 and a parallax d (i-1゜j) of -1,j> is added to that block as an integrated value. Add (3157). Next, block (i+1.j>
The parallax d (i+1.j> is read out (S158). In step 5156, if the parallax d (i-1, j> is a special code (S156Y), the process moves to step 8158. The read parallax d ( i+1.J) is a special code indicating undefined parallax (3159), and if it is not a special code <3159N), the count number is set to 1.
Then, the parallax d (i+1j> of that block (i+1.j>) is added as an integrated value (3160, Fig. 1G).

ついで、ブロック(i、j−1)の視差d(j)を読出
す(3161)。ステップ5159(第1F図)におい
て、視差d (i+1.J)が特殊コードの場合は(S
l 59Y) 、ステップ8161に移行する。読出さ
れた視差d(i、Jl)は視差不定を示す特殊コードで
あるか否かが問われ(3162)、特殊コードでなけれ
ば(8162N> 、カウント数を1進め、積算値とし
て視差d(i、j−Hを加算する(S163)。
Next, the disparity d(j) of block (i, j-1) is read out (3161). In step 5159 (Fig. 1F), if the disparity d (i+1.J) is a special code, (S
l59Y), the process moves to step 8161. It is asked whether the read parallax d(i, Jl) is a special code indicating undefined parallax (3162), and if it is not a special code (8162N>), the count is advanced by 1 and the integrated value is the parallax d( i, j−H are added (S163).

ざらに、ブロック(i、j+1>の視差d (i。Roughly speaking, the disparity d (i.

j+1)を読出す(3164)。ステップ5162にお
いて、視差d(i、j−1>が特殊コードの場合は(S
l 62Y) 、ステップ8164に移行する。読出さ
れた視差d (i、j+1>は視差不定を示す特殊コー
ドであるか否かが問われ(S165)、特殊コードでな
ければ(3165N)、カウント数を1進め積算値とし
て視差d(+、」+1)を加算する(3166>。
j+1) (3164). In step 5162, if the disparity d(i, j-1> is a special code, then (S
l 62Y), the process moves to step 8164. It is asked whether the read parallax d (i, j+1> is a special code indicating undefined parallax (S165), and if it is not a special code (3165N), the count number is advanced by 1 and the integrated value is set as the parallax d (+ , ”+1) are added (3166>.

このようにして得られたカウント数は、設定された閾値
より大きい値であるか否かが問われる(3167、第1
H図)。ステップ3165(第1G図〉において、視差
d (i、j+1>が特殊コードの場合は(3165Y
) 、ステップ3167に移行する。カウント数が閾値
より大きい値であれば(S167’Y)、得られている
積算値をカウント数で除した平均値を補間後の視差dい
It is asked whether the count number obtained in this way is larger than the set threshold value (3167, first
Figure H). In step 3165 (Figure 1G), if the parallax d (i, j+1> is a special code, then (3165Y
), the process moves to step 3167. If the count number is larger than the threshold (S167'Y), the average value obtained by dividing the obtained integrated value by the count number is calculated as the parallax d after interpolation.

j〉として求め、これを視差分布メモリ16に書込む(
8168)。新たに修正された視差d(j)が1qられ
ると、ブロックの位置の列番号iが横方向のブロック数
Ml)から1減じた値より小さい値であるか否かが問わ
れる(3169)。ステップ3153(第1F図)にお
いて視差d(i。
j> and write it into the parallax distribution memory 16 (
8168). When the newly corrected parallax d(j) is 1q, it is asked whether the column number i of the block position is smaller than the value obtained by subtracting 1 from the number of blocks M1 in the horizontal direction (3169). In step 3153 (FIG. 1F), the disparity d(i.

j)が特殊コードでない場合(8153N) 、および
ステップ8167において得られたカウント数が設定さ
れた閾値より大きい値でない場合は(3167N>、そ
れぞれステップ5169に移行する。ステップ8169
において、そのブロック列番@iがMpから1減じた値
より小さい値であれば(S169Y) 、列番号iを1
進めて(S170)、ステップ3152(第1F図)か
らの作業を繰返す。小さい値でなければ(3169N)
、ブロックの位置の行番号が縦方向のブロック数Nqか
ら1減じた値より小さい値であるか否かが問われ(S1
71)、小さい値であれば(S171Y)、行番号jを
1進めて(S172)、ステツブ3202からの作業を
繰返す。小さい値でなければ(3171N>すべてのブ
ロックについての視差補間のための処理が行われたので
作業を終了する。
j) is not a special code (8153N), and if the count obtained in step 8167 is not larger than the set threshold (3167N>, the process moves to step 5169.Step 8169
, if the block column number @i is smaller than the value obtained by subtracting 1 from Mp (S169Y), the column number i is set to 1.
Proceed (S170) and repeat the operations from step 3152 (FIG. 1F). If it is not a small value (3169N)
, it is asked whether the row number of the block position is smaller than the value obtained by subtracting 1 from the number of blocks Nq in the vertical direction (S1
71), if the value is small (S171Y), the line number j is incremented by 1 (S172), and the operations from step 3202 are repeated. If the value is not small (3171N> processing for parallax interpolation has been performed for all blocks, the work is finished.

なお、第1画像の全ブロックが視差不定の特殊コードを
示さなければ、以上の視差補間のための演算は行われな
い。
Note that the above calculation for parallax interpolation is not performed unless all blocks of the first image show a special code with undefined parallax.

第1A図において、視差分布メモリ16からの各ブロッ
クについての視差を示す信号56を受けた距離演算部3
3は、相関法において用いられる演算式(1)に従って
各ブロックの距離を演算して求める。
In FIG. 1A, the distance calculation unit 3 receives a signal 56 indicating the parallax for each block from the parallax distribution memory 16.
3 is obtained by calculating the distance of each block according to the arithmetic expression (1) used in the correlation method.

その動作を説明すると、視差分布メモリ16より全ブロ
ックについての視差を示す信@56を読出し、視差が1
4011のブロックについては演算を行わず、無限大な
いしは距離分布メモリ34に許容される最大値を示す信
号43を出力する。視差がOI?以外のブロックについ
ては、既知のレンズの焦点距離、第1カメラと第2カメ
ラとの間の距離h、変換係数および得られた視差より、
演算式(1)に従ってそのブロックの距離Zを演算し、
その演算結果を示す信号43を距離分布メモリ34に書
込み、最終的に画像の全ブロックについての距離検出出
力44を得る。
To explain its operation, the signal @56 indicating the disparity for all blocks is read out from the disparity distribution memory 16, and the disparity is 1.
No calculation is performed on the block 4011, and a signal 43 indicating infinity or the maximum value allowed in the distance distribution memory 34 is output. Parallax is OI? For other blocks, from the known focal length of the lens, the distance h between the first camera and the second camera, the conversion coefficient, and the obtained parallax,
Calculate the distance Z of the block according to formula (1),
A signal 43 indicating the calculation result is written into the distance distribution memory 34, and finally a distance detection output 44 for all blocks of the image is obtained.

第11図は、この距離演算部33(第1A図)における
制御動作の流れを示すフローチャートであり、ブロック
の位置の列番@iおよび付番@jをそれぞれ1にして(
8181)、ブロック(i。
FIG. 11 is a flowchart showing the flow of control operations in the distance calculation unit 33 (FIG. 1A), in which the column number @i and number @j of the block position are set to 1, respectively (
8181), block (i.

j)の視差d(i、j>は視差不定を示す特殊コードで
あるか否かが問われ(3183)、特殊コードでなけれ
ば(183N>、そのブロックの距離z (i、j)を
つぎに示す演算式 %式%) にしたがって求め、演算結果を距離分布メモリ34(第
1A図)に書込む(8184)。そのブロックの距離z
(i、j>が得られると、ブロックの位置の列番号iが
横方向のブロック数M。より小さい値であるか否かが問
われる(3186)。
It is asked whether the disparity d(i, j> of j) is a special code indicating undefined disparity (3183), and if it is not a special code (183N>, the distance z (i, j) of the block is The calculation result is calculated according to the calculation formula % formula %) shown in (8184) and the calculation result is written into the distance distribution memory 34 (FIG. 1A).The distance z of the block is
(When i, j> is obtained, the column number i of the block position is the number of blocks in the horizontal direction M. It is asked whether it is a smaller value (3186).

ステップ8183において、視差d(i、j)が視差不
定を示す特殊コードの場合は(S183Y)、特殊コー
ドを距離分布メモリ34に書込んで(3185)、ステ
ップ8186に移行する。ステップ8186において、
列番号iがブロック数M、より小さい値であれば(31
86Y)、列番号iを1進めて(3187)、ステップ
8182からの作業を繰返す。小さい値でなければ(3
186N>、ブロックの位置の行番号jが縦方向のブロ
ック数Nqより小ざい値であるか否かが問われ(318
8)、小さい値であれば(S188Y)、行番号jを1
進めて(3189)、ステップ8182からの作業を繰
返し、小さい値でなければ(3188N)、すべてのブ
ロックについての距離演算のための処理が行われたので
作業を終了する。
In step 8183, if the parallax d(i, j) is a special code indicating undefined parallax (S183Y), the special code is written in the distance distribution memory 34 (3185), and the process moves to step 8186. In step 8186,
If the column number i is the block number M, a smaller value (31
86Y), the column number i is incremented by 1 (3187), and the operations from step 8182 are repeated. If it is not a small value (3
186N>, it is asked whether the row number j at the block position is a smaller value than the number of blocks Nq in the vertical direction (318
8), if the value is small (S188Y), set the line number j to 1.
Proceed (3189) and repeat the work from step 8182, and if the value is not small (3188N), the process ends because distance calculation processing has been performed for all blocks.

第1J図は、第1A図に示した実施例における装置全体
の制御動作の流れを示すフローチャートである。
FIG. 1J is a flowchart showing the flow of control operations of the entire apparatus in the embodiment shown in FIG. 1A.

第1J図において、第1カメラ31A(第1A図)によ
り第1画像を撮影しく5191)、第2カメラ31Bに
より第2画像を撮影する(S192)。撮影された第1
画像の輝度データを示す信号52Cを受けた輝度変化検
出部13は、画像を構成する各画素について輝度変化値
を検出するための演算を行う(3193)。得られた輝
度変化値を示す信号54と、第1画像および第2画像の
それぞれの画像データを示す多倍@52A、52Bとか
ら、視差演算部15は第1画像の分割された各ブロック
について第1画像と第2画像との間の視差を演算する(
3194)。視差演算部15による演算の結果、相関法
の適用が無効と判断され視差不定とされたブロックにつ
いての視差を、その周辺の隣接ブロックの視差から内挿
補間するための演算を視差補間演算部17により行う(
S195)。視差補間演算部17により視差が得られた
各ブロックについて相関法において用いられる演算式(
1)に従ってその距離を演算しく3196)、すべての
ブロックの距離が検出されると作業を終了する。
In FIG. 1J, the first camera 31A (FIG. 1A) takes a first image (5191), and the second camera 31B takes a second image (S192). The first photo taken
The brightness change detection unit 13, which has received the signal 52C indicating the brightness data of the image, performs calculations to detect a brightness change value for each pixel forming the image (3193). From the signal 54 indicating the obtained luminance change value and the multiplex @ 52A, 52B indicating the image data of the first image and the second image, the parallax calculation unit 15 calculates for each divided block of the first image. Calculate the parallax between the first image and the second image (
3194). As a result of the calculation by the parallax calculation unit 15, the application of the correlation method is determined to be invalid, and the parallax of a block whose parallax is undefined is determined to be undefined. This is done by (
S195). The calculation formula (
The distance is calculated according to 1) (3196), and the work is finished when the distances of all blocks are detected.

第2A図は本発明の伯の実施例の回路構成を示すもので
あり、第1A図における構成要素に対応するものにって
いは同じ記号を付して説明する。
FIG. 2A shows a circuit configuration of an embodiment of the present invention, and components corresponding to those in FIG. 1A will be explained using the same symbols.

第2A図において、第1A図に示した実施例の回路構成
と異なるところは、入力された画像を最も粗い解像度で
処理する第3階層と、中間の解像度で処理する第2階層
と、最も密な解像度で処理する第1階層から成立ってい
ることである。ここでは、最も密な解像度の原画像を含
む3つの階層の画像を得るために1−組の中間の解像度
の画像を得るための第2階層画像生成部21A、21B
および1組の最も粗い解像度の画像を得るための第3階
層画像生成部22A、22Bと、最も解像度の粗い第3
階層画像より視差を演算補間するための第3階層視差演
算補間部23と、第3階層視差演算補間部23により得
られた視差を示す信号63から、中間の解像度の第2画
像より視差を演算補間する場合の初期値を生成するため
の第2階層初期値生成部24と、各第2階層画像生成部
2つA、21Bからの、それぞれ第2階層画像を示す信
号61A、61Bより視差を演算補間するための第2階
層視差演算補間部25と、第2階層視差演算補間部25
により得られた視差を示す信号65から、最も細かい解
像度の第1階層画像より視差を演算補間する場合の初期
値を生成するための第1階層初期値生成部26と、各A
/D変換部32A、32Bからの、それぞれ入力画像を
示す各信号42A、42Bより視差を演算補間するため
の第1階層視差演算補間部27を設けている。ここで、
第3階層視差演埠補間部23、第2階層視差演痒補間部
25および第1階層視差演算補間部27の構成は、第1
A図に示した実施例における視差演算補間部11の構成
と同一である。
In FIG. 2A, the difference from the circuit configuration of the embodiment shown in FIG. 1A is that the third layer processes the input image at the coarsest resolution, the second layer processes it at an intermediate resolution, and the densest layer. This is established from the first layer, which processes at a high resolution. Here, in order to obtain three layers of images including the original image with the densest resolution, second layer image generation units 21A and 21B are used to obtain 1-set of intermediate resolution images.
and a third layer image generation unit 22A, 22B for obtaining a set of images with the coarsest resolution;
A third layer parallax calculation interpolation unit 23 calculates and interpolates the parallax from the hierarchical images, and a signal 63 indicating the parallax obtained by the third layer parallax calculation interpolation unit 23 calculates the parallax from the second image with an intermediate resolution. The parallax is calculated from the second layer initial value generation unit 24 for generating the initial value for interpolation, and the signals 61A and 61B representing the second layer images from the two second layer image generation units A and 21B, respectively. A second layer parallax calculation interpolation unit 25 for calculation interpolation, and a second layer parallax calculation interpolation unit 25
A first layer initial value generation unit 26 for generating an initial value when calculating and interpolating the parallax from the first layer image with the finest resolution from the signal 65 indicating the parallax obtained by
A first layer parallax calculation interpolation unit 27 is provided to calculate and interpolate parallax from each signal 42A, 42B indicating the input image from the /D conversion unit 32A, 32B. here,
The configurations of the third layer parallax calculation interpolation section 23, the second layer parallax calculation interpolation section 25, and the first layer parallax calculation interpolation section 27 are as follows.
The configuration is the same as that of the parallax calculation interpolation unit 11 in the embodiment shown in FIG.

第1カメラ31Aおよび第2カメラ31Bにより穎影さ
れた第1画像および第2画像を示す各信号41A、41
Bは、各A/D変換部32A、32Bにより、それぞれ
第1階層用の画像データにディジタル変換され、得られ
た輝度データを示す各信号42A、42Bは、第1階層
禎差演算補間部27内の第1画像メモリおよび第2画像
メモリにそれぞれ書込まれるとともに、各第2階層画像
生成部21A、21Bにも入力される。ここで、第1階
層画像の縦方向の画素数はN1画素、横方向の画素数は
M1画素とする。
Signals 41A and 41 representing the first and second images captured by the first camera 31A and the second camera 31B
B is digitally converted into image data for the first layer by each A/D converter 32A, 32B, and each signal 42A, 42B indicating the obtained luminance data is converted to a first layer difference calculation interpolator 27. The data are written into the first image memory and second image memory respectively, and are also input to the respective second layer image generation units 21A and 21B. Here, the number of pixels in the vertical direction of the first layer image is N1 pixels, and the number of pixels in the horizontal direction is M1 pixels.

各第2階層画像生成部21A、21Bは、原画像である
第1階層の画像を示す各信号42A、42Bに空間フィ
ルタ演算を施して、1段階粗い第2階層の画像を示す各
信号61A、61Bを生成して、第2階層視差演算補間
部25内の第1画像メモリおよび第2画像メモリに書込
む。第2階層の画像は、空間フィルタにより第1階層の
画像を縦横それぞれ1/2に縮小したものであり、縦方
向の画素数N2はN1/2画素、横方向の画素数M2は
M1/2画素となり、第1階層の画像の2×2=4画素
から第2階層の画像の1画素のデータを作成することに
なる。用いる空間フィルタ演算方式としては、ローパス
方式、最大値選択方式などがあるが、本実施例では、第
1階層の画像の′m2画素、横2画素の計4画素の平均
値を第2階層の1画素のデータとする平均値フィルタ方
式を用いている。
Each second layer image generation unit 21A, 21B performs a spatial filter operation on each signal 42A, 42B indicating a first layer image, which is an original image, and each signal 61A, indicating a second layer image coarsened by one level, 61B is generated and written to the first image memory and second image memory in the second layer parallax calculation interpolation unit 25. The image of the second layer is the image of the first layer reduced by half vertically and horizontally by a spatial filter, and the number of pixels in the vertical direction N2 is N1/2 pixels, and the number of pixels M2 in the horizontal direction is M1/2. This means that data for one pixel of the second layer image is created from 2×2=4 pixels of the first layer image. Spatial filter calculation methods to be used include a low-pass method and a maximum value selection method, but in this example, the average value of a total of 4 pixels ('m2 pixels and 2 pixels horizontally) of the image on the first layer is used as the average value of the image on the second layer. An average value filter method is used that uses data for one pixel.

第2B図は、各第2階層画像生成部21A、21B(第
2A図)における制御動作の流れを示すフローチャート
である。
FIG. 2B is a flowchart showing the flow of control operations in each second layer image generation section 21A, 21B (FIG. 2A).

第2B図において、各A/D変換部32A、32Bより
第1階層の画像データを示す多倍@42A、42Bを入
力しく3201)、第2階層の画像の画素位置の列番号
12および行番号j2をそれぞれ1にする(3202>
。つぎに、第1階層の画像の画素位置の列番号11を(
i2−1)X2+1、行番号j を(、j2−1)X2
+1として(3203>、第1階層の画像の4画素(1
1゜jl )、(il +1.jl >、(il、j1
+1>、(i1+1.j1+1>の各輝度値u1(11
゜jl)・ul(!1+1・ jl>・ul(!1・J
l +1>、 ul  (!1 +”l、Jl +1>
を加算して合計値を求める(S204)。求められた輝
度値は4で除して第2階層の画像の画素(12゜j2)
の輝度値u2  (!2.J2 )とする(S205)
。輝度値u2  (!2.j2 >が得られると、第2
階層の画像の画素位置の列番号12が横方向の画素数M
2より小さい値であるか否かが問われ(3206)、小
さい値で必れば(S206Y)・列番@12を1進めて
(3207)、ステップ5203からの作業を繰返す。
In FIG. 2B, multiplex @42A, 42B indicating the image data of the first layer is input from each A/D converter 32A, 32B (3201), column number 12 and row number of the pixel position of the image of the second layer. Set j2 to 1 (3202>
. Next, set the column number 11 of the pixel position of the first layer image to (
i2-1)X2+1, line number j as (,j2-1)X2
+1 (3203>, 4 pixels (1
1゜jl ), (il +1.jl >, (il, j1
+1>, (i1+1.j1+1>) each brightness value u1(11
゜jl)・ul(!1+1・jl>・ul(!1・J
l +1>, ul (!1 +”l, Jl +1>
are added to obtain a total value (S204). The obtained brightness value is divided by 4 to calculate the pixel of the second layer image (12゜j2)
The luminance value u2 (!2.J2) of (S205)
. When the luminance value u2 (!2.j2 > is obtained, the second
Column number 12 of the pixel position of the layer image is the number of pixels in the horizontal direction M
It is asked whether the value is smaller than 2 (3206), and if it is necessarily a smaller value (S206Y), the column number @12 is incremented by 1 (3207), and the operations from step 5203 are repeated.

列番号12が画素数M2より小さい値でなければ(32
06N)、行番号j2が縦方向の画素数N2より小さい
値であるか否かが問われ(3208>、小さい値であれ
ば(S208Y)、行番号j2を1進めて(3209)
、ステップ5203からの作業を繰返す。
Unless the column number 12 is smaller than the number of pixels M2 (32
06N), it is asked whether the row number j2 is a smaller value than the number of pixels in the vertical direction N2 (3208>, and if it is a smaller value (S208Y), the row number j2 is incremented by 1 (3209).
, repeat the operations from step 5203.

行番号j2が画素数N2より小さい値でなければ(32
08N>、第2階層の画像を構成すべきすべての画素の
輝度値が得られたので作業を終了する。
Unless the row number j2 is smaller than the number of pixels N2 (32
08N>, the brightness values of all the pixels that constitute the second layer image have been obtained, so the work is finished.

第2A図において、各第2階層画像生成部21A、21
Bにより得られた第2階層の画像を構成する各画素の輝
度値を示す各信号61A、61Bから、各第3階層画像
生成部22A、22Bは、同じく平均値フィルタ方式を
用いて第2階層の画像の4画素の平均値を第3階層の画
像の1画素のデータとして、縦方向の画素数N5=N2
/2画素、横方向の画素数M3=M2 /2画素よりな
る第3階層の画像を示す各信号62A、62Bを生成し
、第3階層視差演算補間部23内の第1画像メモリおよ
び第2画像メモリにそれぞれ書込む。
In FIG. 2A, each second layer image generation unit 21A, 21
From each signal 61A, 61B indicating the luminance value of each pixel constituting the second layer image obtained by B, the third layer image generation units 22A, 22B generate a second layer image using the average value filter method. Assuming that the average value of 4 pixels of the image is the data of 1 pixel of the 3rd layer image, the number of pixels in the vertical direction N5 = N2
/2 pixels, the number of pixels in the horizontal direction M3 = M2 /2 pixels. Write each to image memory.

各第3階層画像生成部22A、22Bにおける制御動作
の流れは、第2B図に示した各第2階層画像生成部21
A、21Bにおける制御動作の流れと同様であるので、
その説明は省略する。
The flow of control operations in each of the third layer image generation sections 22A and 22B is as shown in FIG. 2B.
Since the flow of control operations is the same as in A and 21B,
The explanation will be omitted.

各第3階層画像生成部22A、22Bにより得られた第
3階層の画像を示す各信号62A、62Bを受けた第3
階層視差演緯補間部23は、縦方向N3画素、横方向M
3画素からなる第3階層の第1画像および第2画像を、
縦方向0画素、横方向0画素のブロックにそれぞれ分割
し、第1A図に示した実施例における視差演算方法と同
一の方法を用いて、各ブロックの視差を演算して求める
The third layer receives each signal 62A, 62B indicating a third layer image obtained by each third layer image generation section 22A, 22B.
The hierarchical parallax calculation interpolation unit 23 has N3 pixels in the vertical direction and M pixels in the horizontal direction.
The first and second images of the third layer consisting of three pixels are
Each block is divided into blocks of 0 pixels in the vertical direction and 0 pixels in the horizontal direction, and the parallax of each block is calculated and determined using the same method as the parallax calculation method in the embodiment shown in FIG. 1A.

第3階層の画像を構成する各ブロックの視差が得られる
と、第2階層初期値生成部24は、第3階層視差演算補
間部23内の視差分布メモリより読出した演算結果を示
す信@63から、第2階層視差演算補間部25における
視差演算のための初期視差d2oを生成し記憶する。こ
こで、第3階層の画像の縦方向のブロック数N3qはN
3/Qlであり、第2階層の画像の縦方向のブロック数
N2゜は後述するようにN2 /q個であり、N2−2
×N3の関係がある。第3階層の画像の横方向のブロッ
ク数M3qと第2階層の横方向のブロック数M2゜に゛
ついても同様の関係がある。したがって、第2階層初期
値生成部24は、第3階層の画像の1個のブロックにつ
いての演算結果を、第2階層の画像の4個のブロックに
拡大対応させた視差初期値として、その内部の第2階層
視差初期値用配列メモリD2に一時記憶する。
When the parallax of each block constituting the third-layer image is obtained, the second-layer initial value generation unit 24 sends a message @63 indicating the calculation result read from the parallax distribution memory in the third-layer parallax calculation interpolation unit 23. From this, an initial parallax d2o for parallax calculation in the second layer parallax calculation interpolation unit 25 is generated and stored. Here, the number of blocks N3q in the vertical direction of the third layer image is N
3/Ql, and the number of blocks N2° in the vertical direction of the second layer image is N2/q as described later, and N2-2
There is a relationship of ×N3. A similar relationship exists between the horizontal block number M3q of the third layer image and the horizontal block number M2 of the second layer. Therefore, the second layer initial value generation unit 24 uses the calculation result for one block of the third layer image as a parallax initial value that is enlarged and corresponds to the four blocks of the second layer image, and uses its internal Temporarily stored in the second layer parallax initial value array memory D2.

第2C図は、以上の第2階層初期値生成部24第2A図
〉における制御動作の流れを示すフローチャートである
FIG. 2C is a flowchart showing the flow of control operations in the second layer initial value generation section 24 (FIG. 2A).

第2C図において、第3階層視差演算補間部23(第2
A図)より演算結果を示す信号63を読出しく3211
)、第3階層の画像のブロックの位置の列番号i3およ
び行番号j3をそれぞれ1にする(3212>。つぎに
、第2階層の画像のブロックの位置の列番号12を(i
3 1)X2+1、付番@j2を(J3 1>x2+1
として(S213>、第3階層の画像のそのブロック(
i3.j3)の視差d3(13,J3>を、第2階層の
画像の4個のブロック(12,J2>。
In FIG. 2C, the third layer parallax calculation interpolation unit 23 (second
Read out the signal 63 indicating the calculation result from Figure A) 3211
), the column number i3 and row number j3 of the block position of the image of the third layer are each set to 1 (3212>. Next, the column number 12 of the block position of the image of the second layer is set to (i
3 1) X2+1, numbered @j2 (J3 1>x2+1
(S213>, that block of the third layer image (
i3. The parallax d3 (13, J3> of j3) is set to four blocks (12, J2>) of the second layer image.

(i2+1.J2)、(!2.J2+1)、(2+1.
J2+1>のそれぞれの視差初期値、d20(’2 、
j2)、d20い2 +’l、 J2 >、 d2o(
12,j2+1)、d2o(12+1.j2十1)とす
る(3214>。これらの視差初期値が得られると、第
3階層の画像のブロックの位置の列番号13が横方向の
ブロック@M3.より小さい値であるか否かが問われ(
8215>、小さい値であれば(S215Y)列番号i
3を1進めて<5216)、ステップ5213からの作
業を繰返づ。列番号i が横方向のブロック数M3.よ
り小さい値でなければ(821,5N)、行番号j3が
縦方向のブロック数N3゜より小さい値であるか否かが
問われ(S217>、小さい値であれば(S217Y)
 、行番号j3を1進めて(S218)、ステップ52
13からの作業を繰返す。行番号j3が縦方向のブロッ
ク数N3qより小ざい値でなければ(5217N)、第
3階層の画像を構成するすべてのブロックについて第2
階層の画像のブロックの視差初期値を得るための処理が
行われたので作業を終了する。
(i2+1.J2), (!2.J2+1), (2+1.
Each initial parallax value of J2+1>, d20('2,
j2), d20i2 +'l, J2 >, d2o(
12,j2+1), and d2o(12+1.j2+1) (3214>. When these initial parallax values are obtained, the column number 13 of the block position in the third layer image is the horizontal block @M3. The question is whether the value is smaller than (
8215>, if the value is small (S215Y), column number i
3 is incremented by 1 (<5216), and the operations from step 5213 are repeated. Column number i is the number of blocks in the horizontal direction M3. If it is not a smaller value (821, 5N), it is asked whether the row number j3 is smaller than the number of vertical blocks N3° (S217>, and if it is a smaller value (S217Y)
, advance the line number j3 by 1 (S218), and step 52
Repeat the steps from step 13. If the row number j3 is not smaller than the number of vertical blocks N3q (5217N), the second
Since the processing for obtaining the initial parallax value of the block of the hierarchical image has been performed, the work is finished.

第2A図において、第2階層初期値生成部24内の第2
階層視差初期値用配列メモリD2より読出された視差初
期値を示す信号64と、各第2階層画像生成部21A、
21Bからの第2階層の画像を示す多倍@61A、61
Bを受けた第2階層視差演算補間部25は、第2階層の
第1画像および第2画像から、第1A図に示した実施例
における視差演算方法と同一の方法を用いて、各ブロッ
クの視差を演算して求める。
In FIG. 2A, the second layer in the second layer initial value generation section 24
A signal 64 indicating the parallax initial value read out from the layer parallax initial value array memory D2, each second layer image generation unit 21A,
Multiple magnification showing second layer image from 21B @61A, 61
The second layer parallax calculation interpolation unit 25 that receives B calculates each block from the first and second images of the second layer using the same method as the parallax calculation method in the embodiment shown in FIG. 1A. Obtain by calculating the parallax.

第2階層の画像を構成する各ブロックの視差が得られる
と、第1階層初期値生成部26は、第2階層視差演算補
間部25内の視差分布メモリより続出した演算結果を示
す信号65から、第1階層視差演算補間部27における
視差演算のための初期視差d1oを生成し記憶する。こ
こで、第2階層の画像の縦方向のブロック数N2.はN
2/q個、第1階層の画像の縦方向のブロック数N1q
は後述するようにN 1 / Q個でおり、N1=2X
N2の関係がある。第2階層の画像の横方向のブロック
数M2pと第1階層の横方向のブロック数M1一ついて
も同様の関係がある。したがって、第1階層初期値生成
部26は、第2階層の画像の1個のブロックについての
演算結果を、第1階層の画像の4個のブロックに拡大対
応させた視差初期値として、その内部の第1階層視差初
期値用配列メモリD1に一時記憶する。この第1階層初
期値生成部26における制御動作の流れは、第2C図に
示した第2階層初期値生成部24における制御動作の流
れと同様であるので、その説明は省略する。
When the parallax of each block constituting the second layer image is obtained, the first layer initial value generation unit 26 generates a signal 65 indicating the calculation result successively from the parallax distribution memory in the second layer parallax calculation interpolation unit 25. , generates and stores an initial parallax d1o for parallax calculation in the first layer parallax calculation interpolation unit 27. Here, the number of blocks in the vertical direction of the second layer image N2. is N
2/q, number of blocks in the vertical direction of the first layer image N1q
As will be described later, there are N 1 / Q numbers, and N1=2X
There is an N2 relationship. The same relationship exists even if there is one block number M2p in the horizontal direction of the second layer image and one block number M1 in the horizontal direction of the first layer. Therefore, the first layer initial value generation unit 26 uses the calculation result for one block of the second layer image as a parallax initial value that is enlarged to correspond to the four blocks of the first layer image, and uses the internal It is temporarily stored in the first layer parallax initial value array memory D1. The flow of control operations in the first layer initial value generation section 26 is similar to the flow of control operations in the second layer initial value generation section 24 shown in FIG. 2C, so a description thereof will be omitted.

第1階層初期値生成部26内の第1階層視差初期値用配
列メモリD1より読出された視差初期値を示す信号66
と、各A/D変換部32A、32Bからの入力画像を示
す各信号42A、42Bを受けた第1階層視差演算補間
部27は、第1画像および第2画像から、第1A図に示
した実施例における視差演算方法と同一の方法を用いて
、各ブロックの視差を演算して求める。
A signal 66 indicating the parallax initial value read out from the first layer parallax initial value array memory D1 in the first layer initial value generation unit 26
The first layer parallax calculation interpolation unit 27, which receives the signals 42A and 42B indicating the input images from the A/D conversion units 32A and 32B, calculates the input image from the first image and the second image as shown in FIG. 1A. The parallax of each block is calculated and determined using the same method as the parallax calculation method in the embodiment.

第1階層視差演算補間部27からの演算結果を示す信号
67を受けた距離演算部33およびその演算結果を示す
信号43を書込む距離分布メモリ34の構成は、第1A
図に示した実施例と同じであり、最終的に画像の全ブロ
ックについての距離検出出力44を1qる。
The distance calculation unit 33 that receives the signal 67 indicating the calculation result from the first layer parallax calculation interpolation unit 27 and the distance distribution memory 34 that writes the signal 43 indicating the calculation result are configured in the first layer parallax calculation interpolation unit 27.
This is the same as the embodiment shown in the figure, and finally the distance detection output 44 for all blocks of the image is obtained by 1q.

第2D図は、第2A図に示した実施例における装置全体
の制御動作を示すフローチャートである。
FIG. 2D is a flowchart showing the control operation of the entire apparatus in the embodiment shown in FIG. 2A.

第2D図において、第1カメラ31A(第2A図)によ
り第1画像を撮影しく3221)、第2カメラ31Bに
より第2画像を撮影する(S222)。撮影された第1
画像を示す信号42Aを受【ブた第2階層画像生成部2
1Aは、1段階粗い第2階層の第1画像を生成しく32
23> 、第2画像を示す信号42Bを受けた第2階層
画像生成部21Bは、1段階粗い第2階層の第2画像を
生成する(3224>。生成された第2階層の第1画像
を示す信号61Aを受けた第3階層画像生成部22Aは
、さらに1段階粗い第3階層の第1画像を生成しく32
25>、第2階層の第2画像を示す信号61Bを受けた
第3階層画像生成部22Bは、さらに1段階粗い第3階
層の第2画像を生成する(3226)。各第3階層画像
生成部22A。
In FIG. 2D, the first camera 31A (FIG. 2A) takes a first image (3221), and the second camera 31B takes a second image (S222). The first photo taken
The second layer image generation unit 2 receives the signal 42A indicating the image.
1A generates the first image of the second layer that is one step coarser32
23>, the second layer image generation unit 21B that receives the signal 42B indicating the second image generates a second image of the second layer that is coarser by one level (3224>. The third layer image generation unit 22A that receives the signal 61A generates a first image of the third layer that is one step coarser.
25>, the third layer image generation unit 22B, which has received the signal 61B indicating the second image of the second layer, generates a second image of the third layer that is coarser by one level (3226). Each third layer image generation unit 22A.

22Bにより得られた第3階層の画像を示す各信号62
A、62Bを受けた第3階層視差演算補間部23は、画
像を分割した各ブロックの視差を演算する(3227>
。得られた視差を示す信号63から、第2階層初期値生
成部24は、第2階層視差演算補間部25における視差
演算のための視差初期値を生成しく3228)、この初
期値を示す信号64を読出した第2階層視差演算補間部
25は、第2階層の画像を分割した各ブロックの視差を
演算する(S229)。得られた視差を示す信号65か
ら、第1階層初期値生成部26は、第1階層視差演算補
間部27における視差演算のための視差初期値を生成し
く3230) 、ごの初期値を示す信号66を読出した
第1階層視差演算補間部27は、第1階層の画像を分割
した各ブロックの視差を演算する(3231)。第1階
層の画像の各ブロックの視差が得られると、その視差を
示す信号67から、距離演算部33は各ブロックの距離
を演算して(S232>、作業を終了する。
Each signal 62 indicating the third layer image obtained by 22B
The third layer parallax calculation interpolation unit 23 that receives A and 62B calculates the parallax of each block obtained by dividing the image (3227>
. From the signal 63 indicating the obtained disparity, the second layer initial value generation section 24 generates a disparity initial value for the disparity calculation in the second layer disparity calculation interpolation section 25 (3228), and generates a signal 64 indicating this initial value. The second layer parallax calculation interpolation unit 25 that has read out calculates the parallax of each block obtained by dividing the second layer image (S229). From the signal 65 indicating the obtained disparity, the first layer initial value generation section 26 generates a disparity initial value for the disparity calculation in the first layer disparity calculation interpolation section 27 (3230). The first layer parallax calculation interpolation unit 27 that has read out 66 calculates the parallax of each block obtained by dividing the first layer image (3231). When the parallax of each block of the first layer image is obtained, the distance calculation unit 33 calculates the distance of each block from the signal 67 indicating the parallax (S232>, and ends the operation.

以上においては、画像の階層数を3階層として説明した
が、それ以外の複数の異なった解像度レベルを有する階
層画像構造についても本発明(よ適用され得るものであ
る。
Although the above description has been made assuming that the number of image layers is three, the present invention can also be applied to hierarchical image structures having a plurality of different resolution levels.

[発明の効果] 以上の説明から明らかなように、本発明によるならば、
撮影された画像を分割した各ブロックについて距離検出
のための相関法を適用すること力ζ有効か否かを判断し
、有効と判断されたブロックについては相関法による演
算を行い、無効と判断されたブロックについては周辺の
隣接ブロックの距離値から補間することとしたので、正
確な奥行き方向の距離検出が可能となり、しかも、無効
な部分については相関法による演算を行わないために、
結果として全体の所用演算量を減少せしめることができ
る。また、このような方法を、複数の異なった解像度レ
ベルを有するそれぞれの階層画像に適用することにより
、効率的な粗密探索によった距離検出を実現することが
可能となる。したがって、本発明の効果は極めて大きい
[Effect of the invention] As is clear from the above explanation, according to the present invention,
A correlation method for distance detection is applied to each block into which the photographed image is divided, and it is determined whether or not the force ζ is valid.For blocks that are determined to be valid, calculations are performed using the correlation method. Since we decided to interpolate the distance values of surrounding adjacent blocks for blocks that have been detected, it is possible to accurately detect the distance in the depth direction.Moreover, since calculations using the correlation method are not performed for invalid parts,
As a result, the overall amount of required calculations can be reduced. Further, by applying such a method to each hierarchical image having a plurality of different resolution levels, it becomes possible to realize distance detection by efficient coarse-grained search. Therefore, the effects of the present invention are extremely large.

【図面の簡単な説明】[Brief explanation of drawings]

第1A図は本発明の一実施例の回路構成図、第1B図は
第1A図に示した輝度変化検出部の動作の流れを示すた
めのフローチャート、第1C図は第1A図に示した視差
演算部における第2画像のブロックの水平方向の探索範
囲を設定する様子を説明するための表示図、 第1D図は第1A図に示した視差演算部の動作の流れを
示すためのフローチャート、 第1E図は第1D図中の1ステツプの詳細を示すフロー
チャート、 第1F図、第1G図および第1H図は第1A図に示した
視差演算補間部の動作の流れを示すためのフローチャー
ト、 第11図は第1A図に示した距離演算部の動作の流れを
示すためのフローチャート、 第1J図は第1A図に示した実施例の回路全体の動作の
流れを示すためのフローチャート、第2A図は本発明の
他の実施例の回路構成図、第2B図は第2A図に示した
各第2階層画像生成部の動作の流れを示すためのフロー
チャート、第2C図は第2A図に示した第2階層初期値
生成部の動作の流れを示すためのフローチャート、第2
D図は第2A図に示した実施例の回路全体の動作の流れ
を示すためのフローチャート、第3図は従来技術である
3角測量を用いる相関法による距離検出の原理を説明す
るための原理説明図である。 11・・・視差演算補間部 12A・・・第1画像メモ
リ12B・・・第2画像メモリ 13・・・輝度変化検出部 14・・・輝度変化値メモ
リ15・・・視差演算部   16・・・視差分布メモ
リ17・・・視差補間演算部 21A、21B・・・第2階層画像生成部22A、22
B・・・第3階層画像生成部23・・・第3階層視差演
算補間部 24・・・第2階層初期値生成部 25・・・第2階層視差演算補間部 26・・・第1階層初期値生成部 27・・・第1階層視差演算補間部 31A・・・第1カメラ  31B・・・第2カメラ3
2A、32B・・・A/D変換部 33・・・距離演算部   34・・・距離分布メモリ
44・・・距離検出出力 40.41A、418.42A、42B、43゜52A
、528.52G、53,54,55.56.61A、
61B、62A、62B、63,64.65,66.6
7・・・信号。
FIG. 1A is a circuit configuration diagram of an embodiment of the present invention, FIG. 1B is a flowchart showing the operation flow of the brightness change detection section shown in FIG. 1A, and FIG. FIG. 1D is a flowchart showing the flow of operation of the parallax calculation section shown in FIG. 1A; 1E is a flow chart showing the details of one step in FIG. 1A is a flowchart showing the flow of operation of the distance calculation section shown in FIG. 1A. FIG. 1J is a flowchart showing the flow of operation of the entire circuit of the embodiment shown in FIG. 1A. A circuit configuration diagram of another embodiment of the present invention, FIG. 2B is a flowchart showing the operation flow of each second layer image generation section shown in FIG. 2A, and FIG. Flowchart showing the flow of the operation of the two-layer initial value generation section, 2nd
Figure D is a flowchart showing the operation flow of the entire circuit of the embodiment shown in Figure 2A, and Figure 3 is a principle for explaining the principle of distance detection by the correlation method using triangulation, which is the prior art. It is an explanatory diagram. 11... Parallax calculation interpolation unit 12A... First image memory 12B... Second image memory 13... Luminance change detection unit 14... Luminance change value memory 15... Parallax calculation unit 16... - Parallax distribution memory 17...Parallax interpolation calculation units 21A, 21B...Second layer image generation units 22A, 22
B... Third layer image generation section 23... Third layer parallax calculation interpolation section 24... Second layer initial value generation section 25... Second layer parallax calculation interpolation section 26... First layer Initial value generation unit 27...first layer parallax calculation interpolation unit 31A...first camera 31B...second camera 3
2A, 32B...A/D converter 33...Distance calculation unit 34...Distance distribution memory 44...Distance detection output 40.41A, 418.42A, 42B, 43°52A
, 528.52G, 53, 54, 55.56.61A,
61B, 62A, 62B, 63, 64.65, 66.6
7...Signal.

Claims (1)

【特許請求の範囲】 1、被測定物を異なった位置から撮影して第1の画像お
よび第2の画像を得、 前記2枚1組の画像を示す各信号から、前記第1の画像
を分割した各ブロックについて、前記第2の画像の中で
前記第1の画像を分割したブロックと最も相関度の高い
ブロックの存在する位置を探索し、両ブロックの位置ず
れ量から3角測量の方法を用いて対象物までの奥行き方
向の距離を得る距離検出方法において、 前記第1の画像を構成する各画素の輝度変化値を求め、 前記第1の画像を分割したブロックを構成する画素の輝
度変化値があらかじめ設定された変化値用閾値以上であ
るデータの個数をカウントして得られたカウント値をそ
のブロックについての前記位置ずれ量を演算するか否か
を判断するための評価値とし、 前記評価値があらかじめ設定された評価値用閾値以上で
ある前記第1の画像を分割したブロックについては前記
位置ずれ量を演算し、 前記評価値が前記評価値用閾値未満である前記第1の画
像を分割したブロックについては前記位置ずれ量を演算
しないようにした距離検出方法。 2、前記位置ずれ量を演算しない前記第1の画像を分割
したブロックについては、その周辺のブロックの位置ず
れ量を求めて、得られた位置ずれ量から内挿補間により
その位置ずれ量を求めるようにした請求項1記載の距離
検出方法。 3、異なった位置より第1の原画像のそれぞれから、粗
い解像度の第1画像および第2画像と、それよりは細か
い解像度の第1画像および第2画像を含む複数の解像度
を有する画像を作成し、前記粗い解像度の第1および第
2の画像のそれぞれを複数個のブロックに分割し、 前記、粗い解像度の第1の画像の各ブロックについて前
記粗い解像度の第2の画像のブロックの中で相関度の高
いブロックの存在する位置を探索して、前記最も相関度
の高いブロック間の位置ずれ量を求め、 前記位置ずれ量を初期値として用いて、前記細い解像度
の第1および第2画像から、前記最も相関度の高いブロ
ック間の位置ずれ量を求めて、3角測量により対象物ま
での奥行き方向の距離を得る距離検出方法において、 前記粗い解像度および細かい解像度における前記位置ず
れ量を求める場合に、前記第1の画像を構成する各画素
の輝度変化値を求め、 前記第1の画像を分割したブロックを構成する画素の輝
度変化値があらかじめ設定された変化値用閾値以上であ
るデータの個数をカウントして得られたカウント値をそ
のブロックについての前記位置ずれ量を演算するか否か
を判断するための評価値とし、 前記評価値があらかじめ設定された評価値用閾値以上で
ある前記第1の画像を分割したブロックについては前記
位置ずれ量を演算し、 前記評価値が前記評価値用閾値未満である前記第1の画
像を分割したブロックについては前記位置ずれ量を演算
しないようにした距離検出方法。 4、前記位置ずれ量を演算しない、前記第1の画像を分
割したブロックについては、その周辺のブロックの位置
ずれ量を求めて、得られた位置ずれ量から内挿補間によ
りその位置ずれ量を求めるようにした請求項3記載の距
離検出方法。 5、異なった位置から撮影された被測定物の第1の画像
および第2の画像をそれぞれ記憶するための第1および
第2の画像メモリ手段(12A、12B)と、 前記第1の画像メモリ手段からの出力を受けて、前記第
1の画像を構成する各画素の輝度変化値を検出するため
の輝度変化検出手段(13)と、前記輝度変化検出手段
により得られた前記第1の画像を構成する各画素の輝度
変化値を記憶するための輝度変化値を記憶するための輝
度変化値メモリ手段(14)と、 前記輝度変化値メモリ手段からの出力と前記第1および
第2の画像メモリ手段からの各出力を受けて、前記第1
の画像を分割したブロックを構成する画素の輝度変化値
があらかじめ設定された変化値用閾値以上であるデータ
の個数をカウントして得られたカウント値である評価値
が、あらかじめ設定された評価値用閾値以上である前記
第1の画像を分割したブロックについては、これと最も
相関度が高い前記第2の画像を分割したブロックが存在
する位置を求めて両ブロック間の位置ずれ量である視差
を演算するための視差演算手段(15)と、 前記視差演算手段により得られた視差を記憶するための
視差分布メモリ手段(16)と、前記視差分布メモリ手
段からの出力を受けて、3角測量を用いて対象物までの
奥行き方向の距離値を得るための距離演算手段(33)
と を含む距離検出装置。 6、前記視差演算手段によりその視差が演算されなかっ
た前記第1の画像を分割したブロックについての視差を
、その周辺のブロックの視差から補間して求めるための
視差補間演算手段(17)を設けた請求項5記載の距離
検出装置。 7、被測定物を異なった位置から撮影して得られた第1
の原画像および第2の原画像の解像度をそれぞれ粗くす
るための第1の1組の画像生成手段(21A、21B)
と、 前記第1の1組の画像生成手段からの各出力の解像度を
それぞれさらに粗くするための第2の1組の画像生成手
段(22A、22B)と、 前記第2の1組の画像生成手段からの各画像の出力を受
けて、この各画像を複数個のブロックに分割して、各ブ
ロックについての視差を演算するための第1の視差演算
手段(23)と、 前記第1の1組の画像生成手段からの各画像の出力を受
けて、この各画像を複数個のブロックに分割して、各ブ
ロックについての視差を演算するための第2の視差演算
手段(25)と、 前記第2の視差演算手段からの出力を受けて、3角測量
を用いて対象物までの奥行き方向の距離値を得るための
距離演算手段(33)と を含む距離検出装置。 8、前記第1の視差演算手段が、 前記複数個のブロックに分割して、各ブロックについて
の視差を演算し、視差を得ることができなかったブロッ
クについては、このブロックの周辺のブロックの視差か
ら、内挿補間により視差を求めるための視差補間演算手
段を含む請求項7記載の距離検出装置。 9、前記第2の視差演算手段が、 前記複数個のブロックに分割して、各ブロックについて
の視差を演算し、視差を得ることができなかったブロッ
クについては、このブロックの周辺のブロックの視差か
ら、内挿補間により視差を求めるための視差補間演算手
段を含む請求項7記載の距離検出装置。
[Claims] 1. Obtain a first image and a second image by photographing the object to be measured from different positions, and obtain the first image from each signal indicating the set of two images. For each divided block, search for the position of a block in the second image that has the highest correlation with the block obtained by dividing the first image, and perform triangulation based on the amount of positional shift between both blocks. In the distance detection method for obtaining the distance in the depth direction to the object using the method, the brightness change value of each pixel constituting the first image is determined, and the brightness of the pixel constituting the block obtained by dividing the first image is determined. A count value obtained by counting the number of data whose change value is equal to or greater than a preset change value threshold is used as an evaluation value for determining whether or not to calculate the positional deviation amount for the block; The positional shift amount is calculated for the blocks obtained by dividing the first image in which the evaluation value is equal to or greater than a preset evaluation value threshold, and A distance detection method in which the positional shift amount is not calculated for blocks into which an image is divided. 2. For blocks obtained by dividing the first image for which the amount of positional deviation is not calculated, the amount of positional deviation of the surrounding blocks is determined, and the amount of positional deviation is determined by interpolation from the obtained amount of positional deviation. The distance detection method according to claim 1, wherein the distance detection method is as follows. 3. Create images with a plurality of resolutions, including a first image and a second image with a coarse resolution, and a first image and a second image with a finer resolution, from each of the first original images from different positions. and dividing each of the coarse resolution first and second images into a plurality of blocks; and for each block of the coarse resolution first image, within the coarse resolution second image block; Searching for positions where blocks with a high degree of correlation exist, determining the amount of positional deviation between the blocks having the highest degree of correlation, and using the amount of positional deviation as an initial value, forming the first and second images with the fine resolution. In the distance detection method for obtaining the distance in the depth direction to the object by triangulation by determining the amount of positional deviation between the blocks with the highest correlation from the above, the amount of positional deviation at the coarse resolution and the fine resolution is determined. In this case, the brightness change value of each pixel constituting the first image is calculated, and the brightness change value of the pixel constituting the block obtained by dividing the first image is greater than or equal to a preset change value threshold. The count value obtained by counting the number of blocks is used as an evaluation value for determining whether or not to calculate the positional deviation amount for the block, and the evaluation value is greater than or equal to a preset evaluation value threshold. The positional deviation amount is calculated for blocks obtained by dividing the first image, and the positional deviation amount is not calculated for blocks obtained by dividing the first image whose evaluation value is less than the evaluation value threshold. distance detection method. 4. For blocks obtained by dividing the first image for which the amount of positional deviation is not calculated, the amount of positional deviation of the surrounding blocks is determined, and the amount of positional deviation is calculated by interpolation from the obtained amount of positional deviation. 4. The distance detecting method according to claim 3, wherein: 5. first and second image memory means (12A, 12B) for respectively storing a first image and a second image of the object to be measured taken from different positions; and the first image memory. a brightness change detection means (13) for detecting a brightness change value of each pixel constituting the first image in response to an output from the means; and the first image obtained by the brightness change detection means. a brightness change value memory means (14) for storing a brightness change value of each pixel constituting the image; and an output from the brightness change value memory means and the first and second images. In response to each output from the memory means, the first
The evaluation value, which is the count value obtained by counting the number of data in which the brightness change value of the pixels constituting the block obtained by dividing the image of For blocks obtained by dividing the first image, which is equal to or higher than the threshold value, the position of the block obtained by dividing the second image with the highest correlation is determined, and the parallax, which is the amount of positional shift between the two blocks, is determined. parallax calculation means (15) for calculating the parallax, parallax distribution memory means (16) for storing the parallax obtained by the parallax calculation means, and receiving the output from the parallax distribution memory means, Distance calculation means (33) for obtaining a distance value in the depth direction to a target object using surveying
and a distance detection device. 6. A parallax interpolation calculation means (17) is provided for determining the parallax of a block obtained by dividing the first image, the parallax of which has not been calculated by the parallax calculation means, by interpolating from the parallax of surrounding blocks. The distance detection device according to claim 5. 7. The first image obtained by photographing the object to be measured from different positions
a first set of image generation means (21A, 21B) for coarsening the resolution of the original image and the second original image, respectively;
and a second set of image generating means (22A, 22B) for further coarsening the resolution of each output from the first set of image generating means, and the second set of image generating means. a first parallax calculating means (23) for receiving the output of each image from the means, dividing each image into a plurality of blocks, and calculating the parallax for each block; a second parallax calculating means (25) for receiving the output of each image from the image generating means of the set, dividing each image into a plurality of blocks, and calculating the parallax for each block; A distance detection device including a distance calculation means (33) for receiving the output from the second parallax calculation means and obtaining a distance value in the depth direction to the target object using triangulation. 8. The first disparity calculation means divides the blocks into the plurality of blocks, calculates the disparity for each block, and for blocks for which no disparity can be obtained, calculates the disparity of blocks surrounding this block. 8. The distance detecting device according to claim 7, further comprising a parallax interpolation calculating means for determining the parallax by interpolation from . 9. The second parallax calculation means divides the blocks into the plurality of blocks, calculates the parallax for each block, and for blocks for which no parallax can be obtained, calculates the parallax of blocks surrounding this block. 8. The distance detecting device according to claim 7, further comprising a parallax interpolation calculating means for determining the parallax by interpolation from .
JP8995089A 1989-04-10 1989-04-10 Method and apparatus for detecting distance Pending JPH02268215A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8995089A JPH02268215A (en) 1989-04-10 1989-04-10 Method and apparatus for detecting distance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8995089A JPH02268215A (en) 1989-04-10 1989-04-10 Method and apparatus for detecting distance

Publications (1)

Publication Number Publication Date
JPH02268215A true JPH02268215A (en) 1990-11-01

Family

ID=13984981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8995089A Pending JPH02268215A (en) 1989-04-10 1989-04-10 Method and apparatus for detecting distance

Country Status (1)

Country Link
JP (1) JPH02268215A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6215899B1 (en) 1994-04-13 2001-04-10 Matsushita Electric Industrial Co., Ltd. Motion and disparity estimation method, image synthesis method, and apparatus for implementing same methods
JP2009146034A (en) * 2007-12-12 2009-07-02 National Institute Of Information & Communication Technology Multi-view image depth value extraction device, its method and its program
JP2011028662A (en) * 2009-07-29 2011-02-10 Sony Corp Image processing device, image pickup device, image processing method, and program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50115858A (en) * 1974-02-13 1975-09-10
JPS58711A (en) * 1981-06-25 1983-01-05 Nec Corp Stereo picture reproducing method
JPS61209315A (en) * 1985-03-13 1986-09-17 Tokyo Optical Co Ltd Method and apparatus for measuring coordinates
JPS62255813A (en) * 1986-04-30 1987-11-07 Tokyo Optical Co Ltd Coordinate measuring instrument

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50115858A (en) * 1974-02-13 1975-09-10
JPS58711A (en) * 1981-06-25 1983-01-05 Nec Corp Stereo picture reproducing method
JPS61209315A (en) * 1985-03-13 1986-09-17 Tokyo Optical Co Ltd Method and apparatus for measuring coordinates
JPS62255813A (en) * 1986-04-30 1987-11-07 Tokyo Optical Co Ltd Coordinate measuring instrument

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6215899B1 (en) 1994-04-13 2001-04-10 Matsushita Electric Industrial Co., Ltd. Motion and disparity estimation method, image synthesis method, and apparatus for implementing same methods
JP2009146034A (en) * 2007-12-12 2009-07-02 National Institute Of Information & Communication Technology Multi-view image depth value extraction device, its method and its program
JP2011028662A (en) * 2009-07-29 2011-02-10 Sony Corp Image processing device, image pickup device, image processing method, and program

Similar Documents

Publication Publication Date Title
JP3054681B2 (en) Image processing method
US20020012459A1 (en) Method and apparatus for detecting stereo disparity in sequential parallel processing mode
EP3769265A1 (en) Localisation, mapping and network training
CN107077743A (en) System and method for the dynamic calibration of array camera
KR101544021B1 (en) Apparatus and method for generating 3d map
CN113160068B (en) Point cloud completion method and system based on image
JP2011058812A (en) Method and device for parallax calculation
EP3460757B1 (en) Image processing apparatus and image processing system
CN110598689B (en) Method, device and system for estimating sub-pixel positions of extreme points in an image
CN111540003A (en) Depth image generation method and device
CN113313740B (en) Disparity map and surface normal vector joint learning method based on plane continuity
CN112630469B (en) Three-dimensional detection method based on structured light and multiple light field cameras
CN116778288A (en) Multi-mode fusion target detection system and method
CN112734822A (en) Stereo matching algorithm based on infrared and visible light images
CN116740162B (en) Stereo matching method based on multi-scale cost volume and computer storage medium
JPS61240376A (en) Method for stereoscopic seeing
JP2016099318A (en) Stereo matching device, stereo matching program, and stereo matching method
CN114155406A (en) Pose estimation method based on region-level feature fusion
CN113808103A (en) Automatic road surface depression detection method and device based on image processing and storage medium
JPH02268215A (en) Method and apparatus for detecting distance
WO2021167910A1 (en) A method for generating a dataset, a method for generating a neural network, and a method for constructing a model of a scene
US20020085747A1 (en) Image processing apparatus and method, image capturing apparatus, and information provision medium
KR101435611B1 (en) Occlusion removal method for three dimensional integral image
KR20200142392A (en) Method for Estimating Rotation and Movement Position Between Corresponding 3D Marker
CN113808070B (en) Binocular digital speckle image related parallax measurement method